From f46a5da960e37fedd1f701a2f354c31ed326b1c7 Mon Sep 17 00:00:00 2001 From: Katerina Date: Mon, 2 Oct 2023 17:02:31 +0200 Subject: [PATCH 01/22] [Logs onboarding] Landing page UI tweaks (#167190) fixes https://github.com/elastic/kibana/issues/166691 ## before Screenshot 2023-09-25 at 21 12 45 ## after Screenshot 2023-09-25 at 21 13 03 ### Responsiveness https://github.com/elastic/kibana/assets/3369346/b226e31e-12c0-4634-83e3-96e23ce95280 --------- Co-authored-by: Yngrid Coello --- .../public/components/app/home/index.tsx | 575 +++++++++--------- 1 file changed, 298 insertions(+), 277 deletions(-) diff --git a/x-pack/plugins/observability_onboarding/public/components/app/home/index.tsx b/x-pack/plugins/observability_onboarding/public/components/app/home/index.tsx index d1b05433b9d82..612a0c5710c13 100644 --- a/x-pack/plugins/observability_onboarding/public/components/app/home/index.tsx +++ b/x-pack/plugins/observability_onboarding/public/components/app/home/index.tsx @@ -18,6 +18,7 @@ import { EuiText, EuiTitle, useEuiTheme, + EuiPanel, } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { useBreadcrumbs } from '@kbn/observability-shared-plugin/public'; @@ -41,12 +42,7 @@ const StyledItem = styled(EuiFlexItem)` flex-direction: row; &:before { content: '•'; - width: 5px; - height: 5px; - margin: 0 20px 0 16px; - } - > a { - min-width: 100%; + margin-right: 20px; } `; @@ -79,288 +75,313 @@ export function Home() { }; return ( - - - - -

- {i18n.translate('xpack.observability_onboarding.home.title', { - defaultMessage: 'Collect and analyze logs', - })} -

-
-
- - -

- {i18n.translate('xpack.observability_onboarding.home.description', { - defaultMessage: - 'Select your method for collecting data into Observability.', - })} -

-
- -
- - - - } - betaBadgeProps={{ - 'data-test-subj': 'obltOnboardingHomeQuickstartBadge', - color: 'accent', - label: i18n.translate( - 'xpack.observability_onboarding.card.systemLogs.quickstartBadge', - { defaultMessage: 'Quickstart' } - ), - }} - title={i18n.translate( - 'xpack.observability_onboarding.card.systemLogs.title', - { defaultMessage: 'Stream host system logs' } - )} - footer={ - - {getStartedLabel} - - } - style={{ - borderColor: euiTheme.colors.accent, - borderWidth: 2, - }} - paddingSize="l" - display="plain" - hasBorder - onClick={handleClickSystemLogs} - > - - {elasticAgentLabel} - - -

- {i18n.translate( - 'xpack.observability_onboarding.card.systemLogs.description1', - { - defaultMessage: - 'The quickest path to onboard log data from your own machine or server.', - } - )} -

-
- -
-
- - } - title={i18n.translate( - 'xpack.observability_onboarding.card.customLogs.title', - { defaultMessage: 'Stream log files' } - )} - footer={ - - {getStartedLabel} - - } - paddingSize="l" - display="plain" - hasBorder - onClick={handleClickCustomLogs} - > - - {elasticAgentLabel} - - -

- {i18n.translate( - 'xpack.observability_onboarding.card.customLogs.description.text', - { - defaultMessage: - 'Stream any logs into Elastic in a simple way and explore their data.', - } - )} -

-
- -
-
-
-
- - - - - - - - } - title={i18n.translate( - 'xpack.observability_onboarding.card.apm.title', - { - defaultMessage: 'Collect application performance data', - } - )} - description={i18n.translate( - 'xpack.observability_onboarding.card.apm.description', + + + + + +

+ {i18n.translate('xpack.observability_onboarding.home.title', { + defaultMessage: 'Collect and analyze logs', + })} +

+
+
+ + +

+ {i18n.translate( + 'xpack.observability_onboarding.home.description', { defaultMessage: - 'Collect traces, logs, and metrics from OpenTelemetry or APM custom agent.', + 'Select your method for collecting data into Observability.', } )} - footer={ - - {getStartedLabel} - - } - paddingSize="m" - titleSize="xs" - display="plain" - hasBorder - onClick={handleClickApmSetupGuide} - /> - - - } - title={i18n.translate( - 'xpack.observability_onboarding.card.k8s.title', - { defaultMessage: 'Collect Kubernetes clusters data' } - )} - description={i18n.translate( - 'xpack.observability_onboarding.card.k8s.description', - { - defaultMessage: - 'Collect logs and metrics from Kubernetes clusters with Elastic agent.', +

+
+ +
+ + + + } + betaBadgeProps={{ + 'data-test-subj': 'obltOnboardingHomeQuickstartBadge', + color: 'accent', + label: i18n.translate( + 'xpack.observability_onboarding.card.systemLogs.quickstartBadge', + { defaultMessage: 'Quick start' } + ), + }} + title={i18n.translate( + 'xpack.observability_onboarding.card.systemLogs.title', + { defaultMessage: 'Stream host system logs' } + )} + footer={ + + {getStartedLabel} + } - )} - footer={ + style={{ + borderColor: euiTheme.colors.accent, + borderWidth: 2, + }} + paddingSize="m" + display="plain" + hasBorder + onClick={handleClickSystemLogs} + > + + {elasticAgentLabel} + + +

+ {i18n.translate( + 'xpack.observability_onboarding.card.systemLogs.description1', + { + defaultMessage: + 'The quickest path to onboard log data from your own machine or server.', + } + )} +

+
+ +
+
+ + } + title={i18n.translate( + 'xpack.observability_onboarding.card.customLogs.title', + { defaultMessage: 'Stream log files' } + )} + footer={ + + {getStartedLabel} + + } + paddingSize="m" + display="plain" + hasBorder + onClick={handleClickCustomLogs} + > + + {elasticAgentLabel} + + +

+ {i18n.translate( + 'xpack.observability_onboarding.card.customLogs.description.text', + { + defaultMessage: + 'Stream any logs into Elastic in a simple way and explore their data.', + } + )} +

+
+ +
+
+
+
+ + + + + + + + } + title={i18n.translate( + 'xpack.observability_onboarding.card.apm.title', + { + defaultMessage: 'Collect application performance data', + } + )} + description={ + +

+ {i18n.translate( + 'xpack.observability_onboarding.card.apm.description', + { + defaultMessage: + 'Collect traces, logs, and metrics from OpenTelemetry or APM custom agent.', + } + )} +

+
+ } + footer={ + + {getStartedLabel} + + } + paddingSize="m" + titleSize="xs" + display="plain" + hasBorder + onClick={handleClickApmSetupGuide} + /> +
+ + } + title={i18n.translate( + 'xpack.observability_onboarding.card.k8s.title', + { defaultMessage: 'Collect Kubernetes clusters data' } + )} + description={ + +

+ {i18n.translate( + 'xpack.observability_onboarding.card.k8s.description', + { + defaultMessage: + 'Collect logs and metrics from Kubernetes clusters with Elastic agent.', + } + )} +

+
+ } + footer={ + + {getStartedLabel} + + } + titleSize="xs" + paddingSize="m" + display="plain" + hasBorder + onClick={handleClickKubernetesSetupGuide} + /> +
+
+
+ + + + + + + + +
+ } + title={i18n.translate( + 'xpack.observability_onboarding.card.integrations.title', + { + defaultMessage: + 'Explore 300+ ways of ingesting data with our integrations', + } + )} + footer={ + <> - {getStartedLabel} - - } - titleSize="xs" - paddingSize="m" - display="plain" - hasBorder - onClick={handleClickKubernetesSetupGuide} - /> - - - - - - - - - - - - - } - title={i18n.translate( - 'xpack.observability_onboarding.card.integrations.title', - { - defaultMessage: - 'Explore 300+ ways of ingesting data with our integrations', - } - )} - footer={ - <> - - {i18n.translate( - 'xpack.observability_onboarding.card.integrations.start', - { defaultMessage: 'Start exploring' } - )} - - - - {i18n.translate( - 'xpack.observability_onboarding.card.integrations.quickLinks', - { defaultMessage: 'Quick links:' } + 'xpack.observability_onboarding.card.integrations.start', + { defaultMessage: 'Start exploring' } )} - - - - + + + + {i18n.translate( + 'xpack.observability_onboarding.card.integrations.quickLinks', + { defaultMessage: 'Quick links:' } + )} + + + - {i18n.translate( - 'xpack.observability_onboarding.card.integrations.sampleData', - { defaultMessage: 'Use sample data' } - )} - - - - {i18n.translate( - 'xpack.observability_onboarding.card.integrations.uploadFile', - { defaultMessage: 'Upload a file' } - )} - - - - - {i18n.translate( - 'xpack.observability_onboarding.card.integrations.awsFirehose', - { defaultMessage: 'AWS Firehose' } - )} - - - - - - - - } - titleSize="xs" - paddingSize="none" - display="plain" - hasBorder - /> - - + + + {i18n.translate( + 'xpack.observability_onboarding.card.integrations.sampleData', + { defaultMessage: 'Use sample data' } + )} + + + + + + {i18n.translate( + 'xpack.observability_onboarding.card.integrations.uploadFile', + { defaultMessage: 'Upload a file' } + )} + + + + + + + {i18n.translate( + 'xpack.observability_onboarding.card.integrations.awsFirehose', + { defaultMessage: 'AWS Firehose' } + )} + + + + + + + + + } + titleSize="xs" + paddingSize="m" + display="plain" + hasBorder + /> + + + ); } From 843dec428de49d8e0bf5d315b068446018c822fb Mon Sep 17 00:00:00 2001 From: Achyut Jhunjhunwala Date: Mon, 2 Oct 2023 17:03:22 +0200 Subject: [PATCH 02/22] [APM] Reverting manual memory fix for cypress post upgrade (#167733) ## Summary As part of this [PR](https://github.com/elastic/kibana/pull/167623), added a logic to handle hiding of Logs Panels which was consuming a lot of memory. With [Cypress Upgrade](https://github.com/elastic/kibana/pull/162383) to 13.x, this issue is now fixed and hence this can be reverted. ## How to be sure this works ? If the PR passes the build, you know it works --- x-pack/plugins/apm/ftr_e2e/cypress_test_runner.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/x-pack/plugins/apm/ftr_e2e/cypress_test_runner.ts b/x-pack/plugins/apm/ftr_e2e/cypress_test_runner.ts index 895b14bcc3794..ffcbd47a8d588 100644 --- a/x-pack/plugins/apm/ftr_e2e/cypress_test_runner.ts +++ b/x-pack/plugins/apm/ftr_e2e/cypress_test_runner.ts @@ -76,7 +76,6 @@ export async function cypressTestRunner({ getService }: FtrProviderContext) { ES_NODE: esNode, ES_REQUEST_TIMEOUT: esRequestTimeout, TEST_CLOUD: process.env.TEST_CLOUD, - NO_COMMAND_LOG: 1, // Temp fix, With Cypress 13, this might not be required https://github.com/elastic/kibana/pull/162383 }, }); From 7d777423b9259f308bf11f9e328c9ba5b3cff66f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Istv=C3=A1n=20Zolt=C3=A1n=20Szab=C3=B3?= Date: Mon, 2 Oct 2023 17:06:15 +0200 Subject: [PATCH 03/22] [ML] Amends the ML app description on the management page (#166843) --- packages/kbn-management/cards_navigation/src/consts.tsx | 2 +- .../jobs_list/components/jobs_list_page/jobs_list_page.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/kbn-management/cards_navigation/src/consts.tsx b/packages/kbn-management/cards_navigation/src/consts.tsx index 45deab542b0a8..03abf7e3cd407 100644 --- a/packages/kbn-management/cards_navigation/src/consts.tsx +++ b/packages/kbn-management/cards_navigation/src/consts.tsx @@ -82,7 +82,7 @@ export const appDefinitions: Record = { category: appCategories.DATA, description: i18n.translate('management.landing.withCardNavigation.mlDescription', { defaultMessage: - 'View, export, and import machine learning analytics and anomaly detection items.', + 'Identify, analyze, and process your data using advanced analysis techniques.', }), icon: , }, diff --git a/x-pack/plugins/ml/public/application/management/jobs_list/components/jobs_list_page/jobs_list_page.tsx b/x-pack/plugins/ml/public/application/management/jobs_list/components/jobs_list_page/jobs_list_page.tsx index 1627fbc13e497..8a0139f0d7782 100644 --- a/x-pack/plugins/ml/public/application/management/jobs_list/components/jobs_list_page/jobs_list_page.tsx +++ b/x-pack/plugins/ml/public/application/management/jobs_list/components/jobs_list_page/jobs_list_page.tsx @@ -151,7 +151,7 @@ export const JobsListPage: FC = ({ description={ } rightSideItems={[]} From 0b48b923105b734d6bbdc450750df15002ca9bd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cau=C3=AA=20Marcondes?= <55978943+cauemarcondes@users.noreply.github.com> Date: Mon, 2 Oct 2023 16:22:49 +0100 Subject: [PATCH 04/22] [Profiling] New Profiling ES Flamegraph API (#167477) New setting was added to go back to use the old one: Screenshot 2023-09-28 at 10 03 08 In the old API, some logic was still being handled by kibana to create the flamegraph data. This logic was moved to the Profiling ES plugin and a new API was created: `_profiling/flamegraph`. We've proven that this has improved the loading time to render the profiling in ~3s. --------- Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com> --- .../server/collectors/management/schema.ts | 4 + .../server/collectors/management/types.ts | 1 + src/plugins/telemetry/schema/oss_plugins.json | 6 + .../apm/server/routes/profiling/route.ts | 6 + x-pack/plugins/observability/common/index.ts | 1 + .../observability/common/ui_settings_keys.ts | 1 + .../observability/server/ui_settings.ts | 9 + .../profiling/server/routes/flamechart.ts | 5 + .../profiling/server/routes/topn.test.ts | 11 + .../utils/create_profiling_es_client.ts | 31 +- .../common/profiling_es_client.ts | 10 +- .../server/services/fetch_flamechart/index.ts | 74 +- .../utils/create_profiling_es_client.ts | 27 +- .../tests/__snapshots__/flamegraph.spec.snap | 93319 ++++++++++++++++ .../tests/flamegraph.spec.ts | 81 + 15 files changed, 93561 insertions(+), 25 deletions(-) create mode 100644 x-pack/test/profiling_api_integration/tests/__snapshots__/flamegraph.spec.snap create mode 100644 x-pack/test/profiling_api_integration/tests/flamegraph.spec.ts diff --git a/src/plugins/kibana_usage_collection/server/collectors/management/schema.ts b/src/plugins/kibana_usage_collection/server/collectors/management/schema.ts index 47309833c7b19..d9a7f95108e47 100644 --- a/src/plugins/kibana_usage_collection/server/collectors/management/schema.ts +++ b/src/plugins/kibana_usage_collection/server/collectors/management/schema.ts @@ -593,4 +593,8 @@ export const stackManagementSchema: MakeSchemaFrom = { type: 'boolean', _meta: { description: 'Non-default value of setting.' }, }, + 'observability:profilingUseLegacyFlamegraphAPI': { + type: 'boolean', + _meta: { description: 'Non-default value of setting.' }, + }, }; diff --git a/src/plugins/kibana_usage_collection/server/collectors/management/types.ts b/src/plugins/kibana_usage_collection/server/collectors/management/types.ts index b48fa13280e47..013b3de057422 100644 --- a/src/plugins/kibana_usage_collection/server/collectors/management/types.ts +++ b/src/plugins/kibana_usage_collection/server/collectors/management/types.ts @@ -155,6 +155,7 @@ export interface UsageStats { 'securitySolution:enableGroupedNav': boolean; 'securitySolution:showRelatedIntegrations': boolean; 'visualization:visualize:legacyGaugeChartsLibrary': boolean; + 'observability:profilingUseLegacyFlamegraphAPI': boolean; 'observability:profilingPerCoreWatt': number; 'observability:profilingCo2PerKWH': number; 'observability:profilingDatacenterPUE': number; diff --git a/src/plugins/telemetry/schema/oss_plugins.json b/src/plugins/telemetry/schema/oss_plugins.json index da1ed4d1e657a..8f2a80e500986 100644 --- a/src/plugins/telemetry/schema/oss_plugins.json +++ b/src/plugins/telemetry/schema/oss_plugins.json @@ -10078,6 +10078,12 @@ "_meta": { "description": "Non-default value of setting." } + }, + "observability:profilingUseLegacyFlamegraphAPI": { + "type": "boolean", + "_meta": { + "description": "Non-default value of setting." + } } } }, diff --git a/x-pack/plugins/apm/server/routes/profiling/route.ts b/x-pack/plugins/apm/server/routes/profiling/route.ts index b3e0a78ea5f2d..9f008996bcf92 100644 --- a/x-pack/plugins/apm/server/routes/profiling/route.ts +++ b/x-pack/plugins/apm/server/routes/profiling/route.ts @@ -8,6 +8,7 @@ import { toNumberRt } from '@kbn/io-ts-utils'; import type { BaseFlameGraph, TopNFunctions } from '@kbn/profiling-utils'; import * as t from 'io-ts'; +import { profilingUseLegacyFlamegraphAPI } from '@kbn/observability-plugin/common'; import { HOST_NAME } from '../../../common/es_fields/apm'; import { toKueryFilterFormat } from '../../../common/utils/to_kuery_filter_format'; import { getApmEventClient } from '../../lib/helpers/get_apm_event_client'; @@ -36,6 +37,10 @@ const profilingFlamegraphRoute = createApmServerRoute({ { flamegraph: BaseFlameGraph; hostNames: string[] } | undefined > => { const { context, plugins, params } = resources; + const useLegacyFlamegraphAPI = await ( + await context.core + ).uiSettings.client.get(profilingUseLegacyFlamegraphAPI); + const [esClient, apmEventClient, profilingDataAccessStart] = await Promise.all([ (await context.core).elasticsearch.client, @@ -67,6 +72,7 @@ const profilingFlamegraphRoute = createApmServerRoute({ rangeFromMs: start, rangeToMs: end, kuery: toKueryFilterFormat(HOST_NAME, serviceHostNames), + useLegacyFlamegraphAPI, }); return { flamegraph, hostNames: serviceHostNames }; diff --git a/x-pack/plugins/observability/common/index.ts b/x-pack/plugins/observability/common/index.ts index 51a92af4b47bd..a8eb77cf34a48 100644 --- a/x-pack/plugins/observability/common/index.ts +++ b/x-pack/plugins/observability/common/index.ts @@ -41,6 +41,7 @@ export { enableCriticalPath, syntheticsThrottlingEnabled, apmEnableProfilingIntegration, + profilingUseLegacyFlamegraphAPI, profilingCo2PerKWH, profilingDatacenterPUE, profilingPerCoreWatt, diff --git a/x-pack/plugins/observability/common/ui_settings_keys.ts b/x-pack/plugins/observability/common/ui_settings_keys.ts index 46f83d7e9c95f..2a94716446091 100644 --- a/x-pack/plugins/observability/common/ui_settings_keys.ts +++ b/x-pack/plugins/observability/common/ui_settings_keys.ts @@ -27,6 +27,7 @@ export const apmEnableContinuousRollups = 'observability:apmEnableContinuousRoll export const syntheticsThrottlingEnabled = 'observability:syntheticsThrottlingEnabled'; export const enableLegacyUptimeApp = 'observability:enableLegacyUptimeApp'; export const apmEnableProfilingIntegration = 'observability:apmEnableProfilingIntegration'; +export const profilingUseLegacyFlamegraphAPI = 'observability:profilingUseLegacyFlamegraphAPI'; export const profilingPerCoreWatt = 'observability:profilingPerCoreWatt'; export const profilingCo2PerKWH = 'observability:profilingCo2PerKWH'; export const profilingDatacenterPUE = 'observability:profilingDatacenterPUE'; diff --git a/x-pack/plugins/observability/server/ui_settings.ts b/x-pack/plugins/observability/server/ui_settings.ts index 4bc87fba79499..759c92e659070 100644 --- a/x-pack/plugins/observability/server/ui_settings.ts +++ b/x-pack/plugins/observability/server/ui_settings.ts @@ -30,6 +30,7 @@ import { syntheticsThrottlingEnabled, enableLegacyUptimeApp, apmEnableProfilingIntegration, + profilingUseLegacyFlamegraphAPI, profilingCo2PerKWH, profilingDatacenterPUE, profilingPerCoreWatt, @@ -377,6 +378,14 @@ export const uiSettings: Record = { schema: schema.boolean(), requiresPageReload: false, }, + [profilingUseLegacyFlamegraphAPI]: { + category: [observabilityFeatureId], + name: i18n.translate('xpack.observability.profilingUseLegacyFlamegraphAPI', { + defaultMessage: 'Use legacy Flamegraph API in Universal Profiling', + }), + value: false, + schema: schema.boolean(), + }, [profilingPerCoreWatt]: { category: [observabilityFeatureId], name: i18n.translate('xpack.observability.profilingPerCoreWattUiSettingName', { diff --git a/x-pack/plugins/profiling/server/routes/flamechart.ts b/x-pack/plugins/profiling/server/routes/flamechart.ts index 28af937dc65f2..23e351633a368 100644 --- a/x-pack/plugins/profiling/server/routes/flamechart.ts +++ b/x-pack/plugins/profiling/server/routes/flamechart.ts @@ -6,6 +6,7 @@ */ import { schema } from '@kbn/config-schema'; +import { profilingUseLegacyFlamegraphAPI } from '@kbn/observability-plugin/common'; import { RouteRegisterParameters } from '.'; import { getRoutePaths } from '../../common'; import { handleRouteHandlerError } from '../utils/handle_route_error_handler'; @@ -33,6 +34,9 @@ export function registerFlameChartSearchRoute({ }, async (context, request, response) => { const { timeFrom, timeTo, kuery } = request.query; + const useLegacyFlamegraphAPI = await ( + await context.core + ).uiSettings.client.get(profilingUseLegacyFlamegraphAPI); try { const esClient = await getClient(context); @@ -41,6 +45,7 @@ export function registerFlameChartSearchRoute({ rangeFromMs: timeFrom, rangeToMs: timeTo, kuery, + useLegacyFlamegraphAPI, }); return response.ok({ body: flamegraph }); diff --git a/x-pack/plugins/profiling/server/routes/topn.test.ts b/x-pack/plugins/profiling/server/routes/topn.test.ts index 9e28b87b51679..fcc8a77a373bc 100644 --- a/x-pack/plugins/profiling/server/routes/topn.test.ts +++ b/x-pack/plugins/profiling/server/routes/topn.test.ts @@ -58,6 +58,17 @@ describe('TopN data from Elasticsearch', () => { }) as Promise ), getEsClient: jest.fn(() => context.elasticsearch.client.asCurrentUser), + profilingFlamegraph: jest.fn( + (request) => + context.elasticsearch.client.asCurrentUser.transport.request({ + method: 'POST', + path: encodeURI('_profiling/flamegraph'), + body: { + query: request.query, + sample_size: request.sampleSize, + }, + }) as Promise + ), }; const logger = loggerMock.create(); diff --git a/x-pack/plugins/profiling/server/utils/create_profiling_es_client.ts b/x-pack/plugins/profiling/server/utils/create_profiling_es_client.ts index dc62411f2fb8f..76ea2788fea57 100644 --- a/x-pack/plugins/profiling/server/utils/create_profiling_es_client.ts +++ b/x-pack/plugins/profiling/server/utils/create_profiling_es_client.ts @@ -10,7 +10,11 @@ import type { ESSearchRequest, InferSearchResponseOf } from '@kbn/es-types'; import type { KibanaRequest } from '@kbn/core/server'; import { unwrapEsResponse } from '@kbn/observability-plugin/server'; import { QueryDslQueryContainer } from '@elastic/elasticsearch/lib/api/typesWithBodyKey'; -import type { ProfilingStatusResponse, StackTraceResponse } from '@kbn/profiling-utils'; +import type { + BaseFlameGraph, + ProfilingStatusResponse, + StackTraceResponse, +} from '@kbn/profiling-utils'; import { withProfilingSpan } from './with_profiling_span'; export function cancelEsRequestOnAbort>( @@ -36,6 +40,10 @@ export interface ProfilingESClient { }): Promise; profilingStatus(): Promise; getEsClient(): ElasticsearchClient; + profilingFlamegraph({}: { + query: QueryDslQueryContainer; + sampleSize: number; + }): Promise; } export function createProfilingEsClient({ @@ -118,5 +126,26 @@ export function createProfilingEsClient({ getEsClient() { return esClient; }, + profilingFlamegraph({ query, sampleSize }) { + const controller = new AbortController(); + + const promise = withProfilingSpan('_profiling/flamegraph', () => { + return esClient.transport.request( + { + method: 'POST', + path: encodeURI('/_profiling/flamegraph'), + body: { + query, + sample_size: sampleSize, + }, + }, + { + signal: controller.signal, + meta: true, + } + ); + }); + return unwrapEsResponse(promise) as Promise; + }, }; } diff --git a/x-pack/plugins/profiling_data_access/common/profiling_es_client.ts b/x-pack/plugins/profiling_data_access/common/profiling_es_client.ts index efc612d5590ef..820aefea45090 100644 --- a/x-pack/plugins/profiling_data_access/common/profiling_es_client.ts +++ b/x-pack/plugins/profiling_data_access/common/profiling_es_client.ts @@ -8,7 +8,11 @@ import { QueryDslQueryContainer } from '@elastic/elasticsearch/lib/api/typesWithBodyKey'; import { ElasticsearchClient } from '@kbn/core/server'; import type { ESSearchRequest, InferSearchResponseOf } from '@kbn/es-types'; -import type { ProfilingStatusResponse, StackTraceResponse } from '@kbn/profiling-utils'; +import type { + BaseFlameGraph, + ProfilingStatusResponse, + StackTraceResponse, +} from '@kbn/profiling-utils'; export interface ProfilingESClient { search( @@ -21,4 +25,8 @@ export interface ProfilingESClient { }): Promise; profilingStatus(): Promise; getEsClient(): ElasticsearchClient; + profilingFlamegraph({}: { + query: QueryDslQueryContainer; + sampleSize: number; + }): Promise; } diff --git a/x-pack/plugins/profiling_data_access/server/services/fetch_flamechart/index.ts b/x-pack/plugins/profiling_data_access/server/services/fetch_flamechart/index.ts index c83063bcf7e0b..7c49c9514feeb 100644 --- a/x-pack/plugins/profiling_data_access/server/services/fetch_flamechart/index.ts +++ b/x-pack/plugins/profiling_data_access/server/services/fetch_flamechart/index.ts @@ -7,6 +7,7 @@ import { ElasticsearchClient } from '@kbn/core/server'; import { createBaseFlameGraph, createCalleeTree } from '@kbn/profiling-utils'; +import { kqlQuery } from '../../utils/query'; import { withProfilingSpan } from '../../utils/with_profiling_span'; import { RegisterServicesParams } from '../register_services'; import { searchStackTraces } from '../search_stack_traces'; @@ -16,40 +17,69 @@ export interface FetchFlamechartParams { rangeFromMs: number; rangeToMs: number; kuery: string; + useLegacyFlamegraphAPI?: boolean; } +const targetSampleSize = 20000; // minimum number of samples to get statistically sound results + export function createFetchFlamechart({ createProfilingEsClient }: RegisterServicesParams) { - return async ({ esClient, rangeFromMs, rangeToMs, kuery }: FetchFlamechartParams) => { + return async ({ + esClient, + rangeFromMs, + rangeToMs, + kuery, + useLegacyFlamegraphAPI = false, + }: FetchFlamechartParams) => { const rangeFromSecs = rangeFromMs / 1000; const rangeToSecs = rangeToMs / 1000; const profilingEsClient = createProfilingEsClient({ esClient }); - const targetSampleSize = 20000; // minimum number of samples to get statistically sound results const totalSeconds = rangeToSecs - rangeFromSecs; + // Use legacy stack traces API to fetch the flamegraph + if (useLegacyFlamegraphAPI) { + const { events, stackTraces, executables, stackFrames, totalFrames, samplingRate } = + await searchStackTraces({ + client: profilingEsClient, + rangeFrom: rangeFromSecs, + rangeTo: rangeToSecs, + kuery, + sampleSize: targetSampleSize, + }); + + return await withProfilingSpan('create_flamegraph', async () => { + const tree = createCalleeTree( + events, + stackTraces, + stackFrames, + executables, + totalFrames, + samplingRate + ); - const { events, stackTraces, executables, stackFrames, totalFrames, samplingRate } = - await searchStackTraces({ - client: profilingEsClient, - rangeFrom: rangeFromSecs, - rangeTo: rangeToSecs, - kuery, - sampleSize: targetSampleSize, + return createBaseFlameGraph(tree, samplingRate, totalSeconds); }); + } - const flamegraph = await withProfilingSpan('create_flamegraph', async () => { - const tree = createCalleeTree( - events, - stackTraces, - stackFrames, - executables, - totalFrames, - samplingRate - ); - - return createBaseFlameGraph(tree, samplingRate, totalSeconds); + const flamegraph = await profilingEsClient.profilingFlamegraph({ + query: { + bool: { + filter: [ + ...kqlQuery(kuery), + { + range: { + ['@timestamp']: { + gte: String(rangeFromSecs), + lt: String(rangeToSecs), + format: 'epoch_second', + }, + }, + }, + ], + }, + }, + sampleSize: targetSampleSize, }); - - return flamegraph; + return { ...flamegraph, TotalSeconds: totalSeconds }; }; } diff --git a/x-pack/plugins/profiling_data_access/server/utils/create_profiling_es_client.ts b/x-pack/plugins/profiling_data_access/server/utils/create_profiling_es_client.ts index c35ee17a64d32..258b18c3e44f9 100644 --- a/x-pack/plugins/profiling_data_access/server/utils/create_profiling_es_client.ts +++ b/x-pack/plugins/profiling_data_access/server/utils/create_profiling_es_client.ts @@ -7,7 +7,11 @@ import { ElasticsearchClient } from '@kbn/core/server'; import type { ESSearchRequest, InferSearchResponseOf } from '@kbn/es-types'; -import type { ProfilingStatusResponse, StackTraceResponse } from '@kbn/profiling-utils'; +import type { + BaseFlameGraph, + ProfilingStatusResponse, + StackTraceResponse, +} from '@kbn/profiling-utils'; import { ProfilingESClient } from '../../common/profiling_es_client'; import { unwrapEsResponse } from './unwrap_es_response'; import { withProfilingSpan } from './with_profiling_span'; @@ -77,5 +81,26 @@ export function createProfilingEsClient({ getEsClient() { return esClient; }, + profilingFlamegraph({ query, sampleSize }) { + const controller = new AbortController(); + + const promise = withProfilingSpan('_profiling/flamegraph', () => { + return esClient.transport.request( + { + method: 'POST', + path: encodeURI('/_profiling/flamegraph'), + body: { + query, + sample_size: sampleSize, + }, + }, + { + signal: controller.signal, + meta: true, + } + ); + }); + return unwrapEsResponse(promise) as Promise; + }, }; } diff --git a/x-pack/test/profiling_api_integration/tests/__snapshots__/flamegraph.spec.snap b/x-pack/test/profiling_api_integration/tests/__snapshots__/flamegraph.spec.snap new file mode 100644 index 0000000000000..d5961dd8ce628 --- /dev/null +++ b/x-pack/test/profiling_api_integration/tests/__snapshots__/flamegraph.spec.snap @@ -0,0 +1,93319 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct AddressOrLine 1`] = ` +Array [ + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -264547936, + -264547936, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 60, + 60, + 60, + 60, + 60, + 60, + 60, + 60, + 60, + 60, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 63, + 63, + 63, + 63, + 63, + 63, + 63, + 63, + 63, + 63, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 66, + 66, + 66, + 66, + 66, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 69, + 69, + 69, + 69, + 69, + 69, + 69, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 71, + 71, + 71, + 71, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 73, + 73, + 73, + 73, + 73, + 73, + 73, + 73, + 73, + 73, + 74, + 74, + 74, + 74, + 74, + 74, + 74, + 74, + 74, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 76, + 76, + 76, + 76, + 76, + 76, + 76, + 76, + 76, + 76, + 76, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 78, + 78, + 78, + 78, + 78, + 78, + 78, + 78, + 78, + 78, + 79, + 79, + 79, + 79, + 79, + 79, + 80, + 80, + 80, + 80, + 80, + 80, + 80, + 80, + 80, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 83, + 83, + 83, + 83, + 83, + 83, + 83, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 87, + 87, + 87, + 87, + 87, + 87, + 87, + 87, + 87, + 87, + 87, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 89, + 89, + 89, + 89, + 89, + 89, + 89, + 89, + 89, + 89, + 90, + 90, + 90, + 90, + 90, + 90, + 91, + 91, + 91, + 91, + 91, + 91, + 91, + 92, + 92, + 92, + 92, + 92, + 92, + 92, + 93, + 93, + 93, + 93, + 93, + 93, + 93, + 93, + 93, + 94, + 94, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 97, + 97, + 97, + 97, + 97, + 97, + 97, + 97, + 98, + 98, + 98, + 98, + 98, + 98, + 98, + 98, + 98, + 99, + 99, + 99, + 99, + 100, + 100, + 101, + 101, + 101, + 101, + 101, + 101, + 101, + 101, + 101, + 102, + 102, + 102, + 102, + 102, + 102, + 102, + 102, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 104, + 104, + 104, + 104, + 104, + 104, + 104, + 104, + 104, + 104, + 104, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 106, + 106, + 106, + 106, + 106, + 106, + 107, + 107, + 107, + 107, + 107, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 109, + 109, + 109, + 109, + 110, + 110, + 110, + 110, + 110, + 110, + 111, + 111, + 111, + 111, + 111, + 111, + 111, + 111, + 111, + 111, + 112, + 112, + 112, + 112, + 112, + 112, + 112, + 112, + 113, + 113, + 113, + 113, + 113, + 113, + 114, + 114, + 114, + 114, + 115, + 115, + 115, + 115, + 115, + 115, + 115, + 116, + 116, + 116, + 116, + 116, + 116, + 116, + 116, + 117, + 117, + 117, + 117, + 117, + 117, + 117, + 117, + 117, + 118, + 118, + 118, + 118, + 118, + 118, + 118, + 118, + 118, + 118, + 119, + 119, + 119, + 119, + 120, + 120, + 120, + 121, + 122, + 122, + 122, + 122, + 122, + 123, + 123, + 123, + 123, + 123, + 123, + 123, + 124, + 124, + 124, + 124, + 124, + 124, + 124, + 125, + 125, + 126, + 126, + 127, + 127, + 127, + 127, + 128, + 128, + 129, + 130, + 130, + 130, + 130, + 130, + 130, + 130, + 131, + 131, + 131, + 131, + 131, + 131, + 131, + 132, + 132, + 132, + 132, + 132, + 132, + 132, + 132, + 132, + 132, + 132, + 133, + 133, + 133, + 133, + 134, + 134, + 134, + 134, + 134, + 134, + 134, + 134, + 134, + 134, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 137, + 137, + 137, + 137, + 137, + 137, + 138, + 138, + 138, + 138, + 138, + 138, + 138, + 138, + 138, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 140, + 140, + 140, + 140, + 141, + 141, + 141, + 141, + 141, + 141, + 141, + 141, + 141, + 142, + 142, + 142, + 142, + 142, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 145, + 145, + 145, + 146, + 146, + 146, + 146, + 146, + 146, + 146, + 147, + 148, + 148, + 148, + 149, + 149, + 149, + 150, + 150, + 150, + 150, + 150, + 150, + 150, + 150, + 151, + 151, + 151, + 151, + 151, + 151, + 151, + 151, + 152, + 152, + 152, + 152, + 152, + 152, + 152, + 152, + 152, + 154, + 154, + 154, + 154, + 154, + 155, + 155, + 155, + 156, + 156, + 157, + 158, + 158, + 158, + 158, + 158, + 158, + 158, + 159, + 159, + 159, + 159, + 159, + 159, + 159, + 159, + 159, + 159, + 160, + 160, + 160, + 160, + 161, + 161, + 161, + 161, + 161, + 161, + 161, + 161, + 161, + 161, + 161, + 162, + 162, + 163, + 163, + 163, + 164, + 164, + 164, + 164, + 165, + 165, + 165, + 166, + 166, + 166, + 167, + 167, + 168, + 168, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 170, + 170, + 170, + 170, + 170, + 171, + 172, + 172, + 172, + 172, + 172, + 172, + 172, + 173, + 173, + 173, + 173, + 173, + 173, + 174, + 174, + 174, + 174, + 174, + 175, + 175, + 175, + 175, + 176, + 176, + 176, + 176, + 176, + 176, + 178, + 178, + 179, + 179, + 179, + 179, + 179, + 179, + 179, + 179, + 180, + 181, + 181, + 181, + 181, + 181, + 181, + 181, + 182, + 182, + 182, + 182, + 182, + 183, + 183, + 183, + 183, + 183, + 183, + 184, + 184, + 184, + 184, + 184, + 184, + 185, + 186, + 186, + 187, + 187, + 187, + 188, + 188, + 188, + 188, + 188, + 188, + 188, + 189, + 189, + 189, + 189, + 189, + 190, + 190, + 191, + 192, + 192, + 192, + 192, + 192, + 194, + 194, + 194, + 195, + 195, + 195, + 196, + 196, + 196, + 196, + 197, + 198, + 198, + 198, + 198, + 199, + 199, + 199, + 199, + 199, + 199, + 199, + 199, + 199, + 200, + 200, + 200, + 200, + 201, + 201, + 201, + 201, + 201, + 201, + 202, + 202, + 202, + 202, + 202, + 202, + 202, + 202, + 202, + 202, + 203, + 203, + 203, + 203, + 203, + 205, + 205, + 205, + 205, + 207, + 207, + 207, + 208, + 209, + 210, + 210, + 211, + 211, + 212, + 212, + 214, + 214, + 214, + 214, + 214, + 215, + 215, + 215, + 215, + 215, + 215, + 215, + 215, + 216, + 216, + 216, + 216, + 216, + 216, + 216, + 217, + 217, + 217, + 217, + 217, + 219, + 219, + 219, + 220, + 221, + 221, + 221, + 221, + 221, + 221, + 221, + 222, + 222, + 223, + 223, + 223, + 224, + 224, + 225, + 225, + 225, + 225, + 225, + 225, + 225, + 226, + 227, + 229, + 229, + 230, + 230, + 230, + 230, + 231, + 232, + 232, + 232, + 233, + 234, + 235, + 235, + 235, + 236, + 236, + 236, + 237, + 238, + 238, + 238, + 239, + 239, + 239, + 239, + 239, + 240, + 240, + 241, + 241, + 242, + 244, + 244, + 245, + 247, + 250, + 250, + 250, + 250, + 250, + 250, + 255, + 255, + 255, + 255, + 257, + 258, + 258, + 258, + 258, + 258, + 258, + 259, + 260, + 260, + 261, + 261, + 261, + 261, + 261, + 261, + 262, + 263, + 263, + 263, + 265, + 265, + 265, + 265, + 265, + 265, + 265, + 266, + 266, + 266, + 266, + 266, + 266, + 267, + 267, + 267, + 267, + 268, + 268, + 271, + 273, + 273, + 273, + 273, + 273, + 274, + 275, + 275, + 275, + 275, + 275, + 275, + 275, + 275, + 275, + 277, + 277, + 277, + 277, + 277, + 277, + 277, + 277, + 278, + 279, + 279, + 279, + 279, + 279, + 279, + 279, + 279, + 282, + 283, + 284, + 284, + 285, + 285, + 286, + 287, + 288, + 288, + 288, + 289, + 289, + 291, + 292, + 292, + 294, + 294, + 295, + 296, + 297, + 298, + 298, + 300, + 300, + 300, + 300, + 301, + 302, + 302, + 302, + 302, + 302, + 302, + 302, + 302, + 302, + 302, + 303, + 304, + 304, + 305, + 306, + 307, + 308, + 308, + 308, + 309, + 312, + 312, + 312, + 312, + 312, + 313, + 314, + 314, + 314, + 315, + 315, + 316, + 317, + 319, + 319, + 319, + 319, + 319, + 321, + 321, + 321, + 321, + 322, + 323, + 323, + 323, + 323, + 323, + 323, + 323, + 323, + 323, + 323, + 323, + 323, + 325, + 325, + 325, + 325, + 326, + 328, + 328, + 328, + 328, + 328, + 328, + 328, + 329, + 329, + 329, + 329, + 329, + 330, + 330, + 330, + 330, + 331, + 332, + 333, + 333, + 336, + 337, + 339, + 339, + 339, + 339, + 339, + 343, + 344, + 346, + 347, + 349, + 350, + 351, + 352, + 352, + 352, + 352, + 354, + 354, + 357, + 359, + 359, + 360, + 360, + 361, + 361, + 362, + 364, + 365, + 365, + 365, + 365, + 365, + 365, + 365, + 365, + 365, + 371, + 371, + 372, + 373, + 373, + 375, + 375, + 375, + 377, + 377, + 377, + 377, + 378, + 378, + 378, + 378, + 379, + 380, + 383, + 383, + 385, + 385, + 390, + 393, + 393, + 393, + 393, + 393, + 393, + 393, + 393, + 393, + 393, + 397, + 397, + 397, + 397, + 397, + 397, + 397, + 397, + 397, + 404, + 405, + 405, + 409, + 413, + 413, + 416, + 417, + 417, + 417, + 417, + 418, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 424, + 425, + 427, + 428, + 428, + 431, + 431, + 431, + 431, + 431, + 431, + 433, + 434, + 435, + 435, + 437, + 437, + 437, + 437, + 437, + 437, + 437, + 437, + 437, + 438, + 438, + 439, + 439, + 442, + 442, + 443, + 454, + 454, + 454, + 454, + 456, + 467, + 471, + 472, + 475, + 476, + 476, + 476, + 478, + 478, + 478, + 486, + 486, + 487, + 489, + 493, + 497, + 499, + 502, + 504, + 504, + 506, + 506, + 506, + 506, + 506, + 513, + 513, + 513, + 514, + 514, + 514, + 514, + 514, + 521, + 521, + 521, + 521, + 521, + 523, + 523, + 523, + 525, + 538, + 547, + 554, + 554, + 555, + 555, + 562, + 564, + 569, + 572, + 572, + 572, + 577, + 578, + 578, + 580, + 580, + 580, + 584, + 588, + 593, + 593, + 593, + 593, + 602, + 602, + 610, + 623, + 623, + 630, + 671, + 671, + 672, + 704, + 717, + 721, + 721, + 721, + 721, + 728, + 732, + 733, + 735, + 744, + 744, + 744, + 744, + 744, + 744, + 744, + 744, + 744, + 767, + 772, + 772, + 772, + 805, + 850, + 865, + 896, + 938, + 943, + 978, + 980, + 983, + 1002, + 1002, + 1009, + 1016, + 1131, + 1396, + 1770, + 2208, + 2394, + 2394, + 2433, + 2473, + 4247, + 4268, + 8487, + 9372, + 9372, + 9372, + 9372, + 9793, + 10775, + 11438, + 11438, + 11438, + 11824, + 11876, + 14470, + 14802, + 15223, + 15223, + 15318, + 16403, + 16403, + 16403, + 16403, + 16403, + 16403, + 16403, + 16730, + 16837, + 16837, + 16837, + 16837, + 16837, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 17059, + 17059, + 17190, + 17206, + 17206, + 17206, + 17206, + 17206, + 17206, + 17206, + 17955, + 17955, + 17955, + 17955, + 18034, + 18034, + 18034, + 18034, + 18034, + 18035, + 18061, + 18061, + 18061, + 18061, + 18062, + 18062, + 23395, + 24396, + 28810, + 28810, + 29188, + 29188, + 29242, + 29242, + 29242, + 29620, + 29766, + 30426, + 30545, + 31390, + 32420, + 32420, + 33097, + 33795, + 34312, + 34312, + 37552, + 37735, + 37735, + 38696, + 42240, + 42401, + 42401, + 43550, + 43713, + 44746, + 44814, + 45743, + 46314, + 48609, + 48609, + 48610, + 48636, + 48875, + 49619, + 50395, + 50395, + 52392, + 52467, + 52467, + 52467, + 52486, + 53672, + 53850, + 53926, + 54244, + 54531, + 54579, + 55875, + 55956, + 57100, + 57462, + 57988, + 59111, + 59132, + 59133, + 59133, + 59594, + 60796, + 61180, + 61181, + 63440, + 65932, + 65932, + 71750, + 71751, + 71907, + 73302, + 73303, + 73303, + 73941, + 73941, + 73942, + 76192, + 76772, + 78796, + 78939, + 80596, + 81007, + 83204, + 93722, + 95616, + 95993, + 96223, + 96731, + 96743, + 97158, + 98728, + 110415, + 114601, + 138374, + 138374, + 138374, + 148258, + 156820, + 157327, + 169577, + 175835, + 175835, + 178040, + 179874, + 186154, + 187067, + 204309, + 210610, + 213781, + 213902, + 214005, + 217550, + 217963, + 217963, + 217963, + 217963, + 217963, + 217963, + 217963, + 217963, + 217963, + 217963, + 221483, + 236193, + 237575, + 241221, + 244861, + 246004, + 251160, + 251346, + 256811, + 257077, + 258585, + 260824, + 262599, + 263825, + 266237, + 267564, + 267862, + 271785, + 273015, + 273325, + 273498, + 280340, + 285640, + 285645, + 285988, + 286408, + 287102, + 291187, + 292952, + 293404, + 304448, + 329469, + 337207, + 337267, + 353620, + 354860, + 363253, + 366244, + 379094, + 379138, + 379138, + 386959, + 387625, + 388024, + 391324, + 398773, + 400130, + 402219, + 420708, + 420834, + 420968, + 420989, + 429600, + 436214, + 436466, + 437506, + 437506, + 437506, + 437507, + 446292, + 482397, + 482675, + 482738, + 496471, + 499489, + 499898, + 500343, + 504147, + 528259, + 530252, + 540766, + 552577, + 552868, + 553264, + 554255, + 562833, + 563495, + 563780, + 564465, + 568871, + 569598, + 578570, + 579139, + 579890, + 581164, + 594189, + 598557, + 603095, + 606532, + 622102, + 636884, + 655509, + 655599, + 656490, + 696249, + 700505, + 700505, + 713123, + 713123, + 713123, + 713123, + 713123, + 713123, + 713123, + 713123, + 713123, + 719944, + 719944, + 727127, + 727526, + 730007, + 740100, + 747815, + 747815, + 747815, + 747815, + 747965, + 748819, + 748819, + 748819, + 748932, + 757739, + 757739, + 757935, + 763374, + 763923, + 778581, + 778581, + 779285, + 779311, + 779311, + 789600, + 790144, + 791173, + 804714, + 804749, + 805338, + 831785, + 833432, + 833593, + 833593, + 833593, + 833593, + 833593, + 833593, + 833593, + 833593, + 833593, + 837594, + 837594, + 837594, + 837594, + 837594, + 837594, + 837594, + 837594, + 837594, + 838088, + 838088, + 838088, + 838088, + 838088, + 838088, + 838088, + 838088, + 838088, + 840007, + 840007, + 840007, + 840007, + 840007, + 840007, + 840007, + 840007, + 840007, + 841796, + 842480, + 846574, + 846574, + 846574, + 846574, + 846574, + 846574, + 846574, + 846574, + 846574, + 848887, + 848887, + 848887, + 848887, + 848887, + 848887, + 848887, + 848887, + 848887, + 851844, + 855620, + 861499, + 861499, + 861499, + 861499, + 861499, + 861499, + 861499, + 861499, + 861499, + 861499, + 862547, + 862547, + 862547, + 862547, + 862547, + 862547, + 862547, + 862547, + 862547, + 862547, + 894427, + 906301, + 906301, + 906301, + 906301, + 906301, + 906301, + 906301, + 910059, + 910244, + 934231, + 934964, + 935301, + 939487, + 970587, + 970658, + 972570, + 979307, + 979652, + 987192, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 995818, + 998461, + 999081, + 1002886, + 1002887, + 1008716, + 1008716, + 1008716, + 1008716, + 1008716, + 1008716, + 1013930, + 1018938, + 1019141, + 1019141, + 1019141, + 1019141, + 1019141, + 1019141, + 1019141, + 1019141, + 1020133, + 1020133, + 1020133, + 1020237, + 1020237, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1023386, + 1035714, + 1037183, + 1042652, + 1043212, + 1092670, + 1098599, + 1098599, + 1100968, + 1101643, + 1101643, + 1101643, + 1101643, + 1101643, + 1101643, + 1103033, + 1103033, + 1103033, + 1103767, + 1111844, + 1113307, + 1113354, + 1126320, + 1144919, + 1154034, + 1154034, + 1154034, + 1163548, + 1165041, + 1175858, + 1175906, + 1184878, + 1185310, + 1200669, + 1210458, + 1237353, + 1240176, + 1240292, + 1241899, + 1242154, + 1243711, + 1244339, + 1259150, + 1293880, + 1315427, + 1315464, + 1315464, + 1315464, + 1315464, + 1315464, + 1315464, + 1317964, + 1317964, + 1317964, + 1317964, + 1317964, + 1317964, + 1317964, + 1317964, + 1317964, + 1317964, + 1319583, + 1319583, + 1319583, + 1319583, + 1319583, + 1319583, + 1319583, + 1319818, + 1329886, + 1329886, + 1329886, + 1329886, + 1329886, + 1329886, + 1329886, + 1329886, + 1329886, + 1329886, + 1330367, + 1330367, + 1330367, + 1330367, + 1330367, + 1330367, + 1330367, + 1330367, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1333281, + 1334493, + 1334871, + 1335098, + 1477557, + 1477745, + 1488480, + 1499612, + 1502620, + 1512015, + 1516744, + 1521199, + 1521233, + 1521297, + 1521301, + 1521301, + 1521301, + 1521301, + 1521305, + 1521420, + 1521779, + 1522125, + 1522809, + 1523515, + 1523515, + 1523515, + 1523515, + 1523515, + 1523515, + 1523515, + 1579537, + 1580637, + 1582087, + 1587430, + 1587946, + 1588244, + 1588244, + 1592368, + 1592971, + 1607943, + 1611998, + 1620561, + 1631397, + 1638406, + 1638481, + 1640755, + 1664641, + 1665430, + 1667845, + 1778104, + 1778104, + 1778104, + 1778104, + 1778104, + 1778104, + 1778104, + 1778104, + 1778104, + 1782740, + 1789090, + 1793992, + 1833355, + 1943500, + 1945033, + 1946452, + 1985962, + 2000177, + 2008200, + 2013434, + 2013446, + 2013449, + 2088580, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2109160, + 2110440, + 2138147, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2150016, + 2150850, + 2150922, + 2159654, + 2159654, + 2159654, + 2159654, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2160803, + 2162106, + 2167877, + 2170200, + 2177271, + 2179151, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2192765, + 2192765, + 2200850, + 2202680, + 2204366, + 2205276, + 2207134, + 2210616, + 2210700, + 2211963, + 2219178, + 2220304, + 2220904, + 2224387, + 2224431, + 2232004, + 2232004, + 2232004, + 2232004, + 2232004, + 2232004, + 2232004, + 2232004, + 2232004, + 2232004, + 2233540, + 2233540, + 2233540, + 2233540, + 2233540, + 2233540, + 2233540, + 2233540, + 2233540, + 2233654, + 2246979, + 2257770, + 2454281, + 2483444, + 2512969, + 2513408, + 2603980, + 2606201, + 2606809, + 2606809, + 2678964, + 2753147, + 2951986, + 2956187, + 2956682, + 2958638, + 2959577, + 2959577, + 2959577, + 2959904, + 2959999, + 2959999, + 2963125, + 2963617, + 2964052, + 2964248, + 2967536, + 2973820, + 2974308, + 2976330, + 2976330, + 2976344, + 2976509, + 2976509, + 2976509, + 2976797, + 2976918, + 2976918, + 2976918, + 2977001, + 2977001, + 2977001, + 2977001, + 2977085, + 2977206, + 2977289, + 2977289, + 2979567, + 2979801, + 2986766, + 2996160, + 2996437, + 2996437, + 2996437, + 2996437, + 2996460, + 2997753, + 2997996, + 2997996, + 2997996, + 2997996, + 2997996, + 2998069, + 2998069, + 2998069, + 2998069, + 2998069, + 2998359, + 2998429, + 3000619, + 3000619, + 3000845, + 3000845, + 3023775, + 3023911, + 3028647, + 3028647, + 3028647, + 3029037, + 3031208, + 3031208, + 3031208, + 3031208, + 3032427, + 3032427, + 3032763, + 3032763, + 3033661, + 3033661, + 3033700, + 3033700, + 3033700, + 3033700, + 3041546, + 3042232, + 3046282, + 3047706, + 3051429, + 3051429, + 3051429, + 3051429, + 3051429, + 3051429, + 3051826, + 3051845, + 3051845, + 3051845, + 3051845, + 3051845, + 3051845, + 3052538, + 3052538, + 3052538, + 3055099, + 3055650, + 3098207, + 3098207, + 3098233, + 3105984, + 3106360, + 3107266, + 3114291, + 3114324, + 3116744, + 3116744, + 3118982, + 3118982, + 3121929, + 3149645, + 3151978, + 3152513, + 3154436, + 3218439, + 3218588, + 3218726, + 3299977, + 3329677, + 3330089, + 3330691, + 3332368, + 3332368, + 3335052, + 3335052, + 3335794, + 3336240, + 3336707, + 3336959, + 3337005, + 3654640, + 3658497, + 3660016, + 3756581, + 3763917, + 3830220, + 3832179, + 4515684, + 4517064, + 4517914, + 4793136, + 4838776, + 4839067, + 4839132, + 4843812, + 4851855, + 4852820, + 4853095, + 4853361, + 5022383, + 5106928, + 5107019, + 5139801, + 5141606, + 5143493, + 5147487, + 5151962, + 5160673, + 5167942, + 5169772, + 5170681, + 5171606, + 5371282, + 5528179, + 5528179, + 5534503, + 5534505, + 5534508, + 5534665, + 5534665, + 5548443, + 5549891, + 5549912, + 5567201, + 5636419, + 5644405, + 5787363, + 5805912, + 5845852, + 5851143, + 5873587, + 5880987, + 5881112, + 5887780, + 5887892, + 5887923, + 5887943, + 5888055, + 5888913, + 5940570, + 6137806, + 6272987, + 6281154, + 6281466, + 6282134, + 6332429, + 6334580, + 6526309, + 6567005, + 6684934, + 6684951, + 6906272, + 6906453, + 6921152, + 6921155, + 6921158, + 6921166, + 6921198, + 6921206, + 6921213, + 6921216, + 6921230, + 6921288, + 6921305, + 6921324, + 6921373, + 6921383, + 6921392, + 6921408, + 6921462, + 6921485, + 6921492, + 6921495, + 6921530, + 6921570, + 6921570, + 6921604, + 6921625, + 6921743, + 6922055, + 6922058, + 6922058, + 6922064, + 6922070, + 6922070, + 6930951, + 6930980, + 6930984, + 6931127, + 6931164, + 6931164, + 6931354, + 6931602, + 6931602, + 6931602, + 6932168, + 6932300, + 6932602, + 6933559, + 6950649, + 7013252, + 7014241, + 7015351, + 7023742, + 7023775, + 7026031, + 7056568, + 7064650, + 7064735, + 7064735, + 7064758, + 7064758, + 7064782, + 7065056, + 7065129, + 7065244, + 7065271, + 7065283, + 7065294, + 7065303, + 7065308, + 7065319, + 7069789, + 7070298, + 7070309, + 7070341, + 7071383, + 7075561, + 7077122, + 7077712, + 7077716, + 7077719, + 7077727, + 7077731, + 7077735, + 7077768, + 7077775, + 7077815, + 7079806, + 7082156, + 7085558, + 7085627, + 7085651, + 7085717, + 7085727, + 7085727, + 7085727, + 7085753, + 7085753, + 7085753, + 7085803, + 7087017, + 7087017, + 7087039, + 7088102, + 7091164, + 7096520, + 7124083, + 7151307, + 7217295, + 7217321, + 7293943, + 7314770, + 7318794, + 7331827, + 7347318, + 7353914, + 7392798, + 7392805, + 7392812, + 7392826, + 7392838, + 7392878, + 7392924, + 7393312, + 7393313, + 7393315, + 7393315, + 7393318, + 7393322, + 7393338, + 7393350, + 7393361, + 7393379, + 7393397, + 7393408, + 7393416, + 7399628, + 7401990, + 7402593, + 7402719, + 7402785, + 7405153, + 7405186, + 7405194, + 7405232, + 7405235, + 7405270, + 7405281, + 7405282, + 7405287, + 7405306, + 7413075, + 7413106, + 7413145, + 7413146, + 7413164, + 7413190, + 7413206, + 7413265, + 7413268, + 7413320, + 7413490, + 7413511, + 7413520, + 7415474, + 7417574, + 7421066, + 7421304, + 7421494, + 7421584, + 7421959, + 7440555, + 7440786, + 7448636, + 7455895, + 7457104, + 7457676, + 7478650, + 7478888, + 7479169, + 7487788, + 7518219, + 7529222, + 7613166, + 7620099, + 7620117, + 7639309, + 7639309, + 7639411, + 7644748, + 7647626, + 7843104, + 7919702, + 7952802, + 7952802, + 7961776, + 7961895, + 7961990, + 7962032, + 7962174, + 7962174, + 7962314, + 7962348, + 7970504, + 7987791, + 7988016, + 7990544, + 7990560, + 8096902, + 8110482, + 8176642, + 8297354, + 8304043, + 8356914, + 8358642, + 8366743, + 8368180, + 8370060, + 8416173, + 8424040, + 8475965, + 8580564, + 8581938, + 8586698, + 8619378, + 8728880, + 8804340, + 8811227, + 8857932, + 8923428, + 8929617, + 9027371, + 9029552, + 9067857, + 9067949, + 9071451, + 9071618, + 9072716, + 9081064, + 9081223, + 9096442, + 9228908, + 9231725, + 9231879, + 9232456, + 9239023, + 9251551, + 9259924, + 9311428, + 9312873, + 9340255, + 9418489, + 9467194, + 9467194, + 9505000, + 9505399, + 9505815, + 9577599, + 9642323, + 9642372, + 9642372, + 9642575, + 9642767, + 9642782, + 9666850, + 9668202, + 9749934, + 9751194, + 9751451, + 9755402, + 9756250, + 9757676, + 9777453, + 9790071, + 9811783, + 9814075, + 9872051, + 9878126, + 9881368, + 9881368, + 9881368, + 9881493, + 9881497, + 9882118, + 9898207, + 9937888, + 9940883, + 10012964, + 10019512, + 10848237, + 10857509, + 10858360, + 10858360, + 10946344, + 10946921, + 10946921, + 10946921, + 10946921, + 10946921, + 10946921, + 10946921, + 10946921, + 10946921, + 10948105, + 10948114, + 10948114, + 10948114, + 10948114, + 10948114, + 10948114, + 10948114, + 10948114, + 10948114, + 10949045, + 10963634, + 10964227, + 10964258, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10968675, + 10968675, + 12008756, + 12011992, + 12012633, + 12012856, + 12024964, + 12028224, + 12052555, + 12052593, + 12055957, + 12056007, + 12331019, + 12361958, + 12404806, + 12508259, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583444, + 12586761, + 12685779, + 12697712, + 12718923, + 12921218, + 12929697, + 12941846, + 12945575, + 12966103, + 12980830, + 13007469, + 13008217, + 13009311, + 13009355, + 13039467, + 13043108, + 13043969, + 13081738, + 13150008, + 13162154, + 13186583, + 13231286, + 13235147, + 13275411, + 13338187, + 13360432, + 13701883, + 13702074, + 13702147, + 14226476, + 14230275, + 14230631, + 14231280, + 14231280, + 14548947, + 14549453, + 14680291, + 14927389, + 14942079, + 14958767, + 14966767, + 15099252, + 15147027, + 15147027, + 15160177, + 15315401, + 15330929, + 15381627, + 15381906, + 15382210, + 15385321, + 15404428, + 15472098, + 15528331, + 15628491, + 15647070, + 15699471, + 15847060, + 15856194, + 15871095, + 15879114, + 15880794, + 15881718, + 16031100, + 16035221, + 16035757, + 18111716, + 18151363, + 18151363, + 18151666, + 18151666, + 18239385, + 18239385, + 18240896, + 18240907, + 18241347, + 18241357, + 18241371, + 18241410, + 18241410, + 18241588, + 18241588, + 18242641, + 18242672, + 18242672, + 18247558, + 18269975, + 18290869, + 18290869, + 18291067, + 18291067, + 18317764, + 18329091, + 18329091, + 18329131, + 18329492, + 18333492, + 18333492, + 18336753, + 18336753, + 18337586, + 18338106, + 18338709, + 18340445, + 18352876, + 18353009, + 18355278, + 18355278, + 18406891, + 18407820, + 18407918, + 18425737, + 18427920, + 18428825, + 18433859, + 18453947, + 18481777, + 18482012, + 18489417, + 18494642, + 18494770, + 18494963, + 18503104, + 18508776, + 18509708, + 18509888, + 18511138, + 18511138, + 18511139, + 18511139, + 18612875, + 18612875, + 18622768, + 18622768, + 18674663, + 18717448, + 18736869, + 18736869, + 18769106, + 19406459, + 19415333, + 19624576, + 19706905, + 22502297, + 22507556, + 22519631, + 22542180, + 22542454, + 22549295, + 22891117, + 22892652, + 22894820, + 22896429, + 22909684, + 22918201, + 22922372, + 22922387, + 23376192, + 23597768, + 23599922, + 23742850, + 23742901, + 23758976, + 23835321, + 24278660, + 24282069, + 24284389, + 24284630, + 24300040, + 24354704, + 24354956, + 24423644, + 27776437, + 27777288, + 27811977, + 27814472, + 27818764, + 27818820, + 27819242, + 27820484, + 27820484, + 27820948, + 27826616, + 27845353, + 27849323, + 27861518, + 27863306, + 27872229, + 27914564, + 27915080, + 27967434, + 27977237, + 28004581, + 28009332, + 28020149, + 28020776, + 28021817, + 28025444, + 28029336, + 28030700, + 28046343, + 28067071, + 28069640, + 28177862, + 28200100, + 28200229, + 28208880, + 28208992, + 28216898, + 28310766, + 28314154, + 28530323, + 28531543, + 28596620, + 28596851, + 28603467, + 28631954, + 28716956, + 28718041, + 28720919, + 28724848, + 28732020, + 28736555, + 28759844, + 28771572, + 28847620, + 28849691, + 28850718, + 28896480, + 28933145, + 28938370, + 28938563, + 28946704, + 28954738, + 29259544, + 29312961, + 29320951, + 29324584, + 29324665, + 29409600, + 29413227, + 29457725, + 29464939, + 29476926, + 29478559, + 29587979, + 29606223, + 29606588, + 29660060, + 29717565, + 29719748, + 29719748, + 29719748, + 29727012, + 29727012, + 29727208, + 29727370, + 29793814, + 30179438, + 30181348, + 30349303, + 30421519, + 30554914, + 30555806, + 30566388, + 31095244, + 31107836, + 32201933, + 32220037, + 32220454, + 32225093, + 32238533, + 32722748, + 32730454, + 32785193, + 32785193, + 32785237, + 32803000, + 32818540, + 33485219, + 34129953, + 34195830, + 34200604, + 34203017, + 34203728, + 34204590, + 34443077, + 34471773, + 34474246, + 34478687, + 34483570, + 34483660, + 34487186, + 34647893, + 34648484, + 34648888, + 34649108, + 34655166, + 34655166, + 34655597, + 34655742, + 34657017, + 34657017, + 34660142, + 34674729, + 34675404, + 34681916, + 34687113, + 34687124, + 34687522, + 34687526, + 34687526, + 34687560, + 34692855, + 34693987, + 34706496, + 34724681, + 34724681, + 34724681, + 34725301, + 34725301, + 34725301, + 34732343, + 34732343, + 34732343, + 34732618, + 34732618, + 34734017, + 34734026, + 34734026, + 34734032, + 34734042, + 34734734, + 34734845, + 34734971, + 34736692, + 34741786, + 34744455, + 34748511, + 34749284, + 34749636, + 34769284, + 34785120, + 34809156, + 34810309, + 34810422, + 34837316, + 34845993, + 34848366, + 34848617, + 34854279, + 34858153, + 34858615, + 34860414, + 34861945, + 34863606, + 34864491, + 34865066, + 34868317, + 34884377, + 34891864, + 34891864, + 34891864, + 34891864, + 34891915, + 34895265, + 34898091, + 34924237, + 34924237, + 34955076, + 34956469, + 34957516, + 34963332, + 34964145, + 34987812, + 35015575, + 35017542, + 35017706, + 35017781, + 35018500, + 35018704, + 35029765, + 35042789, + 35052332, + 35053358, + 35056850, + 35056994, + 35064480, + 35070421, + 35072290, + 35072290, + 35119659, + 35120388, + 35124488, + 35127090, + 35165348, + 35167428, + 35167428, + 35169275, + 35172467, + 35179300, + 35179322, + 35179322, + 35179323, + 35179323, + 35179434, + 35224996, + 35286045, + 35290581, + 35297832, + 35301292, + 35307725, + 35317810, + 35321366, + 35322256, + 35322750, + 35322750, + 35322788, + 35331524, + 35331532, + 35331584, + 35333949, + 35337976, + 35339591, + 35341214, + 35345448, + 35350592, + 35350722, + 35350722, + 35350722, + 35351145, + 35351145, + 35351145, + 35353736, + 35353736, + 35354076, + 35358117, + 35358117, + 35372589, + 35383310, + 35387565, + 35535187, + 35832601, + 35833162, + 36484637, + 36484930, + 36485252, + 36710849, + 37162656, + 37194311, + 37194767, + 37196838, + 37198798, + 37198798, + 37208972, + 37208972, + 37230099, + 37230099, + 37230249, + 37230273, + 37230273, + 37240760, + 37240760, + 37240760, + 37253841, + 37253841, + 37729203, + 37745625, + 37745816, + 37745825, + 37745961, + 37745992, + 37746193, + 37746506, + 37746524, + 37746615, + 37746946, + 37747076, + 37747096, + 37747486, + 37747528, + 37747852, + 37747897, + 37748188, + 37748277, + 37748568, + 37748680, + 37748911, + 37748990, + 37952140, + 37952492, + 38163412, + 38175817, + 38175817, + 38176513, + 38179659, + 38183086, + 38183655, + 38202570, + 38203396, + 38204668, + 38332683, + 38332774, + 39533668, + 39534534, + 39534603, + 39534603, + 39534638, + 39535174, + 39536747, + 39537266, + 39537316, + 39608308, + 39609060, + 39626066, + 39654084, + 39720745, + 39786709, + 39786890, + 39786955, + 39787021, + 39787021, + 39787021, + 40615581, + 40618941, + 40654601, + 40679468, + 40682829, + 40682852, + 40684102, + 40685261, + 40693048, + 40697892, + 40699435, + 41674199, + 41810469, + 41811569, + 41812585, + 41980374, + 42024420, + 42025027, + 42026084, + 42026482, + 42047033, + 42050904, + 42050953, + 42056320, + 42056378, + 42061944, + 42067089, + 42069783, + 42087277, + 42087332, + 42087507, + 42094884, + 42095150, + 42099539, + 42099539, + 42099539, + 42100497, + 42101253, + 42101392, + 42101396, + 42101438, + 42101438, + 42101440, + 42101465, + 42101487, + 42101487, + 42101556, + 42132868, + 42133056, + 42134479, + 42135118, + 42166966, + 42181883, + 42230324, + 42234936, + 42236300, + 42280560, + 42296401, + 42296401, + 42386994, + 42386994, + 42386994, + 42397564, + 42402403, + 42405700, + 42405829, + 42414592, + 42422999, + 42422999, + 42423000, + 42423039, + 42491716, + 42491716, + 42494236, + 42501580, + 42501580, + 42505668, + 42505668, + 42506472, + 42506472, + 42510092, + 42511276, + 42511276, + 42517806, + 42517806, + 42519503, + 42519503, + 42521082, + 42521082, + 42521083, + 42521083, + 42521193, + 42521193, + 42521193, + 42521193, + 42521193, + 42521194, + 42521194, + 42521194, + 42521194, + 42659826, + 42660492, + 42660492, + 42660492, + 42665221, + 42665221, + 42665221, + 42665459, + 42665582, + 42666820, + 42666820, + 42684233, + 42700836, + 42700836, + 42700996, + 42702991, + 42704298, + 42704298, + 42714365, + 42714365, + 42718948, + 42718948, + 42718948, + 42718948, + 42718948, + 42720201, + 42720201, + 42720201, + 42720201, + 42720602, + 42721412, + 42726930, + 42726930, + 42726930, + 42727290, + 42727290, + 42727503, + 42727503, + 42727503, + 42727756, + 42729303, + 42729303, + 42736979, + 42736979, + 42738490, + 42738490, + 43020680, + 43042069, + 43043381, + 43065260, + 43066000, + 43066027, + 43066166, + 43358765, + 43359518, + 43363164, + 43363678, + 43364872, + 43554430, + 43555155, + 43556388, + 43557643, + 43904189, + 43905757, + 43906372, + 43906372, + 43906372, + 43913131, + 43913636, + 43913636, + 43980438, + 44547396, + 44651876, + 44652810, + 44654255, + 44654675, + 44654745, + 44655112, + 45223822, + 45223822, + 45255452, + 45255452, + 45256341, + 45262357, + 45266078, + 45267462, + 45376405, + 45385604, + 45386261, + 45386355, + 45405622, + 45410824, + 45410869, + 45650020, + 45670277, + 45679863, + 46356632, + 46358788, + 46405677, + 46406040, + 46413879, + 46414436, + 46414478, + 46416198, + 46416970, + 46420652, + 46424041, + 46471003, + 46471532, + 46794080, + 46864829, + 46905272, + 46924718, + 46933769, + 46933897, + 47563221, + 47590355, + 49948804, + 49950108, + 49953290, + 49953290, + 49964050, + 49964765, + 49969566, + 49969765, + 49972985, + 49973690, + 49974993, + 49975684, + 49975791, + 49995261, + 49995882, + 49996614, + 49996644, + 49997515, + 49998692, + 50000275, + 50000501, + 50000746, + 50003161, + 50004100, + 50005874, + 50005940, + 50014505, + 50018156, + 50020068, + 50023881, + 50024519, + 50024900, + 50025738, + 50025934, + 50050534, + 50050780, + 50052338, + 50053239, + 50054426, + 50058775, + 50061220, + 50061831, + 50062421, + 50062852, + 50062902, + 50063447, + 50558032, + 50560922, + 50565143, + 50567640, + 50608029, + 50610830, + 50611536, + 50620420, + 50893343, + 50912742, + 50914362, + 50933588, + 50939424, + 52242105, + 52297065, + 52297065, + 52297761, + 52300907, + 52304334, + 52304903, + 52305527, + 52305796, + 52316559, + 52330009, + 52331428, + 52332262, + 52335311, + 52337789, + 52343394, + 52347465, + 52347837, + 52556171, + 52558852, + 52564356, + 52953356, + 53034806, + 53065930, + 53188652, + 53198506, + 54993179, + 55791912, + 58987448, + 58999065, + 59001722, + 65360613, + 65360613, + 65367730, + 65374489, + 65384660, + 65394645, + 65394756, + 65418436, + 65438157, + 65438554, + 65447788, + 65448103, + 65448167, + 65458387, + 65462152, + 65464318, + 66138155, + 66139448, + 66140612, + 66141458, + 66386249, + 66386649, + 66392425, + 66393041, + 66395719, + 66396755, + 66397852, + 66623183, + 66623183, + 66623183, + 66625920, + 66629988, + 66629988, + 66629988, + 66630137, + 66653348, + 66653661, + 66653764, + 66653780, + 66654390, + 66659280, + 66662212, + 66681577, + 66683410, + 66935293, + 66970519, + 66971416, + 67046252, + 67054724, + 67081036, + 67084996, + 67090401, + 67095428, + 67096092, + 67096540, + 67097124, + 67100164, + 67100946, + 70362198, + 70362290, + 70362564, + 70365678, + 70366180, + 70368947, + 70389263, + 70393277, + 70813614, + 73075540, + 73075931, + 73076569, + 948086823, + 1638317866, + 1638317866, + 1638317866, + 1638317866, + 1638317866, + 1671872298, + 1671872298, + 1671872298, + 1671872298, + 1671872298, +] +`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct AddressOrLine 2`] = ` +Array [ + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -1484822518, + -264547936, + -264547936, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 20, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 23, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 29, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 33, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 34, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 37, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 39, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 47, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 48, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 49, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 52, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 58, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 60, + 60, + 60, + 60, + 60, + 60, + 60, + 60, + 60, + 60, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 62, + 63, + 63, + 63, + 63, + 63, + 63, + 63, + 63, + 63, + 63, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 64, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 66, + 66, + 66, + 66, + 66, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 68, + 69, + 69, + 69, + 69, + 69, + 69, + 69, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 70, + 71, + 71, + 71, + 71, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 72, + 73, + 73, + 73, + 73, + 73, + 73, + 73, + 73, + 73, + 73, + 74, + 74, + 74, + 74, + 74, + 74, + 74, + 74, + 74, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 75, + 76, + 76, + 76, + 76, + 76, + 76, + 76, + 76, + 76, + 76, + 76, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 77, + 78, + 78, + 78, + 78, + 78, + 78, + 78, + 78, + 78, + 78, + 79, + 79, + 79, + 79, + 79, + 79, + 80, + 80, + 80, + 80, + 80, + 80, + 80, + 80, + 80, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 81, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 83, + 83, + 83, + 83, + 83, + 83, + 83, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 84, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 85, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 86, + 87, + 87, + 87, + 87, + 87, + 87, + 87, + 87, + 87, + 87, + 87, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 88, + 89, + 89, + 89, + 89, + 89, + 89, + 89, + 89, + 89, + 89, + 90, + 90, + 90, + 90, + 90, + 90, + 91, + 91, + 91, + 91, + 91, + 91, + 91, + 92, + 92, + 92, + 92, + 92, + 92, + 92, + 93, + 93, + 93, + 93, + 93, + 93, + 93, + 93, + 93, + 94, + 94, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 95, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 96, + 97, + 97, + 97, + 97, + 97, + 97, + 97, + 97, + 98, + 98, + 98, + 98, + 98, + 98, + 98, + 98, + 98, + 99, + 99, + 99, + 99, + 100, + 100, + 101, + 101, + 101, + 101, + 101, + 101, + 101, + 101, + 101, + 102, + 102, + 102, + 102, + 102, + 102, + 102, + 102, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 103, + 104, + 104, + 104, + 104, + 104, + 104, + 104, + 104, + 104, + 104, + 104, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 105, + 106, + 106, + 106, + 106, + 106, + 106, + 107, + 107, + 107, + 107, + 107, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 108, + 109, + 109, + 109, + 109, + 110, + 110, + 110, + 110, + 110, + 110, + 111, + 111, + 111, + 111, + 111, + 111, + 111, + 111, + 111, + 111, + 112, + 112, + 112, + 112, + 112, + 112, + 112, + 112, + 113, + 113, + 113, + 113, + 113, + 113, + 114, + 114, + 114, + 114, + 115, + 115, + 115, + 115, + 115, + 115, + 115, + 116, + 116, + 116, + 116, + 116, + 116, + 116, + 116, + 117, + 117, + 117, + 117, + 117, + 117, + 117, + 117, + 117, + 118, + 118, + 118, + 118, + 118, + 118, + 118, + 118, + 118, + 118, + 119, + 119, + 119, + 119, + 120, + 120, + 120, + 121, + 122, + 122, + 122, + 122, + 122, + 123, + 123, + 123, + 123, + 123, + 123, + 123, + 124, + 124, + 124, + 124, + 124, + 124, + 124, + 125, + 125, + 126, + 126, + 127, + 127, + 127, + 127, + 128, + 128, + 129, + 130, + 130, + 130, + 130, + 130, + 130, + 130, + 131, + 131, + 131, + 131, + 131, + 131, + 131, + 132, + 132, + 132, + 132, + 132, + 132, + 132, + 132, + 132, + 132, + 132, + 133, + 133, + 133, + 133, + 134, + 134, + 134, + 134, + 134, + 134, + 134, + 134, + 134, + 134, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 135, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 136, + 137, + 137, + 137, + 137, + 137, + 137, + 138, + 138, + 138, + 138, + 138, + 138, + 138, + 138, + 138, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 139, + 140, + 140, + 140, + 140, + 141, + 141, + 141, + 141, + 141, + 141, + 141, + 141, + 141, + 142, + 142, + 142, + 142, + 142, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 143, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 144, + 145, + 145, + 145, + 146, + 146, + 146, + 146, + 146, + 146, + 146, + 147, + 148, + 148, + 148, + 149, + 149, + 149, + 150, + 150, + 150, + 150, + 150, + 150, + 150, + 150, + 151, + 151, + 151, + 151, + 151, + 151, + 151, + 151, + 152, + 152, + 152, + 152, + 152, + 152, + 152, + 152, + 152, + 154, + 154, + 154, + 154, + 154, + 155, + 155, + 155, + 156, + 156, + 157, + 158, + 158, + 158, + 158, + 158, + 158, + 158, + 159, + 159, + 159, + 159, + 159, + 159, + 159, + 159, + 159, + 159, + 160, + 160, + 160, + 160, + 161, + 161, + 161, + 161, + 161, + 161, + 161, + 161, + 161, + 161, + 161, + 162, + 162, + 163, + 163, + 163, + 164, + 164, + 164, + 164, + 165, + 165, + 165, + 166, + 166, + 166, + 167, + 167, + 168, + 168, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 169, + 170, + 170, + 170, + 170, + 170, + 171, + 172, + 172, + 172, + 172, + 172, + 172, + 172, + 173, + 173, + 173, + 173, + 173, + 173, + 174, + 174, + 174, + 174, + 174, + 175, + 175, + 175, + 175, + 176, + 176, + 176, + 176, + 176, + 176, + 178, + 178, + 179, + 179, + 179, + 179, + 179, + 179, + 179, + 179, + 180, + 181, + 181, + 181, + 181, + 181, + 181, + 181, + 182, + 182, + 182, + 182, + 182, + 183, + 183, + 183, + 183, + 183, + 183, + 184, + 184, + 184, + 184, + 184, + 184, + 185, + 186, + 186, + 187, + 187, + 187, + 188, + 188, + 188, + 188, + 188, + 188, + 188, + 189, + 189, + 189, + 189, + 189, + 190, + 190, + 191, + 192, + 192, + 192, + 192, + 192, + 194, + 194, + 194, + 195, + 195, + 195, + 196, + 196, + 196, + 196, + 197, + 198, + 198, + 198, + 198, + 199, + 199, + 199, + 199, + 199, + 199, + 199, + 199, + 199, + 200, + 200, + 200, + 200, + 201, + 201, + 201, + 201, + 201, + 201, + 202, + 202, + 202, + 202, + 202, + 202, + 202, + 202, + 202, + 202, + 203, + 203, + 203, + 203, + 203, + 205, + 205, + 205, + 205, + 207, + 207, + 207, + 208, + 209, + 210, + 210, + 211, + 211, + 212, + 212, + 214, + 214, + 214, + 214, + 214, + 215, + 215, + 215, + 215, + 215, + 215, + 215, + 215, + 216, + 216, + 216, + 216, + 216, + 216, + 216, + 217, + 217, + 217, + 217, + 217, + 219, + 219, + 219, + 220, + 221, + 221, + 221, + 221, + 221, + 221, + 221, + 222, + 222, + 223, + 223, + 223, + 224, + 224, + 225, + 225, + 225, + 225, + 225, + 225, + 225, + 226, + 227, + 229, + 229, + 230, + 230, + 230, + 230, + 231, + 232, + 232, + 232, + 233, + 234, + 235, + 235, + 235, + 236, + 236, + 236, + 237, + 238, + 238, + 238, + 239, + 239, + 239, + 239, + 239, + 240, + 240, + 241, + 241, + 242, + 244, + 244, + 245, + 247, + 250, + 250, + 250, + 250, + 250, + 250, + 255, + 255, + 255, + 255, + 257, + 258, + 258, + 258, + 258, + 258, + 258, + 259, + 260, + 260, + 261, + 261, + 261, + 261, + 261, + 261, + 262, + 263, + 263, + 263, + 265, + 265, + 265, + 265, + 265, + 265, + 265, + 266, + 266, + 266, + 266, + 266, + 266, + 267, + 267, + 267, + 267, + 268, + 268, + 271, + 273, + 273, + 273, + 273, + 273, + 274, + 275, + 275, + 275, + 275, + 275, + 275, + 275, + 275, + 275, + 277, + 277, + 277, + 277, + 277, + 277, + 277, + 277, + 278, + 279, + 279, + 279, + 279, + 279, + 279, + 279, + 279, + 282, + 283, + 284, + 284, + 285, + 285, + 286, + 287, + 288, + 288, + 288, + 289, + 289, + 291, + 292, + 292, + 294, + 294, + 295, + 296, + 297, + 298, + 298, + 300, + 300, + 300, + 300, + 301, + 302, + 302, + 302, + 302, + 302, + 302, + 302, + 302, + 302, + 302, + 303, + 304, + 304, + 305, + 306, + 307, + 308, + 308, + 308, + 309, + 312, + 312, + 312, + 312, + 312, + 313, + 314, + 314, + 314, + 315, + 315, + 316, + 317, + 319, + 319, + 319, + 319, + 319, + 321, + 321, + 321, + 321, + 322, + 323, + 323, + 323, + 323, + 323, + 323, + 323, + 323, + 323, + 323, + 323, + 323, + 325, + 325, + 325, + 325, + 326, + 328, + 328, + 328, + 328, + 328, + 328, + 328, + 329, + 329, + 329, + 329, + 329, + 330, + 330, + 330, + 330, + 331, + 332, + 333, + 333, + 336, + 337, + 339, + 339, + 339, + 339, + 339, + 343, + 344, + 346, + 347, + 349, + 350, + 351, + 352, + 352, + 352, + 352, + 354, + 354, + 357, + 359, + 359, + 360, + 360, + 361, + 361, + 362, + 364, + 365, + 365, + 365, + 365, + 365, + 365, + 365, + 365, + 365, + 371, + 371, + 372, + 373, + 373, + 375, + 375, + 375, + 377, + 377, + 377, + 377, + 378, + 378, + 378, + 378, + 379, + 380, + 383, + 383, + 385, + 385, + 390, + 393, + 393, + 393, + 393, + 393, + 393, + 393, + 393, + 393, + 393, + 397, + 397, + 397, + 397, + 397, + 397, + 397, + 397, + 397, + 404, + 405, + 405, + 409, + 413, + 413, + 416, + 417, + 417, + 417, + 417, + 418, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 421, + 424, + 425, + 427, + 428, + 428, + 431, + 431, + 431, + 431, + 431, + 431, + 433, + 434, + 435, + 435, + 437, + 437, + 437, + 437, + 437, + 437, + 437, + 437, + 437, + 438, + 438, + 439, + 439, + 442, + 442, + 443, + 454, + 454, + 454, + 454, + 456, + 467, + 471, + 472, + 475, + 476, + 476, + 476, + 478, + 478, + 478, + 486, + 486, + 487, + 489, + 493, + 497, + 499, + 502, + 504, + 504, + 506, + 506, + 506, + 506, + 506, + 513, + 513, + 513, + 514, + 514, + 514, + 514, + 514, + 521, + 521, + 521, + 521, + 521, + 523, + 523, + 523, + 525, + 538, + 547, + 554, + 554, + 555, + 555, + 562, + 564, + 569, + 572, + 572, + 572, + 577, + 578, + 578, + 580, + 580, + 580, + 584, + 588, + 593, + 593, + 593, + 593, + 602, + 602, + 610, + 623, + 623, + 630, + 671, + 671, + 672, + 704, + 717, + 721, + 721, + 721, + 721, + 728, + 732, + 733, + 735, + 744, + 744, + 744, + 744, + 744, + 744, + 744, + 744, + 744, + 767, + 772, + 772, + 772, + 805, + 850, + 865, + 896, + 938, + 943, + 978, + 980, + 983, + 1002, + 1002, + 1009, + 1016, + 1131, + 1396, + 1770, + 2208, + 2394, + 2394, + 2433, + 2473, + 4247, + 4268, + 8487, + 9372, + 9372, + 9372, + 9372, + 9793, + 10775, + 11438, + 11438, + 11438, + 11824, + 11876, + 14470, + 14802, + 15223, + 15223, + 15318, + 16403, + 16403, + 16403, + 16403, + 16403, + 16403, + 16403, + 16730, + 16837, + 16837, + 16837, + 16837, + 16837, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 16902, + 17059, + 17059, + 17190, + 17206, + 17206, + 17206, + 17206, + 17206, + 17206, + 17206, + 17955, + 17955, + 17955, + 17955, + 18034, + 18034, + 18034, + 18034, + 18034, + 18035, + 18061, + 18061, + 18061, + 18061, + 18062, + 18062, + 23395, + 24396, + 28810, + 28810, + 29188, + 29188, + 29242, + 29242, + 29242, + 29620, + 29766, + 30426, + 30545, + 31390, + 32420, + 32420, + 33097, + 33795, + 34312, + 34312, + 37552, + 37735, + 37735, + 38696, + 42240, + 42401, + 42401, + 43550, + 43713, + 44746, + 44814, + 45743, + 46314, + 48609, + 48609, + 48610, + 48636, + 48875, + 49619, + 50395, + 50395, + 52392, + 52467, + 52467, + 52467, + 52486, + 53672, + 53850, + 53926, + 54244, + 54531, + 54579, + 55875, + 55956, + 57100, + 57462, + 57988, + 59111, + 59132, + 59133, + 59133, + 59594, + 60796, + 61180, + 61181, + 63440, + 65932, + 65932, + 71750, + 71751, + 71907, + 73302, + 73303, + 73303, + 73941, + 73941, + 73942, + 76192, + 76772, + 78796, + 78939, + 80596, + 81007, + 83204, + 93722, + 95616, + 95993, + 96223, + 96731, + 96743, + 97158, + 98728, + 110415, + 114601, + 138374, + 138374, + 138374, + 148258, + 156820, + 157327, + 169577, + 175835, + 175835, + 178040, + 179874, + 186154, + 187067, + 204309, + 210610, + 213781, + 213902, + 214005, + 217550, + 217963, + 217963, + 217963, + 217963, + 217963, + 217963, + 217963, + 217963, + 217963, + 217963, + 221483, + 236193, + 237575, + 241221, + 244861, + 246004, + 251160, + 251346, + 256811, + 257077, + 258585, + 260824, + 262599, + 263825, + 266237, + 267564, + 267862, + 271785, + 273015, + 273325, + 273498, + 280340, + 285640, + 285645, + 285988, + 286408, + 287102, + 291187, + 292952, + 293404, + 304448, + 329469, + 337207, + 337267, + 353620, + 354860, + 363253, + 366244, + 379094, + 379138, + 379138, + 386959, + 387625, + 388024, + 391324, + 398773, + 400130, + 402219, + 420708, + 420834, + 420968, + 420989, + 429600, + 436214, + 436466, + 437506, + 437506, + 437506, + 437507, + 446292, + 482397, + 482675, + 482738, + 496471, + 499489, + 499898, + 500343, + 504147, + 528259, + 530252, + 540766, + 552577, + 552868, + 553264, + 554255, + 562833, + 563495, + 563780, + 564465, + 568871, + 569598, + 578570, + 579139, + 579890, + 581164, + 594189, + 598557, + 603095, + 606532, + 622102, + 636884, + 655509, + 655599, + 656490, + 696249, + 700505, + 700505, + 713123, + 713123, + 713123, + 713123, + 713123, + 713123, + 713123, + 713123, + 713123, + 719944, + 719944, + 727127, + 727526, + 730007, + 740100, + 747815, + 747815, + 747815, + 747815, + 747965, + 748819, + 748819, + 748819, + 748932, + 757739, + 757739, + 757935, + 763374, + 763923, + 778581, + 778581, + 779285, + 779311, + 779311, + 789600, + 790144, + 791173, + 804714, + 804749, + 805338, + 831785, + 833432, + 833593, + 833593, + 833593, + 833593, + 833593, + 833593, + 833593, + 833593, + 833593, + 837594, + 837594, + 837594, + 837594, + 837594, + 837594, + 837594, + 837594, + 837594, + 838088, + 838088, + 838088, + 838088, + 838088, + 838088, + 838088, + 838088, + 838088, + 840007, + 840007, + 840007, + 840007, + 840007, + 840007, + 840007, + 840007, + 840007, + 841796, + 842480, + 846574, + 846574, + 846574, + 846574, + 846574, + 846574, + 846574, + 846574, + 846574, + 848887, + 848887, + 848887, + 848887, + 848887, + 848887, + 848887, + 848887, + 848887, + 851844, + 855620, + 861499, + 861499, + 861499, + 861499, + 861499, + 861499, + 861499, + 861499, + 861499, + 861499, + 862547, + 862547, + 862547, + 862547, + 862547, + 862547, + 862547, + 862547, + 862547, + 862547, + 894427, + 906301, + 906301, + 906301, + 906301, + 906301, + 906301, + 906301, + 910059, + 910244, + 934231, + 934964, + 935301, + 939487, + 970587, + 970658, + 972570, + 979307, + 979652, + 987192, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 988937, + 995818, + 998461, + 999081, + 1002886, + 1002887, + 1008716, + 1008716, + 1008716, + 1008716, + 1008716, + 1008716, + 1013930, + 1018938, + 1019141, + 1019141, + 1019141, + 1019141, + 1019141, + 1019141, + 1019141, + 1019141, + 1020133, + 1020133, + 1020133, + 1020237, + 1020237, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1021538, + 1023386, + 1035714, + 1037183, + 1042652, + 1043212, + 1092670, + 1098599, + 1098599, + 1100968, + 1101643, + 1101643, + 1101643, + 1101643, + 1101643, + 1101643, + 1103033, + 1103033, + 1103033, + 1103767, + 1111844, + 1113307, + 1113354, + 1126320, + 1144919, + 1154034, + 1154034, + 1154034, + 1163548, + 1165041, + 1175858, + 1175906, + 1184878, + 1185310, + 1200669, + 1210458, + 1237353, + 1240176, + 1240292, + 1241899, + 1242154, + 1243711, + 1244339, + 1259150, + 1293880, + 1315427, + 1315464, + 1315464, + 1315464, + 1315464, + 1315464, + 1315464, + 1317964, + 1317964, + 1317964, + 1317964, + 1317964, + 1317964, + 1317964, + 1317964, + 1317964, + 1317964, + 1319583, + 1319583, + 1319583, + 1319583, + 1319583, + 1319583, + 1319583, + 1319818, + 1329886, + 1329886, + 1329886, + 1329886, + 1329886, + 1329886, + 1329886, + 1329886, + 1329886, + 1329886, + 1330367, + 1330367, + 1330367, + 1330367, + 1330367, + 1330367, + 1330367, + 1330367, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1332254, + 1333281, + 1334493, + 1334871, + 1335098, + 1477557, + 1477745, + 1488480, + 1499612, + 1502620, + 1512015, + 1516744, + 1521199, + 1521233, + 1521297, + 1521301, + 1521301, + 1521301, + 1521301, + 1521305, + 1521420, + 1521779, + 1522125, + 1522809, + 1523515, + 1523515, + 1523515, + 1523515, + 1523515, + 1523515, + 1523515, + 1579537, + 1580637, + 1582087, + 1587430, + 1587946, + 1588244, + 1588244, + 1592368, + 1592971, + 1607943, + 1611998, + 1620561, + 1631397, + 1638406, + 1638481, + 1640755, + 1664641, + 1665430, + 1667845, + 1778104, + 1778104, + 1778104, + 1778104, + 1778104, + 1778104, + 1778104, + 1778104, + 1778104, + 1782740, + 1789090, + 1793992, + 1833355, + 1943500, + 1945033, + 1946452, + 1985962, + 2000177, + 2008200, + 2013434, + 2013446, + 2013449, + 2088580, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2101746, + 2109160, + 2110440, + 2138147, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2146462, + 2150016, + 2150850, + 2150922, + 2159654, + 2159654, + 2159654, + 2159654, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2159768, + 2160803, + 2162106, + 2167877, + 2170200, + 2177271, + 2179151, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2185762, + 2192765, + 2192765, + 2200850, + 2202680, + 2204366, + 2205276, + 2207134, + 2210616, + 2210700, + 2211963, + 2219178, + 2220304, + 2220904, + 2224387, + 2224431, + 2232004, + 2232004, + 2232004, + 2232004, + 2232004, + 2232004, + 2232004, + 2232004, + 2232004, + 2232004, + 2233540, + 2233540, + 2233540, + 2233540, + 2233540, + 2233540, + 2233540, + 2233540, + 2233540, + 2233654, + 2246979, + 2257770, + 2454281, + 2483444, + 2512969, + 2513408, + 2603980, + 2606201, + 2606809, + 2606809, + 2678964, + 2753147, + 2951986, + 2956187, + 2956682, + 2958638, + 2959577, + 2959577, + 2959577, + 2959904, + 2959999, + 2959999, + 2963125, + 2963617, + 2964052, + 2964248, + 2967536, + 2973820, + 2974308, + 2976330, + 2976330, + 2976344, + 2976509, + 2976509, + 2976509, + 2976797, + 2976918, + 2976918, + 2976918, + 2977001, + 2977001, + 2977001, + 2977001, + 2977085, + 2977206, + 2977289, + 2977289, + 2979567, + 2979801, + 2986766, + 2996160, + 2996437, + 2996437, + 2996437, + 2996437, + 2996460, + 2997753, + 2997996, + 2997996, + 2997996, + 2997996, + 2997996, + 2998069, + 2998069, + 2998069, + 2998069, + 2998069, + 2998359, + 2998429, + 3000619, + 3000619, + 3000845, + 3000845, + 3023775, + 3023911, + 3028647, + 3028647, + 3028647, + 3029037, + 3031208, + 3031208, + 3031208, + 3031208, + 3032427, + 3032427, + 3032763, + 3032763, + 3033661, + 3033661, + 3033700, + 3033700, + 3033700, + 3033700, + 3041546, + 3042232, + 3046282, + 3047706, + 3051429, + 3051429, + 3051429, + 3051429, + 3051429, + 3051429, + 3051826, + 3051845, + 3051845, + 3051845, + 3051845, + 3051845, + 3051845, + 3052538, + 3052538, + 3052538, + 3055099, + 3055650, + 3098207, + 3098207, + 3098233, + 3105984, + 3106360, + 3107266, + 3114291, + 3114324, + 3116744, + 3116744, + 3118982, + 3118982, + 3121929, + 3149645, + 3151978, + 3152513, + 3154436, + 3218439, + 3218588, + 3218726, + 3299977, + 3329677, + 3330089, + 3330691, + 3332368, + 3332368, + 3335052, + 3335052, + 3335794, + 3336240, + 3336707, + 3336959, + 3337005, + 3654640, + 3658497, + 3660016, + 3756581, + 3763917, + 3830220, + 3832179, + 4515684, + 4517064, + 4517914, + 4793136, + 4838776, + 4839067, + 4839132, + 4843812, + 4851855, + 4852820, + 4853095, + 4853361, + 5022383, + 5106928, + 5107019, + 5139801, + 5141606, + 5143493, + 5147487, + 5151962, + 5160673, + 5167942, + 5169772, + 5170681, + 5171606, + 5371282, + 5528179, + 5528179, + 5534503, + 5534505, + 5534508, + 5534665, + 5534665, + 5548443, + 5549891, + 5549912, + 5567201, + 5636419, + 5644405, + 5787363, + 5805912, + 5845852, + 5851143, + 5873587, + 5880987, + 5881112, + 5887780, + 5887892, + 5887923, + 5887943, + 5888055, + 5888913, + 5940570, + 6137806, + 6272987, + 6281154, + 6281466, + 6282134, + 6332429, + 6334580, + 6526309, + 6567005, + 6684934, + 6684951, + 6906272, + 6906453, + 6921152, + 6921155, + 6921158, + 6921166, + 6921198, + 6921206, + 6921213, + 6921216, + 6921230, + 6921288, + 6921305, + 6921324, + 6921373, + 6921383, + 6921392, + 6921408, + 6921462, + 6921485, + 6921492, + 6921495, + 6921530, + 6921570, + 6921570, + 6921604, + 6921625, + 6921743, + 6922055, + 6922058, + 6922058, + 6922064, + 6922070, + 6922070, + 6930951, + 6930980, + 6930984, + 6931127, + 6931164, + 6931164, + 6931354, + 6931602, + 6931602, + 6931602, + 6932168, + 6932300, + 6932602, + 6933559, + 6950649, + 7013252, + 7014241, + 7015351, + 7023742, + 7023775, + 7026031, + 7056568, + 7064650, + 7064735, + 7064735, + 7064758, + 7064758, + 7064782, + 7065056, + 7065129, + 7065244, + 7065271, + 7065283, + 7065294, + 7065303, + 7065308, + 7065319, + 7069789, + 7070298, + 7070309, + 7070341, + 7071383, + 7075561, + 7077122, + 7077712, + 7077716, + 7077719, + 7077727, + 7077731, + 7077735, + 7077768, + 7077775, + 7077815, + 7079806, + 7082156, + 7085558, + 7085627, + 7085651, + 7085717, + 7085727, + 7085727, + 7085727, + 7085753, + 7085753, + 7085753, + 7085803, + 7087017, + 7087017, + 7087039, + 7088102, + 7091164, + 7096520, + 7124083, + 7151307, + 7217295, + 7217321, + 7293943, + 7314770, + 7318794, + 7331827, + 7347318, + 7353914, + 7392798, + 7392805, + 7392812, + 7392826, + 7392838, + 7392878, + 7392924, + 7393312, + 7393313, + 7393315, + 7393315, + 7393318, + 7393322, + 7393338, + 7393350, + 7393361, + 7393379, + 7393397, + 7393408, + 7393416, + 7399628, + 7401990, + 7402593, + 7402719, + 7402785, + 7405153, + 7405186, + 7405194, + 7405232, + 7405235, + 7405270, + 7405281, + 7405282, + 7405287, + 7405306, + 7413075, + 7413106, + 7413145, + 7413146, + 7413164, + 7413190, + 7413206, + 7413265, + 7413268, + 7413320, + 7413490, + 7413511, + 7413520, + 7415474, + 7417574, + 7421066, + 7421304, + 7421494, + 7421584, + 7421959, + 7440555, + 7440786, + 7448636, + 7455895, + 7457104, + 7457676, + 7478650, + 7478888, + 7479169, + 7487788, + 7518219, + 7529222, + 7613166, + 7620099, + 7620117, + 7639309, + 7639309, + 7639411, + 7644748, + 7647626, + 7843104, + 7919702, + 7952802, + 7952802, + 7961776, + 7961895, + 7961990, + 7962032, + 7962174, + 7962174, + 7962314, + 7962348, + 7970504, + 7987791, + 7988016, + 7990544, + 7990560, + 8096902, + 8110482, + 8176642, + 8297354, + 8304043, + 8356914, + 8358642, + 8366743, + 8368180, + 8370060, + 8416173, + 8424040, + 8475965, + 8580564, + 8581938, + 8586698, + 8619378, + 8728880, + 8804340, + 8811227, + 8857932, + 8923428, + 8929617, + 9027371, + 9029552, + 9067857, + 9067949, + 9071451, + 9071618, + 9072716, + 9081064, + 9081223, + 9096442, + 9228908, + 9231725, + 9231879, + 9232456, + 9239023, + 9251551, + 9259924, + 9311428, + 9312873, + 9340255, + 9418489, + 9467194, + 9467194, + 9505000, + 9505399, + 9505815, + 9577599, + 9642323, + 9642372, + 9642372, + 9642575, + 9642767, + 9642782, + 9666850, + 9668202, + 9749934, + 9751194, + 9751451, + 9755402, + 9756250, + 9757676, + 9777453, + 9790071, + 9811783, + 9814075, + 9872051, + 9878126, + 9881368, + 9881368, + 9881368, + 9881493, + 9881497, + 9882118, + 9898207, + 9937888, + 9940883, + 10012964, + 10019512, + 10848237, + 10857509, + 10858360, + 10858360, + 10946344, + 10946921, + 10946921, + 10946921, + 10946921, + 10946921, + 10946921, + 10946921, + 10946921, + 10946921, + 10948105, + 10948114, + 10948114, + 10948114, + 10948114, + 10948114, + 10948114, + 10948114, + 10948114, + 10948114, + 10949045, + 10963634, + 10964227, + 10964258, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10967732, + 10968675, + 10968675, + 12008756, + 12011992, + 12012633, + 12012856, + 12024964, + 12028224, + 12052555, + 12052593, + 12055957, + 12056007, + 12331019, + 12361958, + 12404806, + 12508259, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583051, + 12583444, + 12586761, + 12685779, + 12697712, + 12718923, + 12921218, + 12929697, + 12941846, + 12945575, + 12966103, + 12980830, + 13007469, + 13008217, + 13009311, + 13009355, + 13039467, + 13043108, + 13043969, + 13081738, + 13150008, + 13162154, + 13186583, + 13231286, + 13235147, + 13275411, + 13338187, + 13360432, + 13701883, + 13702074, + 13702147, + 14226476, + 14230275, + 14230631, + 14231280, + 14231280, + 14548947, + 14549453, + 14680291, + 14927389, + 14942079, + 14958767, + 14966767, + 15099252, + 15147027, + 15147027, + 15160177, + 15315401, + 15330929, + 15381627, + 15381906, + 15382210, + 15385321, + 15404428, + 15472098, + 15528331, + 15628491, + 15647070, + 15699471, + 15847060, + 15856194, + 15871095, + 15879114, + 15880794, + 15881718, + 16031100, + 16035221, + 16035757, + 18111716, + 18151363, + 18151363, + 18151666, + 18151666, + 18239385, + 18239385, + 18240896, + 18240907, + 18241347, + 18241357, + 18241371, + 18241410, + 18241410, + 18241588, + 18241588, + 18242641, + 18242672, + 18242672, + 18247558, + 18269975, + 18290869, + 18290869, + 18291067, + 18291067, + 18317764, + 18329091, + 18329091, + 18329131, + 18329492, + 18333492, + 18333492, + 18336753, + 18336753, + 18337586, + 18338106, + 18338709, + 18340445, + 18352876, + 18353009, + 18355278, + 18355278, + 18406891, + 18407820, + 18407918, + 18425737, + 18427920, + 18428825, + 18433859, + 18453947, + 18481777, + 18482012, + 18489417, + 18494642, + 18494770, + 18494963, + 18503104, + 18508776, + 18509708, + 18509888, + 18511138, + 18511138, + 18511139, + 18511139, + 18612875, + 18612875, + 18622768, + 18622768, + 18674663, + 18717448, + 18736869, + 18736869, + 18769106, + 19406459, + 19415333, + 19624576, + 19706905, + 22502297, + 22507556, + 22519631, + 22542180, + 22542454, + 22549295, + 22891117, + 22892652, + 22894820, + 22896429, + 22909684, + 22918201, + 22922372, + 22922387, + 23376192, + 23597768, + 23599922, + 23742850, + 23742901, + 23758976, + 23835321, + 24278660, + 24282069, + 24284389, + 24284630, + 24300040, + 24354704, + 24354956, + 24423644, + 27776437, + 27777288, + 27811977, + 27814472, + 27818764, + 27818820, + 27819242, + 27820484, + 27820484, + 27820948, + 27826616, + 27845353, + 27849323, + 27861518, + 27863306, + 27872229, + 27914564, + 27915080, + 27967434, + 27977237, + 28004581, + 28009332, + 28020149, + 28020776, + 28021817, + 28025444, + 28029336, + 28030700, + 28046343, + 28067071, + 28069640, + 28177862, + 28200100, + 28200229, + 28208880, + 28208992, + 28216898, + 28310766, + 28314154, + 28530323, + 28531543, + 28596620, + 28596851, + 28603467, + 28631954, + 28716956, + 28718041, + 28720919, + 28724848, + 28732020, + 28736555, + 28759844, + 28771572, + 28847620, + 28849691, + 28850718, + 28896480, + 28933145, + 28938370, + 28938563, + 28946704, + 28954738, + 29259544, + 29312961, + 29320951, + 29324584, + 29324665, + 29409600, + 29413227, + 29457725, + 29464939, + 29476926, + 29478559, + 29587979, + 29606223, + 29606588, + 29660060, + 29717565, + 29719748, + 29719748, + 29719748, + 29727012, + 29727012, + 29727208, + 29727370, + 29793814, + 30179438, + 30181348, + 30349303, + 30421519, + 30554914, + 30555806, + 30566388, + 31095244, + 31107836, + 32201933, + 32220037, + 32220454, + 32225093, + 32238533, + 32722748, + 32730454, + 32785193, + 32785193, + 32785237, + 32803000, + 32818540, + 33485219, + 34129953, + 34195830, + 34200604, + 34203017, + 34203728, + 34204590, + 34443077, + 34471773, + 34474246, + 34478687, + 34483570, + 34483660, + 34487186, + 34647893, + 34648484, + 34648888, + 34649108, + 34655166, + 34655166, + 34655597, + 34655742, + 34657017, + 34657017, + 34660142, + 34674729, + 34675404, + 34681916, + 34687113, + 34687124, + 34687522, + 34687526, + 34687526, + 34687560, + 34692855, + 34693987, + 34706496, + 34724681, + 34724681, + 34724681, + 34725301, + 34725301, + 34725301, + 34732343, + 34732343, + 34732343, + 34732618, + 34732618, + 34734017, + 34734026, + 34734026, + 34734032, + 34734042, + 34734734, + 34734845, + 34734971, + 34736692, + 34741786, + 34744455, + 34748511, + 34749284, + 34749636, + 34769284, + 34785120, + 34809156, + 34810309, + 34810422, + 34837316, + 34845993, + 34848366, + 34848617, + 34854279, + 34858153, + 34858615, + 34860414, + 34861945, + 34863606, + 34864491, + 34865066, + 34868317, + 34884377, + 34891864, + 34891864, + 34891864, + 34891864, + 34891915, + 34895265, + 34898091, + 34924237, + 34924237, + 34955076, + 34956469, + 34957516, + 34963332, + 34964145, + 34987812, + 35015575, + 35017542, + 35017706, + 35017781, + 35018500, + 35018704, + 35029765, + 35042789, + 35052332, + 35053358, + 35056850, + 35056994, + 35064480, + 35070421, + 35072290, + 35072290, + 35119659, + 35120388, + 35124488, + 35127090, + 35165348, + 35167428, + 35167428, + 35169275, + 35172467, + 35179300, + 35179322, + 35179322, + 35179323, + 35179323, + 35179434, + 35224996, + 35286045, + 35290581, + 35297832, + 35301292, + 35307725, + 35317810, + 35321366, + 35322256, + 35322750, + 35322750, + 35322788, + 35331524, + 35331532, + 35331584, + 35333949, + 35337976, + 35339591, + 35341214, + 35345448, + 35350592, + 35350722, + 35350722, + 35350722, + 35351145, + 35351145, + 35351145, + 35353736, + 35353736, + 35354076, + 35358117, + 35358117, + 35372589, + 35383310, + 35387565, + 35535187, + 35832601, + 35833162, + 36484637, + 36484930, + 36485252, + 36710849, + 37162656, + 37194311, + 37194767, + 37196838, + 37198798, + 37198798, + 37208972, + 37208972, + 37230099, + 37230099, + 37230249, + 37230273, + 37230273, + 37240760, + 37240760, + 37240760, + 37253841, + 37253841, + 37729203, + 37745625, + 37745816, + 37745825, + 37745961, + 37745992, + 37746193, + 37746506, + 37746524, + 37746615, + 37746946, + 37747076, + 37747096, + 37747486, + 37747528, + 37747852, + 37747897, + 37748188, + 37748277, + 37748568, + 37748680, + 37748911, + 37748990, + 37952140, + 37952492, + 38163412, + 38175817, + 38175817, + 38176513, + 38179659, + 38183086, + 38183655, + 38202570, + 38203396, + 38204668, + 38332683, + 38332774, + 39533668, + 39534534, + 39534603, + 39534603, + 39534638, + 39535174, + 39536747, + 39537266, + 39537316, + 39608308, + 39609060, + 39626066, + 39654084, + 39720745, + 39786709, + 39786890, + 39786955, + 39787021, + 39787021, + 39787021, + 40615581, + 40618941, + 40654601, + 40679468, + 40682829, + 40682852, + 40684102, + 40685261, + 40693048, + 40697892, + 40699435, + 41674199, + 41810469, + 41811569, + 41812585, + 41980374, + 42024420, + 42025027, + 42026084, + 42026482, + 42047033, + 42050904, + 42050953, + 42056320, + 42056378, + 42061944, + 42067089, + 42069783, + 42087277, + 42087332, + 42087507, + 42094884, + 42095150, + 42099539, + 42099539, + 42099539, + 42100497, + 42101253, + 42101392, + 42101396, + 42101438, + 42101438, + 42101440, + 42101465, + 42101487, + 42101487, + 42101556, + 42132868, + 42133056, + 42134479, + 42135118, + 42166966, + 42181883, + 42230324, + 42234936, + 42236300, + 42280560, + 42296401, + 42296401, + 42386994, + 42386994, + 42386994, + 42397564, + 42402403, + 42405700, + 42405829, + 42414592, + 42422999, + 42422999, + 42423000, + 42423039, + 42491716, + 42491716, + 42494236, + 42501580, + 42501580, + 42505668, + 42505668, + 42506472, + 42506472, + 42510092, + 42511276, + 42511276, + 42517806, + 42517806, + 42519503, + 42519503, + 42521082, + 42521082, + 42521083, + 42521083, + 42521193, + 42521193, + 42521193, + 42521193, + 42521193, + 42521194, + 42521194, + 42521194, + 42521194, + 42659826, + 42660492, + 42660492, + 42660492, + 42665221, + 42665221, + 42665221, + 42665459, + 42665582, + 42666820, + 42666820, + 42684233, + 42700836, + 42700836, + 42700996, + 42702991, + 42704298, + 42704298, + 42714365, + 42714365, + 42718948, + 42718948, + 42718948, + 42718948, + 42718948, + 42720201, + 42720201, + 42720201, + 42720201, + 42720602, + 42721412, + 42726930, + 42726930, + 42726930, + 42727290, + 42727290, + 42727503, + 42727503, + 42727503, + 42727756, + 42729303, + 42729303, + 42736979, + 42736979, + 42738490, + 42738490, + 43020680, + 43042069, + 43043381, + 43065260, + 43066000, + 43066027, + 43066166, + 43358765, + 43359518, + 43363164, + 43363678, + 43364872, + 43554430, + 43555155, + 43556388, + 43557643, + 43904189, + 43905757, + 43906372, + 43906372, + 43906372, + 43913131, + 43913636, + 43913636, + 43980438, + 44547396, + 44651876, + 44652810, + 44654255, + 44654675, + 44654745, + 44655112, + 45223822, + 45223822, + 45255452, + 45255452, + 45256341, + 45262357, + 45266078, + 45267462, + 45376405, + 45385604, + 45386261, + 45386355, + 45405622, + 45410824, + 45410869, + 45650020, + 45670277, + 45679863, + 46356632, + 46358788, + 46405677, + 46406040, + 46413879, + 46414436, + 46414478, + 46416198, + 46416970, + 46420652, + 46424041, + 46471003, + 46471532, + 46794080, + 46864829, + 46905272, + 46924718, + 46933769, + 46933897, + 47563221, + 47590355, + 49948804, + 49950108, + 49953290, + 49953290, + 49964050, + 49964765, + 49969566, + 49969765, + 49972985, + 49973690, + 49974993, + 49975684, + 49975791, + 49995261, + 49995882, + 49996614, + 49996644, + 49997515, + 49998692, + 50000275, + 50000501, + 50000746, + 50003161, + 50004100, + 50005874, + 50005940, + 50014505, + 50018156, + 50020068, + 50023881, + 50024519, + 50024900, + 50025738, + 50025934, + 50050534, + 50050780, + 50052338, + 50053239, + 50054426, + 50058775, + 50061220, + 50061831, + 50062421, + 50062852, + 50062902, + 50063447, + 50558032, + 50560922, + 50565143, + 50567640, + 50608029, + 50610830, + 50611536, + 50620420, + 50893343, + 50912742, + 50914362, + 50933588, + 50939424, + 52242105, + 52297065, + 52297065, + 52297761, + 52300907, + 52304334, + 52304903, + 52305527, + 52305796, + 52316559, + 52330009, + 52331428, + 52332262, + 52335311, + 52337789, + 52343394, + 52347465, + 52347837, + 52556171, + 52558852, + 52564356, + 52953356, + 53034806, + 53065930, + 53188652, + 53198506, + 54993179, + 55791912, + 58987448, + 58999065, + 59001722, + 65360613, + 65360613, + 65367730, + 65374489, + 65384660, + 65394645, + 65394756, + 65418436, + 65438157, + 65438554, + 65447788, + 65448103, + 65448167, + 65458387, + 65462152, + 65464318, + 66138155, + 66139448, + 66140612, + 66141458, + 66386249, + 66386649, + 66392425, + 66393041, + 66395719, + 66396755, + 66397852, + 66623183, + 66623183, + 66623183, + 66625920, + 66629988, + 66629988, + 66629988, + 66630137, + 66653348, + 66653661, + 66653764, + 66653780, + 66654390, + 66659280, + 66662212, + 66681577, + 66683410, + 66935293, + 66970519, + 66971416, + 67046252, + 67054724, + 67081036, + 67084996, + 67090401, + 67095428, + 67096092, + 67096540, + 67097124, + 67100164, + 67100946, + 70362198, + 70362290, + 70362564, + 70365678, + 70366180, + 70368947, + 70389263, + 70393277, + 70813614, + 73075540, + 73075931, + 73076569, + 948086823, + 1638317866, + 1638317866, + 1638317866, + 1638317866, + 1638317866, + 1671872298, + 1671872298, + 1671872298, + 1671872298, + 1671872298, +] +`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct CountExclusive 1`] = ` +Array [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 4, + 4, + 5, + 7, +] +`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct CountInclusive 1`] = ` +Array [ + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 16, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 19, + 19, + 19, + 20, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 23, + 23, + 23, + 25, + 27, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 29, + 31, + 31, + 31, + 31, + 31, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 36, + 38, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 42, + 43, + 43, + 43, + 44, + 44, + 45, + 45, + 45, + 45, + 45, + 48, + 49, + 51, + 55, + 65, + 65, + 65, + 65, + 65, + 66, + 66, + 68, + 69, + 74, + 74, + 74, + 74, + 74, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 82, + 83, + 83, + 97, + 98, + 98, + 100, + 100, + 100, + 100, + 100, + 101, + 182, + 286, + 286, + 286, + 286, + 726, +] +`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct ExeFilename 1`] = ` +Array [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "-IlGUwajicqSE5-hS5VYig", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "1NmuNXqOaWlDl-ljfvsBcw", + "1NmuNXqOaWlDl-ljfvsBcw", + "1NmuNXqOaWlDl-ljfvsBcw", + "1gXEZRnAPQTspGOB36fnyQ", + "1gXEZRnAPQTspGOB36fnyQ", + "1gXEZRnAPQTspGOB36fnyQ", + "3aS07d9PG4lc4UzuBbVWzQ", + "634wiWh6F21tPpXr0Zz3mg", + "634wiWh6F21tPpXr0Zz3mg", + "634wiWh6F21tPpXr0Zz3mg", + "634wiWh6F21tPpXr0Zz3mg", + "634wiWh6F21tPpXr0Zz3mg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "8NlMClggx8jaziUTJXlmWA", + "8NlMClggx8jaziUTJXlmWA", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "D4Dr8MgtAQr1KQWI51wjAw", + "IG5EpvTeHopVC9IqkA_kSg", + "IG5EpvTeHopVC9IqkA_kSg", + "IG5EpvTeHopVC9IqkA_kSg", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "Jsaw4aRwbsrSC4mkOwhwQQ", + "Jsaw4aRwbsrSC4mkOwhwQQ", + "Jsaw4aRwbsrSC4mkOwhwQQ", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "MP5HRDaDTxfL7AK376UJ7g", + "NH411-U9ZJbhx9KntPIOtA", + "NH411-U9ZJbhx9KntPIOtA", + "QRLEHBaKoaTG7nEoPkKciQ", + "R_3RsDYccfUxjNYYah3JZg", + "R_3RsDYccfUxjNYYah3JZg", + "R_3RsDYccfUxjNYYah3JZg", + "S5FLyxJzArwdyTGdAwNyNA", + "S5FLyxJzArwdyTGdAwNyNA", + "S5FLyxJzArwdyTGdAwNyNA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SVqTovndX3vgWwiNPDrUZA", + "SVqTovndX3vgWwiNPDrUZA", + "SVqTovndX3vgWwiNPDrUZA", + "SVqTovndX3vgWwiNPDrUZA", + "SVqTovndX3vgWwiNPDrUZA", + "SVqTovndX3vgWwiNPDrUZA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "Sxgb26oKQwlt07if9woPTQ", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "am-Z0RfUVY0oYK5VXRDk9w", + "am-Z0RfUVY0oYK5VXRDk9w", + "am-Z0RfUVY0oYK5VXRDk9w", + "am-Z0RfUVY0oYK5VXRDk9w", + "am-Z0RfUVY0oYK5VXRDk9w", + "am-Z0RfUVY0oYK5VXRDk9w", + "am-Z0RfUVY0oYK5VXRDk9w", + "bzrt0cDU6UPpwGohqCueZw", + "bzrt0cDU6UPpwGohqCueZw", + "bzrt0cDU6UPpwGohqCueZw", + "bzrt0cDU6UPpwGohqCueZw", + "bzrt0cDU6UPpwGohqCueZw", + "bzrt0cDU6UPpwGohqCueZw", + "bzrt0cDU6UPpwGohqCueZw", + "c6lwtZBG2BzNKGtSyzLrTA", + "c6lwtZBG2BzNKGtSyzLrTA", + "c6lwtZBG2BzNKGtSyzLrTA", + "c6lwtZBG2BzNKGtSyzLrTA", + "c6lwtZBG2BzNKGtSyzLrTA", + "c6lwtZBG2BzNKGtSyzLrTA", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "dtiM4BIZ8uj8Pj0m6lGJqw", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "hpS1QtdrBQjGg-LCbfqeSA", + "hrCIM-i5cm0sSd-oVTZrsg", + "klPbOjidNHRsFecU34u2tQ", + "klPbOjidNHRsFecU34u2tQ", + "klPbOjidNHRsFecU34u2tQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "pp6LgRqCGeGjs7cnnwItcA", + "pp6LgRqCGeGjs7cnnwItcA", + "pp6LgRqCGeGjs7cnnwItcA", + "pp6LgRqCGeGjs7cnnwItcA", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qjB_amR59Lv13Nhle_Nwbw", + "qjB_amR59Lv13Nhle_Nwbw", + "qjB_amR59Lv13Nhle_Nwbw", + "qjB_amR59Lv13Nhle_Nwbw", + "qjB_amR59Lv13Nhle_Nwbw", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sjkXvSc06kCzT5ulprfEPA", + "sjkXvSc06kCzT5ulprfEPA", + "t-dIxcHyLp_aTZW6ZkmJVA", + "t-dIxcHyLp_aTZW6ZkmJVA", + "t-dIxcHyLp_aTZW6ZkmJVA", + "t-dIxcHyLp_aTZW6ZkmJVA", + "t-dIxcHyLp_aTZW6ZkmJVA", + "t-dIxcHyLp_aTZW6ZkmJVA", + "tQgAmBJBgPLrkikSPRsmtg", + "tQgAmBJBgPLrkikSPRsmtg", + "tQgAmBJBgPLrkikSPRsmtg", + "tQgAmBJBgPLrkikSPRsmtg", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vQ7EacG6CR4rzcFaNFEsTQ", + "wEIfl0pGBuepuUcTwdKc2g", + "wEIfl0pGBuepuUcTwdKc2g", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", +] +`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct FileID 1`] = ` +Array [ + "", + "--8zas13uqm7i12C7ls-FA", + "--kE6heoLJJu74wTldTO0w", + "-0VK45z04oVPTcwdwQBREQ", + "-0cNkxFEeFuByUGaYLMGZg", + "-0cNkxFEeFuByUGaYLMGZg", + "-0cNkxFEeFuByUGaYLMGZg", + "-0cNkxFEeFuByUGaYLMGZg", + "-3Q9G0-gEaLYyR0fofTdFg", + "-3warYDsZ5Hs6M1Va9RuVA", + "-3warYDsZ5Hs6M1Va9RuVA", + "-3warYDsZ5Hs6M1Va9RuVA", + "-3warYDsZ5Hs6M1Va9RuVA", + "-3warYDsZ5Hs6M1Va9RuVA", + "-3warYDsZ5Hs6M1Va9RuVA", + "-3warYDsZ5Hs6M1Va9RuVA", + "-3warYDsZ5Hs6M1Va9RuVA", + "-3warYDsZ5Hs6M1Va9RuVA", + "-3warYDsZ5Hs6M1Va9RuVA", + "-5JZZ12JbTNmT71XiBz0Jw", + "-7czc4vxjqwqbvj74H3wHQ", + "-98KX7lEQngZcvy7BcWxHg", + "-98KX7lEQngZcvy7BcWxHg", + "-AfB72--alphLE8FS3h2PA", + "-AsoQW73iFI5fH1Iwzki_w", + "-B12Kn1z2WbdinXULBUwvg", + "-EMbO6MQ9CzSH9RcHPYaqg", + "-EMbO6MQ9CzSH9RcHPYaqg", + "-FHEsFFINIcXjJ1PouUSuQ", + "-FHEsFFINIcXjJ1PouUSuQ", + "-FHEsFFINIcXjJ1PouUSuQ", + "-FHEsFFINIcXjJ1PouUSuQ", + "-FHEsFFINIcXjJ1PouUSuQ", + "-H6asz_OpoepB2Mu5EngrQ", + "-HqwSlv3LwloERZ2us_u9w", + "-I0qeKDe1hMr58wzZHuN2w", + "-I0qeKDe1hMr58wzZHuN2w", + "-I0qeKDe1hMr58wzZHuN2w", + "-I0qeKDe1hMr58wzZHuN2w", + "-ILcQEUVPt-h8tsq1UB2sA", + "-IkF2lJObgb8Mzx62fBshA", + "-IlGUwajicqSE5-hS5VYig", + "-JAdXc6ZieAkMq7GDln2Ew", + "-JAdXc6ZieAkMq7GDln2Ew", + "-JAdXc6ZieAkMq7GDln2Ew", + "-JAdXc6ZieAkMq7GDln2Ew", + "-KaQJqCpvd-fD6hn3-xL4A", + "-KaQJqCpvd-fD6hn3-xL4A", + "-KaQJqCpvd-fD6hn3-xL4A", + "-OuZ_zFnMJsV4zFgjL7inA", + "-OuZ_zFnMJsV4zFgjL7inA", + "-SO86A4OCGXvMKT2cG5TXQ", + "-SQAt_091j0wh4lQu2r18Q", + "-SQAt_091j0wh4lQu2r18Q", + "-Y56DW_ZsCkojgmcTnRH0A", + "-ZNzcIfRK431xz3NkzIyzQ", + "-ZNzcIfRK431xz3NkzIyzQ", + "-ZNzcIfRK431xz3NkzIyzQ", + "-ZNzcIfRK431xz3NkzIyzQ", + "-byYMBbn5TlOaT7FgjNIZA", + "-eEBnU2U2wlCBhns2-KJAg", + "-eEBnU2U2wlCBhns2-KJAg", + "-gcPk4qV9SANWTcSsCqOPw", + "-h8BLQ0xRkdP3SzRSIk95Q", + "-k1yErCu-jNwISnaM-KD7Q", + "-lloRzsC44KWcskRXy_mhA", + "-lloRzsC44KWcskRXy_mhA", + "-lloRzsC44KWcskRXy_mhA", + "-lloRzsC44KWcskRXy_mhA", + "-lloRzsC44KWcskRXy_mhA", + "-lloRzsC44KWcskRXy_mhA", + "-lloRzsC44KWcskRXy_mhA", + "-lloRzsC44KWcskRXy_mhA", + "-lloRzsC44KWcskRXy_mhA", + "-lloRzsC44KWcskRXy_mhA", + "-r9PdXX1mVfrKM4cjx98VQ", + "-t3aueBkBX5wcaE0A1f5Fg", + "-tSbHlR91dVpvAdxUOkCnA", + "-uK72e9VYGmyoGlh8BBvZw", + "-vgX2c4oYcqGSJf1kx8Z-w", + "00K83mDEaMrraYI9F5octQ", + "02PTq9Jtr4iKE59hgBxlag", + "02oNZHwNJOC-C3u6YrvXyg", + "06iTdeRQmLekYAN7ySRKRg", + "0Cdt9wyWxnG2B-xGXMO6ow", + "0Cdt9wyWxnG2B-xGXMO6ow", + "0Cdt9wyWxnG2B-xGXMO6ow", + "0Dua3wYmaGvRx9kIXglBGQ", + "0EB0YrT2CeDq7NY6IvT5Qg", + "0GDZ0kstVgc85_nBZh3f0Q", + "0GDZ0kstVgc85_nBZh3f0Q", + "0GDZ0kstVgc85_nBZh3f0Q", + "0GDZ0kstVgc85_nBZh3f0Q", + "0GDZ0kstVgc85_nBZh3f0Q", + "0GDZ0kstVgc85_nBZh3f0Q", + "0GDZ0kstVgc85_nBZh3f0Q", + "0GDZ0kstVgc85_nBZh3f0Q", + "0GDZ0kstVgc85_nBZh3f0Q", + "0LGXmFocz46kL18OXWxszw", + "0LGXmFocz46kL18OXWxszw", + "0LGXmFocz46kL18OXWxszw", + "0LJX42Jj4CiJKiisMPmkcg", + "0LJX42Jj4CiJKiisMPmkcg", + "0LJX42Jj4CiJKiisMPmkcg", + "0LJX42Jj4CiJKiisMPmkcg", + "0LJX42Jj4CiJKiisMPmkcg", + "0LJX42Jj4CiJKiisMPmkcg", + "0LJX42Jj4CiJKiisMPmkcg", + "0LJX42Jj4CiJKiisMPmkcg", + "0LJX42Jj4CiJKiisMPmkcg", + "0LJX42Jj4CiJKiisMPmkcg", + "0LJX42Jj4CiJKiisMPmkcg", + "0MuXFawPpICiJNh5yZEjjw", + "0MuXFawPpICiJNh5yZEjjw", + "0Og38EZo1V7Xaj5UHUpXuQ", + "0Oho76USTH9SXUdk9kUJ_w", + "0Oho76USTH9SXUdk9kUJ_w", + "0Oho76USTH9SXUdk9kUJ_w", + "0Oho76USTH9SXUdk9kUJ_w", + "0TgQLjmaHK0PQsXTtJXJrw", + "0WDpZKYg7XmmyjyStqqvFg", + "0WDpZKYg7XmmyjyStqqvFg", + "0WHxvAaEQdTf5grBjCUuBg", + "0WnhDfOMt_1bQ20KgdrvJQ", + "0X3gxtaF6COySAPka5kw8A", + "0YpHRX6ZLVSO127u68ifLA", + "0YpHRX6ZLVSO127u68ifLA", + "0YsnzQnMKXvFIy6EpgfjkA", + "0_jShB-DuV77HIBPKqBRjg", + "0cZiHBBWN2vYtEyCZ5X5wg", + "0iy-2zuRXr8juBdHdwp6AQ", + "0kt5JIbzOAHNLQd_C5h8UQ", + "0ncC8n8oxaSJwvZ2J0pqxA", + "0pToqZPZHCBrMZWKCqLkCA", + "0pik9Obvsa6G-wUWjB6N5g", + "0pik9Obvsa6G-wUWjB6N5g", + "0qdPtfCOXWtTMQkqPpfTpA", + "0qjoqZl267F0DC5OJqPG4g", + "0qjoqZl267F0DC5OJqPG4g", + "0qjoqZl267F0DC5OJqPG4g", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0qzGEnWLNN8utw6c2ruTzg", + "0rSQWFkbcF9wInv7zP4Fzw", + "0rSQWFkbcF9wInv7zP4Fzw", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0s7uxPt4C0neZhw5beiboQ", + "0t-QeP6xIPsm3Ef5XNYDgg", + "0t-QeP6xIPsm3Ef5XNYDgg", + "0tdJXiZYZuozRWVHE58tBQ", + "0tdJXiZYZuozRWVHE58tBQ", + "0tdJXiZYZuozRWVHE58tBQ", + "0tdJXiZYZuozRWVHE58tBQ", + "0uQfhygt3iA5h-6EqK0MPA", + "0uQfhygt3iA5h-6EqK0MPA", + "0ug8ORsNM_mSugcqd6QagA", + "0uuDrUEvVDAWeF27cWyEbQ", + "0vYUuo04uCIksGcEjg9Q4A", + "0vYUuo04uCIksGcEjg9Q4A", + "0wmhgaiG_YNdcri9cpVpog", + "0wmhgaiG_YNdcri9cpVpog", + "0wmhgaiG_YNdcri9cpVpog", + "0wmhgaiG_YNdcri9cpVpog", + "0x-UDWXgJuxMxIbzLxwzzQ", + "106B1iulZ9qNy42ENkYaCw", + "12jTto5lOC7673Q37QQLjQ", + "12nEeMsH00wjguIyHXaYDw", + "12nEeMsH00wjguIyHXaYDw", + "12wqq0CZSFWXQTyNvq7law", + "12wqq0CZSFWXQTyNvq7law", + "12wqq0CZSFWXQTyNvq7law", + "12wqq0CZSFWXQTyNvq7law", + "12wqq0CZSFWXQTyNvq7law", + "12wqq0CZSFWXQTyNvq7law", + "12wqq0CZSFWXQTyNvq7law", + "12wqq0CZSFWXQTyNvq7law", + "12wqq0CZSFWXQTyNvq7law", + "12wqq0CZSFWXQTyNvq7law", + "12wqq0CZSFWXQTyNvq7law", + "12z5Qk-yNY8ANzQ4c0lSfg", + "12z5Qk-yNY8ANzQ4c0lSfg", + "12z5Qk-yNY8ANzQ4c0lSfg", + "12z5Qk-yNY8ANzQ4c0lSfg", + "12z5Qk-yNY8ANzQ4c0lSfg", + "14InJKOec9dSO7frpfbiGw", + "19awHBrw5zOybAJS9IMTOA", + "1AP5rFDRA4TZi1tau3luUg", + "1Asoi1frxnZcfhbGbZjMng", + "1Asoi1frxnZcfhbGbZjMng", + "1Az5XiB-HqkM2KIxBs7pHg", + "1Az5XiB-HqkM2KIxBs7pHg", + "1DL81KYIuhFbaCdMgmm0Vg", + "1Dm6rh0RP-6XJIANW7bI0w", + "1Dm6rh0RP-6XJIANW7bI0w", + "1Dm6rh0RP-6XJIANW7bI0w", + "1FOdQtgbdsA6Mn7Hl3d12g", + "1FgXGZ6KVmGpjNWPRcmkqQ", + "1Gk-3aGO58JRRoKz-_WOKA", + "1Gk-3aGO58JRRoKz-_WOKA", + "1I0e-5G_SZK_x73jT5XLYQ", + "1IhEUKf_PDCxfheapNhvQQ", + "1J9LI_MaZGkxD3-lIBfwqg", + "1J9LI_MaZGkxD3-lIBfwqg", + "1JFJglGYKFEdOODML6v_9Q", + "1JFJglGYKFEdOODML6v_9Q", + "1JFJglGYKFEdOODML6v_9Q", + "1JFJglGYKFEdOODML6v_9Q", + "1JFJglGYKFEdOODML6v_9Q", + "1JFJglGYKFEdOODML6v_9Q", + "1JFJglGYKFEdOODML6v_9Q", + "1JFJglGYKFEdOODML6v_9Q", + "1Mo8VSr4ExgPLu63Uteaag", + "1NmuNXqOaWlDl-ljfvsBcw", + "1NmuNXqOaWlDl-ljfvsBcw", + "1NmuNXqOaWlDl-ljfvsBcw", + "1OssVXIbkn5BQi4tGKSa8A", + "1PhVGIcoQAgleHhVcpf27g", + "1S9eFAopKcZX-VnW9ChdWA", + "1S9eFAopKcZX-VnW9ChdWA", + "1WwaSXc6MUqSl16CLws0Xw", + "1XJVZLI-4RrFbJxSYrx6Rg", + "1XRKT-mIPqTEPPQJ1OQKUw", + "1YwmAWjsK6oD1Qs8m4ZuaQ", + "1YwmAWjsK6oD1Qs8m4ZuaQ", + "1ZJRiJ5WMUk0-MCCsrc5NQ", + "1_TZoRpWT4eGJlelAJFang", + "1a0DWjTV9Buoivve6Hs38A", + "1ajhlpq_ffaY9SZwO_yFvw", + "1c7wfSzTBWNtKP8vA7BBsA", + "1dAR1DRu30HO0nOIbN0CKg", + "1eJRaBH6BEAs6vwpOcsNnA", + "1gXEZRnAPQTspGOB36fnyQ", + "1gXEZRnAPQTspGOB36fnyQ", + "1gXEZRnAPQTspGOB36fnyQ", + "1h7ZuibHxmv9wrbEMnyQaA", + "1h7ZuibHxmv9wrbEMnyQaA", + "1h7ZuibHxmv9wrbEMnyQaA", + "1h7ZuibHxmv9wrbEMnyQaA", + "1h7ZuibHxmv9wrbEMnyQaA", + "1h7ZuibHxmv9wrbEMnyQaA", + "1h7ZuibHxmv9wrbEMnyQaA", + "1h7ZuibHxmv9wrbEMnyQaA", + "1h7ZuibHxmv9wrbEMnyQaA", + "1iIrWruhhrdv7Wrz1lbNJw", + "1lHo9c9loCfa7AYjWRBG8w", + "1lHo9c9loCfa7AYjWRBG8w", + "1lHo9c9loCfa7AYjWRBG8w", + "1lHo9c9loCfa7AYjWRBG8w", + "1p5hhkT_QSk5Jb1bNkPqog", + "1pEcO9CYkxI799CldX3uow", + "1pEcO9CYkxI799CldX3uow", + "1rHoPMq-mpf_DwJrvHqYAw", + "1rHoPMq-mpf_DwJrvHqYAw", + "1sVcUE03VxGgQdwfB3Actw", + "1sqZEeUsG3W43_x5Rw_H0w", + "1t24RQWJoO3BXaJLZVT8fw", + "1uSylq76VHr8W99O31_Cbw", + "1vmWfRl7JvnIelrwmbOFDw", + "1vmWfRl7JvnIelrwmbOFDw", + "1vmWfRl7JvnIelrwmbOFDw", + "1xeqGUZm5RNvukFb2REJKQ", + "21OviUyRbmnxs6uitnTC3w", + "21z4Mx3dOykPYQ45FXN3Rg", + "24UJBfleeloBae8bP6cE0Q", + "25iHP2_EzWmqN7aoEEouTQ", + "26QmnZ2WZWEP0oQ5prgnug", + "28nS3D_gIss5Dax50sSZRw", + "296jA3bf79VTim-sy-Bl1A", + "2AKyo8gq7bsW8f5lUqQNsw", + "2AKyo8gq7bsW8f5lUqQNsw", + "2AKyo8gq7bsW8f5lUqQNsw", + "2CjidhF2o1l9AQQZ7O2_8w", + "2CjidhF2o1l9AQQZ7O2_8w", + "2CjidhF2o1l9AQQZ7O2_8w", + "2DhRBXrBsPziUW_wAGlaqQ", + "2DhRBXrBsPziUW_wAGlaqQ", + "2DhRBXrBsPziUW_wAGlaqQ", + "2DhRBXrBsPziUW_wAGlaqQ", + "2DhRBXrBsPziUW_wAGlaqQ", + "2DhRBXrBsPziUW_wAGlaqQ", + "2DhRBXrBsPziUW_wAGlaqQ", + "2DhRBXrBsPziUW_wAGlaqQ", + "2EMwQYuIpRLWtpWdRpA0Jw", + "2EMwQYuIpRLWtpWdRpA0Jw", + "2EMwQYuIpRLWtpWdRpA0Jw", + "2EMwQYuIpRLWtpWdRpA0Jw", + "2MOoayvGW4k0HotkdD0WWw", + "2MOoayvGW4k0HotkdD0WWw", + "2MOoayvGW4k0HotkdD0WWw", + "2MOoayvGW4k0HotkdD0WWw", + "2MiI3b_EzPrgd_k9fjnuew", + "2N7LlgD0lzw83YN_Bx-zZg", + "2N7LlgD0lzw83YN_Bx-zZg", + "2N7LlgD0lzw83YN_Bx-zZg", + "2N7LlgD0lzw83YN_Bx-zZg", + "2N7LlgD0lzw83YN_Bx-zZg", + "2N7LlgD0lzw83YN_Bx-zZg", + "2O-1ddGQ4yEdr0WJ1sM2yg", + "2O-1ddGQ4yEdr0WJ1sM2yg", + "2OqIxq9okDnhoWYrFU8L9g", + "2RFqiy_TIF9Ivmg849R6KQ", + "2RfKfVPwyqKh_r9U1oFgUw", + "2RfKfVPwyqKh_r9U1oFgUw", + "2Swt2qN1JJo2lNqpZIN9-w", + "2Swt2qN1JJo2lNqpZIN9-w", + "2Swt2qN1JJo2lNqpZIN9-w", + "2Swt2qN1JJo2lNqpZIN9-w", + "2Swt2qN1JJo2lNqpZIN9-w", + "2UxNT-C0z0jLu_9A1XqURA", + "2UxNT-C0z0jLu_9A1XqURA", + "2UxNT-C0z0jLu_9A1XqURA", + "2XDg5u84AThLncvQweEa6w", + "2XlsHONL_QzhduDW6kA7vQ", + "2XlsHONL_QzhduDW6kA7vQ", + "2bocF2PaQb-4x21c82XN2w", + "2c9TATIrCMgoDoZOxrWO6g", + "2cxgkaQz6jHA-zT7PPZDvw", + "2cxgkaQz6jHA-zT7PPZDvw", + "2cxgkaQz6jHA-zT7PPZDvw", + "2ea6Wt_FUSqyCQ-T65v7_w", + "2ea6Wt_FUSqyCQ-T65v7_w", + "2ea6Wt_FUSqyCQ-T65v7_w", + "2j0HCl13xKfqjTWLL-96Kg", + "2kN50je9O3LVK4VZVGtFfQ", + "2lqT74CaceoLHVL-Vgll-w", + "2nfk7kd46D_56_vyY72dCQ", + "2oeSW9BMt2zZqP7i-3UsNA", + "2p4Dyo36Ea--rGgiVt2H5Q", + "2qYZMbn2dbHGF73xhejdBw", + "2qo1eklRbvZeGY39-E27yw", + "2quOp8hc50m96mwW1dVSow", + "2s_Q7gaAVum2n4lgmkRNuA", + "2tLNICxYZuozQenxztpj2Q", + "2tLNICxYZuozQenxztpj2Q", + "2tLNICxYZuozQenxztpj2Q", + "2tLNICxYZuozQenxztpj2Q", + "2uEWBluAjlG6YATEmwlaSA", + "2vzhsTPfkVRKbOkBMFFkgg", + "2vzhsTPfkVRKbOkBMFFkgg", + "2wgGDGWUYKAius-1IxNgMQ", + "2wgGDGWUYKAius-1IxNgMQ", + "31FeSeHaXuz8M6vkrKE20g", + "353Bbxw0b5wHlGJY1WEVWA", + "365bkCPTYmyPAOblneeRAg", + "365bkCPTYmyPAOblneeRAg", + "36oRMyUvgSK3WoVHEmkD5A", + "36oRMyUvgSK3WoVHEmkD5A", + "36oRMyUvgSK3WoVHEmkD5A", + "3APbfJs5SvbH_F9r5lo_3w", + "3CFCfUF6w3KA_kWeQMHRjQ", + "3F2z0U59C1y3O1vSXqnJyg", + "3F2z0U59C1y3O1vSXqnJyg", + "3F2z0U59C1y3O1vSXqnJyg", + "3F2z0U59C1y3O1vSXqnJyg", + "3F2z0U59C1y3O1vSXqnJyg", + "3F2z0U59C1y3O1vSXqnJyg", + "3F2z0U59C1y3O1vSXqnJyg", + "3FmF0iegYInyRffZHSr8Aw", + "3FmF0iegYInyRffZHSr8Aw", + "3GraiHROJsQD8vNYdRBuYQ", + "3GraiHROJsQD8vNYdRBuYQ", + "3H61XYEjDc3ZSP2PdyOABg", + "3HYeSFaP4bm-Z2NSJub6sA", + "3Ht5x9T6A9s9JtoiYrgOOg", + "3IuREe07u899HoYIiTdQ_Q", + "3J4xYgNuxGhatL0AuGYJCQ", + "3J8Qg4KrH3ltQo_sj-EJzQ", + "3J9sxS-e4x4-VIIgWjujUA", + "3KtHAXnUn2qKToxsxyFz6w", + "3Lb_I9wEun0tAYBuTvskTQ", + "3LmbKZtkZ8rrPi1UIPTPcQ", + "3LmbKZtkZ8rrPi1UIPTPcQ", + "3LmbKZtkZ8rrPi1UIPTPcQ", + "3M56M_g_f1gYgGNi_mtl_g", + "3Nv0giz1Hh9caeS_k2O_-g", + "3PWYwmr8WKiucw6_bVd_pw", + "3QM5OJWdXJOtFw8erEL5Xw", + "3QWEH8eApmH_ruugOKv76A", + "3Qs3wqh29UjvUVx-N0KxAg", + "3R6peF1IdwfQqmb119dyMQ", + "3R6peF1IdwfQqmb119dyMQ", + "3R6peF1IdwfQqmb119dyMQ", + "3R6peF1IdwfQqmb119dyMQ", + "3RDHMoI7l4jd8AQMzNs38A", + "3RDHMoI7l4jd8AQMzNs38A", + "3RDHMoI7l4jd8AQMzNs38A", + "3SSuw7AKPJ9yFEVSwC_lbA", + "3SSuw7AKPJ9yFEVSwC_lbA", + "3SSuw7AKPJ9yFEVSwC_lbA", + "3UKCqvwKCyoIkRLAE_53mA", + "3WlbNt9bmyJw_k2Ygz1zOw", + "3X9PCd1tVPhzrMiwigfodg", + "3X9PCd1tVPhzrMiwigfodg", + "3X9PCd1tVPhzrMiwigfodg", + "3YIfAGaCMYqtVFhpvZ-uyA", + "3aS07d9PG4lc4UzuBbVWzQ", + "3b73aK2YxmWJY2Of38z3nw", + "3b73aK2YxmWJY2Of38z3nw", + "3b73aK2YxmWJY2Of38z3nw", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3dMdXm2BcuhRZiE6yMhDcA", + "3eFqxdiFdaTGeVIFXzFrRA", + "3fLdTF4ecUJhitKTdv8I9Q", + "3gDxzJnNA7N984KflEQ98g", + "3h3xcA1CjbBUsMTV4AM4_Q", + "3hPseLnAtdLoro6fxRXJ9Q", + "3ir-1yKStl3nukZF4xyXAQ", + "3kg82-0D3eZ1bo-oCBlTCg", + "3kqKIOk7SslvcfRGmqs1wA", + "3le9lVb1YZlOVDHLOf4baw", + "3r-tlbWKH7Bh4O96M6j3bg", + "3tUjisCVy6q_y-ey91GjKw", + "3wdhQLwtGKOtIUlA7MN19w", + "4-ysLAXaTmrllCFWD4d16A", + "40ES46dU7pwVTIhZzOkjPw", + "40ES46dU7pwVTIhZzOkjPw", + "40ES46dU7pwVTIhZzOkjPw", + "414vwxwFz0HV2Ku4dzYYow", + "41brnCY5Cm2BMq931HQnJg", + "42z5TUZVQMx41Jhs9inuSg", + "42z5TUZVQMx41Jhs9inuSg", + "45C-Q8d2gQJCMIvUacUWRQ", + "45C-Q8d2gQJCMIvUacUWRQ", + "45l-3EzV2pQer0tpzvWJuA", + "46OBP4AiIuvPByLPCVNeuQ", + "46OBP4AiIuvPByLPCVNeuQ", + "46OBP4AiIuvPByLPCVNeuQ", + "46OBP4AiIuvPByLPCVNeuQ", + "46OBP4AiIuvPByLPCVNeuQ", + "47Ynctdwhr8Q34WGwpCU8w", + "48NTOm9REY9geqrnhLmtIQ", + "48NTOm9REY9geqrnhLmtIQ", + "48xYDh2_7oYnD_Sk9iLrLw", + "4EfOVjZ8UDEWtY1KnqslYA", + "4ExmIEmG5cbeqkrcSlhsEA", + "4J4WxzKvOwTg2PxoPnS9CQ", + "4JQqkFvm0YZvatJnibQXiA", + "4JQqkFvm0YZvatJnibQXiA", + "4KFAFxj-eVsHHZBNgRjHOA", + "4LWodyiv9Hy4HicwczMhQw", + "4LaiotHNGYdIR8tBjAPtZw", + "4M0Ud4qlvTvF27Rhplk7mA", + "4M7YPHJs-s48WlQKqWc80Q", + "4M7YPHJs-s48WlQKqWc80Q", + "4MmFlXNlAaTTYzJu9ZvlFQ", + "4Nbh2qu5FSYDYvePocfslw", + "4Nbh2qu5FSYDYvePocfslw", + "4Nbh2qu5FSYDYvePocfslw", + "4RMjMvBCxMjR_OY2K7clCw", + "4RUgMlPWsuuY5K-fnQNJ_Q", + "4RUgMlPWsuuY5K-fnQNJ_Q", + "4SjPzL5sRJ4NoaPppbKRXQ", + "4SjPzL5sRJ4NoaPppbKRXQ", + "4SjPzL5sRJ4NoaPppbKRXQ", + "4SjPzL5sRJ4NoaPppbKRXQ", + "4SjPzL5sRJ4NoaPppbKRXQ", + "4U-xAnLrdtDr0a69h0nqYg", + "4UCPpue6CVok_lbZI08fLQ", + "4U_zL7awL15Zhtkek0gtnA", + "4U_zL7awL15Zhtkek0gtnA", + "4U_zL7awL15Zhtkek0gtnA", + "4X1D0bE8dXWnBHefwzL1Kg", + "4X1D0bE8dXWnBHefwzL1Kg", + "4XGVj6YT0gwaGWf1AwznhQ", + "4XGVj6YT0gwaGWf1AwznhQ", + "4XGVj6YT0gwaGWf1AwznhQ", + "4XXTSxpcblY4XfsTMB8ZgQ", + "4XXTSxpcblY4XfsTMB8ZgQ", + "4XXTSxpcblY4XfsTMB8ZgQ", + "4aWABwF73Np6FFZYc2m-kw", + "4bMiunlFzrtT5uG63xGsXw", + "4cQgXibr0xyrpChPCPWEWQ", + "4dIwNpyNQOyQPjDgfjNvLg", + "4h1JGMqLLOdAVu_3S11V0A", + "4h1JGMqLLOdAVu_3S11V0A", + "4h1JGMqLLOdAVu_3S11V0A", + "4h1JGMqLLOdAVu_3S11V0A", + "4hOS6AZiF-c1H0nqUa2YTw", + "4iSscwUfpHqomLpXfRLwpw", + "4iaBbZIIwXRBOYMSVscz2w", + "4io8TQpKnhHcoJs_H_nFpQ", + "4jXsfiwIwXRBOMYWIiCtqw", + "4ksqoSQaCDcXF2GHOzi7Fw", + "4m-0zgTNuwngv66j7dc5XA", + "4m-0zgTNuwngv66j7dc5XA", + "4m-0zgTNuwngv66j7dc5XA", + "4nGRUH2jSVM54KACyi-aFA", + "4nJBf6HbrPzbiZzxIGhYog", + "4oDbmTWkgq5vmj9DqDhsSg", + "4pD3shcvlMj_8ybo7T2TVA", + "4pD3shcvlMj_8ybo7T2TVA", + "4pD3shcvlMj_8ybo7T2TVA", + "4pD3shcvlMj_8ybo7T2TVA", + "4pQmnbdVKlEPbRd3rB3jwg", + "4pSviAR1XzzZ-pI5X9ouxw", + "4t7oCp0G3Jy3f6AIzJEnWg", + "4tQB4iVnNlUP_drXIryOCA", + "4uHET4oL_iJ_8bFS7Afulw", + "4vwWTuaA5W0Uq7WSODTSAQ", + "52XkZKHpOlq2TOi3L8YfPA", + "52XkZKHpOlq2TOi3L8YfPA", + "52XkZKHpOlq2TOi3L8YfPA", + "52XkZKHpOlq2TOi3L8YfPA", + "52XkZKHpOlq2TOi3L8YfPA", + "52XkZKHpOlq2TOi3L8YfPA", + "52XkZKHpOlq2TOi3L8YfPA", + "52XkZKHpOlq2TOi3L8YfPA", + "52XkZKHpOlq2TOi3L8YfPA", + "546Ofl7I0zrzRa1FOgUxIA", + "55c6KE1Gzv9jLZFRXLxqQg", + "56J_quP6E7ubMy0oFC4pVg", + "56J_quP6E7ubMy0oFC4pVg", + "56oWSGX1mVfrKIpqVg1NxQ", + "56oWSGX1mVfrKIpqVg1NxQ", + "58PnEv0FiTCmFiCnV0BHcA", + "5A5k7wKgUR-9WNHmrqjyGw", + "5A5k7wKgUR-9WNHmrqjyGw", + "5A5k7wKgUR-9WNHmrqjyGw", + "5BSLYKETsA6JrTET6azQQA", + "5D04LWfxRD5YVqvIVReLkw", + "5DGFi3MrQEDDo8fCYbA5hA", + "5GG3t6O35HTmUeUOGuPmCw", + "5HL_FJ9Eo7P_go50x-0u2A", + "5HL_FJ9Eo7P_go50x-0u2A", + "5HL_FJ9Eo7P_go50x-0u2A", + "5Ib9omL2d9xqdBKBL9VmGw", + "5LM1UONk0pxINez5h5E_DA", + "5Ri24JfQ3hOfAMeWMo31rA", + "5Sd1lDXLKOOMpS2BYBot_g", + "5U0I4816qcVB1WQCk1679w", + "5WPbf-FG-SOzFOVzdJD5ow", + "5WRkp3UGiY89oONYWWfHqA", + "5XwPSHlCFfN_R3hNCEsGgg", + "5ZjBe0X4e9mGLzzo94YRWA", + "5_zddmyO37Dam1L6ekM5pg", + "5_zddmyO37Dam1L6ekM5pg", + "5_zddmyO37Dam1L6ekM5pg", + "5bp9ksSy292xk-WBKhGWXQ", + "5e20AsvoCctGya4WV0ZQuw", + "5eYkmihge0H1qcdxo1aVVg", + "5ek4GYVwae8QN7q7IuBTMw", + "5f2J_QOPLY4NcTNEeJRgKw", + "5f2J_QOPLY4NcTNEeJRgKw", + "5f2J_QOPLY4NcTNEeJRgKw", + "5f2J_QOPLY4NcTNEeJRgKw", + "5g_sZRmopLQ6db2MGgkUGg", + "5g_sZRmopLQ6db2MGgkUGg", + "5g_sZRmopLQ6db2MGgkUGg", + "5h1fxxJ6EO-OnrqL_Batiw", + "5h_x3DWmOz8VIG9_VAD0HA", + "5h_x3DWmOz8VIG9_VAD0HA", + "5h_x3DWmOz8VIG9_VAD0HA", + "5iRxORzRIKB9jE6s7D0c6w", + "5jX00vRveA-bSGKVbRAzeQ", + "5jX00vRveA-bSGKVbRAzeQ", + "5m5J32z338iItYAy0IlfPg", + "5mFfstASu8Qeky6I-gL8pg", + "5mFfstASu8Qeky6I-gL8pg", + "5mFfstASu8Qeky6I-gL8pg", + "5mFfstASu8Qeky6I-gL8pg", + "5mFfstASu8Qeky6I-gL8pg", + "5pFhsElnVl9ab7AtYBHzuA", + "5r8KpdovvRTGdEVpy5WVpA", + "5rMKFxe1PcyzU3VKeDU86A", + "5rk_UJ-u8N3KSTCupmswwg", + "5sUnLSuwRmrBaZh_rdcc6A", + "5utt2dQ8HKrTepHdNpprxQ", + "5utt2dQ8HKrTepHdNpprxQ", + "5vShGsOt6DdWOsue-DtpXg", + "5vj2qWMYXopIAHMeOOhgxA", + "5vwGHVj1iOwLhC3GJJEE-A", + "5w4q2mErvPJM1j09ut3VHw", + "5w4q2mErvPJM1j09ut3VHw", + "5yau2rU7Gb3p5PTNfI3QYA", + "60iALvVIT6xacnSmRvILXg", + "60iALvVIT6xacnSmRvILXg", + "60iALvVIT6xacnSmRvILXg", + "61vrmCVoJZp3HjBxIMFrNA", + "61vrmCVoJZp3HjBxIMFrNA", + "62YI4UQGzJYoqSNJQeEjWQ", + "634wiWh6F21tPpXr0Zz3mg", + "634wiWh6F21tPpXr0Zz3mg", + "634wiWh6F21tPpXr0Zz3mg", + "634wiWh6F21tPpXr0Zz3mg", + "634wiWh6F21tPpXr0Zz3mg", + "63nMu76IftokzOnGnfVTJw", + "63nMu76IftokzOnGnfVTJw", + "63nMu76IftokzOnGnfVTJw", + "64_gXbF7HyUCJo7LwmlTVA", + "67ZApSKF_tBH-bAhOXBNxA", + "67ZApSKF_tBH-bAhOXBNxA", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "67pWST_GfpcgDD8ClFaSxw", + "68Kd2F2G5cbeqk2uYg-UgA", + "69pONqxP8-okyxfNdJq0Bg", + "6ACqmKWSUegYVOk5FRj2_A", + "6IAXoYeI62bQppY-qjqJ0A", + "6IAXoYeI62bQppY-qjqJ0A", + "6IAXoYeI62bQppY-qjqJ0A", + "6IAXoYeI62bQppY-qjqJ0A", + "6IAXoYeI62bQppY-qjqJ0A", + "6IAXoYeI62bQppY-qjqJ0A", + "6IAXoYeI62bQppY-qjqJ0A", + "6IAXoYeI62bQppY-qjqJ0A", + "6IAXoYeI62bQppY-qjqJ0A", + "6KM6RK-sq5wYpyjnMfBa7A", + "6KM6RK-sq5wYpyjnMfBa7A", + "6KM6RK-sq5wYpyjnMfBa7A", + "6KSNndy85gBTgVQEjf0SaQ", + "6L63fpgszHipLsdjI8Hpxg", + "6L63fpgszHipLsdjI8Hpxg", + "6Nl0gY43nPPrQT3jaCG99Q", + "6OqUFDo-whukimJI-B2pMg", + "6OqUFDo-whukimJI-B2pMg", + "6Qw9Kypo2oJsXQJp0yMzAQ", + "6Qw9Kypo2oJsXQJp0yMzAQ", + "6Qw9Kypo2oJsXQJp0yMzAQ", + "6Qw9Kypo2oJsXQJp0yMzAQ", + "6Qw9Kypo2oJsXQJp0yMzAQ", + "6Qw9Kypo2oJsXQJp0yMzAQ", + "6Qw9Kypo2oJsXQJp0yMzAQ", + "6Qw9Kypo2oJsXQJp0yMzAQ", + "6SPcjSM_2i5VedtZVzcDIg", + "6VgifDx_vRg8rUeffXssrQ", + "6VgifDx_vRg8rUeffXssrQ", + "6XNnO9SeJ40ZM7baZ84oEg", + "6XSmObFSSfKQphH28GHZfA", + "6XSmObFSSfKQphH28GHZfA", + "6XSmObFSSfKQphH28GHZfA", + "6XSmObFSSfKQphH28GHZfA", + "6XSmObFSSfKQphH28GHZfA", + "6XSmObFSSfKQphH28GHZfA", + "6XSmObFSSfKQphH28GHZfA", + "6XZVqwgpvPEDrDCTrE9iAg", + "6Xh-B1rJ2u1_EElR3i8rJw", + "6Xh-B1rJ2u1_EElR3i8rJw", + "6Xh-B1rJ2u1_EElR3i8rJw", + "6Xh-B1rJ2u1_EElR3i8rJw", + "6Xh-B1rJ2u1_EElR3i8rJw", + "6aJ6pmMPvPEjMaH0D2_VRg", + "6aJ6pmMPvPEjMaH0D2_VRg", + "6dOf_roibFbI4CWjV9e8Pw", + "6dizidRtpqcGmpShAjzttQ", + "6iNgA9fR_bPjg3gsO7FxQg", + "6lQDaDN1HBUDrZzwkYhxxA", + "6lQDaDN1HBUDrZzwkYhxxA", + "6lofCsTYrZTgxumxKdLXaA", + "6lofCsTYrZTgxumxKdLXaA", + "6m_iZoL_FCwUKumi1bUrpw", + "6m_iZoL_FCwUKumi1bUrpw", + "6pf_Dzk47Yjd2xEuqe_fEw", + "6pf_Dzk47Yjd2xEuqe_fEw", + "6sFIukgY7ho7yax5BMPJNQ", + "6sFIukgY7ho7yax5BMPJNQ", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6tVKI4mSYDEJ-ABAIpYXcg", + "6uM2A8w04xXsJuYJrLs3tw", + "71tcgbBjsGAuVt1WGfcc1w", + "73IOkhtZyjrZNnxzxVPYTQ", + "74O8rb6r6chx3WMINhKDgQ", + "74qEjIejJXcKrFSlQB8Phg", + "79oV5sP-J3yps9pMow1qNA", + "7AiBn7oHfjeYsG3Q9nW8vQ", + "7At3N6jUaTq91gUXMCcsgw", + "7At3N6jUaTq91gUXMCcsgw", + "7At3N6jUaTq91gUXMCcsgw", + "7At3N6jUaTq91gUXMCcsgw", + "7At3N6jUaTq91gUXMCcsgw", + "7BvwwtuvWC96Hl7IBrycDg", + "7BvwwtuvWC96Hl7IBrycDg", + "7BvwwtuvWC96Hl7IBrycDg", + "7BvwwtuvWC96Hl7IBrycDg", + "7D9I01It2-2bxvojQpWiIg", + "7EAsiDF3uoTXazC89bRxpA", + "7EHeuRz0CLtKEuoB-_zIQA", + "7EnnOhShMGZ9Te5BWwjtoA", + "7EnnOhShMGZ9Te5BWwjtoA", + "7Ff5SrtHXzU4qH7XsJgEBw", + "7JN_tS6A_rP-FvBgm0sAlg", + "7KOSerr1KVdKNnuLaLw3rg", + "7KiGB3QuQ0TSydl142kv4g", + "7M8FPnN7Hq8fgi1U4GGEug", + "7M8FPnN7Hq8fgi1U4GGEug", + "7M8FPnN7Hq8fgi1U4GGEug", + "7M8FPnN7Hq8fgi1U4GGEug", + "7Miu2EGxnVZ9KKV9kFUspg", + "7NQKJ0eHP8J4hISaRMWwxQ", + "7NR0jbOQlaZeFEWcKIy1Cg", + "7NR0jbOQlaZeFEWcKIy1Cg", + "7OmS9SwYpCYbOPw4YxA-2Q", + "7QCSFGwPBX_XmFvGG4RGJA", + "7QCSFGwPBX_XmFvGG4RGJA", + "7Qo8IKpKLyniNUJ9wzpzPg", + "7Qo8IKpKLyniNUJ9wzpzPg", + "7Qo8IKpKLyniNUJ9wzpzPg", + "7Qo8IKpKLyniNUJ9wzpzPg", + "7Qo8IKpKLyniNUJ9wzpzPg", + "7Qo8IKpKLyniNUJ9wzpzPg", + "7RFhYe_NpS241I1rFVDmNA", + "7Sf8jS1-pi9OKpGesnFGYA", + "7VuKWRyOXWtTMY28mQZqtA", + "7VymR8BqD9CbSLrlTGtYdg", + "7Y3rOwqJS8StJ3gV4Hpibg", + "7Y3rOwqJS8StJ3gV4Hpibg", + "7Y3rOwqJS8StJ3gV4Hpibg", + "7Y3rOwqJS8StJ3gV4Hpibg", + "7Y3rOwqJS8StJ3gV4Hpibg", + "7Y3rOwqJS8StJ3gV4Hpibg", + "7Y3rOwqJS8StJ3gV4Hpibg", + "7Y3rOwqJS8StJ3gV4Hpibg", + "7Y3rOwqJS8StJ3gV4Hpibg", + "7Zab1kjxi9OJSrkYt0Wxrg", + "7aqMkhc14ipFteNGQMekfw", + "7brVxbd8D0tgw87ijWYE7g", + "7c7rgpFHY6rxkjCoiUY2Pg", + "7eP3POMzJHenXrvglsJksA", + "7idFy4L9vdoMZ3WhQ5NciQ", + "7idFy4L9vdoMZ3WhQ5NciQ", + "7ivCHlgEqv0xiNyMDWHzOw", + "7kZxFgbuXnmF5RM9H_z_gg", + "7lQYb7WO824SCyaFg6Krvg", + "7mHxj6ex12vLxxC3BCGBSg", + "7mHxj6ex12vLxxC3BCGBSg", + "7mqPc5ch4cFcQJn3b5WHKQ", + "7mriOKfPxEedu-U5xcOHzQ", + "7mriOKfPxEedu-U5xcOHzQ", + "7mriOKfPxEedu-U5xcOHzQ", + "7mriOKfPxEedu-U5xcOHzQ", + "7p_llGp9OZbFMQuhvSu13A", + "7sjdM8tHLt2PY9MFMGkKvA", + "7sjdM8tHLt2PY9MFMGkKvA", + "7sjdM8tHLt2PY9MFMGkKvA", + "7skvoqQ_JlmRN5w43B7kuQ", + "7ubOsYlEqTZxYNoZCROO1w", + "7ubOsYlEqTZxYNoZCROO1w", + "7uo6HnEu95TqHvEix8e-NA", + "7wb_zxGk1rY1-IahtRCQAQ", + "7y5feDZCfxwthGiPIaTFFg", + "7z2t3kAEn-e5RwzatH0LKA", + "7zPKGV-eM0z3BYd8xdD0Nw", + "7zYeC7R-lSfXvbFWl0Ufdw", + "7zYeC7R-lSfXvbFWl0Ufdw", + "80G6zvzFPytbRyfwuXWQcA", + "80G6zvzFPytbRyfwuXWQcA", + "80G6zvzFPytbRyfwuXWQcA", + "80G6zvzFPytbRyfwuXWQcA", + "81sQIr1-P7Y9e1lYkQD1WQ", + "82-lh_T5Vv0w2WAb_RJ1Vg", + "83-j4R13bIPFHIwJnf4UlA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84hpgw4gYf3eN9wUiHodQA", + "84y2a9q7-onYC7ofRQhclA", + "87K1CwzZK_F79-lNbbx9Yg", + "87K1CwzZK_F79-lNbbx9Yg", + "87K1CwzZK_F79-lNbbx9Yg", + "87K1CwzZK_F79-lNbbx9Yg", + "87egngtXFm0bIUCnQcIALw", + "8DjWuv2ON9M4hqERzLLGrw", + "8DjWuv2ON9M4hqERzLLGrw", + "8F99NQhD3f5QxwEfDi25tA", + "8HclVn0TTGhRLlMuMst62Q", + "8I3EtewC4dcEYoiRpxzXpg", + "8IFclPxnlaUsspb5D_RRJw", + "8IycasHuDpn892i9ex9phA", + "8KL4zGG-d9_GDuuEGBxudQ", + "8NDDGpC6h_glZsYGhl3bbQ", + "8NDDGpC6h_glZsYGhl3bbQ", + "8NlMClggx8jaziUTJXlmWA", + "8NlMClggx8jaziUTJXlmWA", + "8OiJZHURIK_gi5RsAiMk3Q", + "8PLzoB-u4hzDZ_WKIg8FxQ", + "8RS1Nly7R5USaUVxZKBsKQ", + "8RnluWCl_polt-8MlyICAw", + "8SiFRztz7qWKhaJN37TZ-w", + "8T0AfTas4UaJM-evU8y7oQ", + "8T0AfTas4UaJM-evU8y7oQ", + "8V6XK3FeexwVTaF25UCL_Q", + "8V6XK3FeexwVTaF25UCL_Q", + "8VM9RKSFrLLWk7EeUI8WuA", + "8WPdZNjwMvF6a3MxlZ9bmA", + "8WTNcSpaCvjR8mgFDe3uSA", + "8XyHXMQijJkNwu4Uf2gtWg", + "8Yk_yt_nArkN1DTfkl8kWg", + "8Za76x2-HbyUrGFN40BPPQ", + "8ZtMkBPrvDPN3loYwlfoaA", + "8bRONCZ2HplxP2YHDcA5qQ", + "8eUtMUHOvPaofxtlsaqIIg", + "8g3sLjFnKCF_JJchxYP5DA", + "8g5GgzaRtndh1_mhtIHztw", + "8g5GgzaRtndh1_mhtIHztw", + "8g5GgzaRtndh1_mhtIHztw", + "8hquOE5UjuqbQKed-OMfiw", + "8k_6lvbs-tYFU0BS1Pnk5Q", + "8lANmDojqVgOU0q9P9_Ntw", + "8lANmDojqVgOU0q9P9_Ntw", + "8ngtv4cDkGweTy1-Gd9auQ", + "8oD_6-PKkG7IDBNK-wP1XA", + "8oHQ4oPK7To4Ft-o_Rf-MA", + "8oQ_ZJ3ImiZWOZcNHv_WYw", + "8otNRdSDOkmJHkAHEZdMrA", + "8s5hM6TvWnoP9XP3e8VVVw", + "8s5hM6TvWnoP9XP3e8VVVw", + "8tJujVK0pdTWlucWIQYskA", + "8uVqqmQs2krZT40-iqFC3A", + "8wyHWaiozlb8fICne_VIJA", + "8yw5xAkzQPNYncv2nxNJ2Q", + "93KKtPDSfPMvEhxj9OzJ1g", + "96H7IcrFu8Zg3f7WMu_Lag", + "980-iSS9S0F-vkRag1FHZw", + "992j67iVEP_ZCQRVTejCUw", + "9AD_jMnDoH_vmvKruTVuFw", + "9AD_jMnDoH_vmvKruTVuFw", + "9AD_jMnDoH_vmvKruTVuFw", + "9AD_jMnDoH_vmvKruTVuFw", + "9AD_jMnDoH_vmvKruTVuFw", + "9AD_jMnDoH_vmvKruTVuFw", + "9AD_jMnDoH_vmvKruTVuFw", + "9AD_jMnDoH_vmvKruTVuFw", + "9AD_jMnDoH_vmvKruTVuFw", + "9AD_jMnDoH_vmvKruTVuFw", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BM25vr762IbGPHbtur65g", + "9BsFwV8tobvksYfuNpORcQ", + "9BsFwV8tobvksYfuNpORcQ", + "9D5umgMyZZQX73v4UAWBow", + "9D5umgMyZZQX73v4UAWBow", + "9F2a_yzWrSmXRu6SZEKaiw", + "9HJw1AcNel0sxysI8t-wFA", + "9IYt1kTyVwHBmL5XBentkw", + "9IYt1kTyVwHBmL5XBentkw", + "9IYt1kTyVwHBmL5XBentkw", + "9JMKs9KQTgczUAMQRnFzHQ", + "9LmRws9vwhydmyx1d6Vkyw", + "9OSIwt7_UxT7zZoUvqu4Ww", + "9OSIwt7_UxT7zZoUvqu4Ww", + "9OSIwt7_UxT7zZoUvqu4Ww", + "9OSIwt7_UxT7zZoUvqu4Ww", + "9OSIwt7_UxT7zZoUvqu4Ww", + "9P399qv1PUm-fcjEeECPlg", + "9P399qv1PUm-fcjEeECPlg", + "9P399qv1PUm-fcjEeECPlg", + "9P399qv1PUm-fcjEeECPlg", + "9PEEvj8uQU3NK5CAFA7F9A", + "9PmXvHucczCVlI0S70oJBQ", + "9Q3jXpPN4T_VsifxYsaiJQ", + "9Q3jXpPN4T_VsifxYsaiJQ", + "9QWyFU2pKYfVBJH9Oi6ICQ", + "9QWyFU2pKYfVBJH9Oi6ICQ", + "9RiRfbyw6Ke6ra9C7bpO7A", + "9SJbWDmIwLKygKyg6FjqpA", + "9ScOlSS2fIyPZ7ygebwKSQ", + "9ZOKtWsgasz8zygdckTZDQ", + "9Zahk-1cqT1ZM_gvCtd7JQ", + "9Zahk-1cqT1ZM_gvCtd7JQ", + "9Zahk-1cqT1ZM_gvCtd7JQ", + "9ZcPzi6i1uzjxExCGCn20A", + "9c8RRSv3MGzjv6GzNrzhqQ", + "9c8RRSv3MGzjv6GzNrzhqQ", + "9c8RRSv3MGzjv6GzNrzhqQ", + "9c8RRSv3MGzjv6GzNrzhqQ", + "9c8RRSv3MGzjv6GzNrzhqQ", + "9co7H4d1HBUDrZ_CqT6t9A", + "9co7H4d1HBUDrZ_CqT6t9A", + "9eyFEANetCPzPOoO7Or-3g", + "9hAOHgmwWWwZTwO4K132Qg", + "9hTMtdP-Kaf579B6Djqy8Q", + "9hTMtdP-Kaf579B6Djqy8Q", + "9hTMtdP-Kaf579B6Djqy8Q", + "9hTMtdP-Kaf579B6Djqy8Q", + "9hTMtdP-Kaf579B6Djqy8Q", + "9i4yH5hvA0rp4RuaXVKyFQ", + "9i4yH5hvA0rp4RuaXVKyFQ", + "9i4yH5hvA0rp4RuaXVKyFQ", + "9iEsaZI76W1WejkwhmTFwQ", + "9iPPrg1Y9vtWhMk7mXQ_Kg", + "9kietkvv7S77zKWxgixZjw", + "9kietkvv7S77zKWxgixZjw", + "9kietkvv7S77zKWxgixZjw", + "9kietkvv7S77zKWxgixZjw", + "9lngTnmeSG1s7rdk_juSMA", + "9lpztkfS1SN6AbyUgwU8Qw", + "9qVi_GBt6qKT_kgVvmjrsg", + "9qVi_GBt6qKT_kgVvmjrsg", + "9sYnFbigFrf_-fozodwm9Q", + "9ueOMZ5LDXwfOj3sK1vl8Q", + "9xzxWCGZcOvhLUSFF27srA", + "9ya1L8kCLTVFwaNMIq6e6w", + "9zPkZE4RJJmPlROxnxkxmw", + "9zPkZE4RJJmPlROxnxkxmw", + "9zPkZE4RJJmPlROxnxkxmw", + "9zPkZE4RJJmPlROxnxkxmw", + "A-41ReHkKXTbwuqT5HLDpQ", + "A-l7rVlo-Q0lIzJjDruhtQ", + "A1THegAXTfv6XrMMu5_78A", + "A6Xvpm2Mx6c3SME2gNZFyQ", + "A7p5XA-9Y-Ab-JzOeHN3gg", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHQ", + "AAAAAAAAV4sAAAAAAAAAHg", + "AAAAAAAAV4sAAAAAAAAAHg", + "AAAAAAAAV4sAAAAAAAAAHg", + "AAAAAAAAV4sAAAAAAAAAHg", + "AAAAAAAAV4sAAAAAAAAAHg", + "AAAAAAAAV4sAAAAAAAAAHg", + "AAAAAAAAV4sAAAAAAAAAHg", + "AAAAAAAAV4sAAAAAAAAAHg", + "AAAAAAAAV4sAAAAAAAAAHg", + "AAAAAAAAV4sAAAAAAAAAHg", + "AATo2Vqo1n4TLgDJq9tPgw", + "AAahb89jp2nXTHxX6vfDVg", + "AAnABuJtrWflPvotxCoPjQ", + "AAnABuJtrWflPvotxCoPjQ", + "AAnABuJtrWflPvotxCoPjQ", + "AC6sIDdQuWlno6mhwaFiZw", + "AC6sIDdQuWlno6mhwaFiZw", + "AJ20S4nqf6FfjqdXzTnTNQ", + "AJ20S4nqf6FfjqdXzTnTNQ", + "AJ8qrcXSoJbl_haPhlc4og", + "AJ8qrcXSoJbl_haPhlc4og", + "AKA_xNbMD2YwYHRAUU-hzA", + "ANUDzCguopTSw91qnI0ylA", + "ANmrmrqqJv18GWh_5HHQlg", + "AOcEaCF8bglqC14-r8ZiKA", + "AOgIpGcIjpuaWX5JFQA-_w", + "AOgIpGcIjpuaWX5JFQA-_w", + "AOgIpGcIjpuaWX5JFQA-_w", + "AOgIpGcIjpuaWX5JFQA-_w", + "AOgIpGcIjpuaWX5JFQA-_w", + "ARLuf1htvrklOOxyKnOopA", + "ARiuJRGB6HSb0roAv522dA", + "AS0eDWg20YjC_s884Pp-RQ", + "AU1UxR09cGAZB2y_cCThHQ", + "AU1UxR09cGAZB2y_cCThHQ", + "AU1UxR09cGAZB2y_cCThHQ", + "AV8wmuu_NnjgQM-gIicjoA", + "AV8wmuu_NnjgQM-gIicjoA", + "AV8wmuu_NnjgQM-gIicjoA", + "AV8wmuu_NnjgQM-gIicjoA", + "AYbWOxZmjqP_JjIcE2B9BA", + "AZGriLcxLoYYv_Z-GwPFpw", + "Ac_21V0WNPy6Tqh3C5QMqQ", + "AgdJ8vDKka1PRCLkG2MafA", + "AkiiW-5yqxly9YBXWMYPFw", + "Al_h9gC68463XnWmby4-Qg", + "Al_h9gC68463XnWmby4-Qg", + "AlyGmh1B04rpTwKhuQi5Wg", + "AmTcFForv1r91KDhJjsuQQ", + "AmTcFForv1r91KDhJjsuQQ", + "AmTcFForv1r91KDhJjsuQQ", + "AmTcFForv1r91KDhJjsuQQ", + "AmTcFForv1r91KDhJjsuQQ", + "AmTcFForv1r91KDhJjsuQQ", + "ArHoFYyXVsZt6HAc7EjVzg", + "Arz1MMWCC2fkAl6FCL43rA", + "AsYLPOMVTEJOeDxuyLY7KQ", + "AsYLPOMVTEJOeDxuyLY7KQ", + "AsYLPOMVTEJOeDxuyLY7KQ", + "AsYLPOMVTEJOeDxuyLY7KQ", + "AszzcogM1j3W5M9Q6_fCOQ", + "AszzcogM1j3W5M9Q6_fCOQ", + "AvY-8GTrHONLnLoYn_aUmw", + "AyQblFWxoSNP2bxYt2XrVg", + "B1984Ng46sq2rHP9JYVyYg", + "B20OugZuwBAeveso7e9HjA", + "B3q4S4Ckg_Xt-OI4yuAyoQ", + "B3q4S4Ckg_Xt-OI4yuAyoQ", + "B4whtrfnaTSHGModLedLLw", + "B68XzYJFVnny1no-xetM6Q", + "B68XzYJFVnny1no-xetM6Q", + "B6CZTBjoKgEykRE_QA6Nww", + "B9_lWIfptWUZtktRAKblyg", + "B9gbZBZ1iVM7gT0HZmJLew", + "BDSdiy0x3rJPCL22Rb7_Ag", + "BFGjgFTdK1xnfs0xj5apUw", + "BFI7c7JS1eVbUcz-CuyraA", + "BFzsvc2FJJqJ7MOfSIYcgw", + "BNrNtUxjbxaAxGXdc-eVXA", + "BNrNtUxjbxaAxGXdc-eVXA", + "BNrNtUxjbxaAxGXdc-eVXA", + "BNrNtUxjbxaAxGXdc-eVXA", + "BNrNtUxjbxaAxGXdc-eVXA", + "BNrNtUxjbxaAxGXdc-eVXA", + "BNrNtUxjbxaAxGXdc-eVXA", + "BNrNtUxjbxaAxGXdc-eVXA", + "BNrNtUxjbxaAxGXdc-eVXA", + "BNrNtUxjbxaAxGXdc-eVXA", + "BQgPvwiw9NNbOJgDcqi8DA", + "BSGYbOS21g5XOXq-oh30Uw", + "BSSHdcDrfxhJYR_pl8U8Vg", + "BSSHdcDrfxhJYR_pl8U8Vg", + "BSSHdcDrfxhJYR_pl8U8Vg", + "BSSHdcDrfxhJYR_pl8U8Vg", + "BUIjEExV8zypjFmSEDklUA", + "BUIjEExV8zypjFmSEDklUA", + "BUIjEExV8zypjFmSEDklUA", + "BUIjEExV8zypjFmSEDklUA", + "BUIjEExV8zypjFmSEDklUA", + "BY2rTx9iNIHoPLSaIk3jZQ", + "BYItgZpVD2E3ydG9PJ9meA", + "BYJNn-MoBSRU3jGgndKCfQ", + "BYJNn-MoBSRU3jGgndKCfQ", + "BYJNn-MoBSRU3jGgndKCfQ", + "BYvTdSjRR3mRiJL5PtR_Xg", + "BZDyipXP5bFEE55HWZ3NWQ", + "B_8pLWeFHllvmKE3jcPnmg", + "B_IRgbCQC1IPEoVkHKMOTw", + "B_IRgbCQC1IPEoVkHKMOTw", + "B_IRgbCQC1IPEoVkHKMOTw", + "B_IRgbCQC1IPEoVkHKMOTw", + "B_IRgbCQC1IPEoVkHKMOTw", + "B_IRgbCQC1IPEoVkHKMOTw", + "Ba23Sz2WIr-h3_3ywbXOAw", + "Ba23Sz2WIr-h3_3ywbXOAw", + "Bbh2RgXd1jK3PTI5kPBIQw", + "BclABPaTGPcTz5H4BnHdyw", + "BclABPaTGPcTz5H4BnHdyw", + "BeJWXrhFEHEEfJyzcHF3mg", + "Bgl4-X9YCYcvVnIszn2YNA", + "Bgl4-X9YCYcvVnIszn2YNA", + "Bgl4-X9YCYcvVnIszn2YNA", + "Bgl4-X9YCYcvVnIszn2YNA", + "Bgl4-X9YCYcvVnIszn2YNA", + "Bgl4-X9YCYcvVnIszn2YNA", + "Bgl4-X9YCYcvVnIszn2YNA", + "Bgl4-X9YCYcvVnIszn2YNA", + "Bgl4-X9YCYcvVnIszn2YNA", + "Bgl4-X9YCYcvVnIszn2YNA", + "BlsD0vwi6JMAfkvyXFogjw", + "BlsD0vwi6JMAfkvyXFogjw", + "BnVm-5KvPy1J6pivjqO0oQ", + "BnVm-5KvPy1J6pivjqO0oQ", + "BnVm-5KvPy1J6pivjqO0oQ", + "BnjxOT6ecDtMNaRY7RgRQA", + "Bot4vusrAslwRTJN-1GqPA", + "BrUFbWJQXA38LKOgrDwJig", + "BsEpo0mOhzMcrZG6n13KVw", + "BsEpo0mOhzMcrZG6n13KVw", + "BsEpo0mOhzMcrZG6n13KVw", + "BsEpo0mOhzMcrZG6n13KVw", + "BvLbND_0DrAH3Z_KTjqNww", + "BwKQEmS_WcRXepUV2YDQ6Q", + "BwR1yrDLQzIOeb6cYqYi3g", + "BwR1yrDLQzIOeb6cYqYi3g", + "BwR1yrDLQzIOeb6cYqYi3g", + "BwR1yrDLQzIOeb6cYqYi3g", + "BwR1yrDLQzIOeb6cYqYi3g", + "BwR1yrDLQzIOeb6cYqYi3g", + "BwR1yrDLQzIOeb6cYqYi3g", + "BwR1yrDLQzIOeb6cYqYi3g", + "BxI5O-imEgV3N9x_K1cpQw", + "BxR1c7-nLgrcHbXghB3o2w", + "ByiJTXr_lGzkMclhjfq4OA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "Bz0qZF8UuWmfJAKJzxTpkA", + "BzUZDRcpQTRRSSLENpOpZg", + "C-NMw9vE7-rFK10EWQYO_w", + "C0M3zV9CAw2K5rR5U2_H0A", + "C0M3zV9CAw2K5rR5U2_H0A", + "C0WKYZJsdZy_HtDNc5i0jA", + "C2bcwNqql_gFwky6XpRggw", + "C2bcwNqql_gFwky6XpRggw", + "C2bcwNqql_gFwky6XpRggw", + "C2bcwNqql_gFwky6XpRggw", + "C2bcwNqql_gFwky6XpRggw", + "C2dSzxTtRtkEi44A6zm19w", + "C4_nW4w-KrPrvs0Bho4_8Q", + "C64NVLkkZ7RW349y9srs0g", + "C87NV7kL69jQPmyqDubIUA", + "C9UVUqjRD64_RWyXHEtr7Q", + "C9UVUqjRD64_RWyXHEtr7Q", + "CAYdtG0jGNYNtTA31gKoPA", + "CAbngOq5hTruw3uA1VDt3Q", + "CB3cooh_xs9YH9mUphGzWw", + "CBErNceWpqx1qGdHmNHHIQ", + "CBHuHFEZWQ-fJ4IkYrsh7g", + "CBHuHFEZWQ-fJ4IkYrsh7g", + "CBHuHFEZWQ-fJ4IkYrsh7g", + "CM_7hwk6an6NZiLsKSNPdQ", + "CMh__DRjYW6WKuSO4E-9UA", + "CRfXdVRXBus2UmwV-rdG8A", + "CSBR8000mbn4kRcknKz6Fg", + "CSBR8000mbn4kRcknKz6Fg", + "CW8gNBjX2WjN8L1kLc1-_Q", + "CW8gNBjX2WjN8L1kLc1-_Q", + "CY7ztddcPo6ofReMjIW4KA", + "CYcvl_Frh_HsIh0rws0B8g", + "C_0aTeR6JBYKeG8Yqz7OGg", + "Ce11JNj6CHxvgvTjEqpINA", + "CjJC7YgrLROQv5HQSsKhfA", + "Cl1kgGCrmfrEoupeT-su1w", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "Clmtm3Gj4Mb2mUsOYrmYag", + "ClnxK8O8Hp5YRTaCc4x_4A", + "Cm3FF_uDQeutHnQs3UGjlg", + "Cm3FF_uDQeutHnQs3UGjlg", + "Cm3FF_uDQeutHnQs3UGjlg", + "Cm3FF_uDQeutHnQs3UGjlg", + "CpvjWyzlv7sy206ARLr_Pw", + "CsbV9k-bf9vouE4JAWSvYQ", + "Cthb6QfWlAwgw9j3sWmtJA", + "CuV4zhXsbstpo0uwp_uAFg", + "CuV4zhXsbstpo0uwp_uAFg", + "CuV4zhXsbstpo0uwp_uAFg", + "Cx5RC8g9OTz7PgiGSeLtvw", + "Cx5RC8g9OTz7PgiGSeLtvw", + "CySV1vJ_H_ZjvUdvL6c-NA", + "CzDxY4-T6r5w8odVH9tQEw", + "D-XSLd42x1JNaSw7B5lYFg", + "D-XSLd42x1JNaSw7B5lYFg", + "D-XSLd42x1JNaSw7B5lYFg", + "D0rVr9r2i8CRuvzOSp3RnA", + "D31e08MRiulVFEesC2oTTQ", + "D4Dr8MgtAQr1KQWI51wjAw", + "D6RUjOI12PdX-ntiQc0cxg", + "D6b8Sjd5CvSYx-QInyms_A", + "D7No12t1lMzlOf32q04HAA", + "D7No12t1lMzlOf32q04HAA", + "D8SuOAHHuRsEe9MWrwApVg", + "DBSrey1hof91_f6sdRmT0A", + "DBSrey1hof91_f6sdRmT0A", + "DBSrey1hof91_f6sdRmT0A", + "DFiXReuwhx9_RqSSjQw5Pg", + "DIXLq0T8W9YXkU06dSKA0Q", + "DJ2lZS85ClNgTnnEk8XThg", + "DJrVAhIsrM7D63maCxrMRw", + "DLJ-wabvU5yhY1l7UzqxNg", + "DLJ-wabvU5yhY1l7UzqxNg", + "DLrWTvtAPDh4Uv4u2shrag", + "DLrWTvtAPDh4Uv4u2shrag", + "DNMSP4UcXImUndf71pg8FQ", + "DQnuXF6pjLzI_ydpQiFW0Q", + "DV8z6pYe1ipSuOK8g57sSw", + "DVR_nG5ta2hArwA9VyEuOg", + "DVR_nG5ta2hArwA9VyEuOg", + "DVSkUfLwOzQuwgYi6TvurA", + "DVSkUfLwOzQuwgYi6TvurA", + "DXStuM9FGoRVIzn6iyb_SQ", + "DYR4nla6rR5CkjYgb2INPQ", + "DYR4nla6rR5CkjYgb2INPQ", + "DYR4nla6rR5CkjYgb2INPQ", + "DYw6-LyNoVsQdM43hcJCeg", + "DbGTcOBcDc6PQvK_yBwTrw", + "DbMSwciTWzQnIwbuYrt5tA", + "DbMSwciTWzQnIwbuYrt5tA", + "DbSG9xbs7jnAEiHiVrKb1A", + "DbycTBfukhUabAsoiB7QMQ", + "Dfl7_VkgAlUBnXT98IPo0A", + "Dfl7_VkgAlUBnXT98IPo0A", + "Dfl7_VkgAlUBnXT98IPo0A", + "Dfl7_VkgAlUBnXT98IPo0A", + "Dfl7_VkgAlUBnXT98IPo0A", + "Dfl7_VkgAlUBnXT98IPo0A", + "Dfl7_VkgAlUBnXT98IPo0A", + "Dg9EjRff17PWRNomsbjntQ", + "DhNdw_t14XCu9KX4KEk8Mg", + "DjB9rnpR9s2OI-jlVfuXnA", + "Dk85LW9HyxD9vcA1wyDoDg", + "Dk85LW9HyxD9vcA1wyDoDg", + "DkUR0XHgP6Lm04e4ruEe3A", + "Dm9DG4ZqDn_4bGJnyMFN4A", + "DoZEBlPjZAc4WVFAaDVkRA", + "Dp15X8uOBNJVZimWDCZGiA", + "Dp15X8uOBNJVZimWDCZGiA", + "DqXfoFxUEaOuKMXlmCSXgQ", + "DrGSK6yMQtOpLQKRphq2qQ", + "DsmnB-99lpR3jSBsZQO0JQ", + "DsmnB-99lpR3jSBsZQO0JQ", + "DuXITtzB7JQM2p8eLBRYdg", + "DvdfU48u2QTcLtk5MzruUg", + "DvnksL7QDssoGl1VYPV1Ew", + "DvnksL7QDssoGl1VYPV1Ew", + "DvnksL7QDssoGl1VYPV1Ew", + "DvnksL7QDssoGl1VYPV1Ew", + "DvnksL7QDssoGl1VYPV1Ew", + "DvnksL7QDssoGl1VYPV1Ew", + "DvxORZxoFkDRuJT-GJ72Rw", + "DzEvX6Uki-3l_8Ej84P7Kw", + "E-LPqDQzyXigNIYWBMlgtg", + "E-LPqDQzyXigNIYWBMlgtg", + "E-UV4Q5gHz5xBV_lbP0MMg", + "E-UV4Q5gHz5xBV_lbP0MMg", + "E-_k0LukEF9-LD3AxVa3Ng", + "E0NO2Kh3-vt0YNozutGkCA", + "E10X0hknNaV-tnjJE-hW7w", + "E1fYhCC-W9hkMRzkOdu22Q", + "E2NlszEGRXNxKeW09blqBA", + "E4iLR-T6WOAqEH8-HiPe6Q", + "E4iLR-T6WOAqEH8-HiPe6Q", + "E4iLR-T6WOAqEH8-HiPe6Q", + "E73KHKAXpFF--gEMhIXshw", + "E7J_ZVS2fIyPaAMkyne11Q", + "E7J_ZVS2fIyPaAMkyne11Q", + "E7J_ZVS2fIyPaAMkyne11Q", + "E7J_ZVS2fIyPaAMkyne11Q", + "E7J_ZVS2fIyPaAMkyne11Q", + "E8HSrAik84bM3Y8Ozjzz0w", + "E9iltmxxnvYn82cyFFZ0Kw", + "E9iltmxxnvYn82cyFFZ0Kw", + "E9iltmxxnvYn82cyFFZ0Kw", + "EGWTWlXO2ReTmvMiTGjOTw", + "EGWTWlXO2ReTmvMiTGjOTw", + "EGqyFI4UBcYw0uODaUlP_Q", + "EI2MlivQ_yGyq36LnLAGeQ", + "EI2ZG0yDy6LJc1opjkWatg", + "EI5wLwdv0nxJGTj51HGsnw", + "EI5wLwdv0nxJGTj51HGsnw", + "EI5wLwdv0nxJGTj51HGsnw", + "EI5wLwdv0nxJGTj51HGsnw", + "EI5wLwdv0nxJGTj51HGsnw", + "EIpTc6zorXqtTjOVazk4Hw", + "ELq11kdAb5wONWvy2t3XBw", + "EMyu4kjP7CMJCtMZjoFNnQ", + "ENOom58sisHBM_5bqD06xg", + "ENntOW0JrT8nDLuyp74yqw", + "EPkRJFILsKGYvAhwh_S9kQ", + "ERC3TORIgU0YrmeCK0zHCg", + "ERsgf_Jy274svBwySMHeoQ", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EUNjihh0Re1G4wBFFz-Krg", + "EVcCXOQnkebnZR5Z6XcBvA", + "EVcmFq_4edpopY2aEzriOw", + "EWlXSFV2r49Q0xRbGVHSQw", + "EXFBdiZNWwQPfalX3N0kpg", + "EXm1hlIrQc2WIKO4W87lDA", + "EYGjlLJCu-Vl57yx-_7_hw", + "EYGjlLJCu-Vl57yx-_7_hw", + "EYg23MDW9OugrMeHK86aug", + "EYjuNmRJrJnJk8mNSTX2LA", + "E__m11jwVVwOsNYG95RSxg", + "E__m11jwVVwOsNYG95RSxg", + "E__m11jwVVwOsNYG95RSxg", + "EbDp5Ji3y8uTKzXL0h4-JQ", + "EbDp5Ji3y8uTKzXL0h4-JQ", + "EbDp5Ji3y8uTKzXL0h4-JQ", + "EbDp5Ji3y8uTKzXL0h4-JQ", + "EbmJdG2t-RBs3brSkct7HQ", + "EbmJdG2t-RBs3brSkct7HQ", + "EeBm2vPFcnytFzkGIYZfFA", + "EguNCcnmVGnXNe9OvbpF2w", + "EguNCcnmVGnXNe9OvbpF2w", + "EiFiDjtjvWXj4YGVaTJXOQ", + "Ekcy7So9YVOh7Q9iMhhrxQ", + "Ekre_h4w6uLsxTrYKbKEJQ", + "Ekre_h4w6uLsxTrYKbKEJQ", + "El8e1KDnRSx78JGf4h_r2g", + "EljCaLNs8oyF8fQALGTMLQ", + "EljCaLNs8oyF8fQALGTMLQ", + "EljCaLNs8oyF8fQALGTMLQ", + "EljCaLNs8oyF8fQALGTMLQ", + "Emp83XV0ORPGC9VjSudbcA", + "Eo37R4TG_ubE_su8nzeliw", + "Eo37R4TG_ubE_su8nzeliw", + "Eo4iTXjSGrYjUV3g9HGWNQ", + "Eq50LgqGqKjaa52J2nxgrw", + "Eq50LgqGqKjaa52J2nxgrw", + "Er2yE5HxkoOQjHTSQIF_kw", + "Er2yE5HxkoOQjHTSQIF_kw", + "Er2yE5HxkoOQjHTSQIF_kw", + "Er2yE5HxkoOQjHTSQIF_kw", + "Er2yE5HxkoOQjHTSQIF_kw", + "Er2yE5HxkoOQjHTSQIF_kw", + "Es-JdNswBBYy0dgOuoAxgQ", + "Eu2eTQ_3gXX-hva2wFAN4A", + "EyQZHtzRv_03o0l-NXmg-Q", + "EzlTNMIGbx2ZiPDgwyoVKw", + "EzrMYIIhTNfpjRj48sRsmA", + "F-3ttVYlonBAH0C0QNnxqg", + "F-MR5O4Hf8gA88-oz63uAg", + "F-UVz7qWVUzScRv1FhkbzQ", + "F-UVz7qWVUzScRv1FhkbzQ", + "F-UVz7qWVUzScRv1FhkbzQ", + "F-UVz7qWVUzScRv1FhkbzQ", + "F0qxPYeb0myVD7w47s3EgA", + "F0qxPYeb0myVD7w47s3EgA", + "F1o29QfZHCBrMaZ2mOeqvA", + "F1o29QfZHCBrMaZ2mOeqvA", + "F1o29QfZHCBrMaZ2mOeqvA", + "F1o29QfZHCBrMaZ2mOeqvA", + "F1o29QfZHCBrMaZ2mOeqvA", + "F1o29QfZHCBrMaZ2mOeqvA", + "F3-Ih9R2IC33i53mcQo_kQ", + "F3u75PFaKMThRw4BoUVwCA", + "F7lATn_bFhRDcY0Z0OyPwQ", + "F7lATn_bFhRDcY0Z0OyPwQ", + "FB2lbICPeg4uVJ_bp0LkUg", + "FB2lbICPeg4uVJ_bp0LkUg", + "FBVCBKuKRq6cJ2_v-ATjyw", + "FD67YgaFeLuqBai5R0qQdQ", + "FDHy--PvgHpUWFquuqO7RA", + "FDHy--PvgHpUWFquuqO7RA", + "FDp23rE1CceEicB2tyC3Eg", + "FGGSuaVpuuMHaXUzmpPEWQ", + "FH4SH_uTiEszu4Eono2UAQ", + "FH4SH_uTiEszu4Eono2UAQ", + "FH4SH_uTiEszu4Eono2UAQ", + "FHmqnwoRLZTiOtbOugfu1w", + "FHmqnwoRLZTiOtbOugfu1w", + "FHmqnwoRLZTiOtbOugfu1w", + "FHmqnwoRLZTiOtbOugfu1w", + "FKHeDCqWZknFBzCzGkASlw", + "FQVEqfdF3Gc5vOLVf8c4EA", + "FSfcXaocqiaJ94cn1Eg82g", + "FYp6NrRQUdcxcMQHOiZr7Q", + "FYp6NrRQUdcxcMQHOiZr7Q", + "FYp6NrRQUdcxcMQHOiZr7Q", + "FZMomjWJJ0nF52fd5MCJjw", + "FZMomjWJJ0nF52fd5MCJjw", + "FZMomjWJJ0nF52fd5MCJjw", + "FZMomjWJJ0nF52fd5MCJjw", + "FcONxiLpVthzRpXYOxEMGQ", + "FeTq3grQxZLpQxyGC-4wQQ", + "FedFnYQW8bHf16nVrC3eNg", + "FhB955OLKEut8ODAZcajDg", + "FhB955OLKEut8ODAZcajDg", + "FiQMwA9XcchO9iDh-bURNQ", + "FiQMwA9XcchO9iDh-bURNQ", + "FiQMwA9XcchO9iDh-bURNQ", + "FiQMwA9XcchO9iDh-bURNQ", + "FjPeFwiJfDdu2t7SH4hgAg", + "FjooOB7UnLRNkyMXgznjWw", + "FknJ5-CZ51G6cpnW10CJ5A", + "FqIP6aAzogD29fEjUaOqOg", + "Ftjh-A3lytsNmmUroc108A", + "Ftjh-A3lytsNmmUroc108A", + "FvsddNGxnOi8XVXGV8dYgQ", + "Fw4N_DGYxmWJY3G6VlrCLw", + "G03owtPMOb_BDAuY6rOWog", + "G1OnoGXN6zXJZoQUHRmxAw", + "G2Gr0Endt8yd9TWwB25Y2A", + "GBJ1zKS_b9jP7AxB92tjCQ", + "GECkj5EzwizbnHTSy11lwA", + "GECkj5EzwizbnHTSy11lwA", + "GECkj5EzwizbnHTSy11lwA", + "GECkj5EzwizbnHTSy11lwA", + "GECkj5EzwizbnHTSy11lwA", + "GEgO-raQbJR9oQqKeQGCqw", + "GFR3FEpwUl5GjzVK189OpA", + "GGktJAfchjJGzHnNP7Em3Q", + "GHfrWkNDTusMoI46fGLR6A", + "GLsxJEBpGzbIAzUio3qiqg", + "GMNSe-6LTlpuiQTu86Rdbw", + "GOcPlET8lxz6w9LoJqKjeA", + "GP9DcZgvFsVU-FrimfbKfQ", + "GP9DcZgvFsVU-FrimfbKfQ", + "GPK7pyl3RjtyKa9WtooOGg", + "GPK7pyl3RjtyKa9WtooOGg", + "GPK7pyl3RjtyKa9WtooOGg", + "GPv2ypC6givXZK29vBoBXA", + "GR2FEpkknq9K1pcz6UJg9w", + "GRx4elZZ5Xpl6qP-vsIkdg", + "GS-BM31ayIfhOMl6o8fHjw", + "GTGfXtPbBok8K2FnKoRb1g", + "GTGfXtPbBok8K2FnKoRb1g", + "GY3kN9FLXVkd_WUycTkKyQ", + "GY_EtZt9mU4B3aEjHh6NpQ", + "GY_EtZt9mU4B3aEjHh6NpQ", + "GY_EtZt9mU4B3aEjHh6NpQ", + "GY_EtZt9mU4B3aEjHh6NpQ", + "G_m3QDvUNiRwCW9GUDCpQw", + "G_m3QDvUNiRwCW9GUDCpQw", + "G_m3QDvUNiRwCW9GUDCpQw", + "G_m3QDvUNiRwCW9GUDCpQw", + "Ge0L0SwsSbyUWsXqVMbKsw", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "Ggf9kW-zoddyVYpEp-cnZA", + "GiKdaO0NXWMcKAtg8WXWng", + "GlC_4vxkxw2liQlwBvsuFw", + "GoyWYLMjSVkhprMVlMHfKQ", + "GoyWYLMjSVkhprMVlMHfKQ", + "GqShcrW-d9_GDzTagKIU9Q", + "Gw9H1l67yAnzlh8ZHG_VaQ", + "Gz-UIPp7ivisgp9IsJeJYg", + "GzGkXez8RTlqjPJQDxzvig", + "Gzg_gcEywdxIXvx8_zTZ0Q", + "Gzg_gcEywdxIXvx8_zTZ0Q", + "Gzg_gcEywdxIXvx8_zTZ0Q", + "Gzg_gcEywdxIXvx8_zTZ0Q", + "H-M-AAeStmxxhLg98P43Kw", + "H-li-VPX4V5GB-C8EGJQQw", + "H-li-VPX4V5GB-C8EGJQQw", + "H-li-VPX4V5GB-C8EGJQQw", + "H-li-VPX4V5GB-C8EGJQQw", + "H-li-VPX4V5GB-C8EGJQQw", + "H-li-VPX4V5GB-C8EGJQQw", + "H-li-VPX4V5GB-C8EGJQQw", + "H-li-VPX4V5GB-C8EGJQQw", + "H-li-VPX4V5GB-C8EGJQQw", + "H-li-VPX4V5GB-C8EGJQQw", + "H-li-VPX4V5GB-C8EGJQQw", + "H-wSa23kc3U3gWusbQ0H7A", + "H-wSa23kc3U3gWusbQ0H7A", + "H0yNC4W33CkkqJfkrGFEhA", + "H0yNC4W33CkkqJfkrGFEhA", + "H1KUm8kRHR6ux5zgq2-v-A", + "H2QTzkKMf4VE2_HyfX9Gyw", + "H51LVO0hZm7tBbfsxW9RAA", + "H51LVO0hZm7tBbfsxW9RAA", + "H51LVO0hZm7tBbfsxW9RAA", + "H51LVO0hZm7tBbfsxW9RAA", + "H7UuqwN000YfavdusMYbuA", + "H7o77ANtSaWU3Ypp865GJw", + "H9qHSakbha_JIFnrzuJJjw", + "HA3TD5377NJUVWpcrnF53A", + "HAPuRG_LRRYFUeA5sYpd1g", + "HAV7Zh5H5JQPHONsGvZ0PA", + "HBFcmWqYWFH0QpoGRyming", + "HBtR9_WOMYvrJ8dEc0qpTg", + "HBtR9_WOMYvrJ8dEc0qpTg", + "HDK8__dlE-AoQGBiDmXadw", + "HDtxjNJh5HryAaa7uCACXg", + "HDtxjNJh5HryAaa7uCACXg", + "HDtxjNJh5HryAaa7uCACXg", + "HFgO_FKtiSSlqZPdpNkneQ", + "HFgO_FKtiSSlqZPdpNkneQ", + "HHYed7pYCVK68jLMEjdhPA", + "HL6OuA5BriS2w42aq9WRNQ", + "HL8EuHVSmvyyvO0QJQzjvA", + "HL8EuHVSmvyyvO0QJQzjvA", + "HL8EuHVSmvyyvO0QJQzjvA", + "HNuVj5I-SSkA73KWVF2D8A", + "HNuVj5I-SSkA73KWVF2D8A", + "HOdqGlOl5G4fyBv7lq2-VA", + "HOdqGlOl5G4fyBv7lq2-VA", + "HOdqGlOl5G4fyBv7lq2-VA", + "HOdqGlOl5G4fyBv7lq2-VA", + "HOno65fF9MNk7Hxtw-uPRA", + "HQaseND-R9Eij_93pefSLw", + "HQaseND-R9Eij_93pefSLw", + "HQiSs5ui5R2kIeDcvi9ZvQ", + "HQiSs5ui5R2kIeDcvi9ZvQ", + "HQlS1PvyNkxRJDriMlVDNQ", + "HRZBzmi--pIW2SbSHQb5jg", + "HRZBzmi--pIW2SbSHQb5jg", + "HRZBzmi--pIW2SbSHQb5jg", + "HRZBzmi--pIW2SbSHQb5jg", + "HRZBzmi--pIW2SbSHQb5jg", + "HRnmOObX7UEhjneXDGbG8g", + "HRnmOObX7UEhjneXDGbG8g", + "HSDGZj0USydZuhfh3oIIfA", + "HSSZPv-Jiv2fPLN9vFx42g", + "HVhQ434ZUWqRQ1_LQX_Xpw", + "HfFlM3axnhO28EteQn-2WA", + "HfFlM3axnhO28EteQn-2WA", + "HfMb4ib8WKiucqC90J7sSw", + "HguOptCva-Qt5LF2U-NJjw", + "HjwmgDoyi_FLJh0vwPhLsQ", + "Hk3kLbfOPknxEv8_LIcXaw", + "Hk3kLbfOPknxEv8_LIcXaw", + "Hk3kLbfOPknxEv8_LIcXaw", + "Hk3kLbfOPknxEv8_LIcXaw", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "HmNoHhoSjlKHYuhVnL7tmg", + "Hm_u4C7nG4SW--AUfPJuGw", + "HmyLhU9RcHRbUlpw2pkosA", + "Hr4PYZ-sL6e-tu-94q7Ycg", + "HrJFw2fNGtSMNrEAC2Z8tA", + "HrTR2HOpYyb-pQjcAKVn-w", + "HrXUpqEQk4VDnpaZKgdbiA", + "Hrhe4gWbxhhQ9c1XsJ2lkQ", + "HroxZ2TATDst6Nm-rIS1Xw", + "Hs84X9WR2gx5bBItVVyJWA", + "HsCaQLZJVi-7tOt5z5xK6g", + "HxVJAZIu3O0jFVqzh80-TA", + "HxwFNv8DwJmuLSpQ419gew", + "HxwFNv8DwJmuLSpQ419gew", + "HxwFNv8DwJmuLSpQ419gew", + "HxwFNv8DwJmuLSpQ419gew", + "HxwFNv8DwJmuLSpQ419gew", + "Hyraq5uNnLhexcfH6jeoJQ", + "HzY1pLcHHo9l4_6glZyDlQ", + "I0QtQ3x5Qtt-qibQRB-qEA", + "I0USoma0OWjdGMGSaTNhgQ", + "I0USoma0OWjdGMGSaTNhgQ", + "I0USoma0OWjdGMGSaTNhgQ", + "I0USoma0OWjdGMGSaTNhgQ", + "I0USoma0OWjdGMGSaTNhgQ", + "I0sQlDh6FUXeNLWFZDQN2w", + "I4bHbdqu4NiomiXC-qdndg", + "I4bHbdqu4NiomiXC-qdndg", + "I4bHbdqu4NiomiXC-qdndg", + "I4bHbdqu4NiomiXC-qdndg", + "I6mzpa6QLzu6Ui05urz3bQ", + "I6mzpa6QLzu6Ui05urz3bQ", + "I90CtZp_BZBH2tSRSUMrrg", + "IAg97-IO-VMg9H1Gj7LBkw", + "IAg97-IO-VMg9H1Gj7LBkw", + "IAg97-IO-VMg9H1Gj7LBkw", + "IAg97-IO-VMg9H1Gj7LBkw", + "IAnIcQ3bOqZLIYVOjvKR0w", + "IBvpxzq2FCdpwwaru_ISGw", + "ID7BrwgJSBosWED19qH1Qg", + "ID7BrwgJSBosWED19qH1Qg", + "ID7BrwgJSBosWED19qH1Qg", + "ID7BrwgJSBosWED19qH1Qg", + "ID7BrwgJSBosWED19qH1Qg", + "ID7BrwgJSBosWED19qH1Qg", + "ID7BrwgJSBosWED19qH1Qg", + "ID7BrwgJSBosWED19qH1Qg", + "ID7BrwgJSBosWED19qH1Qg", + "IG5EpvTeHopVC9IqkA_kSg", + "IG5EpvTeHopVC9IqkA_kSg", + "IG5EpvTeHopVC9IqkA_kSg", + "IHqK6EVdvAYfMHTCbA83Xw", + "IHqK6EVdvAYfMHTCbA83Xw", + "IHqK6EVdvAYfMHTCbA83Xw", + "IIYUCk6IK8gMEU2fn6wnJQ", + "IIfTHMWc7TP15Dc2y8rocw", + "IJwWkOp6ZFrpAuS1jmILqQ", + "INOcODSqL3JdpbkJIMXMVw", + "INOcODSqL3JdpbkJIMXMVw", + "IQfZB-VRGlNehu2EmCzO0w", + "IQfZB-VRGlNehu2EmCzO0w", + "ISo198vJQrYNdynfqzotag", + "ISo198vJQrYNdynfqzotag", + "IVO-RQda5ZeHpRn5q2HynQ", + "IWCarP2Cg-zGilSmP2FwvA", + "IWCarP2Cg-zGilSmP2FwvA", + "IWCarP2Cg-zGilSmP2FwvA", + "IWCarP2Cg-zGilSmP2FwvA", + "IWCarP2Cg-zGilSmP2FwvA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXQQ44cok-T_SndfV84TzA", + "IXplr-54s0Yjdov93QB7eQ", + "IY3kOFBxddrJzoZrzargTA", + "IYxMGZtokcobbdGBrqK_iw", + "IYyFbgqASogbSUNUuP6bUw", + "IYyFbgqASogbSUNUuP6bUw", + "IYyFbgqASogbSUNUuP6bUw", + "IYyFbgqASogbSUNUuP6bUw", + "I_i_3enTR60S4qDgQ3zxCQ", + "I_i_3enTR60S4qDgQ3zxCQ", + "I_i_3enTR60S4qDgQ3zxCQ", + "Iaxtrhqw7QYaF83kiQkybg", + "Iaxtrhqw7QYaF83kiQkybg", + "Iaxtrhqw7QYaF83kiQkybg", + "Iaxtrhqw7QYaF83kiQkybg", + "Iaxtrhqw7QYaF83kiQkybg", + "Id-ripUWhn1V9drGRfOjGQ", + "Ihn5y3aUSH0SbJMgByz2sQ", + "IlQ1XNLSC8AG8SGKzC1MsQ", + "IoeloZzyqdJpjiJWbJ3FlA", + "IpdJ0jKEIlGYoFbGaUItnw", + "Iq0mlN2p-kwJDD_iNJOzpQ", + "IrNa0_xDHM5pQ0IXpPFNIA", + "IrNa0_xDHM5pQ0IXpPFNIA", + "IrNa0_xDHM5pQ0IXpPFNIA", + "IrNa0_xDHM5pQ0IXpPFNIA", + "IrNa0_xDHM5pQ0IXpPFNIA", + "IrNa0_xDHM5pQ0IXpPFNIA", + "IrNa0_xDHM5pQ0IXpPFNIA", + "It3O82Qt-f1-LUtaeKWOtg", + "IwQr5N-zzqzl-VCE4qIkSw", + "Iy5aTLM6jJA23cEgrB0JAw", + "Iy6_S92mK2p0BK8GakLo-w", + "Iz3Q33pJiq_ClAMVOwKorA", + "Iz3Q33pJiq_ClAMVOwKorA", + "IzZjJeBcq6pQk1xgfHWRqw", + "IzZjJeBcq6pQk1xgfHWRqw", + "J4eQqgwFH8hGziiVTbtiYw", + "J4eQqgwFH8hGziiVTbtiYw", + "J4eQqgwFH8hGziiVTbtiYw", + "J4hlCy86cfj7Xf4p4Ah8Uw", + "J5iIW5NrOxoU8Bgf5qpxrA", + "J6u6Y179J4dS1eDE4nIEEw", + "J8ucvlAYlVV3voUZhd041Q", + "J8ucvlAYlVV3voUZhd041Q", + "J919VuiOC4MpabrN9cL2Nw", + "J919VuiOC4MpabrN9cL2Nw", + "J919VuiOC4MpabrN9cL2Nw", + "JBB8Y32Y7T0w9OJCs-3BZw", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JD-mlhc2khMaMvypB7uCow", + "JDeoMDAF4zRp8m9fg1ttGQ", + "JDeoMDAF4zRp8m9fg1ttGQ", + "JDeoMDAF4zRp8m9fg1ttGQ", + "JDeoMDAF4zRp8m9fg1ttGQ", + "JDnO1OdT3mBLtMfsODhVKQ", + "JE27ij9kev0kcTbJ4XEAFA", + "JF1YwU4KTZYHW-s3znxHyQ", + "JGwOKolTKq5VlZEF0AhOww", + "JIJ67u_XI4-jnSyBIeegBA", + "JJwHXTkYed0lpeQhX1-f7A", + "JJwHXTkYed0lpeQhX1-f7A", + "JLnEXoQY4hlx9fukF3_nfg", + "JN-dgFkoqSE-dHBUib5RMA", + "JN-dgFkoqSE-dHBUib5RMA", + "JN-dgFkoqSE-dHBUib5RMA", + "JQLcS-Sow-71hXmB1Wrz2w", + "JQPywLxOZsn4VW068VxtgA", + "JS0BtKRMk3xcaGJmg4uqaA", + "JSGf2yEAEhxiBfW1U6B9Ng", + "JTmH79W37luflHUiTzb1AQ", + "JUqoXh4FCdEByaAYgHthzA", + "JUqoXh4FCdEByaAYgHthzA", + "JYDGNyrxwMciptwAXDUuRw", + "JYDGNyrxwMciptwAXDUuRw", + "JYb5JOqnMPOCcF7fd5apug", + "JYb5JOqnMPOCcF7fd5apug", + "JYe70J6f_R3-V5ur6gAZUA", + "JYe70J6f_R3-V5ur6gAZUA", + "JZ0Ddd6ZLVSO10SfiBFsqA", + "JZr7vBpPHC4DKGbn7mmsGQ", + "JcguT-GkmtJ61-snxPe8uQ", + "JcguT-GkmtJ61-snxPe8uQ", + "JcguT-GkmtJ61-snxPe8uQ", + "Jd5vYukqPDxekGbnpnM_MQ", + "Jd5vYukqPDxekGbnpnM_MQ", + "Jd5vYukqPDxekGbnpnM_MQ", + "Jd5vYukqPDxekGbnpnM_MQ", + "JdCwn38kQFolt808Z0rZSw", + "JdCwn38kQFolt808Z0rZSw", + "JdCwn38kQFolt808Z0rZSw", + "JdCwn38kQFolt808Z0rZSw", + "JdCwn38kQFolt808Z0rZSw", + "JdsVUcUmyn-AMSKnqEmoAg", + "JdzifoogbCc6mi3NTv7Pig", + "JgOxWRVy5Uza4S2l3aZwPQ", + "JgOxWRVy5Uza4S2l3aZwPQ", + "JgOxWRVy5Uza4S2l3aZwPQ", + "JgOxWRVy5Uza4S2l3aZwPQ", + "JgOxWRVy5Uza4S2l3aZwPQ", + "Jiw9vRJF4EkrJZ3CsDEYbA", + "Jiw9vRJF4EkrJZ3CsDEYbA", + "Jj6ja2Wbkf1_R1a9nVWcUA", + "Jlj-_pvqSdlHmJAw2MF6mw", + "Jlj-_pvqSdlHmJAw2MF6mw", + "Jlj-_pvqSdlHmJAw2MF6mw", + "JmNHPBl7DNTU3iu90SpbRw", + "JmUwuALYuz7J8pWH7Gnx7A", + "JmUwuALYuz7J8pWH7Gnx7A", + "JootPmzqoooIzgXdd2xH2A", + "JootPmzqoooIzgXdd2xH2A", + "JqokGYujMWAw4siq0i868w", + "JqokGYujMWAw4siq0i868w", + "Jsaw4aRwbsrSC4mkOwhwQQ", + "Jsaw4aRwbsrSC4mkOwhwQQ", + "Jsaw4aRwbsrSC4mkOwhwQQ", + "JslOyX-wUGFxc5cwIg6Z3w", + "JvETSNUFmQzhSgQRV87p_g", + "JvETSNUFmQzhSgQRV87p_g", + "JvETSNUFmQzhSgQRV87p_g", + "JvScc-kAblhDe3HgLZgGAw", + "JvuA_pbK2wImB5ZWDkJ1sA", + "Jwot1Ipt7neEx_K5t-jm1Q", + "JzNd9DaLcJtE1FJX2lvlEQ", + "JzNd9DaLcJtE1FJX2lvlEQ", + "JzR1Che7ZkqwAcPrDIhJHQ", + "JzU9wwV_m3ow5eBsxMrEkw", + "K-xWzbOpXq--Qycbjj-mDw", + "K24S1jUATvUFIEv3zAUZHg", + "K24cXmv6hkYtqh0gDomB1A", + "K32j1k5JJMGDXqIHMqy_DQ", + "K61z3xaGK-rHqmHBTOYNcw", + "KB0KS3hQ9ShgNXNnOutrBw", + "KCxCvDIXtl0ClBmM3hNiLg", + "KFGBFnajTppUPwKMAfWXvQ", + "KFMAbRw5zGuXuHUM7MdcgA", + "KH5_QfKIKeUIlFImab-3OA", + "KJ37s7EDDJOHBJXAHjrP5g", + "KKci4M_8u3lv7Ydwxf31oQ", + "KLVXRA0aP5RJcNHXSqhKGQ", + "KPkSbIa3FpEsdEGi2AxIeA", + "KQLbwVQkKDdGennGDte8qA", + "KQub_5l0sZDFiW2VPwqmFA", + "KQub_5l0sZDFiW2VPwqmFA", + "KQub_5l0sZDFiW2VPwqmFA", + "KT1k868eD2qQmUzA-ezg2w", + "KWcc74zLQzIOeccSqcd1Dg", + "KWcc74zLQzIOeccSqcd1Dg", + "KWcc74zLQzIOeccSqcd1Dg", + "KWcc74zLQzIOeccSqcd1Dg", + "KXYM0aVJDRSRVOuwZo8XMA", + "KYUKYe5FJokP-mDuLYX4tQ", + "KZ08Ruc2q8aQheuBirtfww", + "KZ4H-fBW3C6Xndni_eSq5Q", + "KZ4H-fBW3C6Xndni_eSq5Q", + "KZ4H-fBW3C6Xndni_eSq5Q", + "KZ4H-fBW3C6Xndni_eSq5Q", + "K_N78LhUkthI1fnHsP1_6g", + "K_N78LhUkthI1fnHsP1_6g", + "K_N78LhUkthI1fnHsP1_6g", + "KaCBdtX4kQh6X2F6ft8urA", + "Kc3Qpigh43lyCXxKBVsfZQ", + "KdC_Mj-l5hZHb-fmCsamaA", + "KdY3pt9yZRo_nmRKTuStSA", + "Kg-p48Ob-pDaS5XUMw0BuQ", + "Kg-p48Ob-pDaS5XUMw0BuQ", + "Khjys_tqUowZalyaQ3fQDA", + "Khjys_tqUowZalyaQ3fQDA", + "KiKQXI5stF5N-InJuXrsjg", + "KiuRpTMprQriC2lNirrb4w", + "KiuRpTMprQriC2lNirrb4w", + "Klyk9qkuDUd4R1FXo4_Cpg", + "Klyk9qkuDUd4R1FXo4_Cpg", + "Klyk9qkuDUd4R1FXo4_Cpg", + "Klyk9qkuDUd4R1FXo4_Cpg", + "Klyk9qkuDUd4R1FXo4_Cpg", + "Kn7ai6R2nHAWrTfNWdUdrg", + "Kn7ai6R2nHAWrTfNWdUdrg", + "Kn7ai6R2nHAWrTfNWdUdrg", + "Kn7ai6R2nHAWrTfNWdUdrg", + "Kn7ai6R2nHAWrTfNWdUdrg", + "Kn7ai6R2nHAWrTfNWdUdrg", + "Kn7ai6R2nHAWrTfNWdUdrg", + "Kn7ai6R2nHAWrTfNWdUdrg", + "Ktm-nkDOWkX2ccJBYdY19Q", + "L-H-2xf4p7cHBKcpauzLWQ", + "L-Yan4Fe1yGb1qGKN4fWZg", + "L-Yan4Fe1yGb1qGKN4fWZg", + "L-qs_NfIroV4qP0e80fCMQ", + "L15jjWwEOMTeauZtyYx75w", + "L1OydAndq8IT7nNSF3yNbA", + "L1TsSv66pa2kBpdVIVNEAw", + "L3BC_TY76W1WekdK_PK3sQ", + "L4Zieid3nVkNJbdYJumC3w", + "L74ZUdfItkQj1FNjlE0GyQ", + "L8R2W0h5kIRkmSOynN7f9A", + "L8zuaonez1SFKD0Z2pjJCg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "L9Bd3XIiGWasJdN8trI5tg", + "LAK76I-B1_Yz983QLnH1Wg", + "LB9eOsHutmp91_cC1dZYGw", + "LD6UzhZ_oYl4ljutvvYPEg", + "LD6UzhZ_oYl4ljutvvYPEg", + "LD6UzhZ_oYl4ljutvvYPEg", + "LD6UzhZ_oYl4ljutvvYPEg", + "LD6UzhZ_oYl4ljutvvYPEg", + "LDzxKitLXg1NPN9Jo9msaA", + "LDzxKitLXg1NPN9Jo9msaA", + "LE9059JushFpT02ldF8LBA", + "LE9059JushFpT02ldF8LBA", + "LE9059JushFpT02ldF8LBA", + "LE9059JushFpT02ldF8LBA", + "LG1iCWXc581Ya7-aKQE_xg", + "LGDqhGuMmpYzX6PMA8Wiyw", + "LJbK_f_ZnLbWcYbyIyxyzg", + "LJbK_f_ZnLbWcYbyIyxyzg", + "LJuheAAsn3wtTorrVTYnTw", + "LJuheAAsn3wtTorrVTYnTw", + "LJuheAAsn3wtTorrVTYnTw", + "LL2AmHorGMGLHFvQ3KWNRA", + "LLIx3z8GAHtBLc7C_miK_w", + "LLIx3z8GAHtBLc7C_miK_w", + "LLIx3z8GAHtBLc7C_miK_w", + "LLIx3z8GAHtBLc7C_miK_w", + "LLIx3z8GAHtBLc7C_miK_w", + "LNiGyjoSSwLd2vmEwDcgqQ", + "LNiGyjoSSwLd2vmEwDcgqQ", + "LO0kqCJ5sLnPx_SwGJYFEQ", + "LOO7StXh6esxEXuTjm8T0g", + "LOO7StXh6esxEXuTjm8T0g", + "LOPIUumYsiogVvRsdSkRxw", + "LPlt4oo-IpHI2h8d_e_PDQ", + "LPlt4oo-IpHI2h8d_e_PDQ", + "LQDSx6vga0zDZ5JbsP5kmg", + "LQNvdk2rwKFliFR4T-Rauw", + "LRnop9vMb-AhS9R35Ojpow", + "LS1R7UgyIEin1lhHxRFFXw", + "LS1R7UgyIEin1lhHxRFFXw", + "LT5lr845yiJBLJcYHx5FbQ", + "LT5lr845yiJBLJcYHx5FbQ", + "LT5lr845yiJBLJcYHx5FbQ", + "LT5lr845yiJBLJcYHx5FbQ", + "LT5lr845yiJBLJcYHx5FbQ", + "LT5lr845yiJBLJcYHx5FbQ", + "LU9XPWYPC7EDhPUHuUV0Hg", + "LUc8giwpRnW-thOUnKqKcg", + "LWN9jIx2nEE6yZjMuaDPaw", + "LWN9jIx2nEE6yZjMuaDPaw", + "LWN9jIx2nEE6yZjMuaDPaw", + "LWN9jIx2nEE6yZjMuaDPaw", + "LWN9jIx2nEE6yZjMuaDPaw", + "LWN9jIx2nEE6yZjMuaDPaw", + "LWxbmjqw9fP9oqHxogAn9g", + "LWxbmjqw9fP9oqHxogAn9g", + "LY7tgvqAn-qe9CkDVBt8XQ", + "LYJWnM2aEBeu4YzFbSHmgA", + "LZh55WiQA4pYUO2PyDs0LQ", + "LZh55WiQA4pYUO2PyDs0LQ", + "LaFl4epk0Q6S_D_8elQACw", + "LaFl4epk0Q6S_D_8elQACw", + "LaiexfPkXQfAGZNqswq44g", + "LbtJPgD2DsxuaRUZZI3jKQ", + "LbtJPgD2DsxuaRUZZI3jKQ", + "LbtJPgD2DsxuaRUZZI3jKQ", + "LbtJPgD2DsxuaRUZZI3jKQ", + "LbtJPgD2DsxuaRUZZI3jKQ", + "LbtJPgD2DsxuaRUZZI3jKQ", + "LbtJPgD2DsxuaRUZZI3jKQ", + "LbtJPgD2DsxuaRUZZI3jKQ", + "Lcui3wqgG5J4MV3ON_Xv2g", + "LiaLGbucpqFQXncldF_Y7g", + "Lk-RuZWBbgkFTkFM8r-0pg", + "Lk5CiyX7v99dORWhD5rxWQ", + "Lll_E1k3FfR43EQBXwU1dg", + "Lo1bd7PttsuTzFjX2oW5lg", + "LrT96WuiUXgKg4BgtAP98w", + "LsrK9E-EO_ynQk-yDhFFiQ", + "LsrK9E-EO_ynQk-yDhFFiQ", + "LsrK9E-EO_ynQk-yDhFFiQ", + "Lu4BbYQNxvrnJvSur5jWAA", + "LvtElIo88ojEB4JNcfwHbA", + "LzfLWbRa1RV_hc6RWQwjdQ", + "M-5SaQQW4M2ZK-t2dL_K0g", + "M-l0IodVUrBpenUEnOhL1Q", + "M-sXhvfna68VyqP_ipf--w", + "M09XeJtIuzWFgRLBSCNdGw", + "M09XeJtIuzWFgRLBSCNdGw", + "M0HUcJIYlVV3vofrnZA_EQ", + "M0HUcJIYlVV3vofrnZA_EQ", + "M0HUcJIYlVV3vofrnZA_EQ", + "M123ooeMvaMWHcBRAZSRjg", + "M1U5MRplArg1qeEAEk5MlA", + "M2N-LLw_gbVN-r7m25mjxQ", + "M2N-LLw_gbVN-r7m25mjxQ", + "M4kfuweTCRjkzuYcFSqUsw", + "M4kfuweTCRjkzuYcFSqUsw", + "M4kfuweTCRjkzuYcFSqUsw", + "M4kfuweTCRjkzuYcFSqUsw", + "M4kfuweTCRjkzuYcFSqUsw", + "M4kfuweTCRjkzuYcFSqUsw", + "M4kfuweTCRjkzuYcFSqUsw", + "M4kfuweTCRjkzuYcFSqUsw", + "M4kfuweTCRjkzuYcFSqUsw", + "M4kfuweTCRjkzuYcFSqUsw", + "M4kfuweTCRjkzuYcFSqUsw", + "M4kfuweTCRjkzuYcFSqUsw", + "M5dg018SyR5wq8ziifZ2mQ", + "M7vNoJf6UqNhbFs2k-N8eg", + "M9Xltn711KKFcrKCAYh_Zg", + "M9t3sX7Z2Nj1mpARCDGcaw", + "M9t3sX7Z2Nj1mpARCDGcaw", + "MAV03uVftX-j0VYOYLhjMA", + "MAV03uVftX-j0VYOYLhjMA", + "MAV03uVftX-j0VYOYLhjMA", + "MDjyE5AlqASoc6cxfe5K2w", + "MDjyE5AlqASoc6cxfe5K2w", + "MFna6GF40zYSy1dmTg0DBA", + "MFqyYyMA6QeOFwV5IC1VmQ", + "MFqyYyMA6QeOFwV5IC1VmQ", + "MFqyYyMA6QeOFwV5IC1VmQ", + "MFqyYyMA6QeOFwV5IC1VmQ", + "MFqyYyMA6QeOFwV5IC1VmQ", + "MG9kooBy0Epoo1ZX3kuRmA", + "MHOHZ9dur_p0OUPsIclbdw", + "MIoZ_QqnU4D7k02YmLIdSw", + "MKYZBkjibLy9f0ZOhg2iJQ", + "ML0pN8-bI2jezXitVRzNNg", + "MMS0RO7cVprhLjJ-ErmFbA", + "MOgPAaY2At24Q0nLro4PXg", + "MP5HRDaDTxfL7AK376UJ7g", + "MRWXwWKl_fPnxgwH09TqSw", + "MRWXwWKl_fPnxgwH09TqSw", + "MRu1fZfkmxZ6Mbp7TQiIgA", + "MVq8YmAwgBj5NPTL5fNTvQ", + "MVq8YmAwgBj5NPTL5fNTvQ", + "MVq8YmAwgBj5NPTL5fNTvQ", + "MWF-ta49FweBhvwuhsiFKw", + "MWF-ta49FweBhvwuhsiFKw", + "MWF-ta49FweBhvwuhsiFKw", + "MWF-ta49FweBhvwuhsiFKw", + "MWoDBcMPHdoRgqigdmrdNw", + "MWoDBcMPHdoRgqigdmrdNw", + "Mb2_4IzFmsZu_sknCLXxAw", + "MbWvdU9Gsml4RhNka2lJ7w", + "MbWvdU9Gsml4RhNka2lJ7w", + "Mb_Jdpw0erVZ6fHR2qcsCg", + "Mb_Jdpw0erVZ6fHR2qcsCg", + "Mb_Jdpw0erVZ6fHR2qcsCg", + "Mb_Jdpw0erVZ6fHR2qcsCg", + "Mb_Jdpw0erVZ6fHR2qcsCg", + "Mb_Jdpw0erVZ6fHR2qcsCg", + "Mb_Jdpw0erVZ6fHR2qcsCg", + "Mb_Jdpw0erVZ6fHR2qcsCg", + "Mb_Jdpw0erVZ6fHR2qcsCg", + "MbaOnaCMmj3Z2Dka8DRidw", + "McOo9SSCfgqj14t3xDm01g", + "McOo9SSCfgqj14t3xDm01g", + "MdMo4LAHA-xUI6S7kmKPeQ", + "Mj1fVO3bykQ8piLrLc5IFQ", + "Mj1fVO3bykQ8piLrLc5IFQ", + "MjWXlV4UHIC8t2yCFMu9sQ", + "Mjtyswsr5RSXvAnPmILipA", + "Mjtyswsr5RSXvAnPmILipA", + "Mjtyswsr5RSXvAnPmILipA", + "MkPOQzkxpTZfvC1z0rAMgA", + "MkPOQzkxpTZfvC1z0rAMgA", + "MkdIM5v2AdjytK2Wcn6wZw", + "MkmisheVP0DaTeF1Tgq6Bw", + "MkmisheVP0DaTeF1Tgq6Bw", + "MloxjkGrc98a8yNAf_i6HA", + "MlyHaLRJGNn2Vpy3WSPy_Q", + "MlyHaLRJGNn2Vpy3WSPy_Q", + "MlyHaLRJGNn2Vpy3WSPy_Q", + "MlyHaLRJGNn2Vpy3WSPy_Q", + "MlyHaLRJGNn2Vpy3WSPy_Q", + "MlyHaLRJGNn2Vpy3WSPy_Q", + "MlyHaLRJGNn2Vpy3WSPy_Q", + "MlyHaLRJGNn2Vpy3WSPy_Q", + "MlyHaLRJGNn2Vpy3WSPy_Q", + "Mo0G3Ryin3OSJJlsa04N6w", + "Mo8MRZcTTA5MSH5mIc8c7w", + "MsK4Bwxs_uq10wCeumAdWQ", + "MsLhtgluwqlsWifr9EhIqw", + "Mt1DHzo1jNsmWdnQq5kJYw", + "MtOOCUl9OwNOIdQuDgKbNw", + "MtOOCUl9OwNOIdQuDgKbNw", + "MwojP6II8_EGiMNSmdsFxA", + "MxRnrnRp5fRRlUEkyuK1rQ", + "MxRnrnRp5fRRlUEkyuK1rQ", + "N-5WHXYOZdweEq4mLHyhqQ", + "N0nOeOJdjggSFx_cpb47eg", + "N1xfNXt_cEW2sMA8rTIs2g", + "N2e_V1FnhaoAEo890khZ-Q", + "N2e_V1FnhaoAEo890khZ-Q", + "N2e_V1FnhaoAEo890khZ-Q", + "N2e_V1FnhaoAEo890khZ-Q", + "N3iNjVmP1b90Y_Au3khyRA", + "NADamcz6VgHxdsqQ-H3gJw", + "NADamcz6VgHxdsqQ-H3gJw", + "NADamcz6VgHxdsqQ-H3gJw", + "NADamcz6VgHxdsqQ-H3gJw", + "NADamcz6VgHxdsqQ-H3gJw", + "NB3KICW80r4krIyGFXIJIg", + "NB3KICW80r4krIyGFXIJIg", + "NB9Wtr18BllcC8telVa6ew", + "NB9Wtr18BllcC8telVa6ew", + "NCAjj9ga_oZwZ7NBAV35jQ", + "NClnX-WugtIozBMJf4sI2A", + "ND1081BRZFYaMVgvbwz-GQ", + "ND1081BRZFYaMVgvbwz-GQ", + "NDiNPs2SIuj4NddpL8knJA", + "NDiNPs2SIuj4NddpL8knJA", + "NDiNPs2SIuj4NddpL8knJA", + "NDooAL42lwdUmpc4-AfzaQ", + "NFoti7zeivEyGvfQ3_ANTg", + "NH411-U9ZJbhx9KntPIOtA", + "NH411-U9ZJbhx9KntPIOtA", + "NK6q-mYZhWe1E7afoKkwiQ", + "NMPX1MdtzuRZ2k27VY7qAQ", + "NP8XT_pS7hy5hCFdTj7Xug", + "NPdl2RqRn8ZDbCNkrCXA1w", + "NXOSw4mIaCiqE3IVDLF5_g", + "NZ-mE8VVtYwQj1lueb0ovw", + "N_pUSQ-9lnubUvA5GPAV8A", + "NbNyidoHgMTa3gT2GreFIQ", + "Nc9gj1rv2NerZVTmjxTx9A", + "Nc9gj1rv2NerZVTmjxTx9A", + "Nc9gj1rv2NerZVTmjxTx9A", + "NcIQR2c5Ob8K5vbpAkilyg", + "NdnOauNqYT-cKE84qEP2jw", + "NdnOauNqYT-cKE84qEP2jw", + "Ng5XaeoBUnLdWeaVrR6Ctw", + "Ng5XaeoBUnLdWeaVrR6Ctw", + "Ng5XaeoBUnLdWeaVrR6Ctw", + "Nku1oPInJYwCIRLCUxYLuw", + "NleCed7iD5lY9FUQABqcFQ", + "NleCed7iD5lY9FUQABqcFQ", + "NmbHbA3eVfi3WhtJhVBi0w", + "NnsXqH-CVYMwVp_zbU78aQ", + "NoHYPrTZmPNoSjD2lRtEvA", + "NrikprALerrSkH1iKFm6zQ", + "NrvcSCGNEuayQcoP_4CXWQ", + "NuqcOqANutL4nD8JjGfmlw", + "NvzmWU9s6Ykk7vrfIyWaJw", + "NvzmWU9s6Ykk7vrfIyWaJw", + "NvzmWU9s6Ykk7vrfIyWaJw", + "NvzmWU9s6Ykk7vrfIyWaJw", + "NyFYG970OiNszXfRwkg2Ow", + "O0QBRq09v03gOY7wcqwe-Q", + "O0QBRq09v03gOY7wcqwe-Q", + "O0jF3TifKLShZDrS9YtGjg", + "O29IY8DvMWbkQBgldupHTQ", + "O3ydWmZnkgpNJ9lZa3PxSw", + "O4PeelD0hmR0yiXQpUt-BA", + "O4XFBmuHlVXJh4TIk5LCDA", + "O5U6U5WhZze-OA0bZxv4kQ", + "O6j-APvwgdAIUIKMPStK3g", + "O6j-APvwgdAIUIKMPStK3g", + "O9_JyaRKYBdkJrY8OUa6ig", + "OBr97qUzqwJUSLJ5h_ag7Q", + "OCBJ3b0yd0m46kgQppcopw", + "OD4desBFovJswG9NmeTHjQ", + "OD88rfBmy4BfCXerLT5e5Q", + "OGothoSS_VGQxhefQGBOog", + "OHrN2X11En4TANmmvWeSsg", + "OHrN2X11En4TANmmvWeSsg", + "OI-IULopKcZX-PRLno1wGA", + "OKEtUix2HJWtvCrDrfheVw", + "OKXE0TsqEsNxLqr0g-oK6Q", + "OMI6Q27dkZQjRDWwoDM78Q", + "OMI6Q27dkZQjRDWwoDM78Q", + "OMI6Q27dkZQjRDWwoDM78Q", + "OMI6Q27dkZQjRDWwoDM78Q", + "OMI6Q27dkZQjRDWwoDM78Q", + "OMI6Q27dkZQjRDWwoDM78Q", + "OMI6Q27dkZQjRDWwoDM78Q", + "OMI6Q27dkZQjRDWwoDM78Q", + "OMI6Q27dkZQjRDWwoDM78Q", + "OMI6Q27dkZQjRDWwoDM78Q", + "OMI6Q27dkZQjRDWwoDM78Q", + "OMI6Q27dkZQjRDWwoDM78Q", + "OMiVtBlQQcibD2YBJFlM2A", + "ONnGxKE-Oac3NFLO-8Lg0A", + "OO0_eHsUuWmfI8_EJEDpgA", + "OO0_eHsUuWmfI8_EJEDpgA", + "OO0_eHsUuWmfI8_EJEDpgA", + "OO0_eHsUuWmfI8_EJEDpgA", + "OO0_eHsUuWmfI8_EJEDpgA", + "OO0_eHsUuWmfI8_EJEDpgA", + "OO0_eHsUuWmfI8_EJEDpgA", + "OOfgbFUyyyBf7NiIDQweHA", + "OPiEm7T39rpNQ5ImKH3G-Q", + "OSzs0d7UDW14kdDxEUjZrQ", + "OUV_Man7LKpLI_xXeAvtgA", + "OU_VydMIAviE7nI4-Op03Q", + "OV_sHpaFWNyJHZUPjS8VxA", + "OV_sHpaFWNyJHZUPjS8VxA", + "OWoia3OO91L6Q6k2Ypn2Xg", + "OXXUWi3HnGXyNYANATzbXg", + "OZxONNyjsCoLhus8PcYThQ", + "Oa5CkhVOrx2r2YkOsLGOZw", + "Oa5CkhVOrx2r2YkOsLGOZw", + "OafCgr0hD4E9T0qIcmaEvA", + "ObAvGYfNoTxUAvTLvbdSSg", + "OcVENYdBUHkmXadCZbxMcQ", + "OcWbb-q1xN2Vf27YY6_pjQ", + "OfKlbKqoKpVidKq-tTe4JQ", + "OfxH2vk7SslvcgrXWFxmEA", + "OfxH2vk7SslvcgrXWFxmEA", + "OfxH2vk7SslvcgrXWFxmEA", + "OgXCZlr_5lhpTZQoSrxsMQ", + "OgepeYBdrKmAGikZZHzjyw", + "OgrnocamUAo62UJ-c4BU1g", + "OhagOqtTZKJX4CiHYdPxlA", + "OjvPQ5fmr7USI7dgYlFDbg", + "OjvPQ5fmr7USI7dgYlFDbg", + "OmCg7LeKFCxsCaIeFo50SA", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "OmzVUgwY22EPoqShuZpT1w", + "Oo-Jar91HBUDrbCvN4Mq1A", + "Oo-Jar91HBUDrbCvN4Mq1A", + "Oo-Jar91HBUDrbCvN4Mq1A", + "OoSbzwyzFhV1hlFGUdDRow", + "OqAQCuAGfY3TOkkaJwPNYA", + "OsLUWl8iegUfkov5V9GtpA", + "OsLUWl8iegUfkov5V9GtpA", + "OsLUWl8iegUfkov5V9GtpA", + "OsLUWl8iegUfkov5V9GtpA", + "OsLUWl8iegUfkov5V9GtpA", + "OsLUWl8iegUfkov5V9GtpA", + "OsLUWl8iegUfkov5V9GtpA", + "OsLUWl8iegUfkov5V9GtpA", + "OsLUWl8iegUfkov5V9GtpA", + "OsLUWl8iegUfkov5V9GtpA", + "Ot0HsYHQPmkwmtZkyeI5MQ", + "Ot0HsYHQPmkwmtZkyeI5MQ", + "OtlZl4diRpDtcAsn79Ixmg", + "OtlZl4diRpDtcAsn79Ixmg", + "OxMbWV9bPPvg1__T5-kzDA", + "OzkHkS17HRu8c3H4oJbrdw", + "P0aMnnZjQkFuYV4Xte8MUg", + "P0aMnnZjQkFuYV4Xte8MUg", + "P0aMnnZjQkFuYV4Xte8MUg", + "P0aMnnZjQkFuYV4Xte8MUg", + "P0aMnnZjQkFuYV4Xte8MUg", + "P39cIawm-GXmvXDrjAf_kQ", + "P4GPMHTkL-nFkTmhovUcVg", + "P4GPMHTkL-nFkTmhovUcVg", + "P4g4_9BzHxlC4xn_CE268w", + "P85-ZHhT2OrY2C13tzUCcg", + "P85-ZHhT2OrY2C13tzUCcg", + "P8XeEpnP5-7OC7qQMco_kQ", + "P9BGxoNfJ5xFs47cHe23_g", + "PBL2-ArIjOWnatSlw0vhzg", + "PC7g5B1i9o9S-ujXLSZgkQ", + "PDxaYxBC-l8PtK0orl2RQw", + "PEbpT_8Xljn7u1j5oJzfHQ", + "PEbpT_8Xljn7u1j5oJzfHQ", + "PEbpT_8Xljn7u1j5oJzfHQ", + "PEbpT_8Xljn7u1j5oJzfHQ", + "PF46WYS52oqKW28TVdZwhw", + "PF46WYS52oqKW28TVdZwhw", + "PF46WYS52oqKW28TVdZwhw", + "PF46WYS52oqKW28TVdZwhw", + "PF46WYS52oqKW28TVdZwhw", + "PHkw6KCW6WHcDhD0gWZvxQ", + "PJJRZpwO2yOVyjUgLVVt-Q", + "PJJRZpwO2yOVyjUgLVVt-Q", + "PJJRZpwO2yOVyjUgLVVt-Q", + "PK3ZQtl9-hPr3sHt9CgXkg", + "PK3ZQtl9-hPr3sHt9CgXkg", + "PK3ZQtl9-hPr3sHt9CgXkg", + "PKRF4wJDKb2Ir_7zmBYzag", + "PKRF4wJDKb2Ir_7zmBYzag", + "PKRF4wJDKb2Ir_7zmBYzag", + "PKRF4wJDKb2Ir_7zmBYzag", + "PNgCVJJ6Nao1ZxcdhLCbWg", + "PNgCVJJ6Nao1ZxcdhLCbWg", + "PNgCVJJ6Nao1ZxcdhLCbWg", + "PNgCVJJ6Nao1ZxcdhLCbWg", + "PPvCYyu5yFBBY965mL2tSw", + "PRXUWbsXb_Cr4ULsTgUKMw", + "PRgslp-mhiA259jp7eDUDA", + "PTytLEfKUZaVfTsnhaM7Gg", + "PY94Ez-AShf7eTbyN8Kgtw", + "P_-wvKocvBVnuoJ9__YUKg", + "P_4qycvxHBZREHniLmgHbA", + "P_qKgj6OkmYBLfen5yPH6A", + "PbXXr1ohgiKjdKmG8bXqXA", + "Pbg3bxycAbj268bN7ebHNQ", + "Pbg3bxycAbj268bN7ebHNQ", + "Pd-omTG6uuGgCAgh--t7dQ", + "PhHweSUk-rcHLCvi4mySwg", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PiOrKx8ttRLABiq6GioeqA", + "PlE8FXr5PelWy7FpXlhElA", + "Pm0heKLQECP0z9aACcjoRA", + "Pm8yvojd4enECfI_5pXoCA", + "PqkKpz2WDphJH5ROhuDMyA", + "PqkKpz2WDphJH5ROhuDMyA", + "PrNII2l46oclr0RXWTYMUA", + "PtVMQQcIleOLw4oEyd-xxw", + "PuFP7RNQb9YY5U8l_TZq4Q", + "PuFP7RNQb9YY5U8l_TZq4Q", + "PuFP7RNQb9YY5U8l_TZq4Q", + "PvVAoy_BDzwgpFCDZC3hTg", + "PvsuEs2c6C6ecuTF-xQOfQ", + "Pwt7pP-aI82aWD0sQr02aw", + "Pwt7pP-aI82aWD0sQr02aw", + "Pwt7pP-aI82aWD0sQr02aw", + "PyY6qsH4ByVjV1tK07pF9A", + "PzWHHZtoztKt5-_1UqSECA", + "Q1b7jdbtxavHFLXq_nCrrg", + "Q3EmxWpEBbNOkdZOwR46OQ", + "Q3EmxWpEBbNOkdZOwR46OQ", + "Q490KBNtb0llAbQcXfbmJQ", + "Q5prAre2OuRCakrlnLYmSw", + "Q664u2_E3_pA1LoHw-VWiQ", + "Q6_txoGw_guH_gJuuKUkJg", + "Q6pbXB8sXS8CRivI5IuPxA", + "Q9iVqOAjuUhPCVXdqyfA4w", + "QDJovm1V52QtGTryZ9-WtQ", + "QDJovm1V52QtGTryZ9-WtQ", + "QE1C6oZLYffge09QUEmCwQ", + "QEcHhqXCi5-qkJh0R6a7kg", + "QEcHhqXCi5-qkJh0R6a7kg", + "QEcHhqXCi5-qkJh0R6a7kg", + "QEcHhqXCi5-qkJh0R6a7kg", + "QF0gmeIjjmTZUhdMFgr_4A", + "QHGalGwq4QEL0pNo89eL_Q", + "QJ-JVADSuuonf59sOKCy_w", + "QKRyqWZIJ5_z0G07UwBzeA", + "QKXbkKgbO161p-cpBhN6hw", + "QKXbkKgbO161p-cpBhN6hw", + "QMO0tOc9LHhoVe-iumAfmw", + "QN3Ei4y0jjQeG3JY3Goqzg", + "QN3Ei4y0jjQeG3JY3Goqzg", + "QN4Q0wqGRE_9JxLmhmELww", + "QNJBtmDNiP_chGYXJszyag", + "QO3p3TG-d9_GDkJGiXDItQ", + "QQ2lAZv13mszaKUGCAlxZA", + "QQDDEPD_HEBkG6z3nPfSNQ", + "QQdm725dN4gfQaI1Q2V-1w", + "QQh0H_R0519E6LNe78VmDw", + "QR0Rwo9WQpPJ5JxFAcpyCg", + "QR0Rwo9WQpPJ5JxFAcpyCg", + "QRLEHBaKoaTG7nEoPkKciQ", + "QTOrQSYTYRh-yjbunkD12Q", + "QTOrQSYTYRh-yjbunkD12Q", + "QTk6i4kGz-zDlc1CgyBszA", + "QUM3v4ew-jMVuKkpISsPEA", + "QVC0RcYLxpeBExTj5_6BpA", + "QVg0XAOEbp3JKK1NFLqVYQ", + "QYlZyOUPnWBrleZpFunFJQ", + "QZsHYw-ADMXvukPIf-hnuw", + "QZucZeLQwMr7zKD51abCrw", + "Q_fTsiDQn3AwPFHRHJfE6Q", + "Q_fTsiDQn3AwPFHRHJfE6Q", + "QaVgyqdSKxBGbM75xg0o_g", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QdDbt6jPoesjGKs7ZNgvIA", + "QgvGkTCGw4jVdmztyjCs0w", + "QiTo58FObDGDVxhW5ylvXw", + "QjcJgCUAsytsXGSmYCNuVg", + "QjcJgCUAsytsXGSmYCNuVg", + "QjcJgCUAsytsXGSmYCNuVg", + "QjcJgCUAsytsXGSmYCNuVg", + "QjcJgCUAsytsXGSmYCNuVg", + "QjcJgCUAsytsXGSmYCNuVg", + "QjcJgCUAsytsXGSmYCNuVg", + "QjcJgCUAsytsXGSmYCNuVg", + "QnmyhEe5Bxx-e8-BvuOf-w", + "QpPozMwT9u3zC7nVdlyVMQ", + "QpbAWxlPpoqksDcSufT1vw", + "QsYPvVY-RhG369aX-1lxEA", + "QtMelJKn2GMpVgIdbCShVA", + "QtMelJKn2GMpVgIdbCShVA", + "QtMelJKn2GMpVgIdbCShVA", + "QunNj1oMDkHtmA3AacNPUA", + "QvRQT4coI-PzIgrx5HI5cA", + "Qx5b3IPW0UBs9KCWRFhqvw", + "QxTPNhFsgl-8e8i61Q7phQ", + "R-5D09eZM_0UfWInzOtpGA", + "R-5D09eZM_0UfWInzOtpGA", + "R50j_Fakx0mSC9-4NdTEsg", + "R5ajxJeWxN1RRKqFpaiD0g", + "R683kTk6tW8OrTWlS02nkw", + "R71vwc9Gh9GvdvgaspSkvw", + "R71vwc9Gh9GvdvgaspSkvw", + "R71vwc9Gh9GvdvgaspSkvw", + "R71vwc9Gh9GvdvgaspSkvw", + "R8J-NKdRXmfXHHCKNIVxpA", + "R8XqrHwsSbyUWtEys51Fcw", + "RA0eMPP8ZpAprwovmWh-MQ", + "RAiSaKhtr8sKQyEQrLjoKA", + "RAiSaKhtr8sKQyEQrLjoKA", + "RC_KrztF4TVSedblwPXAsg", + "RDUlHuKsTp7QEeT-4CTKNA", + "RE9XcD6w8sLmd64StWro7A", + "RHCo9S6JLvJhQuHnIgHq_A", + "RIm8jbjeC3SfOmyAcdCaLg", + "RJDxTVlP24il9iEEPCo5Zw", + "RJDxTVlP24il9iEEPCo5Zw", + "RJXjPkp22gaQo9vwY-85JA", + "RJXjPkp22gaQo9vwY-85JA", + "RJXjPkp22gaQo9vwY-85JA", + "RK8a3DzcZMuwoK9TpGXQTw", + "RNJevAy8zHjPqvqq_9wz6g", + "RPFiojmndeu_4nmb3OGehA", + "RPFiojmndeu_4nmb3OGehA", + "RSgrZm24iCMR6dfllqWutA", + "RSgrZm24iCMR6dfllqWutA", + "RWzenT1WkhswQWbfG0kxvw", + "RXmMEZ6O1OxzfD_HMxPVPg", + "RZMfsbKLC34Px2zwyEaSpA", + "R_3RsDYccfUxjNYYah3JZg", + "R_3RsDYccfUxjNYYah3JZg", + "R_3RsDYccfUxjNYYah3JZg", + "RaO3rK5YZuozQ0qHYsOXMQ", + "RansKhQujRxHOcRvt3EF6Q", + "Rb5ObrmWUJbOO1wFU20z4A", + "Rb5ObrmWUJbOO1wFU20z4A", + "RbfURDrLhSRLfAvNZi9cCg", + "RbfURDrLhSRLfAvNZi9cCg", + "RbfURDrLhSRLfAvNZi9cCg", + "ReecyGgWWJgzc543tXNeIA", + "RfwCDAkybtrSMQru6GZd7A", + "RfwCDAkybtrSMQru6GZd7A", + "RfwCDAkybtrSMQru6GZd7A", + "RiyaDZWrYoZ_Qv7vfT5xiQ", + "RiyaDZWrYoZ_Qv7vfT5xiQ", + "RiyaDZWrYoZ_Qv7vfT5xiQ", + "RiyaDZWrYoZ_Qv7vfT5xiQ", + "Rlevsb4n_7FYgGFsfkD1Qg", + "Ro0xTS_XLS48c7gOvsUW-Q", + "RpSDTug63es5x1j9yGrZyA", + "RrXasmojz0ojjKVFAz-esw", + "RrXasmojz0ojjKVFAz-esw", + "RrXasmojz0ojjKVFAz-esw", + "RrXasmojz0ojjKVFAz-esw", + "RrXasmojz0ojjKVFAz-esw", + "RrXasmojz0ojjKVFAz-esw", + "RrXasmojz0ojjKVFAz-esw", + "RrXasmojz0ojjKVFAz-esw", + "RrXasmojz0ojjKVFAz-esw", + "RrXasmojz0ojjKVFAz-esw", + "RrXasmojz0ojjKVFAz-esw", + "RrXasmojz0ojjKVFAz-esw", + "RrXasmojz0ojjKVFAz-esw", + "RrirhtozDrKAAydohpmvZg", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsqyK_7VyS32TvNIVPkv2Q", + "RsvOFqC3SNzn_pRUkwD1yQ", + "RuTViGJ9Pf477gXsTgiYyQ", + "RuTViGJ9Pf477gXsTgiYyQ", + "RuTViGJ9Pf477gXsTgiYyQ", + "RvgpC2THNLDZ9bIizRZhbw", + "RvgpC2THNLDZ9bIizRZhbw", + "RvgpC2THNLDZ9bIizRZhbw", + "RwOT5knpVM2c7mDKFGRRsg", + "Rxqe_zQBj7bxcQClfMPGZw", + "S-bF0OQ5zu714NI9jV1-DQ", + "S0Vcinvs4UXd1rhNSjovpw", + "S0Xp2_3vk0PCR7xQ7YS7IQ", + "S0Xp2_3vk0PCR7xQ7YS7IQ", + "S1uuSZZhWt70eL-Gyep_Rw", + "S1uuSZZhWt70eL-Gyep_Rw", + "S1uuSZZhWt70eL-Gyep_Rw", + "S1uuSZZhWt70eL-Gyep_Rw", + "S4pDMZQIDu6mVxa95R8FGQ", + "S5BR2ueGoaAxkLIj_xT88A", + "S5FLyxJzArwdyTGdAwNyNA", + "S5FLyxJzArwdyTGdAwNyNA", + "S5FLyxJzArwdyTGdAwNyNA", + "S5GNJ7rsUeVGePG_6A8S8g", + "S6pxO_hq-Fbi17BT1HtIiA", + "S75DkUYHGa18F1kYhZ0XYw", + "S75DkUYHGa18F1kYhZ0XYw", + "S75DkUYHGa18F1kYhZ0XYw", + "S75DkUYHGa18F1kYhZ0XYw", + "S75DkUYHGa18F1kYhZ0XYw", + "SAAkutGejeRImCZXeWZ-1w", + "SAAkutGejeRImCZXeWZ-1w", + "SAcr2k56H-0uXVdYyC2m8A", + "SAcr2k56H-0uXVdYyC2m8A", + "SEAz2xfqrNiGYU5T_aIXXg", + "SEAz2xfqrNiGYU5T_aIXXg", + "SEJ4L9rNkUfC0VWzNbUViw", + "SEJ4L9rNkUfC0VWzNbUViw", + "SEJ4L9rNkUfC0VWzNbUViw", + "SEJ4L9rNkUfC0VWzNbUViw", + "SLTycpvJcvZvKONGc1TOvg", + "SLTycpvJcvZvKONGc1TOvg", + "SLTycpvJcvZvKONGc1TOvg", + "SLTycpvJcvZvKONGc1TOvg", + "SLm5iQaRU0eNqFhBMIrYxg", + "SM_ELHsuqjmdLWLHOp2Jxw", + "SMh8IRbQlufFRqUZ5FoaFQ", + "SMh8IRbQlufFRqUZ5FoaFQ", + "SMh8IRbQlufFRqUZ5FoaFQ", + "SMh8IRbQlufFRqUZ5FoaFQ", + "SMh8IRbQlufFRqUZ5FoaFQ", + "SMh8IRbQlufFRqUZ5FoaFQ", + "SMh8IRbQlufFRqUZ5FoaFQ", + "SMooaRB4Ix5PbbJFOeJy_A", + "SMooaRB4Ix5PbbJFOeJy_A", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SNDzWiYDmLZi_Z1ZVETLoA", + "SQjdgx2wqIxyPHp2kbwpQQ", + "SU7fNzMC3NazhQDT5xGXYg", + "SU7fNzMC3NazhQDT5xGXYg", + "SVYBVG1fCfTODpNzLfPxlQ", + "SVqTovndX3vgWwiNPDrUZA", + "SVqTovndX3vgWwiNPDrUZA", + "SVqTovndX3vgWwiNPDrUZA", + "SVqTovndX3vgWwiNPDrUZA", + "SVqTovndX3vgWwiNPDrUZA", + "SVqTovndX3vgWwiNPDrUZA", + "SXFZShc93P7Br4wzVi_TSw", + "SZD9YVGYcY6t7-F09t_klg", + "SZIzrSBBPBO2zJj0aqaKgg", + "SZIzrSBBPBO2zJj0aqaKgg", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "SZxl-YF9wOaedogsBMtvRA", + "S_GmAS-sCtPOI6egY6LXiw", + "SbAJldcfVqhtzBLuTqZe6A", + "SbaWcO00B2zTHJCaL1t-KA", + "SbaWcO00B2zTHJCaL1t-KA", + "Sc-7DBv3SRDl6MaEnNIV4Q", + "SeV4KhxoLTaZZsVPppSmnQ", + "SfB-oeBcWpraHjBGdigjZQ", + "SfqBjqw_vTWkpaOh9_lnyQ", + "SiQqkZi_PQebtsnQ4dVCJQ", + "SiQqkZi_PQebtsnQ4dVCJQ", + "SiQqkZi_PQebtsnQ4dVCJQ", + "Sidn5oJ7A2M_efsiHDz05Q", + "Sjz2MvPusgDd7v_6YUXcPA", + "Sl8QmNBWhfPFBDZ-zT5ceg", + "Slb8MNVKIFfE9HJqtN3Bhw", + "Slb8MNVKIFfE9HJqtN3Bhw", + "Slb8MNVKIFfE9HJqtN3Bhw", + "SnLBK6Bu4vJyynj2PkjFiQ", + "SnuscF0tbXb_zlnank6kxw", + "SnuscF0tbXb_zlnank6kxw", + "So3FGd7WJjIO_5ktfF2gpQ", + "SrXvEyw1lhWwsb-TRCxpcw", + "SsODsFdp0k4d_SSQAFmIUQ", + "SsODsFdp0k4d_SSQAFmIUQ", + "SuilsRTiGB4g6_Z5wTRUbA", + "SuilsRTiGB4g6_Z5wTRUbA", + "SuilsRTiGB4g6_Z5wTRUbA", + "SuilsRTiGB4g6_Z5wTRUbA", + "SukveDUyW0FsV0NSBVVfTA", + "SvEA_niVYaY-OpBNTk8XvA", + "SwknGjaLKG0Gph6rnFuRjw", + "Sxgb26oKQwlt07if9woPTQ", + "SyH3A-L8GuYowpuZ08nsBw", + "T9rAuKzjpsGWuACV2eUk6A", + "TAR6l89VN_4_uhrTdir1Mg", + "TAR6l89VN_4_uhrTdir1Mg", + "TAR6l89VN_4_uhrTdir1Mg", + "TAR6l89VN_4_uhrTdir1Mg", + "TBtZO3-vmynkHlKuzsN9UQ", + "TCG4af_JTpWiKD6yl45wSw", + "TCG4af_JTpWiKD6yl45wSw", + "TCRTnetVFgN_OTjaaZWcmw", + "TEfOCFPBfhCJGNGF8T-CCA", + "TIPcuO_13mszaKfYH7-tlA", + "TIPcuO_13mszaKfYH7-tlA", + "TIPcuO_13mszaKfYH7-tlA", + "TJNGpZ5zrxHIWzJGPowW7Q", + "TJNGpZ5zrxHIWzJGPowW7Q", + "TJNGpZ5zrxHIWzJGPowW7Q", + "TLC4KxDBUnDkS4JZ_h-j_Q", + "TM-FFtf6UJRBJp2QFKhFgw", + "TM-FFtf6UJRBJp2QFKhFgw", + "TM-FFtf6UJRBJp2QFKhFgw", + "TM-FFtf6UJRBJp2QFKhFgw", + "TM-FFtf6UJRBJp2QFKhFgw", + "TM5vHmZRGlLyNtB_jDhdvQ", + "TM5vHmZRGlLyNtB_jDhdvQ", + "TMX8OZDxXZh0ScV8nix7FA", + "TOT6Kzt9cNfqtt7rfwzzSw", + "TQHHjILJSS1Y0hdQ8MODHQ", + "TQJwJt0-vl6QQoIDFyT9Wg", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TRhdHOKO7GmLMAaUL3Xw6Q", + "TTvJ5_z-0po5hbnYEq-wrA", + "TU7DQ3uAw_xM7DAGYMk_cQ", + "T_HZPc4nEhQTTwxclKtUYQ", + "T_HZPc4nEhQTTwxclKtUYQ", + "T_dXLsYiuViNnH_I_KaClg", + "Ta-wbK0BNd9K2A470omx8w", + "TaNUUQ8ZfJlbsPC7iaqLvw", + "TcgdPjhC9iCW275BLQdVSw", + "TdvyEkBALxwDoycOnD-Rjg", + "TdwLOY0C6NYFuVVgfM0c5w", + "TeAEkCV4QFUCNjJlSHaiQA", + "TeAEkCV4QFUCNjJlSHaiQA", + "ThHx02WSVIFKDSz-RNDkKg", + "Ti71ZxqCuVbwvaU7IrO7Ig", + "Tl_Iodjc0LWexYa5MoBoHA", + "Tlm2yos2yNMmUywsA990NA", + "Tlw414lD5V7AUUaR2nBa8g", + "ToVtc2P50kV-QGj3la9_ZA", + "TozXD2NzMy0dEH0e02djYA", + "TrMlwvWvPdEuGYc2sFMcsw", + "TryWt-l_RGzsQHaX4nMucA", + "Ts8hV4NssS-wnbFO-C_Taw", + "Ts8hV4NssS-wnbFO-C_Taw", + "TtR77-iVwHd1W-dedkbBQA", + "TtR77-iVwHd1W-dedkbBQA", + "TuJIedgiwpK9-3BbSgy5Qg", + "TuJIedgiwpK9-3BbSgy5Qg", + "TvfGKtfFlcnXcoG5rV8rFQ", + "TvfGKtfFlcnXcoG5rV8rFQ", + "TvfGKtfFlcnXcoG5rV8rFQ", + "TxXdkaD1k2I8BNI8tO8C0Q", + "TyjOQJEVS6q07p3TumnstA", + "Tyuf4RNGIxt-ueaCsLj22A", + "Tyuf4RNGIxt-ueaCsLj22A", + "U0eTKdsDxlOsU56i41jsOg", + "U2RxVMJ_Mn6hYvhPst5Wtw", + "U2RxVMJ_Mn6hYvhPst5Wtw", + "U9ZZWGgX2ztQohxFT6s-0A", + "U9ZZWGgX2ztQohxFT6s-0A", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UJmIMEc6K8gJ39NHYaD0Ww", + "UJmIMEc6K8gJ39NHYaD0Ww", + "ULOVjhd5u9ORCGzZdeAHEQ", + "ULOVjhd5u9ORCGzZdeAHEQ", + "ULOVjhd5u9ORCGzZdeAHEQ", + "ULOVjhd5u9ORCGzZdeAHEQ", + "UM2HoocJmuZ1bbJvF4kRJQ", + "UM3h48-oBMi00mRAqhB4IA", + "UM3h48-oBMi00mRAqhB4IA", + "UM3h48-oBMi00mRAqhB4IA", + "UNi2PfJJ-vKG8q63OaknIA", + "UP7wzdQXo1Tc_iFi4DuZQQ", + "USMjRBbrrLhAC7pTy9H_CQ", + "USV55yZg8dR921Rrum2mig", + "USV55yZg8dR921Rrum2mig", + "UT1CLo52HplxPz6JwcoqCQ", + "UT1CLo52HplxPz6JwcoqCQ", + "UTB2ADQFxXISnXcFBKNbeQ", + "UUg1eX6XD3kMg9XTzAxNlg", + "UVlIDr_FMx_kZCYsc8A86A", + "UVlIDr_FMx_kZCYsc8A86A", + "UWue9Vo1qBkmWAHSKXsFCw", + "UWue9Vo1qBkmWAHSKXsFCw", + "UWue9Vo1qBkmWAHSKXsFCw", + "UWue9Vo1qBkmWAHSKXsFCw", + "UX0maaM_jFdAmFMbhLpaSg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "UbK4uezrplMLlSw0h87Xfg", + "Uc3Hxu80nWajDYNI1RALIw", + "UcMrTkRqTyiU1A-4TStXKg", + "UcMrTkRqTyiU1A-4TStXKg", + "UcMrTkRqTyiU1A-4TStXKg", + "UcMrTkRqTyiU1A-4TStXKg", + "UepoRzuMTBR-jFpLlu_fPg", + "Ug_WrvzfiSx7or5yGxERuQ", + "UjNkTX9EbdfPaqIYIxRySg", + "UjP9b9Gi1n1teIJJDyIQ2g", + "UjZjHDsJddCCPswXJh9zOA", + "Ukkz7TICliMQmbQxZ0wSyQ", + "Ukkz7TICliMQmbQxZ0wSyQ", + "Ukkz7TICliMQmbQxZ0wSyQ", + "Ukkz7TICliMQmbQxZ0wSyQ", + "UwuyNsi7On2JHv2gn3ZLtQ", + "UxUrGKaPEq08l4l3816Tpw", + "UzBLcYsYZ48ySlpYqqKUBA", + "V-kXvMT4K0SIRkTvXJDHrA", + "V0DLOPGY9h7VEozIU7B7OQ", + "V0DLOPGY9h7VEozIU7B7OQ", + "V0LEzKEJCTr2F7QdmvO8vQ", + "V0uPvqXECyvBGRzWbaaAUw", + "V2djfK9racz03jSvbrsX2g", + "V3A14FfSyi9f2bwkJhRsiA", + "V9Wpi5-CDKWKSEhK-NNvbA", + "VBGS8NQ-yUJNIwI_yV_ejQ", + "VBGS8NQ-yUJNIwI_yV_ejQ", + "VCZTpLkuh_k-G5uf32ejyA", + "VOTAjRbOztte8sAj2_6Ytw", + "VOUNVzVyt4QutMt6oZxNlQ", + "VOVXUzFWZBxRqlSbJ_OGWw", + "VOVXUzFWZBxRqlSbJ_OGWw", + "VPYOHzahM8nW-lI6iDLCtg", + "VPYOHzahM8nW-lI6iDLCtg", + "VPYOHzahM8nW-lI6iDLCtg", + "VPYOHzahM8nW-lI6iDLCtg", + "VPtMofZCgqrw-l9pGX7aHg", + "VPtMofZCgqrw-l9pGX7aHg", + "VSALBRPvgHpUWKmpUo1khA", + "VSALBRPvgHpUWKmpUo1khA", + "VSALBRPvgHpUWKmpUo1khA", + "VTfbcIJC4j-MNC5M8fX4oQ", + "VTfbcIJC4j-MNC5M8fX4oQ", + "VUYArEzzNVQi01EogS1TBA", + "VYAhhPSb0PZhnETden6FRA", + "VYAhhPSb0PZhnETden6FRA", + "VYJJ7SiU83HRcQ3FLDQMQg", + "VYJJ7SiU83HRcQ3FLDQMQg", + "V_KspK9nh8LJS_EE9pIxxw", + "Vb0C_sYOU5d3eeu0yalLow", + "Vdgwu2yTb01w3GcQPIyz_w", + "Vdgwu2yTb01w3GcQPIyz_w", + "VeiXB0YRwCqhIZpdcAnulg", + "VeiXB0YRwCqhIZpdcAnulg", + "VeiXB0YRwCqhIZpdcAnulg", + "VeiXB0YRwCqhIZpdcAnulg", + "VeiXB0YRwCqhIZpdcAnulg", + "VeiXB0YRwCqhIZpdcAnulg", + "VeiXB0YRwCqhIZpdcAnulg", + "VeiXB0YRwCqhIZpdcAnulg", + "VeiXB0YRwCqhIZpdcAnulg", + "VeiXB0YRwCqhIZpdcAnulg", + "VeiXB0YRwCqhIZpdcAnulg", + "VeiXB0YRwCqhIZpdcAnulg", + "Vesl-TqkdasS6qMPfjcnng", + "VhUIBMnDjpGauL-PhicCqg", + "Vo9H_8YeBmc0_i3CIsMkrw", + "Vo9H_8YeBmc0_i3CIsMkrw", + "Vo9H_8YeBmc0_i3CIsMkrw", + "Vo9H_8YeBmc0_i3CIsMkrw", + "VoQ5AJHHG4Z_KZgZidNsZQ", + "VoQ5AJHHG4Z_KZgZidNsZQ", + "Vrpi7tqI-mbMhnfGM7pJDw", + "Vrpi7tqI-mbMhnfGM7pJDw", + "Vrpi7tqI-mbMhnfGM7pJDw", + "Vrpi7tqI-mbMhnfGM7pJDw", + "Vrpi7tqI-mbMhnfGM7pJDw", + "Vrpi7tqI-mbMhnfGM7pJDw", + "Vrpi7tqI-mbMhnfGM7pJDw", + "Vrpi7tqI-mbMhnfGM7pJDw", + "Vrpi7tqI-mbMhnfGM7pJDw", + "Vrpi7tqI-mbMhnfGM7pJDw", + "Vrpi7tqI-mbMhnfGM7pJDw", + "Vrpi7tqI-mbMhnfGM7pJDw", + "Vru4hpAw_7_usxGosAlYKQ", + "Vru4hpAw_7_usxGosAlYKQ", + "VtVXhl6s6URamlTOMTdcGg", + "VuN94T655MWJDhWvTQiB6Q", + "VwaGRjsI3iJyn8klEZc0Ag", + "Vwe_72Rv4VHVlHKolSYlNQ", + "Vwe_72Rv4VHVlHKolSYlNQ", + "Vx2H7p06nNerPKpNR75HGQ", + "VxlwUtXHQJ-6YwCZd_dtKg", + "VydXcSmOqICsVxLpiPFyCA", + "VyyKaeEtdlraCgV3b2jJaw", + "VyyKaeEtdlraCgV3b2jJaw", + "W0KRKkGodsQWw5SQhLGc1A", + "W0KRKkGodsQWw5SQhLGc1A", + "W0KRKkGodsQWw5SQhLGc1A", + "W0KRKkGodsQWw5SQhLGc1A", + "W0z6xNHqHLcQrQ1Rr4ojGw", + "W2orkSxhItalTCL1xwDk_A", + "W2orkSxhItalTCL1xwDk_A", + "W2oz1IIhVizUUMC0MCRp0A", + "W3F3FsEq18BbYr-AW7KVZQ", + "W4GHsDWvwLw2xRoJLl9_7A", + "W7av6kFBL38jd5m72xNnHg", + "W7av6kFBL38jd5m72xNnHg", + "W7av6kFBL38jd5m72xNnHg", + "W7av6kFBL38jd5m72xNnHg", + "W8vJw9pf4kXSOfpR0vKjpQ", + "W8vJw9pf4kXSOfpR0vKjpQ", + "W9D_ahUN7evrE8NIbI96yw", + "W9D_ahUN7evrE8NIbI96yw", + "W9D_ahUN7evrE8NIbI96yw", + "WAYvquCuheRW9mxTkj_2Yw", + "WAYvquCuheRW9mxTkj_2Yw", + "WAYvquCuheRW9mxTkj_2Yw", + "WB9GVskeRyK4_o3XD61XIA", + "WBKrGzwz7SG6nZHQCew75A", + "WFVy8ut4LPnLUpwUFH-HpA", + "WFVy8ut4LPnLUpwUFH-HpA", + "WFVy8ut4LPnLUpwUFH-HpA", + "WGL3b6si_6bQM5Rqh6u3iw", + "WHt2sjXXBXmxk_WhY3xuqQ", + "WJOADfwpHxtseudP4RVyOQ", + "WJOADfwpHxtseudP4RVyOQ", + "WJOADfwpHxtseudP4RVyOQ", + "WJQwXsMRv_RvORZli-Uqww", + "WKOnV4dhtUKFY7wtM7-RyA", + "WLOUsm-IsQxvoTcefLktBQ", + "WLR6tMYzOVwd-dC39zrHVg", + "WNHUiu4BFqRVmqF_mtCsFQ", + "WQA5eJbOfqc-MpVNXC1Q9w", + "WQA5eJbOfqc-MpVNXC1Q9w", + "WQoT5TvZ3eOmkl3OPEBMyw", + "WRFfIxsq2Q79ALvapo1dCg", + "WRtY-lihH3Vcv4ui-X8hvw", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WSancnmbX3N0mzUrLDNaPQ", + "WTJVejtNrfNtGl_SxUF-gQ", + "WTJVejtNrfNtGl_SxUF-gQ", + "WTJVejtNrfNtGl_SxUF-gQ", + "WTJVejtNrfNtGl_SxUF-gQ", + "WUsgmXBmEYsZWCQlmPqU4w", + "WV6g6bHiSUaQ_18ghJ6gvw", + "WV6g6bHiSUaQ_18ghJ6gvw", + "WVVfmS8H00wjgsMrGKM8_w", + "WVw4-tNMtcGbe_AUExiiqw", + "WVw4-tNMtcGbe_AUExiiqw", + "WVw4-tNMtcGbe_AUExiiqw", + "WVw4-tNMtcGbe_AUExiiqw", + "WVw4-tNMtcGbe_AUExiiqw", + "WWjCfoHiLs6x77qSQOVJgQ", + "WWjCfoHiLs6x77qSQOVJgQ", + "WYJL1QABUd371a1-0ldehQ", + "WYJL1QABUd371a1-0ldehQ", + "WYJL1QABUd371a1-0ldehQ", + "WYJL1QABUd371a1-0ldehQ", + "WZkYii9iyVkeBe2z6gMrag", + "Wb65uaTCBYe2MCZtuMHkqA", + "Wd-wsKB-WM_I8gWE0C2Uig", + "WdP0jKvbSW-F3IXqFZzXpQ", + "WiRzhRWdZ6M6VVTdW0H5qA", + "WiRzhRWdZ6M6VVTdW0H5qA", + "WiRzhRWdZ6M6VVTdW0H5qA", + "WiRzhRWdZ6M6VVTdW0H5qA", + "WiRzhRWdZ6M6VVTdW0H5qA", + "WnFGlRCY3Ca1i33Xvhj0aQ", + "WwLAq-OugYSy1Dj8k1-Jew", + "WwLAq-OugYSy1Dj8k1-Jew", + "WwwY-nbac4bLVYmvyQeL7g", + "Wxf0OtqIcfKcZtbpDMZ1Qg", + "Wxf0OtqIcfKcZtbpDMZ1Qg", + "WyKzZPf9H41VOsE_tFJwlw", + "Wyrs0b2Xeu1gDeFw9u_zsw", + "Wyrs0b2Xeu1gDeFw9u_zsw", + "Wyrs0b2Xeu1gDeFw9u_zsw", + "Wyrs0b2Xeu1gDeFw9u_zsw", + "Wyrs0b2Xeu1gDeFw9u_zsw", + "WzcM34XPrxORvaGGXCAlPA", + "X31knMc676bIIEUjaHa0MQ", + "X3vNLlXVyKftCeY5HzEuDA", + "X4eyAUaTXBTfPQNQu7X6DA", + "X6JlWwBbDvZZ7rFp8ffgSA", + "X6lQOeqkpDSSxUYYwJb8TA", + "X6lQOeqkpDSSxUYYwJb8TA", + "X9lpa9TN84k-aLBSFJ8EgQ", + "X9lpa9TN84k-aLBSFJ8EgQ", + "XAQAGBdvfV-EvC7mVJIF_A", + "XCfwHQ5uwsQ6p8AkMjNIUQ", + "XCoBIRW2zeIv8Jr12c2SPw", + "XCoBIRW2zeIv8Jr12c2SPw", + "XEL8uypdAacLWMwpaKSA9A", + "XEL8uypdAacLWMwpaKSA9A", + "XFD9rtcq2dSwMN8BaHVjpQ", + "XLN55eJ2HplxP0Fb2YBmOQ", + "XLN55eJ2HplxP0Fb2YBmOQ", + "XLN55eJ2HplxP0Fb2YBmOQ", + "XMkmePFkSh5xHJJ1aDCIhw", + "XMkmePFkSh5xHJJ1aDCIhw", + "XNiEFVfexcwhuzJE2wFqSQ", + "XQAhaCnyqkeCfjLm4h_8UQ", + "XQAhaCnyqkeCfjLm4h_8UQ", + "XQih0feiHcRhpLZTXruLcw", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XT4fd_WKeR1cE-hlLelCQA", + "XXew5C30L_JFu-wFNmdm1w", + "XYoHt3UROpdP-PTQpV__OQ", + "XZQcoD_es-Sgi6qHZxwfkg", + "X_IfM4Yhf70tPFjQHjEkfQ", + "X_IfM4Yhf70tPFjQHjEkfQ", + "X_bfXz5AFHkrYon-Qeo-kQ", + "X_bfXz5AFHkrYon-Qeo-kQ", + "X_bfXz5AFHkrYon-Qeo-kQ", + "X_bfXz5AFHkrYon-Qeo-kQ", + "XaFizeT40CKpdI_o5Zrw0Q", + "XadgtJFQ10pxn_-sij7tlQ", + "XadgtJFQ10pxn_-sij7tlQ", + "XadgtJFQ10pxn_-sij7tlQ", + "XadgtJFQ10pxn_-sij7tlQ", + "XadgtJFQ10pxn_-sij7tlQ", + "XadgtJFQ10pxn_-sij7tlQ", + "XadgtJFQ10pxn_-sij7tlQ", + "XadgtJFQ10pxn_-sij7tlQ", + "XcCMywL5s8Msv7wl9SHdqg", + "XgJxJ-tB1qb-u2fqUxCQQA", + "XgR81Oj0TR8eR1AC7VO-fg", + "XhVTYnEfEwYdMqsc_S5SQw", + "XhVTYnEfEwYdMqsc_S5SQw", + "XhVTYnEfEwYdMqsc_S5SQw", + "XiwCBhd0Mu96RLqRSIdCdA", + "XiwCBhd0Mu96RLqRSIdCdA", + "XiwCBhd0Mu96RLqRSIdCdA", + "XiwCBhd0Mu96RLqRSIdCdA", + "XkwrwjOS6nVGpR6C__HdAg", + "XmED6DCBgU_nxWWvvj2FeQ", + "XmgLknRmXWrjNm14n69KUA", + "XmgLknRmXWrjNm14n69KUA", + "XnYKGifjjBQNyUfuNIzfgw", + "XnoSB634C4csFM2aSGubHw", + "Xo7g-Y5QcR1vwA7ORZK_pA", + "XrBpNAskp4LhvHyToQuFVg", + "XrBpNAskp4LhvHyToQuFVg", + "XrBpNAskp4LhvHyToQuFVg", + "XrBpNAskp4LhvHyToQuFVg", + "XrBpNAskp4LhvHyToQuFVg", + "XrBpNAskp4LhvHyToQuFVg", + "XrBpNAskp4LhvHyToQuFVg", + "XrBpNAskp4LhvHyToQuFVg", + "XrBpNAskp4LhvHyToQuFVg", + "XrBpNAskp4LhvHyToQuFVg", + "XrBpNAskp4LhvHyToQuFVg", + "XrBpNAskp4LhvHyToQuFVg", + "Xsky9cTDpKcm_kOUJgRO_w", + "Xsky9cTDpKcm_kOUJgRO_w", + "Xsky9cTDpKcm_kOUJgRO_w", + "Xw9SMMauw-oBWYANca-iwQ", + "Xw9SMMauw-oBWYANca-iwQ", + "Xw9SMMauw-oBWYANca-iwQ", + "Xw9SMMauw-oBWYANca-iwQ", + "XyIB1JXxkoOQjMae8CICgw", + "XyIB1JXxkoOQjMae8CICgw", + "XyIB1JXxkoOQjMae8CICgw", + "XyIB1JXxkoOQjMae8CICgw", + "XyIB1JXxkoOQjMae8CICgw", + "XyIB1JXxkoOQjMae8CICgw", + "XyIB1JXxkoOQjMae8CICgw", + "XyIB1JXxkoOQjMae8CICgw", + "XzWVAFfWPkx_-5DzBgosgQ", + "Y3NOAgXgXC4eoDwKLaDAiA", + "Y3Sprta0ZfJLFlJ1JVg3HQ", + "Y3Sprta0ZfJLFlJ1JVg3HQ", + "Y3ftK9mWklQQE1dRC8tbhw", + "Y3x9QXAOfHkWwEWS3xofjg", + "Y3x9QXAOfHkWwEWS3xofjg", + "Y3x9QXAOfHkWwEWS3xofjg", + "Y3x9QXAOfHkWwEWS3xofjg", + "Y42fk-Ms4CyfeVg3LVDZpQ", + "Y42fk-Ms4CyfeVg3LVDZpQ", + "Y4GXBcWnfQyta5ocrIdtBQ", + "Y4GXBcWnfQyta5ocrIdtBQ", + "Y5AhuW5zTFbvkEYRGrJ6zg", + "Y5AhuW5zTFbvkEYRGrJ6zg", + "Y5AhuW5zTFbvkEYRGrJ6zg", + "Y5iAkFFa6Ydo5KZQhAw-vg", + "Y5iAkFFa6Ydo5KZQhAw-vg", + "Y5iAkFFa6Ydo5KZQhAw-vg", + "Y5iAkFFa6Ydo5KZQhAw-vg", + "Y5iAkFFa6Ydo5KZQhAw-vg", + "Y5iAkFFa6Ydo5KZQhAw-vg", + "YDrovqwdGSszhpqY3JNzmQ", + "YEThj3UEuGl2wDiJSq9vSA", + "YFEVU3rItUdMx9h2E0eYWA", + "YFHhxChQm8T7lhNTw8y-DQ", + "YHvoCxdR4GM-ot1OUIn44Q", + "YHvoCxdR4GM-ot1OUIn44Q", + "YHvoCxdR4GM-ot1OUIn44Q", + "YM_gl0OeNbTAtY8GRC8UVg", + "YM_gl0OeNbTAtY8GRC8UVg", + "YNG5rLJWIsjMTCOpoQz9Tw", + "YNTunKybilcdruNbkYh4bA", + "YNctlk7ApQX4WP711vJI-Q", + "YNctlk7ApQX4WP711vJI-Q", + "YNctlk7ApQX4WP711vJI-Q", + "YNctlk7ApQX4WP711vJI-Q", + "YNctlk7ApQX4WP711vJI-Q", + "YNvLePk3bv25BUHN3KzEXQ", + "YOvHVd-Brx3w_G9pFAJpJw", + "YQywd7BcCE2h4hN9hN7NgA", + "YQywd7BcCE2h4hN9hN7NgA", + "YUqlosets6-rXKgChfDXoQ", + "YV3mbdAeVZ7JBUkmx7TpHg", + "YVcFEflggWCRxtIyAFnYrg", + "YVeB-lvoG9jGEyCvHLllLA", + "YWXIxk3SU50xKaZayCzMKA", + "YWXIxk3SU50xKaZayCzMKA", + "YWXIxk3SU50xKaZayCzMKA", + "YWXIxk3SU50xKaZayCzMKA", + "YWXIxk3SU50xKaZayCzMKA", + "YX6jd4K2CK6gVQH6DsXh-A", + "YX6jd4K2CK6gVQH6DsXh-A", + "YY_5A_qFX2rphOrkConrFw", + "YZBmumN7B74DCts0HLEQGQ", + "YZBmumN7B74DCts0HLEQGQ", + "Yav7N1kdPMXfEfZ1xXIznA", + "YayEQsb3EQEEycy7q22aRA", + "YbNld3zpk2N0cA7cPFuWGA", + "YdHosvXns41-8YRbLcrtpg", + "YdHosvXns41-8YRbLcrtpg", + "YegVEymiG8lw5t7wHfz6hw", + "YegVEymiG8lw5t7wHfz6hw", + "YegVEymiG8lw5t7wHfz6hw", + "YfWVtOr-M3KdNymRhenToA", + "YgsSLUYpiS9cWv6amzrEpA", + "YgsSLUYpiS9cWv6amzrEpA", + "YkIaRxuwdj6_l9jcQ8vj7A", + "YldLdAhiU1Ikhg1VTxvqJw", + "YmsifTqF7cioaxmVry5lBw", + "YnHJlbHqayey0i5xkzFE0g", + "YnTzskd9MCNgm1sHtB0zJA", + "Ynf_MUQkDQVzhniQz6muHg", + "Ynf_MUQkDQVzhniQz6muHg", + "YoBRvyLd18NJezoAzYDBWg", + "YpO7Ao3Jp5dMNGkF6KXViw", + "Yq5qVgU-uF5HOA3V-qXF7Q", + "YqGCdZ1cNEoHUUaGHzWSqQ", + "YqGCdZ1cNEoHUUaGHzWSqQ", + "YqGCdZ1cNEoHUUaGHzWSqQ", + "YqGCdZ1cNEoHUUaGHzWSqQ", + "YqGCdZ1cNEoHUUaGHzWSqQ", + "YqGCdZ1cNEoHUUaGHzWSqQ", + "YqGCdZ1cNEoHUUaGHzWSqQ", + "YqilTZwyrgCHxD7ZEdwnpA", + "YqilTZwyrgCHxD7ZEdwnpA", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YsnZ_Lwaqr0cHEPo0D185Q", + "YuFRqUWC2dt608XUwtEIRQ", + "YuFRqUWC2dt608XUwtEIRQ", + "YuFRqUWC2dt608XUwtEIRQ", + "YuFRqUWC2dt608XUwtEIRQ", + "YuO8negre7Sf-lmPoxxRFQ", + "YuO8negre7Sf-lmPoxxRFQ", + "Yu_6L4HRShupVCJ8N-cmXQ", + "Yw6bxJhWZryqlInRYdFqbA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "Yxe-SHgukLEpCkawSk1QWA", + "YzN7F6tLZe6mM7H1OD-sRg", + "YzN7F6tLZe6mM7H1OD-sRg", + "YzN7F6tLZe6mM7H1OD-sRg", + "Z-a7RegEMU1bJQCzduDXAw", + "Z0TAJMiD_AqT3npr7YiRAg", + "Z0TAJMiD_AqT3npr7YiRAg", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z3CKaS4aU08RhYA19y5ITQ", + "Z41z-remt7jPNWprM_rymw", + "Z41z-remt7jPNWprM_rymw", + "Z54PjEfQsrC0ZgxONgiYbA", + "Z5bymihzf4CQyWGMQZAZdQ", + "Z5bymihzf4CQyWGMQZAZdQ", + "Z5bymihzf4CQyWGMQZAZdQ", + "Z5bymihzf4CQyWGMQZAZdQ", + "Z6aAB62ipYf2Ff58TIbPwg", + "Z6kGBA_SCop1OktUb4lGHg", + "Z74AIbYzICy-xCAbnzF91g", + "Z7iCsB1-GXkmEKIXzn-sOQ", + "Z80ToqoZC1OOBoR__Nmsnw", + "Z8eDanRMy6l7sesw4dYkqQ", + "ZBmcQL98TXLA7smZymDadQ", + "ZBmcQL98TXLA7smZymDadQ", + "ZC4caaBbQcOc2WclRiklUw", + "ZDeC5caqI_6hNXlbdI9VxA", + "ZEmTi7arcnnQUqeW8qzKIg", + "ZEmTi7arcnnQUqeW8qzKIg", + "ZEmTi7arcnnQUqeW8qzKIg", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZHpec9nZGwrrhoUYM845NA", + "ZJ8K2Oaj8kiHS_MZmGQy-g", + "ZJjsD24vVeIB2Mk_BbDMOg", + "ZLVm2Yq3JzpECVJuRqNdaw", + "ZNIMXBN7NKTXUfXb93okMg", + "ZNIMXBN7NKTXUfXb93okMg", + "ZNIMXBN7NKTXUfXb93okMg", + "ZO2HUdwEHxgLdp8bq6mR0Q", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZSkKN3zNxr0HYuO2pqe5hQ", + "ZUWFO7_P5RCkVQo5ktvTUQ", + "ZUWFO7_P5RCkVQo5ktvTUQ", + "ZUr3dhHUtWV20cKiiRwRTA", + "ZUr3dhHUtWV20cKiiRwRTA", + "ZUr3dhHUtWV20cKiiRwRTA", + "ZUr3dhHUtWV20cKiiRwRTA", + "ZUr3dhHUtWV20cKiiRwRTA", + "ZUr3dhHUtWV20cKiiRwRTA", + "ZUr3dhHUtWV20cKiiRwRTA", + "ZUr3dhHUtWV20cKiiRwRTA", + "ZUr3dhHUtWV20cKiiRwRTA", + "ZUr3dhHUtWV20cKiiRwRTA", + "ZVmO-9I5h4LLobQ2tFZNqw", + "ZVnSbEYj3sPbI5VKW4FSaw", + "ZWVXkJ8qrKOhTkKXzBlP4w", + "ZXdWkChUCjmBhCYfjJANcw", + "ZXdWkChUCjmBhCYfjJANcw", + "ZY053goknQd2qtlUXwZuLg", + "ZYJrmLEjznzm7GSiXKeulg", + "ZYJrmLEjznzm7GSiXKeulg", + "ZZqFVPfJM-LkfzPbeaoP8Q", + "ZZqFVPfJM-LkfzPbeaoP8Q", + "Za0P_0e34shcw6VJJ_B5Xg", + "ZaQmU-IXyGvFS9G6a9D4BQ", + "ZbvmFtHvqv74jokq3XvBkg", + "ZbvmFtHvqv74jokq3XvBkg", + "ZbvmFtHvqv74jokq3XvBkg", + "Zc4-4la3f3ERFdOZuKRlgw", + "Zf0w4S_WIxaQJn4-TjKTOw", + "Zf4KmPLa6_uw8gRgiw9EUA", + "ZfqgPVQL3CZfrdBqCPTBoA", + "Zju6rAGbAtHQitND_873Bg", + "Zk43mZ48MNKz-8sDUsL_rA", + "Zk43mZ48MNKz-8sDUsL_rA", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZkLsycxKPf36jJRxnsYRXg", + "ZlDlad6ynrsOYua0gWLAAA", + "ZoqK5vOzV3kqWtcjvTTZzg", + "ZoqK5vOzV3kqWtcjvTTZzg", + "ZoqK5vOzV3kqWtcjvTTZzg", + "Zq3LezbKFeLCpaj2U6KLuw", + "ZqFdsc4dQ8tQzsRqUhERGQ", + "ZtRK4uMy_Wfw-N_iQmSerQ", + "ZtRK4uMy_Wfw-N_iQmSerQ", + "ZtRK4uMy_Wfw-N_iQmSerQ", + "ZtRK4uMy_Wfw-N_iQmSerQ", + "ZtRK4uMy_Wfw-N_iQmSerQ", + "ZuakkYQH3cBV7wefZCqVAw", + "ZuiJGdMTgqCiSwiPmMfXSQ", + "ZvnSEZ6hxckmxa-z2abTjw", + "Zx-0tvUxoac--Xj0F0phiw", + "Zxyf5INnJibBb8rT_yMcsA", + "_-w0jN8EBuSyBPLluRtS_A", + "_1ZpXyWwUvMENe1nbBnl2g", + "_1ZpXyWwUvMENe1nbBnl2g", + "_1ZpXyWwUvMENe1nbBnl2g", + "_1ZpXyWwUvMENe1nbBnl2g", + "_1ZpXyWwUvMENe1nbBnl2g", + "_1ZpXyWwUvMENe1nbBnl2g", + "_1ZpXyWwUvMENe1nbBnl2g", + "_20iQw_1BgBh9m8HkEpgSw", + "_6rkq2S7o8rMRQJ9AofzJA", + "_6rkq2S7o8rMRQJ9AofzJA", + "_6rkq2S7o8rMRQJ9AofzJA", + "_6rkq2S7o8rMRQJ9AofzJA", + "_6rkq2S7o8rMRQJ9AofzJA", + "_93WPbrUDW14kcLWmrpKPQ", + "_93WPbrUDW14kcLWmrpKPQ", + "_AVVUX91IwF8UFsgz3IpgA", + "_DDQPZMS5NnUuioWsVqoPg", + "_EVdVfyApPsVUy6u6pxduQ", + "_FSZcOsFCsjkQUrZFpijiQ", + "_HewcgijIMPowgCu2JuUaA", + "_HewcgijIMPowgCu2JuUaA", + "_I187UwkDjABEvmHmR4uSw", + "_IhPXrChwahxbJ63NZZANQ", + "_Ire-VQUS1VTfaZnl01nEA", + "_NrJ8Q-i9cRRxMzl4paxGA", + "_OOeQuiXtvgynmE43QMbEA", + "_OOeQuiXtvgynmE43QMbEA", + "_OOeQuiXtvgynmE43QMbEA", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_QYAzQdAagYTCI2yUMpa7w", + "_RUQ8702rsuOcfHHin3xeQ", + "_TFhPF4PLQGeqs-oPUuzgw", + "_TFhPF4PLQGeqs-oPUuzgw", + "_TFhPF4PLQGeqs-oPUuzgw", + "_TFhPF4PLQGeqs-oPUuzgw", + "_UlieIQg1WLVOAgt8Mj7qw", + "_UlieIQg1WLVOAgt8Mj7qw", + "_UlieIQg1WLVOAgt8Mj7qw", + "_UlieIQg1WLVOAgt8Mj7qw", + "_UlieIQg1WLVOAgt8Mj7qw", + "_UlieIQg1WLVOAgt8Mj7qw", + "_UlieIQg1WLVOAgt8Mj7qw", + "_UlieIQg1WLVOAgt8Mj7qw", + "_UlieIQg1WLVOAgt8Mj7qw", + "_UlieIQg1WLVOAgt8Mj7qw", + "_VfdOguzzRs6cxcAnL726g", + "__e_ReExoac--V-RQeNXew", + "__e_ReExoac--V-RQeNXew", + "__zQN1KtajJ77R0aE48e2w", + "_bWrQJSE9QDRqMSbes6HHA", + "_bWrQJSE9QDRqMSbes6HHA", + "_c66iRIhxEMceXexHDGFpw", + "_c66iRIhxEMceXexHDGFpw", + "_c66iRIhxEMceXexHDGFpw", + "_cm2-vGeYtB-v60e7C7a-w", + "_coc0yQmibHSYbczgpafrw", + "_coc0yQmibHSYbczgpafrw", + "_h880XQOq8mngzMZR-nPlw", + "_iCcRlhs7iF8GyQDr_i9yQ", + "_iDZMCcFI7BA-AS_7zsasA", + "_iDZMCcFI7BA-AS_7zsasA", + "_iDZMCcFI7BA-AS_7zsasA", + "_iDZMCcFI7BA-AS_7zsasA", + "_iDZMCcFI7BA-AS_7zsasA", + "_iDZMCcFI7BA-AS_7zsasA", + "_jcNhXlm_4ESbJ83f0qd9A", + "_jjh2hdWW_hCsOcCGaiEdg", + "_jjh2hdWW_hCsOcCGaiEdg", + "_l0ywV2XZnYFamIDDP8kMQ", + "_lnMS5U7_cxWp1BoOwDZzg", + "_n66vMwdTIxqmrxb925TNg", + "_oQKauFbqUbWXpjVIJWTfw", + "_p12Y0DOk4cFEn5gGz9psg", + "_p12Y0DOk4cFEn5gGz9psg", + "_pf6RlrRVbHIjJBXusiLvg", + "_qijKAoIrj192_UIiHcBhw", + "_sBOjhkm41Z-F6jj1JRPwA", + "_tk_pJhUkQORC8bHHTFf2w", + "_tmowAuMt_ATc3LuQIkNBg", + "_ui1AAIySrYc7ZeYb73nFQ", + "_v6hOoIgYf3eN97moDCA0A", + "_v6hOoIgYf3eN97moDCA0A", + "_v6hOoIgYf3eN97moDCA0A", + "_v6hOoIgYf3eN97moDCA0A", + "_vRgnsODDSlBEnXshYjNPQ", + "_vlpQDle5dcOpop8VnX1jA", + "_vlpQDle5dcOpop8VnX1jA", + "_vnxdlrLVdiyCEIVqNBMFA", + "_wF9139OqoZQK8iwN7oJTA", + "_wF9139OqoZQK8iwN7oJTA", + "_wKjyluEXlCffpVzynun0A", + "_zDk_N7NUcNRTqIuzYKxDg", + "_zDk_N7NUcNRTqIuzYKxDg", + "_zDk_N7NUcNRTqIuzYKxDg", + "_zDk_N7NUcNRTqIuzYKxDg", + "_zTPw4W-fEbGBy_l_TaoKw", + "_zTPw4W-fEbGBy_l_TaoKw", + "_zsJy5NbZstsQgE6U3tzVQ", + "a1rORv6uw2uAWC1se05SoQ", + "a2J1cxfK2aVs0Suyt6w9OQ", + "a3AmMsWYsv2DEhblA99iSQ", + "a4Ee0kL33laYREZz55sqWw", + "a4Ee0kL33laYREZz55sqWw", + "a4Ee0kL33laYREZz55sqWw", + "a4Ee0kL33laYREZz55sqWw", + "a4Ee0kL33laYREZz55sqWw", + "a67hy6D4_aH__IrzfMid7w", + "a95o5CjzIEIOn8inlU1vCg", + "a9q5BOyKgSLsDOKlsdaljQ", + "a9q5BOyKgSLsDOKlsdaljQ", + "a9xJ5FQfUEQO7I4aLnTqGg", + "aDG65F6vpUG6StE5Bqoseg", + "aDyBXusCSgxGJvBxfJIWPw", + "aErKLCqrgChwG7C_tbQ7iA", + "aG38C7AQR-wEDFFefkRnfg", + "aGr-u5KsJw8ithwCPuSW-g", + "aMdAw5F6bqw1nsXGt00a9A", + "aMzea5YF1p9DWzFcmq3Vzw", + "aMzea5YF1p9DWzFcmq3Vzw", + "aMzea5YF1p9DWzFcmq3Vzw", + "aMzea5YF1p9DWzFcmq3Vzw", + "aN7fKxtCKDAoXV8Zue3MQA", + "aN7fKxtCKDAoXV8Zue3MQA", + "aN7fKxtCKDAoXV8Zue3MQA", + "aPSRYZ8JddCCQFb8HbMBRA", + "aSd0IwCHi35NcDjaC1kTWQ", + "aTMNVHETyzaTiTA3xRl8fg", + "aTntpUYXQHYLwEr9g5SFgA", + "aYaXPq6Lv-HexLpgIGC1Hg", + "aZm3KCqAmEK8MKoRA8U8Wg", + "a_Wg5Uotb6-IbWf-Z46Jpw", + "a_Wg5Uotb6-IbWf-Z46Jpw", + "a_Wg5Uotb6-IbWf-Z46Jpw", + "adI05FeXl-z73o2NJPxYaw", + "adI05FeXl-z73o2NJPxYaw", + "aeHLiMGd0EE8pMA7LZ9W_g", + "aiYAeaOefGgb8Ek1UStS_g", + "ajGOqPZ-j63yhkOuwDhkJw", + "am-Z0RfUVY0oYK5VXRDk9w", + "am-Z0RfUVY0oYK5VXRDk9w", + "am-Z0RfUVY0oYK5VXRDk9w", + "am-Z0RfUVY0oYK5VXRDk9w", + "am-Z0RfUVY0oYK5VXRDk9w", + "am-Z0RfUVY0oYK5VXRDk9w", + "am-Z0RfUVY0oYK5VXRDk9w", + "anPZp8MtU1QLiT0Ue8dN9Q", + "ao-qbhwnTsLVPtnLeVPHtg", + "aqi6m5y2lIDVnw6ctINunw", + "auNwTX46Nq4EeEhNv4i6Zg", + "auNwTX46Nq4EeEhNv4i6Zg", + "avU6NIsopUe3RLXmOLaJog", + "b0dgoqPkuWglB1BhrIMdSw", + "b0dgoqPkuWglB1BhrIMdSw", + "b0dgoqPkuWglB1BhrIMdSw", + "b0dgoqPkuWglB1BhrIMdSw", + "b0dgoqPkuWglB1BhrIMdSw", + "b0dgoqPkuWglB1BhrIMdSw", + "b0dgoqPkuWglB1BhrIMdSw", + "b0dgoqPkuWglB1BhrIMdSw", + "b0dgoqPkuWglB1BhrIMdSw", + "b1XRsL3HnSmx1ytW_GO79w", + "b2XRkTRSoWuyX3U4lJkMnA", + "b2ckm-0wQN1Adu_SQOHiPw", + "b3S0id5hdpi1OvBSFMzajQ", + "b5D4G32aP0YH2ukb-bXGLg", + "b6FCVkRSabVMmeb8NDr2oA", + "b95z1GhnNzkQcVnTAGVlWQ", + "bAlNhxIUaCZOzq5Go2-fDw", + "bBQ2fsMcPLjZdwrVTr6aMg", + "bBQ2fsMcPLjZdwrVTr6aMg", + "bEb2wEd72RGPG3Tgt7xmlw", + "bEb2wEd72RGPG3Tgt7xmlw", + "bEb2wEd72RGPG3Tgt7xmlw", + "bEss39af3XvhM0266Ejx8Q", + "bFLfWHcBsfD6O8lF_w0zzA", + "bFnDceRyUrwrxpx2LB-2sw", + "bHBG5nCjuJ3R3DK71capIA", + "bHBG5nCjuJ3R3DK71capIA", + "bHBG5nCjuJ3R3DK71capIA", + "bJ0Ky1WXKMEGxtNwnImFjQ", + "bJ0Ky1WXKMEGxtNwnImFjQ", + "bJ0Ky1WXKMEGxtNwnImFjQ", + "bJ0Ky1WXKMEGxtNwnImFjQ", + "bJ0Ky1WXKMEGxtNwnImFjQ", + "bJ0Ky1WXKMEGxtNwnImFjQ", + "bJ0Ky1WXKMEGxtNwnImFjQ", + "bJ0Ky1WXKMEGxtNwnImFjQ", + "bJ0Ky1WXKMEGxtNwnImFjQ", + "bJt7Hnvv06ruHxwwr4EH7g", + "bJt7Hnvv06ruHxwwr4EH7g", + "bJt7Hnvv06ruHxwwr4EH7g", + "bLRnm0K2LnF8O3sUIvVtEQ", + "bLnL60YwFV1mMq9hr4cGaQ", + "bMzaZATN1l7AUFoobYOAAg", + "bMzaZATN1l7AUFoobYOAAg", + "bMzaZATN1l7AUFoobYOAAg", + "bMzaZATN1l7AUFoobYOAAg", + "bNJM4zIfFJjHoF7h4RxlFQ", + "bOb86QTSjl0Tbgl6WGMPVw", + "bOb86QTSjl0Tbgl6WGMPVw", + "bOb86QTSjl0Tbgl6WGMPVw", + "bOb86QTSjl0Tbgl6WGMPVw", + "bOb86QTSjl0Tbgl6WGMPVw", + "bOb86QTSjl0Tbgl6WGMPVw", + "bOb86QTSjl0Tbgl6WGMPVw", + "bPGPRDv1mVfrLWODFwT_VQ", + "bSpBoFudZ6M6VlWLyPk4WA", + "bSpBoFudZ6M6VlWLyPk4WA", + "bSpBoFudZ6M6VlWLyPk4WA", + "bSqWaYKtavFZqjY4T_025w", + "bWZWPptWisqbpRDA9X8cNg", + "bWlUEX2YKFEdOMdpWkVEpQ", + "bWlUEX2YKFEdOMdpWkVEpQ", + "bWlUEX2YKFEdOMdpWkVEpQ", + "bWlUEX2YKFEdOMdpWkVEpQ", + "bY3RtTMNEnhvgonzWleY4w", + "bYR0b7-vTQ0RKJD6ns3ClQ", + "bZRwWM7SmFPsrzq-cg210Q", + "b_ElB1I-v_CyZZ9WkymqkQ", + "b_H4r1ZHF2YYgctDVUNAUQ", + "baBm99KHpwHnMQW1MMiDCQ", + "baBm99KHpwHnMQW1MMiDCQ", + "baBm99KHpwHnMQW1MMiDCQ", + "baBm99KHpwHnMQW1MMiDCQ", + "baBm99KHpwHnMQW1MMiDCQ", + "baBm99KHpwHnMQW1MMiDCQ", + "baBm99KHpwHnMQW1MMiDCQ", + "baBm99KHpwHnMQW1MMiDCQ", + "baBm99KHpwHnMQW1MMiDCQ", + "bcZVdmCVQZDECINuyQR_7A", + "bcjqSMuxBT-dvJSjCv8ndQ", + "bdDHvEFMR-a7wkeVjQNwzw", + "bdDHvEFMR-a7wkeVjQNwzw", + "bdDHvEFMR-a7wkeVjQNwzw", + "bdDHvEFMR-a7wkeVjQNwzw", + "be8zzWLemlQSVhalewd_pw", + "bem31qqzjUFpI7bh8w8-nQ", + "bfWTJUKYANwcIsCQIfxvLQ", + "bmqLjwnA7Rf-ovcT8xSD4A", + "bn4I8fRVcZKaFCSiMCvwGA", + "bprtQ_xRIlDhPE4Dsvt_EA", + "bprtQ_xRIlDhPE4Dsvt_EA", + "br2--kP1CFOKTkt8v_v_Uw", + "br2--kP1CFOKTkt8v_v_Uw", + "bsQjgCW9UjBRbj0X9EX2Mg", + "bu6t-WTb-nsfb-QwFBEV_Q", + "buBVZznFiKOLEdwrahXtfg", + "buaxzZBrb6WHETKUkwVYeg", + "buaxzZBrb6WHETKUkwVYeg", + "buaxzZBrb6WHETKUkwVYeg", + "bv8FdXOrnnAB5gTPcCRfQg", + "bw7Et1OruEgeiOGCngYuPw", + "bwzZcffGQ_Xfy1CH0OgBBA", + "bxUfVnyBZI_pROsv4Hjqng", + "bzrt0cDU6UPpwGohqCueZw", + "bzrt0cDU6UPpwGohqCueZw", + "bzrt0cDU6UPpwGohqCueZw", + "bzrt0cDU6UPpwGohqCueZw", + "bzrt0cDU6UPpwGohqCueZw", + "bzrt0cDU6UPpwGohqCueZw", + "bzrt0cDU6UPpwGohqCueZw", + "c0OkgT3_p45M6FsCvH3WnQ", + "c0OkgT3_p45M6FsCvH3WnQ", + "c0OkgT3_p45M6FsCvH3WnQ", + "c1uIuH7G_H0iDn31aPif-Q", + "c4tAsAimVlPgj7zIV9p01A", + "c6lwtZBG2BzNKGtSyzLrTA", + "c6lwtZBG2BzNKGtSyzLrTA", + "c6lwtZBG2BzNKGtSyzLrTA", + "c6lwtZBG2BzNKGtSyzLrTA", + "c6lwtZBG2BzNKGtSyzLrTA", + "c6lwtZBG2BzNKGtSyzLrTA", + "c8wp1Q45CdLtTNnj6qINTw", + "cBRhMOn8c3t6EhpuS9K0vg", + "cDDKtM-30WtgKUZUhSPZow", + "cDDKtM-30WtgKUZUhSPZow", + "cDDKtM-30WtgKUZUhSPZow", + "cDDKtM-30WtgKUZUhSPZow", + "cDaMbfg0wpwI_azkSWasQw", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEvvhuguaGYCmGWrnWRz1Q", + "cEzK6HfXk1srPlYKWH6y-w", + "cFagk4BlhcbBvpuO0I98vQ", + "cGBPCS3aPXXlmHmrx5RsEQ", + "cJ5VgsZvSbEBF2_k2qcfnA", + "cNfqzNIuM2moCdDAPZaMPw", + "cNfqzNIuM2moCdDAPZaMPw", + "cNfqzNIuM2moCdDAPZaMPw", + "cNfqzNIuM2moCdDAPZaMPw", + "cPy2QFuGdjzuVBNv2-JtzQ", + "cQ6Qsfe6NvfD6UlZmix01A", + "cQ6Qsfe6NvfD6UlZmix01A", + "cRDi80GdZ6M6VVqBiq3ZdA", + "cRDi80GdZ6M6VVqBiq3ZdA", + "cRDi80GdZ6M6VVqBiq3ZdA", + "cRDi80GdZ6M6VVqBiq3ZdA", + "cRoGFhrzTt6STyxXzS_QFg", + "cRoGFhrzTt6STyxXzS_QFg", + "cRoGFhrzTt6STyxXzS_QFg", + "cRoGFhrzTt6STyxXzS_QFg", + "cSK3QkQEScwA7ISZYZcmKg", + "cSK3QkQEScwA7ISZYZcmKg", + "cSvCQL5bZ9lfqdXSQOeskw", + "cSvCQL5bZ9lfqdXSQOeskw", + "cSvCQL5bZ9lfqdXSQOeskw", + "cTku3JEuIQYlUuKgo_W7qg", + "cTku3JEuIQYlUuKgo_W7qg", + "cVP-3jHAx-YcnahqMKs8aw", + "cVP-3jHAx-YcnahqMKs8aw", + "cVP-3jHAx-YcnahqMKs8aw", + "cVP-3jHAx-YcnahqMKs8aw", + "cVP-3jHAx-YcnahqMKs8aw", + "cXlweJcTpRnUmFxwZ3wPIw", + "cXlweJcTpRnUmFxwZ3wPIw", + "cXlweJcTpRnUmFxwZ3wPIw", + "cXlweJcTpRnUmFxwZ3wPIw", + "cYiYZLNw79YI2sv5ZzfISg", + "cbl91mRg6g3lnUBctWVUVA", + "ceAXg6TZDkdNFtcE_O4vaQ", + "cemtT_LtuQxWV7j18_T0Kg", + "ciqEhcgmbAaZ5-wPT7iHYQ", + "cjIhOkmIqJlptkEMROl1nQ", + "cjsWxC_gI6Aw_G9RXpEN8g", + "ck_MxLBdFaeX0Pe9TGo2Lg", + "ck_MxLBdFaeX0Pe9TGo2Lg", + "ck_MxLBdFaeX0Pe9TGo2Lg", + "ckdRYj6mGdEYJvYh_1v9CA", + "clhaWL_s4ImtmRo0m-0Krw", + "clhaWL_s4ImtmRo0m-0Krw", + "cn26IoO-8y2a5yC5a1ibFQ", + "co4kdxqTWMp4ZBVBAoUGKQ", + "co4kdxqTWMp4ZBVBAoUGKQ", + "co4kdxqTWMp4ZBVBAoUGKQ", + "co4kdxqTWMp4ZBVBAoUGKQ", + "cpNEDBxqXj30ru03Atezyw", + "cqDrFg2lVIlEaumPl_y8qQ", + "cqDrFg2lVIlEaumPl_y8qQ", + "cqDrFg2lVIlEaumPl_y8qQ", + "cqDrFg2lVIlEaumPl_y8qQ", + "cqDrFg2lVIlEaumPl_y8qQ", + "cqbcw9VvzAfWyjGsJCyDPw", + "cqdSAx5Uej3ncVA_SUVjsQ", + "crKsOA3dVJaxbj2PKSc4rg", + "ctmMOnzOFMQjuPFQFR1Ijg", + "ctmMOnzOFMQjuPFQFR1Ijg", + "cuyNWlZFQkabnqdPXO_rXQ", + "cuyNWlZFQkabnqdPXO_rXQ", + "cuyNWlZFQkabnqdPXO_rXQ", + "cvpQVs3xbGpFXzIMrJu64Q", + "cwKD6wgqD03tpuomHWA1VA", + "cx1Cb2iE1tlEWSNW-FwFJQ", + "cx1Cb2iE1tlEWSNW-FwFJQ", + "cx1Cb2iE1tlEWSNW-FwFJQ", + "cx_5Zli6ZQBZEsnw0z8RFA", + "cz3tTm1A9PR0mkHg-r_Jxw", + "cz3tTm1A9PR0mkHg-r_Jxw", + "cz3tTm1A9PR0mkHg-r_Jxw", + "d1GrTiKrlelSEUD78AN9iw", + "d2lcY0prSIbhkAi5ECyvfA", + "d2lcY0prSIbhkAi5ECyvfA", + "d2lcY0prSIbhkAi5ECyvfA", + "d55u1lPodAfLflRouVTMDQ", + "d55u1lPodAfLflRouVTMDQ", + "d55u1lPodAfLflRouVTMDQ", + "d55u1lPodAfLflRouVTMDQ", + "d55u1lPodAfLflRouVTMDQ", + "d77brrT5P2m_vg39NwavWw", + "d7WHaUB-G_1vhvjxabxBMQ", + "d7gLTQ8jp2sYM3Jdp9DMMw", + "d7gLTQ8jp2sYM3Jdp9DMMw", + "d7gLTQ8jp2sYM3Jdp9DMMw", + "dAW0PGH_CijXXW-uSyrx6A", + "dAW0PGH_CijXXW-uSyrx6A", + "dAW0PGH_CijXXW-uSyrx6A", + "dAW0PGH_CijXXW-uSyrx6A", + "dAW0PGH_CijXXW-uSyrx6A", + "dAW0PGH_CijXXW-uSyrx6A", + "dAW0PGH_CijXXW-uSyrx6A", + "dAW0PGH_CijXXW-uSyrx6A", + "dAW0PGH_CijXXW-uSyrx6A", + "dB8rpvXeU-U7j8zoRqc_lg", + "dB8rpvXeU-U7j8zoRqc_lg", + "dB8rpvXeU-U7j8zoRqc_lg", + "dB8rpvXeU-U7j8zoRqc_lg", + "dB8rpvXeU-U7j8zoRqc_lg", + "dB8rpvXeU-U7j8zoRqc_lg", + "dB8rpvXeU-U7j8zoRqc_lg", + "dB8rpvXeU-U7j8zoRqc_lg", + "dB8rpvXeU-U7j8zoRqc_lg", + "dB8rpvXeU-U7j8zoRqc_lg", + "dB8rpvXeU-U7j8zoRqc_lg", + "dB8rpvXeU-U7j8zoRqc_lg", + "dDeMCKGJE8xF0l02PyPQKg", + "dEmpJfxat4d0i3TmqkAXzw", + "dEmpJfxat4d0i3TmqkAXzw", + "dEmpJfxat4d0i3TmqkAXzw", + "dGje15Yliqywq8MDI5FmQQ", + "dJZnxxfSj1TBzD3FyyfeDQ", + "dLwWk1CGjdl0nWT4XrDcdg", + "dLwWk1CGjdl0nWT4XrDcdg", + "dLwWk1CGjdl0nWT4XrDcdg", + "dLwWk1CGjdl0nWT4XrDcdg", + "dPU-Fy0Jf8CyFdtCnYJ7IA", + "dR-5oewY63tH4fYLV5hc3A", + "dR-5oewY63tH4fYLV5hc3A", + "dR-5oewY63tH4fYLV5hc3A", + "dR-5oewY63tH4fYLV5hc3A", + "dR-5oewY63tH4fYLV5hc3A", + "dR-5oewY63tH4fYLV5hc3A", + "dR-5oewY63tH4fYLV5hc3A", + "dRMG3BjNfH2se-egabnU-Q", + "dRMG3BjNfH2se-egabnU-Q", + "dVre-yWU3wOgyoQuLjZhuw", + "dXCCMJJCG6SB0NI-JLXs-w", + "dZbEvj5KNLRaqtv4ShlGOg", + "dZtiAg2DG5nZJD2FzttFQw", + "da68f5mgZFs3OaBztew54A", + "dawGhH-93Zf3Xci2M9UlFQ", + "deyQ05GmzOw19AUsDzeIcA", + "dits_fp6Jn13y-sS-prOMg", + "dkbt9cshahtdHiiR3C8VHw", + "dlfCY_5HI9k5YXP0NFRY_A", + "dn1QdHTtENizBvfQq0rJpg", + "dp9YRBQYpWxlM26t-YlmAQ", + "dpptNj2TDyK9YcbKw8llyg", + "dpptNj2TDyK9YcbKw8llyg", + "dpptNj2TDyK9YcbKw8llyg", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dswq7UFB-c5kE0TfryCD4g", + "dtiM4BIZ8uj8Pj0m6lGJqw", + "dvPwH8wVUiIeR9c3FhzYeQ", + "dvT_WttTqRzxVS1mJ109CA", + "dvT_WttTqRzxVS1mJ109CA", + "dvT_WttTqRzxVS1mJ109CA", + "dxAt0AmIp5IBXdkPF7Qwww", + "dxRWp_ajvwfVnp7V1wqDwQ", + "dxSK3xE1ZB_w58ylB87r2Q", + "dxSK3xE1ZB_w58ylB87r2Q", + "dxSK3xE1ZB_w58ylB87r2Q", + "dxSK3xE1ZB_w58ylB87r2Q", + "dxSK3xE1ZB_w58ylB87r2Q", + "dy9m8b1oF2u3h9LUXHjYIA", + "dys1EWfSUaUc_VpYNxn9Aw", + "e2K78dgmsrxIH1rDnjF-Gw", + "e2uWgKIDMT4N-L-tsrAnsA", + "e2uWgKIDMT4N-L-tsrAnsA", + "e2uWgKIDMT4N-L-tsrAnsA", + "e2uWgKIDMT4N-L-tsrAnsA", + "e2uWgKIDMT4N-L-tsrAnsA", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e3rNE0bZ_BElIa3hpFL9LQ", + "e6HlflPyKAlNlF7JPJCNJQ", + "e7YYWaQTMh8P2PCVzA2a8g", + "e7YYWaQTMh8P2PCVzA2a8g", + "e7YYWaQTMh8P2PCVzA2a8g", + "e7YYWaQTMh8P2PCVzA2a8g", + "e7YYWaQTMh8P2PCVzA2a8g", + "e7YYWaQTMh8P2PCVzA2a8g", + "e7YYWaQTMh8P2PCVzA2a8g", + "e7YYWaQTMh8P2PCVzA2a8g", + "e7YYWaQTMh8P2PCVzA2a8g", + "e7YYWaQTMh8P2PCVzA2a8g", + "e89rAelRyhs80QcBMQo8Bg", + "e9VBoOb6ap6y2iBqQXec9w", + "e9gExmkzbOijIY7LjXFDZQ", + "eC1ezKjb5n0AmQucckax6g", + "eCaKzXzVKYqqs4wMxzAp3A", + "eCd7pmEC4QoP7FQm1ikosg", + "eCd7pmEC4QoP7FQm1ikosg", + "eEsPvNGYH982Mv0mPexpzg", + "eEsPvNGYH982Mv0mPexpzg", + "eFaXX7H_gmfoLAN8WX-xDQ", + "eIKZHUnkOnlIeLcFKA7B_w", + "eIKZHUnkOnlIeLcFKA7B_w", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eJ7BYIhIN72fM2Cz8k8m9Q", + "eLf6mPNLMOgkAfsO77gC6A", + "eLf6mPNLMOgkAfsO77gC6A", + "eLf6mPNLMOgkAfsO77gC6A", + "eLf6mPNLMOgkAfsO77gC6A", + "eLf6mPNLMOgkAfsO77gC6A", + "eLf6mPNLMOgkAfsO77gC6A", + "eLzi3eD3ZbmXzPM7EQ3z1A", + "eOXjDtmISDDtSL4dEzZt-w", + "eOXjDtmISDDtSL4dEzZt-w", + "eRQqY-uKn1zCanFBx5tpKg", + "eRhJRvHm727VHuGPDJpA3A", + "eSs1xpPdaQi6BA9wz10Srw", + "eUkU9BypIPkspOQFVVGLEQ", + "eWgCXarjxP6P3NIXnb2q5g", + "eX9iAJM3toZWX3uGKIS4Ww", + "eXYWOJkkdfixgb7a2cb3dg", + "eXp6ZabxmzABDzP1KpFPrw", + "eZn3IOB-FE1r74FZypzHhA", + "ecwioQzMHOqcvkujHEcA0Q", + "edP2chSf3068PVlMnJWseg", + "edTeS1Ofrj8KEn1olv0sJA", + "edTeS1Ofrj8KEn1olv0sJA", + "edTeS1Ofrj8KEn1olv0sJA", + "egxYzGb2aYe2691ohXwNJg", + "ekRab6x2nuu_bqD7IimG9Q", + "enCT2wT4vOCHFvMHhBSliQ", + "enhFPgE8IS5vQWWEfmsQOw", + "enhFPgE8IS5vQWWEfmsQOw", + "enhFPgE8IS5vQWWEfmsQOw", + "enhFPgE8IS5vQWWEfmsQOw", + "enhFPgE8IS5vQWWEfmsQOw", + "eqCpUc1esI9kYzT9QuAxZw", + "er7IYYpYGm8FuaYV6j9_Kg", + "er7IYYpYGm8FuaYV6j9_Kg", + "er7IYYpYGm8FuaYV6j9_Kg", + "es2NwpstvkIN6VhWmzkTBQ", + "euIw_I7HzcVMEcOaEL-XEg", + "ewU9RfzsPed7JATT94aw-w", + "eywVrPneVfi3Wiw2E45Ckw", + "f-B_DnWkY3i33A_-cn2DVA", + "f15ZZuvJposXWOcmbKQgxA", + "f15ZZuvJposXWOcmbKQgxA", + "f5pCmW13zl5OWUDLG_Clrw", + "f5p_PMJgJDLSgaMg1oCNpg", + "f5p_PMJgJDLSgaMg1oCNpg", + "f5p_PMJgJDLSgaMg1oCNpg", + "f5p_PMJgJDLSgaMg1oCNpg", + "f6OHtxWEEYSKC5jCOpZRYw", + "f7zfB261PmeVR0CVV6m2gA", + "fB-E1mu6hJEFot7jB8X5yw", + "fCWPdfu_RIOGbkcM4xycpQ", + "fClDzFj1dlODSHJedjtnCg", + "fEKUJczxV0wWF5_qwXHZAQ", + "fEfXEAdeoPaW4CEh2_iKSw", + "fEiYEja4VdiU8ifU8vItEA", + "fFdJSLTbnU7RRuB30GoVZA", + "fFtXuenTBEiIanE9ZLS9KQ", + "fGeO8E0dKkjTaq21mlOYCA", + "fHicjb8IhyJmUDNrJFOj6A", + "fKGMWjXtJBieYoVCFNENrg", + "fKMNI-vz54Qowk84IKMX4g", + "fMXwmZZHoKY5ug0oBlnUxw", + "fNhSD70xDQrz7J48eeJThw", + "fNviosb4qVFLp7sfJPNLzA", + "fOvbXkq5emlxJGl5W6ErrA", + "fOvbXkq5emlxJGl5W6ErrA", + "fP-gNgLpCIyqoLUFjpUKXA", + "fP-gNgLpCIyqoLUFjpUKXA", + "fQmBDS59foxFPsSMJZb9xQ", + "fQmBDS59foxFPsSMJZb9xQ", + "fQmBDS59foxFPsSMJZb9xQ", + "fQmBDS59foxFPsSMJZb9xQ", + "fRZxgjNrvwoHRGv8g3hlLg", + "fTAss9wSqMPQUI2HD05f3w", + "fZ3COijH60wdDIIVUpSInQ", + "fZfGpgZFJokP-jaeydrs0Q", + "fZfGpgZFJokP-jaeydrs0Q", + "fZfGpgZFJokP-jaeydrs0Q", + "f_CZN8iINQcDj7x0CPthQQ", + "f_rIvCQMW5oayMPHCj4aUg", + "f_rIvCQMW5oayMPHCj4aUg", + "f_rIvCQMW5oayMPHCj4aUg", + "f_rIvCQMW5oayMPHCj4aUg", + "fa5CZf7FD-aM6Y-fCgxg9g", + "fbT9eHA5tj6rUvxqpnewLA", + "fc3Tm6Y2xJo9UzcorZGtTw", + "fc3Tm6Y2xJo9UzcorZGtTw", + "fcwlJZe3vp7o1kWId0rqug", + "feYj-gxH446kk14zhma-hA", + "ffH4BrIPq_Gg0Z8uCbD2yQ", + "ffbOe9M5qyzsF-UHcB06EA", + "ffbOe9M5qyzsF-UHcB06EA", + "fhpDQNd5UmqqnR1Mw5dfLA", + "fiNry6aywxk33PR7ZSinSA", + "fiqNEC4hTNfpjbFJ8zPtkA", + "fkbxUTZgljnk71ZMnqJnyA", + "fkbxUTZgljnk71ZMnqJnyA", + "fkbxUTZgljnk71ZMnqJnyA", + "fkbxUTZgljnk71ZMnqJnyA", + "fl5eCchuTXp-rAzON1qrRQ", + "flNTKXUVadjdmvcqN0AFxg", + "fmVqFyGK_erbPbR830tm8g", + "fnFonGQxpm_e6wtqJ2HwRw", + "fqaDj1pN5-CyodNN44HbZQ", + "frJcVQQvYZxinCGo-1mmtQ", + "frr-8yCU41FP7ynT4TIpsQ", + "fuHFrsCqH7YaTh8V39u2Ew", + "fxBB-3BAu4XcVc0Zh58L7Q", + "fxBB-3BAu4XcVc0Zh58L7Q", + "fxBB-3BAu4XcVc0Zh58L7Q", + "fxBB-3BAu4XcVc0Zh58L7Q", + "fxhAZVfrZSTvh4Ktxrpz7A", + "fzLzWZQgzth4yv0Aw0PoLg", + "fzLzWZQgzth4yv0Aw0PoLg", + "g4mGiFInhcIQCenccesSCA", + "g5HW81gVegsp2uHOoheefQ", + "g5HW81gVegsp2uHOoheefQ", + "g5HW81gVegsp2uHOoheefQ", + "g5kZ6fdMbNovA5I3sFH88A", + "g8ia7_SjtnnoFsx8t6EVmg", + "g8uTn1yVw1EYmPA-d4Jf8Q", + "g8uTn1yVw1EYmPA-d4Jf8Q", + "g97kHjtGB8Jj1ZGSgpTkgw", + "gAZpLZngO-LIYH92FuHP9g", + "gB5BZqY7kCPDXjPyO-APoQ", + "gBLxJrtyci28b-8zCYT3hg", + "gBLxJrtyci28b-8zCYT3hg", + "gBfy_HlKLdmt8WRkHo7DCQ", + "gC1zzVI3GFMD6nesCimzrg", + "gD9pAArQSXL9gPSyVhbpxg", + "gDav7mSa1H0kLuPzayJt0Q", + "gEtqzxSW2T09YOfj4Wq1OQ", + "gEtqzxSW2T09YOfj4Wq1OQ", + "gEtqzxSW2T09YOfj4Wq1OQ", + "gEtqzxSW2T09YOfj4Wq1OQ", + "gEtqzxSW2T09YOfj4Wq1OQ", + "gHwfGc8BS0hXEJl9pqoeOA", + "gHwfGc8BS0hXEJl9pqoeOA", + "gM-zvldT2mxZOhlxJvpRXw", + "gM-zvldT2mxZOhlxJvpRXw", + "gM-zvldT2mxZOhlxJvpRXw", + "gO6kDS9N3EuxPdxaJ2Xycw", + "gO6kDS9N3EuxPdxaJ2Xycw", + "gO6kDS9N3EuxPdxaJ2Xycw", + "gO6kDS9N3EuxPdxaJ2Xycw", + "gQVKrVY63cW2FiLmkopdkg", + "gRG-cOCdB8TOsWTmVkJDbg", + "gRG-cOCdB8TOsWTmVkJDbg", + "gRG-cOCdB8TOsWTmVkJDbg", + "gRG-cOCdB8TOsWTmVkJDbg", + "gRG-cOCdB8TOsWTmVkJDbg", + "gRG-cOCdB8TOsWTmVkJDbg", + "gY8CypHN5IKSPd6Ua0pIHA", + "gY8CypHN5IKSPd6Ua0pIHA", + "galH3SQEgM8V50ZaRLSobQ", + "gbCFQS2suYv46rP_aUsebA", + "gcQoFFr9FRsGHE05TMSKpw", + "gcwvSoMpg-MLbRLF5e2Alw", + "ggzrrjwKdLd4s3CsiRD2Xg", + "giO_M_zlu3womJVgYVikaw", + "giwOUz_dwg5QpZ6rn_mtEA", + "giwOUz_dwg5QpZ6rn_mtEA", + "giwOUz_dwg5QpZ6rn_mtEA", + "gkQuFSIA2UC_9Mknn8WGYQ", + "gkQuFSIA2UC_9Mknn8WGYQ", + "gkppypvMO9S8VR3D3H8lzg", + "gmylCg4my8_Ui_N1dUbhxw", + "gnJwzGqt8VBlxXZgx4dmow", + "gnQnX6SwfbYb7NNG7A5Mbg", + "gpzmfljwMvF6axjuntzBmA", + "gpzmfljwMvF6axjuntzBmA", + "gpzmfljwMvF6axjuntzBmA", + "gpzmfljwMvF6axjuntzBmA", + "gpzmfljwMvF6axjuntzBmA", + "gpzmfljwMvF6axjuntzBmA", + "gpzmfljwMvF6axjuntzBmA", + "gpzmfljwMvF6axjuntzBmA", + "gs-Dp-bkHGP2EKd53eqOEg", + "gsRY5SfC1FLceKELS1WAxw", + "gsRY5SfC1FLceKELS1WAxw", + "gsRY5SfC1FLceKELS1WAxw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtQ4kMk_MBWrPUAFqVnYyw", + "gtX88AmaTOI_01lUU2TraA", + "gvBg_Q7r2IbP7JxDpdNETQ", + "gvfqv8XsdCrMz1u0cPr7iw", + "gvfqv8XsdCrMz1u0cPr7iw", + "gvfqv8XsdCrMz1u0cPr7iw", + "gzS2gTOADieg_5WoIadp-A", + "h-mcFcSefWaXpPLGLAmk8g", + "h2McnzqwfbL5yBZRK65Eug", + "h2McnzqwfbL5yBZRK65Eug", + "h36HgL3bbvDsQtV-NCGi2A", + "h3gGqWFKeM0FT-wjtm8F8Q", + "h46MgXLb9R9Rx7aN-IJqEw", + "h4Lh6GnasWPDlVelT8lJQg", + "h4Lh6GnasWPDlVelT8lJQg", + "h6SWrdSzXfBtMfWpEhL_SQ", + "h7Bs1R4R3Tm0Nxa-4OtEmQ", + "h7Bs1R4R3Tm0Nxa-4OtEmQ", + "h7Bs1R4R3Tm0Nxa-4OtEmQ", + "h7Bs1R4R3Tm0Nxa-4OtEmQ", + "h7Bs1R4R3Tm0Nxa-4OtEmQ", + "h8ulXQ0PqCWi8WjndyD3QA", + "h8ulXQ0PqCWi8WjndyD3QA", + "h9JxRYZ-Y8EVIiI8sDoSGA", + "h9JxRYZ-Y8EVIiI8sDoSGA", + "h9uKx3HFLoY7Xs1QyYtYSw", + "h9uKx3HFLoY7Xs1QyYtYSw", + "hCDtT-9vDXD-e8HuC9915w", + "hCDtT-9vDXD-e8HuC9915w", + "hDF35J9yuBLmXhpu5RmYAg", + "hDeNHR-uaDqXexxBeqdlYw", + "hFR94sc2fPjalZlQgZv1dA", + "hHI8fycCSE9gTrpxwlqNFA", + "hHi-c42PvbwAHHG7--kJBg", + "hJAc9hTnx9K2cxz2AY0x4g", + "hQj1w50CfP8YweEdnC-JyA", + "hQvt9SGcnRC8tVEB_Tur9Q", + "hQvt9SGcnRC8tVEB_Tur9Q", + "hRAq7thJYnzPQjHjUPFm_g", + "hVIXRptYWdYbTtDZhNkyZQ", + "hVIXRptYWdYbTtDZhNkyZQ", + "hVIXRptYWdYbTtDZhNkyZQ", + "hW140Tsis8BPkUPY8KAOfQ", + "h_QroixBMtZeI1zG0ozyLg", + "h_QroixBMtZeI1zG0ozyLg", + "h_QroixBMtZeI1zG0ozyLg", + "h_QroixBMtZeI1zG0ozyLg", + "h_WOoGDXxQ01T-FvvwCZMg", + "h_WOoGDXxQ01T-FvvwCZMg", + "h_r9uFHZsC57ztTXanIIag", + "hfr8gSfTBHDi3nB85Aj3VA", + "hfr8gSfTBHDi3nB85Aj3VA", + "hfr8gSfTBHDi3nB85Aj3VA", + "hfr8gSfTBHDi3nB85Aj3VA", + "hfr8gSfTBHDi3nB85Aj3VA", + "hfr8gSfTBHDi3nB85Aj3VA", + "hgHBLHU_ANUlwA90ks6yRw", + "hhxE01XFPFaD7ysVa9fC9w", + "hi3CqQWpaFXK4L6DFCZgbw", + "hlKDzMS4nmygKgJXIbJdqg", + "hlv_ksAXxTQ2GTBcbRb2Jw", + "hm1m5RbQi5GyPX_zeSnkSQ", + "ho9WujSzYljmN4932xjq9g", + "ho9WujSzYljmN4932xjq9g", + "hpS1QtdrBQjGg-LCbfqeSA", + "hrCIM-i5cm0sSd-oVTZrsg", + "hrzNr_V8YVZ7ibkr1777pA", + "huy3RilOiTqQSYKV3mmOsA", + "hv8-_p6qfhr6ZdKlRrlVbw", + "hv8-_p6qfhr6ZdKlRrlVbw", + "hv8-_p6qfhr6ZdKlRrlVbw", + "hv8-_p6qfhr6ZdKlRrlVbw", + "hv8-_p6qfhr6ZdKlRrlVbw", + "hv8-_p6qfhr6ZdKlRrlVbw", + "hvoLs_S85r0RS2Fhd-3zRQ", + "hyDoVUWwwXEvgB5sKTLeXQ", + "hyJvBqqalN42JOW6IRFcTw", + "i-0Y2eyXmGTbqHsZAQaU7Q", + "i-4GrP60Jbwood3rLzWi1A", + "i-4IPl_ionHN39EKN5HXmQ", + "i2OZ9-P_pjOFSV36486xoQ", + "i8fCXa3mPVuoqg3-TWHbmQ", + "i8qUzmADhGx9PMH8RJ_tdA", + "i8uuylUIH4F1Fcj0a85AGg", + "i8uuylUIH4F1Fcj0a85AGg", + "i8uuylUIH4F1Fcj0a85AGg", + "i8xLrghLCR3CLFjtylOjjA", + "i9L3nP1oJZp3HlfubLaOlA", + "i9L3nP1oJZp3HlfubLaOlA", + "i9L3nP1oJZp3HlfubLaOlA", + "i9L3nP1oJZp3HlfubLaOlA", + "i9L3nP1oJZp3HlfubLaOlA", + "i9L3nP1oJZp3HlfubLaOlA", + "i9L3nP1oJZp3HlfubLaOlA", + "iBROdefyYqo_oyuWWpBVog", + "iDeUqi9fXDm_fNSrL17LBg", + "iERjY1emNpBsfKAZbsHzfQ", + "iFkuHlkQPsBsMnUTpjsUKg", + "iFkuHlkQPsBsMnUTpjsUKg", + "iFzKQ1osn3wtTeR_3kGp_w", + "iFzKQ1osn3wtTeR_3kGp_w", + "iFzKQ1osn3wtTeR_3kGp_w", + "iFzKQ1osn3wtTeR_3kGp_w", + "iG0UNe2wBwhcySMoRhbAQA", + "iH1Vr4ITYNoM1EQTmFjMow", + "iH1rt2A0cDFvTr2IZcc8_w", + "iKaxpLusdxwd55Cj-SfoCQ", + "iKcZg3Lb1e0QLK7zMZlwWQ", + "iKcZg3Lb1e0QLK7zMZlwWQ", + "iLCTWRKOWFgxy9lCZCKQuA", + "iN7YDy9yd7ARVJltHW-2lg", + "iN7YDy9yd7ARVJltHW-2lg", + "iODh53N_5E36y5qsIo39CQ", + "iO_uh5Oy6QpicgP1AW1lOQ", + "iPVGKFSJxOxxesodHaSqSw", + "iQ3-U2pFJokP-jlw4Yr9FQ", + "iQ3-U2pFJokP-jlw4Yr9FQ", + "iSNTvlpM7u1g4sh2COQurQ", + "iSNTvlpM7u1g4sh2COQurQ", + "iSNTvlpM7u1g4sh2COQurQ", + "iSNTvlpM7u1g4sh2COQurQ", + "iSUtuDFidZ_ArB9M-KYzuw", + "iTk3U2-62NFOFRUZ1dKBrw", + "iTy0H527yiJJbCWjdQs3bg", + "iUpbth7c94ENpnn5oohq_g", + "iX3hg20o3ZB-dQ1wA5bFxg", + "iXE09wsufQpbcJFrBbH5RA", + "iXE09wsufQpbcJFrBbH5RA", + "iXE09wsufQpbcJFrBbH5RA", + "iXE09wsufQpbcJFrBbH5RA", + "iXE09wsufQpbcJFrBbH5RA", + "iZ81fGBmbgk1lRiTm25tUw", + "iZ81fGBmbgk1lRiTm25tUw", + "iZ81fGBmbgk1lRiTm25tUw", + "iZg5QETm-DfAeWtvNobLmQ", + "i_JW0SMBS0hXEJxPvmBaaA", + "i__VMh3MgmTJp7v_qMbssA", + "ia3K2jrNmbrn13w8cuQ30Q", + "iaYGOKrCYzeQFPvSFK3LGw", + "iax9YXpVBWB7dSlpz7WGyQ", + "icPJ7tOGKK7zFdZdegZdLQ", + "icPJ7tOGKK7zFdZdegZdLQ", + "icPJ7tOGKK7zFdZdegZdLQ", + "idAHvTfpCa_Lill3CvLIKw", + "ieVPbh3z67ZFj7IGoqq7zg", + "ifN9r0wurhPb3dG8PudTpA", + "ifuzCpl1zo6zLw_paxkEdQ", + "ifuzCpl1zo6zLw_paxkEdQ", + "ifuzCpl1zo6zLw_paxkEdQ", + "ihprad0bkU-u2IU9StodIg", + "ihprad0bkU-u2IU9StodIg", + "ilROEXfY2pUH01XyVGW7lg", + "inLD7FTDiZ9QX8bC0I9L_Q", + "isA5sAubGPm1mkHKsussQg", + "isaH-h45nfZl4J_NtapgSw", + "iw-GJsvRO-R4iQjWGDQb8g", + "iw-GJsvRO-R4iQjWGDQb8g", + "iw-GJsvRO-R4iQjWGDQb8g", + "iw-GJsvRO-R4iQjWGDQb8g", + "iw-GJsvRO-R4iQjWGDQb8g", + "ixcTnlj3GyJl_riemMVu5g", + "iynY3Vpl2yeKIqRo2Ld9YA", + "iynY3Vpl2yeKIqRo2Ld9YA", + "j0GTyJD3lYhDegN7k1VG_w", + "j0VsjQ_de28UC7IMpEE77Q", + "j1jm2CrNOrTZOKGqZZLAgA", + "j30Xm5pao1UwDtxwoCPwUw", + "j6lTWpvLdhLMziAIojgZ2Q", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j6ymeOp9wGkYFilkoBNaXg", + "j7DDlSF8lqr2vW0364KpMQ", + "j9nrUn1ozBwNCW0cIRIfuA", + "j9nrUn1ozBwNCW0cIRIfuA", + "j9nrUn1ozBwNCW0cIRIfuA", + "j9q5artJZBLmNbsusN-vBA", + "j9q5artJZBLmNbsusN-vBA", + "j9wdcHVIMBX64V9dKDLXoA", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jA6JkQ0PFn46mJYMDk3jtw", + "jBeiHwwOyRIapBbs5J2Ojg", + "jBeiHwwOyRIapBbs5J2Ojg", + "jBeiHwwOyRIapBbs5J2Ojg", + "jCDQmNY6Xpp-DMtX2LlGZg", + "jCDQmNY6Xpp-DMtX2LlGZg", + "jDJzz1R3fHRGs25yj3SB1A", + "jE-4Ja_8RAzuC-rb8IfgCg", + "jEBVtdqhsioEQwhXyNMdhg", + "jEBVtdqhsioEQwhXyNMdhg", + "jEBVtdqhsioEQwhXyNMdhg", + "jFXaUFWU5-qegk_YPBSVHw", + "jFXaUFWU5-qegk_YPBSVHw", + "jG8RV1XmTT7lPs6gbbzWEA", + "jH-Kh7eMoVAEa99gkdQ-YQ", + "jH-Kh7eMoVAEa99gkdQ-YQ", + "jH-Kh7eMoVAEa99gkdQ-YQ", + "jNnn0Cs8-QNABXdA7q71mA", + "jOdHQLOYIGEyn_avpIhwJA", + "jQWANZrMPDFk0n7awqzZRA", + "jQWANZrMPDFk0n7awqzZRA", + "jQWANZrMPDFk0n7awqzZRA", + "jRPUUEtO9tA38nKSenaVfw", + "jRPUUEtO9tA38nKSenaVfw", + "jRm5GYz0vdCovh1sp2XZ0A", + "jRm5GYz0vdCovh1sp2XZ0A", + "jSTqD_Ge_wRWKJ482Qk1_Q", + "jSTqD_Ge_wRWKJ482Qk1_Q", + "jUOioEgL9y6klFiTOk4p0A", + "jXtmC4_G6XhSU0GNhzv7SQ", + "jYKah-GaJpbI-jAwYcFi1Q", + "jYKah-GaJpbI-jAwYcFi1Q", + "jZ9kRw1QvW-8GEY-d73XeA", + "jZIIbzomXYaxFEdAToFiSg", + "j_lFur9yXr9K2vH2fseIFg", + "jckGVFRAvWURR3kz1QpfwQ", + "je1jG-SMcDP5bWyoezk-tg", + "je1jG-SMcDP5bWyoezk-tg", + "je1jG-SMcDP5bWyoezk-tg", + "je1jG-SMcDP5bWyoezk-tg", + "je1jG-SMcDP5bWyoezk-tg", + "je1jG-SMcDP5bWyoezk-tg", + "je1jG-SMcDP5bWyoezk-tg", + "je1jG-SMcDP5bWyoezk-tg", + "jg3LdO4DNz9FsefjUG1F1g", + "jg3LdO4DNz9FsefjUG1F1g", + "jg3LdO4DNz9FsefjUG1F1g", + "jiFBP8aULjLbsVdXEn7rug", + "jiN7sTuUwZ-RI01Vac0Xrg", + "jiN7sTuUwZ-RI01Vac0Xrg", + "jjKpARUU3mW6HQ-DZ0nY8A", + "jkfqsU9w34yk0ipcsxq5Hg", + "jl0Few0KXqirBZp0WuOd2w", + "jl0Few0KXqirBZp0WuOd2w", + "jl0Few0KXqirBZp0WuOd2w", + "jl0Few0KXqirBZp0WuOd2w", + "jp89ntsvEyhpH5Dc3mZilA", + "jsTFtBZdW_rD_BRYKXaS_Q", + "jsTFtBZdW_rD_BRYKXaS_Q", + "jsTFtBZdW_rD_BRYKXaS_Q", + "jsTFtBZdW_rD_BRYKXaS_Q", + "jsTFtBZdW_rD_BRYKXaS_Q", + "jtEB8q7ZNk5LwicDPNbPVQ", + "jwkBY0s-EHDmaMTnMHI2lg", + "jwkBY0s-EHDmaMTnMHI2lg", + "jwkBY0s-EHDmaMTnMHI2lg", + "jwkBY0s-EHDmaMTnMHI2lg", + "jyHYRKpoKiz_YdnlTFddHg", + "jyHYRKpoKiz_YdnlTFddHg", + "jyHYRKpoKiz_YdnlTFddHg", + "jyHYRKpoKiz_YdnlTFddHg", + "jydH41zj5Xx4jS3ZDDIhSg", + "k-iHhugN07psoCA3oD8uAg", + "k-oYEuE0qNzcsmMdylxs5g", + "k-oYEuE0qNzcsmMdylxs5g", + "k-oYEuE0qNzcsmMdylxs5g", + "k-oYEuE0qNzcsmMdylxs5g", + "k0ECrHyaBQYN9EA2YbnUsg", + "k0ECrHyaBQYN9EA2YbnUsg", + "k3HyWSdTGgne1xIId1mIvA", + "k4Xm7YLE1W0WZao9WzNqzA", + "k8128AKbUGB0smWYBgRB6A", + "k99M4bkjfKmg3-yt9HFm8A", + "k99M4bkjfKmg3-yt9HFm8A", + "k9qlBuUUuQaRGtKxyO_pag", + "kBh4AYyyRHdBMUkG_GKNgQ", + "kBh4AYyyRHdBMUkG_GKNgQ", + "kC4ZWtnGZdVrn9r8RWDIrg", + "kC4ZWtnGZdVrn9r8RWDIrg", + "kCbL_O4te-WAGQK-GOmsBg", + "kGpy-6Axrjm2xCzJFK67Cg", + "kHalUfEHqcn65y0_2ltybQ", + "kJCg5l0wTnKMeEYikbvwfw", + "kJCg5l0wTnKMeEYikbvwfw", + "kJCg5l0wTnKMeEYikbvwfw", + "kJCg5l0wTnKMeEYikbvwfw", + "kJCg5l0wTnKMeEYikbvwfw", + "kJCg5l0wTnKMeEYikbvwfw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kKGTpbBfgcr2Zy_3y4Q-Aw", + "kMerhGqwou_LAaQDIMY-9w", + "kQIfOKgH7suSILPob4uOXA", + "kRDRwBGBMalD6BcjnR3JbQ", + "kS74ucMYVsOCEN6lWzqZlw", + "kS74ucMYVsOCEN6lWzqZlw", + "kTJVCBjDfmFAPRrGLStltQ", + "kUJgVxIXgDBTomuPsxvCVw", + "kUJgVxIXgDBTomuPsxvCVw", + "kYDXBO5SkBxFVe0Sldgb5g", + "k_s_ITRPELxw2Zk2jzGG8w", + "kjX67_WPwwjOmve4ZUSb3A", + "klPbOjidNHRsFecU34u2tQ", + "klPbOjidNHRsFecU34u2tQ", + "klPbOjidNHRsFecU34u2tQ", + "klX8tI6RbguXhwa8P7ml8g", + "klX8tI6RbguXhwa8P7ml8g", + "klX8tI6RbguXhwa8P7ml8g", + "klX8tI6RbguXhwa8P7ml8g", + "klX8tI6RbguXhwa8P7ml8g", + "klX8tI6RbguXhwa8P7ml8g", + "klX8tI6RbguXhwa8P7ml8g", + "koqMTfqkuD6zwA-Wl7ESpA", + "kpBi8LFR3RTjSJqFuljOuQ", + "kpBi8LFR3RTjSJqFuljOuQ", + "kpBi8LFR3RTjSJqFuljOuQ", + "kpBi8LFR3RTjSJqFuljOuQ", + "kpBi8LFR3RTjSJqFuljOuQ", + "kptqAf2DOdNTQQu52rpM3g", + "kptqAf2DOdNTQQu52rpM3g", + "kptqAf2DOdNTQQu52rpM3g", + "kptqAf2DOdNTQQu52rpM3g", + "krGbMu8JHiKkyENUYIKByw", + "krGbMu8JHiKkyENUYIKByw", + "krRTeyA1V-X3nZVYjnbwWA", + "kteYclMJmBgAkuGPrvc2kg", + "ku9JPnt9w-bpii9tERrqJQ", + "kwGfYhr1GsPl-q9KOVF6bQ", + "kyX4HuuLIjtT78u3tBP5uA", + "kyX4HuuLIjtT78u3tBP5uA", + "kyX4HuuLIjtT78u3tBP5uA", + "kyX4HuuLIjtT78u3tBP5uA", + "l02Rky0rhr7e1TqmERHkOQ", + "l0hCUDJE9WA5zrDYnTjz6w", + "l24TKPxY5vj1MuNBElA0bw", + "l3IQnUKBm9e5-N-d3c2-zQ", + "l7MRN84z7GBONDE4j4f6FQ", + "l7U3ml7f2_vVtVCQjrIATg", + "l7U3ml7f2_vVtVCQjrIATg", + "l7U3ml7f2_vVtVCQjrIATg", + "l7U3ml7f2_vVtVCQjrIATg", + "l8by2NZ7WjCFmKmn5LkVDA", + "lF0402c3xDTaGy1WpLy7vw", + "lFmnG5E5GwmKFptmUf-qtg", + "lGiuUKjDiEK6Em1dBmf8cQ", + "lGiuUKjDiEK6Em1dBmf8cQ", + "lHZiv7a58px6Gumcpo-6yA", + "lHZiv7a58px6Gumcpo-6yA", + "lICW2gRy3TXlIYomtjSJtw", + "lICW2gRy3TXlIYomtjSJtw", + "lICW2gRy3TXlIYomtjSJtw", + "lLSqJ_lK-jxr01mEXBTexg", + "lMAmh2IiCbQ0SM1PF0vOzQ", + "lMAmh2IiCbQ0SM1PF0vOzQ", + "lMCLsuvwtl5Ienaf8gCxzg", + "lMVnJZCEehytXJ1BAE4FQg", + "lMopnfBHMQ7R4ZeUvSHsCA", + "lPFcxZmqiy0vqSr3tr4NBA", + "lQWNKvZdgmHySTzr2d4Fnw", + "lSN_wOi6EtlLmPRGOv3HiA", + "lSN_wOi6EtlLmPRGOv3HiA", + "lSN_wOi6EtlLmPRGOv3HiA", + "lZfEINaOgU5CKXhtrPhf5w", + "l_F8CipdUd9pGgDh42x0pA", + "l_plqR4x5xi_qOVu9JWCxQ", + "l_xl3hARd-vjgdwUC4TrNw", + "l_xl3hARd-vjgdwUC4TrNw", + "l_xl3hARd-vjgdwUC4TrNw", + "lff4bfceUG2apmCG5TYY-A", + "lfjVNXK_x0C4X5O62984zg", + "lfjVNXK_x0C4X5O62984zg", + "lfjVNXK_x0C4X5O62984zg", + "lhvHkorjDXPGNzTfFtintg", + "lhvHkorjDXPGNzTfFtintg", + "liB_gjAyJgmggDkDXaj8yA", + "liB_gjAyJgmggDkDXaj8yA", + "ljpmjACwvo52D1nC2cyFxQ", + "lm-XJDFh7ENnbSwnD_HOPw", + "lm-XJDFh7ENnbSwnD_HOPw", + "lnUCyqDyVJYAXu-upQeomA", + "loNxquzuzn2Bq3kr01g2ng", + "lqnkRSi2l38NtuG1By7gSw", + "lsX2eCLSr4Q70_mA1t3KeQ", + "lsX2eCLSr4Q70_mA1t3KeQ", + "lttOzJDK7vp2gzlL7l9Tyw", + "lu3U19P1ddOrJLDu-spLOg", + "m-i3pqvNoPRjOJ3b3sEiiw", + "m140cnmnDMXwCTqH-lotHA", + "m140cnmnDMXwCTqH-lotHA", + "m2-tH33cq1FP2Q7Is62J0g", + "m2ILrEK1YmDxo9niRj31tg", + "m2ILrEK1YmDxo9niRj31tg", + "m2ILrEK1YmDxo9niRj31tg", + "m2ILrEK1YmDxo9niRj31tg", + "m2ILrEK1YmDxo9niRj31tg", + "m3tIqGWDOzCH_q4z0bYhiA", + "m3tIqGWDOzCH_q4z0bYhiA", + "m3tIqGWDOzCH_q4z0bYhiA", + "m3tIqGWDOzCH_q4z0bYhiA", + "m4x84wu6bFWB-TE0PfqTWA", + "m5-Un0na0bSGJs4I2yfHnw", + "m5-Un0na0bSGJs4I2yfHnw", + "m5p8puApNHgdtwb3aFhxPA", + "m5p8puApNHgdtwb3aFhxPA", + "m6DukRuoBGn25PtbhUDv5w", + "m6DukRuoBGn25PtbhUDv5w", + "m8nMZ6NuIzZBkH4l1Z7acQ", + "m90x-IDkYTtkxx7JZAYrFA", + "m90x-IDkYTtkxx7JZAYrFA", + "m90x-IDkYTtkxx7JZAYrFA", + "m9n_m2jwcbINltpN6wcTbQ", + "mABShI7f7tic8wvc-ikJJA", + "mBpiFuvmv7Bhv5yWRlHpOw", + "mBpiFuvmv7Bhv5yWRlHpOw", + "mBpiFuvmv7Bhv5yWRlHpOw", + "mEZ3CJcb_VMlpS4-WOOObw", + "mF7WiqgSdIb9xDGS5qVe3A", + "mHzD8kiYxVjek9AoaxFfnQ", + "mIhHJLRWLV08bvGOk_MaUQ", + "mIhHJLRWLV08bvGOk_MaUQ", + "mIhHJLRWLV08bvGOk_MaUQ", + "mKVsnuGyVSIshrQFdthLlA", + "mKXTVTxiptRtMPDOFrZoTw", + "mLFVu8DXaLHoY-5Gs0ULEw", + "mL_UI4nPuRhvUWgvxCaoSw", + "mL_UI4nPuRhvUWgvxCaoSw", + "mLfjq87DJtmgQUOWZb8qsA", + "mN5n7gVldcljtJtvz9OvlQ", + "mN5n7gVldcljtJtvz9OvlQ", + "mQVHcTFXg4JaHxKFUu2SNA", + "mRpiA072sWnuzRZFuwjVhQ", + "mRpiA072sWnuzRZFuwjVhQ", + "mRpiA072sWnuzRZFuwjVhQ", + "mRpiA072sWnuzRZFuwjVhQ", + "mRpiA072sWnuzRZFuwjVhQ", + "mRpiA072sWnuzRZFuwjVhQ", + "mUdULebVXxeJAT1WZsiwwg", + "mVBN-6O2zeIv8GsCRrlSsw", + "mVg5ImyOXWtTMPsPyAoJFA", + "mVg5ImyOXWtTMPsPyAoJFA", + "mWj5c0ESBFbOdqOPS0pc7w", + "mWj5c0ESBFbOdqOPS0pc7w", + "mWj5c0ESBFbOdqOPS0pc7w", + "mWj5c0ESBFbOdqOPS0pc7w", + "mYmuipE_JkxJYi6xuD4pIQ", + "m_m1DDbzlNuMTD9gy1hMUA", + "m_m1DDbzlNuMTD9gy1hMUA", + "m_m1DDbzlNuMTD9gy1hMUA", + "m_vFRi2fRRTLPHNf1t7ZcQ", + "mdgXK8UgXxJq-aF0PWZBWQ", + "mdk6GXreYf1FfT2SjVM7cg", + "mfgswW5tnP--5haDnNTmnw", + "mfgswW5tnP--5haDnNTmnw", + "mfgswW5tnP--5haDnNTmnw", + "mfgswW5tnP--5haDnNTmnw", + "mm7pA8Vo6frfLprU_GjPaQ", + "mmnJ5oQYlVV3vqFOcvo_GQ", + "mmnJ5oQYlVV3vqFOcvo_GQ", + "mqZxgkeFxfHgS32BvLbCOQ", + "muP6clMnO_x87qmA5qXiUw", + "mwFhvPFJJoW91LX47BPDzw", + "mxNhetCUxYQZQBlbqXLWtA", + "mxRwXt-8CQt60ehjLjpoTw", + "mxRwXt-8CQt60ehjLjpoTw", + "mxrYYrG64FXkauTRv-4b5Q", + "mzExXCPAxvBlsYOcwqbUPA", + "mzExXCPAxvBlsYOcwqbUPA", + "mzExXCPAxvBlsYOcwqbUPA", + "n-BD459aSOA4JmuYxWtZ3g", + "n-BD459aSOA4JmuYxWtZ3g", + "n-IlVo5-jcMpxFIQmT8ZXQ", + "n2YJwPYz0nZWtSrrKY3ZUw", + "n2YJwPYz0nZWtSrrKY3ZUw", + "n55ZjUBJzU7CnzmyoRyorw", + "n6NwYyHMoGpa7OtNyCkp7g", + "n6NwYyHMoGpa7OtNyCkp7g", + "n6NwYyHMoGpa7OtNyCkp7g", + "n6NwYyHMoGpa7OtNyCkp7g", + "n6pk2kHJCAUsXzT61-UNuw", + "n7DxyegwJYX-a6yw00GY5g", + "n89kGiBdFucX6T4kdjXe_g", + "n9pHjqEBxYX6b9EURk3zKQ", + "nAEagQQcCrvY7LHUFhFC8w", + "nAEagQQcCrvY7LHUFhFC8w", + "nAEagQQcCrvY7LHUFhFC8w", + "nB1aJ0RC5jjZQRrK59KJIw", + "nB6_4jUC-8Udf2LLExTzSQ", + "nB7ASI-agyjwniBzr5SZ-Q", + "nFLCKDx8NAlt_5E9arxt2Q", + "nFTZ4MXQlS-LtyA78dSw9w", + "nFTZ4MXQlS-LtyA78dSw9w", + "nG9wLCiLPO8YY97L1OXEbA", + "nHwJwC72NgoqK3ksZQ-0uQ", + "nIOgveIKxj-h480kaCAkPQ", + "nK7Uuz4qfuv-NRdHGyIKnQ", + "nKhcql1SQ7g-aNYXxz6k1A", + "nKhcql1SQ7g-aNYXxz6k1A", + "nKiJH8FKWMrWsgu4g1XUxQ", + "nLb8frZOVnOUSlDo45we-g", + "nLlEYtkzwUT2CAaOaAzLCw", + "nMeuu1XJcvZvKLj3D6xu_g", + "nPCAxeiqMcZau3eqPVPDPQ", + "nPCAxeiqMcZau3eqPVPDPQ", + "nPCAxeiqMcZau3eqPVPDPQ", + "nPCAxeiqMcZau3eqPVPDPQ", + "nPXIxd1Knp6dqjD3Kv4egw", + "nPa1c1LhFbogbVa-sAz2fw", + "nPa1c1LhFbogbVa-sAz2fw", + "nQRJ3xr79n3cY6qS99Iffw", + "nQRJ3xr79n3cY6qS99Iffw", + "nQWGdRxvqVjwlLmQWH1Phw", + "nQWGdRxvqVjwlLmQWH1Phw", + "nYSg4ACMPmNhm12VGmWFHg", + "nYSg4ACMPmNhm12VGmWFHg", + "nYSg4ACMPmNhm12VGmWFHg", + "nZcAdwBOPPRQ2hQm4YWwWg", + "nZcAdwBOPPRQ2hQm4YWwWg", + "nZcAdwBOPPRQ2hQm4YWwWg", + "nbsBVHmpV2luDgffbdJNFA", + "nbsBVHmpV2luDgffbdJNFA", + "nbsBVHmpV2luDgffbdJNFA", + "nbsBVHmpV2luDgffbdJNFA", + "nd8ByWx0Um8uF6bezxKuxA", + "neOkLg7Birx-EWGBuoP5rg", + "nfGP8OA-QcZ-YhJjD2uyCg", + "nfGP8OA-QcZ-YhJjD2uyCg", + "nfGP8OA-QcZ-YhJjD2uyCg", + "nfGP8OA-QcZ-YhJjD2uyCg", + "nfGP8OA-QcZ-YhJjD2uyCg", + "nfGP8OA-QcZ-YhJjD2uyCg", + "nfGP8OA-QcZ-YhJjD2uyCg", + "nfGP8OA-QcZ-YhJjD2uyCg", + "nfqsljljgnxi4qqym6m8IQ", + "nfqsljljgnxi4qqym6m8IQ", + "nfqsljljgnxi4qqym6m8IQ", + "nfqsljljgnxi4qqym6m8IQ", + "nfqsljljgnxi4qqym6m8IQ", + "nfqsljljgnxi4qqym6m8IQ", + "nfqsljljgnxi4qqym6m8IQ", + "nfqsljljgnxi4qqym6m8IQ", + "nfqsljljgnxi4qqym6m8IQ", + "nftB2PmJZcz7DZJedLNipg", + "nftB2PmJZcz7DZJedLNipg", + "ngEDfMGa2k3LBps0tpgYRA", + "nhhjya476W1WfBuGXQUi0Q", + "nliiCX4exwFhNaWWExWL2Q", + "nliiCX4exwFhNaWWExWL2Q", + "nnCec0a2-ZcuYpnWUHHz2A", + "nnCec0a2-ZcuYpnWUHHz2A", + "nnCec0a2-ZcuYpnWUHHz2A", + "nnCec0a2-ZcuYpnWUHHz2A", + "nnN2-U_s8SdanlpQLAPXRA", + "nob3zMVK_yh-lnKj6J3qXw", + "nob3zMVK_yh-lnKj6J3qXw", + "nogIwK3AchEnWGOPGCN6LQ", + "nogIwK3AchEnWGOPGCN6LQ", + "notCAO7hd2H6aL2N3OdG9w", + "npc4jjpl4EREFoWe-jKicQ", + "nr_UCagIf1Wt7zH1szcBYA", + "nuo_TPMaY49kAwBo7E4YSA", + "nxv9fnyzQgRP5y-sCtMEGw", + "nxv9fnyzQgRP5y-sCtMEGw", + "nyMCPt5M-rbb158Tnrz3sg", + "o-BIkkl-h7WSo_nEcXjOQQ", + "o-LQzMbIXWiYgSL5TtNkOQ", + "o-LQzMbIXWiYgSL5TtNkOQ", + "o-kTZjqjf1ewhEEwXGhsbQ", + "o0hm06-cLkn8_d3Wa8om5g", + "o0hm06-cLkn8_d3Wa8om5g", + "o0hm06-cLkn8_d3Wa8om5g", + "o0hm06-cLkn8_d3Wa8om5g", + "o0rUzqvaws3Dh4wJ69CLPg", + "o0rUzqvaws3Dh4wJ69CLPg", + "o23whHKZ51G6dL_e5u9zSA", + "o3UqAAOe1TvTgoeUjoa-og", + "o3vzfAt4odMDYmk4_A3rWQ", + "o5a6BUyjeBu3L-QcPVTcQQ", + "o5a6BUyjeBu3L-QcPVTcQQ", + "o5a6BUyjeBu3L-QcPVTcQQ", + "o7sR_pIbiVV_Z8TfMWbBfA", + "o8_zIcJ_jqi5-Mstw26jrg", + "o8jWT_AGiHDMeEUtgtoNGA", + "o8jWT_AGiHDMeEUtgtoNGA", + "o8jWT_AGiHDMeEUtgtoNGA", + "o8jWT_AGiHDMeEUtgtoNGA", + "o8jWT_AGiHDMeEUtgtoNGA", + "oAocDZn4BzWp64gjlgLSXw", + "oBLCWsbzuuTLoV95VXOSiw", + "oFCe9j47g8fjqoHcNpNk3w", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oG-4nmpo2oJsXS-LToSAAQ", + "oGmEXpJvjzbRv2r-bFFlfw", + "oGmEXpJvjzbRv2r-bFFlfw", + "oGmEXpJvjzbRv2r-bFFlfw", + "oGmEXpJvjzbRv2r-bFFlfw", + "oGmEXpJvjzbRv2r-bFFlfw", + "oHTsfbgA1Z8-0E_rI_bqsw", + "oHTsfbgA1Z8-0E_rI_bqsw", + "oJ4uhqaGJXAzxTc8vQCVYw", + "oN81eJrwg8wCXEi9syhH9g", + "oOz1jSRZNClfuKPM_yWNFg", + "oOz1jSRZNClfuKPM_yWNFg", + "oOz1jSRZNClfuKPM_yWNFg", + "oQXmmb1DrrgmbEq20aTNxw", + "oQXmmb1DrrgmbEq20aTNxw", + "oRpiSJGwFiHcxpubP0ZTHQ", + "oSoGUxBn_MfT_4Ncm-yGtQ", + "oSoGUxBn_MfT_4Ncm-yGtQ", + "oWAu7yjPEQWDBpYB2hRLjA", + "oWAu7yjPEQWDBpYB2hRLjA", + "oY_bCiKFNh6Ywp_edkpgUQ", + "oaGS8UtcL3140G7ruReD3Q", + "obA_YN1BhcTIsrqf5XOlGQ", + "obA_YN1BhcTIsrqf5XOlGQ", + "obA_YN1BhcTIsrqf5XOlGQ", + "obA_YN1BhcTIsrqf5XOlGQ", + "obA_YN1BhcTIsrqf5XOlGQ", + "oeKTE2BZ0H1nPN79dKoz1w", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ogCgWMgT5mMAMhpNA0IMiQ", + "ohA7VKtlvRVRiL95E6Kc9g", + "oiHXy47Qw5euydEoPUexRg", + "ok4zrk1T3mBLtObzPQcS-Q", + "ok4zrk1T3mBLtObzPQcS-Q", + "ok4zrk1T3mBLtObzPQcS-Q", + "omA88yQfT91566xoyEY7sA", + "omklHAPZnqPNJHwVpvh2vQ", + "opFI2iPPQrSoKgHSzuYsiw", + "opFI2iPPQrSoKgHSzuYsiw", + "osL-AROuaDqXe2LFy29GUw", + "osZ_HzuZu659HcV8_fdWog", + "ouxUnI8gftdBjNsXrXpTMQ", + "oyOPCAIGwaEIvRtPGG_P1A", + "oyOPCAIGwaEIvRtPGG_P1A", + "oyOPCAIGwaEIvRtPGG_P1A", + "ozR7rHeowembmV8tqrkzHQ", + "ozR7rHeowembmV8tqrkzHQ", + "p-hz1y_-cXtA7Uo61H8OwA", + "p20xNjB13pFFci9UHZaQsQ", + "p3b79q4pLaPKd9iPm6PsMA", + "p3rl6vNMvVUfsTfYEKCC6Q", + "p3rl6vNMvVUfsTfYEKCC6Q", + "p3rl6vNMvVUfsTfYEKCC6Q", + "p7qKIzzn4w0j5_vK-B0Emw", + "p7qKIzzn4w0j5_vK-B0Emw", + "p7qKIzzn4w0j5_vK-B0Emw", + "pBWDMEkxECoqFEbuF_aawA", + "pBYfPcAVtuhSUlQSUeVhQw", + "pCzfcBWmfuBy5Y8wBxn9kQ", + "pD64Y8dYs0KzJcRfejjvpQ", + "pDdH2I4ITPlwXLt-L5JoUA", + "pDdH2I4ITPlwXLt-L5JoUA", + "pDmevRXuPcE63RgyWWd9hw", + "pDmevRXuPcE63RgyWWd9hw", + "pE_XF-eq0tBl0fP7Y7zrSw", + "pE_XF-eq0tBl0fP7Y7zrSw", + "pFsUXmCuheRW93scdofEYw", + "pJhQ33-O5_U6c6eMCtOthA", + "pLFfIWo92qVCcVH5IiXAnQ", + "pNkwmPEaVAW4yiwUp-qSTQ", + "pNkwmPEaVAW4yiwUp-qSTQ", + "pOUGa4nlXTzn3bJ7pH2ySw", + "pR4MC0BxsLTXAJeNLn7p9Q", + "pRPV5-hOaPCGuVueTBL9og", + "pSIXlNYnJYwCILAJFTEzSw", + "pSIXlNYnJYwCILAJFTEzSw", + "pSVcwHLkS-nxPYoJIIKFcQ", + "pW8useNRLFWJHbQ9ncrSDQ", + "pW8useNRLFWJHbQ9ncrSDQ", + "pW8useNRLFWJHbQ9ncrSDQ", + "pW8useNRLFWJHbQ9ncrSDQ", + "pXGB2SA2zuGKxOA7V4UPZA", + "pY2MvdN80J-OPBSDYZs_8g", + "pYYnlcC5MRKImDilmGoYsQ", + "paeptaXHRDYD67F7ORC0tw", + "paf4tjIT0ResVsAYyHXaNQ", + "peI4q4l4-jzxMAY6KnhlVg", + "pfFrejV5_d2Jafhorerbtg", + "pkBGqhcKBroYcUtGIrc7fQ", + "pkodb9j7PRaXQDoDilSJig", + "pl4QAnODL99kwWMDWeoC8w", + "pl4QAnODL99kwWMDWeoC8w", + "pmDPo90patYnML-NuPnblg", + "pmPXYMcSXBVkwYFWHrsHvQ", + "pn5qfmUJVVaxacBhAps3IQ", + "pn5qfmUJVVaxacBhAps3IQ", + "pn9POQXvPZ6AJ72pwmniEg", + "pn9POQXvPZ6AJ72pwmniEg", + "pnzPou3gFrGrThBtxQHp_A", + "pnzPou3gFrGrThBtxQHp_A", + "pp6LgRqCGeGjs7cnnwItcA", + "pp6LgRqCGeGjs7cnnwItcA", + "pp6LgRqCGeGjs7cnnwItcA", + "pp6LgRqCGeGjs7cnnwItcA", + "psNLvt90kdVq_EPYAmn_WA", + "pu-N4aBOZsn4VU4z7Imv8A", + "puzfYbB4wiXTg1X1jl7EPg", + "pv2BnGF3DU5EF7_9vBhh5w", + "pv2BnGF3DU5EF7_9vBhh5w", + "pxFz17lb-voh9uZicvdXWA", + "pxHkQ9M1dNDXsuZ3PuZiaQ", + "pz26RZIIszjYMjtzkRg4og", + "pzTcRcencDxd0mEO6HA0bA", + "q5-VNNWJnEe4GvJK3_qvJw", + "q5-VNNWJnEe4GvJK3_qvJw", + "q5-VNNWJnEe4GvJK3_qvJw", + "q884D3SrvWum6J_31_DxKg", + "q9CgitPZ4bL8Lh2qUd-ksg", + "q9QOGHBEh6GQgY-VLBFr7Q", + "q9mzJi_3huRfaH8KQrmXgA", + "qA6aTmYIY5XQ-D5SlmSYOw", + "qAcwZu8wAPn7u3FXMR5Kjw", + "qAcwZu8wAPn7u3FXMR5Kjw", + "qAcwZu8wAPn7u3FXMR5Kjw", + "qCAXb4nsA8MBowrcfqVWbw", + "qCAXb4nsA8MBowrcfqVWbw", + "qD5R7oUvp1CMIoWxp8Tz_g", + "qEBUjzYNkS1ejSIGCCvPLQ", + "qEeeXRmfDyuVGRvTU8S2wQ", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFV6xhVekP5-uToPI32rag", + "qFqaIMeNfw2myzP6eZ7KkA", + "qJ2vE1gl2eFBSUsZq5gB9g", + "qKrM4v33j8Ui9JyIz2QXDg", + "qKrM4v33j8Ui9JyIz2QXDg", + "qKrM4v33j8Ui9JyIz2QXDg", + "qKrM4v33j8Ui9JyIz2QXDg", + "qL8FaHgVdmRPKWLaaL6i3Q", + "qLbCg5QZ5zqJ_Yvd37gLcQ", + "qLbCg5QZ5zqJ_Yvd37gLcQ", + "qLbCg5QZ5zqJ_Yvd37gLcQ", + "qLbCg5QZ5zqJ_Yvd37gLcQ", + "qLbCg5QZ5zqJ_Yvd37gLcQ", + "qLbCg5QZ5zqJ_Yvd37gLcQ", + "qLbCg5QZ5zqJ_Yvd37gLcQ", + "qLsiw4JHLZl4BOwJ47AG_A", + "qN4Vqjijt0HHN8TkXT1dVw", + "qN4Vqjijt0HHN8TkXT1dVw", + "qN4Vqjijt0HHN8TkXT1dVw", + "qNJEYOU_rsu8C3MrrBIk8A", + "qRvG2N9iYeFyl-3xULRJEg", + "qRvG2N9iYeFyl-3xULRJEg", + "qU4kioVgX1sNw5K2FC6P0A", + "qV2mmTrpEkQhVYmxROK3Hw", + "qVR5DaLjXEU8jLMRHSvKKA", + "qVx1giFNnrhDKWEgl9fFUg", + "qVx1giFNnrhDKWEgl9fFUg", + "qWdmqD7_YZgrJlkim5VjDg", + "qWdmqD7_YZgrJlkim5VjDg", + "qWdmqD7_YZgrJlkim5VjDg", + "qWdmqD7_YZgrJlkim5VjDg", + "qWdmqD7_YZgrJlkim5VjDg", + "qWdmqD7_YZgrJlkim5VjDg", + "qWdmqD7_YZgrJlkim5VjDg", + "qWdmqD7_YZgrJlkim5VjDg", + "qWdmqD7_YZgrJlkim5VjDg", + "qWdmqD7_YZgrJlkim5VjDg", + "qWdmqD7_YZgrJlkim5VjDg", + "qWdmqD7_YZgrJlkim5VjDg", + "qX0rVEaAW5zi3bvcEZHkUg", + "qYsHCAcImIUjmmO1gdenlQ", + "qYsHCAcImIUjmmO1gdenlQ", + "qaSuYVW7w4f2uvwT-2-QSg", + "qaSuYVW7w4f2uvwT-2-QSg", + "qgz0OSf5Bn-VYAVRBYncQQ", + "qgz0OSf5Bn-VYAVRBYncQQ", + "qgz0OSf5Bn-VYAVRBYncQQ", + "qgz0OSf5Bn-VYAVRBYncQQ", + "qjB_amR59Lv13Nhle_Nwbw", + "qjB_amR59Lv13Nhle_Nwbw", + "qjB_amR59Lv13Nhle_Nwbw", + "qjB_amR59Lv13Nhle_Nwbw", + "qjB_amR59Lv13Nhle_Nwbw", + "qjkbzJCs46utKAIQU_ZjYg", + "qk_n1ecQPsBsNva7iBiLPg", + "qlujNL7db72ZwWHkSPq1iA", + "qlujNL7db72ZwWHkSPq1iA", + "qmhrzhROIxdFfT_O0ufQNg", + "qmhrzhROIxdFfT_O0ufQNg", + "qmhrzhROIxdFfT_O0ufQNg", + "qnNsUsoPsI60n_EtYkImaQ", + "qnR7SPBrCbnbJk8v7ooOnw", + "qnR7SPBrCbnbJk8v7ooOnw", + "qnkrTiN5YCts6ND7O0BX2Q", + "qnkrTiN5YCts6ND7O0BX2Q", + "qo29mIfMk6g9kMPy8tsbog", + "qo29mIfMk6g9kMPy8tsbog", + "qo29mIfMk6g9kMPy8tsbog", + "qo29mIfMk6g9kMPy8tsbog", + "qr5_62ELns70MeFfkAoJ6Q", + "qr5_62ELns70MeFfkAoJ6Q", + "qr5_62ELns70MeFfkAoJ6Q", + "qrkrJ5xDfohQdxTvfrXHJA", + "qrkrJ5xDfohQdxTvfrXHJA", + "qrmk67kNwxQVIgdMvHYZ7A", + "qs9QVbSai1fV6zxJyggieQ", + "qs9QVbSai1fV6zxJyggieQ", + "qs9QVbSai1fV6zxJyggieQ", + "qs9QVbSai1fV6zxJyggieQ", + "qs9QVbSai1fV6zxJyggieQ", + "qsOdwnOfdpGhy1Ny492aAw", + "qtNW2Hg_2f_0M1iSBcGbyA", + "qtNW2Hg_2f_0M1iSBcGbyA", + "qtNW2Hg_2f_0M1iSBcGbyA", + "qtNW2Hg_2f_0M1iSBcGbyA", + "qtNW2Hg_2f_0M1iSBcGbyA", + "qv2lArN7QPfX_8vxJbcbpg", + "qv94DrtQsXldqyi1u95XpQ", + "qwPQ_i5WGexQYU8q8eVTyQ", + "qwd0u0yf77aYVcTrTir5kQ", + "qwd0u0yf77aYVcTrTir5kQ", + "qz6N-6DM06uuF3n6UYF3qg", + "qzJix6zZwzxxnhOaa5oGeA", + "qzKFizPmtCgELqHUElsXqw", + "r0uAbXjKmNhayHmzQb9jXg", + "r2p-9d0QpDfcdk32QsPfVQ", + "r2p-9d0QpDfcdk32QsPfVQ", + "r4_QAcqwjJ7g99R5zkgAbw", + "r61dzvnqIlRPanoJT2RUww", + "r69bqYctcqbyJiTyvmojFA", + "r6Fg_DPZ96geKIjDaUl37w", + "r8runDm4rOcHO76XR-D7jA", + "r8runDm4rOcHO76XR-D7jA", + "r98FFn1qa5eYYNwkaw4apg", + "r98FFn1qa5eYYNwkaw4apg", + "r98FFn1qa5eYYNwkaw4apg", + "r98FFn1qa5eYYNwkaw4apg", + "r9OM5jF9DDFNzREd89kE1Q", + "r9cOIG3luKhozeJLjvBOSQ", + "rAKcp6j6e0fNatBM1v2_fQ", + "rBzmYlGYOYZti9GsU43JzA", + "rD4T4VeNmVSOBJb1q3Kn-g", + "rD4T4VeNmVSOBJb1q3Kn-g", + "rDcHLjUrpvKg-XXDfFGKmA", + "rEnON3ZlkGqwhN9n9GMtyQ", + "rGGuFHDbckOYS7UNGM0EFA", + "rJUdSzEY4nBcXSavXvuL4Q", + "rLjBo_k19vor7LkQgiOErw", + "rLjBo_k19vor7LkQgiOErw", + "rMNYV5KroKXsOMeuZv5hxg", + "rN8OVoewhx9_Rg8TpFfqTg", + "rNtMuw4jybcwHekqtmQFUg", + "rOOdiLJX-1B7cLCvfMwHQQ", + "rOOdiLJX-1B7cLCvfMwHQQ", + "rOOdiLJX-1B7cLCvfMwHQQ", + "rPMfDsLGpN_IZ4VxjXAxHw", + "rROjWPSGsIF3P681sDbieA", + "rRV8xs3QPhMvkmhWl1HVVw", + "rRXSMA-Aqbn5UX5bXuezYw", + "rRgDrOD9mNwOES2mtujaQA", + "rRpenI7GD9Sw_c3K81rvVQ", + "rSUSoohdnG6MdsfC9pID0Q", + "rTxaKzkbha_JID224cs5Ew", + "rTxaKzkbha_JID224cs5Ew", + "rUm6eKXC2r517lo4-7MF6w", + "rUtwn4XIa7ORmBTA-Llbnw", + "rVJnJ5WgkAAuxcvebNsXPw", + "rVJnJ5WgkAAuxcvebNsXPw", + "rVOBHTqI_0fprNIXiAG4Og", + "rVOBHTqI_0fprNIXiAG4Og", + "rWNqYeEq1tor8Xhsh-G0iw", + "rXwuD2ZDCM1F8se01W9N5w", + "rYhA0b-9yMkVsX5xvflSrA", + "raFDPXwgmQmDo3hESpMdgQ", + "rc_xGtzicdYsAs4DRTfidA", + "rcw4O6fPwcfa_O50COvY1w", + "rdWn0WQP9V8Fvip5G1kyuQ", + "rdWn0WQP9V8Fvip5G1kyuQ", + "rdWn0WQP9V8Fvip5G1kyuQ", + "rdWn0WQP9V8Fvip5G1kyuQ", + "rdWn0WQP9V8Fvip5G1kyuQ", + "rdWn0WQP9V8Fvip5G1kyuQ", + "rdWn0WQP9V8Fvip5G1kyuQ", + "rdWn0WQP9V8Fvip5G1kyuQ", + "rdWn0WQP9V8Fvip5G1kyuQ", + "rgAjIQySCix3y3Kbq5dkvw", + "rhByk0cUR55VCYmz688yAQ", + "rko_YbcnDiBZxFuLrPp4EQ", + "roTQ2x4u1u0ROVEifn0kaQ", + "roTQ2x4u1u0ROVEifn0kaQ", + "rrWuYAakx0mSDLYXP-NBMg", + "rrbZ0HKe-J8ZElCatPN6uw", + "rrbZ0HKe-J8ZElCatPN6uw", + "rrbZ0HKe-J8ZElCatPN6uw", + "rrbZ0HKe-J8ZElCatPN6uw", + "rrbZ0HKe-J8ZElCatPN6uw", + "rrbZ0HKe-J8ZElCatPN6uw", + "rrbZ0HKe-J8ZElCatPN6uw", + "rs-7smSxpcCpQ4EcnQyDfw", + "rsp0NwAkIMLMzLa54E-jWQ", + "rthKnkNDFgynN38bWPneAg", + "ruRc-ZYmuV9h4Dh-4TM_yQ", + "ruRc-ZYmuV9h4Dh-4TM_yQ", + "rukD5963lGO3Ma9AI2LXWg", + "rukD5963lGO3Ma9AI2LXWg", + "rukD5963lGO3Ma9AI2LXWg", + "rwyujQb4ou3uOCGjw02PxQ", + "ryiaiFPVyjm4XARK10gZ3Q", + "rywk-6b8WKiuckZ62dxSSw", + "s2LTirMvOXiDsBun6I-UyQ", + "s32p4AkG-DDWHE1uaAJ5MQ", + "s32p4AkG-DDWHE1uaAJ5MQ", + "s32p4AkG-DDWHE1uaAJ5MQ", + "s32p4AkG-DDWHE1uaAJ5MQ", + "s4zVuFE809K66EfKcw5rKw", + "s5CzqyR6_GmBEGxwpC8zNA", + "s6_uo1oDaVy6YH62gW5X5A", + "s7hdxBbMHWQxy2GABBYaPQ", + "s7hdxBbMHWQxy2GABBYaPQ", + "s7hdxBbMHWQxy2GABBYaPQ", + "s7hdxBbMHWQxy2GABBYaPQ", + "s9MntjdT5XiNr-rHeRcTvQ", + "sCdW6ghslIPajpgsdfjVWA", + "sDDJ1mJ2kaA-GysNkBR82g", + "sF_YVRjBiPN5mfH4q_WehQ", + "sF_YVRjBiPN5mfH4q_WehQ", + "sFs-DxXlXTzn3bVNvCe0Kw", + "sFs-DxXlXTzn3bVNvCe0Kw", + "sFs-DxXlXTzn3bVNvCe0Kw", + "sFs-DxXlXTzn3bVNvCe0Kw", + "sFs-DxXlXTzn3bVNvCe0Kw", + "sGQwMzA_WyDKcRW8mwvS7w", + "sH-naZGGlL1gvozk6SwjQQ", + "sHXzwwWtrM_QNYYCsrA1Lg", + "sIDuB2QR5vYhFugo8XKq2A", + "sIDuB2QR5vYhFugo8XKq2A", + "sIDuB2QR5vYhFugo8XKq2A", + "sIeqh2jSM_h_4hkKW-ecGg", + "sIwqahRkjtW0nY-bGfyZww", + "sN77BAFALn_JGvGvXrSjyw", + "sPRIu4G_UqOumyaMlOEsUw", + "sQjNkxldKaQX3UjPy9RAMA", + "sRqFVRgtIpahqWj1VJMq5w", + "sS7jth5JTt44kOBPBp-PqQ", + "sS7jth5JTt44kOBPBp-PqQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sTGLCNH21piOrMPoln5uBQ", + "sVHkQBLFueXylT9J5JnmGQ", + "sVHkQBLFueXylT9J5JnmGQ", + "sVHkQBLFueXylT9J5JnmGQ", + "sWCnrMF0Arlnv58qX-TThw", + "sWO8JE0tCt_to2b5Aa2uZA", + "sXYsfWKSXv-0U7gobefHRg", + "sXYsfWKSXv-0U7gobefHRg", + "sXYsfWKSXv-0U7gobefHRg", + "sXZpSIBEOU_muIAf05ydPA", + "sXZpSIBEOU_muIAf05ydPA", + "sXZpSIBEOU_muIAf05ydPA", + "sXskcBz0UtWfdqfu0TDSqQ", + "sYti6chh3H8KzXctZah7uw", + "s__kQ2m1V3bn-9gwOriqPQ", + "savPbEF5C7JhfS7sqrnMYw", + "scmKVHdEh9kSE1fqSoqaQw", + "scmKVHdEh9kSE1fqSoqaQw", + "sd1-fzhWHGpZk5BbNZ95mA", + "sgtQzmVVhgNxUfY9I6sRbQ", + "shNXixs-94AywpTuAMqgvA", + "sjkXvSc06kCzT5ulprfEPA", + "sjkXvSc06kCzT5ulprfEPA", + "skGfd5BDAMA1fbyY3ykq7w", + "smjp5sI7cy9_VZ8AgeA6Pw", + "sntjqhnPOkV1AM5VqFuL9w", + "so1d_4OoBGn25QD_tK0Zhw", + "so1d_4OoBGn25QD_tK0Zhw", + "so1d_4OoBGn25QD_tK0Zhw", + "spzm-_Ca31VwijYVQAZSLA", + "sqDXpBl-RD8OlHhZazkDcg", + "sr7KmiDQn3AwPKwUE1w3aQ", + "srA9BuEIer7jJq6izjVFjg", + "sspLyqwqKpD8wnMR9ugciQ", + "stWZFEwn_P2axA2CCLL2dA", + "stWZFEwn_P2axA2CCLL2dA", + "stWZFEwn_P2axA2CCLL2dA", + "sueTM-LYsBZU9Btl9NKTwA", + "sv_426CMlRs6plmdzYS7Cw", + "t-dIxcHyLp_aTZW6ZkmJVA", + "t-dIxcHyLp_aTZW6ZkmJVA", + "t-dIxcHyLp_aTZW6ZkmJVA", + "t-dIxcHyLp_aTZW6ZkmJVA", + "t-dIxcHyLp_aTZW6ZkmJVA", + "t-dIxcHyLp_aTZW6ZkmJVA", + "t00AyiEovcQQgPQRAnJDoQ", + "t00AyiEovcQQgPQRAnJDoQ", + "t00AyiEovcQQgPQRAnJDoQ", + "t2MvOhKqYBEfmH0xlqxQ4A", + "t7HZvD3A-BdlZ9nZFUQKcw", + "t9JKV-3NF5fx1acjPqrg_w", + "t9WFJw2zltKHNxeYswbb1g", + "tBGZzB5ZNClfuCqDA5LS5g", + "tE2ikEoIwXRBOXfJ9-5M8w", + "tEh-T90uBvlQfHt8UOCI5Q", + "tEh-T90uBvlQfHt8UOCI5Q", + "tEh-T90uBvlQfHt8UOCI5Q", + "tEh-T90uBvlQfHt8UOCI5Q", + "tEh-T90uBvlQfHt8UOCI5Q", + "tGdjZjM6jJA23WbdtVpvAw", + "tGdjZjM6jJA23WbdtVpvAw", + "tGdjZjM6jJA23WbdtVpvAw", + "tGdjZjM6jJA23WbdtVpvAw", + "tGdjZjM6jJA23WbdtVpvAw", + "tGdjZjM6jJA23WbdtVpvAw", + "tGdjZjM6jJA23WbdtVpvAw", + "tGdjZjM6jJA23WbdtVpvAw", + "tItoNsUMOSUuiEQl3xYhbQ", + "tItoNsUMOSUuiEQl3xYhbQ", + "tItoNsUMOSUuiEQl3xYhbQ", + "tItoNsUMOSUuiEQl3xYhbQ", + "tIv50-9ZsDFG8OmfEZawCw", + "tJvp7gDkktg9hHJv6LrXYA", + "tL1Gf4mFdqk9HEwFF89E2A", + "tL1Gf4mFdqk9HEwFF89E2A", + "tL230chqNUuroXAS-gtapg", + "tL230chqNUuroXAS-gtapg", + "tLATSye44dZj5qP3wd7yWg", + "tLWCyKrEBYGzX2N5W13-8Q", + "tMFQonwMMVIME8GAL5Zm3Q", + "tO6JpVZeu0abSD0xpUFNBg", + "tOnLYqQcEe077mBYB3aqxA", + "tQBYLE5Qq3rn4uocqQBMfw", + "tQgAmBJBgPLrkikSPRsmtg", + "tQgAmBJBgPLrkikSPRsmtg", + "tQgAmBJBgPLrkikSPRsmtg", + "tQgAmBJBgPLrkikSPRsmtg", + "tTrifkDB6bwqRgBWJi-Qng", + "tUugY2gAhpWf99wEorV4Jg", + "tW1ONDyoCZkpOb4VQBh9eg", + "t_8P_qgRJaTfBrJGumjgpQ", + "teJJV9EemN5sVZsuqSNgHQ", + "tesLO0DFJtDYF8-a7dNUxA", + "tiJNC5TRsJ2Po6yB9hj7ug", + "tknRVtdrp8TkRV3X6AJ-Kg", + "tknRVtdrp8TkRV3X6AJ-Kg", + "tl7UGKsJ7PvO4sjn1Sys6g", + "tmXftvn8hrcleDLJfptXeA", + "tmXftvn8hrcleDLJfptXeA", + "trKFSvtlxO979VBLgP3FPA", + "ttnw8j0HRfVM17mHQNg8LA", + "ttnw8j0HRfVM17mHQNg8LA", + "ttnw8j0HRfVM17mHQNg8LA", + "tto_m7yhvKemNcMa3xbR2Q", + "tv2GitaUyrjotiOalo5pXg", + "tv2GitaUyrjotiOalo5pXg", + "tv2GitaUyrjotiOalo5pXg", + "tzBcwDe6SUq4Jkyew2O5eg", + "u10yYHuZY1dpf375Wx2UVA", + "u1A1mq4_NM3j2_15WwdIbw", + "u1A1mq4_NM3j2_15WwdIbw", + "u25MUdzPMiaQ2283ZYctDw", + "u25MUdzPMiaQ2283ZYctDw", + "u25MUdzPMiaQ2283ZYctDw", + "u39hB2o_bkkn64I33Zf2OA", + "u39hB2o_bkkn64I33Zf2OA", + "u39hB2o_bkkn64I33Zf2OA", + "u39hB2o_bkkn64I33Zf2OA", + "u4IYC5TN1ydgkWzSPfggOA", + "u5vAXtVp9d4wvRuocarrCA", + "u5vAXtVp9d4wvRuocarrCA", + "u5vAXtVp9d4wvRuocarrCA", + "u5vAXtVp9d4wvRuocarrCA", + "u6OwtCLdW9mdeDVYCmhkdg", + "u78SWYWMWORWmstqR3xV1Q", + "u80wzeYkSnSlt8hhdfSXpg", + "u84jH0Fi4giPpR8JCVg2uQ", + "uB_3Gzwjvj1RjZpSgTL9mw", + "uC86pFXXnBLCj6eRRljPDw", + "uC86pFXXnBLCj6eRRljPDw", + "uC86pFXXnBLCj6eRRljPDw", + "uCrYcJJKClqXMP74KTJEhQ", + "uELAISpfeC7vnR_35Y6JuQ", + "uF_V7TH-mukdED5BHxc90g", + "uHXk96D_H0MjX0tAh6AHfQ", + "uJZrofYGiqBpYJJdGGtLHQ", + "uKtxR47OvzSUNd1AWsYPGg", + "uKtxR47OvzSUNd1AWsYPGg", + "uPDlCsNFx9xRx8s1Byg9Tw", + "uPxLhcxLS--qmU5fqS3y8g", + "uRdDYN4dn3zdbxjGT-Wsgw", + "uV9VJttm0goUzsky7YZbIw", + "uW05YknQLOIO0-7mqqBrAg", + "uWCpZlX3JGJm412J5IFsLg", + "u_S1z746sqHjwZgqfYjebg", + "ucM-Bj7qlZtPxh65nkVL9g", + "ucg8lCUKHDJi43v2r9fcDA", + "ucg8lCUKHDJi43v2r9fcDA", + "ucg8lCUKHDJi43v2r9fcDA", + "ucg8lCUKHDJi43v2r9fcDA", + "uchUv6RRAwtUDrZKhO2h8Q", + "udDAwwA9xVYrw2iCThm3zw", + "udDAwwA9xVYrw2iCThm3zw", + "udTo70AymJSY5V7NrMKeuQ", + "udgPCGqbKhChfal6WK47Og", + "udgPCGqbKhChfal6WK47Og", + "udgPCGqbKhChfal6WK47Og", + "udgPCGqbKhChfal6WK47Og", + "uimFkk5UuxbH1IL630Lmng", + "uimFkk5UuxbH1IL630Lmng", + "uimFkk5UuxbH1IL630Lmng", + "uivmFtqkx0mSDLjpV5jf4g", + "umQIucIioKjldscxi712SA", + "umQIucIioKjldscxi712SA", + "umnLDwSZ51G6dAiG4b1ChA", + "un6cBO6D7gNVatBvdCHO5w", + "un6cBO6D7gNVatBvdCHO5w", + "uny6BSDonpAkKlB1LldfXA", + "uos5blq03yBGQs7NU0gUPA", + "uos5blq03yBGQs7NU0gUPA", + "uos5blq03yBGQs7NU0gUPA", + "uos5blq03yBGQs7NU0gUPA", + "uqwCsRNPiFKrqHYXLGpv-w", + "uw22TVsJZa9-V4t68di_cw", + "uw22TVsJZa9-V4t68di_cw", + "uw22TVsJZa9-V4t68di_cw", + "uxWu7bOCGuvy3Ir42torww", + "uxx5lyE0g_XxW6q2Z6gefw", + "v-dzrDzLbKAbYGTnBhfr9g", + "v0o-SuFa6Ydo5LzhQb4Mjg", + "v0pDU_Bmq425s1_kUBpK1Q", + "v3ZYrEgxrjqPJ0BNeAYc9w", + "v5H4heqrG-RfSN6JZIDgLw", + "v6Sj_mGjd4gUb1oQRdr9zQ", + "v6lCGSl14n67sS0TtXz2KQ", + "v79qGhig8jRBZdnkzM6uZg", + "v7GKAWxeXNZbjk8Dw8GzZg", + "v7GKAWxeXNZbjk8Dw8GzZg", + "v7GKAWxeXNZbjk8Dw8GzZg", + "v7NZn75ARbCs3HYY9Fl9ag", + "vCYukS89lPAo0Tgs1462rg", + "vCu9X0uCcaidMKlT-pmTNg", + "vDU7E1ww8G9noy7HUAb7kQ", + "vEf82IDRTNtSKS_YS3157Q", + "vEf82IDRTNtSKS_YS3157Q", + "vEf82IDRTNtSKS_YS3157Q", + "vF3EXYALHmjQtcdOOO4edQ", + "vF3EXYALHmjQtcdOOO4edQ", + "vF3EXYALHmjQtcdOOO4edQ", + "vF3EXYALHmjQtcdOOO4edQ", + "vIUAbyMW7bf80Va51E6QcQ", + "vK5xx5aYAx3dkNQ-31myKA", + "vKQgPQ0wjIftRUZyC5K9yw", + "vMJZLefDDDN7jSsJGIx5fA", + "vMgb9ybFueXylUIb_E_TiQ", + "vMgb9ybFueXylUIb_E_TiQ", + "vNebmjSwemT2pcHYKHFrrA", + "vNebmjSwemT2pcHYKHFrrA", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOYsgO356rKWtYMDmDOhZw", + "vOoArOQsiI-woapVIk9zYg", + "vPUU5i5r5XThwPX6RJsZ7g", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vQ7EacG6CR4rzcFaNFEsTQ", + "vSGCvmv9vCkowwCF-5AFfw", + "vSGCvmv9vCkowwCF-5AFfw", + "vSOSLIRL9Al07eylV0ZRxw", + "vSOSLIRL9Al07eylV0ZRxw", + "vSOSLIRL9Al07eylV0ZRxw", + "vTYHQHy_FTm7Mt2Tlbk15w", + "vTiT6RQHSjUNEBuIvfofKg", + "vTiT6RQHSjUNEBuIvfofKg", + "vTiT6RQHSjUNEBuIvfofKg", + "vTiT6RQHSjUNEBuIvfofKg", + "vVBGzy8SXBVkwYb6TicxXQ", + "vWPcSmxkbXO7SwVFO_alxA", + "vXkwfvj7jlhBJyKg0XGvyw", + "vXkwfvj7jlhBJyKg0XGvyw", + "vXkwfvj7jlhBJyKg0XGvyw", + "vZ-qWjmc4LgtEP8_bg3ddg", + "vZ-qWjmc4LgtEP8_bg3ddg", + "vZvGTU2ISDDtSYwF1iMiKw", + "vb6qHSBLkgJE3mh56iUTjA", + "vbussj-QMZO635c5MGfv6A", + "vcYBAX0wrEtcMYtYg1kNKg", + "vcmbteT9Zn8Dn3HK9hT_jw", + "veyrOe2Ye9QKtQm85e4-1Q", + "vhMTgwXcJBbn9i99hn5MzA", + "vhMTgwXcJBbn9i99hn5MzA", + "vj1iCYbFivBIOzaEHhjU-g", + "vj9KWV7ATkWJJTMhiLlh8w", + "vqs9jnSjNyh-nZ4ZqxUaIg", + "vseJX0sppKrh3ZPWhmhGrw", + "vtOmTuUGvKYiQRK_O9kHuw", + "vtOmTuUGvKYiQRK_O9kHuw", + "vtOmTuUGvKYiQRK_O9kHuw", + "vtOmTuUGvKYiQRK_O9kHuw", + "vtOmTuUGvKYiQRK_O9kHuw", + "vtVwtJiJ8EuWnAfWFigoSA", + "vtVwtJiJ8EuWnAfWFigoSA", + "vtVwtJiJ8EuWnAfWFigoSA", + "vtVwtJiJ8EuWnAfWFigoSA", + "vu1niHfy-hSLbNHl3l8G6g", + "vyA8zlEU2Uoo1SKAKvagqQ", + "vyF93JW1Qe_ibMGrFnrVsQ", + "w1YwyK3qUUqndS_KOv4yZg", + "w4HCkSSBzJOd2ZGjGE9mQQ", + "w7WOWZs79Wz210098loDzA", + "w8GVRjAwPMFQC_D_wSJ9HQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wD7qCDk3lqH0hpTFDQk1YQ", + "wEIfl0pGBuepuUcTwdKc2g", + "wEIfl0pGBuepuUcTwdKc2g", + "wElNAN9vgDs3rPZPUryb8w", + "wMduPEe0g_53DcRkATCeKA", + "wMduPEe0g_53DcRkATCeKA", + "wMduPEe0g_53DcRkATCeKA", + "wMduPEe0g_53DcRkATCeKA", + "wQ5uY_pSelGf8LUADSvoUA", + "wQ5uY_pSelGf8LUADSvoUA", + "wTSbu1Pr78mJrU1RTg5RYg", + "wTWZ6ExXroCTWtFkYXzHbg", + "wTWZ6ExXroCTWtFkYXzHbg", + "wTWZ6ExXroCTWtFkYXzHbg", + "wTWZ6ExXroCTWtFkYXzHbg", + "wTWZ6ExXroCTWtFkYXzHbg", + "wTWZ6ExXroCTWtFkYXzHbg", + "wTWZ6ExXroCTWtFkYXzHbg", + "wTWZ6ExXroCTWtFkYXzHbg", + "wVGYw8PhDGaGZTm6D-jqPg", + "wZDKdLfvberhsaqVm0V7Fg", + "wZt4QZd5Wl87QA05fN5iDQ", + "w_8HYglWw-0jqUUlUeMgag", + "w_8HYglWw-0jqUUlUeMgag", + "waCNJIVGzz-ZLUhBxHpZjw", + "wagf_HCTAbfVE_k37p5bHw", + "wagf_HCTAbfVE_k37p5bHw", + "wcw67NCnOLTYutynHBvqow", + "wcw67NCnOLTYutynHBvqow", + "wd8N2TZ-uzaPC06YON_j_A", + "wdRZBOgt1iAFeehFpb20mA", + "wf9mrqZKrjw_yhc1kSPntQ", + "wfX4W43RcsvFornvkG6aiw", + "wh6xTQPkmoOUUrUOOnnNsQ", + "wh6xTQPkmoOUUrUOOnnNsQ", + "wi6IGN8qc6k-a5Oge6MluA", + "wkBrbsBOqF3Hhcdpb3ph-Q", + "wkO70J8PTUJpfPh4iq24Qg", + "wkO70J8PTUJpfPh4iq24Qg", + "wkO70J8PTUJpfPh4iq24Qg", + "wmQufSV4x-hAvGcaiegjeQ", + "wmQufSV4x-hAvGcaiegjeQ", + "wmQufSV4x-hAvGcaiegjeQ", + "wn4niB8FwIlhJ5LBYr9JzQ", + "wnDqzjdjMz5CchEHZ6EsYQ", + "wnDqzjdjMz5CchEHZ6EsYQ", + "wnDqzjdjMz5CchEHZ6EsYQ", + "wnDqzjdjMz5CchEHZ6EsYQ", + "wnyQT1ASJ0qq9KkluGRHtw", + "woXLgCudpu5Igw4bPyCZzA", + "woXLgCudpu5Igw4bPyCZzA", + "wqHsMke_fsatGdp5mRZKPA", + "ws0N6fTgPArljYYAC403Mw", + "wsB1hNhVAWAL2RPJHKnfPw", + "wsEP3PfgbWsvPc4Y_rpLYQ", + "wsEP3PfgbWsvPc4Y_rpLYQ", + "wtgpZp9SPQlV85UePoIRQg", + "wtgpZp9SPQlV85UePoIRQg", + "wtq1rh0kPcnhm3dehZEyug", + "wtq1rh0kPcnhm3dehZEyug", + "wtq1rh0kPcnhm3dehZEyug", + "wtq1rh0kPcnhm3dehZEyug", + "wtq1rh0kPcnhm3dehZEyug", + "wtq1rh0kPcnhm3dehZEyug", + "wvMd1a_-bXv6b_xtdQEkRQ", + "wzMH_4T8_2TQ5oMMj_87zQ", + "wzZaceuyvwDXeTAM8IhEDw", + "x-4qlwW9IjSs55gfy0yclg", + "x0M0pE8Yl1KsW-gNW5M8Pw", + "x0P1r7I-Fx8UT8KavfTMGg", + "x0P1r7I-Fx8UT8KavfTMGg", + "x14a0Ek7Sslvce6ia1GGDA", + "x14a0Ek7Sslvce6ia1GGDA", + "x14a0Ek7Sslvce6ia1GGDA", + "x14a0Ek7Sslvce6ia1GGDA", + "x14a0Ek7Sslvce6ia1GGDA", + "x3cFmRipcZyDdJFPRQEWSw", + "x69oGDnn9-Q70zg0yENhkw", + "x69oGDnn9-Q70zg0yENhkw", + "x72T8kxYZuozQaY_lcc1WQ", + "x72T8kxYZuozQaY_lcc1WQ", + "x8bq_xVN-rpqARxMICWBtQ", + "xB00KDzyoofk7hNv-bTuug", + "xBGCEPBdnG6Mds1nJf4tcQ", + "xDECjxfRDF0SAcicHv7yIg", + "xDECjxfRDF0SAcicHv7yIg", + "xDXeTINsutWQ3L9FCGjV5Q", + "xGM1BGYapiiJfmZA3cUi3Q", + "xH7fDwWrFq_DRtbR8yK9Xw", + "xHKAjQI4z_QmWS_76dx5rg", + "xIKWatY3TkDMmjhuCoY3zQ", + "xIKWatY3TkDMmjhuCoY3zQ", + "xIfNH7oj8c26gQcDKc66Dw", + "xKz6OkGVzOf5KmhaoK3F7Q", + "xLOLXg5EKZgSVcI5Dw46ug", + "xLOLXg5EKZgSVcI5Dw46ug", + "xLOLXg5EKZgSVcI5Dw46ug", + "xOuzl7cRmBw0-tjVF12FGA", + "xOuzl7cRmBw0-tjVF12FGA", + "xOuzl7cRmBw0-tjVF12FGA", + "xOwAtmzQuXAkclbU5p26Ww", + "xQ-G9Hk2h3Mjbnud14Z1hQ", + "xSpwbsqGQ6j4Hi00WayBLA", + "xUoecROrzaoP-M_aH62GoQ", + "xUpzkEeu7Agkg18MSQkpcA", + "xUpzkEeu7Agkg18MSQkpcA", + "xUpzkEeu7Agkg18MSQkpcA", + "xVElUvgmdiF2hCNekoE9wg", + "xVElUvgmdiF2hCNekoE9wg", + "xVOmAk0hLEywDTna7YZ20Q", + "xWXbvqcob2cyNB-_TJKbYQ", + "xYo8aW0GAHtBLbVgKP6yVw", + "xYo8aW0GAHtBLbVgKP6yVw", + "xYo8aW0GAHtBLbVgKP6yVw", + "xYo8aW0GAHtBLbVgKP6yVw", + "xZkBv_-w_d4qYkT59inZ_A", + "xaWYGasOYi9-2Kb1gNg5mA", + "xb-AMoivB7u2Oz_cPaKU5Q", + "xf5Rtge3j9bwcFOKpX5Kyw", + "xfgBzvNqXjtLo-fOw_LghA", + "xiadjaMGgQKvGOi3zMIHPQ", + "xiadjaMGgQKvGOi3zMIHPQ", + "xkve8TpR3957l1VqIfu39g", + "xo8H4Xbu1dhktweO39ARgA", + "xp3_py4iSzhCOaZDW2scAQ", + "xqShXzeV04JRO86le94zJQ", + "xz8R4MTaPzD1CrgkfDi_Qw", + "xzEX_ryOXWtTMQZYJuG-1A", + "xztGdRdeA4QtQpYqq2H8IQ", + "y12uoeETtO1vfLZn6kOlKA", + "y2325DY1ugdPcN9iudwKYQ", + "y3V4Wh9j61CfcWNgvt1uPg", + "y86E6w-NUJfYYLcFp2N4MQ", + "y8Y9sOCgS4ezmCzQojnXBQ", + "yBWSGqiiI_VOVi3uSjsniw", + "yC54Y8eHwlxSGpQoib9B3w", + "yCsgTIwDC_hDJDfLFUPapA", + "yCsgTIwDC_hDJDfLFUPapA", + "yDUTTZDU-v2QzoYKiWk9nA", + "yDUTTZDU-v2QzoYKiWk9nA", + "yDhpbqgW_DW17T8_Sh39Qg", + "yDhpbqgW_DW17T8_Sh39Qg", + "yDhpbqgW_DW17T8_Sh39Qg", + "yDhpbqgW_DW17T8_Sh39Qg", + "yH_ohM36PxcsspBj9HiisA", + "yH_ohM36PxcsspBj9HiisA", + "yImdtjjCMZhJ-nQQIrKkrA", + "yJIhq1AV1i5dfSljhhE7Kw", + "yK0o6ycp1Ca_eC07ixxymA", + "yLcvbV13CtkdfmXNFFed3Q", + "yOUU-MIrBJXHRczrclIQpA", + "yPTrqAkkOCO7kbQ9uC2-gg", + "yPTrqAkkOCO7kbQ9uC2-gg", + "yPy_wko9njFronX8E7CcQg", + "yPy_wko9njFronX8E7CcQg", + "yPy_wko9njFronX8E7CcQg", + "ySfZ4gjyjinG0Dsav5lnIQ", + "yTm-9MNIZqJ4aOXilobOGw", + "yVj-DhlWsbRwk1ix0xTSnA", + "yW94tVERi6q0VzIVjryqTQ", + "yXWFMIbkwU7jqv0ggmjvVA", + "yYF5YWbjTLokor9oKz_A5A", + "yYF5YWbjTLokor9oKz_A5A", + "yZ0m5K0hyRADeQkG90vP8A", + "yZ0m5K0hyRADeQkG90vP8A", + "y_GIpaxCX5IFnS0F_BXM3w", + "y_bBi9uyNY8ANzFmW5Qp7g", + "y_bBi9uyNY8ANzFmW5Qp7g", + "ya2lgd-VMP3xAKP85pX-hQ", + "yanW-NWn1yU-ZmISz8_K-w", + "yanW-NWn1yU-ZmISz8_K-w", + "yanW-NWn1yU-ZmISz8_K-w", + "ycx3jsOzoddyVXaGAexG9A", + "ycx3jsOzoddyVXaGAexG9A", + "ycx3jsOzoddyVXaGAexG9A", + "ycx3jsOzoddyVXaGAexG9A", + "ycx3jsOzoddyVXaGAexG9A", + "ycx3jsOzoddyVXaGAexG9A", + "ycx3jsOzoddyVXaGAexG9A", + "ycx3jsOzoddyVXaGAexG9A", + "ycx3jsOzoddyVXaGAexG9A", + "ycx3jsOzoddyVXaGAexG9A", + "ycx3jsOzoddyVXaGAexG9A", + "ycx3jsOzoddyVXaGAexG9A", + "ydjdwpV2eVNg7RzFNvFt4A", + "ydjdwpV2eVNg7RzFNvFt4A", + "ygiinZb-VL-5X6K63nWolQ", + "yhF9CEzH60wdDBblzY1FcQ", + "yn5AwZYF8MGWqleL5q8fsg", + "yn5AwZYF8MGWqleL5q8fsg", + "yn5AwZYF8MGWqleL5q8fsg", + "ynFllp5CrPbAGyx1JneoOg", + "ynHqfILVzOOqJs-5yJf4gw", + "yse1ZG7dtWZV3NYY2Q_B9A", + "ytmnDvqR2kv8bcodWBOqIQ", + "ytmnDvqR2kv8bcodWBOqIQ", + "yudj5Wbjz98rahOhutg5Kw", + "yudj5Wbjz98rahOhutg5Kw", + "ywBCHGInrMG3m_siljBhPg", + "ywRpFKHnyqIdEibpvZWLtA", + "ywRpFKHnyqIdEibpvZWLtA", + "ywctG_sMzzXt8DhXRU3jGw", + "ywctG_sMzzXt8DhXRU3jGw", + "yzrIFcAvcn-PgY-eW1ZoaQ", + "z03CQ7BmO5DWD5cAAhlTWw", + "z0TmQagVnHgFdAowAPCojQ", + "z0TmQagVnHgFdAowAPCojQ", + "z0TmQagVnHgFdAowAPCojQ", + "z0TmQagVnHgFdAowAPCojQ", + "z0hdy73gJuxMxMUBOMHWTQ", + "z2VnMzkPQ5tcla-26h5_wA", + "z2VnMzkPQ5tcla-26h5_wA", + "z3A_MA2VleZ7zSj0ee4Jog", + "z3A_MA2VleZ7zSj0ee4Jog", + "z3imu7TppL2XUId5Y_cXQg", + "z5D_DdgznhB9oZLSnaY7sw", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "z5k14PsCcDvFyUC1kmlV3Q", + "zC1z37qWlgbIB1dFpt4zjA", + "zC1z37qWlgbIB1dFpt4zjA", + "zC1z37qWlgbIB1dFpt4zjA", + "zC1z37qWlgbIB1dFpt4zjA", + "zC1z37qWlgbIB1dFpt4zjA", + "zD97zbMWWlXNK87iC8v0xg", + "zFzboqO8__hpgAhYabPN_A", + "zGIPrqWiMdodCyTxYBZC5g", + "zGIPrqWiMdodCyTxYBZC5g", + "zGZ_gCn-Ge9oHmah2m0JWw", + "zHOgb2zN-3HJtDx09H8hxg", + "zKCApLHyb2LRm5m6iEHEgQ", + "zKCApLHyb2LRm5m6iEHEgQ", + "zKCApLHyb2LRm5m6iEHEgQ", + "zKCApLHyb2LRm5m6iEHEgQ", + "zKHS4hsJddCCPPI3lqHKuA", + "zLx6iJ9ANFZvdAJHeiPhJw", + "zLx6iJ9ANFZvdAJHeiPhJw", + "zOGwPIsGkrVY6Li5mXSYmQ", + "zR0NjJPPs8zyWwwQG_LNGQ", + "zR0NjJPPs8zyWwwQG_LNGQ", + "zR0NjJPPs8zyWwwQG_LNGQ", + "zR0NjJPPs8zyWwwQG_LNGQ", + "zTmlqGcldzHyZLUOVZks5A", + "zV-zz_SMeRtFDojkROWSSw", + "zV-zz_SMeRtFDojkROWSSw", + "zV-zz_SMeRtFDojkROWSSw", + "zV-zz_SMeRtFDojkROWSSw", + "zV-zz_SMeRtFDojkROWSSw", + "zVOM9aQ5aVWICjbBv8WgRA", + "zVl_JFLMBO6_XcJyl0ewxw", + "zVl_JFLMBO6_XcJyl0ewxw", + "zXY2fMPD2q8JxxSeQ4an4A", + "zXf1O_8jknZjcKGu5cQjJQ", + "z_WaY2pXtLyni7L_8jKtBg", + "zbjoTM6fVBg8CyNBFi4-kg", + "zcfKpbpAZN9qkm-T9sCmgA", + "zcjbCSOxeTCClWpD2cCw2A", + "zd5A7qHg0FK_zhR8YQz3aw", + "zdN3TXjTGHsNnZ0CpnUzmQ", + "zpP80T6FdaTGeY1BUSMu-A", + "zqr5tutmGWQ5UPY6c0BG6Q", + "zrkZPFwCxB9V9Tn62C2GZQ", + "ztOqW-PzPXXgelwqIpykOg", + "ztOqW-PzPXXgelwqIpykOg", + "ztOqW-PzPXXgelwqIpykOg", + "ztOqW-PzPXXgelwqIpykOg", + "ztOqW-PzPXXgelwqIpykOg", + "ztj5Yc58Fi74AN4K12GxCQ", + "zvtGCZWh7Ji_VQTOB6BAGQ", + "zwiX7AgVqL-aPC-SuEi6CA", + "zxSXOqjkgRFq6yblYso02A", + "zyYGVRP_YB-nnwhjpkxemg", + "zyzhCrZbqF57B5IigsG_tA", + "zzNCVUgKt0jUoHv-iw_d3g", + "zzNCVUgKt0jUoHv-iw_d3g", +] +`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct FrameType 1`] = ` +Array [ + 0, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, +] +`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct FunctionName 1`] = ` +Array [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", +] +`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct FunctionOffset 1`] = ` +Array [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, +] +`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct Inline 1`] = ` +Array [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, +] +`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct SamplingRate 1`] = `1`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct Size 1`] = `7771`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct SourceFilename 1`] = ` +Array [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", +] +`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct SourceLine 1`] = ` +Array [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, +] +`; + +exports[`Profiling API tests flamegraph.spec.ts cloud Loading profiling data Flamegraph api With data returns correct TotalSeconds 1`] = `30`; diff --git a/x-pack/test/profiling_api_integration/tests/flamegraph.spec.ts b/x-pack/test/profiling_api_integration/tests/flamegraph.spec.ts new file mode 100644 index 0000000000000..04df8b95829a5 --- /dev/null +++ b/x-pack/test/profiling_api_integration/tests/flamegraph.spec.ts @@ -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 + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import { getRoutePaths } from '@kbn/profiling-plugin/common'; +import { BaseFlameGraph } from '@kbn/profiling-utils'; +import { sortBy } from 'lodash'; +import { getBettertest } from '../common/bettertest'; +import { FtrProviderContext } from '../common/ftr_provider_context'; +import { loadProfilingData, setupProfiling } from '../utils/profiling_data'; + +const profilingRoutePaths = getRoutePaths(); +type BaseFlameGraphKeys = keyof BaseFlameGraph; + +export default function featureControlsTests({ getService }: FtrProviderContext) { + const registry = getService('registry'); + const profilingApiClient = getService('profilingApiClient'); + const log = getService('log'); + const supertest = getService('supertest'); + const bettertest = getBettertest(supertest); + const es = getService('es'); + + const start = new Date('2023-03-17T01:00:00.000Z').getTime(); + const end = new Date('2023-03-17T01:00:30.000Z').getTime(); + + registry.when('Flamegraph api', { config: 'cloud' }, () => { + before(async () => { + await setupProfiling(bettertest, log); + await loadProfilingData(es, log); + }); + + describe('With data', () => { + let flamegraph: BaseFlameGraph; + before(async () => { + await setupProfiling(bettertest, log); + await loadProfilingData(es, log); + const response = await profilingApiClient.adminUser({ + endpoint: `GET ${profilingRoutePaths.Flamechart}`, + params: { + query: { + timeFrom: start, + timeTo: end, + kuery: '', + }, + }, + }); + flamegraph = response.body as BaseFlameGraph; + }); + + ( + [ + 'AddressOrLine', + 'FileID', + 'FrameType', + 'Inline', + 'ExeFilename', + 'AddressOrLine', + 'FunctionName', + 'FunctionOffset', + 'SourceFilename', + 'SourceLine', + 'CountInclusive', + 'CountExclusive', + ] as BaseFlameGraphKeys[] + ).forEach((item) => { + it(`returns correct ${item}`, async () => { + expectSnapshot(sortBy(flamegraph[item] as any[])).toMatch(); + }); + }); + + (['SamplingRate', 'Size', 'TotalSeconds'] as BaseFlameGraphKeys[]).forEach((item) => { + it(`returns correct ${item}`, async () => { + expectSnapshot(flamegraph[item]).toMatch(); + }); + }); + }); + }); +} From b0a39cdeb744415262803343b1510a53ea661402 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 2 Oct 2023 11:42:24 -0400 Subject: [PATCH 05/22] Update dependency @elastic/charts to v60 (main) (#166799) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@elastic/charts](https://togithub.com/elastic/elastic-charts) | [`59.1.0` -> `60.0.0`](https://renovatebot.com/diffs/npm/@elastic%2fcharts/59.1.0/60.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@elastic%2fcharts/60.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@elastic%2fcharts/60.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@elastic%2fcharts/59.1.0/60.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@elastic%2fcharts/59.1.0/60.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
elastic/elastic-charts (@​elastic/charts) ### [`v60.0.0`](https://togithub.com/elastic/elastic-charts/blob/HEAD/CHANGELOG.md#6000-2023-09-20) [Compare Source](https://togithub.com/elastic/elastic-charts/compare/v59.1.0...v60.0.0) ##### Bug Fixes - **deps:** update dependency [@​elastic/eui](https://togithub.com/elastic/eui) to ^88.2.0 ([#​2161](https://togithub.com/elastic/elastic-charts/issues/2161)) ([6609a19](https://togithub.com/elastic/elastic-charts/commit/6609a19231ef8503a7cd467b1fca23c4528d6a32)) - **deps:** update dependency [@​elastic/eui](https://togithub.com/elastic/eui) to ^88.3.0 ([#​2163](https://togithub.com/elastic/elastic-charts/issues/2163)) ([624f43a](https://togithub.com/elastic/elastic-charts/commit/624f43a0f8cffffc6622bd9c3f65a3f43af40b08)) - **deps:** update dependency [@​elastic/eui](https://togithub.com/elastic/eui) to v85 ([#​2113](https://togithub.com/elastic/elastic-charts/issues/2113)) ([1b3fa7c](https://togithub.com/elastic/elastic-charts/commit/1b3fa7c34a96d38117cef6e1214757795b57dcd3)) - **deps:** update dependency [@​elastic/eui](https://togithub.com/elastic/eui) to v87 ([#​2145](https://togithub.com/elastic/elastic-charts/issues/2145)) ([312c32c](https://togithub.com/elastic/elastic-charts/commit/312c32cb71cb13ce0b92c86e77c3a975e426fd2b)) - **deps:** update dependency [@​elastic/eui](https://togithub.com/elastic/eui) to v88 ([#​2154](https://togithub.com/elastic/elastic-charts/issues/2154)) ([4070da0](https://togithub.com/elastic/elastic-charts/commit/4070da0c1f152009cd3a62abf314f6cb9f711845)) - **tooltip:** rendering in react v18 ([#​2169](https://togithub.com/elastic/elastic-charts/issues/2169)) ([f30df54](https://togithub.com/elastic/elastic-charts/commit/f30df5444f0a1938b27c08acf6a15f4fc748d4ea)) - update font family ([#​2165](https://togithub.com/elastic/elastic-charts/issues/2165)) ([be07b0c](https://togithub.com/elastic/elastic-charts/commit/be07b0c2164fc0a8784eb2550ad7495ed585bcdf)) - **waffle:** remove alpha artifacts ([#​2139](https://togithub.com/elastic/elastic-charts/issues/2139)) ([8eb4ede](https://togithub.com/elastic/elastic-charts/commit/8eb4edecf87e9eabfeb01b1138533c5d20dcab2a)) - Wait a tick before reporting render status ([#​2131](https://togithub.com/elastic/elastic-charts/issues/2131)) ([fd2bca4](https://togithub.com/elastic/elastic-charts/commit/fd2bca4ee25f7a99eafc4e2af3c312dc9183e49b)) - **xy:** disable legend extra on ordinal ([#​2114](https://togithub.com/elastic/elastic-charts/issues/2114)) ([3ddfb18](https://togithub.com/elastic/elastic-charts/commit/3ddfb1816b82522e16d23b5c5230772eb5d3bd69)) ##### Features - add locale prop to Settings ([#​2164](https://togithub.com/elastic/elastic-charts/issues/2164)) ([0bb3ab1](https://togithub.com/elastic/elastic-charts/commit/0bb3ab1f3afc0a04c7e1af2418c6fa0a3bdd1af4)) ##### BREAKING CHANGES - **xy:** when using the `ScaleType.Ordinal` for the X scale the legend extra value, representing the last and current hovered value, will not be shown.
--- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/elastic/kibana). --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Marco Vettorello Co-authored-by: Stratoula Kalafateli Co-authored-by: Drew Tate --- package.json | 2 +- .../public/components/gauge_component.tsx | 5 +---- .../public/components/heatmap_component.tsx | 5 +---- .../public/components/metric_vis.test.tsx | 7 ------- .../public/components/metric_vis.tsx | 5 +---- .../components/partition_vis_component.tsx | 7 ++----- .../public/components/tagcloud_component.tsx | 5 +---- .../public/components/xy_chart.tsx | 5 +---- .../screenshots/baseline/area_chart.png | Bin 73126 -> 125430 bytes yarn.lock | 17 +++++++++++------ 10 files changed, 19 insertions(+), 39 deletions(-) diff --git a/package.json b/package.json index e95c9000155a9..e5c77f4f844f5 100644 --- a/package.json +++ b/package.json @@ -98,7 +98,7 @@ "@dnd-kit/utilities": "^2.0.0", "@elastic/apm-rum": "^5.14.0", "@elastic/apm-rum-react": "^2.0.0", - "@elastic/charts": "59.1.0", + "@elastic/charts": "60.0.0", "@elastic/datemath": "5.0.3", "@elastic/elasticsearch": "npm:@elastic/elasticsearch-canary@8.9.1-canary.1", "@elastic/ems-client": "8.4.0", diff --git a/src/plugins/chart_expressions/expression_gauge/public/components/gauge_component.tsx b/src/plugins/chart_expressions/expression_gauge/public/components/gauge_component.tsx index 4684a160881b8..affbff3ea9b2c 100644 --- a/src/plugins/chart_expressions/expression_gauge/public/components/gauge_component.tsx +++ b/src/plugins/chart_expressions/expression_gauge/public/components/gauge_component.tsx @@ -246,10 +246,7 @@ export const GaugeComponent: FC = memo( const onRenderChange = useCallback( (isRendered: boolean = true) => { if (isRendered) { - // this requestAnimationFrame call is a temporary fix for https://github.com/elastic/elastic-charts/issues/2124 - window.requestAnimationFrame(() => { - renderComplete(); - }); + renderComplete(); } }, [renderComplete] diff --git a/src/plugins/chart_expressions/expression_heatmap/public/components/heatmap_component.tsx b/src/plugins/chart_expressions/expression_heatmap/public/components/heatmap_component.tsx index 894ea706cccc0..e51aabfc43f6b 100644 --- a/src/plugins/chart_expressions/expression_heatmap/public/components/heatmap_component.tsx +++ b/src/plugins/chart_expressions/expression_heatmap/public/components/heatmap_component.tsx @@ -199,10 +199,7 @@ export const HeatmapComponent: FC = memo( const onRenderChange = useCallback( (isRendered: boolean = true) => { if (isRendered) { - // this requestAnimationFrame call is a temporary fix for https://github.com/elastic/elastic-charts/issues/2124 - window.requestAnimationFrame(() => { - renderComplete(); - }); + renderComplete(); } }, [renderComplete] diff --git a/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.test.tsx b/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.test.tsx index 6e96c2ab06cdf..209608c260eca 100644 --- a/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.test.tsx +++ b/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.test.tsx @@ -971,11 +971,6 @@ describe('MetricVisComponent', function () { }); it('should report render complete', () => { - jest.spyOn(window, 'requestAnimationFrame').mockImplementation((cb) => { - cb(0); - return 0; - }); - const renderCompleteSpy = jest.fn(); const component = shallow( { diff --git a/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.tsx b/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.tsx index 109079f43fb8f..98f59b548d1b5 100644 --- a/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.tsx +++ b/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.tsx @@ -134,10 +134,7 @@ export const MetricVis = ({ const onRenderChange = useCallback( (isRendered) => { if (isRendered) { - // this requestAnimationFrame call is a temporary fix for https://github.com/elastic/elastic-charts/issues/2124 - window.requestAnimationFrame(() => { - renderComplete(); - }); + renderComplete(); } }, [renderComplete] diff --git a/src/plugins/chart_expressions/expression_partition_vis/public/components/partition_vis_component.tsx b/src/plugins/chart_expressions/expression_partition_vis/public/components/partition_vis_component.tsx index de1c977cbdadf..027f5d54f2e69 100644 --- a/src/plugins/chart_expressions/expression_partition_vis/public/components/partition_vis_component.tsx +++ b/src/plugins/chart_expressions/expression_partition_vis/public/components/partition_vis_component.tsx @@ -179,11 +179,8 @@ const PartitionVisComponent = (props: PartitionVisComponentProps) => { const onRenderChange = useCallback( (isRendered: boolean = true) => { if (isRendered) { - // this requestAnimationFrame call is a temporary fix for https://github.com/elastic/elastic-charts/issues/2124 - window.requestAnimationFrame(() => { - props.renderComplete(); - setChartIsLoaded(true); - }); + props.renderComplete(); + setChartIsLoaded(true); } }, [props] diff --git a/src/plugins/chart_expressions/expression_tagcloud/public/components/tagcloud_component.tsx b/src/plugins/chart_expressions/expression_tagcloud/public/components/tagcloud_component.tsx index e3532bb17f97e..37be5d38f3a26 100644 --- a/src/plugins/chart_expressions/expression_tagcloud/public/components/tagcloud_component.tsx +++ b/src/plugins/chart_expressions/expression_tagcloud/public/components/tagcloud_component.tsx @@ -169,10 +169,7 @@ export const TagCloudChart = ({ const onRenderChange = useCallback( (isRendered) => { if (isRendered) { - // this requestAnimationFrame call is a temporary fix for https://github.com/elastic/elastic-charts/issues/2124 - window.requestAnimationFrame(() => { - renderComplete(); - }); + renderComplete(); } }, [renderComplete] diff --git a/src/plugins/chart_expressions/expression_xy/public/components/xy_chart.tsx b/src/plugins/chart_expressions/expression_xy/public/components/xy_chart.tsx index c241e476db5de..7fd545e82f339 100644 --- a/src/plugins/chart_expressions/expression_xy/public/components/xy_chart.tsx +++ b/src/plugins/chart_expressions/expression_xy/public/components/xy_chart.tsx @@ -285,10 +285,7 @@ export function XYChart({ const onRenderChange = useCallback( (isRendered: boolean = true) => { if (isRendered) { - // this requestAnimationFrame call is a temporary fix for https://github.com/elastic/elastic-charts/issues/2124 - window.requestAnimationFrame(() => { - renderComplete(); - }); + renderComplete(); } }, [renderComplete] diff --git a/test/functional/screenshots/baseline/area_chart.png b/test/functional/screenshots/baseline/area_chart.png index b60760eb460d4aba0d97c5ab8bbf83b6a748a101..5c33d8d5ad82fd08b901d9850d384358e7f6727f 100644 GIT binary patch literal 125430 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

R>uCaJ?O(^29MM>m2b&tAVB~Jt)W*kPR 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 Date: Mon, 2 Oct 2023 17:57:10 +0200 Subject: [PATCH 06/22] [Defend Workflows][Fleet] Hide uninstall token for Cloud Agent Policy (#167627) ## Summary fixes #164013 The API does not return uninstall token for the policy id `policy-elastic-agent-on-cloud` ### questions - should it omit uninstall tokens for other `managed` policies, too? - or should we not generate uninstall tokens for `managed` policies at all? --- .../server/services/security/uninstall_token_service/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/x-pack/plugins/fleet/server/services/security/uninstall_token_service/index.ts b/x-pack/plugins/fleet/server/services/security/uninstall_token_service/index.ts index ec0eab9d6f51a..8309910be6f53 100644 --- a/x-pack/plugins/fleet/server/services/security/uninstall_token_service/index.ts +++ b/x-pack/plugins/fleet/server/services/security/uninstall_token_service/index.ts @@ -241,6 +241,7 @@ export class UninstallTokenService implements UninstallTokenServiceInterface { field: `${UNINSTALL_TOKENS_SAVED_OBJECT_TYPE}.attributes.policy_id`, size: bucketSize, include, + exclude: 'policy-elastic-agent-on-cloud', // todo: find a better way to not return or even generate token for managed policies }, aggs: { latest: { From 642ad7f0a6e87dc51b9ae1f5ee5e7bba823113e5 Mon Sep 17 00:00:00 2001 From: "Christiane (Tina) Heiligers" Date: Mon, 2 Oct 2023 09:03:49 -0700 Subject: [PATCH 07/22] Adds api integration tests for core to serverless common (#167570) --- .../test_suites/common/core/capabilities.ts | 30 +++++++++++++ .../test_suites/common/core/compression.ts | 43 +++++++++++++++++++ .../test_suites/common/core/index.ts | 16 +++++++ .../test_suites/common/core/translations.ts | 31 +++++++++++++ .../common_configs/config.group1.ts | 1 + .../search/common_configs/config.group1.ts | 1 + .../security/common_configs/config.group1.ts | 1 + 7 files changed, 123 insertions(+) create mode 100644 x-pack/test_serverless/api_integration/test_suites/common/core/capabilities.ts create mode 100644 x-pack/test_serverless/api_integration/test_suites/common/core/compression.ts create mode 100644 x-pack/test_serverless/api_integration/test_suites/common/core/index.ts create mode 100644 x-pack/test_serverless/api_integration/test_suites/common/core/translations.ts diff --git a/x-pack/test_serverless/api_integration/test_suites/common/core/capabilities.ts b/x-pack/test_serverless/api_integration/test_suites/common/core/capabilities.ts new file mode 100644 index 0000000000000..a05c0d99bd331 --- /dev/null +++ b/x-pack/test_serverless/api_integration/test_suites/common/core/capabilities.ts @@ -0,0 +1,30 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import expect from '@kbn/expect'; +import { FtrProviderContext } from '../../../ftr_provider_context'; + +export default function ({ getService }: FtrProviderContext) { + const supertest = getService('supertest'); + const svlCommonApi = getService('svlCommonApi'); + describe('/api/core/capabilities', () => { + it(`returns a 400 when an invalid app id is provided`, async () => { + const { body } = await supertest + .post('/api/core/capabilities') + .set(svlCommonApi.getInternalRequestHeader()) + .send({ + applications: ['dashboard', 'discover', 'bad%app'], + }) + .expect(400); + expect(body).to.eql({ + statusCode: 400, + error: 'Bad Request', + message: '[request body.applications.2]: Invalid application id', + }); + }); + }); +} diff --git a/x-pack/test_serverless/api_integration/test_suites/common/core/compression.ts b/x-pack/test_serverless/api_integration/test_suites/common/core/compression.ts new file mode 100644 index 0000000000000..3284d065c9b60 --- /dev/null +++ b/x-pack/test_serverless/api_integration/test_suites/common/core/compression.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 + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import expect from '@kbn/expect'; +import { FtrProviderContext } from '../../../ftr_provider_context'; + +export default function ({ getService }: FtrProviderContext) { + const supertest = getService('supertest'); + const svlCommonApi = getService('svlCommonApi'); + + const compressionSuite = (url: string) => { + it(`uses compression when there isn't a referer`, async () => { + await supertest + .get(url) + .set('accept-encoding', 'gzip') + .set(svlCommonApi.getInternalRequestHeader()) + .then((response) => { + expect(response.header).to.have.property('content-encoding', 'gzip'); + }); + }); + + it(`uses compression when there is a whitelisted referer`, async () => { + await supertest + .get(url) + .set('accept-encoding', 'gzip') + .set(svlCommonApi.getInternalRequestHeader()) + .set('referer', 'https://some-host.com') + .then((response) => { + expect(response.header).to.have.property('content-encoding', 'gzip'); + }); + }); + }; + + describe('compression', () => { + describe('against an application page', () => { + compressionSuite('/app/kibana'); + }); + }); +} diff --git a/x-pack/test_serverless/api_integration/test_suites/common/core/index.ts b/x-pack/test_serverless/api_integration/test_suites/common/core/index.ts new file mode 100644 index 0000000000000..f55f77bd7e6ab --- /dev/null +++ b/x-pack/test_serverless/api_integration/test_suites/common/core/index.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 + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import { FtrProviderContext } from '../../../ftr_provider_context'; + +export default function ({ loadTestFile }: FtrProviderContext) { + describe('core', () => { + loadTestFile(require.resolve('./compression')); + loadTestFile(require.resolve('./translations')); + loadTestFile(require.resolve('./capabilities')); + }); +} diff --git a/x-pack/test_serverless/api_integration/test_suites/common/core/translations.ts b/x-pack/test_serverless/api_integration/test_suites/common/core/translations.ts new file mode 100644 index 0000000000000..26b4302bf2c71 --- /dev/null +++ b/x-pack/test_serverless/api_integration/test_suites/common/core/translations.ts @@ -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 + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import expect from '@kbn/expect'; +import { FtrProviderContext } from '../../../ftr_provider_context'; + +export default function ({ getService }: FtrProviderContext) { + const supertest = getService('supertest'); + + describe('translations', () => { + it(`returns the translations with the correct headers`, async () => { + await supertest.get('/translations/en.json').then((response) => { + expect(response.body.locale).to.eql('en'); + + expect(response.header).to.have.property('content-type', 'application/json; charset=utf-8'); + expect(response.header).to.have.property('cache-control', 'must-revalidate'); + expect(response.header).to.have.property('etag'); + }); + }); + + it(`returns a 404 when not using the correct locale`, async () => { + await supertest.get('/translations/foo.json').then((response) => { + expect(response.status).to.eql(404); + }); + }); + }); +} diff --git a/x-pack/test_serverless/api_integration/test_suites/observability/common_configs/config.group1.ts b/x-pack/test_serverless/api_integration/test_suites/observability/common_configs/config.group1.ts index a04b9074662da..d1ce536ee1f6b 100644 --- a/x-pack/test_serverless/api_integration/test_suites/observability/common_configs/config.group1.ts +++ b/x-pack/test_serverless/api_integration/test_suites/observability/common_configs/config.group1.ts @@ -24,6 +24,7 @@ export default async function ({ readConfigFile }: FtrConfigProviderContext) { require.resolve('../../common/scripts_tests'), require.resolve('../../common/search_oss'), require.resolve('../../common/search_xpack'), + require.resolve('../../common/core'), ], junit: { reportName: 'Serverless Observability API Integration Tests - Common Group 1', diff --git a/x-pack/test_serverless/api_integration/test_suites/search/common_configs/config.group1.ts b/x-pack/test_serverless/api_integration/test_suites/search/common_configs/config.group1.ts index 8a983926a12e6..b24b68b8e4a48 100644 --- a/x-pack/test_serverless/api_integration/test_suites/search/common_configs/config.group1.ts +++ b/x-pack/test_serverless/api_integration/test_suites/search/common_configs/config.group1.ts @@ -24,6 +24,7 @@ export default async function ({ readConfigFile }: FtrConfigProviderContext) { require.resolve('../../common/scripts_tests'), require.resolve('../../common/search_oss'), require.resolve('../../common/search_xpack'), + require.resolve('../../common/core'), ], junit: { reportName: 'Serverless Search API Integration Tests - Common Group 1', diff --git a/x-pack/test_serverless/api_integration/test_suites/security/common_configs/config.group1.ts b/x-pack/test_serverless/api_integration/test_suites/security/common_configs/config.group1.ts index 995c62fea1fd5..a46be9dcf4f75 100644 --- a/x-pack/test_serverless/api_integration/test_suites/security/common_configs/config.group1.ts +++ b/x-pack/test_serverless/api_integration/test_suites/security/common_configs/config.group1.ts @@ -24,6 +24,7 @@ export default async function ({ readConfigFile }: FtrConfigProviderContext) { require.resolve('../../common/scripts_tests'), require.resolve('../../common/search_oss'), require.resolve('../../common/search_xpack'), + require.resolve('../../common/core'), ], junit: { reportName: 'Serverless Security API Integration Tests - Common Group 1', From 267328bfc7f6555ff9f61ed505c9ad18f4e42344 Mon Sep 17 00:00:00 2001 From: Melissa Alvarez Date: Mon, 2 Oct 2023 10:04:12 -0600 Subject: [PATCH 08/22] [ML] Data frame analytics: ensures destination index setting is persisted when cloning (#167584) ## Summary Fixes https://github.com/elastic/kibana/issues/164696 This PR ensures that the `Destination index same as job ID` state is persisted when switching between steps for original jobs and cloned jobs. https://github.com/elastic/kibana/assets/6446462/adb1cbcf-3387-4467-bbf9-666388e3145d ### Checklist Delete any items that are not applicable to this PR. - [ ] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md) - [ ] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [ ] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [ ] Any UI touched in this PR is usable by keyboard only (learn more about [keyboard accessibility](https://webaim.org/techniques/keyboard/)) - [ ] Any UI touched in this PR does not create any new axe failures (run axe in browser: [FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/), [Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US)) - [ ] If a plugin configuration key changed, check if it needs to be allowlisted in the cloud and added to the [docker list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker) - [ ] This renders correctly on smaller devices using a responsive layout. (You can test this [in your browser](https://www.browserstack.com/guide/responsive-testing-on-local-server)) - [ ] This was checked for [cross-browser compatibility](https://www.elastic.co/support/matrix#matrix_browsers) --- .../components/details_step/details_step_form.tsx | 4 +--- .../test/functional/apps/ml/data_frame_analytics/cloning.ts | 3 +++ .../functional/services/ml/data_frame_analytics_creation.ts | 3 ++- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_creation/components/details_step/details_step_form.tsx b/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_creation/components/details_step/details_step_form.tsx index 064b182200f45..2a86ea3f723c6 100644 --- a/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_creation/components/details_step/details_step_form.tsx +++ b/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_creation/components/details_step/details_step_form.tsx @@ -61,7 +61,7 @@ export const DetailsStepForm: FC = ({ } = form; const [destIndexSameAsId, setDestIndexSameAsId] = useState( - cloneJob === undefined && hasSwitchedToEditor === false + hasSwitchedToEditor === false && destinationIndex !== undefined && destinationIndex === jobId ); const [useResultsFieldDefault, setUseResultsFieldDefault] = useState( (cloneJob === undefined && hasSwitchedToEditor === false && resultsField === undefined) || @@ -178,8 +178,6 @@ export const DetailsStepForm: FC = ({ useEffect(() => { if (destIndexSameAsId === true && !jobIdEmpty && jobIdValid) { setFormState({ destinationIndex: jobId }); - } else if (destIndexSameAsId === false && hasSwitchedToEditor === false) { - setFormState({ destinationIndex: '' }); } // eslint-disable-next-line react-hooks/exhaustive-deps }, [destIndexSameAsId, jobId]); diff --git a/x-pack/test/functional/apps/ml/data_frame_analytics/cloning.ts b/x-pack/test/functional/apps/ml/data_frame_analytics/cloning.ts index 279853d280dce..19baea2c48c1f 100644 --- a/x-pack/test/functional/apps/ml/data_frame_analytics/cloning.ts +++ b/x-pack/test/functional/apps/ml/data_frame_analytics/cloning.ts @@ -197,6 +197,9 @@ export default function ({ getService }: FtrProviderContext) { testData.job as DataFrameAnalyticsConfig ); await ml.dataFrameAnalyticsCreation.setJobId(cloneJobId); + // open the dest index input + await ml.dataFrameAnalyticsCreation.assertDestIndexSameAsIdSwitchExists(); + await ml.dataFrameAnalyticsCreation.setDestIndexSameAsIdCheckState(false); await ml.dataFrameAnalyticsCreation.setDestIndex(cloneDestIndex); await ml.testExecution.logTestStep('should continue to the validation step'); diff --git a/x-pack/test/functional/services/ml/data_frame_analytics_creation.ts b/x-pack/test/functional/services/ml/data_frame_analytics_creation.ts index fe0949c1d123c..43bb799a5a759 100644 --- a/x-pack/test/functional/services/ml/data_frame_analytics_creation.ts +++ b/x-pack/test/functional/services/ml/data_frame_analytics_creation.ts @@ -716,7 +716,8 @@ export function MachineLearningDataFrameAnalyticsCreationProvider( async assertInitialCloneJobDetailsStep(job: DataFrameAnalyticsConfig) { await this.assertJobIdValue(''); // id should be empty await this.assertJobDescriptionValue(String(job.description)); - await this.assertDestIndexValue(''); // destination index should be empty + // destination index same as id should be checked since dest index is reset to '' on clone + await this.assertDestIndexSameAsIdCheckState(true); }, async assertCreationCalloutMessagesExist() { From 2bcd865840444b21cb63a6366350442e7cf3f8e9 Mon Sep 17 00:00:00 2001 From: Julia Bardi <90178898+juliaElastic@users.noreply.github.com> Date: Mon, 2 Oct 2023 18:11:26 +0200 Subject: [PATCH 09/22] [Fleet] fix upgradeable check to allow to newer snapshot (#167780) ## Summary The recent [change](https://github.com/elastic/kibana/pull/167410) broke an integration test in agent where the test upgrades to a newer snapshot version. This change is removing the version check against the latest agent version if `versionToUpgrade` is given. ### Checklist - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios --- .../services/is_agent_upgradeable.test.ts | 51 +++++-------------- .../common/services/is_agent_upgradeable.ts | 5 +- 2 files changed, 14 insertions(+), 42 deletions(-) diff --git a/x-pack/plugins/fleet/common/services/is_agent_upgradeable.test.ts b/x-pack/plugins/fleet/common/services/is_agent_upgradeable.test.ts index 084673aaa8f7b..8a3f3ce8d59ac 100644 --- a/x-pack/plugins/fleet/common/services/is_agent_upgradeable.test.ts +++ b/x-pack/plugins/fleet/common/services/is_agent_upgradeable.test.ts @@ -107,21 +107,21 @@ const getAgent = ({ return agent; }; describe('Fleet - isAgentUpgradeable', () => { - it('returns false if agent reports not upgradeable with agent version < kibana version', () => { + it('returns false if agent reports not upgradeable with agent version < latest agent version', () => { expect(isAgentUpgradeable(getAgent({ version: '7.9.0' }), '8.0.0')).toBe(false); }); - it('returns false if agent reports not upgradeable with agent version > kibana version', () => { + it('returns false if agent reports not upgradeable with agent version > latest agent version', () => { expect(isAgentUpgradeable(getAgent({ version: '8.0.0' }), '7.9.0')).toBe(false); }); - it('returns false if agent reports not upgradeable with agent version === kibana version', () => { + it('returns false if agent reports not upgradeable with agent version === latest agent version', () => { expect(isAgentUpgradeable(getAgent({ version: '8.0.0' }), '8.0.0')).toBe(false); }); - it('returns false if agent reports upgradeable, with agent version === kibana version', () => { + it('returns false if agent reports upgradeable, with agent version === latest agent version', () => { expect(isAgentUpgradeable(getAgent({ version: '8.0.0', upgradeable: true }), '8.0.0')).toBe( false ); }); - it('returns false if agent reports upgradeable, with agent version > kibana version', () => { + it('returns false if agent reports upgradeable, with agent version > latest agent version', () => { expect(isAgentUpgradeable(getAgent({ version: '8.0.0', upgradeable: true }), '7.9.0')).toBe( false ); @@ -142,58 +142,33 @@ describe('Fleet - isAgentUpgradeable', () => { ) ).toBe(false); }); - it('returns true if agent reports upgradeable, with agent version < kibana version', () => { + it('returns true if agent reports upgradeable, with agent version < latest agent version', () => { expect(isAgentUpgradeable(getAgent({ version: '7.9.0', upgradeable: true }), '8.0.0')).toBe( true ); }); - it('returns false if agent reports upgradeable, with agent snapshot version === kibana version', () => { + it('returns false if agent reports upgradeable, with agent snapshot version === latest agent version', () => { expect( isAgentUpgradeable(getAgent({ version: '7.9.0-SNAPSHOT', upgradeable: true }), '7.9.0') ).toBe(false); }); - it('returns false if agent reports upgradeable, with agent version === kibana snapshot version', () => { - expect( - isAgentUpgradeable(getAgent({ version: '7.9.0', upgradeable: true }), '7.9.0-SNAPSHOT') - ).toBe(false); - }); - it('returns true if agent reports upgradeable, with agent snapshot version < kibana snapshot version', () => { + it('returns true if agent reports upgradeable, with upgrade to agent snapshot version newer than latest agent version', () => { expect( isAgentUpgradeable( - getAgent({ version: '7.9.0-SNAPSHOT', upgradeable: true }), - '8.0.0-SNAPSHOT' + getAgent({ version: '8.10.2', upgradeable: true }), + '8.10.2', + '8.11.0-SNAPSHOT' ) ).toBe(true); }); - it('returns false if agent reports upgradeable, with agent snapshot version === kibana snapshot version', () => { - expect( - isAgentUpgradeable( - getAgent({ version: '8.0.0-SNAPSHOT', upgradeable: true }), - '8.0.0-SNAPSHOT' - ) - ).toBe(false); - }); - it('returns true if agent reports upgradeable, with agent version < kibana snapshot version', () => { - expect( - isAgentUpgradeable(getAgent({ version: '7.9.0', upgradeable: true }), '8.0.0-SNAPSHOT') - ).toBe(true); - }); it('returns false if agent reports upgradeable, with target version < current agent version ', () => { expect( - isAgentUpgradeable( - getAgent({ version: '7.9.0', upgradeable: true }), - '8.0.0-SNAPSHOT', - '7.8.0' - ) + isAgentUpgradeable(getAgent({ version: '7.9.0', upgradeable: true }), '8.0.0', '7.8.0') ).toBe(false); }); it('returns false if agent reports upgradeable, with target version == current agent version ', () => { expect( - isAgentUpgradeable( - getAgent({ version: '7.9.0', upgradeable: true }), - '8.0.0-SNAPSHOT', - '7.9.0' - ) + isAgentUpgradeable(getAgent({ version: '7.9.0', upgradeable: true }), '8.0.0', '7.9.0') ).toBe(false); }); it('returns false if agent reports upgradeable, but is already updating', () => { diff --git a/x-pack/plugins/fleet/common/services/is_agent_upgradeable.ts b/x-pack/plugins/fleet/common/services/is_agent_upgradeable.ts index d4dea44834a44..f896d6cf97bd4 100644 --- a/x-pack/plugins/fleet/common/services/is_agent_upgradeable.ts +++ b/x-pack/plugins/fleet/common/services/is_agent_upgradeable.ts @@ -33,10 +33,7 @@ export function isAgentUpgradeable( return false; } if (versionToUpgrade !== undefined) { - return ( - isNotDowngrade(agentVersion, versionToUpgrade) && - isAgentVersionLessThanLatest(agentVersion, latestAgentVersion) - ); + return isNotDowngrade(agentVersion, versionToUpgrade); } return isAgentVersionLessThanLatest(agentVersion, latestAgentVersion); } From 934a19b678e57dfaf3e539738c8994a5453527f4 Mon Sep 17 00:00:00 2001 From: Pablo Machado Date: Mon, 2 Oct 2023 18:16:16 +0200 Subject: [PATCH 10/22] [Security Solutions] Fix many risk score UI inconsistencies and update in-app docs (#167638) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit issue: https://github.com/elastic/kibana/issues/166717 original PR: https://github.com/elastic/kibana/pull/166741 ## Summary General * Add the "How is risk score calculated?" button to the entity analytics dashboard and risk score tab on the Host/User page. * ~Add risk score hover action to the user/host overview component.~ Add a tooltip with link to risk score external doc. * Update risk score in-app doc * Update the field name “classification” to “level” everywhere the risk score is displayed * Update the “tech preview” label to “beta” everywhere the risk score is displayed * Rename Learn More to "How is host/user risk score calculated?" and link to External Docs * Add Beta tag to the settings page EA Dashboard: (User and Host) * Retain panel tooltip - Remove “Tech Preview” * Learn more link -> In Product flyout * Learn More (in Flyout) -> Add link to external docs page * Remove the tooltip from *Risk Classification column Alert Page -> Insights: * Change Tooltip on *Classification field -> How is Risk Score Calculated link Host/User Pages-> Risk Score Tab * Retain panel tool-tip * Add "How is Risk Score Calculated" similar to Dashboard * Remove tooltip from "Risk Classification" column Host/User Details: * Change Tooltip on "Classification field -> How is Risk Score Calculated link * Move score over time "learn more" link to the table header * Don't show the dashboard link when risk engine is enabled. ### Checklist Delete any items that are not applicable to this PR. - [x] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md) - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios --- .../cti_details/risk_summary.tsx | 13 +- .../cti_details/threat_summary_view.tsx | 49 +---- .../event_details/cti_details/translations.ts | 19 +- .../tabs/summary/host_panel/index.tsx | 10 +- .../alert_details/tabs/summary/translation.ts | 12 +- .../tabs/summary/user_panel/index.tsx | 10 +- .../components/risk_score_preview_table.tsx | 4 +- .../entity_analytics_management_page.tsx | 17 +- .../risk_score/enable_risk_score/index.tsx | 5 +- .../risk_details_tab_body/index.tsx | 87 ++++----- .../risk_score/risk_information/index.tsx | 174 +++++++++++++----- .../risk_information/translations.ts | 44 +---- .../risk_score_doc_link.tsx | 2 +- .../risk_score_header_title.tsx | 21 +-- .../risk_score_onboarding/translations.ts | 19 +- .../risk_score/severity/common/index.test.tsx | 14 +- .../risk_score/severity/common/index.tsx | 3 +- .../risk_score/severity/severity_badges.tsx | 4 +- .../severity/severity_filter_group.tsx | 8 +- .../index.tsx | 2 + .../components/risk_score/translations.ts | 6 +- .../host_risk_score_table/columns.tsx | 17 +- .../host_risk_score_table/index.tsx | 20 +- .../host_risk_score_table/translations.ts | 10 +- .../hosts/components/hosts_table/columns.tsx | 15 +- .../components/hosts_table/index.test.tsx | 6 +- .../components/hosts_table/translations.ts | 8 - .../kpi_hosts/risky_hosts/index.test.tsx | 75 -------- .../kpi_hosts/risky_hosts/index.tsx | 153 --------------- .../kpi_hosts/risky_hosts/translations.ts | 46 ----- .../explore/hosts/pages/translations.ts | 7 - .../users/components/all_users/index.tsx | 14 +- .../components/all_users/translations.ts | 10 +- .../user_risk_score_table/columns.tsx | 17 +- .../user_risk_score_table/index.tsx | 20 +- .../user_risk_score_table/translations.ts | 8 - .../explore/users/pages/translations.ts | 7 - .../flyout/left/components/host_details.tsx | 16 +- .../flyout/left/components/user_details.tsx | 16 +- .../components/host_entity_overview.test.tsx | 2 +- .../right/components/host_entity_overview.tsx | 44 ++--- .../components/user_entity_overview.test.tsx | 2 +- .../right/components/user_entity_overview.tsx | 46 ++--- .../public/overview/components/common.tsx | 58 ++++++ .../entity_analytics/common/translations.ts | 7 - .../entity_analytics/risk_score/columns.tsx | 15 +- .../risk_score/header_content.test.tsx | 4 +- .../risk_score/header_content.tsx | 9 +- .../entity_analytics/risk_score/index.tsx | 3 - .../risk_score/translations.ts | 23 +-- .../risk_score/use_entity.test.ts | 2 - .../entity_analytics/risk_score/use_entity.ts | 3 - .../components/host_overview/index.tsx | 23 ++- .../components/host_overview/translations.ts | 6 +- .../overview/components/translations.ts | 15 ++ .../components/user_overview/index.tsx | 23 ++- .../components/user_overview/translations.ts | 6 +- .../new_user_detail/risk_score_field.tsx | 23 ++- .../translations/translations/fr-FR.json | 27 --- .../translations/translations/ja-JP.json | 27 --- .../translations/translations/zh-CN.json | 27 --- .../e2e/detection_alerts/enrichments.cy.ts | 16 +- .../explore/dashboards/entity_analytics.cy.ts | 8 +- .../e2e/explore/host_details/risk_tab.cy.ts | 4 +- .../screens/entity_analytics_management.ts | 2 +- 65 files changed, 518 insertions(+), 895 deletions(-) delete mode 100644 x-pack/plugins/security_solution/public/explore/hosts/components/kpi_hosts/risky_hosts/index.test.tsx delete mode 100644 x-pack/plugins/security_solution/public/explore/hosts/components/kpi_hosts/risky_hosts/index.tsx delete mode 100644 x-pack/plugins/security_solution/public/explore/hosts/components/kpi_hosts/risky_hosts/translations.ts create mode 100644 x-pack/plugins/security_solution/public/overview/components/common.tsx create mode 100644 x-pack/plugins/security_solution/public/overview/components/translations.ts diff --git a/x-pack/plugins/security_solution/public/common/components/event_details/cti_details/risk_summary.tsx b/x-pack/plugins/security_solution/public/common/components/event_details/cti_details/risk_summary.tsx index 399a2cbee24a5..e0bc4637ea54b 100644 --- a/x-pack/plugins/security_solution/public/common/components/event_details/cti_details/risk_summary.tsx +++ b/x-pack/plugins/security_solution/public/common/components/event_details/cti_details/risk_summary.tsx @@ -10,7 +10,7 @@ import { EuiLoadingSpinner, EuiPanel } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n-react'; import * as i18n from './translations'; import { EnrichedDataRow, ThreatSummaryPanelHeader } from './threat_summary_view'; -import { RiskScore } from '../../../../explore/components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../../explore/components/risk_score/severity/common'; import type { RiskSeverity } from '../../../../../common/search_strategy'; import { RiskScoreEntity } from '../../../../../common/search_strategy'; import type { HostRisk, UserRisk } from '../../../../explore/containers/risk_score'; @@ -52,13 +52,12 @@ const RiskSummaryComponent: React.FC = ({ risk, riskEntity, original } toolTipContent={ = ({ risk, riskEntity, original {!risk.loading && ( <> + ) : ( getEmptyValue() ) @@ -90,8 +89,8 @@ const RiskSummaryComponent: React.FC = ({ risk, riskEntity, original {originalRisk && currentRiskScore !== originalRisk && ( <> } + field={i18n.ORIGINAL_RISK_LEVEL(riskEntity)} + value={} /> )} diff --git a/x-pack/plugins/security_solution/public/common/components/event_details/cti_details/threat_summary_view.tsx b/x-pack/plugins/security_solution/public/common/components/event_details/cti_details/threat_summary_view.tsx index da6cf3a04436d..4f5e1f847ad83 100644 --- a/x-pack/plugins/security_solution/public/common/components/event_details/cti_details/threat_summary_view.tsx +++ b/x-pack/plugins/security_solution/public/common/components/event_details/cti_details/threat_summary_view.tsx @@ -6,18 +6,8 @@ */ import styled from 'styled-components'; -import React, { useCallback, useState } from 'react'; -import { - EuiTitle, - EuiHorizontalRule, - EuiFlexGroup, - EuiFlexItem, - EuiSpacer, - EuiPopover, - EuiButtonIcon, - EuiPopoverTitle, - EuiText, -} from '@elastic/eui'; +import React from 'react'; +import { EuiTitle, EuiHorizontalRule, EuiFlexGroup, EuiFlexItem, EuiSpacer } from '@elastic/eui'; import * as i18n from './translations'; import type { CtiEnrichment } from '../../../../../common/search_strategy/security_solution/cti'; @@ -31,6 +21,7 @@ import { EnrichmentSummary } from './enrichment_summary'; import type { HostRisk, UserRisk } from '../../../../explore/containers/risk_score'; import { RiskScoreEntity } from '../../../../../common/search_strategy'; import { useHasSecurityCapability } from '../../../../helper_hooks'; +import { RiskScoreInfoTooltip } from '../../../../overview/components/common'; const UppercaseEuiTitle = styled(EuiTitle)` text-transform: uppercase; @@ -82,42 +73,16 @@ export const ThreatSummaryPanelHeader: React.FC<{ toolTipContent: React.ReactNode; toolTipTitle?: React.ReactNode; }> = ({ title, toolTipContent, toolTipTitle }) => { - const [isPopoverOpen, setIsPopoverOpen] = useState(false); - - const onClick = useCallback(() => { - setIsPopoverOpen(!isPopoverOpen); - }, [isPopoverOpen, setIsPopoverOpen]); - - const closePopover = useCallback(() => { - setIsPopoverOpen(false); - }, [setIsPopoverOpen]); - return ( {title} - - } - > - {toolTipTitle ?? title} - - {toolTipContent} - - + ); diff --git a/x-pack/plugins/security_solution/public/common/components/event_details/cti_details/translations.ts b/x-pack/plugins/security_solution/public/common/components/event_details/cti_details/translations.ts index 09c233c73cca1..0ba5a464dc9d5 100644 --- a/x-pack/plugins/security_solution/public/common/components/event_details/cti_details/translations.ts +++ b/x-pack/plugins/security_solution/public/common/components/event_details/cti_details/translations.ts @@ -38,13 +38,6 @@ export const INDICATOR_TOOLTIP_CONTENT = i18n.translate( } ); -export const INFORMATION_ARIA_LABEL = i18n.translate( - 'xpack.securitySolution.eventDetails.ctiSummary.informationAriaLabel', - { - defaultMessage: 'Information', - } -); - export const INVESTIGATION_TOOLTIP_CONTENT = i18n.translate( 'xpack.securitySolution.eventDetails.ctiSummary.investigationEnrichmentTooltipContent', { @@ -99,17 +92,17 @@ export const ENRICHED_DATA = i18n.translate( } ); -export const CURRENT_RISK_CLASSIFICATION = (riskEntity: RiskScoreEntity) => - i18n.translate('xpack.securitySolution.alertDetails.overview.hostRiskClassification', { - defaultMessage: 'Current {riskEntity} risk classification', +export const CURRENT_RISK_LEVEL = (riskEntity: RiskScoreEntity) => + i18n.translate('xpack.securitySolution.alertDetails.overview.hostRiskLevel', { + defaultMessage: 'Current {riskEntity} risk level', values: { riskEntity: getRiskEntityTranslation(riskEntity, true), }, }); -export const ORIGINAL_RISK_CLASSIFICATION = (riskEntity: RiskScoreEntity) => - i18n.translate('xpack.securitySolution.alertDetails.overview.originalHostRiskClassification', { - defaultMessage: 'Original {riskEntity} risk classification', +export const ORIGINAL_RISK_LEVEL = (riskEntity: RiskScoreEntity) => + i18n.translate('xpack.securitySolution.alertDetails.overview.originalHostRiskLevel', { + defaultMessage: 'Original {riskEntity} risk level', values: { riskEntity: getRiskEntityTranslation(riskEntity, true), }, diff --git a/x-pack/plugins/security_solution/public/detections/pages/alert_details/tabs/summary/host_panel/index.tsx b/x-pack/plugins/security_solution/public/detections/pages/alert_details/tabs/summary/host_panel/index.tsx index 9c4fdf7fab522..2688dd5cabf3c 100644 --- a/x-pack/plugins/security_solution/public/detections/pages/alert_details/tabs/summary/host_panel/index.tsx +++ b/x-pack/plugins/security_solution/public/detections/pages/alert_details/tabs/summary/host_panel/index.tsx @@ -16,7 +16,7 @@ import { SummaryValueCell } from '../../../../../../common/components/event_deta import { useRiskScore } from '../../../../../../explore/containers/risk_score'; import { RiskScoreEntity } from '../../../../../../../common/search_strategy'; import { getEmptyTagValue } from '../../../../../../common/components/empty_value'; -import { RiskScore } from '../../../../../../explore/components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../../../../explore/components/risk_score/severity/common'; import { FirstLastSeen, FirstLastSeenType, @@ -31,7 +31,7 @@ import { AGENT_STATUS_TITLE, HOST_NAME_TITLE, HOST_PANEL_TITLE, - HOST_RISK_CLASSIFICATION, + HOST_RISK_LEVEL, HOST_RISK_SCORE, IP_ADDRESSES_TITLE, LAST_SEEN_TITLE, @@ -99,7 +99,7 @@ export const HostPanel = React.memo( ? Math.round(hostRiskData.host.risk.calculated_score_norm) : getEmptyTagValue(); const hostRiskSeverity = hostRiskData ? ( - + ) : ( getEmptyTagValue() ); @@ -156,9 +156,7 @@ export const HostPanel = React.memo( {hostRiskScore} )} {hostRiskLevel && ( - - {hostRiskLevel} - + {hostRiskLevel} )} diff --git a/x-pack/plugins/security_solution/public/detections/pages/alert_details/tabs/summary/translation.ts b/x-pack/plugins/security_solution/public/detections/pages/alert_details/tabs/summary/translation.ts index d50b1338ffb37..6a509ff958735 100644 --- a/x-pack/plugins/security_solution/public/detections/pages/alert_details/tabs/summary/translation.ts +++ b/x-pack/plugins/security_solution/public/detections/pages/alert_details/tabs/summary/translation.ts @@ -189,10 +189,10 @@ export const HOST_RISK_SCORE = i18n.translate( } ); -export const HOST_RISK_CLASSIFICATION = i18n.translate( - 'xpack.securitySolution.alerts.alertDetails.summary.host.riskClassification', +export const HOST_RISK_LEVEL = i18n.translate( + 'xpack.securitySolution.alerts.alertDetails.summary.host.riskLevel', { - defaultMessage: 'Host risk classification', + defaultMessage: 'Host risk level', } ); @@ -210,10 +210,10 @@ export const USER_RISK_SCORE = i18n.translate( } ); -export const USER_RISK_CLASSIFICATION = i18n.translate( - 'xpack.securitySolution.alerts.alertDetails.summary.user.riskClassification', +export const USER_RISK_LEVEL = i18n.translate( + 'xpack.securitySolution.alerts.alertDetails.summary.user.riskLevel', { - defaultMessage: 'User risk classification', + defaultMessage: 'User risk level', } ); diff --git a/x-pack/plugins/security_solution/public/detections/pages/alert_details/tabs/summary/user_panel/index.tsx b/x-pack/plugins/security_solution/public/detections/pages/alert_details/tabs/summary/user_panel/index.tsx index 3d931a952ed8e..3fca60579b1da 100644 --- a/x-pack/plugins/security_solution/public/detections/pages/alert_details/tabs/summary/user_panel/index.tsx +++ b/x-pack/plugins/security_solution/public/detections/pages/alert_details/tabs/summary/user_panel/index.tsx @@ -13,7 +13,7 @@ import type { EuiFlexItemProps } from '@elastic/eui/src/components/flex/flex_ite import { useRiskScore } from '../../../../../../explore/containers/risk_score'; import { RiskScoreEntity } from '../../../../../../../common/search_strategy'; import { getEmptyTagValue } from '../../../../../../common/components/empty_value'; -import { RiskScore } from '../../../../../../explore/components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../../../../explore/components/risk_score/severity/common'; import { FirstLastSeen, FirstLastSeenType, @@ -28,7 +28,7 @@ import { LAST_SEEN_TITLE, USER_NAME_TITLE, USER_PANEL_TITLE, - USER_RISK_CLASSIFICATION, + USER_RISK_LEVEL, USER_RISK_SCORE, } from '../translation'; import { SummaryPanel } from '../wrappers'; @@ -78,7 +78,7 @@ export const UserPanel = React.memo( ? Math.round(userRiskData.user.risk.calculated_score_norm) : getEmptyTagValue(); const userRiskSeverity = userRiskData ? ( - + ) : ( getEmptyTagValue() ); @@ -121,9 +121,7 @@ export const UserPanel = React.memo( {userRiskScore} )} {userRiskLevel && ( - - {userRiskLevel} - + {userRiskLevel} )} diff --git a/x-pack/plugins/security_solution/public/entity_analytics/components/risk_score_preview_table.tsx b/x-pack/plugins/security_solution/public/entity_analytics/components/risk_score_preview_table.tsx index d8f4f164f848d..12b162d467132 100644 --- a/x-pack/plugins/security_solution/public/entity_analytics/components/risk_score_preview_table.tsx +++ b/x-pack/plugins/security_solution/public/entity_analytics/components/risk_score_preview_table.tsx @@ -9,7 +9,7 @@ import React from 'react'; import { EuiInMemoryTable } from '@elastic/eui'; import type { EuiBasicTableColumn } from '@elastic/eui'; import type { RiskSeverity } from '../../../common/search_strategy'; -import { RiskScore } from '../../explore/components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../explore/components/risk_score/severity/common'; import { HostDetailsLink, UserDetailsLink } from '../../common/components/links'; import { RiskScoreEntity, type RiskScore as IRiskScore } from '../../../common/risk_engine'; @@ -42,7 +42,7 @@ export const RiskScorePreviewTable = ({ name: 'Level', render: (risk: RiskSeverity | null) => { if (risk != null) { - return ; + return ; } return ''; diff --git a/x-pack/plugins/security_solution/public/entity_analytics/pages/entity_analytics_management_page.tsx b/x-pack/plugins/security_solution/public/entity_analytics/pages/entity_analytics_management_page.tsx index ae2f2abed902b..16521b065c2a0 100644 --- a/x-pack/plugins/security_solution/public/entity_analytics/pages/entity_analytics_management_page.tsx +++ b/x-pack/plugins/security_solution/public/entity_analytics/pages/entity_analytics_management_page.tsx @@ -6,21 +6,28 @@ */ import React from 'react'; -import { EuiFlexGroup, EuiFlexItem, EuiPageHeader, EuiSpacer } from '@elastic/eui'; +import { EuiBetaBadge, EuiFlexGroup, EuiFlexItem, EuiPageHeader, EuiSpacer } from '@elastic/eui'; import { RiskScorePreviewSection } from '../components/risk_score_preview_section'; import { RiskScoreEnableSection } from '../components/risk_score_enable_section'; import { MissingPrivilegesCallOut } from '../../detections/components/callouts/missing_privileges_callout'; import { ENTITY_ANALYTICS_RISK_SCORE } from '../../app/translations'; +import { BETA } from '../../common/translations'; export const EntityAnalyticsManagementPage = () => { return ( <> - + + + + + + + diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/enable_risk_score/index.tsx b/x-pack/plugins/security_solution/public/explore/components/risk_score/enable_risk_score/index.tsx index 4f8b12db74c9c..ac064feb35f04 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/enable_risk_score/index.tsx +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/enable_risk_score/index.tsx @@ -48,10 +48,7 @@ const EnableRiskScoreComponent = ({ return ( - } - titleSize="s" - /> + } titleSize="s" /> {text.cta}} body={ diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_details_tab_body/index.tsx b/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_details_tab_body/index.tsx index 208fd950315e4..37b61a86fbea3 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_details_tab_body/index.tsx +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_details_tab_body/index.tsx @@ -167,51 +167,52 @@ const RiskDetailsTabBodyComponent: React.FC< ) : ( - - - - + <> + + + + - - - - + + + + + + + + {i18n.VIEW_DASHBOARD_BUTTON} + + + + + + + + )} - - - - - {i18n.VIEW_DASHBOARD_BUTTON} - - - - - - - ); }; diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_information/index.tsx b/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_information/index.tsx index b72f170894370..4edecf5c40174 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_information/index.tsx +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_information/index.tsx @@ -23,6 +23,7 @@ import { useGeneratedHtmlId, EuiBetaBadge, useEuiTheme, + EuiLink, } from '@elastic/eui'; import React from 'react'; import { FormattedMessage } from '@kbn/i18n-react'; @@ -30,18 +31,18 @@ import { css } from '@emotion/react'; import { getRiskEntityTranslation } from '../translations'; import * as i18n from './translations'; import { useOnOpenCloseHandler } from '../../../../helper_hooks'; -import { RiskScore } from '../severity/common'; +import { RiskScoreLevel } from '../severity/common'; import { RiskScoreEntity, RiskSeverity } from '../../../../../common/search_strategy'; import { RiskScoreDocLink } from '../risk_score_onboarding/risk_score_doc_link'; -import { TECHNICAL_PREVIEW } from '../risk_score_onboarding/translations'; +import { BETA } from '../risk_score_onboarding/translations'; const getTableColumns = (riskEntity: RiskScoreEntity): Array> => [ { - field: 'classification', - name: i18n.INFORMATION_CLASSIFICATION_HEADER, + field: 'level', + name: i18n.INFORMATION_LEVEL_HEADER, render: (riskScore?: RiskSeverity) => { if (riskScore != null) { - return ; + return ; } }, }, @@ -53,15 +54,15 @@ const getTableColumns = (riskEntity: RiskScoreEntity): Array - -

{i18n.TITLE(riskEntity)}

- - + + + +

{i18n.TITLE}

+
+
+ + + +
-

{i18n.INTRODUCTION(riskEntity)}

-

{i18n.EXPLANATION_MESSAGE(riskEntity)}

+

+ +

+

+ + + + ), + }} + /> +

+

+ + + + ), + }} + /> +

+ +

+ +

+
+

+ +

+ +

+ +

+
+

+ + {'Riemann Zeta function'} + + ), + }} + /> +

+

+ +

- - } - /> - ), - riskEntity: getRiskEntityTranslation(riskEntity, true), - }} + + } />
- {i18n.CLOSE_BUTTON_LTEXT} + {i18n.CLOSE_BUTTON_TEXT} diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_information/translations.ts b/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_information/translations.ts index a79ccbafc5d31..112c6d37ca4a2 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_information/translations.ts +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_information/translations.ts @@ -9,10 +9,10 @@ import { i18n } from '@kbn/i18n'; import type { RiskScoreEntity } from '../../../../../common/search_strategy'; import { getRiskEntityTranslation } from '../translations'; -export const INFORMATION_CLASSIFICATION_HEADER = i18n.translate( - 'xpack.securitySolution.riskInformation.classificationHeader', +export const INFORMATION_LEVEL_HEADER = i18n.translate( + 'xpack.securitySolution.riskInformation.levelHeader', { - defaultMessage: 'Classification', + defaultMessage: 'Level', } ); @@ -44,39 +44,13 @@ export const CRITICAL_RISK_DESCRIPTION = i18n.translate( defaultMessage: '90 and above', } ); -export const TITLE = (riskEntity: RiskScoreEntity) => - i18n.translate('xpack.securitySolution.riskInformation.title', { - defaultMessage: 'How is {riskEntity} risk calculated?', - values: { - riskEntity: getRiskEntityTranslation(riskEntity, true), - }, - }); - -export const INTRODUCTION = (riskEntity: RiskScoreEntity) => - i18n.translate('xpack.securitySolution.riskInformation.introduction', { - defaultMessage: - 'The {riskEntity} Risk Score capability surfaces risky {riskEntityLowerPlural} from within your environment.', - values: { - riskEntity: getRiskEntityTranslation(riskEntity), - riskEntityLowerPlural: getRiskEntityTranslation(riskEntity, true, true), - }, - }); +export const TITLE = i18n.translate('xpack.securitySolution.riskInformation.title', { + defaultMessage: 'Entity Risk Analytics', +}); -export const EXPLANATION_MESSAGE = (riskEntity: RiskScoreEntity) => - i18n.translate('xpack.securitySolution.riskInformation.explanation', { - defaultMessage: - 'This feature utilizes a transform, with a scripted metric aggregation to calculate {riskEntityLower} risk scores based on detection rule alerts with an "open" status, within a 5 day time window. The transform runs hourly to keep the score updated as new detection rule alerts stream in.', - values: { - riskEntityLower: getRiskEntityTranslation(riskEntity, true), - }, - }); - -export const CLOSE_BUTTON_LTEXT = i18n.translate( - 'xpack.securitySolution.riskInformation.closeBtn', - { - defaultMessage: 'Close', - } -); +export const CLOSE_BUTTON_TEXT = i18n.translate('xpack.securitySolution.riskInformation.closeBtn', { + defaultMessage: 'Close', +}); export const INFO_BUTTON_TEXT = i18n.translate( 'xpack.securitySolution.riskInformation.buttonLabel', diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_score_onboarding/risk_score_doc_link.tsx b/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_score_onboarding/risk_score_doc_link.tsx index 9f0fc185ed450..cae89799d2d1e 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_score_onboarding/risk_score_doc_link.tsx +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_score_onboarding/risk_score_doc_link.tsx @@ -23,7 +23,7 @@ const RiskScoreDocLinkComponent = ({ return ( - {title ? title : LEARN_MORE} + {title ? title : LEARN_MORE(riskScoreEntity)} ); }; diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_score_onboarding/risk_score_header_title.tsx b/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_score_onboarding/risk_score_header_title.tsx index 69a253947353b..741469833f92d 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_score_onboarding/risk_score_header_title.tsx +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_score_onboarding/risk_score_header_title.tsx @@ -7,29 +7,20 @@ import React from 'react'; import { RiskScoreEntity } from '../../../../../common/search_strategy'; -import { NavItemBetaBadge } from '../../../../common/components/navigation/nav_item_beta_badge'; import * as i18n from '../../../../overview/components/entity_analytics/common/translations'; -import { TECHNICAL_PREVIEW } from './translations'; const RiskScoreHeaderTitleComponent = ({ riskScoreEntity, title, - showTechnicalPreviewBadge = false, }: { riskScoreEntity: RiskScoreEntity; title?: string; - showTechnicalPreviewBadge?: boolean; -}) => { - return ( - <> - {title ?? - (riskScoreEntity === RiskScoreEntity.user ? i18n.USER_RISK_TITLE : i18n.HOST_RISK_TITLE)} - {showTechnicalPreviewBadge && ( - - )} - - ); -}; +}) => ( + <> + {title ?? + (riskScoreEntity === RiskScoreEntity.user ? i18n.USER_RISK_TITLE : i18n.HOST_RISK_TITLE)} + +); export const RiskScoreHeaderTitle = React.memo(RiskScoreHeaderTitleComponent); RiskScoreHeaderTitle.displayName = 'RiskScoreHeaderTitle'; diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_score_onboarding/translations.ts b/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_score_onboarding/translations.ts index 6b5edc80d65af..424e88c9850c3 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_score_onboarding/translations.ts +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/risk_score_onboarding/translations.ts @@ -5,13 +5,12 @@ * 2.0. */ import { i18n } from '@kbn/i18n'; +import type { RiskScoreEntity } from '../../../../../common/risk_engine'; +import { getRiskEntityTranslation } from '../translations'; -export const TECHNICAL_PREVIEW = i18n.translate( - 'xpack.securitySolution.riskScore.technicalPreviewLabel', - { - defaultMessage: 'Technical Preview', - } -); +export const BETA = i18n.translate('xpack.securitySolution.riskScore.technicalPreviewLabel', { + defaultMessage: 'Beta', +}); export const HOST_WARNING_TITLE = i18n.translate( 'xpack.securitySolution.riskScore.hostsDashboardWarningPanelTitle', @@ -48,3 +47,11 @@ export const RESTART_TOOLTIP = i18n.translate( 'The risk score calculation might take a while to run. However, by pressing restart, you can force it to run immediately.', } ); + +export const RISK_DATA_TITLE = (riskEntity: RiskScoreEntity) => + i18n.translate('xpack.securitySolution.alertDetails.overview.hostRiskDataTitle', { + defaultMessage: '{riskEntity} Risk Data', + values: { + riskEntity: getRiskEntityTranslation(riskEntity), + }, + }); diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/common/index.test.tsx b/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/common/index.test.tsx index 5041d0866b16b..9068c01a760ca 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/common/index.test.tsx +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/common/index.test.tsx @@ -15,7 +15,7 @@ import { EuiHealth } from '@elastic/eui'; import { euiThemeVars } from '@kbn/ui-theme'; import { RiskSeverity } from '../../../../../../common/search_strategy'; -import { RiskScore } from '.'; +import { RiskScoreLevel } from '.'; import { SEVERITY_COLOR } from '../../../../../overview/components/detection_response/utils'; jest.mock('@elastic/eui', () => { @@ -31,7 +31,7 @@ describe('RiskScore', () => { it('renders critical severity risk score', () => { const { container } = render( - + ); @@ -46,7 +46,7 @@ describe('RiskScore', () => { it('renders hight severity risk score', () => { const { container } = render( - + ); @@ -61,7 +61,7 @@ describe('RiskScore', () => { it('renders moderate severity risk score', () => { const { container } = render( - + ); @@ -76,7 +76,7 @@ describe('RiskScore', () => { it('renders low severity risk score', () => { const { container } = render( - + ); @@ -91,7 +91,7 @@ describe('RiskScore', () => { it('renders unknown severity risk score', () => { const { container } = render( - + ); @@ -106,7 +106,7 @@ describe('RiskScore', () => { it("doesn't render background-color when hideBackgroundColor is true", () => { const { queryByTestId } = render( - + ); diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/common/index.tsx b/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/common/index.tsx index 8ba146b825aaf..b28898b384e00 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/common/index.tsx +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/common/index.tsx @@ -41,7 +41,8 @@ const RiskBadge = styled.div<{ $severity: RiskSeverity; $hideBackgroundColor: bo const TooltipContainer = styled.div` padding: ${({ theme }) => theme.eui.euiSizeS}; `; -export const RiskScore: React.FC<{ + +export const RiskScoreLevel: React.FC<{ severity: RiskSeverity; hideBackgroundColor?: boolean; toolTipContent?: JSX.Element; diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/severity_badges.tsx b/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/severity_badges.tsx index ef80d8a095699..f1ebae0897595 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/severity_badges.tsx +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/severity_badges.tsx @@ -8,7 +8,7 @@ import { EuiFlexGroup, EuiNotificationBadge, EuiFlexItem } from '@elastic/eui'; import React from 'react'; import type { RiskSeverity } from '../../../../../common/search_strategy'; -import { RiskScore, RISK_SEVERITY_COLOUR } from './common'; +import { RiskScoreLevel, RISK_SEVERITY_COLOUR } from './common'; import type { SeverityCount } from './types'; export const SeverityBadges: React.FC<{ @@ -38,7 +38,7 @@ const SeverityBadge: React.FC<{ status: RiskSeverity; count: number }> = React.m ({ status, count }) => ( - + diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/severity_filter_group.tsx b/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/severity_filter_group.tsx index 10a53c7609277..02ce5e01e8873 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/severity_filter_group.tsx +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/severity/severity_filter_group.tsx @@ -19,8 +19,8 @@ import { import type { RiskScoreEntity, RiskSeverity } from '../../../../../common/search_strategy'; import { SEVERITY_UI_SORT_ORDER } from '../../../../../common/search_strategy'; import type { SeverityCount } from './types'; -import { RiskScore } from './common'; -import { ENTITY_RISK_CLASSIFICATION } from '../translations'; +import { RiskScoreLevel } from './common'; +import { ENTITY_RISK_LEVEL } from '../translations'; import { useKibana } from '../../../../common/lib/kibana'; interface SeverityItems { @@ -92,7 +92,7 @@ export const SeverityFilterGroup: React.FC<{ numActiveFilters={totalActiveItem} onClick={onButtonClick} > - {ENTITY_RISK_CLASSIFICATION(riskEntity)} + {ENTITY_RISK_LEVEL(riskEntity)} ), [isPopoverOpen, items, onButtonClick, totalActiveItem, riskEntity] @@ -118,7 +118,7 @@ export const SeverityFilterGroup: React.FC<{ key={index + item.risk} onClick={() => updateSeverityFilter(item.risk)} > - + ))} diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/top_risk_score_contributors_alerts/index.tsx b/x-pack/plugins/security_solution/public/explore/components/risk_score/top_risk_score_contributors_alerts/index.tsx index 0517df3afdd34..05132003ae095 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/top_risk_score_contributors_alerts/index.tsx +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/top_risk_score_contributors_alerts/index.tsx @@ -25,6 +25,7 @@ import { inputsSelectors } from '../../../../common/store/inputs'; import { useUserData } from '../../../../detections/components/user_info'; import { useSourcererDataView } from '../../../../common/containers/sourcerer'; import { SourcererScopeName } from '../../../../common/store/sourcerer/model'; +import { RiskInformationButtonEmpty } from '../risk_information'; export interface TopRiskScoreContributorsAlertsProps { toggleStatus: boolean; @@ -100,6 +101,7 @@ export const TopRiskScoreContributorsAlerts: React.FC} /> diff --git a/x-pack/plugins/security_solution/public/explore/components/risk_score/translations.ts b/x-pack/plugins/security_solution/public/explore/components/risk_score/translations.ts index a2a04f346de09..501de5719a63e 100644 --- a/x-pack/plugins/security_solution/public/explore/components/risk_score/translations.ts +++ b/x-pack/plugins/security_solution/public/explore/components/risk_score/translations.ts @@ -32,9 +32,9 @@ export const RISK_SCORE_TITLE = (riskEntity: RiskScoreEntity) => }, }); -export const ENTITY_RISK_CLASSIFICATION = (riskEntity: RiskScoreEntity) => - i18n.translate('xpack.securitySolution.entityAnalytics.riskDashboard.riskClassificationTitle', { - defaultMessage: '{riskEntity} risk classification', +export const ENTITY_RISK_LEVEL = (riskEntity: RiskScoreEntity) => + i18n.translate('xpack.securitySolution.entityAnalytics.riskDashboard.riskLevelTitle', { + defaultMessage: '{riskEntity} risk level', values: { riskEntity: getRiskEntityTranslation(riskEntity), }, diff --git a/x-pack/plugins/security_solution/public/explore/hosts/components/host_risk_score_table/columns.tsx b/x-pack/plugins/security_solution/public/explore/hosts/components/host_risk_score_table/columns.tsx index ae2969a0d1116..de66a5bca1110 100644 --- a/x-pack/plugins/security_solution/public/explore/hosts/components/host_risk_score_table/columns.tsx +++ b/x-pack/plugins/security_solution/public/explore/hosts/components/host_risk_score_table/columns.tsx @@ -6,7 +6,7 @@ */ import React from 'react'; -import { EuiIcon, EuiLink, EuiText, EuiToolTip } from '@elastic/eui'; +import { EuiLink, EuiText } from '@elastic/eui'; import { SecurityCellActions, CellActionsMode, @@ -19,8 +19,8 @@ import * as i18n from './translations'; import { HostsTableType } from '../../store/model'; import type { RiskSeverity } from '../../../../../common/search_strategy'; import { RiskScoreFields, RiskScoreEntity } from '../../../../../common/search_strategy'; -import { RiskScore } from '../../../components/risk_score/severity/common'; -import { ENTITY_RISK_CLASSIFICATION } from '../../../components/risk_score/translations'; +import { RiskScoreLevel } from '../../../components/risk_score/severity/common'; +import { ENTITY_RISK_LEVEL } from '../../../components/risk_score/translations'; import { CELL_ACTIONS_TELEMETRY } from '../../../components/risk_score/constants'; export const getHostRiskScoreColumns = ({ @@ -76,21 +76,14 @@ export const getHostRiskScoreColumns = ({ }, { field: RiskScoreFields.hostRisk, - name: ( - - <> - {ENTITY_RISK_CLASSIFICATION(RiskScoreEntity.host)}{' '} - - - - ), + name: ENTITY_RISK_LEVEL(RiskScoreEntity.host), truncateText: false, mobileOptions: { show: true }, sortable: true, render: (risk) => { if (risk != null) { return ( - dispatchSeverityUpdate(risk)}> {i18n.VIEW_HOSTS_BY_SEVERITY(risk.toLowerCase())} diff --git a/x-pack/plugins/security_solution/public/explore/hosts/components/host_risk_score_table/index.tsx b/x-pack/plugins/security_solution/public/explore/hosts/components/host_risk_score_table/index.tsx index f4cec6357c328..497c21e8f9dec 100644 --- a/x-pack/plugins/security_solution/public/explore/hosts/components/host_risk_score_table/index.tsx +++ b/x-pack/plugins/security_solution/public/explore/hosts/components/host_risk_score_table/index.tsx @@ -31,6 +31,7 @@ import { SeverityBar } from '../../../components/risk_score/severity/severity_ba import { SeverityFilterGroup } from '../../../components/risk_score/severity/severity_filter_group'; import type { SeverityCount } from '../../../components/risk_score/severity/types'; +import { RiskInformationButtonEmpty } from '../../../components/risk_score/risk_information'; export const rowItems: ItemsPerRow[] = [ { @@ -173,12 +174,19 @@ const HostRiskScoreTableComponent: React.FC = ({ dataTestSubj={`table-${tableType}`} headerCount={totalCount} headerFilters={ - + + + + + + + + } headerSupplement={risk} headerTitle={i18nHosts.HOST_RISK_TITLE} diff --git a/x-pack/plugins/security_solution/public/explore/hosts/components/host_risk_score_table/translations.ts b/x-pack/plugins/security_solution/public/explore/hosts/components/host_risk_score_table/translations.ts index 1b4820e622755..08c685720a2e4 100644 --- a/x-pack/plugins/security_solution/public/explore/hosts/components/host_risk_score_table/translations.ts +++ b/x-pack/plugins/security_solution/public/explore/hosts/components/host_risk_score_table/translations.ts @@ -18,17 +18,9 @@ export const HOST_RISK_SCORE = i18n.translate( ); export const HOST_RISK = i18n.translate('xpack.securitySolution.hostsRiskTable.riskTitle', { - defaultMessage: 'Host risk classification', + defaultMessage: 'Host risk level', }); -export const HOST_RISK_TOOLTIP = i18n.translate( - 'xpack.securitySolution.hostsRiskTable.hostRiskToolTip', - { - defaultMessage: - 'Host risk classification is determined by host risk score. Hosts classified as Critical or High are indicated as risky.', - } -); - export const HOST_RISK_TITLE = i18n.translate( 'xpack.securitySolution.hostsRiskTable.hostRiskTitle', { diff --git a/x-pack/plugins/security_solution/public/explore/hosts/components/hosts_table/columns.tsx b/x-pack/plugins/security_solution/public/explore/hosts/components/hosts_table/columns.tsx index 3848b6dafe6ba..292e106fa5d4d 100644 --- a/x-pack/plugins/security_solution/public/explore/hosts/components/hosts_table/columns.tsx +++ b/x-pack/plugins/security_solution/public/explore/hosts/components/hosts_table/columns.tsx @@ -20,8 +20,8 @@ import * as i18n from './translations'; import type { Maybe, RiskSeverity } from '../../../../../common/search_strategy'; import { RiskScoreEntity } from '../../../../../common/search_strategy'; import { VIEW_HOSTS_BY_SEVERITY } from '../host_risk_score_table/translations'; -import { RiskScore } from '../../../components/risk_score/severity/common'; -import { ENTITY_RISK_CLASSIFICATION } from '../../../components/risk_score/translations'; +import { RiskScoreLevel } from '../../../components/risk_score/severity/common'; +import { ENTITY_RISK_LEVEL } from '../../../components/risk_score/translations'; export const getHostsColumns = ( showRiskColumn: boolean, @@ -141,21 +141,14 @@ export const getHostsColumns = ( if (showRiskColumn) { columns.push({ field: 'node.risk', - name: ( - - <> - {ENTITY_RISK_CLASSIFICATION(RiskScoreEntity.host)}{' '} - - - - ), + name: ENTITY_RISK_LEVEL(RiskScoreEntity.host), truncateText: false, mobileOptions: { show: true }, sortable: false, render: (riskScore: RiskSeverity) => { if (riskScore != null) { return ( - dispatchSeverityUpdate(riskScore)}> {VIEW_HOSTS_BY_SEVERITY(riskScore.toLowerCase())} diff --git a/x-pack/plugins/security_solution/public/explore/hosts/components/hosts_table/index.test.tsx b/x-pack/plugins/security_solution/public/explore/hosts/components/hosts_table/index.test.tsx index 9bca791409a48..498efb3fdd62b 100644 --- a/x-pack/plugins/security_solution/public/explore/hosts/components/hosts_table/index.test.tsx +++ b/x-pack/plugins/security_solution/public/explore/hosts/components/hosts_table/index.test.tsx @@ -89,7 +89,7 @@ describe('Hosts Table', () => { expect(wrapper.find('HostsTable')).toMatchSnapshot(); }); - test('it renders "Host Risk classification" column when "isPlatinumOrTrialLicense" is truthy and user has risk-entity capability', () => { + test('it renders "Host Risk level" column when "isPlatinumOrTrialLicense" is truthy and user has risk-entity capability', () => { mockUseMlCapabilities.mockReturnValue({ isPlatinumOrTrialLicense: true }); mockUseHasSecurityCapability.mockReturnValue(true); @@ -113,7 +113,7 @@ describe('Hosts Table', () => { expect(queryByTestId('tableHeaderCell_node.risk_4')).toBeInTheDocument(); }); - test("it doesn't renders 'Host Risk classification' column when 'isPlatinumOrTrialLicense' is falsy", () => { + test("it doesn't renders 'Host Risk level' column when 'isPlatinumOrTrialLicense' is falsy", () => { mockUseMlCapabilities.mockReturnValue({ isPlatinumOrTrialLicense: false }); mockUseHasSecurityCapability.mockReturnValue(true); @@ -137,7 +137,7 @@ describe('Hosts Table', () => { expect(queryByTestId('tableHeaderCell_node.riskScore_4')).not.toBeInTheDocument(); }); - test("it doesn't renders 'Host Risk classification' column when user doesn't has entity-analytics capabilities", () => { + test("it doesn't renders 'Host Risk level' column when user doesn't has entity-analytics capabilities", () => { mockUseMlCapabilities.mockReturnValue({ isPlatinumOrTrialLicense: true }); mockUseHasSecurityCapability.mockReturnValue(false); diff --git a/x-pack/plugins/security_solution/public/explore/hosts/components/hosts_table/translations.ts b/x-pack/plugins/security_solution/public/explore/hosts/components/hosts_table/translations.ts index bf4002cd5568c..1f81968213b45 100644 --- a/x-pack/plugins/security_solution/public/explore/hosts/components/hosts_table/translations.ts +++ b/x-pack/plugins/security_solution/public/explore/hosts/components/hosts_table/translations.ts @@ -36,14 +36,6 @@ export const FIRST_LAST_SEEN_TOOLTIP = i18n.translate( } ); -export const HOST_RISK_TOOLTIP = i18n.translate( - 'xpack.securitySolution.hostsTable.hostRiskToolTip', - { - defaultMessage: - "The host's risk score determines its risk classification. Risky hosts are labeled as critical or high.", - } -); - export const OS_LAST_SEEN_TOOLTIP = i18n.translate( 'xpack.securitySolution.hostsTable.osLastSeenToolTip', { diff --git a/x-pack/plugins/security_solution/public/explore/hosts/components/kpi_hosts/risky_hosts/index.test.tsx b/x-pack/plugins/security_solution/public/explore/hosts/components/kpi_hosts/risky_hosts/index.test.tsx deleted file mode 100644 index b96c63e85b12b..0000000000000 --- a/x-pack/plugins/security_solution/public/explore/hosts/components/kpi_hosts/risky_hosts/index.test.tsx +++ /dev/null @@ -1,75 +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 - * 2.0; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -import React from 'react'; - -import { render } from '@testing-library/react'; - -import { RiskyHosts } from '.'; -import { TestProviders } from '../../../../../common/mock'; -import type { KpiRiskScoreStrategyResponse } from '../../../../../../common/search_strategy'; - -describe('RiskyHosts', () => { - const defaultProps = { - error: undefined, - loading: false, - }; - - test('it renders', () => { - const { queryByText } = render( - - - - ); - - expect(queryByText('Risky Hosts')).toBeInTheDocument(); - }); - - test('it displays loader while API is loading', () => { - const { getByTestId } = render( - - - - ); - - expect(getByTestId('KpiLoader')).toBeInTheDocument(); - }); - - test('it displays 0 risky hosts when initializing', () => { - const { getByTestId } = render( - - - - ); - - expect(getByTestId('riskyHostsTotal').textContent).toEqual('0 Risky Hosts'); - expect(getByTestId('riskyHostsCriticalQuantity').textContent).toEqual('0 hosts'); - expect(getByTestId('riskyHostsHighQuantity').textContent).toEqual('0 hosts'); - }); - - test('it displays risky hosts quantity returned by the API', () => { - const data: KpiRiskScoreStrategyResponse = { - rawResponse: {} as KpiRiskScoreStrategyResponse['rawResponse'], - kpiRiskScore: { - Critical: 1, - High: 1, - Unknown: 0, - Low: 0, - Moderate: 0, - }, - }; - const { getByTestId } = render( - - - - ); - - expect(getByTestId('riskyHostsTotal').textContent).toEqual('2 Risky Hosts'); - expect(getByTestId('riskyHostsCriticalQuantity').textContent).toEqual('1 host'); - expect(getByTestId('riskyHostsHighQuantity').textContent).toEqual('1 host'); - }); -}); diff --git a/x-pack/plugins/security_solution/public/explore/hosts/components/kpi_hosts/risky_hosts/index.tsx b/x-pack/plugins/security_solution/public/explore/hosts/components/kpi_hosts/risky_hosts/index.tsx deleted file mode 100644 index 0863212e44eca..0000000000000 --- a/x-pack/plugins/security_solution/public/explore/hosts/components/kpi_hosts/risky_hosts/index.tsx +++ /dev/null @@ -1,153 +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 - * 2.0; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -import { - EuiFlexGroup, - EuiFlexItem, - EuiHorizontalRule, - EuiIcon, - EuiPanel, - EuiLoadingSpinner, - EuiTitle, - EuiText, -} from '@elastic/eui'; -import React from 'react'; -import styled from 'styled-components'; -import { euiLightVars } from '@kbn/ui-theme'; -import { - RiskInformationButtonIcon, - HOST_RISK_INFO_BUTTON_CLASS, -} from '../../../../components/risk_score/risk_information'; -import { - InspectButton, - BUTTON_CLASS as INPECT_BUTTON_CLASS, -} from '../../../../../common/components/inspect'; - -import * as i18n from './translations'; - -import { useInspectQuery } from '../../../../../common/hooks/use_inspect_query'; -import { useErrorToast } from '../../../../../common/hooks/use_error_toast'; - -import { HoverVisibilityContainer } from '../../../../../common/components/hover_visibility_container'; -import type { KpiRiskScoreStrategyResponse } from '../../../../../../common/search_strategy'; -import { RiskScoreEntity, RiskSeverity } from '../../../../../../common/search_strategy'; -import { RiskScore } from '../../../../components/risk_score/severity/common'; - -const KpiBaseComponentLoader: React.FC = () => ( - - - - - -); -const QUERY_ID = 'hostsKpiRiskyHostsQuery'; - -const HostCount = styled(EuiText)` - font-weight: bold; -`; -HostCount.displayName = 'HostCount'; - -const StatusTitle = styled(EuiTitle)` - text-transform: lowercase; -`; - -const RiskScoreContainer = styled(EuiFlexItem)` - min-width: 80px; -`; - -/** - * FUTURE ENGINEER: This is a host risk card for the host page. - * Due to not being able to apply KQL, - * we decided not to go forward with this for 8.1 - * saving the code for future implementation - */ -const RiskyHostsComponent: React.FC<{ - error: unknown; - loading: boolean; - data?: KpiRiskScoreStrategyResponse; -}> = ({ error, loading, data }) => { - useInspectQuery(QUERY_ID, loading, data); - useErrorToast(i18n.ERROR_TITLE, error); - - if (loading) { - return ; - } - - const criticalRiskCount = data?.kpiRiskScore.Critical ?? 0; - const hightlRiskCount = data?.kpiRiskScore.High ?? 0; - - const totalCount = criticalRiskCount + hightlRiskCount; - - return ( - - - - - -
{i18n.RISKY_HOSTS_TITLE}
-
-
- - - - - - {data?.inspect && ( - - - - )} - - -
- - - - - - - - -

{i18n.RISKY_HOSTS_DESCRIPTION(totalCount, totalCount.toLocaleString())}

-
-
-
-
-
- - - - - - - - - - {i18n.HOSTS_COUNT(criticalRiskCount)} - - - - - - - - - - - - {i18n.HOSTS_COUNT(hightlRiskCount)} - - - - - -
-
- ); -}; - -export const RiskyHosts = React.memo(RiskyHostsComponent); diff --git a/x-pack/plugins/security_solution/public/explore/hosts/components/kpi_hosts/risky_hosts/translations.ts b/x-pack/plugins/security_solution/public/explore/hosts/components/kpi_hosts/risky_hosts/translations.ts deleted file mode 100644 index ef289a0aa6aab..0000000000000 --- a/x-pack/plugins/security_solution/public/explore/hosts/components/kpi_hosts/risky_hosts/translations.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 - * 2.0; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -import { i18n } from '@kbn/i18n'; - -export const HOSTS_COUNT = (quantity: number) => - i18n.translate('xpack.securitySolution.kpiHosts.riskyHosts.hostsCount', { - defaultMessage: '{quantity} {quantity, plural, =1 {host} other {hosts}}', - values: { - quantity, - }, - }); - -export const RISKY_HOSTS_DESCRIPTION = (quantity: number, formattedQuantity: string) => - i18n.translate('xpack.securitySolution.kpiHosts.riskyHosts.description', { - defaultMessage: '{formattedQuantity} Risky {quantity, plural, =1 {Host} other {Hosts}}', - values: { - formattedQuantity, - quantity, - }, - }); - -export const RISKY_HOSTS_TITLE = i18n.translate( - 'xpack.securitySolution.kpiHosts.riskyHosts.title', - { - defaultMessage: 'Risky Hosts', - } -); - -export const INSPECT_RISKY_HOSTS = i18n.translate( - 'xpack.securitySolution.kpiHosts.riskyHosts.inspectTitle', - { - defaultMessage: 'Risky Hosts', - } -); - -export const ERROR_TITLE = i18n.translate( - 'xpack.securitySolution.kpiHosts.riskyHosts.errorMessage', - { - defaultMessage: 'Error Fetching Risky Hosts API', - } -); diff --git a/x-pack/plugins/security_solution/public/explore/hosts/pages/translations.ts b/x-pack/plugins/security_solution/public/explore/hosts/pages/translations.ts index 7fe50385d9034..5f064f06faef1 100644 --- a/x-pack/plugins/security_solution/public/explore/hosts/pages/translations.ts +++ b/x-pack/plugins/security_solution/public/explore/hosts/pages/translations.ts @@ -66,10 +66,3 @@ export const ERROR_FETCHING_EVENTS_DATA = i18n.translate( defaultMessage: 'Failed to query events data', } ); - -export const VIEW_DASHBOARD_BUTTON = i18n.translate( - 'xpack.securitySolution.hosts.navigaton.hostRisk.viewDashboardButtonLabel', - { - defaultMessage: 'View source dashboard', - } -); diff --git a/x-pack/plugins/security_solution/public/explore/users/components/all_users/index.tsx b/x-pack/plugins/security_solution/public/explore/users/components/all_users/index.tsx index 29ab7551341a9..7cf90c41fd7c3 100644 --- a/x-pack/plugins/security_solution/public/explore/users/components/all_users/index.tsx +++ b/x-pack/plugins/security_solution/public/explore/users/components/all_users/index.tsx @@ -8,7 +8,7 @@ import React, { useCallback, useMemo } from 'react'; import { useDispatch } from 'react-redux'; -import { EuiIcon, EuiLink, EuiText, EuiToolTip } from '@elastic/eui'; +import { EuiLink, EuiText } from '@elastic/eui'; import { FormattedRelativePreferenceDate } from '../../../../common/components/formatted_date'; import { UserDetailsLink } from '../../../../common/components/links'; import { @@ -27,7 +27,7 @@ import { usersActions, usersModel, usersSelectors } from '../../store'; import type { User } from '../../../../../common/search_strategy/security_solution/users/all'; import type { SortUsersField } from '../../../../../common/search_strategy/security_solution/users/common'; import type { RiskSeverity } from '../../../../../common/search_strategy'; -import { RiskScore } from '../../../components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../components/risk_score/severity/common'; import { useMlCapabilities } from '../../../../common/components/ml/hooks/use_ml_capabilities'; import { VIEW_USERS_BY_SEVERITY } from '../user_risk_score_table/translations'; import { SecurityPageName } from '../../../../app/types'; @@ -116,20 +116,14 @@ const getUsersColumns = ( if (showRiskColumn) { columns.push({ field: 'risk', - name: ( - - <> - {i18n.USER_RISK} - - - ), + name: i18n.USER_RISK, truncateText: false, mobileOptions: { show: true }, sortable: false, render: (riskScore: RiskSeverity) => { if (riskScore != null) { return ( - dispatchSeverityUpdate(riskScore)}> {VIEW_USERS_BY_SEVERITY(riskScore.toLowerCase())} diff --git a/x-pack/plugins/security_solution/public/explore/users/components/all_users/translations.ts b/x-pack/plugins/security_solution/public/explore/users/components/all_users/translations.ts index 17319a82e74f1..e1e3f43c6af32 100644 --- a/x-pack/plugins/security_solution/public/explore/users/components/all_users/translations.ts +++ b/x-pack/plugins/security_solution/public/explore/users/components/all_users/translations.ts @@ -39,14 +39,6 @@ export const UNIT = (totalCount: number) => defaultMessage: `{totalCount, plural, =1 {user} other {users}}`, }); -export const USER_RISK_TOOLTIP = i18n.translate( - 'xpack.securitySolution.usersTable.userRiskToolTip', - { - defaultMessage: - "The user's risk score determines its risk classification. Risky users are labeled as critical or high.", - } -); - export const USER_RISK = i18n.translate('xpack.securitySolution.usersTable.riskTitle', { - defaultMessage: 'User risk classification', + defaultMessage: 'User risk level', }); diff --git a/x-pack/plugins/security_solution/public/explore/users/components/user_risk_score_table/columns.tsx b/x-pack/plugins/security_solution/public/explore/users/components/user_risk_score_table/columns.tsx index a41f97f4e81d1..6de43c4dbe2fc 100644 --- a/x-pack/plugins/security_solution/public/explore/users/components/user_risk_score_table/columns.tsx +++ b/x-pack/plugins/security_solution/public/explore/users/components/user_risk_score_table/columns.tsx @@ -6,7 +6,7 @@ */ import React from 'react'; -import { EuiIcon, EuiLink, EuiText, EuiToolTip } from '@elastic/eui'; +import { EuiLink, EuiText } from '@elastic/eui'; import { SecurityCellActions, SecurityCellActionsTrigger, @@ -16,12 +16,12 @@ import { escapeDataProviderId } from '../../../../common/components/drag_and_dro import { getEmptyTagValue } from '../../../../common/components/empty_value'; import type { UserRiskScoreColumns } from '.'; import * as i18n from './translations'; -import { RiskScore } from '../../../components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../components/risk_score/severity/common'; import type { RiskSeverity } from '../../../../../common/search_strategy'; import { RiskScoreEntity, RiskScoreFields } from '../../../../../common/search_strategy'; import { UserDetailsLink } from '../../../../common/components/links'; import { UsersTableType } from '../../store/model'; -import { ENTITY_RISK_CLASSIFICATION } from '../../../components/risk_score/translations'; +import { ENTITY_RISK_LEVEL } from '../../../components/risk_score/translations'; import { CELL_ACTIONS_TELEMETRY } from '../../../components/risk_score/constants'; export const getUserRiskScoreColumns = ({ @@ -79,21 +79,14 @@ export const getUserRiskScoreColumns = ({ }, { field: RiskScoreFields.userRisk, - name: ( - - <> - {ENTITY_RISK_CLASSIFICATION(RiskScoreEntity.user)}{' '} - - - - ), + name: ENTITY_RISK_LEVEL(RiskScoreEntity.user), truncateText: false, mobileOptions: { show: true }, sortable: true, render: (risk) => { if (risk != null) { return ( - dispatchSeverityUpdate(risk)}> {i18n.VIEW_USERS_BY_SEVERITY(risk.toLowerCase())} diff --git a/x-pack/plugins/security_solution/public/explore/users/components/user_risk_score_table/index.tsx b/x-pack/plugins/security_solution/public/explore/users/components/user_risk_score_table/index.tsx index 378705bd6932e..5dc1c3c6bd08e 100644 --- a/x-pack/plugins/security_solution/public/explore/users/components/user_risk_score_table/index.tsx +++ b/x-pack/plugins/security_solution/public/explore/users/components/user_risk_score_table/index.tsx @@ -31,6 +31,7 @@ import type { UserRiskScore, } from '../../../../../common/search_strategy'; import { RiskScoreEntity } from '../../../../../common/search_strategy'; +import { RiskInformationButtonEmpty } from '../../../components/risk_score/risk_information'; export const rowItems: ItemsPerRow[] = [ { @@ -174,12 +175,19 @@ const UserRiskScoreTableComponent: React.FC = ({ dataTestSubj={`table-${tableType}`} headerCount={totalCount} headerFilters={ - + + + + + + + + } headerSupplement={risk} headerTitle={i18nUsers.NAVIGATION_RISK_TITLE} diff --git a/x-pack/plugins/security_solution/public/explore/users/components/user_risk_score_table/translations.ts b/x-pack/plugins/security_solution/public/explore/users/components/user_risk_score_table/translations.ts index c1f5f2f9da7e8..d0cf95dea6c23 100644 --- a/x-pack/plugins/security_solution/public/explore/users/components/user_risk_score_table/translations.ts +++ b/x-pack/plugins/security_solution/public/explore/users/components/user_risk_score_table/translations.ts @@ -17,14 +17,6 @@ export const USER_RISK_SCORE = i18n.translate( } ); -export const USER_RISK_TOOLTIP = i18n.translate( - 'xpack.securitySolution.usersRiskTable.userRiskToolTip', - { - defaultMessage: - 'User risk classification is determined by user risk score. Users classified as Critical or High are indicated as risky.', - } -); - export const VIEW_USERS_BY_SEVERITY = (severity: string) => i18n.translate('xpack.securitySolution.usersRiskTable.filteredUsersTitle', { values: { severity }, diff --git a/x-pack/plugins/security_solution/public/explore/users/pages/translations.ts b/x-pack/plugins/security_solution/public/explore/users/pages/translations.ts index 6668564c6cef1..256f48bc5d15e 100644 --- a/x-pack/plugins/security_solution/public/explore/users/pages/translations.ts +++ b/x-pack/plugins/security_solution/public/explore/users/pages/translations.ts @@ -52,10 +52,3 @@ export const USER_RISK_SCORE_OVER_TIME = i18n.translate( defaultMessage: 'User risk score over time', } ); - -export const VIEW_DASHBOARD_BUTTON = i18n.translate( - 'xpack.securitySolution.hosts.navigaton.hostRisk.viewDashboardButtonLabel', - { - defaultMessage: 'View source dashboard', - } -); diff --git a/x-pack/plugins/security_solution/public/flyout/left/components/host_details.tsx b/x-pack/plugins/security_solution/public/flyout/left/components/host_details.tsx index 44a1a23abf774..3e103d1cbb8b1 100644 --- a/x-pack/plugins/security_solution/public/flyout/left/components/host_details.tsx +++ b/x-pack/plugins/security_solution/public/flyout/left/components/host_details.tsx @@ -30,7 +30,7 @@ import { AnomalyTableProvider } from '../../../common/components/ml/anomaly/anom import { InspectButton, InspectButtonContainer } from '../../../common/components/inspect'; import { NetworkDetailsLink } from '../../../common/components/links'; import { RiskScoreEntity } from '../../../../common/search_strategy'; -import { RiskScore } from '../../../explore/components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../explore/components/risk_score/severity/common'; import { DefaultFieldRenderer } from '../../../timelines/components/field_renderers/field_renderers'; import { InputsModelId } from '../../../common/store/inputs/constants'; import { @@ -49,8 +49,7 @@ import { useHostRelatedUsers } from '../../../common/containers/related_entities import { useMlCapabilities } from '../../../common/components/ml/hooks/use_ml_capabilities'; import { getEmptyTagValue } from '../../../common/components/empty_value'; import { HOST_DETAILS_TEST_ID, HOST_DETAILS_RELATED_USERS_TABLE_TEST_ID } from './test_ids'; -import { ENTITY_RISK_CLASSIFICATION } from '../../../explore/components/risk_score/translations'; -import { USER_RISK_TOOLTIP } from '../../../explore/users/components/all_users/translations'; +import { ENTITY_RISK_LEVEL } from '../../../explore/components/risk_score/translations'; import { useHasSecurityCapability } from '../../../helper_hooks'; const HOST_DETAILS_ID = 'entities-hosts-details'; @@ -177,20 +176,13 @@ export const HostDetails: React.FC = ({ hostName, timestamp, s ? [ { field: 'risk', - name: ( - - <> - {ENTITY_RISK_CLASSIFICATION(RiskScoreEntity.user)}{' '} - - - - ), + name: ENTITY_RISK_LEVEL(RiskScoreEntity.user), truncateText: false, mobileOptions: { show: true }, sortable: false, render: (riskScore: RiskSeverity) => { if (riskScore != null) { - return ; + return ; } return getEmptyTagValue(); }, diff --git a/x-pack/plugins/security_solution/public/flyout/left/components/user_details.tsx b/x-pack/plugins/security_solution/public/flyout/left/components/user_details.tsx index 8d395f4a1d3dd..2e4f60baf9a64 100644 --- a/x-pack/plugins/security_solution/public/flyout/left/components/user_details.tsx +++ b/x-pack/plugins/security_solution/public/flyout/left/components/user_details.tsx @@ -30,7 +30,7 @@ import { AnomalyTableProvider } from '../../../common/components/ml/anomaly/anom import { InspectButton, InspectButtonContainer } from '../../../common/components/inspect'; import { NetworkDetailsLink } from '../../../common/components/links'; import { RiskScoreEntity } from '../../../../common/search_strategy'; -import { RiskScore } from '../../../explore/components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../explore/components/risk_score/severity/common'; import { DefaultFieldRenderer } from '../../../timelines/components/field_renderers/field_renderers'; import { SecurityCellActions, @@ -49,8 +49,7 @@ import { useUserRelatedHosts } from '../../../common/containers/related_entities import { useMlCapabilities } from '../../../common/components/ml/hooks/use_ml_capabilities'; import { getEmptyTagValue } from '../../../common/components/empty_value'; import { USER_DETAILS_RELATED_HOSTS_TABLE_TEST_ID, USER_DETAILS_TEST_ID } from './test_ids'; -import { ENTITY_RISK_CLASSIFICATION } from '../../../explore/components/risk_score/translations'; -import { HOST_RISK_TOOLTIP } from '../../../explore/hosts/components/hosts_table/translations'; +import { ENTITY_RISK_LEVEL } from '../../../explore/components/risk_score/translations'; import { useHasSecurityCapability } from '../../../helper_hooks'; const USER_DETAILS_ID = 'entities-users-details'; @@ -178,20 +177,13 @@ export const UserDetails: React.FC = ({ userName, timestamp, s ? [ { field: 'risk', - name: ( - - <> - {ENTITY_RISK_CLASSIFICATION(RiskScoreEntity.host)}{' '} - - - - ), + name: ENTITY_RISK_LEVEL(RiskScoreEntity.host), truncateText: false, mobileOptions: { show: true }, sortable: false, render: (riskScore: RiskSeverity) => { if (riskScore != null) { - return ; + return ; } return getEmptyTagValue(); }, diff --git a/x-pack/plugins/security_solution/public/flyout/right/components/host_entity_overview.test.tsx b/x-pack/plugins/security_solution/public/flyout/right/components/host_entity_overview.test.tsx index c5a9f7d7d324a..c690e8a700119 100644 --- a/x-pack/plugins/security_solution/public/flyout/right/components/host_entity_overview.test.tsx +++ b/x-pack/plugins/security_solution/public/flyout/right/components/host_entity_overview.test.tsx @@ -80,7 +80,7 @@ const renderHostEntityContent = () => describe('', () => { describe('license is valid', () => { - it('should render os family and host risk classification', () => { + it('should render os family and host risk level', () => { mockUseHostDetails.mockReturnValue([false, { hostDetails: hostData }]); mockUseRiskScore.mockReturnValue({ data: riskLevel, isAuthorized: true }); diff --git a/x-pack/plugins/security_solution/public/flyout/right/components/host_entity_overview.tsx b/x-pack/plugins/security_solution/public/flyout/right/components/host_entity_overview.tsx index 36f1bec0a8f5b..30ccab532234e 100644 --- a/x-pack/plugins/security_solution/public/flyout/right/components/host_entity_overview.tsx +++ b/x-pack/plugins/security_solution/public/flyout/right/components/host_entity_overview.tsx @@ -13,14 +13,12 @@ import { EuiIcon, useEuiTheme, useEuiFontSize, - EuiIconTip, EuiSkeletonText, } from '@elastic/eui'; import { css } from '@emotion/css'; import { getOr } from 'lodash/fp'; import { i18n } from '@kbn/i18n'; import { useExpandableFlyoutContext } from '@kbn/expandable-flyout'; -import { FormattedMessage } from '@kbn/i18n-react'; import { useRightPanelContext } from '../context'; import type { DescriptionList } from '../../../../common/utility_types'; import { @@ -32,7 +30,7 @@ import { getEmptyTagValue } from '../../../common/components/empty_value'; import { DefaultFieldRenderer } from '../../../timelines/components/field_renderers/field_renderers'; import { DescriptionListStyled } from '../../../common/components/page'; import { OverviewDescriptionList } from '../../../common/components/overview_description_list'; -import { RiskScore } from '../../../explore/components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../explore/components/risk_score/severity/common'; import { useSourcererDataView } from '../../../common/containers/sourcerer'; import { useGlobalTime } from '../../../common/containers/use_global_time'; import { useRiskScore } from '../../../explore/containers/risk_score'; @@ -40,7 +38,7 @@ import { useHostDetails } from '../../../explore/hosts/containers/hosts/details' import { FAMILY, LAST_SEEN, - HOST_RISK_CLASSIFICATION, + HOST_RISK_LEVEL, } from '../../../overview/components/host_overview/translations'; import { ENTITIES_TAB_ID } from '../../left/components/entities_details'; import { @@ -50,22 +48,22 @@ import { ENTITIES_HOST_OVERVIEW_RISK_LEVEL_TEST_ID, ENTITIES_HOST_OVERVIEW_LINK_TEST_ID, ENTITIES_HOST_OVERVIEW_LOADING_TEST_ID, - TECHNICAL_PREVIEW_ICON_TEST_ID, } from './test_ids'; import { LeftPanelInsightsTab, LeftPanelKey } from '../../left'; +import { RiskScoreDocTooltip } from '../../../overview/components/common'; const HOST_ICON = 'storage'; const CONTEXT_ID = `flyout-host-entity-overview`; export interface HostEntityOverviewProps { /** - * Host name for looking up host related ip addresses and risk classification + * Host name for looking up host related ip addresses and risk level */ hostName: string; } /** - * Host preview content for the entities preview in right flyout. It contains ip addresses and risk classification + * Host preview content for the entities preview in right flyout. It contains ip addresses and risk level */ export const HostEntityOverview: React.FC = ({ hostName }) => { const { eventId, indexName, scopeId } = useRightPanelContext(); @@ -158,35 +156,17 @@ export const HostEntityOverview: React.FC = ({ hostName return [ { title: ( - <> - {HOST_RISK_CLASSIFICATION} - - } - size="m" - type="iInCircle" - content={ - - } - position="bottom" - iconProps={{ - className: 'eui-alignTop', - }} - data-test-subj={TECHNICAL_PREVIEW_ICON_TEST_ID} - /> - + + {HOST_RISK_LEVEL} + + + + ), description: ( <> {hostRiskData ? ( - + ) : ( getEmptyTagValue() )} diff --git a/x-pack/plugins/security_solution/public/flyout/right/components/user_entity_overview.test.tsx b/x-pack/plugins/security_solution/public/flyout/right/components/user_entity_overview.test.tsx index 24e64d7292bb7..798e7136253bb 100644 --- a/x-pack/plugins/security_solution/public/flyout/right/components/user_entity_overview.test.tsx +++ b/x-pack/plugins/security_solution/public/flyout/right/components/user_entity_overview.test.tsx @@ -78,7 +78,7 @@ const renderUserEntityOverview = () => describe('', () => { describe('license is valid', () => { - it('should render user domain and user risk classification', () => { + it('should render user domain and user risk level', () => { mockUseUserDetails.mockReturnValue([false, { userDetails: userData }]); mockUseRiskScore.mockReturnValue({ data: riskLevel, isAuthorized: true }); diff --git a/x-pack/plugins/security_solution/public/flyout/right/components/user_entity_overview.tsx b/x-pack/plugins/security_solution/public/flyout/right/components/user_entity_overview.tsx index e905607bfa740..9f28753a5c1cc 100644 --- a/x-pack/plugins/security_solution/public/flyout/right/components/user_entity_overview.tsx +++ b/x-pack/plugins/security_solution/public/flyout/right/components/user_entity_overview.tsx @@ -13,14 +13,12 @@ import { EuiLink, useEuiTheme, useEuiFontSize, - EuiIconTip, EuiSkeletonText, } from '@elastic/eui'; import { css } from '@emotion/css'; import { getOr } from 'lodash/fp'; import { i18n } from '@kbn/i18n'; import { useExpandableFlyoutContext } from '@kbn/expandable-flyout'; -import { FormattedMessage } from '@kbn/i18n-react'; import { LeftPanelInsightsTab, LeftPanelKey } from '../../left'; import { ENTITIES_TAB_ID } from '../../left/components/entities_details'; import { useRightPanelContext } from '../context'; @@ -34,14 +32,14 @@ import { getEmptyTagValue } from '../../../common/components/empty_value'; import { DefaultFieldRenderer } from '../../../timelines/components/field_renderers/field_renderers'; import { DescriptionListStyled } from '../../../common/components/page'; import { OverviewDescriptionList } from '../../../common/components/overview_description_list'; -import { RiskScore } from '../../../explore/components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../explore/components/risk_score/severity/common'; import { useSourcererDataView } from '../../../common/containers/sourcerer'; import { useGlobalTime } from '../../../common/containers/use_global_time'; import { useRiskScore } from '../../../explore/containers/risk_score'; import { USER_DOMAIN, LAST_SEEN, - USER_RISK_CLASSIFICATION, + USER_RISK_LEVEL, } from '../../../overview/components/user_overview/translations'; import { ENTITIES_USER_OVERVIEW_TEST_ID, @@ -49,23 +47,23 @@ import { ENTITIES_USER_OVERVIEW_LAST_SEEN_TEST_ID, ENTITIES_USER_OVERVIEW_RISK_LEVEL_TEST_ID, ENTITIES_USER_OVERVIEW_LINK_TEST_ID, - TECHNICAL_PREVIEW_ICON_TEST_ID, ENTITIES_USER_OVERVIEW_LOADING_TEST_ID, } from './test_ids'; import { useObservedUserDetails } from '../../../explore/users/containers/users/observed_details'; +import { RiskScoreDocTooltip } from '../../../overview/components/common'; const USER_ICON = 'user'; const CONTEXT_ID = `flyout-user-entity-overview`; export interface UserEntityOverviewProps { /** - * User name for looking up user related ip addresses and risk classification + * User name for looking up user related ip addresses and risk level */ userName: string; } /** - * User preview content for the entities preview in right flyout. It contains ip addresses and risk classification + * User preview content for the entities preview in right flyout. It contains ip addresses and risk level */ export const UserEntityOverview: React.FC = ({ userName }) => { const { eventId, indexName, scopeId } = useRightPanelContext(); @@ -157,35 +155,17 @@ export const UserEntityOverview: React.FC = ({ userName return [ { title: ( - <> - {USER_RISK_CLASSIFICATION} - - } - size="m" - type="iInCircle" - content={ - - } - position="bottom" - iconProps={{ - className: 'eui-alignTop', - }} - data-test-subj={TECHNICAL_PREVIEW_ICON_TEST_ID} - /> - + + {USER_RISK_LEVEL} + + + + ), description: ( <> {userRiskData ? ( - + ) : ( getEmptyTagValue() )} @@ -252,5 +232,3 @@ export const UserEntityOverview: React.FC = ({ userName ); }; - -UserEntityOverview.displayName = 'UserEntityOverview'; diff --git a/x-pack/plugins/security_solution/public/overview/components/common.tsx b/x-pack/plugins/security_solution/public/overview/components/common.tsx new file mode 100644 index 0000000000000..7ffcc7e5a95e3 --- /dev/null +++ b/x-pack/plugins/security_solution/public/overview/components/common.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 + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import { EuiButtonIcon, EuiPopover, EuiPopoverTitle, EuiText } from '@elastic/eui'; +import React, { useCallback, useState } from 'react'; +import * as i18n from './translations'; +import { RiskScoreDocLink } from '../../explore/components/risk_score/risk_score_onboarding/risk_score_doc_link'; +import type { RiskScoreEntity } from '../../../common/risk_engine'; + +export const RiskScoreInfoTooltip: React.FC<{ + toolTipContent: React.ReactNode; + toolTipTitle?: React.ReactNode; + width?: number; +}> = ({ toolTipContent, toolTipTitle, width = 270 }) => { + const [isPopoverOpen, setIsPopoverOpen] = useState(false); + + const onClick = useCallback(() => { + setIsPopoverOpen(!isPopoverOpen); + }, [isPopoverOpen, setIsPopoverOpen]); + + const closePopover = useCallback(() => { + setIsPopoverOpen(false); + }, [setIsPopoverOpen]); + + return ( + + } + > + {toolTipTitle && {toolTipTitle}} + + {toolTipContent} + + + ); +}; + +export const RiskScoreDocTooltip = ({ riskScoreEntity }: { riskScoreEntity: RiskScoreEntity }) => ( + } + width={200} // Magic number to match the width of the doc link + /> +); diff --git a/x-pack/plugins/security_solution/public/overview/components/entity_analytics/common/translations.ts b/x-pack/plugins/security_solution/public/overview/components/entity_analytics/common/translations.ts index c790dcfabf713..a1d35310b6bfe 100644 --- a/x-pack/plugins/security_solution/public/overview/components/entity_analytics/common/translations.ts +++ b/x-pack/plugins/security_solution/public/overview/components/entity_analytics/common/translations.ts @@ -40,10 +40,3 @@ export const USER_RISK_TABLE_TOOLTIP = i18n.translate( 'The user risk table is not affected by the time range. This table shows the latest recorded risk score for each user.', } ); - -export const RISK_TABLE_TOOLTIP_TITLE = i18n.translate( - 'xpack.securitySolution.entityAnalytics.riskDashboard.tableTooltipTitle', - { - defaultMessage: 'In Technical Preview', - } -); diff --git a/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/columns.tsx b/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/columns.tsx index 68494c2f461ea..cdebe0042d777 100644 --- a/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/columns.tsx +++ b/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/columns.tsx @@ -7,13 +7,13 @@ import React from 'react'; import type { EuiBasicTableColumn } from '@elastic/eui'; -import { EuiLink, EuiIcon, EuiToolTip } from '@elastic/eui'; +import { EuiLink } from '@elastic/eui'; import styled from 'styled-components'; import { UsersTableType } from '../../../../explore/users/store/model'; import { getEmptyTagValue } from '../../../../common/components/empty_value'; import { HostDetailsLink, UserDetailsLink } from '../../../../common/components/links'; import { HostsTableType } from '../../../../explore/hosts/store/model'; -import { RiskScore } from '../../../../explore/components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../../explore/components/risk_score/severity/common'; import { CELL_ACTIONS_TELEMETRY } from '../../../../explore/components/risk_score/constants'; import type { HostRiskScore, @@ -115,19 +115,12 @@ export const getRiskScoreColumns = ( field: riskEntity === RiskScoreEntity.host ? RiskScoreFields.hostRisk : RiskScoreFields.userRisk, width: '30%', - name: ( - - <> - {i18n.ENTITY_RISK_CLASSIFICATION(riskEntity)} - - - - ), + name: i18n.ENTITY_RISK_LEVEL(riskEntity), truncateText: false, mobileOptions: { show: true }, render: (risk: RiskSeverity) => { if (risk != null) { - return ; + return ; } return getEmptyTagValue(); }, diff --git a/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/header_content.test.tsx b/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/header_content.test.tsx index 262bf4792288f..d6e7c39b4fada 100644 --- a/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/header_content.test.tsx +++ b/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/header_content.test.tsx @@ -32,7 +32,6 @@ describe('RiskScoreHeaderContent', () => { beforeEach(() => { res = render( { }); it('should render learn more button', () => { - expect(res.getByText(`Learn more`)).toBeInTheDocument(); + expect(res.getByText(`How is risk score calculated?`)).toBeInTheDocument(); }); it('should render severity filter group', () => { @@ -65,7 +64,6 @@ describe('RiskScoreHeaderContent', () => { it('should not render if toggleStatus = false', () => { res = render( - - {i18n.LEARN_MORE} - + - i18n.translate('xpack.securitySolution.entityAnalytics.riskDashboard.riskToolTip', { - defaultMessage: - '{riskEntity} risk classification is determined by {riskEntityLowercase} risk score. {riskEntity}s classified as Critical or High are indicated as risky.', - values: { - riskEntity: getRiskEntityTranslation(riskEntity), - riskEntityLowercase: getRiskEntityTranslation(riskEntity, true), - }, - }); - export const ENTITY_NAME = (riskEntity: RiskScoreEntity) => i18n.translate('xpack.securitySolution.entityAnalytics.riskDashboard.nameTitle', { defaultMessage: '{riskEntity} Name', @@ -35,12 +25,13 @@ export const VIEW_ALL = i18n.translate( } ); -export const LEARN_MORE = i18n.translate( - 'xpack.securitySolution.entityAnalytics.riskDashboard.learnMore', - { - defaultMessage: 'Learn more', - } -); +export const LEARN_MORE = (riskEntity: RiskScoreEntity) => + i18n.translate('xpack.securitySolution.entityAnalytics.riskDashboard.learnMore', { + defaultMessage: 'Learn more about {riskEntity} risk', + values: { + riskEntity: getRiskEntityTranslation(riskEntity, true), + }, + }); export const HOST_RISK_TABLE_TOOLTIP = i18n.translate( 'xpack.securitySolution.entityAnalytics.riskDashboard.hostsTableTooltip', diff --git a/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/use_entity.test.ts b/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/use_entity.test.ts index 967e7503c2483..3e0f475d47fa9 100644 --- a/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/use_entity.test.ts +++ b/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/use_entity.test.ts @@ -22,7 +22,6 @@ describe('useEntityInfo', () => { const { result } = renderHook(() => useEntityInfo(RiskScoreEntity.host)); expect(result?.current).toMatchInlineSnapshot(` Object { - "docLink": "https://www.elastic.co/guide/en/security/current/host-risk-score.html", "kpiQueryId": "headerHostRiskScoreKpiQuery", "linkProps": Object { "deepLinkId": "hosts", @@ -37,7 +36,6 @@ describe('useEntityInfo', () => { const { result } = renderHook(() => useEntityInfo(RiskScoreEntity.user)); expect(result?.current).toMatchInlineSnapshot(` Object { - "docLink": "https://www.elastic.co/guide/en/security/current/user-risk-score.html", "kpiQueryId": "headerUserRiskScoreKpiQuery", "linkProps": Object { "deepLinkId": "users", diff --git a/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/use_entity.ts b/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/use_entity.ts index 10494a1d679f1..dc5d947ad4495 100644 --- a/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/use_entity.ts +++ b/x-pack/plugins/security_solution/public/overview/components/entity_analytics/risk_score/use_entity.ts @@ -13,7 +13,6 @@ import { HostsTableType, HostsType } from '../../../../explore/hosts/store/model import { RiskScoreEntity } from '../../../../../common/search_strategy/security_solution/risk_score'; import { usersActions } from '../../../../explore/users/store'; -import { RISKY_HOSTS_DOC_LINK, RISKY_USERS_DOC_LINK } from '../../../../../common/constants'; import { hostsActions } from '../../../../explore/hosts/store'; import { SecurityPageName } from '../../../../app/types'; @@ -27,7 +26,6 @@ export const useEntityInfo = (riskEntity: RiskScoreEntity) => { return riskEntity === RiskScoreEntity.host ? { - docLink: RISKY_HOSTS_DOC_LINK, linkProps: { deepLinkId: SecurityPageName.hosts, path: getTabsOnHostsUrl(HostsTableType.risk), @@ -44,7 +42,6 @@ export const useEntityInfo = (riskEntity: RiskScoreEntity) => { kpiQueryId: HOST_RISK_KPI_QUERY_ID, } : { - docLink: RISKY_USERS_DOC_LINK, linkProps: { deepLinkId: SecurityPageName.users, path: getTabsOnUsersUrl(UsersTableType.risk), diff --git a/x-pack/plugins/security_solution/public/overview/components/host_overview/index.tsx b/x-pack/plugins/security_solution/public/overview/components/host_overview/index.tsx index 5f040fe274bb8..2a32874a044bc 100644 --- a/x-pack/plugins/security_solution/public/overview/components/host_overview/index.tsx +++ b/x-pack/plugins/security_solution/public/overview/components/host_overview/index.tsx @@ -37,9 +37,10 @@ import * as i18n from './translations'; import { EndpointOverview } from './endpoint_overview'; import { OverviewDescriptionList } from '../../../common/components/overview_description_list'; import { useRiskScore } from '../../../explore/containers/risk_score'; -import { RiskScore } from '../../../explore/components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../explore/components/risk_score/severity/common'; import { RiskScoreHeaderTitle } from '../../../explore/components/risk_score/risk_score_onboarding/risk_score_header_title'; import type { SourcererScopeName } from '../../../common/store/sourcerer/model'; +import { RiskScoreDocTooltip } from '../common'; interface HostSummaryProps { contextID?: string; // used to provide unique draggable context when viewing in the side panel @@ -138,15 +139,25 @@ export const HostOverview = React.memo( }, { title: ( - + + + + + + + + ), description: ( <> {hostRiskData ? ( - + ) : ( getEmptyTagValue() )} diff --git a/x-pack/plugins/security_solution/public/overview/components/host_overview/translations.ts b/x-pack/plugins/security_solution/public/overview/components/host_overview/translations.ts index e4e47da524842..a2fb14970617b 100644 --- a/x-pack/plugins/security_solution/public/overview/components/host_overview/translations.ts +++ b/x-pack/plugins/security_solution/public/overview/components/host_overview/translations.ts @@ -33,10 +33,10 @@ export const HOST_RISK_SCORE = i18n.translate( } ); -export const HOST_RISK_CLASSIFICATION = i18n.translate( - 'xpack.securitySolution.host.details.overview.hostRiskClassification', +export const HOST_RISK_LEVEL = i18n.translate( + 'xpack.securitySolution.host.details.overview.hostRiskLevel', { - defaultMessage: 'Host risk classification', + defaultMessage: 'Host risk level', } ); diff --git a/x-pack/plugins/security_solution/public/overview/components/translations.ts b/x-pack/plugins/security_solution/public/overview/components/translations.ts new file mode 100644 index 0000000000000..ca96386f08d0c --- /dev/null +++ b/x-pack/plugins/security_solution/public/overview/components/translations.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 + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import { i18n } from '@kbn/i18n'; + +export const INFORMATION_ARIA_LABEL = i18n.translate( + 'xpack.securitySolution.overview.informationAriaLabel', + { + defaultMessage: 'Information', + } +); diff --git a/x-pack/plugins/security_solution/public/overview/components/user_overview/index.tsx b/x-pack/plugins/security_solution/public/overview/components/user_overview/index.tsx index 636551522be42..812c3f9340b0a 100644 --- a/x-pack/plugins/security_solution/public/overview/components/user_overview/index.tsx +++ b/x-pack/plugins/security_solution/public/overview/components/user_overview/index.tsx @@ -34,10 +34,11 @@ import * as i18n from './translations'; import { OverviewDescriptionList } from '../../../common/components/overview_description_list'; import { useRiskScore } from '../../../explore/containers/risk_score'; -import { RiskScore } from '../../../explore/components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../explore/components/risk_score/severity/common'; import type { UserItem } from '../../../../common/search_strategy/security_solution/users/common'; import { RiskScoreHeaderTitle } from '../../../explore/components/risk_score/risk_score_onboarding/risk_score_header_title'; import type { SourcererScopeName } from '../../../common/store/sourcerer/model'; +import { RiskScoreDocTooltip } from '../common'; export interface UserSummaryProps { contextID?: string; // used to provide unique draggable context when viewing in the side panel @@ -138,15 +139,25 @@ export const UserOverview = React.memo( }, { title: ( - + + + + + + + + ), description: ( <> {userRiskData ? ( - + ) : ( getEmptyTagValue() )} diff --git a/x-pack/plugins/security_solution/public/overview/components/user_overview/translations.ts b/x-pack/plugins/security_solution/public/overview/components/user_overview/translations.ts index 88ee4f726653a..601a798dbf542 100644 --- a/x-pack/plugins/security_solution/public/overview/components/user_overview/translations.ts +++ b/x-pack/plugins/security_solution/public/overview/components/user_overview/translations.ts @@ -70,9 +70,9 @@ export const USER_RISK_SCORE = i18n.translate( } ); -export const USER_RISK_CLASSIFICATION = i18n.translate( - 'xpack.securitySolution.user.details.overview.userRiskClassification', +export const USER_RISK_LEVEL = i18n.translate( + 'xpack.securitySolution.user.details.overview.userRiskLevel', { - defaultMessage: 'User risk classification', + defaultMessage: 'User risk level', } ); diff --git a/x-pack/plugins/security_solution/public/timelines/components/side_panel/new_user_detail/risk_score_field.tsx b/x-pack/plugins/security_solution/public/timelines/components/side_panel/new_user_detail/risk_score_field.tsx index d9a52b2c4c23b..798588928bb77 100644 --- a/x-pack/plugins/security_solution/public/timelines/components/side_panel/new_user_detail/risk_score_field.tsx +++ b/x-pack/plugins/security_solution/public/timelines/components/side_panel/new_user_detail/risk_score_field.tsx @@ -10,13 +10,18 @@ import { EuiFlexItem, EuiFlexGroup, useEuiFontSize, useEuiTheme } from '@elastic import React from 'react'; import { css } from '@emotion/react'; +import styled from 'styled-components'; import * as i18n from './translations'; -import type { RiskScoreEntity } from '../../../../../common/search_strategy'; -import { RiskSeverity } from '../../../../../common/search_strategy'; +import { RiskScoreEntity } from '../../../../../common/search_strategy'; import { getEmptyTagValue } from '../../../../common/components/empty_value'; -import { RiskScore } from '../../../../explore/components/risk_score/severity/common'; +import { RiskScoreLevel } from '../../../../explore/components/risk_score/severity/common'; import type { RiskScoreState } from '../../../../explore/containers/risk_score'; +import { RiskScoreDocTooltip } from '../../../../overview/components/common'; + +export const TooltipContainer = styled.div` + padding: ${({ theme }) => theme.eui.euiSizeS}; +`; export const RiskScoreField = ({ riskScoreState, @@ -52,14 +57,20 @@ export const RiskScoreField = ({ {userRiskData ? ( - <> + {Math.round(userRiskData.user.risk.calculated_score_norm)} - + + + + - + ) : ( getEmptyTagValue() )} diff --git a/x-pack/plugins/translations/translations/fr-FR.json b/x-pack/plugins/translations/translations/fr-FR.json index 61e5306384a53..f68c110d14128 100644 --- a/x-pack/plugins/translations/translations/fr-FR.json +++ b/x-pack/plugins/translations/translations/fr-FR.json @@ -29311,7 +29311,6 @@ "xpack.securitySolution.actions.addToTimeline.severityLevel": "Sévérité {level}", "xpack.securitySolution.actions.showTopTooltip": "Afficher le premier {fieldName}", "xpack.securitySolution.actions.toggleColumnToggle.nestedLabel": "Le champ {field} est un objet, et il est composé de champs imbriqués qui peuvent être ajoutés en tant que colonnes", - "xpack.securitySolution.alertDetails.overview.hostRiskClassification": "Classification de risque de {riskEntity} actuelle", "xpack.securitySolution.alertDetails.overview.hostRiskDataTitle": "Données de risque de {riskEntity}", "xpack.securitySolution.alertDetails.overview.insights_related_alerts_by_source_event_count": "{count} {count, plural, =1 {alerte} one {alertes} many {alertes} other {alertes}} associée(s) par événement source", "xpack.securitySolution.alertDetails.overview.insights_related_cases_found_content": "Cette alerte a été détectée dans {caseCount}", @@ -29321,7 +29320,6 @@ "xpack.securitySolution.alertDetails.overview.insights.related_cases_count": "{count} {count, plural, =1 {cas} one {aux cas suivants} many {cas} other {cas associés à cette alerte}}", "xpack.securitySolution.alertDetails.overview.insights.relatedCasesFailure": "Impossible de charger les cas connexes : \"{error}\"", "xpack.securitySolution.alertDetails.overview.insights.suppressedAlertsCount": "{count} {count, plural, =1 {alerte} one {alertes} many {alertes} other {alertes}} supprimée(s)", - "xpack.securitySolution.alertDetails.overview.originalHostRiskClassification": "Classification de risque de {riskEntity} d'origine", "xpack.securitySolution.alertDetails.overview.riskDataTooltipContent": "La classification des risques n'est affichée que lorsqu'elle est disponible pour une {riskEntity}. Vérifiez que {riskScoreDocumentationLink} est activé dans votre environnement.", "xpack.securitySolution.alerts.alertDetails.summary.cases.subTitle": "Affichage des {caseCount} cas les plus récemment créés contenant cette alerte", "xpack.securitySolution.alertSummaryView.alertSummaryViewContextDescription": "Alerte (à partir de {view})", @@ -29613,8 +29611,6 @@ "xpack.securitySolution.endpointResponseActions.actionError.errorMessage": "{errorCount, plural, =1 {L'erreur suivante a été rencontrée} one {Les erreurs suivantes ont été rencontrées} many {Les erreurs suivantes ont été rencontrées} other {Les erreurs suivantes ont été rencontrées}} :", "xpack.securitySolution.entityAnalytics.anomalies.moduleNotCompatibleTitle": "{incompatibleJobCount} {incompatibleJobCount, plural, =1 {tâche est actuellement non disponible} one {tâches sont actuellement non disponibles} many {tâches sont actuellement non disponibles} other {tâches sont actuellement non disponibles}}", "xpack.securitySolution.entityAnalytics.riskDashboard.nameTitle": "Nom de {riskEntity}", - "xpack.securitySolution.entityAnalytics.riskDashboard.riskClassificationTitle": "Classification de risque de {riskEntity}", - "xpack.securitySolution.entityAnalytics.riskDashboard.riskToolTip": "La classification de risque de {riskEntity} est déterminée par le score de risque de {riskEntityLowercase}. Les {riskEntity} classées comme Critique ou Élevée sont indiquées comme étant à risque.", "xpack.securitySolution.event.summary.threat_indicator.showMatches": "Afficher l'ensemble des {count} alertes de correspondance d'indicateur", "xpack.securitySolution.eventDetails.nestedColumnCheckboxAriaLabel": "Le champ {field} est un objet, et il est composé de champs imbriqués qui peuvent être ajoutés en tant que colonne", "xpack.securitySolution.eventDetails.responseActions.endpoint.executed": "a exécuté la commande {command}", @@ -29683,8 +29679,6 @@ "xpack.securitySolution.indexPatterns.timelineTemplate.currentPatternsBad": "Les modèles d'indexation actuels de ce modèle de chronologie sont : {callout}", "xpack.securitySolution.indexPatterns.timelineTemplate.noMatchData": "Les modèles d'indexation suivants sont enregistrés dans ce modèle de chronologie, mais ils ne correspondent à aucun flux de données, index ni alias d'index : {aliases}", "xpack.securitySolution.indexPatterns.timelineTemplate.toggleToNewSourcerer": "Nous avons conservé votre modèle de chronologie en créant une vue de données temporaires. Si vous souhaitez modifier vos données, nous pouvons recréer votre vue de données temporaires à l'aide du sélecteur de vue de nouvelles données. Vous pouvez également sélectionner manuellement une vue de données {link}.", - "xpack.securitySolution.kpiHosts.riskyHosts.description": "{formattedQuantity} {quantity, plural, =1 {Hôte} one {Hôtes} many {Hôtes} other {Hôtes}} à risque", - "xpack.securitySolution.kpiHosts.riskyHosts.hostsCount": "{quantity} {quantity, plural, =1 {hôte} one {hôtes} many {hôtes} other {hôtes}}", "xpack.securitySolution.lists.exceptionListImportSuccess": "La liste d'exceptions {fileName} a été importée", "xpack.securitySolution.lists.referenceModalDescription": "Cette liste de valeurs est associée à ({referenceCount}) {referenceCount, plural, =1 {liste d'exception} one {listes d'exception} many {listes d'exception} other {listes d'exception}}. Le retrait de cette liste supprimera tous les éléments d'exception qui référencent cette liste de valeurs.", "xpack.securitySolution.lists.uploadValueListExtensionValidationMessage": "Le fichier doit être de l'un des types suivants : [{fileTypes}]", @@ -29754,11 +29748,7 @@ "xpack.securitySolution.responseActionsList.list.item.wasSuccessful": "{command} terminée", "xpack.securitySolution.responseActionsList.list.recordRange": "Affichage de {range} sur {total} {recordsLabel}", "xpack.securitySolution.responseActionsList.list.recordRangeLabel": "{records, plural, one {action de réponse} many {actions de réponse} other {actions de réponse}}", - "xpack.securitySolution.riskInformation.explanation": "Cette fonctionnalité utilise une transformation, avec une agrégation d'indicateurs scriptée pour calculer les scores de risque {riskEntityLower} en fonction des alertes de règle de détection ayant le statut \"ouvert\", sur une fenêtre temporelle de 5 jours. La transformation s'exécute toutes les heures afin que le score reste à jour au moment où de nouvelles alertes de règles de détection sont transmises.", - "xpack.securitySolution.riskInformation.introduction": "La fonctionnalité de score de risque {riskEntity} détecte les {riskEntityLowerPlural} à risque depuis l'intérieur de votre environnement.", - "xpack.securitySolution.riskInformation.learnMore": "Vous pouvez en savoir plus sur les risques de {riskEntity} {riskScoreDocumentationLink}", "xpack.securitySolution.riskInformation.riskHeader": "Plage de scores de risque de {riskEntity}", - "xpack.securitySolution.riskInformation.title": "Comment le risque de {riskEntity} est-il calculé ?", "xpack.securitySolution.riskScore.api.ingestPipeline.delete.errorMessageTitle": "Impossible de supprimer {totalCount, plural, =1 {pipeline} one {pipelines} many {pipelines} other {pipelines}} d'ingestion", "xpack.securitySolution.riskScore.api.transforms.delete.errorMessageTitle": "Impossible de supprimer {totalCount, plural, =1 {Transformer} one {Transformations} many {Transformations} other {Transformations}}", "xpack.securitySolution.riskScore.api.transforms.start.errorMessageTitle": "Impossible de démarrer {totalCount, plural, =1 {Transformer} one {Transformations} many {Transformations} other {Transformations}}", @@ -29928,7 +29918,6 @@ "xpack.securitySolution.alerts.alertDetails.summary.host.agentStatus.title": "Statut de l'agent", "xpack.securitySolution.alerts.alertDetails.summary.host.hostName.title": "Nom d'hôte", "xpack.securitySolution.alerts.alertDetails.summary.host.osName.title": "Système d'exploitation", - "xpack.securitySolution.alerts.alertDetails.summary.host.riskClassification": "Classification de risque de l'hôte", "xpack.securitySolution.alerts.alertDetails.summary.host.riskScore": "Score de risque de l'hôte", "xpack.securitySolution.alerts.alertDetails.summary.host.title": "Hôte", "xpack.securitySolution.alerts.alertDetails.summary.ipAddresses.title": "Adresses IP", @@ -29942,7 +29931,6 @@ "xpack.securitySolution.alerts.alertDetails.summary.rule.title": "Règle", "xpack.securitySolution.alerts.alertDetails.summary.user.action.openUserDetailsPage": "Ouvrir la page de détails de l'utilisateur", "xpack.securitySolution.alerts.alertDetails.summary.user.action.viewUserSummary": "Afficher le résumé de l'utilisateur", - "xpack.securitySolution.alerts.alertDetails.summary.user.riskClassification": "Classification de risque de l'utilisateur", "xpack.securitySolution.alerts.alertDetails.summary.user.riskScore": "Score de risque de l'utilisateur", "xpack.securitySolution.alerts.alertDetails.summary.user.title": "Utilisateur", "xpack.securitySolution.alerts.alertDetails.summary.user.userName.title": "Nom d'utilisateur", @@ -32585,8 +32573,6 @@ "xpack.securitySolution.entityAnalytics.hostsRiskDashboard.hostsTableTooltip": "Le tableau des risques de l'hôte n'est pas affecté par la plage temporelle. Ce tableau montre le dernier score de risque enregistré pour chaque hôte.", "xpack.securitySolution.entityAnalytics.hostsRiskDashboard.title": "Scores de risque de l'hôte", "xpack.securitySolution.entityAnalytics.riskDashboard.hostsTableTooltip": "Le panneau de Score de risque de l'hôte affiche la liste des hôtes à risque ainsi que leur dernier score de risque. Vous pouvez filtrer cette liste à l’aide de filtres globaux dans la barre de recherche KQL. Le filtre de sélecteur de plage temporelle affiche les alertes dans l’intervalle de temps sélectionné uniquement et ne filtre pas la liste des hôtes à risque.", - "xpack.securitySolution.entityAnalytics.riskDashboard.learnMore": "En savoir plus", - "xpack.securitySolution.entityAnalytics.riskDashboard.tableTooltipTitle": "En version d'évaluation technique", "xpack.securitySolution.entityAnalytics.riskDashboard.usersTableTooltip": "Le panneau de score de risque de l'utilisateur affiche la liste des utilisateurs à risque et leur dernier score de risque. Vous pouvez filtrer cette liste à l’aide de filtres globaux dans la barre de recherche KQL. Le filtre de sélecteur de plage temporelle affiche uniquement les alertes dans l’intervalle de temps sélectionné et ne filtre pas la liste des utilisateurs à risque.", "xpack.securitySolution.entityAnalytics.riskDashboard.viewAllLabel": "Afficher tout", "xpack.securitySolution.entityAnalytics.technicalPreviewLabel": "Version d'évaluation technique", @@ -32600,7 +32586,6 @@ "xpack.securitySolution.eventDetails.ctiSummary.feedNamePreposition": "de", "xpack.securitySolution.eventDetails.ctiSummary.indicatorEnrichmentTitle": "Correspondance de menace détectée", "xpack.securitySolution.eventDetails.ctiSummary.indicatorEnrichmentTooltipContent": "Cette valeur de champ correspond à un indicateur de Threat Intelligence avec une règle que vous avez créée.", - "xpack.securitySolution.eventDetails.ctiSummary.informationAriaLabel": "Informations", "xpack.securitySolution.eventDetails.ctiSummary.investigationEnrichmentTitle": "Enrichi avec la Threat Intelligence", "xpack.securitySolution.eventDetails.ctiSummary.investigationEnrichmentTooltipContent": "Cette valeur de champ possède des informations supplémentaires disponibles provenant de sources de Threat Intelligence.", "xpack.securitySolution.eventDetails.description": "Description", @@ -32940,7 +32925,6 @@ "xpack.securitySolution.host.details.overview.cloudProviderTitle": "Fournisseur cloud", "xpack.securitySolution.host.details.overview.familyTitle": "Famille", "xpack.securitySolution.host.details.overview.hostIdTitle": "ID de l'hôte", - "xpack.securitySolution.host.details.overview.hostRiskClassification": "Classification de risque de l'hôte", "xpack.securitySolution.host.details.overview.hostRiskScoreTitle": "Score de risque de l'hôte", "xpack.securitySolution.host.details.overview.inspectTitle": "Aperçu de l'hôte", "xpack.securitySolution.host.details.overview.instanceIdTitle": "ID de l'instance", @@ -32989,7 +32973,6 @@ "xpack.securitySolution.hosts.navigation.hostRiskTitle": "Risque de l'hôte", "xpack.securitySolution.hosts.navigation.sessionsTitle": "Sessions", "xpack.securitySolution.hosts.navigation.uncommonProcessesTitle": "Processus inhabituels", - "xpack.securitySolution.hosts.navigaton.hostRisk.viewDashboardButtonLabel": "Afficher le tableau de bord de la source", "xpack.securitySolution.hosts.navigaton.matrixHistogram.errorFetchingAuthenticationsData": "Impossible d'interroger les données d'authentifications", "xpack.securitySolution.hosts.navigaton.matrixHistogram.errorFetchingEventsData": "Impossible d'interroger les données d'événements", "xpack.securitySolution.hosts.pageTitle": "Hôtes", @@ -33003,13 +32986,11 @@ "xpack.securitySolution.hostsRiskTable.hostNameTitle": "Nom d'hôte", "xpack.securitySolution.hostsRiskTable.hostRiskScoreTitle": "Score de risque de l'hôte", "xpack.securitySolution.hostsRiskTable.hostRiskTitle": "Risque de l'hôte", - "xpack.securitySolution.hostsRiskTable.hostRiskToolTip": "La classification des risques de l'hôte est déterminée par score de risque de l'hôte. Les hôtes classés comme étant Critique ou Élevé sont indiqués comme étant \"à risque\".", "xpack.securitySolution.hostsRiskTable.hostsTableTooltip": "Le tableau des risques de l'hôte n'est pas affecté par la plage temporelle KQL. Ce tableau montre le dernier score de risque enregistré pour chaque hôte.", "xpack.securitySolution.hostsRiskTable.riskTitle": "Classification de risque de l'hôte", "xpack.securitySolution.hostsRiskTable.tableTitle": "Risque de l'hôte", "xpack.securitySolution.hostsRiskTable.usersTableTooltip": "Le tableau des risques de l'utilisateur n'est pas affecté par la plage temporelle KQL. Ce tableau montre le dernier score de risque enregistré pour chaque utilisateur.", "xpack.securitySolution.hostsTable.firstLastSeenToolTip": "Par rapport à la plage de dates sélectionnée", - "xpack.securitySolution.hostsTable.hostRiskToolTip": "La classification des risques de l'hôte est déterminée par score de risque de l'hôte. Les hôtes classés comme étant Critique ou Élevé sont indiqués comme étant \"à risque\".", "xpack.securitySolution.hostsTable.hostsTitle": "Tous les hôtes", "xpack.securitySolution.hostsTable.lastSeenTitle": "Vu en dernier", "xpack.securitySolution.hostsTable.nameTitle": "Nom d'hôte", @@ -33069,9 +33050,6 @@ "xpack.securitySolution.investigationEnrichment.requestError": "Une erreur est survenue lors de la demande de Threat Intelligence", "xpack.securitySolution.ja3.fingerprint.ja3.fingerprintLabel": "ja3", "xpack.securitySolution.kpiHosts.hosts.title": "Hôtes", - "xpack.securitySolution.kpiHosts.riskyHosts.errorMessage": "Erreur lors de la récupération de l'API d'hôtes à risque", - "xpack.securitySolution.kpiHosts.riskyHosts.inspectTitle": "Hôtes à risque", - "xpack.securitySolution.kpiHosts.riskyHosts.title": "Hôtes à risque", "xpack.securitySolution.kpiHosts.uniqueIps.destinationChartLabel": "Dest.", "xpack.securitySolution.kpiHosts.uniqueIps.destinationUnitLabel": "destination", "xpack.securitySolution.kpiHosts.uniqueIps.sourceChartLabel": "Src.", @@ -33587,11 +33565,9 @@ "xpack.securitySolution.risk_score.toast.viewDashboard": "Afficher le tableau de bord", "xpack.securitySolution.riskDeprecated.entity.upgradeRiskScoreDescription": "Les données actuelles ne sont plus prises en charge. Veuillez migrer vos données et mettre à niveau le module. Les données pourront prendre jusqu'à une heure pour être générées après l'activation du module.", "xpack.securitySolution.riskInformation.buttonLabel": "Comment le score de risque est-il calculé ?", - "xpack.securitySolution.riskInformation.classificationHeader": "Classification", "xpack.securitySolution.riskInformation.closeBtn": "Fermer", "xpack.securitySolution.riskInformation.criticalRiskDescription": "90 et supérieur", "xpack.securitySolution.riskInformation.informationAriaLabel": "Informations", - "xpack.securitySolution.riskInformation.link": "ici", "xpack.securitySolution.riskInformation.unknownRiskDescription": "Inférieur à 20", "xpack.securitySolution.riskScore.api.ingestPipeline.create.errorMessageTitle": "Impossible de créer un pipeline d'ingestion", "xpack.securitySolution.riskScore.api.storedScript.create.errorMessageTitle": "Impossible de créer un script stocké", @@ -34114,7 +34090,6 @@ "xpack.securitySolution.user.details.overview.osTitle": "Système d'exploitation", "xpack.securitySolution.user.details.overview.userDomainTitle": "Domaine", "xpack.securitySolution.user.details.overview.userIdTitle": "ID utilisateur", - "xpack.securitySolution.user.details.overview.userRiskClassification": "Classification de risque de l'utilisateur", "xpack.securitySolution.user.details.overview.userRiskScoreTitle": "Score de risque de l'utilisateur", "xpack.securitySolution.user.ipDetails.ipOverview.lastSeenTitle": "Vu en dernier", "xpack.securitySolution.userDetails.failSearchDescription": "Impossible de lancer la recherche sur les détails de l'utilisateur", @@ -34129,13 +34104,11 @@ "xpack.securitySolution.usersKpiAuthentications.failSearchDescription": "Impossible de lancer une recherche sur les authentifications du KPI des utilisateurs", "xpack.securitySolution.usersRiskTable.userNameTitle": "Nom d'utilisateur", "xpack.securitySolution.usersRiskTable.userRiskScoreTitle": "Score de risque de l'utilisateur", - "xpack.securitySolution.usersRiskTable.userRiskToolTip": "La classification des risques de l'utilisateur est déterminée par score de risque de l'utilisateur. Les utilisateurs classés comme étant Critique ou Élevé sont indiqués comme étant \"à risque\".", "xpack.securitySolution.usersTable.domainTitle": "Domaine", "xpack.securitySolution.usersTable.lastSeenTitle": "Vu en dernier", "xpack.securitySolution.usersTable.riskTitle": "Classification de risque de l'utilisateur", "xpack.securitySolution.usersTable.title": "Utilisateurs", "xpack.securitySolution.usersTable.userNameTitle": "Nom d'utilisateur", - "xpack.securitySolution.usersTable.userRiskToolTip": "La classification des risques de l'utilisateur est déterminée par score de risque de l'utilisateur. Les utilisateurs classés comme étant Critique ou Élevé sont indiqués comme étant \"à risque\".", "xpack.securitySolution.userTab.errorFetchingsData": "Impossible d'interroger les données des utilisateurs", "xpack.securitySolution.visualizationActions.addToCaseSuccessContent": "Visualisation correctement ajoutée au cas", "xpack.securitySolution.visualizationActions.addToExistingCase": "Ajouter à un cas existant", diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index e5dcbb8b17af5..c462b7850cff7 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -29310,7 +29310,6 @@ "xpack.securitySolution.actions.addToTimeline.severityLevel": "{level}重要度", "xpack.securitySolution.actions.showTopTooltip": "上位の{fieldName}を表示", "xpack.securitySolution.actions.toggleColumnToggle.nestedLabel": "{field}フィールドはオブジェクトであり、列として追加できるネストされたフィールドに分解されます", - "xpack.securitySolution.alertDetails.overview.hostRiskClassification": "現在の{riskEntity}リスク分類", "xpack.securitySolution.alertDetails.overview.hostRiskDataTitle": "{riskEntity}リスクデータ", "xpack.securitySolution.alertDetails.overview.insights_related_alerts_by_source_event_count": "ソースイベントに関連する{count}件の{count, plural, =1 {アラート} other {アラート}}", "xpack.securitySolution.alertDetails.overview.insights_related_cases_found_content": "このアラートは{caseCount}で見つかりました", @@ -29320,7 +29319,6 @@ "xpack.securitySolution.alertDetails.overview.insights.related_cases_count": "このアラートに関連する{count}件の{count, plural, =1 {ケース} other {ケース}}", "xpack.securitySolution.alertDetails.overview.insights.relatedCasesFailure": "関連するケースを読み込めません:\"{error}\"", "xpack.securitySolution.alertDetails.overview.insights.suppressedAlertsCount": "{count}件の抑制された{count, plural, =1 {アラート} other {アラート}}", - "xpack.securitySolution.alertDetails.overview.originalHostRiskClassification": "元の{riskEntity}リスク分類", "xpack.securitySolution.alertDetails.overview.riskDataTooltipContent": "リスク分類は、{riskEntity}で使用可能なときにのみ表示されます。{riskScoreDocumentationLink}が環境内で有効であることを確認します。", "xpack.securitySolution.alerts.alertDetails.summary.cases.subTitle": "このアラートを含む直近に作成された{caseCount}件のケースを表示しています", "xpack.securitySolution.alertSummaryView.alertSummaryViewContextDescription": "アラート({view}から)", @@ -29612,8 +29610,6 @@ "xpack.securitySolution.endpointResponseActions.actionError.errorMessage": "次の{errorCount, plural, =1 {エラー} other {エラー}}が発生しました:", "xpack.securitySolution.entityAnalytics.anomalies.moduleNotCompatibleTitle": "現在、{incompatibleJobCount}個の{incompatibleJobCount, plural, =1 {ジョブ} other {ジョブ}}が使用できません", "xpack.securitySolution.entityAnalytics.riskDashboard.nameTitle": "{riskEntity}名", - "xpack.securitySolution.entityAnalytics.riskDashboard.riskClassificationTitle": "{riskEntity}リスク分類", - "xpack.securitySolution.entityAnalytics.riskDashboard.riskToolTip": "{riskEntity}リスク分類は、{riskEntityLowercase}リスクスコアによって決定されます。「重大」または「高」に分類された{riskEntity}は、リスクが高いことが表示されます。", "xpack.securitySolution.event.summary.threat_indicator.showMatches": "すべての{count}件のインジケーター一致アラートを表示", "xpack.securitySolution.eventDetails.nestedColumnCheckboxAriaLabel": "{field}フィールドはオブジェクトであり、列として追加できるネストされたフィールドに分解されます", "xpack.securitySolution.eventDetails.responseActions.endpoint.executed": "{command}コマンドを実行しました", @@ -29682,8 +29678,6 @@ "xpack.securitySolution.indexPatterns.timelineTemplate.currentPatternsBad": "このタイムラインテンプレートの現在のインデックスパターン:{callout}", "xpack.securitySolution.indexPatterns.timelineTemplate.noMatchData": "次のインデックスパターンはこのタイムラインテンプレートに保存されますが、データストリーム、インデックス、またはインデックスエイリアスと一致しません:{aliases}", "xpack.securitySolution.indexPatterns.timelineTemplate.toggleToNewSourcerer": "一時データビューを作成することで、タイムラインテンプレートを保持しています。データを修正する場合は、新しいデータビューセレクターを使用して、一時データビューを再作成できます。手動でデータビュー{link}を選択することもできます。", - "xpack.securitySolution.kpiHosts.riskyHosts.description": "{formattedQuantity}個の高リスクの{quantity, plural, =1 {ホスト} other {ホスト}}", - "xpack.securitySolution.kpiHosts.riskyHosts.hostsCount": "{quantity} {quantity, plural, =1 {ホスト} other {ホスト}}", "xpack.securitySolution.lists.exceptionListImportSuccess": "例外リスト{fileName}がインポートされました", "xpack.securitySolution.lists.referenceModalDescription": "この値リストは、({referenceCount})例外{referenceCount, plural, =1 {リスト} other {リスト}}に関連付けられています。このリストを削除すると、この値リストを参照するすべての例外アイテムが削除されます。", "xpack.securitySolution.lists.uploadValueListExtensionValidationMessage": "ファイルは次の種類のいずれかでなければなりません:[{fileTypes}]", @@ -29753,11 +29747,7 @@ "xpack.securitySolution.responseActionsList.list.item.wasSuccessful": "{command}は正常に完了しました", "xpack.securitySolution.responseActionsList.list.recordRange": "{total} {recordsLabel}件中{range}を表示中", "xpack.securitySolution.responseActionsList.list.recordRangeLabel": "{records, plural, other {対応アクション}}", - "xpack.securitySolution.riskInformation.explanation": "この機能は変換を利用します。また、5日間の範囲で、スクリプトメトリックアグリゲーションを使用して、「オープン」ステータスの検知ルールアラートに基づいて{riskEntityLower}リスクスコアを計算します。変換は毎時実行され、新しい検知ルールアラートを受信するとスコアが常に更新されます。", - "xpack.securitySolution.riskInformation.introduction": "{riskEntity}リスクスコア機能は、環境内のリスクが高い{riskEntityLowerPlural}を明らかにします。", - "xpack.securitySolution.riskInformation.learnMore": "{riskEntity}リスク{riskScoreDocumentationLink}の詳細をご覧ください", "xpack.securitySolution.riskInformation.riskHeader": "{riskEntity}リスクスコア範囲", - "xpack.securitySolution.riskInformation.title": "{riskEntity}リスクを計算する方法", "xpack.securitySolution.riskScore.api.ingestPipeline.delete.errorMessageTitle": "インジェスト{totalCount, plural, =1 {パイプライン} other {パイプライン}}を削除できませんでした", "xpack.securitySolution.riskScore.api.transforms.delete.errorMessageTitle": "{totalCount, plural, =1 {変換} other {変換}}の削除に失敗しました", "xpack.securitySolution.riskScore.api.transforms.start.errorMessageTitle": "{totalCount, plural, =1 {変換} other {変換}}の開始に失敗しました", @@ -29927,7 +29917,6 @@ "xpack.securitySolution.alerts.alertDetails.summary.host.agentStatus.title": "エージェントステータス", "xpack.securitySolution.alerts.alertDetails.summary.host.hostName.title": "ホスト名", "xpack.securitySolution.alerts.alertDetails.summary.host.osName.title": "オペレーティングシステム", - "xpack.securitySolution.alerts.alertDetails.summary.host.riskClassification": "ホストリスク分類", "xpack.securitySolution.alerts.alertDetails.summary.host.riskScore": "ホストリスクスコア", "xpack.securitySolution.alerts.alertDetails.summary.host.title": "ホスト", "xpack.securitySolution.alerts.alertDetails.summary.ipAddresses.title": "IP アドレス", @@ -29941,7 +29930,6 @@ "xpack.securitySolution.alerts.alertDetails.summary.rule.title": "ルール", "xpack.securitySolution.alerts.alertDetails.summary.user.action.openUserDetailsPage": "ユーザー詳細ページを開く", "xpack.securitySolution.alerts.alertDetails.summary.user.action.viewUserSummary": "ユーザー概要を表示", - "xpack.securitySolution.alerts.alertDetails.summary.user.riskClassification": "ユーザーリスク分類", "xpack.securitySolution.alerts.alertDetails.summary.user.riskScore": "ユーザーリスクスコア", "xpack.securitySolution.alerts.alertDetails.summary.user.title": "ユーザー", "xpack.securitySolution.alerts.alertDetails.summary.user.userName.title": "ユーザー名", @@ -32584,8 +32572,6 @@ "xpack.securitySolution.entityAnalytics.hostsRiskDashboard.hostsTableTooltip": "ホストリスク表は時間範囲の影響を受けません。この表は、各ホストの最後に記録されたリスクスコアを示します。", "xpack.securitySolution.entityAnalytics.hostsRiskDashboard.title": "ホストリスクスコア", "xpack.securitySolution.entityAnalytics.riskDashboard.hostsTableTooltip": "ホストリスクスコアパネルには、リスクのあるホストの一覧と最新のリスクスコアが表示されます。KQL検索バーのグローバルフィルターを使って、この一覧をフィルタリングできます。時間範囲ピッカーフィルターは、選択した時間範囲内のアラートのみを表示し、リスクのあるホストの一覧をフィルタリングしません。", - "xpack.securitySolution.entityAnalytics.riskDashboard.learnMore": "詳細", - "xpack.securitySolution.entityAnalytics.riskDashboard.tableTooltipTitle": "テクニカルプレビュー", "xpack.securitySolution.entityAnalytics.riskDashboard.usersTableTooltip": "ユーザーリスクスコアパネルには、リスクのあるユーザーの一覧と最新のリスクスコアが表示されます。KQL検索バーのグローバルフィルターを使って、この一覧をフィルタリングできます。時間範囲ピッカーフィルターは、選択した時間範囲内のアラートのみを表示し、リスクのあるユーザーの一覧をフィルタリングしません。", "xpack.securitySolution.entityAnalytics.riskDashboard.viewAllLabel": "すべて表示", "xpack.securitySolution.entityAnalytics.technicalPreviewLabel": "テクニカルプレビュー", @@ -32599,7 +32585,6 @@ "xpack.securitySolution.eventDetails.ctiSummary.feedNamePreposition": "開始", "xpack.securitySolution.eventDetails.ctiSummary.indicatorEnrichmentTitle": "脅威一致が検出されました", "xpack.securitySolution.eventDetails.ctiSummary.indicatorEnrichmentTooltipContent": "このフィールド値は、作成したルールの脅威インテリジェンス指標と一致しました。", - "xpack.securitySolution.eventDetails.ctiSummary.informationAriaLabel": "情報", "xpack.securitySolution.eventDetails.ctiSummary.investigationEnrichmentTitle": "Threat Intelligenceで拡張", "xpack.securitySolution.eventDetails.ctiSummary.investigationEnrichmentTooltipContent": "このフィールド値には脅威インテリジェンスソースの別の情報があります。", "xpack.securitySolution.eventDetails.description": "説明", @@ -32939,7 +32924,6 @@ "xpack.securitySolution.host.details.overview.cloudProviderTitle": "クラウドプロバイダー", "xpack.securitySolution.host.details.overview.familyTitle": "ファミリー", "xpack.securitySolution.host.details.overview.hostIdTitle": "ホストID", - "xpack.securitySolution.host.details.overview.hostRiskClassification": "ホストリスク分類", "xpack.securitySolution.host.details.overview.hostRiskScoreTitle": "ホストリスクスコア", "xpack.securitySolution.host.details.overview.inspectTitle": "ホスト概要", "xpack.securitySolution.host.details.overview.instanceIdTitle": "インスタンス ID", @@ -32988,7 +32972,6 @@ "xpack.securitySolution.hosts.navigation.hostRiskTitle": "ホストリスク", "xpack.securitySolution.hosts.navigation.sessionsTitle": "セッション", "xpack.securitySolution.hosts.navigation.uncommonProcessesTitle": "非共通プロセス", - "xpack.securitySolution.hosts.navigaton.hostRisk.viewDashboardButtonLabel": "ソースダッシュボードを表示", "xpack.securitySolution.hosts.navigaton.matrixHistogram.errorFetchingAuthenticationsData": "認証データをクエリできませんでした", "xpack.securitySolution.hosts.navigaton.matrixHistogram.errorFetchingEventsData": "イベントデータをクエリできませんでした", "xpack.securitySolution.hosts.pageTitle": "ホスト", @@ -33002,13 +32985,11 @@ "xpack.securitySolution.hostsRiskTable.hostNameTitle": "ホスト名", "xpack.securitySolution.hostsRiskTable.hostRiskScoreTitle": "ホストリスクスコア", "xpack.securitySolution.hostsRiskTable.hostRiskTitle": "ホストリスク", - "xpack.securitySolution.hostsRiskTable.hostRiskToolTip": "ホストリスク分類はホストリスクスコアで決まります。「重大」または「高」に分類されたホストはリスクが高いことが示されます。", "xpack.securitySolution.hostsRiskTable.hostsTableTooltip": "ホストリスク表はKQL時間範囲の影響を受けません。この表は、各ホストの最後に記録されたリスクスコアを示します。", "xpack.securitySolution.hostsRiskTable.riskTitle": "ホストリスク分類", "xpack.securitySolution.hostsRiskTable.tableTitle": "ホストリスク", "xpack.securitySolution.hostsRiskTable.usersTableTooltip": "ユーザーリスク表はKQL時間範囲の影響を受けません。この表は、各ユーザーの最後に記録されたリスクスコアを示します。", "xpack.securitySolution.hostsTable.firstLastSeenToolTip": "選択された日付範囲との相関付けです", - "xpack.securitySolution.hostsTable.hostRiskToolTip": "ホストリスク分類はホストリスクスコアで決まります。「重大」または「高」に分類されたホストはリスクが高いことが示されます。", "xpack.securitySolution.hostsTable.hostsTitle": "すべてのホスト", "xpack.securitySolution.hostsTable.lastSeenTitle": "前回の認識", "xpack.securitySolution.hostsTable.nameTitle": "ホスト名", @@ -33068,9 +33049,6 @@ "xpack.securitySolution.investigationEnrichment.requestError": "脅威インテリジェンスの要求中にエラーが発生しました", "xpack.securitySolution.ja3.fingerprint.ja3.fingerprintLabel": "ja3", "xpack.securitySolution.kpiHosts.hosts.title": "ホスト", - "xpack.securitySolution.kpiHosts.riskyHosts.errorMessage": "高リスクホストAPIの取得エラー", - "xpack.securitySolution.kpiHosts.riskyHosts.inspectTitle": "高リスクホスト", - "xpack.securitySolution.kpiHosts.riskyHosts.title": "高リスクホスト", "xpack.securitySolution.kpiHosts.uniqueIps.destinationChartLabel": "Dest.", "xpack.securitySolution.kpiHosts.uniqueIps.destinationUnitLabel": "デスティネーション", "xpack.securitySolution.kpiHosts.uniqueIps.sourceChartLabel": "Src.", @@ -33586,11 +33564,9 @@ "xpack.securitySolution.risk_score.toast.viewDashboard": "ダッシュボードを表示", "xpack.securitySolution.riskDeprecated.entity.upgradeRiskScoreDescription": "現在のデータはサポートされていません。データを移行し、モジュールをアップグレードしてください。モジュールを有効化した後、データの生成までに1時間かかる場合があります。", "xpack.securitySolution.riskInformation.buttonLabel": "リスクスコアを計算する方法", - "xpack.securitySolution.riskInformation.classificationHeader": "分類", "xpack.securitySolution.riskInformation.closeBtn": "閉じる", "xpack.securitySolution.riskInformation.criticalRiskDescription": "90以上", "xpack.securitySolution.riskInformation.informationAriaLabel": "情報", - "xpack.securitySolution.riskInformation.link": "こちら", "xpack.securitySolution.riskInformation.unknownRiskDescription": "20未満", "xpack.securitySolution.riskScore.api.ingestPipeline.create.errorMessageTitle": "インジェストパイプラインを作成できませんでした", "xpack.securitySolution.riskScore.api.storedScript.create.errorMessageTitle": "保存されたスクリプトを作成できませんでした", @@ -34113,7 +34089,6 @@ "xpack.securitySolution.user.details.overview.osTitle": "オペレーティングシステム", "xpack.securitySolution.user.details.overview.userDomainTitle": "ドメイン", "xpack.securitySolution.user.details.overview.userIdTitle": "ユーザーID", - "xpack.securitySolution.user.details.overview.userRiskClassification": "ユーザーリスク分類", "xpack.securitySolution.user.details.overview.userRiskScoreTitle": "ユーザーリスクスコア", "xpack.securitySolution.user.ipDetails.ipOverview.lastSeenTitle": "前回の認識", "xpack.securitySolution.userDetails.failSearchDescription": "ユーザー詳細で検索を実行できませんでした", @@ -34128,13 +34103,11 @@ "xpack.securitySolution.usersKpiAuthentications.failSearchDescription": "ユーザーKPI認証で検索を実行できませんでした", "xpack.securitySolution.usersRiskTable.userNameTitle": "ユーザー名", "xpack.securitySolution.usersRiskTable.userRiskScoreTitle": "ユーザーリスクスコア", - "xpack.securitySolution.usersRiskTable.userRiskToolTip": "ユーザーリスク分類はユーザーリスクスコアで決まります。「重大」または「高」に分類されたユーザーはリスクが高いことが示されます。", "xpack.securitySolution.usersTable.domainTitle": "ドメイン", "xpack.securitySolution.usersTable.lastSeenTitle": "前回の認識", "xpack.securitySolution.usersTable.riskTitle": "ユーザーリスク分類", "xpack.securitySolution.usersTable.title": "ユーザー", "xpack.securitySolution.usersTable.userNameTitle": "ユーザー名", - "xpack.securitySolution.usersTable.userRiskToolTip": "ユーザーリスク分類はユーザーリスクスコアで決まります。「重大」または「高」に分類されたユーザーはリスクが高いことが示されます。", "xpack.securitySolution.userTab.errorFetchingsData": "ユーザーデータをクエリできませんでした", "xpack.securitySolution.visualizationActions.addToCaseSuccessContent": "ビジュアライゼーションが正常にケースに追加されました", "xpack.securitySolution.visualizationActions.addToExistingCase": "既存のケースに追加", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index fc12edb97a8e5..d5ab00e4dc425 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -29306,7 +29306,6 @@ "xpack.securitySolution.actions.addToTimeline.severityLevel": "{level} 严重性", "xpack.securitySolution.actions.showTopTooltip": "排名靠前的{fieldName}", "xpack.securitySolution.actions.toggleColumnToggle.nestedLabel": "{field} 字段是对象,并分解为可以添加为列的嵌套字段", - "xpack.securitySolution.alertDetails.overview.hostRiskClassification": "当前 {riskEntity} 风险分类", "xpack.securitySolution.alertDetails.overview.hostRiskDataTitle": "{riskEntity} 风险数据", "xpack.securitySolution.alertDetails.overview.insights_related_alerts_by_source_event_count": "{count} 个{count, plural, =1 {告警} other {告警}}与源事件相关", "xpack.securitySolution.alertDetails.overview.insights_related_cases_found_content": "发现此告警位于 {caseCount}", @@ -29316,7 +29315,6 @@ "xpack.securitySolution.alertDetails.overview.insights.related_cases_count": "{count} 个{count, plural, =1 {案例} other {案例}}与此告警相关", "xpack.securitySolution.alertDetails.overview.insights.relatedCasesFailure": "无法加载相关案例:“{error}”", "xpack.securitySolution.alertDetails.overview.insights.suppressedAlertsCount": "{count} 个已阻止{count, plural, =1 {告警} other {告警}}", - "xpack.securitySolution.alertDetails.overview.originalHostRiskClassification": "原始 {riskEntity} 风险分类", "xpack.securitySolution.alertDetails.overview.riskDataTooltipContent": "仅在其对 {riskEntity} 可用时才会显示风险分类。确保在您的环境中启用了 {riskScoreDocumentationLink}。", "xpack.securitySolution.alerts.alertDetails.summary.cases.subTitle": "正在显示 {caseCount} 个包含此告警的最新创建的案例", "xpack.securitySolution.alertSummaryView.alertSummaryViewContextDescription": "告警(来自 {view})", @@ -29608,8 +29606,6 @@ "xpack.securitySolution.endpointResponseActions.actionError.errorMessage": "遇到以下{errorCount, plural, =1 {错误} other {错误}}:", "xpack.securitySolution.entityAnalytics.anomalies.moduleNotCompatibleTitle": "{incompatibleJobCount} 个{incompatibleJobCount, plural, =1 {作业} other {作业}}当前不可用", "xpack.securitySolution.entityAnalytics.riskDashboard.nameTitle": "{riskEntity} 名称", - "xpack.securitySolution.entityAnalytics.riskDashboard.riskClassificationTitle": "{riskEntity} 风险分类", - "xpack.securitySolution.entityAnalytics.riskDashboard.riskToolTip": "{riskEntity} 风险分类由 {riskEntityLowercase} 风险分数决定。分类为紧急或高的{riskEntity}主机即表示存在风险。", "xpack.securitySolution.event.summary.threat_indicator.showMatches": "显示所有 {count} 个指标匹配告警", "xpack.securitySolution.eventDetails.nestedColumnCheckboxAriaLabel": "{field} 字段是对象,并分解为可以添加为列的嵌套字段", "xpack.securitySolution.eventDetails.responseActions.endpoint.executed": "已执行 {command} 命令", @@ -29678,8 +29674,6 @@ "xpack.securitySolution.indexPatterns.timelineTemplate.currentPatternsBad": "此时间线模板中的当前索引模式为:{callout}", "xpack.securitySolution.indexPatterns.timelineTemplate.noMatchData": "以下索引模式已保存到此时间线模板,但不匹配任何数据流、索引或索引别名:{aliases}", "xpack.securitySolution.indexPatterns.timelineTemplate.toggleToNewSourcerer": "我们已通过创建临时数据视图来保留您的时间线模板。如果您要修改数据,我们可以使用新的数据视图选择器重新创建临时数据视图。您还可以手动选择数据视图 {link}。", - "xpack.securitySolution.kpiHosts.riskyHosts.description": "{formattedQuantity} 台有风险的{quantity, plural, =1 {主机} other {主机}}", - "xpack.securitySolution.kpiHosts.riskyHosts.hostsCount": "{quantity} {quantity, plural, =1 {主机} other {主机}}", "xpack.securitySolution.lists.exceptionListImportSuccess": "已导入例外列表 {fileName}", "xpack.securitySolution.lists.referenceModalDescription": "此值列表与 ({referenceCount}) 个例外{referenceCount, plural, =1 {列表} other {列表}}关联。移除此列表将移除引用此值列表的所有例外项。", "xpack.securitySolution.lists.uploadValueListExtensionValidationMessage": "文件必须属于以下类型之一:[{fileTypes}]", @@ -29749,11 +29743,7 @@ "xpack.securitySolution.responseActionsList.list.item.wasSuccessful": "{command} 已成功完成", "xpack.securitySolution.responseActionsList.list.recordRange": "正在显示第 {range} 个(共 {total} 个){recordsLabel}", "xpack.securitySolution.responseActionsList.list.recordRangeLabel": "{records, plural, other {响应操作}}", - "xpack.securitySolution.riskInformation.explanation": "此功能利用转换,通过脚本指标聚合基于“开放”状态的检测规则告警来计算 5 天时间窗口内的 {riskEntityLower} 风险分数。该转换每小时运行一次,以根据流入的新检测规则告警更新分数。", - "xpack.securitySolution.riskInformation.introduction": "{riskEntity} 风险分数功能将显示您环境中存在风险的 {riskEntityLowerPlural}。", - "xpack.securitySolution.riskInformation.learnMore": "您可以详细了解 {riskEntity} 风险{riskScoreDocumentationLink}", "xpack.securitySolution.riskInformation.riskHeader": "{riskEntity} 风险分数范围", - "xpack.securitySolution.riskInformation.title": "如何计算 {riskEntity} 风险?", "xpack.securitySolution.riskScore.api.ingestPipeline.delete.errorMessageTitle": "无法删除采集{totalCount, plural, =1 {管道} other {管道}}", "xpack.securitySolution.riskScore.api.transforms.delete.errorMessageTitle": "无法删除{totalCount, plural, =1 {转换} other {转换}}", "xpack.securitySolution.riskScore.api.transforms.start.errorMessageTitle": "无法启动{totalCount, plural, =1 {转换} other {转换}}", @@ -29923,7 +29913,6 @@ "xpack.securitySolution.alerts.alertDetails.summary.host.agentStatus.title": "代理状态", "xpack.securitySolution.alerts.alertDetails.summary.host.hostName.title": "主机名", "xpack.securitySolution.alerts.alertDetails.summary.host.osName.title": "操作系统", - "xpack.securitySolution.alerts.alertDetails.summary.host.riskClassification": "主机风险分类", "xpack.securitySolution.alerts.alertDetails.summary.host.riskScore": "主机风险分数", "xpack.securitySolution.alerts.alertDetails.summary.host.title": "主机", "xpack.securitySolution.alerts.alertDetails.summary.ipAddresses.title": "IP 地址", @@ -29937,7 +29926,6 @@ "xpack.securitySolution.alerts.alertDetails.summary.rule.title": "规则", "xpack.securitySolution.alerts.alertDetails.summary.user.action.openUserDetailsPage": "打开用户详情页面", "xpack.securitySolution.alerts.alertDetails.summary.user.action.viewUserSummary": "查看用户摘要", - "xpack.securitySolution.alerts.alertDetails.summary.user.riskClassification": "用户风险分类", "xpack.securitySolution.alerts.alertDetails.summary.user.riskScore": "用户风险分数", "xpack.securitySolution.alerts.alertDetails.summary.user.title": "用户", "xpack.securitySolution.alerts.alertDetails.summary.user.userName.title": "用户名", @@ -32580,8 +32568,6 @@ "xpack.securitySolution.entityAnalytics.hostsRiskDashboard.hostsTableTooltip": "主机风险表不受时间范围影响。本表显示每台主机最新记录的风险分数。", "xpack.securitySolution.entityAnalytics.hostsRiskDashboard.title": "主机风险分数", "xpack.securitySolution.entityAnalytics.riskDashboard.hostsTableTooltip": "“主机风险分数”面板显示有风险主机及其最新风险分数的列表。可以在 KQL 搜索栏中使用全局筛选来筛选此列表。时间范围选取器筛选将仅显示选定时间范围内的告警,并且不筛选有风险主机列表。", - "xpack.securitySolution.entityAnalytics.riskDashboard.learnMore": "了解详情", - "xpack.securitySolution.entityAnalytics.riskDashboard.tableTooltipTitle": "处于技术预览状态", "xpack.securitySolution.entityAnalytics.riskDashboard.usersTableTooltip": "“用户风险分数”面板显示有风险用户及其最新风险分数的列表。可以在 KQL 搜索栏中使用全局筛选来筛选此列表。时间范围选取器筛选将仅显示选定时间范围内的告警,并且不筛选有风险用户列表。", "xpack.securitySolution.entityAnalytics.riskDashboard.viewAllLabel": "查看全部", "xpack.securitySolution.entityAnalytics.technicalPreviewLabel": "技术预览", @@ -32595,7 +32581,6 @@ "xpack.securitySolution.eventDetails.ctiSummary.feedNamePreposition": "来自", "xpack.securitySolution.eventDetails.ctiSummary.indicatorEnrichmentTitle": "检测到威胁匹配", "xpack.securitySolution.eventDetails.ctiSummary.indicatorEnrichmentTooltipContent": "此字段值使用您创建的规则匹配威胁情报指标。", - "xpack.securitySolution.eventDetails.ctiSummary.informationAriaLabel": "信息", "xpack.securitySolution.eventDetails.ctiSummary.investigationEnrichmentTitle": "已使用威胁情报扩充", "xpack.securitySolution.eventDetails.ctiSummary.investigationEnrichmentTooltipContent": "此字段值具有威胁情报源提供的其他信息。", "xpack.securitySolution.eventDetails.description": "描述", @@ -32935,7 +32920,6 @@ "xpack.securitySolution.host.details.overview.cloudProviderTitle": "云服务提供商", "xpack.securitySolution.host.details.overview.familyTitle": "系列", "xpack.securitySolution.host.details.overview.hostIdTitle": "主机 ID", - "xpack.securitySolution.host.details.overview.hostRiskClassification": "主机风险分类", "xpack.securitySolution.host.details.overview.hostRiskScoreTitle": "主机风险分数", "xpack.securitySolution.host.details.overview.inspectTitle": "主机概览", "xpack.securitySolution.host.details.overview.instanceIdTitle": "实例 ID", @@ -32984,7 +32968,6 @@ "xpack.securitySolution.hosts.navigation.hostRiskTitle": "主机风险", "xpack.securitySolution.hosts.navigation.sessionsTitle": "会话", "xpack.securitySolution.hosts.navigation.uncommonProcessesTitle": "不常见进程", - "xpack.securitySolution.hosts.navigaton.hostRisk.viewDashboardButtonLabel": "查看源仪表板", "xpack.securitySolution.hosts.navigaton.matrixHistogram.errorFetchingAuthenticationsData": "无法查询身份验证数据", "xpack.securitySolution.hosts.navigaton.matrixHistogram.errorFetchingEventsData": "无法查询事件数据", "xpack.securitySolution.hosts.pageTitle": "主机", @@ -32998,13 +32981,11 @@ "xpack.securitySolution.hostsRiskTable.hostNameTitle": "主机名", "xpack.securitySolution.hostsRiskTable.hostRiskScoreTitle": "主机风险分数", "xpack.securitySolution.hostsRiskTable.hostRiskTitle": "主机风险", - "xpack.securitySolution.hostsRiskTable.hostRiskToolTip": "主机风险分类由主机风险分数决定。分类为紧急或高的主机即表示存在风险。", "xpack.securitySolution.hostsRiskTable.hostsTableTooltip": "主机风险表不受 KQL 时间范围影响。本表显示每台主机最新记录的风险分数。", "xpack.securitySolution.hostsRiskTable.riskTitle": "主机风险分类", "xpack.securitySolution.hostsRiskTable.tableTitle": "主机风险", "xpack.securitySolution.hostsRiskTable.usersTableTooltip": "用户风险表不受 KQL 时间范围影响。本表显示每个用户最新记录的风险分数。", "xpack.securitySolution.hostsTable.firstLastSeenToolTip": "相对于选定日期范围", - "xpack.securitySolution.hostsTable.hostRiskToolTip": "主机风险分类由主机风险分数决定。分类为紧急或高的主机即表示存在风险。", "xpack.securitySolution.hostsTable.hostsTitle": "所有主机", "xpack.securitySolution.hostsTable.lastSeenTitle": "最后看到时间", "xpack.securitySolution.hostsTable.nameTitle": "主机名", @@ -33064,9 +33045,6 @@ "xpack.securitySolution.investigationEnrichment.requestError": "请求威胁情报时发生错误", "xpack.securitySolution.ja3.fingerprint.ja3.fingerprintLabel": "ja3", "xpack.securitySolution.kpiHosts.hosts.title": "主机", - "xpack.securitySolution.kpiHosts.riskyHosts.errorMessage": "提取有风险主机 API 时出错", - "xpack.securitySolution.kpiHosts.riskyHosts.inspectTitle": "有风险主机", - "xpack.securitySolution.kpiHosts.riskyHosts.title": "有风险主机", "xpack.securitySolution.kpiHosts.uniqueIps.destinationChartLabel": "目标", "xpack.securitySolution.kpiHosts.uniqueIps.destinationUnitLabel": "目标", "xpack.securitySolution.kpiHosts.uniqueIps.sourceChartLabel": "源", @@ -33582,11 +33560,9 @@ "xpack.securitySolution.risk_score.toast.viewDashboard": "查看仪表板", "xpack.securitySolution.riskDeprecated.entity.upgradeRiskScoreDescription": "当前数据不再受支持。请迁移您的数据并升级该模块。启用此模板后,可能需要一小时才能生成数据。", "xpack.securitySolution.riskInformation.buttonLabel": "如何计算风险分数?", - "xpack.securitySolution.riskInformation.classificationHeader": "分类", "xpack.securitySolution.riskInformation.closeBtn": "关闭", "xpack.securitySolution.riskInformation.criticalRiskDescription": "90 及以上", "xpack.securitySolution.riskInformation.informationAriaLabel": "信息", - "xpack.securitySolution.riskInformation.link": "此处", "xpack.securitySolution.riskInformation.unknownRiskDescription": "小于 20", "xpack.securitySolution.riskScore.api.ingestPipeline.create.errorMessageTitle": "无法创建采集管道", "xpack.securitySolution.riskScore.api.storedScript.create.errorMessageTitle": "无法创建存储脚本", @@ -34109,7 +34085,6 @@ "xpack.securitySolution.user.details.overview.osTitle": "操作系统", "xpack.securitySolution.user.details.overview.userDomainTitle": "域", "xpack.securitySolution.user.details.overview.userIdTitle": "用户 ID", - "xpack.securitySolution.user.details.overview.userRiskClassification": "用户风险分类", "xpack.securitySolution.user.details.overview.userRiskScoreTitle": "用户风险分数", "xpack.securitySolution.user.ipDetails.ipOverview.lastSeenTitle": "最后看到时间", "xpack.securitySolution.userDetails.failSearchDescription": "无法对用户详情执行搜索", @@ -34124,13 +34099,11 @@ "xpack.securitySolution.usersKpiAuthentications.failSearchDescription": "无法对用户 KPI 身份验证执行搜索", "xpack.securitySolution.usersRiskTable.userNameTitle": "用户名", "xpack.securitySolution.usersRiskTable.userRiskScoreTitle": "用户风险分数", - "xpack.securitySolution.usersRiskTable.userRiskToolTip": "用户风险分类由用户风险分数决定。分类为紧急或高的用户即表示存在风险。", "xpack.securitySolution.usersTable.domainTitle": "域", "xpack.securitySolution.usersTable.lastSeenTitle": "最后看到时间", "xpack.securitySolution.usersTable.riskTitle": "用户风险分类", "xpack.securitySolution.usersTable.title": "用户", "xpack.securitySolution.usersTable.userNameTitle": "用户名", - "xpack.securitySolution.usersTable.userRiskToolTip": "用户风险分类由用户风险分数决定。分类为紧急或高的用户即表示存在风险。", "xpack.securitySolution.userTab.errorFetchingsData": "无法查询用户数据", "xpack.securitySolution.visualizationActions.addToCaseSuccessContent": "已成功将可视化添加到案例", "xpack.securitySolution.visualizationActions.addToExistingCase": "添加到现有案例", diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_alerts/enrichments.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_alerts/enrichments.cy.ts index 4432a1c6c90a7..0c5662146b810 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_alerts/enrichments.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_alerts/enrichments.cy.ts @@ -33,8 +33,8 @@ import { ALERTS_URL } from '../../urls/navigation'; import { deleteRiskEngineConfiguration } from '../../tasks/api_calls/risk_engine'; import { enableRiskEngine } from '../../tasks/entity_analytics'; -const CURRENT_HOST_RISK_CLASIFICATION = 'Current host risk classification'; -const ORIGINAL_HOST_RISK_CLASIFICATION = 'Original host risk classification'; +const CURRENT_HOST_RISK_LEVEL = 'Current host risk level'; +const ORIGINAL_HOST_RISK_LEVEL = 'Original host risk level'; // TODO: https://github.com/elastic/kibana/issues/161539 describe('Enrichment', { tags: ['@ess', '@serverless', '@brokenInServerless'] }, () => { @@ -80,16 +80,16 @@ describe('Enrichment', { tags: ['@ess', '@serverless', '@brokenInServerless'] }, scrollAlertTableColumnIntoView(ACTION_COLUMN); expandFirstAlert(); cy.get(ENRICHED_DATA_ROW).contains('Low'); - cy.get(ENRICHED_DATA_ROW).contains(CURRENT_HOST_RISK_CLASIFICATION); + cy.get(ENRICHED_DATA_ROW).contains(CURRENT_HOST_RISK_LEVEL); cy.get(ENRICHED_DATA_ROW).contains('Critical').should('not.exist'); - cy.get(ENRICHED_DATA_ROW).contains(ORIGINAL_HOST_RISK_CLASIFICATION).should('not.exist'); + cy.get(ENRICHED_DATA_ROW).contains(ORIGINAL_HOST_RISK_LEVEL).should('not.exist'); closeAlertFlyout(); cy.task('esArchiverUnload', 'risk_hosts'); cy.task('esArchiverLoad', { archiveName: 'risk_hosts_updated' }); expandFirstAlert(); cy.get(ENRICHED_DATA_ROW).contains('Critical'); - cy.get(ENRICHED_DATA_ROW).contains(ORIGINAL_HOST_RISK_CLASIFICATION); + cy.get(ENRICHED_DATA_ROW).contains(ORIGINAL_HOST_RISK_LEVEL); }); }); @@ -124,16 +124,16 @@ describe('Enrichment', { tags: ['@ess', '@serverless', '@brokenInServerless'] }, scrollAlertTableColumnIntoView(ACTION_COLUMN); expandFirstAlert(); cy.get(ENRICHED_DATA_ROW).contains('Critical'); - cy.get(ENRICHED_DATA_ROW).contains(CURRENT_HOST_RISK_CLASIFICATION); + cy.get(ENRICHED_DATA_ROW).contains(CURRENT_HOST_RISK_LEVEL); cy.get(ENRICHED_DATA_ROW).contains('Low').should('not.exist'); - cy.get(ENRICHED_DATA_ROW).contains(ORIGINAL_HOST_RISK_CLASIFICATION).should('not.exist'); + cy.get(ENRICHED_DATA_ROW).contains(ORIGINAL_HOST_RISK_LEVEL).should('not.exist'); closeAlertFlyout(); cy.task('esArchiverUnload', 'risk_scores_new'); cy.task('esArchiverLoad', { archiveName: 'risk_scores_new_updated' }); expandFirstAlert(); cy.get(ENRICHED_DATA_ROW).contains('Low'); - cy.get(ENRICHED_DATA_ROW).contains(ORIGINAL_HOST_RISK_CLASIFICATION); + cy.get(ENRICHED_DATA_ROW).contains(ORIGINAL_HOST_RISK_LEVEL); }); }); }); diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/explore/dashboards/entity_analytics.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/explore/dashboards/entity_analytics.cy.ts index 39d8e1476a6cd..a14aa11bc1cdd 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/explore/dashboards/entity_analytics.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/explore/dashboards/entity_analytics.cy.ts @@ -162,7 +162,7 @@ describe('Entity Analytics Dashboard', { tags: ['@ess', '@brokenInServerless'] } cy.get(HOSTS_TABLE_ALERT_CELL).should('have.length', 5); }); - it('filters by risk classification', () => { + it('filters by risk level', () => { openRiskTableFilterAndSelectTheLowOption(); cy.get(HOSTS_DONUT_CHART).should('include.text', '1Total'); @@ -250,7 +250,7 @@ describe('Entity Analytics Dashboard', { tags: ['@ess', '@brokenInServerless'] } cy.get(USERS_TABLE_ALERT_CELL).should('have.length', 5); }); - it('filters by risk classification', () => { + it('filters by risk level', () => { openRiskTableFilterAndSelectTheLowOption(); cy.get(USERS_DONUT_CHART).should('include.text', '2Total'); @@ -382,7 +382,7 @@ describe('Entity Analytics Dashboard', { tags: ['@ess', '@brokenInServerless'] } cy.get(HOSTS_TABLE_ALERT_CELL).should('have.length', 5); }); - it('filters by risk classification', () => { + it('filters by risk level', () => { cy.get(HOSTS_DONUT_CHART).should('include.text', '6Total'); openRiskTableFilterAndSelectTheCriticalOption(); @@ -474,7 +474,7 @@ describe('Entity Analytics Dashboard', { tags: ['@ess', '@brokenInServerless'] } cy.get(USERS_TABLE_ALERT_CELL).should('have.length', 5); }); - it('filters by risk classification', () => { + it('filters by risk level', () => { cy.get(USERS_DONUT_CHART).should('include.text', '7Total'); openUserRiskTableFilterAndSelectTheLowOption(1); diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/explore/host_details/risk_tab.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/explore/host_details/risk_tab.cy.ts index 2ef24ae0df1ee..6c5af8a1601c3 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/explore/host_details/risk_tab.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/explore/host_details/risk_tab.cy.ts @@ -52,7 +52,7 @@ describe('risk tab', { tags: ['@ess', '@serverless', '@brokenInServerless'] }, ( openRiskInformationFlyout(); - cy.get(RISK_INFORMATION_FLYOUT_HEADER).contains('How is host risk calculated?'); + cy.get(RISK_INFORMATION_FLYOUT_HEADER).contains('Entity Risk Analytics'); }); }); @@ -91,7 +91,7 @@ describe('risk tab', { tags: ['@ess', '@serverless', '@brokenInServerless'] }, ( openRiskInformationFlyout(); - cy.get(RISK_INFORMATION_FLYOUT_HEADER).contains('How is host risk calculated?'); + cy.get(RISK_INFORMATION_FLYOUT_HEADER).contains('Entity Risk Analytics'); }); }); }); diff --git a/x-pack/test/security_solution_cypress/cypress/screens/entity_analytics_management.ts b/x-pack/test/security_solution_cypress/cypress/screens/entity_analytics_management.ts index e7b67db8399b7..ebdabcb67bb1e 100644 --- a/x-pack/test/security_solution_cypress/cypress/screens/entity_analytics_management.ts +++ b/x-pack/test/security_solution_cypress/cypress/screens/entity_analytics_management.ts @@ -7,7 +7,7 @@ import { getDataTestSubjectSelector } from '../helpers/common'; -export const PAGE_TITLE = '[data-test-subj="entityAnalyticsManagmentPageTitle"]'; +export const PAGE_TITLE = '[data-test-subj="entityAnalyticsManagementPageTitle"]'; export const HOST_RISK_PREVIEW_TABLE = '[data-test-subj="host-risk-preview-table"]'; From d2dbd938a30d3e9f26e613c1d57823b1eebed81f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Efe=20G=C3=BCrkan=20YALAMAN?= Date: Mon, 2 Oct 2023 18:20:06 +0200 Subject: [PATCH 11/22] [Enterprise Search] Show advanced ui configs for managed connectors (#167770) ## Summary ### Release note Self managed Search connectors now show advanced configuration in UI. Screenshot 2023-10-02 at 13 07 57 Screenshot 2023-10-02 at 13 08 12 ### Checklist - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com> --- .../connector_configuration_logic.test.ts | 37 +++++++++++++++++++ .../connector_configuration_logic.ts | 31 +++++++++++----- 2 files changed, 59 insertions(+), 9 deletions(-) diff --git a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector/connector_configuration_logic.test.ts b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector/connector_configuration_logic.test.ts index 60cc58c1db395..2360b0f9290c6 100644 --- a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector/connector_configuration_logic.test.ts +++ b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector/connector_configuration_logic.test.ts @@ -602,6 +602,24 @@ describe('ConnectorConfigurationLogic', () => { validation_errors: [], value: 'fourthBar', }, + { + default_value: '', + depends_on: [], + display: DisplayType.TEXTBOX, + is_valid: true, + key: 'restricted', + label: 'Restricted', + options: [], + order: 3, + required: false, + sensitive: true, + tooltip: '', + type: FieldType.STRING, + ui_restrictions: ['advanced'], + validations: [], + validation_errors: [], + value: 'I am restricted', + }, { default_value: '', depends_on: [{ field: 'bar', value: 'foofoo' }], @@ -811,6 +829,25 @@ describe('ConnectorConfigurationLogic', () => { validation_errors: [], value: 'fourthBar', }, + { + default_value: '', + depends_on: [], + display: DisplayType.TEXTBOX, + is_valid: true, + key: 'restricted', + label: 'Restricted', + options: [], + order: 3, + required: false, + sensitive: true, + tooltip: '', + type: FieldType.STRING, + ui_restrictions: ['advanced'], + validations: [], + validation_errors: [], + value: 'I am restricted', + }, + { default_value: '', depends_on: [{ field: 'bar', value: 'fafa' }], diff --git a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector/connector_configuration_logic.ts b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector/connector_configuration_logic.ts index 9f82f4b539344..4bf874b3b3ea0 100644 --- a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector/connector_configuration_logic.ts +++ b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector/connector_configuration_logic.ts @@ -90,7 +90,10 @@ export interface ConfigView { * or that have not had their dependencies met * */ -function sortAndFilterConnectorConfiguration(config: ConnectorConfiguration): ConfigView { +function sortAndFilterConnectorConfiguration( + config: ConnectorConfiguration, + isNative: boolean +): ConfigView { // This casting is ugly but makes all of the iteration below work for TypeScript // extract_full_html is only defined for crawlers, who don't use this config screen // we explicitly filter it out as well @@ -120,11 +123,12 @@ function sortAndFilterConnectorConfiguration(config: ConnectorConfiguration): Co entry && !isCategoryEntry(entry) && !entry.category ? { key, ...entry } : null ) .filter(isNotNullish), - config + config, + isNative ); const categories = groupedConfigView .map((category) => { - const configEntries = filterSortValidateEntries(category.configEntries, config); + const configEntries = filterSortValidateEntries(category.configEntries, config, isNative); return configEntries.length > 0 ? { ...category, configEntries } : null; }) @@ -135,12 +139,13 @@ function sortAndFilterConnectorConfiguration(config: ConnectorConfiguration): Co function filterSortValidateEntries( configEntries: Array, - config: ConnectorConfiguration + config: ConnectorConfiguration, + isNative: boolean ): ConfigEntryView[] { return configEntries .filter( (configEntry) => - (configEntry.ui_restrictions ?? []).length <= 0 && + ((configEntry.ui_restrictions ?? []).length <= 0 || !isNative) && dependenciesSatisfied(configEntry.depends_on, config) ) .sort((a, b) => { @@ -373,12 +378,20 @@ export const ConnectorConfigurationLogic = kea< }), selectors: ({ selectors }) => ({ configView: [ - () => [selectors.configState], - (configState: ConnectorConfiguration) => sortAndFilterConnectorConfiguration(configState), + () => [selectors.configState, selectors.index], + (configState: ConnectorConfiguration, index: FetchIndexApiResponse) => + sortAndFilterConnectorConfiguration( + configState, + isConnectorIndex(index) ? index.connector.is_native : false + ), ], localConfigView: [ - () => [selectors.localConfigState], - (configState) => sortAndFilterConnectorConfiguration(configState), + () => [selectors.localConfigState, selectors.index], + (configState: ConnectorConfiguration, index: FetchIndexApiResponse) => + sortAndFilterConnectorConfiguration( + configState, + isConnectorIndex(index) ? index.connector.is_native : false + ), ], }), }); From 972d1da4f3d1833245f0988cbe1cdcc9eba93a3b Mon Sep 17 00:00:00 2001 From: Alison Goryachev Date: Mon, 2 Oct 2023 12:22:31 -0400 Subject: [PATCH 12/22] [Management] Update management landing page copy (#166732) --- .../cards_navigation/src/cards_navigation.tsx | 3 +- .../cards_navigation/src/consts.tsx | 33 +++++++++---------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/packages/kbn-management/cards_navigation/src/cards_navigation.tsx b/packages/kbn-management/cards_navigation/src/cards_navigation.tsx index cc6455c2e6b66..b88fae02aeeaa 100644 --- a/packages/kbn-management/cards_navigation/src/cards_navigation.tsx +++ b/packages/kbn-management/cards_navigation/src/cards_navigation.tsx @@ -112,7 +112,8 @@ export const CardsNavigation = ({ defaultMessage: 'Management', })} description={i18n.translate('management.landing.withCardNavigation.pageDescription', { - defaultMessage: 'Manage your indices, data views, saved objects, settings, and more.', + defaultMessage: + 'Manage data and indices, oversee rules and connectors, organize saved objects and files, and create API keys in a central location.', })} /> diff --git a/packages/kbn-management/cards_navigation/src/consts.tsx b/packages/kbn-management/cards_navigation/src/consts.tsx index 03abf7e3cd407..94001f1c1acd4 100644 --- a/packages/kbn-management/cards_navigation/src/consts.tsx +++ b/packages/kbn-management/cards_navigation/src/consts.tsx @@ -46,7 +46,8 @@ export const appDefinitions: Record = { description: i18n.translate( 'management.landing.withCardNavigation.indexmanagementDescription', { - defaultMessage: 'Update your Elasticsearch indices individually or in bulk.', + defaultMessage: + 'Configure and maintain your Elasticsearch indices for data storage and retrieval.', } ), icon: , @@ -54,8 +55,7 @@ export const appDefinitions: Record = { [appIds.TRANSFORM]: { category: appCategories.DATA, description: i18n.translate('management.landing.withCardNavigation.transformDescription', { - defaultMessage: - 'Transforms pivot indices into summarized, entity-centric indices, or create an indexed view of the latest documents.', + defaultMessage: 'Pivot your data or copy the latest documents into an entity-centric index.', }), icon: , }, @@ -64,8 +64,7 @@ export const appDefinitions: Record = { description: i18n.translate( 'management.landing.withCardNavigation.ingestPipelinesDescription', { - defaultMessage: - 'Use pipelines to remove or transform fields, extract values from text, and enrich your data before indexing.', + defaultMessage: 'Remove fields, extract values, and perform transformations on your data.', } ), icon: , @@ -73,8 +72,7 @@ export const appDefinitions: Record = { [appIds.DATA_VIEWS]: { category: appCategories.DATA, description: i18n.translate('management.landing.withCardNavigation.dataViewsDescription', { - defaultMessage: - 'Create and manage the data views that help you retrieve your data from Elasticsearch.', + defaultMessage: 'Create and manage the Elasticsearch data you selected for exploration.', }), icon: , }, @@ -89,7 +87,8 @@ export const appDefinitions: Record = { [appIds.PIPELINES]: { category: appCategories.DATA, description: i18n.translate('management.landing.withCardNavigation.ingestDescription', { - defaultMessage: 'Manage Logstash event processing and see the result visually.', + defaultMessage: + 'Manage and view the Logstash event processing pipeline from inputs to outputs.', }), icon: , }, @@ -97,14 +96,14 @@ export const appDefinitions: Record = { [appIds.RULES]: { category: appCategories.ALERTS, description: i18n.translate('management.landing.withCardNavigation.rulesDescription', { - defaultMessage: 'Detect conditions using rules.', + defaultMessage: 'Define when to generate alerts and notifications.', }), icon: , }, [appIds.CONNECTORS]: { category: appCategories.ALERTS, description: i18n.translate('management.landing.withCardNavigation.connectorsDescription', { - defaultMessage: 'Connect third-party software with your alerting data.', + defaultMessage: 'Configure connections to third party systems for use in cases and rules.', }), icon: , }, @@ -113,7 +112,8 @@ export const appDefinitions: Record = { description: i18n.translate( 'management.landing.withCardNavigation.maintenanceWindowsDescription', { - defaultMessage: 'Suppress rule notifications for scheduled periods of time.', + defaultMessage: + 'Suppress rule notifications during scheduled times for maintenance, updates, and other system tasks.', } ), icon: , @@ -122,29 +122,28 @@ export const appDefinitions: Record = { [appIds.SAVED_OBJECTS]: { category: appCategories.CONTENT, description: i18n.translate('management.landing.withCardNavigation.objectsDescription', { - defaultMessage: - 'Manage and share your saved objects. To edit the underlying data of an object, go to its associated application.', + defaultMessage: 'Manage your saved dashboards, maps, data views, and Canvas workpads.', }), icon: , }, [appIds.FILES_MANAGEMENT]: { category: appCategories.CONTENT, description: i18n.translate('management.landing.withCardNavigation.fileManagementDescription', { - defaultMessage: 'Any files created will be listed here.', + defaultMessage: 'Access all files that you uploaded.', }), icon: , }, [appIds.REPORTING]: { category: appCategories.CONTENT, description: i18n.translate('management.landing.withCardNavigation.reportingDescription', { - defaultMessage: 'Get reports generated in applications.', + defaultMessage: 'Manage generated PDF, PNG and CSV reports.', }), icon: , }, [appIds.TAGS]: { category: appCategories.CONTENT, description: i18n.translate('management.landing.withCardNavigation.tagsDescription', { - defaultMessage: 'Use tags to categorize and easily find your objects.', + defaultMessage: 'Organize, search, and filter your saved objects by specific criteria.', }), icon: , }, @@ -152,7 +151,7 @@ export const appDefinitions: Record = { [appIds.API_KEYS]: { category: appCategories.OTHER, description: i18n.translate('management.landing.withCardNavigation.apiKeysDescription', { - defaultMessage: 'Allow applications to access Elastic on your behalf.', + defaultMessage: 'Allow programmatic access to your project data and capabilities.', }), icon: , }, From 6d343316a4f60df96e598500c4e636e8ce48d053 Mon Sep 17 00:00:00 2001 From: Kibana Machine <42973632+kibanamachine@users.noreply.github.com> Date: Mon, 2 Oct 2023 12:35:50 -0400 Subject: [PATCH 13/22] skip failing test suite (#167142) --- test/plugin_functional/test_suites/core_plugins/rendering.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/test/plugin_functional/test_suites/core_plugins/rendering.ts b/test/plugin_functional/test_suites/core_plugins/rendering.ts index f54dcb6c13c68..7bf1522a767bd 100644 --- a/test/plugin_functional/test_suites/core_plugins/rendering.ts +++ b/test/plugin_functional/test_suites/core_plugins/rendering.ts @@ -61,7 +61,8 @@ export default function ({ getService }: PluginFunctionalProviderContext) { return window.__RENDERING_SESSION__; }); - describe('rendering service', () => { + // Failing: See https://github.com/elastic/kibana/issues/167142 + describe.skip('rendering service', () => { it('exposes plugin config settings to authenticated users', async () => { await navigateTo('/render/core'); const injectedMetadata = await getInjectedMetadata(); From 45771ffc9245e6be0f731d99f0d074495676cfd8 Mon Sep 17 00:00:00 2001 From: Yngrid Coello Date: Mon, 2 Oct 2023 18:43:14 +0200 Subject: [PATCH 14/22] [Logs onboarding] Explore logs button should have different states (#167409) Closes https://github.com/elastic/kibana/issues/166009. When system integration is installed successfully we should be able to redirect the user to logs explorer with the `System integration` selected https://github.com/elastic/kibana/assets/1313018/7a1d7457-00e8-4399-9332-3ea7af2b0145 When system integration installation failed we should be able to redirect the user to logs explorer with `All logs` selected https://github.com/elastic/kibana/assets/1313018/e13f69ab-adb4-460c-84cf-d9971ce56b9f When system integration is being installed, Explore Logs button should be disabled https://github.com/elastic/kibana/assets/1313018/5dd04859-e75b-49ed-9f47-5ad2120eb9d8 ### How to test 1. Log in as `viewer` user 2. Enter [system logs](https://deploy-kibana-pr167409.kb.us-west2.gcp.elastic-cloud.com/app/observabilityOnboarding/systemLogs) onboarding flow 3. Verify System integration was not installed 4. Click on `Explore Logs` 5. Verify you are being redirected to Log explorer with `All logs` being selected 6. Logout and log in again as `admin` user 7. Enter [system logs](https://deploy-kibana-pr167409.kb.us-west2.gcp.elastic-cloud.com/app/observabilityOnboarding/systemLogs) onboarding flow 8. Verify system integration was installed successfully 9. Click on `Explore Logs` 10. Verify you are being redirected to Log explorer with `[system]` being selected --- .../e2e/cypress/e2e/logs/system_logs.cy.ts | 46 ++++++++++++++++--- .../app/system_logs/install_elastic_agent.tsx | 42 +++++++++++++---- .../system_logs/system_integration_banner.tsx | 14 ++++-- 3 files changed, 84 insertions(+), 18 deletions(-) diff --git a/x-pack/plugins/observability_onboarding/e2e/cypress/e2e/logs/system_logs.cy.ts b/x-pack/plugins/observability_onboarding/e2e/cypress/e2e/logs/system_logs.cy.ts index 41347191561ca..e587a77e81749 100644 --- a/x-pack/plugins/observability_onboarding/e2e/cypress/e2e/logs/system_logs.cy.ts +++ b/x-pack/plugins/observability_onboarding/e2e/cypress/e2e/logs/system_logs.cy.ts @@ -644,14 +644,48 @@ describe('[Logs onboarding] System logs', () => { .contains('Logs are being shipped!') .should('exist'); }); + }); - it('when user clicks on Explore Logs it navigates to observability log explorer', () => { - cy.wait('@systemIntegrationInstall'); - cy.wait('@checkOnboardingProgress'); - cy.getByTestSubj('obltOnboardingExploreLogs').should('exist').click(); + describe('Explore Logs', () => { + describe('when integration installation fails', () => { + beforeEach(() => { + cy.deleteIntegration('system'); + cy.intercept('GET', '/api/fleet/epm/packages/system', { + statusCode: 500, + body: { + message: 'Internal error', + }, + }).as('systemIntegrationInstall'); + cy.loginAsLogMonitoringUser(); + cy.visitKibana('/app/observabilityOnboarding/systemLogs'); + }); + + it('when users clicks on Explore logs they navigate to log explorer - All logs', () => { + cy.wait('@systemIntegrationInstall'); + cy.getByTestSubj('obltOnboardingExploreLogs').should('exist').click(); - cy.url().should('include', '/app/observability-log-explorer'); - cy.get('button').contains('[System] syslog').should('exist'); + cy.url().should('include', '/app/observability-log-explorer'); + cy.get('button').contains('All logs').should('exist'); + }); + }); + + describe('when integration installation succeed', () => { + beforeEach(() => { + cy.deleteIntegration('system'); + cy.intercept('GET', '/api/fleet/epm/packages/system').as( + 'systemIntegrationInstall' + ); + cy.loginAsLogMonitoringUser(); + cy.visitKibana('/app/observabilityOnboarding/systemLogs'); + }); + + it('when users clicks on Explore logs they navigate to log explorer and System integration is selected', () => { + cy.wait('@systemIntegrationInstall'); + cy.getByTestSubj('obltOnboardingExploreLogs').should('exist').click(); + + cy.url().should('include', '/app/observability-log-explorer'); + cy.get('button').contains('[System] syslog').should('exist'); + }); }); }); }); diff --git a/x-pack/plugins/observability_onboarding/public/components/app/system_logs/install_elastic_agent.tsx b/x-pack/plugins/observability_onboarding/public/components/app/system_logs/install_elastic_agent.tsx index 4d172966075dc..385ba48e9b3be 100644 --- a/x-pack/plugins/observability_onboarding/public/components/app/system_logs/install_elastic_agent.tsx +++ b/x-pack/plugins/observability_onboarding/public/components/app/system_logs/install_elastic_agent.tsx @@ -13,35 +13,40 @@ import { EuiSpacer, EuiText, } from '@elastic/eui'; -import { i18n } from '@kbn/i18n'; -import { useKibana } from '@kbn/kibana-react-plugin/public'; -import { default as React, useCallback, useEffect, useState } from 'react'; import { + AllDatasetsLocatorParams, + ALL_DATASETS_LOCATOR_ID, SingleDatasetLocatorParams, SINGLE_DATASET_LOCATOR_ID, } from '@kbn/deeplinks-observability/locators'; -import { ObservabilityOnboardingPluginSetupDeps } from '../../../plugin'; +import { i18n } from '@kbn/i18n'; +import { useKibana } from '@kbn/kibana-react-plugin/public'; +import { default as React, useCallback, useEffect, useState } from 'react'; import { useWizard } from '.'; import { FETCH_STATUS, useFetcher } from '../../../hooks/use_fetcher'; import { useKibanaNavigation } from '../../../hooks/use_kibana_navigation'; +import { ObservabilityOnboardingPluginSetupDeps } from '../../../plugin'; import { ElasticAgentPlatform, getElasticAgentSetupCommand, } from '../../shared/get_elastic_agent_setup_command'; import { + EuiStepStatus, InstallElasticAgentSteps, ProgressStepId, - EuiStepStatus, } from '../../shared/install_elastic_agent_steps'; import { StepPanel, StepPanelContent, StepPanelFooter, } from '../../shared/step_panel'; -import { ApiKeyBanner } from '../custom_logs/api_key_banner'; -import { WindowsInstallStep } from '../../shared/windows_install_step'; -import { SystemIntegrationBanner } from './system_integration_banner'; import { TroubleshootingLink } from '../../shared/troubleshooting_link'; +import { WindowsInstallStep } from '../../shared/windows_install_step'; +import { ApiKeyBanner } from '../custom_logs/api_key_banner'; +import { + SystemIntegrationBanner, + SystemIntegrationBannerState, +} from './system_integration_banner'; export function InstallElasticAgent() { const { @@ -52,19 +57,37 @@ export function InstallElasticAgent() { share.url.locators.get( SINGLE_DATASET_LOCATOR_ID ); + const allDataSetsLocator = share.url.locators.get( + ALL_DATASETS_LOCATOR_ID + ); const { navigateToKibanaUrl } = useKibanaNavigation(); const { getState, setState } = useWizard(); const wizardState = getState(); const [elasticAgentPlatform, setElasticAgentPlatform] = useState('linux-tar'); + const [systemIntegrationStatus, setSystemIntegrationStatus] = + useState('pending'); + + const onIntegrationStatusChange = useCallback( + (status: SystemIntegrationBannerState) => { + setSystemIntegrationStatus(status); + }, + [] + ); const datasetName = 'system-logs'; function onBack() { navigateToKibanaUrl('/app/observabilityOnboarding'); } + async function onContinue() { + if (systemIntegrationStatus === 'rejected') { + await allDataSetsLocator!.navigate({}); + return; + } + await singleDatasetLocator!.navigate({ integration: 'system', dataset: 'system.syslog', @@ -216,6 +239,7 @@ export function InstallElasticAgent() { iconType="magnifyWithPlus" onClick={onContinue} data-test-subj="obltOnboardingExploreLogs" + disabled={systemIntegrationStatus === 'pending'} > {i18n.translate( 'xpack.observability_onboarding.steps.exploreLogs', @@ -241,7 +265,7 @@ export function InstallElasticAgent() {

- + {apiKeyEncoded && onboardingId ? ( void; +}) { const { navigateToAppUrl } = useKibanaNavigation(); const [integrationVersion, setIntegrationVersion] = useState(); const [error, setError] = useState(); @@ -31,15 +37,17 @@ export function SystemIntegrationBanner() { const onIntegrationCreationSuccess = useCallback( ({ version }: { version?: string }) => { setIntegrationVersion(version); + onStatusChange('resolved'); }, - [] + [onStatusChange] ); const onIntegrationCreationFailure = useCallback( (e: SystemIntegrationError) => { setError(e); + onStatusChange('rejected'); }, - [] + [onStatusChange] ); const { performRequest, requestState } = useInstallSystemIntegration({ From daac511a65644c9bbb5cb83883ea046724a72a43 Mon Sep 17 00:00:00 2001 From: Jon Date: Mon, 2 Oct 2023 11:49:33 -0500 Subject: [PATCH 15/22] [ci] Add timeout to pick test groups step (#167718) Partially fixes https://buildkite.com/elastic/kibana-on-merge/builds/36020#018ae06d-ac89-480a-9098-e10b9ad554f3 --- .buildkite/pipelines/code_coverage/daily.yml | 1 + .../pipelines/es_serverless/verify_es_serverless_image.yml | 1 + .buildkite/pipelines/es_snapshots/verify.yml | 1 + .buildkite/pipelines/on_merge.yml | 1 + .buildkite/pipelines/pull_request/base.yml | 1 + 5 files changed, 5 insertions(+) diff --git a/.buildkite/pipelines/code_coverage/daily.yml b/.buildkite/pipelines/code_coverage/daily.yml index ab6fdfc29ad87..20b6b505306af 100644 --- a/.buildkite/pipelines/code_coverage/daily.yml +++ b/.buildkite/pipelines/code_coverage/daily.yml @@ -11,6 +11,7 @@ steps: label: 'Pick Test Group Run Order' agents: queue: kibana-default + timeout_in_minutes: 10 env: FTR_CONFIGS_DEPS: '' LIMIT_CONFIG_TYPE: 'unit,integration' diff --git a/.buildkite/pipelines/es_serverless/verify_es_serverless_image.yml b/.buildkite/pipelines/es_serverless/verify_es_serverless_image.yml index f6cb21abdb682..ff38ab629c43a 100644 --- a/.buildkite/pipelines/es_serverless/verify_es_serverless_image.yml +++ b/.buildkite/pipelines/es_serverless/verify_es_serverless_image.yml @@ -35,6 +35,7 @@ steps: command: .buildkite/scripts/steps/test/pick_test_group_run_order.sh agents: queue: kibana-default + timeout_in_minutes: 10 env: FTR_CONFIGS_SCRIPT: 'TEST_ES_SERVERLESS_IMAGE=$ES_SERVERLESS_IMAGE .buildkite/scripts/steps/test/ftr_configs.sh' FTR_CONFIG_PATTERNS: '**/test_serverless/**' diff --git a/.buildkite/pipelines/es_snapshots/verify.yml b/.buildkite/pipelines/es_snapshots/verify.yml index a464fd41455ba..d48f3052c133b 100755 --- a/.buildkite/pipelines/es_snapshots/verify.yml +++ b/.buildkite/pipelines/es_snapshots/verify.yml @@ -35,6 +35,7 @@ steps: label: 'Pick Test Group Run Order' agents: queue: kibana-default + timeout_in_minutes: 10 env: JEST_UNIT_SCRIPT: '.buildkite/scripts/steps/test/jest.sh' JEST_INTEGRATION_SCRIPT: '.buildkite/scripts/steps/test/jest_integration.sh' diff --git a/.buildkite/pipelines/on_merge.yml b/.buildkite/pipelines/on_merge.yml index 133004f468948..ed33671ee2ed1 100644 --- a/.buildkite/pipelines/on_merge.yml +++ b/.buildkite/pipelines/on_merge.yml @@ -69,6 +69,7 @@ steps: label: 'Pick Test Group Run Order' agents: queue: kibana-default + timeout_in_minutes: 10 env: JEST_UNIT_SCRIPT: '.buildkite/scripts/steps/test/jest.sh' JEST_INTEGRATION_SCRIPT: '.buildkite/scripts/steps/test/jest_integration.sh' diff --git a/.buildkite/pipelines/pull_request/base.yml b/.buildkite/pipelines/pull_request/base.yml index 158c22c0bb0c5..977e46e2beaea 100644 --- a/.buildkite/pipelines/pull_request/base.yml +++ b/.buildkite/pipelines/pull_request/base.yml @@ -47,6 +47,7 @@ steps: label: 'Pick Test Group Run Order' agents: queue: kibana-default + timeout_in_minutes: 10 env: JEST_UNIT_SCRIPT: '.buildkite/scripts/steps/test/jest.sh' JEST_INTEGRATION_SCRIPT: '.buildkite/scripts/steps/test/jest_integration.sh' From b41dd04aefedb845a573f14c2809913d9f51ed9d Mon Sep 17 00:00:00 2001 From: Faisal Kanout Date: Mon, 2 Oct 2023 20:09:03 +0300 Subject: [PATCH 16/22] [AO][SERVERLESS] Fix Custom Threshold rule tests for Serverless (#167644) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary Revert the revert for https://github.com/elastic/kibana/pull/166942 💪🏻 Fixes #165569 Fixes #166617 Fixes #166618 Fixes #166619 Fixes #166620 --- .../composable/component/base.json | 25 ++ .../composable/component/event.json | 24 ++ .../composable/component/host.json | 189 +++++++++++++++ .../composable/component/metricset.json | 18 ++ .../composable/component/system.json | 69 ++++++ .../src/data_sources/composable/template.json | 52 +++++ .../src/data_sources/fake_hosts/index.ts | 2 +- .../fake_hosts/index_template_def.ts | 38 +++ .../src/data_sources/fake_hosts/template.ts | 218 ------------------ .../src/lib/install_template.ts | 28 --- .../src/lib/manage_template.ts | 59 +++++ .../packages/kbn-infra-forge/src/lib/queue.ts | 4 +- x-pack/packages/kbn-infra-forge/src/run.ts | 7 +- x-pack/packages/kbn-infra-forge/tsconfig.json | 8 +- .../custom_threshold_rule/avg_pct_fired.ts | 7 +- .../custom_eq_avg_bytes_fired.ts | 7 +- .../documents_count_fired.ts | 7 +- .../custom_threshold_rule/group_by_fired.ts | 7 +- .../observability/metric_threshold_rule.ts | 6 + .../custom_threshold_rule/avg_pct_fired.ts | 23 +- .../custom_threshold_rule/avg_pct_no_data.ts | 11 +- .../custom_eq_avg_bytes_fired.ts | 16 +- .../documents_count_fired.ts | 17 +- .../custom_threshold_rule/group_by_fired.ts | 19 +- 24 files changed, 561 insertions(+), 300 deletions(-) create mode 100644 x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/base.json create mode 100644 x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/event.json create mode 100644 x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/host.json create mode 100644 x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/metricset.json create mode 100644 x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/system.json create mode 100644 x-pack/packages/kbn-infra-forge/src/data_sources/composable/template.json create mode 100644 x-pack/packages/kbn-infra-forge/src/data_sources/fake_hosts/index_template_def.ts delete mode 100644 x-pack/packages/kbn-infra-forge/src/data_sources/fake_hosts/template.ts delete mode 100644 x-pack/packages/kbn-infra-forge/src/lib/install_template.ts create mode 100644 x-pack/packages/kbn-infra-forge/src/lib/manage_template.ts diff --git a/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/base.json b/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/base.json new file mode 100644 index 0000000000000..cebc9c2971745 --- /dev/null +++ b/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/base.json @@ -0,0 +1,25 @@ +{ + "_meta": { + "documentation": "https://www.elastic.co/guide/en/ecs/current/ecs-base.html", + "ecs_version": "8.0.0" + }, + "template": { + "mappings": { + "properties": { + "@timestamp": { + "type": "date" + }, + "labels": { + "type": "object" + }, + "message": { + "type": "match_only_text" + }, + "tags": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } +} diff --git a/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/event.json b/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/event.json new file mode 100644 index 0000000000000..f235248f3ee83 --- /dev/null +++ b/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/event.json @@ -0,0 +1,24 @@ +{ + "_meta": { + "documentation": "https://www.elastic.co/guide/en/ecs/current/ecs-event.html", + "ecs_version": "8.0.0" + }, + "template": { + "mappings": { + "properties": { + "event": { + "properties": { + "dataset": { + "ignore_above": 1024, + "type": "keyword" + }, + "module": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + } + } +} diff --git a/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/host.json b/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/host.json new file mode 100644 index 0000000000000..cc370a5270eba --- /dev/null +++ b/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/host.json @@ -0,0 +1,189 @@ +{ + "_meta": { + "documentation": "https://www.elastic.co/guide/en/ecs/current/ecs-host.html", + "ecs_version": "8.0.0" + }, + "template": { + "mappings": { + "properties": { + "host": { + "properties": { + "architecture": { + "ignore_above": 1024, + "type": "keyword" + }, + "cpu": { + "properties": { + "usage": { + "scaling_factor": 1000, + "type": "scaled_float" + } + } + }, + "disk": { + "properties": { + "read": { + "properties": { + "bytes": { + "type": "long" + } + } + }, + "write": { + "properties": { + "bytes": { + "type": "long" + } + } + } + } + }, + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_code": { + "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" + }, + "postal_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "timezone": { + "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" + }, + "network": { + "properties": { + "egress": { + "properties": { + "bytes": { + "type": "long" + }, + "packets": { + "type": "long" + } + } + }, + "ingress": { + "properties": { + "bytes": { + "type": "long" + }, + "packets": { + "type": "long" + } + } + } + } + }, + "os": { + "properties": { + "family": { + "ignore_above": 1024, + "type": "keyword" + }, + "full": { + "fields": { + "text": { + "type": "match_only_text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "kernel": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "fields": { + "text": { + "type": "match_only_text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "platform": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "uptime": { + "type": "long" + } + } + } + } + } + } +} diff --git a/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/metricset.json b/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/metricset.json new file mode 100644 index 0000000000000..06ef8b57bf4b3 --- /dev/null +++ b/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/metricset.json @@ -0,0 +1,18 @@ +{ + "_meta": { + "ecs_version": "8.0.0" + }, + "template": { + "mappings": { + "properties": { + "metricset": { + "properties": { + "interval": { + "type": "long" + } + } + } + } + } + } +} diff --git a/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/system.json b/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/system.json new file mode 100644 index 0000000000000..46335a6da442c --- /dev/null +++ b/x-pack/packages/kbn-infra-forge/src/data_sources/composable/component/system.json @@ -0,0 +1,69 @@ +{ + "_meta": { + "ecs_version": "8.0.0" + }, + "template": { + "mappings": { + "properties": { + "system": { + "properties": { + "cpu": { + "properties": { + "cores": { + "type": "integer" + }, + "system": { + "properties": { + "pct": { + "type": "float" + } + } + }, + "total": { + "properties": { + "norm": { + "properties": { + "pct": { + "type": "float" + } + } + } + } + }, + "user": { + "properties": { + "pct": { + "type": "float" + } + } + } + } + }, + "network": { + "properties": { + "in": { + "properties": { + "bytes": { + "type": "long" + } + } + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "out": { + "properties": { + "bytes": { + "type": "long" + } + } + } + } + } + } + } + } + } + } +} diff --git a/x-pack/packages/kbn-infra-forge/src/data_sources/composable/template.json b/x-pack/packages/kbn-infra-forge/src/data_sources/composable/template.json new file mode 100644 index 0000000000000..8064e7866e5f6 --- /dev/null +++ b/x-pack/packages/kbn-infra-forge/src/data_sources/composable/template.json @@ -0,0 +1,52 @@ +{ + "_meta": { + "description": "Sample composable template that includes all ECS fields", + "ecs_version": "8.0.0" + }, + "composed_of": [ + "ecs_8.0.0_base", + "ecs_8.0.0_event", + "ecs_8.0.0_host", + "ecs_8.0.0_metricset", + "ecs_8.0.0_system" + ], + "index_patterns": [ + "kbn-data-forge-fake_hosts" + ], + "priority": 1, + "template": { + "mappings": { + "_meta": { + "version": "1.6.0" + }, + "date_detection": false, + "dynamic_templates": [ + { + "strings_as_keyword": { + "mapping": { + "fields": { + "text": { + "norms": false, + "type": "text" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "match_mapping_type": "string" + } + } + ] + }, + "settings": { + "index": { + "codec": "best_compression", + "mapping": { + "total_fields": { + "limit": 2000 + } + } + } + } + } +} diff --git a/x-pack/packages/kbn-infra-forge/src/data_sources/fake_hosts/index.ts b/x-pack/packages/kbn-infra-forge/src/data_sources/fake_hosts/index.ts index f6b685077ec6a..fe969726499b4 100644 --- a/x-pack/packages/kbn-infra-forge/src/data_sources/fake_hosts/index.ts +++ b/x-pack/packages/kbn-infra-forge/src/data_sources/fake_hosts/index.ts @@ -8,7 +8,7 @@ import lodash from 'lodash'; import type { Moment } from 'moment'; -export { template } from './template'; +export { indexTemplate } from './index_template_def'; const createGroupIndex = (index: number) => Math.floor(index / 1000) * 1000; diff --git a/x-pack/packages/kbn-infra-forge/src/data_sources/fake_hosts/index_template_def.ts b/x-pack/packages/kbn-infra-forge/src/data_sources/fake_hosts/index_template_def.ts new file mode 100644 index 0000000000000..ab3876edabf5a --- /dev/null +++ b/x-pack/packages/kbn-infra-forge/src/data_sources/fake_hosts/index_template_def.ts @@ -0,0 +1,38 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import * as rt from 'io-ts'; +import base from '../composable/component/base.json'; +import event from '../composable/component/event.json'; +import host from '../composable/component/host.json'; +import metricset from '../composable/component/metricset.json'; +import system from '../composable/component/system.json'; + +import template from '../composable/template.json'; +const IndexTemplateDefRT = rt.type({ + namespace: rt.string, + template: rt.UnknownRecord, + components: rt.array(rt.type({ name: rt.string, template: rt.UnknownRecord })), +}); + +export type IndexTemplateDef = rt.TypeOf; + +const ECS_VERSION = template._meta.ecs_version; + +const components = [ + { name: `fake_hosts_${ECS_VERSION}_base`, template: base }, + { name: `fake_hosts_${ECS_VERSION}_event`, template: event }, + { name: `fake_hosts_${ECS_VERSION}_host`, template: host }, + { name: `fake_hosts_${ECS_VERSION}_metricset`, template: metricset }, + { name: `fake_hosts_${ECS_VERSION}_system`, template: system }, +]; + +export const indexTemplate: IndexTemplateDef = { + namespace: 'fake_hosts', + template: { ...template, composed_of: components.map(({ name }) => name) }, + components, +}; diff --git a/x-pack/packages/kbn-infra-forge/src/data_sources/fake_hosts/template.ts b/x-pack/packages/kbn-infra-forge/src/data_sources/fake_hosts/template.ts deleted file mode 100644 index 145002606a789..0000000000000 --- a/x-pack/packages/kbn-infra-forge/src/data_sources/fake_hosts/template.ts +++ /dev/null @@ -1,218 +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 - * 2.0; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -export const template = { - order: 1, - index_patterns: ['kbn-data-forge*'], - settings: { - index: { - mapping: { - total_fields: { - limit: '10000', - }, - }, - number_of_shards: '1', - number_of_replicas: '0', - query: { - default_field: ['message', 'labels.*', 'event.*'], - }, - }, - }, - mappings: { - dynamic_templates: [ - { - labels: { - path_match: 'labels.*', - mapping: { - type: 'keyword', - }, - match_mapping_type: 'string', - }, - }, - { - strings_as_keyword: { - mapping: { - ignore_above: 1024, - type: 'keyword', - }, - match_mapping_type: 'string', - }, - }, - ], - date_detection: false, - properties: { - '@timestamp': { - type: 'date', - }, - tags: { - type: 'keyword', - }, - metricset: { - properties: { - period: { - type: 'long', - }, - }, - }, - host: { - properties: { - name: { - type: 'keyword', - ignore_above: 256, - }, - network: { - properties: { - name: { - type: 'keyword', - ignore_above: 256, - }, - }, - }, - }, - }, - event: { - properties: { - dataset: { - type: 'keyword', - ignore_above: 256, - }, - module: { - type: 'keyword', - ignore_above: 256, - }, - }, - }, - system: { - properties: { - cpu: { - properties: { - cores: { - type: 'long', - }, - total: { - properties: { - norm: { - properties: { - pct: { - scaling_factor: 1000, - type: 'scaled_float', - }, - }, - }, - }, - }, - user: { - properties: { - pct: { - scaling_factor: 1000, - type: 'scaled_float', - }, - norm: { - properties: { - pct: { - scaling_factor: 1000, - type: 'scaled_float', - }, - }, - }, - }, - }, - system: { - properties: { - pct: { - scaling_factor: 1000, - type: 'scaled_float', - }, - }, - }, - }, - }, - network: { - properties: { - name: { - type: 'keyword', - ignore_above: 256, - }, - in: { - properties: { - bytes: { - type: 'long', - }, - }, - }, - out: { - properties: { - bytes: { - type: 'long', - }, - }, - }, - }, - }, - }, - }, - container: { - properties: { - id: { - type: 'keyword', - ignore_above: 256, - }, - name: { - type: 'keyword', - ignore_above: 256, - }, - cpu: { - properties: { - cores: { - type: 'long', - }, - total: { - properties: { - norm: { - properties: { - pct: { - scaling_factor: 1000, - type: 'scaled_float', - }, - }, - }, - }, - }, - user: { - properties: { - pct: { - scaling_factor: 1000, - type: 'scaled_float', - }, - norm: { - properties: { - pct: { - scaling_factor: 1000, - type: 'scaled_float', - }, - }, - }, - }, - }, - system: { - properties: { - pct: { - scaling_factor: 1000, - type: 'scaled_float', - }, - }, - }, - }, - }, - }, - }, - }, - }, - aliases: { - 'metrics-fake_hosts': {}, - }, -}; diff --git a/x-pack/packages/kbn-infra-forge/src/lib/install_template.ts b/x-pack/packages/kbn-infra-forge/src/lib/install_template.ts deleted file mode 100644 index 02e9f1cb8442d..0000000000000 --- a/x-pack/packages/kbn-infra-forge/src/lib/install_template.ts +++ /dev/null @@ -1,28 +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 - * 2.0; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -import type { Client } from '@elastic/elasticsearch'; -import type { ToolingLog } from '@kbn/tooling-log'; - -export function installTemplate( - client: Client, - template: object, - namespace: string, - logger: ToolingLog -) { - logger.debug(`installTemplate > template name: kbn-data-forge-${namespace}`); - return client.indices - .putTemplate({ name: `kbn-data-forge-${namespace}`, body: template }) - .catch((error: any) => logger.error(`installTemplate > ${JSON.stringify(error)}`)); -} - -export function deleteTemplate(client: Client, namespace: string, logger: ToolingLog) { - logger.debug(`deleteTemplate > template name: kbn-data-forge-${namespace}`); - return client.indices - .deleteTemplate({ name: `kbn-data-forge-${namespace}` }) - .catch((error: any) => logger.error(`deleteTemplate > ${JSON.stringify(error)}`)); -} diff --git a/x-pack/packages/kbn-infra-forge/src/lib/manage_template.ts b/x-pack/packages/kbn-infra-forge/src/lib/manage_template.ts new file mode 100644 index 0000000000000..722d1cb0b8ac4 --- /dev/null +++ b/x-pack/packages/kbn-infra-forge/src/lib/manage_template.ts @@ -0,0 +1,59 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import type { Client } from '@elastic/elasticsearch'; +import type { ToolingLog } from '@kbn/tooling-log'; +import { IndexTemplateDef } from '../data_sources/fake_hosts/index_template_def'; + +export async function installTemplate( + client: Client, + template: IndexTemplateDef, + namespace: string, + logger: ToolingLog +) { + logger.info(`Installing index templates (${namespace})`); + const componentNames = template.components.map(({ name }) => name); + logger.info(`Installing components for ${template.namespace} (${componentNames})`); + for (const component of template.components) { + await client.cluster + .putComponentTemplate({ + name: component.name, + ...component.template, + }) + .catch((error) => logger.error(`Failed installing component > ${JSON.stringify(error)}`)); + } + logger.info(`Installing index template (${template.namespace})`); + await client.indices + .putIndexTemplate({ + name: template.namespace, + ...template.template, + }) + .catch((error) => logger.error(`Failed installing template > ${JSON.stringify(error)}`)); +} + +export async function deleteTemplate( + client: Client, + template: IndexTemplateDef, + logger: ToolingLog +) { + logger.info(`deleteIndexTemplate > template name: ${template.namespace}`); + await client.indices + .deleteIndexTemplate({ + name: template.namespace, + }) + .catch((error: any) => + logger.error(`deleteIndexTemplate > ${template.namespace} ${JSON.stringify(error)}`) + ); + for (const component of template.components) { + logger.info(`deleteComponents > component name: ${component.name}`); + await client.cluster + .deleteComponentTemplate({ name: component.name }) + .catch((error: any) => + logger.error(`deleteComponents > ${component.name} ${JSON.stringify(error)}`) + ); + } +} diff --git a/x-pack/packages/kbn-infra-forge/src/lib/queue.ts b/x-pack/packages/kbn-infra-forge/src/lib/queue.ts index bf6553fe01b88..75f3affb743d3 100644 --- a/x-pack/packages/kbn-infra-forge/src/lib/queue.ts +++ b/x-pack/packages/kbn-infra-forge/src/lib/queue.ts @@ -24,7 +24,7 @@ export const createQueue = ( logger.debug(`createQueue > index name: ${indexName}`); return async.cargoQueue( (docs: object[], callback) => { - const body: any[] = []; + const body: object[] = []; docs.forEach((doc) => { body.push({ create: { @@ -34,7 +34,7 @@ export const createQueue = ( body.push(omit(doc, 'namespace')); }); esClient - .bulk({ body }) + .bulk({ body, refresh: true }) .then((resp) => { if (resp.errors) { logger.error( diff --git a/x-pack/packages/kbn-infra-forge/src/run.ts b/x-pack/packages/kbn-infra-forge/src/run.ts index 470c0afbdccc6..aad2adb24bc93 100644 --- a/x-pack/packages/kbn-infra-forge/src/run.ts +++ b/x-pack/packages/kbn-infra-forge/src/run.ts @@ -12,7 +12,7 @@ import type { Moment } from 'moment'; import type { ToolingLog } from '@kbn/tooling-log'; import type { Client } from '@elastic/elasticsearch'; import { createQueue, getIndexName } from './lib/queue'; -import { deleteTemplate, installTemplate } from './lib/install_template'; +import { deleteTemplate, installTemplate } from './lib/manage_template'; import * as fakeHosts from './data_sources/fake_hosts'; const generateEventsFns = { @@ -20,7 +20,7 @@ const generateEventsFns = { }; const templates = { - fake_hosts: fakeHosts.template, + fake_hosts: fakeHosts.indexTemplate, }; const EVENTS_PER_CYCLE = 1; @@ -68,5 +68,6 @@ export const generate = async ({ }; export const cleanup = async ({ esClient, logger }: { esClient: Client; logger: ToolingLog }) => { - await deleteTemplate(esClient, DATASET, logger); + const template = templates[DATASET]; + await deleteTemplate(esClient, template, logger); }; diff --git a/x-pack/packages/kbn-infra-forge/tsconfig.json b/x-pack/packages/kbn-infra-forge/tsconfig.json index 58254ba94f8f4..e949673cb9aea 100644 --- a/x-pack/packages/kbn-infra-forge/tsconfig.json +++ b/x-pack/packages/kbn-infra-forge/tsconfig.json @@ -9,9 +9,15 @@ }, "include": [ "**/*.ts", + "./src/data_sources/composable/component/base.json", + "./src/data_sources/composable/component/event.json", + "./src/data_sources/composable/component/host.json", + "./src/data_sources/composable/component/metricset.json", + "./src/data_sources/composable/component/system.json", + "./src/data_sources/composable/template.json" ], "exclude": [ - "target/**/*" + "target/**/*", ], "kbn_references": [ "@kbn/tooling-log", diff --git a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_pct_fired.ts b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_pct_fired.ts index fd5a4054f0895..c2d91677af2a2 100644 --- a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_pct_fired.ts +++ b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_pct_fired.ts @@ -28,6 +28,9 @@ export default function ({ getService }: FtrProviderContext) { describe('Custom Threshold rule - AVG - PCT - FIRED', () => { const CUSTOM_THRESHOLD_RULE_ALERT_INDEX = '.alerts-observability.threshold.alerts-default'; const ALERT_ACTION_INDEX = 'alert-action-threshold'; + // DATE_VIEW should match the index template: + // x-pack/packages/kbn-infra-forge/src/data_sources/composable/template.json + const DATE_VIEW = 'kbn-data-forge-fake_hosts'; const DATA_VIEW_ID = 'data-view-id'; let infraDataIndex: string; let actionId: string; @@ -37,9 +40,9 @@ export default function ({ getService }: FtrProviderContext) { infraDataIndex = await generate({ esClient, lookback: 'now-15m', logger }); await createDataView({ supertest, - name: 'metrics-fake_hosts', + name: DATE_VIEW, id: DATA_VIEW_ID, - title: 'metrics-fake_hosts', + title: DATE_VIEW, }); }); diff --git a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts index 7f7e66d050593..d17e0a1568603 100644 --- a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts +++ b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts @@ -34,6 +34,9 @@ export default function ({ getService }: FtrProviderContext) { describe('Custom Threshold rule - CUSTOM_EQ - AVG - BYTES - FIRED', () => { const CUSTOM_THRESHOLD_RULE_ALERT_INDEX = '.alerts-observability.threshold.alerts-default'; const ALERT_ACTION_INDEX = 'alert-action-threshold'; + // DATE_VIEW should match the index template: + // x-pack/packages/kbn-infra-forge/src/data_sources/composable/template.json + const DATE_VIEW = 'kbn-data-forge-fake_hosts'; const DATA_VIEW_ID = 'data-view-id'; let infraDataIndex: string; let actionId: string; @@ -43,9 +46,9 @@ export default function ({ getService }: FtrProviderContext) { infraDataIndex = await generate({ esClient, lookback: 'now-15m', logger }); await createDataView({ supertest, - name: 'metrics-fake_hosts', + name: DATE_VIEW, id: DATA_VIEW_ID, - title: 'metrics-fake_hosts', + title: DATE_VIEW, }); }); diff --git a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/documents_count_fired.ts b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/documents_count_fired.ts index dfab65332a9e6..2876fb793b98a 100644 --- a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/documents_count_fired.ts +++ b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/documents_count_fired.ts @@ -28,6 +28,9 @@ export default function ({ getService }: FtrProviderContext) { describe('Custom Threshold rule - DOCUMENTS_COUNT - FIRED', () => { const CUSTOM_THRESHOLD_RULE_ALERT_INDEX = '.alerts-observability.threshold.alerts-default'; const ALERT_ACTION_INDEX = 'alert-action-threshold'; + // DATE_VIEW should match the index template: + // x-pack/packages/kbn-infra-forge/src/data_sources/composable/template.json + const DATE_VIEW = 'kbn-data-forge-fake_hosts'; const DATA_VIEW_ID = 'data-view-id'; let infraDataIndex: string; let actionId: string; @@ -37,9 +40,9 @@ export default function ({ getService }: FtrProviderContext) { infraDataIndex = await generate({ esClient, lookback: 'now-15m', logger }); await createDataView({ supertest, - name: 'metrics-fake_hosts', + name: DATE_VIEW, id: DATA_VIEW_ID, - title: 'metrics-fake_hosts', + title: DATE_VIEW, }); }); diff --git a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/group_by_fired.ts b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/group_by_fired.ts index 1129ad40b5203..363423c7cb41d 100644 --- a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/group_by_fired.ts +++ b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/group_by_fired.ts @@ -41,6 +41,9 @@ export default function ({ getService }: FtrProviderContext) { describe('Custom Threshold rule - GROUP_BY - FIRED', () => { const CUSTOM_THRESHOLD_RULE_ALERT_INDEX = '.alerts-observability.threshold.alerts-default'; const ALERT_ACTION_INDEX = 'alert-action-threshold'; + // DATE_VIEW should match the index template: + // x-pack/packages/kbn-infra-forge/src/data_sources/composable/template.json + const DATE_VIEW = 'kbn-data-forge-fake_hosts'; const DATA_VIEW_ID = 'data-view-id'; let infraDataIndex: string; let actionId: string; @@ -50,9 +53,9 @@ export default function ({ getService }: FtrProviderContext) { infraDataIndex = await generate({ esClient, lookback: 'now-15m', logger }); await createDataView({ supertest, - name: 'metrics-fake_hosts', + name: DATE_VIEW, id: DATA_VIEW_ID, - title: 'metrics-fake_hosts', + title: DATE_VIEW, }); }); diff --git a/x-pack/test/alerting_api_integration/observability/metric_threshold_rule.ts b/x-pack/test/alerting_api_integration/observability/metric_threshold_rule.ts index 2b727820ade70..0de7e3d600612 100644 --- a/x-pack/test/alerting_api_integration/observability/metric_threshold_rule.ts +++ b/x-pack/test/alerting_api_integration/observability/metric_threshold_rule.ts @@ -36,6 +36,12 @@ export default function ({ getService }: FtrProviderContext) { describe('alert and action creation', () => { before(async () => { + await supertest.patch(`/api/metrics/source/default`).set('kbn-xsrf', 'foo').send({ + anomalyThreshold: 50, + description: '', + metricAlias: 'kbn-data-forge*', + name: 'Default', + }); infraDataIndex = await generate({ esClient, lookback: 'now-15m', logger }); actionId = await createIndexConnector({ supertest, diff --git a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_fired.ts b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_fired.ts index 0389d0eace4e7..55a31a91f2738 100644 --- a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_fired.ts +++ b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_fired.ts @@ -23,10 +23,11 @@ export default function ({ getService }: FtrProviderContext) { const dataViewApi = getService('dataViewApi'); const logger = getService('log'); - // Blocked API: index_not_found_exception: no such index [.alerts-observability.threshold.alerts-default] - // Issue: https://github.com/elastic/kibana/issues/165138 - describe.skip('Custom Threshold rule - AVG - PCT - FIRED', () => { + describe('Custom Threshold rule - AVG - PCT - FIRED', () => { const CUSTOM_THRESHOLD_RULE_ALERT_INDEX = '.alerts-observability.threshold.alerts-default'; + // DATE_VIEW should match the index template: + // x-pack/packages/kbn-infra-forge/src/data_sources/composable/template.json + const DATE_VIEW = 'kbn-data-forge-fake_hosts'; const ALERT_ACTION_INDEX = 'alert-action-threshold'; const DATA_VIEW_ID = 'data-view-id'; let infraDataIndex: string; @@ -34,11 +35,15 @@ export default function ({ getService }: FtrProviderContext) { let ruleId: string; before(async () => { - infraDataIndex = await generate({ esClient, lookback: 'now-15m', logger }); + infraDataIndex = await generate({ + esClient, + lookback: 'now-15m', + logger, + }); await dataViewApi.create({ - name: 'metrics-fake_hosts', + name: DATE_VIEW, id: DATA_VIEW_ID, - title: 'metrics-fake_hosts', + title: DATE_VIEW, }); }); @@ -57,7 +62,7 @@ export default function ({ getService }: FtrProviderContext) { }); await esClient.deleteByQuery({ index: '.kibana-event-log-*', - query: { term: { 'kibana.alert.rule.consumer': 'logs' } }, + query: { term: { 'rule.id': ruleId } }, }); await dataViewApi.delete({ id: DATA_VIEW_ID, @@ -75,7 +80,7 @@ export default function ({ getService }: FtrProviderContext) { const createdRule = await alertingApi.createRule({ tags: ['observability'], - consumer: 'logs', + consumer: 'apm', name: 'Threshold rule', ruleTypeId: OBSERVABILITY_THRESHOLD_RULE_TYPE_ID, params: { @@ -142,7 +147,7 @@ export default function ({ getService }: FtrProviderContext) { 'kibana.alert.rule.category', 'Custom threshold (BETA)' ); - expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'logs'); + expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'apm'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.producer', 'observability'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.revision', 0); diff --git a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_no_data.ts b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_no_data.ts index 6b7fd85af9962..31b96d173c09d 100644 --- a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_no_data.ts +++ b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_no_data.ts @@ -20,10 +20,7 @@ export default function ({ getService }: FtrProviderContext) { const alertingApi = getService('alertingApi'); const dataViewApi = getService('dataViewApi'); - // Blocked API: index_not_found_exception: no such index [.alerts-observability.threshold.alerts-default] - // Issue: https://github.com/elastic/kibana/issues/165138 - // Failing: See https://github.com/elastic/kibana/issues/167629 - describe.skip('Custom Threshold rule - AVG - PCT - NoData', () => { + describe('Custom Threshold rule - AVG - PCT - NoData', () => { const CUSTOM_THRESHOLD_RULE_ALERT_INDEX = '.alerts-observability.threshold.alerts-default'; const ALERT_ACTION_INDEX = 'alert-action-threshold'; const DATA_VIEW_ID = 'data-view-id-no-data'; @@ -53,7 +50,7 @@ export default function ({ getService }: FtrProviderContext) { }); await esClient.deleteByQuery({ index: '.kibana-event-log-*', - query: { term: { 'kibana.alert.rule.consumer': 'logs' } }, + query: { term: { 'rule.id': ruleId } }, }); await dataViewApi.delete({ id: DATA_VIEW_ID, @@ -69,7 +66,7 @@ export default function ({ getService }: FtrProviderContext) { const createdRule = await alertingApi.createRule({ tags: ['observability'], - consumer: 'logs', + consumer: 'apm', name: 'Threshold rule', ruleTypeId: OBSERVABILITY_THRESHOLD_RULE_TYPE_ID, params: { @@ -136,7 +133,7 @@ export default function ({ getService }: FtrProviderContext) { 'kibana.alert.rule.category', 'Custom threshold (BETA)' ); - expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'logs'); + expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'apm'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.producer', 'observability'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.revision', 0); diff --git a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts index 5ee54e1c9ad17..1255a9d54bfdc 100644 --- a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts +++ b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts @@ -29,9 +29,11 @@ export default function ({ getService }: FtrProviderContext) { const alertingApi = getService('alertingApi'); const dataViewApi = getService('dataViewApi'); - // Issue: https://github.com/elastic/kibana/issues/165138 - describe.skip('Custom Threshold rule - CUSTOM_EQ - AVG - BYTES - FIRED', () => { + describe('Custom Threshold rule - CUSTOM_EQ - AVG - BYTES - FIRED', () => { const CUSTOM_THRESHOLD_RULE_ALERT_INDEX = '.alerts-observability.threshold.alerts-default'; + // DATE_VIEW should match the index template: + // x-pack/packages/kbn-infra-forge/src/data_sources/composable/template.json + const DATE_VIEW = 'kbn-data-forge-fake_hosts'; const ALERT_ACTION_INDEX = 'alert-action-threshold'; const DATA_VIEW_ID = 'data-view-id'; let infraDataIndex: string; @@ -41,9 +43,9 @@ export default function ({ getService }: FtrProviderContext) { before(async () => { infraDataIndex = await generate({ esClient, lookback: 'now-15m', logger }); await dataViewApi.create({ - name: 'metrics-fake_hosts', + name: DATE_VIEW, id: DATA_VIEW_ID, - title: 'metrics-fake_hosts', + title: DATE_VIEW, }); }); @@ -62,7 +64,7 @@ export default function ({ getService }: FtrProviderContext) { }); await esClient.deleteByQuery({ index: '.kibana-event-log-*', - query: { term: { 'kibana.alert.rule.consumer': 'logs' } }, + query: { term: { 'rule.id': ruleId } }, }); await dataViewApi.delete({ id: DATA_VIEW_ID, @@ -80,7 +82,7 @@ export default function ({ getService }: FtrProviderContext) { const createdRule = await alertingApi.createRule({ tags: ['observability'], - consumer: 'logs', + consumer: 'apm', name: 'Threshold rule', ruleTypeId: OBSERVABILITY_THRESHOLD_RULE_TYPE_ID, params: { @@ -149,7 +151,7 @@ export default function ({ getService }: FtrProviderContext) { 'kibana.alert.rule.category', 'Custom threshold (BETA)' ); - expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'logs'); + expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'apm'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.producer', 'observability'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.revision', 0); diff --git a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/documents_count_fired.ts b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/documents_count_fired.ts index 7c67217ca96ee..b8ec55ec59417 100644 --- a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/documents_count_fired.ts +++ b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/documents_count_fired.ts @@ -23,10 +23,11 @@ export default function ({ getService }: FtrProviderContext) { const alertingApi = getService('alertingApi'); const dataViewApi = getService('dataViewApi'); - // Issue: https://github.com/elastic/kibana/issues/165138 - // Failing: See https://github.com/elastic/kibana/issues/167619 - describe.skip('Custom Threshold rule - DOCUMENTS_COUNT - FIRED', () => { + describe('Custom Threshold rule - DOCUMENTS_COUNT - FIRED', () => { const CUSTOM_THRESHOLD_RULE_ALERT_INDEX = '.alerts-observability.threshold.alerts-default'; + // DATE_VIEW should match the index template: + // x-pack/packages/kbn-infra-forge/src/data_sources/composable/template.json + const DATE_VIEW = 'kbn-data-forge-fake_hosts'; const ALERT_ACTION_INDEX = 'alert-action-threshold'; const DATA_VIEW_ID = 'data-view-id'; let infraDataIndex: string; @@ -36,9 +37,9 @@ export default function ({ getService }: FtrProviderContext) { before(async () => { infraDataIndex = await generate({ esClient, lookback: 'now-15m', logger }); await dataViewApi.create({ - name: 'metrics-fake_hosts', + name: DATE_VIEW, id: DATA_VIEW_ID, - title: 'metrics-fake_hosts', + title: DATE_VIEW, }); }); @@ -57,7 +58,7 @@ export default function ({ getService }: FtrProviderContext) { }); await esClient.deleteByQuery({ index: '.kibana-event-log-*', - query: { term: { 'kibana.alert.rule.consumer': 'logs' } }, + query: { term: { 'rule.id': ruleId } }, }); await dataViewApi.delete({ id: DATA_VIEW_ID, @@ -75,7 +76,7 @@ export default function ({ getService }: FtrProviderContext) { const createdRule = await alertingApi.createRule({ tags: ['observability'], - consumer: 'logs', + consumer: 'apm', name: 'Threshold rule', ruleTypeId: OBSERVABILITY_THRESHOLD_RULE_TYPE_ID, params: { @@ -140,7 +141,7 @@ export default function ({ getService }: FtrProviderContext) { 'kibana.alert.rule.category', 'Custom threshold (BETA)' ); - expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'logs'); + expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'apm'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.producer', 'observability'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.revision', 0); diff --git a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/group_by_fired.ts b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/group_by_fired.ts index f1b3c949421d4..f2e2b16a4be11 100644 --- a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/group_by_fired.ts +++ b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/group_by_fired.ts @@ -33,9 +33,11 @@ export default function ({ getService }: FtrProviderContext) { let alertId: string; let startedAt: string; - // Issue: https://github.com/elastic/kibana/issues/165138 - describe.skip('Custom Threshold rule - GROUP_BY - FIRED', () => { + describe('Custom Threshold rule - GROUP_BY - FIRED', () => { const CUSTOM_THRESHOLD_RULE_ALERT_INDEX = '.alerts-observability.threshold.alerts-default'; + // DATE_VIEW should match the index template: + // x-pack/packages/kbn-infra-forge/src/data_sources/composable/template.json + const DATE_VIEW = 'kbn-data-forge-fake_hosts'; const ALERT_ACTION_INDEX = 'alert-action-threshold'; const DATA_VIEW_ID = 'data-view-id'; let infraDataIndex: string; @@ -45,9 +47,9 @@ export default function ({ getService }: FtrProviderContext) { before(async () => { infraDataIndex = await generate({ esClient, lookback: 'now-15m', logger }); await dataViewApi.create({ - name: 'metrics-fake_hosts', + name: DATE_VIEW, id: DATA_VIEW_ID, - title: 'metrics-fake_hosts', + title: DATE_VIEW, }); }); @@ -66,7 +68,7 @@ export default function ({ getService }: FtrProviderContext) { }); await esClient.deleteByQuery({ index: '.kibana-event-log-*', - query: { term: { 'kibana.alert.rule.consumer': 'logs' } }, + query: { term: { 'rule.id': ruleId } }, }); await dataViewApi.delete({ id: DATA_VIEW_ID, @@ -84,7 +86,7 @@ export default function ({ getService }: FtrProviderContext) { const createdRule = await alertingApi.createRule({ tags: ['observability'], - consumer: 'logs', + consumer: 'apm', name: 'Threshold rule', ruleTypeId: OBSERVABILITY_THRESHOLD_RULE_TYPE_ID, params: { @@ -158,7 +160,7 @@ export default function ({ getService }: FtrProviderContext) { 'kibana.alert.rule.category', 'Custom threshold (BETA)' ); - expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'logs'); + expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'apm'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.producer', 'observability'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.revision', 0); @@ -224,7 +226,8 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.hits.hits[0]._source?.ruleType).eql('observability.rules.custom_threshold'); expect(resp.hits.hits[0]._source?.alertDetailsUrl).eql( - `${protocol}://${hostname}:${port}/app/observability/alerts?_a=(kuery:%27kibana.alert.uuid:%20%22${alertId}%22%27%2CrangeFrom:%27${rangeFrom}%27%2CrangeTo:now%2Cstatus:all)` + // Added the S to protocol.getUrlParts as not returning the correct value. + `${protocol}s://${hostname}:${port}/app/observability/alerts?_a=(kuery:%27kibana.alert.uuid:%20%22${alertId}%22%27%2CrangeFrom:%27${rangeFrom}%27%2CrangeTo:now%2Cstatus:all)` ); expect(resp.hits.hits[0]._source?.reason).eql( 'Custom equation is 0.8 in the last 1 min for host-0. Alert when >= 0.2.' From 398ae8d7676e6e51506444fb5062f2b42c48d105 Mon Sep 17 00:00:00 2001 From: Jon Date: Mon, 2 Oct 2023 12:09:55 -0500 Subject: [PATCH 17/22] Upgrade chai to 4.3.10 (#167693) Verified by running `npm test`. --- .buildkite/package-lock.json | 92 +++++++++++++++++++----------------- .buildkite/package.json | 2 +- 2 files changed, 50 insertions(+), 44 deletions(-) diff --git a/.buildkite/package-lock.json b/.buildkite/package-lock.json index d28509d0de482..745e1867af10a 100644 --- a/.buildkite/package-lock.json +++ b/.buildkite/package-lock.json @@ -21,7 +21,7 @@ "@types/minimatch": "^3.0.5", "@types/mocha": "^10.0.1", "@types/node": "^15.12.2", - "chai": "^4.3.6", + "chai": "^4.3.10", "mocha": "^10.2.0", "nock": "^12.0.2", "ts-node": "^10.7.0", @@ -410,18 +410,18 @@ } }, "node_modules/chai": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.6.tgz", - "integrity": "sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q==", + "version": "4.3.10", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.10.tgz", + "integrity": "sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==", "dev": true, "dependencies": { "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^3.0.1", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", "pathval": "^1.1.1", - "type-detect": "^4.0.5" + "type-detect": "^4.0.8" }, "engines": { "node": ">=4" @@ -444,10 +444,13 @@ } }, "node_modules/check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", "dev": true, + "dependencies": { + "get-func-name": "^2.0.2" + }, "engines": { "node": "*" } @@ -550,15 +553,15 @@ } }, "node_modules/deep-eql": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", + "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", "dev": true, "dependencies": { "type-detect": "^4.0.0" }, "engines": { - "node": ">=0.12" + "node": ">=6" } }, "node_modules/deprecation": { @@ -721,9 +724,9 @@ } }, "node_modules/get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", "dev": true, "engines": { "node": "*" @@ -975,9 +978,9 @@ } }, "node_modules/loupe": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.4.tgz", - "integrity": "sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", + "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", "dev": true, "dependencies": { "get-func-name": "^2.0.0" @@ -1982,18 +1985,18 @@ "dev": true }, "chai": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.6.tgz", - "integrity": "sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q==", + "version": "4.3.10", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.10.tgz", + "integrity": "sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==", "dev": true, "requires": { "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^3.0.1", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", "pathval": "^1.1.1", - "type-detect": "^4.0.5" + "type-detect": "^4.0.8" } }, "chalk": { @@ -2007,10 +2010,13 @@ } }, "check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", - "dev": true + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "dev": true, + "requires": { + "get-func-name": "^2.0.2" + } }, "chokidar": { "version": "3.5.3", @@ -2082,9 +2088,9 @@ "dev": true }, "deep-eql": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", + "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", "dev": true, "requires": { "type-detect": "^4.0.0" @@ -2196,9 +2202,9 @@ "dev": true }, "get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", "dev": true }, "glob": { @@ -2380,9 +2386,9 @@ } }, "loupe": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.4.tgz", - "integrity": "sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", + "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", "dev": true, "requires": { "get-func-name": "^2.0.0" diff --git a/.buildkite/package.json b/.buildkite/package.json index 2dbcbc3c0082f..d38af884828e5 100644 --- a/.buildkite/package.json +++ b/.buildkite/package.json @@ -20,7 +20,7 @@ "@types/minimatch": "^3.0.5", "@types/mocha": "^10.0.1", "@types/node": "^15.12.2", - "chai": "^4.3.6", + "chai": "^4.3.10", "mocha": "^10.2.0", "nock": "^12.0.2", "ts-node": "^10.7.0", From 5bbdec941626b2c32412505f2d9c3fed50438441 Mon Sep 17 00:00:00 2001 From: Nathan Reese Date: Mon, 2 Oct 2023 11:16:03 -0600 Subject: [PATCH 18/22] [search source] open incomplete response warning in inspector (#167205) Closes https://github.com/elastic/kibana/issues/167098 PR updates "View details" button in incomplete response callouts to open inspector to request id and cluster tab. PR them removes shards model as its no longer used. Clicking "View details" Screenshot 2023-09-28 at 9 19 49 AM Opens Screenshot 2023-09-28 at 9 21 35 AM --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Stratoula Kalafateli --- .../src/__mocks__/search_response_warnings.ts | 1 + ...rch_response_intercepted_warnings.test.tsx | 42 +-- ...t_search_response_intercepted_warnings.tsx | 22 +- ...ed_downsampled_aggregation_failure.test.ts | 2 + .../tsconfig.json | 1 - .../incomplete_results_modal.test.tsx.snap | 271 ------------------ .../_incomplete_results_modal.scss | 15 - .../incomplete_results_modal.test.tsx | 72 ----- .../incomplete_results_modal.tsx | 148 ---------- .../open_incomplete_results_modal_button.tsx | 78 ----- src/plugins/data/public/index.ts | 2 +- src/plugins/data/public/plugin.ts | 3 +- .../data/public/search/search_service.test.ts | 3 +- .../data/public/search/search_service.ts | 14 +- src/plugins/data/public/search/types.ts | 4 + .../extract_warnings.test.ts | 111 +++---- .../{fetch => warnings}/extract_warnings.ts | 32 ++- .../{fetch => warnings}/handle_warnings.tsx | 25 +- .../search/{fetch => warnings}/index.ts | 1 + .../warnings/view_warning_button}/index.tsx | 8 +- .../view_warning_button.tsx | 39 +++ .../__mocks__/shard_failure_response.ts | 36 --- .../shard_failure_description.test.tsx.snap | 184 ------------ .../shard_failure_table.test.tsx.snap | 89 ------ .../shard_failure_description.test.tsx | 28 -- .../shard_failure_description.tsx | 130 --------- .../shard_failure_table.test.tsx | 21 -- .../shard_failure_table.tsx | 61 ---- src/plugins/data/public/types.ts | 6 +- src/plugins/data/tsconfig.json | 1 - .../details/clusters_view/clusters_view.tsx | 4 +- .../requests/components/details/index.ts | 1 + .../details/req_details_request.tsx | 9 +- .../details/req_details_response.tsx | 9 +- .../components/details/req_details_stats.tsx | 9 +- .../requests/components/details/types.ts | 13 + .../requests/components/get_next_tab.test.ts | 62 ++++ .../views/requests/components/get_next_tab.ts | 29 ++ .../requests/components/request_details.tsx | 116 +++----- .../requests/components/requests_view.tsx | 35 ++- .../public/views/requests/components/types.ts | 8 +- .../public/datasources/form_based/utils.tsx | 16 +- .../workspace_panel/message_list.tsx | 7 +- x-pack/plugins/lens/public/types.ts | 2 +- .../translations/translations/fr-FR.json | 1 - .../translations/translations/ja-JP.json | 1 - .../translations/translations/zh-CN.json | 1 - 47 files changed, 385 insertions(+), 1388 deletions(-) delete mode 100644 src/plugins/data/public/incomplete_results_modal/__snapshots__/incomplete_results_modal.test.tsx.snap delete mode 100644 src/plugins/data/public/incomplete_results_modal/_incomplete_results_modal.scss delete mode 100644 src/plugins/data/public/incomplete_results_modal/incomplete_results_modal.test.tsx delete mode 100644 src/plugins/data/public/incomplete_results_modal/incomplete_results_modal.tsx delete mode 100644 src/plugins/data/public/incomplete_results_modal/open_incomplete_results_modal_button.tsx rename src/plugins/data/public/search/{fetch => warnings}/extract_warnings.test.ts (77%) rename src/plugins/data/public/search/{fetch => warnings}/extract_warnings.ts (61%) rename src/plugins/data/public/search/{fetch => warnings}/handle_warnings.tsx (83%) rename src/plugins/data/public/search/{fetch => warnings}/index.ts (87%) rename src/plugins/data/public/{incomplete_results_modal => search/warnings/view_warning_button}/index.tsx (58%) create mode 100644 src/plugins/data/public/search/warnings/view_warning_button/view_warning_button.tsx delete mode 100644 src/plugins/data/public/shard_failure_modal/__mocks__/shard_failure_response.ts delete mode 100644 src/plugins/data/public/shard_failure_modal/__snapshots__/shard_failure_description.test.tsx.snap delete mode 100644 src/plugins/data/public/shard_failure_modal/__snapshots__/shard_failure_table.test.tsx.snap delete mode 100644 src/plugins/data/public/shard_failure_modal/shard_failure_description.test.tsx delete mode 100644 src/plugins/data/public/shard_failure_modal/shard_failure_description.tsx delete mode 100644 src/plugins/data/public/shard_failure_modal/shard_failure_table.test.tsx delete mode 100644 src/plugins/data/public/shard_failure_modal/shard_failure_table.tsx create mode 100644 src/plugins/inspector/public/views/requests/components/details/types.ts create mode 100644 src/plugins/inspector/public/views/requests/components/get_next_tab.test.ts create mode 100644 src/plugins/inspector/public/views/requests/components/get_next_tab.ts diff --git a/packages/kbn-search-response-warnings/src/__mocks__/search_response_warnings.ts b/packages/kbn-search-response-warnings/src/__mocks__/search_response_warnings.ts index d4110f1bb62b7..8d4bf65f5754e 100644 --- a/packages/kbn-search-response-warnings/src/__mocks__/search_response_warnings.ts +++ b/packages/kbn-search-response-warnings/src/__mocks__/search_response_warnings.ts @@ -37,4 +37,5 @@ export const searchResponseIncompleteWarningLocalCluster: SearchResponseWarning ], }, }, + openInInspector: () => {}, }; diff --git a/packages/kbn-search-response-warnings/src/utils/get_search_response_intercepted_warnings.test.tsx b/packages/kbn-search-response-warnings/src/utils/get_search_response_intercepted_warnings.test.tsx index b6bf93169ae63..6ec951898f0ed 100644 --- a/packages/kbn-search-response-warnings/src/utils/get_search_response_intercepted_warnings.test.tsx +++ b/packages/kbn-search-response-warnings/src/utils/get_search_response_intercepted_warnings.test.tsx @@ -36,49 +36,11 @@ describe('getSearchResponseInterceptedWarnings', () => { expect(warnings.length).toBe(1); expect(warnings[0].originalWarning).toEqual(searchResponseIncompleteWarningLocalCluster); expect(warnings[0].action).toMatchInlineSnapshot(` - `); }); diff --git a/packages/kbn-search-response-warnings/src/utils/get_search_response_intercepted_warnings.tsx b/packages/kbn-search-response-warnings/src/utils/get_search_response_intercepted_warnings.tsx index 6518d12109a1d..9916ddbf454f3 100644 --- a/packages/kbn-search-response-warnings/src/utils/get_search_response_intercepted_warnings.tsx +++ b/packages/kbn-search-response-warnings/src/utils/get_search_response_intercepted_warnings.tsx @@ -7,12 +7,8 @@ */ import React from 'react'; -import { - type DataPublicPluginStart, - OpenIncompleteResultsModalButton, -} from '@kbn/data-plugin/public'; +import { type DataPublicPluginStart, ViewWarningButton } from '@kbn/data-plugin/public'; import type { RequestAdapter } from '@kbn/inspector-plugin/common'; -import type { CoreStart } from '@kbn/core-lifecycle-browser'; import type { SearchResponseInterceptedWarning } from '../types'; /** @@ -27,28 +23,20 @@ export const getSearchResponseInterceptedWarnings = ({ }: { services: { data: DataPublicPluginStart; - theme: CoreStart['theme']; }; adapter: RequestAdapter; }): SearchResponseInterceptedWarning[] => { const interceptedWarnings: SearchResponseInterceptedWarning[] = []; - services.data.search.showWarnings(adapter, (warning, meta) => { - const { request, response } = meta; - + services.data.search.showWarnings(adapter, (warning) => { interceptedWarnings.push({ originalWarning: warning, action: warning.type === 'incomplete' ? ( - ({ - request, - response, - })} + ) : undefined, diff --git a/packages/kbn-search-response-warnings/src/utils/has_unsupported_downsampled_aggregation_failure.test.ts b/packages/kbn-search-response-warnings/src/utils/has_unsupported_downsampled_aggregation_failure.test.ts index e8d722feb131a..ec99f9ba8822b 100644 --- a/packages/kbn-search-response-warnings/src/utils/has_unsupported_downsampled_aggregation_failure.test.ts +++ b/packages/kbn-search-response-warnings/src/utils/has_unsupported_downsampled_aggregation_failure.test.ts @@ -40,6 +40,7 @@ describe('hasUnsupportedDownsampledAggregationFailure', () => { ], }, }, + openInInspector: () => {}, }) ).toBe(false); }); @@ -74,6 +75,7 @@ describe('hasUnsupportedDownsampledAggregationFailure', () => { ], }, }, + openInInspector: () => {}, }) ).toBe(true); }); diff --git a/packages/kbn-search-response-warnings/tsconfig.json b/packages/kbn-search-response-warnings/tsconfig.json index 77bffc521e15f..96095c1a93c44 100644 --- a/packages/kbn-search-response-warnings/tsconfig.json +++ b/packages/kbn-search-response-warnings/tsconfig.json @@ -10,7 +10,6 @@ "@kbn/i18n", "@kbn/inspector-plugin", "@kbn/core", - "@kbn/core-lifecycle-browser", ], "exclude": ["target/**/*"] } diff --git a/src/plugins/data/public/incomplete_results_modal/__snapshots__/incomplete_results_modal.test.tsx.snap b/src/plugins/data/public/incomplete_results_modal/__snapshots__/incomplete_results_modal.test.tsx.snap deleted file mode 100644 index 666b87f998c3e..0000000000000 --- a/src/plugins/data/public/incomplete_results_modal/__snapshots__/incomplete_results_modal.test.tsx.snap +++ /dev/null @@ -1,271 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`IncompleteResultsModal should render shard failures 1`] = ` - - - - - - - - - - , - "data-test-subj": "showClusterDetailsButton", - "id": "table", - "name": "Cluster details", - } - } - tabs={ - Array [ - Object { - "content": - - , - "data-test-subj": "showClusterDetailsButton", - "id": "table", - "name": "Cluster details", - }, - Object { - "content": - {} - , - "data-test-subj": "showRequestButton", - "id": "json-request", - "name": "Request", - }, - Object { - "content": - { - "_shards": { - "total": 4, - "successful": 3, - "skipped": 0, - "failed": 1, - "failures": [ - { - "shard": 0, - "index": "sample-01-rollup", - "node": "VFTFJxpHSdaoiGxJFLSExQ", - "reason": { - "type": "illegal_argument_exception", - "reason": "Field [kubernetes.container.memory.available.bytes] of type [aggregate_metric_double] is not supported for aggregation [percentiles]" - } - } - ] - } -} - , - "data-test-subj": "showResponseButton", - "id": "json-response", - "name": "Response", - }, - ] - } - /> - - - - - - - - - - -`; - -exports[`IncompleteResultsModal should render time out 1`] = ` - - - - - - - - - -

- Request timed out -

-
- , - "data-test-subj": "showClusterDetailsButton", - "id": "table", - "name": "Cluster details", - } - } - tabs={ - Array [ - Object { - "content": - -

- Request timed out -

-
-
, - "data-test-subj": "showClusterDetailsButton", - "id": "table", - "name": "Cluster details", - }, - Object { - "content": - {} - , - "data-test-subj": "showRequestButton", - "id": "json-request", - "name": "Request", - }, - Object { - "content": - { - "timed_out": true, - "_shards": { - "total": 4, - "successful": 4, - "skipped": 0, - "failed": 0 - } -} - , - "data-test-subj": "showResponseButton", - "id": "json-response", - "name": "Response", - }, - ] - } - /> -
- - - - - - - - -
-`; diff --git a/src/plugins/data/public/incomplete_results_modal/_incomplete_results_modal.scss b/src/plugins/data/public/incomplete_results_modal/_incomplete_results_modal.scss deleted file mode 100644 index e2ca0f8f9b3b6..0000000000000 --- a/src/plugins/data/public/incomplete_results_modal/_incomplete_results_modal.scss +++ /dev/null @@ -1,15 +0,0 @@ -// set width and height to fixed values to prevent resizing when you switch tabs -.incompleteResultsModal { - min-height: 75vh; - width: 768px; - - // show buttons at the bottom of the modal - .kbnOverlayMountWrapper { - flex-grow: 1; - } - - // smaller gap between the modal title and body - .euiModalHeader { - padding-bottom: 0; - } -} \ No newline at end of file diff --git a/src/plugins/data/public/incomplete_results_modal/incomplete_results_modal.test.tsx b/src/plugins/data/public/incomplete_results_modal/incomplete_results_modal.test.tsx deleted file mode 100644 index 6e90740cf9888..0000000000000 --- a/src/plugins/data/public/incomplete_results_modal/incomplete_results_modal.test.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 - * 2.0 and the Server Side Public License, v 1; you may not use this file except - * in compliance with, at your election, the Elastic License 2.0 or the Server - * Side Public License, v 1. - */ - -import React from 'react'; -import { shallow } from 'enzyme'; -import type * as estypes from '@elastic/elasticsearch/lib/api/typesWithBodyKey'; -import type { SearchResponseIncompleteWarning } from '../search'; -import { IncompleteResultsModal } from './incomplete_results_modal'; - -describe('IncompleteResultsModal', () => { - test('should render shard failures', () => { - const component = shallow( - - } - onClose={jest.fn()} - /> - ); - - expect(component).toMatchSnapshot(); - }); - - test('should render time out', () => { - const component = shallow( - - } - onClose={jest.fn()} - /> - ); - - expect(component).toMatchSnapshot(); - }); -}); diff --git a/src/plugins/data/public/incomplete_results_modal/incomplete_results_modal.tsx b/src/plugins/data/public/incomplete_results_modal/incomplete_results_modal.tsx deleted file mode 100644 index eb07d8d60e517..0000000000000 --- a/src/plugins/data/public/incomplete_results_modal/incomplete_results_modal.tsx +++ /dev/null @@ -1,148 +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 - * 2.0 and the Server Side Public License, v 1; you may not use this file except - * in compliance with, at your election, the Elastic License 2.0 or the Server - * Side Public License, v 1. - */ - -import React from 'react'; -import { FormattedMessage } from '@kbn/i18n-react'; -import { i18n } from '@kbn/i18n'; -import { - EuiCallOut, - EuiCodeBlock, - EuiTabbedContent, - EuiCopy, - EuiButton, - EuiModalBody, - EuiModalHeader, - EuiModalHeaderTitle, - EuiModalFooter, - EuiButtonEmpty, -} from '@elastic/eui'; -import type * as estypes from '@elastic/elasticsearch/lib/api/typesWithBodyKey'; -import type { SearchRequest } from '..'; -import type { SearchResponseIncompleteWarning } from '../search'; -import { ShardFailureTable } from '../shard_failure_modal/shard_failure_table'; - -export interface Props { - onClose: () => void; - request: SearchRequest; - response: estypes.SearchResponse; - warning: SearchResponseIncompleteWarning; -} - -export function IncompleteResultsModal({ request, response, warning, onClose }: Props) { - const requestJSON = JSON.stringify(request, null, 2); - const responseJSON = JSON.stringify(response, null, 2); - - const tabs = [ - { - id: 'table', - name: i18n.translate( - 'data.search.searchSource.fetch.incompleteResultsModal.tabHeaderClusterDetails', - { - defaultMessage: 'Cluster details', - description: 'Name of the tab displaying cluster details', - } - ), - content: ( - <> - {response.timed_out ? ( - -

- {i18n.translate( - 'data.search.searchSource.fetch.incompleteResultsModal.requestTimedOutMessage', - { - defaultMessage: 'Request timed out', - } - )} -

-
- ) : null} - - {response._shards.failures?.length ? ( - - ) : null} - - ), - ['data-test-subj']: 'showClusterDetailsButton', - }, - { - id: 'json-request', - name: i18n.translate( - 'data.search.searchSource.fetch.incompleteResultsModal.tabHeaderRequest', - { - defaultMessage: 'Request', - description: 'Name of the tab displaying the JSON request', - } - ), - content: ( - - {requestJSON} - - ), - ['data-test-subj']: 'showRequestButton', - }, - { - id: 'json-response', - name: i18n.translate( - 'data.search.searchSource.fetch.incompleteResultsModal.tabHeaderResponse', - { - defaultMessage: 'Response', - description: 'Name of the tab displaying the JSON response', - } - ), - content: ( - - {responseJSON} - - ), - ['data-test-subj']: 'showResponseButton', - }, - ]; - - return ( - - - - - - - - - - - - {(copy) => ( - - - - )} - - onClose()} fill data-test-subj="closeIncompleteResultsModal"> - - - - - ); -} diff --git a/src/plugins/data/public/incomplete_results_modal/open_incomplete_results_modal_button.tsx b/src/plugins/data/public/incomplete_results_modal/open_incomplete_results_modal_button.tsx deleted file mode 100644 index 648eca08d525b..0000000000000 --- a/src/plugins/data/public/incomplete_results_modal/open_incomplete_results_modal_button.tsx +++ /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 - * 2.0 and the Server Side Public License, v 1; you may not use this file except - * in compliance with, at your election, the Elastic License 2.0 or the Server - * Side Public License, v 1. - */ - -import React, { useCallback } from 'react'; -import { FormattedMessage } from '@kbn/i18n-react'; -import { EuiLink, EuiButton, EuiButtonProps } from '@elastic/eui'; -import type * as estypes from '@elastic/elasticsearch/lib/api/typesWithBodyKey'; -import type { ThemeServiceStart } from '@kbn/core/public'; -import { toMountPoint } from '@kbn/kibana-react-plugin/public'; -import { getOverlays } from '../services'; -import type { SearchRequest } from '..'; -import { IncompleteResultsModal } from './incomplete_results_modal'; -import type { SearchResponseIncompleteWarning } from '../search'; -import './_incomplete_results_modal.scss'; - -// @internal -export interface OpenIncompleteResultsModalButtonProps { - theme: ThemeServiceStart; - warning: SearchResponseIncompleteWarning; - size?: EuiButtonProps['size']; - color?: EuiButtonProps['color']; - getRequestMeta: () => { - request: SearchRequest; - response: estypes.SearchResponse; - }; - isButtonEmpty?: boolean; -} - -// Needed for React.lazy -// eslint-disable-next-line import/no-default-export -export default function OpenIncompleteResultsModalButton({ - getRequestMeta, - theme, - warning, - size = 's', - color = 'warning', - isButtonEmpty = false, -}: OpenIncompleteResultsModalButtonProps) { - const onClick = useCallback(() => { - const { request, response } = getRequestMeta(); - const modal = getOverlays().openModal( - toMountPoint( - modal.close()} - />, - { theme$: theme.theme$ } - ), - { - className: 'incompleteResultsModal', - } - ); - }, [getRequestMeta, theme.theme$, warning]); - - const Component = isButtonEmpty ? EuiLink : EuiButton; - - return ( - - - - ); -} diff --git a/src/plugins/data/public/index.ts b/src/plugins/data/public/index.ts index 48a2d9c10b71c..108b160b3b239 100644 --- a/src/plugins/data/public/index.ts +++ b/src/plugins/data/public/index.ts @@ -274,7 +274,7 @@ export type { } from './query'; // TODO: move to @kbn/search-response-warnings -export { OpenIncompleteResultsModalButton } from './incomplete_results_modal'; +export { ViewWarningButton } from './search/warnings'; export type { AggsStart } from './search/aggs'; diff --git a/src/plugins/data/public/plugin.ts b/src/plugins/data/public/plugin.ts index f3679aa628560..8bd7dc786c05d 100644 --- a/src/plugins/data/public/plugin.ts +++ b/src/plugins/data/public/plugin.ts @@ -121,7 +121,7 @@ export class DataPublicPlugin public start( core: CoreStart, - { uiActions, fieldFormats, dataViews, screenshotMode }: DataStartDependencies + { uiActions, fieldFormats, dataViews, inspector, screenshotMode }: DataStartDependencies ): DataPublicPluginStart { const { uiSettings, notifications, overlays } = core; setNotifications(notifications); @@ -138,6 +138,7 @@ export class DataPublicPlugin const search = this.searchService.start(core, { fieldFormats, indexPatterns: dataViews, + inspector, screenshotMode, scriptedFieldsEnabled: dataViews.scriptedFieldsEnabled, }); diff --git a/src/plugins/data/public/search/search_service.test.ts b/src/plugins/data/public/search/search_service.test.ts index 784a41a299503..5f9e57d05fe6b 100644 --- a/src/plugins/data/public/search/search_service.test.ts +++ b/src/plugins/data/public/search/search_service.test.ts @@ -13,7 +13,7 @@ import { CoreSetup, CoreStart } from '@kbn/core/public'; import { coreMock } from '@kbn/core/public/mocks'; import { DataViewsContract } from '@kbn/data-views-plugin/common'; import { FieldFormatsStart } from '@kbn/field-formats-plugin/public'; -import { RequestAdapter } from '@kbn/inspector-plugin/public'; +import { Start as InspectorStartContract, RequestAdapter } from '@kbn/inspector-plugin/public'; import { managementPluginMock } from '@kbn/management-plugin/public/mocks'; import { screenshotModePluginMock } from '@kbn/screenshot-mode-plugin/public/mocks'; import type { MockedKeys } from '@kbn/utility-types-jest'; @@ -68,6 +68,7 @@ describe('Search service', () => { data = searchService.start(mockCoreStart, { fieldFormats: {} as FieldFormatsStart, indexPatterns: {} as DataViewsContract, + inspector: {} as InspectorStartContract, screenshotMode: screenshotModePluginMock.createStartContract(), scriptedFieldsEnabled: true, }); diff --git a/src/plugins/data/public/search/search_service.ts b/src/plugins/data/public/search/search_service.ts index 4631425696243..a8206faf636ea 100644 --- a/src/plugins/data/public/search/search_service.ts +++ b/src/plugins/data/public/search/search_service.ts @@ -23,6 +23,7 @@ import { Storage } from '@kbn/kibana-utils-plugin/public'; import { ManagementSetup } from '@kbn/management-plugin/public'; import { ScreenshotModePluginStart } from '@kbn/screenshot-mode-plugin/public'; import { UsageCollectionSetup } from '@kbn/usage-collection-plugin/public'; +import type { Start as InspectorStartContract } from '@kbn/inspector-plugin/public'; import React from 'react'; import { BehaviorSubject } from 'rxjs'; import { @@ -65,7 +66,7 @@ import { AggsService } from './aggs'; import { createUsageCollector, SearchUsageCollector } from './collectors'; import { getEql, getEsaggs, getEsdsl, getEssql, getEsql } from './expressions'; -import { handleWarnings } from './fetch/handle_warnings'; +import { handleWarnings } from './warnings'; import { ISearchInterceptor, SearchInterceptor } from './search_interceptor'; import { ISessionsClient, ISessionService, SessionsClient, SessionService } from './session'; import { registerSearchSessionsMgmt } from './session/sessions_mgmt'; @@ -85,6 +86,7 @@ export interface SearchServiceSetupDependencies { export interface SearchServiceStartDependencies { fieldFormats: FieldFormatsStart; indexPatterns: DataViewsContract; + inspector: InspectorStartContract; screenshotMode: ScreenshotModePluginStart; scriptedFieldsEnabled: boolean; } @@ -225,6 +227,7 @@ export class SearchService implements Plugin { { fieldFormats, indexPatterns, + inspector, screenshotMode, scriptedFieldsEnabled, }: SearchServiceStartDependencies @@ -250,8 +253,9 @@ export class SearchService implements Plugin { request: request.body, response: rawResponse, theme, - sessionId: options.sessionId, requestId: request.id, + inspector: options.inspector, + inspectorService: inspector, }); } return response; @@ -299,6 +303,12 @@ export class SearchService implements Plugin { theme, callback, requestId: request.id, + inspector: { + adapter, + title: request.name, + id: request.id, + }, + inspectorService: inspector, }); }); }, diff --git a/src/plugins/data/public/search/types.ts b/src/plugins/data/public/search/types.ts index 2daceefeadb77..b1fda7e1efbd0 100644 --- a/src/plugins/data/public/search/types.ts +++ b/src/plugins/data/public/search/types.ts @@ -119,6 +119,10 @@ export interface SearchResponseIncompleteWarning { * clusters: cluster details. */ clusters: Record; + /** + * openInInspector: callback to open warning in inspector + */ + openInInspector: () => void; } /** diff --git a/src/plugins/data/public/search/fetch/extract_warnings.test.ts b/src/plugins/data/public/search/warnings/extract_warnings.test.ts similarity index 77% rename from src/plugins/data/public/search/fetch/extract_warnings.test.ts rename to src/plugins/data/public/search/warnings/extract_warnings.test.ts index fed0969c2004f..6a5fc046dc5d3 100644 --- a/src/plugins/data/public/search/fetch/extract_warnings.test.ts +++ b/src/plugins/data/public/search/warnings/extract_warnings.test.ts @@ -7,8 +7,11 @@ */ import { estypes } from '@elastic/elasticsearch'; +import type { Start as InspectorStartContract } from '@kbn/inspector-plugin/public'; import { extractWarnings } from './extract_warnings'; +const mockInspectorService = {} as InspectorStartContract; + describe('extract search response warnings', () => { describe('single cluster', () => { it('should extract incomplete warning from response with shard failures', () => { @@ -37,7 +40,7 @@ describe('extract search response warnings', () => { aggregations: {}, }; - expect(extractWarnings(response)).toEqual([ + expect(extractWarnings(response, mockInspectorService)).toEqual([ { type: 'incomplete', message: 'The data might be incomplete or wrong.', @@ -51,6 +54,7 @@ describe('extract search response warnings', () => { failures: response._shards.failures, }, }, + openInInspector: expect.any(Function), }, ]); }); @@ -62,7 +66,7 @@ describe('extract search response warnings', () => { _shards: {} as estypes.ShardStatistics, hits: { hits: [] }, }; - expect(extractWarnings(response)).toEqual([ + expect(extractWarnings(response, mockInspectorService)).toEqual([ { type: 'incomplete', message: 'The data might be incomplete or wrong.', @@ -76,18 +80,22 @@ describe('extract search response warnings', () => { failures: response._shards.failures, }, }, + openInInspector: expect.any(Function), }, ]); }); it('should not include warnings when there are none', () => { - const warnings = extractWarnings({ - timed_out: false, - _shards: { - failed: 0, - total: 9000, - }, - } as estypes.SearchResponse); + const warnings = extractWarnings( + { + timed_out: false, + _shards: { + failed: 0, + total: 9000, + }, + } as estypes.SearchResponse, + mockInspectorService + ); expect(warnings).toEqual([]); }); @@ -177,11 +185,12 @@ describe('extract search response warnings', () => { aggregations: {}, }; - expect(extractWarnings(response)).toEqual([ + expect(extractWarnings(response, mockInspectorService)).toEqual([ { type: 'incomplete', message: 'The data might be incomplete or wrong.', clusters: response._clusters.details, + openInInspector: expect.any(Function), }, ]); }); @@ -230,58 +239,62 @@ describe('extract search response warnings', () => { }, hits: { hits: [] }, }; - expect(extractWarnings(response)).toEqual([ + expect(extractWarnings(response, mockInspectorService)).toEqual([ { type: 'incomplete', message: 'The data might be incomplete or wrong.', clusters: response._clusters.details, + openInInspector: expect.any(Function), }, ]); }); it('should not include warnings when there are none', () => { - const warnings = extractWarnings({ - took: 10, - timed_out: false, - _shards: { - total: 4, - successful: 4, - skipped: 0, - failed: 0, - }, - _clusters: { - total: 2, - successful: 2, - skipped: 0, - details: { - '(local)': { - status: 'successful', - indices: 'kibana_sample_data_logs,kibana_sample_data_flights', - took: 0, - timed_out: false, - _shards: { - total: 2, - successful: 2, - skipped: 0, - failed: 0, + const warnings = extractWarnings( + { + took: 10, + timed_out: false, + _shards: { + total: 4, + successful: 4, + skipped: 0, + failed: 0, + }, + _clusters: { + total: 2, + successful: 2, + skipped: 0, + details: { + '(local)': { + status: 'successful', + indices: 'kibana_sample_data_logs,kibana_sample_data_flights', + took: 0, + timed_out: false, + _shards: { + total: 2, + successful: 2, + skipped: 0, + failed: 0, + }, }, - }, - remote1: { - status: 'successful', - indices: 'kibana_sample_data_logs,kibana_sample_data_flights', - took: 1, - timed_out: false, - _shards: { - total: 2, - successful: 2, - skipped: 0, - failed: 0, + remote1: { + status: 'successful', + indices: 'kibana_sample_data_logs,kibana_sample_data_flights', + took: 1, + timed_out: false, + _shards: { + total: 2, + successful: 2, + skipped: 0, + failed: 0, + }, }, }, }, - }, - hits: { hits: [] }, - } as estypes.SearchResponse); + hits: { hits: [] }, + } as estypes.SearchResponse, + mockInspectorService + ); expect(warnings).toEqual([]); }); diff --git a/src/plugins/data/public/search/fetch/extract_warnings.ts b/src/plugins/data/public/search/warnings/extract_warnings.ts similarity index 61% rename from src/plugins/data/public/search/fetch/extract_warnings.ts rename to src/plugins/data/public/search/warnings/extract_warnings.ts index 34b30d5f971bf..2a6a9df484036 100644 --- a/src/plugins/data/public/search/fetch/extract_warnings.ts +++ b/src/plugins/data/public/search/warnings/extract_warnings.ts @@ -9,12 +9,19 @@ import { estypes } from '@elastic/elasticsearch'; import { i18n } from '@kbn/i18n'; import type { ClusterDetails } from '@kbn/es-types'; +import type { Start as InspectorStartContract } from '@kbn/inspector-plugin/public'; +import { RequestAdapter } from '@kbn/inspector-plugin/common/adapters/request'; +import type { IInspectorInfo } from '../../../common/search/search_source'; import { SearchResponseWarning } from '../types'; /** * @internal */ -export function extractWarnings(rawResponse: estypes.SearchResponse): SearchResponseWarning[] { +export function extractWarnings( + rawResponse: estypes.SearchResponse, + inspectorService: InspectorStartContract, + inspector?: IInspectorInfo +): SearchResponseWarning[] { const warnings: SearchResponseWarning[] = []; const isPartial = rawResponse._clusters @@ -48,6 +55,29 @@ export function extractWarnings(rawResponse: estypes.SearchResponse): SearchResp failures: rawResponse._shards.failures, }, }, + openInInspector: () => { + const adapter = inspector?.adapter ? inspector.adapter : new RequestAdapter(); + if (!inspector?.adapter) { + const requestResponder = adapter.start( + i18n.translate('data.search.searchSource.anonymousRequestTitle', { + defaultMessage: 'Request', + }) + ); + requestResponder.ok({ json: rawResponse }); + } + + inspectorService.open( + { + requests: adapter, + }, + { + options: { + initialRequestId: inspector?.id, + initialTabs: ['clusters', 'response'], + }, + } + ); + }, }); } diff --git a/src/plugins/data/public/search/fetch/handle_warnings.tsx b/src/plugins/data/public/search/warnings/handle_warnings.tsx similarity index 83% rename from src/plugins/data/public/search/fetch/handle_warnings.tsx rename to src/plugins/data/public/search/warnings/handle_warnings.tsx index 3380ffe0c8c99..3409baaa4e2a4 100644 --- a/src/plugins/data/public/search/fetch/handle_warnings.tsx +++ b/src/plugins/data/public/search/warnings/handle_warnings.tsx @@ -6,20 +6,22 @@ * Side Public License, v 1. */ -import { estypes } from '@elastic/elasticsearch'; +import React from 'react'; import { EuiTextAlign } from '@elastic/eui'; +import { estypes } from '@elastic/elasticsearch'; import { ThemeServiceStart } from '@kbn/core/public'; import { toMountPoint } from '@kbn/kibana-react-plugin/public'; -import React from 'react'; +import type { Start as InspectorStartContract } from '@kbn/inspector-plugin/public'; import { SearchRequest } from '..'; import { getNotifications } from '../../services'; -import { OpenIncompleteResultsModalButton } from '../../incomplete_results_modal'; +import type { IInspectorInfo } from '../../../common/search/search_source'; import { SearchResponseIncompleteWarning, SearchResponseWarning, WarningHandlerCallback, } from '../types'; import { extractWarnings } from './extract_warnings'; +import { ViewWarningButton } from './view_warning_button'; /** * @internal @@ -30,17 +32,19 @@ export function handleWarnings({ response, theme, callback, - sessionId = '', requestId, + inspector, + inspectorService, }: { request: SearchRequest; response: estypes.SearchResponse; theme: ThemeServiceStart; callback?: WarningHandlerCallback; - sessionId?: string; requestId?: string; + inspector?: IInspectorInfo; + inspectorService: InspectorStartContract; }) { - const warnings = extractWarnings(response); + const warnings = extractWarnings(response, inspectorService, inspector); if (warnings.length === 0) { return; } @@ -63,14 +67,7 @@ export function handleWarnings({ title: incompleteWarning.message, text: toMountPoint( - ({ - request, - response, - })} - warning={incompleteWarning} - /> + , { theme$: theme.theme$ } ), diff --git a/src/plugins/data/public/search/fetch/index.ts b/src/plugins/data/public/search/warnings/index.ts similarity index 87% rename from src/plugins/data/public/search/fetch/index.ts rename to src/plugins/data/public/search/warnings/index.ts index 364bbeb322b5c..8b4fc162a6c54 100644 --- a/src/plugins/data/public/search/fetch/index.ts +++ b/src/plugins/data/public/search/warnings/index.ts @@ -7,3 +7,4 @@ */ export { handleWarnings } from './handle_warnings'; +export { ViewWarningButton } from './view_warning_button'; diff --git a/src/plugins/data/public/incomplete_results_modal/index.tsx b/src/plugins/data/public/search/warnings/view_warning_button/index.tsx similarity index 58% rename from src/plugins/data/public/incomplete_results_modal/index.tsx rename to src/plugins/data/public/search/warnings/view_warning_button/index.tsx index 9cb02367e67a5..4df4d1fa98104 100644 --- a/src/plugins/data/public/incomplete_results_modal/index.tsx +++ b/src/plugins/data/public/search/warnings/view_warning_button/index.tsx @@ -7,13 +7,13 @@ */ import React from 'react'; -import type { OpenIncompleteResultsModalButtonProps } from './open_incomplete_results_modal_button'; +import type { Props } from './view_warning_button'; const Fallback = () =>
; -const LazyOpenModalButton = React.lazy(() => import('./open_incomplete_results_modal_button')); -export const OpenIncompleteResultsModalButton = (props: OpenIncompleteResultsModalButtonProps) => ( +const LazyViewWarningButton = React.lazy(() => import('./view_warning_button')); +export const ViewWarningButton = (props: Props) => ( }> - + ); diff --git a/src/plugins/data/public/search/warnings/view_warning_button/view_warning_button.tsx b/src/plugins/data/public/search/warnings/view_warning_button/view_warning_button.tsx new file mode 100644 index 0000000000000..91eda6b18c296 --- /dev/null +++ b/src/plugins/data/public/search/warnings/view_warning_button/view_warning_button.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 + * 2.0 and the Server Side Public License, v 1; you may not use this file except + * in compliance with, at your election, the Elastic License 2.0 or the Server + * Side Public License, v 1. + */ + +import React from 'react'; +import { FormattedMessage } from '@kbn/i18n-react'; +import { EuiLink, EuiButton, EuiButtonProps } from '@elastic/eui'; + +export interface Props { + onClick: () => void; + size?: EuiButtonProps['size']; + color?: EuiButtonProps['color']; + isButtonEmpty?: boolean; +} + +// Needed for React.lazy +// eslint-disable-next-line import/no-default-export +export default function ViewWarningButton({ + onClick, + size = 's', + color = 'warning', + isButtonEmpty = false, +}: Props) { + const Component = isButtonEmpty ? EuiLink : EuiButton; + + return ( + + + + ); +} diff --git a/src/plugins/data/public/shard_failure_modal/__mocks__/shard_failure_response.ts b/src/plugins/data/public/shard_failure_modal/__mocks__/shard_failure_response.ts deleted file mode 100644 index b45caefd5fe26..0000000000000 --- a/src/plugins/data/public/shard_failure_modal/__mocks__/shard_failure_response.ts +++ /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 - * 2.0 and the Server Side Public License, v 1; you may not use this file except - * in compliance with, at your election, the Elastic License 2.0 or the Server - * Side Public License, v 1. - */ - -import { estypes } from '@elastic/elasticsearch'; - -export const shardFailureResponse: estypes.SearchResponse = { - _shards: { - total: 2, - successful: 1, - skipped: 0, - failed: 1, - failures: [ - { - shard: 0, - index: 'repro2', - node: 'itsmeyournode', - reason: { - type: 'script_exception', - reason: 'runtime error', - script_stack: ["return doc['targetfield'].value;", ' ^---- HERE'], - script: "return doc['targetfield'].value;", - lang: 'painless', - caused_by: { - type: 'illegal_argument_exception', - reason: 'Gimme reason', - }, - }, - }, - ], - }, -} as unknown as estypes.SearchResponse; diff --git a/src/plugins/data/public/shard_failure_modal/__snapshots__/shard_failure_description.test.tsx.snap b/src/plugins/data/public/shard_failure_modal/__snapshots__/shard_failure_description.test.tsx.snap deleted file mode 100644 index c8635d69e1fde..0000000000000 --- a/src/plugins/data/public/shard_failure_modal/__snapshots__/shard_failure_description.test.tsx.snap +++ /dev/null @@ -1,184 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`ShardFailureDescription renders matching snapshot given valid properties 1`] = ` - - - - - - - Show details - - - -`; - -exports[`ShardFailureDescription should show more details when button is pressed 1`] = ` - - - - return doc['targetfield'].value; - ^---- HERE - , - "title": "Script stack", - }, - Object { - "description": - return doc['targetfield'].value; - , - "title": "Script", - }, - Object { - "description": "painless", - "title": "Lang", - }, - Object { - "description": "illegal_argument_exception", - "title": "Caused by type", - }, - Object { - "description": "Gimme reason", - "title": "Caused by reason", - }, - ] - } - titleProps={ - Object { - "className": "shardFailureModal__descTitle", - } - } - type="responsiveColumn" - /> - - - - Show less - - - -`; diff --git a/src/plugins/data/public/shard_failure_modal/__snapshots__/shard_failure_table.test.tsx.snap b/src/plugins/data/public/shard_failure_modal/__snapshots__/shard_failure_table.test.tsx.snap deleted file mode 100644 index f5e3f66e407f9..0000000000000 --- a/src/plugins/data/public/shard_failure_modal/__snapshots__/shard_failure_table.test.tsx.snap +++ /dev/null @@ -1,89 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`ShardFailureTable renders matching snapshot given valid properties 1`] = ` - -`; diff --git a/src/plugins/data/public/shard_failure_modal/shard_failure_description.test.tsx b/src/plugins/data/public/shard_failure_modal/shard_failure_description.test.tsx deleted file mode 100644 index 23a455ac04c3c..0000000000000 --- a/src/plugins/data/public/shard_failure_modal/shard_failure_description.test.tsx +++ /dev/null @@ -1,28 +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 - * 2.0 and the Server Side Public License, v 1; you may not use this file except - * in compliance with, at your election, the Elastic License 2.0 or the Server - * Side Public License, v 1. - */ - -import React from 'react'; -import { EuiButtonEmpty } from '@elastic/eui'; -import { shallowWithIntl } from '@kbn/test-jest-helpers'; -import { ShardFailureDescription } from './shard_failure_description'; -import { shardFailureResponse } from './__mocks__/shard_failure_response'; - -describe('ShardFailureDescription', () => { - it('renders matching snapshot given valid properties', () => { - const failure = shardFailureResponse._shards.failures![0]; - const component = shallowWithIntl(); - expect(component).toMatchSnapshot(); - }); - - it('should show more details when button is pressed', async () => { - const failure = shardFailureResponse._shards.failures![0]; - const component = shallowWithIntl(); - await component.find(EuiButtonEmpty).simulate('click'); - expect(component).toMatchSnapshot(); - }); -}); diff --git a/src/plugins/data/public/shard_failure_modal/shard_failure_description.tsx b/src/plugins/data/public/shard_failure_modal/shard_failure_description.tsx deleted file mode 100644 index 32b54a87294d3..0000000000000 --- a/src/plugins/data/public/shard_failure_modal/shard_failure_description.tsx +++ /dev/null @@ -1,130 +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 - * 2.0 and the Server Side Public License, v 1; you may not use this file except - * in compliance with, at your election, the Elastic License 2.0 or the Server - * Side Public License, v 1. - */ - -import React, { useState } from 'react'; -import { estypes } from '@elastic/elasticsearch'; -import { i18n } from '@kbn/i18n'; -import { css } from '@emotion/react'; -import { getFlattenedObject } from '@kbn/std'; -import { - EuiButtonEmpty, - EuiCodeBlock, - EuiDescriptionList, - EuiFlexGroup, - EuiFlexItem, -} from '@elastic/eui'; - -/** - * Provides pretty formatting of a given key string - * e.g. formats "this_key.is_nice" to "This key is nice" - * @param key - */ -export function formatKey(key: string): string { - const nameCapitalized = key.charAt(0).toUpperCase() + key.slice(1); - return nameCapitalized.replace(/[\._]/g, ' '); -} -/** - * Adds a EuiCodeBlock to values of `script` and `script_stack` key - * Values of other keys are handled a strings - * @param value - * @param key - */ -export function formatValueByKey(value: unknown, key: string): string | JSX.Element { - if (key === 'script' || key === 'script_stack') { - const valueScript = Array.isArray(value) ? value.join('\n') : String(value); - return ( - - {valueScript} - - ); - } else { - return String(value); - } -} - -export function ShardFailureDescription(props: estypes.ShardFailure) { - const [showDetails, setShowDetails] = useState(false); - - const flattendReason = getFlattenedObject(props.reason); - - const reasonItems = Object.entries(flattendReason) - .filter(([key]) => key !== 'type') - .map(([key, value]) => ({ - title: formatKey(key), - description: formatValueByKey(value, key), - })); - - const items = [ - { - title: i18n.translate('data.search.searchSource.fetch.shardsFailedModal.shardTitle', { - defaultMessage: 'Shard', - }), - description: props.shard, - }, - { - title: i18n.translate('data.search.searchSource.fetch.shardsFailedModal.indexTitle', { - defaultMessage: 'Index', - }), - description: props.index ?? '', - }, - { - title: i18n.translate('data.search.searchSource.fetch.shardsFailedModal.reasonTypeTitle', { - defaultMessage: 'Type', - }), - description: props.reason.type, - }, - ...(showDetails - ? [ - { - title: i18n.translate('data.search.searchSource.fetch.shardsFailedModal.nodeTitle', { - defaultMessage: 'Node', - }), - description: props.node ?? '', - }, - ...reasonItems, - ] - : []), - ]; - - return ( - - - - - - setShowDetails((prev) => !prev)} flush="left"> - {showDetails - ? i18n.translate( - 'data.search.searchSource.fetch.shardsFailedModal.showLessButtonLabel', - { - defaultMessage: 'Show less', - } - ) - : i18n.translate( - 'data.search.searchSource.fetch.shardsFailedModal.showMoreButtonLabel', - { - defaultMessage: 'Show details', - } - )} - - - - ); -} diff --git a/src/plugins/data/public/shard_failure_modal/shard_failure_table.test.tsx b/src/plugins/data/public/shard_failure_modal/shard_failure_table.test.tsx deleted file mode 100644 index 567ad8ff80ac2..0000000000000 --- a/src/plugins/data/public/shard_failure_modal/shard_failure_table.test.tsx +++ /dev/null @@ -1,21 +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 - * 2.0 and the Server Side Public License, v 1; you may not use this file except - * in compliance with, at your election, the Elastic License 2.0 or the Server - * Side Public License, v 1. - */ - -import React from 'react'; -import { shallowWithIntl } from '@kbn/test-jest-helpers'; -import { ShardFailureTable } from './shard_failure_table'; -import { shardFailureResponse } from './__mocks__/shard_failure_response'; - -describe('ShardFailureTable', () => { - it('renders matching snapshot given valid properties', () => { - const component = shallowWithIntl( - - ); - expect(component).toMatchSnapshot(); - }); -}); diff --git a/src/plugins/data/public/shard_failure_modal/shard_failure_table.tsx b/src/plugins/data/public/shard_failure_modal/shard_failure_table.tsx deleted file mode 100644 index cb4fed32f11eb..0000000000000 --- a/src/plugins/data/public/shard_failure_modal/shard_failure_table.tsx +++ /dev/null @@ -1,61 +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 - * 2.0 and the Server Side Public License, v 1; you may not use this file except - * in compliance with, at your election, the Elastic License 2.0 or the Server - * Side Public License, v 1. - */ - -import React from 'react'; -import { estypes } from '@elastic/elasticsearch'; -import { i18n } from '@kbn/i18n'; -import { css } from '@emotion/react'; -import { EuiInMemoryTable, EuiInMemoryTableProps, euiScreenReaderOnly } from '@elastic/eui'; -import { ShardFailureDescription } from './shard_failure_description'; - -export interface ListItem extends estypes.ShardFailure { - id: string; -} - -const SORTING: EuiInMemoryTableProps['sorting'] = { - sort: { - field: 'index', - direction: 'desc', - }, -}; - -export function ShardFailureTable({ failures }: { failures: estypes.ShardFailure[] }) { - const itemList = failures.map((failure, idx) => ({ ...{ id: String(idx) }, ...failure })); - - const columns = [ - { - name: i18n.translate('data.search.searchSource.fetch.shardsFailedModal.tableColReason', { - defaultMessage: 'Reason', - }), - render: (item: ListItem) => { - return ; - }, - mobileOptions: { - header: false, - }, - }, - ]; - - return ( - 10} - sorting={SORTING} - css={css` - & .euiTableHeaderCell { - ${euiScreenReaderOnly()} - } - & .euiTableRowCell { - border-top: none; - } - `} - /> - ); -} diff --git a/src/plugins/data/public/types.ts b/src/plugins/data/public/types.ts index 924ddc87fb426..538f0412f2f8c 100644 --- a/src/plugins/data/public/types.ts +++ b/src/plugins/data/public/types.ts @@ -12,7 +12,10 @@ import { DataViewsPublicPluginStart } from '@kbn/data-views-plugin/public'; import { UiActionsSetup, UiActionsStart } from '@kbn/ui-actions-plugin/public'; import { FieldFormatsSetup, FieldFormatsStart } from '@kbn/field-formats-plugin/public'; import { UsageCollectionSetup } from '@kbn/usage-collection-plugin/public'; -import { Setup as InspectorSetup } from '@kbn/inspector-plugin/public'; +import { + Setup as InspectorSetup, + Start as InspectorStartContract, +} from '@kbn/inspector-plugin/public'; import { ScreenshotModePluginStart } from '@kbn/screenshot-mode-plugin/public'; import { SharePluginStart } from '@kbn/share-plugin/public'; import { ManagementSetup } from '@kbn/management-plugin/public'; @@ -41,6 +44,7 @@ export interface DataStartDependencies { uiActions: UiActionsStart; fieldFormats: FieldFormatsStart; dataViews: DataViewsPublicPluginStart; + inspector: InspectorStartContract; screenshotMode: ScreenshotModePluginStart; share: SharePluginStart; } diff --git a/src/plugins/data/tsconfig.json b/src/plugins/data/tsconfig.json index 81820900557d7..e86d61d8aa7c3 100644 --- a/src/plugins/data/tsconfig.json +++ b/src/plugins/data/tsconfig.json @@ -38,7 +38,6 @@ "@kbn/management-plugin", "@kbn/test-jest-helpers", "@kbn/core-notifications-browser-mocks", - "@kbn/std", "@kbn/i18n-react", "@kbn/analytics", "@kbn/core-http-browser", diff --git a/src/plugins/inspector/public/views/requests/components/details/clusters_view/clusters_view.tsx b/src/plugins/inspector/public/views/requests/components/details/clusters_view/clusters_view.tsx index c96b03e1d6795..1e35e0276139e 100644 --- a/src/plugins/inspector/public/views/requests/components/details/clusters_view/clusters_view.tsx +++ b/src/plugins/inspector/public/views/requests/components/details/clusters_view/clusters_view.tsx @@ -11,12 +11,12 @@ import { estypes } from '@elastic/elasticsearch'; import { EuiSpacer } from '@elastic/eui'; import type { ClusterDetails } from '@kbn/es-types'; import { Request } from '../../../../../../common/adapters/request/types'; -import type { RequestDetailsProps } from '../../types'; +import type { DetailViewProps } from '../types'; import { getLocalClusterDetails, LOCAL_CLUSTER_KEY } from './local_cluster'; import { ClustersHealth } from './clusters_health'; import { ClustersTable } from './clusters_table'; -export class ClustersView extends Component { +export class ClustersView extends Component { static shouldShow = (request: Request) => Boolean( (request.response?.json as { rawResponse?: estypes.SearchResponse })?.rawResponse?._shards || diff --git a/src/plugins/inspector/public/views/requests/components/details/index.ts b/src/plugins/inspector/public/views/requests/components/details/index.ts index 49356d695f47d..5bf920559adca 100644 --- a/src/plugins/inspector/public/views/requests/components/details/index.ts +++ b/src/plugins/inspector/public/views/requests/components/details/index.ts @@ -6,6 +6,7 @@ * Side Public License, v 1. */ +export type { DetailViewProps } from './types'; export { RequestDetailsRequest } from './req_details_request'; export { RequestDetailsResponse } from './req_details_response'; export { RequestDetailsStats } from './req_details_stats'; diff --git a/src/plugins/inspector/public/views/requests/components/details/req_details_request.tsx b/src/plugins/inspector/public/views/requests/components/details/req_details_request.tsx index d340cba2b2aae..0750ccfa4620b 100644 --- a/src/plugins/inspector/public/views/requests/components/details/req_details_request.tsx +++ b/src/plugins/inspector/public/views/requests/components/details/req_details_request.tsx @@ -7,16 +7,11 @@ */ import React, { Component } from 'react'; -import PropTypes from 'prop-types'; import { Request } from '../../../../../common/adapters/request/types'; -import { RequestDetailsProps } from '../types'; +import { DetailViewProps } from './types'; import { RequestCodeViewer } from './req_code_viewer'; -export class RequestDetailsRequest extends Component { - static propTypes = { - request: PropTypes.object.isRequired, - }; - +export class RequestDetailsRequest extends Component { static shouldShow = (request: Request) => Boolean(request && request.json); render() { diff --git a/src/plugins/inspector/public/views/requests/components/details/req_details_response.tsx b/src/plugins/inspector/public/views/requests/components/details/req_details_response.tsx index f9960f3486286..023a44fb72fb9 100644 --- a/src/plugins/inspector/public/views/requests/components/details/req_details_response.tsx +++ b/src/plugins/inspector/public/views/requests/components/details/req_details_response.tsx @@ -7,16 +7,11 @@ */ import React, { Component } from 'react'; -import PropTypes from 'prop-types'; import { Request } from '../../../../../common/adapters/request/types'; -import { RequestDetailsProps } from '../types'; +import { DetailViewProps } from './types'; import { RequestCodeViewer } from './req_code_viewer'; -export class RequestDetailsResponse extends Component { - static propTypes = { - request: PropTypes.object.isRequired, - }; - +export class RequestDetailsResponse extends Component { static shouldShow = (request: Request) => Boolean(RequestDetailsResponse.getResponseJson(request)); diff --git a/src/plugins/inspector/public/views/requests/components/details/req_details_stats.tsx b/src/plugins/inspector/public/views/requests/components/details/req_details_stats.tsx index 176eafa146485..fc0ab22e826ff 100644 --- a/src/plugins/inspector/public/views/requests/components/details/req_details_stats.tsx +++ b/src/plugins/inspector/public/views/requests/components/details/req_details_stats.tsx @@ -7,7 +7,6 @@ */ import React, { Component } from 'react'; -import PropTypes from 'prop-types'; import { EuiIcon, EuiIconTip, @@ -18,18 +17,14 @@ import { } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { Request, RequestStatistic } from '../../../../../common/adapters/request/types'; -import { RequestDetailsProps } from '../types'; +import { DetailViewProps } from './types'; // TODO: Replace by property once available interface RequestDetailsStatRow extends RequestStatistic { id: string; } -export class RequestDetailsStats extends Component { - static propTypes = { - request: PropTypes.object.isRequired, - }; - +export class RequestDetailsStats extends Component { static shouldShow = (request: Request) => Boolean(request.stats && Object.keys(request.stats).length); diff --git a/src/plugins/inspector/public/views/requests/components/details/types.ts b/src/plugins/inspector/public/views/requests/components/details/types.ts new file mode 100644 index 0000000000000..6cd33104a8696 --- /dev/null +++ b/src/plugins/inspector/public/views/requests/components/details/types.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 + * 2.0 and the Server Side Public License, v 1; you may not use this file except + * in compliance with, at your election, the Elastic License 2.0 or the Server + * Side Public License, v 1. + */ + +import { Request } from '../../../../../common/adapters/request/types'; + +export interface DetailViewProps { + request: Request; +} diff --git a/src/plugins/inspector/public/views/requests/components/get_next_tab.test.ts b/src/plugins/inspector/public/views/requests/components/get_next_tab.test.ts new file mode 100644 index 0000000000000..27206e43c684f --- /dev/null +++ b/src/plugins/inspector/public/views/requests/components/get_next_tab.test.ts @@ -0,0 +1,62 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0 and the Server Side Public License, v 1; you may not use this file except + * in compliance with, at your election, the Elastic License 2.0 or the Server + * Side Public License, v 1. + */ + +import { getNextTab } from './get_next_tab'; + +const tabs = [ + { + name: 'Tab0', + label: 'Tab0', + component: null, + }, + { + name: 'Tab1', + label: 'Tab1', + component: null, + }, + { + name: 'Tab2', + label: 'Tab2', + component: null, + }, +]; + +describe('getNextTab', () => { + describe('no currentTab', () => { + test('should return first tab when preferred tabs are not requested', () => { + expect(getNextTab(null, tabs)).toEqual(tabs[0]); + }); + + test('should return first preferred tab when available', () => { + expect(getNextTab(null, tabs, ['tab1'])).toEqual(tabs[1]); + }); + + test('should return second preferred tab when first preferred tab is not available', () => { + expect(getNextTab(null, tabs, ['notAvailableTabName', 'tab2'])).toEqual(tabs[2]); + }); + + test('should return first tab when all preferred tabs are not available', () => { + expect(getNextTab(null, tabs, ['notAvailableTabName'])).toEqual(tabs[0]); + }); + }); + + describe('currentTab', () => { + const currentTab = { + name: 'noLongerAvailableTab', + label: 'noLongerAvailableTab', + component: null, + }; + test('should return first tab when preferred tabs are not requested', () => { + expect(getNextTab(currentTab, tabs)).toEqual(tabs[0]); + }); + + test('should ignore preferred tabs and return first tab', () => { + expect(getNextTab(currentTab, tabs, ['tab1'])).toEqual(tabs[0]); + }); + }); +}); diff --git a/src/plugins/inspector/public/views/requests/components/get_next_tab.ts b/src/plugins/inspector/public/views/requests/components/get_next_tab.ts new file mode 100644 index 0000000000000..de05f70dac130 --- /dev/null +++ b/src/plugins/inspector/public/views/requests/components/get_next_tab.ts @@ -0,0 +1,29 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0 and the Server Side Public License, v 1; you may not use this file except + * in compliance with, at your election, the Elastic License 2.0 or the Server + * Side Public License, v 1. + */ + +import type { DetailViewData } from './types'; + +export function getNextTab( + currentTab: DetailViewData | null, + tabs: DetailViewData[], + preferredTabs?: string[] +) { + const firstTab = tabs.length ? tabs[0] : null; + if (currentTab || !preferredTabs) { + return firstTab; + } + + const preferredTabName = preferredTabs.find((tabName) => { + return tabs.some(({ name }) => tabName.toLowerCase() === name.toLowerCase()); + }); + const preferredTab = preferredTabName + ? tabs.find(({ name }) => preferredTabName.toLowerCase() === name.toLowerCase()) + : undefined; + + return preferredTab ? preferredTab : firstTab; +} diff --git a/src/plugins/inspector/public/views/requests/components/request_details.tsx b/src/plugins/inspector/public/views/requests/components/request_details.tsx index 6130e9e33390a..9c1b4d3d51ba9 100644 --- a/src/plugins/inspector/public/views/requests/components/request_details.tsx +++ b/src/plugins/inspector/public/views/requests/components/request_details.tsx @@ -6,10 +6,12 @@ * Side Public License, v 1. */ -import React, { Component } from 'react'; -import PropTypes from 'prop-types'; +import React, { useEffect, useState } from 'react'; import { i18n } from '@kbn/i18n'; import { EuiTab, EuiTabs } from '@elastic/eui'; +import type { DetailViewData } from './types'; +import { getNextTab } from './get_next_tab'; +import { Request } from '../../../../common/adapters/request/types'; import { ClustersView, @@ -17,17 +19,10 @@ import { RequestDetailsResponse, RequestDetailsStats, } from './details'; -import { RequestDetailsProps } from './types'; -interface RequestDetailsState { - availableDetails: DetailViewData[]; - selectedDetail: DetailViewData | null; -} - -export interface DetailViewData { - name: string; - label: string; - component: any; +interface Props { + initialTabs?: string[]; + request: Request; } const DETAILS: DetailViewData[] = [ @@ -39,7 +34,7 @@ const DETAILS: DetailViewData[] = [ component: RequestDetailsStats, }, { - name: 'clusters', + name: 'Clusters', label: i18n.translate('inspector.requests.clustersTabLabel', { defaultMessage: 'Clusters', }), @@ -61,72 +56,47 @@ const DETAILS: DetailViewData[] = [ }, ]; -export class RequestDetails extends Component { - static propTypes = { - request: PropTypes.object.isRequired, - }; - - state = { - availableDetails: [], - selectedDetail: null, - }; +export function RequestDetails(props: Props) { + const [availableDetails, setAvailableDetails] = useState([]); + const [selectedDetail, setSelectedDetail] = useState(null); - static getDerivedStateFromProps(nextProps: RequestDetailsProps, prevState: RequestDetailsState) { - const selectedDetail = prevState && prevState.selectedDetail; - const availableDetails = DETAILS.filter( - (detail: DetailViewData) => - !detail.component.shouldShow || detail.component.shouldShow(nextProps.request) + useEffect(() => { + const nextAvailableDetails = DETAILS.filter((detail: DetailViewData) => + detail.component.shouldShow?.(props.request) ); + setAvailableDetails(nextAvailableDetails); + // If the previously selected detail is still available we want to stay // on this tab and not set another selectedDetail. - if (selectedDetail && availableDetails.includes(selectedDetail)) { - return { availableDetails }; - } - - return { - availableDetails, - selectedDetail: availableDetails[0], - }; - } - - selectDetailsTab = (detail: DetailViewData) => { - if (detail !== this.state.selectedDetail) { - this.setState({ - selectedDetail: detail, - }); + if (selectedDetail && nextAvailableDetails.find(({ name }) => name === selectedDetail.name)) { + return; } - }; - - static getSelectedDetailComponent(detail: DetailViewData | null) { - return detail ? detail.component : null; - } - - renderDetailTab = (detail: DetailViewData) => { - return ( - this.selectDetailsTab(detail)} - data-test-subj={`inspectorRequestDetail${detail.name}`} - > - {detail.label} - - ); - }; - render() { - const { selectedDetail, availableDetails } = this.state; - const DetailComponent = RequestDetails.getSelectedDetailComponent(selectedDetail); + setSelectedDetail(getNextTab(selectedDetail, nextAvailableDetails, props.initialTabs)); - if (!availableDetails.length || !DetailComponent) { - return null; - } + // do not re-run on selectedDetail change + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [props.initialTabs, props.request]); - return ( - <> - {this.state.availableDetails.map(this.renderDetailTab)} - - - ); - } + return selectedDetail ? ( + <> + + {availableDetails.map((detail) => ( + { + if (detail.name !== selectedDetail.name) { + setSelectedDetail(detail); + } + }} + data-test-subj={`inspectorRequestDetail${detail.name}`} + > + {detail.label} + + ))} + + + + ) : null; } diff --git a/src/plugins/inspector/public/views/requests/components/requests_view.tsx b/src/plugins/inspector/public/views/requests/components/requests_view.tsx index a88bb9b768142..776158c999896 100644 --- a/src/plugins/inspector/public/views/requests/components/requests_view.tsx +++ b/src/plugins/inspector/public/views/requests/components/requests_view.tsx @@ -7,7 +7,6 @@ */ import React, { Component } from 'react'; -import PropTypes from 'prop-types'; import { FormattedMessage } from '@kbn/i18n-react'; import { EuiEmptyPrompt, EuiSpacer, EuiText, EuiTextColor } from '@elastic/eui'; @@ -19,17 +18,29 @@ import { RequestSelector } from './request_selector'; import { RequestDetails } from './request_details'; import { disambiguateRequestNames } from './disambiguate_request_names'; +function getInitialRequest(requests: Request[], initialRequestId?: string) { + const initialRequest = initialRequestId + ? requests.find(({ id }) => id === initialRequestId) + : undefined; + + if (initialRequest) { + return initialRequest; + } + + return requests.length ? requests[0] : null; +} + +interface RequestViewOptions { + initialRequestId?: string; + initialTabs?: string[]; +} + interface RequestSelectorState { requests: Request[]; request: Request | null; } export class RequestsViewComponent extends Component { - static propTypes = { - adapters: PropTypes.object.isRequired, - title: PropTypes.string.isRequired, - }; - constructor(props: InspectorViewProps) { super(props); @@ -38,7 +49,10 @@ export class RequestsViewComponent extends Component - {this.state.request && } + {this.state.request && ( + + )} ); } diff --git a/src/plugins/inspector/public/views/requests/components/types.ts b/src/plugins/inspector/public/views/requests/components/types.ts index ad3f1a528266e..fc9902577c1f7 100644 --- a/src/plugins/inspector/public/views/requests/components/types.ts +++ b/src/plugins/inspector/public/views/requests/components/types.ts @@ -6,8 +6,8 @@ * Side Public License, v 1. */ -import { Request } from '../../../../common/adapters/request/types'; - -export interface RequestDetailsProps { - request: Request; +export interface DetailViewData { + name: string; + label: string; + component: any; } diff --git a/x-pack/plugins/lens/public/datasources/form_based/utils.tsx b/x-pack/plugins/lens/public/datasources/form_based/utils.tsx index 73caafa33fc8e..de2421f672d9a 100644 --- a/x-pack/plugins/lens/public/datasources/form_based/utils.tsx +++ b/x-pack/plugins/lens/public/datasources/form_based/utils.tsx @@ -19,7 +19,7 @@ import { groupBy, escape, uniq, uniqBy } from 'lodash'; import type { Query } from '@kbn/data-plugin/common'; import { SearchRequest } from '@kbn/data-plugin/common'; -import { SearchResponseWarning, OpenIncompleteResultsModalButton } from '@kbn/data-plugin/public'; +import { SearchResponseWarning, ViewWarningButton } from '@kbn/data-plugin/public'; import { estypes } from '@elastic/elasticsearch'; import { isQueryValid } from '@kbn/visualization-ui-components'; @@ -306,18 +306,16 @@ export function getSearchWarningMessages( fixableInEditor: true, displayLocations: [{ id: 'toolbar' }, { id: 'embeddableBadge' }], shortMessage: '', - longMessage: ( + longMessage: (closePopover) => ( <> {warning.message} - { + closePopover(); + warning.openInInspector(); + }} size="m" - getRequestMeta={() => ({ - request, - response, - })} color="primary" isButtonEmpty={true} /> diff --git a/x-pack/plugins/lens/public/editor_frame_service/editor_frame/workspace_panel/message_list.tsx b/x-pack/plugins/lens/public/editor_frame_service/editor_frame/workspace_panel/message_list.tsx index ebf221e9a4832..af4eabda5ffc1 100644 --- a/x-pack/plugins/lens/public/editor_frame_service/editor_frame/workspace_panel/message_list.tsx +++ b/x-pack/plugins/lens/public/editor_frame_service/editor_frame/workspace_panel/message_list.tsx @@ -68,6 +68,7 @@ export const MessageList = ({ const onButtonClick = () => setIsPopoverOpen((isOpen) => !isOpen); const closePopover = () => setIsPopoverOpen(false); + return ( - {message.longMessage} + + {typeof message.longMessage === 'function' + ? message.longMessage(closePopover) + : message.longMessage} + diff --git a/x-pack/plugins/lens/public/types.ts b/x-pack/plugins/lens/public/types.ts index 0c09d84df9adc..4060f1a43d5fa 100644 --- a/x-pack/plugins/lens/public/types.ts +++ b/x-pack/plugins/lens/public/types.ts @@ -285,7 +285,7 @@ export interface UserMessage { uniqueId?: string; severity: 'error' | 'warning' | 'info'; shortMessage: string; - longMessage: React.ReactNode | string; + longMessage: string | React.ReactNode | ((closePopover: () => void) => React.ReactNode); fixableInEditor: boolean; displayLocations: UserMessageDisplayLocation[]; } diff --git a/x-pack/plugins/translations/translations/fr-FR.json b/x-pack/plugins/translations/translations/fr-FR.json index f68c110d14128..485285de75cf9 100644 --- a/x-pack/plugins/translations/translations/fr-FR.json +++ b/x-pack/plugins/translations/translations/fr-FR.json @@ -2061,7 +2061,6 @@ "data.search.searchSource.dataViewDescription": "La vue de données qui a été interrogée.", "data.search.searchSource.dataViewIdLabel": "ID de vue de données", "data.search.searchSource.dataViewLabel": "Vue de données", - "data.search.searchSource.fetch.shardsFailedModal.tableColReason": "Raison", "data.search.searchSource.hitsDescription": "Le nombre de documents renvoyés par la requête.", "data.search.searchSource.hitsLabel": "Résultats", "data.search.searchSource.hitsTotalDescription": "Le nombre de documents correspondant à la requête.", diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index c462b7850cff7..a6a932412d4cb 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -2075,7 +2075,6 @@ "data.search.searchSource.dataViewDescription": "照会されたデータビュー。", "data.search.searchSource.dataViewIdLabel": "データビューID", "data.search.searchSource.dataViewLabel": "データビュー", - "data.search.searchSource.fetch.shardsFailedModal.tableColReason": "理由", "data.search.searchSource.hitsDescription": "クエリにより返されたドキュメントの数です。", "data.search.searchSource.hitsLabel": "ヒット数", "data.search.searchSource.hitsTotalDescription": "クエリに一致するドキュメントの数です。", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index d5ab00e4dc425..b2e3161df7bf0 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -2075,7 +2075,6 @@ "data.search.searchSource.dataViewDescription": "被查询的数据视图。", "data.search.searchSource.dataViewIdLabel": "数据视图 ID", "data.search.searchSource.dataViewLabel": "数据视图", - "data.search.searchSource.fetch.shardsFailedModal.tableColReason": "原因", "data.search.searchSource.hitsDescription": "查询返回的文档数目。", "data.search.searchSource.hitsLabel": "命中数", "data.search.searchSource.hitsTotalDescription": "与查询匹配的文档数目。", From 40303a88c5735b0b029037db2fb388ea995a07b5 Mon Sep 17 00:00:00 2001 From: Nathan Reese Date: Mon, 2 Oct 2023 11:21:35 -0600 Subject: [PATCH 19/22] remove duplicative types from search_source types (#166760) Found duplicated type ShardFailure in data plugin. Same type removed from `src/plugins/data/public/shard_failure_modal/shard_failure_types.ts` in https://github.com/elastic/kibana/pull/165512. This PR removes some unneeded types from `src/plugins/data/common/search/search_source/types.ts`. --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> --- .../normalize_sort_request.test.ts | 2 +- .../search_source/normalize_sort_request.ts | 21 ++++++-- .../data/common/search/search_source/types.ts | 52 ------------------- .../context/utils/fetch_hits_in_interval.ts | 4 +- .../utils/get_es_query_search_after.ts | 4 +- 5 files changed, 21 insertions(+), 62 deletions(-) diff --git a/src/plugins/data/common/search/search_source/normalize_sort_request.test.ts b/src/plugins/data/common/search/search_source/normalize_sort_request.test.ts index 134886efe9e0c..265d8c085b7e9 100644 --- a/src/plugins/data/common/search/search_source/normalize_sort_request.test.ts +++ b/src/plugins/data/common/search/search_source/normalize_sort_request.test.ts @@ -67,7 +67,7 @@ describe('SearchSource#normalizeSortRequest', function () { it('should append default sort options', function () { const defaultSortOptions = { - unmapped_type: 'boolean', + unmapped_type: 'boolean' as 'boolean', }; const result = normalizeSortRequest( [{ someField: SortDirection.desc }], diff --git a/src/plugins/data/common/search/search_source/normalize_sort_request.ts b/src/plugins/data/common/search/search_source/normalize_sort_request.ts index 5744b1fd53801..49cdd8ba289e3 100644 --- a/src/plugins/data/common/search/search_source/normalize_sort_request.ts +++ b/src/plugins/data/common/search/search_source/normalize_sort_request.ts @@ -6,13 +6,21 @@ * Side Public License, v 1. */ +import { estypes } from '@elastic/elasticsearch'; import type { DataView } from '@kbn/data-views-plugin/common'; -import { EsQuerySortValue, SortOptions } from './types'; +import { EsQuerySortValue } from './types'; + +type FieldSortOptions = estypes.FieldSort & + estypes.ScoreSort & + estypes.GeoDistanceSort & + Omit & { + script?: estypes.ScriptSort['script']; + }; export function normalizeSortRequest( sortObject: EsQuerySortValue | EsQuerySortValue[], indexPattern: DataView | string | undefined, - defaultSortOptions: SortOptions = {} + defaultSortOptions: FieldSortOptions | string = {} ) { const sortArray: EsQuerySortValue[] = Array.isArray(sortObject) ? sortObject : [sortObject]; return sortArray.map(function (sortable) { @@ -28,7 +36,7 @@ export function normalizeSortRequest( function normalize( sortable: EsQuerySortValue, indexPattern: DataView | string | undefined, - defaultSortOptions: any + defaultSortOptions: FieldSortOptions | string ) { const [[sortField, sortOrder]] = Object.entries(sortable); const order = typeof sortOrder === 'object' ? sortOrder : { order: sortOrder }; @@ -52,13 +60,16 @@ function normalize( // FIXME: for unknown reason on the server this setting is serialized // https://github.com/elastic/kibana/issues/89902 if (typeof defaultSortOptions === 'string') { - defaultSortOptions = JSON.parse(defaultSortOptions); + defaultSortOptions = JSON.parse(defaultSortOptions) as FieldSortOptions; } // Don't include unmapped_type for _score field // eslint-disable-next-line @typescript-eslint/naming-convention const { unmapped_type, ...otherSortOptions } = defaultSortOptions; return { - [sortField]: { ...order, ...(sortField === '_score' ? otherSortOptions : defaultSortOptions) }, + [sortField]: { + ...order, + ...(sortField === '_score' ? otherSortOptions : defaultSortOptions), + }, }; } diff --git a/src/plugins/data/common/search/search_source/types.ts b/src/plugins/data/common/search/search_source/types.ts index 60c0d3713ec64..98cf431658e4c 100644 --- a/src/plugins/data/common/search/search_source/types.ts +++ b/src/plugins/data/common/search/search_source/types.ts @@ -39,11 +39,6 @@ export interface ISearchStartSearchSource createEmpty: () => ISearchSource; } -/** - * @deprecated use {@link estypes.SortResults} instead. - */ -export type EsQuerySearchAfter = [string | number, string | number]; - export enum SortDirection { asc = 'asc', desc = 'desc', @@ -178,53 +173,6 @@ export interface SearchSourceOptions { callParentStartHandlers?: boolean; } -export interface SortOptions { - mode?: 'min' | 'max' | 'sum' | 'avg' | 'median'; - type?: 'double' | 'long' | 'date' | 'date_nanos'; - nested?: object; - unmapped_type?: string; - distance_type?: 'arc' | 'plane'; - unit?: string; - ignore_unmapped?: boolean; - _script?: object; -} - -export interface Request { - docvalue_fields: string[]; - _source: unknown; - query: unknown; - script_fields: unknown; - sort: unknown; - stored_fields: string[]; -} - -export interface ResponseWithShardFailure { - _shards: { - failed: number; - failures: ShardFailure[]; - skipped: number; - successful: number; - total: number; - }; -} - -export interface ShardFailure { - index: string; - node: string; - reason: { - caused_by: { - reason: string; - type: string; - }; - reason: string; - lang?: estypes.ScriptLanguage; - script?: string; - script_stack?: string[]; - type: string; - }; - shard: number; -} - export function isSerializedSearchSource( maybeSerializedSearchSource: unknown ): maybeSerializedSearchSource is SerializedSearchSourceFields { diff --git a/src/plugins/discover/public/application/context/utils/fetch_hits_in_interval.ts b/src/plugins/discover/public/application/context/utils/fetch_hits_in_interval.ts index d9a06e08fbada..6f070b7335030 100644 --- a/src/plugins/discover/public/application/context/utils/fetch_hits_in_interval.ts +++ b/src/plugins/discover/public/application/context/utils/fetch_hits_in_interval.ts @@ -5,9 +5,9 @@ * in compliance with, at your election, the Elastic License 2.0 or the Server * Side Public License, v 1. */ +import { estypes } from '@elastic/elasticsearch'; import { lastValueFrom } from 'rxjs'; import { ISearchSource, EsQuerySortValue, SortDirection } from '@kbn/data-plugin/public'; -import { EsQuerySearchAfter } from '@kbn/data-plugin/common'; import { buildDataTableRecord } from '@kbn/discover-utils'; import type { DataTableRecord } from '@kbn/discover-utils/types'; import { @@ -39,7 +39,7 @@ export async function fetchHitsInInterval( sort: [EsQuerySortValue, EsQuerySortValue], sortDir: SortDirection, interval: IntervalValue[], - searchAfter: EsQuerySearchAfter, + searchAfter: estypes.SortResults, maxCount: number, nanosValue: string, anchorId: string, diff --git a/src/plugins/discover/public/application/context/utils/get_es_query_search_after.ts b/src/plugins/discover/public/application/context/utils/get_es_query_search_after.ts index 18792cb6a7ff8..c6bab71609e65 100644 --- a/src/plugins/discover/public/application/context/utils/get_es_query_search_after.ts +++ b/src/plugins/discover/public/application/context/utils/get_es_query_search_after.ts @@ -5,7 +5,7 @@ * in compliance with, at your election, the Elastic License 2.0 or the Server * Side Public License, v 1. */ -import type { EsQuerySearchAfter } from '@kbn/data-plugin/common'; +import { estypes } from '@elastic/elasticsearch'; import type { DataTableRecord } from '@kbn/discover-utils/types'; import { SurrDocType } from '../services/context'; @@ -19,7 +19,7 @@ export function getEsQuerySearchAfter( type: SurrDocType, rows: DataTableRecord[], anchor: DataTableRecord -): EsQuerySearchAfter { +): estypes.SortResults { if (rows.length) { // already surrounding docs -> first or last record is used const afterTimeRecIdx = type === SurrDocType.SUCCESSORS && rows.length ? rows.length - 1 : 0; From ea33696ba74b4ca98f972d0e06b6f8c32c650a75 Mon Sep 17 00:00:00 2001 From: Ryland Herrick Date: Mon, 2 Oct 2023 12:27:46 -0500 Subject: [PATCH 20/22] [Security Solution][Entity Analytics] Risk Scoring Task tuning (#167460) ## Summary * Allows risk score task to be cancelled (either by timeout or manually) * Increases task timeout to 10m (from 5m) * Reduces the number of persisted risk inputs from 10 to 5 * Excludes `closed` alerts from risk scoring calculation ### Checklist - [x] Mocking time is hard; validate via smoke testing - [ ] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios --- .../lib/risk_engine/calculate_risk_scores.ts | 9 +- .../server/lib/risk_engine/tasks/constants.ts | 2 +- .../tasks/risk_scoring_task.test.ts | 90 ++++++++++++++----- .../risk_engine/tasks/risk_scoring_task.ts | 18 +++- .../utils/saved_object_configuration.ts | 2 +- .../risk_engine/init_and_status_apis.ts | 2 +- 6 files changed, 94 insertions(+), 29 deletions(-) diff --git a/x-pack/plugins/security_solution/server/lib/risk_engine/calculate_risk_scores.ts b/x-pack/plugins/security_solution/server/lib/risk_engine/calculate_risk_scores.ts index 6c95eb0f13b08..a5c22b867b72f 100644 --- a/x-pack/plugins/security_solution/server/lib/risk_engine/calculate_risk_scores.ts +++ b/x-pack/plugins/security_solution/server/lib/risk_engine/calculate_risk_scores.ts @@ -14,6 +14,7 @@ import type { ElasticsearchClient, Logger } from '@kbn/core/server'; import { ALERT_RISK_SCORE, ALERT_RULE_NAME, + ALERT_WORKFLOW_STATUS, EVENT_KIND, } from '@kbn/rule-registry-plugin/common/technical_rule_data_field_names'; import type { @@ -158,7 +159,7 @@ const buildIdentifierTypeAggregation = ({ aggs: { inputs: { top_hits: { - size: 10, + size: 5, sort: { [ALERT_RISK_SCORE]: 'desc' }, _source: false, docvalue_fields: ['@timestamp', ALERT_RISK_SCORE, ALERT_RULE_NAME], @@ -213,7 +214,11 @@ export const calculateRiskScores = async ({ withSecuritySpan('calculateRiskScores', async () => { const now = new Date().toISOString(); - const filter = [{ exists: { field: ALERT_RISK_SCORE } }, filterFromRange(range)]; + const filter = [ + filterFromRange(range), + { bool: { must_not: { term: { [ALERT_WORKFLOW_STATUS]: 'closed' } } } }, + { exists: { field: ALERT_RISK_SCORE } }, + ]; if (!isEmpty(userFilter)) { filter.push(userFilter as QueryDslQueryContainer); } diff --git a/x-pack/plugins/security_solution/server/lib/risk_engine/tasks/constants.ts b/x-pack/plugins/security_solution/server/lib/risk_engine/tasks/constants.ts index 3af5af989a3c8..c65ff91533669 100644 --- a/x-pack/plugins/security_solution/server/lib/risk_engine/tasks/constants.ts +++ b/x-pack/plugins/security_solution/server/lib/risk_engine/tasks/constants.ts @@ -9,7 +9,7 @@ export const SCOPE = ['securitySolution']; export const TYPE = 'risk_engine:risk_scoring'; export const VERSION = '0.0.1'; export const INTERVAL = '1h'; -export const TIMEOUT = '5m'; +export const TIMEOUT = '10m'; export const RISK_SCORING_TASK_CONSTANTS = { SCOPE, diff --git a/x-pack/plugins/security_solution/server/lib/risk_engine/tasks/risk_scoring_task.test.ts b/x-pack/plugins/security_solution/server/lib/risk_engine/tasks/risk_scoring_task.test.ts index db7dbd19befc9..b6ac21169409e 100644 --- a/x-pack/plugins/security_solution/server/lib/risk_engine/tasks/risk_scoring_task.test.ts +++ b/x-pack/plugins/security_solution/server/lib/risk_engine/tasks/risk_scoring_task.test.ts @@ -173,6 +173,7 @@ describe('Risk Scoring Task', () => { describe('runTask()', () => { let riskScoringTaskInstanceMock: ReturnType; let getRiskScoreService: (namespace: string) => Promise; + let mockIsCancelled: jest.MockedFunction<() => boolean>; beforeEach(async () => { await startRiskScoringTask({ @@ -195,6 +196,7 @@ describe('Risk Scoring Task', () => { pageSize: 10_000, range: { start: 'now-30d', end: 'now' }, }); + mockIsCancelled = jest.fn().mockReturnValue(false); getRiskScoreService = jest.fn().mockResolvedValueOnce(mockRiskScoreService); }); @@ -213,6 +215,7 @@ describe('Risk Scoring Task', () => { getRiskScoreService, logger: mockLogger, taskInstance: riskScoringTaskInstanceMock, + isCancelled: mockIsCancelled, telemetry: mockTelemetry, }); expect(mockRiskScoreService.calculateAndPersistScores).toHaveBeenCalledTimes(1); @@ -239,6 +242,7 @@ describe('Risk Scoring Task', () => { getRiskScoreService, logger: mockLogger, taskInstance: riskScoringTaskInstanceMock, + isCancelled: mockIsCancelled, telemetry: mockTelemetry, }); @@ -250,6 +254,7 @@ describe('Risk Scoring Task', () => { getRiskScoreService, logger: mockLogger, taskInstance: riskScoringTaskInstanceMock, + isCancelled: mockIsCancelled, telemetry: mockTelemetry, }); expect(mockRiskScoreService.calculateAndPersistScores).toHaveBeenCalledTimes(2); @@ -271,6 +276,7 @@ describe('Risk Scoring Task', () => { getRiskScoreService, logger: mockLogger, taskInstance: riskScoringTaskInstanceMock, + isCancelled: mockIsCancelled, telemetry: mockTelemetry, }); @@ -319,6 +325,7 @@ describe('Risk Scoring Task', () => { getRiskScoreService, logger: mockLogger, taskInstance: riskScoringTaskInstanceMock, + isCancelled: mockIsCancelled, telemetry: mockTelemetry, }); expect(mockRiskScoreService.calculateAndPersistScores).toHaveBeenCalledTimes(4); @@ -342,6 +349,7 @@ describe('Risk Scoring Task', () => { getRiskScoreService, logger: mockLogger, taskInstance: riskScoringTaskInstanceMock, + isCancelled: mockIsCancelled, telemetry: mockTelemetry, }); @@ -371,6 +379,7 @@ describe('Risk Scoring Task', () => { getRiskScoreService, logger: mockLogger, taskInstance: riskScoringTaskInstanceMock, + isCancelled: mockIsCancelled, telemetry: mockTelemetry, }); @@ -384,6 +393,7 @@ describe('Risk Scoring Task', () => { getRiskScoreService, logger: mockLogger, taskInstance: riskScoringTaskInstanceMock, + isCancelled: mockIsCancelled, telemetry: mockTelemetry, }); @@ -398,6 +408,7 @@ describe('Risk Scoring Task', () => { getRiskScoreService: jest.fn().mockResolvedValueOnce(undefined), logger: mockLogger, taskInstance: riskScoringTaskInstanceMock, + isCancelled: mockIsCancelled, telemetry: mockTelemetry, }); @@ -408,39 +419,78 @@ describe('Risk Scoring Task', () => { }); }); - it('send success telemetry event', async () => { - await runTask({ - getRiskScoreService, - logger: mockLogger, - taskInstance: riskScoringTaskInstanceMock, - telemetry: mockTelemetry, + describe('when the task timeout has been exceeded', () => { + beforeEach(() => { + mockIsCancelled.mockReturnValue(true); }); - expect(mockTelemetry.reportEvent).toHaveBeenCalledTimes(1); - expect(mockTelemetry.reportEvent).toHaveBeenCalledWith('risk_score_execution_success', { - executionDurationExceededInterval: false, - scoresWritten: 10, - taskDurationInSeconds: 0, + it('stops task execution', async () => { + await runTask({ + getRiskScoreService, + isCancelled: mockIsCancelled, + logger: mockLogger, + taskInstance: riskScoringTaskInstanceMock, + telemetry: mockTelemetry, + }); + + expect(mockRiskScoreService.calculateAndPersistScores).not.toHaveBeenCalled(); }); - }); - it('send error telemetry event', async () => { - mockRiskScoreService.calculateAndPersistScores.mockReset(); - mockRiskScoreService.calculateAndPersistScores.mockImplementationOnce(() => { - throw new Error(); + it('logs that the task was cancelled', async () => { + await runTask({ + getRiskScoreService, + isCancelled: mockIsCancelled, + logger: mockLogger, + taskInstance: riskScoringTaskInstanceMock, + telemetry: mockTelemetry, + }); + + expect(mockLogger.info).toHaveBeenCalledWith( + expect.stringContaining('task was cancelled') + ); }); + }); - try { + describe('telemetry', () => { + it('send success telemetry event', async () => { await runTask({ getRiskScoreService, + isCancelled: mockIsCancelled, logger: mockLogger, taskInstance: riskScoringTaskInstanceMock, telemetry: mockTelemetry, }); - } catch (err) { + expect(mockTelemetry.reportEvent).toHaveBeenCalledTimes(1); - expect(mockTelemetry.reportEvent).toHaveBeenCalledWith('risk_score_execution_error', {}); - } + expect(mockTelemetry.reportEvent).toHaveBeenCalledWith('risk_score_execution_success', { + executionDurationExceededInterval: false, + scoresWritten: 10, + taskDurationInSeconds: 0, + }); + }); + + it('send error telemetry event', async () => { + mockRiskScoreService.calculateAndPersistScores.mockReset(); + mockRiskScoreService.calculateAndPersistScores.mockImplementationOnce(() => { + throw new Error(); + }); + + try { + await runTask({ + getRiskScoreService, + isCancelled: mockIsCancelled, + logger: mockLogger, + taskInstance: riskScoringTaskInstanceMock, + telemetry: mockTelemetry, + }); + } catch (err) { + expect(mockTelemetry.reportEvent).toHaveBeenCalledTimes(1); + expect(mockTelemetry.reportEvent).toHaveBeenCalledWith( + 'risk_score_execution_error', + {} + ); + } + }); }); }); }); diff --git a/x-pack/plugins/security_solution/server/lib/risk_engine/tasks/risk_scoring_task.ts b/x-pack/plugins/security_solution/server/lib/risk_engine/tasks/risk_scoring_task.ts index 4dcea92eee00d..ad195ae9feb4a 100644 --- a/x-pack/plugins/security_solution/server/lib/risk_engine/tasks/risk_scoring_task.ts +++ b/x-pack/plugins/security_solution/server/lib/risk_engine/tasks/risk_scoring_task.ts @@ -161,11 +161,13 @@ export const removeRiskScoringTask = async ({ export const runTask = async ({ getRiskScoreService, + isCancelled, logger, taskInstance, telemetry, }: { logger: Logger; + isCancelled: () => boolean; getRiskScoreService: GetRiskScoreService; taskInstance: ConcreteTaskInstance; telemetry: AnalyticsServiceSetup; @@ -228,7 +230,7 @@ export const runTask = async ({ : [RiskScoreEntity.host, RiskScoreEntity.user]; await asyncForEach(identifierTypes, async (identifierType) => { - let isWorkComplete = false; + let isWorkComplete = isCancelled(); let afterKeys: AfterKeys = {}; while (!isWorkComplete) { const result = await riskScoreService.calculateAndPersistScores({ @@ -242,7 +244,7 @@ export const runTask = async ({ weights: [], }); - isWorkComplete = isRiskScoreCalculationComplete(result); + isWorkComplete = isRiskScoreCalculationComplete(result) || isCancelled(); afterKeys = result.after_keys; scoresWritten += result.scores_written; } @@ -265,6 +267,9 @@ export const runTask = async ({ telemetry.reportEvent(RISK_SCORE_EXECUTION_SUCCESS_EVENT.eventType, telemetryEvent); + if (isCancelled()) { + log('task was cancelled'); + } log('task run completed'); log(JSON.stringify(telemetryEvent)); return { @@ -287,8 +292,13 @@ const createTaskRunnerFactory = telemetry: AnalyticsServiceSetup; }) => ({ taskInstance }: { taskInstance: ConcreteTaskInstance }) => { + let cancelled = false; + const isCancelled = () => cancelled; return { - run: async () => runTask({ getRiskScoreService, logger, taskInstance, telemetry }), - cancel: async () => {}, + run: async () => + runTask({ getRiskScoreService, isCancelled, logger, taskInstance, telemetry }), + cancel: async () => { + cancelled = true; + }, }; }; diff --git a/x-pack/plugins/security_solution/server/lib/risk_engine/utils/saved_object_configuration.ts b/x-pack/plugins/security_solution/server/lib/risk_engine/utils/saved_object_configuration.ts index 415e9f84777e3..8d1562d805e57 100644 --- a/x-pack/plugins/security_solution/server/lib/risk_engine/utils/saved_object_configuration.ts +++ b/x-pack/plugins/security_solution/server/lib/risk_engine/utils/saved_object_configuration.ts @@ -24,7 +24,7 @@ const getDefaultRiskEngineConfiguration = ({ filter: {}, identifierType: undefined, interval: '1h', - pageSize: 10_000, + pageSize: 3_500, range: { start: 'now-30d', end: 'now' }, }); diff --git a/x-pack/test/detection_engine_api_integration/security_and_spaces/group10/risk_engine/init_and_status_apis.ts b/x-pack/test/detection_engine_api_integration/security_and_spaces/group10/risk_engine/init_and_status_apis.ts index 278f82e752950..cdb5366d39318 100644 --- a/x-pack/test/detection_engine_api_integration/security_and_spaces/group10/risk_engine/init_and_status_apis.ts +++ b/x-pack/test/detection_engine_api_integration/security_and_spaces/group10/risk_engine/init_and_status_apis.ts @@ -310,7 +310,7 @@ export default ({ getService }: FtrProviderContext) => { enabled: true, filter: {}, interval: '1h', - pageSize: 10000, + pageSize: 3500, range: { end: 'now', start: 'now-30d', From d28227ca6a5f480e085ad70c673838eb5e196c95 Mon Sep 17 00:00:00 2001 From: Faisal Kanout Date: Mon, 2 Oct 2023 20:34:16 +0300 Subject: [PATCH 21/22] [AO] Set the Custom Threshold ONLY available on stateful as Tech Preview (#167782) ## Summary It fixes https://github.com/elastic/kibana/issues/167650 --- .../test_suites/core_plugins/rendering.ts | 2 +- .../custom_threshold/mocks/metric_threshold_rule.ts | 2 +- x-pack/plugins/observability/server/index.ts | 7 +++++-- .../register_custom_threshold_rule_type.ts | 2 +- .../observability/custom_threshold_rule/avg_pct_fired.ts | 2 +- .../observability/custom_threshold_rule/avg_pct_no_data.ts | 2 +- .../observability/custom_threshold_rule/avg_us_fired.ts | 2 +- .../custom_threshold_rule/custom_eq_avg_bytes_fired.ts | 2 +- .../custom_threshold_rule/documents_count_fired.ts | 2 +- .../observability/custom_threshold_rule/group_by_fired.ts | 2 +- .../observability/custom_threshold_rule/avg_pct_fired.ts | 2 +- .../observability/custom_threshold_rule/avg_pct_no_data.ts | 2 +- .../custom_threshold_rule/custom_eq_avg_bytes_fired.ts | 2 +- .../custom_threshold_rule/documents_count_fired.ts | 2 +- .../observability/custom_threshold_rule/group_by_fired.ts | 2 +- 15 files changed, 19 insertions(+), 16 deletions(-) diff --git a/test/plugin_functional/test_suites/core_plugins/rendering.ts b/test/plugin_functional/test_suites/core_plugins/rendering.ts index 7bf1522a767bd..e01822be1d6c0 100644 --- a/test/plugin_functional/test_suites/core_plugins/rendering.ts +++ b/test/plugin_functional/test_suites/core_plugins/rendering.ts @@ -298,7 +298,7 @@ export default function ({ getService }: PluginFunctionalProviderContext) { 'xpack.observability.unsafe.alertDetails.logs.enabled (boolean)', 'xpack.observability.unsafe.alertDetails.uptime.enabled (boolean)', 'xpack.observability.unsafe.alertDetails.observability.enabled (boolean)', - 'xpack.observability.unsafe.thresholdRule.enabled (boolean)', + 'xpack.observability.unsafe.thresholdRule.enabled (any)', // conditional, is actually a boolean 'xpack.observability_onboarding.ui.enabled (boolean)', 'xpack.observabilityLogExplorer.navigation.showAppLink (any)', // conditional, is actually a boolean ]; diff --git a/x-pack/plugins/observability/public/components/custom_threshold/mocks/metric_threshold_rule.ts b/x-pack/plugins/observability/public/components/custom_threshold/mocks/metric_threshold_rule.ts index 810ff3c1f5983..4f2e4ea3772bc 100644 --- a/x-pack/plugins/observability/public/components/custom_threshold/mocks/metric_threshold_rule.ts +++ b/x-pack/plugins/observability/public/components/custom_threshold/mocks/metric_threshold_rule.ts @@ -159,7 +159,7 @@ export const buildMetricThresholdAlert = ( alertOnGroupDisappear: true, }, 'kibana.alert.evaluation.values': [2500, 5], - 'kibana.alert.rule.category': 'Custom threshold (BETA)', + 'kibana.alert.rule.category': 'Custom threshold (Technical Preview)', 'kibana.alert.rule.consumer': 'alerts', 'kibana.alert.rule.execution.uuid': '62dd07ef-ead9-4b1f-a415-7c83d03925f7', 'kibana.alert.rule.name': 'One condition', diff --git a/x-pack/plugins/observability/server/index.ts b/x-pack/plugins/observability/server/index.ts index 85f40a785dee7..e2e6bc768918d 100644 --- a/x-pack/plugins/observability/server/index.ts +++ b/x-pack/plugins/observability/server/index.ts @@ -8,7 +8,7 @@ // TODO: https://github.com/elastic/kibana/issues/110905 /* eslint-disable @kbn/eslint/no_export_all */ -import { schema, TypeOf } from '@kbn/config-schema'; +import { offeringBasedSchema, schema, TypeOf } from '@kbn/config-schema'; import { PluginConfigDescriptor, PluginInitializerContext } from '@kbn/core/server'; import { ObservabilityPlugin, ObservabilityPluginSetup } from './plugin'; import { createOrUpdateIndex, Mappings } from './utils/create_or_update_index'; @@ -47,7 +47,10 @@ const configSchema = schema.object({ }), }), thresholdRule: schema.object({ - enabled: schema.boolean({ defaultValue: true }), + enabled: offeringBasedSchema({ + serverless: schema.boolean({ defaultValue: false }), + traditional: schema.boolean({ defaultValue: true }), + }), }), }), customThresholdRule: schema.object({ diff --git a/x-pack/plugins/observability/server/lib/rules/custom_threshold/register_custom_threshold_rule_type.ts b/x-pack/plugins/observability/server/lib/rules/custom_threshold/register_custom_threshold_rule_type.ts index dcfe754e6243d..60d028c2c165c 100644 --- a/x-pack/plugins/observability/server/lib/rules/custom_threshold/register_custom_threshold_rule_type.ts +++ b/x-pack/plugins/observability/server/lib/rules/custom_threshold/register_custom_threshold_rule_type.ts @@ -121,7 +121,7 @@ export function thresholdRuleType( return { id: OBSERVABILITY_THRESHOLD_RULE_TYPE_ID, name: i18n.translate('xpack.observability.threshold.ruleName', { - defaultMessage: 'Custom threshold (BETA)', + defaultMessage: 'Custom threshold (Technical Preview)', }), validate: { params: schema.object( diff --git a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_pct_fired.ts b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_pct_fired.ts index c2d91677af2a2..b36a0bcd86010 100644 --- a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_pct_fired.ts +++ b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_pct_fired.ts @@ -143,7 +143,7 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.hits.hits[0]._source).property( 'kibana.alert.rule.category', - 'Custom threshold (BETA)' + 'Custom threshold (Technical Preview)' ); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'logs'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); diff --git a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_pct_no_data.ts b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_pct_no_data.ts index 4d2475d6b0457..9eba55d60743a 100644 --- a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_pct_no_data.ts +++ b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_pct_no_data.ts @@ -134,7 +134,7 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.hits.hits[0]._source).property( 'kibana.alert.rule.category', - 'Custom threshold (BETA)' + 'Custom threshold (Technical Preview)' ); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'logs'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); diff --git a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_us_fired.ts b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_us_fired.ts index 4359385e79534..d7f21a1453823 100644 --- a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_us_fired.ts +++ b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/avg_us_fired.ts @@ -160,7 +160,7 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.hits.hits[0]._source).property( 'kibana.alert.rule.category', - 'Custom threshold (BETA)' + 'Custom threshold (Technical Preview)' ); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'logs'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); diff --git a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts index d17e0a1568603..50e62935f0edb 100644 --- a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts +++ b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts @@ -151,7 +151,7 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.hits.hits[0]._source).property( 'kibana.alert.rule.category', - 'Custom threshold (BETA)' + 'Custom threshold (Technical Preview)' ); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'logs'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); diff --git a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/documents_count_fired.ts b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/documents_count_fired.ts index 2876fb793b98a..644cfaa2264e0 100644 --- a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/documents_count_fired.ts +++ b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/documents_count_fired.ts @@ -141,7 +141,7 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.hits.hits[0]._source).property( 'kibana.alert.rule.category', - 'Custom threshold (BETA)' + 'Custom threshold (Technical Preview)' ); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'logs'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); diff --git a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/group_by_fired.ts b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/group_by_fired.ts index 363423c7cb41d..b22fae7fe00f1 100644 --- a/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/group_by_fired.ts +++ b/x-pack/test/alerting_api_integration/observability/custom_threshold_rule/group_by_fired.ts @@ -164,7 +164,7 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.hits.hits[0]._source).property( 'kibana.alert.rule.category', - 'Custom threshold (BETA)' + 'Custom threshold (Technical Preview)' ); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'logs'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); diff --git a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_fired.ts b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_fired.ts index 55a31a91f2738..e85222b1d6813 100644 --- a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_fired.ts +++ b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_fired.ts @@ -145,7 +145,7 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.hits.hits[0]._source).property( 'kibana.alert.rule.category', - 'Custom threshold (BETA)' + 'Custom threshold (Technical Preview)' ); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'apm'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); diff --git a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_no_data.ts b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_no_data.ts index 31b96d173c09d..8a7e5cbebaf70 100644 --- a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_no_data.ts +++ b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/avg_pct_no_data.ts @@ -131,7 +131,7 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.hits.hits[0]._source).property( 'kibana.alert.rule.category', - 'Custom threshold (BETA)' + 'Custom threshold (Technical Preview)' ); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'apm'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); diff --git a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts index 1255a9d54bfdc..3e6d4fccde5fc 100644 --- a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts +++ b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/custom_eq_avg_bytes_fired.ts @@ -149,7 +149,7 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.hits.hits[0]._source).property( 'kibana.alert.rule.category', - 'Custom threshold (BETA)' + 'Custom threshold (Technical Preview)' ); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'apm'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); diff --git a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/documents_count_fired.ts b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/documents_count_fired.ts index b8ec55ec59417..7759e94997e64 100644 --- a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/documents_count_fired.ts +++ b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/documents_count_fired.ts @@ -139,7 +139,7 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.hits.hits[0]._source).property( 'kibana.alert.rule.category', - 'Custom threshold (BETA)' + 'Custom threshold (Technical Preview)' ); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'apm'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); diff --git a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/group_by_fired.ts b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/group_by_fired.ts index f2e2b16a4be11..1a3420b85a2e0 100644 --- a/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/group_by_fired.ts +++ b/x-pack/test_serverless/api_integration/test_suites/observability/custom_threshold_rule/group_by_fired.ts @@ -158,7 +158,7 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.hits.hits[0]._source).property( 'kibana.alert.rule.category', - 'Custom threshold (BETA)' + 'Custom threshold (Technical Preview)' ); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.consumer', 'apm'); expect(resp.hits.hits[0]._source).property('kibana.alert.rule.name', 'Threshold rule'); From 26e61c1413f86cbc4c04ed4eabe831646a199dd4 Mon Sep 17 00:00:00 2001 From: Cristina Amico Date: Mon, 2 Oct 2023 19:35:22 +0200 Subject: [PATCH 22/22] [Fleet] Add sidebarNav showing headings extracted from the readme (#167216) ## Summary Add a dynamic side bar navigation to Integrations overview. The [sideNavBar](https://eui.elastic.co/#/navigation/side-nav#complex-side-nav) is automatically generated starting from the headers contained in the markdown. I had two challenges here: - Extracting a nested structure formatted the way [the sidenav requires](https://eui.elastic.co/#/navigation/side-nav#complex-side-nav) from the headers - Connecting the elements in the sidenav with the ones in the readme page. The readme page is directly rendered via [react-markdown](https://github.com/remarkjs/react-markdown) library and we introduce some modifiers to it. To be able to scroll the page to the selected item I had to find a way to have unique Ids (I used the line position of the headers for this) and the I had to get the refs of the html elements and pass them to the sidenav. https://github.com/elastic/kibana/assets/16084106/7a985a98-fdb5-4e2d-bb4f-ba71f46cf86f ### Screenshots Screenshot 2023-09-28 at 11 58 55 Screenshot 2023-09-26 at 17 06 04 ### Checklist - [ ] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [ ] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [ ] This renders correctly on smaller devices using a responsive layout. (You can test this [in your browser](https://www.browserstack.com/guide/responsive-testing-on-local-server)) --------- Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com> --- .../sections/epm/screens/detail/index.tsx | 2 +- .../detail/overview/markdown_renderers.tsx | 113 +++++++---- .../epm/screens/detail/overview/overview.tsx | 191 ++++++++++++++++-- .../epm/screens/detail/overview/readme.tsx | 24 +-- 4 files changed, 264 insertions(+), 66 deletions(-) diff --git a/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/index.tsx b/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/index.tsx index ce74ffa964d1d..b803e463d22fe 100644 --- a/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/index.tsx +++ b/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/index.tsx @@ -293,7 +293,7 @@ export function Detail() { const headerLeftContent = useMemo( () => ( - + {/* Allows button to break out of full width */}
diff --git a/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/overview/markdown_renderers.tsx b/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/overview/markdown_renderers.tsx index 61cd74155b98a..e15b279ede30e 100644 --- a/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/overview/markdown_renderers.tsx +++ b/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/overview/markdown_renderers.tsx @@ -10,11 +10,16 @@ import { EuiCodeBlock, EuiLink, EuiTableHeaderCell, + EuiTable, EuiTableRow, EuiTableRowCell, } from '@elastic/eui'; import React from 'react'; +import type { MutableRefObject } from 'react'; import type { TransformOptions } from 'react-markdown'; +import styled from 'styled-components'; + +import { getAnchorId } from './overview'; /** prevents links to the new pages from accessing `window.opener` */ const REL_NOOPENER = 'noopener'; @@ -31,42 +36,80 @@ const CODE_LANGUAGE_OVERRIDES: Record = { $yml: 'yml', }; -export const markdownRenderers: TransformOptions['components'] = { - table: ({ children }) => {children}
, - tr: ({ children }) => {children}, - th: ({ children }) => {children}, - td: ({ children }) => {children}, - // the headings used in markdown don't match our page so mapping them to the appropriate one - h1: ({ children }) =>

{children}

, - h2: ({ children }) =>

{children}

, - h3: ({ children }) =>
{children}
, - h4: ({ children }) =>
{children}
, - h5: ({ children }) =>
{children}
, - h6: ({ children }) =>
{children}
, - link: ({ children, href }: { children: React.ReactNode[]; href?: string }) => ( - - {children} - - ), - code: ({ className, children, inline }) => { - let parsedLang = /language-(\w+)/.exec(className || '')?.[1] ?? ''; +const StyledH3 = styled.h3` + scroll-margin-top: 105px; +`; +const StyledH4 = styled.h4` + scroll-margin-top: 105px; +`; +const StyledH5 = styled.h5` + scroll-margin-top: 105px; +`; +const StyledH6 = styled.h5` + scroll-margin-top: 105px; +`; - // Some integrations export code block content that includes language tags that have since - // been removed or deprecated in `prism.js`, the upstream depedency that handles syntax highlighting - // in EuiCodeBlock components - const languageOverride = parsedLang ? CODE_LANGUAGE_OVERRIDES[parsedLang] : undefined; +/* + Refs passed from the parent component are needed to handle scrolling on selected header in the overviewPage +*/ +export const markdownRenderers = ( + refs: MutableRefObject> +): TransformOptions['components'] => { + return { + table: ({ children }) => ( + {children} + ), + tr: ({ children }) => {children}, + th: ({ children }) => {children}, + td: ({ children }) => {children}, + // the headings used in markdown don't match our page so mapping them to the appropriate one + h1: ({ children, node }) => { + const id = getAnchorId(children[0]?.toString(), node.position?.start.line); + return refs.current.set(`${id}`, element)}>{children}; + }, + h2: ({ children, node }) => { + const id = getAnchorId(children[0]?.toString(), node.position?.start.line); + return refs.current.set(`${id}`, element)}>{children}; + }, + h3: ({ children, node }) => { + const id = getAnchorId(children[0]?.toString(), node.position?.start.line); + return refs.current.set(`${id}`, element)}>{children}; + }, + h4: ({ children, node }) => { + const id = getAnchorId(children[0]?.toString(), node.position?.start.line); + return refs.current.set(`${id}`, element)}>{children}; + }, + h5: ({ children }) =>
{children}
, + h6: ({ children }) =>
{children}
, + link: ({ children, href }: { children: React.ReactNode[]; href?: string }) => ( + + {children} + + ), + code: ({ className, children, inline }) => { + let parsedLang = /language-(\w+)/.exec(className || '')?.[1] ?? ''; - if (languageOverride) { - parsedLang = languageOverride; - } + // Some integrations export code block content that includes language tags that have since + // been removed or deprecated in `prism.js`, the upstream depedency that handles syntax highlighting + // in EuiCodeBlock components + const languageOverride = parsedLang ? CODE_LANGUAGE_OVERRIDES[parsedLang] : undefined; - if (inline) { - return {children}; - } - return ( - - {children} - - ); - }, + if (languageOverride) { + parsedLang = languageOverride; + } + + if (inline) { + return {children}; + } + return ( + + {children} + + ); + }, + }; }; diff --git a/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/overview/overview.tsx b/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/overview/overview.tsx index 0e300325f850c..cd8fbebe7f2a3 100644 --- a/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/overview/overview.tsx +++ b/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/overview/overview.tsx @@ -4,9 +4,19 @@ * 2.0; you may not use this file except in compliance with the Elastic License * 2.0. */ -import React, { memo, useMemo } from 'react'; +import React, { memo, useMemo, useEffect, useState, useCallback, useRef } from 'react'; +import type { MouseEventHandler } from 'react'; + import styled from 'styled-components'; -import { EuiCallOut, EuiFlexGroup, EuiFlexItem, EuiSpacer, EuiLink, EuiButton } from '@elastic/eui'; +import { + EuiCallOut, + EuiFlexGroup, + EuiFlexItem, + EuiSpacer, + EuiLink, + EuiButton, + EuiSideNav, +} from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n-react'; @@ -19,6 +29,7 @@ import { useGetPackageVerificationKeyId, useLink, useStartServices, + sendGetFileByPath, } from '../../../../../../../hooks'; import { isPackageUnverified } from '../../../../../../../services'; import type { PackageInfo, RegistryPolicyTemplate } from '../../../../../types'; @@ -33,11 +44,31 @@ interface Props { latestGAVersion?: string; } -const LeftColumn = styled(EuiFlexItem)` - /* 🤢🤷 https://www.styled-components.com/docs/faqs#how-can-i-override-styles-with-higher-specificity */ - &&& { - margin-top: 77px; - } +interface Item { + id: string; + name: string; + items?: Item[]; + isSelected?: boolean; + forceOpen: boolean; + onClick: MouseEventHandler; +} +interface HeadingWithPosition { + line: string; + position: number; +} + +const SideBar = styled(EuiFlexItem)` + position: sticky; + top: 70px; + padding-top: 50px; + padding-left: 10px; + text-overflow: ellipsis; + max-width: 180px; + max-height: 500px; +`; +const StyledSideNav = styled(EuiSideNav)` + overflow-y: auto; + overflow-x: hidden; `; const UnverifiedCallout: React.FC = () => { @@ -113,6 +144,13 @@ const PrereleaseCallout: React.FC<{ ); }; +// some names are too long so they're trimmed at 12 characters long +export const getAnchorId = (name: string | undefined, index?: number) => { + if (!name) return ''; + const baseId = `${name.replaceAll(' ', '-').toLowerCase().slice(0, 12)}`; + return index ? `${baseId}-${index}` : baseId; +}; + export const OverviewPage: React.FC = memo( ({ packageInfo, integrationInfo, latestGAVersion }) => { const screenshots = useMemo( @@ -122,9 +160,135 @@ export const OverviewPage: React.FC = memo( const { packageVerificationKeyId } = useGetPackageVerificationKeyId(); const isUnverified = isPackageUnverified(packageInfo, packageVerificationKeyId); const isPrerelease = isPackagePrerelease(packageInfo.version); + const [markdown, setMarkdown] = useState(undefined); + const [selectedItemId, setSelectedItem] = useState(undefined); + const [isSideNavOpenOnMobile, setIsSideNavOpenOnMobile] = useState(false); + const anchorsRefs = useRef(new Map()); + + const selectItem = (id: string) => { + setSelectedItem(id); + anchorsRefs.current.get(id)?.scrollIntoView({ behavior: 'smooth' }); + }; + + const toggleOpenOnMobile = () => { + setIsSideNavOpenOnMobile(!isSideNavOpenOnMobile); + }; + + const readmePath = + integrationInfo && isIntegrationPolicyTemplate(integrationInfo) && integrationInfo?.readme + ? integrationInfo?.readme + : packageInfo.readme || ''; + + useEffect(() => { + sendGetFileByPath(readmePath).then((res) => { + setMarkdown(res.data || ''); + }); + }, [readmePath]); + + const extractHeadingsWithIndices = (markDown: string | undefined): HeadingWithPosition[] => { + if (!markDown) return []; + const regex = /^\s*#+\s+(.+)/; + return markDown + .split('\n') + .map((line, position) => { + return { + line, + position, + }; + }) + .filter((obj) => obj.line.match(regex)); + }; + + const getName = (heading: string) => heading.replace(/^#+\s*/, ''); + + const createItem = useCallback( + (heading: HeadingWithPosition, options: any = {}): Item => { + // NOTE: Duplicate `name` values will cause `id` collisions + const name = getName(heading.line); + const id = getAnchorId(name, heading.position + 1); + return { + id, + name, + isSelected: selectedItemId === id, + onClick: () => selectItem(id), + ...options, + }; + }, + [selectedItemId] + ); + + // get the headings and creates a nested structure as requested by EuiSideNav + const headingsToNavItems = useCallback( + (headings: HeadingWithPosition[]): Item[] => { + const options = { forceOpen: true }; + return headings.reduce((acc: Item[], heading: HeadingWithPosition, index: number) => { + if (heading.line.startsWith('## ')) { + const item = createItem(heading, options); + acc.push(item); + } else if (heading.line.startsWith('### ')) { + const subGroup = createItem(heading, options); + let i = index + 1; + while (i < headings.length && headings[i].line.startsWith('#### ')) { + const subGroupItem = createItem(headings[i], options); + if (!subGroup?.items) subGroup.items = []; + subGroup.items?.push(subGroupItem); + i++; + } + const prevIndex = acc.length - 1; + + if (prevIndex >= 0) { + if (!acc[prevIndex]?.items) acc[prevIndex].items = []; + acc[prevIndex]?.items?.push(subGroup); + } else { + // this handles a case where the headings only have ### and no ## + const fakeItem = createItem({ line: '', position: heading.position }, options); + acc.push(fakeItem); + if (!acc[0]?.items) acc[0].items = []; + acc[0]?.items?.push(subGroup); + } + } + return acc; + }, []); + }, + [createItem] + ); + const headingsWithIndices = useMemo(() => extractHeadingsWithIndices(markdown), [markdown]); + + const navItems = useMemo( + () => headingsToNavItems(headingsWithIndices), + [headingsToNavItems, headingsWithIndices] + ); + + const h1: HeadingWithPosition | undefined = useMemo( + () => headingsWithIndices.find((h) => h.line.startsWith('# ')), + [headingsWithIndices] + ); + + const sideNavItems = useMemo(() => { + const name = `${h1 ? getName(h1.line) : ''}`; + const id = getAnchorId(name, h1 ? h1?.position + 1 : 1); + return [ + { + name, + id, + onClick: () => selectItem(id), + items: navItems, + }, + ]; + }, [h1, navItems]); + return ( - - + + + {sideNavItems ? ( + + ) : null} + {isUnverified && } {isPrerelease && ( @@ -136,15 +300,10 @@ export const OverviewPage: React.FC = memo( )} {packageInfo.readme ? ( ) : null} diff --git a/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/overview/readme.tsx b/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/overview/readme.tsx index 674d59661e347..f0db28c76d7c5 100644 --- a/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/overview/readme.tsx +++ b/x-pack/plugins/fleet/public/applications/integrations/sections/epm/screens/detail/overview/readme.tsx @@ -6,24 +6,26 @@ */ import { EuiText, EuiSkeletonText, EuiSpacer } from '@elastic/eui'; -import React, { Fragment, useEffect, useState } from 'react'; +import React from 'react'; +import type { MutableRefObject } from 'react'; import ReactMarkdown from 'react-markdown'; import remarkGfm from 'remark-gfm'; -import { useLinks, sendGetFileByPath } from '../../../../../hooks'; +import { useLinks } from '../../../../../hooks'; import { markdownRenderers } from './markdown_renderers'; export function Readme({ - readmePath, packageName, version, + markdown, + refs, }: { - readmePath: string; packageName: string; version: string; + markdown: string | undefined; + refs: MutableRefObject>; }) { - const [markdown, setMarkdown] = useState(undefined); const { toRelativeImage } = useLinks(); const handleImageUri = React.useCallback( (uri: string) => { @@ -35,19 +37,13 @@ export function Readme({ [toRelativeImage, packageName, version] ); - useEffect(() => { - sendGetFileByPath(readmePath).then((res) => { - setMarkdown(res.data || ''); - }); - }, [readmePath]); - return ( - + <> {markdown !== undefined ? ( {markdown} @@ -63,6 +59,6 @@ export function Readme({ )} - + ); }