From cf6e83147e2139fabcb8a201a59328e50824c89a Mon Sep 17 00:00:00 2001 From: Jacob Peattie Date: Tue, 14 Jul 2026 04:53:20 +1000 Subject: [PATCH 01/22] Implement the RRM express setup dashboard entry point. --- assets/js/components/Banner/CTAButton.js | 12 +- assets/js/components/Banner/DismissButton.js | 8 +- .../components/Banner/{index.js => index.tsx} | 52 ++-- ...esitekit-modules-reader-revenue-manager.ts | 3 + .../js/googlesitekit/widgets/default-areas.js | 3 + .../widgets/register-defaults.js | 10 + .../common/PoweredByReaderRevenueManager.tsx | 48 ++++ .../components/common/index.js | 1 + ...enueManagerSetupCTABannerWidget.stories.js | 71 ++++++ ...aderRevenueManagerSetupCTABannerWidget.tsx | 197 +++++++++++++++ .../components/dashboard/index.js | 1 + .../reader-revenue-manager/constants.js | 4 + .../modules/reader-revenue-manager/index.js | 1 + .../notifications/index.js | 5 + .../reader-revenue-manager/widgets/index.ts | 69 ++++++ .../banner/_googlesitekit-banner.scss | 44 ++++ .../_googlesitekit-rrm-powered-by.scss | 32 +++ .../reader-revenue-manager/_index.scss | 1 + assets/sass/config/_mixins.scss | 8 + .../banner-rrm-setup-cta-widget-mobile.svg | 219 ++++++++++++++++ .../graphics/banner-rrm-setup-cta-widget.svg | 234 ++++++++++++++++++ ...annerWidget_Default_0_document_0_small.png | Bin 0 -> 41456 bytes ...nnerWidget_Default_0_document_1_medium.png | Bin 0 -> 48676 bytes ...annerWidget_Default_0_document_2_large.png | Bin 0 -> 101638 bytes 24 files changed, 988 insertions(+), 35 deletions(-) rename assets/js/components/Banner/{index.js => index.tsx} (78%) create mode 100644 assets/js/modules/reader-revenue-manager/components/common/PoweredByReaderRevenueManager.tsx create mode 100644 assets/js/modules/reader-revenue-manager/components/dashboard/ReaderRevenueManagerSetupCTABannerWidget.stories.js create mode 100644 assets/js/modules/reader-revenue-manager/components/dashboard/ReaderRevenueManagerSetupCTABannerWidget.tsx create mode 100644 assets/js/modules/reader-revenue-manager/widgets/index.ts create mode 100644 assets/sass/components/reader-revenue-manager/_googlesitekit-rrm-powered-by.scss create mode 100644 assets/svg/graphics/banner-rrm-setup-cta-widget-mobile.svg create mode 100644 assets/svg/graphics/banner-rrm-setup-cta-widget.svg create mode 100644 tests/backstop/reference/google-site-kit_Modules_ReaderRevenueManager_Components_Dashboard_ReaderRevenueManagerSetupCTABannerWidget_Default_0_document_0_small.png create mode 100644 tests/backstop/reference/google-site-kit_Modules_ReaderRevenueManager_Components_Dashboard_ReaderRevenueManagerSetupCTABannerWidget_Default_0_document_1_medium.png create mode 100644 tests/backstop/reference/google-site-kit_Modules_ReaderRevenueManager_Components_Dashboard_ReaderRevenueManagerSetupCTABannerWidget_Default_0_document_2_large.png diff --git a/assets/js/components/Banner/CTAButton.js b/assets/js/components/Banner/CTAButton.js index 1e6146c1c45..5473021fdaa 100644 --- a/assets/js/components/Banner/CTAButton.js +++ b/assets/js/components/Banner/CTAButton.js @@ -26,12 +26,12 @@ import { SpinnerButton } from 'googlesitekit-components'; import ExternalIcon from '@/svg/icons/external.svg'; export default function CTAButton( { - label, - ariaLabel, - disabled, - inProgress, - onClick, - href, + label = '', + ariaLabel = '', + disabled = false, + inProgress = false, + onClick = () => {}, + href = null, external = false, hideExternalIndicator = false, } ) { diff --git a/assets/js/components/Banner/DismissButton.js b/assets/js/components/Banner/DismissButton.js index 58414a92171..95fb29f3d48 100644 --- a/assets/js/components/Banner/DismissButton.js +++ b/assets/js/components/Banner/DismissButton.js @@ -30,10 +30,10 @@ import { __ } from '@wordpress/i18n'; import { Button } from 'googlesitekit-components'; export default function DismissButton( { - className, - label = __( 'Maybe later', 'google-site-kit' ), - onClick, - disabled, + className = '', + label = String( __( 'Maybe later', 'google-site-kit' ) ), + onClick = () => {}, + disabled = false, tertiary = true, } ) { if ( ! onClick ) { diff --git a/assets/js/components/Banner/index.js b/assets/js/components/Banner/index.tsx similarity index 78% rename from assets/js/components/Banner/index.js rename to assets/js/components/Banner/index.tsx index e15a94aeff9..d72c13fe57c 100644 --- a/assets/js/components/Banner/index.js +++ b/assets/js/components/Banner/index.tsx @@ -18,7 +18,7 @@ * External dependencies */ import classnames from 'classnames'; -import PropTypes from 'prop-types'; +import { ComponentProps, FC, ReactChild } from 'react'; /** * WordPress dependencies @@ -29,6 +29,7 @@ import { forwardRef } from '@wordpress/element'; * Internal dependencies */ import Notice from '@/js/components/Notice'; +import { NOTICE_TYPES } from '@/js/components/Notice/constants'; import { BREAKPOINT_SMALL, BREAKPOINT_TABLET, @@ -43,7 +44,26 @@ import LearnMoreLink from './LearnMoreLink'; import Title from './Title'; import TitleIcon from './TitleIcon'; -const Banner = forwardRef( +export interface BannerProps { + className?: string; + titleIcon?: ReactChild; + title?: string; + description?: ReactChild; + additionalDescription?: ReactChild; + errorText?: string; + helpText?: string; + learnMoreLink?: ComponentProps< typeof LearnMoreLink >; + dismissButton?: ComponentProps< typeof DismissButton >; + ctaButton?: ComponentProps< typeof CTAButton >; + svg?: { + desktop?: string; + mobile?: string; + verticalPosition?: 'top' | 'center' | 'bottom'; + }; + footer?: ReactChild; +} + +const Banner: FC< BannerProps > = forwardRef< HTMLDivElement, BannerProps >( ( { className, @@ -65,7 +85,7 @@ const Banner = forwardRef( const isMobileOrTablet = breakpoint === BREAKPOINT_SMALL || breakpoint === BREAKPOINT_TABLET; - let SVGData = null; + let SVGData: string | null = null; if ( isMobileOrTablet && svg?.mobile ) { SVGData = svg.mobile; } else if ( ! isMobileOrTablet && svg?.desktop ) { @@ -93,7 +113,10 @@ const Banner = forwardRef( { helpText && { helpText } } { errorText && ( - + ) }
@@ -123,25 +146,4 @@ const Banner = forwardRef( } ); -Banner.propTypes = { - titleIcon: PropTypes.node, - title: PropTypes.string, - description: PropTypes.oneOfType( [ PropTypes.string, PropTypes.node ] ), - additionalDescription: PropTypes.oneOfType( [ - PropTypes.string, - PropTypes.node, - ] ), - errorText: PropTypes.string, - helpText: PropTypes.string, - learnMoreLink: PropTypes.shape( LearnMoreLink.propTypes ), - dismissButton: PropTypes.shape( DismissButton.propTypes ), - ctaButton: PropTypes.shape( CTAButton.propTypes ), - svg: PropTypes.shape( { - desktop: PropTypes.elementType, - mobile: PropTypes.elementType, - verticalPosition: PropTypes.oneOf( [ 'top', 'center', 'bottom' ] ), - } ), - footer: PropTypes.node, -}; - export default Banner; diff --git a/assets/js/googlesitekit-modules-reader-revenue-manager.ts b/assets/js/googlesitekit-modules-reader-revenue-manager.ts index 86c527341a5..14c12bbdf32 100644 --- a/assets/js/googlesitekit-modules-reader-revenue-manager.ts +++ b/assets/js/googlesitekit-modules-reader-revenue-manager.ts @@ -22,12 +22,15 @@ import Data from 'googlesitekit-data'; import Modules from 'googlesitekit-modules'; import Notifications from 'googlesitekit-notifications'; +import Widgets from 'googlesitekit-widgets'; import { registerModule, registerNotifications, registerStore, + registerWidgets, } from './modules/reader-revenue-manager'; registerStore( Data ); registerModule( Modules ); +registerWidgets( Widgets ); registerNotifications( Notifications ); diff --git a/assets/js/googlesitekit/widgets/default-areas.js b/assets/js/googlesitekit/widgets/default-areas.js index 846d834b5c1..e2bbd9a24f3 100644 --- a/assets/js/googlesitekit/widgets/default-areas.js +++ b/assets/js/googlesitekit/widgets/default-areas.js @@ -25,6 +25,8 @@ export const AREA_MAIN_DASHBOARD_TRAFFIC_PRIMARY = 'mainDashboardTrafficPrimary'; export const AREA_MAIN_DASHBOARD_TRAFFIC_AUDIENCE_SEGMENTATION = 'mainDashboardTrafficAudienceSegmentation'; +export const AREA_MAIN_DASHBOARD_TRAFFIC_READER_REVENUE_MANAGER = + 'mainDashboardTrafficReaderRevenueManager'; export const AREA_MAIN_DASHBOARD_CONTENT_PRIMARY = 'mainDashboardContentPrimary'; export const AREA_MAIN_DASHBOARD_SPEED_PRIMARY = 'mainDashboardSpeedPrimary'; @@ -45,6 +47,7 @@ export default { AREA_MAIN_DASHBOARD_KEY_METRICS_PRIMARY, AREA_MAIN_DASHBOARD_SITE_GOALS_PRIMARY, AREA_MAIN_DASHBOARD_TRAFFIC_PRIMARY, + AREA_MAIN_DASHBOARD_TRAFFIC_READER_REVENUE_MANAGER, AREA_MAIN_DASHBOARD_CONTENT_PRIMARY, AREA_MAIN_DASHBOARD_SPEED_PRIMARY, AREA_MAIN_DASHBOARD_MONETIZATION_PRIMARY, diff --git a/assets/js/googlesitekit/widgets/register-defaults.js b/assets/js/googlesitekit/widgets/register-defaults.js index 93a488e41c6..f5311d4270e 100644 --- a/assets/js/googlesitekit/widgets/register-defaults.js +++ b/assets/js/googlesitekit/widgets/register-defaults.js @@ -87,6 +87,7 @@ export function registerDefaults( widgetsAPI ) { AREA_MAIN_DASHBOARD_SITE_GOALS_PRIMARY, AREA_MAIN_DASHBOARD_TRAFFIC_PRIMARY, AREA_MAIN_DASHBOARD_TRAFFIC_AUDIENCE_SEGMENTATION, + AREA_MAIN_DASHBOARD_TRAFFIC_READER_REVENUE_MANAGER, AREA_MAIN_DASHBOARD_CONTENT_PRIMARY, AREA_MAIN_DASHBOARD_SPEED_PRIMARY, AREA_MAIN_DASHBOARD_MONETIZATION_PRIMARY, @@ -185,6 +186,15 @@ export function registerDefaults( widgetsAPI ) { CONTEXT_MAIN_DASHBOARD_TRAFFIC ); + widgetsAPI.registerWidgetArea( + AREA_MAIN_DASHBOARD_TRAFFIC_READER_REVENUE_MANAGER, + { + style: WIDGET_AREA_STYLES.BOXES, + priority: 3, + }, + CONTEXT_MAIN_DASHBOARD_TRAFFIC + ); + widgetsAPI.registerWidgetArea( AREA_MAIN_DASHBOARD_SITE_GOALS_PRIMARY, { diff --git a/assets/js/modules/reader-revenue-manager/components/common/PoweredByReaderRevenueManager.tsx b/assets/js/modules/reader-revenue-manager/components/common/PoweredByReaderRevenueManager.tsx new file mode 100644 index 00000000000..cf2a2273903 --- /dev/null +++ b/assets/js/modules/reader-revenue-manager/components/common/PoweredByReaderRevenueManager.tsx @@ -0,0 +1,48 @@ +/** + * PoweredByReaderRevenueManager component. + * + * Site Kit by Google, Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * WordPress dependencies + */ +import { __ } from '@wordpress/i18n'; + +/** + * Internal dependencies + */ +import Typography from '@/js/components/Typography'; +import { SIZE_SMALL, TYPE_BODY } from '@/js/components/Typography/constants'; +import ReaderRevenueManagerIcon from '@/svg/graphics/reader-revenue-manager.svg'; + +export default function PoweredByReaderRevenueManager() { + return ( +
+
+ ); +} diff --git a/assets/js/modules/reader-revenue-manager/components/common/index.js b/assets/js/modules/reader-revenue-manager/components/common/index.js index 87c473b22db..e1969e020ca 100644 --- a/assets/js/modules/reader-revenue-manager/components/common/index.js +++ b/assets/js/modules/reader-revenue-manager/components/common/index.js @@ -21,5 +21,6 @@ export { default as PublicationOnboardingStateNotice } from './PublicationOnboar export { default as PublicationCreate } from './PublicationCreate'; export { default as PublicationSelect } from './PublicationSelect'; export { default as PostTypesSelect } from './PostTypesSelect'; +export { default as PoweredByReaderRevenueManager } from './PoweredByReaderRevenueManager'; export { default as ProductIDSelect } from './ProductIDSelect'; export { default as SnippetModeSelect } from './SnippetModeSelect'; diff --git a/assets/js/modules/reader-revenue-manager/components/dashboard/ReaderRevenueManagerSetupCTABannerWidget.stories.js b/assets/js/modules/reader-revenue-manager/components/dashboard/ReaderRevenueManagerSetupCTABannerWidget.stories.js new file mode 100644 index 00000000000..273a9afe7c6 --- /dev/null +++ b/assets/js/modules/reader-revenue-manager/components/dashboard/ReaderRevenueManagerSetupCTABannerWidget.stories.js @@ -0,0 +1,71 @@ +/** + * Reader Revenue Manager Setup CTA Banner Widget stories. + * + * Site Kit by Google, Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Internal dependencies + */ +import { CORE_USER } from '@/js/googlesitekit/datastore/user/constants'; +import { withWidgetComponentProps } from '@/js/googlesitekit/widgets/util'; +import { + MODULE_SLUG_READER_REVENUE_MANAGER, + RRM_EXPRESS_SETUP_TRAFFIC_CTA_WIDGET_SLUG, +} from '@/js/modules/reader-revenue-manager/constants'; +import { provideModules, provideSiteInfo } from '@tests/js/utils'; +import WithRegistrySetup from '@tests/js/WithRegistrySetup'; +import ReaderRevenueManagerSetupCTABannerWidget from './ReaderRevenueManagerSetupCTABannerWidget'; + +const WidgetWithComponentProps = withWidgetComponentProps( + RRM_EXPRESS_SETUP_TRAFFIC_CTA_WIDGET_SLUG +)( ReaderRevenueManagerSetupCTABannerWidget ); + +function Template() { + return ; +} + +export const Default = Template.bind( {} ); +Default.storyName = 'Default'; +Default.scenario = {}; + +export default { + title: 'Modules/ReaderRevenueManager/Components/Dashboard/ReaderRevenueManagerSetupCTABannerWidget', + decorators: [ + ( Story ) => { + function setupRegistry( registry ) { + provideModules( registry, [ + { + slug: MODULE_SLUG_READER_REVENUE_MANAGER, + active: false, + connected: false, + }, + ] ); + provideSiteInfo( registry ); + + registry.dispatch( CORE_USER ).receiveGetDismissedPrompts( [] ); + registry + .dispatch( CORE_USER ) + .finishResolution( 'getDismissedPrompts', [] ); + } + + return ( + + + + ); + }, + ], +}; diff --git a/assets/js/modules/reader-revenue-manager/components/dashboard/ReaderRevenueManagerSetupCTABannerWidget.tsx b/assets/js/modules/reader-revenue-manager/components/dashboard/ReaderRevenueManagerSetupCTABannerWidget.tsx new file mode 100644 index 00000000000..abbe5040d3c --- /dev/null +++ b/assets/js/modules/reader-revenue-manager/components/dashboard/ReaderRevenueManagerSetupCTABannerWidget.tsx @@ -0,0 +1,197 @@ +/** + * RRMExpressSetupCTABannerWidget component. + * + * Site Kit by Google, Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * WordPress dependencies + */ +import { Fragment } from '@wordpress/element'; +import { __ } from '@wordpress/i18n'; +import { addQueryArgs } from '@wordpress/url'; + +/** + * Internal dependencies + */ +import { Select, useDispatch, useSelect } from 'googlesitekit-data'; +import Banner from '@/js/components/Banner'; +import Link from '@/js/components/Link'; +import { SIZE_MEDIUM } from '@/js/components/Typography/constants'; +import P from '@/js/components/Typography/P'; +import { setItem } from '@/js/googlesitekit/api/cache'; +import { CORE_LOCATION } from '@/js/googlesitekit/datastore/location/constants'; +import { CORE_SITE } from '@/js/googlesitekit/datastore/site/constants'; +import { CORE_USER } from '@/js/googlesitekit/datastore/user/constants'; +import { CORE_MODULES } from '@/js/googlesitekit/modules/datastore/constants'; +import type { WidgetComponentProps } from '@/js/googlesitekit/widgets/util/get-widget-component-props'; +import useViewOnly from '@/js/hooks/useViewOnly'; +import { PoweredByReaderRevenueManager } from '@/js/modules/reader-revenue-manager/components/common'; +import { + MODULE_SLUG_READER_REVENUE_MANAGER, + RRM_EXPRESS_SETUP_TRAFFIC_CTA_DISMISSED_KEY, +} from '@/js/modules/reader-revenue-manager/constants'; +import BannerSVGMobile from '@/svg/graphics/banner-rrm-setup-cta-widget-mobile.svg?url'; +import BannerSVGDesktop from '@/svg/graphics/banner-rrm-setup-cta-widget.svg?url'; + +export default function ReaderRevenueManagerSetupCTABannerWidget( { + Widget, + WidgetNull, +}: WidgetComponentProps ) { + const { activateModule } = useDispatch( CORE_MODULES ); + const { navigateTo } = useDispatch( CORE_LOCATION ); + const { dismissPrompt } = useDispatch( CORE_USER ); + const { setInternalServerError } = useDispatch( CORE_SITE ); + + const documentationLinkURL = useSelect( + ( select: Select ) => + select( CORE_SITE ).getDocumentationLinkURL( 'rrm-newsletter' ), + [] + ); + + const isDismissingPrompt = useSelect( + ( select: Select ) => + select( CORE_USER ).isDismissingPrompt( + RRM_EXPRESS_SETUP_TRAFFIC_CTA_DISMISSED_KEY + ), + [] + ); + + const isFetchingSetModuleActivation = useSelect( + ( select: Select ) => + select( CORE_MODULES ).isFetchingSetModuleActivation( + MODULE_SLUG_READER_REVENUE_MANAGER, + true + ), + [] + ); + + const isModuleConnected = useSelect( + ( select: Select ) => + select( CORE_MODULES ).isModuleConnected( + MODULE_SLUG_READER_REVENUE_MANAGER + ), + [] + ); + + const isNavigatingToDocumentationLinkURL = useSelect( + ( select: Select ) => + documentationLinkURL && + select( CORE_LOCATION ).isNavigatingTo( documentationLinkURL ), + [] + ); + + const isPromptDismissed = useSelect( + ( select: Select ) => + select( CORE_USER ).isPromptDismissed( + RRM_EXPRESS_SETUP_TRAFFIC_CTA_DISMISSED_KEY + ), + [] + ); + + const viewOnlyDashboard = useViewOnly(); + + const isBusy = isFetchingSetModuleActivation || isDismissingPrompt; + + const isInProgress = + isFetchingSetModuleActivation || isNavigatingToDocumentationLinkURL; + + const shouldShowWidget = + isModuleConnected === false && + isPromptDismissed === false && + viewOnlyDashboard === false; + + async function handleCTAClick() { + const { error, response } = await activateModule( + MODULE_SLUG_READER_REVENUE_MANAGER + ); + + if ( error ) { + setInternalServerError( { + id: `${ MODULE_SLUG_READER_REVENUE_MANAGER }-setup-error`, + description: error.message, + } ); + + return null; + } + + await setItem( 'module_setup', MODULE_SLUG_READER_REVENUE_MANAGER, { + ttl: 300, + } ); + + navigateTo( + addQueryArgs( response.moduleReauthURL, { + cta: 'newsletter', + expressSetup: 'true', + } ) + ); + + return null; + } + + async function handleDismissClick() { + await dismissPrompt( RRM_EXPRESS_SETUP_TRAFFIC_CTA_DISMISSED_KEY ); + } + + if ( ! shouldShowWidget ) { + return ; + } + + return ( + + +

+ { __( + 'Create a newsletter sign-up form to help turn visitors into loyal readers.', + 'google-site-kit' + ) }{ ' ' } + + { __( 'Learn more', 'google-site-kit' ) } + +

+ + + } + ctaButton={ { + label: __( 'Set up a sign-up form', 'google-site-kit' ), + onClick: handleCTAClick, + disabled: isBusy, + inProgress: isInProgress, + } } + dismissButton={ { + label: __( 'No thanks', 'google-site-kit' ), + onClick: handleDismissClick, + disabled: isBusy, + } } + svg={ { + desktop: BannerSVGDesktop as unknown as string, + mobile: BannerSVGMobile as unknown as string, + verticalPosition: 'center', + } } + /> +
+ ); +} diff --git a/assets/js/modules/reader-revenue-manager/components/dashboard/index.js b/assets/js/modules/reader-revenue-manager/components/dashboard/index.js index cccd1f88959..6acc701b84f 100644 --- a/assets/js/modules/reader-revenue-manager/components/dashboard/index.js +++ b/assets/js/modules/reader-revenue-manager/components/dashboard/index.js @@ -20,6 +20,7 @@ export { default as ProductIDContributionsNotification } from './ProductIDContri export { default as ProductIDSubscriptionsNotification } from './ProductIDSubscriptionsNotification'; export { default as PublicationApprovedOverlayNotification } from './PublicationApprovedOverlayNotification'; export { default as ReaderRevenueManagerSetupCTABanner } from './ReaderRevenueManagerSetupCTABanner'; +export { default as ReaderRevenueManagerSetupCTABannerWidget } from './ReaderRevenueManagerSetupCTABannerWidget'; export { default as RRMSetupSuccessSubtleNotification } from './RRMSetupSuccessSubtleNotification'; export { default as RRMIntroductoryOverlayNotification } from './RRMIntroductoryOverlayNotification'; export { default as PolicyViolationNotification } from './PolicyViolationNotification'; diff --git a/assets/js/modules/reader-revenue-manager/constants.js b/assets/js/modules/reader-revenue-manager/constants.js index 48ab67e94e6..734b76a0ed9 100644 --- a/assets/js/modules/reader-revenue-manager/constants.js +++ b/assets/js/modules/reader-revenue-manager/constants.js @@ -31,6 +31,10 @@ export const RRM_PRODUCT_ID_OPEN_ACCESS_NOTICE_SLUG = 'rrm-product-id-open-access-notice'; export const RRM_PRODUCT_ID_INFO_NOTICE_SLUG = 'rrm-product-id-info-notice'; export const RRM_SETUP_NOTIFICATION_ID = 'rrm-setup-notification'; +export const RRM_EXPRESS_SETUP_TRAFFIC_CTA_WIDGET_SLUG = + 'rrmExpressSetupTrafficCTA'; +export const RRM_EXPRESS_SETUP_TRAFFIC_CTA_DISMISSED_KEY = + 'rrm-express-setup-traffic-cta'; export const RRM_SETUP_SUCCESS_NOTIFICATION_ID = 'setup-success-notification-rrm'; export const RRM_PRODUCT_ID_CONTRIBUTIONS_NOTIFICATION_ID = diff --git a/assets/js/modules/reader-revenue-manager/index.js b/assets/js/modules/reader-revenue-manager/index.js index 2cc81287db0..9aefa061573 100644 --- a/assets/js/modules/reader-revenue-manager/index.js +++ b/assets/js/modules/reader-revenue-manager/index.js @@ -41,6 +41,7 @@ import { export { registerStore } from './datastore'; export { registerNotifications } from './notifications'; +export { registerWidgets } from './widgets'; export function registerModule( modules ) { modules.registerModule( MODULE_SLUG_READER_REVENUE_MANAGER, { diff --git a/assets/js/modules/reader-revenue-manager/notifications/index.js b/assets/js/modules/reader-revenue-manager/notifications/index.js index 3506d725bac..2513085e766 100644 --- a/assets/js/modules/reader-revenue-manager/notifications/index.js +++ b/assets/js/modules/reader-revenue-manager/notifications/index.js @@ -24,6 +24,7 @@ import { getQueryArg } from '@wordpress/url'; /** * Internal dependencies */ +import { isFeatureEnabled } from '@/js/features'; import { VIEW_CONTEXT_MAIN_DASHBOARD } from '@/js/googlesitekit/constants'; import { requireModuleConnected } from '@/js/googlesitekit/data-requirements'; import { CORE_USER } from '@/js/googlesitekit/datastore/user/constants'; @@ -129,6 +130,10 @@ export const NOTIFICATIONS = { groupID: NOTIFICATION_GROUPS.SETUP_CTAS, viewContexts: [ VIEW_CONTEXT_MAIN_DASHBOARD ], checkRequirements: async ( { select, resolveSelect } ) => { + if ( isFeatureEnabled( 'rrmExpressSetup' ) ) { + return false; + } + await Promise.all( [ // The isPromptDismissed selector relies on the resolution // of the getDismissedPrompts() resolver. diff --git a/assets/js/modules/reader-revenue-manager/widgets/index.ts b/assets/js/modules/reader-revenue-manager/widgets/index.ts new file mode 100644 index 00000000000..f8bd5c80c5f --- /dev/null +++ b/assets/js/modules/reader-revenue-manager/widgets/index.ts @@ -0,0 +1,69 @@ +/** + * Reader Revenue Manager module widget registrations. + * + * Site Kit by Google, Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Internal dependencies + */ +import { isFeatureEnabled } from '@/js/features'; +import { Select } from '@/js/googlesitekit-data'; +import { CORE_USER } from '@/js/googlesitekit/datastore/user/constants'; +import { CORE_MODULES } from '@/js/googlesitekit/modules/datastore/constants'; +import { AREA_MAIN_DASHBOARD_TRAFFIC_READER_REVENUE_MANAGER } from '@/js/googlesitekit/widgets/default-areas'; +import { ReaderRevenueManagerSetupCTABannerWidget } from '@/js/modules/reader-revenue-manager/components/dashboard'; +import { + MODULE_SLUG_READER_REVENUE_MANAGER, + RRM_EXPRESS_SETUP_TRAFFIC_CTA_DISMISSED_KEY, + RRM_EXPRESS_SETUP_TRAFFIC_CTA_WIDGET_SLUG, +} from '@/js/modules/reader-revenue-manager/constants'; + +// @ts-expect-error TODO: Add type for `widgets` when googlesitekit-widgets is migrated to TypeScript. +export function registerWidgets( widgets ) { + widgets.registerWidget( + RRM_EXPRESS_SETUP_TRAFFIC_CTA_WIDGET_SLUG, + { + Component: ReaderRevenueManagerSetupCTABannerWidget, + width: [ widgets.WIDGET_WIDTHS.FULL ], + priority: 1, + wrapWidget: false, + isActive: ( select: Select ) => { + const rrmExpressSetupEnabled = + isFeatureEnabled( 'rrmExpressSetup' ); + + const canActivateModule = select( + CORE_MODULES + ).canActivateModule( MODULE_SLUG_READER_REVENUE_MANAGER ); + + const isModuleConnected = select( + CORE_MODULES + ).isModuleConnected( MODULE_SLUG_READER_REVENUE_MANAGER ); + + const isPromptDismissed = select( CORE_USER ).isPromptDismissed( + RRM_EXPRESS_SETUP_TRAFFIC_CTA_DISMISSED_KEY + ); + + return ( + canActivateModule && + rrmExpressSetupEnabled && + isModuleConnected === false && + isPromptDismissed === false + ); + }, + }, + [ AREA_MAIN_DASHBOARD_TRAFFIC_READER_REVENUE_MANAGER ] + ); +} diff --git a/assets/sass/components/banner/_googlesitekit-banner.scss b/assets/sass/components/banner/_googlesitekit-banner.scss index c77ab6a0dfa..e2b6b3ee14d 100644 --- a/assets/sass/components/banner/_googlesitekit-banner.scss +++ b/assets/sass/components/banner/_googlesitekit-banner.scss @@ -200,3 +200,47 @@ .googlesitekit-widget-context--with-progress-bar { padding-top: 0; } + +.googlesitekit-banner--rrm-setup { + background: linear-gradient(180deg, #FFF 9.13%, #D0FBE1 76.44%) center bottom / auto 146px no-repeat; + + .googlesitekit-widget & { + border-radius: 0; + } + + p.googlesitekit-banner__title { + @include googlesitekit-typography(title, medium); + margin-block-end: 10px; + } + + .googlesitekit-banner__description p:first-child { + margin-block-end: 4px; + } + + .googlesitekit-notice__action { + margin-block-end: 0; + + > .mdc-button { + margin-block-start: 16px; + } + } + + @media (min-width: $width-tablet + 1 + px) { + p.googlesitekit-banner__title { + @include googlesitekit-typography(headline, small); + } + } + + @media (min-width: $width-desktop + 1 + px) { + background: linear-gradient(90deg, #FFF 40.36%, #D0FBE1 88.55%); + + .googlesitekit-banner__title, + .googlesitekit-banner__description p:first-child { + margin-block-end: 7px; + } + + p.googlesitekit-banner__title { + @include googlesitekit-typography(headline, medium); + } + } +} diff --git a/assets/sass/components/reader-revenue-manager/_googlesitekit-rrm-powered-by.scss b/assets/sass/components/reader-revenue-manager/_googlesitekit-rrm-powered-by.scss new file mode 100644 index 00000000000..ade7e09f321 --- /dev/null +++ b/assets/sass/components/reader-revenue-manager/_googlesitekit-rrm-powered-by.scss @@ -0,0 +1,32 @@ +/** + * Reader Revenue Manager Setup styles. + * + * Site Kit by Google, Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +.googlesitekit-powered-by { + align-items: center; + display: flex; + + svg { + display: block; + inline-size: 36px; + padding: 6px; + } + + .googlesitekit-powered-by__text { + padding: 10px; + } +} diff --git a/assets/sass/components/reader-revenue-manager/_index.scss b/assets/sass/components/reader-revenue-manager/_index.scss index 5ffbeec96bf..264736b7317 100644 --- a/assets/sass/components/reader-revenue-manager/_index.scss +++ b/assets/sass/components/reader-revenue-manager/_index.scss @@ -16,5 +16,6 @@ * limitations under the License. */ +@import "googlesitekit-rrm-powered-by"; @import "googlesitekit-rrm-settings-module"; @import "googlesitekit-rrm-setup-module"; diff --git a/assets/sass/config/_mixins.scss b/assets/sass/config/_mixins.scss index fa956489aae..1ac0c270cff 100644 --- a/assets/sass/config/_mixins.scss +++ b/assets/sass/config/_mixins.scss @@ -37,6 +37,14 @@ } } +@mixin googlesitekit-typography( $type, $size ) { + font-family: map-get($typography-font-families, $type); + + @each $property, $value in map-get($typography-settings, $type, $size) { + #{$property}: $value; + } +} + @mixin screen-reader-only { clip: rect(1px, 1px, 1px, 1px); height: 1px; diff --git a/assets/svg/graphics/banner-rrm-setup-cta-widget-mobile.svg b/assets/svg/graphics/banner-rrm-setup-cta-widget-mobile.svg new file mode 100644 index 00000000000..3125ecb2b44 --- /dev/null +++ b/assets/svg/graphics/banner-rrm-setup-cta-widget-mobile.svg @@ -0,0 +1,219 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/svg/graphics/banner-rrm-setup-cta-widget.svg b/assets/svg/graphics/banner-rrm-setup-cta-widget.svg new file mode 100644 index 00000000000..4bfe843ac01 --- /dev/null +++ b/assets/svg/graphics/banner-rrm-setup-cta-widget.svg @@ -0,0 +1,234 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tests/backstop/reference/google-site-kit_Modules_ReaderRevenueManager_Components_Dashboard_ReaderRevenueManagerSetupCTABannerWidget_Default_0_document_0_small.png b/tests/backstop/reference/google-site-kit_Modules_ReaderRevenueManager_Components_Dashboard_ReaderRevenueManagerSetupCTABannerWidget_Default_0_document_0_small.png new file mode 100644 index 0000000000000000000000000000000000000000..9f230c4960136323ae666e0ee62d22c6d136b3d2 GIT binary patch literal 41456 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 literal 0 HcmV?d00001 diff --git a/tests/backstop/reference/google-site-kit_Modules_ReaderRevenueManager_Components_Dashboard_ReaderRevenueManagerSetupCTABannerWidget_Default_0_document_2_large.png b/tests/backstop/reference/google-site-kit_Modules_ReaderRevenueManager_Components_Dashboard_ReaderRevenueManagerSetupCTABannerWidget_Default_0_document_2_large.png new file mode 100644 index 0000000000000000000000000000000000000000..b1e8ded152382e9f7de56a9bedebbd7d87a5aa94 GIT binary patch literal 101638 zcmeF2Wl&rF`{r>dUW%3mYk}evEfAbi++B+XcMI%83FwfutrYRaR8;!9j*su>mxBx&bLYNmP|y>) z_yzhp?H(?-zpy(VE`>!6dYoPgW-f1dhKti#6oc?MFP=Y|FhvA z1^l01!uAV@8PfgtxBqS+;D#0a=hOf0M-%#x{J$OrE>0u-e>$j0Al&~y$p6bZ=?Z=$ z4F-en?(S+dB0mKy|8r?xxYsf^^I{M|U3O%|y(Vkpo8|1Fu>e~@T?KnpA%!|T)PY~N zS=sJ}=H}#BLv}2rnjZ;3y$Lb2R|D;pzgIiY`r*-zTOZx91YemQKicnZ0dPe>_^?FX zTxTsc)?+FQc&S4u?;!?~I*8{8h=z(@wk= zgovRlwEg#@Y6arz{POdBAn0wLN;=*T9 zzAWbnq?1CTUatv7%}|Q7hLim24}UdqE-vxDs%@27JgKi~P% zsuIe>K_!J;fL5P#UcIJW5q-xL=Jw74Tf}#Idk>(h+-oeHP?}3zwVY6{I~@A9L^uE? zD9AbO@bBGP%x_16VNun4*Y`69*z~$iLm9ajj;$K+)29^022wG;v$9rc-U1s;Uzdcw z#!`S*LqtNC9ywk)mos<9HyVp6KK6=}V^!9PfhsL9Pi!9CCq$tJRqYE0YA-q&+2yAI z9z_z5PXyhqz^1{GJ}%!7YgTE$Q9MN_Uvo{Ohnq9Z(n$Y#lo1HCY?tTI*MRho{c zggJddVixG;+r~$lLVU(gb*04wiH`lS55XNV?O9XLN1if5u*#?F!}kl|%#e~)6449r zH3|!bw%Q6;M%lefWzcM;^m&;+>|}!SIY>75j{&SV*mWm>2tsznQ$x>Sd? z8Nk+YTFpQ9W!o+fOOWD@Hw`0eLiAjykqQw@6kA&B^IJ|$~e|yjt z-h4H)R<8!Fg=A2d>s=j8i%w(wBdgtydmbWi(8l$}I6Y&{cl|e#gVu0M4s`-0kk#gQ+%vkXSYC>7KDJF&f?&1S|PrH$d$8A?ptZaY%PHR-kpP zm2ws`XQZ2ykoGDTv_9WW=&%*2xqYWV9`lAg#vOpGApWhf; zb80uyI$dmH7i*b~^C()|loyH05E29JO5Qee2m(zNk&ygO(gTHd7Fjs`a-D&mVSrO7@xF8fdbtZ(a(SDHA4UWWdOABYI$L% zzVI;H3EO4Q%$kOKWXriYvxHUh#uCr(lX*jd+MD(duaED>xo_!3I^v{g5J{U&U5Tk2 zOc$kNwMJw$unBjUnB#o^L{p@Q9(}aTf{(O7*Pxwj*y?fol{NJIX@$P5v`Yb7P>qJZ zEPgo0sDM8n6da&1ZL5G;{fVT2)AGjYZ}Za@U$n!E zr07SLqm>+H`UY%u5!A-4@1-G2Lnt$l=L~Aav=%kQl1P{RIqHpy>EyN{b3H-P$MN_owZ+E-iyy~n zPV)3P&@D;i?#goSTj8s&I`J8gKrs^&%`ZGt9KY}?rBsA7QF)~!FlJ1~)FH(Nppsw6 z|JXPrQeIx#b>EjoC+(`v&F-TCHN1$uIjX@7YSS+TG|V!t!42tk`Lo!|%Dj*|eknAl zgXZ3|ByoDyE(L@g3_!T{b3B{z@08SM_i9*ZwV_I4EGt*|)ZjQ>khCq3Rrgafez4E$ zeiL$e6CHy8p2iA-XyM$FM$SQimbOcBe8yPm*`7r?EfC%?D|1B|F>!fuGVk0{vP)u; zq*z!x1W^MyGEJNE3Ei>Y1=;do0EM_j3kmS?@uz!)T<*Z*mcBXTdFHB$38iWEvlbHw zczJ=M{}|J1%J$H;Ypt_Z(&R6Q@bdupXjJa6l+mb-i@!~(*KPVQVd9bQF^(s{>0Aua z!!24fZ*b?#qh$@ZN0o*1y< zDc(Ric;yr7KA4i=`bc_6rCATrgCzN+bHKrC8Po(FC2X~IWvck|J5NXa^9%-PP z-i!=84OxJdL$Zn&N&`Wa_&A;rirP_8lpttWoq6ke$E5;$NK?s@K1=w_>cOo=$KNrT z!b$3k`bu5rnAW)|G_p9`L3Tt5cUP)l*rTf60wU(r!*F(HQkYwvN{m z+Jk5{A!^9I=KuUO(MrIL?_uf9x@d5*FGWvun!$eNuEwfr5|B)1xjcH-m9jIzT>T-~FSYmj1ok1r-Zf%!YiCJ-xX+MBOSuC;innFAjv(=(_KV{!MK z%~%i++OR2@T4M+Fm3|9~ooFf*m`eqsZZX!xPN+!H@k5Whg&w3={$Rsxve=J+-Ny0O zH5Cci+hYBcL z0kcwU*RQ3U8@{)ac-|<`-My2YwqZGySHy`x(_y3!={Byi7`6+#O7f+9B$EPU|W94~m5GT7Vyl1b7 zns*q(qAE-s9fF06MlE?jbcueL4>#Tk$B!a08%)X<1wJ?=gJhSrvhTgOoqaK%pNhU2 zj@UtFvr!u$4TSUs;iXb7EMCJlRlviK^S5s9UiGC-lXV|&S6&IoPXfO!V>lV%G;l3a zatd0}*{1a9PB#A$89&1iBYN<}K$j!(Et48U9F4g|I z>S&0lKI3@YM-6bzCclY&B!hffWQlxt7~yMhnm*AQ&k050*)SAXIVN|V^LC9ORj27q zZZje`F6_kCAq^b*vQ{D1j^IvOiQ0|hNkHhJ{%^(Gu+hk}qmotD<^po0(SZVbcH{9I z-OTT+wO7GvJkq!an_$P}#|&-QB5FSoGmp2<6nEmsCfkay`w&*j&wU2{Q!l@k_%CkSUB$ zk6EBiUDOsxzEimu`PmSqGa4%WfQFTwct~%5)*Z}|l;OHRrT$+mpyZKg)`3Olv*MbY za*vtAOA+!9O5XB~9+)Z!-IOfgW)VzTC-%RA-6fwuCEic>9}WIZ`A7y{_uZh$dmC#@ zt;s8SUQ|A(daeXglXKpwaT#@764&sq@AV68cv8Qm@z%3WJOiqzwn$+MzBsc6|)-OhtMc};2TK;!R4hP%nUm*HJ>sHs#3q%RwXca7_?=mQ2YZN zlyd#h7I-ceRARMd_$TdTH}$8-3C4r;OWM-)8LaL(Q~mhAng>1g)jBbxu(sA9ca<*# z4Q@)=+bJg7CdcHtn7TRcL01O^v%Tg(!ODm3aG$|HsQ?O z#cF=Hw@Z_MvX3dp6e<3EypIPSbqjxeg{gex2)DDZyA!rEStpxpb}gxCx1n?AMpGt4 zsDoUaX__fSR;rv9Yn_TRn}G@XNHKHsDMNxrw; zV>5yE^rIhjR&PQ$$PKSl^b=FSly^QW!Ynqz`-COBXL3-@T?FCJOhKRS4P@1Q#f-u1cAREc&8*fFnYopSG67FJG&sg#!2GCnDe(2uHC z^4uI!qkUyd`jD)$*I@klD-;2mV$i^=JBE{njx^>tB-cp zceU=YTvZu`ng;iDXf(X+a&}`LQB`U}A>L73oabrZmqn}IY@oc8h(#BZCl{89GZ$SK z94?r2q$S;D2233K<7%0v1dn%tPAP`9yF~PrZ5miN2%^38WMvWjqo*5uDO`SOLb~J+ zEdNjhM1`Xccpf+kAJ^Vmvp$xJ%;ohlRMx0u8Ckz{#vDEp>QFsDGdN)= z+Dxq#Sd6x@(}n&vdD3w$~^730Hk}Q98<*3hkSRDZ!Qdwak5XP|jMM zrku@0LZb0TNfq%dZSZqUvS(PSSQJjQ`Zi{hdM}Gp>FcRAXYp~Rzc$bcO{J9__(U@{ zsUL*3g}6to+fXzyW8Y%b95;AKLGwCnbJ(!8hX1EN8*Q!=b|7TI)R^Lk*U6f!9rViS zCy|D|8S|QfYDV?ei`l-B%6aL?_lJ@9vxecX$|UK`-d`AgO0MEvTfgVbGV3#}$@Ld0_SnPYk^ajM z6mAR_=v1N165LYhHYfxUeK^&TrQH@)1gaw-ut>97>%^Ltnfd?c5fBz4aQ|9F!} z`FECe9YCkhlz>QeI51Zra2IoPEe>pYCk*#HjhkVfE>hS-TMpA@>ud8nm+&ZvUnGba`*B}Of zMnCg!oRmq=RI?e>H8s;#a^tLfPGF{8#vry>gO?TCiA?=H#WoX*j>{9uK4o-Jy7=SB zAsor$gM4>i;<{CpAkKE!NU50Wz=W8}2l_X|`7a;$z1ob?xutK%>Hj(>#Q%eHqTGB+ zC+h%7tTi4+Tt2H7<_)pQ`oOIw&^FTj4Jf!u1dQrjZ`Aj*RgU#k5PhdU=9&d&Z<)pC zKKk4G+m zb@>0n{9J+)AWfURRqRLdy8 zu2{HerIu^yHM@X^rSS3G)LIVT?r8yx?hne#(7e!vrDo7e5|>6sP3T{r0z-YSuXZ^t zKO*PmX0X+hx*E6YoL@p{2~mppi~y77jHofO@hCVQsE<+8{%y3 z#f@WM)bpQGlEpz1Pi+xHsO9t5!EVSa2Pe-OGQ4{+3DT8z&$0(gej%Yxg>g7dRZTVm z_pL4_Fuf+(xgL%CCzmmt=pCli_#gTHNvhR7HF6)E^j7_sI^~#8r)6{_E}KU;!(w%r zHn9#l=OA~4cQw4ceHSRbkqs9`Oxc?wuk0+jBl=}dq?EOZjmxL$=KU#dL6!L_Qp4aV zE4I6RqU;LIRunF@Q(l)9n-DJR1zaCG(}6+dCxXqr2V81p-=5%UH#TerdU}p0b8fEO zjDO7dEzv)aW+*-`)+dsVe*#}!nP%3>r^Q)gH`rW<%fo-TRUz}vFLh_vR|c{0CdZX# z#;HoAkuZQaoFzqEKmKQH?BS>k9A88*nF5O%?TCao#`|WD>#EuqYw>x)c)8$Msise? zV&AQ;Ax8*tKvGC|FPDbZ=w#8CZMxTdpjXAaqEgBixP9z(^od(M6n_CuLT@mP_E>W+ zT`k*pDewRFUB7WzfMGC$_`U+p4GQv))s}*Dt zN-8TYHL?WIlnHQ177Me3Qzoxhsx{7GNNeG;BBi75GsRlu{Ad#!pBMMpX&p!hNC%zg zPc)`BS>_jgsA~(XR?3@bzCD}G=KikaFdkn-^YR#w5Wa=kUF6Lzq^WoCDqBk9h(OY| zaW0J~1;+nwp_F+4%6-JIPyF0Rmo3&Ba;ij3Z#v_<(CaIIb#Cx_BS@=gn55N{5*Aruk9PhAv?F!0rn(-d6_PwF(yVQjx{9Ez zX4Vm|z&cql_P2C1kxkj=MVfeGmjZtaPQ(c73!Z+uMF-ik#t-ichP%c@cAx2OrY+bS z+_1G)wcCB!$rs@pv{w1ZAm*I4Wr-j?@{DTPljxtyN@;=CEf|%9Z1w^XnBL4Ncwx&!>u>rncYUC#oS+rKY6C@8 zRZjbfUF5UJ#CN(Pp&ytsbWQd=4Uq7{3l@maNe{KDQhi?tscQaF_XcdhDk)J9{8b`x zkpWLwpmBbB_t_d8j3mJzl4MTt!rHV-L(UtPo?Gd2e90Y@Wv-ux-wq7@wFZ+Arqs)| ztxc*+8?X?m5S*;6!2p^5`SAEiy|2VD&$d|1g0mPmj=y5W*p&0|0=|;7{L!YIq1(b^=(#i;s|@LMuo)V|X8S3M}5& zn!JaZ{~t5m5{dG>XLeK{VI2Ps9@KZ1V_ywOq$fh~Ehef|i2@Qf@=?L^q*GaGGChq& z{(74eWn?GPfjnTBb=DPgg0NXb#L90n!}g-q2VXetO{%MDY?&$Zd~{1k@svyv`CQXbcZ-)`l)(I z%0mi}Z#7vp$*~!-FAR!6X_d(oG{-}pu@F!64L@jRcOnZ@*w;lA6J)3N0Y2k3ish$` zOcYV$b#cK>7aOChRg9ZvCF1{zN2o5YE&Ntmm<1Bkc0Wc#WkYj8iif$ZqVew&bkqBc z{(;iS69f@q0&brV6P-sY;_1MG0~Cc>B3g@wfR8c12_$lql5mml?pB{Tc+??^6xNev z@`EmbG!C0`qGWZIpW3W9RjHFjGA|4dx?@>G+R~jP&&ICbrdQh5jqF#a~p|L1AK^7R##t#R3}ZX$gqs!{ov+;Awg$u@(l- zD8NKBl$5^?f7Q^0^*7AI_Z`Av|9Fl^KlsyO%|Si@vx5tQ-`|+Hcw_i>_HzeX!{ID` zOD@%zL@K4!3t1--Vrcp62E_s#d)Vn-Gsw$Wmaa{x2)nvx6<}}m4Q{%u#O-7#kM}wz zqd|X?sFqKRMJVXdWg^0mC}WLz$16tVK+d5ib>mw%?CUctKSK-!XZ`$U*RCbLtPJW1 zYx!;T@4Eu)DDQwa;`inX zl_X01S(j>z=!YZAx>ClLSugm>PBNt@79$YyWX@hx#XvXwta32Tuwo1KispOVt8l-} zm3pP9qS2(8GKM_|TKg>;V>VeTd;Rcu6|;IkfIneO{eE0Gzo}r`VpvB+;FrGt3py3( zpHT;k*Xume;dL09T5f39l&3rq}3m`wF_Yt67VcXdPdde~kmL7ZL)>0Y1QJR0?U~Xd>7X zm}~861&XUPjzDAb`d-lovVxk^IHn+!%x73xWoboCy3tprjRFEc!wwoQofg7?uT3u;*2L4~9`{brnUg4H zuOWC$>3n`PTF5qgANrY$ide$=4ZA!J6Ywel7kGo+ZYf3*s^@vmRDE1|z6th`d18OK zFjMG!{w0jsxRn3pep-PJz;(OUDCo&D3M@`4QyQ zm=Kld;YhF33< z-bnrx-%P&_@cQ8r-2Z0qKIXghf6S&7&@N~P#61uQ*w-anxa=5Om`oohNe$PEfM_1JsLCA>A5K=O_zFJwZlGT&^`ct5F5~ZZ*I>b(s1OlKZM9>>VLDJdxt z)UGRDM78ycdLCT^C<2qv*3-ud$kD}GaY*eF(#dDwoiuYN{sGrxy{%K=E~B4~5JVT7 z)%rBDzB@tRe&6l8>gCj-+c#g2n`KuVzKzqd#<@1pL2T|-hdK*k?wYsz_Pgq6BN5db zz`}PpWn(Lw&UOpDl>nSci&3xfcy#rj2AlxHmx+j9aoo2e!XsR_bA@^#7JDGB#ll&v zMz%h<9`KG3g27QjvGwqmP(!unqyo2nlf%qUBaroZH-LEDTUc#0K6}^2waw#eZR1X= zM*ZfM^{w3y{Tun;uw|`dTEdu8lkfJLDKF@tWG@)R`yWRvF^-pCGF|%YF^@gTwU!C` z3FT_%W0MzkOkUz|&0FDNQNA~x0G%fZbA?BQpR@OOhlx3CA2b|FjY^F&JSX{>Y?sYc zGSH3g)Yw`yG`;`nk&Fa==P6IGY&E`%FA(7vH&?VfbEe_kbJEcc8F3hE zIGo|tW#0xLd@X3JYO>Wi5o3#MC?6+z@rxrnXwkUegbH4h15bS^1N7fsoI^Vw+rF*) zhlhv5n2PNELD^R_pUb_?XcEs~ew{C8d@vxD;u{l8YSUu>JNJu`9^hhnR$my_ zbk1Nz$fD=D$;6$MoYd`u?40VdP+OV)iL#9GZEPI#*s;P{g4UPAHw-C-<>imXc`+Tk zD;^#92Zs|AN;(~Gzo{w%#NT$5T)Qp4!21Ybn!n$j;zXz*Z&JiRFocVASmTHo7(x2h zq4V};M2w?62!J!9sic=tD0WB%81N6DnyeeMf^?_X_3;_7; z2IN^riM_+g)9tonb|x|*t%ZFRm~ib3m-mXHlwKvZG*l|-bz`j==Hk6Zp_~XYlm=);+Rii?fpb`(z%#5h(#KgosDB&Gvg)D)%nh3n;`7xKKDZJhZ~|fd3p+Y zdPR0;eYKka?^?8Z6QmYRL;(Er?m__DJz+(^Pp8YEA(2TbbW~u-~FC3YR!g!qvNj_kM(Q-0fKE z*!5K#$OE5mhvMF&l79}={9)u?CE8eOQDT@Y{&rlN2$r&Po~Y}XhLK=#ptLx^@5s4H zohGILLAyf9%<8L3R8C;EteijY0MngO-Pq(7qd8<-5iZnIrBrlWnhX=_pgl}*w2PQA zu#^Q01lY+jpnnqqI;?jNl-?J6Lf0)MgpNbPRQw~q|Kunc(9AVK>R>}wPV;NfvNRg} z@WbHU@7~Kw_}pxgBtbHtFl{O&+3k`^yjR~yeJxaK5zEv-?DA6RW|HRd2(SywZ$+v; z^Mt<%413UOtlY{*cHB2b@c2`&9W&MndKZm}F-yXIBIs9IDpshv#Mg5qN(-dkZ1oKR z!BsmX8=KqNRgioQYhtO{xFBL$)9egrFvt_nQtWXQ3E?`b)p0!bZ$2MMY|OvML^<3r z&V}^heV#Gd(0@u>Xi2ZTd`3ONc=}bWn5S*icK1s(c)+uA+qUz?WrqhOpDu88g6ekT0*ON|2n zgY0r1q2?8aUX~n@k+NmO0j^K1S)y~5*wEM`Mc`sEIkLtV)qi>uL|GmG;K&AWS$cXgfM$DQ^k zOfDT+0y*(+j;9~CiN1E;&1i$N!Gti48?5f%aaIq{NxnUyqxNeN_fVS$M0(B~Z8%8j zpfN-Q%UvC)F^`>_jGnG$@wb+7IjpTIOBotrtAxRt){s6+B9Q@bp)DR3%JSr=teEi9 zerkl_R343Y)w??dk|Je$NZau#|Mj0!2{UjTN|gTZd5tgJ2bh=tUiy zQT=P{`m)yvzvWE1`CRq7qdb2?2cK*!Tc2+Qvu=F`zbms^Go{mR29uuwb2KEj}^?m3VJyfr9)nu zGRyZ?vda)^?AcuU95vLMieo@Q2}P6=8(Zv*=V5jIi0BSokrjIngtU_XDc67R#lxYtLhB?ux7sYeDn6#OSvP|`z7Fp z-*pt=x?F-fnf~~+H8~D!-<@fVU=y4*j)AU+H-Yx_c;69Y;x*7y5nnz;5JHCtU#kulv zzO)|%WONhb>3jTP zC;ItrdFy0c;AIJLe-tWa&@Zt2c%fFMhc&qhSk5*b~9crP^h_&Q`v4%g(s_Jc432#Wg*E#KPr$EeCUFJ>=crkkirPHyG^xW^L zA1}umS2H}G!L7#~i#yAZIZ#&z_p-y}26aUDt@QnF`o7tpm4_3{#SYz8?4uf&b@j$& zZ_@F`-WT3_eTZi>Hh_ViVX*CdB(68)q<(Td-4=2u@bJfRJ&5S}ZkK%O5ZBrdu;41> z$+>?x5kC<^_RjfNEFz!l!BUOrpqMHF*?FizFR$~S+iLsG29M11ajPR#z~jNXan+#p zNSu##@#8~YzmexQ` zt)R=O)AsQpX>?>{`$BrTd5aL6kZE`Uz_)TI?B_#ykPEn;?+g1l`RQ5UVCel1t*+bs z#|Y+(PmaNQY*$sCrzhL$1Mj#lf5FT}vwifubMY#3+imX6pjS@HBmbf8Z9C7#p3!mJ5%!LwpksenQPv}D9e@c9e}SQ1H@S%uH=>e~ z!~Q`S3i(m)Tk8)e&9=Xu5wAwv+>5g8@5z0hh2=?KvOMogydF+2P6P6O&FAs?T%HZu zv~APyBjx8@HWOvFUT#Q-M$))mMMb<&PO7zZ)B4$_I+Fw?l$ia3hdEzTBEI^J@ z&LQmSIl-*c--BfAwjEPZosahz&+U%~-)9HgTFicLC__IJh)SNRnw#(U1YzI^IPEz? zfvpdft^52-H(gJ~)*P=s;<1u_0dt*q$Ia?{@Xs(0AselNNv8n-)i>{r9z7mQXvw_x z*4wX_80^ZPQ2vAvyb|@XGRU0`Z2_DB?0TPY1n>8T-Um-s2xPL76$RiBw+T4oVBFuQ z+q}CP`q(a}^2e6ehwr+9d$C^f#@oI;JVno*Bsp5o-x=pc&+BL!mCW&<3)+j++;4 znvbeQaa7$={cQ9m_g*Y+4)cjVW1A+8W`{d? zRLm?%uA1onIa%)I$GP`0d$xj3_5+$AJ@_^aG%fgv!BRaALti zEt@67+Dis$o{qpF*3>`5m2*rkCky-5%D?aE$F?p14SlXOHn!?VCNUW+Pom zNjbxkwjK?=^D`RKuOd+5G3w&6Nc~9pjT$#bwXY8iK|h$Yj_b`Q?ZVFywM8ghbG)2j zDoKp=t=y-(c~|~+Z!%T6sFUq}TNn{_y^**K;I$MgMuln~!Gu1TWe21$XlrYOsTOFX zD0?jJ`NqSx(_`|A+vRu(d>^@Al;MreX>j$5!*b!z0YlaOPDGWdOe)uXGtu?_3Fhj} zV+6~R-DK3~I_XaDh+U?>PJrv&Ye7SX^4rfo*GrK_9A_6$MY;yF-w3^ZMdUu`KPRD9 z3;C~@JFlV_SrZ2zu6>13*GR_GxEy;1H_4lByfJS+RSR7Fse5*4CTRLIGWzMX2eq3A zl=*c3efIQ&z5Bs%(OP_r;M3N|DD#i6Vi#L!hgJR69S_Oc0&Xuube&J1?ha3E+V_)T zvplQbyMS!Z`>6w!IeI%F#CaVf#1lx#m&KL!a!r_{rEQBU(IS?U^}J(mBEsHw(WVXyWwrC=adCH(HaGV8cOI%mwK5dw_3VG=M|#Zt zO-NDkb@F)#xsO;%p3^MBLvM^gzWxub+X<|D)Z<2vYc**=UrG)#uhQBaMN=kX?0%=&w&|GerYR{d+-=CTG{k&Oye=2yjwyU zEa4LJJYyl{eO^MVNawsrc$a>EKFXXfXuI;*JSW9krCDd%L?e(FOb*U>lgM&C29x_-{+^;!{u)EZ zZ5ym*a@OvOf4KsRH6Kb<&Fy)pDCFtw85|@*AKnS}5~y*lvG<^KJ_mMeBV%Ki4?W z!m-DtJAqdP`3f{f2XUqGr$@PN>`3o`-VnmKalYHxG*@ti`I*WaTpT zH^*2v)7VQ_dkLCIO`fo%maM1BF=YkJ+^Dg{*C7Rh$QR-M&i6lBfle5~Qj^t3kF3q= zuT7CD>gEz|;0e*xEO?@5I}fd8K`1T@mi10lXr|UFi1X zce}|cDS5x%K0QV(oX#8F@Soz4{`k_F`9SWumV3eS(;<8A`mdo>pld(<>DW@^(`pUr z?-a!rFwTCu`GV~4A#hR8zW3^z%*BCpmD9n;Duj0IN6~h_=buLM0?~eNM=*<-JD!dg z$69Qz2NJCxkbXPQ)VO^9 zM;RJgrRTj~5JE;a4LYp2Su&EZF`m_R>F)HpKMBA(ux;nRhAra7LR)-u1g~=7Awb8dJPwcRUtCPB*j6iHwsnLvJ)WEIhl_%;!=dM_{zG~BY>@u`2 z`g@!2d2aL5pPBSExr5oN7@8P`7y|>Zh8vvdRIZEmnv?J#x94J{WG4OVxi>K}uDV1{ zE5SH?BIV%QA0Y;#gQ>e2LFL|e(;p0&4ay&XKWxH^aKk8bvr4)-u}t0%rye@mbvXrA z;LT-SEWrEr?CWnZjw}IYs69#$`OI8E$UBZd#qWawT$q~+U0881?XX`dcun{*t4QxT zt}HW{%oFWi?hTE1u)Lk3Qs~*H;1@tp@Ij?blfHFMSRmC)|E?achxm5n1hVBr1WS~7 zPgTn~J#1#gT5-^3#kp?YaVO_9k#seh`_&)kp>9+ho~>_~OWELKlEf#!#a#2?VA63N zm$L$iCXLW(vX|I9IRLK>;8?2t{@!wkU|h%HH>`?NoM0rj-ZrjwJOFq$imS)z-SqXn z_f6*3s05CypRiflS>2&t*8|F4kHfUVm;$&Cs6}~Y@L~G>jmdF{K60u4s>da?**y;; zeaCy!Vn4+_{_$_LQaGOa7V)h zy#fpf2jIBfu7`AEQMoLc()hL`Ek_%gO(J2ReT>QepOWJy)3)4p#v+BUi56_KXz z>m1p0^Hoyb(J1+ur38tVQe}%{6CjiD+Cx&3Q7h|W%T+eLkQwdSQRo8&gWRPxE&?g) zvV{&qK@Q1(CN68@(3xe+@@p@GMC2(mHxLvi=zXnO3%aV07*EXu68{b%q8_<^OAwzX zFK$WxmL-Sz2So9EG?If|lbbK#%KsuUbeId{m-4qAPlR_?1AD1FyFDfsBAj}@9Zq+( zf`!lXtsYew5E1SD5Pk0v^8|+*ruGa+(X{4l5rWqvwwK;HGqDbsu9nR#N%_F4yLka2Hl z_%s&Frg0CRB7;^u51F8^mK+C{wdl-syoXIbCUm6TZr^{T_AAPEQ~F39m7)hG(Q(dC zibq+Y-OX~w9?vn!_elE@;`rRWYhI9FGicL#v)D}j`F-6Bee$=&0C;LW#(O5-XTq)^ z9RAZB5RP;T(;L|n^_LTi3S*A@qqe$VWVX>>lNZws>bma}mE2W4UfxHOt;flSkg=)! z%)y?Ll3dF{3<)Lwp;`AlgYl`U^LgPAxQuPzFe%TE1@eB}|2p*6S_N=>>G$A()oZU)lp{gACvth$CHL0d zJ~^I!{7<5MX2=^|-KZ7?`M)cz`S35+HvJH${r7ke<@v;X_FF6~ua+?Iq0KieYOg91 zITUVx+@mkzl2dF{{_fJ=xiyMGEW#)zDZYWhj>Fa`h@a1Mbgdtc^o}-xGCBqHJvnih z9NpNl*;4-55Gr|}gV@7aMU7Fv9DFDSyb{q}p3LiPue1K$4HD-EKx3=a@Hua^;B(Xa zOtNpe6`2}v zWBNnhIkA3r7GKh-Jxc(${X1o|R#K1a=3IEm%K_E7lNR#Cl>L70>Ff47$4w%kPArpJ zH*IOtnHZ9~O*d>^z$f-_2iHg)+`yD_fXq0E7)q}o%sG3s5m_J29#fRBHCV9u;}OQ! z!*@r-l58|nbnKNx3r2+@4gOvZjH;XPj9GqLjMPe!;$XtlC9+_O99LY_v7{rG{rmmj z5{cH1Cv#S#h)U$p>ZA5w^%wd1zRCE$Uy?YH`A-ZMBi~br~U)Z`JMalO>b6joi8RfU^A>9C=*sd$$~t?{cNhV^KVUyli<#a9VpaG`F2gT z=;k##N+$}gP`z;&cv5QOXayYauV^%i_pwQaXIf`EvGNF$+iBhp>c z-HYy$?ruSllJ4&A?(XhIcP+Z}om|&_KkxqSXMcq?*PQ2hjAM-dI7qT;!yra=E+6*r z*ez>&3JzVxp6&m%HvvP7`!a}auxbstDqm?Q8soj}@gL)XAxH4kTyqH~(F`g1mM)@8 zgc%zh&2@g81zeY3r(%^-jfGq(KxA1wX}%bhT9Wpd%9X(?LKxae{{j!YZSQcs8UWAoUnFSlKSSpDzL2Lm1YjO@c3q_NoMzPD( z8qYiE7^Rrimvg~wf-c0v?JnV8%`!pFyOW}5FXFH{bH)cOF%Y6m1U?qo{-#znx~L&t z=9Mav)|e9VQRwyK8S28(Cco3U^<|k}e4g6~UteGI*)*oRBK8Z$T@z>7HqTqml+KyR zENK_2Ub6|Q^_N=R?!%3s+Mm14X}96LFRGOWViK&%{RDQ;2{6*wxQXn6AE{VSRFsrP z61h3?Dwv!~i&LIcjR=Od%b}7odk`*UaNJ%Foj(SOYPqaFWSK!)7K%hWmo49%Z34$BN+Io5xMp{xi(ANCnez7D~n2Gyca-8D3pV{lmGHFT}zI;m8n}0JCmE zbPUXlni$cCXDh{>KtlGTKtlWrBvULiuLEs`U-560Ry(a%7ItHcsaL{h!ZU>{-P z+MllRtv3+JGqG@MW9li}8%X_r($^x|?=Kkw!oYLcV=if?7WaPPen3T0S@ZiBqR;E> z62lj6Jx94)soZW9Z2}FbRG)I4%CsnAjmA=Q)D|3I8e=4~93{``yk9nXvRuD@;UK`E z^S9-4z1*WDi0oep<2=qE%hT@*8@?2R-gn3^1K0dKgu`PZ6oOe^p*u06Q91xRp=g3j-p&+WIxIFaOe2*ZJVEvSy&-(ch8j{{o3 z+D0yk`3xNzWBQ?33}t&^linpb7z{2PA_L+`_+XuRBhOk71t3CMgKP4I&rt!0eF|St z&e3#Ug!br%;xegKjdEt%``shCIh{;o?vsrqGL@)U5x0F%Y!aK4i+o0n%S6!WSyURD zE1@Z%p{8^a4ldGGZ1d!A!3<4gE?A8pC^C|KDj?4>6BsNxE426jdFSg!>UCv?e(HeI|CvYq}#Y@V4 z8W1vLOV4hc9q63Q&%AXk%%_Pifep3nd?9t4?Rng@`^0TLDL6gnjM+k4RlML@gFxsJ z>?wDBI7c$KnZs$1zDl?H}P ziB5f+6s+I#I3_uMN$v86U#R;Ayc!X;dfk=IYdp_ep9Cl~n4Jzs>h|76*#)3^@Fi_5?54TtUjD&Kb@FNBB<)Fmx&i+7o}JDi(-qS~ zgv}lBpS`D2oE8gu$db}Wt`>Gbohkkh##~Vb)#~JQ+#jtkA&y~*?o&S# z5&;xbof zm#EB!ZcaRIRWq(nN}#=P5PzW2YB>r7wLLwLMaSfH zl%bfdlW;t-Dt~%M@H@8hF`7MZ_B-1z`UjB#gv3C3d}89h%i`V+X-?4@wBGO? zGFVAMqUbyB?RgA!s+Wa*6N|;e<$U1-rn+mZX1&1#z1QP45WP!pd}rNKZyL0QTBvB| zCdp;}6Snv61=Fs8ZimKV(Qry|>G)`#BQ@7pnrN}n4=d{@dTl2lW_62>Kr~;dE|9^4 zGtVTT_c$_q#t-HUYaY~}+06^bjGhoa@d{E|@8nMc;}s8w|z|~Er`-;i!&;kXS`JA<5-KPeZxU!&?V}1JXc!^TF%#Zyk2)t z>+m8$a+tCdE1n{!s_ysC4pQ+@>0dB!-&ZF7vRuwD&R3*eWkl~>a5;Eue?-RsZV-$? z1T>`KM{vWYP`KgMMTtFhzX@JE0>nXrYc$w+`e?zfo;`cpAw7eHAQG}zS4FHcQ%g%4 z8K%vj!u#D5wu+l@Qi~ez*FYTLAMQT1zA1bp#c^gVWaoZ>Uk)ZrkB-LrLid}3v`7eg z9uAmZskhDEXM2S?ejx%UlYUA_n0hOtO%F=M+>JE0be?4lJe7PRRr*9ScJ3RZ{e~b_ zL7J6|AR36e1g0M$50ob+CKkZR<79{vhBs}leIpzzbo^F6D4NCrGo*m_v7t~SWLhR% zvSJ=CE84r#VgOg&?;|%%!Y&SmhxoGrgrpK^RuOBe(MF)tDNy5?lj0jroM+S{~y&$b9skeFub-LmR74DEh1clbtUBAAx zhewAclI@U!svO+mq$&kbd>SU@3~8`(fjdzARkcR=Qa1`xi=>D+AnF`2xkTVr6)xAg>Wl zv%@{n-Felp(BnPN&rXwP``Y6{{PX2m0pX4-D|D8c#iPtI30Dsg41$J(jeZtPP!W6L+) z`|4KVNbViq2S*RBnsq0>vJ1SVDSVd6H5`gfeS^|2HFeH(aZ-_FCkJR3=(ooc1zu0v z2#4Pue-O4WY~|=o9@igAFJ&*XidmfSqGDiRe5Lg~X}LbyBD+g@n>+Hm>zqwce49)T%mio^08-KiGFV+g$QLB*dBEGxS%)kCzJsp7y1A zQc(p0hNk~&0aS}t?NI%=1&O0@vn{GOD@AQDV3gj_p?dh@MgdC%bWF@lK99%0ePL`% zII){a5v-J(Pt^Ahp{|#I+c8pIju#@YoOyLv+E-P-`LpV+__|Q}M!&(j*Iz9R`z=Jy z<_x)-!)#(LzTe*Yik!;nv@&0pl7a8&^gy_%TYis0o{BP-L;p{2X_&pa)jkRz70=nYp1o z94F!(UA*c<=qWpt=~}ZwK@iT=A=Iq1czgAAL=kpvLk|nmWK5wP-CLw12RRUFW_Zp5 z867;O)QBMJn9#A$PQs2R6h)5sJXzp&NU}*MzKUvH*^mWyj_H~CjM?eg2em9SD#IW) z9R67yp@#K>Fj-#^}Sxg?|x@bMQi=#+y;*mu8hT7^r{vkti(dmOx zQ04hK$j<2H7CaW^_3Sx#Sup?k!(m`lTFzY4!$W)x%HBMYd-9z5{-J-I4UI+Su>L*HvYYC)QoXOGasX^# zu>|!~>^p;yaGClygp%F%X`I+L>B*&B*E;^D;-Sf`0gjTkjY8@(YrO#<_zx?U>a58P zryGb*%7B*4<#~O#dwtx*{8Ts&S=_4qT81Ufxs4tYBuAOzb@nUO=LL&ii)+JQUxfSq zv>gToRlCM=`$JEy!2lYHL{3i5uBLUX*BExvhV&@U$>*`uI9hE_!1Cr|!Ve7pGYq!V zeo?LGxfsj5=RQp*O}n>I(x{q?g+7ZbUPKW-J0r<|@mlX@@#30PwgI>=jlGeG*@8LUCbnNUl}l1W61D?`(`lr z#FpPjk~jflqe~I5L~S7BrS)mF2+FGdt`{dEVB+C%h`x5E^h7K#Wdkecs~8O?qUYoH zU1mLFpNqo7vE#-Y%dt9D7t59>mVCptaI@V}&F)7;`sTfX<94(3K00GZ1;&-3-DIcZ z#hRZni0kIR5XX2PXqK{VHhcR**l=ky*PXcDhHUz{VKV|D(B;4_*j;S~i(aO2I)A+J zmfMX#^v!G8{`g*xXGpj#vfmo#ks?w>sb;fBBNa8&0E}VvCcpi=yVxQJQHkbjj;-h| z8XI6!!WwP{n`8gCr#5V^!3Ym9CZBQGR~s~kS*Jd+OW3R1etg4|dYmCdr+yM5R~s~x z(SpqR2hO`5C&1zzaFaimT*xN);kr}lgv{C zT-=YBOLjXR@KseKbmx4OR+abH1RhJ8N?G7pt|rS50_&ZYo7KZQaA`Qt^Zb&_h0!zjC+3wefrK2!qo13_ zUhNwnnF!s-`A3$%Ace6V^kWIPQS^R#dF~@b<}u&PE^9mgP&4N+RjQ)p30wb^0*6ch zEON_AfUOKY>dZTF5EGJXeH@<+L}||cV7j2W*?q5EP=@D8F*;E-40}J-t>dn4>A1PF zV0H8<49|u}5v!)v7uX5T#<%CB>>I2vtc{88S;a@Bd|G&vko7CF6v=aZc}v3o<-K=<1BleZhCMXcY(1 zpuVmD6y8@G1lZVc{Me@S`oXQOn{q`)Ts^8uat$J?tq?XrgF zMO_j6iE@5F7Ul_xc!JyCs9J<9su~U>Gr&%jmXu4r0>LiDyGg+ZvvgLdE+VH%3J+-&}j4@mcK;mdH z`Y+nq#gTB!(oj{g{1U57&wGkccouN9op`>(f^txVTFJs}YGfKjHYb}t1$f`Tn;m`p z$4@;~IWi6k-t1#z!RpZiUmqliTKYx_-qmZHx$a*6SF7l@ml-!P5`yK$x#;l96es{n+G2GL$gDkNouzYK}Jj{!`1bo9a zaoX%JnTQn)xcZcjS%-xGx~bUd`&ye(Lf!XzldOa+P62PezOzW%!F0vu-mbR!T&?CB z!jkil)a@?ko1X&{A_SqfIoa7;gGDdovBPQHb*^QA>B*ql`+aHKzVHV>2Fz~WCk(S} z5n=9P_$GTS90;RmmW=qTsI z(!i=$I6)6^1NHH8Wgk2_ENid??0L3}c)fdNAp~}p6@4_?6-x>-<>;18ce5pRiyTh` z9Mx8coVO}|mbO{0cm9$cs^1Ps8ZYarO(IWqMSHnCM;zsD z%h&qr%x@dO9DX*L0sCy$xx6@p(84Kla)i&tP40_WN$maj^|saWx2U|{DDS|Z``{^s1Ab+=cbw=~CAoqOQH0W(P5+5_w!W(jo_mv6cq_EZ5P&9?blzT2H z;6@>#k`7sJ949#0pdL_jc5$|r?gX$U09Th@!KIrMRR+lmOhSn$-JG*p(W|wf&*Is| z(PKYdsrNw~v5#4Hj+P+EecpFM{A(`zo+UysQ|Gn`zv5lrn_8T-gS0Pk9r_YQ8=05H zAePIH2O({hY#ixVbxPqY;OpZksh3=5t}>4#$6NR?gs9uiGRoDL$F9MdB1X&KazcN0 zXvL`qf8FgOj#avdS zY^8*C+1F-kQ-q-#pH?-X<9p@@BS?khKQJ?TN55|7`w@CC0dH`7 z8&ANwRrC2Ga6fezJT5CR$*8uN!gTW7Iwih=w8>meuLUf%5#C!p*n$sD>mi(*T9o9~0MktgBx7^WvYhK^Omgg@JTxG&25$+qGo%Zb{?TB25WzvUO6O8E5H z9h4^X?8(T(pXRaGVQcy4~57pHF4#fC*Ah)yGAnK2z+Kl!a-p({uMhf>_y)IDN0$ggi5<$3o z>hjJ!`Eij2)8t;#gJfa|UaENLtg6)pa`!XO$-EwqY1)uk3z536#>>aOjIMQC)zF)1 z+4@ia)dFbNnJ_{ZO%5bWT zq@V8sVgF3koYgF5&orLPZv`|!X)993<-smGo~f4nAqHz*;og2t2pB?IcY1g*w$j|IK(1Vp_9+1BG{ZG~{kIllyXnWXX zF-8eClgE|_vS8xK%qWSk^c(I2{XYI{8Gn;ysVUvto8JB`joO4Q*a z)Iav;f6C0f@7YJQ_X4qRp8R-Wd%~Is{liYFZMhP+iPA9HsX2gwmP#HIsVl$IwEXh< zW4x_MSXbgBfQ_dGHIf|FFE?7Qc-6IB&Xka!qI=#w#f`Pze=XkJUh{zOMLb_Vw0kh& zP}#A^Q5@+Xg~dci&sGsQYi@o-%G5nI002lyzy#|;^CNsGAvRi$ktY?WF7tv30Nueig?t!W(gSZKd@PmxQh!!=@hpXz zTD7&Ce8}UFJ`2y731f#~kO;jN3?B=8J=6Ag6QU7S8Gp=~5!G<8$%Kf0wxy5%RPmG9 z5FB)Y&%J9-W~^|W@aHp*6K;B3JEv6@(*K{(xm`r^)N~5cHNXq+`_>rRr*}43C{B`X zpgGVu^D~wX6e($0uR?3Os@f<%icL^};+YU(6m@N}h|hWyPoQotRwHy_Gy;Fjyw?5( z-hcaG&9d+59yEyG@K*vMOPUD(5nxmkp5>f~!Jdn4m*yT5k!FV4efo2S;Bw{C;@abk zajT*rKEN$Co2QbdkHX7gZ5|{I;p{!%9F${ZExBrj)kz5JWSz!q^gr_F2oZgKa_em& zb*nB9lhkxgyU%W`wt?W>+o$kVD;tq6uw6K}x_KqSG+D8hZgz^gP`(<5^$ALR7!QO7 zmszQ3uO25`@9#lRq)2M5oeLS2dsanFP=ke+SZ~&(@MKd|MZxbKoQM@!9gCle{HM3( z2FV;bU%oII4;*;F3(w?VTwcA0DS2;R3qeEB!)uR{$WjVkP&PyBfZ?lUmuLq>gq27D zv};p3t)`X=V;dX4g~PTUj5n$@zrPI%MkL%->w+0Lj`&bS=_H6$+MvSaN6oGX$_C7w zA5$AdX$5iQJl0CU!h~u&fJTvjSNXgC(roF-5tKX%+Aw6_=ugOHv!e_aV@|L6L<`#_ zG_3pPw>36fEwW zx6@73s%fd}6T}(vxQ^qxY`@fC1~>U1K4iO^R?#Kps8W%Q4yZ~DPjf^JQsS}kT)_D_ zBeF~@O<%nscxBG(dPJn9y$nj|OS5lI1CoaQG;x-2Ls`zO$#{AP^Gnm~JtR=gFKpjX zh$73e=*@y7`(7^@)#TrzK2YVBaKz@D?z6Q6RgRD-Jdb zd~)1yb?({xw-f8ZJTwvMD-?vK?kKWTe6M`2usI|!nV>pjuG=z2DO;!pjLS|txA_!6 zBY1n~oNOY>KEtUW4RDc?&1!4Lzhen61Xu(7;zUTaQIbg~D&d%R5ss?4pI*{}Ip@$N zUMv?+s!`GkY%IleO`_y~e9YD`N73v((G-88AH7H4$mCwOklEh%#Bov54RG5y39$?| zPfJjG7~d_7u7J*?$#j#B1!hUD;oaJCL|FFq1YlwD-Y?2;Xf$$Pog?m+yu%Mp_q4H@ zqf0Vcg3NNejcGElo)+Q!G3HE=3*(3ggfpBEIFg((h8&u$hW{nU$daLYVnE}x{-d&I zyv2zr(U>K&At`4w5u4=jiJ03QDu;yV5^eO6+0OOJwa3Hty3~I4@_@v~r)cl-0N0;B z7KgI0(I3fA=xainiincfKcw?hLJ=FAvp-|4r|W%$+-F;#>~@~3OeQh`fSq~8!p`d) z-vN)`EOxOY`!L>85^p*e{V`l#+$hx&zMTtPnf?vC-f5VQUFxp}mgTll{xkV(U5CP| z9HV6sv(nD@Eum@~nd^7)XS2l)#oNg7zYUcFJ~+gh$Z%OkqZtyolj{B3o^zt=qRVAc z%6O)8Z58vkC9I99L_cQ|!dp(}Jogvi2ZcDn%M*&bWR&)33)>ggDtUN|g8H2~{EZ#J z@x9ja!fS1QG`-DN-?x62GRcd(d1vBiny?r@+V3LUwn;UJ56tiiAhPQMG_~aP@B7jU zVXEu$;|v2bAvx?Hd3A-&p(#vbVl8a3*yNh@?b$W@mM#Qwu#9a)h75m_Oryt3A0)P# zDF0A0oOjjaa6F6e`cmZZ{-LnBP_L&^i58bx1v#&{F=A(Fsp6<3b|yWy^|gD4jfWuk zyLB&;N>-pgdtc<*5-!+$#%Z9Ev`D#($GQ!M#akZD`cnSoDYitTb(4itk*p~B2E8d$ z1_{&=uT){{9aW1C=If#&iwyeb(E8HZ+wJ*)+|D~M%1}Y%9dsv9Y0`QRAZFAd&QSYN zFk7rE^{B`2I9F6M18f8&;zON><0XY04B!6}A|2!)>OPW=KS$1NjE-PqB)e78x0?gK zAvc4HQFQPS2k*JVH9+c${+A{ey$jR*M;1~B1c1;SV(m?B!{>CXES!~d2Cg`S$>-6! z7L{XQz32MAbJ@{;RcxwXPX?82wkwTBQex@!f;KvBz9lLgX`h>`W;raktJcEc5*ZWOT* zvDdN9hX320EuZj~`Pii%t3$q&z+N$GlhVeNmGSQo38D}d^w1WKPwGv%g$Bq$BwG@l zX5L7kKB%J%zot8CCMa?azHu~t^E)ZTdOZ}^=!$Nx(^o*~$B!Rtb!}rQjmF`gpR;pf zOpP0#`X@_gqo^LaC6JS)6H7Dp>a(O_`Nbk7zix(cfK*y7!#$e-^NHgjW{D2WSAsFH z=OJWcv>w@3(SDu6Onty*nBmGAs$U?Jqu+Nd(eJ@`@wON5oCoPYm`8v3{XJ zx}dvchHTLkP(nF#fZtXit?A+o%NKkWO*h-7@d>n0pb;p6EeDWUnu+c2#9pDDX>pn@-+LKa3{$<~ zl4?n0&STGz9yG27)4owWMI)%;gc})8-B#ki-D|%$47RQc$XgwRK{LVA0r=T;<|LP) zVf~FDyhf0b97?EQyM)(@W*=HAkoy_w;ZixC%6+i}j} zy;bL|HZHdEgKso)*O#UYW=qZ>#Kd)q5~5pGLTtr57HN@g9+ga5;{^aexwv4q7t*TU zwk|Pf=Bm}n%24_P^i3AvS5#C`6f)WGGA9MLuaaV>6~z)$`x0-HfxoO~ZX=UVbV0!k z<{00+6JE1Iq6Ko}ZuT)PLV|5z8ZKQsT0d+>j z1W{|of%tpSPvJKa~rx6kgFVnBR2{D_h;!B&r3EfW0* zlVNm_@yYXyOTcNdG;M@k<{;l0->phsz?t%7^bab8_R1m9hH%uB%Sp{!TWRi`=t&95 z%V@hbN&Fs?09!tZ{hNISqp=s`o6%iYOJ`A79?^MNr1ud%TqtGPm{I=ZA9vz1AF zosRuGBfmz7&VRLl59|wR3hz0{OM(o(y}>x{P?*X7dmR=5>pNWZJ-X4Rt8-fL>LXTk zE`|j5Hoa0a-=(4tBGZB&Q7W}}f5O-0qR>}H{mLGoS)ozgy%?4~1_!va(X znTU7kF-a;nt{Xr8?Hx43SH?v8o)KY=4-Zw=mJQzS=>FUJi%6j+*q+^fh$D`>hAjfq z0+$1~%nuJB(KjRG{z|H~SQsvJf}d27e?|*xF0n9d%Dwz106?*|;Jt0Q6r+c$&$qVv zR-N(FTad%$eIq`6YZCIE|G!aaF&YC7A9l^~WyA_5tJ&g8Huqg}57f?wNyZAN`EGQ9 zL*w*bCRfUB$4-C)_i$IX>XmTsrj+^K_DyN{#`_mFW~+&^6J#VjCP}iCGYpNUH`{-r zI5q-KD(zF~+`h%uRCW8#&uUkBCzCoQO$Wq@d)Du!elvXO8sp(Pk01{26hTSj(8qnw zSrD}G$r7$_?bA4w^%LMJ5V8pBnNFNl2y4oLL*3hyQ&Hvt&p;7UM9EUHNf?2ikfjk}m0DIAV%fGtBQ-g0!(muhddFN*_*rKEP4~lBi zuVu5gUB3wtAQpLJC#LN6eX>s0oO*UE*8P*hC!C~5OkrEo;R%^7~d3$y+2&YsTc%ls$+W zcXpVM7n5#fUM~+a4OFDTJwtJ=cLQ!wp0~Ayg_BY`whD>K>ljO60Dv5k!j}|4nb%m> zneoutDse<#ghES5Hxc4tGK;nioMTY;dY(#)nToB|eK#7xW?kRBbTd(<@A_g+5jXRa zeSRvLswnK>7x^qnzunpOagt=`H>R=A6fqqpwTxnPbR3;l?OQWkB_$<*d7EOtdP|}Z z6Q2-;f2vwfHrN_`ij-JO;<~|)FZgfMPX;D{S(Mq|H8I z5Jf@*;tu!4;2$sPG;yp<_xsZ-nHAg{%db(s7PIZQEETG~<+Ibf#c7Is%T|Xgx{V!u z6CxpEq}$iO?A*G0^Z@KiBqfjj^)U0{ET0t7U(v^>u_IUsEK=u5r5|A$!H6*=jcY+w zvf&gA2a7}x$vH^$nvr;pib3Y64qbm8S;KBbr@7Od#Vzplm3U`%Ls%lFoce z1J{+dnrZ4Ry|_?qK+5@_LkJ^`WqjR`b%FUydX)=!V>rODC>HjS1Wxq&0)6 zpf3RFHetR*GwLSuMyoVks6F;Q*rfqh6H1GIs?+F;%of}@o&)u2Akh9pT1e9E%F0v>noscMUzS@k6#vha7^)yzm#m|YIx%q z2RVxaWF)l~C}QqC_YNLPg&M`0d(MMjvu67}a;Y;G`eR9hLMKF}H9mdXlZ!Gzrt6e8 zbwwzpOpcuo%%#z98N{DYhtBMFUWfzGu>R=$p{vFW?ve2I9cK?|3M(Iv)E63D-#nNJCgi#Q|x6_ zrWRE)p$G!8J3Tk=R~gZ1wZ1i!|6$nB1g@|0VrV(Zm)FbeGJc0ZgGF!C^@nu#x>)~z zn8VH*VLE+Xw(OI4ENgZMd}c`@bpCT^L>(6SRa;=MQIT(pG$orKw^01u#O()**~oqy zpE51mEecBh#5h#P+`!)+6pWbryKo1hPyGVUa;_y^^=*M)9F&%rTD>PY*c>Q$Fk8%~ z{v?kHUU`7_{>}KVGL)z)oV-id*vz&2jgul8{V=t=+Xg(fa+$vx48h%>lQz@Id>g>V zlhW)pr!C%)#lUHd2V**MHmqspc{$H7iyw!7DS0(pvjZ2#I^P+^%tNIR!CTF&C6YecY<=Efst~u{#GS?bu##?h z8y)H0G1aAlyMpP1N#-yOX)-K8X*3%tG*D8aq1SqCKa^EfRGcsO>^eU`uMDny50v~d z{%tq&WqN;CRa)GAY);PcXeu(07u~%%MxLM=Cg`Kz5?X;|Ryti%HzoX^8`8(YGts2~ z*F1n!!S|fYnAsh_kJ0P%5laB>!{jz#`&h)U1Uf|X#F~+3I7YdFN)WYw?nRP{C0v9} zGf}4>JX1-*Oo;|0#$pgcpgav_jL+p7AZXFEO2!ogkJ0?kR6uFHP4AiFrBoON0Br}z=S!T4L?US< zJ@1_BZ5b2p@59ruW&}oC;GK)Z$vqtVTm3XEHCp@?ZnBdz2sNsL3VySUL@#mrTO4c7 zXwTWfrb_m998L=UAyq^OJ6Ufw54Kn~9YSdHg7D7nXf_^KK8=nfF{6Ohb@_DzYawS= z;F5dkl;=5>Rj(@B8Yj^ko)ouqc>#6GCGqprtl}}@UxQ{j|1!?Pc?!H&iusg^%yfbp zv^mYNi9O|xJ5{42#gvAF3*YBad;&@6>FlVYoZIm9H+x|3<)MaBMkpOu|kDO1)$bDT&fhFQY*f z(AnpY#v}AgwHIXW60HhSQph0It-$12Q~*(0IZL5%pW~Ta#k5%;BN)38@uIzW?C6kj z&%YRN8P+(ovcZd)vRanP=1KGD-sMP<7K2r@w&GF!`joCrKrd=Yl=6t{U-Q zOv|iLZbJj-9ZWFhSco-HO>8Qedlk;{KA#b3O(TYk0-xe0^RRXcboI0j&F9ffle+^~U@yd?YE%mCCEg)9KN=Koi1#9murq&Yq?6aksa%!y=b9RFr4T)jZ(>Hvcf zu*^j~!R5(`qt~Y$tDCcLoMzP?O#Gn}31u>P@L2M+6lX99I~;_h`EYvUw^8D8-0Zj0!!@a=|3GPE;J zjxq;C5R6nBD-SGoKGFXVr~2ys_lhtxe0c9_c8R5^ANr4^PZuL>rXZEqEeX>++%jC5 z=P67JvSp%7N43R}k#Y-X0c-quoCzyMV~HHBDPZu(Z9#@&c#fPUY4_RT^kEAQuI2v+ zH>$fI*$ z{e`*fvw$C|%RIx?r-yB;=mRDW+oNs^H~yXb`b_=-OsNZh`-TY{_k&_GV0{0#$MsWO z1oL8zDLAiBIfcWXrc|XEYczq?X>r)J?eR{X#Z9%=tOv#Gaj8ii<=Eh%sjSOk^gEo| z;wh6t?%Wsi!!ppa`>boh5Sk_b5@)>*Jb>z&3ZfR>-Ww#d8zn$K5a*>>Vu3^?csX zJSpC1y~jp}L+b%g563b|_)<5kPKBbagWJjXNc)$+OgnQk9QIr;t9+VYjoo{^t30zJYE}6LgdgNW>UoU69>=R2{PE|UvG~IhFqLWMg z3PO}=FfP?I!Vfxl=wU?ystY&iEYJER{b&9;1Lfm0NuG_{8` z@3*&H4*{J%DzZ!lO&g0VksbWuC!b{q40*GC0@tI8!Z_Yy+I< z75KwdV~3|gE&M#GBUK}gy~(6KEIEQyx?Qzt@S;P4Xg^>%7$PC*v{N$&AI!;r9C%T^ zQ8r~v%M;q=#z>hqtBhAj<;PQ6L-y)h7Q)@_?De{VHSh^Q!X@~&HO^8pX_^7VV2_iW z)N9=nc>ngo&})aM5d3w$V< zfh)sO0-7T7&N$*5vEP~CtGt)h{&s6;`dWz_82OP4aFgKxw`9N-+D|I@0ear(o}&Bg z-8IMMGseHj1wXx6mXSGJ$xRZ@EBGuH_Dm50kn-?AJ=WMOLft?qgpL%c9#`JXow|Gc>Da zZCEqNji!ZI)PYg7TaTT&v;YwB=Zws1>YDcw&r!eKJe74CMk2<4hNu^ON%1$}_sFS? z)(FiONmuS>7zoZpC#lp8cG-9y*z;|CU+RCCxPtS5h9nJqE0vryYfv0|X z_4~a8Z;`yyU5eyo0R!~}_&Hqv+Wqns14nAtL6(TgA=Z2Uxcz3gXug5_h`I1QV1+%t z0mIe?PPNyM=@h;A^P@44UZSF~>-d`%D4B%B9O;mFd8fAkpD=q@$}rO@Lf)fMx#>Z# zR9If%Q%hwH>7mhR3M?r7CYHPENE^Pia?xW~^Lts}def>W8ZuVg4hri=s-1Y!N_QWN z>6G)~#}#>adj2e1mV6|C$f&qzqw|iIFJ)EM1^PRHLy};Ym5yD{(I-7dg=s zzA=t*94v4#Cct>skNnD6ZFp3v^`Ic*E5xNEjgsZGyy5zGFQ`Mv#U1OXDrNB%{=L)N zcudKI$SU+d5knHOm!w?*@K`tEDSSX61%Qn<9j-LNe^~T7gxsgPjDoZ!2fyH7v;{wi z@K~Sk=Lz7q^E{x`175R?(X}D5C}eELdW*d4R}T(H444e}3Tg>kGS^?AkfWaclMKu@~}y*?c9_B?8}ZuL*z47wGf^u3u!EW{9zL0L6D} zqeMm$bx)wRkkuX+NCG}c1hWph)cEA7#E2@BqRl)=kVKjFCdgz;JGeROeOYUR9M({1 zq!i{;1e#@3S672Ty1Q^CKcHna_DRk14JJPTUFT31RA=?8P(GzJ<4H;uW{&h@{HXzo z&BBZbSz_kVM%KAnwoz3fAmZN zn=eHandkG}7kEPVT?;33AazO{&TaRFY0FHq=qb z&oUnr5F(r45`ugN4iLXLrJt_6WPBkVadCJY`$i8YA$QO2xd2zp^*pGj^c%=K`jRY}$uP*R)_UXq;1?{Ielh#V$v1sr8@`DBA zoSQU~oODXzwDy3Ku_297nqsYiG7|+RDzAGU_*%zkQyK zk4uQth>J@|jN_RCBiTaA;V}VW6jJN7%!5SvgXxT#MKaC{(()GPW>f@LJ`fwuqUTjQ z+*VtJy^&%r&Svf!NT73F1bfP_qm46y?CjEoHM z-Cu$?^Ei~#pA`5ux;fS$^JcO5nLaOUaQKfKaNr&7@6vh$dY9R;YC;{-RBhLleQ~6B_GO1rxOm_#=R`#t=URSy1H}U+Oyx`5suC}q4rk{TGH5JWc z>)ZR!^e}4HMhImP&?MkrwcBY?zhe$XMf=_Rtvr&|vxb?(v@^Gqmd8|pDm{P7bT7rM z-*g#TQod}Qn0^hwodZ)H-&5UqpAJ>D|Km!JG&xoQdXQz%$qF3r5ZH%uFIc%3Je!W? zzg()i;nFqqegc6tHcNoa&RyJ;;&GLFg+GSitEi7;HVxYu4=1>cdVX8zx{h<2!(#xQ z9XR!GmHsAU^^rH5SCH|;nl6~@*9LuNI8JMCmMtslSIN9@d~Vifp5T2a8BxY`R0?Es z-LZY2Z%C}Bb1-k#9M{Tq9ei(3joY7C*62mO6I*$&ncWVeEo&>kv_E2(=g$$|jr-p^ z1K{h84cg~Z!Cwe@7#SPFuF%jZ9HG=ofGHj9$#lp{>*LuuKu3uy70GiStJwO~T&dMF zlNA*B8Njyo1pse1ID22je2Y}QKPK`0_LO4Y^vG@zFF3IO7~s_bEa?;AHHR05+qmdZ zK#C!-{YUuuvaRCXov2Wcf&$<1`!ww;7o^F6$E~_dkBz&}7Nf6QnzWeyy#Uv7(fMt7 zXpE2e9ZmB(4?BNe8z%Ayx`|daUE2r<3PAfZzyjvNoZWS%@**+KH?ZX2(q6~F4m!fv z9S{!f#`$~bbr;W`kz=auu~<3;Bo%x58ZUM?$WAjl(R+5pzpnh9spNTt;%TtJ5AYjw z(e(^Z*eWCMWKm`DeD*2CF?+)VVclDOiUgR}KcIfIjh0l$S`FN*E>kI-qx>_9f?KuE z`mXT?D2gfs(?7`LCk=w;l(z^K z;@`h)WY>W<7D4!J7Y3Q$WP3N`IhqjXMYCCcDC(oDbqXL%dP;0%ySDMjv6J)ojnL;a_ogz*0&sIPm=|s-@!72If&&FnV*~dDPOCjngxA9 zClZ5M%@-i>*S{bgkm~Et}4{4S&z6owSm9pQd-Z4j;b1Sy_!MH`+K;aPitf@vF zTtHn;A^XO7he_Mx-S=bq7q9NY0z8%>57ZHs8CcO3T7m5xsZfkwxV$)SE*I>f^YsCV zEfAUYo}!h1uv-aY=?=blbRC;=9Bl(?&M5xt`H~7ZlSC9UqPyKCM^evjtSF(&uUowl zkpjC`?}-~8s~K4gt6X-}H6KqPsSeszCP>KX4X1Ij3jY!v-ZuwN06G(Z&%a~o(DLl~ ziKJCTJ$CqAceS5|=&;bTcOe4opK zzBvQX2yUVQa01^L`dy&wH2|~=flOeXO~C2oso|I^N-&gym1PZ-sNbF{pl!#qe^`MH zj0yp8L||$ z)qCaH4BuJ8CCB=w^!k;mZ#|*Jj%^{n4|`itoAE;D<6WtsV=n+%nqNF4=Cnvy;MhC@ z!CV!tb}dloBN5)Lu%6nh2V(LaB}=tK`H6a9_E8R-`PcsYI10ShL(KKxz}tl{9$?$N`)GDfHMk$Jjh!XMJW2hv~b{FYK3S{sWQoYz)vjP+Z0Ai9PGPub6lXZZ~PlQ6^c zoWB3nSY7+YYV+M464i;H(O!o*Yt!W>5VxO*KO?hVX}T(q(fl*I;62v5S8_NthyL7{ zM~|=b^htvk^AR*`sDc^kwf6&soJ3#`p;VHT-(BEf-ZUS6r8$qGOhoEDeF_Br`5l_K z;&2quBn{jW`&HxP4hvVCe=lQOv%cE7-NzK^u zhVwyv_k|rGVR+o`@f@olcthL-_fOl@dk`px4zY@43S>0`AgY6)xE@>Yd=ZKe*~qdY~v$s})og3Mv;v6?Jn z<|{A;_mT5#{}uPXY1w?jv}7^NA_9Y^(J~b>_wB&zf2pB}WIm{zGd#2@{-_=Nf z?JV4Jt<}Lv@%CtLjrKR~-Z$bR@nEs>R_DK{u_7*c`AvN(Z3u*>`@U{}5WUN^%osV( z#QS>?ufB;eFji9)r6bf*y-HYCHD`GLdS7!Om@6SsG7g!F4i(sCm%KZIC+pBIDW9sBRox?(rxwCiR3DZy+KOP0?s8e9NXQMTRR1XDen zM8!;YpM%==wPvzS7duKP(Nr~(NMAIQ9Eke3t|?&aYdEPtyR>5*C+?abi(Ww$fi%Ai{Jb)Z1*j+?B@Fz3P89q)NH|*hYl@dIe&qo6v)rK z+G2Y<>+N%Gaj+g3iG@*CFM69R4 zX}IQh)4I7$kH>7VTrD{y`haP(P`v{L2nB4fOIrj=I@g61d0^n_Af9%|XCHX-gQA$W zO|X9;iQ6hKly9fnRoL#~8Jg+G=K*`myE!~nwE<^JTPW~*25foRC@#n9v}DX5KmIKd z_iO~VT=s{$RXf+!?NszC$XIwCx~oil^j%+J@ZLtND!LB`{o?~OyFW13Z@A|AG+#d) zwX+7UTuQzI@atxWWsqJ%wVJOl@m}C9+^l`0D;`|+K5ktyXg2L3`1aRm?Cyly2muv2 zZNapDh1}<{>R-s$lJkCNV(;*eTi?z{D`!X6Hjc$9k?-@y52XL{b%OYS;@VJ zUys#6cc52$tEPRV?!V+t^}Gud(qRo(Tux{(fS3MwzvKvjm&E3T!Tq9ONuHiNOkudw zym8lF{r+L#^YUaITAA;b&^?<^{KbdL$cdOv;_GB+X6tc+Zco5^*2IaI@g*9!zMttj z#zd0MO4EpG4jB-zTq z-wb2vG(3Yp-5At)&E!fOHcG9twqKsBDhkq*`9Hbu-^^$lwhKEfXNd=GYNC*V*Y^uD zVdVjs33-UX<+XYVZw25M)M$=b$fp)5&@6_%9@55E=6|fS+rKm)@@qTQdwc8TIW}A7 zz2>vFtX{&$VSPRroCC3|3JIoQ6M1r4yqt1Rm^trU@!-$Z#B|2E^=a;nfDwNps4#hU zSP^=(UCh<4Y36dIZBySsb+cLAz7~DhI2Z{F3lh5MY^Ea(lf^h{+qqbK<^Y{d`s#-| z@9v5sVt`O22*>Sf%xUrfYtGg&%25<~Nz4FB5Qg=_pBJNw`b}=V)wr>&JT?8y;~8bT zm#q&ScO`S{ylgult3E`gimq4+3#7bZ_XHreVlIzG-l zp>{lHHq1HU15jv@C>8NXm#dM0^9HmxY5T-yP)jswD&+(ui9rb}0`xB>v*gNFV`TiT zAu|Fs1%Z~YN8e5HyYzw)3WUiRna3dh+Sb~jrtJ8HII~6zX-`5fHD~?1(??YYOHQL- z0=6l3N;$^4UaUFa#&V~VI1RAGME4KfU}&iM_MWDR^I!rAfE z5X*B;895qy3X=f|8OA)l(XTU>&6ve_B8#azX}93+CkTv`&2ZL-ZRYvZ@KuQ+tXDi8 zN0z|dh~MWP#5Ria834m(a{C!PKV9dojiy4w!Jl1s-`dGMpFuODt?X#~X7%jWD-72L z7a#YbnF&nVlU25sP4Bjt84~_lzkh}uU5rYG1f1ysiQ=%ZgFD4H#1nP%R?CHFX?`Sq z21uLMz*eR zqOFlU?5=vlBIHMp7a=9R*52>jKLvk@Ai9gkHn~}GuP|%}Klt)*N&`P)TpZ)9^n2A2 zJzYkwaJJ_sSeNrXRd0X^vUT6MYSIy)2^#c>ZO0j6M`%5Pc~dZtgC{P$j~k%?F)h*e ziQMmgzxU9AE%m5s&Ro;rM;>da!5qmC1=1aab?CGipQcEzp73D_Xtd`ii1?Eu8TN@gM010=Yk+ixZJk z7wE*C3};W1|qZbGOhBq zFG?~%X<2*z>}am7U6ASs034fbKo7kU?I{;y`xWiH_WRZOR|lNsniV|4iYF+fbfk&v zkzDq(a{OfIXlQfl8bt_e+gKonMTze5tK}y*7oG7m5bDJ_L+pTOi3TexGwHmktoVvW zYWBC7_^dyF%>C~>Iq#ieKh@36Q`b!LwBa=_xEX8}20(E@o3YbDQf;%#G!d6}$tz2( zDOHwPY%v<6-3Rn9M^$9r^hGlf@zq@fH@L8~Z_Cq`XaU(hw~TjYgJEp6Ia+l31L+M? z+by*MOB-_uOoph9rUU1t*xB#QaX%)U|G4nid7s?yc@)o}*kd$vayD|RR zb!K@1Qpk8nF|rIsWM4+2ThxcpH?%3sDFhh2^f=MG-M{VOjgcII?} z&YjhZP_Ie0VzxWIkG}jxA{20!+0JhS34c2H4Uo+NBNq2~?Hhq*0Pc1HU)tYvtPNoS z>hc0|KkO}nOJB#Pt6g%xN381J3s0<3EQ1XVLC=ncq0!V;N! z6YL(Z3pb=pnt2wbtPDxKH=Tj&S;Y01YJuZ41=^#Y;rYksfrhAww|6`BhO6Mih`vm( z%^JntIVv5jOneS^DSwhrFIK__Q5W>fDhtQk#TGLVW~!R@g0n)A|e zJ1dC9YY!_3;2Js{Et#HZn5LQCrA_qps6=Drh zW&{B{H-MeFDQc<)=oU%ISm zv!Ea(`8w=2iQWr;-W?FniHcVBdeI<-{@lM&M}ne zO_!%a8yB2z$yb}5cU!V}b})4MP4$*XFE^NAYg%$`BJ{M@CN^)jO=VHdV41sU407!n ziwvR+`1hIgmmMnAyE)}y3!^qpqu9Sj<_I5~u@hc_SM~xmp}}2ArkU`k6Y@KRvXmS{ zGQs_l3JF8}(Cgzxz`|j(3B?&mVJ*|CD+V}AfWZ<4o$RMK;@rU-fmw~#dic(qAxPo+ zV5Y>`b&SsnzOI0bPVx(V09YSHLgH=t<^_Pa*=MKmf3Cha2uPBOxLnyD*b+{y1i1a& z)|0saMhUoszD}J9xCUQc%_)6N!Hs(V-(JAmWyj}#^3l;H*gpoMtKh$9{_W@IjJq>B z@|z`3=w}5%(mHKX-ya9pR1*L$svT~ja{7E45w|b8-@1gHlO=%pWrx8&X2#&`pXPuE9ma+R!~M>P1kQy&DKjB$}i?C zW-@WFd6ks4eK57z;-s8`&j{Uj>-87l^xmvADSGMB3&zg;?GVQxx|xsy3QQ&HTV=CS zVlp#rmPQyC)hX5lu&4rPb+lMJbf{CPUshdd=mPh;&*>jIfeF$=jb+$X{r*xtAhp*t z^g!owJ6?3ecN!8*g}xnuArL5XbW3uPkfpwprgmrLyGGUjy&st86dH2lV-q zd}7Czk zts>YO8)WQV^cKFyo~Tsu;bRmbm;BO{P^zTOVS+Cg#ezH6`J(893g?AsnZULeL>$)2M+I6Q4TKLW7Cn*jtU)R!EVAw}56rMqi2 z+ph`iIHM`b(`#}!O;ta*7^sqW){x~;(hwpdP*SFY(Vj^9F?Ql{0cataOGh;>qs8z& z|4@8Mv4krHRz{QP2Qy$=nR`Op#Go|lDyD3VQ6_SVbTW* zR@N`@Wg2J8w}Mi-VToA0KqQ_Q;wmbdq_X*Ho7!w;V|5lCHv0|c7VK7x&A`)}Z2hnf z1Cy8-1{&|0l0T9k;LY}FFKV5$+9TcvitCf`Jp$DZf!q2zRU{G6&9Veo{ofw<=~yE? z?*eTrZnz^%Y1&R(E&#oyi(RbMZ0Q};&{qg3se;f2-_yuP!B(Uqy-tf6pMz4i+fZOr zsed+8xa^5~ZGcA3a^+~;gnIZEgfU;g3Gpci? z?Yj5S)POMO!NI(HBZv$RbkK6>0zc1}f&iFV=p}KtL-SGS(1aikX|((P+{uO%c_TdK zu)Cf$+!sr?sG|8^=UZ``!0t{$na;#YKJPJ57y4X{%o!@AOxuSsJB?kMro_HMMC}2D zS5J|;j%yy7K5L#g>AcUw)+>vAu~<^1KCl4jT#2S*|2m@KH_uBz@web{XouvFjEca) z4)b1zt19rBZ)6833OrFi;c-%j4gjiwsAs!J?loWUA$jhCwWS5i48hxVM0WRO<7QIe z4vfk7gX+W^!RBQIF~2`)>*HV&aIcrL#PkW=Qsg^3mt|r8$n*`+Q|Z>()jj(@ST>e? zRuncp?GRtAw_Pi-thhtl)%WNErugtczdFaZr`^TF3gXHWgqCQaGrx5vMSf8+mFtXC zdQoJCoj!Icr-7(75-H^HY87a$Usgg(!a-fG4%!K_T+Jh|6{Y_{yMTVJj9bAH#G3ys zECfgR`EkpcJiy-j);LHQ_=xr{BYC`Dt|%ln>C4*@2;035jsj(a%=^FRXwb3 z%F4>~u7N)-JibpWD0I8_?pu<8Pov$B7ej2Ep3u45?(Pqlo#(vU1T2OX_+hmc$0>k1 zlabb->&4^clmfZSsp!XNrvPAXwG+X;_E!h`n9w(W2Tk|bc`olZbh}}{?E!e$;JvIM zhAokvR}O*DRL54&s~JsAb&a<3!6e}0-L&?(-@gTfCxSOeHCM#bDEyYz15F?tOL&?1 z3X6Q|watpn8Z(#h_0Am2lIu+i_-Lb|-QGa&+p_zTo8wAxZSleCSUbt8$6=!1{Z720 z@8NhZJ10eLZ>$4?bMmsI;8x8KV5;pb5Et2GHnviJzn&w(FauHUIs;C84%<>bN0^FJa=p=?i_KIJ~?TJY`TRBP=$)~k?A;mWPb4u$Of%4 z5$&)N&KP^jr0H6}v$2%Bss<3mCe)S#cvyVFrV#9@MY+l{UTFSW?0~k)DDG8a;iXbu zQCu#N@!`whNSn-K=JSv^H1MFO~g*Vg+0ELq9^kqj8`?g2Vd4pZQE3V5V^&GW1c4TrM>lN=hOr^z@;? z8d-%|9RW4eqQ|-~QUH>Ug!QlV>oGYOP=Jn#`5P*LN~*(IMo_`68qhU)YH)5g%Md|8#Kh ztPh$K^w{Ff@d6xzbW>1s3O2CME}$j`e6!2jesg*OP+_a*A4)iX#WMkD7rwsN8DR44 zYF+`nM&Qz%NWtAoDh$I`i;*csp<_4kF^rGaWTaR9h?qi7+rc^igkA+?ekNff^`{kq z5lF(1w}=M)JAeZ-rKEf{G1t*r&uR5;Oz3$T3Ez-fDBrl6=}V0EE<@Dl6iF-Q$-5911+(Z zz)L;S&B$nHKr^;aV?0JE+z>))ZWLy5LX|^Cc(>l4^MxcLV=OjGxa!VAcbzZM&`Y}} zU;Y7e9{MwkMPTc4iZpCM-|w)j-uLv!@0%6BXX7r6=ck)Bpr@tKdbkxS=+GT(I>vKY z8mqwTxw_o=4;GuUzM25;g*84ne5*XF0qip<=$$A-oO62qYw(M)G;6=7cz!dp5TMM8oxscYU> zN-|>%stB!q$D(hZiVAYC0JZqBwhk=% zOMJTP^)>~P9U0Ce#S$h*K_^VwDdH)rKJ|v|RJpn7L|26~%{%l(&B$*rjIJ}$LJx5{ zOWRj{GN#0e$?7Xj92jB<$~s6P6uT{^8axU%LcJzt5-1BanB0!bl|mWJD>ZXcF8eW_ zN*TC3vLPvm#n_FULCxIBIe(V#-b0&w`Fu!6Mvn9X`>SM}9ai2YbYdp2fsO2170hy^ z@e(cP=Z#F5wyvadjto8lfS+I0=Rl#Pv3EuXYkXd9w;b`R3``?&GK|02@FrKI(t~3f z-Lgwvt=T%VtLgmW`&qx{0|i75K0d>?O3a0LZdY%To>4x6ixv_JR)iN4xb$4dFZkxU zgj3B{!KCZ9#}JQvs&_L~u8{m2*jl>FD|@ZzK`tr`4c`)6loCj}zL-gKMkJSwmi=xw{q zAC|xpsK@5EhKLpxswes`s@bc<`ou%3Ybeckt1Q{11%13RfL*4N~+H2uz$ zzEFg`wIp2v*u0O(qFaML&#-`YF@+pAa&%J*_{uxhSQYI1ZOiQoBNJ0_)iC|pk3E&e zS2iy}RY0c053RTD>Du0772ZBnZnXqiX}P=jB6xlp8zuMxi}DeAI=0+M;I{1EcWm__ z61jeT+wa~^b!R(N_Itt1yPXRk+;lclxPTzAvS;aL)3f=lwNFvi_v>HfOB!cJI)>Aa z8MeRssz*DBG9&KP<-H&S*ds#pXwL8XgorVT3s|T$f7lgh(?tgz#L=4R=67&PU3Y}_ zRCc1+F@EqyuqXzS_@io9>ajzcOa?u%Zp%MKRtU71Cohi7wwtK}!{BO#6bHCF>r8Ld z)YMw;M~O)n-RJXfG*TU#c%N)`isNJb?l$Ix{eqT%T!U2jvAZc>j>T}~NyACuW$Si^`O`S${59`ou)6N!5H+G zdMF;bL0aLL2d|<{>z!r@H9Xrv-NLAS_k^-DXAHKe3WVyaj57q3RqwOz351SW^r1K)KLmUw@2arLVaZPXFi2ht+9v3DMn51cQO z;A(tJsioNk`D<~PEN<>W)26F>L`pt?e{#ItGms1aWyTj4XlpBOhsGBeoe|O`5&!0o ztM$(sE3riR==M=5(*Zvf$S;Y*Yu@mQ6inAPaAC?E9OfHRwT6w1EjQllOLVe(!11)I>ih6c} z#F7NB{{S%o?|%tc_rRpDffE8l8&i76)5V@))~*&Ju%u=q7C5K%a)YtYf=_;NvB|_F zjS}-8m0}s%l~;B)I!=|0d6xfr;rtPU#w8hYiysR!KI43hZTKzq=YIAFKOdq#-F{Le zOzVS{NOmhUyo>HqB|L=1YZD%0x|tV~pG=L^H1mDgT@G!g>F86{t=Aij(ZeR9Qgw-y z(|^#Ttl2Ex5%b5v$BdXh!}HSEiL=-4*ecZ58M=G_?FG#BY>Am|fqs$DY(aEX&4t7l z`CwNlA8yM&UAv&jwHWqaMhxtMwmTv8oDVuy))qVT=9?Wy!m{<_r=@d-&o@jP+116N z41)JBrw-IeO72gzWpc51M#F~C$96(o3Wm}$|DkY@?f)n98r(=}BlanNd-&{~N;bbv zXq4}X`uzNSi|U+x{Q(YQJqlSv2=4)B)^H(z9pruW{yg5~S8MZxuSP{@xl17|@p1!< ziuu=TpMo5~Ao4Ht?4MbACOl)Eyf3B`m4C$trrp$-*-U$R%3^(KO9JJ{;x!9v-JX)^d~l6lC1cD0FiI~u{VUW$6vi-l9HWKgqf}{EbGGd6l$K%4%iXkq@YOV(suDDS)DiJjj zL$AM?AE1-UmqpfqUt&*&>Oau~O|YT}GW zOX0F!EYk1mjUdLweUFFBS13cxI5;%K$S5Nt3uR8?_EUE7R65qJ-zxXda@_k~6lkVC zIt35ij$}L07E>?uh@JGv)KGcGB>?3fQ96WECwJs=#(1UhUbrSQ-)@|&`K8~?701lr z#>Y#qdFP#Vfi*L%je5rT7mEEo6!}x*JA*#|Zp*CE7{_N`@_^sBoDo|c z{(2QkiXjRi?e9Cez%Nx4yo0UFOnipKT5|L}Ps_=BU0*NFY!FrphFa<#>K4cg7F~Y6 zO0=>T(}E|h^-W>5OdEM6PvNlcx3eMye?)Y&R~+(3P1mQuMSL5qe}S~}J<@*hnM?3u z2my=WqsLl{ZX!nd=eC@R>S7nzPhd}PX-~JmMR<{cTU&70|9WUviMx(0L8eBpHxwNm;b2Kuu z@d-@&Rd$2n?c*a>z;11jJLw|CCf2PcJxx!j&vsMnsNnB3m}*_!Q&hjxtJPR~^SMqh zv}xmiP>_M&Lu`Mh{C*l4Y;%;mOzu(smf7GIOE51ppfeFFD!$28S(`Agl`QXNi7i@i z7*_n*K+@s=6VJ)<+MVF1TC^sG?L&tLDj7{I4kp34WEig3wTI0d4)3VGizdgm9s#EXd}`eovmk2s4&EReLFN(yd5S$ zuB9^NL?)Br_+vs7ekz!W1$KFSd5Pm3VHIm1-Vi%;2$)qDR=zF{_}`%CqpeY0x~pO@ z66kZSopg=D_Y7s(Pkh)f45aW3Bu3yr&WnKk#j>jQgKt#-Xx{zHB zt>-HA!M=V9!>2y=a%B!s3Q|E|ELPm$37$S~I+QXK-v^M2>aw&nY5HuK>J}ra@|Ei& zNypd4QX1fxsWdBTC~IqIv|$-q`QxisRQ|oVrVhQ72^kh?ee4`7_;z#8y`_;b9ZsmE zu71~5AuONFRi{`{*6eThM=c>oL`V*`|`OcgyEJn*4&Ls|7|0C+};57eqaa$Pc;^0(Yw zJADO%;+dV83>o;hTM_?YO=W`CAn8`em9AbQ((QqI$?C(V>6pUB#l_9MXMLGBuphE9 zi;0HM`e@YI$EcxGTzW;zd^0~$7r#6~x?Eq%2Z^y&eqBR(F@dyX^U5880yRL%WrU+v zNJZ}v$|FlJ1<6k+)$<*O_$!P3f+bw+l(-D-7SnLpF0n9brw2gV93#TXZiHW1BwU?pT?;uzmKk?e9=%AtZtBFx8NJsPzc}& zy?*z7=!-p(pOxQV^!{Yj-X0)L*`4y?5yhwJPYc?P@ZKNMj5HEf(Q?*BJ)^ zbl6OYjAYg|W-&B|bp3uFNLFIC_802B;YJR8T~js!(f<%**~JB(M-H?1yss@3prMS) zLuA^#i=Lbocy%^x=kb$qw65lr$e>!4JjM_qukzb1^f518^aOn%I*x}+VSWH%!piD5 z@k)E6ADyejdG*Wk1If<~UOd(F3Bnc8aGhO}FIK+;BZ%s(CsK}x{429JP)Jt`pcUej@H;xx;^U&%KXEZP8TFD}<3iS4M-Q!tpne-V39;-$fFFZOJ!;ht-wJ zEus&32I({K4b>rDy+0Qi=gMR%#PthG6uK{&@bkJ?>Q6!^FdCPr&aNDV8jj0?Y!&G# zG|IG}2B2GhspmnAsykt+(Z2ORQG;YNYQIG~3e+f2;gy7Rt`y=|PgsZl=ZqC&7VEpr zO*g2Y9ilhQ1?km&ZNecfa3O6>=?_6g=bh0J3m9|J#c~}=(jt>2Rp}n5q`bL0icxL- zT=pXF=O>@+TwgZ!h&Bn?E$d?xFAf13ygHsq6gtsXWug4F-zmt|=t2;6ImLM{Dv__f zYWFWx^_+qmgZp>sO7uXTDwEt5^vf zoeoq*)&F5g_HfOCbXjng@Vd_jRpWIqtspZk1=+DW^7(jUk#^XQJt58+PT4(bp^d}# zYb9e#IK3gHIVya1r{fxpmLJU}M14E5P)Hu{y&Xpk_ueMXJ;L7ssj-I99?He<3Ch;ekqu-PIgDbr;{88B zj#xv{9%cY7Y_(?FDttUG@1WgMT2j{_LqCTmV^bP0twsX+M)VS+ngE9tU!GTU<5yL= zic1g9DE=HHY_)DFF4=E`1?7alkSi_*;UG^One1{n3Ch60=&@FwX`2#k3o^%^>f(EC zJor~C7Q0$TIZOx)Q~zEP_p5QEN!lg&?PCF@a+TB0F;#zAqqAT>p~8u+o+~#fd}Yj%~oXKpbo4ArKyF{^AwOS;uYE{YjIiuV|ZU3Vqi1fZ(X)@-kvwi|KHM2gRA9G_3!!va(Zv zU5uukCJ>?7E4!ECxaT}H;ZrZlhSCmC=k#_@;2PpxW1el zi`WR@Toph0^D3v*@(@J!UA~g(Zr8+>b)CHl(%bI;TpWnzKmzWPr5Lf@` z>{}X!NiRO<6R~q{s z5&R#7s2DS4$q~koDy2ctIr)bVVSx%)2Maq)o`_oi13=_qWBfH6D*I&#;8}^B>&iJX zD#n6I+n9*PkbtMNKL_~Be&Ch8uK2h?_$VL?`B5$Jk}wVbVTC|8{8{Or0c(8-ed_<@ z^$5+EPMHc+!t*V|_I;|BdYZdWv(FW`fjJNATy!IQ@HD z{qKANYk`6hAXM|=;rNel;NuPqPI4X=r+G-vQ0_7(;X|#cc&XNV^qN^%I7nV&Nm;!r zi5VnwtNydhDDFK>xHhI8=h6pqIuC2eX-X*5y_%LntGx524mqwK?WNt zZXf_(Z-C;J>7Wwh+Rm2WZ8l2-dmO7&^v<(shjgVkI$R&&RQ`dEc6IOn534F(vP+N< zpF{jh&)NR$*&g8nhWvfMd2CVkzqp*ma9&j;c3au38r=T#&g9vU&n~g%4nrkA-$DCs5kH0 z4n(;4F-Ds$MU&iMLsp{U{B-mvBe}F+9ur-H>Qo8YD3!xycO@Z0ialGNfZ|uL#YKB^ zKcv15ka^MMnX88o&8tUY?+nAOorfdr#n#*z^^&cZ-=KCmt zy*9MEAmN%ZPB;6f+!n}b3+$9RCz|85qgg1Jl!TjGko!o3?Ww!O@QnH);-B*q;rn&1V zyi^9=jhqW}jNK??J&h*JRUHpu(Qva#Gb4>Cqoa7n=mE^GsU*T69r8bfkaZF!Md@iR zm3md3zTPxsznkOQkA^@XF{&rF$V|PMq5YHJ#-^mbj`mha1>JaMO1qH|1I-yW*$ufM zPyH5sV~A`9e`lE)j4|tdvqON&ZcJ+1Hayjhq`JSKzS}MMlEVn zbYoA-Kv^4jJq-S?xYC*+Y|;r^Nht z4<#Q-1+x7u$!e#&fsrBH^9Ms`mn7w&N}?E9;@evLX*IzLE}%E~pL!M}L*x1~GAOcA z9?i>(wR7ve`IZ=1U6r%-brZ%fQb|MXC%m6gn~ez{o(E4%lU5Cr7p}pi;iZoAqwDKP zY|)%c074C zG6JGiaC`RsgNW$yqIgXcs|W&D*)>_?6XLmw=d7-ew1MrMv9YnBtKLnTFi&-cKoqw? zH=~2&8WV6(Qon{v97U4>ED2{?)g>;bI8McD%a7eD@iUfdB3&^alfIsTIz?D^pxFH2 z;NtObE%d^BizbgvIZ1W(;Q_}m;rlbILY5}S)v~#SR=&EE^=BK{Pfx!`&YhbgKatUO zL%-({(FgLRzczR{HuIxt%U^d@Mq14Fp9SGaCi_)ueQAq_uh&cruB6-GArknDcd{bI z*rAYCTF5@^oyJ1GW=Q)b0=BL!KBY+4J65q{ zxhs#CN>gkA0YTQR_Y8rw?LM6bpe^r!3a8>(UhNqe4_>@6CjMrJ;zi1}w0L-G7X0GZ z|G!^~T^L0NLTj~a{ro>LS$ZW&oB4crOphx9&@;tcV*g-Hv`rr{ZG()rq|+9XM$=nn z4jFWD1+$IErF6V6{%^r~55c;c#{F0{P*z;-mFBki}6%D<=39gi@{E9iAmcwdH@4ly?!&wD)V z%BKdDO=a18KQ39PlD0kVHw(j4Qe<}4A@Q1Oe+Cy_!kA|wigXFOncK03Y4XWJIBRPn z0@3aJ?oL_X$wob&F(~+7Vvj>u=3M%qQcRqOUmgke^Zv1-NS*k_#c${-|F;EeJ{sde z)M^Rv1o{K)Q)(nC0un4VGE`{ETHv^5=ZSB}yq<_W$6{(!x&KlLk$v^iTDf8B`Sm{V zEfDJ5#J!&>tk&BTpa@!c9GAId&tniQ1BDTkib&ah%}J5SxsvU zxC+y8h*=s+WMCM?XVRH($RN2ICH=6hE?us24wfn2M>HcDieI10NGgfbb7^GEPFs*H zNo*45X&^2j0d>!Kr!4;_GZLgxZO!g%X=#|kiE^DUe8*k)K6uaxM}}UQb*yNE9=P5U>E@&_~s~1)PMn9l?!1dtzi z3edy@t5HZv&I#L*CTi$5XurOAlZ5}L-O7+oqax&9mSB)J)f4jx6ohQ`zttO$bcOLhz16VtB` z>(@gXOosLD_GCl0dhMcVH6U}Eav2x6s~t_H08MOlx3qdZFYkxT@0W2gqm}E@#!N2^ zwX5CXp*__Zy*pLu0)=ro3AOSR*Y7N-%y6u;-*>b#X}rpqfxDn^L$DL0Au5BMi>E}f z1Jj3VktH&;AEfM>)z@0x7pNYteh;j;FVm1k`ElN*9@Te-K3tr%+s)L}yS`yZzLaiY zAEvoB-1paXg==x1RSamKAJRD7WLvm|*nJMZ{D)mRcnQ98Nf3KPJ>>=XV)9?`I}gFp z>(|fo-k1o|k>`&OWyuRp-n>v?)}8K>5G}&{v!8HDB2~D<=%FS8G4i|pPj)T{JFn$C zZ0yk2Kd9qq;x6`G#&?!@vf2*HFEu=_hL2WZE35l=)-&AvQ)gud3pYgt#ZBYdgU5dJ zQfG^$MO#=GD4~KhZSRdsw5dnqoCT;)D0XXQPOVo}iL^<8^3v}3@kk}DXeGxCGUB`F zl!1Gb2)0IUQ$1vt723VC3X;uBAOg+euv!o++X8NFnX4jSKKtTCiSzAowbHmk14a2i z5`(!KBIgP@YDJfrm$a@a=o)hs`uthmo#RTNLSI~ zA{<#S60Kl?Wrhz=_1*1YFyQZZNuNZ0!pi#~@*tc4B$SY+%__F*6(Eg09Kc3j=*;T^ zk8urpS>ZoyjXLNhvwGIAr?d`wr>!`!O*R_vXWS5VOYV**)k<}JU7J&~bV2x(&%~LQ z4EmTvGZ=yHYR&){fvzhyC-4Lo1s=Hbte<}J-dPSx3FF)6SIZ@9$i(Xu?V=^DpdmR!Je00iH{dG8iG{y;go@hZ3ahKfQNNC* z|EWF?{bUzMqa?km++Ili|6}Z}gWBxcweQ|{OTAE}P`m|#OM&86iYG{M55*mdJKUwX zmJr;E1eZdPB7q9hAi=#rae})id9Oate)hX(-aYeu|1rz}!(uq=dq0T4De*>u!%YIQ(t)Rrk5>L9bJ2jKeZ_I%T z+q+(~bx((>+V7=h`>#diWP4zIu^xjm`c(}()++wL7Z-8@zpGd|+D@3v#K$ekrFObV zpSX2Hg=wLm(wth;@XAyCkieh~(2cLYuOg7aNxyT+d<3(nN3C+=au?gxAWBS2UiFI# zorxpm@iHyWTs1#H*IJD-Hqn0ci;dyL^Y04OocdwB15+2VL0e)F@$rOs!`>dr^(NcLqIS=Q1g)s=eIN3> zhcei5CT16W2z$GNp@wJ%LEErP6fapm{8Fu~YwQ_wWEl1LbxjE;EH@~Kk=Algn#gxr zTR{8vrQ+iZ-Uh`H3l(br#L7Te1ll~3PB@5)0U>0+)LEEl;JvrE>l%_Qv^D9i!zqOD zKZ#G?^dQu_rLVYrWW0*|I=xI)ccw<~ax$`2hvIAVz8~5`vVkDrzY{8rTX*+lE`4@$ z)^h>ZjcdS>YeyH5;0cT@n+V^e@-IlF+v50y!Dy}ZC*28VBH0&D^&Aty$ z@8SKW{B(hA5c$%B0!vSlaU||b>4LjI$-C>V)U92IhpohyIT>%6kqRA%NBPmq&mVj? ztb5m+Eb=0t=0o;mk|ub}A}pOdPPo>NJkk62Zo}tfs%-8@vzLzRY%C{btjXTe%{D92^n71Z z8UZ8V5VX&^ zXtL zjcw(mE+j6ttV$yHJ{=jiy|z?(9-<-}A~@0X#jQJ`UVI+$bc^aTy!E8l!Bl4A z=O#I|d=|aleeVLSmdvdv=dH&(9A4o1t^=0uM5#o3H=jDI607l7g3VE#(ZNz-oNr9ZXg5kNjokMD`Y-Zqf=}#V1 zmL5m`D3e)mK($Pedr2`vKWrAY9%Z1PtD25~=k}_olQ}sqVWq{%$(>l4jP3{1pnq6c z$_#&KxTG$hC~q(lkNq&BcyfHaS%%cn*Dt{wy zQz?u><-)(YT4FZD^#k-Ox825@^kYEa6Rn<$hF(A21|69ks&R3?Dlaq5JwLTJd-*E} z^V^fdlr8-#z=mq3kt4iwL^xWg7XjGbk_tynnT7M-Nrs^9VaIAzgtvrvZqtJQY-NTZ zVf_I?ZaHFpejWgP`*8lNgVj2=$~U$JcuPd6^9M=M*75m$-)4RjIewsO>>ww?Xgw2= z53o%AS(2kpCDy~dJ#CG;+bUS{7rRU<>#=xIN9U_$^momdE1jCZy{1OJdV3mkvjS1< zGw|5PzDdxL_;)*r8fL-QaiyY|3t+=H_9o?L_yTuQK;GhN}vcZS}cF?y%=ZS}sufBn`S^UxM7#&Z&ifMr;52v8Q5eREU z8J+4p2ZA}FH#!ksnm^_M*3rJynU*hw$2o8!`rI!cB0NXh<>@ppWjVwaboddQkR7=^ zxL>{_aQ;p-7hC864}>l`HACq_A%C?x$>|GP4dDn#J+NpC^f; zF4aIOdPtdt9IL|U$zOKjcw#gMX2utK#V~MzMyb|HY8_>|D4Yw&lem+_MC#b4OSy15 zj$^G7tqcsojBVjZlyTr()Z6)M^QsQ-xf#!&PpHd!+s8goS)xlFKn}LOC$*L$o`z1C zd0>wbMA{DGaZR}Soeq>7DtO$wtV-;W4*M#AFPAH>jF zck3#>s});muS4n*Xy65C;p*Gj3F%~|=~253{wt{x<4Nurelg|=*I~(+CiZ-L9WQtB zJk9jrFb|=0{lTXlC$VrwlS$=TXM zK;PV1y3&1irPb^Q7>U5?q|NLmAe?C7`qZbxW7wK1?-VB3e!j}*<>kF8Qka$JIfFJk zUn1oAZlZVH1=#5i?{pCE_{`;0=5+)<8SKDaC2k5ahAc%RF=DOkaeNX4x+jPq3F1pn zYJyjjH9%&CBr=DeW2#~oYuV^)%+^KLORx3;zcd~@SUuK3{P5wgccbxq0n=ia_+O3A zS)6XVbyOzq!zUv1zpD@OWDfWn2&04IM>AW&`3u)`avcGyj%Gnai;-;caPtW4S+1AD^6yYQsZEVVBp=d%Zj`a>?! z{MOKOd#o3Qf^pdJY56m9=f#BYbR^U#;y<^@d#`*CM6;~>&B%n;psiX%bE-B4&db~S zz1urmQs~}!&KHAoemb#+N8L*`V!G+^)qmZ4Uw2VZlvPKBGn`3 zt_GB|@V}QoLd3A0mLooV4VqS$R)|n1qn(XUT~|3rur#$iG40K=`jk$vNCg`iC`AUn z@)#ROYO|*zO2&`S(KStk#0&{O_rqxUQ)4y6@XX#9Y@`{rjH@dr$DSoraHtBiP#O*T z3nT9GV0`c)@uT4v8Itw_@wb1>B?_P~1FjmRU+#d5ZMH&v%(g9m+TD+ns?A%ee5>zE1Yz%5({xQ+*CXB>YIe-PsLW5B~^5WgJ) zL~jM3wN`{2B0C7P9ap`R?FEnWfMpS+#MrQ%V773IY3f)m&T{R|8$9C5)fdC@1qbi+ z;1BYo@qBr{8;g;=t;Yhkl(_2|N2r@$zJV6y8NJWE+s5-q);sOf4~93kH1)EygKd(I&5(au64fhMp%tGG~w4K&G4K0(nsh)latZBDuZSVTi2R- z-Cz$Kepy2@_(UV*v<_)z%~PHFE#?qrQ$iP1x;yvYaT@|G_=KJ58~b@>H5&Cxx^xo=0mUvM<= z-XhiJ8!4yR^8He+;_OF{iG8O961PFK19=>&l_m1|9rEg-ckiPTj(huSol>`Tz*8OJ zKu5;(O)082`R!lH@2~F_&HaXDQ24u|Q+1+5il!U(aq%0gRR#<2R?1ccb`YDNVo2@*NV zu20cO*BbJWdEC0kzIBV$dOE)Pq^4YXkSKBOXe~*z}kk+P;m3jO4a5j%z+b*T!*c&ZiTaZ%4?=?8qxM8ImNKx z6mK)nZ{edQYJ}fcGQc$fm$tb6;8|scL?Dw)4HBm^If*94|;!ewwnd6h;DU=H?G`5Yfi^XA4T*OkUZidmINKkLOX%k5?o?TfU$9A>W=aLnHfyETMP!Yd)|v z&_I}hoY8)>g6v7z_mlY=I$_JkKg$dEN$k02}lWrI*I6JTc{-`DM0* z7K;_+N_v}}KB{vtQm^83B%0heXp(I$y8E-s(7)1Y<6y(FW`bx_h0(GcG!kICb zZ{`0hDeIBOSqS-Sl8Zx9Vo0x|)|XEkv5+-iHv9-o<^`CvW%AVtQog`jn|_5Kds7w;V- z-FS5w+;PBO>z)X(^qU6*Pp@RI@c>tv61g88f}f&lKMs+(K1e*5{0s24XYmICwtPX8 zRbwEeC4=uI5z_j*?MTFF>fOHVo#rP%GR|+?ydYi=i&#qD>>(-H4(Yd8Erb+&R~&He zz@-F2@YmK#JXunXdN#>|z#r~eAPmQg%pGF~gD-zDUOxuS|GWg^fjDPdDq(|fAVJirv*+-5%UY5-IitV&=*Z=-Z$U<)vS=UMFqrrl!W@a08v0~v3%!~ z8rOZto;la66{}rT&`PTjz!xCw^y}SNl2X~^@C)@UX*DGkl^)jHs2P>uqics6-wUql z>**A>Jl_%2+1ynJ;bcMIG^imsq$}o0$XO!c-5~0W+px{bb`LYzwmE)@EAti}!C>fh z7A{7r=I7Hv8A&8i`snj?P={d27j|J8+S&u2X-ZEEsFDkX+FB?e)BOYl@7R4_`Rdx# zu8c!B;bB$==hPpwIBj4G(V5|!ePo%+E+X8YQug!QS9Nx!V6HnI@kU-0%lsOY8ZCSQ zbGHx^w^7*>;MUg9?Cc$z1R7Cz*{a^H1G@mm!PGKiM7FwN8aefasO>dERTKTr*qv;` zuE>+uwLvw4WI8>I^)JD#CRIiNwZy7E#KN@pqG+~VU@HN6mj*OAS-WSvL_Q}D59e$9pl=c%f*NZV*X`Ds~A#u1*-^3e>V7wk; z9LyAg_^>*$#btsKat(6W$xD`4;q{HZRS0j(c@5#zwf*eFo>}0c0zEzb?kLbIbZGyL zH8#77aL@@HHD1uFPu`hrBFxF)arzy{Da&eu(Xaob1pp?stwv|IT$p6C%S68+34T|$ z33D_kqrn_cJ5`Y+$>%vudl5Hn(_XjE4m+*r}8lXlPW3iDtIyGuKb% z7(r{tDwWBAGUxRV)*+|k5P$sZ#=PuuxxsV+9PEhK|9F}$Rpu&tUbifX!kn2tE2Wk|A>T>a|nblvA`U!kqVLqYY-h*s}!dILYum z^hw4ayLA^graxO}88r~dB&t`k^?6ES`g`b+tFMXw0jO76i!5}6!J=GD2~`N?dVf4# z6SA|C47)xbOV+@3@ZlD)CAq1UA!v}uTwpT8Xvn&$5A^b|@9-*cnRXu7H?Pw0?}I_F z@f$&VxUQ2)`p?JzWC+>@1H#surfHyjJved<$z5=mZFD9a|nea$B_tOv>TWaqJsL@3N%EN>z=SV;M*>; znw;<$pN>Kizd1+f6{03kW!i4s;Y2VG7w0`&kflxAc1A+ju+=wfuvqQgSlyC3BY7Bj zcD2yD4TH=+EVMzxK;SVcT>of;(N3%x9u|xo7)TNF!Sq3k)ma69RT$A{O8V8o+B@1- zDWwof@FG_^RQ^~}Ot*f=sjip8<^a;nePXbtd2KgfPt!FR%Vjp-;=EPe`Dhz;tI#e? zqgZuIlvIcw38z ze`_qBn>&9>^sgg6>V6M*ZDr1vNm>z#C zO8{gI5sYef3&`xrsBk2=HD7Xq#G5cSuDMOrVtRfJgvnyeVAcA$hAltIh#E386ATMH zr^sr*9>lV&@l9ve{1Ik_MFxJtpUtc^6rg-O&t$5Ej$tTIjr=FY3-r^wk(CtR$;@9T zZc}ge&JF2l(M(4)-_wFv`$kub$1;;hZX*B#zWIne)96A%QSP(+q|~adHePZ0n2wu?Q|$8s#EbqE!;Nbr*yb*&gann`X@KX|Dut0oUHMX zt5k|RjLJ1bS$r`D6+X%KV2_>?|K66;oUfRr`I6YDurrn+co6a=3bDv<-3xaOKG|Bp zW12|JyjK7te7tMms-yq;Zy=qfz-3)qLp^ugW9c57(`-AiU6R$l44OF}B&@Hev>4QT zqOYXS@rih~mFX`b*LV_4hSWM@JqLOG`zEVKZo#cY|D&V4D~*&1Ai1-y<8rpc|H3+{ zj3z;JDT+!M^=>nx1UG!OaJ49d->)l#^;C1ntb`u%y(!6uU9sxB^$+)y4s=}XxRy^6 zj?4%iz?sV6KelL_jf07F9H{jkzhV1Kz+bUxx1df2dgwgj=2t2O%?>Xo+wsn>1YBCS z$7xY?@|poNdxuzqtcJ!Q@Tb}n34J}Wyk>3(3RKQhUu4bnCCpz2>j+E8kVVQ`eLwW<@kFJueRMb`wAb&hHLjF<)-sVroczn z#_2hm?%=@KaY1>O?~3Op^+bt{nr58^YA*dSmA4;&%J=`3omuFR^1qJE5!j{2vB(u8T~r*Bl2CWa;Ztg+t6UTE zqohDXw>(>7yF`00KJa`HFONmU@_zaFRrFPmV6{Q*YZX@9mf?Cf?u0Ky&0h0wK4}wg z3{Boqp73mD;;x++{Ff`Qt4AIjr-2bbU2g84)cq)J2!3&wmXzXB7bHQm3#JEIhjy!*!bGIhR z#LnV22wbd}CFOHEM$Jt9z5G;0hrZ=(@s4oS!YAOuRWz^YA;^@|aAa^m&8A$rbqR#T zA%gQB&-!HYiy@Z!bw)OZhBfs#L-!_I(y&^YynblyLb9$jY58(J!gh*T5$UjC{`#D2 zPyj;myC&O-|4!e+#bqP?to?c0Wu1O`#S0RS2^$tfGA1iE%tWxWbcx|WfU}h>05gx> z*rGj`HeaM7^6cnd2IVnjLgcZM zIiNDm4y%zVS9|^H0LdY&F5M0=4ij4+r=4Tlh|T%B{Yim?Koru5HYFoH6CdFcOt>S~ z^CJ=Aw)o_K%8abi$$up_z5{-r(yy&|S55pZ#qj$}{m7%ZjukqRGp#rOLufSoEIQkp zv}^t{52|J>(AR-K9=aspRj1kc15wklm(aRbl;nPP z^DJJKgJZ0Vl@OQOOGjK-^|c#3+#qK^h>?fY`Ka!HI))i30@b|4;|y@wpRaLiP22@fu(m{ncj1vs&aQ7~@UWMLe{Z`tQ zj`$?^KwC(hg?nb3#o(*evk+isp+&9~I48XBTq)eknc7W9yv=?Z>+zXqaK^CzgJ?jI z0yIdW8xW;vu`6EmwB**yst5d#??k$v89ejt?)Hs!(AJEHVymBVLDWsZOtuLeNc`-} zdyDN27f7HxupsH z>NcOyWyQ@^t+M&2DjJeqIcEz}wx`*0B$DY7=tEsDm)0v{8q!`3z`W}t6~}BzL6kWp zcXUdJaC>26&$kh=e)nn_G`HWIlAu+lh27vzk?3{EkTlD5xrQ8Vf9^&SzMhQ47SS@? zcx&>lXV5B@w*&sI-wDI`j^Q;jW8gc3q4PjCtA$iTCPVo5o5aiP&@7=G1P@YLCWid6 zRyPwC{>rWXhvfWO&1eiH>N7XHxXkR&rH`f^>=>e929j{o|iaL%7vN)&X20#y{v?T;z2 zdGNCwyNlj$l2s4@PmriiSl5 zaz~-3L1QjHT?xyj`$CM#HI(vwNoO1JmdwXJ)Y`w=Y=#U(d}W8#%$}ehLxzpty6?}o-0>{mOztM{ zT(qlDoI@s5?xKhVO3-b@3zj^`;!zEq0Ue>0ljd!A_g+s~9@x!_YD;5SXCyy}6yDj^ z1VmWX?C2iD!yC0wXI{xR)o@dHjk0Gmp-Qto(*g9|W(A*Ak-1vZGb@l@+<_+oUBE*d z8g=C>Yfr|dZC3F?RJ%CU7Kf-*JY-HY_?x45)vEe$QoYV+m{a23c?oWpVB>)4wf4IX zUfeS)g*=DD7#@x*@yhYe2hSg-H^M#5hwSn#B!YThW=iUAS2|Dchkl9>Nb8L+GBcGz z|L#LXz|^$#d$lf~nMw`kNz_igO&OMuK}oQt7Ewa5D~m=PAnnNH>?tX8{Z6eaJ=Er9 zo~z7Ge{zCUZO+MF$jY}Y7aVBk?_^eW&PzL==%HcR?ZqCt_}I5Q)`NzZ&2^f);lqmv`r32P?5@jD<;l18mrof)Asw~d|2x6 zWM}X{?c%=}mmSDJs?GLwSNmBuNW=!626Tk^9Xk8jAPIlVr*6U}>_s7JhDcWJh0Yh( zh@?3Q*?OgIZvHvYkJJZ8Ub2O;oNzRKGFv}(MlZy?uQ=k(W}!|sJj{t@B2u-A6_K^s zGAzH5dc)DbNaMDP?XRE8gEP?}97K+$mSvP*UqDw)YEG)Y?|L&~K@xwQOqCrp|7$v2 zaH##W-_c1&i}^rHL%pM?kD-kG|sB7PqYx2I<-D7H+kE3|9tkf-nkPw?eLop<(QsCor(YSqrZ^$ ztyJM*bT)kIT+nYoL%Z|!TXO%mLhl}K(!^#{Hf^oOmmkt;n@aq$nJrUqX-@Qzk4P{~ zi*ns8FefuC)euVmj~0OX;MDJI_+LQE+ILysrXl&Ssj=Kok@C^KoI<6TJ(_^c(7!cQ zCJmrXh~`8A0Z^2%AEI+F=gmYIO`IuNLom;mA?APxmwv6})zX3lvue1bV6S$ItqT+- z`$VU3LiuVjMP49E1+w>K-LkiO~&EBx5D#wD#@|vyI0zQ(rD9%&G zB7>JBT(9?M1xp6gWqk1c*ikn1?3Zq@H9|rN3GF!miwT3K?+yiPW;hllWwNt{LFYz0W5>^~R#UNq6h%cUZUNmtVj}ioE+?LOtq~ zNX5Do@=L~w^lafU+*P(Q+ZG=-<(HX7mL;h(=Yoq@4vdO%MR0$n@AdKrkJA1;Q_46U07!tmRJN?@T4_vLFAglf`BGvt>~h9V7~8ZFl4%_4gdXV@)#{b$)gbnY2KB+LzNKt}QaX;v^#SUXdkmTKh#8rB z?1hkucxF`5ikR@~@%vXG!2>z8`t?Vsd`$DFX9218ePI?V8*JRvwQxxp5o}TkX0xK> zoMA_*ZF7VRJ~BF}KXY@?kPQ9su)eQ!bZc|FKuSqp|E$`;n6LX^Pl8XuM#*|b3K7=< zH!K<8hfG`l5EpCqK5lGF2raDtrPnbxK@Cm|UNgR&Wk429G%Z{G-BCKV^;Et7!hj~2 zXS(^&$e+Gy>G2Vhm17N`s9s@1$yj5dg}-TLu2&fuC7RosHHep;xqW3;>l4Vhb9!Fb z-U8}g^WnyUL}?kD;pe!?&3@Eqn_d&r$^HHsm}u11GFeRN@!0UF*x3*+qVd>y<}*J( zX*i6VM&8=w0dNll_Clio#ddRr@xk5(@++@w1!|;Y4ndE&_*S~D0 zbTC8Mr%r6I?sSsfxDh8NO{E&*hNjpm{^st3 zB(5!15^Q1iio70ic0x)aL$LnvdwJG2bpRx1pOAu{K@6miYI~H`ycLEmn2M`+mkLa< zGrB;y38yt`5&Y_`=U$4N)GOBJ}ge5Cv<=lFZ{*p9Gp>;YPMCI&3 zv1D2~GN+sr-I$1+p6HA*;8hoZKmFF&$Q{KtlOYO8OG`#O2K5JtU5X~B&{oPjWz>mQ z=)GI@etaYsD9(p2AN?H1u3x;1>`by-arE-93%5+|uf9d{_&`D#7W>4k#XY}LacP)U zui`_1664T>18L3pPMZx#p}iqQi zC0JvJeU`2WH2m|7iO~W_u9!@Y1iAjsXddeak?}K8-donm+WYsjJBpu`%|Fr+=XyXq z+Y!=-c~mh8B7&bQqdgq9(Bv5~zpnAE2s=Adt1(z#{#Lvu^=N^-W_ikJ^Zp2}SO)*E zen#Fct$V4L-whw^72k<$nBA?e{=;})YxbyTzAVF4ajy2l!Xaac{y?z7+1DQ=^Ms#r zI9$-qp80U7Lg+n6BG<-TMT}B^F8ya6-ko`g{HIZ%8#kWHRW2{K-A!gbWVQPj*8Ca& z!R@&dZJR576VE}Y1Orn#B7Tb78Ria-R;6Xrx2UX1`d2ZxPMyZQ&L`%>zAsLey$t;5 zf0NBMKYU5&!#@Eb55VXn5eYri(F?dMY0tASE&zbdw&EC5XO2W*zc z%x}HGlMz{Gp1==>S?qI~@?&HQ)-tnDtI>8q}kej8_VCjI~a^3@W0j{uVOZ)ssIvR*7Zhn`?IKSyQ7` zD6GDv)yxe*yBfcWoJmy3GV%a+89hizu=LElw@e(vTxo7v%B{o<4QlTI7XmBMjU>~-o{32g`G zXiH%wCX{b!m1Vbqd5S%Sqv|0Uq@~h1JWspEQV%O8gL*nWv$aM@Yf?)QRuOls1UOQtD)?~7iiYvkpVu*+{P;e(bcR6Hviz85zm_*e{8?Jm-x}x^kob?I zKed~=VWwCN;C1Wwqt9p?N;oeW(q{T^eVR4k#eWxXy>XFAfN}@S`u4m&9*GNpqmAMo zCx;KS_QoM<|9@!I1F2>4eykWYFdC#rQgr@G4d>;n2#p%wd?k9TA#;Wv$->^|xLx+( zz9h)h(r+%+hJ-qUOg^hkYw1j#-SPFKZr*644oZ`aB&i>B_-ur*=I}!>n(~pAidtV%A@fmo5xvz{xDFHsGIZu~z8FI$}wKh+`yjl_N6YP-v<+V*gN zV^s0Ol`QCG|J3Qpp?^dm-ju=_04>L;YVBsp_{GCGYE`p;*!4Y|fkz7y4YQ_AwHEZk zqr_4n`RRS%z@uHyDQ!u0*ekqn2Fw*2R*#*%4LGKvTX5Q6UPhfd08WMxXjsi`F>pfB z46vHWUKSeWE9O5v5-YW}4n*I%o`pWAsIe|F zN6ni#S?$Ed(P2>TGa=3VZek^fZuD6fvB#~{-)g>2HP!Wvg_d0}6nw<7R zFwLKBzlU9y^w8Dzmlv(*^Q4Vvq`!il7V=wBj2YM`5>so9WOqM$mkLyr58cF2=(|A) z%Dj#bO^J`vUYdT996!}2V_N1Wa+j+Y0ZQo^tY?yk$-qft}|6^0D#~hTxL_3&?JPG+~PY@9(g)0}xajNI>g{gm0&#khSYQ z%Ax%_ps;Yzs+dD1M>pOLfBO#m&C%x_rE{f1Nn>TOzKZNN;Lx@dhTC03;ujq9vxy&{W%B&&9OE8)wum;-zJqhlg25GAgvjG80P$eh<4RgF3YhtZoD53TLXB zr5$zQ$1@AR_yP-KKLx~ z{lsQvr|x?Iy*LXGDxttG_QeeJiB$p5FHM6>I-qC#4@QZII)`8m_GePkI{;vY%9+-- zLrWN=>h-199G*C^r&<~Itk~9MLF_8{v9k~NSv5~xV79d|=Cl!wTC)hh{$IsTULEl6 z$h4#PgG`Vnm#sYs|I3%9s&x1SGLE_A)-;CT{bQ{5n3CMd%3t4lmsPk~8{SZAZ}K1% zwF_+OmshxpJIU(0ldgvMvb;u4k{@lwKX3TaQdwSDn&x$)tu|3bTT$+@6ow-)oDuVa zai#&nL~dRYC;S0M8sNY{10$d-Gxzx}$r72(&&(qdic`jHx@vmtJ5bWL3L%x<;fp7n zDF*^ZDmQKK-MGKcq*%spB075{Wu-^^fnY549U`5?{e4{?_* z&X=TIAN@tqS^`joBx(#*lK9FF4zfY&4My}a7~_wU=cUrtyOq0T$$FAVlN=P8B-R(9 z#es^`0#Q4_OW(6J>+Qu_g(dH-w(oBKM+^8iUP>ih#9o$Nh8Pl+j!C`=gPFxW;LhqBanG6QkezkL^T{!7C7o&g z;m`6Gn{V&D3ws#tByF1jI}$gkrat;(z+ovHH=vib5-5kVpR~};oImI^o!Pq z@P2jM=36X`c{nQXu=YJTk({?-ey^kF}0+y+vcD8(c zgv?lzCZ6Q=uD-b_ch}pIx3elg9YYWmN52b+vxIGJ#FLxc-$#@;I2;x@M7%&yY73Nd z(8rA_7hkLEYT%WEbRb=C1X#*6$LDo)C&>CAml_>H3#Ef5;yxru>TrMr{QE_P`NS^b z{E+MA_5Ld9nw{P@Yy9_23u({hh+TQjv!7PS#`U*rFGGYi z!rL}t3hTcRaleN3)Uef!J?>R3&Q`|WJ2+ekomxhC(Q#*;Lz4wlYu6Viw-m!(#{+=P zbUUeTr4x?0@o&Norm-WQ56k*ze2(1_999RUIulX`6`Cxn(-l#9?_C-0?h>`TvDTZ{ zKX3>h)*`RDz&qQwKIb%jHlWLjq+)-P6qVrMeA*_aZ5y{EPehC`y1ac^=FImRU1-Y? z0%kn|SF|-Ud0OO%L!y(lIH)x(V|C$G@fCW`A1jih^WhJ5z`5GoTi8A$aT9Rqv(iU2 z5E99v5nUDAP`jyh-VFP$l!VP{PgAcS4X(lCTM`ly_K9_VTd4zCW*as7qqQc81a}bi zyJQ1bw16(}j1?2tq`e4xNwq1Ea=V$U#cgW3IaIjJ&9jrGSol}=pQgm)dV}~r8SmtR zlkXp0&uUa=mWu10B>OVo1;rY~!t(WRd(O(~<% z!-FEL-MV}5a}q?g{0*>8qtymBi1R-A+b@mfJkF5T5iT4LcvoTkNCl7u2V;*W5?C{RB6zV=IPTF^3jH90q^4ebZP6$H~@H^oov;%FYHuO`CH$? z4)HP0NUJ8YC`r87WZ+TCIk>C}&a2hK?pLQJ=d9s*4iJj+s9e#HM$xmFRHNwgtC!fL zMu(kD92H-_RG9b~TW(OfxDJm`Dp|#VzNm;1$Bv>ydw=IH*R*M}WxzYumV^Xinvj3j z9adqMseu;O0aal~zng{6Up!*yP6x@hTj$(I5iiuK@5XPZgMvs8YG3ZczT7VSf|ReF z@X4dTI^YT9R!gT?Dd6#~kH2K1bauB)4Ljjy8YX@aX5}*R?Zpf*2sN?Ti{aE}0;C2` zcQGeA3pYyH@B%>B07wLD90*;{$gdxBUkbt6ARdJ*8wZg_MZfKb6>X#=tTtpcC+In8 zkQDy|LU{dHTWvZ3I9ZP-PpjQ#`gh+?We%@S3BC}0<2q(9AN4Zq4xR7UCB)UFwZJxe zex`b|NKqWZXo(-By$%}vCu)xXqo(FW2DxnW3zZDLc5U+bF=UqpRgehgk6b>xYMK`L} z$7@GO_tvRYof@$-GddNppZ}?z4eaj+zr4>SUNP=O-6_@>+~}V~(QK#W(9r55Fie^M z_#v;9?+!7hU|=s{Y4xd~fg0;pv8i0R^RZ`c=*OXl4rK5%BZ=nV}`Al9!t&2h9EM%d{C>huR6CN)m1*NAlq0XE|Q>O9R2%G zQ||Jr7qB=KG%60ivGP>v{9npt3j@nkEAl^Xqvwac&xLK!_esUIRrvp|j~yKQVIHYJy9|32t$Miqq?Ru+(`O&-S}kjRlAT9Y8s&@hjzni? zS?9V3B9vtRIsab@WFI$RPay6?&^_Vl$?d#FLsKyPsz_U&8(M$1&*ZjxO(C>tHs4YFhMN5290qtwPLSXX|YennL2sJxP*3GGN zWDvPZ&VXh8F1xtr-YxM~(GvJ)S;z z!Su&^@(M6?0a*bH69Hg~OUMdK)Tf~><(huFKGsHc#JidgWi<3;l+NB{+;0Uw%9z(@ z#T&X03oAXhI2 zU~5h#i5AIX@`h+jmMSLVvns9?-3ZdG*3Ox9_~xnqiSiaXqe&t^j{D0s`WzzgILX^y zJts|>Wk%klu#Wy#LrczNWzo;HF@_+F7D|)x=}EAo)~V`-^g$T8ew8uG`-H};%i5Y2 zn+fIIa%J_}>3uU&lY%J1=SYOi!-&dMVM%V<>UEbjDgrxq5cO3ZnqUHC-u3wOOf5^) z`Xc5D;D_4Hc=5hFq8*RtF&5#=Zu*TK?`sGuS~cQK1gqYAFdH%yRWzqvSNJ`5^Mi$?!7_&hGv#T)qjosWy?L>JkY$zS5ePZ^NbkhS5B;@h<_$_3-XEwhahh&P$!Ea+z)Gt{qQmk^yuq!XhH074 zd9E4tOS7E#5ig(%RY`xZHBcy}uQo!qAhoc&*y%dURy}2G{wSd;sc2oJiH&a#tG(Oj z@T*SA#)n;>b9rYPO!x0iw_d1)c^~f7`o&Oyis`Ask2IH)Q{XHoH>gPvz{3WHaTt>c zJCA{{ThD~syV#o6US>=t(JCZ2e*(VaK>;KzOr;}UoVBX;=rlNaU-e7FdJk#noBu}W6N6zf zWu1lUvi33CcVF^l9x^dAt^?yJ4o+$pi2C<6M__(0-zsXuQ99m6%|eyg@2)cpn)(=z ze~&*t=Sj$?Rr`e#ijz0%1vdxws+3d)nBxRBq^jmiRRl{4szvHF&HRV{dSJ_^T=Lb? z`|sk@nHsjqSi_BP5Y7_UmoTxj5dv%+jDA(TgF~%?fslT+6Gcn>FTa;Gm4+SO?t?}5 z$OB+GX(;u|g^GfLihzIup%-+z`uYJZ57Y8KIoMVo0 z4|@C`2aU81=XngVd$!!Se~-5lH;)GyObX2RwV0n2sSC{+3wXtLo4Y}6-5~A86|~7} z4EBp`jZ2S$ge^i?ft-yY3G{Y4TIR~Cn^`-LGpv*StOYnB&ux9PfCg8dIx^T(4gO=g z-5&Xbli-k%rRUH8u6ccl$53&{<=vM^;PZdA`}1=(rE1_8+NE^1iO=S%l77Znv#v%T z=Ch3N{p9sa89sC~MwIE$MCc7svVdqTeWF(X0A$d6L=7i?CvBD%sC%8&v`>c(mrW+T z_UVDJtQb$}{)n%*vRLE`g$CH0hh8PNnHobwG1)%f>zK}SA{te6U5cq%1d>M7S9=ot zrZ{uek_EZ_-f3u)@^o`kUE0qQadh_mx(;DUm2CCRkPt)`mzsb)$9=T?YG*CtnOl*f z{pi$ae<^fwdK%2~+`bkV$yAd?J={EW%~56^4vh5%%zl4tSRs}>8}WbMa-eedAo!54 z>@%(hj!#ZL=?ko+k%Sm{I5c24f|(5VMmANq#vJCp`FoQoddj|k^7gGq{~4|8y&j-> zV0ES?{(^&s5iN$9$p)n5Vr$~C zMWxhEPI2-n!JGYM0tZAW!}57S|GRiCZI5oHBed3|SZYT|Xzns^v<~NFskmn0av5`V z@Z>q}SNNJ2!vnx%FjeW-O$o!{rkU#2Cf&HNhB?B0{k(f!4wvS{%@!`^GWwqt_SJf> z!Z$8|54}K(7yh!k$F>DZ*HubJTFfveZgJAExh1NF;=fuuIaa`$g4w_snOU`v>(Yhm z>H_17E}HHXtc{jb_+K{cQv&O4;DBOm7N#-6E>fOPTfd!)?!R3L0$}xCQgbyO%D-Em zfeXZFAIl&d4UPz!mY973?G!R&(dV5CbH$k#>d!hv9X*w!UwDY$(W)=kFDyV=v49wUv2w@u?evu>#YD5s zriH{*;s@;?Tk~j8hrT1#Yt$Jk%km-AU_;Fn%A6@9Cj1)8o4(x*b(CqhQW;W(c5VYo z2H+;`f^!PBb0i)V8xxnirc0R$!ux#V->41hZ8R<(kk21fa6e4^9!eI^U(vpHmfKt1 zXB)Vfwd{}N-60OYaG)^@?iED$=$M_8omO=gRF89La2m_z_*(UqbKA@1$ zu2iQmhFvvLz-xb`Q`4e93FXY$MkB zMMAmrexuJTPB%9SgO3~=waFb6ZUxV2A^f)1^XpRHwpgdQhcWmkTH^ksu|j|EQ#WM+ z)M2BpTC&)xGW~n$P+MV9OhvU?)Ipj?yKz_1@X+38$!j-72+YHLa}nd}PVl(t&6;Tm zxs9QIUx+L&D!?t^h&q~4ZYaY1t#{F1z6-znPvbuzNZ!&c?FTMiUfdlm9h1fLRv6AI zOdcykWJ+XiY}t!7J_rt-DX<7>;vLpn(a;m#6AeW+*c(E-yFTxGe6?Fuy2rCrCEdG8$3l@$ScgjY%cUSXncAQK2 ztQMWqU~9I^Shl*Z3Du}cXuL4K!!0&t|M=Wm?Zdm{k0snwZ<#lO^sjMEj=SXPV|4t# zYCoQ0T=J>W`8xW75F4YcFO0y(MrSDhXsp0%3cL(q#q`46vF|~M-Yx{nbn_$XDUbG6 zRjDEAoEuvk@xAF&oJ!zm24&Me1B1Cr&sDs+FJA(2F`Cn4=;d#Z*w0?=ud7!bHbkl? z(0{90AwEFzeD%LVirDrsH4ZTJrF_9*T*4Ew$P=+#@H-NZY2Ch2KEH97og zc5L-Y{gcU6A-26reGV%|_gPoF7q2TPmCD{L#g8xlCl0>#Hg-qxi%O+mN^dorPOFP^ zbVlpd>MHYRQiFZ1di9MdDlyfOb^Kr^%Lin}(dt%L+ zP2od~4ybPH^DKc!|8C0O*&D=-C26_Yv4$o7rnB`HvLo2h2AI_`)Jx?o~Yg^V!P?tdiLS1S_pq4TI-hm zb)4rCf1*dK&NZ1{9|o3Cxz??(#i{8=Uj(as;62q>z!{2w{vU6#a9sYdPk`DFm`iQG zI*x?ykRuD!l?5Dnf8LXUZXxUz%GBux9Z-OE2>JmxE-#b`kL5&|!8)@&Dl*_hK>4}9 zYrmtY-OSS#aDJ#Hw&66RgHe1hVTnR|cR)W&UwQ34K%e({&OfO`Ul_09B~KgL36v7e zWk`$ofho1g8YJ1_RF0afl+UVH%%7{4DuI)jjIAS(N_z8v$T_e1niiWjzBCuEoULLYmvItJjCLtg(i zf&Zv(J{@zOrsA(%dK92H^^*X}0g1${Z3u&$L2SOpEJ^`&x7hjx`GR{0kUj?BM);S% z7QonUgDv;~i^k`o@r;;93r3&+&6{(*^i)h(L1glaH$$QrbtH26;y#h8Zg*F}jW*sa zP2<_`Tuda=2^zc?&%rTVlnajp!mR?qAS_S06@4J{-{Y;3P2ui(aL(MQv!5V)nhCtu z^(|Mv|F6IHLlS>*An!v>Gkwm(!z1oy@wbTO^(`O+v?DogZg=Q7 z`}ml@lkszp>`SgFR$C>E3GL$mjmgxQAP;x5zQa7W{2r*OqD@zc0momZlQwtbsbgYq_wipJy8TRKnxf{W zLWX^U13Tb1R^^%ctx5xP`zY(`YY{2FzQ*jv=*~91pWmaLPQ2Ui?oEklD$4W;e0INO z+5C2eycu--l62MePK7yLNFA^0^aaP*g2HK$zM`(2d@9^trn7^P=iN0LYrgldi&vkp zLu=$hSW@%8i~!yk49ZmauCTiDjz(Y-(}Or&FPkPidd>Ww2TjAu)^D7?=`hsqPZheW zb6RWJuJ$_;+H!i65BjR00w#Ch9@gy?y4O(rQ92q?O{VR)5dAXBpcrk{&PcDAXz{&G z=3s5G_mm`VYP(k&h--a%QL(0#8!NxsxGj4YW_=`RSjFbPgtU^B;97!}?A}r0-|dJXGbN!>6%u}5)PExO&h2CVeZ7|*zEAC&{%oJI_5>7}cgmwY zekppfs!1oRWVwxzmQF3P92{9sgRbWgI1Fmc$Bg$?ue3rw#=~uee;GInD=dJje0v?9 z8BDg_7lY_?DrLc=^?uNYr_UdU_8Qa-a17=ZGC&)UHRBtIpm%@RM{Xce+T{Dpsq!C+ z7H}RWr8pIg2h)Xni+|??@u#K4nxQ}yr)oCd7SGAD5WW1{?>vm(+<)r{=GAqN@mBv( z0zXR1P>yisiW9+1?ALLlRemY7ua%s2!WSGa$J580_v$t*ixWYng z&>Qwm{QR$J33(qtqZV|&f{^8mu~Vn?dp;f5eaVKoC%O6=wVbc) z)xL3=(zt2IN3M$N0}ZWQRfgl-*%BpmkK&Iv#?31SY%D^PCIev)>K_!{oLkFplGSe4 zyS}WL{BOjWoMJnVf}+PO|950Skk(d`QV6=oL6?jrv`|4d0Y612pm^xfMFRE>%)T3w zJ(Wr2YyzU^>XXdH-{Q!g{iH&xuT-Z{wj1wu-_(61tINwz>OW+rv>w-&BSAc%swmLA~Of8Q_;?9wJ9Wfg2fH)zqvc3nP+s ze~{7KQt4DOT>c#wOZ$>xQz!7KsXhh=mzr~G748!rBnD&6;px;gUL=-G%mB3w!rw5 zjLe5k#mVT006UgTkq~M|r^}@K7-vxfJ^Hh`Ch#hju#6Wl( z??ID#7k|AS<)ZK>J)`}!wG0sy8(WvL%wKqyDpR$5$RTB^)KQmBhm64hVwBKHJP*0K zx%`PF$LH78{{M5lm8g-qDY@m&&f>=3sEBg>hL+Jnoi_U{taFBRJrn&S<`kAS<_v{iC#Hd92xX?CVao8x-tq4!k?4VH z{~Txa`q}ScEKK7JD|^*{vZGtQ*{dZjI=4Q)dV6_#s^VdqmE|Ij5i~8W(wRJjTO*lW zc|-6ilHwYc$9&PQTDW|1Um^O9^!oFVTXFd?QG-HmguvY}z3AxAxjO&%kydU@lL|hF zf;SB00B(!h{G6E&wVGYTSaVt3{@_3T^UtkA0>jbVXr3q}v%bE54qy^0#74i}hz4j{ zUE^xo8`c%Ur%c|DIVCrC35od2&-iOAErR@T+rQXmmH08axiGk&xY$6te>CxGVc6yA zS6E~0kM4|-S4;5*2i|IrZ)h{in{Vg3uWxVP@)16`TLb+Ady$}&5 zNK1_CJxd*Ck=5ol8hDOseR9X-`cqE79{V+pbji&G2%{^#y>5~P=_aEkJD1--(7f{syk({rPgBL39_I!fe zU&oe?769&ctI3PlXji@zaZ`(!yE&?<-Wy&tqI(yE3gnKY51z`^vzu6(+EPL;n>;~F zj>^xFZYQQIPBHO&4r9VA=#)G;j@dHS`F*~+_h%V0;`l6Ll{=uK=SD%!>~U%HWi~7A z!YxzT8YPXmOi=(NCgayD>vwKEw-=Qa&-l{kE)1U}+qj8EyX^iz2+1UfICojj;Rfkt zhzxf%rl|9-e=E2cE^;J${QZ=)9GHG~q*mwQzB7|QSGN~0I{4z`dpdDXd)!d9p{F0_ z94R~k(m(6?PoTMQE=W`9TnmT_`M zdnU_;Mv5hV^;bE1YD%pgJS)CZIwvpc^|)D&_5y}jb#j_?$N(|?pv6jeNWORH!*K#a zv1Kjy&e)n^iXc%VC(o>wSNvLX>1erCOl0*>uw+g4_Ewn=&f@C}s{nKQ>}rh)K?F2t zQy2l=sm1QBCO@b=_;%??_S*rSvB3`8 zDbMCkN-^}?q{9{uhWhpIYUs5rFpqd`Cn1<$W_>)Jum|XH3GHM?sYcZGYy-6my=#s8 zt#T1{fZFPRdhAyjeE*rSRm_@hN$n9a$`}C4VZcp$sg6_^T3XHLm{qD&(v+7CIzp-< zVh(uMmru*0j^cafE#kX38^<=|!q8@dBIy!St*V|KfX%#I#AS>r#MiV5Fxwp(GgtF& zXug4xX}BF$$_z#<2DY?L-zf2!;Q|C1iA}7GdOn|*mBYSo%k9^JTm9M`D zRO3VLop!z2u$h&00D9PpqWA*8{V6Rv)cw{P0Dc3UV~Z-wRW-4rg9+0^tc91{DmzC3 zAD@o7QSnaRyJcS~dJbAGXaD~e$B`_x0)y2@5u;io@|?~e)@}WrUjKH1R7j8LX#-1p z^F@RK+dFr3*~uq>#_M!YKElY(V_R*3f*PZp<%S}AQ$EGnFUfJgu4TS1^L3I5Bod3a zwKX{BOpG?)3T6TuV`Zi!Z1x{Rp9HPx>L^=dQ;2*mwVFOHn85Mb$-@fMmuUQsvHx~M zx+c0WMZoCf5ulU)$l^}RM16!2`(VC@1Z=6d32!*1){UAY%o&c~FAV=ct=KD~J*YE= zowU8C%iweHqyc9#df}>#fJJBF9~-1UPqUSle>0ss&r~bDfGkP4-s1je_UYxRU-pE1 zhZ03gCWz|_9XyHuYY5kK9t4~kSLw=71?6jr$+I8+Ie;&kTEDKm^zR8=K-PlOK*O$w z>WWNS?>_m`16m}jN{Uj&>nAWyYRi}llCd$Nb;G;MXP|#rLo{C%Ry7q|Rj(q50OybJ zry8HXG3#SGq(MrP^}I-8v?JF;D05@BuWaXl@qU%Wzda(4ueX%a8i}-}D9Me{hkwYp zC{46DoDxNv-KX+&J>Aei+Fe}7$z=Iak z0jr9qpGb~HwV+weYBwEnPul9~>kRqo#(9?n4YfFqhC+Ve!X(Qpy*hRok;CdG9D0rO zDW8VfRA=j5r*kj{e57@zS~Y%&Jw$xEH?f&Kj&HtfQx|=Tsc|6galdTXRWrsh9u5XW z5BUyV0V{nG4`&T=oVYzd`cme2o=LmZr=HF5sNB&H6U5}ZM>Fq*T|s+Ha<2KU5U@tx z`*p54z4fHT;Mhhln?u*c7;(}ua_)FYcU#nBkig47vo|44I>k9!usxN<>{8G9FKos4 z8B`Q|oZ3gu;S!lh=><8kcazg2I{YUwy7_nS^`xAZgwFeRnRMW99vHhG^_I$>uISD= zpRbh?l4L&EVw?0h<=ozS$oP}kVaI4mf`_7M1-I^A3z|4zH*8r*)8*T6@?lzr5UytA z`D4=NyyYHKrF(Z!L%Qc~_qd-fcsmYux^Q?zv}s?q?h5jrM*HpZLrEl?s-!Qtx{kE` zrdk*vjCQR^uD)-Hl_M=pmuRy;Z85>&i-o4v`2!$)wZ}fP1R^h*I9kUq&5ryLNO`^^ zT0>f`TZ`{c65q;WiD=wyB$tpl%Nnk>pU02GNHv>nMn^Nn{&Tnpk3u(&jWC0g6aJFA zr9R0VwRGo6h4=^FKQlIao12@l=j&u@GKcb{@82(;@}mwiAxHC$vWG-V(w1yj?3aD2 zbbq|{A$Y52xbGFXGo?KeKmqdB5H~63_jXz+CC^S}iOpG&vem9@eQo44sLe0Bm>SP( zA5b@G`+Dy6E~$<|WJ;q&EPHFE1;#b`R5k_D?_nMd|C%!+`BJJzJXZia$KUbR8O$;( zX&O8gt8OH5W|AXFm0hJ)v=Iv6IO&0CeFHX)huG@ zo0CB}6m4Ei5vw6G<<1~zUv5^fPLs_&`nt+Wu&+11*v744(4ncPtFnjjbFB+`9532n zi1yOypM)N6&UB-?#uK*ToR?V(kIlPAK7`YMkugF!2zSQ3(^Ikzt3f3Zn?IzPxipTU zO2X=^OFP7$2?i^E^}iaMZzs^u#}|i~@&fRsaH|LIEz^~zo_hNc#5wHwrX_gW3t|i|VhWEKjns7OmJ5GPRV3@$y!=#4;R zPG93m^Rx(df>4j-JB`srcNF_JU$d01BTT}M$1LI02!H9FZ&@R#jO^5@v)TAYuemUB zlHZ{yqc48Y1A3qcO0g2Nn|eZs%o#Pl97@A4b2iXYirxzXa8|?(WOw@MqAt1;fXT+F zNqKF;Imc%`&nf-S5+?a^Y$asVzQme@fj*gy8={8xkS8nJUpW-aj z$rTrg`(p-hjr#3HNTk%_&*`07Otqwg>`H6Q{C<#VA-0&`ei!=J)t+8|Lp}Jje*I#?<_DxfIi0V9R{92+jgSXzY+Y4Ao`^qj9 zJfr6V4VEk-51vEsF=v|r*GdZmM!=gTxd|Xu-A&{EE7S1k1wr8EU4FD(jo?3hS)K}9 zNQaRydycn>C{WQ3;P<)P6)Bs&(@$Q4QYFiRdV!I7rv^UrEdL&xIDvRqn)K3CZz{u2Y9cbDJ`L7ML$b z=i|n*^^2T<1r|$O+0GYK6FXk#H(s-B)~PU4?q5Dl_dnj0jLCg*zPiwmW>6E2B`wQE z8VFb}z=+%2^QWWQo8!p1R6;+RMB2Mc#E>ZmN&AdCI*I{zS1^x~BJ^e2W2FtInjcBM zTh`+xi-n@Tu+Ee#UHpWZSYvgx{}~3BvAixRi_4u-C2WcM|C(9qJKI)6=Zy|BM9!Xm zvTa(a_A@zMjf5S^j)t}&*U%>^y5~ou#tldL!D&#WVVy}ZkHoJK?fzHOc5_d3`l1Oy zN6y{Svo+ZHvGBN&&qCeYs5%t_h~=ikj!DA~LmvLSvy#{*NTT?x(Q1$`KOcIzVjAXi zn)!)*l)PpEK(rE^g=dy6HO^e-(Sa>q69ESE46J)VV60nx}Ej@QZOhng?Vl+}bgR$Bh0 zTD-HH!o@HC?I!n!`DIX)+V|-S<@Z3R&vL$jS@Vxy*{hdV$uD7G&P8rA| zGlJ-hwbX?<2YtyS*h*$Jw7qaKp$~9zT!CWU1!T&s4Z(eb?WD}rlHcu+iQvnQ0SFpxwDBu3H zY}yYhPM(R?5Xd(YxNiF`>7B<8Bboh;p=$U3RKcTc>X-G0qG*|O`0!8vD^lpi6FCZ* ziNglT{aqGE5{7|Wx8yf;G8v2ib}7tSMDj4{V7`Dx#F4O|=3nW3XmjWduu*O5{2EST z1pNp%{8~e(*$Ze2%==QOb(>Cvs~UgJ;0}^DSz(7;#^=Lm-|aFvO3k-QdMcOk`o0dT z|4%{Z)(^|XM4sZCr7d2!feWQSWveu3)$>-j4(G0f9Wiw;{%7`G2ZM^g2|8A&xZhq( zlR*pi=07Z?(_jDFFqnSk9nTW>&vf{a6AP_!*c$_bd-8fr{T;urlPPL1qJBqcSW}l4 zlw0FCLy-q1pXRg(2d|<%;yh{9O90Q{o_;Zu&6Iu9jm8pJq>z?=jq%~4$5&RG!U1C! zeeSF%&&rU|&0lkmwm4~FocjMp1Ti5;{w$D=@CYAddkTZWaK%AEK{_RRqpM|zs;zN6 zW#!MLk=qSE^{TxSx>RPP*(E=wM}-`pjDmw46^yYLkEN|8n&+XZIjq}_=G5U|xl}}Z)%YZpNTPl3+Llb^{-mx!JFjC?q=M+}lgAh(0gW+?H zlVnZ%tidTytrKU@mjh)@@PlP$uR-Hqu*796nBZ{X;n`Au{lT&;%zwPsL)sZlSjW&b z$)NjTgg%&|>k&VtVcGm-_e;MvYZ@-K?S>jdCHt7cmtTOP_#|T`vd$Q%Y+b7xWmzV% zY)pCOl61$;WOD)C!0Y`l-F#>)(Ff*l^oCbwVmmH16@#zhZOfTG+o5bKoH~OZC5^vK zm%w!9rt4Qt^?#f*TTMKV+ph8IUj2>Zg`G8-(e2f_uAa>r`@K8)vX<^m$lr2kgnAjn z&exb0TJpX_n*k$aXRYxwakBSe)z%x&|GKeq=YOJ!vPU|Sexr=sq}~#rmIH~P#+$;7 z|9xXs{$DrNy)2=;+hIV~y>mWS1Q0dOKx5RU`lXhN-zJ}j8wgf>iX8XmG!U~JQLHrJ z2Mhu7X{M#XyX<0)dcj{L?+WMkFRipG5 z#6_W@g4mKxH6Yv!KY+udjXnR7h&KzA08%jq91Rg+r2PgJ)=;9_%)vwe1q zoCyk>Pq}~KMsTq(0+>|j7kgw#h-=<_vpUo#N$fdI^FJo5ffoDA;DTWugCYDYZac^8C+XI&+P<_$ zbH?NXL`I}z{fb4!Jcn|g6mA<% z^HLpMy)D1vc{)vex{+Dxx3zU7?KHpF!AR;s_BWPU4+D>r@A3lpfycJg~$LtQ zBMGluRd4;?cK5CM(er017zQ}XEqjYA>2$Y8wC>xvJhh`g0lsA#{qUQH!poOQP|)3d-^IyO}_-@u}f>%qwwVD z5|8=D4KRrahLP%yh%LaT^VnyzC!WETFgBOXJu=lx4~PDKDC2veyKTn4U`q6$RMX_9wpf)L(tku;m}7AdSl#MTQTZ=GYB47Z=YNX`u&uKu z!Q9p2Z1;)S!k@e0^ss|E(ov)_VK;ZAt~XWWw8%Wy7pp5fZ1O-e$l#{p_cj{Ccc-Zy zwJ*tOjGPwOWpVkilMytd+p;gm{W! znnh~pxvus2{c0u~HO>NT-&+p#X;Y@ap2N-v`@!#sQb>e!N9f}RSSY#0k0z)AvFwQ^ zN{5>#K{oySoYF71+HGEe=Rv*>`n3Q~`4-MzUxEsLB#~DIK(Ve@SuI66Om}TLT|++r zayYAQAE)n0c(wpKJ2D$0=uXUZf|EbV4Ve1u3h7{>!kKi4H^6+-62+!nDs%6Jd#&?t zh+QT^do;V+>NE;QwzLzY?))%*jd#QAXFhSPcrXbF>J6!g2N6guDnxyesFIkrso|jE z94hb9cG1yO=b5JbhCid4Ah;_o*xu~q)+R{Yh&5Rvfm4x@<&?lgplG@vmPiij^Sr@s~=ynTv+Jlo3T1 zmd+n!8Tfm2SO=$nlaC*|rY+*Af>J--yeV6|`w`hMxzi)b1pB2%!ZOu$X`G#vB#-oO z^);Qzm3qfl81MM+H}~`zPc)q{H63Cl$-GBTQebC#N3yt|FylkFrT`6qQQsE%do6*w zjC8K0JB^VH&)wVx+?$RS_qYV4>KF4P{m+Lrz1i|7(!54GyP^rDg-wd4{Z|W`ozzty zDpS-M)AS^h(ma}cEFH0jqO(qX$SwCSYgr6dPyw=;EkPw;=IVFZE8M-MFQ0czgrVN z3oMxcaaz`ZoOk~NS#i&P@&7@r*iGsX7qC!D5S!Kj3V2M@LXg}n3|qecp^H(_%>?SJ zW<=_8BK$Z5!UXdc&zRkMICtUi!dKj;=@|YST5-=%qkB9cRHnkxYFx>Z)wOi8`iT}k z`38zlB#KSNYU|=rU|`_hPHO%wpU2Y+_ydv&9I-?!6ZQD;X0aj88b zt>oJ8rC75t-Dh_a%!zq+lz8NOKs|rTk7%|Mnvm9g!sUzWCz+zfF*0J5@ArCuK`6=* z?y#fqQOU@FPhLkjd?3_n3!susiT#~P2DrH6KWQhZGBm!pJQd*{LCfAG36^OF6dG+@EH9!q%Ay|4tF^u<9NRtTyTxle zPPugP2xrl+C+4^iMmx-|megpv)(6yua66jJwvP>OO3dM>M7hbc4EbU|b;W6-k~!Wy z!e@-=P5Mbo>s`WpDoz$DGSV&38bNqy4Nb0e-E|v9EN>`)<^=@s_YrWBKn|0vO>2aP zI`;4oPh8!R1ezIMG<;9d0}$d}z!#J%|HkvXK=m+VjG{^sUSnn*v4b_4K__8^@yBvbIe7IdUx>0d{De7L5`K*N9$@FVaDp z-&&g>Om4Qd^Qgz@V|G$iDnmzZn;VlyMT(#$w*_v~-=xl&XoZ}2$}hOlQ|%P7p*QrO zc;L59LJ)5BqD9>Pt9B4?HkCXPn}Puqzlq?>RAA1pA3l6gsX5CQ@;j1(Ei{N)wt$n6A#s{GC-k|J#QObLoFl7Y4{kboudAw1#l@PdZR(6{_K%eydF9d z_=P!-2w?r@NL=_;OOyLrBbK-{e?G$m#aHX5`46r#7%+LRM)4csihB+g`Ty+GcfWqI z%<)mnZMteriX*rHQNtn?nBUFgJ^M61j6X@S!aaeU=~uX}R2@j@w>4war(C6cQ)UTS z$0?wpT$U7x(NZu;9CGFcuG1)_te*}t-0b}A34Yaz3Za!~7JwEC9=*ir&-PVxa++!D z&@E8K+Q0`xg|rw7z_~bK7s&i-<-0v1rPP_EO(gK%087h(N`hEMLj!Pev9fxxQQkys zy2)>6C2m@4fo?l(duhd_l4^T6H8AiHHc;@jGhv^?mRUXj4wvusWaswFx_47Gl-csB zR@l@1_e;oj7>cQ1-Nn`$I7sc}WvNN-!87!Q2lw)!8Wj4L;Etw(uYzF>4xaEn*!dXj zyE)a;tZ9XOWD=2q-R7WHoCdy+&R9ihKgCSRW>{Hzda zGDWJh+0qc-*Y)(<^~A`GH*?Iu&qCx6dYo7W-Z3;)hgMtH^xHi$aO6(jNykKilNq>q zZZqOOi;%l>y+v#kJS`N%jnit=e&_x?KSC18+i%ggzwdnCy11`sSaM=qR%n7?#k(a3 zwN=u4g~J_D=s8{N1uM8N?=w}Uby zY57?AE*QYZ)+YaYR{o}a1{hgsKhS^*)-&MWn?7#wt}1qa#Q;n+;n_=HKrLqGQGFqZ z&H^`4mf4ms0U!@kLqVk8eEsDg)uG5%sQ0z@>5*P0*?8gl)RVEJ1Fp-qOEpa&S>5lv zwRk#F)7vD%T?e`Cu2dZyE3Upk@Q&I#SEzf(de0tkRCJ;tL-5Zx$-GMCu(C9k73Oy$ zMfR*3hDMyr5F5a8U#j*vV5m|#-z#M}Fp47X9V4;qA|2HX#SB= zVM~2mdQwhcSWa((ottf`_Rr)KsT`|!S3gZS?nP$`9~o3G3j-GqvQpUeUU!6jCj1W4 zqUY6CBSzTKf418gRrzLaJR&0E6OJY!iYF&xea4Fku9VcAaq;}&8-$VwYByltsYe&? z*9FP1OfH3TuP!TOCLm@S-Eb(%88y?EEH$ZW-!>d!QYtp$OB(hWL002bU`d^abIxU_ z@Cb9l@eB^UtB%q~qnE$S$p2$2%yyM2r*fx_$XtNbcmt)K71xS%!F5oRc5|2CJfdD< zKO1ai@Hx&p#=td6aU-$G0D4is?FZja^Y1cya6ncse*#%xvc6~8)iEib>{$uyYYnis zbWhut{(Q2W8&rI zm&Pq8-2VKNEEa~eKOLju3{RFy7`#(enS;0%kXSY!iYkBxT|=kaHs_}EQ6zp;x#g2?PygjPQ`p!b8-6*%k9vfL?@o*cZ??xh~q(>cxS%VUcChEkxyNkTe!3 zFo=WDTe@cgE51x0>(+*0TjTG7>~bmvH_0s?%n*ttFGRy7o^Ir9w=82$WOVT0r)Ey{ ztN64V*Q|feF`%SleCXOD4epo~cqJ8z9K5s*PbwM?qUou;30Q`JV)oy@quvCWK*g>w z>)}Z8w|WReJ*0oCOnPSwTe@rehG@!D?%8>tZ2V+gK)+R_9=ph2EMncOzT(m`i=M4U6?eR0^lMdLOW7O3^~>nq z-Esy4ySGvN@Z`S%_g%MU?_(CF4l)Y<@p>=e zRE$z5Sbn(N;8`(64Z^qc3ikG}uAZefXQlU0ZXTc4y27j5vyz6vAGz9QufRtklUAW+ z+00zrK3Fp@$Kmnqdk5I*KW^^;)2+jhH&Bt+7Rxo+LsUAN_+~~3 z|Kz$Rd)As&KR_vaJP@DetdoCdvZd_R+cyhmSEfDe#syRm<3_VaAVKx&+Yk}sIm@=_ z`VyO}YMarnW#;Y>66a9x(3j{ja?ouL7^YE2MOPPw~_Hl-u zbQfa1Z0g{?uasBysq-CX>P**wC%4L5AXrY~_Qw+?3pcCmpY>_KGNQy>Hq)EE-KMfR zxyOr=0MIixzyFEVxrz3vxE1LVye@kmWf~z-uTxyNO1@&g;h?u#)Kl@qyW6|IKd$>s zr@4aBc#K+~hrY|wsN7~Hf?+zAjf|Zr!z> zIsXnIa#6jaVoqp8Y16^=mFxG4ADi#P zpEauPg05@q^-EH-kh70F6&kQeEZ%;2@58^GY!t>@z#7`%i1gFX|P{!A-n+VNzn@s68X7H2!R@6aMGu^2y`TpstS1PaQp| z>BR?vj%I4v-*iL^Ps$N&_@q+i+4E@kOdG4>s2ogwZk(Z8mdz4ML-SM)rujz*(zm59sYIJ@xV9xf= zZF?B!dv>xV634rGfTT4g(^=o;rHWSLHa}V1-c3jH$7kbHO<}ST`+vye94F*Gr#!hZ__eJtXe{KbtMj+ zQ@r4MpMOb6MzzfkpHWGhqn1RNjr1iVWlx4;Jq*Ebi~#|p?{v3tepa0kt9|>u(Idg< zEyAkF>PtE1sfXaM5^6EV6Ddh7g%ZB#eojEeORbVC(iJ@nh?VMPshBuR4x_FZX*nrN z&aJmA5i3jEV@$Wh2miim zwsdXdAeP2`IMD;+2reOb0H4N;2D&ekf>G?Jap)!-Bz8sySa3csSX(i*Pm z2-hm>0{)=u`Tir%f<>`v!hdMlG&#)H*B7~Iapk{#kq%CNc|ATQ%bGXibxL3YB}~sV zKI-sNi_4zJgXwCxgZ7u%jK;?7FYX%T!`#Y$g48>0GR*#eN)w8aT0X1ZRrUTYo(_n7^;${~ZgR^e`qi#`}J+~iIOU-rngEPjki_-tP2 zYfvG8XT~N#~8% z%#v?93DVcvd5l_2NmRb4@KJt!Yb6`UWYSo)ydtOove8;0taVuv zJhbCi^jH+7vTO^GKI>`5gpG|;7jFkMzO;AM;x4ZQvXt38ypJG+h94>zlO%epbkkDn zJ~R-Lj+9-`!_K&@@bA?V zpja1*3$*sbL!W+DM`=!6=T7#zJt=aEk7RyLm~Gwrd~&HRP4O&3_Fq~6m9YQ}XuPM z5lq$jM$daZ?b{wTSPW`ZJ5A(;Th%~Cq(5opf&?Y`?Qk2 zOj!_TPEu1-fxb%BF)zZ2C8f--hlyi~_uBkkaSlRRk6LCP510|p5xu_#?uOHhu zSSj)Wb=|F@>1>1?3d47=snEBN5HD<_UUvWobvE#_>Hw7Uwk?e)WcB%ki08b7!?ey7 z4=MR~aUw{2k^W&@^SvFDt7cfA$0&L>LW*5(QOfaOY=?TzaPeck8Op|Re_Q|<&LLrKkrNIiA_s#_+ZOwPwX+~$*0UC zyixyU9-qD+UHU^pYpSPA5y}jvYRNBoXroIS(L;P;Igl z#KtXEvv?9nAvRzoa_(1#tvI@QM_maYYz!D?alk3p!GE{9Lr1DAtJDKb>PtOGeN|h! zc?fnG`WW(m+B?svCbPERJ0sW-l%j|N3KAe7AfZSThM_0aP$X25AT=~06e%hogla-U z2}MPM^pXHd9}z){U_$RwqyL#GJ?5!Q>N*hW!{)o_ybNKv^fz__`_>3)d*V1L~g4 zJG0RGr#uW3!Pnk;fnmcALbse$l41MJRA2EcNk&QR9HC#R;H9ySC;~vVRSdp3WsG3B z)bDQI;66&*OGf+n7!DVj*X4T*ch)}-!A6B68*dch+lFi;j|S*A2?vXcy@A)8?WQD~ z2Mw7*=VKSSwe5u}vggJ_+MVaf8z55&Q@$tXBj>NN@ zyTa9n6u3F4@4Ttcr}HA(wO+d|gx)76b|cpW?Yq3KbV(NV#QF0*!CTMxw!}6kjW)EF zLUVWc0Gi|0VQ1&TQTLyRC!jGkjKq>i^Jh;nx87WQ#gDr`w9dX0mN}X2LX>v^Lj+QQ!x~Ptg_=Sx?!A^y~Z-BNk z3c#tLf-3=>$|)C_b36Xx?b39iGv5nM7Ie-8z0tQe`~;rA*iNscS|I)d`~BktW$}DD zVRS@Qd0$=WslI_QRhJnXtHOUXB#)nMUL8}?qn%lcU$`2qS!sm}WgjGTt{94gHw3x| zX*hic0Kwv7AevNS=-yj6NXaqC(0_NDg{2tLP^@shN9E&7X;qESL#kc)<$GoE74WQ0Eif`st%)FZw+YKTlAQd!*?TaFt+f zP8V-8o~-oKZ=IzdpZj;c3z5@nh=aeIfsa8ZmIhNsIZdg($3aIE%Pg5)@Hk0WTy)`k zpZbRa7m@I-CRgZHD|ny|IL$-?v$YFzh(>+?D>L6QWQ4zS-{K2JH{TQLGP1dNu zG}5IlHXqaznIA^#A%gvUvJ>r+jU9Es(%!~MCe)HZzcbOYTvBi^C5x@ZqX*q|r~TPA zDC>bpAjejSjs!w}b*&@BnBZ%m)Ypv7ZPX0ZI??^m;6Aik;xav27-9L>K%z-397r~` zpX)EQRg{w+=-n(OeXx|>I#WJSly4S%^r)5S&>zdLP|TG>9JsF63q^BRS9hPt+j_J| z6>pff{Q9S{W8e5%&Ai$H+7>Ho`(`W?EA={Z?F`pUfFPj{Hon6f$WvH1@|t_PHvTmQ ziDO2abF$QhPHAW#_LP38R2ss^pnK>i4xu(b8%l@GOaa$cgILXp)TEnloe)g3*@-AskUMquuR-u^1{izBI!?TB&q5uQKrWRPAaM@-EPZ>NfOeBna zvB#zI^d$E+>p$MM18su2Iz{L$eZe7()SC{rHDMGWM|;)uF>(V}=Nn$Xl&G#GiN&3^ z0fSPvVKmK~8E=P>v(PU9Q>!GR4+cN^Y+6zmuRJ2lYN!)3uC0v4Ob8sOtC<)doQ6jg z_wo>+79u;?f-IzN_IjbT`}+iWWAetEj+!N{ic~fso6wFF(j0voQq+}KST=>hD*%r;&y^tE70Xs^nYkRP6*z*wBtS5Q+Ur|f+GzFjLz9SAjBTPJ z-{*zmTXMY*5#>ZV)P61J^z@#1OX(`B>!fOzs4qx9{=;7|6DA)S*(iUDlH-xm- zL^~qLlE#xldY4u2Bs!S_XRCY;J5iFPwUKawb;T?OnUATw(J+;%m>{?P6|GsgG`AG| zl{!w<9&lu2|66?{;2pqQaY4ggS+WyXaT?OeCSRfkDN&nk>H}WL@pfRs&xZN0+C;AL z0}Gk&yixa|9V=IoidIo|FV&wns0$W(4im$leM=$zMSt?&l8kFMS^@wHd^*wgi+4D6 z(+e<)nzOdQ(|OExb)YYaaYbE`-En?(bv?U6>rHRP$;3D*MAe(aDC0L}YhZI)yh`xP zwG~K~RqBo(K)1PxP`=xW&$$KNES?wklg8P};l@>QR)yPe{~`iaTWP4t#nD9D=DAo#Y(w^VKLpGwk|#>j4vZpnOTx~1k25GiKd%Q=%sU2_Fz+!4?uPRJ z&eqy}r6FGE!+!8@C-djZZ4wY^eyuZ(Ef-W|nyPdyK4_|T)f5;;f zK7LO=_{!JYs9d~Hxf@D+X>qA;|JDtgz_E89ZWY{ExHbNDEn6px8PFTW50c^~eoR59 zodI=#6OYg-$fpz_HJJQwsloppG7EYyOO8|hzJON_IsrG>7rIb!A|b&19{J0wuPcyt zt8&T~Bgy%dUVq~ibdusO{b&|~8{(%m0lE0wd63K1p`v6xeLl+FPZINf+M>c)p4ZMI z;%3VWhV?*P%K|XL&NekDE<~*9`+-U2MY;Q5F7)!no;Z8gP#>aZyEF3qvG3E^^gGl| zcX%GM)0oaBwo^O9wd`8sb046eLER2O1>s>g{SCmuA2h`Y(6TRT#-fY+)|L9y4$)CG%+QNjtSBhoGa)t){(Mn440kt@L$Xm>fy3or>!MUI7;pu-zllyC-%Db zmzPOZyreaq9IZQAq@}xb^vC>gVRC0Vt)WKtKUNcfhG&Yt3$|U`OwKVT^X|L9J z1!Q{3*K*p`0qcnDfRxjgA29(u%_U#swPqe=BN9izxN`CEuEq@`q~MV3&wSmA6F|U6 zA8@Svu;|PJq}H}L=6ird2M+n~Iz&XehSH%9kvnMsXfoYlFrPZl2H+=!|KlK~7;Ckh zDaTdpoHoi-O+@?pu=GAQ|2t{fe&a5qqYLIDD53{4{7e)^=$XqWmkiKb0RO(k=GA5gyTQ%vzrt`C z=Eoi%yBzSH3J`h>Iy zJ2!i>B+u-TtV254K#3&;pJ&!pU;7uj$u4Fky~4M~vwUlA0~Neb6k4%e@a3nzl|UWW z>~-DsCl`mWN?K=&f~KNUelHIe#3bW4Z+65bE_cZ~4ajn4Owi@G{EPH;>)_8KyZ6!A zubkx?-i^v&75Oa+oKw7*lJ#6dvUM?|UeX;NA~dWnuc2v@`{K-!)!%yoov~~&0Xi)R zk9fF@?nm#dmzCz>V;)CL0?Desg zPd{`#OL>r4U*zhaQuXhq8QlGO)uZ9J?mYiMGg`S_%RV~Vyl!VQ-BpdQolqttz2)Und!Bn&e_2}sGAZ)vzgseU+>6}vd&11yc^)t0$Dr!KHTh) z=JsxuNSU2SpRLWYt4+f0`-6rP#F@hmcwK?JMzOsO?0^<3GZ#gg{o>->s@S39pKbaC zkh8I_q=iM>e1R;Oe@5oSJqGLP#Bg2S`g~OgVsc$dbLdNVl%B+avnA_5oG3v~-WR$F2k-zXG>!>QsiZ;Av)bkax*P z_B7$}Q-VqWG2Gp=4xzhhf3Im>jl%J;-R=^xwVYtV*|@+!j*ql`Cw4XdxMYjkOf&7t zJwE=6kKOk9-YQ9;QY&G}a>!biKD4_POPzE;rL+ikB)@V#iKj0@?aR17D;)S(CT#Ei zS9_XGy3F$1lGA8VfH_Bd0H;MB-%u6I$Pb%zV~T zoAjEH&42Z%F^a%SX}Y@?v8g8%jj4JMpdf0hQh;-mf04M2ie(+J;qWi{4jQYFwfHaf zj(U<&GI#}#BVjHej(07^UzSa9-8DeFn&6mZEf=aY+A5IhPtIL#)YKh{PESC;@xz}! zbK9VN&Nm3L&O`W?(}vfW@tLZqp1(l|#t{%LugRN;@@3S}O_Mf|^##rQFZqi_=s+UP zn&OU1WS;HF4Bk2UlKb`gA8*>MyPr?@XU7AFv0XWXz~^c(ua?RiGKmGIWyjt4B@M-N zr2y|LI21)fCOrB+Ub->`A$-owXwAid&W&)kUY7uN1jLJbt<(WZa;x0YP%uRw2;VLX ze3FMT+O&9PeQ2gJ0O&$vSwFsPQ)rJ(dKg3m{Ue-Ivz<-~gyi`MbjmuMtC^LDWk0=b z-}Y|g&*In-S5PhxtyimX$*EH@R$)q7vB;?MBLbMbBt8A-sgwL`r_Fd#QX!hVN@#u* zr=8TTOmGlp4KoGpI_1G{joJk9qZr+xMfhxIUX0M$*@7Vu^ z`ihgmk0C}%wB|0^H#^s!uz_C@$Oyca+_n&%bj`v_Ac^=so8JTy+QF)I*>?`BC(uoM zw`)n7R+xG(Dr?)k#ke9ncR`yYUE{94M zbxs3&i@%MR4GJfXJ9(!*9ZV6rxEYqk-Kg<^o;soVY+fM<#fjodXBf6FKsj{pQEsj} zQS2i?jrP3MyKnS03Z<>jIh}LdS4f-n@@Fhd+ho}oOnqCF@20|XwWwEvzRt3FV>B_q z8r98Eobf=T(fbpYJQe?c4}O1%3# zmG^wJAE8h>%qfkO#wu_LHQZ&a@G5cS#z{t@8zcSVxNjCqn;s2$joXxAi7h>iDhs_- zxf&1o)reUGJ)}#81H*HVFzD)Oi+j>bvnLP>x)ITVewO2%Krg_<5|!Yg^&1U4%o2)I zi`GWaXrS4_#*69z;q>=@E6L9b>BMw;pYK7F5(?^cj zm;lUhwbF4t?@4x1yJWyOR_{~r>c(Ag+FyabcshVwasP>2(R(_SX4Rdmm^4D{mWFn% zd)o~XM*D1^w6~f!z6W+a4r8BZDgUy7gV=w7S0tIQOab=Df9l=^pO`JY+xe83%1?(Y zKv-hGH|qpW?r(y)d|_u;K|a-(?37loX_s34Zvd8i)EQ-7Apb9%EW$Cy#ORg8^Eo@t z68VLv4cS^72>f$_G>x>Nat-C7DiGjvsUY46Q~#6QntVS}!}5H;OV+1ir!z032ZhQ0 z~<=~y{nn;}p>t_oTis{vrO!05^LElTrKu<+#Ki|^6rPlClj`}~~Lckye@a5#z za5!wAUjf=GaK_sQFlv)p7r}5%j>`IWC;IE#W#kB8$6Am3b%IcM!fmCQO6lNAluJci zcAQiJ*{&#wDwq6W!cEM9a~^UV08h7NR1-2L56R6H*q8c?bH56aF4pf>Yw$#5M?!bzYZCE45jp}0?fle*I z{WK`DJ}-AWEqdU_xtOXtMDUTY6wW$cWtUexgvEh0vNw^f3YUv7XG%Amp&?#oq_VhV z#dKEPo~ZpMozETk>5XH0P_@DcY1X>XjbtJ~2=_}Ah!g6W*DFDH&q=!2CrOWvjsj;> zfRW$|^489qwZ5&%JqjvAfPYKK8lIwXEG;!|a>{YLSkL0l8T&Q;j0w?i)kcHUSxfNCRD1sTrL9Ec`jZd517sT z%VTV6EDdM+xmc=*@`X;XCe*4vj>o&7VV+dNgI1|^1h=$)2l|{LW z6ce4tjNj(Faq>cK4xpzdG9Ch>cQ5&Fgubvb$W$;J-)>~0_j$-2EZ%cEZ5SD{y`ptq z%*q6MTm)>}9&bidHXa(2R8A-5^%isWo|F!ZT}{N|tHR#^ZkJCN0GUmq<6IE2Vq+#9 zbe9Fo-3jP&l-I6^tSSVxD^%Se136udrWV@v=56nN!l*3$+RD-DSBL`79n7GLq(m0t zkW<=275rh$vD)Xrpv|u!9Kk^23sv@ISIqyQ%TX*G`a^bo4GCPjky9D(mm4w;d(RdX zWbuc(Nyz1{k}Sx(>2GP`>s$t{%}>7hXAoG1uSR`t;rh&u=ZKMQ@T(1L2~zU=$tHB1 zF3cW6Cq+%#96z@Mdp_b6d3zXGpIZ})&DaZK)oXnk*;@M+{;)Ysuh?a2RfJUmCF|4C zkj-M}O+5leYBwkAwJ5#*yHl+2AdCNE2J)D8u=vmb7__#S46lF_WnBB-z|K4?v)iba zVIshxj5r0iK;0QJsz1>F7`IwJot#1OxpHVO_ZwX~ zq0H>fnrs>637A$h%y+BZ2H}@7?V8t|1I`V0SL|Vlmr4ExAF@W5jZRIvjfsw^!0Z8< z!uch@K`W@_xjQy=8|9R1_92v3dw0ggHw~Z|SCyI-2(Ilf7}ED5IByyjL1!gC_dAlF zV9?or$7C!jU$x7Vo$>m6sntQLN*S_cgo~};{oC>l#Sr#VHePC`@OOi zkOvT$YU&)!4-Z)uiL#x@DefKrVyj7DgMMy98+=Q|Eb%sfupKXh6FiABs(O*gCdc^D<{N zis3mLoGO}VVOn`P65F?sL;q-4XC{-B9BYI0u_R0|n?(xjj@F$0{^`5gevHlA2sz8O zDXMtjXkqr_Fz!w5+KJ`Repupr>Ds8WiaX|ATre>4Dg!H=7ZP;Rd@vM%c%1zS% zh?$PLC1yReeD)nJJkX)@V^f(SRQh};PLp8e;o%V)+5jP*01BhRSm3Ky+1qzty|OMz zB9#fdPwPw}eR{&Np^y%US{0%y7UArnt#=PNIzl?XgR;JBAEAV<3W+qXh;bY+@%&wf zrgCYh{d6$8&cth^?ZO`2aG}uFL2R+?_o9Vuh=mRrM8FE9%m;{RQcW?9UQWG%rlss4 z?4?V0H*f#mVlke_d^w@+lDeWzP6z?dGFmWh`X(sdUO6+6B066xu)Sml!q!L-M-->O zWB>;%SB9$E+w0K4ww&^NHt6Tmr0e=%3SDKO_n>YJ9o#4CNph=N$Z@s54K zJ2>|lcGZ@x;HB+9U;B1cSSB69%dG&oRg4Ezc2YU6tU0fsQ3<_v^wM#wG0pmiy$9BQ zmrwh3;Kt;fWE~wZC|b)m+b5m6`ti=epaC(%cEX74u%OcM<@x84utBG_*zrIfB<|ol zcsrdeH?%yu|NNoF3;nkVVb(Po&gb3x$Fyr74&5ext$6LX>iCT4dfZiQ!U9WtdJ=VE z=@HSkyr;=Egsv?sw8g`==X1+>*|tI<8r(f|{C)7+X%BE(EP~c#AnD^UoZGuJqG+!Q z=tC*k1D=cw2i6r?oE@wZDwL2Yj_LFUrCyOJOI>ehRayAJQ&-0{)A^zj(cl#f=m;{9 zIw}U>4ZKN5x7Jh+yV6+_lUOpt5+7cHXhkQQ(Jv~dB3ab!V@28kpcP<0Sl`$HD@t%Z zNWza^Fue{e!V|Vvj&TTB<Fu_Y^QVk+u3@Y?RSQz>n5P+J`3X;d#rCapm{JZPy<|{ek)KKOa3f@#~NNd?$Xr zr@t<#A6LS!Z`7{|vo&1;({vW@aem$Vr9tX;S>u1Af3~oM92`3A`2MUEh zo&X>JgDZz6hw5Po@#wJ5U_by*JV6GEi?c}Jc5&s`6aW8vdss-WCP$7irRk`vn*6#z zetj)|O$NW_%3pVgU-!jd)xfV}>HkWJ$YTDh!2DHz|5|nYpRTolEaH)agS}{}b>P9V e!!rHok$E=3+N1UEs=!Z<=xFGx7yo(t(f Date: Tue, 14 Jul 2026 17:02:14 +1000 Subject: [PATCH 02/22] Fix failing Banner tests. --- assets/js/components/Banner/CTAButton.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/js/components/Banner/CTAButton.js b/assets/js/components/Banner/CTAButton.js index 5473021fdaa..a0e9c7d34f3 100644 --- a/assets/js/components/Banner/CTAButton.js +++ b/assets/js/components/Banner/CTAButton.js @@ -47,7 +47,7 @@ export default function CTAButton( { return ( Date: Wed, 15 Jul 2026 04:31:33 +1000 Subject: [PATCH 03/22] Improve CTA button loading behaviour. --- ...aderRevenueManagerSetupCTABannerWidget.tsx | 35 ++++++++----------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/assets/js/modules/reader-revenue-manager/components/dashboard/ReaderRevenueManagerSetupCTABannerWidget.tsx b/assets/js/modules/reader-revenue-manager/components/dashboard/ReaderRevenueManagerSetupCTABannerWidget.tsx index abbe5040d3c..ccb30562264 100644 --- a/assets/js/modules/reader-revenue-manager/components/dashboard/ReaderRevenueManagerSetupCTABannerWidget.tsx +++ b/assets/js/modules/reader-revenue-manager/components/dashboard/ReaderRevenueManagerSetupCTABannerWidget.tsx @@ -19,7 +19,7 @@ /** * WordPress dependencies */ -import { Fragment } from '@wordpress/element'; +import { Fragment, useState } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; import { addQueryArgs } from '@wordpress/url'; @@ -50,6 +50,8 @@ export default function ReaderRevenueManagerSetupCTABannerWidget( { Widget, WidgetNull, }: WidgetComponentProps ) { + const [ isInProgress, setIsInProgress ] = useState( false ); + const { activateModule } = useDispatch( CORE_MODULES ); const { navigateTo } = useDispatch( CORE_LOCATION ); const { dismissPrompt } = useDispatch( CORE_USER ); @@ -69,14 +71,12 @@ export default function ReaderRevenueManagerSetupCTABannerWidget( { [] ); - const isFetchingSetModuleActivation = useSelect( - ( select: Select ) => - select( CORE_MODULES ).isFetchingSetModuleActivation( - MODULE_SLUG_READER_REVENUE_MANAGER, - true - ), - [] - ); + const isFetchingSetModuleActivation = useSelect( ( select: Select ) => { + return select( CORE_MODULES ).isFetchingSetModuleActivation( + MODULE_SLUG_READER_REVENUE_MANAGER, + true + ); + }, [] ); const isModuleConnected = useSelect( ( select: Select ) => @@ -86,13 +86,6 @@ export default function ReaderRevenueManagerSetupCTABannerWidget( { [] ); - const isNavigatingToDocumentationLinkURL = useSelect( - ( select: Select ) => - documentationLinkURL && - select( CORE_LOCATION ).isNavigatingTo( documentationLinkURL ), - [] - ); - const isPromptDismissed = useSelect( ( select: Select ) => select( CORE_USER ).isPromptDismissed( @@ -103,10 +96,8 @@ export default function ReaderRevenueManagerSetupCTABannerWidget( { const viewOnlyDashboard = useViewOnly(); - const isBusy = isFetchingSetModuleActivation || isDismissingPrompt; - - const isInProgress = - isFetchingSetModuleActivation || isNavigatingToDocumentationLinkURL; + const isBusy = + isDismissingPrompt || isFetchingSetModuleActivation || isInProgress; const shouldShowWidget = isModuleConnected === false && @@ -114,11 +105,15 @@ export default function ReaderRevenueManagerSetupCTABannerWidget( { viewOnlyDashboard === false; async function handleCTAClick() { + setIsInProgress( true ); + const { error, response } = await activateModule( MODULE_SLUG_READER_REVENUE_MANAGER ); if ( error ) { + setIsInProgress( false ); + setInternalServerError( { id: `${ MODULE_SLUG_READER_REVENUE_MANAGER }-setup-error`, description: error.message, From a8dde5a51dbdb97887cfd5d31abbdfdd53c8b142 Mon Sep 17 00:00:00 2001 From: nfmohit Date: Sun, 19 Jul 2026 07:24:51 +0200 Subject: [PATCH 04/22] Enhance module activation by adding support for `redirectQueryArgs`. --- .../modules/create-info-store.js | 8 ++- .../modules/create-info-store.test.js | 63 +++++++++++++++++++ .../modules/datastore/modules.js | 15 +++-- .../modules/datastore/modules.test.js | 42 +++++++++++++ assets/js/googlesitekit/modules/index.js | 7 ++- assets/js/hooks/useActivateModuleCallback.js | 6 +- .../hooks/useActivateModuleCallback.test.js | 32 ++++++++++ 7 files changed, 160 insertions(+), 13 deletions(-) diff --git a/assets/js/googlesitekit/modules/create-info-store.js b/assets/js/googlesitekit/modules/create-info-store.js index 35f54863c8c..90c8c730d2c 100644 --- a/assets/js/googlesitekit/modules/create-info-store.js +++ b/assets/js/googlesitekit/modules/create-info-store.js @@ -112,14 +112,15 @@ export function createInfoStore( * * @since 1.10.0 * - * @param {Object} options Options object. - * @param {boolean} options.reAuth The module activation status. Default is true. + * @param {Object} options Options object. + * @param {boolean} options.reAuth The module activation status. Default is true. + * @param {Object} [options.redirectQueryArgs] Optional. Additional query arguments to add to the redirect URL. * @return {(string|undefined)} The admin reauthentication URL, or * undefined if not loaded yet. */ getAdminReauthURL: createRegistrySelector( ( select ) => - ( state, { reAuth = true } = {} ) => { + ( state, { reAuth = true, redirectQueryArgs = {} } = {} ) => { const needsReauthentication = select( CORE_USER ).needsReauthentication(); if ( needsReauthentication === undefined ) { @@ -137,6 +138,7 @@ export function createInfoStore( slug, reAuth, ...noSetupQueryArgs, + ...redirectQueryArgs, } ); if ( redirectURL === undefined ) { return undefined; diff --git a/assets/js/googlesitekit/modules/create-info-store.test.js b/assets/js/googlesitekit/modules/create-info-store.test.js index 8788f59b3ff..fdd88c7a7e5 100644 --- a/assets/js/googlesitekit/modules/create-info-store.test.js +++ b/assets/js/googlesitekit/modules/create-info-store.test.js @@ -259,6 +259,69 @@ describe( 'createInfoStore store', () => { status: 'true', } ); } ); + + it( 'adds redirectQueryArgs to the adminReauthURL', () => { + registry.dispatch( CORE_SITE ).receiveSiteInfo( { + adminURL: 'http://example.com/wp-admin/', + } ); + registry.dispatch( CORE_USER ).receiveGetAuthentication( { + needsReauthentication: false, + } ); + const { STORE_NAME, ...store } = createInfoStore( MODULE_SLUG, { + storeName: TEST_STORE_NAME, + } ); + registry.registerStore( STORE_NAME, store ); + + const adminReauthURL = registry + .select( STORE_NAME ) + .getAdminReauthURL( { + redirectQueryArgs: { + foo: 'bar', + }, + } ); + + expect( adminReauthURL ).toMatchQueryParameters( { + page: 'googlesitekit-dashboard', + slug: MODULE_SLUG, + reAuth: 'true', + foo: 'bar', + } ); + } ); + + it( 'adds redirectQueryArgs to the OAuth redirect when needsReauthentication is true', () => { + const connectURLBase = 'http://example.com/wp-admin/index.php'; + const connectURL = addQueryArgs( connectURLBase, { + action: 'googlesitekit_connect', + nonce: 'abc123', + } ); + registry.dispatch( CORE_SITE ).receiveSiteInfo( { + adminURL: 'http://example.com/wp-admin/', + } ); + registry.dispatch( CORE_USER ).receiveGetAuthentication( { + needsReauthentication: true, + } ); + registry.dispatch( CORE_USER ).receiveConnectURL( connectURL ); + + const { STORE_NAME, ...store } = createInfoStore( MODULE_SLUG, { + storeName: TEST_STORE_NAME, + } ); + registry.registerStore( STORE_NAME, store ); + + const adminReauthURL = registry + .select( STORE_NAME ) + .getAdminReauthURL( { + redirectQueryArgs: { + foo: 'bar', + }, + } ); + + expect( adminReauthURL ).toMatchQueryParameters( { + action: 'googlesitekit_connect', + nonce: 'abc123', + redirect: `http://example.com/wp-admin/admin.php?page=googlesitekit-dashboard&slug=${ MODULE_SLUG }&reAuth=true&foo=bar`, + status: 'true', + } ); + } ); } ); } ); } ); diff --git a/assets/js/googlesitekit/modules/datastore/modules.js b/assets/js/googlesitekit/modules/datastore/modules.js index 62b40f218c5..87a927bb1c5 100644 --- a/assets/js/googlesitekit/modules/datastore/modules.js +++ b/assets/js/googlesitekit/modules/datastore/modules.js @@ -238,12 +238,15 @@ const baseActions = { * * @since 1.8.0 * - * @param {string} slug Slug of the module to activate. + * @param {string} slug Slug of the module to activate. + * @param {Object} [options] Optional. Activation options with `redirectQueryArgs`. * @return {Object} Object with `{response, error}`. On success, `response.moduleReauthURL` * is set to redirect the user to the corresponding module setup or OAuth * consent screen. */ - *activateModule( slug ) { + *activateModule( slug, options = {} ) { + const { redirectQueryArgs = {} } = options; + const { response, error } = yield baseActions.setModuleActivation( { slug, active: true, @@ -251,7 +254,7 @@ const baseActions = { if ( response?.success === true ) { const moduleReauthURL = yield { - payload: { slug }, + payload: { slug, redirectQueryArgs }, type: SELECT_MODULE_REAUTH_URL, }; return { @@ -617,7 +620,7 @@ export const baseControls = { [ SELECT_MODULE_REAUTH_URL ]: createRegistryControl( ( { select, resolveSelect } ) => async ( { payload } ) => { - const { slug } = payload; + const { slug, redirectQueryArgs = {} } = payload; // Ensure the module is loaded before selecting the store name. await resolveSelect( CORE_MODULES ).getModule( slug ); @@ -630,7 +633,9 @@ export const baseControls = { } if ( select( storeName )?.getAdminReauthURL ) { - return await resolveSelect( storeName ).getAdminReauthURL(); + return await resolveSelect( storeName ).getAdminReauthURL( { + redirectQueryArgs, + } ); } return select( CORE_SITE ).getAdminURL( 'googlesitekit-dashboard' diff --git a/assets/js/googlesitekit/modules/datastore/modules.test.js b/assets/js/googlesitekit/modules/datastore/modules.test.js index ce68a3e6106..fad9dc33f9e 100644 --- a/assets/js/googlesitekit/modules/datastore/modules.test.js +++ b/assets/js/googlesitekit/modules/datastore/modules.test.js @@ -260,6 +260,48 @@ describe( 'core/modules modules', () => { ).toBe( true ); } ); + it( 'includes redirectQueryArgs in the moduleReauthURL', async () => { + provideUserAuthentication( registry ); + provideModuleRegistrations( registry ); + provideSiteInfo( registry ); + fetchMock.postOnce( + new RegExp( + '^/google-site-kit/v1/core/modules/data/activation' + ), + { body: { success: true } } + ); + fetchMock.getOnce( + new RegExp( + '^/google-site-kit/v1/core/user/data/authentication' + ), + { + body: { + authenticated: true, + needsReauthentication: false, + }, + } + ); + fetchMock.get( + new RegExp( '^/google-site-kit/v1/core/modules/data/list' ), + { body: withActive( MODULE_SLUG_ANALYTICS_4 ) } + ); + + const { response } = await registry + .dispatch( CORE_MODULES ) + .activateModule( MODULE_SLUG_ANALYTICS_4, { + redirectQueryArgs: { + foo: 'bar', + }, + } ); + + expect( response.moduleReauthURL ).toMatchQueryParameters( { + page: 'googlesitekit-dashboard', + slug: MODULE_SLUG_ANALYTICS_4, + reAuth: 'true', + foo: 'bar', + } ); + } ); + it( 'does not update status if the API encountered a failure', async () => { // In our fixtures, tag manager is off by default. const slug = MODULE_SLUG_TAGMANAGER; diff --git a/assets/js/googlesitekit/modules/index.js b/assets/js/googlesitekit/modules/index.js index 2f4b86cdb88..0c39f81981f 100644 --- a/assets/js/googlesitekit/modules/index.js +++ b/assets/js/googlesitekit/modules/index.js @@ -45,11 +45,12 @@ export function createModules( { dispatch } ) { * * @since 1.8.0 * - * @param {string} slug Slug of the module to activate. + * @param {string} slug Slug of the module to activate. + * @param {Object} [options] Optional. Activation options with `redirectQueryArgs`. * @return {Promise} The dispatched action. */ - activateModule: ( slug ) => { - return dispatch( CORE_MODULES ).activateModule( slug ); + activateModule: ( slug, options = {} ) => { + return dispatch( CORE_MODULES ).activateModule( slug, options ); }, /** * Deactivates a module on the server. diff --git a/assets/js/hooks/useActivateModuleCallback.js b/assets/js/hooks/useActivateModuleCallback.js index 230045f5f85..2bfee59940e 100644 --- a/assets/js/hooks/useActivateModuleCallback.js +++ b/assets/js/hooks/useActivateModuleCallback.js @@ -43,9 +43,10 @@ import useViewContext from './useViewContext'; * @since 1.70.0 * * @param {string} moduleSlug Module slug. + * @param {Object} [options] Optional. Activation options with `redirectQueryArgs`. * @return {Function|null} Callback to activate module, null if the module doesn't exist or the user can't manage options. */ -export default function useActivateModuleCallback( moduleSlug ) { +export default function useActivateModuleCallback( moduleSlug, options = {} ) { const viewContext = useViewContext(); const module = useSelect( ( select ) => select( CORE_MODULES ).getModule( moduleSlug ) @@ -59,7 +60,7 @@ export default function useActivateModuleCallback( moduleSlug ) { const { setInternalServerError } = useDispatch( CORE_SITE ); const activateModuleCallback = useCallback( async () => { - const { error, response } = await activateModule( moduleSlug ); + const { error, response } = await activateModule( moduleSlug, options ); if ( ! error ) { await trackEvent( @@ -80,6 +81,7 @@ export default function useActivateModuleCallback( moduleSlug ) { }, [ activateModule, moduleSlug, + options, navigateTo, setInternalServerError, viewContext, diff --git a/assets/js/hooks/useActivateModuleCallback.test.js b/assets/js/hooks/useActivateModuleCallback.test.js index cb9aabb87fa..f22e4c159c2 100644 --- a/assets/js/hooks/useActivateModuleCallback.test.js +++ b/assets/js/hooks/useActivateModuleCallback.test.js @@ -127,6 +127,38 @@ describe( 'useActivateModuleCallback', () => { expect( global.location.assign ).toHaveBeenCalledWith( reauthURL ); } ); + it( 'should navigate to the module reauthentication URL with redirectQueryArgs when provided', async () => { + const { result } = renderHook( + () => + useActivateModuleCallback( MODULE_SLUG_ANALYTICS_4, { + redirectQueryArgs: { + foo: 'bar', + }, + } ), + { registry } + ); + + fetchMock.postOnce( + RegExp( 'google-site-kit/v1/core/modules/data/activation' ), + { body: { success: true } } + ); + fetchMock.getOnce( + RegExp( '^/google-site-kit/v1/core/user/data/authentication' ), + { body: { needsReauthentication: false } } + ); + + await result.current(); + + const reauthURL = registry + .select( MODULES_ANALYTICS_4 ) + .getAdminReauthURL( { + redirectQueryArgs: { + foo: 'bar', + }, + } ); + expect( global.location.assign ).toHaveBeenCalledWith( reauthURL ); + } ); + it( 'should set an item in storage before navigating to the module reauthentication URL', async () => { const { result } = renderHook( () => useActivateModuleCallback( MODULE_SLUG_ANALYTICS_4 ), From 81f1ff369565860ed13e46dc427e9cc579d099a2 Mon Sep 17 00:00:00 2001 From: Jacob Peattie <4100733+JakePT@users.noreply.github.com> Date: Tue, 21 Jul 2026 00:26:11 +1000 Subject: [PATCH 05/22] Apply suggestion from @nfmohit Co-authored-by: Nahid F Mohit --- .../reader-revenue-manager/_googlesitekit-rrm-powered-by.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/sass/components/reader-revenue-manager/_googlesitekit-rrm-powered-by.scss b/assets/sass/components/reader-revenue-manager/_googlesitekit-rrm-powered-by.scss index ade7e09f321..d97ee58b6f3 100644 --- a/assets/sass/components/reader-revenue-manager/_googlesitekit-rrm-powered-by.scss +++ b/assets/sass/components/reader-revenue-manager/_googlesitekit-rrm-powered-by.scss @@ -1,5 +1,5 @@ /** - * Reader Revenue Manager Setup styles. + * Reader Revenue Manager "Powered by" styles. * * Site Kit by Google, Copyright 2026 Google LLC * From 00ace2a66e399e80be0843f816f90cca08c852da Mon Sep 17 00:00:00 2001 From: Jacob Peattie Date: Tue, 21 Jul 2026 02:53:11 +1000 Subject: [PATCH 06/22] Address code review feedback. --- .../Banner/{CTAButton.js => CTAButton.tsx} | 60 ++++---- .../{DismissButton.js => DismissButton.tsx} | 33 +++-- assets/js/components/Banner/index.tsx | 14 +- assets/js/components/PoweredBy.stories.js | 39 ++++++ .../PoweredBy.tsx} | 16 ++- .../widgets/register-defaults.js | 18 +-- .../components/common/index.js | 1 - ...aderRevenueManagerSetupCTABannerWidget.tsx | 128 +++++++----------- .../notifications/index.js | 5 - .../reader-revenue-manager/widgets/index.ts | 8 +- assets/sass/admin.scss | 1 + .../banner/_googlesitekit-banner.scss | 24 ++-- .../_googlesitekit-powered-by.scss} | 2 +- .../reader-revenue-manager/_index.scss | 1 - ...annerWidget_Default_0_document_0_small.png | Bin 41456 -> 46850 bytes ...nnerWidget_Default_0_document_1_medium.png | Bin 48676 -> 54144 bytes ...annerWidget_Default_0_document_2_large.png | Bin 101638 -> 117177 bytes 17 files changed, 181 insertions(+), 169 deletions(-) rename assets/js/components/Banner/{CTAButton.js => CTAButton.tsx} (62%) rename assets/js/components/Banner/{DismissButton.js => DismissButton.tsx} (74%) create mode 100644 assets/js/components/PoweredBy.stories.js rename assets/js/{modules/reader-revenue-manager/components/common/PoweredByReaderRevenueManager.tsx => components/PoweredBy.tsx} (79%) rename assets/sass/components/{reader-revenue-manager/_googlesitekit-rrm-powered-by.scss => global/_googlesitekit-powered-by.scss} (94%) diff --git a/assets/js/components/Banner/CTAButton.js b/assets/js/components/Banner/CTAButton.tsx similarity index 62% rename from assets/js/components/Banner/CTAButton.js rename to assets/js/components/Banner/CTAButton.tsx index a0e9c7d34f3..880c4011fb5 100644 --- a/assets/js/components/Banner/CTAButton.js +++ b/assets/js/components/Banner/CTAButton.tsx @@ -17,7 +17,7 @@ /** * External dependencies */ -import PropTypes from 'prop-types'; +import { MouseEvent } from 'react'; /** * Internal dependencies @@ -25,16 +25,37 @@ import PropTypes from 'prop-types'; import { SpinnerButton } from 'googlesitekit-components'; import ExternalIcon from '@/svg/icons/external.svg'; -export default function CTAButton( { - label = '', - ariaLabel = '', - disabled = false, - inProgress = false, - onClick = () => {}, - href = null, - external = false, - hideExternalIndicator = false, -} ) { +// eslint-disable-next-line sitekit/acronym-case +export interface CTAButtonProps { + ariaLabel?: string; + disabled?: boolean; + dismissOnClick?: boolean; + dismissOptions?: { + expiresInSeconds: number; + skipHidingFromQueue: boolean; + }; + external?: boolean; + hideExternalIndicator?: boolean; + href?: string; + inProgress?: boolean; + label?: string; + onClick?: ( + event: MouseEvent< HTMLAnchorElement | HTMLButtonElement > + ) => void; +} + +export default function Button( + { + ariaLabel, + disabled = false, + external = false, + hideExternalIndicator = false, + href, + inProgress = false, + label, + onClick = () => {}, + }: CTAButtonProps /* eslint-disable-line sitekit/acronym-case */ +) { if ( ! label || ( ! onClick && ! href ) ) { return null; } @@ -45,9 +66,10 @@ export default function CTAButton( { } return ( + // @ts-expect-error `SpinnerButton` component is not yet typed. ); } - -CTAButton.propTypes = { - label: PropTypes.string, - ariaLabel: PropTypes.string, - disabled: PropTypes.bool, - inProgress: PropTypes.bool, - onClick: PropTypes.func, - href: PropTypes.string, - dismissOnClick: PropTypes.bool, - dismissOptions: PropTypes.shape( { - expiresInSeconds: PropTypes.number, - skipHidingFromQueue: PropTypes.bool, - } ), -}; diff --git a/assets/js/components/Banner/DismissButton.js b/assets/js/components/Banner/DismissButton.tsx similarity index 74% rename from assets/js/components/Banner/DismissButton.js rename to assets/js/components/Banner/DismissButton.tsx index 95fb29f3d48..8eaaae51f09 100644 --- a/assets/js/components/Banner/DismissButton.js +++ b/assets/js/components/Banner/DismissButton.tsx @@ -17,7 +17,7 @@ /** * External dependencies */ -import PropTypes from 'prop-types'; +import { MouseEvent, ReactNode } from 'react'; /** * WordPress dependencies @@ -29,18 +29,29 @@ import { __ } from '@wordpress/i18n'; */ import { Button } from 'googlesitekit-components'; +export interface DismissButtonProps { + className?: string; + disabled?: boolean; + label?: ReactNode; + onClick?: ( + event: MouseEvent< HTMLAnchorElement | HTMLButtonElement > + ) => void; + tertiary?: boolean; +} + export default function DismissButton( { - className = '', + className, label = String( __( 'Maybe later', 'google-site-kit' ) ), - onClick = () => {}, - disabled = false, + onClick, + disabled, tertiary = true, -} ) { +}: DismissButtonProps ) { if ( ! onClick ) { return null; } return ( + // @ts-expect-error `Button` component is not yet typed.