From e27b2e31c35033a722a482aaff14227ba88fad49 Mon Sep 17 00:00:00 2001 From: Ari Archer Date: Tue, 23 Jan 2024 19:07:18 +0200 Subject: [PATCH] [docx] split commit for file 1400 Signed-off-by: Ari Archer --- .../server/modules/ServerFlagModule.docx | Bin 0 -> 37046 bytes .../server/modules/ServerFlagModule.scala | 31 -- .../server/stores/FeatureTypesEncoder.docx | Bin 0 -> 36936 bytes .../server/stores/FeatureTypesEncoder.scala | 16 - .../server/stores/GetIntersectionStore.docx | Bin 0 -> 38668 bytes .../server/stores/GetIntersectionStore.scala | 181 ------- .../twitter/graph_feature_service/util/BUILD | 7 - .../graph_feature_service/util/BUILD.docx | Bin 0 -> 36762 bytes .../util/FeatureTypesCalculator.docx | Bin 0 -> 37127 bytes .../util/FeatureTypesCalculator.scala | 58 --- .../util/IntersectionValueCalculator.docx | Bin 0 -> 38685 bytes .../util/IntersectionValueCalculator.scala | 242 --------- .../graph_feature_service/worker/BUILD.bazel | 30 -- .../graph_feature_service/worker/BUILD.docx | Bin 0 -> 37047 bytes .../graph_feature_service/worker/Main.docx | Bin 0 -> 37285 bytes .../graph_feature_service/worker/Main.scala | 58 --- .../worker/controllers/WorkerController.docx | Bin 0 -> 37177 bytes .../worker/controllers/WorkerController.scala | 38 -- .../WorkerGetIntersectionHandler.docx | Bin 0 -> 37876 bytes .../WorkerGetIntersectionHandler.scala | 105 ---- .../worker/handlers/WorkerWarmupHandler.docx | Bin 0 -> 36868 bytes .../worker/handlers/WorkerWarmupHandler.scala | 14 - .../modules/GraphContainerProviderModule.docx | Bin 0 -> 37446 bytes .../GraphContainerProviderModule.scala | 62 --- .../worker/modules/WorkerFlagModule.docx | Bin 0 -> 37068 bytes .../worker/modules/WorkerFlagModule.scala | 33 -- .../worker/util/AutoUpdatingGraph.docx | Bin 0 -> 37694 bytes .../worker/util/AutoUpdatingGraph.scala | 69 --- .../worker/util/GfsQuery.docx | Bin 0 -> 36841 bytes .../worker/util/GfsQuery.scala | 14 - .../worker/util/GraphContainer.docx | Bin 0 -> 36963 bytes .../worker/util/GraphContainer.scala | 19 - .../worker/util/GraphKey.docx | Bin 0 -> 36866 bytes .../worker/util/GraphKey.scala | 32 -- .../worker/util/GraphType.docx | Bin 0 -> 36801 bytes .../worker/util/GraphType.scala | 16 - .../scalding/BUILD.bazel | 66 --- .../graph_feature_service/scalding/BUILD.docx | Bin 0 -> 37307 bytes .../scalding/EdgeFeature.docx | Bin 0 -> 36775 bytes .../scalding/EdgeFeature.scala | 9 - .../scalding/GraphFeatureServiceAppBase.docx | Bin 0 -> 37685 bytes .../scalding/GraphFeatureServiceAppBase.scala | 85 ---- .../scalding/GraphFeatureServiceApps.docx | Bin 0 -> 37541 bytes .../scalding/GraphFeatureServiceApps.scala | 52 -- .../scalding/GraphFeatureServiceMainJob.docx | Bin 0 -> 39645 bytes .../scalding/GraphFeatureServiceMainJob.scala | 297 ----------- .../scalding/adhoc/BUILD.bazel | 27 - .../scalding/adhoc/BUILD.docx | Bin 0 -> 37000 bytes .../adhoc/RandomRequestGenerationApp.docx | Bin 0 -> 37793 bytes .../adhoc/RandomRequestGenerationApp.scala | 77 --- .../com/twitter/graph_feature_service/BUILD | 15 - .../twitter/graph_feature_service/BUILD.docx | Bin 0 -> 36845 bytes .../graph_feature_service.docx | Bin 0 -> 37738 bytes .../graph_feature_service.thrift | 123 ----- home-mixer/BUILD.bazel | 30 -- home-mixer/BUILD.docx | Bin 0 -> 37066 bytes home-mixer/README.docx | Bin 0 -> 38326 bytes home-mixer/README.md | 101 ---- .../scala/com/twitter/home_mixer/BUILD.bazel | 51 -- .../scala/com/twitter/home_mixer/BUILD.docx | Bin 0 -> 37273 bytes .../HomeMixerHttpServerWarmupHandler.docx | Bin 0 -> 36962 bytes .../HomeMixerHttpServerWarmupHandler.scala | 18 - .../twitter/home_mixer/HomeMixerServer.docx | Bin 0 -> 38102 bytes .../twitter/home_mixer/HomeMixerServer.scala | 128 ----- .../HomeMixerThriftServerWarmupHandler.docx | Bin 0 -> 37602 bytes .../HomeMixerThriftServerWarmupHandler.scala | 73 --- .../home_mixer/candidate_pipeline/BUILD.bazel | 26 - .../home_mixer/candidate_pipeline/BUILD.docx | Bin 0 -> 36979 bytes ...rsationServiceCandidatePipelineConfig.docx | Bin 0 -> 37978 bytes ...sationServiceCandidatePipelineConfig.scala | 116 ----- ...ServiceCandidatePipelineConfigBuilder.docx | Bin 0 -> 37127 bytes ...erviceCandidatePipelineConfigBuilder.scala | 34 -- ...tionServiceResponseFeatureTransformer.docx | Bin 0 -> 37199 bytes ...ionServiceResponseFeatureTransformer.scala | 39 -- .../EditedTweetsCandidatePipelineConfig.docx | Bin 0 -> 37818 bytes .../EditedTweetsCandidatePipelineConfig.scala | 84 ---- .../NewTweetsPillCandidatePipelineConfig.docx | Bin 0 -> 38166 bytes ...NewTweetsPillCandidatePipelineConfig.scala | 123 ----- ...lineServiceResponseFeatureTransformer.docx | Bin 0 -> 37105 bytes ...ineServiceResponseFeatureTransformer.scala | 34 -- .../twitter/home_mixer/controller/BUILD.bazel | 17 - .../twitter/home_mixer/controller/BUILD.docx | Bin 0 -> 36922 bytes .../controller/HomeThriftController.docx | Bin 0 -> 37411 bytes .../controller/HomeThriftController.scala | 51 -- .../twitter/home_mixer/federated/BUILD.bazel | 24 - .../twitter/home_mixer/federated/BUILD.docx | Bin 0 -> 37017 bytes .../home_mixer/federated/HomeMixerColumn.docx | Bin 0 -> 39181 bytes .../federated/HomeMixerColumn.scala | 217 -------- .../candidate_source/BUILD.bazel | 19 - .../candidate_source/BUILD.docx | Bin 0 -> 36958 bytes .../EarlybirdCandidateSource.docx | Bin 0 -> 37316 bytes .../EarlybirdCandidateSource.scala | 44 -- .../StaleTweetsCacheCandidateSource.docx | Bin 0 -> 37152 bytes .../StaleTweetsCacheCandidateSource.scala | 30 -- .../decorator/BUILD.bazel | 28 -- .../functional_component/decorator/BUILD.docx | Bin 0 -> 37080 bytes ...ConversationServiceCandidateDecorator.docx | Bin 0 -> 37423 bytes ...onversationServiceCandidateDecorator.scala | 51 -- .../decorator/HomeQueryTypePredicates.docx | Bin 0 -> 36992 bytes .../decorator/HomeQueryTypePredicates.scala | 18 - .../decorator/builder/BUILD.bazel | 26 - .../decorator/builder/BUILD.docx | Bin 0 -> 37102 bytes .../HomeAdsClientEventDetailsBuilder.docx | Bin 0 -> 37333 bytes .../HomeAdsClientEventDetailsBuilder.scala | 46 -- .../HomeClientEventDetailsBuilder.docx | Bin 0 -> 37888 bytes .../HomeClientEventDetailsBuilder.scala | 92 ---- .../builder/HomeClientEventInfoBuilder.docx | Bin 0 -> 37394 bytes .../builder/HomeClientEventInfoBuilder.scala | 44 -- ...HomeConversationModuleMetadataBuilder.docx | Bin 0 -> 37157 bytes ...omeConversationModuleMetadataBuilder.scala | 30 -- .../HomeTimelinesScoreInfoBuilder.docx | Bin 0 -> 37096 bytes .../HomeTimelinesScoreInfoBuilder.scala | 26 - .../builder/HomeTweetTypePredicates.docx | Bin 0 -> 39620 bytes .../builder/HomeTweetTypePredicates.scala | 256 ---------- .../ListClientEventDetailsBuilder.docx | Bin 0 -> 37143 bytes .../ListClientEventDetailsBuilder.scala | 33 -- ...owAlertAndShowCoverInstructionBuilder.docx | Bin 0 -> 37123 bytes ...wAlertAndShowCoverInstructionBuilder.scala | 30 -- .../AuthorChildFeedbackActionBuilder.docx | Bin 0 -> 37268 bytes .../AuthorChildFeedbackActionBuilder.scala | 33 -- .../decorator/urt/builder/BUILD.bazel | 19 - .../decorator/urt/builder/BUILD.docx | Bin 0 -> 36972 bytes .../BlockUserChildFeedbackActionBuilder.docx | Bin 0 -> 37414 bytes .../BlockUserChildFeedbackActionBuilder.scala | 53 -- .../DontLikeFeedbackActionBuilder.docx | Bin 0 -> 37791 bytes .../DontLikeFeedbackActionBuilder.scala | 87 ---- .../builder/EngagerSocialContextBuilder.docx | Bin 0 -> 37850 bytes .../builder/EngagerSocialContextBuilder.scala | 119 ----- .../ExtendedReplySocialContextBuilder.docx | Bin 0 -> 37779 bytes .../ExtendedReplySocialContextBuilder.scala | 78 --- .../urt/builder/FeedbackStrings.docx | Bin 0 -> 36939 bytes .../urt/builder/FeedbackStrings.scala | 18 - .../decorator/urt/builder/FeedbackUtil.docx | Bin 0 -> 37402 bytes .../decorator/urt/builder/FeedbackUtil.scala | 61 --- .../FollowedBySocialContextBuilder.docx | Bin 0 -> 37416 bytes .../FollowedBySocialContextBuilder.scala | 53 -- .../HomeFeedbackActionInfoBuilder.docx | Bin 0 -> 37468 bytes .../HomeFeedbackActionInfoBuilder.scala | 53 -- .../HomeTweetSocialContextBuilder.docx | Bin 0 -> 37394 bytes .../HomeTweetSocialContextBuilder.scala | 50 -- ...eWhoToFollowFeedbackActionInfoBuilder.docx | Bin 0 -> 37431 bytes ...WhoToFollowFeedbackActionInfoBuilder.scala | 51 -- ...oToSubscribeFeedbackActionInfoBuilder.docx | Bin 0 -> 37441 bytes ...ToSubscribeFeedbackActionInfoBuilder.scala | 52 -- .../builder/LikedBySocialContextBuilder.docx | Bin 0 -> 37429 bytes .../builder/LikedBySocialContextBuilder.scala | 54 -- .../builder/ListsSocialContextBuilder.docx | Bin 0 -> 37485 bytes .../builder/ListsSocialContextBuilder.scala | 50 -- .../MuteUserChildFeedbackActionBuilder.docx | Bin 0 -> 37414 bytes .../MuteUserChildFeedbackActionBuilder.scala | 54 -- ...tInterestedTopicFeedbackActionBuilder.docx | Bin 0 -> 37577 bytes ...InterestedTopicFeedbackActionBuilder.scala | 70 --- ...NotRelevantChildFeedbackActionBuilder.docx | Bin 0 -> 37417 bytes ...otRelevantChildFeedbackActionBuilder.scala | 54 -- ...PopularInYourAreaSocialContextBuilder.docx | Bin 0 -> 37360 bytes ...opularInYourAreaSocialContextBuilder.scala | 43 -- .../PopularVideoSocialContextBuilder.docx | Bin 0 -> 37377 bytes .../PopularVideoSocialContextBuilder.scala | 48 -- .../ReceivedReplySocialContextBuilder.docx | Bin 0 -> 37769 bytes .../ReceivedReplySocialContextBuilder.scala | 76 --- ...ReportTweetChildFeedbackActionBuilder.docx | Bin 0 -> 37187 bytes ...eportTweetChildFeedbackActionBuilder.scala | 37 -- .../RetweeterChildFeedbackActionBuilder.docx | Bin 0 -> 37313 bytes .../RetweeterChildFeedbackActionBuilder.scala | 38 -- .../builder/TopicSocialContextBuilder.docx | Bin 0 -> 37233 bytes .../builder/TopicSocialContextBuilder.scala | 42 -- ...nfollowUserChildFeedbackActionBuilder.docx | Bin 0 -> 37434 bytes ...followUserChildFeedbackActionBuilder.scala | 56 --- .../feature_hydrator/BUILD.bazel | 64 --- .../feature_hydrator/BUILD.docx | Bin 0 -> 37469 bytes .../DismissInfoQueryFeatureHydrator.docx | Bin 0 -> 37337 bytes .../DismissInfoQueryFeatureHydrator.scala | 45 -- .../FeedbackHistoryQueryFeatureHydrator.docx | Bin 0 -> 37132 bytes .../FeedbackHistoryQueryFeatureHydrator.scala | 32 -- .../GizmoduckUserQueryFeatureHydrator.docx | Bin 0 -> 37401 bytes .../GizmoduckUserQueryFeatureHydrator.scala | 50 -- ...essionBloomFilterQueryFeatureHydrator.docx | Bin 0 -> 37568 bytes ...ssionBloomFilterQueryFeatureHydrator.scala | 62 --- .../InNetworkFeatureHydrator.docx | Bin 0 -> 37360 bytes .../InNetworkFeatureHydrator.scala | 41 -- ...astNonPollingTimeQueryFeatureHydrator.docx | Bin 0 -> 37451 bytes ...stNonPollingTimeQueryFeatureHydrator.scala | 68 --- .../NamesFeatureHydrator.docx | Bin 0 -> 38000 bytes .../NamesFeatureHydrator.scala | 97 ---- .../PersistenceStoreQueryFeatureHydrator.docx | Bin 0 -> 38208 bytes ...PersistenceStoreQueryFeatureHydrator.scala | 118 ----- ...eFilteredSocialContextFeatureHydrator.docx | Bin 0 -> 37737 bytes ...FilteredSocialContextFeatureHydrator.scala | 72 --- ...phInNetworkScoresQueryFeatureHydrator.docx | Bin 0 -> 37441 bytes ...hInNetworkScoresQueryFeatureHydrator.scala | 46 -- .../RequestQueryFeatureHydrator.docx | Bin 0 -> 38240 bytes .../RequestQueryFeatureHydrator.scala | 121 ----- .../SGSValidSocialContextFeatureHydrator.docx | Bin 0 -> 37830 bytes ...SGSValidSocialContextFeatureHydrator.scala | 105 ---- .../TweetImpressionsQueryFeatureHydrator.docx | Bin 0 -> 38052 bytes ...TweetImpressionsQueryFeatureHydrator.scala | 87 ---- .../TweetypieFeatureHydrator.docx | Bin 0 -> 38619 bytes .../TweetypieFeatureHydrator.scala | 179 ------- .../functional_component/filter/BUILD.bazel | 29 -- .../functional_component/filter/BUILD.docx | Bin 0 -> 37078 bytes .../filter/DropMaxCandidatesFilter.docx | Bin 0 -> 37075 bytes .../filter/DropMaxCandidatesFilter.scala | 27 - .../filter/FeedbackFatigueFilter.docx | Bin 0 -> 37820 bytes .../filter/FeedbackFatigueFilter.scala | 89 ---- .../InvalidConversationModuleFilter.docx | Bin 0 -> 37554 bytes .../InvalidConversationModuleFilter.scala | 50 -- .../InvalidSubscriptionTweetFilter.docx | Bin 0 -> 37759 bytes .../InvalidSubscriptionTweetFilter.scala | 70 --- .../filter/PredicateGatedFilter.docx | Bin 0 -> 37326 bytes .../filter/PredicateGatedFilter.scala | 47 -- .../filter/PreviouslySeenTweetsFilter.docx | Bin 0 -> 37251 bytes .../filter/PreviouslySeenTweetsFilter.scala | 37 -- .../PreviouslyServedAncestorsFilter.docx | Bin 0 -> 37430 bytes .../PreviouslyServedAncestorsFilter.scala | 44 -- .../PreviouslyServedTweetPreviewsFilter.docx | Bin 0 -> 37130 bytes .../PreviouslyServedTweetPreviewsFilter.scala | 30 -- .../filter/PreviouslyServedTweetsFilter.docx | Bin 0 -> 37235 bytes .../filter/PreviouslyServedTweetsFilter.scala | 42 -- .../filter/RejectTweetFromViewerFilter.docx | Bin 0 -> 37074 bytes .../filter/RejectTweetFromViewerFilter.scala | 24 - .../filter/ReplyFilter.docx | Bin 0 -> 37103 bytes .../filter/ReplyFilter.scala | 32 -- .../filter/RetweetDeduplicationFilter.docx | Bin 0 -> 37429 bytes .../filter/RetweetDeduplicationFilter.scala | 45 -- .../filter/RetweetFilter.docx | Bin 0 -> 37093 bytes .../filter/RetweetFilter.scala | 32 -- .../functional_component/gate/BUILD.bazel | 20 - .../functional_component/gate/BUILD.docx | Bin 0 -> 36982 bytes .../gate/DismissFatigueGate.docx | Bin 0 -> 37414 bytes .../gate/DismissFatigueGate.scala | 48 -- .../gate/ExcludeSoftUserGate.docx | Bin 0 -> 37108 bytes .../gate/ExcludeSoftUserGate.scala | 23 - .../gate/RequestContextGate.docx | Bin 0 -> 37059 bytes .../gate/RequestContextGate.scala | 22 - .../gate/RequestContextNotGate.docx | Bin 0 -> 37092 bytes .../gate/RequestContextNotGate.scala | 24 - .../gate/SupportedLanguagesGate.docx | Bin 0 -> 37502 bytes .../gate/SupportedLanguagesGate.scala | 68 --- ...inesPersistenceStoreLastInjectionGate.docx | Bin 0 -> 37638 bytes ...nesPersistenceStoreLastInjectionGate.scala | 51 -- .../query_transformer/BUILD.bazel | 13 - .../query_transformer/BUILD.docx | Bin 0 -> 36907 bytes ...eetsCandidatePipelineQueryTransformer.docx | Bin 0 -> 38142 bytes ...etsCandidatePipelineQueryTransformer.scala | 85 ---- .../functional_component/scorer/BUILD.bazel | 16 - .../functional_component/scorer/BUILD.docx | Bin 0 -> 36872 bytes .../scorer/FeedbackFatigueScorer.docx | Bin 0 -> 38283 bytes .../scorer/FeedbackFatigueScorer.scala | 144 ------ .../scorer/OONTweetScalingScorer.docx | Bin 0 -> 37377 bytes .../scorer/OONTweetScalingScorer.scala | 48 -- .../functional_component/selector/BUILD.bazel | 25 - .../functional_component/selector/BUILD.docx | Bin 0 -> 37018 bytes .../selector/DebunchCandidates.docx | Bin 0 -> 37690 bytes .../selector/DebunchCandidates.scala | 83 ---- .../selector/UpdateConversationModuleId.docx | Bin 0 -> 37245 bytes .../selector/UpdateConversationModuleId.scala | 40 -- .../UpdateHomeClientEventDetails.docx | Bin 0 -> 38321 bytes .../UpdateHomeClientEventDetails.scala | 137 ----- .../UpdateNewTweetsPillDecoration.docx | Bin 0 -> 37846 bytes .../UpdateNewTweetsPillDecoration.scala | 80 --- .../side_effect/BUILD.bazel | 47 -- .../side_effect/BUILD.docx | Bin 0 -> 37316 bytes .../side_effect/ClientEventsBuilder.docx | Bin 0 -> 38603 bytes .../side_effect/ClientEventsBuilder.scala | 185 ------- .../HomeScribeClientEventSideEffect.docx | Bin 0 -> 37691 bytes .../HomeScribeClientEventSideEffect.scala | 75 --- .../HomeScribeServedCandidatesSideEffect.docx | Bin 0 -> 39270 bytes ...HomeScribeServedCandidatesSideEffect.scala | 245 --------- ...ientSentImpressionsEventBusSideEffect.docx | Bin 0 -> 37843 bytes ...entSentImpressionsEventBusSideEffect.scala | 95 ---- ...entSentImpressionsManhattanSideEffect.docx | Bin 0 -> 37612 bytes ...ntSentImpressionsManhattanSideEffect.scala | 65 --- ...ublishImpressionBloomFilterSideEffect.docx | Bin 0 -> 37608 bytes ...blishImpressionBloomFilterSideEffect.scala | 65 --- ...teTimelinesPersistenceStoreSideEffect.docx | Bin 0 -> 37790 bytes ...eTimelinesPersistenceStoreSideEffect.scala | 68 --- .../UpdateLastNonPollingTimeSideEffect.docx | Bin 0 -> 37826 bytes .../UpdateLastNonPollingTimeSideEffect.scala | 78 --- ...teTimelinesPersistenceStoreSideEffect.docx | Bin 0 -> 39488 bytes ...eTimelinesPersistenceStoreSideEffect.scala | 263 ---------- .../home_mixer/marshaller/request/BUILD.bazel | 18 - .../home_mixer/marshaller/request/BUILD.docx | Bin 0 -> 36881 bytes .../request/DeviceContextUnmarshaller.docx | Bin 0 -> 36891 bytes .../request/DeviceContextUnmarshaller.scala | 19 - .../HomeMixerDebugParamsUnmarshaller.docx | Bin 0 -> 37036 bytes .../HomeMixerDebugParamsUnmarshaller.scala | 27 - .../HomeMixerProductContextUnmarshaller.docx | Bin 0 -> 37275 bytes .../HomeMixerProductContextUnmarshaller.scala | 62 --- .../request/HomeMixerProductUnmarshaller.docx | Bin 0 -> 37058 bytes .../HomeMixerProductUnmarshaller.scala | 29 -- .../request/HomeMixerRequestUnmarshaller.docx | Bin 0 -> 37181 bytes .../HomeMixerRequestUnmarshaller.scala | 30 -- .../marshaller/timeline_logging/BUILD.bazel | 13 - .../marshaller/timeline_logging/BUILD.docx | Bin 0 -> 36922 bytes .../PromotedTweetDetailsMarshaller.docx | Bin 0 -> 36943 bytes .../PromotedTweetDetailsMarshaller.scala | 15 - .../TweetDetailsMarshaller.docx | Bin 0 -> 37334 bytes .../TweetDetailsMarshaller.scala | 47 -- .../WhoToFollowDetailsMarshaller.docx | Bin 0 -> 36962 bytes .../WhoToFollowDetailsMarshaller.scala | 15 - .../marshaller/timelines/BUILD.bazel | 11 - .../marshaller/timelines/BUILD.docx | Bin 0 -> 36855 bytes .../ChronologicalCursorMarshaller.docx | Bin 0 -> 36966 bytes .../ChronologicalCursorMarshaller.scala | 20 - .../ChronologicalCursorUnmarshaller.docx | Bin 0 -> 37019 bytes .../ChronologicalCursorUnmarshaller.scala | 26 - .../timelines/DeviceContextMarshaller.docx | Bin 0 -> 37117 bytes .../timelines/DeviceContextMarshaller.scala | 34 -- .../RecommendedUsersCursorUnmarshaller.docx | Bin 0 -> 36989 bytes .../RecommendedUsersCursorUnmarshaller.scala | 20 - .../TimelineServiceCursorMarshaller.docx | Bin 0 -> 36990 bytes .../TimelineServiceCursorMarshaller.scala | 21 - ...cContextFunctionalityTypeUnmarshaller.docx | Bin 0 -> 36990 bytes ...ContextFunctionalityTypeUnmarshaller.scala | 22 - .../com/twitter/home_mixer/model/BUILD.bazel | 42 -- .../com/twitter/home_mixer/model/BUILD.docx | Bin 0 -> 37238 bytes .../model/ClearCacheIncludeInstruction.docx | Bin 0 -> 37448 bytes .../model/ClearCacheIncludeInstruction.scala | 43 -- .../home_mixer/model/ContentFeatures.docx | Bin 0 -> 37857 bytes .../home_mixer/model/ContentFeatures.scala | 144 ------ .../model/GapIncludeInstruction.docx | Bin 0 -> 38019 bytes .../model/GapIncludeInstruction.scala | 63 --- .../home_mixer/model/HomeAdsQuery.docx | Bin 0 -> 37233 bytes .../home_mixer/model/HomeAdsQuery.scala | 42 -- .../home_mixer/model/HomeFeatures.docx | Bin 0 -> 40412 bytes .../home_mixer/model/HomeFeatures.scala | 325 ------------ .../home_mixer/model/request/BUILD.bazel | 15 - .../home_mixer/model/request/BUILD.docx | Bin 0 -> 36872 bytes .../model/request/DeviceContext.docx | Bin 0 -> 37628 bytes .../model/request/DeviceContext.scala | 74 --- .../home_mixer/model/request/HasListId.docx | Bin 0 -> 36785 bytes .../home_mixer/model/request/HasListId.scala | 8 - .../model/request/HasSeenTweetIds.docx | Bin 0 -> 36853 bytes .../model/request/HasSeenTweetIds.scala | 9 - .../model/request/HomeMixerDebugOptions.docx | Bin 0 -> 36787 bytes .../model/request/HomeMixerDebugOptions.scala | 8 - .../model/request/HomeMixerProduct.docx | Bin 0 -> 37047 bytes .../model/request/HomeMixerProduct.scala | 40 -- .../request/HomeMixerProductContext.docx | Bin 0 -> 36979 bytes .../request/HomeMixerProductContext.scala | 42 -- .../model/request/HomeMixerRequest.docx | Bin 0 -> 36966 bytes .../model/request/HomeMixerRequest.scala | 19 - ...ertiserBrandSafetySettingsStoreModule.docx | Bin 0 -> 37406 bytes ...rtiserBrandSafetySettingsStoreModule.scala | 56 --- .../com/twitter/home_mixer/module/BUILD.bazel | 90 ---- .../com/twitter/home_mixer/module/BUILD.docx | Bin 0 -> 37788 bytes .../module/BlenderClientModule.docx | Bin 0 -> 37194 bytes .../module/BlenderClientModule.scala | 41 -- .../ClientSentImpressionsPublisherModule.docx | Bin 0 -> 37296 bytes ...ClientSentImpressionsPublisherModule.scala | 48 -- .../module/ConversationServiceModule.docx | Bin 0 -> 37152 bytes .../module/ConversationServiceModule.scala | 37 -- .../module/FeedbackHistoryClientModule.docx | Bin 0 -> 37282 bytes .../module/FeedbackHistoryClientModule.scala | 47 -- .../module/HomeAdsCandidateSourceModule.docx | Bin 0 -> 37075 bytes .../module/HomeAdsCandidateSourceModule.scala | 32 -- .../module/HomeMixerFlagsModule.docx | Bin 0 -> 37199 bytes .../module/HomeMixerFlagsModule.scala | 59 --- .../module/HomeMixerResourcesModule.docx | Bin 0 -> 36707 bytes .../module/HomeMixerResourcesModule.scala | 5 - .../module/ImpressionBloomFilterModule.docx | Bin 0 -> 37533 bytes .../module/ImpressionBloomFilterModule.scala | 59 --- .../module/InjectionHistoryClientModule.docx | Bin 0 -> 37770 bytes .../module/InjectionHistoryClientModule.scala | 88 ---- .../module/ManhattanClientsModule.docx | Bin 0 -> 37254 bytes .../module/ManhattanClientsModule.scala | 41 -- .../ManhattanFeatureRepositoryModule.docx | Bin 0 -> 40254 bytes .../ManhattanFeatureRepositoryModule.scala | 468 ------------------ .../ManhattanTweetImpressionStoreModule.docx | Bin 0 -> 37469 bytes .../ManhattanTweetImpressionStoreModule.scala | 58 --- .../MemcachedFeatureRepositoryModule.docx | Bin 0 -> 37615 bytes .../MemcachedFeatureRepositoryModule.scala | 117 ----- .../module/NaviModelClientModule.docx | Bin 0 -> 37376 bytes .../module/NaviModelClientModule.scala | 50 -- .../module/OptimizedStratoClientModule.docx | Bin 0 -> 37347 bytes .../module/OptimizedStratoClientModule.scala | 46 -- .../module/PeopleDiscoveryServiceModule.docx | Bin 0 -> 37119 bytes .../module/PeopleDiscoveryServiceModule.scala | 35 -- .../PipelineFailureExceptionMapper.docx | Bin 0 -> 37103 bytes .../PipelineFailureExceptionMapper.scala | 29 -- .../RealGraphInNetworkScoresModule.docx | Bin 0 -> 37029 bytes .../RealGraphInNetworkScoresModule.scala | 26 - ...ltimeAggregateFeatureRepositoryModule.docx | Bin 0 -> 38351 bytes ...timeAggregateFeatureRepositoryModule.scala | 231 --------- .../module/ScoredTweetsMemcacheModule.docx | Bin 0 -> 37511 bytes .../module/ScoredTweetsMemcacheModule.scala | 61 --- .../module/ScribeEventPublisherModule.docx | Bin 0 -> 37365 bytes .../module/ScribeEventPublisherModule.scala | 77 --- ...ClustersRecentEngagementsClientModule.docx | Bin 0 -> 36993 bytes ...lustersRecentEngagementsClientModule.scala | 23 - .../module/StaleTweetsCacheModule.docx | Bin 0 -> 37200 bytes .../module/StaleTweetsCacheModule.scala | 38 -- .../module/ThriftFeatureRepositoryModule.docx | Bin 0 -> 40182 bytes .../ThriftFeatureRepositoryModule.scala | 375 -------------- ...TimelinesPersistenceStoreClientModule.docx | Bin 0 -> 37324 bytes ...imelinesPersistenceStoreClientModule.scala | 49 -- .../module/TopicSocialProofClientModule.docx | Bin 0 -> 36970 bytes .../module/TopicSocialProofClientModule.scala | 22 - .../module/TweetyPieClientModule.docx | Bin 0 -> 37510 bytes .../module/TweetyPieClientModule.scala | 63 --- 400 files changed, 12636 deletions(-) create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/modules/ServerFlagModule.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/modules/ServerFlagModule.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/stores/FeatureTypesEncoder.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/stores/FeatureTypesEncoder.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/stores/GetIntersectionStore.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/stores/GetIntersectionStore.scala delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/BUILD create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/BUILD.docx create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/FeatureTypesCalculator.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/FeatureTypesCalculator.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/IntersectionValueCalculator.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/IntersectionValueCalculator.scala delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/BUILD.bazel create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/BUILD.docx create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/Main.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/Main.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/controllers/WorkerController.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/controllers/WorkerController.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/handlers/WorkerGetIntersectionHandler.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/handlers/WorkerGetIntersectionHandler.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/handlers/WorkerWarmupHandler.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/handlers/WorkerWarmupHandler.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/modules/GraphContainerProviderModule.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/modules/GraphContainerProviderModule.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/modules/WorkerFlagModule.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/modules/WorkerFlagModule.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/AutoUpdatingGraph.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/AutoUpdatingGraph.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GfsQuery.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GfsQuery.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphContainer.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphContainer.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphKey.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphKey.scala create mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphType.docx delete mode 100644 graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphType.scala delete mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/BUILD.bazel create mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/BUILD.docx create mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/EdgeFeature.docx delete mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/EdgeFeature.scala create mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceAppBase.docx delete mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceAppBase.scala create mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceApps.docx delete mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceApps.scala create mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceMainJob.docx delete mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceMainJob.scala delete mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc/BUILD.bazel create mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc/BUILD.docx create mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc/RandomRequestGenerationApp.docx delete mode 100644 graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc/RandomRequestGenerationApp.scala delete mode 100644 graph-feature-service/src/main/thrift/com/twitter/graph_feature_service/BUILD create mode 100644 graph-feature-service/src/main/thrift/com/twitter/graph_feature_service/BUILD.docx create mode 100644 graph-feature-service/src/main/thrift/com/twitter/graph_feature_service/graph_feature_service.docx delete mode 100644 graph-feature-service/src/main/thrift/com/twitter/graph_feature_service/graph_feature_service.thrift delete mode 100644 home-mixer/BUILD.bazel create mode 100644 home-mixer/BUILD.docx create mode 100644 home-mixer/README.docx delete mode 100644 home-mixer/README.md delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerHttpServerWarmupHandler.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerHttpServerWarmupHandler.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerServer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerServer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerThriftServerWarmupHandler.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerThriftServerWarmupHandler.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceCandidatePipelineConfig.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceCandidatePipelineConfig.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceCandidatePipelineConfigBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceCandidatePipelineConfigBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceResponseFeatureTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/EditedTweetsCandidatePipelineConfig.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/EditedTweetsCandidatePipelineConfig.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/NewTweetsPillCandidatePipelineConfig.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/NewTweetsPillCandidatePipelineConfig.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/TimelineServiceResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/TimelineServiceResponseFeatureTransformer.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/HomeThriftController.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/HomeThriftController.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/HomeMixerColumn.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/HomeMixerColumn.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/EarlybirdCandidateSource.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/EarlybirdCandidateSource.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/StaleTweetsCacheCandidateSource.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/StaleTweetsCacheCandidateSource.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/HomeConversationServiceCandidateDecorator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/HomeConversationServiceCandidateDecorator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/HomeQueryTypePredicates.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/HomeQueryTypePredicates.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeAdsClientEventDetailsBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeAdsClientEventDetailsBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventDetailsBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventDetailsBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventInfoBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventInfoBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeConversationModuleMetadataBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeConversationModuleMetadataBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeTimelinesScoreInfoBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeTimelinesScoreInfoBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeTweetTypePredicates.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeTweetTypePredicates.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/ListClientEventDetailsBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/ListClientEventDetailsBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/AddEntriesWithReplaceAndShowAlertAndShowCoverInstructionBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/AddEntriesWithReplaceAndShowAlertAndShowCoverInstructionBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/AuthorChildFeedbackActionBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/AuthorChildFeedbackActionBuilder.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/BlockUserChildFeedbackActionBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/BlockUserChildFeedbackActionBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/DontLikeFeedbackActionBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/DontLikeFeedbackActionBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/EngagerSocialContextBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/EngagerSocialContextBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ExtendedReplySocialContextBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ExtendedReplySocialContextBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackStrings.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackStrings.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackUtil.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackUtil.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FollowedBySocialContextBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FollowedBySocialContextBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeFeedbackActionInfoBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeFeedbackActionInfoBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeTweetSocialContextBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeTweetSocialContextBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeWhoToFollowFeedbackActionInfoBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeWhoToFollowFeedbackActionInfoBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeWhoToSubscribeFeedbackActionInfoBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeWhoToSubscribeFeedbackActionInfoBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/LikedBySocialContextBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/LikedBySocialContextBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ListsSocialContextBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ListsSocialContextBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/MuteUserChildFeedbackActionBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/MuteUserChildFeedbackActionBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/NotInterestedTopicFeedbackActionBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/NotInterestedTopicFeedbackActionBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/NotRelevantChildFeedbackActionBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/NotRelevantChildFeedbackActionBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/PopularInYourAreaSocialContextBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/PopularInYourAreaSocialContextBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/PopularVideoSocialContextBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/PopularVideoSocialContextBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ReceivedReplySocialContextBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ReceivedReplySocialContextBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ReportTweetChildFeedbackActionBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ReportTweetChildFeedbackActionBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/RetweeterChildFeedbackActionBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/RetweeterChildFeedbackActionBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/TopicSocialContextBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/TopicSocialContextBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/UnfollowUserChildFeedbackActionBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/UnfollowUserChildFeedbackActionBuilder.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/DismissInfoQueryFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/DismissInfoQueryFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/FeedbackHistoryQueryFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/FeedbackHistoryQueryFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/GizmoduckUserQueryFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/GizmoduckUserQueryFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/ImpressionBloomFilterQueryFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/ImpressionBloomFilterQueryFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/InNetworkFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/InNetworkFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/LastNonPollingTimeQueryFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/LastNonPollingTimeQueryFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/NamesFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/NamesFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/PersistenceStoreQueryFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/PersistenceStoreQueryFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/PerspectiveFilteredSocialContextFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/PerspectiveFilteredSocialContextFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RealGraphInNetworkScoresQueryFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RealGraphInNetworkScoresQueryFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RequestQueryFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RequestQueryFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/SGSValidSocialContextFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/SGSValidSocialContextFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/TweetImpressionsQueryFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/TweetImpressionsQueryFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/TweetypieFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/TweetypieFeatureHydrator.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/DropMaxCandidatesFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/DropMaxCandidatesFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/FeedbackFatigueFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/FeedbackFatigueFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/InvalidConversationModuleFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/InvalidConversationModuleFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/InvalidSubscriptionTweetFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/InvalidSubscriptionTweetFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PredicateGatedFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PredicateGatedFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslySeenTweetsFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslySeenTweetsFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedAncestorsFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedAncestorsFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedTweetPreviewsFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedTweetPreviewsFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedTweetsFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedTweetsFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/RejectTweetFromViewerFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/RejectTweetFromViewerFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/ReplyFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/ReplyFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/RetweetDeduplicationFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/RetweetDeduplicationFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/RetweetFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/RetweetFilter.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/DismissFatigueGate.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/DismissFatigueGate.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/ExcludeSoftUserGate.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/ExcludeSoftUserGate.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextGate.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextGate.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextNotGate.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextNotGate.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/SupportedLanguagesGate.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/SupportedLanguagesGate.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/TimelinesPersistenceStoreLastInjectionGate.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/TimelinesPersistenceStoreLastInjectionGate.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/query_transformer/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/query_transformer/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/query_transformer/EditedTweetsCandidatePipelineQueryTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/query_transformer/EditedTweetsCandidatePipelineQueryTransformer.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/FeedbackFatigueScorer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/FeedbackFatigueScorer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/OONTweetScalingScorer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/OONTweetScalingScorer.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/DebunchCandidates.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/DebunchCandidates.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateConversationModuleId.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateConversationModuleId.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateHomeClientEventDetails.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateHomeClientEventDetails.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateNewTweetsPillDecoration.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateNewTweetsPillDecoration.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/ClientEventsBuilder.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/ClientEventsBuilder.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeClientEventSideEffect.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeClientEventSideEffect.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeServedCandidatesSideEffect.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeServedCandidatesSideEffect.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishClientSentImpressionsEventBusSideEffect.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishClientSentImpressionsEventBusSideEffect.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishClientSentImpressionsManhattanSideEffect.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishClientSentImpressionsManhattanSideEffect.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishImpressionBloomFilterSideEffect.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishImpressionBloomFilterSideEffect.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/TruncateTimelinesPersistenceStoreSideEffect.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/TruncateTimelinesPersistenceStoreSideEffect.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateLastNonPollingTimeSideEffect.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateLastNonPollingTimeSideEffect.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateTimelinesPersistenceStoreSideEffect.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateTimelinesPersistenceStoreSideEffect.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/DeviceContextUnmarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/DeviceContextUnmarshaller.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerDebugParamsUnmarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerDebugParamsUnmarshaller.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductContextUnmarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductContextUnmarshaller.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductUnmarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductUnmarshaller.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerRequestUnmarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerRequestUnmarshaller.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/PromotedTweetDetailsMarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/PromotedTweetDetailsMarshaller.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/TweetDetailsMarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/TweetDetailsMarshaller.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/WhoToFollowDetailsMarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/WhoToFollowDetailsMarshaller.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/ChronologicalCursorMarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/ChronologicalCursorMarshaller.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/ChronologicalCursorUnmarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/ChronologicalCursorUnmarshaller.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/DeviceContextMarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/DeviceContextMarshaller.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/RecommendedUsersCursorUnmarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/RecommendedUsersCursorUnmarshaller.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/TimelineServiceCursorMarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/TimelineServiceCursorMarshaller.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/TopicContextFunctionalityTypeUnmarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/TopicContextFunctionalityTypeUnmarshaller.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/ClearCacheIncludeInstruction.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/ClearCacheIncludeInstruction.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/ContentFeatures.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/ContentFeatures.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/GapIncludeInstruction.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/GapIncludeInstruction.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/HomeAdsQuery.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/HomeAdsQuery.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/HomeFeatures.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/HomeFeatures.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/DeviceContext.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/DeviceContext.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HasListId.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HasListId.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HasSeenTweetIds.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HasSeenTweetIds.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerDebugOptions.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerDebugOptions.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProduct.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProduct.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProductContext.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProductContext.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerRequest.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerRequest.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/AdvertiserBrandSafetySettingsStoreModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/AdvertiserBrandSafetySettingsStoreModule.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/BlenderClientModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/BlenderClientModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ClientSentImpressionsPublisherModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ClientSentImpressionsPublisherModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ConversationServiceModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ConversationServiceModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/FeedbackHistoryClientModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/FeedbackHistoryClientModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/HomeAdsCandidateSourceModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/HomeAdsCandidateSourceModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/HomeMixerFlagsModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/HomeMixerFlagsModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/HomeMixerResourcesModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/HomeMixerResourcesModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ImpressionBloomFilterModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ImpressionBloomFilterModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/InjectionHistoryClientModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/InjectionHistoryClientModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ManhattanClientsModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ManhattanClientsModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ManhattanFeatureRepositoryModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ManhattanFeatureRepositoryModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ManhattanTweetImpressionStoreModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ManhattanTweetImpressionStoreModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/MemcachedFeatureRepositoryModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/MemcachedFeatureRepositoryModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/NaviModelClientModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/NaviModelClientModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/OptimizedStratoClientModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/OptimizedStratoClientModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/PeopleDiscoveryServiceModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/PeopleDiscoveryServiceModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/PipelineFailureExceptionMapper.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/PipelineFailureExceptionMapper.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/RealGraphInNetworkScoresModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/RealGraphInNetworkScoresModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/RealtimeAggregateFeatureRepositoryModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/RealtimeAggregateFeatureRepositoryModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ScoredTweetsMemcacheModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ScoredTweetsMemcacheModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ScribeEventPublisherModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ScribeEventPublisherModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/SimClustersRecentEngagementsClientModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/SimClustersRecentEngagementsClientModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/StaleTweetsCacheModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/StaleTweetsCacheModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ThriftFeatureRepositoryModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/ThriftFeatureRepositoryModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/TimelinesPersistenceStoreClientModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/TimelinesPersistenceStoreClientModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/TopicSocialProofClientModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/TopicSocialProofClientModule.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/TweetyPieClientModule.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/module/TweetyPieClientModule.scala diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/modules/ServerFlagModule.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/modules/ServerFlagModule.docx new file mode 100644 index 0000000000000000000000000000000000000000..fdedaec12230c5d2a8a92921d68644d4349cdb58 GIT binary patch literal 37046 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 literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/modules/ServerFlagModule.scala b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/modules/ServerFlagModule.scala deleted file mode 100644 index d38bfb24a..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/modules/ServerFlagModule.scala +++ /dev/null @@ -1,31 +0,0 @@ -package com.twitter.graph_feature_service.server.modules - -import com.twitter.inject.TwitterModule - -object ServerFlagNames { - final val NumWorkers = "service.num_workers" - final val ServiceRole = "service.role" - final val ServiceEnv = "service.env" - - final val MemCacheClientName = "service.mem_cache_client_name" - final val MemCachePath = "service.mem_cache_path" -} - -/** - * Initializes references to the flag values defined in the aurora.deploy file. - * To check what the flag values are initialized in runtime, search FlagsModule in stdout - */ -object ServerFlagsModule extends TwitterModule { - - import ServerFlagNames._ - - flag[Int](NumWorkers, "Num of workers") - - flag[String](ServiceRole, "Service Role") - - flag[String](ServiceEnv, "Service Env") - - flag[String](MemCacheClientName, "MemCache Client Name") - - flag[String](MemCachePath, "MemCache Path") -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/stores/FeatureTypesEncoder.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/stores/FeatureTypesEncoder.docx new file mode 100644 index 0000000000000000000000000000000000000000..84276e205e07c8b0247b0c1917da3e075b9b2b17 GIT binary patch literal 36936 zcmagEWmp~Awl<2pdvJGmcL*f7I|TQII|~o)?(Xgo+#N!2w*UzQcmGzpd+*)7&pG%0 zDIVq=ME!4Uak|+B5S(=69kflC_8wJd#<~;jS@no_~GJ8bxLoju1 zSw8P(xWQTX>IV1?F+$G7^K=4}wI0A?XsTm1Fi3_&;8cXhp~GqmXL<5FDIC;Pjz($r z7%cb4mE2w?{oKhPB>bgvUY41uHL`6o5xxZQriB}wt4n`2YDyS%u6LVaXmqkrcWhYe zD@O4cMg*XJ`)=3E>^`B%aRk#)9(Ap%vx#9H^8Ey06HHw<_X9FV^UYo$?|4mv!Ln0F zJ4Vgd>L^GC-|J2SCF{61kdCI2Og{-GgS|7h+9&vK;O>sDIF?fQVL8m;ZhlVQZc^QU z6!kNgx=6iBhgfXN7zZEEo8yrLx$jM0uKk`Vh@xlS?%spmekk6=_5Wo+cPm=%q%2WW+<@@(lpjy2+UvV)7qlDXzDOrhf9I) z3?TDR+YQ#X&4|3AKoK>gzT-C6AQfiV#2nJ4YdoD5s}Ywpq_>knDGM%7M88IKq1ANt zWts!P0HozwxFSlc+rQhoN8F3FxX2j!iyp-}psS`Un6lyW7NN*GVqQzg9?ry6#Ihs4l0l-z(mOj;NZ++0&p_>eUfJsx}O07#Nmk)361FGttG@@ zS?Fc?;NdBQpX8HcYR^S zmYF1rRVtPRCHqC@8)NrW!H-72xA(8_mI)c|c`l&vjx10N=;qudUZ49f3I5ra>$Nr9 zV^Cjgp}@e<{@#~Q4i0~`MQy@o9{ErO}Id#z*E!s(~_7uY?FeeI`+gv!Kjks210Xf#K^(g)FHVuR0VW7 zw#E>;zN6vHc=ZAd6TC~hrc%wgH+iG+&TjLRyD=w_35Nr!@i&(~)&QK?^U z_4kA4$x6-3n`z3diV>BNFSVAHo@FyaT<`a8j z02=5d8zDTU_ij47BzKnhFKEmcc5H{+53WLpNA57Zz_vzs;?xs(+n2GZ3F3e@+pW}O z;VI26N`cTUTy<|-#rV|0HCd5j#rIvEnJmvN#OLst4_5?l3pc+={&`|h=RdEgL4tuj zApLp4x&xd{SwL5+KfO_-d2NV_-mW_!y(~hB*w4(P|w(bBTq7#RwU2@v` z_VBF}S3O+v8rU?u{#H&M??Dp$FrWD|@tO`2kzn>8QxqN)jRhNeKbADG=ZF8&)Pyeuyg zwK$t?Ub%`^{&2`Tqey|q2G4(=7U zHPNW`*wX4gRZgi4N^jtC)OhihK?O|Eik|8IXM)V^aW_Dt#9PHVRz&eO|Gi^#*gp1y z^-xRCaJW|ZP=qVmYcn5>70lMPS&bDx&&Fiy;Rh_Ia%mpbj_th=9Lm5$%LR-1^^8p< z^R!R!xM5O#QsW{0g@j?fd!y1t9R9yJF)k)k8lF2;TG}GNa;9wyx=2F=ZV(W9M%G`> zAW_B)^HRa#>2VYfqwSX|TgHl5w=SUeKUl?pX-1E*WH9}}ryedm(R3Hch0ScH zLfZ(#G-(vrK@&*Bxp2xw>C*Q(crY_wB(dK#f?E1L@5re(mm5dockFlcC;ea7r&uYa zbH1d87>7K3op!0juJ`6b%J-IMIi8u&1On;>d5e7p>TJaTrYbcIL6<3(4)!124qII|k8 z$&jUodwv(6w_inX<=zLA9W_ZO*H6G6Z}v07{(^?qwd2;O{Q=dI0TEUNfcS|*>ET-X zyLk~}(Tz%KJ!6{@IFC;@cdJjuY0*b!m`c$`6D?iD6B^R2MLl0v&XO*}(Mo3J5LLNt zoa0Bit`|ei50f^|p`B_hZJX(6H0LEnS5BUqgXjTC3rBXny1*u+SBQUJg7*Fd80?_6 zc>=UH6N1*}KQ6&PcNTxY5dYj|B#9{ovEqF`dqwCENyI9#k9_y5fVzWTy0+LSM0z#h zR$_lkcf*uXVmDy#j@vhv#%^xvR&{Yx0FR;RLm+Py1S-~Ch>{tGpap8`ac`rHx|mHh zDLj8&A9vTXpt$_(Nqw?q)!~OE`DcXscB;V!1j^=od(n36n&_e*(y9rc8+ddev?XT~ z(msXe=D2uukY7yIv|V;p*=&n!WH|S2D>P~Z_M=19FE1GBQ*cok?VcTey}36f^m~Cd zKrnAwAe1QC4|tZ>i^ed7(zwfl9N@S&vKrqrUo-)ebnlT!m0&Nf%TnEeye#F26yv38 z$WRTo33)eV!)tv#n>6U90Po@r3n8*6992rV%SWVTqdcMc{#dC0JPjj&l*SInd9_UA zz-av=@9OnzEfn8F&^MNU);hWpM<9{~49q|s8VvPcwRU##v^8`7z1V?v(22X!4Zb}+ z1%-ys-|gap!A7R-!4ljEKY4fM)Sq$4bIkqv`W4qQ_QcSSicFM5T}55vLq$S^Kz|O7 z65YOLcA}cu%S*0br|lWgkR&Ga<#dB*pa;3TUH44msdVb}ssjLg!SfM#I5_ptIn7B~ zd$E5x%@kQ00lYrMzCAoGoyC-jv>xy2-#=_zbfhkHJRQ#cyy*xH-8=GpX%Kw1d;78( z!U9|+F-R#rpBXp|P2Jy_0G+^@l0Gt0-cz= zUiiEyt`aNv=v+O!Jy+L7B*kO>LRenA*SkAft0t0%*!=7|)_uG6bkDk9ZX_PfRZ@uu z9Je-DP`7|-QY1byIVWUqgS8Jm#(lLD3)Cr%&n`NlK=ceMe3uURuJcX&j#Lq#XQWz( zkH85gS#5aSbsZ{nap)-q|4e8jYG`eZ$V;7}ueOLUZwO0gN32;0uHVb+;efdx+{^XG zi%W*ya~*J{b4yUD+WqV_G?nKxhez@F&DY=zC{&Yczx0MV*qsv9w%T)|aJUu=*uDS$ zRvistox?ZA!a5RtF^V(6_SjF9@)Sk}{kr4X-&Km#FT z7p@^~?*sCuO4OY)R5lfoesvP#D&av%-!M9#usNWsTle+IiPaDdf`QsYc;K8Guwa`a zIhVFga-Rl)SP3-L#~`9y2LSzd!1yv~{q9Zweo|%`R@h!)&D9J7pT6V^<;m7dry!#U zNlNXE`|P?-oCOSK|v6?{-$N-6Y!K<76s6ZWy!YcjBAYuS<>Qn!+kn=J^yLPkVQQF4c!Nu>=y2u zm=BR5t!z{=1#hD8nR%u9=(^;y8d>ZI8D*I=43#8~%3#KQEC#ZVOiLf&5){7lRQYWY zvfOKocaC5!R&}yv7J@6=UgWmEl;fxAL@>TSZCG^))SL|#twhwZacs#hYuW84q7`vN zet=WSM4*D|JCt-JJ4!4JW^C405szDSp(BH{*u?5Jgu5#7#|rjT6-8L>q$5SN+pNki zlz~&BV894;NNDvZ&HAn{5F3wHl+#%mvP}g5*XAA56-86H#6b&A?1Ua=62HWW3ykZ8 zF3S5oX$hLd`PU@W4kZ9w?63HmW_&7UC>Bq|(SF%Yh<{<9a3+9KNkMURf28Vw&_Y1C z|499l3aXsu%$m&OzX;BhDL^9#f2c_5gf`9p9}@oq73XzXgAZ!a?hn=TiSEs4oxh|0Jyhf@(KPMW(T!=4!!N0`K-x{L;p%(# z0Pd&lr$e&Xk=*+MK`J1XCMmA0t;M5z%dZ_%ciGOFP*Q9Dz_DXxWWx59F-nM8H|65u;StV!C1l0ee{-ye(Q}SNsRq2 z^NMJ)Ud$O+JpS901Cj)j=Zp~=<9az!*4EHE>Fp`dZ8^&wd1$Sh*>5CQ#_rfD;jsPJ zU<9CcH=rgKt=!g^RhWPb&dkJj6COmpO*VNqV$-gm zeEcmUg@bVGgf5fP{XMpaw|!sbafCCr=POq~ANRAiL`u}+P3N$>#TzEoH6qIKFHxGy zi8vkB4HQ%DuYDWw!^*exY6DKm>zhX>9;-crF)4R>N#8E1d3#*kRV}Ac#&E)pE1EnY zp+@M{adyfL7c&E2UI))h6b~oZH(iLsJ7vc+RX$8)Za*hf@Icc^ES|~B@{_PP&UxC1 zC4W3w^vjaO(4;JxUoma)+%+{^JYLEbe?SGTpK$ViKBJFgdyjLkXx6>ygPV@7nfG>2 zt*YOdMV`C65IzXV4Gr(^`+elbdC%g+gJU7=xu!*^-)+YT6nt}c1Qw_V)3CT(brc%m zcbGrV;@NzDB@UWg+lNzl&jD0Qo25==D32b;T+n8oZyma!M4U@x1XnaRt$xg6Sh3LG z*OQ>gnt-PsXdiK|>11d}(sV-C8$0-t5dHH*OMZ>1>p(JA_TUbGc+gME82`j|nambp zlj9?f%qzdO^E~vWAn7z>&ZEz;e2*SV!yg$(P^Pz};kNS~{kM6TmjHTlJ&qkaJQTjq zC6r5?XHq6LxY2A~mg~qYPSNM&7HBUAT|cmnb`K;-c$D84@_j~>Z)4`{bIF(G(X*_I zMWl160S|IUM)R>6zbU3GVUh3H`H1Q31J6eEiBG4bX#Bw|R2y@ugR~SAeZ=>(@##R% znd-c6>GzzyQ^De`j~hdP@`@b|f%~71nOJiqty^d0Z?75i9W(Ba*CUs&m%~F|9WRca zz`NJvx5bmkxu4HR4y>O#U)w~oZ&{vaMxec3!BAH+J==t#47WO3Q%7#d9#rC=xQy0= z3(HQOol&IZC#WZKZ&OiZq6ofps-5Pjw0{f&e63k{ddBSO@lp1_;L>?kmwad+$6xXd_cA(d$)X)5kOFx@-btMnX5F~RH4KDAXxm@)lp8T(6lC7ovWbAyERut}%*D*a%yt&}y> zg9VsGi*;*W6q>+5<^qA%w!~g_s#Xl0L46cW+;(}CB_1|@rC7%GXD4UQ5{^ph6gA0n zU#*!Yy6Hr3=*8WxyAuRlOJ%k6*jUwO0{(fMgZr^% z9_UO%Bx;H;4X8p}A}{Y+C8k9H*Zu9vP78%4`nT+aGdyc_4WoJC{CBlXo{Q`MLlAR?YdLJllv1hs@K4*x7 zkJtcN#mrkzvwMrXBYxTtq-a5Jw#301gKWto z@7o=tZ(j#ywp!M>*3QlnmNL`_k`X??-M>CA65>{UM9pI5?OFEVtW*EQRfwRVMpQYn+0>%KFBpGBlQU%FHdWQDm?>xL7l;Qm5=Gv)i?_4dJErNzK4}l zeKz^w_2Agf|115bGWAC?dF&S;SV$RrQ{OTeAsy+LV-LWYWmX;YCc)={2~C1^_b3*_ z(DThtE0CqTM3}?O-zNoZEz}%K6?i+SA1@KN<@C?&5EzSiMv zCp+9#F?@fa0b&;~x?d^N9p&6sb1#gcbY9IedlqNcY7~>i*N*MRj~mY?tny~l)_oTU z2i-dim?MtdT4_wI6&Kc2sJ9uW;H1oMNe^6IwP*H7s}CL9`qCv8+?a}U4BLfr-quDB z#AO*`K2-CHH|&-nYE=2zq!gX3tE{!lv^aMdb(HX|$m%%hS&y+LP>m3^Qoc&_$Z{xr znBo;<-z!2ix3y?YFA^#(zReSO$(%UDiPc?je zu?3tM804^v$|_>JR$!IOl@%RtO9s?h9nH8_N3BiEp*#04w<13dTy`RSo0`<-AGLp< zN=kOq#6rhSl3wB%F3J;`sZzi&n+_$FEm=D_g3YR)VDHoC`KY{qM~}yZ{GH!q67-~V zv-7O)vi`0R!VX2n@~UNu^JgabV-@YRncw3#N671)DdwiZ$F9{8zaZb|{5)XdS`ro{ zov;}#Uwv>r7L{uO24~j#hvz6vh0uu%=Du1U7F>=sO_G|uqCyUH`kr4s)2SV$sF^)A zkM9ijIDqeY1>cD9(1mw+ZH8Lgb_uqqV7S;=?MogX9A3VbPVIOgM0?M;3?crUzWoMq zPgTj8w7$FotudCYUY!${1L2lwXLlO^@j+9$T`#BORrmB!LYf2>mr1Ayd5rDYO;+P1 zM}5x-`Ru5>AEtmfkaON7?KZTh8uc(a68pdcAJMQj-#51w^VGV-fcWy9`uS?koB*@y z$DQ>JX?I#SRiVw{Y9x`KnQZyt%j>!3*#cyU`POuTlLDP&2jSOY;d4pnDwrQ^=F~cv z_p3+=U!=zUgO{5!*PuJW?c8wVq{^ZhKaNh}S?;bFY(Mc?CggHFMQtcy7lmzV>2Blw zi0;BvaK7etwOw-a*ur*&>w@>8gOS}%9>DOLbBw_~hiT$75XH&oX<*FfG3gB_2|oYM zEl|=YduwetOHdJrHA`SqDh%0G&-2SBW^?#-z5(|al&L#>m;B+?gXOrlk^@97VanIc z80SuZp1i3Ghz7W>cr*B}bVvogtvhKs2V;wxTb!;>^fKsO*fY!K1w6L_YZ-;D%G+`y z9BvR_lE3r&Z&E`prE7P>Lerd&e}eD&$vcAR0l7-ZLK^v%KpTY3wmpd087}fE5R=Ba zx%LOLx>&>yJIc?S($ob!-n@<_&LEtCLzFxo3t?SGz0IINOppD#;7ymTJy4ARu4>JU z;s8@^alnB;=0q;^3bfu3U*pmbWK|H%6t)DQCj7@#>&B43s&~hJF-l&mk)SJ)LW%1R ze5aF^IDmip0%FsjdjxTm{8~DN>e?KM7hZ7d;*x;=%Go^kcZrH-2@bbMWJuQcNTiH( z_TiWAeO+DNtE&h+-PpmXtZs+mM{%M&J5f@F`CVoJ^=i6(gnw=I%Z=qxrMu8&wK;Li z1Cmqacg+1ON?+FYrWW)OoMqDP@Umv3@_>THW ze-gIl_!|4>!)@f(juoWQN>xr^qz{88I~5c59rP>9Ym;^IW;0ve0FM>^0q;; zIU{~0Sy&|z#U@~%@)P&vyUz8a^R@H=jpm5z(WTE-lPp$wnDJE9kNjz}DVx0&H_Zxj z%j9@vQQx~q3@FCovgip2s|xPBt(Wlkg>kC;ZS$%PcA2vCnz%tf?)dG$VA?LI~Z|K><3}Hf93hOV|@zM zD@yBU7Bn9za_0sQk7yw-S7%Bi{m*Z&)SwubvsPyiq7djI5MmkL70)y0Mi5iK=V^s2 z`{+@rE_C!uQb9_T-#eh6OhDv^j$|P@DYRi?pD0a~C5S38io~O3g#U*ptNt-zmLNLa#G&J{o3Wr7we{1zAe^_ESvlnw9TMyOgMYzi#!B@?jsN8k8C% z#1S4U7K$3w{Q2t>+dC^9pH&?2F}H-4M7q(o?z89`3JcU2Im3k}IGOHQ`h~gW!y^WW zgc++{XICt6&rr+~kgEasayYFzJ|YFm|FC_E_%Aj-*Z)s8+EI@Ho(r0#_{Kxa(pqaB zD9SC%(uJa2lU-FPAvJkuBwY(X z;dXeeD3KDqjMga685Y(wQ53!86Y{BvAfl-<5|4Z{&Bm6~ba=8I4Bsr;y zJ486KFv2}Pshu?r%;#ojT*+_tR9j-#nXPWOmgmk0X|UU?Uz(7V%Jp>+iY}R%pjv=R zDoEiiHt&HHvCQqd9 zn0ktH@wGFmkfsEVstjMP81)HNVc6{Y%LK>~q4D{TL6XA^YJ7)AH~fiUm_KSu!+snH z)@~Be2rGS;-X2#-u>E7u2w&t$p9iIICHzjOA#JzsSP%zN1emQQM@GOLc;Pc?)nt<| zPliU9mpBdPMEX7#e6TmhAr(iGv4nx~GkIh7XjN@oI^Pnj_pVv4HWJ?#@E8R~=`F}a zf)7R+L@Sk4k#sqP6DDluS0>>@SPeVt28`5M3IW`!SP=0L>EfhLV5)GENMS>xh~zkP z*fer*Ek-5G3fpR_Dw1Eii1zC1gm+v;{N0 z`6P0zWq6uf{_Jlm52SyqR3&KwsT_d)tr7~nKFxTf{ihG>fvE(p9YTN%xa$+-Xh72& zWLN-^2`N*UmYk**l9ahXyf!Y}=*{h=HGq94@DS5;W*^!$Yr#fVZ*;LLd;6>b)uiMM`GrRHB zJVvX^%ev{SoT(*Z7F%qGnm%e`F}Ug_0yEC3X92PrGCdgJUtO=?xu6uRy__zh>#6Wx zlyIDjD>xd~Mwm=(L!GQrrxqaBG2Or{4|0dwVXXbq`H-M(Yi59Hyql>tOw(?abYG*WIxtj$_n*KA1_kSiO zPwg|^99$0ag*#&${-#Q+Lbg4Z&%&IzALNVXc<0rLaabkQ{CnPwz!dFpUh!@`tMQT+ z?Bfe9*lyMz<4jbta*Hr6CN$IGWxte~hOjm~ykFFA3)I(xhC3JL6lhUwcqZYe!oDp@e&sbhTwTI#*Nlj$_|b zZAhXIrLSU94OZLM_*tTED?28Bi|F?q`p3i8Mi1j#he&5`h%%n6UMQNC+dAVM%i~z{ zkDJ3E(UXcbF{ShS4+mC-QRX%cEUcxaD+XL%gfP=Czv@p1`ejeQNJaC(HryD17WOG7 zm{|bI=bSTE-|CjegVi==(t|SVB)?(eBmGPG;O)RTz0!^E`6|_JpZfIq7{Sp80>a`# zI*_GSqq2nu&>?SPU}Oc?5PfpB7v_+Uh8mqS!DaaRdh$ zLaDTjc^T0g99logX4cPHXc^~i&KiNX;*CPys#dqwPjyf?8Vg47tsCYzDZSoy7>s=( zRP8|hbgiZxG6O!wK8%4+;lHUr{y~iaqK5tWd-pxrzPX5;V)O^Ko9P6IT7dgc>Tgt- zktqKM^+op}d}nyB;igaf`z|B+qw0!24EwnpM#cd5Uu0T=oh_6d$0C@K6dqxkC?D$v z9kj?zckBlexJ^oD>IOx-_WCe>@3M>EwR+DZ{Y8H3Itn6Jh5duPm5mcKlKKB2pEZ)* zeuzokT6g-3yx&OnK}GW(L9s!CeH`pJl?eQ#Kh6Y<*0qsKfO&nhkvWecl{22dG zaC5)3o7PnVRa*4KsD%>oGa68zH0-;aCq}=@r!iOPC*PG_eRSd8auCO8QL#A(rlWk) zET>51>OQch+1!O{*pTs+>!#?7P`LwzZK-g|hDONPpa)Z20Q`-3-Mlv$8r3lv73T6J zqsVb{vjjer+v5g9KdCjf4RG(1YW8Zc*D>Yi z!b;$mr`4u-6y}ObD`LKM?r>JW2+L>8H9cZWaw1F4jeDDEA9Xc^mALwsz;kxQ=RU0- zZ7MkUZw#@K9 zkz4TDR%pp?n=gn{swmCJ!krd$)B9nH{HWu=9*UjW%8r$QCD&JpC&_-f1Bh*{B5$! z?*Gpuue?pqOveFdH4tPHv&8C+-!`X>h`10J8($zM^OG61BO&OGazpsq{_e`jA$Z$5 z4HM+GRB{uR47Qez40GrL!$GUp5Z?H$=~dN-EyGVv4<114ugZK75`EgUXmh%ge7bOu za0uSZrf4q+UdwGmLGEY(EI8ws(DN7j*uUPesX=pseqzN1YYnLr|4s1?aYI8V_5RJj_iYktG=OssG7NkN8idyQ8_h$k8dfLt;x`(L!!69zFo)*y z#OfeoS!=~-+%~)O1`qH}nAmf1vR{X{#%w#k7Ms#Pq4pu7(V=yM#Y6TYqOp;7g5gqz z<9>&}fo7rQ+WX0B;O~jF1AW`7pK~~c({HdyZ6MmE&ehp_GLkfecn*{c#*L7_4;-_d z&WA_g_$5~T3Z^1zXASN|s!s~qW_W-z%V4mKA|AmTC>iUOm=+*7qm0{2U{hZAHgxgH z7|}2yYb;r3uK^b8rL^#qE=x*k^A{lamBzw3gnOtL4ok0l8Kwd4se9%$tck*M2dH=_ z6`3N*tS9avv_v7dVdwKuFJMNZE87@^)H181Bm;_ggX-iG*i8h)<&u{dF39o za9-tv7!d08u+ZBH<7{H2k`8LJgUTm9zW%t;fDW|};C1f?+zSo+EC>~fOIr|-g6{?c z!^ZkY<%I0(<|2?6yl?OTP&lmJ*3YlT(d*a^AIXYGL<;COQn*zuxJ@nQbtB|JKMun? zsMVRwSD)PyoPzz#`s(KX(YHh3q66hzfF=#;aNV~>^fL`BZJChbO7BdOgRX3#VnewePmG7hxIkGVBa}i=w+U8a?bRe|aeLiDEi}d;`z$$&PEDFPHuU zcr2n@++(vn|5fF^xMG(hJX;S6YtN7orvop#wOD#?Z(g1>{lb9wV~JWUf=wbhe~qnX zQiY>;|Fe!|;5UdXMC$HC?|wzu$r&(*kCU~L(xeBWCb$!s-p&_Io8(tEJz@#`SE^EU z+m1WM0js}x7yx2s<*j+-2TR}wJlQjc6w?N71mn+8Fwo6yWyCn&W(&O3v>*{@9nGH9 z)uPvM50-ocD!J3PXuku0AFzy|*=*kvnE$@43xP zso)S%Pl6!E{Y857Cl$`33IGvQ1jxym^cft)RHA$e+AB;vtfrY-FRfAGo+IT?PtTGg z$s327T=s@(hF47HYb%F`FseJHlm`}IZBz$KQWR)c67`WhS1-LdipO@RS2kTQoc+Qg zQoo71XKLN5GpC=&34C;qkh?)O@PB~bD?fH1pATUd2@n%Q9;plsxyG#}#$Hs=bJ1Hl z-BI7W4Ss0;%Geow_WaztlhmvI->sU-_4=iP%Te7r`n)P4Bl=hU9AL}!k4xBlE?<1l z?R@9V!*Z0H=xo*pyPOxHm1*h&#I9v+E#X2i2;QaSnGUDOtB{-A1uHZ=@b*)~e&*gk zmzmdzfEpZ(YbBI0&I!dwHwz4qLIIXifMu&5|9q^lmz*PN2f8v9sBhIyNqu~l;i|$n z-W+{UG$aANh2GXt93e+6D6g!b+knR~@1aGIRiUt-@oL>)I=%JJyC1|9p+%y&%~w>58`(smMSQ!qlIUuAra_~s zh`=9wN`@?XAlLQf+ZIRHh3f-=@6kSP8)-vCW!p<)TSs0XKO+kWz#6T-nc_eakTiKv zNlZF7jrv&5eL}C0VUF9J>Fj}!;y4*#o}|7&gB3LlJzwQ0w9 zQ9$+01Gsi=gF4C%EdubozXW{>L$CHwfP1>D=^xT{k(b_Yz)rw0^Bs8+MnG%(-Jl2` ztS||CwceOmkls?H8J%NTI%ei)y+HH0YF5!wNp*b$JVn$p-GaO8X4IL9QZBdxQ(Az~ zr`|=%8nI^15xq@9tE2F7NOf#mpaWPH`2Odk*;#pYh%%)fb$GG$vAbgl;mdBHRv^4x z;5Jkr+w>?EngVHOBWmYr56*=jqxId>+?5pTSNzw`;YfPma zG_QeR!xylTz7cgy!ZS=lT;aZ$ZQi~M=6=Ve2EvI0D6qZ@oM}}D&>R0jWO0Xe5ASQ( z7@p!ugI-5HGy2|(-GBsWUKC-ugl&)9?Y8p=cBm2f74FwurgGRC6 z@A{=;9Lab$vHu&uQSmpxQTQJK4tMT>dr%`Ca3d$Z#4*cT9{g2V3J#s-K~WGE{5jzS z!P{*Yw?9w`0Uy%4{P)_%)%^E{2JjFZ2z}5X`!0n09CtRW{!*YDG&@M-4B@}+foL-l zifO@*%LCWvxOXy3!n>Ko?hQWTm|PAv5?P&q=s>tmo&G2NA?IK8r6v}F+t48M2Rm(m zj!5v1gCWlUPN#z$*}H$a#z7^d_J_dl=>)oaLSjW4#>paT3Bt-GBqd8zGUYoIpPsdM zC5)*SbAL=JcHhjyuAqNky)E{!#Opk*cuGkb-_JQCpFa9U={!=wiEAqwn2tr}d$Qi< z%F7kqT|Q{ru`$vp?A3x;X~+`X%eFSffGZCcrSx!~593uTU;6EfdG`6&D6eBky`#jw zePiibCZ1tPyi`Z~pr0*v`LC47#bT6-oyM4Na0)@p=g*-S5LES-ypPzO%A)#KtuYSJ zOYP9$opD9ATrw)8dh0PMp1Z}H%L#aC@JNhH@$4LB5U`kdIKBN)(p1DH9H>_i3`S=F zDr#xDszSL*9o|T`4pmr3Hg)C{ReSpnZF)7S(OgDGyC(eFkkRo|G?5`JPPHe_4J#hR z9^L2F7z~LPW<$dzf*LSqfDcuZP#V;r`(^T2fl`xlc(T>xcwqS1Lnm|F(4<0Dl$JKE z){2KM6XPvDp81=ku^GlsuF`cqBYozjiE(^Z)_V5rs(|6~=UE?i3jn97e3)GWJ4;%$ z#V@JlDqSiK>Y4F~7dy`?q|JjAt#|AU6E`*Ea-t|n$@`CU<}l6L<+yfQU<{ae$y({t zRkm1{>~395Yf5#_RdS?m;mNK^$zRdVEA2T7Tk7|f~1W@gBEXu zAeVhVCXIgY0-DQzC4^41;b}`NB9#ar4Qnqur!H|3!K&P(_I>{s6)T7eFX}fHYvhpe zcKr;G3CJdUnkOrXm#y*W7xhO2*_>o-0f{TEcb#IK_3Wk^DaVf~>Hd1O3=^(y(@6Zr z#Rg5E$h_++-cxCmurXY9^&&4PDz#u+9BQSD{=#55re$axKDC{!8D%H<3Tlr`E#Lk@ zN$|ve#+}guz{uDP)JOno%CV=gw<^1hxUDPd;wZs`ZNtPDbz`&3s;Xtutda3;-~RAq zvPO1r1@f73sBQAUcN9Xz!RIzO{RO5PRN0mfVpUZFRko)w>)-@lY)@#Ie`EC0)`oGd+XA_{;fl6J}TLnCrL~&ME`K9Ls@cKZ(nod3w3ZXbiB4C zdf0HD#Lb~?<`C&4_M{s3Yacf|Vp>1REJ5>xJyryK1p!{^j8m{X3w7LA)VQxc?{xy< zp)ld7(d6P<$}GIWODX*AMf)^TTP5Ay#;DDI7Yzf)DWOqp-k!95fd`@w(lk!{WT;#=T=80K#430&yT$R ztkJD3t|K2wjn-D4x=d6_47Y6iv6}~DTHQ_@+7Aawh#S&m(>hxzzo=9NpT3uX9$oDR zteR!Ftio1a|8g!fVK}vWvqZ=`vRR&ZJ}QM6bRa^8C^XACbyl_$NCdqao+r442=tZ4 zaWDc^wD312@Xh_8JaLvhal~wbM;L4f8(Y-n(j->R(IpgYCmyx#@Sr>hF=+j~KrT5I)CzVj%{iAvi6VcgXb1(}S7y$0d_EH2+qCi2A3B zklrgIg-T_O8f(|;z(YkoWWDs(2o&sB*JZ&AGVy16tar=7NaGpb=9h%_$yh2f<0Q?_ z(BR^dA*5z#YI?{*&kGOc$GqpE*r)bsa#p=ne_WMWMw3tn z{m}gS2G)i3wHItRT0CF$#(eaL{!u0wJOLVa874uQ9j-Mh(IjYjnz2`z)Amt%o-`YRscPtN);(J;Ic&5 z-4{NX3gdL2DUgOd=4w+Ev4VaZHy%g!AmU zU@SPg`3S6}TZHCNtRoQx9g(6xd|*ija1b@R7qWWm;YDNNduVl1K-!29>CXhMW5_yd9|i$rDe6^im&)XRiGdFZ8&WPds^LZz8bdTGXU=7^Y;0aap1w^ZpVyvvK2 zxhf3n!>w3JJcJJkB^k6hf-5<6bGG;iC@*$n4&>l%5}you%MF*Eh&f6c0a=i7Hz3tD zm%RKiAeE=c;bG~5&(+1vGOH0XXinAtzge0w;1dwe~1?|8|bnb^?3e7ZU9sI5gkJIlQVecHd-wI(FU zWQfzz(^W;>lDTm(_XH3$0ny|w83xm)k8P52h|JTSKhoB{njg$+B)zubBhmcH@58BaJTj^qYs zhPI~ed-=6>xv%XzI}K#soLb#@o$#zICL}5zO4F0@Uey^IhUTp1g{}=PefO(DzFdFZ zyLitsGa^uH@5sB27vB^8w7>yiTn3U zht{ruslvTimE$JBdRa<;Yvrl-muYOcRu8NWRE zIJLjtZjm(HrSo00u|2#3>tAjMey#T3ow08?JW?zvhX-hCY<1y0+TVTg&?2%oy|C($ zTWm4CSFN0>#NwP@7J0jGQsFX+yfk^< zH~2i)DJpdKh-fLIygrQ>wp31WYp-u@DVCN7k)*Ixl4!)nPTV{_?L73~%pEyCyyc`E z`<yUh%xP-(PlQ_acU5REyr;DOtFT0zdc2f783bmwmLhJc2CY=egIKtmk2HzM9z zgs{V`cO(q=SY^7Lg6(cvSH38Aayg+&F&5fLiQD#$*w@1+a&hJgI<`E862$Tfx#8~BKC zTEaD(2Gc@Aeepi2{V}S55!L!c6oi?9sHA8I!SGsRN+O>ens*EYJ01z)4d|_#Ve9nR z%q@oZ2fJGKEi*hbnJ1;K7N_cFj68=dZui8}_N#_b4%JL1?R>eq!Dr^EsNoXhkY)=D zTD?g}4U9$+=Ds+rGL1@zc$8Z8&{bnh8*e(V-K*K~t@mwb?47N*I2#El=*H}CPc17; ziKe0AU+x{d3~Ssc1cVcrp}nV0iXeg%>xvPyD3*1htI%y5AQrLQb%7rx*J}L50$((H z@%yA1jiMdiA8h-o39yIKRS=~QV4cKFeu{H@Z$BK0Q764E2d_o34#8W6ZVx_nuMM#n z*5dE=aZnd5RIH!Le*k|6r}tB|1LF4iczFvLimDoDf^HQwL3#q3hyzX3Nw+~e{2PLB z5v~>NC4-=cYWH{0zp{S^c}&@X6PA?yMrryD{|Cz71OATkzpKFGYK3-4D_Di#m7BE( zCxo$T1w#o627z(?L+f9XRw0g<&;g(@cu<(lUtzrfd&F&4spj7}8xXum-+tr#J>YMi z>!h2Y=XJ?9L17r6u;12DY@8}(A5m_vE@PfT_R02jsh?|Q6Fb3xKJ$J|B229lH;^O8 zOjsH-GxSC&yU5o@jSo&Ece4JvfrM<{m9aCGQ#-|FA^@Z)n=PZa!{^h`{r&9m{yWSl z0$CA{3E-w1uiN7(f4k4yq0P4=n_I5xkv$&7Quhf|+}C@L2e=a_@1HO0+1=QJ*&Ult zKbdP_TRKc5a%zZ?cH2c<_l}W?qvp3(_6-z-SWUO4ZU|Z`Ut%Lot6tlgyLN6aV|{;) z9WFdhJbYidezvNg(sLpTy9!ZlKjqDu_CZg7zAk`y z%(VOFyZPOJdd@v5mFv{u=D;o&DETmVHj^sQzAk=BF}}W3y_M>__T^r2sI~g%*f)T# zGwAtsErWR4Z!IInrouVdrryW%5(q|a6@9-fp&BWm4xS$^z(y5wVVwhgmdWD0FHG@*%}7}Snha5_ za&f-da~0`F$GJU0S(O6fN&-qXkrfpw1ck^v3}me=NRL;MSJY2YIkp8WK3~aDWWDzd zZL|>1a;|d`;AbZ(Teq>PBqi1i@~A=|-0KcnK0^!Z z5__zL+x7hxtqJ$`<-?UE^dMZ08ihvzdS7BUg@>(h;6lh}u^mZiOT4e*o;t|;<& zb9>_r&rKo*+=Ox!%+GBrXFM!~O!laN+j-9P81;*8#SxF~cA)n|+j@?1e6izzgnddv zy&$!HKCyIq_4mUmzC(?b>YSOYY20S$XKKWwPfdz^N?j8qt$a!x$928Cm**`X9bCiE zao@AzUYfd1qaKDG>wn^5{M9m9T;b$R~eCtYeEzdA$L~yP{sd3H&x_UM^vG$wTT260L*Q>* zH2$Rr$pZ_wP1R1^tEvGh_QfW$fq->jjjL`D0+&bhOEERr;^~gmro=}EXZFOqo~E=* z=R}kx83r%6lX-PQOLr{kJun=xz62=qtew-&GABA%tJkc~+-efP0>Jde^Pa$@bu0 z6@T{oX4SAar7_9bxj~cjn)%{wU#~;yed1{ zDX7^Q1dlq`a~0IS=W`>aUD~lRIu~;u^AFbV>L}pcu4hLmjU7!BZl?2(A?^$9ofXIL z&o~F>J&L6qML*1Wo2}0cc$S*R85heTCw2sDKTK}xwvr;Z8PCp8p!e@o@B@_O46ZQ= zzqPxuaXWrEt^1#`_SkqOeJJxZhJc{q$l`7vLqVG|D5$#Sm zDdVomP5#uPhYwya(sboXR*R^o3-Z18Sp&-1LzPA7ds`3}kW;oqg6Agu zt{ef}leTl!{pjW00rkgY+ADd4$Y3*UTw#J0jR4Z-?SB8Bz*8toN1yLi^qo@PptqBv z%}Y1$R@S8Az~$M!S3AM8SG)crNFw*-3(`==3Jd@72NOwS7!i;7<0)2rp~)hmD_h2a zpyTHIi_@?1(XF4OZMccQgpp7WJY}QCnVBIdGGs`Jp~9rT5K$cZr9FTmg_xNkiHNr%D(!;c_rf2;a@-R$3166r-Uv@k(6fMHvBAu!1QeRs%xfNkJyc^S>?=P(g3%L_Hv@7ME>&kSp}xv1v`+xhqXmb=NWmLG}dtph%iFgF?7J@n?H zt6S^sG|!5vJ`A-MS@Rw8=pK?RX1P!jBX$m^6CIlD$&&&nC!Q)(K2sP)G*^=1ER0IN zUDF4Zq(b}@I;u87D@PSp$5|yx)yYdd*y~4#qE~Mv^FOG+ zn;KpA{512K+9>xeYxSZT)q2XYC|Rs~0ojH9?UsSz_ck)}9x(a5D+iJ@6{FtLhlh9T zYu5t-7-@zs8KnNe$4E^Z3=UsghjpXVN=$$rzFkKgB`I3;>@{~nfbX?stoGKn`}PV3 z_%R{Em~6rT8+WA9^W~biO9_)r#C?e%w1d=M=RO-RpAJG6V({@3BB$XJ%t~hUw{FiK z?ppX+@UEn7K_g1~-ow@e8H7HXuUEIbj2@TSv+Ce|C*U`bZ_S~-gCJ>qvtNMeh7@<& z=3=2iu|8ThuYXD@>OwZ9_&Msbc!y`A{?)2d0tWx zcRCr3CiiU^A^EJ@ehv_w5`v-c9Br&g_1F9|x{gUzPd>N~VI@tk?Y_T;v&hr({6vQ` z9W3^j5rNUND^k8hpesyvwDIe2VTM{MS*hZ29ps9Dsp=S8+TGOTg9E#kv+_X=@luID zF2cQ@UUd1sLhH3r*n16sqQf-b$@Ei)!_i@PTTw(Ew;8Pybh3fX6C$XAl$DKl08Gt&CGfMw@q#@PDiiHZP`E~EV;=Sv90bs zTf%GjO%tV{Z-&^-L0+J6Ezv@4obSg=K4`(D6t!PnB=)v7c>vs^DR;L`S!2J> zcViE4yYiX*gjmUw|J=+R@B3vguhm=D$(eOE*zNBnf}mx$_?OfaM~ApCbxdPv7Ili11{c#2@IuhDOSeF*WUl7;u z+@{S+GWEQ5QQ8CDzz`cFM4OrV_vc(uU3F=7m4KGm2DF6o^|V6eR?kE!cb3L4lLo8h zD5>A}t*QOFvF&_~UH$Dj4y9};QookiJCX_Z2YrW?KHA)W-+6R;$h2g8afI$}2DGK# zgRD1LF(tRo=Y3ms_R$>J9{@14Mk~ zd23oFUt1`v0dGL(rFAe~G)$R8TwY;DNx)(>NNF=qNxMs*+l{KPg{q(Konnd4orn8_ zMXvjFfVXj;cMy-s6`|>>7#NElRAfn~QnoMqaha;YA=S&~-ViX}MMJ(>K6NpPR1gqh zahR0j&4dYM^?I6b=+8P75 z1%Coms_(j2t#wvygn-2Zx&E{a6qVwie_pLtA~EA>gVsK`S8c{l734p%=nmQ0dU zzjD=HXPKcU_Hm2we55Sg65=qbp3E-1IpAc3%2?&dv`2GZyffH&{i@S`&p_CIeN7$q z<=7xJhenzoNrl$Sx>Aq496xoX`|_EjKlXMsXrIfCS4E&POl-Ajbgt}kn!g5JpcRQO zL7o4UsH&6C{$RIXFadsCEuK6ab0%7GyLvme`f{Zsboxk)7JEiObR9Gxc`x+x)0kRE zkj`srwIHicuT!-|D90GM4j%}&k78$_IN3YrT>i{0X(^lN%7RhEjZ&n7x4z3k4+1O| zVX<_A-aGEu?$_fLHIp*UW2TCcXr=9{JTM;A2fe%zn&Kc_$OGaTp=;krbCC)$5ReEf z(-7LiEc^jg$LhpN^)$hiJQEPqqOc3j5tF)K*K{9{puNDDTPPHbOoX`z7#g`4GRc^J zNJ2qK5}MibSqB^x0|8Y;hR$y!k~%%qy3z_gtFXSThOgS-BVQ{RNJMA%(ZrYZrwoIj zkVt^=>zwG%RKtM!X5rwNAK4;AI88BK#|f|G!~SPTB;bFCyjZmWgmk<7D zrnu6G0vTFDgyeaiODJ&x)K-+*Ut4|?1{2J~$XK8Xtp_=@3xNW1eif?W72UlJfogd9 zA`CVX1obLy%>wNBLXDnL5ZSyc7qE^Dg4iPZYZKQrEVh~gjFny-X85wK!SQwuG zQ5t6dTmMHW*O*Bhd;z$&H5y7{4$WMF`aX?cy)#*(1z1uv=_~`HrbK3@ZcUuaRtw=p;y- zL~ZVlIRDK@S_I6P!j(Zs8(jRO8J;*GM%JhY$^VNA7HeBDb`+BTa4Z~;;ZN=PawK5C zd~7V^b1OV?eXh1Y4d(NIZZLU#lHa3uPLEG_fO+4v%{M?+z@_ig5X#Ge)nvLP7` z2`}&2$1v`LcHg@9ja0?wy)6aYsoy9r3}ON|5e9xDGcg=>LMQR{NpON-0O&Xvn1=7? zp#Pv>Za*^N2Q9+u=f@nY{ig%hiN{t4}qpeBpAYa7K9^_Ab zA8EFpv8K8yw%%DRk?k&b7Py+&IQaPf1&5J^(ap>0&7jepj#0u6BRny3Sp6p|Z=ZWl zWPRWD!I-p_+;>St{a$AMPd)<3g9Kw$`6CGO<}=###I?I*IBDD8(oaQQK3b7CFME%i z`;U_f;Uk#o7%Az;m^db<8{SMf?zXi%N*2~PFWg-|Q`6g1a_;ZdUhhg-?p5;R0jXbL zYInNygI02%>S&K2Exvqpe;;vw_vg)3kUp1bOU6xFEU7h>H=opCp{n1bT}!-sF{2;2 z2wm9;TVWI+$1yO~)-=yBu#C!gSRjHD*Epe)+0k_?fvC+Ly!cz#%1+P9PrwySqjl3D zvGNi;Fz}x!9V>(*dt@0&bna_~H!sr{V(#yw zEW*P2pT*}$T|S9jAGfCbP+y)P*ef>kia5TLyC@SrmSZJ77by(qY<_!Bz}R~P;0;}* z=AuM1ve479PBXHN%(e>04|u!Dy1xTlOUvv|&%Alr`1Mj<>tQ$0V&to27TNugFyC#a zFCYeN;QqcgX$kXNKCr*dH1Lj=ld4?KU_49pI|6zj%Mp+2rJ4D`;4MQ~vRFS7;!R?2)Mb)=Pw6 zONI(~02Zi1t6B-P8aeEQ$outR*_+xgDX{ZMBa2j01~Us|6CD*(YFQFkBbvbnA4nD7 z*i+y~!nSYeD{ofOC(ZK3W%?qlZb`3|Tnp1j`|{*se;zQFWt0A%%X>4Ida`WO_Z%QJ zsysnCeAEiZGez~bAl;O1IA`obmNBz;-MwKf!&qr(VWvjR5~L}jw6*p(Hz4KgILC(= zHc?iWA@VTuMZo&g|yz@xYQ^=`A8B3sWrZ@%IiiSy+BN_&4`Bk-Wb97$VqO5-~UfKsD znfnOP8-gv(8D)txgxDHgo-crkc!>8-@vXwlkHch;rq6*PSm5X2sFYKk*^hh%=0WSBk`=N_$41 z$lpMwh%>_X(F(A!{}$u?e-&e?!S-s^TuGgtt}moa!TPGL&3mp%(7=6zS)rZVmrHAt z4ca}et%JSJ{o-fBLfwp@S0kHB%doZK-njj9p1a;lv)V_l^Wpt{a$g|x3bE1DNy@=0 zo#}JUzIiMsN`7?yUg0cw%7Fj!DSfd2+-WHyw+!BV2$x>ONZGkQq@EK$w93K}XFCwx zYpp^_70uvoLqz17TTl=VM2b+GsM6!5cDEIuklO2VWy$mNV>^2Kn`rZwIFQ^U8gSpk z<|MaWAxBuu3~@(TH!g+mjw)d)p8fl_gk+dxt;l))$22T>*FG(_WI}GhLE@+Ory)*g z%%J)$DEiT{Me-h%uT|)nQ2ihu`_6;GK*x{UgRsO_fnX!?GCQyIJ zatV=G8;iS;{~2nf&vQ67=eu#yawtlsB*_d_ymm&dhH!=ILFx3m50s!hiROy+F_n&B zb}S3UiexU?@HL_lPsBN3BEh-{FIaFed{)_CoUT0|J*nXWC3-bZsK{Tk5M1*e%dOE2 zCwZ|c?YuY;AwT4{ql$gao0op6i3twLhKp!1L38l_4$ka{MHoAhjpUtNqzk@CgVtn% z4cTOf<{#90aXR{1^rnUj<3FfX{+jK7;Qe8^cB$3nGji56N1p zYOhRvS5ckTPZP90q)0h{YlXQ8A&{2Xi^iWFUA2RLnN8q7T$LmiKcrJ@O)YD^@-iM5=g zLBs%JkhN)+!;*#T1Ju9jRUzZD{87{dR7qH9-=bNlJO-oE?K(@m%+%9cU-G0;I-G$K z0&ENq8KjM3!$mX1orJzmv@BRfTrN*}JKl=j{L^%tUHU?(YERVC;|ESYiN5;mL`@{S zu?Pepcr=FLqsihlhK;H;lW|2V0?!amh_s>H(u92^`!pix5Do%VGug7^B8MB5O{Orw zG!bPDwX6#)G?>>G2_qqiS^ZyO7KG<)Ci#k}9lL#mw$6ZjE+9cIAI`(`EDZ05Aiet=Tf3D#ufNpMJNp`tZ0d0|7- zX09vr%ha&nI<+(eSK zQaz;@Iy4=OvY1w6Uc^hKlpl@xjfglp`Y~2nLA)w+l*K{%%$I)Kyof*j7mfOg$heAF zgeO&A#M-1}nepzAlf;B68T&^PDiQSLsc}Uy@<0?-rSTjzHL^M?Npv&%0Gjg|Gx&XyQjIY{ z8C+L&N-DWXg_%l4MRNF`s728KL?uE9Atzj{qez2S{g(y0bpQ+EVKM$#Fx?rE_)PS$ z8o68MiJauAp){Pe*cm|sVYaQNT2J|_rl3P??i)J!UwjY1{~&L5M%=l;sm@7OaN!0Q zhP{VC+61f#qO3k(gZ|xkVbO=6oNNC{zUwVEh6#a#BHF&>hLrF)_ z9>bnYNxd(F< zHR@$=)SQiUq%e21#Dng5en z12rrgV=BMas-I<#DL*KZ9Z&rG56Lx(sO+@&dWaxgD9#r?8YoU-!HfEz@Ou!u@wI69 zqJ;^ZQ+CPrm*WD`G~14eP9D!8xj!pG8-tZDqk{(TBjC+OG$py>94GG65X3=iO_iKr zqJ&76ss%5U)9t|5Q>9F4XS;N_wT(avtgN5m1P9JU)wNN{v)oaFmBzLV;v9+gbVIfs zNAXY);y|EFf9^UB5W)R^_5(+W`Qp(pMUH3B!oaw9bN?O0uKxM2nDOIV`BR4o(2ywd z9`j>>fd)DC!zPGH+!!s*Y=Ahv1>4xw0UL z_FM}hBI8kFP=}d$v4+kW|2V}U;?QOSpfBkkwBT|hTF4Z$n!}Qas7bW9sv;4oI1cfXnI)5y(Jl2V zoGS!hS%Q_pGg2!fX>0|X;AnDzCAqT8Jgp0YP$lX$P>N0ezdrN24_M+fh@i>x8~O*C zC~R3NLx*PmD=tvlbgc0SIbIAN7h1VPN&3PS701>B_uVP?G#`bxX)}Tltg>fl9z6E6 z$ZXK2GOd}YYyA-?$a^6zdz*%tuE(%cA-GcE))8fTsT`eEb7aOreEM8>jg%)QkGiHC ziKZi5BkM9)d9@2`3et(4f))>LT7AfrCd}OYGWEugYXuO`-hg4iU9p$J8MP$1shZu* zc^F3}YJLKVZS1q}$vD^-Kgz%d!qP^&JOo5l+!*U_bGXvAb@NnVzrBZ;(>T&uM<0oY zmj)6NgfK3meZMe~RuY7K+!6BfRb&?+UXiJOL2I?LjqKdUFdm}wS-n&k7YwIR3<_1> zeT0`^DLDgZ@sKi15v!n7!C#?fMuhP0I=903fmXu!)0le~4-jJn-}aP;ux}xU2$6jA z*aChB0^f#GA#BCH6XREw@$Dn-T7(HS$<`bP&h?qR?jQ)nR?LSnSs?rNWi?y;Ao=k7 z9SF}Q_6B?lxxgIp8xZAVbM@Ai&m{GyY5P`~03eXS-+}nTQ-0h+n(7JzJ{!tAMA(7j zds9d?rJ={gxcEFz946qGOZ;I7)}8?&#AIv{OfCr&`5SZ}F|G0IwALSPb-<-z0z@B% zJmSc{K*h6!!mxvmBMiDj&Ygh&Ymj}JOnk~m3Hkhgi*RuH{rTpfPtO+r7QqTlv>eba z`!XUN{TuW*_C6wgVkO`)h;)Rn#~WXTH0eMVfWFIe4)?kB-KpK4%#JBB4x(`Cq!+bF<*e|uj> z6Ak5paSJ)6<#kN=huEs0${$Hg_=N!3%BQuTOfVA2yg?)X)Z*>`J23V?O6Gox04BYp z^0;Ph0D=WX-uj`O(PRG%;d;OO5U3R+8~tewZkw4ua&94U9RaPek62;?kfR9mj)ZXB zn4sXUY0tTj*vGz)XgamB{y z^mEV3Gz%Q`4c2Ng_^6+OFELMUBTx9jW6+!q$9_dolJMYZTh<;A-e*a~5=2S?foFr? z7{NS4@Osnat~(#6opNI~_E3v2W@p)m2m=g^hPAE?YYo50^yI9RCm6sFUh1y~JXmH> z*T-ayC9c)``$2iTZbX2;H}0Do{Vvs@Qp=Fi)BZS$9a3t#cd$4yvw)jV*pI)ADGg=Vf5rn zpOq)^|9np;>(~kjtdQDeyM1jh2mp;O??U+1nDH(Yp>v>qay@*H?c1sq!K=z>_Wl1E z?2CLU_r=_RRmg&E@WPaeBIdv7tc7o_;>WE1^!BLA#*%jl%|2GTlpAIBVd}HGu36ZG zz}RK`W<|8ew!s<~A@3rUe~(+5o;Sw*M+&^}!juv?!he9W`z`llWz@mArr(`2w)TcH zA>IrDBK1n!;pqTq^MV6bEfz%R*~bazS)B5$LT2(@(~cRLZW$iZseJ%qaHZ{xytl5G z(U4}eAX&#g+|%(FGmw{>5U6mD8J!nwt^VL#(|S0PT+>f*MP&=#nveqB__E}%)EgH3 z2Cm8x!6lNUfUsJ;6BK)CSp2LbOg44ypk;w+>1Q=Q)c8ec%M zH^jUodx2WRQIM&f`()uTrIt|hgdH3QXLdy_os2s*LbZ{I1;mcV&fW|pc40cJmFyKh zOc!$#e&6(B^l*l-)!X{ho`Agm(W@vT8G{#;H&w>Rfj1FMu}`-wHRG?hBWI^O2Byzy zZ@V{jG_m;e31cy*poTsy)r5iIFDg!-&TLZv)T{~akpo2sBu%nSs8V66WS|rTY#9dZOhv)pKfK$-j*8%?gt+4ab$P)d|5$NE z_CU(HTh3=0>&$`(=;J>nNhYA9#TAv6>t#vv%BrBE^BnV?aQwq?>1vR}sE}B2`~eSP z0EhcoD9;jPE+xFi;JdfZq*8i988eWf(Xvlwv2W_qOIagxigSP%$XA0gAGEYQ2T~h4aIoNqJZVq+hP7JY{X96YEf-<9R}sh&tUG{$?w0cVLO_nv;zWqymId`CeR*vA-Q9rTw* z6rz8!z(`I6ICCWWA7`9VAoDTnT=E;RQs5_~@TM$STbu_x$*3sps3`@izrNzMA3BD2 zh$hHo!Gs5?llV_sOO>mbtcoUg^0>m?3YNt4x~ye>Vg0`1ZJ+Z^%RL0|s7IDIjx%yyU*{~U;erukjh5+ zS;24%GSrn=0Vx;^VDwieYTQUFf4}s^g=E>0{yf4=NQ!S!USJ9nzm5Bh&mb>#Yc6Ow zOe#=B8?)LIj$7czxCZ71|Le76hIXh5${oEQl+$1UY-mTt5x1}k9murnTVy_NrNQ zs5^gEP`*%$4{i+v;r=fI9=nZ)NhHvG{~|zf1i_7tJ?_Mo?FAyHAWK#nY%vzUkU1|x zR7zATEiNSQ7W8=FsGJ}b+MKT`Brjp4n;`1^4Y4Ehuey_M5TLl5yq*18?pxXhfgv9 z;V(ly(7GU)IO>PR}ah;!v5z_A*$8jNZ7o$Oejx>&+jOa3ojG?_H@=b8|qfDfzr_ zgpBxrzScHEHf)hjnJ+!}QO{C)UjI6WCQ409A)Crqunz-nlHJBp;Y_}R2fOH#%K}== zM|n$BX#=!;R`f@a{8@35RCXUOEM@@bQ!uAAtypRvUp#5cA!)M~TXKfe^_ zV}*aKPwttYCi-iJq>*v0kC>ew1vs*5vM0$b9&IhPj|6}r_7p58ZP8JeEhb)Qh!WLK zh(|XcC*PDJCjVvS+gem+dUfRtT|+bghh)&5Bd5NXz-$^FSF>nDg2XW1%_^aRE`dZ2 zMbmUoxNfYcPVy`Xt)+2nHg?nR-I(^Gzn=vDOw>l}a5a~QLBYUZtYu!KL+g+aZV>xZ zx87e2Fbx8Np_MvAHAzB!hwU#0IGZCc;Ukl#@r`&Rvt~{L6Eu3Y5D_q}Bq_BgNhAQ% z;EgJ9Oo@$8>0&K&03=f+$iaje3r&|{2#oUEcqmO%z5RT;$RbHTFbu6WB)SGhI%S^m zz$-eIo54D=OuYXPD&oy@S9$6rozeyRZXR#3^%U zg#)PLg6j5rKS%!$nCan*OT268-$3>l*pT;YQF877CdEQ`cjud!{r34^mF@}!#0`1@ zb)in6|3_UY7c*B^D|?H-)>$>HZ#l1Xq4n&P8n*43L$^4|9#Ef=)osgB*a9{Q0BZOS zWcR?C0GF?@L%I<$o?@PMb%}oW{G+$WWoT4^F$?}{9(=MfKMZ5Q9FQnAEe*&0+)AnK zn-LpRN>~IFwIM%`ANKc-kE;WIc0+pWbYM>;ilZa%wr2I>#Bl1?zVP-q7_b1Fa_;)y z<(#PU4=&Xs#fK4^+KS>=MkwGyESH;O&vnZrSGrN$^v!I}cG*%iD>mA~zYgdhxSezo zi|K3-1~`x@aj=ewg4dMIx;Q@!x{2E!<-h(!uRoZ&xEkDza{i^PQHya>bOM)@LXH)P zIh3vt7s2oN7Ff8liiy=pTkjNnY&4toG6l~|8IR$a7fkWum<7(b&>0<V%V-21H{LPLv$l0^Aw!?l$#AU9(AW>h`?y zS>pM*4&^uQz-^4XSmPH1fd@{oSn^ntj=Eovn(iWSnuFY2%xMcayLaS8a+CJ0+k79@ zNE8G=%gw5_U2DUw&kocExUT8S>kyN?+RGz1b)YvLB^2o^W_Y(A0IPoan5aYS(jrU5*Y&R1 zRQ5XmrE=64$!&5|?w6chvBCHj1jm*6HVXLU*Bw$qGul%EAlB958{_(Ebbd8yMCOm?r==$gT-2G5Ipl9b=?HzRH7;l4-v+kklr-+NHTmy@Fc`bed~NZCCZ z)8Z#UYKbwT>FN<$7+NY$Ff4=uF7+FxRp^>)txtJQ-w6k7%kQPva%BhjpUW#xwU1PQ z041ne0DpgKmi|?O>YJId%Ky0Fqi6fA2bti2X1#g_4ii)kOrw~E6IihDJClT35FPQz znVSKNp{8Gcv1)N(bv{rKpAnaD`{GP9>`LYTS#Qq*p}wDYxoArGGjz*jgbIomDjFl> z5+>I4a}Rq{A?R30AwswUnXF0%1CrG1b<_Lh8s6G@rA z6?)BE4HdzB^ld8@SB&%k>qH|k?y|?VkOVUQ^u%0j%Vq)nDddR~h*H<+slyDEnQ!{t z2cc=wgCti7A3>vCld@A6-SXIJ61G;iJVy5^JDXL|JckjTkD_Jt5V!?T|RTy|R@ zs+$u$JY+F3hRw&xhTR?bKOKAJ&T}yV6uEqb0Rlq#w`1mjny#uw#Xh$JX6_vg&B@#n)kzIN+3x&{hS8k)ABeK?ME1E9=B-iN$|FWr+NCe+c-ND=|4 zJL$+rn=Opm3+7a9>M8Bnl@zevUR7?Ju6pQE(1R5e#skq(YQbYg-@EIQ^& z$D>R~Hn^u(Sj;$*`J!bu=B&>V%Cs)LU}s@sEyDrFnaG$Zh$Qhs zmwfn)K#)imt41+nMhF%vI38}~9h!7rto38bh&_06&{z_ivt?A1WmzgAnN$ScN@p5M zrB>3NM#MyAlmV|+_5YxmZQc6{el=C@pb@ZGTCe9H%zYN9V?R;?r;^K3P}OQ`-Hi%& z|K1h%tnbg`4$OBiVt%N015&#CxPA%c=GhHjTT`yf$=5b`Q4*oy3C)^o;^D@Onc>L7p0zZHR2WDZ~v>tXOa*}+X$e%a3>8A5cak%)h;TF*$cDZ`BTmp~MDiYfys$)x~M07^h z1Apbz=V!E4HwbgtGFVqF2zxpIo?(yQf^cepMZFe5rR01(EVoV$IZE=(=iO_de6w^B zN&x&C<|O<6qN+zDehS^ontlAG*H0H3zi; z1&3Dbb_D|D@<9+!*t2U*ht~|f(L9))C`p@vsKMox{H*eOsj!$Swf059!-?4Kz81@><>t5~U@o_TK%BmuR4g5yG zcI8TKzLRoqwxw8%_8INbr*d9ODh_0r4LrehGTM1dGBLR%MWJ!~%oXQ?B11c*Bu8O^ zhVuef4OQ-o$O2WJoJHY=U4|tNc7{2>+~=KVqkWMTg{5x5d$%_Vdh?m!0uc&R!J#>` zj7&q5@?34w@({zdNCP9KSMt z_`Fd6zIguTkmKD9G?v)6iYS63eha@$0QJedIyT5kf!2fw4N-5R`4-qQ03FH+P z$a@NOsi;6>&_s^YK%NhZxliUgNa%7Z0?rWd7*yGRElcb#=7%tk@0dGotP|G8>`_MD ze9;gtIhqpEcI1g;9H~5?U$qLDnj{0$zAxNQzg~ToRBFtQYExM3Yw6T7-e@pf2{Q@W1KyAa z@o$DqYnrWuW+x$2yZG`_k+eRq;JA&rc{0<)Yd5`9@L^A*9k~GheJ>UjqScZDP5z3L zI?t4t;E(;Vj@Wq32H~wilNG!uYx4mZ7j&iW5ZQ64f}yV!#O9uv=igQZ)O+tuJ7qR( zli%fA;#YR~-}`vBLYj<>8cJU`gatb)-Kbq|LgyAa_J(%ES^Q_b);$z>e_C0TmC{#9 zSN=5hT#2~$z3<$bbDPm|-M}>x{yLnLx1sCcr<*ZyHn~l&8C$OaGn5pzNXJ^c^iF1p$-&;g)(vqGaxn95UUe>D|UcTuem z1UQs!MJ#h-xb6oAwlr^-anKnK=GjFb;!F5Eg0vHAR3j(U@3h$V&(B$3f{*@+w|{kW zDJTW4w$)CtdCICmorj2ulpEU$XOM39VGC#_dRi#IJTg6zY*?LTwz1=0 z#tz*R#AekG0MNGFXkr6PkP$QCnZ3~4cFS4eG|1IbO%I9?z( zxe4;7K}fx^x*WcF%N^G*KFBw$YFUe+NJx)O?v zKexkrciq1^jvm{|eSi?M@yNG|Nx3+}cwLFh6aKnC7Q9Caz6chA%&I}MRI!lIa%*!3 zCsqK(q!}MaJJ4muSOilK0iFQqac;5dYoAQi;?zVd&U6l3^m1MJrQf>U)bci5REPw-ovGBJ zdYm4KPA!cnWip6clffj%t>N0(Vm7nmWB$39xRX)^Pn`7L$hHWJ0D8OLDWfY8zr)6F zjFG0P6UBrp^f9fTEu#MzdsT7<=|f#kO}4yKUEqD?{l6;WHh0R(?EwTE1B7G!L--%b ze-)Jft5vh(>g@xW(8Rv=4BYLHGv|R>qJ>EUQQIs@>*2fmk=v4Ph(=d@c**gwn~Z*| zalKyR#S=IRvNx=nrJgr`@BOT+Z;o-Le=WY)qA0^>({kr2cTD<_l zfIxOfaFjlMd%D?WG1WpUY0v2iaWtrpJDx2t-RHU!i9xf)fRbe5ghf%M*CpdK22J`C z1F)*p`Av<}DZ@-j_`+p=mSyewR3=TG&2C>$D_23OnZDNvnW#zr<;pvFyXG*wdV4tR z6QL{Og6zTYH{Uk17h6N=1my4g6q4WnHA;({4Gp&e%*liUvb+C`Iqco+jLn<@voe3O zyJ^iW`+Y8~?wwM>cyZn4@I*E+wx$9>b-ieD(&l?03aq;G+%aaR&1;z}lWE$jY=N=} zR#}v?XH&s5ZL5oM~ zH8VW_6@S-MBYc-xT4k6u*cMWyGOzHBg#+f`Zr&|Ramz&AsjD`OGOTcaV6I5J-}OeSKAn3ceR z+L(oQ1|zI2fLn%>i~D>zNe-NoTcY+nky}PQZH9b=9D-Q$EHr=y(*WEX=`l8X@H^MuR{dyXDBZt9W zVvG>>+2}m$-KahN;Ye&>LE!pK&*ik6@`h88$YyBX?|=G!d?GXvh8u@*C6=qRN7uh# z+(Nd>6=qE^zU)l%+%@ZQ zzC!gtP#AO{S35x*E3sXi3TAkJ*}?9-ZC0~*gQ`K0tqFn#Iw5#Erok?p)jl{E8^e5T2x~(T)+z4bHOkNY?N8W$-hv9o zmMyx$fq;UDfPgRoJrk7kX&wnY3@NapbC$zC`D61v+hQAJ_x30kMReC}>yu zfx+a)L-z}`-s^BWgJMEMR3O~^tRm%uZDxDpyizNG54C-ial^*=Y1vTEESV?u$`*>=afI!4D*@dL;vhcv z4*Cg(oe+UfxIX#`_8H5dhz=u{HZ`Nd?v|^X-=-KR6jh^R0)MPAz7|#F2MxPLjS5r} z&(iPB?YhgbqrOK-&}4LLSz{!!V)0>ySL=zzcGHw7Mx|_-6t8#kr?eh=JjExHWAT;< zWD7f4ms#?4=_Rhi0Hmtu;X?^e-QlKI*0`C#;V4)zC?S0QEu^4HLlDZO0B~kF63?#P zP#|rv2N=s+)^CEK>kup4Xn<0v5uRpW1+t?n;cApLxNsMOBr%v1y}M50U|3So;)I#v zpAY$2V$lklW)+K1_V?MpnV$-wVmuprJ+ zaE25dKp0A1NW9otdHNU=jUt$L``ml@Zl~zh_;F|P+ouOIxBG28C_tb;cc>CGf~nOn zL5XzRha8cbI`9yu<2I!~c!qy5IKfq;`V_uqM&8|$GN?H@l_vkY_JB3N^~c(#$+qpb z^~Y@n1L8WlJ!)&)jmHYYHQ}jG5_I{vxDPL^6pC9pRxYmY8P>9Q#>Iqnt^}= zhnd!y`W0=lY|>22B!^f{v7O<~La0x%zuasmtjN?1BTn96|2*HdDenLjzRK4s7gXlK z3tC#a{9LtV2{}Z0W$$e9yFO|Ywpc*Fi0CWIte{;yI-j79Jt@r$=n?i_uUU7y##JRE zD^Iw{s=4Ip&^WuK7^d_G)G229Vp*MkV?Af^Gf~dN{N7dt*{1?5@ylrr^YkGMm~4a$ zOLzcTm|TDb#O%*JPf-I`njKDxd%*z;MzFM3*c>fL)RrS;zZG)7s&r@_gq(0veX!Gv zqnI$cde&T{9-z3cXOHt*SJ)i6(t^22cl|R?5Z!I0=#MSzX#MSgTLq9y1kqQ)mgfJp zAA1?N#V-ZR2Q?VnJaGAD#rb46{trTG?ED3%A{(~WDHv9#=Dgi>BVY6;pV_*Ec`qJ3 zniIO@qHw~}|8jZR7ZkQjH+Q~cOXlj=k-&b zcmx-pes!%~uI|ajt*_;(YaTCKKCkZC&FAy#7Z#tsHa)H`_4exZdw*WLZGEqDd-n5n z{dV_0pS)N5+y3vH(}&}~%2-yd`Cf7VW&XLE-*>UO|D15k{CA=()@7@V3{5+71o zkXjrIYMr4QP^sqa@B^sy9&j9)8>SmbH!vOp8UbnJgPZo~8avv!gEN6jE&??QqG)^$ z6oJ=0$@xX#k!W=7UvA$Pe+|^0!@|HIfTFz~C<51>SWtk?)oKg>+zbJ>LVxn0TRsCA z5a5{upb@3HK)++tp4T8PWCXPQG|(y;6w9T7L+N1c5T7F(f;AL+SBqJ9>oYLKg|ag6 zqnOkV3{9{}#U+(Fso?2K^e{j_P!guUfzjR?MKjv*lIZ53&yym|*-!v82Wb)oT|4^3 z3qt$65~y~xX&7`9&?h1gCR`|mnt(Dbfvz8Y)EJ>ZxdN&meGD1h2=x9p!ibo9ti5q` z1JFCV2m?$SkPX1r?L{{Wz3+%HOSci(EYzMPx+&;gErcm9P0&z5>3E^*M{f@z^xtnq b%3`Rk!vJqqU=9N1DnW)sVD`A!4dMX+KfDfk literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/stores/FeatureTypesEncoder.scala b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/stores/FeatureTypesEncoder.scala deleted file mode 100644 index b8ad4d743..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/stores/FeatureTypesEncoder.scala +++ /dev/null @@ -1,16 +0,0 @@ -package com.twitter.graph_feature_service.server.stores - -import com.twitter.graph_feature_service.common.Configs.RandomSeed -import com.twitter.graph_feature_service.thriftscala.FeatureType -import scala.util.hashing.MurmurHash3 - -object FeatureTypesEncoder { - - def apply(featureTypes: Seq[FeatureType]): String = { - val byteArray = featureTypes.flatMap { featureType => - Array(featureType.leftEdgeType.getValue.toByte, featureType.rightEdgeType.getValue.toByte) - }.toArray - (MurmurHash3.bytesHash(byteArray, RandomSeed) & 0x7fffffff).toString // keep positive - } - -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/stores/GetIntersectionStore.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/server/stores/GetIntersectionStore.docx new file mode 100644 index 0000000000000000000000000000000000000000..1b4f900678d98bde6fb03459152f98f5aca46a89 GIT binary patch literal 38668 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 }kst_!_+x~1=-vlnI+_9pZaX@|JGBnm0?GH-P# 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 - worker - .getIntersection(request) - .rescue { - case _: RequestTimeoutException => - timeOutCounter.incr() - Future.value(DefaultWorkerIntersectionResponse) - case e => - unknownErrorCounter.incr() - logger.error("Failure to load result.", e) - Future.value(DefaultWorkerIntersectionResponse) - } - } - ).map { responses => - Stat.time(aggregatorLatency) { - gfsIntersectionResponseAggregator( - responses, - calculatedFeatureTypes, - request.candidateUserIds, - intersectionIdLimit - ) - } - } - - ks.map { query => - query -> resultFuture.map(_.get(query.candidateId)) - }.toMap - } - } - - /** - * Function to merge GfsIntersectionResponse from workers into one result. - */ - private def gfsIntersectionResponseAggregator( - responseList: Seq[WorkerIntersectionResponse], - features: Seq[FeatureType], - candidates: Seq[Long], - intersectionIdLimit: Int - ): Map[Long, CachedIntersectionResult] = { - - // Map of (candidate -> features -> type -> value) - val cube = Array.fill[Int](candidates.length, features.length, 3)(0) - // Map of (candidate -> features -> intersectionIds) - val ids = Array.fill[Option[ArrayBuffer[Long]]](candidates.length, features.length)(None) - val notZero = intersectionIdLimit != 0 - - for { - response <- responseList - (features, candidateIndex) <- response.results.zipWithIndex - (workerValue, featureIndex) <- features.zipWithIndex - } { - cube(candidateIndex)(featureIndex)(CountIndex) += workerValue.count - cube(candidateIndex)(featureIndex)(LeftDegreeIndex) += workerValue.leftNodeDegree - cube(candidateIndex)(featureIndex)(RightDegreeIndex) += workerValue.rightNodeDegree - - if (notZero && workerValue.intersectionIds.nonEmpty) { - val arrayBuffer = ids(candidateIndex)(featureIndex) match { - case Some(buffer) => buffer - case None => - val buffer = ArrayBuffer[Long]() - ids(candidateIndex)(featureIndex) = Some(buffer) - buffer - } - val intersectionIds = workerValue.intersectionIds - - // Scan the intersectionId based on the Shard. The response order is consistent. - if (arrayBuffer.size < intersectionIdLimit) { - if (intersectionIds.size > intersectionIdLimit - arrayBuffer.size) { - arrayBuffer ++= intersectionIds.slice(0, intersectionIdLimit - arrayBuffer.size) - } else { - arrayBuffer ++= intersectionIds - } - } - } - } - - candidates.zipWithIndex.map { - case (candidate, candidateIndex) => - candidate -> CachedIntersectionResult(features.indices.map { featureIndex => - WorkerIntersectionValue( - cube(candidateIndex)(featureIndex)(CountIndex), - cube(candidateIndex)(featureIndex)(LeftDegreeIndex), - cube(candidateIndex)(featureIndex)(RightDegreeIndex), - ids(candidateIndex)(featureIndex).getOrElse(Nil) - ) - }) - }.toMap - } - -} - -object GetIntersectionStore { - - private[graph_feature_service] case class GetIntersectionQuery( - userId: Long, - candidateId: Long, - featureTypes: Seq[FeatureType], - presetFeatureTypes: PresetFeatureTypes, - featureTypesString: String, - calculatedFeatureTypes: Seq[FeatureType], - intersectionIdLimit: Int) - - private[graph_feature_service] object GetIntersectionQuery { - def buildQueries(request: GetIntersectionRequest): Set[GetIntersectionQuery] = { - request.candidateUserIds.toSet.map { candidateId: Long => - GetIntersectionQuery( - request.userId, - candidateId, - request.featureTypes, - request.presetFeatureTypes, - request.calculatedFeatureTypesString, - request.calculatedFeatureTypes, - request.intersectionIdLimit.getOrElse(DefaultIntersectionIdLimit) - ) - } - } - } - - // Don't return the intersectionId for better performance - private val DefaultIntersectionIdLimit = 0 - private val DefaultWorkerIntersectionResponse = WorkerIntersectionResponse() - - private val CountIndex = 0 - private val LeftDegreeIndex = 1 - private val RightDegreeIndex = 2 -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/BUILD b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/BUILD deleted file mode 100644 index 7aa2bc51c..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/BUILD +++ /dev/null @@ -1,7 +0,0 @@ -scala_library( - platform = "java8", - tags = ["bazel-compatible"], - dependencies = [ - "graph-feature-service/src/main/thrift/com/twitter/graph_feature_service:graph_feature_service_thrift-scala", - ], -) diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/BUILD.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..390ae1e76bd0ba743517549af3a8573509920035 GIT binary patch literal 36762 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 HtlTwoHop - case PresetFeatureTypes.WtfTwoHop => WtfTwoHop - case PresetFeatureTypes.SqTwoHop => SqTwoHop - case PresetFeatureTypes.RuxTwoHop => RuxTwoHop - case PresetFeatureTypes.MrTwoHop => MRTwoHop - case PresetFeatureTypes.UserTypeaheadTwoHop => UserTypeaheadTwoHop - case _ => featureTypes - } - } - -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/IntersectionValueCalculator.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util/IntersectionValueCalculator.docx new file mode 100644 index 0000000000000000000000000000000000000000..ac94ce0ab956bef91d78e501ff89d4b85a33367e GIT binary patch literal 38685 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 3 // divide 8 - } - - /** - * - */ - def apply(x: ByteBuffer, y: ByteBuffer, intersectionIdLimit: Int): WorkerIntersectionValue = { - - val xSize = computeArraySize(x) - val ySize = computeArraySize(y) - - val largerArray = if (xSize > ySize) x else y - val smallerArray = if (xSize > ySize) y else x - - if (intersectionIdLimit == 0) { - val result = computeIntersectionUsingBinarySearchOnLargerByteBuffer(smallerArray, largerArray) - WorkerIntersectionValue(result, xSize, ySize) - } else { - val (result, ids) = computeIntersectionWithIds(smallerArray, largerArray, intersectionIdLimit) - WorkerIntersectionValue(result, xSize, ySize, ids) - } - } - - /** - * Note that this function assumes the ByteBuffer is encoded using Injections.seqLong2ByteBuffer - * - */ - def computeIntersectionUsingBinarySearchOnLargerByteBuffer( - smallArray: ByteBuffer, - largeArray: ByteBuffer - ): Int = { - var res: Int = 0 - var i: Int = 0 - - while (i < smallArray.remaining()) { - if (binarySearch(largeArray, smallArray.getLong(i)) >= 0) { - res += 1 - } - i += 8 - } - res - } - - def computeIntersectionWithIds( - smallArray: ByteBuffer, - largeArray: ByteBuffer, - intersectionLimit: Int - ): (Int, Seq[Long]) = { - var res: Int = 0 - var i: Int = 0 - // Most of the intersectionLimit is smaller than default size: 16 - val idBuffer = ArrayBuffer[Long]() - - while (i < smallArray.remaining()) { - val value = smallArray.getLong(i) - if (binarySearch(largeArray, value) >= 0) { - res += 1 - // Always get the smaller ids - if (idBuffer.size < intersectionLimit) { - idBuffer += value - } - } - i += 8 - } - (res, idBuffer) - } - - /** - * Note that this function assumes the ByteBuffer is encoded using Injections.seqLong2ByteBuffer - * - */ - private[util] def binarySearch(arr: ByteBuffer, value: Long): Int = { - var start = 0 - var end = arr.remaining() - - while (start <= end && start < arr.remaining()) { - val mid = ((start + end) >> 1) & ~7 // take mid - mid % 8 - if (arr.getLong(mid) == value) { - return mid // return the index of the value - } else if (arr.getLong(mid) < value) { - start = mid + 8 - } else { - end = mid - 1 - } - } - // if not existed, return -1 - -1 - } - - /** - * TODO: for now it only computes intersection size. Will add more feature types (e.g., dot - * product, maximum value). - * - * NOTE that this function assumes both x and y are SORTED arrays. - * In graph feature service, the sorting is done in the offline Scalding job. - * - * @param x source user's array - * @param y candidate user's array - * @param featureType feature type - * @return - */ - def apply(x: Array[Long], y: Array[Long], featureType: FeatureType): IntersectionValue = { - - val xSize = x.length - val ySize = y.length - - val intersection = - if (xSize.min(ySize) * math.log(xSize.max(ySize)) < (xSize + ySize).toDouble) { - if (xSize < ySize) { - computeIntersectionUsingBinarySearchOnLargerArray(x, y) - } else { - computeIntersectionUsingBinarySearchOnLargerArray(y, x) - } - } else { - computeIntersectionUsingListMerging(x, y) - } - - IntersectionValue( - featureType, - Some(intersection.toInt), - None, // return None for now - Some(xSize), - Some(ySize) - ) - } - - /** - * Function for computing the intersections of two SORTED arrays by list merging. - * - * @param x one array - * @param y another array - * @param ordering ordering function for comparing values of T - * @tparam T type - * @return The intersection size and the list of intersected elements - */ - private[util] def computeIntersectionUsingListMerging[T]( - x: Array[T], - y: Array[T] - )( - implicit ordering: Ordering[T] - ): Int = { - - var res: Int = 0 - var i: Int = 0 - var j: Int = 0 - - while (i < x.length && j < y.length) { - val comp = ordering.compare(x(i), y(j)) - if (comp > 0) j += 1 - else if (comp < 0) i += 1 - else { - res += 1 - i += 1 - j += 1 - } - } - res - } - - /** - * Function for computing the intersections of two arrays by binary search on the larger array. - * Note that the larger array MUST be SORTED. - * - * @param smallArray smaller array - * @param largeArray larger array - * @param ordering ordering function for comparing values of T - * @tparam T type - * - * @return The intersection size and the list of intersected elements - */ - private[util] def computeIntersectionUsingBinarySearchOnLargerArray[T]( - smallArray: Array[T], - largeArray: Array[T] - )( - implicit ordering: Ordering[T] - ): Int = { - var res: Int = 0 - var i: Int = 0 - while (i < smallArray.length) { - val currentValue: T = smallArray(i) - if (binarySearch(largeArray, currentValue) >= 0) { - res += 1 - } - i += 1 - } - res - } - - /** - * Function for doing the binary search - * - * @param arr array - * @param value the target value for searching - * @param ordering ordering function - * @tparam T type - * @return the index of element in the larger array. - * If there is no such element in the array, return -1. - */ - private[util] def binarySearch[T]( - arr: Array[T], - value: T - )( - implicit ordering: Ordering[T] - ): Int = { - var start = 0 - var end = arr.length - 1 - - while (start <= end) { - val mid = (start + end) >> 1 - val comp = ordering.compare(arr(mid), value) - if (comp == 0) { - return mid // return the index of the value - } else if (comp < 0) { - start = mid + 1 - } else { - end = mid - 1 - } - } - // if not existed, return -1 - -1 - } -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/BUILD.bazel b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/BUILD.bazel deleted file mode 100644 index 7f0d975d7..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/BUILD.bazel +++ /dev/null @@ -1,30 +0,0 @@ -scala_library( - sources = ["**/*.scala"], - platform = "java8", - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/com/google/inject:guice", - "3rdparty/jvm/javax/inject:javax.inject", - "3rdparty/jvm/net/codingwell:scala-guice", - "discovery-common/src/main/scala/com/twitter/discovery/common/stats", - "finatra-internal/decider/src/main/scala", - "finatra-internal/gizmoduck/src/main/scala", - "finatra-internal/mtls-thriftmux/src/main/scala", - "finatra/inject/inject-app/src/main/scala", - "finatra/inject/inject-core/src/main/scala", - "finatra/inject/inject-server/src/main/scala", - "finatra/inject/inject-thrift-client/src/main/scala", - "finatra/inject/inject-utils/src/main/scala", - "frigate/frigate-common:constdb_util", - "graph-feature-service/src/main/resources", - "graph-feature-service/src/main/scala/com/twitter/graph_feature_service/common", - "graph-feature-service/src/main/scala/com/twitter/graph_feature_service/util", - "graph-feature-service/src/main/thrift/com/twitter/graph_feature_service:graph_feature_service_thrift-scala", - "hermit/hermit-core/src/main/scala/com/twitter/hermit/store/common", - "servo/request/src/main/scala", - "twitter-server-internal/src/main/scala", - "twitter-server/server/src/main/scala", - "util/util-app/src/main/scala", - "util/util-slf4j-api/src/main/scala", - ], -) diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/BUILD.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..d6efdef2a33e4c9f58e7d672c2ac97369b93614b GIT binary patch literal 37047 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
8&Zw2$3f9(Syi)UWre`!3uEh`c2i18;311XQ=5 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 literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/Main.scala b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/Main.scala deleted file mode 100644 index 10e8ec0e2..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/Main.scala +++ /dev/null @@ -1,58 +0,0 @@ -package com.twitter.graph_feature_service.worker - -import com.google.inject.Module -import com.twitter.finatra.decider.modules.DeciderModule -import com.twitter.finatra.gizmoduck.modules.TimerModule -import com.twitter.finatra.mtls.thriftmux.Mtls -import com.twitter.finatra.thrift.ThriftServer -import com.twitter.finatra.thrift.filters.{ - LoggingMDCFilter, - StatsFilter, - ThriftMDCFilter, - TraceIdMDCFilter -} -import com.twitter.finatra.mtls.thriftmux.modules.MtlsThriftWebFormsModule -import com.twitter.finatra.thrift.routing.ThriftRouter -import com.twitter.graph_feature_service.thriftscala -import com.twitter.graph_feature_service.worker.controllers.WorkerController -import com.twitter.graph_feature_service.worker.handlers.WorkerWarmupHandler -import com.twitter.graph_feature_service.worker.modules.{ - GraphContainerProviderModule, - WorkerFlagModule -} -import com.twitter.graph_feature_service.worker.util.GraphContainer -import com.twitter.inject.thrift.modules.ThriftClientIdModule -import com.twitter.util.Await - -object Main extends WorkerMain - -class WorkerMain extends ThriftServer with Mtls { - - override val name = "graph_feature_service-worker" - - override val modules: Seq[Module] = { - Seq( - WorkerFlagModule, - DeciderModule, - TimerModule, - ThriftClientIdModule, - GraphContainerProviderModule, - new MtlsThriftWebFormsModule[thriftscala.Worker.MethodPerEndpoint](this) - ) - } - - override def configureThrift(router: ThriftRouter): Unit = { - router - .filter[LoggingMDCFilter] - .filter[TraceIdMDCFilter] - .filter[ThriftMDCFilter] - .filter[StatsFilter] - .add[WorkerController] - } - - override protected def warmup(): Unit = { - val graphContainer = injector.instance[GraphContainer] - Await.result(graphContainer.warmup) - handle[WorkerWarmupHandler]() - } -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/controllers/WorkerController.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/controllers/WorkerController.docx new file mode 100644 index 0000000000000000000000000000000000000000..8ae79e8b0ce17bd95f0a1addb04e1b5c9dba4113 GIT binary patch literal 37177 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 literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/controllers/WorkerController.scala b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/controllers/WorkerController.scala deleted file mode 100644 index f30305b2c..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/controllers/WorkerController.scala +++ /dev/null @@ -1,38 +0,0 @@ -package com.twitter.graph_feature_service.worker.controllers - -import com.twitter.discovery.common.stats.DiscoveryStatsFilter -import com.twitter.finagle.Service -import com.twitter.finagle.stats.StatsReceiver -import com.twitter.finatra.thrift.Controller -import com.twitter.graph_feature_service.thriftscala -import com.twitter.graph_feature_service.thriftscala.Worker.GetIntersection -import com.twitter.graph_feature_service.thriftscala._ -import com.twitter.graph_feature_service.worker.handlers._ -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class WorkerController @Inject() ( - workerGetIntersectionHandler: WorkerGetIntersectionHandler -)( - implicit statsReceiver: StatsReceiver) - extends Controller(thriftscala.Worker) { - - // use DiscoveryStatsFilter to filter out exceptions out of our control - private val getIntersectionService: Service[ - WorkerIntersectionRequest, - WorkerIntersectionResponse - ] = - new DiscoveryStatsFilter[WorkerIntersectionRequest, WorkerIntersectionResponse]( - statsReceiver.scope("srv").scope("get_intersection") - ).andThen(Service.mk(workerGetIntersectionHandler)) - - val getIntersection: Service[GetIntersection.Args, WorkerIntersectionResponse] = { args => - getIntersectionService(args.request).onFailure { throwable => - logger.error(s"Failure to get intersection for request $args.", throwable) - } - } - - handle(GetIntersection) { getIntersection } - -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/handlers/WorkerGetIntersectionHandler.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/handlers/WorkerGetIntersectionHandler.docx new file mode 100644 index 0000000000000000000000000000000000000000..0ddb54feab7c31073d1fc2591582aa77dbead588 GIT binary patch literal 37876 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

(Lfy1L3hra`d&iQX$(A#q7eyF zgLqfVga-NqQaMx&lf5r>V?A|}XG!QSjbn4Mn|^ObbQk^oqzGrC)|!WFxx9?>`u<`q z3+f%3hy3t^I3GIo{$jvo5HL*5)LH6DQkpv)e=*?M9C?WlnKVsc$QPM4dlHzS-m8g( zh-oQFr8P+^0bB-eREB3xYsE!+^+wbih<3C^~hcC|YE~S41*9->*l>wf~zGEB)P_Z({cA z$N#8GStuy3-wO@`asvBbHQby{U0f{f%>UYF)vUJV^qm{MXQ$MlZO;t0#ZmTv=8U{< zTaMBO_>cgQhHoIY4_pcG`SLqt8xi9vW@%TK7VK7Up#dJ8t4E3tBQ&%W#IFodA%$5lH^-jqR!FaOqIejZ*_~{&rD#{J zwZ8m3V0hqh)J`m>w?-V`M4`gPJ|+%cS2FG5de`qJX?p~?{lKU{n7X(c+>LVjsiam;P4t)xVnag-APyP7<_Cvm-RA*z(*C2>6sTy`QnfT$+XxR z9hZR)e=IU(<{lmOLPF3!6Hx{VBKvAFni4<# zh$31J(prh_w`jzs^wHK#L0<4A!+cRwp0k+rLrdI%)p(a4#Yc*pKmGFB(8@p@0l(Fn z;+o*X!V0dI1VZvwIcMD4tq@{Ei-hEM3@k5Zka4|zS#JVH8<>^cY;SD7JnF_1fH+*a z+7eQ}X1x6~^H|+TmQNs_;@0Yj(!&~jACt+A9vHFC;jCn2XtrfKuvEi zxbT{Uv*kN<*64)Ga}y{ouD!cKsmxsS?ly!3a)Drz$V00P*X}dk0p-@;gw29H83^vy z^~7CsN$_fRe1I(R{9OC;8+Xt)rd{mui-Euc$4}S*>`4cm&&W-85xC7kuFht31zg=b z0Fm6JeXBO#M^#dJp^tLYYAu)AaI3Qe)dB8n`tmxYB(L`J$W3k7O$P}DhKgCftq0() zUx8-HUNd+i$-ymgtf61l*J02@Yj`5#-oKD=b_CsA%z3|71!E{yn0nX4o`{HZY2)#- zMe1YpR8C9Ohx5`~)s+orASrbiDR%NbG>lEgJe25hUYXXX4tHNJOfq_D?wf`u+B&{+ z)LfcpiTJwQHJiv@=f6~r`XakdZp!_Xvn|#i--6=2GTTOloOIhEBQm8sB?MtxE50$R zpT-cN0xz@}9{;3gg*=^g56I;3`W;;}nAPBUkx!cP>+NQwEj`@#Xnz~HPT_kG&h&C} zRKO6a7#JzLCu36l1WYY4M>JeKLJLDn#R-RnQ6Z&%!LF_@HB$bs3qE?T-)fK<9%Rm|XW%eF`M@NKfre}#!^IAhqxDb8YO3fW3J-{~62#UAjaV;!?!Z1BCAKS87z;FtEq6ntg zHF|143uEe=e)mpflJp?S9l}r8XxpUZ*hRlGcAA8v*$u$#KILGy3|incr1w#qB#OL_mNpCc(6RKiROogZ!sszj^YUje!Mef5U-*p#Ix2GhqE?6+sR^)N>N(cwjX`C4)g=yEJfajd_*tZ zlOe`5(a*>d0cbnvC`X$uOj?U()NN`h?b(%-pS-=QTsK{GF`{4xD=3WyqOsw|>o`-L z4q531DQ``QHKI5O=EBa?BSG34obf!uB4I>u2rHfUfSg<053gsORH}VdRJ1^Gzv1P;_JUMACNX*zXs>!n~ z6p@W90&k@=4Wv>l=}#kKqB6=r*Q)wwXy;n@+#s)}%I(zymP+e&{eyYV0=4Z%O5l}q zSqrLKO{}`n;P2nM;-2;VdEG(z??ucGRd2vbcOSoB!nk^NBh=QE>u~Y64PKN)sC&Y) z3=9< zaXu|3Sh{o3Vs$W~E#wZHAPvTC#~ZpD4pdqC8qvw{H&##x!030ODg{iG6(_crHzbc$*$=PpkV)y)1NA5UWdf9M|=n%VHyILthKy4L? zZ4%YCp;jb5Bkw`Da_sXn+^QRdyKEV(s}}lnx$u@@N6>x9zm_>bUZBgodSB4 z^qJqgS6}I7`684M^mmw}?Aw#pk&*`j@lFZi)96*RSK#~b3hpl03nKZF#8orRzV&LY zZW~-J43-CsWZP_QU&|33iVjV38$&2buPFH8WIKu}A^Kf>v03zN_)PHcGQdNRh>(i_#a!&OHtaW-|&SOKU8jt+`|0tG+xw zPG(wKR%Eb4-ssh?Ua2m0Qti#P6pPV4qd)poE=Wnmfeo`mCb&#SJ8elOCYPkhH*TM~ z;9gK>XoZyI$S=}zUEryr$$b`Cq^^@QFWj)ru)xL1FcXmbxbtkZE3%}t&V_l(3XFeSeaq;kN+~U10kSUr5s^W~Jxb^T9^yY=5N$liuf-qveCqTEaIS zh+fz?N7VP@-%Rg5FEqa{p1<1XcsGNLCHC$3zFfBI_v-i|OATGr=DywTuV2^;eB6gp ziM1g>g-UILc!dS>oq}8{$kXaKQQ$UE^MxpkXr?bnP=wt z*EK=4-g}cynGKudH$Y4L>W;u$AMaL3lc8Zl>F>a*SeloWGE_-d{xI=ejkxx`@7$Vqoz-^Pz%%^fHk_2Vp=0l-lQD8Oxn4ML!G9RZ zRNzn7YxO-TN+TSf4I2?me3(k3t&wJpcS_;dU z%TwomHWgHNQGXu@urJ$+SmDBS*$)hCY2Gg5q&FDMvyDC^knni~YbR2#MoFmOX|d^F zn76uw9Q_$@_uJLEpcK5?Mk~eoDXRu;0V*m|Zfq-zTPL}N@fM+^g7bWWqOw`la#?Fh zEBU8t_{dsru4in;)4Z2qZ-x*6AvNoiZW>YUVWauqPCpGNWx3 zy9Pf#d%$`}<(@MbCr8!l%3j+?Z#U}7&QZC7a=uSO=&t9yDy<{3wjhJ8{Qgv~LXoFz zt12F(*mW=AF*vnOp1`3899t$aU11MzEz)Vs6d$s_s$Uf)mUiO;ArfM7w3cS|(zaFP z&mW{#3L~cljn65hDAqhbcWkP%gGlMZnnOsI;Ge&BNh%wc_@L+kx`!quIpUs8(|AD< zh@@e;=3xMm`zJ>HaU$V4LxHwx()>u}Y|9cbv7VYvQRax2Lp#D`e%T@-q(udWPmAT3 zMv#xa^M=||0~h`)a3Al*?!1^sr8`+;6qIzo7q_i{<$7 zu9gD7@SuR%D;n_K*wxv^-d4lbhRM>!)b_8hz3QlXxB+H#ke@zc;|b#>ykY2zO2||w z`EWH-FW;dOx)O?vKDNVpciq1_j2_#{y@L_4^8#AMq?{e#yspFnL_hD3h3=7qFM@@k zvucnnl+7hHUEACtN#wz?XvfFV4|G^Cmmt)Fz|0-W5l*YaVBf|Zu$uzVDux3hZPZh| zD4W@FC76yaDSFp^)d;W^P+k~optudMsu^;&D1vL-;4)2|f|l3+hc1DMqvdX(9x9+N z!hh)cyE^QD)csW&HhQ)mn4cp>1^wZRM{p>89QHAQjzR;>hR#md2YVuYnM#i;@Ctd&U_A9^m1MJx!&IZIRDkF*>UxDfz0S)Uwa1b_QzTBAS}?sBtdAbm!)+H-2EtQ z$TmcyE8e~2csYzmzt*^1FZ1CG9tGJMRL#*+%~O)Ys8sUhhh%m2afw!N3r_dB>_lSHZZV=J z89QQAR_S)h_>94l{lEn7Ds_5Q<#Nn0Rs3?{yfDYQetjyFrp9i&udA6Wuh`7c>xe?! z1bDgf4&JUg46oiE4*Njtint(uF!;s4&Em!0P&xtq>pq3_*Z-KM#m$9=TLaf*!hzY{ zf94!^uC_*|PQX=}KiS>1#+KbaH+J_CC-a&eUT`DWHBk@WWsz1MW(&4~R<6t|d}ZZ?JGfhL%~IGhR&(sC z4WkMx-;MYLSKNVN9gJMNaVYLcsjv@8sX@rDt}uT&vZ7X}*zc&koX>hKrl$d?iT^l8Zv>Dny>MQ{Hc9<{{nBivu5) ziN-fQkb0c1)*NC6GR7hT&QS{1ewCh%=i9HR=^`GCuUmi(LC76S3C_)!tMG0$oeH#9 zMD@M-vy}z6VSamq0z~9!33=-gNF8L=c%`n=T*(W)W~w&HV!!&=j^b{vukw@iM@&uz>%D)q5>)2d)Lh{n=sW7@X2?`Vm%%YQyr2 zAi81UQ*PcJ0W+f#iaAj+jV)VZ?TdGN58?Ej+l}?Rb@zf3reP?`dh_VvoZkR$7o880 z$gAJYMi&l0jXEjoPojro2>tQkyQL(IsAlhkDw2D5RZ?quq}*2@24Jnb=k~6_GSHs_Tv%278GyLD^+v@P6+`>*)_iW_JUF?=v}<(`w2aPC+K0rG2~q;rsr9 z*hCa=6vmxcuEr5v|AKkzo%adAdMax9Vg|-mo?DNh5&_J1gB`z89&8?8O=Zd#tb2ct zcKjhfXN>uIXPWn}S(ocKOb-;Le)n;;Bh;}X`^BkHhWF3Rr6Pv8bsNekZ9d( zp2WUyQ@__R^xf6HcL=`mo>auRee`^i6Nksc+e3r~RnXJ<>8^Y0(tNik$g4}wmYDr+ z=Xqe$UR#%EY;I74gSphl&vsb@^>jV@gmS#vcRf`nj6lyk*oC{+2k&fckdFgpWgx;f z#S^?v^^w2*@#&u9bcc{d~oNDwgy2o`X}0v7K6YnTGgynxrIouQ=-qm_fH`IVZr z1DYzjK&KZMjqNltH3K^IKqqTo5yKZcFiy+wB}tq`47H9SQi*bC8I*=!7gGS)@h>2c zq5R$-_2?=tS&jHLLRiHIc_4%wwL6Ikd?8G2Mq!5H8EHNNkpoATfhC*Emk;K+Q z9*C4J6+ziV5HL|NNFYHrjqvh>4ipT>AVZ{Gdh*co2Kh_Is{7wYcE0en_n%P0^g8=~G(aj!qns~%hT z?MpTDOtNizifxg%s-C@}E-5K=wEp`^WlJ5H>-HBbOvDrLDF~P-;M);(201KXRwl+X zUj~Qi@$E5B%@NETq3sAHw?D}rq&F1LI}})W*zWsocVr2rc{&PDW$h^YPf;+_bu3h~ zqy0-=GMOK9J;cH=uw4LC{&tev7Ek%vN-LdtKye0FSx%4%)U4+0Dzp!3Xr2De15uV1 zm*`pRCJyE~{%dO}h3cx{pNePadUKsWS6pw`ZtN7;MDp&k8o!G)O?Cx3J|%LDA`uO7qf%r8mZ*eqS;pPG*9qyP_*2BB-5xbdS&!o{6)9ud&~2f#e_zsvIqZv zluUMPE^DLfWmvLExhE0a1SHJVG>Nyhey*_jYB#F?YA)_fHD80#{atLxuH>46BD3;% zua;0$=)F{V<;s!>$>0#iYEf!-ZRJtbc31fD>2M| z17;yXQBVWOB(W`rEt}o2Tf&Nie>v7>6RaPpfle{y>mQuu<_MiT>o=3fj>2X)nJB>`I?j@65{#{gXzcWF&oAi?Y3^tE z)A+B(N2rE#?t&RJeK1t1@cm}I`{Nx`0@I({R(ne=Ud<8s}xRi5T&VIE{~b; zk<=UK&u1AH9K0}}UwZ#mR|9cCNNyqCVb|vNSrhTmF4JSkMFPjD*?VSzna?}s9@RND zkZP2`>#Y$O5#wIpx=l-XGc-XkvGOHp&b0AA7y3bmz#6JX0f@1CGbk!zV~sQlf?h@JqHW90!r zOG=&yw)`Uxh=|x|)S}233ZMi4m-j#HC@aqJrvIJBQ%^FMeu()+S zG=~gDK>fD_p`5g#8;1g*MppuOB?Z{X_Ci@u? - val map = graphContainer.toPartialMap.get(rightEdge) match { - case Some(graph) => - candidateIds.flatMap { candidateId => - graph.apply(candidateId).map(candidateId -> _) - }.toMap - case None => - Map.empty[Long, ByteBuffer] - } - rightEdge -> map - }.toMap - } - - val leftEdgeMap = Stat.time(fromPartialGraphQueryStat) { - leftEdges.flatMap { leftEdge => - graphContainer.toPartialMap.get(leftEdge).flatMap(_.apply(userId)).map(leftEdge -> _) - }.toMap - } - - val res = Stat.time(intersectionCalculationStat) { - WorkerIntersectionResponse( - // NOTE that candidate ordering is important - candidateIds.map { candidateId => - // NOTE that the featureTypes ordering is important - featureTypes.map { - featureType => - val leftNeighborsOpt = leftEdgeMap.get(featureType.leftEdgeType) - val rightNeighborsOpt = - rightEdgeMap.get(featureType.rightEdgeType).flatMap(_.get(candidateId)) - - if (leftNeighborsOpt.isEmpty && rightNeighborsOpt.isEmpty) { - EmptyWorkerIntersectionValue - } else if (rightNeighborsOpt.isEmpty) { - EmptyWorkerIntersectionValue.copy( - leftNodeDegree = computeArraySize(leftNeighborsOpt.get) - ) - } else if (leftNeighborsOpt.isEmpty) { - EmptyWorkerIntersectionValue.copy( - rightNodeDegree = computeArraySize(rightNeighborsOpt.get) - ) - } else { - IntersectionValueCalculator( - leftNeighborsOpt.get, - rightNeighborsOpt.get, - request.intersectionIdLimit) - } - } - } - ) - } - - Future.value(res) - } -} - -object WorkerGetIntersectionHandler { - val EmptyWorkerIntersectionValue: WorkerIntersectionValue = WorkerIntersectionValue(0, 0, 0, Nil) -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/handlers/WorkerWarmupHandler.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/handlers/WorkerWarmupHandler.docx new file mode 100644 index 0000000000000000000000000000000000000000..4e7b7cf6e15f995a176337243cf41196f89c1566 GIT binary patch literal 36868 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 F0{~HI>aYL+ literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/handlers/WorkerWarmupHandler.scala b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/handlers/WorkerWarmupHandler.scala deleted file mode 100644 index d89d215c1..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/handlers/WorkerWarmupHandler.scala +++ /dev/null @@ -1,14 +0,0 @@ -package com.twitter.graph_feature_service.worker.handlers - -import com.twitter.finatra.thrift.routing.ThriftWarmup -import com.twitter.inject.Logging -import com.twitter.inject.utils.Handler -import javax.inject.{Inject, Singleton} - -@Singleton -class WorkerWarmupHandler @Inject() (warmup: ThriftWarmup) extends Handler with Logging { - - override def handle(): Unit = { - info("Warmup Done!") - } -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/modules/GraphContainerProviderModule.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/modules/GraphContainerProviderModule.docx new file mode 100644 index 0000000000000000000000000000000000000000..0e9d6f494de8ee25c66cd846389461d8a860266b GIT binary patch literal 37446 zcmagFWmsIvwm*z(a1HM6?hb+A?h-U;M}gmRDe z>;9O6^Xr6<3(2FXuXxt$G6RKLre!)@n;%z7sKJG*#5aS6xB-V+=SkXndoxwLy0zXy zMAspB0P^e)>mCM|adp;XsJhaK8)dCcREwY=rvS@9iki72@GSLr8{V9gH8t9=9a@@E zDqiNt0g^cG_o9dyCq4eul=Z~A2~cS)9nqDZf%pCQ_tb^aWCD-NA$s@obF$VGs=gyg z-`G_JYn9rCqmxEixjEnMjzvklZgT>)SGdLGygJ16`KkPb20R`v5uXpfK(1mxeDJHf zmwf3g+IL#>&oh#tOQP0(O~fxi>5l#K?C}I&T>eo^p!a2|cw=91?4Bg=8C_NnMByJ* zbfb_KdH_~$6AT0d9{5+^-o(m*k>U5XGH&uSI5V>Exq$cxd9h8Cs#w8_p4gFWfk02n z#95Jzw`9?3SEr(wt_Ef=!QuIyk?CT3KJGGYkyU`Yq2_{r?ozMD7WHLAyZ$;%5^RSb zv8&2%pr%z?_$?`-kO{>-hp8Ho0PQB)pf+{=*^F?Nh?qW&wIpImU}-$c4ZI_jx|0|E z8~_R+A=AVjR$STo!^$P>L9oeD(!f{fIK~!5IaSV>8H=j`QOXYOMpWu>I;t$DH3PHl zsa@f#cKId4QGlqtvYsp14b)@@>HwEn17Gn>%igC0dNR^Ub@wS#r_BIGAKPhyUre>h z=UR=?%U&>}Guj;I|4dNGH+W@p;B7twOb`k%LB;?h1$%(41EUeZ-sJa9o*6eT*UyA3 ze(xzhFRK=MjSM3$MFV;q_E{3$Z@Kl3ja}AiJd0y;Yp=jsD~HyZV2gM7+E!qLv#}Z6 zC@3z7FgW(y&o~TT6XR{o5Oe)GOPq$gGBL34yyt1|io%S?Xsjn(5$6M3O%}LRI^TZKMc9`{>j^{rm_*<4NP{QA(SO2tYDW zN^(I%lLo%XOzA<)EtkUv*zZ_DIO9}l$?qO*YBS@kH6g4y*0entT`~K3<7*)V{`xd% zpmdO7LRACBf_Lit2>AgClvPMERmr7Ajb%IR)WP0vYuXuHxBNqM@CU@CkGV6aB^5&c zxiIV6&YOUN!rI~a`Q3GT2XbFQN8=XO8noA@aW2Z_FWwm&xroCq{AR(hnF;qdm*&jr z2~z0A!Wj@!ZIZKeU6Xl7^*-;P-aanl(LQiqLSP@8A?i`jxrn~K^j+cpvo1GlYgi}1 zx>!MgfFS?9E?;bI|0s*fxXl_9a>p|*gsx+lIkd1McAWpB@QmmNPEA}!^ZXde=U9kV z=3Q^E#}EweZ;ZF0y!E`#4P(zs!luv-a$i+3#vk)W6zn$O8mq&G57s6RNgN=`AWJdS z22phF^ry!v7og~29aGg6s>VD>>J29@37~Bq8iCj@l1S92d82H<{R85L{`d4Io^ur1F#qgn&O z3Trs2CsM8}RS&s}JdNqr5FXCqW(R*2rHUAxB~7&W0_eR#$=2{&w~J}Ht1sn^L6p8j zgm~f=S$@G3qgfS&*20g8Z%Re;sT~7c|KjBO5MOx(t^pc$_2c;wvmqfatr7K^`r)DIl9sNVb|gkNI}VC7`A(2`E9gFe z5;DP(A6wy*v(_%*{a2hu%2ikt>i?3 zN%bu<-rx)@RSzrq*yMpVDZxVdPn{j1T^XrKXm)@VBGA=HBxCH^O8i)F+oG;BB(8f zA(_fLzpICX_suVm2ooAZRE%>1nO1Js&F3>KR59!WYIRIWf0kY{`1Z(wRk{l=GzvbG zA!+fFne7pG;v#`436dXg5Kcb`n^!CI63joeGD9qxSxm^}qbBc~&MIL}g$-9OvX;TK zC)ZBFuvV2g1oD_9mGKmPd}5f6k~AHvXu(igE{$JE4gctZ+o~o^zV~&ie-buCh)HhW zifNOxiA;;%l=X&!Y@C{rHWBN_bCMiI!UQ#z{^qW7wuChmw$-IqIy}?(bnZ0bO{pH1 z9}|o-moPD2Nt2~p->|*WPdp>!F+!HA!f+~u4$w8)TxzP>dg?Lm!&_@^Sj6V#7kY@*iiZOn#rt(5Z~1X_R`JGwmU&`Q4vN7Otxhe~R9SH=mI zAkn%nNjV4XJCT8gHcpP{vCxPcuW7+L-$zx^b`LA%NR?Fd2p1#=hCG^;FD%CQ)keH_ z+!^h|0req>1Xu=NZ#Gjh@)NjrW*Fx{=hT=Uq2sxIK4eI;M+YnU$vrR3t~3~#Y35(z zW}ij&nAkW_NQ0k_@u<>uQI{tVDk?IfE5li*Vz?j14YKEA;B=z=46rG=x0(=`z+@q# zj9brJT^bE*j)JaelXogpD}s3Iwa56V!OZkhPdUcW3irW;DFNOjjhAvelAvcADFxmW zWzX-I6Qkt7r4g=g!xS`_##c&|FO(Yf__eY8z+Fp( zUc|+rvIB*W1low8x1TQ#jt?-F12t1@Ly(W?AVTTD0;r1-5yi6%eD(HwYnZvgbh=w0 z(hShP5Q*RO50o#MvLUqC11c1A=Rxa3VYlNl&ckF`eVsr8Jt<*0sW*1H4_3gWrpnxvVnaTF!{Pfan%9E}){hez;t9Ab)6ayAZ zf9}WWlyy+4I{^!Y(L84m`z~xDF>Q?CO@7WhH_~t(MfdWT?`O znf=NvZDYPT&Z2peg0StMMP0zt;K*nB@WY~C@SF&#-F`Ij*tLB>z@Oed*KjfHs_NVPbe=_Mk{k*QzvF#QA(D!QAyLblQ*wY2JxV{sPar zi#H!PU?L4_mA#3la!Sf)k*h#T{AAR;c!S!Teqwj$({ZLF?&;p%ToP`o!eg+R%H23< z^2CnDM9FKzYXdUH?f^rX*n(kOiL`*$u`E|OSFM}7P6#3KYN18OTAo&K5EVkB8kDV3 z*a1xcl9rep$BGA$l_Z@!PvvLfLXI%Q$Lr$mhh&L!!GBJ`Homy1EWnj{9Jn&$0axZf zCg4B!m4Bax|J-9H2+IdBVShV+gX;^5M=!Do|M)A9qMb&fy3jL7Vm0ngbbm{G!*xUuCb%aMQH;0Cjjv&;IIjNbgum}11=Wv;(i+oYwM6Z}U|pJP^=76T zg8MOGmhqptjx5LI4QB)a(Nl#4LHbv&9UR@POdNhMb-?GR_+5!QukP-=eEpXn)-iz~ z!&5dOan5*OJUX*#&sk+z=YD8SH$qpd_PN?~@#NWcJHY!D+mrY4;LKI)EGud4)#mjqU2tg_ z@b(z}{`kCf9#t&Ze6pwe@VIf=p1jchd^q>>wmmp_@7V3Nj_=L-y=^my(R-CpFRA!q zy8kdZd4Feo?WDQd;%=N!KY_qL~Zf8};3y^b&6 zqjqxZa$8*&6cdT|31WQfTJLIat{6`oWcIOcU-#dEDSzF<(UqyM+&a45`3-E_tF&f;tFEyXpc4t!t!~2JM1_0fqA{zcy&zEd8zSU z>Dc1quXH&-3r^-d%i@$jdH2#g_vWw4wpn^d8|X@kXj$z(l{;LE2JAlkc(2v!mdL{G zYSWhBc%**n;c&laCZ~LRSUYg$JcQ>iy&QaR55c3jGn8`EW6a0y##Mt$+l8r1+53#} zr5tIe1c_ORuuqlHutH!!%qxW2Gi1)&$+_!h_|$xm5>8L$G1Pxf#XE1CG%=g1MQooE zjz9s})JrR4 zD@KW>FSvO)ez_8H!REIAXU&#Z6}pk8h2cx`(&4_HLj`6*$x}4SMeFm@munSji-AUnMNxg^C6 zUw_vy@$`GnE{OoBM>A%ccf>S@1ubdtIAcAZzFqvZrp+K2nnm%%Aijf{752o}r;>^& zB;|@1I5#a<9a$H9Q6Y~0EU742f~u6jS{_KZk4{T0O~3RRCQh!cyTWG+kMTimtYa8` zv7&=HJs(uj>N30ewG<~sD~#^#dBePux9WVLU?r@EnRQEQS;Kla9=U)6{4HK(rtr?mt5Rq=G1= zJhvcr{V#%ZMN(i3+#f2EIv|a6|A)l?K*hLURbl!k14sQ`m@_U=j}kJ_D|*8ZdLnrG z|B^^g1ViZt5A%oW`FNK`7zxs z*q+$)8BW|UnKB`!q@~HVYs;q$Ud7&|G%)j%)SL1p)cP{e#iGorlORLEYwCF~TUDU4|8*M4hN} z_E?qK{F-pufU1IujUo2IS&w;maL_ zTEul474PpcKfdpKDUQLNGrwFr`FOgVx5Sen6>d6&)GXf8E3e^`jkQInFUMoHThx(G zw!Zal#11Lm(Wvy>C$4WEpSrGg4@4#1=OoNtQE+uTx+s60LL9{mIVo#!1&0`>QN`RT z)n82ae|;OcD3U)MXW4Wl2OIP|lp1%DOSH=lRExLFvE5$>|Qa|TrDV!*My6BT3 zhN@0hG{0h8=eBFCzj(5gE%Jy2oIhb?eLP2=M)#iP-jFSNQU^BeoYEhxpPQ9`FbKYM zb;5n-l^Gn`-S?5^!2HB$&xvU!;I^iLr`u&s=gs%-V&|Qw8c50LV&0x_fYWaJGJ|dT z?TsK{Vr?Hr?h~uGLdpz9GHq$(7}|m+!+i7LEgAe=JRPXKp>gF?2JMQO?!JyFX~sA# zMSttCLsbWD>j!mv6rIt7wz$ZjpPO>4jGg)u(K82jctQhyl12H(uS=#k2^gImv!-AB ztX<@wECooU5U?G8gXVs6RTz?{8%CVkl7QLHwe#KPWLN^|$aLGa?{JcOy%doxv7L(> zRbfRkcYa+*V6>0CATdLJJ?K0_Ki)kMCFE56l+XPQUbcmSt=BPEic{xnMKnCMZ53#M z0|K(A`PgkCbrGX%`;Ii4mnSSU{ugeoqJptU_h3!5$#$Y*G?ZblZ-!_6-RH{lUd2DM z_RjbUx1=`)0i|U-YP=6W?b6Zb2%ERgN#5Vm=G&)To^FP(-mZoQ-P>R7+`RAK65kh3 zpXPqP9NRK|>3C}q%)DcKnI498e*-~UNq1`zfY9G+Z%!V*C4N+jeP%aU56mw)b8tWu zmmQ}V&%R4Wl#IY_>rgq%QfieB0DP}ncz!|a?)Fsly=2#VQ5Ab^AbLaqJY&>g(%!~F zHGM{~BL291oaTpHo+O<%$G~13X)M?7au6u;>-spWgMUh$xyFf4>0=E6B8bEE$;;1} zUdT)B{G#bmrNV9!JWrRbf;@nxQDb%@Mc&x>LlE~ALCA!CY=v&1$yU;u@xcOAyxF=1 z7b2y zO6c)wGdp1O1Rne6F^h)zkblm8jC{s>?FweMtGwPksc?zsiK=bVPKhr&9@HYT&KOl1 zJd4_o$8ZaYkth5u*&7)+9PL#6ca*{|r`>T}_N9_)8VvMG6JFn(&4K;s5?2)ZK|&Sz z*E%HrEy351&7xC+fSbNnMf-*PBHcR{ys@jX6{{oJj;pwy?_+d2%F(|j&}xE;U_q%i1#{!z#(Y%oo(;5?%Qt)>;*&9vk20TRxtbt5N;Jo)0IdLRR*bhikd4=0t5! z{_;Mbl~KqIlV_zd1%+tn<^&fOkbF#-^!o$zBY0oB1IeZxspqy zZnp$pt-{ALso->7X{}YV$)Vk#y@+!~O3PlyVw5?Kd>Fr(>`j7GidF9OB$qJDUIDzR zm05ji0e^AfT?WaD!z!eQMaxdOYz*e8+r3+PRosa}+<=A#o8hXw)8Tey1!>FP!7;Wb zHe7TMu@TY;avk)KCaZJDW!5G}^5lJzh~6qX5OP^s_$Q5}sDel6_O6_luS%9jAIVU0 zB&4L3oLh-KrsyPAi0P{;o(z^6i+hAOlzTRpEoHH9S4#2kk0S56v);=Pt@*J{drb>% z@_15B@#^|`3;eqkolG%V088r-ap$!aX`jB0sJ4$9#L-=sq+JU~(3~6T@ME}((o*V_ z(u1V6&QVT%3u_f zltp*0Kr5Ci%G=!)^{X`7nXs>pSQwW=cI;nmg-iEeb->L|PH6Is*nCPRBED^4q~;(@ zEwT$0;tWq$%A=i0g%Hmas~#A}U{Z~<@$7YbQry3%!KO#}!DBQ5eA2nydC_%T|CkSE zji~hXx@nT_XFBLp1=W;^&(o|O_|48FL&LyR=jyOefY(cIj(7Z80y;RgfC&|MZD1`r zxlx3!m7Q3d{$GM?qA(g$?e5R>D^UNANBTFy+3jB zz2jq}2<&iK4mP*!;%<>cu`@H-6g@rKzJ4#B+;N4A^q6)Wg#S5pHw*SaUe1=VzPtjd zHkznfnH7@-=A3SAeHJVIsIJ(mlhyvFefA_OL5PG!&tHHr%6#H1rFNR7x@UlJe%#du zl}F&uHgA-27u;QmbeI^9abSi6uV0<(m0gW?X3?%kaCJfPay@5?i`IE`Z*fc1m6A!G zZ+W;Hj;~`PReJdPcAB8>WJBtLJRF-^+Q~n_?U0t zazpwWWCy6VGggdvNhF>0$RzgH-4(se_2Lt4xP={Vf}(Ic7g4bJ-mMWI_9BZ3s#Mn^gTVwp~IImXYvxP z4yH5K1hz93Tux`}UP8v!(5&hXv-1m$BuXd7^s;Fl=bhhLT7I+Qw#+cAGgw>V4<6r5 z3h<>=%?@Zt%8Ritu$@1-hT&boSMeB$!oTBc01IZkvgNroRVR) zy0$mDpbO_9nR1VvF%yv+L@Tu;UZ*+70WQ28mPLKZ9X^Jj3^P}D$N#l7AZk>^{C0LuwAqv$NKB%4PxPBd3S`g~#HZ#=K-}r8#)Z0N|SqhAk#O^IBoh8Xu!N$Di^Uu}&2cZGZd&xOO_jP@# zLJaIwC?8puu92MPw-i2+6EQ$jA@zE@@JIyUsi#j4OBSA==_kE!5N=M3T#Mybh(<8; z+9dtNdi|kw^W< zfx}}eu&dSS;&9)KyK5B)y5)@3X}AbD8ZfwM+K+|v4B24>6rVVoVM?T3%T@W0e~HP7 z3-NgP^%3(59%+f?lMq4b$M*_RMtlWQ`9~1CHVvO;rFNE?qs0812ZHQhJaT(dSfD$_ zmkKB~1`fwVj7&5oFjPQG39~ac4gSrKy z6#-rK!$MO z19bF|?Xs08%(tUHZBAV1L30wAL>tiJdYtl4LAMa-`0CDc0-5x(;z$Ac>04+D@fT`V z{%U)*oj}4<*pe@N3S0^(3jNRL!^Q=g7v|a!WNT8Zaz#W&kM%@rp{E?SPh~~oLRXP$ zrCCD)>PGTHSKR!bRZ%24v<|R9}A3;F)*D zQ@tAI5WS6-zuC1uT|L(Lz<-(d>Vzk!BEXIOq-RIkia4Ym@IV<{J#|kGUyw%q#NGfC zy{@f)uU6GboYb2ms;Vj+2=2-p;++bb(Y5%296)8xemT*XP=hG{Ek4fJO@y7hl}?E$ z$$vy?=z7JVm%jqla@SYVPX-^E+jkV41ZqI-2PBIAPdNSD5i3fT6Mv9aBfolRiTl*n zn0(yrqX7dP!Dn4g#Qc@ed#$>Z-QE*EOmIQ(Obr=gTn7J3&k6Ge%UoGvWa^ywDG+<2 zPuZXYJyEvFm|}EAv~=G{>N7_ws$){QmzX?uO|msVaJPX*$#+A+iTih7tP^GB^THf;oqQDH^*XXS@gr zW)ID368-C#HJtbpXU|ON;E~6!kuse`H7j(ZG4o*lxhox%HwZy(iU>yrRQyVY@|@lG zBIFSC?|$(h+%afWpoT(p5_-tBDOEMtVH3_I^$f@{yqY8)2av5TLawhQqBtJ(&)SMX{{m{3Jo0p20`_8s5P}{P2y4=tDGQ z)HObcoASnLV!@2u-c2}ro&E=Ljjf{;qDXzsqEbU!Ip!4!gYY9(!7q*J)NJVK$7fpo& zg=o}blht5@v^qMilTN&M+6Bc7KuS%r8x{1s)6GXm#JsiFvqcmgC7#P7)(a6iJN@b~ zqseWE(^ZP(JcJthTd3s$j!I^w11<(=~=DyUa62zwaeto6(n%Pf2Ce zuMq`s6??a-A7m`(Ta`7_QUV*}xy+W7;s%VZ4aUFjW&nex{tV*!pFxR}`}DU5R|DLk z4ycE}sZuHstS)3T(8eDIxFcCVx_6)+R){zL?svvDMn0UEzaPt}zoG(>ex(B0&G@68 zo?J?15vs|Eaw^osb2nos^#i|NsKa8O*6;py1eOqo<6;k!DNQ%qfI@Fua67p_+LPjp zIha$I__DbulP*IYaLib4T*;?2!!7<$!ZAWLRhoU4$ZfXIjGOetjQbyjx%db8PC^-I zlYc67{+|l3GOmLsW49_e+!b?$PfI@9kJ^{$Kwk~y&eD&}RTX?>-FH(N6zxUqEn8H9 z*0eHw5v|$EjEddD|Gh#VJ#KAu)4jI~c4P-BVoT`+Bbz&~)6FqHjW!Es8`3B^C)jLj=dVSFnNG{xLem8$WWDDxJUd>T=V8qV)TP#00e?h_6Ou3iP9Z z-$p@6@vXsoW@|3YBP8T(mf_It+$l};HPkS#?pqlIJg4bTRYYZ!9Tq14$n zf00VBoio!g%-NhV0B*(W`8|})?<}5cAa2zb3}Bl#Ofi#sJgiaadV|PYy>(MH8g_{F zxaoRP`@e+#rk4JL8Wl(lE&Y4&FP2eq^DIFOo`<4@{Ya|4gZcNvi1`}v~W__5OqZ9ngLr465}14{x}Y! z;^~?Jq0YTt)Ze@8!jH`!^B?{qzjGP^k}E_1LEg;Fh8E87e~`}@NNqnxC2y_U|3%(s zAoZxE{s5=mtcX6_=Qs;}q}&?I*r~6#)#=yD|IonN2A7Hd-gY$hIq&viX*Z>_2%@;) znN9;S>}MpPHetwXIY*dgm0N8t-$%AHv-0@TrRgAs&a7;64n#}wv{6PL-^rzaO}()b zNxv@bJNs=x8-J-Ssa3H+(uP{l=zuGIj34Z+NX@(lF*5lH2szsF1fAeXW1}bzg!9t| zZ6A>Zg{Al27v;|HX5LRYo2e_19XO&ey>2BJFEqd#tPD*LL!jYsw<(XsX zrtk|&(gAd1^|z&WhWr>jIGic5=9n#rr~PSFUkE} zD9;=}#~f_3`^RBd6Hl0*kbJiXEsofn@g#uHu`IqwYKVV^E%Ixc@2Sj!=N_A^d)aZx zIIi5>>iJ$Nw`{q-u-KdsTV+RbS>dL1;#V!`uW3T8VmhE&_7KEC;m3c1^?S*r}h7zNiJE-?&y-51H{yv6=#m&3 zT9ORG3$zE#?t|E4cgEKhpSSeC*gv{@TYOjK1{3YooI#$`p5WGo0f&L}ST;s}g>zqS z84Pei2B5=0mZb?~6Z^T(ne{;h`4Uc>1wb|jkzw)xcOBc{A$TAnz9FDrAXF%_P& zFX~)DH=&|0M2LSK-Wf9Q{90^C{esjBk4%l+0TK(|1CPv1)B%D;7K-%)@)nYjihb`V zlb)~JhaJefX5FmANz6XIMG8HkPF41fp3~ukLHG-AnLw;C*$4kotEpUAMAl!zm2V(Q zLe>_b_C&fwz-@*rD1#&_;|TmQte(ON+{~8_kZbHdcp1iY=xbuLMzZn$h>H~dEe<>I zLgdnNWYln*`&SJib3Z|YHz*P0?+bJt@B-E34N52J{OaG3)3ps*cshzd1kV&r+|i?l z&U7Uq@T|?4l-$_n4SKD%Z~^8L?2gIU<5GgAM|I|sJ_T(gx7-d)-f0;yd8aVYBYsvb z5dTb`b+*o5$*bwK>Pnehj%WHyAzVNF{t4dBI4GjrY?(@H^azvj5=xJ!ePNY>Ww50Wit+Avw7_>8Q_=0u(m2SM)Q^DcerOD zKQq2NyGVPr^IoHM=J#M}lUdU*xGsB^u5$o`k2$N>&ZF-|>#P4P z*fl&w*P%zBywt=rh^_QQb+`o4L9h|lc)EwfWy2=PwPm+(9M83~IQ6#OPNCoGZys8J zut{li4#~k1=mBTu^dae#o-^*)3j`EoV@nAE=Il(KyNU)l{EVH+v#Ltu8rH#*CvQ1N z$`;iR?_Y3~C)A;jsUS9?k51oV23{0?q23~2EEh7EY5`&&8@G<-G9OFx&@Wmp#CsYo zHyjVtH)Xyn0VpIVs=+4!EVh~RHght8JPHTEUSgGMJV*p=as7OHV3e6;w?CBf$Da zbo(b2=Ase+9+(91iRsj7O!#E{TvDoQG;H*S>1ub45rOVw#V^k zCu*1#jDuq0?^N3XT;im&=evC)tqMP+mv=!_emh7%gz*xc(?qRV=c4?5n4PHq#mO?4g!m`RQ zR;MRLC(=ndR?;nt%t@E(_2A<@3&`#((N(Kk(bbaePt^W!-uR3UjrQni46a)*ImP~j zeFa&(wp6&_Di?E0&$6jk?t3pP7p#rj!CBz9w_r36xj5-?-bHePWB4gIJOgo_7Hgt0U2voO+*s3w}YSxLxOV01Ed1k6{1oQb@r+ z1^50IeDPaw74C_XGxMX`iB*>eq@W6+I_*Ou;iy$P;i$}Cz^=X3i2>370#;~qG>*cW z90I|3xw-XLF6!9i62y3sp?}Cd6!Plyh4U^MDgqMCMVH~4I~()=12}R3&O14NrgZxg zq#%Ma1jY+?waaUVhweq!qp&=rU<8NhigIB+vk;`9SLap&bv5S{uvHn}`-odXpD_pM zy0&!N?D!^sy&v!+($je(We~q)dr5ff*d6F+cmdA4N~3qW(4P<}O%|9EqmE63Ud9X0 z;A;e^lNJY>ho2ZXDi@+D^8uIhPRlRDh5p$?|0?GHnj7c*N5dgasstboLk5rpbEvq)AY+{iYp zvx#SZ96AQBiecq#3sM2P|Lu5YMphN9M4?+1R(O5%{zO#Zs>`$48`j!?8={waYJ?nF zj;JG?Xx;u-j|n3S5%wn3hvp4MCKJFl3DKsAFPlO1o6u!Z!U{Z7RJjZ!mmXhT8_00) zuqqnfIT{|8KyTDGSMMc5pWRX&-uM9oNbe=)l(H@GjsF0Gi0!(o#|?B8XW@iikDZPQ zP0!`7UmPSCqJT`?wrlow%f%xL#4v1>3rZAk7jMI|?47lm93_`tz3}gM{o+w}#9W&g z{|#U#{~O>q^bY{rdl&ybh~aja;nN<1sO2qJo{9`P+YZx!2rx6AtWey*?Uu{CBP2Y) z=hRN$y_PW*-@UgIfDYRwmVyk2SH{8H;;mDp{z-qx_7{Dzks04MB+&f9P79zt9JKvlknO+2 zslkW$9$s%Sk?<&d!Em}eyj|SD(Zls)q~JC9pe5rH5+%s!b8QRH&RaX~C= zHghn_Xg*bL3riQdU!)XHDk$RkIHcv$M7}Cqgv;5pZ$)~iq7!?auD3XGu}5~54p_Bs z4A%>|H^G_5g|!3>8Vwt>rw>AcoS=vm=^BjI;2c0sAt6(dFEgRV z70%qQ3~k4(%8;aNWAnL1rz$y;-N0bih({AVGIo+OJc!Z0`qZIr#g)Ld>!K2sHr~u+ zaHxn+4eA{5xncrBjRLq{CXVJQG$@89noo@Rhn_!nFtiL#$W=sWXhLhOxLVQE-Qi%H zzKa=}p#EepUe__uWmp;?!(n2oWy!4Y8yb6=@nkUruo=sSSl6*IrbL?k5?`*+CRd}F z9t(T5cB}ZXd61;>k%e~rwrWg92r(gX|7p$?s!_8P%UT1377aU5BXz363jK=3xs!fP zp~j&?hR8WI(J3J@^5t^GG#hEeDqpHXhNSZ#Aw3mp0!?XcJ4n|<_2nh$!W$)31!S7u_ zW9hHB;3;NoO$qrAMZ6z|G?yKcm)P;4m2Q)JfBcJz2}p$<@tcY%e9&;acAC=&Xp<$y zjfv3R%5bDj^+``ED-nZN^jhO%hcH_$i?LeL$x~9QuMQRMxRdkL2Oh&hy@oHu9yMj3 z$kmFNX|Fqb5SHT=nlQ``HByCsq0*jE(bf;0Sxr=pu;6|NmPfLhd;g#)aC|@Q-e3V> zU}yp?BmgPt#7)3MnZ;7X$_Z(41ozRZZoEy^(B!J3Vwosocx>CNFEo+3o&{8nWO@u@ zo8<2m1rxOOybDZyg{lN*w&}BQMFnq#)mhX!D6Tv6GcwxW7~M5B!J#PBisIS7YiKgv zXK=T(LID}$6Ctk$BOK&-PSipZLu=}e#3%$X!u5k@tH-Bo^7JzWa!N0Ywi@O53Wqs0 zD|4Dl0n=7@j(zL1?HcnDi4L3z!hAuxhfD2>VpBT%>cedmfq{^*nqnv+Lph?ihgRu> zL{AtKDjaXU94zoDeS|Z(jpH`xVX$Sm*u~TKfi8>`G2fA5zI%Ss@`r^$gP}l{iD@b^ z^8hU-^|cY|O@GcepzL zR>8#z>PL7G8J+Qij{C^dT?n_RF0rkzII8;ZRPYW zXEWf1Qn)mV2CXBQgM=k#5(QhEF5bErJh4K zJyb5jVtjVaF3tt>JmD4&(h~~8Y(l$7pjn<8NUuF9n!u#|w+eWqKUDpl zI92)|%5x*=q&9~kV!Sym^IZ~)ywIS3Tn_v&mNq-T#J^9>Se70mW^#@U6O$lovrCJ* zN7&mAWhIiFzPk@5K22HGO&olYe=tAlF%Q8qxlft3>Y;peUGg=OkRsqn{rfveC;Imu zkljd;T%lXjkt5yXbYfUsWR4Ov+!AXn3ncsr;PflZ983R{24N4D3ew@e`id`1;7P^iOViA3M_AcmzzRw_ZGE;+@tK%#!ge>4`r>^het z3VO=cBrRY9em8E~PjaxRnjb3yjuh@<<;a9Py$oNW2?SF53kc&kkoLcUtbYT|`%H9t zOXj|rEy7SoY?PXW^I2iV{DHt%4xC%;7_HE#f$#lDl&Dr5oE!lvX42qY^I zlFXGW$Z1k7;RnW{6h9IF>A(Pqaw_4q5!-<^Y(^58i9zjRh3C*tcLIir5cJP?!bP!Q zo`ht?kRotSB#@1nBB#K(=#4p`gZBv>V#qCLEEar*2njd@KDu4MWT$MB(nG&w&H~%V zrAxwhq<@~=lXj9%B}U&yYSn+UAKC@ zuJ?oK{j>D<$Mg56w-cB4*X-%>4c)8f+q3rSYNYe?>^tDm{>{!cem;7A%=Yfi3WBEe zjf1&208)CgOS*iv8q&CnKIhu7%aj2Z*Gu=(>A{!QHS(c@@Z0n7jn~rFWCVRn#_-_l zcPFR-sjGVnFY~>-D30oJC;O{8)91QnN*^0R%I;-vH;-2i^J}MCeJ>sU>N}qz>&IkM zZy%rcCS4yFi@mjRuY&GJhE~6GZyz@S{f^SMJJu-CPpBSfyd8=*g zxVEul8$!n!U2TW~*PfJ`7hZ`cX;z2cYA0*m08T*l(xRG0|OB=d%eEc>9ef!0OYuDb%1l)LQ zZ*~0myaYUieD6*#yqgvG?d{cD^v+1-3)Q2q;k2Py%h|uN33$N`Nw;TGSs@;rPTU)$SlckSUH$ScoUmrc~Ti@=s2`AHW@!Cmrs|Y zvrR1vzF$^1J5FE%o@L({^y*z=Ia3L!KOFD0-j9;p?X+N#W6=q|Hn=_1dA`)h%XM@M zYRDtLJrCocRsYP((5cfa=zno|DnGoTY>%iF#RZg~(BmVa%Mc>I zz1MH-wC0b=@Y7@ctn%WlXyhPoIAFrX0t}N|43k=ziOomJ&rhY4WWp-)Di1o}r3aHL z)myhHXJu~)MV*^*!t6b-AmluFI|mSUWpDHZ0h^Atflb)JCf2)KK@SbQx30$>$q($^ zRd>_ltGCvYwHaA=sqOlhYlDZUySG0X_8~coj?*45?(C*r=0yF|-)gpOluL!TWOuz@vhl&rXlSdS$WMoGye> zcqQIFuNs`SA&aNyrH1gbXmruYYY zV?C4mqLcx{%C+%`aMS$}36ZvZq1A?D_?}smA8B!ST;oFPP?|SG)@d*pn)DwIb~S98 zra7n6Pm7z)&Qwk4I1d?}9|$CDR`nxnE9s3|xwEwc&rOk#LPf{GO%@h3dJ>N7=nTS4 zy)c<1>lNU!$uw#qD@N%z-nHJkRx@FnA6m{?I-2h=H{uXc3|Zcvn^uzYXJtj{JzyjoJ3gI+Jm$e})P^{{}7SUa_y`{z0s(gk0U)6hXdL`%#B5gk% zY^Ci+2e*0pqv~EaE5BQts8i@wTd2NzS z;4oC+u;11YE$z#to)GV@ucDrV_KEkkDPF3j;yXaRJ?DMs1?ii|Z^4I8=+V`tr)dn5 zb`fq2>L2Zg@1=aT{qdMR%A=>tCwB@<1OXo+EVm5a4`0rL_xCf$`tH#paHRxY$Gtb5 zxtyQQcv?N*4=rbpE$`SXhxa()i(ST%u-+bAA7M`IJ$}BfXLe!mWwviV|756wZfZ9U z%c>&yu-hu=w0D9)5HY{Cvact{&t$wcd5har{u&)_T=CY*(7AJa747wN^l;&6{PD-i z&5L>Mq>ep)$aRo%>ls(ZlqX8+%dJVP=PP$>w@Z+bVCCYt?%non|7i5Me7g0l*X9r3 zsX3Q~WcD-L+XL%tZ?VU@^XX*X)^(9H(y{fW%B^ItwYCTO!RE@Jqq6{Q2jKJTS{lKW z&stiP(OI-Gy>m0(ygGz8%)?=Ot=bF5(5U3abx>^bg_hY`jC*_r5a#sXQH z#vUj0qHqSzWxck>9IGcz-D%nUL!GqatTVrFJ$W@ct~%oH=TV@~WCM!EOBH}8J` z%>1R&QK?E=d#%;yw08GV_qHx`j4ur+(?nEMBp3KZ>R}*bZAo(R9dTX#8kv1ppfdDc znmk+TYgm(|V76<$n*g_9VparvgLZ50WTW{^iU>hM8t z(Ap1_@E(zuI+*>h3o)87ADy!I;*i5IxoYGdg{T8bz2qKtf`Q8+p(1~{EiKeun@nk1As z4~aRXCN>CAITR2{X4D*>%ku-habxfqbQcKR0exG-@m(Q zm2+|rN5z(6!M-#5{0;de{6gQDo8hu`x}?&@o6yCvhBL?Zn}eAB)mwlOhm+dL;I!Mj!O?JikX4-fEZS{+%H-qmkk_YY}EXKuBgQu=Qo=42BgC5f8 zkaOdwZ8yCaalqD!$60$fnXgMi8#crCWp-K~PYL|-_PvPzCcZe>`HYK zAtb6dVees#1=+ES#*mGVLzk~e>3uqyW3!Ts$>X%gkBhaGjHns?TPs6$BhW8AbOB`t zDT9l*%{9)vYifb14kf1YLBMrjO>6E@LYGI3%dxe%k{M34W~4`kXAY#hUS{;m=Oomn znT9X7Q~C8G%Xe%Uy>MJ{ene;s>|L~iYJmvuxzWRcHM1<_owyap-?VTd#BxH z^NKm8?McCuc+@wl{|GCnrtSC>#Tey`BisvQqglV zi5_*Y=PPOb&gVzVx^?1WbuZ>U7anZhG|(V<-Oi5CnmU^&-OUyrLp>Hdx+;&~p79PW zdX>t!ioaR#x7eH;@+~({FfUa=PwoiUy_??FZzV@to4*-FWAn${3+XcN(Bk%)qnaBF2MwO3p*o zSGVISM_P@0hVrRZpAfP^toh1|q7GSK5A18*vnGs-ry85c*Y;o@5a%4JM6XT6T?Hb9 zCmomS`?1Tr1KRh;^xu?`VnZ$P@kNQ&bV4YbxBCNoLQi3Ao&A1SF?Y)OLq5(*wl6*W zTiH`egO_Lb-W^2G-W>*yU`f1FFDS#At89YD?<{0Z;Us*LkEb{ZMW##0ZXB5h!cLoS zFU~(F#w(&gf zk+{gZ9k9!`tj4-q#S=44*iiPo7?tt}8cM>tHT*OjKY|2a26lThf2c!|meKp`b zKsvuB#vIk0xnqGwnXB&0!_wlfGg^N0cy`*jH~B5GkXW(Li3f(0RT+DU6Nu914YFea zE=j@oIT#l?tYS&O+b=z}d*ZRGy60-jhOo?DCX8IXx*B88D<&Z%nl*pkDQM#l+RGhz zt5gMit;tdixx7$!`+B|b_{_9!mxq3CxLt5RV6~g#X7!$Q-Ztnf4R@2d-OFepzP9zf zgYH>L&6lapGJByDfaxjCW}XKlHEQo@Hrc7gnKC7Ga^j^r?K_QCOm`(M$;Pbg*PX+V z*>=WMw(fi6#eJ4|d-J{QETP#-UnZ@z3|Zo8(wifTs-bd65=_MA<<&JT^l*_DD(mXN zMb`uSJRZ<6I)iJrneDTmMJ^&prK@Heyn0k=eVkpYT$8fQhx`2qS^Vm?bm1HAS2N?w z-XG?^(;F3j@gji|mLm?6C-{IXEw38BHM{d6(kC7EGdG%R1BO&(LG1vI$*njyA0sJ!| z(ztx$AO~-h@$==nk83H5ZRCBaFs!4@Ue`Vczkn`MHgd@E6Ee5aGTdrb&6ggpUfw#y zImqthZDC_-#=gV0L^-5>y3bd)yUd=KIddA2{U?w&(623FeM4aB0&|~08HSa1+UMh7 z!ExSOH?M!lDCt2rr}{hTvE?!`-0XRFtYLNd+?|vy-;3E*?kO>oDxG|?i_8b%M8^1G`@~a(?~hE4rM3LsO!1EMzGA+_WHntF&iog zkQ0N`wl7w>L}DmPakBLvXk~?2EnThVa~tA`gsbixU*6r+5_AJx=Qc8QPg*hc%sX)(8cmYm&?g zp|*Ca=1JUOPlFo{%x2btd=SFVQnEcG?#-+QA@@yQZ*C{=%We4}5*&r87m2N&Jv-uS z#7%scahsx4lP^ZNEy3R42(2+9?c8t2%f1*PcX4N54fO*-Fa0Go)yeTMsXt3syZNGrWH^lP zY?!}bT*s6Q3GZ%4Lu_W*aV-Kmxv!n}6~LbyoZOXupKN;!*a`mp|7Qo_h`P`FvgyLv z&W(i(9^icd-_E@br<~*FNVb}XEL+IEs!-^6tss#5Vlcs^%|J%q1n=64{1fULk=Lw6 zS+0So@;QpK^y1PETz6#h9+rXAkxt>w1+UlJwPNsfpN(hp25AsOfhZ^Lo$?w9ySRd{V6ldGqnVu_^SN z4)QlG@DCBNxFI!Pm4M}A0Jg(3*I;MHs-WvhOyBMf9E2pleQHnxhY>rca zPZUp~Z7aoX8vVM0xU}6ZRNb7<#jAWOI^5YDSzhxYZ5AbMp}a6WY!*LvH$jHq#ZNZ0nEt3_b@F2fN>aj#~=QfoCqsAmu1YAK4T zo0GnWa~f3aM0jHx&wrkcMXjf0^6*jHF^0_bQ+LaydCW-)cAjsjSxs7wmvkhuV~vbs zjenaDnIVv(hwUBgfqQX~BhQ||Ve{?jb+o6w9h5_=|IdAoKyzV>pZD{}fsiV=54L~PKI=q)VIrc5%+&pbLRPPjUSC$JZynyB-S}Ata`ba06PftjK8ED7!L(5@3mx^`7`GX=+XV3yApE~WqJaK8!NC}cT-@lEJP2v6E7gro z9K^^9Dm35gTuPY-sJ61q;o9npD1>l6R^}p2SOeIheJBiw%Wside(~MgP?*M-PofZ` z!7#s~dZwnG5?0KQ+oXS^HR%?6R-gp5gAR-YErN(bz@V-bz&g$1Y|(36Wvb(mp|BUY zt}oEB+|}8`pt_mC-G{(jW(=keF#hp?!PjgK)O$4%5CQ{&Fw>8ssyM`xEuIurQ|)zr z6#JQ490bCqfH%ekhhBKwA{>OIjrg!r41#S2!Gm6pWt(^cuIwd!$moY0?%ICS$I{&KeWvd6g>| zhL0_T*A`WaJ%lw#H+=vGRqJ&;AN;A7G6xP71Sd0qv^ znn2Qkr~OZZ`Tn093_wWsYwXVX@#zjY@0-5)3d{<43|zl-o?ep$&_h5srXZjYr`MW9dWCjEXAo+KIsISv7(6ZkO{Fyx;% zfJ*#MkMw(NWGHQRV@7u{>^^nFyGhZ7kE6Spqqm)-r(1e5EJO~b{C@YwFo2KvhhYXe zJ|-HAdh%HGOV$1};>nBH;YSTyE<{2HCknV4uyNzO#g@o=8O z(}COZY~AZX7573FF?7>Fcd<(eRG+~__OwQwnUYDBW+U~{)|5`LAM!^p>W6`^EJyEn zbNw_&-yDwEcDDx`LTy|;V#2_pkGC4{H|1=PYQRKb+9$ZWoo<8R z)x4*A`r}8-PoF*BMm^pF`12HH&*j=v@ROHH>&yTaQ<`iv4SV$KNp~;ijDr_pt2^PV z%tDlShGsfi7MX@t(FKl+BruYiCp2<9dhVrAb$LS0SK+yn^YpZyKfc9vym)=UuQ(-RbDxhdyhc8;fu69v>0YK zMh5m7W{%OhHqnGZA9s0=H=t|jSv?t9H!mAMUux<+?FURBOUKs1cfY34Kf4 z_AC3%pI!Vxw{mfru>`MI+GnlM%JSZ^GPN|24~k>eY_RA0*21HaBH#Qq7X*VQUs!<< zz0&DSNuxbjFSQ531^19`-26>%Zv@9EP8L>_r3t$fWtt>?z2ns#L?tKQ=^>UwoZWSp zGTh=31Uw_u3JL>3 zDyX!(=-@p60?N!ZY8pxAGB|=6ULmfMQL@#jrr~-)bsfSygEy`?`yY&#j=?C_ej?1q z5GxC2dD2V~jwaXV3y@+y(!Enc>u`(Xa5E|F?*kVeuxp9)rIHu;#SaekV>8JJ^y>K860%>;#%jIiiUxB5)`1<2=5d?*gmOyiK%V#(;T-mxdjSFmZ) z%!qxALR{Rx#kl-m#aL-_{I+hXqRq%K5K*CG|E;6Lf38K;$a{lbsgu{AM{k=0-ZP`4 zi~F7T#ov^TwgpMQRz8iMX=}ryY5T_lZ-cj1jjux2!`s``zEIW`a+8^}jH7i1%g4Gy z%Xn@yU~J)D@hoK8Q1J38V`$*qc{wt#9MNJJpHa+M#ib#%ftxU_+R_PcI|$Qzy;4~X z!|-lHOzfIhSQr6JhFFKB%JZdew~dgP*86gG+3VwdJ7(sKc+01Fu)HHWNWa6DWcOVW zCwS~kNhf%B9>uRts^O|$1N(Nw6xbAPsQCfMbZi9IzO8l?BJQBUlBW)*q0Shr;0CQ| z1~GBP0M9D;j$>M82~16;?ZJ>zSn$5<26eWXiPa>Wop7@}6G<9T)d)Jmzl4!}; z!dAg|lFoxD>+8dJQdb4tc*HU}cN%HNQ>q4$cy{^SA@B-C-64259p)pH`Q6!9L3e?7 zTwokZ1`?%1TeGP#6g15Ka|lO|MKlDg&jq&hN6SB@&y(9a!)0^tRMeC}j~Ml=@QxVG z>c2746M-Hb*%2pWC;w4#N5@9^w+c_tU<(7g@F5ws*Y~?urOzt=(xIAv0@U&D`fnZY z6Pt}}Wd9Em?uFXfej|@BN~tOaU;nZKJ^harPb&Y0cq#{4f&TxnV$}FBWaJR)B&;#% z&c=trb8_l-9dBgSrq>vu?UOIa=bHF8hAf-8%xN25+303_`wob%zHeJUFbt>H-#B*~ z09?|?>WNl-xp)GOpf)xD<2TP;+*;WnJ7u%}VH8t)ytB_LANXvuwo)-f8gDqRp;GJP z@fUy}Vb%tGhvV~p8yBsI;uOl#tS}|(XSC`_SLmM9&cF9T5>=)!+;HBfGmy-WY|Nxdcuo+7uIn2oFWfsRT$ebQEAFH(sE{ti_8I2S^t|YQ5pOH<{z5EH$T} zmjoddgx+>mbFTaFGcGr?AfVXtkSrx?4c*@%n18bj=R~oUzEg;DB@}Dao=UW(mtCoNcqzr_f1x&nCJZcO3OwXs+3Mgxg>w?1*vM4xm22!O zY0&#?fj5K}s|50_vKAu+F?2{~K!%#iqLm4t%M`u4&#M$>i93mDRb*q zE7L*;Rv7S|qS)fl1#n`jbuzAS2>pkvvgKGobrX04lnJ6t46$>qsWc?1wo43{1W*jB z4&6$4ifBWi#%KL%RD8BSikd;Hh>ILrwTe{6;Z%Fv=15mqdixqmpES!xGOXv|I4Msb>mK>>ru zU>QA{F3n)ss>!mLRHh;E4daE%8YwJKIz(~KAcGI%A;GjztT-)kxzpHYi2_X%Q_)n< zzQ9pwQBTz?qG1@u0|ci=a+(}b*W{<@W7`ggBA6f!<1zN1kCkUJu9RaSkE$^fx`lH_ z8?=>fyZmpmco??tz51UtGy`PoNNC?V9Q3o!vJ3YR7yRthPke58z69|=vs4(xcC%Kb zsUFTu3}YSDU~1fjUcRja_Xt*gLVj+Ma@8LhtYoU;`pWRI=`*I0lI#YnUDPQaL;8G~ zxb7k0^J)=V<6M*|i1hO?6JfzGJIQu4w{7knoVH%LHZxy}OIjNpqnX7U7nYIWPqNpn zhQZ6K#zrlM2+Y9Z#VEa19^(58Nko!cU?R)=a?zztpoGjQl#OEpsPJUaEe}YLo~hFj z#gz}pD^y3$Bh5T3rIiy9)L6Z76$tA*2%_a&i20VI^40VaFkMwrdesmnlWmk6s3kCA z8Q@eTw4?GPU#evM=`3!D#y4cO&J{^`HyG*-nXR3#$4X!0Z1 zr=-hGcE6n@B~HsZJd)9fVWvz^C`nKTp{XfP&m0CG5pA<1^8ykY?ESQUEd9eRvYJHdL%z-M9dTP@$ zDaER+G^(o7BmYD#hW#fh2~sE}@lriiI-=UYEYPb5T95#b^~ZvluE?Zkl83dZ-EuF~ zWG_wSk?f_eNIEFYufRof7k3Fe(4ydjRP8Kcp!9Efm@| za9tRaQ!tTFz51JYT3IAU#;Gu7Q`-EYV-{49^90$cCXh04E_hnT+yh8CsZi>FP$mQW zCuN@WSqnRZkxU~lC5f0g3Pns_LCb<)k>(40?BcN|ro2p2#Mzlx)XlHSEG1Jf#ZV9Bb9g6Ls*x{rs=1g4JefDr!gDaE z32LwTTlJa=f}_~;CA@u;UZ;xANq=jA3dV=wei5L9;T9FXX!wD+2eq3}he0S_l*m18 zpW<*iAtXz;?Udx~`5c<}qYAt!MENo%c<4S7(R@@(nkU|A@;)6&61>h#*%>ZcglxG+ z_(CPa9`bvdj2Zo0x8AmnF?gZ1%`<}V;F-9F4mxGF2U>{o_?BV36Um-l=(f`s0UA;~ z7;M>(UFSg(gkR78kZ7@=JO^Yb2^`p%nD=h(zk=B}JpUClVPdOb`Va{g8V%sNFb*7O zP|`kZf|m$s^KaBQ5p&dR7#-+R0>cM1dn&(OJLlVhPA{{l-<@bdBmn5kmgA% z;ND~n3kEL+QsVVkV2C5-7auqT$CBoGTDl-facZAv?+zZC{R!K9Ve5ijw9eu9KGFB>p`u-bp+&EzxNh5k{6L8;WGltuQhw z0WB7Ngq0s>_?-EVQ%qux?WREb(gDGXt~cUEEU|03Y)QykBztSBQc-GydsGK^Xh=dk zn$Q;TMQix5VMTWtV%pCLXh;;PAC|vennwe7IrSiXK=<$HfOdSoP za*<@hhs}aeWCPSR*_8()2G`=sHs2tDW_>e1Mf@^Nx(7lV@8pG)>x2c|f_@g7A>Qe- z!cis*J}fPIN{;8%CyxXhaQ}B$vI;Tn1dPAJ@?{)U{77M-^9^8?PFBIR(yw%>6#mT? zq5_$jRux5OC)|ucmj^1%lT+?xQy7dc)u4%1V)p;_ncrj33a?QNLtfA*AlOuK%UT6C zEbCu!LDFa9Oim~XVhMOKDjZ8Q7O!ZywibEsPI+epsC>*?kVN2Byu$Jkac9Klf;Uy@ z&Bfgsj<~_zis(7pHO=)rM`Vg1m5a8Hs58nG7_3{OG7l0m=6h;oys-H+wA{(GoDiDW zS0E~CT-j4mPV5!6`RLOdLZ`Lh<`-6IH-_CRLHPCtjRNmVybaH2r6JAK?QhP*xvJ0$ z63Oi1p8ZZHAU^q12R#s%HQDDQA*{yR{QAP5WWiu@x=^3?%e-Ac2U~Z@189dZNJ3hVc&*cjEco6wyp; z>hmx!Jui@k3;E}fz8gVwWI~Csm{^8TN`plG0^dhYZ~8o={fApUXj!-r$-5DsB&r`s z$sDmL{E*WqlisjP7w~;8svnD~Z^am~K)^3CE*}3s-~99GxsqREIAKXvgL>tkMnz+O zf&aqYM`lc_0^SCZjr8+;6{wUYAIt{QcU{Tl{VN{VF2)}(yCPOHF}tl;GY_kdB)Y6+N^Z zxc8C!Irot*rkR0&?Q6cz)-4-NK}cuoT|?GKJVPGwyjy^5QpMCmE6rFpT&ymCkL)b- zpdr5y?N-D0hFQc?iIfz5t(uVGKtVBZzN^67Anvg|xhUrg2MR)#1*n4#l^fRgv)JHB zYWMwmP}!~@6%y==|KiTLOEaY0I;{M(Kfz+8Sshx1pov@C$lz4H6-GE4^YzI)%_$Z4 zV9nZc{ZZ;RIR^sb+GTe0h^rnXtV0eQHf=pOK+P?a5Ky)run4@QxXL^QaS#Ps7cb4i z&;jh(7CbXw*CM`--4e8!N%${rGM9Otcl2J|27v-xzvLVPVaoo%l>H5(4=8(9nIio2 zJ>BeMYZQngTG#E4^}S#qG%moE__GP~T^Lf=V8hh+h&_%kYt}@+RmXDf|Ic8b0A;)v z^Mlr*i*_N4)2d3?|Dv-Vv9(4RyY|D!vpNR{;2M^5tbD03#_r3~Z+%_6xCw=|%kjmU zWRGKmJw6iPDpPQeUzU+S&ih9SqTk}QG9=P}fN}<`_T%IUPK1xH%|B+raKo;1(Q6GCzMqK_7|P!FLzB|PnhrJ$kPmtNT| z({H6aT;EKYZcY{roK@q;)eJKr0k?@uA z>S8IC*vHQuWZW(~rf~UzbVE98Zx6(aKfV$1ufP!iNSEfAC7^-K6MyRz#S|;rgxVUpF;~3;TXpw4+#VnzAGc~c*sbNS2;sU}n+f}8 zmSRRSMXg`IKkW$t432(_BU3PW!}!o-z90CIz?Jy+$kQ_ad_8h;zGGtfsPVCX)xeNQ zIG;3;a1L(l$5Bfh4Edxg1NYeLQlolGL3SlaLrFFxMt_!}fi?=522ew_1UqVoF$UKpp32jEmIfD1Orc33phgNS{7Ion>Dy z%9;jt(vq8T5J$rZN5#e6dKoUF%H~LuGJAu$wA5rZQ#90nLQ(@m@}8x+peYuz&{bJ_ zbis=92DpG7i6b~#&`}>Wuzy+mfyi!4D#F{5&85yui(qZs!%OU-%xewqssuPBS)F`Z zfD(42r=F)thq#0gX9zV9azPtyx{ZGGq`64Q&rUDMPF})cPzBJ)B8u|T>RDyGsL-&- zlOq~9c%~@>;8H$ZYPv#J%#+a*o+yEbG@74p3+IQH#Ynu;pz(rl&V z)nFHu_Bo!TVkI4NDZJOsJEoL*a>FaO)t7Q$x+sYZOc&X_U^tMEiVY`aFh+f+w^#35 z^7FG{=&3iO5A~6BoNzvp+8lwM)D$b&(W2 z$b9bn5b{uX4tvZPM{>tR1Np^^NP1y)KD z(3vCg|2X4<23>$%?^@7^lZrSgLojX0-s&>wML|PtPfIOS^Z7Sk$Dvb1r+A`5He5uo z23f$AjZB5A>6&;-7oQu#t#D}qzw3I|C-$$aJ`TBGv^_!zj(TMZHGM#?dM(bB?pG38 zMOb#7={zN@rp#{cvZr~rMN<;;husuVL*|# z0Kz&L(*0iqJa?N8lgVHO{zZW52#OaIcfy$?#~VySQJ$hK#Bw}gF>67Lq>Q9YR#F7u z9{hOVq>?BT)>5D)0+2G+OBDBimYzvm>{RR0c9Bi6#6E0xA|1CTzRwNJj_klS{la1z zOL0GC`4_3mdu0FYz-&5PNZw@;K#rQ#;kJ?;N!cDlq)FP}hO8s};gbSH_{)&eRB#|4 znboXd_Rj(_8FOpmE;_(=;_Z>4M{|y_gv2HZ5i2 zpZ)%|%d48SBus9pqa2cJK&(-JfLM1&5m{`t3ec@(N;mHC3|=jWIwRvLO$y+=f0P^BGKht>RHBGNS}{>%>NeL^1_5Eweq*`tja+ z>9b^v)~4~fxJ~~z6Z(sR0W!ohaa--fwLCs1MZ*Az)&0qWh5!lRGzb`$ zcG@h>6dCOuZh!>vY>v7_j7pv%H0F=Wo;?Xl)a=tnM#8d|rq-DvlLAhIH>o19BsD!{ zNVLuak<3t_hZ1KkwOmJ_uqtj7V6@Ei_X`-Jilqf0u(aDz7#f)wRQM)>t{B*EhUzJ@ z2>wH;m_OS?^{I<|S`Xx_MS}f9%F|CWsXZE#G!LWyQimJ(N1YhT|5j&*093~V)8qek zj`<%jv%?qH1h=xkfgG@Kq3_qD6*~S+ijCp!&MztF_2YlkIV=*AH0%Qh0Xc#Fuc~0K z=5B7*4wiqdvue@Ua{11K(YsS-)V^l{+v+TTKzl|}zpX%J2izn8r12|={R4L*LV@BA z`9|bKszv(MCFb4px4vH2;W0(#Y{bv`h$$w5aLj@8AmX(2bX@oIt7Uet#vClE;gKw~ zMuL3)xL-TpuMPw`jTmh*K)q0?j*fiVTQo|NB52$CBRb;YAOdYGcpH9IaH9hrTx&*4 z4kNX6lq9c=(I7?GE;q-Y>sQFG^rCqgTR2?ob7bgNZFNL{9xy)eI_oBtFxVmua-mY= z;T)5MtgD!JbH5w*khVVpKL5aMIGDb;8rqF^`Kh8=hjmhXf{>g_i4%l9oS_&WDd_YX zRJ6K=jnhTn;2d&nJeU14jmS@(faR4RLiOU54avON6%(I{fp9D~ZQ&6U{X#`ae7Q&{ zasr8yrOcnr0}_>Rv55u`gAWxCo-1(9>L7(+#naYPxT0BNhj{#!h9Q}$@_cn(pv^?L0p&;P=KzM~wc(Y)ctQc2HRUy-g@qM79Vx_=tqQLAw_9PP z##Slm?O0eotYFgy$MU{J%yuvvh1tHi0!6fqCjd!=YK=9dV(mo7CzkR0(QMx!eC4gx zQI&@^gnnkT8v`&By~A1QsIs6ygz$@u=e$5p>{QlD4K>?}AL1cN&s76dW2;g0jco5X z60#TSLAzYJGo^$L1mDRAH~@o(6p0WMZq9J9%t6{d-f$7MiD%1q7;G_#m*-|s+}wM2 zLo!);mObr=i4=k%W>JSWneIJje1ocOzlmCecry__Y#T_r=aLaL9QXm*k_CB=6*nHB z?aaG46BmO)2hQ*~0Guf&y-z63caeB4!S1dW^o86#I{>k~)fIShDHRyVb||~i>!N@x_1D|YXnRJ4-_iayaGt{N9-R5*eoxM<)&iGY%|1-KY$=H(~5 zHWyCU0~P5RX~ni5-VD>OOu?V^_H0lZ`}vnkX2d_jwoFH9VEAETure>w;_(t{!$1z?fvNP&WMQ6C8Suk z?^E<|t0}O=>2Ej?5VU_gW&y0|t7dFs_g9_Mt<(XB?<@qPKfXrNq-D$6 zCADCn(v5~TPa)xZgP;@CV{If{33n{~{>EZOk)@R3Q3J2I|pfE3?j` z1x>p~YDZ2L6}*pkwfm-cx;avE6MifYU zqbt5=cod8nUc4rmG|nDh&rS*jTWnwzYs~Vby;t~#+PE=;gm5yOu7&dP7|W3@{^=DC zE1qS&S-3>&NZ@f6DmEH2+5X1pxPzgV#oT)Y;g@4ll@WU?h{ z(X7~!!bOTsha35ard=2712}RL4_;h!R-_gjnKcyIR>~-*l|i?%Sw=ExRSc(*vC*03 zplj6w-{|Jr_C7;iO;E~=m&)Go(1VTjFuv(=CKu4x0%`Wpd;MBb;my&1n_x) z3fzlX9ID@dmF+%$zl3r3>OriltbLy#^!ojOtkjkro--JMqkJqF+(1T z-%c=gHyuP2o&#AmkAeMwK>5_h+Qm~yWvwo9Q4$lrFrGtgRnK6R;~+DKWHsIg_ub^( zmGz^gz0YvEFHg`x9wFj&_KpfoCZc*0pT(0ue#`nURjAcqSIx-ja3J+wFjaM|x_;jg z5{!AK;m6U}h;Qz%X}wezWnK!kl9gX?|3`(_WD&CVQDAZDE;C_O1c0H0t+2wdd;X5Vt7}>LcPoJU6&GJPU5$Nx5XZg1$ zog)=bM3S9Sq^Gf~7Vn_JBbb0Unpgcv!bAn3#u@)DblO$JYt-&i*VVc%D_=3zEq5HL#IufRZD z--!~4dv|RZ2wGq_T846xr0Fw}HF>;Ko>hNMmvzhGtc4ZZPrMO&u?U9^fWblNP@;vcxb^YC)e1lGGAA; zB%S@)nJl)P8Oy8?npkBe?V@=L7Gn+C1TP=8nX(ohmWa)VLZlsTU^sCpd*=QmS<8O| z0lLusD}k`KN$g7R*XM(cwAq0wDQ1IDFGtGsX_JT?=sPQ>u2L3-(G9KE`9(EWRL9NU zt`jrs6jf=5CCkKi=#TI>XwaA=ml?OG*%X!dTsFNzFcyMP%1VauKrrk{`im*chHfjd z#aYD6KB1yaEWO`5Bz_})fx;~5+Fkz?a>UDcMb3iCOJZ_ z)!xN~P%Mv0-!hbL+c;cAlCQU&$M}`bu>7I(^bI356$zX3;inWIF^29^#LDvIaY#Yo z{a4lf)a33Cx}~KR>JrJTJL?MN2pmP}IN5`AuftzghG(cT#e?!WFNYb5snWCxO?cMS zO=xI`B$V=f1nVHytU*m|*lD#JSeUoDgdF>s;PBhswXh7l#!e^I z_9?p-eE}*uN@08}oJTLEmFX6-w36$5lCr8r-FjJPNhjr}derFz%AOU6Xe*1PrwLt) zJBKMs_zfSa@RdkX)x?> zZ~*$gZE?5t=1xRuAdTs?;2@%JH$q~+D@J+KsP|{>X1)kr}(#=Vsx}?mbPu8e*Pe{Q5rohYgz)^eTUyn$)ECtN&@((G%^Ck}p3Vn~NGuD>Jr4tr-aj!Bh!=~<9S*YB zkQG3#U|*JkiSyESiMB+t9^Mfl_s$5qoF_`%8@W(4sA8;P)uu{2g^&x9jo6 zY3$fu;T?>agAdRqA>--<=Y1s!ApUuOEPRg=auFf|on4D!rD`dq?cVMINva5rO*b)t zaiGVFwFIFN3})$6fp}UI4*NFlgwq^|UO5sNWv7|yP1VAIC&hehP1(2Zr$LCLg!;l% z3&mr6Rl}IOMHy1p4wq%-61=?rKXeIB9xe9(^-u$K5&c8g-_>FNqwcTLurad@!2BEq zYPUy`wArfC+>)k1>j@2PUDS!RDt@*#yac^dPI|kyP!$}PZJY4pr>ngma#gzsRor}e zX=RH4sndfq*SY1IpF;{st8+8GB+EHy@ym75rvaM|GppMOaS<}y4wf>v&y+%@T0ly?mUb@_@e4WYNyH?V&;XiJy8!X8kt2~arBKZO60tmNY8~hp@s3mj$6z06M_ zbQJ7hR6R#WJx@geqgKUV5SrcH$H_rH&R5GPXbs8R5kxsg#^d&R$9b$~5sC?k;*RJj zW9IgBv)gjIm0a3^+Y9Pw$N+yLM`)(sZ6^wgZi@*m+0+?_s#?EW&UYM^{0A0rRjJFX zI=6GCxw7bm>%tt{`t_+?x(0{+zP@&zqH+skpED{+GvMXQCuFV%ZJMx0! z!RVL3Hmf&BW7#D1ulrQ8U;ks27C#pjVGEp-i2!DI{~2>QxZ9hUy8vfp{wme3wdJtS zgVVE9CY&It*AkJ$0m0E+D6F9$BT3$J4?=}gf1Wqa%CdPacV#+5U!5aV9?33`_IWA> z-EW8Y-3Rar`Rny2C~+Gp0>hQ-I!L!{M~vZEZhGb5{b$-K)#XnW*mX3tZ*%Q_!qy*q z?{TxgQ8yMK(dg>RXtemgQ{S$Am(GZ`o$~kcftu1>J z-HUfePmzq=+l}?Rb&tXm<`F2W2FsX{+}{8mH@y$BsH@*CCKpaWO}eNWPGUx4i30Eu zdSs+bsAunlD^vP*)zWHvWjt0N24QV`=Ju|8ZsZNbV|s2xcc2IKHT6diL%b!Jp&W8B z`M&p{_YOp$aC`fPQ$ZNnECOZh8~(eJA_~PPAX$R zfAqpDNFw0l?;$~hDjDeg^w7U`Yq{GK;?rkfPs(|B@H(*TsH@L6wKS^5#aikYV85(| zdb%EaLOovXzn-oaL1bVV>c(5^M{u<@D!_%ZF%n~+<_%e={wUb~fd6NYRXDz4*#ijz z5=;UDf(`7kfQ7sN>ZX7rFW~j*U~Fy2WaDIRd8J|NgszSu*yYVlYd?cR!-xSr*u~ag z%qU6^#%2AzG?}ZIvCcVECP@K3lgjwZVk#gf;RWO|Ou*-(0Yl9#+gWKokWWQISPB{i z9s_5T%;uI;0K*Xcc5|y3Rw+2a@Z06q`de@I{g&%2ulI>V;aH*J(A*uGH!KSRxVeYO zLv!zxLrbj_PnGN?CYKw?XVyJeSlY zaC|0twW>S)jxU8-or4oV?~)lcaOLV5-$t6Jk!Dt>xNn0rIZlHa7Qr9S?xCwjb@IG$A3v>DrQc?ULK1j3QSpk9 zMq!>Ki8|`D+Z*Rq+JOS-9b?QJwkA(2M*8L{d}&v9FpN&49KW{`F}$D0!B(8a#daaz`@!X)!8|JvNH zzYIU>e}o24!L*S#L7^y-9AWxxGr81ZmKx2hoFkX&{YLqe-pfd!^h9fxAC1c$m~XLNw-fT4q1DcQwztz;Fxc%Pk&ahLdadJfFa2G+ktZlflHF zPwb5PMHX+Ja7J>*Ymcb;>q^TM&S`Zdgsh6@nfCSO#5qT*-ag{m|NFq?=j&$4?$S$F zoabM}?r@0j$kfY|U*Es}?cWKP9=S`U{~vy-%?&8s{O?oxkGg&A^Y{Ka+0tZxaQ>0i z;#~&Y8zu!R->XyQ*VJr&BDL$|w1chZ?XI*=DhXfvf_L3{zlsd?maS8#Yb~seI+SIX z_3!4LhVx$@i}w zWUt%>y!dKi^MMCiBa?rjb4p6+l;zbyK?>%fxPtF*5?eRWE+ z|M~LSP5Yc`Zmqjj`c67TL1pEn*K^jrvDy{>@{QV2^+w=5#YVOnYZrdVx)}d{vTtSD z=bT`{x>YQbZC}hYJo|);#iz^LsIy6>!?!7&?ZW#7RW9)*TKCP>K06#z(`T9Sn|od) zyYRNBf(_SI8`jL^jOLrysT{}hV%F2X4&RN&^Aqk;7hUYGhYq{#0$IF(_t9y3y`Mmmt z#iy@LkE=_)y?XuLpVw|%->cl7{d`@&-M!Bz@74ac|NG|j;rOpImQ`!MSKNP@f3D{D z-S2n-XZK3cy&_SfHj`~Qnd4G-{6vCD|P!P2JMqFfave%LIyapH%^MWu(k#9qd( zZtFiEJ$X{%%?*{+-zRYXJXfsz>WK5onZoJce69SwgSB>VJ#_1Ta4K`F>MJY0moj-4 z%IPgX3!ZxMm2BW&*2E^2v7iwv@!z=P+adb^Z$>5&X3+3B2gBVN<`HXymQI`sY@wb4 zj=6!l9Wc-U6k}kBb_Naxr{AFhD<05~ja_(bg74GurWz z=;ol$lOoJnR|GQ$X%YopJNm>6Li?ODsCKkz7<3cRCn69goGXW#fHEzCt{;8W7@n=B^!_)(h^R)ay>WB{&^x*a1B{xG4ZzmzMK=q*?}#u FollowOutValPath, - FollowedByPartialValueGraph -> FollowInValPath - ) - - // Only allow one graph to update at the same time. - val sharedSemaphore = new AsyncSemaphore(1) - - val graphs: Map[GraphKey, AutoUpdatingGraph] = - enabledGraphPaths.map { - case (graphKey, path) => - graphKey -> AutoUpdatingGraph( - dataPath = getHdfsPath(path), - hdfsCluster = hdfsCluster, - hdfsClusterUrl = hdfsClusterUrl, - shard = shardId, - minimumSizeForCompleteGraph = 1e6.toLong, - sharedSemaphore = Some(sharedSemaphore) - )( - statsReceiver - .scope("graphs") - .scope(graphKey.getClass.getSimpleName), - timer - ) - } - - util.GraphContainer(graphs) - } -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/modules/WorkerFlagModule.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/modules/WorkerFlagModule.docx new file mode 100644 index 0000000000000000000000000000000000000000..e79cc1f271c40f6945278d4cc29deab94e277102 GIT binary patch literal 37068 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 L2+SU#Js=(c7~M+C literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/modules/WorkerFlagModule.scala b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/modules/WorkerFlagModule.scala deleted file mode 100644 index 2188d169b..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/modules/WorkerFlagModule.scala +++ /dev/null @@ -1,33 +0,0 @@ -package com.twitter.graph_feature_service.worker.modules - -import com.twitter.inject.TwitterModule - -object WorkerFlagNames { - final val ServiceRole = "service.role" - final val ServiceEnv = "service.env" - final val ShardId = "service.shardId" - final val NumShards = "service.numShards" - final val HdfsCluster = "service.hdfsCluster" - final val HdfsClusterUrl = "service.hdfsClusterUrl" -} - -/** - * Initializes references to the flag values defined in the aurora.deploy file. - * To check what the flag values are initialized in runtime, search FlagsModule in stdout - */ -object WorkerFlagModule extends TwitterModule { - - import WorkerFlagNames._ - - flag[Int](ShardId, "Shard Id") - - flag[Int](NumShards, "Num of Graph Shards") - - flag[String](ServiceRole, "Service Role") - - flag[String](ServiceEnv, "Service Env") - - flag[String](HdfsCluster, "Hdfs cluster to download graph files from") - - flag[String](HdfsClusterUrl, "Hdfs cluster url to download graph files from") -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/AutoUpdatingGraph.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/AutoUpdatingGraph.docx new file mode 100644 index 0000000000000000000000000000000000000000..ebe131e3fa7447d86e3f641fdc9cbec9f8ef9819 GIT binary patch literal 37694 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 literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/AutoUpdatingGraph.scala b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/AutoUpdatingGraph.scala deleted file mode 100644 index e5c1c367f..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/AutoUpdatingGraph.scala +++ /dev/null @@ -1,69 +0,0 @@ -package com.twitter.graph_feature_service.worker.util - -import com.twitter.bijection.Injection -import com.twitter.concurrent.AsyncSemaphore -import com.twitter.conversions.DurationOps._ -import com.twitter.finagle.stats.StatsReceiver -import com.twitter.frigate.common.constdb_util.{ - AutoUpdatingReadOnlyGraph, - ConstDBImporter, - Injections -} -import com.twitter.graph_feature_service.common.Configs -import com.twitter.util.{Duration, Future, Timer} -import java.nio.ByteBuffer - -/** - * @param dataPath the path to the data on HDFS - * @param hdfsCluster cluster where we check for updates and download graph files from - * @param hdfsClusterUrl url to HDFS cluster - * @param shard The shard of the graph to download - * @param minimumSizeForCompleteGraph minimumSize for complete graph - otherwise we don't load it - * @param updateIntervalMin The interval after which the first update is tried and the interval between such updates - * @param updateIntervalMax the maximum time before an update is triggered - * @param deleteInterval The interval after which older data is deleted from disk - * @param sharedSemaphore The semaphore controls the number of graph loads at same time on the instance. - */ -case class AutoUpdatingGraph( - dataPath: String, - hdfsCluster: String, - hdfsClusterUrl: String, - shard: Int, - minimumSizeForCompleteGraph: Long, - updateIntervalMin: Duration = 1.hour, - updateIntervalMax: Duration = 12.hours, - deleteInterval: Duration = 2.seconds, - sharedSemaphore: Option[AsyncSemaphore] = None -)( - implicit statsReceiver: StatsReceiver, - timer: Timer) - extends AutoUpdatingReadOnlyGraph[Long, ByteBuffer]( - hdfsCluster, - hdfsClusterUrl, - shard, - minimumSizeForCompleteGraph, - updateIntervalMin, - updateIntervalMax, - deleteInterval, - sharedSemaphore - ) - with ConstDBImporter[Long, ByteBuffer] { - - override def numGraphShards: Int = Configs.NumGraphShards - - override def basePath: String = dataPath - - override val keyInj: Injection[Long, ByteBuffer] = Injections.long2Varint - - override val valueInj: Injection[ByteBuffer, ByteBuffer] = Injection.identity - - override def get(targetId: Long): Future[Option[ByteBuffer]] = - super - .get(targetId) - .map { res => - res.foreach(r => arraySizeStat.add(r.remaining())) - res - } - - private val arraySizeStat = stats.scope("get").stat("size") -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GfsQuery.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GfsQuery.docx new file mode 100644 index 0000000000000000000000000000000000000000..a8fec3f33195bb6299a069218cf8af0db742432e GIT binary patch literal 36841 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 literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GfsQuery.scala b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GfsQuery.scala deleted file mode 100644 index e5d822e2b..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GfsQuery.scala +++ /dev/null @@ -1,14 +0,0 @@ -package com.twitter.graph_feature_service.worker.util - -import com.twitter.graph_feature_service.thriftscala.EdgeType - -sealed trait GfsQuery { - def edgeType: EdgeType - def userId: Long -} - -/** - * Search for edges for any users to users in local partition. - */ -case class ToPartialQuery(edgeType: EdgeType, userId: Long) extends GfsQuery - diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphContainer.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphContainer.docx new file mode 100644 index 0000000000000000000000000000000000000000..88f2094379f8278ffbdc48d25ce4d45d928d3284 GIT binary patch literal 36963 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 G5Dx$cZ55mV literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphContainer.scala b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphContainer.scala deleted file mode 100644 index 9ac626bb9..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphContainer.scala +++ /dev/null @@ -1,19 +0,0 @@ -package com.twitter.graph_feature_service.worker.util - -import com.twitter.graph_feature_service.thriftscala.EdgeType -import com.twitter.util.Future - -case class GraphContainer( - graphs: Map[GraphKey, AutoUpdatingGraph]) { - - final val toPartialMap: Map[EdgeType, AutoUpdatingGraph] = - graphs.collect { - case (partialValueGraph: PartialValueGraph, graph) => - partialValueGraph.edgeType -> graph - } - - // load all the graphs from constantDB format to memory - def warmup: Future[Unit] = { - Future.collect(graphs.mapValues(_.warmup())).unit - } -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphKey.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphKey.docx new file mode 100644 index 0000000000000000000000000000000000000000..3a363e200c5c87791b1ed0c6d0d82b463f8d0921 GIT binary patch literal 36866 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 F9smgk@0kDq literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphKey.scala b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphKey.scala deleted file mode 100644 index 2b174eb8c..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphKey.scala +++ /dev/null @@ -1,32 +0,0 @@ -package com.twitter.graph_feature_service.worker.util - -import com.twitter.graph_feature_service.thriftscala.EdgeType -import com.twitter.graph_feature_service.thriftscala.EdgeType._ - -sealed trait GraphKey { - - def edgeType: EdgeType -} - -sealed trait PartialValueGraph extends GraphKey - -/** - * Follow Graphs - */ -object FollowingPartialValueGraph extends PartialValueGraph { - - override def edgeType: EdgeType = Following -} - -object FollowedByPartialValueGraph extends PartialValueGraph { - - override def edgeType: EdgeType = FollowedBy -} - -/** - * Mutual Follow Graphs - */ -object MutualFollowPartialValueGraph extends PartialValueGraph { - - override def edgeType: EdgeType = MutualFollow -} diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphType.docx b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphType.docx new file mode 100644 index 0000000000000000000000000000000000000000..41fbf04459512ac31773b76981de1c9b94b373dc GIT binary patch literal 36801 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 literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphType.scala b/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphType.scala deleted file mode 100644 index a2a7634af..000000000 --- a/graph-feature-service/src/main/scala/com/twitter/graph_feature_service/worker/util/GraphType.scala +++ /dev/null @@ -1,16 +0,0 @@ -package com.twitter.graph_feature_service.worker.util - -//These classes are to help the GraphContainer choose the right data structure to answer queries -sealed trait GraphType - -object FollowGraph extends GraphType - -object FavoriteGraph extends GraphType - -object RetweetGraph extends GraphType - -object ReplyGraph extends GraphType - -object MentionGraph extends GraphType - -object MutualFollowGraph extends GraphType diff --git a/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/BUILD.bazel b/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/BUILD.bazel deleted file mode 100644 index 66e27fb7f..000000000 --- a/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/BUILD.bazel +++ /dev/null @@ -1,66 +0,0 @@ -scala_library( - platform = "java8", - tags = [ - "bazel-compatible", - "bazel-only", - ], - dependencies = [ - "3rdparty/jvm/com/twitter/bijection:core", - "frigate/frigate-common/src/main/scala/com/twitter/frigate/common/constdb_util", - "graph-feature-service/src/main/scala/com/twitter/graph_feature_service/common", - "src/scala/com/twitter/interaction_graph/scio/agg_all:interaction_graph_history_aggregated_edge_snapshot-scala", - "src/scala/com/twitter/interaction_graph/scio/ml/scores:real_graph_in_scores-scala", - "src/scala/com/twitter/pluck/source/user_audits:user_audit_final-scala", - "src/scala/com/twitter/scalding_internal/dalv2", - "src/scala/com/twitter/scalding_internal/job", - "src/scala/com/twitter/scalding_internal/job/analytics_batch", - ], -) - -scalding_job( - name = "graph_feature_service_adhoc_job", - main = "com.twitter.graph_feature_service.scalding.GraphFeatureServiceAdhocApp", - args = [ - "--date 2022-10-24", - ], - config = [ - ("hadoop.map.jvm.total-memory", "3072m"), - ("hadoop.reduce.jvm.total-memory", "3072m"), - ("hadoop.submitter.jvm.total-memory", "5120m"), - ("submitter.tier", "preemptible"), - ], - contact = "recos-platform-alerts@twitter.com", - hadoop_cluster = "atla-proc", - hadoop_properties = [("mapreduce.job.hdfs-servers", "/atla/proc/user/cassowary")], - platform = "java8", - role = "cassowary", - runtime_platform = "java8", - tags = [ - "bazel-compatible:migrated", - "bazel-only", - ], - dependencies = [":scalding"], -) - -scalding_job( - name = "graph_feature_service_daily_job", - main = "com.twitter.graph_feature_service.scalding.GraphFeatureServiceScheduledApp", - config = [ - ("hadoop.map.jvm.total-memory", "3072m"), - ("hadoop.reduce.jvm.total-memory", "3072m"), - ("hadoop.submitter.jvm.total-memory", "5120m"), - ("submitter.tier", "preemptible"), - ], - contact = "recos-platform-alerts@twitter.com", - cron = "01,31 * * * *", - hadoop_cluster = "atla-proc", - hadoop_properties = [("mapreduce.job.hdfs-servers", "/atla/proc/user/cassowary")], - platform = "java8", - role = "cassowary", - runtime_platform = "java8", - tags = [ - "bazel-compatible:migrated", - "bazel-only", - ], - dependencies = [":scalding"], -) diff --git a/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/BUILD.docx b/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..2a503817f2354332a7d3afefa71048a6e13bb354 GIT binary patch literal 37307 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

2lVXEQCl$K#c7IQ;{ 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 - counters.toMap.toSeq - .sortBy(e => (e._1.group, e._1.counter)) - .foreach { - case (statKey, value) => - println(s"${statKey.group}\t${statKey.counter}\t$value") - } - Execution.unit - } - } -} - -/** - * Trait that wraps things about adhoc jobs. - */ -trait GraphFeatureServiceAdhocBaseApp extends TwitterExecutionApp with GraphFeatureServiceBaseJob { - override def job: Execution[Unit] = Execution.withId { implicit uniqueId => - Execution.getArgs.flatMap { args: Args => - implicit val dateRange: DateRange = DateRange.parse(args.list("date"))(timeZone, dateParser) - printerCounters(runOnDateRange()) - } - } -} - -/** - * Trait that wraps things about scheduled jobs. - * - * A new daily app only needs to declare the starting date. - */ -trait GraphFeatureServiceScheduledBaseApp - extends TwitterScheduledExecutionApp - with GraphFeatureServiceBaseJob { - - def firstTime: RichDate // for example: RichDate("2018-02-21") - - def batchIncrement: Duration = Days(1) - - override def scheduledJob: Execution[Unit] = Execution.withId { implicit uniqueId => - val analyticsArgs = AnalyticsBatchExecutionArgs( - batchDesc = BatchDescription(getClass.getName), - firstTime = BatchFirstTime(firstTime), - batchIncrement = BatchIncrement(batchIncrement) - ) - - AnalyticsBatchExecution(analyticsArgs) { implicit dateRange => - printerCounters(runOnDateRange()) - } - } -} diff --git a/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceApps.docx b/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceApps.docx new file mode 100644 index 0000000000000000000000000000000000000000..cda265ba1c0369240d0b29d67460dbc8c4a3e859 GIT binary patch literal 37541 zcmagEWmsIvwm*!!dvJGmcL)S`m!Lr#cN!1w7Tnz(g1bWq?iM5v-2LB~nRCv}x%a;B zm)%cS)%wX=yQ^yNE@e4LC@e5AFgUQSFFe{+szve1;9y{5FkoPqpjJHzfW3>ky^E2$ zr-Qk(0kemlZBw#>(yA!h=d%~=6c%ApZwXZF@*M|S2gZ1O$(oECUY#YD6M2Y-y9xeq zjTz-o80PrQv^!to)q0^WpJr-33CR-!gG{Xga>x>&g7tjnQwyFwsdzHkMVVcqxj~rP z)=Zyw)7;>!yS4rNMi?Py;<>tk$=VNKF*H@NniwQQA#kcfW6)tW1v5N(9TX1gsz)O< zy9}T9#+2P&Cj8vVA0+&xvR{^%sWr1~G7!E7@O}w5KG%@`Y}}YI;9Tc6$f5TkFkUAoqAxli^c` zu1<`)uhmhI48GT$1WM*{Paqvl1DQb*Ogei++5pi3@B0gsr~Qx6D|q)v z0o8Xh&z;44uB(Chrt*v_bb2qzM1|@{QDHwt& z|D%eY)N-Qtpz3WvfPo=`K8>8rZJk+|e_yK-CO<&3q4}Q)ON~&K*f(oP7A_k~9x4p*rrF`P@ssKQ{Qo0Xp#yuY+w%R(KVdTh*gVA8qwRypp*ueC8A#=y3lI5 z`ZCP|U;xtc&0G;BRc$|P-6QTrnq6d!{Y8)B9MIL$6wTOhc?(fw9Wk#ZWDlle%H!HH zalSsbD}U0fxL`gEl2B4J^q{F$Fl8|Gvqy62=w# zS<$5Ke5B?SG{djZ;G|^f!H*(7$Y2F5wcT=ZDcFu@b5CyW7TW3NGPn_M3JhO42(R-r zwLqGNB!rNJ#-9b4MIh>6zpk3#tUYB*(eqU$2lt)zJkDNHTk@NZ^+c-RBO%mgL&|2b z8OSe$@ly=cb8*gno+8U?RV~gt6jwu6SpKXjnn3%N0-1CVi|%JY0C9LCMM495SxYf7 zSSEUD9(Z`lz(@HhL#WxM3iu$WZCfZe{AyjLox=@1HvH9QMS~+SlUz*2xX;MD|GuQJ_hTVlML*cWM?yfJa z*fNr2u}Z`;p=7_xd}r*M%s*`Kdwc)-Zi$fLp63Dz@5mCxkZ#sp;`O=jlHi|pxn5nx zJqFdq777du?eBH@=-}{2S=7hvS6R_Io*1AETq3Ms#Z>ST0vE()B-Zh36Ea)o#>hX! zL$$H(0DT|Au=zf-+=L4>2s|~8JuQk^z&0v=(!d^n$RAO5Tt{fCi5T8rojf3ShAM|H z!`2)`H*hqX9;=#%VS;x_(^9S;^CoXFnYbW^b#PWM9;Of)58^`(_ZmG%J7CQ*uJyK|Odt+L z?iK~=Q9yj@8Ap}hZiZa>Jm~LJmT`l(|%ShW|F8C;qq5> zO5dp&VX36h)3=)yuj85c;eI(c-xoJsBz+eR@=?g zWZ_AzO-g~#Ok53bTc!BafmK+ zF;cB4@M)-ykF=^6XGf7Mrtu`wUq1q;S#;A9lB}YSP{O}poT%@pKJZ%6<+(PTJ$Wx3 z6AUH>Fyo!~Tq^gc{5&Tb>bAaM}n&SGLKp9a~M9kD%d2z88d@*YcP{q$w3|2SGBqhJ*U5awKjn5il&s??Cd=}8Ub(Hvs zBQMMDGK7)1zUsHlbr#`gAwqGTB9BK3vpCVpCf|lBRe#TKGVmk9z^1quZgM_}GKH!N zNliwzsH5ilk^?c_hny}?i5G#a$?~-&!ZUuV06D?xsBv+4>y@sh$l(CXA4O zfp>60cAg)9HBkr9EK3&|ZPZ__@Y8LE_2uLiDC5E2;!VPpxHiH_=4>0|oE>b?aS?96 z>soRq;Rovl=QnOO%Xemmg0)Q4Pn9bQ5uad%-c_N7HyuEoxuJW<$8us*0%tDWSZAu= zqrYFiKUYWYp=%2{B=XU0%%8y6%3{BVLZGf7&Ru8Z+naNHhjIvyq4(J*uDr7ky6h=o z%ERpM3+x1I^SANDCd>-%&HAup#NM$6!Wz?ugs%=Pv0KHKPawRN46HA0#<@qbveqQ+ zkOjp_QNgbeSb^P45`9*1hIID=)EtW(-`-|Up1EWTj-hn0WQ7-}uYBSO4`wp;qmrG9 z&^`j2V%O8_^rNFzVXk3DldM4N(gJrE zA9TVygM3;jmL;i6~ z(6ZMuheME-@KJH`I{5}zXm|RC?Ofe)Si|DTg@bf}a6muVADOrNL=zfB;;xwKb*R5A z=C_6FhH~7C&P*@u?grZ_c0nP*{q7|OU@1|ucy{*aW)XE_>AiG21`i0E4{~LRIlIlq z?YpPsj${@eWVfAB(r&!wwxBc%+xP57Bavm~!(ErPkFYO_8I#=ogbgN8f`>xo8v>h{ zJP9pu@R@upE5L}a^jdm`(U0o_N96SM4f&t*yS+aF20Lis9|tY`grJ50kNN%2ZR_7> z`9HU?Nn%PttazW#UJ?3260wTyBj5eXr*5a0t|{^fkzPr-mDtR7qHK;KXo;G7+|wYVA!buW3eR8L%iXyoD6TMbQkVRx z^58>~!ZSi$8`VHP0%cR4y=WVDb#&pOv|7UFdLCT}9m$!5FCRm5vR%B|$uB0WTQ55+ zZMH<#)17;_6dN=H`_Q54mgbEOD7dJMcg_yJ-Q1fI`n|v!B3Lxe6G{~C1w1S0M`IX4 zY2IZ*_H*1DTaE2nESQ2xx_3*YO0XBzW~yyNUY2k~it$p_r>h0qguI)y;kCY=NgD7{ zgm>|Vg%H^ljw&JC;Um(vQ5n~Ie=O8@{skj|l*SInd8Jfy-*`=qcjbDf28!o!4ljE zKYDj&*PU@FaLoSt_6_$_?1_;d6`3fBhN_0ZYho8Fn`Q_1A%RXYIqg6AXfuz%{IdzziH`eOfbnjx|{40wHreS3IX zJc}t2X*u3CxPMr`XiuGQe>#}`dD9*mx_jjLQZM*w_x5!ogax=lVwh5LKHYy1n!2|= zzIxnJ@iKmV+32}u%TppkQrX+nsq~pIEUNzP+Nwd<`)Pi4+{-;e3@w4K`+|0-{2eKZTsxS z>9PCxu64r$-Unn@kL6&~&YY8&jHmPDn@f*$BA)Tiw zh@^O|UkJ-<*IHM5OXYa-Ae*0E`SYj7 zsRe+(?K8d%SigHSxSx<&f)%z`Ty-^vz^5<%N_n#R(jmwwLXuK5?LM=n8>h#P~XCA7$R!RrFccrx)F@8PwQ5l0@Y^&h077OY#f`iOWJljiD-q~kRRYwGZ3htdJiNW$&L~W zf*G51RK?>~T>^+eGWFLBU<6FZ>Lz?DW+)a<#F0MP4TyhXpKvCCLP7=R1)+t2aQ_kdClyo~&6zcs$A1x= zsZfAg5dKh+(gAIj_dg{52P)3%vKl8a6*TJa!rTZzdQ{OsUa=Z~Fp(lM{g*^0QaBn< zM7Tdx&n3Dyp>_No_3x%aXNkrsxArbf!)$&@-Feb3Vog`yvj=cL9Y0-?h4$p04+v5L zsWeG(rLD~#U7LPwn0iZg&V-WMbNi0%%fsWguZ&Sb%z7!$XM^icH?D04_JiJH&;5%N zZh4=UJg)Tahh}qXwmoWo&I>CY?Cp={Z{J66iWs!qNRq_Z?=UZmChNzXamC}mJvksr zFnLZJqcN_P5oK-;u94oJ0^OD}-H``ZyO{lkb7bs}oe~b(ehowbYIXvuW6{cNeQ5>z zt{$8ij~w5voNo#&%-Zp^v!os$#N$kl|1jl2)ZbuJa3ePB49dgbBvRZDw@&CZE!o>; zdwARPRT)D#V|%`G_49E*YfYp?E!uDnt6jKZQd=dW9QzujwUmg{Ze33?+4kDI9zUdV zORwJVl)ScabmFnnJrI*}mz(tclA5>M#a->w6v`-0*l~HI2PD)my#~&9nbAT<;LGd4 zd9l*LIQxbRad?O9Scd9{@ri)K2(C&_* z4N1!hU4L}{YeMwT56yYiX0H9oSXl$x{NX`ADP#N-*JLu9g-wr-I5MvMR?lC$~g<+3!5WI@;NnAmLGYU%>YnQK6NYv)3h0mPh|nWh^3{Lp6AiGcuZw)!0oD zT``M7`?egWuMa#M(MLYr;=-{9uTUM#$#&8bO!Q&j&nBn+-DhfZz9m1hcTWY2Hs#g_ z0cGXengaJf9W$_INm@3~$lqSm=h~;;AFqcmUoVFSz1m+KJ%M+x$!`lMkF!6Yj~rM( zcD%NVWZkknPY*+Ty@H`GXLz;>Lm6$hx1R&A3D0(`5Ue|pC3?)Fjfzu?k+){uN?Bz-^zJYm=3Fx(`-G=D(0C40AY zlpa7(ks_Bq%gj|0ZKl}nz8@_9>*^@GLug8it=3gg^<6D73Yhcs@$=8PUg!(Gg5v2> z)uL{4LLc|+!hC>^X;V%zb^h4+eF)zaaoB`Ye5FCK`DV(h+5S9CqUD-3FA7ayAalMz zOKW0}22~4&?tlS`7H*pY$|4UNzj7?&+Ov~0XE8?wb&9&=xv%zgqe=SUa`@3o3m0JH z7!mL15xch4P+;y}oKogn-7-$MhmzqOg;=T2v4%s+cBwxXA~~he&Jb zkw>CUg=={Pe7!WHH}s+|*PU?!uEo+CdTgvJa{>R{je)(`QV(>dK@xSPmwHs8O_7&( zEfP~Afa|_C6{q=vVuM?D!m-P-W!poAj?09eZ)1%5YO%j2FddTf@mI8(v<|~c&`Q%H zkLT=T)jL(AZ=m+%zSk=FN)3&c5Ah$1EYmQ~5TtON%RzB@N;sA+pOls3X4Dbq`Do}w z2l!*%Ak)4YMSVyl=OSzklnW-fUjwT0J{U zSWMUGPe%CscK`agK!{r@hnmUC+r8w$S*!7ps{lb!owEEBKkrg`?Xl*d(#2h-tpa7u z&)iTI4zDfA;fF!5g8uZcw{w`vA*)gJyfg8o`3r|=nuD$O8jO7x-0dwUGi(ckH}e** zy^yO?#v0>3UY^#9mHLMEg1Q59s&Z-6RXB=k`t#pieuR}#eKtMxdT?yx|CM%Ak$RX+ z9{Uvt7E;RI*t-NqNJskh*aL9(DYKS&gWz-jxE8^hdlZXN==sLSWyq2pBFrJ?9}@z$ zmgb^$YeskC$4urDR(P{$YkvrYgVqj1=7=M=78+A)rTJA= z>Me#zI4Sd6(tTG~o#|cDssqQ?-ZV)?H>RR&qc)-Jx7Cq-aao3#4^_P4^*g1Anw5Sw zDTOC%s;g}>&Ccz{?ZrIHvbs+C)}w3*RKr9ql&{h}vK)#ZCV9o!cMB0MY%Lqo3WZ9F zZZpZ3omZf}ty{Mv729|jAUefc) zJ;f-!OvY4Q`Dnb@RMI21uGX`$WTSw0vs^}WcNl%gm;F|bVkd-W(Q8p;pU zP#D;);%b4z4p>}+N;s>lOn?7*M5BGwIDzr1H2q2}ivG-0UkKYvf`LZAj0r5gZMMpf zb2!Hypgf<5JTuES@v@4R%f{J&7X^dzo+I@pt!<*}RMW>7Tfm8dK_0uXv^=(R8CIoC zMal8DxL>`+(VS~##M-P3x?}HhGg7YqvIF7!|7c43-W!=%LOK`CSgI+37gaM)dkmKQMu-0aAvN3 zc#gtU3>{Br?yccr!R1)hBB|ajEa0%9@BY<2mD*l{n$cbT_|9;b1Nfd-@Qnx$U3i<< zX0WAohhUQmhKr5WzWDLM;pJP&KK9_W^ggIohpw`8_UqMRvDmCUGywsSn3f%#2 z=Y|_6RT|AGH!_L$X=mAR>xu7ELJr4M)VeZuVc3SY-WJ|rbSI{w^EJ1t?V_84P;z-Jh4mQqH-Z8&J@#sYH(WAzK{*1rsy8u;1I%>90sH=#<2lgF(E5XX z4U31!Y9N?NYzaVh_~B&B`k=p>cl%xuN^Xm>pevDLvFkQ`hm*EAfPd-&V#A+%7;%LB zS~`X5+5(9eUU2i`l7Rlo*&^q6iV9~44z`A6NY-{qq>Od<;1}D8rV+t+SgdU)F^1 zm2Sa07YA3OP2EQm(l0k`lxvo#&q6rbyGfTVF!U&RM}1^40b6~1jeYasHu78hGSbL# zS%?Cz3IG(2gXAmS`A2x^U*U8A4nO=I9z-nOS?Y-oOO9nDUap6 zZAFrBfgyrNolnp92vn?3?7^dpUv&;oZ3rnp75$ZF>N zjZBROCX2@?FS@M|h-_t+Niwfi_0G~%+fXwBtGTC|{{8SEx82lS(!2V;G*Mm(b~;#ZOdl@d{G0`@6CabJGu zUOzftOYhTY4XYhp`dl^2VwHuNOhz5%O_5F7>@K@$m0NsDj#m-&y?exfVjL=s9*3|h z=f2x~34dP@r?%HRr&e#5Av>pq8+3TbZ~qn3{!y2MXlj%~KG%NbF-;1%pdcbqHLr24 z7rl|c0Z5K;p93JX)0c+P2v(a#srqTtfBZtYzGjlmyj`U^UfOU&oqS!o%o-x$2K?5< zD?KQL&_x{-plfYoE)Y&0W$7JoX7qlF7&)%1+^Q|sr$D2;q;7g%>yaX7cHrQM7UFVc zx+K#7{Ps#6ig77(Wf~z0fgS=Omf>B|9CJ~gAMv1+mG*O>GRDn?>9?iq2*=e2SR_Jm6=7FO87mwnuEH3zV$%Qg{t+Dgb z5DP1PDI6`xQquRIV(Qndd|%t7L=F1%s*Y3+dKuNB)EOa;@KCW()S>3iU!U0CS>gDs z;DC?1B{V0}jkI>1MORZ;qQ=M@%{Riybj{Gu&n_JtF+e0tTkSZzVu5>xVitp3^~0CJ zY1i@*DN_E2?PJ7$vGKY7f3nezcm(iV&@9F`9DFLNvDSs6-29Y$WcADW1{-|zfb*h_ zKf=GGA$?X#^j>EYltg>*k_P;W_aQe>SVUTGv%* z6Zq1Pg37$g=*s<1XTxTNI_Fk;P?W2(D~iRWrVkCItKlcy4v*!XxDIRNtzesfsH-LpCJ5_0$2qzXsxZ5YSquPP_-299y z`OThcQ|vmU#qIXfxii8S*sYbXjY!I62D%7^m&{C1%|K;UB#q}E^n_MjiL@^!xumb7 z6|atMkCzX%euy9Ed^-`TXo(4;-y1qow4n@X1>Mtx)=b?|Ar_|7J#sa|#jfcY-Dy^L zlBM+KN@!?^1w(qUg#pvRGrJa$r~tH9To)64Nwp|SpA!?zJjJ>A+89+yQvyd+hpv{5 zdxa`7YK-L!--0oC0$qeV+q9&=cd3 ziX+Kb%)t1Wydi6(vL-H#Z;{n|$2>;|iSH|Tj3T4-CS)SP2jg_2Ow|~rYdBz=%-9AC&O8`lfMCRRU&OgHVG@@!)n*;P6{Ce=eG5ng zR-oT6&C!j;_y)W}OjT9B>x+=wsd9uHKFAM$l-5aVc z@92AC#&%BV#!dLAZ>dobB&x~%Fl^8zWKh|x88fZvByzNQXo_3m>~AXfrGKkb zBWVPw?1%lW5(>QTi^*`?PaoEOGYMQfga8?E*C)u4fW|k-umB=cQl>C%c`a=uDGPyk z9bCAPo7)LD-;@6!u5xyiK^1GQT32by?^OfuEr2E6g(2R$GkdoIp+rU5***0t#yUL| z-@k38VfA zYd>?|$hN$NfdeReX3(vXA5iM0Mh3HJ!;R9VhxGN0uh8$rq=8^M1R<`L}^xr%0DPX4LT?SCq~ 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 literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceApps.scala b/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceApps.scala deleted file mode 100644 index e6086526b..000000000 --- a/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceApps.scala +++ /dev/null @@ -1,52 +0,0 @@ -package com.twitter.graph_feature_service.scalding - -import com.twitter.scalding.DateRange -import com.twitter.scalding.Execution -import com.twitter.scalding.RichDate -import com.twitter.scalding.UniqueID -import java.util.Calendar -import java.util.TimeZone -import sun.util.calendar.BaseCalendar - -/** - * To launch an adhoc run: - * - scalding remote run --target graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding:graph_feature_service_adhoc_job - */ -object GraphFeatureServiceAdhocApp - extends GraphFeatureServiceMainJob - with GraphFeatureServiceAdhocBaseApp {} - -/** - * To schedule the job, upload the workflows config (only required for the first time and subsequent config changes): - * scalding workflow upload --jobs graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding:graph_feature_service_daily_job --autoplay --build-cron-schedule "20 23 1 * *" - * You can then build from the UI by clicking "Build" and pasting in your remote branch, or leave it empty if you're redeploying from master. - * The workflows config above should automatically trigger once each month. - */ -object GraphFeatureServiceScheduledApp - extends GraphFeatureServiceMainJob - with GraphFeatureServiceScheduledBaseApp { - override def firstTime: RichDate = RichDate("2018-05-18") - - override def runOnDateRange( - enableValueGraphs: Option[Boolean], - enableKeyGraphs: Option[Boolean] - )( - implicit dateRange: DateRange, - timeZone: TimeZone, - uniqueID: UniqueID - ): Execution[Unit] = { - // Only run the value Graphs on Tuesday, Thursday, Saturday - val overrideEnableValueGraphs = { - val dayOfWeek = dateRange.start.toCalendar.get(Calendar.DAY_OF_WEEK) - dayOfWeek == BaseCalendar.TUESDAY | - dayOfWeek == BaseCalendar.THURSDAY | - dayOfWeek == BaseCalendar.SATURDAY - } - - super.runOnDateRange( - Some(true), - Some(false) // disable key Graphs since we are not using them in production - ) - } -} diff --git a/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceMainJob.docx b/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/GraphFeatureServiceMainJob.docx new file mode 100644 index 0000000000000000000000000000000000000000..e6e9ae8a9248e4e33e4ab4199b15de8ce5c9e636 GIT binary patch literal 39645 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 TEdgeFeature} -import com.twitter.pluck.source.user_audits.UserAuditFinalScalaDataset -import com.twitter.scalding.DateRange -import com.twitter.scalding.Days -import com.twitter.scalding.Execution -import com.twitter.scalding.Stat -import com.twitter.scalding.UniqueID -import com.twitter.scalding.typed.TypedPipe -import com.twitter.scalding_internal.dalv2.DAL -import com.twitter.scalding_internal.dalv2.remote_access.AllowCrossClusterSameDC -import com.twitter.scalding_internal.multiformat.format.keyval.KeyVal -import com.twitter.util.Time -import com.twitter.wtf.candidate.thriftscala.CandidateSeq -import java.nio.ByteBuffer -import java.util.TimeZone - -trait GraphFeatureServiceMainJob extends GraphFeatureServiceBaseJob { - - // keeping hdfsPath as a separate variable in order to override it in unit tests - protected val hdfsPath: String = BaseHdfsPath - - protected def getShardIdForUser(userId: Long): Int = shardForUser(userId) - - protected implicit val keyInj: Injection[Long, ByteBuffer] = Injections.long2Varint - - protected implicit val valueInj: Injection[Long, ByteBuffer] = Injections.long2ByteBuffer - - protected val bufferSize: Int = 1 << 26 - - protected val maxNumKeys: Int = 1 << 24 - - protected val numReducers: Int = NumGraphShards - - protected val outputStreamBufferSize: Int = 1 << 26 - - protected final val shardingByKey = { (k: Long, _: Long) => - getShardIdForUser(k) - } - - protected final val shardingByValue = { (_: Long, v: Long) => - getShardIdForUser(v) - } - - private def writeGraphToDB( - graph: TypedPipe[(Long, Long)], - shardingFunction: (Long, Long) => Int, - path: String - )( - implicit dateRange: DateRange - ): Execution[TypedPipe[(Int, Unit)]] = { - ScaldingUtil - .writeConstDB[Long, Long]( - graph.withDescription(s"sharding $path"), - shardingFunction, - shardId => - getTimedHdfsShardPath( - shardId, - getHdfsPath(path, Some(hdfsPath)), - Time.fromMilliseconds(dateRange.end.timestamp) - ), - Int.MaxValue, - bufferSize, - maxNumKeys, - numReducers, - outputStreamBufferSize - )( - keyInj, - valueInj, - Ordering[(Long, Long)] - ) - .forceToDiskExecution - } - - def extractFeature( - featureList: Seq[TEdgeFeature], - featureName: FeatureName - ): Option[Float] = { - featureList - .find(_.name == featureName) - .map(_.tss.ewma.toFloat) - .filter(_ > 0.0) - } - - /** - * Function to extract a subgraph (e.g., follow graph) from real graph and take top K by real graph - * weight. - * - * @param input input real graph - * @param edgeFilter filter function to only get the edges needed (e.g., only follow edges) - * @param counter counter - * @return a subgroup that contains topK, e.g., follow graph for each user. - */ - private def getSubGraph( - input: TypedPipe[(Long, Long, EdgeFeature)], - edgeFilter: EdgeFeature => Boolean, - counter: Stat - ): TypedPipe[(Long, Long)] = { - input - .filter(c => edgeFilter(c._3)) - .map { - case (srcId, destId, features) => - (srcId, (destId, features.realGraphScore)) - } - .group - // auto reducer estimation only allocates 15 reducers, so setting an explicit number here - .withReducers(2000) - .sortedReverseTake(TopKRealGraph)(Ordering.by(_._2)) - .flatMap { - case (srcId, topKNeighbors) => - counter.inc() - topKNeighbors.map { - case (destId, _) => - (srcId, destId) - } - } - } - - def getMauIds()(implicit dateRange: DateRange, uniqueID: UniqueID): TypedPipe[Long] = { - val numMAUs = Stat("NUM_MAUS") - val uniqueMAUs = Stat("UNIQUE_MAUS") - - DAL - .read(UserAuditFinalScalaDataset) - .withRemoteReadPolicy(AllowCrossClusterSameDC) - .toTypedPipe - .collect { - case user_audit if user_audit.isValid => - numMAUs.inc() - user_audit.userId - } - .distinct - .map { u => - uniqueMAUs.inc() - u - } - } - - def getRealGraphWithMAUOnly( - implicit dateRange: DateRange, - timeZone: TimeZone, - uniqueID: UniqueID - ): TypedPipe[(Long, Long, EdgeFeature)] = { - val numMAUs = Stat("NUM_MAUS") - val uniqueMAUs = Stat("UNIQUE_MAUS") - - val monthlyActiveUsers = DAL - .read(UserAuditFinalScalaDataset) - .withRemoteReadPolicy(AllowCrossClusterSameDC) - .toTypedPipe - .collect { - case user_audit if user_audit.isValid => - numMAUs.inc() - user_audit.userId - } - .distinct - .map { u => - uniqueMAUs.inc() - u - } - .asKeys - - val realGraphAggregates = DAL - .readMostRecentSnapshot( - InteractionGraphHistoryAggregatedEdgeSnapshotScalaDataset, - dateRange.embiggen(Days(5))) - .withRemoteReadPolicy(AllowCrossClusterSameDC) - .toTypedPipe - .map { edge => - val featureList = edge.features - val edgeFeature = EdgeFeature( - edge.weight.getOrElse(0.0).toFloat, - extractFeature(featureList, FeatureName.NumMutualFollows), - extractFeature(featureList, FeatureName.NumFavorites), - extractFeature(featureList, FeatureName.NumRetweets), - extractFeature(featureList, FeatureName.NumMentions) - ) - (edge.sourceId, (edge.destinationId, edgeFeature)) - } - .join(monthlyActiveUsers) - .map { - case (srcId, ((destId, feature), _)) => - (destId, (srcId, feature)) - } - .join(monthlyActiveUsers) - .map { - case (destId, ((srcId, feature), _)) => - (srcId, destId, feature) - } - realGraphAggregates - } - - def getTopKFollowGraph( - implicit dateRange: DateRange, - timeZone: TimeZone, - uniqueID: UniqueID - ): TypedPipe[(Long, Long)] = { - val followGraphMauStat = Stat("NumFollowEdges_MAU") - val mau: TypedPipe[Long] = getMauIds() - DAL - .readMostRecentSnapshot(RealGraphInScoresScalaDataset, dateRange.embiggen(Days(7))) - .withRemoteReadPolicy(AllowCrossClusterSameDC) - .toTypedPipe - .groupBy(_.key) - .join(mau.asKeys) - .withDescription("filtering srcId by mau") - .flatMap { - case (_, (KeyVal(srcId, CandidateSeq(candidates)), _)) => - followGraphMauStat.inc() - val topK = candidates.sortBy(-_.score).take(TopKRealGraph) - topK.map { c => (srcId, c.userId) } - } - } - - override def runOnDateRange( - enableValueGraphs: Option[Boolean], - enableKeyGraphs: Option[Boolean] - )( - implicit dateRange: DateRange, - timeZone: TimeZone, - uniqueID: UniqueID - ): Execution[Unit] = { - - val processValueGraphs = enableValueGraphs.getOrElse(Configs.EnableValueGraphs) - val processKeyGraphs = enableKeyGraphs.getOrElse(Configs.EnableKeyGraphs) - - if (!processKeyGraphs && !processValueGraphs) { - // Skip the batch job - Execution.unit - } else { - // val favoriteGraphStat = Stat("NumFavoriteEdges") - // val retweetGraphStat = Stat("NumRetweetEdges") - // val mentionGraphStat = Stat("NumMentionEdges") - - // val realGraphAggregates = getRealGraphWithMAUOnly - - val followGraph = getTopKFollowGraph - // val mutualFollowGraph = followGraph.asKeys.join(followGraph.swap.asKeys).keys - - // val favoriteGraph = - // getSubGraph(realGraphAggregates, _.favoriteScore.isDefined, favoriteGraphStat) - - // val retweetGraph = - // getSubGraph(realGraphAggregates, _.retweetScore.isDefined, retweetGraphStat) - - // val mentionGraph = - // getSubGraph(realGraphAggregates, _.mentionScore.isDefined, mentionGraphStat) - - val writeValDataSetExecutions = if (processValueGraphs) { - Seq( - (followGraph, shardingByValue, FollowOutValPath), - (followGraph.swap, shardingByValue, FollowInValPath) - // (mutualFollowGraph, shardingByValue, MutualFollowValPath), - // (favoriteGraph, shardingByValue, FavoriteOutValPath), - // (favoriteGraph.swap, shardingByValue, FavoriteInValPath), - // (retweetGraph, shardingByValue, RetweetOutValPath), - // (retweetGraph.swap, shardingByValue, RetweetInValPath), - // (mentionGraph, shardingByValue, MentionOutValPath), - // (mentionGraph.swap, shardingByValue, MentionInValPath) - ) - } else { - Seq.empty - } - - val writeKeyDataSetExecutions = if (processKeyGraphs) { - Seq( - (followGraph, shardingByKey, FollowOutKeyPath), - (followGraph.swap, shardingByKey, FollowInKeyPath) - // (favoriteGraph, shardingByKey, FavoriteOutKeyPath), - // (favoriteGraph.swap, shardingByKey, FavoriteInKeyPath), - // (retweetGraph, shardingByKey, RetweetOutKeyPath), - // (retweetGraph.swap, shardingByKey, RetweetInKeyPath), - // (mentionGraph, shardingByKey, MentionOutKeyPath), - // (mentionGraph.swap, shardingByKey, MentionInKeyPath), - // (mutualFollowGraph, shardingByKey, MutualFollowKeyPath) - ) - } else { - Seq.empty - } - - Execution - .sequence((writeValDataSetExecutions ++ writeKeyDataSetExecutions).map { - case (graph, shardingMethod, path) => - writeGraphToDB(graph, shardingMethod, path) - }).unit - } - } -} diff --git a/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc/BUILD.bazel b/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc/BUILD.bazel deleted file mode 100644 index 6378b0a83..000000000 --- a/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc/BUILD.bazel +++ /dev/null @@ -1,27 +0,0 @@ -scala_library( - platform = "java8", - tags = ["bazel-only"], - dependencies = [ - "3rdparty/jvm/com/twitter/bijection:core", - "3rdparty/jvm/com/twitter/bijection:scrooge", - "frigate/frigate-common/src/main/scala/com/twitter/frigate/common/constdb_util", - "src/java/com/twitter/ml/api:api-base", - "src/scala/com/twitter/ml/api:api-base", - "src/scala/com/twitter/scalding_internal/job", - "src/scala/com/twitter/scalding_internal/job/analytics_batch", - "src/thrift/com/twitter/ml/api:data-java", - ], -) - -hadoop_binary( - name = "gfs_random_request-adhoc", - main = "com.twitter.graph_feature_service.scalding.adhoc.RandomRequestGenerationApp", - platform = "java8", - runtime_platform = "java8", - tags = [ - "bazel-compatible", - "bazel-compatible:migrated", - "bazel-only", - ], - dependencies = [":adhoc"], -) diff --git a/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc/BUILD.docx b/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..d048faef5ca3f191df3a225d03a4f0e6b1aac675 GIT binary patch literal 37000 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 literal 0 HcmV?d00001 diff --git a/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc/RandomRequestGenerationApp.scala b/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc/RandomRequestGenerationApp.scala deleted file mode 100644 index 7163a96ac..000000000 --- a/graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc/RandomRequestGenerationApp.scala +++ /dev/null @@ -1,77 +0,0 @@ -package com.twitter.graph_feature_service.scalding.adhoc - -import com.twitter.bijection.Injection -import com.twitter.frigate.common.constdb_util.Injections -import com.twitter.ml.api.Feature.Discrete -import com.twitter.ml.api.{DailySuffixFeatureSource, DataSetPipe, RichDataRecord} -import com.twitter.scalding._ -import com.twitter.scalding_internal.job.TwitterExecutionApp -import java.nio.ByteBuffer -import java.util.TimeZone - -object RandomRequestGenerationJob { - implicit val timeZone: TimeZone = DateOps.UTC - implicit val dateParser: DateParser = DateParser.default - - val timelineRecapDataSetPath: String = - "/atla/proc2/user/timelines/processed/suggests/recap/data_records" - - val USER_ID = new Discrete("meta.user_id") - val AUTHOR_ID = new Discrete("meta.author_id") - - val timelineRecapOutPutPath: String = "/user/cassowary/gfs/adhoc/timeline_data" - - implicit val inj: Injection[Long, ByteBuffer] = Injections.long2Varint - - def run( - dataSetPath: String, - outPutPath: String, - numOfPairsToTake: Int - )( - implicit dateRange: DateRange, - uniqueID: UniqueID - ): Execution[Unit] = { - - val NumUserAuthorPairs = Stat("NumUserAuthorPairs") - - val dataSet: DataSetPipe = DailySuffixFeatureSource(dataSetPath).read - - val userAuthorPairs: TypedPipe[(Long, Long)] = dataSet.records.map { record => - val richRecord = new RichDataRecord(record, dataSet.featureContext) - - val userId = richRecord.getFeatureValue(USER_ID) - val authorId = richRecord.getFeatureValue(AUTHOR_ID) - NumUserAuthorPairs.inc() - (userId, authorId) - } - - userAuthorPairs - .limit(numOfPairsToTake) - .writeExecution( - TypedTsv[(Long, Long)](outPutPath) - ) - } -} - -/** - * ./bazel bundle graph-feature-service/src/main/scalding/com/twitter/graph_feature_service/scalding/adhoc:all - * - * oscar hdfs --screen --user cassowary --tee gfs_log --bundle gfs_random_request-adhoc \ - --tool com.twitter.graph_feature_service.scalding.adhoc.RandomRequestGenerationApp \ - -- --date 2018-08-11 \ - --input /atla/proc2/user/timelines/processed/suggests/recap/data_records \ - --output /user/cassowary/gfs/adhoc/timeline_data - */ -object RandomRequestGenerationApp extends TwitterExecutionApp { - import RandomRequestGenerationJob._ - override def job: Execution[Unit] = Execution.withId { implicit uniqueId => - Execution.getArgs.flatMap { args: Args => - implicit val dateRange: DateRange = DateRange.parse(args.list("date"))(timeZone, dateParser) - run( - args.optional("input").getOrElse(timelineRecapDataSetPath), - args.optional("output").getOrElse(timelineRecapOutPutPath), - args.int("num_pairs", 3000) - ) - } - } -} diff --git a/graph-feature-service/src/main/thrift/com/twitter/graph_feature_service/BUILD b/graph-feature-service/src/main/thrift/com/twitter/graph_feature_service/BUILD deleted file mode 100644 index 72b7d516b..000000000 --- a/graph-feature-service/src/main/thrift/com/twitter/graph_feature_service/BUILD +++ /dev/null @@ -1,15 +0,0 @@ -create_thrift_libraries( - base_name = "graph_feature_service_thrift", - sources = ["*.thrift"], - platform = "java8", - tags = ["bazel-compatible"], - generate_languages = [ - "java", - # ruby is added due to ruby dependees in timelines - "ruby", - "scala", - "strato", - ], - provides_java_name = "graph_feature_service_thrift_java", - provides_scala_name = "graph_feature_service_thrift_scala", -) diff --git a/graph-feature-service/src/main/thrift/com/twitter/graph_feature_service/BUILD.docx b/graph-feature-service/src/main/thrift/com/twitter/graph_feature_service/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..d0b95f8bdfe540561e34345756b3605b66903e70 GIT binary patch literal 36845 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 hZx15$x3nT_KbwmMn&SrMb2C5$R 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

u@}SVM0TaC*1s~C7lM& zf*=%-9%H2KxbdwZH=tiNl0aR|=k(_2LgO!fh~^L*1&mE6tyXrW-SH$dsI{#RRP z9u9RH2k>!($e?kP)HEy|uFBCGw%XPvOQ~GBjgc$sh?#MWag&U3CXE!eu9=R-Cghq{ zv_v9glEyhES553}?2pu#-(&umd4BKn`+VMc-{*Os-~0W3pXc}P4a`evWCdY})w>GL z=Xg*pN4%kJtv|>R2os^#y|k3wTA30ezfRIyB2sSaNG4JBg=T_F3bA}{(261TY(w|j zX4Zpq@PfqfDBCJ4jt9f!XGQN6qU9Es1PqO2f3A~0I8|mx_!0K#Z>>QeH+HX!BPz=% zhvh4>Kj7&>&JalkC-gqOV16rG^w3V|k4NvPvc;C=j&*1rLQ||oGL2p>zMII+5wJtThAkp>?>NQ zZU}+p|2>N(m^2o&l*uJ)SK~>i;q*v^goZ{8L$PKqyD_d4*%LWtN1XRHyVFs%AIa}3E~15fW6L|vKE zOj>j(wMU7XjTK^6Lil26+5_5+R=)B+xgLL*wdi>$1d5~LH6|2{XX&Iqa|%tOeO6&+ zYS^cw1~~Yt(5}SvjFEEetG?-#*S@;(jP0C5kE`$>M*ljBeksFDZYa85y0>R^s!bzp z{O)x^{n79N%0S2mrL(GgN=VFn%Cu39&E&KiO+6Yor&!n6tDE;A<@v zSt^)eJVDm^haoC>D%o5&iLfWpf`Ar!F>@1p+&NhDt-jiVX_K0kU@k|DY$pt>8kNHL zA@JqbwmLw`NpL5@iM-LPi5BTjbzAQ|gV*kFc-bG;>3%|DcDtIeL_nJzzA{o(2Z!=yJ$QXd zrXPBk;zFJn9?3sf)CF@XUQzM)d7)aZ6qEEp$Xzr=Bk+opExcLb+JuUH%A@&G)n!+d z?bTVMh&E!+LFs9E(S6Oo?|T7T_ zPw23CPK6C76nT24DrXsAoX^aEe5a!p*E>yU!j;piNZq*(~^_kkhJ$+DAgk=f2VFDNfGxqi+!VkUp(JaK=E~tzqYjpgNgBC))#?Wx&Tm$2OI}lzCU~1F9oh;qQUsb!9h7D zfcpwUAd)|d+q#F$+MhRiYqcb*Hhu2l{IMTj3T_RVmAywY}Ep!0U1 zD`lR}jm6jTuOr_m*>o0C%VdwFXh9%O=e9s3cuXbGbyH9<#uv3#t_05k_=S?+cs!pg zk_QI8UJ~p9*Gaja?x1g;4Mh|%4lcZK@rKZK98`t@8^DDKu3h~ZBT29Y9BOebo^k85 n!V`FbdGLOa%kw2|SYo`pLo4$wzzSMjRZ intersectionIds(personalDataType = 'UserId') - 4: optional i32 leftNodeDegree - 5: optional i32 rightNodeDegree -}(persisted="true", hasPersonalData = 'true') - -struct GfsIntersectionResult { - 1: required i64 candidateUserId(personalDataType = 'UserId') - 2: required list intersectionValues -}(hasPersonalData = 'true') - -struct GfsIntersectionRequest { - 1: required i64 userId(personalDataType = 'UserId') - 2: required list candidateUserIds(personalDataType = 'UserId') - 3: required list featureTypes - 4: optional i32 intersectionIdLimit -} - -struct GfsPresetIntersectionRequest { - 1: required i64 userId(personalDataType = 'UserId') - 2: required list candidateUserIds(personalDataType = 'UserId') - 3: required PresetFeatureTypes presetFeatureTypes - 4: optional i32 intersectionIdLimit -}(hasPersonalData = 'true') - -struct GfsIntersectionResponse { - 1: required list results -} - -service Server { - GfsIntersectionResponse getIntersection(1: GfsIntersectionRequest request) - GfsIntersectionResponse getPresetIntersection(1: GfsPresetIntersectionRequest request) -} - -################################################################################################### -## For internal usage only -################################################################################################### -struct WorkerIntersectionRequest { - 1: required i64 userId(personalDataType = 'UserId') - 2: required list candidateUserIds(personalDataType = 'UserId') - 3: required list featureTypes - 4: required PresetFeatureTypes presetFeatureTypes - 5: required i32 intersectionIdLimit -}(hasPersonalData = 'true') - -struct WorkerIntersectionResponse { - 1: required list> results -} - -struct WorkerIntersectionValue { - 1: i32 count - 2: i32 leftNodeDegree - 3: i32 rightNodeDegree - 4: list intersectionIds(personalDataType = 'UserId') -}(hasPersonalData = 'true') - -struct CachedIntersectionResult { - 1: required list values -} - -service Worker { - WorkerIntersectionResponse getIntersection(1: WorkerIntersectionRequest request) -} diff --git a/home-mixer/BUILD.bazel b/home-mixer/BUILD.bazel deleted file mode 100644 index ab7b358e7..000000000 --- a/home-mixer/BUILD.bazel +++ /dev/null @@ -1,30 +0,0 @@ -jvm_binary( - name = "bin", - basename = "home-mixer", - main = "com.twitter.home_mixer.HomeMixerServerMain", - runtime_platform = "java11", - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/ch/qos/logback:logback-classic", - "finagle/finagle-zipkin-scribe/src/main/scala", - "finatra/inject/inject-logback/src/main/scala", - "home-mixer/server/src/main/scala/com/twitter/home_mixer", - "loglens/loglens-logback/src/main/scala/com/twitter/loglens/logback", - "twitter-server-internal/src/main/scala", - "twitter-server/logback-classic/src/main/scala", - ], -) - -# Aurora Workflows build phase convention requires a jvm_app named with home-mixer-app -jvm_app( - name = "home-mixer-app", - archive = "zip", - binary = ":bin", - bundles = [ - bundle( - fileset = ["config/**/*"], - owning_target = "home-mixer/config:files", - ), - ], - tags = ["bazel-compatible"], -) diff --git a/home-mixer/BUILD.docx b/home-mixer/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..138653575f7d7c6ea8c2307888cb0c99926c9abd GIT binary patch literal 37066 zcmagEWmsIvwm*!!dvJGmcL)S`m!Lr#cNz~6+=IKjySs99N5-Z9_>oi!nh=GFt9NgFfdHesGbDC-o@PB#Yo-L z!Q9z^*~8AZF-bvbRTS;>*$Z|ui!iCT1S)pfjsvX&V;sI@b@~mj&JxRsJjBD@1b?{3 zjB+Rpb6iI1oiFifoluug6Sba%hHKacqH^dJ(*SbwI)H_*fIM%K9 z7NU3zAp+38@7eV*yN_#e9KqC;MqaDwZeUo4?41B?f~jj}e?Vqwz1a)o9It9JeCp8E ziB|WuItr4(_qvln$vEx_q@$@PGf0FQ3glvuNLSH89Uqo-vtD?Bn`B2dWjFuc1aCzv`lp719KO9wKwT58rqH4;F94x z0?0hncY<|n(;{vtP(;nC@3<{ANrf3UFbDPM>Q86Hs>CIY=MUP?~(A82E&Dd~x3s7VoF|Q?L52vHcVp}tC z+8*1LKk1cUF#iaWP*OAWpuC2e?7$e{wQLY9o@v>Af51dZF{$M>W#PIJq~hl=P5g_s zHswsWF=ojZZgfVE`|O_u3j2(xW(B&`cbq-5#AkG_16!3tPvz2)RmupQ6hp4{9mu+z<9a3kIn7`}24Ugv3S zhBOU{4&sUig+;`UVID1KL$!|K=6QP2Sgiwsx}O07#Ni1P@%8AX%|*mu z8R#Xs;Ni&wALXYEp=OuL;e(vEZK2%ot8|rier)Km;jcC!ue#K!cl|y(lpLXlkyRmv7U=E>@H*(3ZI#HcYR^S zmYyh!RVo9{ErO}Ie4z*EE6)1sIKY=hz_4earUyb)!`b%e(1FT)3`lZWKaP-W1i z*qVdr298G4W0mtTOzRr*p6`BMF<+_Pj_i0l3C&5=%W5;BT3#K#v7sBzD7E868SXA^l$}dDMXKn867TXk?sc&_Ha!LwnTy7ZloQ`Gf!z( z!EnDc9M_Yo)s|vi=C@y++U04p?)HZMm&46^KQV zyG4O|6cAr}#*w67k$}}DicM%r#q_Hk16=*$;YCWQyoA&S|8lwabdXttnJ8*SxZH+L z={q$eELA&RQ~qIxxq?inYKVq1ndr%cgn+@6?o{jWP-0QnKv6FWJDUq1-HmEH1lS6` z51@fgv=PEne($EcLvr^C{{@Zt!jA25>%mnB@yH#97uZq{Pn>cBZ~HPDIZhnVV!N4= zBs{6LNhuJTfve$ds}z?quqrE3sPw+GBc0`$h4>sk{o#t>ZT{vL$v)Z26a>dpu;z`6)o%ZV*5G9TR} zzASj$mhEx(%G`rndXHm965@MuY2u zEnm%F*Ww5bZyl9|M^XQFuST6j%>e$TXJ;gH#29|YsxaPLEBW(+k$R;xmxq*yaoqY_)gi&D#XwTqaF;-^3gW@<>&fC6( zqUqxtHcIRjH)jxEbkzE+j^<#@Uo+F0fwjhqiR5m6-!smYlAD`WjmMq#=zx3?3g^Tq zq=`APPn6%p&^N_eonuLWR73K8^HUEqiu+VV^OQG|l`&RtfrwDmGb)7;MoayGg3#x& zXnxyDTqk&B*#QRIeN(D?0!x9a99(#tah}kCElbR|uy55#pA#WoO0W5`%h*0?IL76$ zho)nxP}z*6lATDW`Iho_2#}8yA{Q{eG-i=5MG@MqGX%$_)X2Vf${5(IeGZsLn&CWb zJPe@~auMH~6&S`QA$uw_Bae0gZ`SW8j(L^k>%guTt_M$%@%*f$cs}|~R^hEgx=*X8 zl8XO|+>NDPQ}GuzG1-0B14;0#mYk9iYc#<~auwIa{AZeOmO$FJj<0X*?MRPRHYfb~ zo}AeR*O@#uBX?7ZhY783tc>;Puy`TW&!aA0_^qjYbAG}>{Pr~Z=)+vO)I%p0#{&Cjs^Tm2{70}yTdqWcOd-NBJk(g=I=|vpXZ!JF{L0@ zyw7K^2z?<5SVi^`?|$V`x6?~k7y5)quf*R<>~HF=n=wl41nk~%`)1SF%}(B`Eo=zj zF*JM#5*vN6|Qv=zH5s^EvTTKwla9$g3>$(i`CA49XVT)f)JFD9#6E;}o1wnWy`oO`zv z>oo)W(4lIV=8X*~xTuVG&JMrb+?x^ly}%kGSTxKNN)+t}JS*r&VHiPa-eo}cbKDzS zjqO@2n1V^VcT1#5uou>3sBJ@D7IQ?1@lw^LsRi4FyqmP)wZ5K79PmlFAGPRZeJ@iLEZf2CEKsV_6%r55}p2Xy3W(z zjoj6$cc%GNJb8N64gkL3`3O85oO zJlAY_ibY5&dV4yRKJ$e|*1cU@)$4jc&99DoxqlIPbI=C#qu;gfULD+cygMl$`DAn# zTD;f~Y!oK$w*)R{4SVa@yDfhFtoSh}W%8&-HUTB_Hby>y%Edm6G)W% zrr*X1>iF=<^{D0UH^dh z0U6d~IoPx_`y@L3={)J?(j$$CXZ$(>=)~mp!skVCl~BG*=jz$zxw0lADIVh&!t&a+ z*45rzF`hKY=4aQw=G&#Och>cCBk^dVnnK*~xVg@Px(WO$MdBlqbwc(wQ2o$t(px<~ zPn}%ZPlwi{hE`XJ zywn)^>WKLAhOl(B$C!uU`n|j!_FMSDyn%Dc) z12>*SM849C!MFA>Lh4%+Sx-Zje7tS~O@y=^xVo>qACNzmqi&a=vZ<2vX^@yy2oFg5 zhSB+i%>rHBx~_*$tOjWi4AmdP183ENd0P}o*|aT^`!oo|%AlcM1`(AS0O-F1#+L!> zcW(yw6EaJ%!uE=*uI3Q<^hIryCz~%Ff{Y?0$<@>DGi$oBs_cEC&BF;xl_>M}H~l|r zHhrtGOm(bHo>LYN_Z^)pa0*HuW6;lApB6t}snb~xq*~qwy>%E=ElfY1%sx8YIlc_b z-d>5EoC#;BNH-eH&z<)lTwVP`EYym6>p$=)BhI*@)d)gd{ct@)!9J7@|PMmj!oGmZM&TWv;uC(4{)mK2vktLhmwwDM+y1CjEy>~;;}0( zbYyUr8(2L?a92hCSizoZq6jM;bfk!O8x@)PGH|LC3>bk9@y-6E8G8l-F>z=GSsmpe zTT}pW9o|trQ8dL%9JJts4(Jgk@k^Z8z}ODxf}G!zpFop1|C)r_rUZbC{S{x;h)=}~ z#o~!L(kHtC@h|KX&UjENDJYKak5pX{S_laDAE|#*L6y>+S(ADE7r~hd1!x4}4;9HB z&}O;+L*jp+V!bY_Z~{|6QGXZaMgY>IiU#tE)v(7zipca|5}8QhXgm?&{!l%a;NFPV z@jL3@Lj}$f4O4FIU6_Vh{F1u!q+P_CuD)jv;C?!Ox+DwjNj)DBqykcC5@SnRnmoET z{aP{gmh7AfCAH@c9NU+N$8BF3BZZjtlAq58*Pm`&TMg_7y~UpU7bo0uKP`D&>D>>_ zW>;@}RR5e8Ryy227|q+hkJ=P5XugpoiMHQiUKUN#k3Qpy!+(2nK$2kcoHj;dTq`BY z*c@CVy*&lGEoHbP53Y7G`weHy*d05?AGZD)_yVZj38;!eE4B5d73{luaAG`ie7ADG zDX=hW$J5S|a(ozvGd;d%%7duC!KUCwY}Of+i@!;vco1$K-)UOBzsvUUw(qMlhH%FA zeC6ur<9^nXK#5wo;T%@8aKogwN<=x<7OAzAfYWYWM={y@+PfY%q;gBI-tUyOwsCag zvC=&doqU&*`2CWax7)>C?b8&>C{EaMS%U{8)G)mU&UUHMLVDoK>%e)D(&0G!h6{0c zhwNCo>WA_4t>^eM9%wp=g);?NeiHWjSx+0WB)O9XzYIwXEy|*~WwScZ9W$ea#%cG2SY28mJ_=E=s{b2 z)Xxu1xm9Ma{YhAv1Ka%JK|d*@{S($?(wl@$kB>Ogul!cebI=!qq`wk#9({)8d-PBq zl4Bf3nc9?w+sbwH-{N6j1nA3mJGO80Q20I@WiaIB^M0+{t z{DF0}b09&&qw+qV?=zx83o~c0ORg-B{-=rnJ~WU%AOoJTYj7BD;$fOTAls6?TRKV$ASh3kOPgip zDvmN!YrL$(gf=qntWfUGm&ld%D3SZE!jKXr-A8uyKrt_w$Hd+iEB< zXFpacXj9=@9syr3 zmFNwV3ooSFnUFoF`RcKS>|@kBRikd8 z_T|3UDELYZjg}4ZAB!y0FwPJpbDYaTad}EOmM))^mf@z?66gA8=tKqhWggpe48*E9 z!03iTIE_jJBwdT)96n^`22SN z`nW)dTOo&=QrlQd!Nh=AhEWU52d!W%bXTP!$fZEy>}B zL9hJ&w6@zhOy!W(NP6CxxRShuA849`E%q9WeHYyA%_cK!3xhZF7OuUJt5U`q<33)V z)`}JShW3KG19Pf!snnG?ifj7w-(B{?N~u1Z{_uKmY~}xzdQ+bABZ)kw4G0!e!rsuk z1V%_l+IH*#IQx`Q!@NQ8xqn=XV9h;}#VGWAy9$QA7aAaT;ez{>3f)oGZ6){oC`!lG z46|opX0>J^NnG{lPTZKuT>J`eCT-20KsadcFl7F6Z&unOIms8*wULSsp!U3m}S%|l=Zecav(0t5dEQ&SG;bg1W~iX&nCIxWKDIoRi??g z-MGDoXIWO)N#A;uEuLzasG0Irnn#vH@xvsq82fGkqJ^zxeQJSFap7$S`Lgp0w6}H3 zc7#GK&Zy^|XL(ipv2y%?wl=59ijwQ$R%Hc6%kIGuo(>*DOb?kU>IhmL>|T@YnadJK z6AM+!K6zws6(bmx0t4cs_F{Cw18jR&&hsZ#n;-8eG4Q2jN!VqlQRE+{FB>0E|YDOFK&ye;ZiZ+0~2 zS{bo6D~0aZzub(F>%Z(k_&zzI!#`sGK82L*rh$cynKWKBi`Pp*YiZhxwNzR|?;ExrwQ|5k; z-yI>ZwWpRql7dGDlU^y0rDu@v74;sNtVX0G4k0_S079saUkcM>DSxP?n>0dqzLQ- zOMFD5>RjLKYRpsXc0=OJbL!`-SqlQp&L4NyH>6!(GpX`z4p$9g}E{|zXI7#sN9=AYIuk5Y0(F{RZAl3|lO|dX!XD!b!o9K<9 z)44j_Ur=W5@SO^WR}Y`YypTljj%R87@ zR^8%sex#Q{@5G*7vdH7P4OmUfZ&uloALej_XiM7T_urs~TujyJfQ6=IYl1giGIl{V0=TL-GKvGtbi@G%{+Q$0(96*JgM9UiKakZxFq7C4 zfU58xlg;ac{%YRs`-Lbu&BlVRM2bbO+wdJu+TsBIsSAh=f9_$#5%O#4WU6ZmBwl#I z&5KI{`YUIP?B69Sm?1da8kQkh+a-}Q*4>9+y!Ul=d9R@=@N{Dbqq?#ciXX{|^6W%O z73O!D2GpE*(X1mLzU`6m(k+HtpG?$QP{TdFDrgo-JP5_Kya4%dWV-W6PX*r zAiFJ9r!&h9DYo<_i|&FiVhmXgZno@J=v%uL!pLDMwj6G)-Bj7KCWNnaGuF8{xDsv3 z0h*A0nPG!mlSEx6!qNUsnryzINB%qNBZCRps^e?yn-8}U-`bavMvhBE6mV4lpmZE0 zU+K<2(o6nIpZjStT(ue25k;S*_al;lFYA=h-4G6PyUJfvZs6f=zJ}GK%+IR zc68};)gX&i8fG#X`6G9VY|>_T*-fj=;!{$bim311BL)=XP)XD{gjE^$-R4X9`}|n7 z{gyekI=gh)IW63vA9wurZJ73tx*SAPqZINv_A8I6QoscT5sAuqjcdKAjl2y&(iitR z05Us$Nf?b_m06^!pEmu+uY~JsCRxnem73!v^*7W>*CorWArfxDZ;iatgF*;h)IkBd z);8t>;pCB)-T`Mu@27~7W4p?%T4Q|jHOh)>r{}dEDY9n=4v%OdE?1_DBmB>AuhgL! zmoiqS5h4-jArN91-WARpeX;vqqr-J3%*@^p^RQ*?0huD!b)EPM+>r) z`2DAt`ZX(GTdS0)L7!gbk;-8&qdJs2Bg7FNDi(@5)ZF>&6Wcp09G?{&@KLw;rUbf? zmaem?Dhf-~XnCXg1~{3n8T$FzrNbizi1=x%9cNc8aL-W8B9NXK+WCSP7vVaWnN`; z<^HF$VY33Ab1OY4%2nAF#UfJEhkDZ0@Dpx_$Fd?R(aR{!(ySq2EmI}YOFki=s%Y{Y z24$!YLZG~qXfQb`kpa`c%^?sqDoFK2;|fhg+1sNlr<`k+d%=a!V1uvH{h!sO9f8U^ z^9VW~`573Q-uk~ZkM)bcNL4mBfQ2M0MQNJ|Ck95i+b5-?%7OXZ{ERE<&7Nvg>^i;K z?e^2TGs0Kct(CS0B;`^AU4(*5W+td6pt35G#`7LMp;cD`?Tbkc>Fa3ut7GfqS7PPDCnNVuGmmhK>}iC_`F7_cWo^Q+HH|1!;7TTn%tBYkEd^npK@-$-Oxe8X983 zkREJdz*O*zt_3720Ie0*#YA6X4T{p|gm^PgaW1}AMpe?}z!BAI9|+Cy5j`ID$xyGmDKQ5x1;pwg3&`1j}I_^XrHsg6us{&rJB> z5APjQHAd-b4%kLBw!!=}4@MXu7;)`aaqbM5gyjsiS;uchXkl320usRZVlipKO+*=` z4bf`9R@LBrnQ$YoXGV(^&>{CekolWNit;pFm7>L5+26jGg?{_)4b_%+^gS_SJ12DG zCj8U4)F=oNbYZLUW&0i&Hs}&EsBG4Rnc8>~G1@dV#jSAmHX9?7tr-p`7eq%&cziSjjF$xPHsV+tWc-qA=fb7z$^`L zhudMS{?h#ruVZU&h-tEuu02H4WtB1dZ8r(elBtYpN;ac@l{ARA7}%zDkTGv$Th`1# z0~$==wOmwZT+Toni-B?EbB`uiT3oY1A#vkKMRI>65Fioa3Q{m=5I~hZ% zNJ56;&I@_EzvtVL*~6TVioMOJbUYn`3V{xgj*5SbC&!y{v!yNyX7kb{UxYj3Te4q! zP)+GXSpT7fdxUhVH2XA(&vKuQAo-Dv;6Dm;i4KTdMKdrb|5WJqKNVhPT!l`?ZB}r5 zspN{Cl)Q5qbt=(^y&TB>&NMPxRq&2u-&1{1q8FvNY(X7X$JXRoqGmHQI&PEb_YVEz zVROBk@vU8?BRfO|PgXw^&B|?!ahBzAwDHHy;g6^ZrK;%Sx&4O&tNcg{n>rTO;^JjP zE-yluDVJZhr~Q4hr)^SEe6V#lhMPB6Y(EykjG*uc(?XG}8F0`hH`})FkLNZmo~{`X?cD9f_uMAdsiQNy zQ*H_ccYWRN9xcYHu<$%2QOs|ZX10c@FdJ3`zci&j$)h-1P+S(>*0If5`68^4Hrw!s zEy;;2IXmWUu5;8`7gprzUj)zD9+&;Ja+CuJA@p)eWr3!Uz}0>6tyD3M`rV!6EN7k- zL=%U`Rn#o!&(gAdW&po}O(!7pl(W(e8eIW$rr~lUAld6oG|!4C#|mPyd+)HTiT_K0 zs8Y8#1HR;}*(5;Fr7WRHc1UQ3GwM^C|B3v(&n~BeSJ_d?IDz8q%GquypF+8jnB=S| zXJto9S>c9U(kETmPidkYl0AWM$^49cZeG`IixvO!sC!p5I`}uREALseKTQ7Qti0(O zYMX6X`IkvKy`#>;@IOt4CjB4Qr``XbNnQn;?&mXyYD9A$t8GK)idjKu{+#}n;#hzU!*u^@>v_o&`P4Xmp?3lxInYy&|)0q#XZ`xG1sT;_!mc#V>3|MoqT(e$|k$^%FM$ z!AYTiUtsG%7nmj>IHQc)OJGAz*A{f)$tckfB5Mp;M~@*E>!q~tlO9WQN@E)k{7Q5F z9Kt=+3x}o0y#&*c_S8Ln3f5F{sU1|jlQK~8PT*ii0&H8L{#iV`Z2iBASJP?R^>uP7 zf%Pwi2>por$AsJC1T>R9kk-a(G&!Xnv~XUfgcuMS^svxd@ndXaq>>KmvI8n7KED3A zQGj;!58yTL`rY%5dMybR3yYf&kb>_90>ei8M&yO;Yi7S7&wJnC0ibYLyR4sIO`_JY z>*UA^heh(})|0u_EV<1r=k&hFgMJ)_cTle}ovS>%B{&89neoldUCy^%;G!MnT!7{) z(&3tKljvs}R@xFFrJI^qpx}IdAO3k*G{dT6vGrP(LnlttRCDibM-Rdh;$_$w`X)tJ zaTI#kS?VD6HLs#+(kk z=+sD=^Ixe+(QP?y7Y3~S=3xMcnU^-_kRL39AMj*OA5u&i zx)F>$L%~2dwv-U#e4oklQrCt=oN+XN(om0D#XVT`5h&;Wx=FhS{DnYsOc(x;3T7Yv z;Q9@2;92<>#tqu}QX#X2E+Foqaq~zq^Pw~k>%8S$s;ALr-Q_@QL;jm8fLdmv8gc@_ z?vOcWKPw;1uY3S1Uho4v5~48>B0unJ_IXSEM77ge7Hc;SK4w$zGouLH61L)k8pag| z*c!&waUOcu!!~Po9PYiX@wEIg6MOe=7E}R1?lG zs<<4L%_Gk%A~K?X)z1O8)Zn;?z5DXT_uS5R)*>uRrGd_7ZJ^V60a}HoHbCrJ*7g%z z2nNBs?60zJjI$@2Sh?S1+!_!*7*W{uAoBslOtf&;Tlp+)`_-1}Sb`ES8h1jnv!Y!8~p zwq4%PBI+bs4EISSqqgNFqw;?Nd-PT(1;zXeSh>x`EE;!m2n_rA`Ua?0)Um-Ug8eMd zbf0@D>f7m$04y0Q0ujx|lo43DnF;*^IBEa^n36D4y7eAf1X&FV`x&p={iVa(;JoWW zObJ>flG|cgt+1X=6k5c$b2E{ynr8|$s)h*s!KZA*k^^#GTe@X=be+G}57>+Haa;d7 zNK~@5D7Jaz1@bdIj{vOF?wu|SBmqfN0F}hFW5c+Y<=iLq3K{0O#hL#8C-$}axy0AG zpo=-zrRU+o!0e%aHS>S1ja&YM$&e21*bWM)zBvHb&Mita*4}!$$KIP8jw$>YLN|Tc zKd?g$!$-TLM+O{eIRj741mIyMg`R0FFw(0gl4|0C2c-58Q6@+VtSB$WV0Xun3BTu;kAQCkWnZxw!p-N(lIn+UdXBGN$goJJ^qh;6Uhu z2HATd-0Qf#QSp}oy`Y%^B4-HyEe}MS;ZRIVeq0{7UdP>&84})&M0RiRVaKFWu;GZx zcti)nHR{wq=?^*oqAxbJ6x@OanLpTW0klVew;v30{&zYZ4Z z-4hZk!YEc2QCkpJCO$DqnvyBkq44yqwKINHt&m$TxzK$h2fK{^edU&zT#?uL*TP9< z6?{MEv|ReA7v=K^MJKM!C}1iUneWM3iz_czR9ESMZTtFgy|7mkV!07Za1Yz+Bm=Gj zSfuj9c`l4su|o0pHjB*jZ;@Wdkordnz56E8)l57?ka#JM_CY_J>~dczkqgBrl{!o? z-{2I3n9rX>F(9aFFL@uaJ5)psteT@8pch-A!8>9Ls<~uTN%hyFlRb9|Hp(`uP0~b!usBtpIM*$E5PNi;S7IoB=*mOh9Q;gZ9g$ z(LCh_mGC61iLt=&vxg4mmca?dib!o8SnXvGTPDU^d_0RcNfUF7pIpUj`o;##i{oSX ztgN-{nH2#;W6v`_?3MsdGlej_I(C+?QI@}?mMZk9G^wY@zP#9ZRv>L0Bx}E8XBfY! z8j}}ANle;*oV9>y)G5Wa(*|R}#7ojnovN_Kx@33jWLj0OajuXjbqh~&O-zbtCMPsdKupCeo|i-a_Gr%p~qxteuPxC zgz96?EDKNbVMZ&GO3@R7{BrtCeHW)U01Rc8jv7rqwyDI@8@!mp-(Ivg{VCs=7Fg~o z9ui-bW>o?PD3w*t#Z}G?;SPtwhNDMQCoLiM>#;!#gud0nsL-FMR)=E*oK6k`8Wl^F zzaKFnV{iFxz|mhr(sORMmjjf^BJuplYtQQ4N@Ck{k<@8z6{t%@mBnyNwjR59Fs3x@ z#G(Cgkc7A)O*gDFm2(SXKF5%;{UoW+n`$c5jpjSwl9@5zj@X z5Q7dxNE3x-Ij7FZbOMQ>SI6@Nw-kZC(mW1Epo$Xyt_;4hACx1`k|U0oN$?1R4Pj%8 zx>TIVsx`8Rg6+hk-W48{10e=&kQ0a<=en&wf213ddIsBcU%3E}{lP7}I2Xd_m`^Ok zP&5Rm3G)t_erakTz4o|h0*B_`DiBfsR1wm1MWk4+qFH6_S{Zn##D}b(+WZ9t`_*+x z@PbVInI7xiQZUk3+V{Cdp?xxzvh-L<^D{KK*hB^U9R`eDlHPV0Tk(|ioqY(YX_~5T zve5JVgSk=fIVkqYeVVKlZ?zv+C7+^5sDplJeR~7z#QN3)wi6|uD|%xw^26XLoeZ7; zjk^Sspu`T>8kJ}Qv^-7QtIq29D8F&o1f$uyW64Vq)+6HO282pUz}H_0QttK{E>SCj zzN1PNDA(b#M`3Mwlfl!Wsg_{Um7L&Mqte~yKbQ&Qbe$=ZhCF8LP!zC&ejB&wCqG!w z$d40;M2&E_bzvo#UP7$U0RgH01%&+@Nblc3cE5q<{3beqGP$po3vhIi>!s!qg0{G^ ze;^2!gVq*D7F$d@&~ra>RoZ3vRB43s%-CQoIJ&tnSc$g?jiFdaB8s{q1%LR!k`CY? zs&~(4_14FW!ov5^?x29Q5g{^|4qC&G6Cafx;Z*ep1XC7>%H%2*6i9x+$<)`pYFJk73Fsu)^VnuNfJ|vW6(BcTL(!+oho&tx5#S4-*)PKIWZ|oU3%f|%< z=3ET}hX2p^_O+~BK1o?vn47x%`3k?UK}x=K-O1AfcH_~YQdTk;+32|M6b8hQ;rQ-F z>g~O7dHI|{T2=hf2l{5vTl}Kg{um=MG9$q!z^`0rP5A0ikOM+Dk*_(b>XGXgKn$5M7+lZUp9nX5huD65f{nPZfhqJfG*JJng zm+a~Bb%V>No748{YSgo{>|4;Q{TrRDLV`?2IPKk?6~s;H>j$&10Mzsp_jILfP1JFB zBc9b^_bFpu-skSclY@_~t5ib=5jSTM>o29PDab}PED@nsZ>}&wvX^((zE-=p(cIPJ zu1=S;7Eg6cG=BCXG~G);Pwy9Qt1H)9BVT=?>RZ1eyN47Dpr7AclYyVR_3rApZ$bA1 zb8EmE(9cuYsH3#))+4|8jqlB5+&N)5J2*YGIc49=ucgy{b>G>kKmF#^>c;DYXL%t$ zLFrJMo`mgl%Yb7Uib#QUduL}8c?REF!Jx75|i1|qb-&~&sHY)Dg z+p9O3+)&Hst4Cj`D!VH%Bt#|_+UI?pELxXNEZgVFz1jJR>R|HwC69OCPGP_pVG{9(h4ncuG!cgUV*hQxBb6X`tHuy z*Bu@y7FEInv@|z6aUSjO+B~$0?9DE$y5$#|%S!$wWzliWIMo103- z#X%&=EafDcF)`yePfyzqeK)g5jt_5H$;W58wldE2SJ~?u*LTAMJ zBE-qnKl3v5>kJF}pPe7e53gz3BWooH0OiL_M5tKuBq*pdZ$p&whIAw19!$L)=Xw>IHx*Tc395?6QC?ezG{jh#$wM%Ha=yAjUn z;Ni*6%}?fiXr7{@w1@Ls$7%OjiNN&NnoWDvTRqcpM>tz4mTIMlb!#m^lnF0TL1$xq zv$=d&*E>J{rE;i`WjZ2sfA#?Ms$l1n>%*{NSzI=cJ4rNQ39tv=YrlB@u=vHGFOdSsEqQotiZuw{3Uqt$$$K4$g|H@nFS!9duu!o+CjWl?ZJeHuQ4WY(=VPT! zU?^(ppb5Ga&;;oTXd)IgQ6t>~?eK31!Uecyu$MG~ZmON%LI2AB9po`-2ToX2@*Ab$ zH~b$ce-HRO%KxqckEmOSGlC%PG#Doq2g~5Zu zZ2k)C0oWsMu}U@m##x8pMf(05=kEc3^IRj{06nKiz5xou0EPXwhGOGXF8hdbdvzK8 z6tYjYuSfk{Et}8*2K1TpV-jI%9>0McK4!wwoSvpPPToPjHm-kg8orbD*9# zE}z^kED-@9McQl{za2iGhVJiYj`iJPMiR)1c#H!#+<4s{Px)JY-VSZPAKBb;RSxg+ zAQroiqvF2adpy9MIC=kkS2j)1>4ka_9d%|7-^?f#C7)=nK*K8b9vuT zQHa%SbMl6usr)4-!mQ%8mAP~K<}$|j=jh@5hq0xtIrExYqxudsYvC*xWVn#P5)@jxKg^^ci)XY|EXE`#1yVmhnoYtY@p=B?AdgR zKgkAhsx=SPNN6i9%3_ z%)?OD%98YW1$kNH6qRF3u*7eOB3FSCTdJP2nY=Br`Ks?ke; zn*sdnBqeJ$Hsz$mT0tHa=mWc5K}%<7VVz=+)o?q$-=nnP-r7D~NkR|6WvNqmUVGP25u#dB0SeR_O_4Km0*?p$*SQ>O}&gYEXh51v?;BExL5P z_%;+tZQ?;WKB^3%L&EV~Q)EV1p;!HaGZahVrnacP-*x^<(QW5MMEEc#{rP2=Khx7l zskdu4LGZP91liST+2`T;IYvr2eIIzG`!c&bR`=W>V#rM>U&j30vV6wFLdax~3b>u) zOpVsK=u#T?*lGoOKeVi6nZy-3_Dk3&$JYu{+vgHXr&jJAPVyaUE>~tvUrpgQLO)X@ z9(`<3;#2M%Cu!zW<~XkD*||J#l5=nkL&ts3ihF71Hidc^c5LvGhw)d_L}8heH<1&d zlI#Bw_7=c#Y)g}{n3ql$}!Ns@OxmVrDHw+pRSnN`28v3zFa9{Ri@?Ey4xa%M_w>Q}p z=bLHY{kPRGp56?;yGS0mgRmGEOAVg70(l-Ww+?zpqeIS(pSIofUc>=gD;{U<-DJKl z32oR6+n3pCc|0ZX$K&&@Mh2h;f(@q{lluZS8L}(YNraH7-h{n}F&1RUE*e8NJ`P>J zBBl4~XpYTFGA57H9zQPDQZk}u^lz;U*^NNI@X!U69i$8{-Zs}b^RB4{raF|E$_D}W zfimTEW5f z+8vTw0AK?De3cr@Q!3}tpWsIUH+WtYzWa-BA!z~U4zhcW0&+dxp1jbYtN~7+VDmWr zK{fTE2V-{)WTXgTZP!`7ULpQ@(&=4~1~CMRu7pClNbQ|=m(45Yl(r`YQ{t&JrCoMB>CG#a z0~`1EjV3PJIZP~7KONj-569!ucGBPpXWT58H$NE|Z(`J*DVH4))ntAzBjU6VU41Cu z(20BZ@h~qb6jQ|3TFxm-?P{`_B(Agao#a>D$w@`e$s~Hzy`Hb6^*f&*E$h~ai`BiD z_gr|edDB3HmPOgt72X^C~cPe9q9^GkxMll1=ii;Qz;wd=~RbSnXryOZD?itFbR((Rq2C?QV zFN!*3eLb+RbLDGgqp-FtTsJ$rW;Jc1?h zPQ9QEXRfjd9>24YHHDM#Nj{$9Bovu0A-i#89tb;azP&jAoEY2sG1iWs^ivcC{lH5; zdV-Y|iYil%oD?Qp<`W6kp?~@VI7+CwIg0pbGZC(;i<$iI00i$Of_lR1=l%HS%$U@$ zMH#ZPtlP#Pvq5{+p-$#ZWT|=G+{&8 z^I}xWBWNfI>(=no;6SF|+p{SzQB#;HJ06fmAotaPb%1n!O^i9JIdjJXjWSo=mxrar zUuU%Z=JD*bac}ZlVj;0&pA!!ZC#y2{5+@L)&l_aN0$h@U@pCXPa#+QZez#wGYWKur zRdvtRlnr5-y-XOncy%?#o>xplNHlByyi?G|AGDV{@>Zz|_*#>t8ghA|?)LS1;qjSi z-7XLP+;F?#e!yxs#m(wH>AY>wR~qgnbGw((LVRuOdk5XKlA145on`hyCjiq^n$0{9 zMrzdF(QL9)i!)_P=;Xvpb=r3ttC;ReT9S=f*{?f?A+zm_schZ%$cy_d@%H9>*;zuf zmA*_`X&JJ_)ucB^7F9##jwG0f&C9E6Sm@y*EmYRkfs3vO_IW&@VRQ!9Y%|+uKZ{&M zkV;q0HhA@@()u{NRJkT)nGg5-5wiHzYw5x_+OKBDm%TsCeWy1n{L0(B>Bh95axF`j z>R-Ti;eWYjV)?(0j=lv>J?|=j{!F<@VPrFTfP_BmHE(*CnQEXUf1@zq#^BcHXcjq-!Mk;U9A9xe~n<7ukH1L31c=?5+ElAr)^)Xa*4!Hl;ULTKhVkw zvs$`Z&F4166A4${IljERsU?5_ajjtOiyrE&ns8ijJP+m8id?8dA+%vyf3%qgGg``rd}krdiLyyuMs!#UB+#SQcb=X;kE>OgCn%Y zh_rLR9WVQ0gpgC!eRh@F+t%U(a*Ltf-8N&7`@GPDJF@L2VEO}UH6QS?nKjY>(*mH~ zSKh^)eKph*;4OxvZNK!F)Kn+Ozoh;wUG3(J9+KfOzO!Nef^i*FG9Y7^Z%b6fFtTY@5`nOXFE3*GI)UZ0en06I-GKjn4B9yFBGubG*62b~gjt)9%5(H(Il#w9V%7BgSR5#jT!QSJhB@ zt%_{X7p%0PIE0cqNSe})27FamqyFpx0;3B;dgXO%Rt=~tlGj8uWboELm?$2h&Lyp= zG^ZwFGajP0U7)7lWz6eAH_%2m$nZ(EBIM1-|Hh`!b2`Z1w7@?^z~Y9~d{qL9!w4?6 ztXn1DpYymv)99GyZF_G7T<>C_-mILunno!KiLp6O0X|VYg|@8}w`uh23gXgsw@`I+ zJ{Pa@spxQLb7XnVhqPIgw1x5-of24W=z_E8K!sMeX=Er0T+}F2pog`k_Eg`h?d&hk z#*6Pasv>(%?$vOf)nMMF&ep&=*1$R{2!^%AB5Wa^fRq`y?bT?X)fgk;@IilnS^9(& zmdV3MZO0fg*H7Iom*z1iDcE_wp=LE{IbPC{$c{BKjy3*mK4gYKiXOIium|qNL5@6o z0*{68jx(~3h_3x}ymPH>P)5xN2(*q@KQ@+4Q_?>3)LmzrqbK$Ait)XtF5VL3F{_=- zExtP9WroRF=gM`&a9_MJ*?a%2*LllC+W!4JZN!gjgV+KVWnnZ8RzLenBkFSE)Q#cO zN3y~A>(P)y9xp*Pk>&`g^``N;itlN`I&7hK6s8ny!Bdi&ZUN_m{eIyj) zc;)Td?fBZum9EI?BPmAQ84<~K@Sya)$jc8CT3ulV@9DL|?0)?&wNjB>6VQ4>5d40s zoxze6pWJi6nS1hb4#|}zvzR-zSS5c$x1&B3L>kgk*(9S+{ImVf$17SE6}rbPRb%lg zyEOnP0n9riz!*bm2qE+V`Ha}Df3&4ol@tU-jGbi|V{s1gfTnY8a{(RPn0K-H?6Pc;|3x%v+ zAHBY;Qr|kfKfCd>4&>U>FoK5W;$A#xu2Wkp4LY1lC86NHK0R zY_|#GD?s@F42c5z?~oU3mcWqimw$!idkS4@u>4oZY$y~m;qZPWh5lTX$r4g9R~uSe zOq>nc#~2imDAjakaidv`Q3MBLC~|S5Tk;^JwXRe*I&lyqE2z+XuX8D79-!LFGKXuc zFQO2_`B<5YG+_;3hxVZ`ATGZ}YWc-?Z$n`kUp|RKj0VH}it3q~c1l<=KW>x$jn<@F z>{)>l&<;8<60`^+3IT();JUs*$8uL^4}H8O5MEnUE%p%BAl>u<7*ws- z@qF;7TFM+aR1loZ0MhbYzIldk)MkB|lfbj#e-6#E4g^TYBgrZu*^Q?dgrFz{RVd8< z?b1)#xg+dXh+AByh0f_$ENerP&ruxAm}Ds2B<&tfc>m2uRt&;~%8f}^2U7CA1(7r` zR^GT5CE$}P4tskDZZt~3NE`y6(GQ)43KUTP0$d!Eb87-g1D^Ij1LpgG9xwnQ*{`uX z=f|fzVBI%;^A(sC@EEv$={&tA3!sO9ZcITyA;^FBHHv?y-?!;|C0F%*YfpuA9x#p% zhnmDsf!Ge>VbM^Cr(WLStCO!@upjbQ*E@ejica(qlQ7WL$@=*!pWCED>evWP|e z6g9?bYFME&N`;SwK5u?}{Sg9Gu*m$O=8$K*}9(Hv* z%9b`aFTCBp(=*%C3LbAY-fzm;9@T(}z_d?rbvxY#!K-;s_4LP&mY+U*yp4Li1@Px7 z%AU)$r{E_qmDZU7ET%NsXd3qD*OTsE%oztS!d7>}SDA$<@eIv$v@9|Wt)dGY7fE0w zHBV^dcJ$m!q3ZI6F8&s_y3@P*19%0~Y2P$T?LB6#0+}unJq>riSIZ&Q?cmh;;VD{( zL@->bJ1D7S^(OLWFd9ze4~N#7DNbIbwZPO78~BkM^t~oq`6O5yXIT3du!imNE%%>+P&dSaF zVy>^0t}4Wj6*$Sy#fl@jn_u1%vGyK;c*7TId1x`rY>W)-Gt3;Lb8VstgFf!^9&bR` z(zALpvTj~Be!kSydD;)Q8v7}mNAMne(^M!J zPGqZnMZyeXJK|HjoWKN4ZT`RLIY&BzHyHS*9!Ec1Ir3J-iwg>!)5m-B+al@hw8#Cu zLwMfjp+-bnMNOM8D&IcuiVOx(Jd$+WdW#8a%h7-i!h=+5*C>P6poX82`20Rt@uBrk z4(dA6%qEwX!_LOq#6-uIS&;_SjA8O61W_Y2@e=x$xb0W=n?JkwgKp*GGGhr|ue8rv zp_S#mV`XY-ARiRRs@Y)A^{s_RBSpUXYc2=|O}?-KA$q0LnUY3(uwH5pf(z~;+qn6g z-rfj~QJgHSC`%J|DatfS`g+H!JBUh7ywgK0hd8_IFlD&KBM5j#s1+0j4rQiuua2ZP z309%@6I-|i$_z>7qiYDZssE?SVc7X;gLF}jAS;WLyH!wWchSLl{sokoY1A~5%w=!{ zGrU4vC8K1kQBA}3g6cYic?NG>arQqLFCBwXto=lojUiSR%<`m}A{4v+G%T_l2lR^9N~zRgRzMMje_{Mf#JR8-#~%?uR{w7iF~j0b zayAECb*H3dNrIpX{@fip12_|z|4N}34@ zDH&nWn{M@)_6v~DpZHK5q?yJctHqMhWxZohl&@gZq?r->7=^gFe~WSXzlyQaOd4tr}m2u7|g`sePfWE953KXBkK943>{|hnDf&Xu#OQz2aHOw4vbTQ^wH1 zx$|;lUOA%0Fg~N0v5HGWXahH4Shb}S-gXeC_j;wW8iwKBhM3qjudpxzm<+KFNtNeI z-EJEpF|GII>ay3z`*zIC7x9))@nCsJbdY|BEy?b?B2MtwnUYTM?mUWLom9hBy$1H} zh$*ls+EDWYj_KG4u6Gaa5~IKDD%6suY&FZ@3_D?lnf+Fhqh)@V<>2t{pS#l z9*bxQSf2}Q>5rCwN}ngUb%x94-l?c5fgUmHS>YWqn$>?}q$dJBIg4BA$ac?rmOId18KQ9SFDhR#ptma(z;b&ZKWis9)D@xcVp<7D#2v;9=hX3Ej#K8=tyZRm4y-WXJ4La@p$p)|RO@71 z;Sl-{S7pnwg6byl1}GCmnHXZ{T2pCAQf-$QFbSX-R2{mN@D$O8K#kA()u{Mve-t%? zR1p_Bv}zTpjKit+xXqESu=Msdls;*ejbvhlf|?*g2kW5O^3Vb zl{HdWo^*)foIwU3#zTT>p;&QR;&P|4%@PHgCZ?jPo_&F%(xRTKS46`wj0Xr#jpQ^r zqOQqL(Z{wO4n;6Q9L8hpKOZa4Vq7W5Kps_NCUgtuj5cU1-FErkWbrU;-+T2xX=nz> z){)S@b2#W{on;s9AujmYsh{}V@O%m4fo7>NitT2tNK-wWnHa`8s=?H_3%z_>3GNZB z{Dl16BIT+-GFZt}!}XQnVbf=p2)>er>Liq#x!RPq&uHAN32XAK*m*9OE=ArlvEk<#0hQU{Rz<&KnI)& z+$*(mVm>Ki(l#~((OEDT(ehyb$<+ET)tLiTAobLyWm1Y&S!q;NrAPjWS`7P7R1&06 zO5&w@s&quPe_5bc540cw9_x<A@(_Z7-=I==&zZnb7l5wyu=0US$cmn&&T z8<%M1L&*6F#@#g#r)0sd(J%8-F!bg@KuPe4h2&J|=ug>RGtLMm zr`=F&NS2bRmtv@g@;SVdE7iysI@Mgv1D?zqY2i7T(*(8G{H=P;1i?}4`4Zl~Nv~5y z=cKFG}Q|woh@moDhGue@L|0Po4uZ zlmrfJOw4;X_g}&68=n7)nJ}?cFnx#w3ylWwTo?x~G$?5wHo;8e$LZBOT$`XD9Uc@m^@-r5J>Z+6>x8|h6RHc11a%(EHK28@{11~ zf@4YZJS|<2q&T%tw08#&&HjY#y|DGg@Fw4LQqyv#p|2Jm3|KTw3~O_PC4(N*gP zGet>r64yyfa1#HX7VjjUnU?4@j0hvklMO|(=T;aQm4FtDKEle6Gknhc$0;T;$97X7 zed&PUMb{hgB9_>-T(%@+Et0)8RjDYo!9A*jJ2WJr9ZhHp_@Xs@*s!9z3^DCz1T-Xy z>^n2sKZV@&sLAqv9152`m}aIFc&Yra8G1ZmGgC){s9YqO@L{tc6xjeZO?KtMh{3hE zvduS0pjqF{PZ7UNlkS1g#yfc-#%%@FT&S>Y&?1s|3cJtfEU>XS!;4Y>b1 zELnw^b^^vND>3{3`poY!Xoc4(h9NI#6cB8xxMi&Z8aV95}1hE7>7!{7C z8H-mmTw9C0cc;8F0#rU`El48pDqdmvh`2LibHSS`^ycDj4M*HyZ$?;rzHLmQbC@1!c+I;ls4WZLo zaPtc*v>U^2l^}e3gGPaOCEkW-w9=4f>h?G1;apYd1&L&KanF7y6A+*Lse>Mf%bM)- zk&xB!V{LjY5X#oSTcnBl?>)qx#*@!E`AR*!G?I}ah4YZ?`-h9Qks%e}k5X2wp}K8HWDVmXIlQK|XuBfb1g%^k!@fRG`3y5VDnfAA zwG}Q1vKlU!&f2$hfE+9Qx~DRXdkZ~GjN+Hi5%?|wcGF+%x zzV#5qfKlEz*KX|uOw)dt zb!>$T0RsvB9Y`P|_1i79nVu-{y4_X#3MDlLLCyD9@QZh#@3P0pD%A_~!(gpm#7S)f% z)VE@cSRmk+7#ENKpHKdI_gu*@F`Td@t3kc;PottSzrcUt?jtiMRRM2<$VU2kz6w;z zk`HDB>ASAv^8OW%YZv2>7xH5?`^fni-$@CE2UrN4fS&yiDdYjahG717O!&2+>K2+h zbL2VM<0ORdLmlF8$8bbyyN$T=nuM4LZ|}?LVqjdcZlR~Oy^k6G5L@$C{UeEmum~ty z<+SdD1x^Z;KX~+?T6_Y21;zbG$^0)dV9`q^pJ(<4C|F4BbpXZ%Gw#n4uJ5Zak$MTL z@t@J)wVnMV=N1~@2{;=2$fc%0IZAMEC`iXmiHaUt4&3|5{ha&A7Sqf?!1guYXX}=Y zrXZxV^{yf7Bc36Tc-}2QHmPFjp_OK=8!lFtzejeKdC-twh<2;td&4YZsYOaVW#TtJ z!`&n#oB(?i~J*aHgj|vI)#eZ>U+@%>( zZXH&B+Mi%C(yR`xLeRvmZDeq&-U=g}jrscIo#vE^d$4A0x&A11o16myaqTj@dBjx@ z64oIH4x6@~8=&TvNeC!g4_E|VQe0)8f;fl*t&5jtVdwz%Yzv;5uWJ!s$8HJQ%q095 zH<`;k&pUcAZi7Gpu3vJFfiPu%V9Nf6(Fc@0t4tC8`J8U{u{8=r5v}WX$NF9{5E>WY zO8nV``7R8pYp`MJd&C~cmo;mm->PFd_y1?GPk=Jsi}^w8&_%nD#c5R~?0?Z&kJwrx zj9vTT<5``918@z?Iaa<@7-RQk>9@YFUEGAi+U59SO|r+a!5$w8aFr>z$1lssALsoe z1<`MDS{V}QKR`JHR{L>s8W21)Z!Vczd&5~!uSP(T`ehx63_!F6;X&(GOA^eS{V*6lI|+MFIN``DLvCgEZh`cexD9lw=># z0Fq}$A5WTR<_V#=e9=b>TBwImo)VsR!&1=D?Mtuhmg%?B9jWxRiX7(OaMI+SOA}y2l2wdDb zm2nJm9<)d`#$uLGJDNLtv(UIj8SK{bSA=lgtj&b|GfOcenWEOO-=Fq`00u|D#gQqP zykUH3GT#q;NZ?9*d*o@Ef4&~MINvd`eAM{ZziMDeB%Dv0NH_;K_T#7}4u*VEm4SQg zb*WK3r69YKqoE|55u-oL&_EjnOarK)T7n%l#25o~O!9R0r+c2$bLO$VBCL@Zc967j z76t|V1UCy!7NCyvGsZ<~a}>YnfP_0NQ>0Iypw6`R)j>HihE$FBZ8rZ+A z{Xk^5B^BZA$mUY#rA4qd?%^eNQ0BD;cU1x$lB`ZXEkFso(NoXUq(fXnh%X96ZyM0dOfFE;U^tE9S}Q z2~U*3!*N0OgFG+pNK!bV;P~oDfD2i5wiC1LlaekCwZ1Yya^B+*Yp1Q2CLHqU(B-?@ zQ87z#$k%tDc8Q~6#Ay-UgdjbBNa#OS98o-wbMICNSjD-pAp__54{5SV*ceGA6_o~g z^8E5@n3#O00%yE{aD0YZ)NmRUHoO4fO&H+eeh$W~6qQGrpef|;wJUiJCYTfKT4I6- z4LT;D9xs6V3wU3(M;#R(Qq1n_oDN6eU_92-^ZgzcXCM~~bc`^PON||~J&1UlBum~b zv@vUz6z@=@2szBY5l&+X!3z1_6&(9^Elow0c4@X!@@lY)O8XqoQL&N^xfI^(<{eYY zJh|Z&+v-a>FkO^H2BwQ_UN9WUN5zJdG8m)2)7z`}E&2J`F!a=$QHh_HuqI_RlhG|N zXGbq#aGPKVl9Q&aRa27w#fgjEtJ$BIhT0|Gmbyp^9%Mdueh7IeJcm7Iq~1;mU{U0R z(E!P`LN3C~D#lAoTdM=4w4@dCHzjd#0u)VvxEn6+k$CY}Sm42vhWbqfuutnWE*%0sJ#PzVBn$Sr8$pR}S3Fyp`_mIuj9}uqEkFkAsa3tSc5EJ%0{L_)pSifrHjuE;a0db zf!}pK>l6FeRUe1kFWMfV1V_Cxg_=GfSG^WzO7|-Xts*SD&UBsd>}p(syL7GgP`u$Z+VMp8ynCMzida1VYwa8gN>32Q0P5&=jV>m`c& zKTFRfE_SMQX}icKSYjVGJCTlC6W`|sW=D45ntow1jitDsviyrwTp}hj-+glA<`u6Z$s7*{_sfwBK&1YX(~97kIZUTF#BhLn2fnKaTgunIPvz# z&?C9Pxm20~U6Q(+V7Zf(&1vAmz#q51lU_^=beop4@y~w$+T~SES`sF=)KL!4l-U;_ zAJs^edA<3K8iDM}<*hqydVU^+J+*-Um6(|jIM>=m%7-s8s0d`_J?dNOEErtp(nYIl zE9TJn3HM_mOmW&eDV_m3`EZLrcr0Nhd{wr@l{dgE=ET1h1I|j4WpeuQ;jsg`pF+50 zspsl*c%hP>1xzgGp}ugmqt}?n{rRP^06XGqLrU+$49Q;=k|yT$eo{_BG|;H(sorGs z1dR2xelj42#8ZfbtYv3?j)Y{95n6NyF#*FuJfJyM0`O_|%X)NHMorZ$Lt_jOhiu4$ zE4QJK$b1G9U#oajip(g%-8!+6A(2c0P0MUgw0^v|UivHp_uOUDJSOx*Z(oUPDnIfaT!wrxCp3PC0h*8Ni zgvR_)*|R4>iJE=d$Vgb$($qRrWKzH~c#|puOH$KQhD7T;5XlS$dMI($QpbDiB?0^pm0BQURV*kLMh)|%oL%tC?k!q2Cb%}ZR{H?Fob$CpX zIUDhFK4OZAARKexJcu|gJssEm{A!uqt1$;lYIr0It&t#~KknDg_p1XzP9sK}3{Wo= zs-q*H_7;tjqzKx!{)movIEX;o3f_ia72N262iKa>lEX+X9VN*tV>Cz+w#&`&=lT`0 zE4^r5#ug42`y3g%Ra+g=p9hQ&yw18wB@DJmgIuW8csR!-A?qsU-Q4enJ*4fAfX_cL z8xE!~u7-A_U4E)))?u9#pCBZsQsM+*4`(RGM+!Q<1{JNYVdHesH#mnJ8_#9GOe6AB zCt!KyhfuvZWkWJAcE!YJVjvugOTg1+>|}q`c{}9GQ~Jw+??+!A^Xr8KWH=2Z9w^v z`Z<7Md2M)QFrHArW=(lbXklRmPe%$dWvhZK{_R#6sj*c`dOH@D4=dQT!LhtA5wji4 zMq#!uu0RoO;|V|#p;}`NsaQMF@rh-;el*)R2w!_6 zAw?p@gqt%QEOU^yk2hRIZQ|MT9R^!W;^ny+6gT(Y-H=RHo@GxvVj_iLh*{L3O{RO# z8Q-94+i#*4A>K?x58DQk?zv_B~x=bE9S9y!^&qatck z7k1N0N{O*@mVfI3xa(K2MY_)dfmnKIOA>qdm+f^p^za(K*o4n7WZWI0&u*4{U#dee zl`GAC8emVvB)N6*`PicjF?*|Kq#7dl7;NgxM>3IBI!%b|K+^04bek$0P7*1?Kaa~z#qd`u6 z-XSM8r#~eEVP7k`F=?2=6r=_(vKpCyH?TpO$-W0_kAx+5+4RHS_Y5U7HK1>w${&jI?6g4{wHPSEk_4 zetR}3js5(~B{Sk5VOyr7G%)-yF<6N<%Cn&&2B~Rc+ z=MxaFX%WohqneykI|K{mYyk?L$;u6^F>7CIX^0kLZrf;hVr2)}C!0X=S3Ivpq)-`W zCgn`0akYB@SUsnl z9M-`LT*eH(N>(vb8@C~j&;C*fIqm)E?#_sa&?Tf;w(ln!_IHr~bnG{8zN;y)&E{`7 z5D>I~J7xjwDywE}V)s|C&8^e{hwm%|qd&ez(xhd}+9kDMpwf+oHcuhpdxM}8)MITV zTnTq9{Qkyo7sql{FVpp4AMbTVKTQD|2!rb;CJj!?`!V}$^6~ISsMGd^p^-|Qj;{Sj zKb{lAAUJEW&mlkYOV3oODQ(O%ic}!_P6q1HW-GJKq6JO6Mrub+6&1XXceVSbn?7bV z>`*0@$zTi)+(bQBn#&;@gAmoNIf+&@C*fT9c}5gSd!sA9XLuBh7+$<4nKaHGU(Zeo z1zT)j6>H4$q`g=8hT6C>gM@H0o34fO@fgdIE&k~h4lAB?fq1#C1^aWP3cV{o#96pR z>qy{n7AiIxGTHvd=(vNSmd3YlnOwXUrSHC@P-LjOA) z5)WQnbXKGm9GNu~*;dLZrj$gf@RM$^>k;&PnXbe*14PDVe~AxcLFOPpU~Clc0cOZGtYL&9XUJO z+gKbzzPPR|;HJawWJX`e8!)=2U{}q^>2M(RUNBX4th#>R5fY4frs2oY*NAWKuW7wh7iC@w zwUU)zZ~v>yXtD@d`zWx%aTgs32}NjEEVdvoT$j;w!mIMY!8Hk8Ea{i%u4dARhl z;U3v3ak+N2Qi_PyCKlH$u4_l5Omarii+JVS?{BA*lg^QfCnCvCDbmx}Rf~7f`^XC3 zF4zka#gf!j3+=w`YMp*NTpbLyCyaFaY+Zlr5ge)>ZAv?17-^q4_~BFssyPwHT|$f; zQV?|F3VDf5$0ma(%5SWjg0Sx^Tk|j*FbEhW?pI(SuJ1$%#J#&V3`WG0&WvSN2u-ZAl6KL& z1&gr;ZGxAN+Duss4@<=6Lm|=*H!z&Ils$8QlC0&wfdE}-|CK;k+az|S_v`b)M%wH^ zl@znVrA?IOh7afQ%>g@A$o3wi)*6`J>1T zU)1Hj-R`enI0}B;hfzzkBSMAAY=U@)2l1bRTq-Hj88%bmHBuIUWA9VA4H3JZia|03 zJ_c6}T+5RNNcbZy5IW^enCOPLvwD`(wp=tuNROq4wjX)nnMA296jZN)v?b%nY$&|m zf_1D>z^(;2^(j?5&;@%X2_NGzZ5CgUDWuqw6~Vky@E$`e%KjjDFdXy z1p4#Aof}A@J!qy+v(}PgbFn6w#AKUJSH8{_6gv$mG}nolb&9IA!;)oUJM>5R8#HLl zk;{zR(`<@Ld@h?_As7omC}kzXcpw<|B>lydWka`>*y1c=W}i?|CYIjs9TLA0zd&J@ zbnUKx3OV9syrU2(xbMxTO0rg3s3ll=Qty=-8}hy%-Wivm)hN0(WV%WaZDTPA=ZdM^ z6DmIeQ#ky&lGMU0>-@`_kVfCVS(n^~UCJAvHDPr}@U5S3E410zxUuZ_hNy67l{>BL zP1yVr*WU1sBwN6&_jgZ4{vXzs(Y`S4SUj~GLDDPm=L@;IcR@cygnerj@e2i?-r3U!I()tz;P zas-Z|be!x#y4T^aE5kF?nBqbCoR`B4#Z+lpg(f^}>LxU_!*Uh{$Y+7l#ht^HuFH)KWy3uOoP`3t6}-g# zT$ztAeF|LL{k`8TpkkIyo%!Y%EYj!)8D#CFoPHIyaT>}6PL?ur%<7BX$c^AB%-Or5f#dNh~4Uook zT5u52w;Lg`-xZ_0Y1I3(c5;X6@|U};Mp|6Pdu+k2Bh%X-4y&@u9{DivYj#QUA=BSQ zwP{$=EyJHsam!7%)f^iA`5gi4omG3TU|gKlt1El$AALP&D?3LON~#6EiDA25^XhcY zD7r$7_KN${c}m4z@@?w)kP_E@M91JXdijEfo^b40B=kkSe09jDvD5r0hU)&+RM@&r z3q;6BB{4eMHA~wzQ9pl>*(i;k7B)SnlA+r2{@k&v&Iu-?4{r%2T|#*N+AXbWTI!2x z0O%Q>lIDzmHc#gRMI@Gm<(`KDNbjGR2*is;^MWSYM9Zyyi_9lpGWo)$@PsWiY_H z#PPh<>Hqq#2CBLKe5+-^FFYt<_6lsI3}Wi;>gH&#WpBr9?PhNO*VkT6bOYQV3kJwf zUx|stiBi6Bj71d`YSaR_TA7#cP>J1%#U>xy;eERvU!2B{?G@g^h&lKGZ4xrBPH^5= zk^thL_s7EbC?OXiBGB2jC|0VLQrhnA9+0Gp;MjB%6Bq}2tXNAB8o^+eP8Eo!HQ}&t z<4!ouf#{VZfl+pvsoqpA9C%X9$JUg6>wX%9I7+B5Otnxv##c3rxm%PWb?tCjW-h_Y z>;I)oaPnxm2dIY{sEgGo;opRFKy@jgaxNO^mA3t5~{gA8LMX2KD%S$U${7;=8oVm^|*Zdq(NLrnn z=_OgtL5p9mi#`q5beLJ)Mu>}$;dZc;Io3=tqA;kZlcY`s^J+1f=DIgtn^?|eb-ph= z_mOr{s}e|(-y7Q%;}F4aH#lc@2N8DK`j0cyHFu$z@`OF6H*iD_9OJG@&!W6*D5%R< zbZH2^t-gW%Gr4Z*l2_OR3N`@>$N7iwKa&4yY5&)#=EOHR1hHU9eCZv$+n->~hp@s3 zmj$6z06M_bQJ7hR6R#WJx@geqgKUV5SrcH z$H_rH&R5GPXbs8R5kxsg#^d&R$9b$~5sC?k;*RJjW9IgBv)gjIm0a3^+Y9Pw$N+yL zM`)(sZ6^wgZi@*m+0+?_s#?EW&UYM^{0A0rSE%tt{`t_+?x(0{+ zzP@&zqH+skpED{+GvMXQCuFV%ZJMx0!!RVL3Hmf&BW7#D1ulrQ8U;njA zi=PXNum#p+B7oW5f7Toh?)E0;F2JhHpX_c%Ys+Du2d8JJOgKSOuO%Xh1A?QuP*_7h zMv}bc9)t>~{ycA-m1Xl`1$uN@*XGN{fg?Q)&KkbVZ|HdB9n9 zxqy{iz28boCS&@-+_&sG*bj|ey#6(XU;NGaNmLh7NYC#ZCn{$?zs3IBqPq`s0u1NvkZhghGkK59R()kXj%%)0r(f?5y5~BoA)~44qPkB`?JHW zaX6LV45MsPHO3Ve!So{{r#yT+f)*yFlyl+|T3hxcx)<+`o+25!w;Sts>mG$C%p*`# z4VEz@xxWECZh9YLQCGiPOfH;$nsiY$oWzX85(VHR^vFn=P|w~8SElsss-@NT%6P0k z48q#>%tMW6dOOfM9bVb5`mGt{v%$Hl2|rq8Dx+^*Xe zb<07jq? z)^fKe#HY`|o|NjV?dDc7tWt1- z;kV1J^|#*a`z_a5Uhfl!!m&cbp}9LWZ&(%taB~llhvwcXhn89=o+{Z(OfEN&)3%Pm zJrG+kD}>3yrX>@dPP-179e9T5K#uWHjx=33Y+eFP{~(*aPUkZi77S!X;?0jb@)_VP z2tozvIZobzpU?(!1NucP8Pv^k&R~uqEaBpZcrK|);P_1PYE^go9bXEwItM3!-X$|? z;L6oAzKt|bBh9Q%ao+}Ma-0S;F!1zCmK8IB$@m2_jLg~g@Ykp!R+NZ3Zm1t_6$M_P zCP+0~)Tz9t-9uN6>g0LhK7LxQO25qxg(UE7qT&@Hjlw)f5_QyPw>QqKv;zguJI0td zY)zh4jP%V@_|mTIU>Kc7Ieu>?VtPXzB;?(}KEZJkBMFE$#5}=2;}{k*VCB)LWmekX z^3(|0mf(e+EH#>0IY%zl`;GD`y_b51%EvNaOb(q7(mj`F+gGS6WkN_EW0p_G^2NOK!| z{A|!jG&}^12%+E>O7N5s7L za$>3wYLzv4@E3!nu~?IQx=-Ta*wQfKMOhM_4+YucFp65@r*YFSq;>LY-9M9jqYF1u ztJFnEeOyn-9`?H0hwJ;@pL9~2N!ZC`Nt&zZ0xdjgO|;>#uZR$YCtl&~eqMK&T zDPrv`z{83il`-0HuZCMw` zf`?Boj!r))d#dn%#07k*Tf(nP^@6%+0RasfVfoH7pk#+*n{HMvJw;(=N_&d? z>1I1|RjzgfdFlrD$N8>pMJKTFRe^SeunHeR@bc>A$C@2m=pou~&aPJf>!Ws2%SFtK z$o}H2O8TXv^GVvcld`P9UQwU#wcp*Z@zqEuDiSZUYcKgaHP0@oMyLaTeTvyWS=AK$ zuYJh682^5dU)%p_d zdA`dRUF@!iduh%Tb5Ef6-(AVxxO+_>{h8kIx%_t6w)Mwe25#|7!SX>31~(5}zFBcT z*^U2$kQzIG!KuiGt#t~9)u}meH{Hk=y~$^`E@9q_2ao22F1aY2u=KxNUiJlr?b6Mi z@7R*Lx;2Y>1S6CWOU`^DC(*t0(<+63iK!8NAFOImO}Jtr@()1i8ubqrT+M-6St=wel~@3+S|LzbK1}Oo>?z^yM0MoTCdDh+ssc>=ImZ} zZcp{KH%*7C*Bsq8>5@@(WvTDmN2))n?#dmEe*by>lqVj+#iw6gYnQ8ga&hZxx$2t7 z%a+fpdv^2ry!wU3r>{+qt4qDTdi~y?*KS+itK6Rbd|kiYz0W7_)&92s`{wlF_^&dS zRcpRi+<%#WuIBgM?|;+lE$SaWTE9Q`*WZ5o|BFfu5AaU0%ZRpveoc~aud4VBg3Cvg5eSFHT%i1W&s!s*|9t^B=%wRUekbnAa` zDs!vqD=WU2GIY~Wwk#3q%opb;za-?-!3A^QMtMkWzv(C|11!-E;- z5o?2%PMivCp`HScxq-SJFwg)LV_=AO1`YUR2HNb$AVgC=mu1(c{}_7D!m6B zN9Km<2GR|T$ACsa+W6q6J-Wt@Htyg|ppuI~je;l|p94kUbx(4B5qKmTUHg~Yx5Zxr zwdb%fFbJS%uLp|2wI>!7U~~2Jo$T$`fUVH0KtH2eJ_8sK;F$xU5v936zhl#$*B~uq z1ho7#&?*@e%jW`z(!tsxK1VhLYbf-t7PIcwXJCj6Wo6(;F^Q80YEp4YWlk!1x)MDM z&<~V^>2F{>XpN#7?RZIabI|8W5#|^b!puRML_yb%KJkLku22fqjy4U0ZUXv51j2-% zGN=hC(-P?V(MOFD`kz)n^`nm=qZ@(V|3(;buO4e}9Nhr)jxNH0Z4Jl{=v^&@DaV?ip@P!!Lf4Pp9z^I*Y(vUosI9{QZ&qLq0_7?}hD2cY I2<`##0Q8_lhyVZp literal 0 HcmV?d00001 diff --git a/home-mixer/README.docx b/home-mixer/README.docx new file mode 100644 index 0000000000000000000000000000000000000000..db8ad8ff18b9b388bd7b246c85140c97d638a682 GIT binary patch literal 38326 zcmagFb9^1$*EbxqF&o>qoiu4<+t!I~G`4Nqww*M#8Z>EaKd0CA<9$ER`~EZeWY4TG z)|#_t?K%6%e*=d=2LS z+-$6yl4Ru8g^<5rykR6W3J`gUB4L#8*-_ci#o>t6WZZFStT3KQgFQV=@`S0($%jBO z#AT*EcoVGG^LKkSQ)r2bo$2Ugsuhrcmv|Ly<};j|avq4s5lbyg?&B{ELDjZqdVQYZ z0A<>*9pKSJ4ZaY`)eJ~de*%f7tcp=ZB^(ZhQRE+o46P}cWT63)M3C=NZ5%h@y7>7(83;!vtd{fQ`v_g!v~)+)D{taqoF9zT`8(4gnz72?aG0puF?<0t>>2g%p2 z;sfXPfP5oqx@2mtw

Rl%6<)7td$-l8Vn_0)4N`C7TC=;}0bHFX%G5AoBlJMR$sC zLXW`eZGnM+zyts4Iha^GGBW%*R>ejURuL;))fGFIDHP~UojfnL z^^q)I>+Vtz(^1FlBRIO)H!@wyD8OBzEw&C+Gt^iN$Xo7H-=@B5?9khQNrvt8Cw5cb z3(~MokGLa66f&WB;4oDs5}@5e8`7d~IG+=)77^20e8@U@#E_{~(8a-rE2 zv*HaiHmAjL@!tsw{SL2W0ldxUfC)kYCde3IB<}#Qb7V9EIGFso$+O}oWCxg##UH%H z7i3h!ZjfQbrD#A;!oNzQ`>(X!v$4xqPh@jUZSNP_Xy($o5Nz{~+}H_hayGSq8wJM) z6NbcH_#21AYhb*u8)9y}WQ)^qS0x4YU-UlDUsIUz7>)NvDByg8tIYy-F#$*>N@*Tw zSn{BO^t3L-{7MCEpu?^;gbPl!rrh4~mKHP4dNabhQ*HaR(KWNL556Ws(C;rp`ih5{ zCRDXhEO=)wPmrIGKv{(p(iB}=Rathz&m0}>w`W|ybt*o!gnU9w{+u^=R$3_(kO#A& z<+24BEUFt>SlHX3cO>@{bTV#btwnolp5UTPG4RRU%tIV;W`C5}p&?#Ho$XY*`p5`5Fh&#=Pg_ z{S=D9{hjeHjJJXJrE&aaS=bc1QPx}qW8x`)RNj6QuBj$`}wwg*Toy z5GmD{sfAugoyGR33ymEZTF@N5dvZju#Ruo1KI}VBq`EIaJ8|VRm5;D<> zA6x#5i{>8TgE`I{GQ*V(^U=LhHq6qA-XRH*=>RTejnro(;@^Ng>?opN~5~-Q0wP zSdtvlqL2ji^ltU=kd4Zu%j8jqq2ZaJdon-H4!ja+R56I?g<*e09+KleI9N^0>FcW_ zLb8uQnrVJ!ZyJ%t0B6r~fC_B;@oUG)jperIYZW$j;6PWtgMAsd&IYd~LQW3o6m7>{WP;MijHI-7uMG{za8&+0mB%7+kb7)=JlJ2X&IUtuaVNlhip>9Lths z5f6N}6kfsGA&*U?H2hWyY@;v3QjSA2J&&K3{_-mY!jnlXf9V3rsU2VP_ zB4Wv9Khe-WTBpweJpUI769U5ym_eJWB5abq#E?hfrr%=}F5WINh_;-fP@H}b;ebm* zIQ+LnGBwSjX+`e|6ozyOD>h7FIXg`Bt9h_ju(eE0mZHgECrjc{yEGZBwM?+W@1+(t z6eBN+^9htc_a~oNtGp&1<4WpEiQzbdd|Q?!(8^P+4Iz*=#bw zm8L#%6a|dP70NNe%WxY)Ut^LTGldDH1(-aAhfJ0pma|krQ<#TOUKJ=oZu|h#X@ysG z6m~TJI?gnlgu}=CFb(^DH-=k2M6%06j+To6tr2*U* z)Y=<*J8e^i7Jkl$f5ug=iAlwW1kY{$A+$yRL*HOMJE2AQ$ig=pAw;y%RIr;ERq7Ks zp=q<2lKVUg`+Z#4+^@MT9gZt%m|^V!@9vK%bQ;LHI1*+G{h;gp&cLrm3wzcr1dmoG zj(BJ64;kj`;v$Vp@FI=GAA|Cg%z?a}iG{N2rr*6PD({3_)?p9ryJfT+KCQrur_# zX&~ro3#I#KIY33Q_;QpY$3==PL^1TV0C;LBxXgIBP}Bwo5{b)n#M z+!9C0U%+q3Y*RTRJ7Pj=6|qWbwZFsofS*NC4t1_CobKii%1EkM+oX2MvLKg~Wrq8l zB9q|sIu8_dg^~?|owK-%r>wBrb|m?Sy`7E}VIS2P6Lbpp*ehGKJzyiZ?@$F+N8eHi z-Dy_=J*jqM@hq9$KUt?tT}2AyK6WYq$J|&*xIIFtqPt#KfDkd|;EO zct!-&DLkm5xro*_tapv#Qsu9!{$G7U+~oZvO*V1NWh`)co&0CrTXO2OI7%?Tj|yE( zad)>^ZgVx&AR0=8(qm3HcT*#KEGFe{x|1;QNE8R*Ot;IY(in~XX#LtYug=QT9$tnA z;Pt6_s3@<8ah5ImrlnCqOF!W!ARZG=64QPi#h2J6@1YaAwjSO--sGRUL%ze2NR3_W zj!MONq#+A2Da00C|7qpttWEVUM@dp0wrBP;*8*OBTVVm3VATV2GR61D0T%5l<^&qDD2$If;5!tU6>csf69GYxWE}6ztl5bz2e88uj5*#(HMJ+AIt6bq>WCPqltA$-5g5 zgK?=$NtalMTyisYqs(Z()={bMj;fPpjh(;8G7 z8H~2(ssD8RYXaPvYz6tCm|M|nz#vCMF{n02j2iJh>(!ic2`vP$mC`!mWqm3WbDx3H z!F1OnLOcgeZcAJBW0xwVX~u2uYQsp-wRRH!SRbh z)WPE&=BvT^3I&oDU~Auh@B{WI@$(jBVB>4QieEL`{o?nMoZ+tB%e}=_!EBw|6D_s1 zO}uP`ne47|fb1o)@5Aa%Ljvo^5BD^g_rR(f`-`8qw@WN=sY3*tCsb1Gpl=kkIFYXOVWkG>|#yu#JBkq_3xku~Mn3bkQWM-?7RD8+xT=hOt#5SxonH3-SccJk;TxtgkO zz3!^C+7aALckJ7dZBPy9M}eqYS=84dWhd9)yEvM?do;%LeS_A8Gi_YN6D>aQf0faW zLe+y%eaHkKV13lL7~eNtG6E5E?Ga58Whtu7RN4iKU{yb&HWqCW7 zIOrh@>*NUyCb%yUS%SC6jjwK{FroJ4l)wKn71f`J(gxFUtyJ|;f8!h1+U;Bo1ouYpJ7?uqRRP-P4m_p!fRICN>CUWZD)a z-UZLVvn#vqf>nlf{`c%GmU+yXo-aAE5TS~qit5+$_o-fX^GY7w^;Ixtr#BcJlh0?b~^V;PMFI{VC?- z>1FvMx?b)z)?ub z!S2NRX-mc1#OZaT`-U}Vi6CKRUvHP(cka;0`j1_Y94=CM@>0774N_ z;YkXgvn7_xSUpPP0cM8@Ib%OM>Hx z`ni|G_wC4;#SkT&uJTh@z`U|g{tjtU4ppnz0VN!PJaDLw zR#2f90Q~Qe?rqTW^M}skq~r>;fUWGhvk4duO>sNf+4fr}ADtj!a?OnE+=gbXB1?Zr z%SggX72=}p-N3KfZSQJyBMnQ#*OcX>1AE6x%)-*=7?jJlmt}(+Wopa8G_%LRk4~NH zrJ0wr`DeQa`?nFP`y0Wt3xP}pi6))Jh0B4%o10(f1CE(&w83q7MQTwW1BY(q1erHf zDuM8;vj>mlzL$i{av3ct5tb0Mp;olvwdLYmLMU;dVgv?-EZx0t9lckixDgv4>Ly

rKQFXj?1bwNplR2XR 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

hEU z3wht7lYKOW*{{1qp)1s-!rs|?Hj+35f9WF~gcUCH7%*l%od=7^`dhf_9Yj&c#uC(l zNQVg6X1IYeNTM>1!k@tE%Adl`8FYf&VE4mIGiE^F5SulTP5fJ2l<*&M*g=;fS5~8A zhCAH9YYCYL2pWAri6H+RpzDDLsAeBfI!TwefX3YJ9mt}yG5le8rWoSRUR`viYYBlD zEym=Orgk6D8`Z^2FxL;eMhYF@b0}Z(oKh7*n zBxa{9HK=gryXR@XKLXJLOuVg{q5t+;fm$nX@jg z-@H3`uR0Jfc_~vr9c_3w3w@_#qAKN=yQ_`$;ae=|$GHrRrd_u$vE0bE>%wfFZt1)4 z?1fu_zYe`X*(U8Si9!jz$Xgl8cp;q*C)vc-d$D0(;Lf4>3K|3N68qd_%X3rlC?eNo z56j$x$ka2W&t}JkVkw-K)0>+sL9;j@@?5MO180>$!c%RnmRN4@+5f6(9`FO~2A-n( z$g^KgYH|j|?%QNdgapxHh!NIAhNt6I;}*${RgZ8y&yA8e^^W~+k^kBs9$J8~Nm)xS z$>B2SA!pXi5$Uw93-0(U1QcXbYbgQdkGXsgWp!})IeU{A73HXPtixq5-U^P?ZK|I> zzu_oPsl%SqKy1UFoM&MMU*&(J-XUME6fu};0^**UwohcUp33skFIz9gdz-8_oetHu zq-PZY6q1uQ;FACryQ~GV8|{hq2929Y@ptp=A(o@?K1VmVLe*w&q$xrv-I3&B$u-asw9FDVErb#`H6x? z5tPzy3E80;NGti_vN$R7jc8p2=gnI$rrfE``HfZA8(Y7Cp!gr6?wJ~ws*LH^aa=F0 z6NGMH4*Z@V_sdT0NEU)w1pS4D5k@LPf^V^E2r!mpwVkwA&v#Y!?}MJ2X6ZVkE?!@I zcN2Rx{%5IXay))3VzE}WjJ~c3N(%iWe|FGiI;X`fJ=bsEmp0z>rlHvijnq~fgI$hG zkP4J_{=&CX*5)w5sJNe#bB%|SWfVz_9)e_>?6~?Vpuck*TuLrzhC>Vv#sizE7!kb-0>o&I_*w-uYmZ}V}c&sW*5nG*l@D#>1nW4JZ?B&SCRd<(s!DK|m_ zpI=r{PQ3}KQ!K|q~lmM~v7&dFks3K=clw9B|vhv=kTUbpJ ztG$!(^C2`p#uIY!?Zz0|Dt0bQPWKjIJaHNKs6-^EELh+cue1hBz6@z`Mfo?Y^Rt38 z>69!h>9%FolxxjK$jQDXWY4wen)RLNTItRg>Hs(&e8$Hn2lR9Xx9!*5k^sW~!fakU zDqL{o%lYLOnY3$<{a58n)~211Z1B4~Fq+3aoD4XhVp+j){M1{X!FaCN z{3Ey;_te>i`APNEy4w>{P?=DT_A!ZY%({YbO!^eiA2Ell} zz4K8j?%d)M#CVmaf6O})^6v73^C=xJ1`^H3l;c{s81w%ZaMU22PfEgE+0GY8K?EfT zj92U$*SAhjoy+bgVL3>_NDk9grJ@FAAxJ^*uI)tX8qR6ps1m%-F}J)PV=mBjUD=M= z$!)>L0N`hom&<1A5Ps>-vhena2hh*RBAidPdf!Y@03lGC3@{}|om={SjF(;^HwaLt zt&TL0zc6l-&6Ao?z+lN>(^z$rJebSumr`czVmrdkQ-Wnkflm{OgK<`Il_e6 zJ~Rz21jfP>Gm|4ji@|QmIz{!)+7N%tQ%0OujJ{fZw2ZiL6?@BEIEt?8VCV(3fqAd|WHvO1)p{wG=Rd}Z83Ta3#UB3EukdeL-6*RmH zG(0SUzUUpUzAJ`)`{jDPi9-mGzAMaWB|G37|3L&1yA3zbTj*%cqDkFedutp? zE0M($bi_WX3}hstDjwbrZ-XN3Z~7y)f6$j0nepvF0?i-pwgNgLKsyeH*#2iYHTcN> z8kE=U4dW2rA6udegv}Al@k^~ujo?X%TMO#<=m{JkPx8x$%tz3+9 znlDv5!rzKLE>nx9vz*rU432CX|bM;Zh? zn&B(-7=wD5*QaQ)WI!V2pDy#DJW6CrezcorUCu^&oPukgB=j8^O4QJE4ufN-*xLsF zYPQLHCqpO_CX?$lMEih|4P>}{4M7DXue;`Y#^_WK(y?fXwu4-5g9Po2Ev#XeR3y^g zh)#CjE81F#$4-U)M7JEr!deOjjfRcc+Ycc@PEgE>bOT1Ke*qw;kdUq{ke<}!ieTPFz!eOZM{n_y-#G+fN5 z3UvYaS~&@!N&$RcCXMCGH!6fBSxk-xgk3y!GPDj&%2r0IYe1{7x>?iH-Q!@Jeux>G zp#EYn+0fS4VOX9R$6;csW67%YA0B_5^I|aruo=sQ+SIc!rbe0l7GJ5h)^WGzV$ax1OYo$Jxz8=$jBu7blouyvE!_v zKKRI;^-7E0%;e-#@d|3{i2hENe^?(8D>mpW!;C&eE=Ew_C8 zZ8+Ml@~kVBorJ+FdZYfiQ<$xe#aK1@^f@`rPn(K%!r5i|6OUn$ZleLQXKncxa@AsH z+MBLkgp~yOW(>0<^)#X1sI;e4v<<`O)|1tvEV#44@<`Tj9~>43O&p{@=r02F4NZWB z1Ry1!x(j$Ju~>;%J0mTP;yzi|PqeETnp{^_t`KF8jPH2&hb0j=uz<>v%#1_qko;#w z!36ER?t{|apsIkGZT>1;S;<>zeIC65itEArf{gYbj2;>q;7}B*#R=@Q>KaTBncN+$ zP(a3nB*>egNJm+oQ`NAfu-f`#F$w{U2)*DRH51de`FdFbxn)+*OKEIJ-X~=$YZ;1C zA$eh}(w*mSPSj}?8xcrf%uoCr;6_`PS@L;>C5kvSy|^?e%E!>k=G{`V+qwNKIShDV z6s}F8!5auBxgvQ;q{5H^aOpyjjF%LdSq?xEG|JfSpk{)QH>#&WaO6<}KjcBT4gzyU z7;{D7vv8lGFu<&=kyc6)nbby?5iuM%mAk_NbHRimb#enR;+%K27lA(oNV|Y;eym!8 z#rW!yQ<4Yfb;>OqtSc0Z*^KspK(jJEm{E6HJc&v9FBR}ef2#=Yy}_5QP*AP5bgl|G zlH*3uPHPEA#CUgJ;kzOhd8I-Byb|AUvBirxSU7?T#u2IDcS_^h#F|3cua0M0G;jMiw>!1sP6id3txX%cXkS+POrFw_g-=!y4mO(Ezf zg0h-|g@5@#m+)uBZ*VPO^3=wTLdS7a?<57c62#Y;3EaSl6B&~jWmEJ61d$aAN#@BG z<~FO8@&n^gN}h@TcA$?$Ii2{{gzd;0J|_vx#E@2r{7YDu2LVH6DEilX;o>+jFG4b6 zND(+^63C`3kuzXi%;r4M!N(*HG32%j77IQ@qy!uSAKjjRigON0*^z$=XQAEG@)h9+ z(tq#U*LM$?=Vk{1ajby?!TIlf`)U?W=HjNNCPq$wZ{hdWNhy%1KYMw?XgV2^%T5L% z9-Hu3Pb3Sae7&bIH(h2B1Za(mEh%0{nWMNEoWw8Q|J2S?!2R>2I=A==N`DVf2(VqpO0P-v!kc0lAt+b^Kkwh zfRvHqnjx2?iZtP>$GJY@I<3#e_1d$1c4*MHPCk4Xad#21`Bv7Jf}m%`7!h*w;S3ch zb^T!JZLxnJ%~3Pq>~KAA`cl6_>1!)U*|Xx~?)k=HapPR4=dI0ObMISh^OR!hn=lzzL{XUQ)HJdTV`mu%Oj|5?kYmQn;UUvE;nj zwYW-`&P@rq@Okarvc@9JN#OnJ@ya0n^Ue2Tc~hsJkKdM{|Da@O{l+JSfE#c9y`CSR zmw<*v1aUzysD=XRa9_tsbkUG!L)7V%&cRP#FK>w|J#gU z5f+Q@Q|-DLB6P*b;#)`N-KO4{N)Kc9_BQYIRM}JY?av#-w2Uaz%svYkDG>T-zh zFC%)*6;m7<8{6A*B_)A`$&3|*sxdJWcP}ryPyKiEC-zSt*~zEA7s)Zp`yaT3haY7_ zAyexfzFxWCp!qKd3Iqv~YkuWtYS-%)4!k-(R~+3^c0|^R;sPp8>G6@!r3n$=KN>c7 z+X}{|`RTEKReN(*HgS+Q9x~x#0Y=CzM@TKr#1^9E7N%26vtSi?m4;mIGeSre8*EyY zvU4_tqA$!iVfJ5E5po}WTmlKZb2fW}fkVeTz#(kl5bOP&pr<ie0A zwL2Thy3FkRv<^MY^`WD)y}Mrw2aue_C+Sa@_x3Zc^P&M6@3q^uiuYPZ6ZSCH;*2$N z5u283fG9&Q9~q6U&Fz+o5lzp6__wP6L)cqD#j$PO!ng$w?(XguB)B#11b6pf!QI{6 z-QC^Y3GPnt00HuvoOAEH=lueZhoobkF4Ay~g{+i#EEpx%;^-ban_;x?meP zAAYOzS8eJ{eH!eI^-S)IQnDRZs*Oj4o9>TDh_vGitu`RT_spWirp4WHjSHic$KF-53L)1&UQ2*b>@TEiY-2wJIMW zzgM*$oL(_Hy+}Lp!|iX%yez@gW%#N6Xctiv`Y|rzHbcRvHDcQ`uhv^?UeYeYonHNu!|+c@A1yyTW{>jd>GH{)!V&>n_z24_z28SKm%#@I znPYuFKStn63b>AYZMtx|JYVv(dj3ALoIACAV6PnB z3!N{see>4|LltyWyHQwH6#@KitAO*~83IAX!q)164&W1$(bnWWZd3VdbhuH)TPs87 z&izgFx0BJM#pm&-{nfh{^V&&m2mFxRK&948u8b*9l+>4d<5tgC?$++FfrbK=OXFW2 zw(t8#qsQgat>?aN?)yy5e@#eczqGqQw9fVtd7A$*oy^<1{`r!0Y<;ptw0&r z>+)aufgI8)^jr7)U62Q08ExLscRleZ+sW2s};ZBVqlQaj)<5U*34%& zO@xC|F)F!VhzFrh@=I-4mZGo1U{!;{EQsj7sY+3$+-SE>TD z{Ib2u*KEOPviG$`?fuS+w*Z&j3jzM4ob;F1J)TTAUAf+_y?DO2+7Se2hgHv~mzQW! z{`3Q{Tg}(`y|KEN1_2!oJee|vmzLEZoQ!z%Hb}M)3v8)TD%V|d!>-${ULH>^>sbb| zh4%fzHc4@{d=xgh1Y)U``$v=9N2;rpS<|;un2nGx6dz9Y8|1j#oM!X24;4~gpt;7s{?<(al;9}OYgpF&mb*r?Nqw7D+H{UK_ z-~VGC@3#2s*qc;mLHk}(R#$=})|6rQ?bPyDHxD|mZA4e>K3KG~g<3Z)zHHaXYa4CE zp?>?iPn%BK&mw@0CD)Ud4iYbi*k(++&GU@pY_7r&havw`zg(N?vg(0;<)ZN| z-b?J8ziz0s=U!3vOR_06l<^0y1FK(gh7veGpkIut!WK)lqc$Qw&^@ss-gY;lT|6bC zEK1XTz8=r15n8-qN$rB;i1sExonvjM{^T*CHoYah%I##+$&b}{``x&U(X?Kl3--ym zF1O!3I@9Fa*e6qGxjB0Il^aB5U%)8t=`tmTn|S8E58jVlPVnq-T<2%6JmOsT zEhOhmS)>}A9T|Z>DIKhC{)Q3Sy$Z^GSNe`h$S@)Ns`ir_?L6Gm_~V;SRZg}$*NWJa z$Ey{+?xgwz2ZuZn$>ZKMV~We`gSO(qXGhJE`>U_uGUOMDag~S4A_Y4Pj`#vuh%Iea z=M7871tevFb?+WT~NsJKHjI!fzo)@|<2;#CzDlH2Lz0JXlYVa(ZR?mozMzO}vV@bw92 z&!kJfn4@6IgtyV+RF`M5VU%&96nbn+u=>sLx@IFGe3S9y1QmAoMhV|fL00z?lkjV+ zGaI+voBem+6V@&pm(eDHDJ!K!HN@amJIDLNJ*$zn8^vLK*N$XBov@Bu=~<*J;kdM` zl9yKNL#Bi>=Op<<(-(ZmTH%HZcd}}vFWO+=s-M(g9Nd&ygub-|aDmuoipROHBW%kO zz&~g@RNM}q-|SJp-KYE_4-@Wh{1B5LXHFx4ynemgyCd)r%+l85eGz%1kkjvJFK_wW z$-9v;F5h>4a_iAb@Z`~|a}O5JJ^qY5khaXifB42kQXfLZBX)m`6`OCkfaJuMwkK$} z{`zeHb98v)$8Za7{LjzGANSm4B1V~+p(xU%Nr_=XBtH>R?E9qLfg=YQ8zYMhH4tDc zIT*?O@`d+^$E(4=eA=UAtN$cE zC_ES)R=ovw-ke@neJyunqy`(rnjNWF5=upmU%i5x3|b)HI8AWj((Nd5DttIc8S~59V<`Wi5o?bIIWc$ z_H~F4z|BNE%VZXg|J8EtrqLOLQQk3AS=^6d^gOEP;ND&rby_+GA=;q!^F~$!x6fMo zz(cXz_giJUQsDWSiqp5tx%(%ERjcfer@EWDx4mZDiB4v3@u$swUJ`IuX`5a2CL${v z-&<*(g)= zbZN~e48^Nn2kx9Fao1Phi%()3%)Uq_7ZoFkUW|FLrBl?FZHa*iSv^W$;VxGnTYKJDVjn*?fchgCQ_$joMEd!Ph%FGWliWDjn7kRM1A0UZbycEq%QGYYi zKkxcs>@~4g>Rr<8K{KrJkY!r5Q1cA7{o&C$4a4VUXz0~%{ApVjENdc4wW$XW@7mkC z3ko>W3|`btp2EjSPU#N}UH$&SnNA}<4tDVRJJK*o!Ge3Yi9I4hw-sZhr>6DSUl70_ z6C#et#PzXphwDF`uX;KbFMg=8r&oUMbnoJ> zMwo%@NZ1tAr=;)RZ;q2j?4fbFxZY-TJI|a^h3q+kyn=pd4DRj+OW~XO1WGp`ztu7u z4GWI-*0g^4LsDKFx*^HOPMal*f$nO@t#t*X)$``4c=1+fTk`jp7<@v+!&MFUb1LF? zd;Q_Wo;7`BuNAA`eMHBE5a?S6YpasIRX_DFqmoq<_b!82NmHvkZ!h6Zb2Qw4qr({W z7y3#I!)aI-D4rwIpqSMWIXbA`cGw2droudDOHLtM(5dwmS@P>MY) zz`dMYaQwDR>#>&KeTi_S#WdH>^h1lo&USlKURV{k5v?73yo7umSFgqzzOVCyy*di` zh&x>kjU=_B=)TTcCoGut^f?)S_@6~2J9?b!>9qpR>)alkb{^-OGX6wZvg6O98=X5= zgqH~GxDF#0`AG&}^{^WQJiy_bB86HwUk?|(&;m&*s$Cq#cQ(~|fZQS}w>OPgqh01Y zu?IJu_zZtQE$0A!ucwdp{4@b*beFVqW?b}l`g#Z>YFID)k(y*@`$y`}qU8>rh<-^n z{TmC$uV|N%h5drtn-LJ}=~f)`fHuxcyIooE2OB$Q`CmtyuDw?LKmY&P0ocNCv%ju8 zu(xnxAc6aO?0snAT!mA}bh0H`&PI~T<6M@_^S+ej%X-!sWze7_p{@Vm*o5>G>Jow5 zs8K<>mbWHCv#%2rYHf&UJzeMalq;g6CZ(nv*b|$;o>07;lq=up8Y||`Q2S|EXTB66 z`DoLe+?yTU%2(gf+nQxt%!VrYbCJC*kzlvqdr;x6#r5&Vt=&z!Dbs@^czfNiCHWTY zd!0E`V)JwsFG6&BbM*4bWqBpJ`?AmmZSGPdvP}@NjhG?zkncCy6-pOZ5Ev~G;tTg{ zqY6NEzKj}zE}e(Q-e|!fWfpO1nK2~+i+(?)e)acuY=+4Ht!=SoGk+i(2I}J(>4QRCTt=9+tOy!0|2`%GJ`bqhYw5fG~^g zIN%f6Ls0WlL9=R)7C$z1MdCR9*a zvudgw-&v&s*~j4Kq|S`9^vr08mS1H0#3;BU*d!*`$e!FE#07QwM+hI^)|8A`7K9-i9v;>X&eVPdii zSM_Cv@yGZcZegCcr1@(?97g4%nfVu6oU~wR^DODsNY1lY25XO>HJYz!h?~EDB@cRY ztPz^PBF_ya!+y!QPz^sHJ$9n|^gBUkCYu|tfIP&}A7dVoHfd_R299nuM*Q_oOiff6wYh%hVD z0NVTv!X8!I%Gh${B*6uM2?S>0vm?#{ld4b0WDkg-jlhU=Fbs`!n29h18o4M6$%sx+ zTwYKDn(@;~8$1jH0aaL<)*~`W&6kfg#bsa2LwYjmTr?qvT*??oL}qr;#1?fX^a5az zNkH&x?CDRGLqK|F;Nh9?*}{Z5jWC@?2`>O4{}~b)^j{&*R!o5*ozMS-YhJ+ zh8PNfc?|CypRkKvGCpjU_=Q@pRp3^N?Arp`JLo?T@)-gKWhEEZZW?QYR`nuH1&0Kg zHP>-crlqAw^mJvJ}8m;gllZU5D;Q8UN+E6?0k>GvM=>xmMAc(Gp$zU=vYt7 z904#qEP>pXDC(?%%>G&_y)Y>1FC#hN4^`xua3~;HX}-iISv<3JQG7c-$F$;qJqV5w^nn}(g3|E)==bgS z$?ioVe4|DDH9Xj#JiRul)far5wB}JS=fK0((ZJT#!q(X#F%}#s4O4QveWmNmL-<2C zl@u2pl}ROGIO6;zVu5<3nIv=`H&L0sHM#YP=yh28ux>a4y;o+1M)O4Yb7W!WXyxHR zw$8(z)8TaWOK&;nTsa|heQ!sBLm^bR&S=JjYPFHPLAhET<-x|dW`H-+?=F-^>;fZmHUPzD@8kvE>urpB+{B*IHsJxVKbMD@c z%Y_bMreY+e9%AAc96%64+RhWfh^ZY>NpER87eQ5L_n-YGYc&m^`tlq+^_QsJj5elWdP_dC$Oz(>0PNml!%^3))Hj*1VOKyazCe-mJ z)#-joF!PKx*H1O~%4H7fLZ`twk~Z%@v+etLl(uEUp&hcc1UlE%{Hy25Gf~&qVV2LI zb$%C~B6oPjcf4I2@xy$2fMPFO&ne*eM((IccwdT@@Khi-n6>`(H4bCv9*8$^mYj_m z$;d)a$2!T#HZ;@xIkwN!S;qAh=vqp8XKMP@^V-kn%4#?3z9xNd1>^9}x45}ZV;uoe zP+iy8)p0YpM}U8Ci;@2gEhkl}tnO%r@;5|uf0hFta{hn`c!gAY2r|I}ma zjV(>ugm897rg?mSYkZwAv6+0oyR-j+`>DSUfm%+@;;Z76%eGLTKiNG|>$Qh4zlJmw zXx|5rGL1?F@Jf`BBO=dVdrO|wJ_-Kq2WlCl64IC%80+XCF(sEIK-D4{yzoJk@eSMs zrs6iei+}NE6#S-HIy+BY_@G_XZ7$oy^wzpGzR;Tkie=WIv*Y;M2z(HlOvAS<5HzYB zL0SBdWp*d>sx1N9NuBTx*!wIa#;@8tgIIdeQm~(y>M@IuCx}v3TVI?(6fX)b z6p{A_<8KkCg2HU?B7m&^cM*{TBK6XpI)4dZ&VikUr|lpxS<7cRMV>qlq<*L6!r+bX zqfAML*GY;nJAr2p%rQRo2o@2ifkKLfnslX@xln%v@_COB#YUW_AGll~7E#Fjs2GxhySM-Gc~qf=8fglsi`_biWIEBG&Olo)d}jjuQ1CrvwN~>Ei=J8 zCpEROzjHtP7_v||B7UioNv37kSaYr4{4vK}>!DuhCEI@Y`Z~TVkbZ$wZ)7iNYo5yV zd)20KBr5_iJa;R15;&pDfBul#-+OAm7?xdvU^0M9FRZWVP#aXsi62~HYKODwkM6Nr zrl5?bd$T4ie90{+2oEMns7X}r_FTQ)j891IalX9h{`+k+a`LN4;oD|@BPLE z=WQXo5146Ub|0L%9orlS*`qOo z>olS2L`D|?+{!<+9#S)kqN~Yo_5~IxY<@QCS}JfL_}S z=YZa*W{RGc0QBI%iZB5);a$ZI4GaEXD%?N=OmwV5`X!ZL-fmvxT@?S;p_Fq3)bZx{ zFCA~A>vb$7{|gD{JdF(R!TV?VBt@NXf2{bJ@@~b0;=dpsN`O{;{9mjX(%%mp+=n^} zu8Y61@Fa5^8^2z~8CVFA#8b=$_SlJd7wFzOjVHnhe$aZ&t@%Q9^#9!a43iscw2 zzB&?f2KW(duEVoGGV8r|*0e7|rXax#Q@DCUt%7**(T&pn*Dgq$;y9WU*4soXqVb^& z3@fsUM4d}mJ)W?G-&mYQ0bZbBf9Q;&uNYlxE_y=U8EWK8j8K8EL_VbYE0%M;F;3z_ zL&|BPKVojsbz24dswXe~VgnOAvLzSMLY#X4?G3!~lxYY%vZch0Y`7!7aGl0@oF&YuLfAEZ7NZq7 zwJH>-q5VpAc#e@Rv1okR(Usfim)HdU%~ip4IJcr6ycWs;K{ArizRFMnl32qb5=;~* z21S!*DJ1c8t)HsPmkJbImUl%BAmxPlHcjgJiX(7JolY~vOH5tewM7qV#e-=WL7)Z* z&;gpLmRvLg+zIHrL`#Ad#H9er>(OTH#vewb>{4e!6+0qkZc{k9Bs!`yV^!ho2EtIl z;E@=5_l66T7?#RXOa^7ih&%&0K~j3Mi(@w7?2|~~12~8vk4zp>eTNk7TR+d-J~wo*CryyE)m&jrm?su$J4 zT$-%3KRG&paZrh_dJ}a1x)jjKU-k*XAHjzl; zr}MZ~S5eOwlb}lb{5XEZpZjU>bKV*8mg`x~GjHJ3HG)-XIpQ1=8XwUbm^`py>G9r^ zy#{48Zf0c`N?`q5-MTz#EDUPQF4D&Wrfi!G!?QMDhYIBdOw=eX=8-4lwKrk z73CDeoG>xPK{u?RdhVYP^}aN~D}i&FdS>J&Idtl}T7Mc7#(Zin%=b*K`&@<5PZ3gE zc|tO=K#7@3Nl9YxpQr_}|3oE13?e67sG&$fQ2yHj?HZs3u^%wrEtqT%i+>`zTM6GT zaYspTS5p|wSZEKUfim7yQLd%@S(Vo&I{Ou!{14wf$amz8_OKgAc;#7%GA`V}{E*im zXiL9UL3DQhI3AUXDUsyjFtpTTLG=3M*?rq|D1ZA=l4CU>W#C-!gru=6kaB#U_$(M3ErFQGXq-cqRd2i0KE>azCXjw#JAkU;OOH6KB8*FcU4A^z zPDIn51py_(B@~cWq@g`#c}YFN8=G)Kwjf$apj?Qg?9XBINGMY#ooiEeF!p^guA~0I z#+b~nvEpOaWyBATY|Rt6`3&Z)$M+3w8S@5j(2f_~2c5F2ozDRx? z=Y(~l&H1Q+6wRhxyuI5~Q1*{<@cKZ7^T>ey+b{&R@Pd6OBC47n$unG00~JO#bYtv@cC>>w?S}DC z5o5q$i+^m}_YuKAKKVeRMtySYl_bZrVPRn0xw`!ZW?lRACuZ#EM()HuA}lm2z-?{> zIM5)czFP+~j2WS&nQ2qTQFvDx1P4?~rVLaHkmm=FvEzxQ-;{tgMU#`-)HJxqB*T;7 zO3vk6XATYkF91^FcAcY(Cgv6C-3P~z;Cfg%BTBSu8ExqZ=%4-x+jVB?h2}xJW2dZc zPeofH*ykIdbh;-8)s-v>nW&}Q0cMDtY$u|b9BU`?JvqisBrQ44ZU6yBiYo((XvZlp zEIbx9>f<0YFV?^*8BC0rQSmBKb^FD_Jb@Na{p8D@x+w%6&T&dpD?v z0$Xa(CLi)waAAYJ95Tea*NbO15hmdFudpPg!Wyw?f5P&l?v?&Xq@(fjWtK=#L^u0V=1?a1 zizQGIGA+40oW@G90iGrsRDvtB#N8q<;G=l08fu}@|JP?;*FH0xI$<;!em&m+L%9ue zMcClf?-aiNvk7NyQ#P;qR`bKe|uPx4WC8Z{yceNc1{&OyMQ6rKrK zSEMx-ajHGw1bfY=Wp7b4)^;0|%!gFS-#DO5EtaJ-Zwyb{i%p&FtdexcG*Yp?It}3{ z|Ck#`Vio=5eKZR3$%oSajHaE=)E!59?E-n)p; zKa;Zh&|;ybnZj1UsRCVKriX;^ZrV3O_(7IK_*0m>7xs{%1YdR(2e7Z92MCe9bJ+YI z{XwsTsSr0}UWxI`OZaw?woO9>8f2;t{bzd&e{CTOM3>ElFqxuw_hdAhPLaI%Jo+PW ziN1hdL(emZJp!Y=t*=~L@fjxnFlyZh5da1f_$v@!XwuX*w2}5_VB28c0m3#M@2h;O z3AHa=j0;b5#32Gc*~D*p5UpuYLQDpxf#eb(;g8_ENGbI$lN#^bYCwxa1c=`Bc*Ib= zK?-LGKY!@A8)DENaA*hqUxnh$Waw2oOvvZ^D9pj-^Zv>A)-#2V!dSuaW_{WvpN2k1 zK7v1D?;_F1mjiEuNQHU3z3`Puk@jT(={qiEasP?Ov5ofbh0HM3E>aHKcVfJOUM4&{ zplAOfh1B=4ALcK|1YdH?uc0Z^2A>jKj{!tlU|ZJT+>%T z!2-fBy)X{w(eFdJ?r&ZMDupQe@4dloIsGo@8XDIQ*c-b@MTS5*@^G)nh==uYa<1w& zoV!Rp?7K)N6O2H>mKCoj^TxG$f5em3_I~pNu71}T?hQZ&v0T!=nOc++Hb%RTYeu@U zf4_I2Mw9Ma?KDD>Nn#6m+!T*)V=6rR1w~QZox4>@Yb<1s84*hWDFqasC4PMv^EAP) zs|Hu?xfso)E8~&7YJ5>^vw9>rP*60i?}{HR5O$az929Z{{rDk^eN{mFOLS{`m@Kfw zG`b(}6gO*z1o*pSzBpN6`5E7$KcFEg>%_qRxhR=^UJFFbtsH&wy)+y zJ8WyLF<}5l$=qAq;?$fG?sq8&-t!X*kcj^V%Ir1Ujh0r0;F^4ONZZ&MNQZjS1B(1o z+=@U4M4J=rGjB2_LeD&mJI&w(unHLixF+q=(w)=Xq>_7p#Ndlt8F{ar&Lg3XX~8lM zy|^c1&!(Zz)uBGZ+oiRiu{HZba!r20k>HwqfG;SS_f&@#=){*H|3JNF%CGD6wM%Nl zaH?pFW6F@>>S$iaUMXfoSvM6Da2>Z0*q~7ipxU1_kXiSDOF&y(66eF-5?;1cwJ8UYKDNd#Lg0L*w%+^n{v|V9!&j zI|wkcb{)?jq|^{<9J7Y!;LI$GrjvH1My%8qHigA$-RW#Aq z(=h{4`+&M0EakYqz)wn&aQ9sfl}g8CBp1?D|Crh|MBd%ES@MH0x@9 z`ULPIEw&yFaWDXXP*BjJo$Bye!5DE&a;Gngnv$e)oQm>2BqcB;_ert?s$3ouO}VLS zJM3p}Uk9)Q5qMh@8p^#|)~_o+5LhjVg}7TYI8?Z);m!3sxe09)xXr;Gx>O2a<{mJ4UGoc`Yi+ zFA4y$S=W7xt>!AK5XgglhwsV<1xy8j-`+f1L=OrOCWN?S{k3@^q2H}IAiE>w+%Dxa zi*{f^0$$^POOTAgMvBQRD%Q%7=9E;xMCRD#+T-|!;L=s0gis-~;P?V>!T>k7GcfK& zC|nA7^?^4p?Fln50qkIxqN4<;(2+T`IKG@;!MiJ5t0{O8Be!2>G}-+6VlW<_Zg()) z{WzGQBLxv1Dy7p1CFkNJEhhalHD9{~~L>uy&*j&DC z%*n}sp`~08kNdQMF(#>&@X_>qdgvSmyB-EFA%5IkDKY+UP8_W64L;mdlnybLl=!L z5@Oo6r*RXdP;BYq z@=L;CfS|uHRN+Qe`s?*YOh|?u`TZ7VTtaM<;yhD`*mcbB*fjED=f=Fc{e(Puv=Q^2 z&oT4-7?+^jkbho_#%TM>;M|eB0aMTj-UTM3=3ls@=(r0@20TrDM{Y`-40E!zOd(@sS(*sOYPKK;F&~zkrK7CG@sFcSV9IC&VsNeV z@M-z$YD9W!W%)E+T_g~Pq~DbztG1iKcoH2~yKlX3!T3=D%Gzb`m zM)EY(I0^L)wy!AgXbwL|2v3;A*XIq-m_G84Q|s11Lc}napwt{E5eH6#*DJv@#n(Ti ziZ;yxk&KX``{Slf)g1?+FiNjuVbqPj?B>#i7fA3yU}&@;)73H3De{c^U(m5!_1BQ4 zJ0sWLy75iiPgx#ydXq<@bNp70nkA)9nTa0Xc&Gk1BkQ z#!gP=Hl}~pSv9I|IDF?q>)I;TYuPb@ZL*iyqdp<4*_5TQ0zM=Fr0yGt^&Mv%e6HLU z=~~!ml1a+NIr`1hRCkx-z_1)+27*ftLZSgb9HZYXhzK<;4ae>5ajJJ$j2&PkEFm$Js^*ig|t*;{Us8%E_JXmm6sDZ zPCr}FkmD#Sb=MTrXEEBLL;gF-#g}ezWnif<2A|JjMPWr?Zf*%jQyd|2qm(1&^;!_I zu1Q>CGYXamBfzlMwxl}_SPRTTcDg${R}OXU0YDV0RA~+=S2f!DiD{%}D8tJiS7Bp$ zNbzn3zK7B1N(YQcdw*IYyx89lKIAO*Dcg@7Gl{uORoSxihe%-jQ+Y4N@Nzh99n0I5 zsMMK?|29X~WD$NX-gnYoHbCD#SscWulRX?PqrZly2V7`X+{xk%8cSr{`Kb{UC+E&h zzhrv0X=e*U92tM0QTV<^nses~PoGlrFM>t^?lc5f%UYt2nFM%M8(u($SZ=m$>6I&J z3*$D{=vkltp8W?b0M@vj_9x_qn=qWl0B1)N+C0wAEr4)#!mdS&_q_^QIZ5J(WJLOS;k;qy&%F((rXH*mXN`dHS+x-i@5KoCsUrU6@lmqWyYShut&mToLaa%tl_%oUFDPFwV^z87BwY{aKc8N%L9H;qOzm$}d7!`{fw zn82E=)F2A;(>|NC}N;j|o6nR|>BTYA4b8DZ%s221h^WSRhYk+yc_s zJ$^-2^=H(%pXHJyJ-%KIwWNl6AM9=d=PA5z!5N>A4)W;375u|xcBG98AAqSP#*n&` zTX24Gu^7Ri5GthPBV4o4CD&??;;fE64#bAfbGO;@7U(~hR~~B~D1iV=P&EPn-YZ1^ zDM9ts*g)w&PWZ@~UWZOW`U@r2y znTjh)s*iQ79u#-U?NUe_g?@5uHo9p&kNz0?NC8ZtWBAy18phZ=_2!MxDB(_mD~OMv z-nv22zJqRQT9svQmkQl@A z?P$&V2J)Yd{o>AXGz69u{sjjDg8DDVOn?=%mGup*{?rxTNb0ru&V)Dg<69V2a)y*u zd?OkP%}`LoI3lhG$Va>yjJ4Pc!PdE7Q@mEuOcynh?RVBO?iaKZWT1X9*iOO{;Kba& zr=JXd-@W2%Hh-n7qY$B?Y5CEEV@KBq&RpQR&rA5+IUZz49r=VT?)Pyk73E;PiBWUj zgsMd~sWr2l;)AD0h4Z@87xW0&{xS-KzDO*%(Hf3qhkX`00g7v5BJ~J%{F#u`)NqiN zI!9c$kZ>4boES9{39KES&aFf;mMFh+=E%h{Yxj^f^4QNaWjEfa;qVWtC1+~W%@ zW*muJkrGQ2)~7HWOAM|J&XV_#7o}BEg&G#dnUEdZDGwS|Uz~p$Ck281Wq`_=s{5Y3AXoS=s zvl*-JY}kh&I0Le590~gy0{K%jb30cag}I8*Sz%D~TlA#r2xJ+)mF&pMLNdiqe+sb-&`@KoG{7Fi~6*arI zkYJ3HwLcENg-$uYBzIAq6}!t;iIsi3{;!J42|^?-L%?G0?KB`D=>Iw-oy?4_jT!%J zng3Kc)0DMczX@1fs1X#E0RFMi2kD!6lq+uxCWF1@VhU>Rrp_>Mt#D)i9WDFcK}()jdrIa46c; zi7oWO#N8s``{S)B#sp|Lv60e<{?Kttq=go(>vV3&zc8+HgTF6r%)+d}z@rs9Ux0x) zz7fO{c5PeG;WfgpHTGx5OVFkvsd0HEJ}Es;6n98ttppcXkG|r&GYJOwfk8MBQ+`+F zeyNvY7MCQAMH8XRlbN~i7szA~LY7irJXvwYx>b3;zaLLGH!n+LgS^tIUcOM7Yp2|q zX(|+@eL}nUDxZ^-i~$>DgN$<;k963Oh)*m^lB?f5al$#HNYe}|%95L>;XK1t`6&BI zc%G_8)--?3I?W6RJI#b&_V#agDg34R-OHNy}Np5%m4c}m{PO_0V-H>9mFHVpZ6H#Twabw zw}Bj|jyx9}bC=AipV0AG7?Q#7KA^n!Qij-9)CX}6-!6O9Kr5t$*{y`S@vJUXVmK+N z<-i@sAY5@Sw_*jPIRQ&@P4?v)taXJ9cE#7OTfV}ECcr&j@DPV#z2J;QHqn|SA1*33 z8baRD2`QK41w4ZNx0Qan0ze#$uO|oGzLpr;m1^QReI-6B3uBBySgQVb>Dx?hfnC3B zL$$C`+h@fVSduhMo1Rb~om$lyQppi(s`byJF2xf|c*BA4Ma(2ppMv8!qETSeW#|Iif3c2FZ-V|(^RpqZvV-b-pPy~XM%WT3 zhSRRUe^cXT2?w2Ce~xwJKEAluJybYRm>MP7c>)ps)QepBJY^7eQshBb2Ff6 zbY?T8X?G$)UUSX_XCnL91YYQTs=&jOG7hfc{MKXSTRP36!gzHEmgM!rw#0GgvjiCC z6dZuIdsD<|H6r9d&Z9TyX4Y;@ti0~a1^#!2;<}8r%R6h%a{Li-c1lASEgb+BL>X5D z{aApsar*~ttDmVI^C`*+svvbK)ZieWU#|p&f0Yh#CsXcDTS@P$$eeF8>#1|-@2~_k z4Nh$Swpo^1bj^YJuwoT26FBkxvj!DYifPCL3U-OXrm{_)53em?wXJ-|5sZVqVtHw& z<#%@{>eALhsk~CIS6uM6`>YC$J+hVny|vu#M7Df^yG*kRE~MyXH^Ct|m39vQz8f5C zIuUJt7f&_PanuAavaX6x1qG&7{Tu-jVqv7FM&-h$MflGjBo^{R$9eTnNhBzi+&{Oh zDl!8|XhRx79DN%CaswAJkL&bH(6&U>94C&r> z{c1OSXf68&M##nkXcm=pw1e}w5CahYygd}WMGia*6oSsELN-$}71wZXafKw71IMHp z9Yx#IX2w{6Pz?YxwJSw9t_*>F9kIh|@cURc=ofCKmgGUv$c7`%cxX=Ez3Q!sk0p=t z%uofzrGHULpS3|ASlt4bZsZWKxcXnZ_{RV%~r!;KjbS*GH zM~2$&lp}61D>F8w%2j_r1zY`WM_e8=-4s&zu}xZHvnx*t9Ghhm|MyQvYj33T79oo0 z*^;8NM4w~3J9~~((-m){ghFQ*amj1}UwPu;}rluCGFq__H31y}^Io3-|79sc-jmOdklG!5;j zhFrn-DYa~2y@%K<64S_Us_1)}_GUq^;p@m3*P+KlaeZhD2A-5u36NxN)^N{6XHyr+2<#f5o zizjdpV53(tLqj=BK?b8-&YK&Q(b3J$MmoY%#lvq7$=&KtK1{;p1eVVbt=QGE-8J5+{W9bxCHtXFl8rgCRjr862C`1i_=L^rk&8q#-%FV%$--sPy zXJmJJk9?cV9&B~RW6+PcNhFW|HA;(_2@bUc&dG!Vv%7zfIc%J*4U8Rtvoi15-K6@4 z%`O*K=T@;`teAFVXgnJPTSK0p>X%3{(#Bg53apyb>=96 z@yL(fTikD+fEUQemn;9cO~g<%M~+K>t>P_Vx;qh38@gp6a`oE2 zm_3F3E+mCI0h^lq?D^1=YK=m#z0zVXGpS0CnYd)?#F@kG=kQ#S5b3Z9VpalMY6BM9 zX^fB(KW=GGF7DH%1X)Nroe>ovPYpA72pFc4kkO=3EB(Z1wUGkt4-|zE$zUQ+%&-pSa4zr%09jax@CJ8OKC2orG)}B7;AltR9U!3~v zy?HvR?sP!^$3||q+V0W$+QqZBhJ@NhgAvXK8%vw#v`Fl6C8$S^5OS~n7Q)t<@TYrY9b&YSi!N#q%DxIO1>c38Q=Kw&`FfRAtthWd z$UF}4b|by~Wj?%{nCr+gDHsSIBzP^DbUO;`jJ!fFQ*1ODTy;V7wJV1y}};>$l) z+Ftn_V6)^)Ssv9x+9;?c=d61KeQ>WNKf3FPu_K8J_tqa#qm!Vk^DkBfCi?5=J02a~ zp`hGUv-@p5uaBEuz9`hy?wDGKcI1F8GoQ+YZC$YnTKh1y91uu^Bm^P?tXROt-5bjk z5P1Ri>0$5Ue#q4mjhVaX=83Qn)UC#9%3XWK|A(R=XJfT$eW9YkLDs`AgZEPo7b=py zqE06pBQj;|{okaW%OQS+e2P92%q$Z$_s#Y)?ZG229M?a|$qy6U^?bkUlEx816x-6f z;X-cH2qLPJK0NTPE_-Fzr%M|<=~3{a0M*pJyc5f<%*%!jIQsEvUAqT`A8l|3Y%_E{ME`$qr9j)@3=28~qGuiu& zNtSvAtb!03j=)x_N-<&uWRb=HQVNSNrrWk#A(}Y5V3@nl0pI#6rN5*mV;PyMWTCEc z?x1&Oe8ZeiU}D9-yo>2hWRo#hcw6fqLU{a?f0nb7xI^nKAJ^$=YI8{ZUn=~uWKHOT zZ&7{_ivzrLST;@Dv8HM6v4vD#OmNtxa#MyAP4D<_*Z4#e4!h{UmLw~SF6z)s$z}Wz zMCA*mAvcHBK06z9Dl&b}olDX4xjJJwNeB!5K+Id_Uggo)3qN8|Mp%Wd?LrkQ2oUa~<8IJIo)^ZpSK{g6B}--5*r*J{n@h{*lLdNzGrMZ4lb8EeLFd z8W)7Vp_fA_;U%57)Dn9WaY|SvIk;vrkw-OMFwsDnxJJ`eO%VKxlGq`dF?-4?kK}hl zvQs|B&b-)~H|^5^F}pcvZj9#{qds|(l)0zs5N2Pli8rTyBfL5FP4etW|LS_H;Vp^R ze$3I2A=ga(o~$opzJ%6s=GFf5G6JvHkk?!y5~o~&OFAz_4VC7TlMAQqu3AcKi0sns zjZE^jES=gx>N*$TEE_>dO_$FPv1)YHbzL8L=SX#@x~?x}9^xC6_CQpGGjKyM=f-q7 z5fxdp6S}lj;Oo60U0WiykZ{wV+$%;-3xdv4AS~f6%7e-crtZ7kGMxT*s#(oR)O!ay zN^VM2XOWuJZ$xV0YhM&yn0fD3R0V8&m4CTN{{m7x;_rSs^R2sT6m2I%qq-b7KmLCM z%p0NExcb7Z;)A{8Gi`DSlMk}+bq2wMq(Q%VF>}cSMM<;SBs#Lna+)sFB6}0qr&v|T zxio*#wFkA3Y#exX#obIGw3t0vXDV0a6^)1eY@Cs5EdD@@F&+c$Ubq`%i1L*m(Ue)y zZwpV~oqx^6cv%i8X71Gh|;_uJMC{ zp7;RUX-(EERDQzxuqeTnieEBerNa#w`sI`_wGf!dYqPx_OPwV@i0qbxT%=g~!fA9eLvAyl)9y zl4=sYGbOPrzH+%(a@`(%>GmQrq%E;mU68(uN1@3}VKgAu&ZUEGiqnA>O=wqqy#qyi zoq$RuR$OhGNa0SK8(@2tW0(eaJghb`qvuT`;u ze#UcS(qDpxB^s<3R>&!|Q)WKxGkwt#p|l>#tOPdr!~F-jp%Vj>xncP}?S1LCq3EF! za_w5*(4W-63b#p8f-ZICB{hVh_l@4(g!&||9rW;Xz{vFV&S1vy=Wm!Wt+3HC@-v&S z-xBng1%4{^J5qF=ZQim+Nk>QpS&1|qHoHk&{NU}^6em1wQxcWXWu2U4Kkz6J`#F(& zt$8MyBwzWaFSZs)r< zw>>e{VpbdVOpRDr1=+r*$GITyGc+%iUbsh01w7O?Am{cy?D%=$fHnxk`WTQ5Mtk_8 z%mY2qJ~rRIGq6CQjFJ8q;87}&M~3~Rfh&&XIUw<$kH6vCgTa_6n3)UkNDlxCYyl^M zmS5i<$Lro3nP@QnacD?n7Qo%vArSs8co@*~3%B?5-0rRE>eq!DxgZb~b#Uhyz(j0R z4gd+iYrxpI!#!|fJ5_vfeJ9?vB37!M+4<&!nIF?fVEimZ!l3*Qhope)2;>J&%--;+;99($W#Cd~$ z;Gi-LSOHv!*i_KP{!rLbmH_kMtnnt_6Y_%x=a9h?;P`t}qAgh^Yk_0OO|7h`-?g?zl3*2ZsI{r`IQqw|Yze%;JlG%H$m``y2VX~PHr literal 0 HcmV?d00001 diff --git a/home-mixer/README.md b/home-mixer/README.md deleted file mode 100644 index 20861d7a0..000000000 --- a/home-mixer/README.md +++ /dev/null @@ -1,101 +0,0 @@ -Home Mixer -========== - -Home Mixer is the main service used to construct and serve Twitter's Home Timelines. It currently -powers: -- For you - best Tweets from people you follow + recommended out-of-network content -- Following - reverse chronological Tweets from people you follow -- Lists - reverse chronological Tweets from List members - -Home Mixer is built on Product Mixer, our custom Scala framework that facilitates building -feeds of content. - -## Overview - -The For You recommendation algorithm in Home Mixer involves the following stages: - -- Candidate Generation - fetch Tweets from various Candidate Sources. For example: - - Earlybird Search Index - - User Tweet Entity Graph - - Cr Mixer - - Follow Recommendations Service -- Feature Hydration - - Fetch the ~6000 features needed for ranking -- Scoring and Ranking using ML model -- Filters and Heuristics. For example: - - Author Diversity - - Content Balance (In network vs Out of Network) - - Feedback fatigue - - Deduplication / previously seen Tweets removal - - Visibility Filtering (blocked, muted authors/tweets, NSFW settings) -- Mixing - integrate Tweets with non-Tweet content - - Ads - - Who-to-follow modules - - Prompts -- Product Features and Serving - - Conversation Modules for replies - - Social Context - - Timeline Navigation - - Edited Tweets - - Feedback options - - Pagination and cursoring - - Observability and logging - - Client instructions and content marshalling - -## Pipeline Structure - -### General - -Product Mixer services like Home Mixer are structured around Pipelines that split the execution -into transparent and structured steps. - -Requests first go to Product Pipelines, which are used to select which Mixer Pipeline or -Recommendation Pipeline to run for a given request. Each Mixer or Recommendation -Pipeline may run multiple Candidate Pipelines to fetch candidates to include in the response. - -Mixer Pipelines combine the results of multiple heterogeneous Candidate Pipelines together -(e.g. ads, tweets, users) while Recommendation Pipelines are used to score (via Scoring Pipelines) -and rank the results of homogenous Candidate Pipelines so that the top ranked ones can be returned. -These pipelines also marshall candidates into a domain object and then into a transport object -to return to the caller. - -Candidate Pipelines fetch candidates from underlying Candidate Sources and perform some basic -operations on the Candidates, such as filtering out unwanted candidates, applying decorations, -and hydrating features. - -The sections below describe the high level pipeline structure (non-exhaustive) for the main Home -Timeline tabs powered by Home Mixer. - -### For You - -- ForYouProductPipelineConfig - - ForYouScoredTweetsMixerPipelineConfig (main orchestration layer - mixes Tweets with ads and users) - - ForYouScoredTweetsCandidatePipelineConfig (fetch Tweets) - - ScoredTweetsRecommendationPipelineConfig (main Tweet recommendation layer) - - Fetch Tweet Candidates - - ScoredTweetsInNetworkCandidatePipelineConfig - - ScoredTweetsTweetMixerCandidatePipelineConfig - - ScoredTweetsUtegCandidatePipelineConfig - - ScoredTweetsFrsCandidatePipelineConfig - - Feature Hydration and Scoring - - ScoredTweetsScoringPipelineConfig - - ForYouConversationServiceCandidatePipelineConfig (backup reverse chron pipeline in case Scored Tweets fails) - - ForYouAdsCandidatePipelineConfig (fetch ads) - - ForYouWhoToFollowCandidatePipelineConfig (fetch users to recommend) - -### Following - -- FollowingProductPipelineConfig - - FollowingMixerPipelineConfig - - FollowingEarlybirdCandidatePipelineConfig (fetch tweets from Search Index) - - ConversationServiceCandidatePipelineConfig (fetch ancestors for conversation modules) - - FollowingAdsCandidatePipelineConfig (fetch ads) - - FollowingWhoToFollowCandidatePipelineConfig (fetch users to recommend) - -### Lists - -- ListTweetsProductPipelineConfig - - ListTweetsMixerPipelineConfig - - ListTweetsTimelineServiceCandidatePipelineConfig (fetch tweets from timeline service) - - ConversationServiceCandidatePipelineConfig (fetch ancestors for conversation modules) - - ListTweetsAdsCandidatePipelineConfig (fetch ads) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/BUILD.bazel deleted file mode 100644 index 103e079da..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/BUILD.bazel +++ /dev/null @@ -1,51 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/com/google/inject:guice", - "3rdparty/jvm/javax/inject:javax.inject", - "3rdparty/jvm/net/codingwell:scala-guice", - "3rdparty/jvm/org/slf4j:slf4j-api", - "finagle/finagle-core/src/main", - "finagle/finagle-http/src/main/scala", - "finagle/finagle-thriftmux/src/main/scala", - "finatra-internal/mtls-http/src/main/scala", - "finatra-internal/mtls-thriftmux/src/main/scala", - "finatra/http-core/src/main/java/com/twitter/finatra/http", - "finatra/inject/inject-app/src/main/java/com/twitter/inject/annotations", - "finatra/inject/inject-app/src/main/scala", - "finatra/inject/inject-core/src/main/scala", - "finatra/inject/inject-server/src/main/scala", - "finatra/inject/inject-utils/src/main/scala", - "home-mixer/server/src/main/resources", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/controller", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/federated", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/module", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/param", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/module", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/controllers", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/module", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/module/stringcenter", - "product-mixer/core/src/main/thrift/com/twitter/product_mixer/core:thrift-scala", - "src/thrift/com/twitter/timelines/render:thrift-scala", - "strato/config/columns/auth-context:auth-context-strato-client", - "strato/config/columns/gizmoduck:gizmoduck-strato-client", - "strato/src/main/scala/com/twitter/strato/fed", - "strato/src/main/scala/com/twitter/strato/fed/server", - "stringcenter/client", - "stringcenter/client/src/main/java", - "stringcenter/client/src/main/scala/com/twitter/stringcenter/client", - "thrift-web-forms/src/main/scala/com/twitter/thriftwebforms/view", - "timelines/src/main/scala/com/twitter/timelines/config", - "timelines/src/main/scala/com/twitter/timelines/features/app", - "twitter-server-internal", - "twitter-server/server/src/main/scala", - "util/util-app/src/main/scala", - "util/util-core:scala", - "util/util-slf4j-api/src/main/scala", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..3fd6910eee217304e7b278a1c992fcd44dfc12f9 GIT binary patch literal 37273 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%0AfN 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 z

_GS+AU`m;z2_&#jq{$xi3i70*mFgj(4f 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 MemcachedClient} -import com.twitter.home_mixer.param.HomeMixerInjectionNames.StaleTweetsCache -import com.twitter.product_mixer.core.functional_component.candidate_source.CandidateSource -import com.twitter.product_mixer.core.model.common.identifier.CandidateSourceIdentifier -import com.twitter.stitch.Stitch -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class StaleTweetsCacheCandidateSource @Inject() ( - @Named(StaleTweetsCache) staleTweetsCache: MemcachedClient) - extends CandidateSource[Seq[Long], Long] { - - override val identifier: CandidateSourceIdentifier = CandidateSourceIdentifier("StaleTweetsCache") - - private val StaleTweetsCacheKeyPrefix = "v1_" - - override def apply(request: Seq[Long]): Stitch[Seq[Long]] = { - val keys = request.map(StaleTweetsCacheKeyPrefix + _) - - Stitch.callFuture(staleTweetsCache.get(keys).map { tweets => - tweets.map { - case (k, _) => k.replaceFirst(StaleTweetsCacheKeyPrefix, "").toLong - }.toSeq - }) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/BUILD.bazel deleted file mode 100644 index 4df69c9f9..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/BUILD.bazel +++ /dev/null @@ -1,28 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "finagle/finagle-core/src/main", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/param", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/decorator/urt", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/candidate", - "product-mixer/core/src/main/java/com/twitter/product_mixer/core/product/guice/scope", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/decorator/urt/builder", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/marshaller/response/urt", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "src/scala/com/twitter/suggests/controller_data", - "src/thrift/com/twitter/suggests/controller_data:controller_data-scala", - "src/thrift/com/twitter/timelinescorer/common/scoredtweetcandidate:thrift-scala", - "src/thrift/com/twitter/timelineservice/server/suggests/logging:thrift-scala", - "stringcenter/client", - "stringcenter/client/src/main/java", - "timelines/src/main/scala/com/twitter/timelines/injection/scribe", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..bf689fc1853f7d0327ed5cb203597e67ca7067fc GIT binary patch literal 37080 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ⅅ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 w6 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 st} - -object HomeConversationServiceCandidateDecorator { - - private val ConversationModuleNamespace = EntryNamespace("home-conversation") - - def apply( - homeFeedbackActionInfoBuilder: HomeFeedbackActionInfoBuilder - ): Some[UrtMultipleModulesDecorator[PipelineQuery, TweetCandidate, Long]] = { - val suggestType = st.SuggestType.RankedOrganicTweet - val component = InjectionScribeUtil.scribeComponent(suggestType).get - val clientEventInfoBuilder = ClientEventInfoBuilder(component) - val tweetItemBuilder = TweetCandidateUrtItemBuilder( - clientEventInfoBuilder = clientEventInfoBuilder, - timelinesScoreInfoBuilder = Some(HomeTimelinesScoreInfoBuilder), - feedbackActionInfoBuilder = Some(homeFeedbackActionInfoBuilder) - ) - - val moduleBuilder = TimelineModuleBuilder( - entryNamespace = ConversationModuleNamespace, - clientEventInfoBuilder = clientEventInfoBuilder, - displayTypeBuilder = StaticModuleDisplayTypeBuilder(VerticalConversation), - metadataBuilder = Some(HomeConversationModuleMetadataBuilder()) - ) - - Some( - UrtMultipleModulesDecorator( - urtItemCandidateDecorator = UrtItemCandidateDecorator(tweetItemBuilder), - moduleBuilder = moduleBuilder, - groupByKey = (_, _, candidateFeatures) => - candidateFeatures.getOrElse(ConversationModuleFocalTweetIdFeature, None) - )) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/HomeQueryTypePredicates.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/HomeQueryTypePredicates.docx new file mode 100644 index 0000000000000000000000000000000000000000..bfe68da00b2011797665a570e3b48d7238c1aa9f GIT binary patch literal 36992 zcmagEWmsIvwm*!!dvJGmcL)S`cMIA`aA-WZ2MF%&?(QCfy9G#aclmc_=A1Kg?!E8( zrFp1Y>nCgNUAuaBDa%1ZVS#~x!GUdm<m6HwaVH zlHv1inj4&Tx2B)p2qWZ7JV!S$N&5jThNd!B6N6+Z1Wr|G3_7eje}*TwgThf=^>Bn{ zm*L~yn6lf;gr7V4gM`0S*2@wzwPvPmIzn3j@7HkSa}DXw#tjJrF12ox4E4@d8cubq zy@e1j38bT`Co}j0lg8c=Tj>*g*ME0MR~Snv{IC>ecsDnzU_YVZ zKZ5$1OGBhqwOuSWd6a{X=gsL*g538eCs=QpPg2phL()iyHb8X1`~CvuY2O5T1@9gy zpz2QMxwB}`bu}>0Or9~BPVXg&r~th?-sH*q5wW=ZouqK@^J4M(p2*l8dEOJ2f+3jl zKf35iEhl;p>fQzf7#JexuaUEboeK-|@6XDF$q$fhX#QuyQX^Ew4ow=81jNIijnjDw?z5@)n@TI$>T*$R13`l*P4X z;IuuqD}U50zhM3uB%!2c=s|f6GueSLz-!eYSUl6R`+lE^l44TJYs%7fBS^*1ahmv; zwKnBUw=s6f7jAS$kNfPO1q%C&sAdhi%x6FaLI)Md9AKvG3~+Q|F#|YT{JzLD6UG($ zS<$5Ke5B?SG{djZ;G|^f!4D%o$Y2F5wcc`aDcFr?aZhgU7TD|NFt`zK3JhO43a|4t zHba_)B!rNJ#-9b4M4t5G=a8_0-1CVi|$uI0C9LCMM6D#X>$=V zSO$7YE_itIfQkH+A=KxYfLUw{vw~uTR3VkUz)~wX;Msp8SA+y!|p;>q41es?yfJa z+0wtrVik*JK*_erd}r*M%==mI_xAqv-4Y?gJFLI#Orh4CBZ-Ya=p5W zdj#r>9TXTC+TZ(P;^_ECThzxLR$0+Ho*1AEK1Eo=imBiw1TKipNUY=6BxE$tjgfzd zhiYZp0s20KVe@@vxd|7j7kFwIds-B;gl$m#sDVBHkT;_2w2shN9WlJWI(b0u0#ycG zimf?_Zs24zJytmn!vy~+RZF>Q%$vO4bmD>-*3m_YVfxbwis(jzcTu~dqtCZz3sI?K zx7z!G^CacQrH!vDtV$8(kT2CA%RNh`g}C1D-W=*ACn2LqLzuj9K#hBrThlIwN#iPz z60jL}o=<#)vO)CzbW>;k3q8lmUJqArmO}K1n9=ca7U_Nf;Rmi+!ImiS+l{nidFCnY zDj04=!%;n{T3xAD*k$xdT(`E^a1I|A!qk#C*Gma$viUh1KQCwnEDyCoU7~txdhZiZa@)A-TJmT`l(|%?R<`+?G!sRw} zO5dp&VX4~jn(_}j%oSupRYNqC$wW`4Bm@j*bf;Pe2NH|A28w#o*x6k8=x$WoA;4Df zJpc{#7h54b<@av7J0y1>@n6uGFYMV4wjNxC5D(p9c!4eT@Wd%6@OCewQRBn`Eq0qJ zNy3v_o0I~f8MqqWc1rOn1FNzkg-Y)`JJMO6S%}Z!(;uz~-sW$PN&b0Zq)6VaML~jr z<)i$0!@2{U%~?Qqt*brg;q?2;7);p&ta76bZ$4?Ed40tsjW?%p;b3wOD0Ia!Ht6K_ zrAG)#R>UBPFqa*R;W_r(R7vn-w1(huNWe|(py7{OE}r1G3vvd7p9Wwdbes-m*d zMs<>M6dXr1bx7vPwNQbrbJpJw+fCNhbg7MzJ`3cVN=Gk_B{>T;CQy$%uplWpP7Hk5 zWsX-T{gx_gpc*NWxr^XyP%1H}K37M#JHecx=|{y8+4&)|WS&>wsf7z2Lb5)Ag=Rc- zpF79CUO%@vz%IGNUd?b98lM+J&IF-o!PC0}pFgs2BnY+RqQ+%jXv2PX(}sW8lBoq5 zxWY*9De+ok%ClzrK4ZXUkQ?qTwv}>O(C2En(2}F|!J$=Xu};;Nt0{dYq{YzMgzTQU z(k+&oWbzn>gSn(nL^)Lww>2(Jkq^UUC|n?Z1FU>jy$Er!?9r;g;EIau>Z7#hu>uwG zt+6A1h0jea5pA0OEFm2Gz1vg;^a*ZVu#6tam`X48 zqVCi?)%$*2BT^=}WISsG80s@&MR67|=Hehd9KaR~XI_tNIrRmVvL57EZ6U*{q)oDp z(CD#VrRG4D!Y|BFuz#-3z8%usbn9|RmmKF$p4{77hTgCZk6Q~Sm!53!$fhVk-i zf~A+j^N}eFb?SLdux!W2bWc*^bJh;dJY1*NW!;4kkFIw_?MFmJ9=AR^oXgc<-2K=U zpJjQVwRDGrXiT+Z{Kht6mHu6gFxg?uN-Xor-9-yVTUnNCYKMV}FM~U9k@GCt&u^)o zz~?QBb7~N^`kMW=&(UMyZSUhxCIyOsHm?BahD||P4G5#D(>mtdNr>dgwL@5ymcM? z2{70}Yx+27O(z7c>3`h1f9^>BegprxJNY7}6vT@6`Ro;;FC-DG$RYCGaUOL$y>xY< zPl)tN!mY&Krrx?aqr^_Y?j5&pHjVx4X_KnqKbCB|&k8nUmV2j}-?Wz9>8+)V5L$)FDtd<~oSBVpl~M{FGKp_*}=M z3!x)9lkn9fG&}2)S3CK|WL3*$XNB#S$al1amGREm!MB@x zb3(rtSVIKMhIvAXqP>7;1^s9YBPh+g49I?tdt>XdUCRYCFiH1ri4+O;!kP@VZOF@F zjz}?Hs=73_VB3&)leWAz*E3%RycFR-dBZ}8>O2365kN{~ zkK?jZqPcIpCda#SJyQ+E_Ym}*<)5{VF2@mwWB~&+)PM#<{a3ABK6%<%xcpuuK|Aln z9qBsX?(V#Nqvs#?alv52Qx0GWZiFV@omsVK910w>$KSr;evCaa@}nXXCDBmT(EL!A zP$$rrg`-Tjr0GUQW|R7KZ_^53z3#Pm5lf`Q^X*Ruv%hZILqm5DJzwes zU+v%8HbPi{D=-mb0d zb-kbFSI52FBShXDwE_L;ckR1Z`!^o%PRd6<8r_8!FZKf)g^ByEfXi9K-Z~C$izc5H zO>$Bu4{JnDMKWJ;gyo&zUnp-6hX&mnv8+CUM7eMJZJeNv51%})`|^H!5fPshI?>ty zZQSg=`KA4cfx?u2)P93+h_~&t7pF(=ny07z^_syJ~CM+WN!o258bA{)#LNj$@R~lbVGsYX;k>1+TlCTH}Kn2 zM1Y==>g_%PCzxc_;c?eBsL+L>rx^Uxq4lVt)m0)dHAcQVBEGyKEFJB!79qHPFRusv zmVR(A*Xu8z()6EefXf}5f z)mXsJ{g1a=-EQeDg040_Y3>KQ#~yC4J2ons*Zb9dH=YATzS4`qxArhX>RVG;PeYb` zylw(bgtQ&Fy05z*kWI=_w@XmjR7v_YNK7k)2PA#N=zPLvfv#>{*TW~)gER<+>JQ<8 zv+BUSEsCUU+7`(@8U$ix&`>Xfh)N9r^xrS_0xHQhK>_P)^O;l!m%lzE4n{$DklzExOeIyR=yDT@btPA(NV1tpKM z=;y6ZizZj!iM_JfRyObLeS7mo5^#yuO;I*}bF<_9x2>Zppxt$d;*gR|Pe>M?@5D)Pq)_EZx^Sm~f6 zMYP|j$jq04Q>9?Q2y{$n_9xBwVIUA2k5-V?Q692I1pwFK9n}*>Q@q4M3r_5S9$^x{ z#EA=x>wqrE`91j&G>P-CNvLf~0Jzv+@l}oZRLoE;o`@rTvKtWp!am_l0Hu#_ zAU&#RAg@>rKbS}nnf^;66Db^xCnDS*s^=2j8__y`NBw)Kz(t~A%B{T%(=dx)Qg@!T zi&)du_v``OPsdM}WT8E&=L3RNKnl&5xRRD8kFHI>R!qGmdly1U?YVuY_T}MmyI002 zA!fbg=d;1}ryJK+1BXFxvFHB93AfyjOCDEx_d~PU)!QD`zvhLN4)*p(^S1A!H$@DZ zZzM@#9CnzOMU(Vn&bZ?7-<}+iB$zy>jnNp_N{KQy2iHh%Pl0Yr8Scn~t6j`~!`U+S zN6rZct;Yiqfa;xqs#vsAJ6~GCzN-gk#zUufE9aX63$yk-?JOxr2k|)5<3G%J5cN0M z6x@i-JA-oZH;EMY!)+2e&5HMS*&g2Zd{xE}&e)!>T>X69&sq{GQ42R*!fF<7nABE@ zD975Ow3ZTa+HLA6CR<;7*W-s&Zt2zgos-r!4o^H*x(8yC?{dC;zoh2v{^YLqaSCM= zC+w)K!2=R%m|g>CyVPhQJ@Dmq;JirbV4Qv96LENl>{z<$hw=2S=Y%pIXgZ07GX+_G z688F8Pg}7hxswII3`qE;7H1wDD`C%7Z9;=Cdq$w(o4XS*Pa~Ly z#of9+-x$B$@_7c&_VX)o(8TH9pz_xl>J*03=rPQB9p<^_!5d1%*+fQgB~$at z#|(yLD}z0K35twycdldv)ew)w+@eo@Bw zC$7n)Hwl{^9de{!`K_Mkpf3hVe_#1Z^Fq%&Kss**ZV2A+tC~pOagmz3g}X#5&yBmmuL$d7sbs8Bw8ynX~s( zt}KuK$BI})I>##TAQxmbAM3H3Lb@Urh4yVZOkW>(HX;)~-J*iA2d_{a%*l4rVoda5 z-_NF}{oQA3bH2qtvUX1e3peG~2LYvJ+nNIRzns#sW=Wbi&&c0i)8^Wz-5;-qFJCW* z2EE!}oIHVduSstUCy%qgo(~;aO*&p%L^5w#o~MVQyO z8b}|I0Z-U9I1D!lFijtj?a1CO9i{~klqbuj%`$TpN1H3QyYB~!A7342bqGyqvDLT= zs=lisMgen~K6?HY*9(22mtQnJs#@4hPUz#FRgeeJF>B0DqRtx|zYpP?A`Y8yj;}BX zw%ANwHQ%3yNwiwC;YFbd3}ns|Xl_aD(V%L^&>b*9(ZX$2Kw0Er<5!MlTzhtQ;Vj}P zr%qOvJonX}ZZJ(7Tn;~6Y32fK93kTUI%L}7)1Pdu)Z|GeDBcvm3JMsXWeaxs~-XQqgKdwcv z<{rgj6neg4vJ6?gLxefR{9{7E&Pv^>Sdq7#`r+bv4%>)DvQumWC7q*G5g%2*ic<0# z;ad&PR+8gg1;dXQ8X$Jzg8P*U-C@>kCHMR&O2^dCqEmUQ3MRcCsawDQ2Ir8iYl(T%Av%cxZ- z>uq&pUtE?U=0hc~c->A3qGpAkZF0fMn(At+Op{ByaeEQZvaGJNzRf6G0@W~4Gv%u^ zk1U7che=*B_T2(ROFOIj)B>U6!rKh;WtSCbZ=06wNQF3@QO`Ti@~VU*<%9ukZBEk_ zCD((k$_k2>-Tgy69Xy2C9x^l35wtqkA5C^=pO!e9Sg2C=$fJ6z7{RC%7!V(|7h?(@ zVB5QLoju&$8FD&>@dM)snETPoN;MTgBB9haIrE299xn<8rrB&kJC;i5c|>8g1QGpSHgnUd85!`Q4E2@XEJo{uVfcl3Bn$Upea zCP3eGZnmEdKCQjWhpmiuwRhxb8ZeW zarFxpB%QDYEnjVLEf$q)9tLN|+K1;TOvTXgH0IuF9u{1VRV|XL-GY1$OZx8P?x~da zV$}5Rs>gSRyBxsxyn=5;c<930ytaeQEjt98R4`m@tPVww4~{S2iYK={5Td=OKMf-O zn!5cCaZgpw`DJZs8Cr8RNux3=E(^jf-QNB*UhY9lrBy$x{Z;SuQ9_yo6_-h<0C|+{ z$W2!BBuiu082Rk5s}ClRIFNJB?CWi4cO~jUQY7}i6+WU-b*^uAHRh>JyCL!AIra0^ ztR(?v=g&Kv8`7??nN<0<2P=_8`WCXK2QRPZT4(c+A(op{3C@ailI?`whJ?>0T`FLH zvRP8=V&1PHCA3M6`3EmGq_0AEfZMy_#z~b#Gs=xj;(gp%Hr#sR`0BM|F_gJGe5b;})x*azZ)Hb_ zYQp4i=`k)H{yaI87Z7!Do$(g%ovDzD`kQys@{XofRkt{uCiF7so!HY$mU%q40jp{G z%_>{+!yIl9ZAm}){Wqu~7gKdQV4-Qw$4uZmfAJ0@dO)ravXDl8BhUe1vuzC^c7%(V z1Y**-G*in zGFqIu6#z*o3fq?cWyLS6yOZ+<2re>T@9;8aqH;qRWVfa2bY{6B#g-zn=q~so$B@tk+ z|EZ$k> z%YE(e9rDu4=4DoDF1_BS$yF*_g$24pxd-#GkWUgdr408b;UvzkIMB zagMrS%fKu4A?wJZ9~enp!7!;ICO95@Tsd9ar?%1nRZp;V{20Oe|Fj-jDa3Fl!5 zPcZph`O2cyS&?#$tI(WHSx^a&)x2H#7vX$E1dm*QnmIX_Fk)tnt2VqPWtQp` zP5hfa0&Da`jg!!PcMhhwMYYH(=Ddvzjd~`_$0#qltq_PTWtK@YuNL*rk`%j8a{=qQ zr|SOw@F2I{lpNB#y1rCVW-eOvcN~jXsIGIH%I~R2nPF*Bdx7r!(m{k;>661Ug=eQm z$#3f<8`I)flKB-9QEUPZ$-i)4e&}95x?D@|(`XH=9bWoeHOOL>hM7)A{mh*ro3!0s zcGD`e{FoH4BIYjf zE(g)nD205E!^&f-6mUU7M51zD<619zBX0wc6yZJxKxU^e38N9LGLKUA)2281O1Qpe zn#H_bsX1O!e?y&gU9!v?BH;%7*2pV8D1^{O9TcEzV{0K0P9A0D9dKs!eu@}5uB*(t zHP$CzqpY}gdS2_1B71h=;E)#La%H+W(*OMSN*#)EDPv_CAqs&W0wI>+UEv&ab_6l? zd!A;v5;>1@4WYwhNku79e(!)jG69jFx{~?iq|io*y`nTxA3;=sQ6wHs!>3uPon_YO zasTFlqWl++;;t+%_;&GyGJ1`%%i$0UD}4zZEy&WB@4v*&m%?e+@DV9e{)f#Z;=kDVT>n4WXh%E(crIubTPspb#hCGKs8LER2C@&=%OioHgI4UnW4F2#wEw6p|cfK=TJQy3sELqudcY z8up_=uvW8xdRXbZ)YiCsf~}te#`q#n20SSF%i(vrbzgUSj|6cbMSz*w@?-?effqg# z)(y6~3S?+>If+wX&ZO_N!3TO`98+*48H*SgKamc#9fyXE^ zN^e3Y5_~XDBU&z}iloaT95-V-zcLFS#H!m~Gi0RBPz>N+!Gef~NEIh_22+ERL<$=m zK_thS#m13{Usg0Dj=I|C+hIYVvM>01$67}mFdL@>TMOj>YLQATM)wA!y#HFyydZshgMXmJ8M zHgCdAZ9It_Z5o>5Ryg~c%6;kID%D6DKq~uTf2)K7ul;H|-1^Ihb>Cb9*B&822Hf=t zawMSP4Kgf%$c&UJOj}+{8%fGiAYKO-Zsg{6!p-;OKZvWG9i>o3TB|md+VXonGb~huBol%HT!Zmabb% z_|v=a)ICNjN=v%vD_p20Viub01{>tGuoztR6M<>x)H48CO_^>C@Ncfy?>?dAt-hQt zpzEvhUlehiiz_-ARY#ajZb6-_P^aV}*D&3{EDdmn+heRA>wZYkv9mD5G~G$p9-`^8 z&KUi+n}lb@R7N!=n^C_?8pK-+Y}4A$m^ZR3Yi6JU4JPthEvhCAnA;nVf85CcB~AUA z#QQ&!k|y_=6L7TfpJhF)%bhfjldl3U{2|7 zETjIC7EJDi7HlWuk8vg{S@{K+CNr9;a0{QEjGvK*sndPrgS20{!qd_LONBNeVW8)wZ}$~ z{K!V|ABDL@`$Vpy8JLrQDs=mw3NJIRLMP)lE4aN>a>Y(c-Z_stm*~S@4&;7k8kwys zc*n8lsXi#ti_%-Rpbo2JXZkErvzZwaze)7_3H|e7bG@7KtzD!eJ46LfRzDQY+HH+- zmgRA@@#oFK&*%xIs+i)ry@!44{3uJ?Iu_RA;$=fFFG859Psg>V{e7~hZBo&Euyr?v zpoM*s31$X>@;U2_)wi;#et)G!g>=8f=8NAD@u9&beDGFaoPP28k6hJCHRYad`o%uQBFF6}!_>9}Ps#AR!9uyXVR4p}>i&1Qt zkvM__453uoro4>kb&ky@vgx(6R@$aH8#BhBt$4kVx0>~>%~K83jpn>DeDk^`PI8a8 zJqBZM2vsZ4AXU3zo6L}pu@|G?B>XqE+#l2!AZl2--@EUL){O<^WaB@m-OR^9)B@ap zQh%qyj70fAs4uz(;5)*zjW&E*-*+0rA6Az2VmQoZF){|YACqYZb~I78ABkW_Qh0=E zp~%$?IBJudZ#(oSaGMoR*9?eu?)GB*-eniQYxbT)`iuP5bp%AN2KxtjGaDynB=i44 zK4UDq^$?S?x#s*Ad7rWDgR0g&f>yH%*7v?o-(i2MwZ^k_8X0bO2DA#@H*mBeWD>o# z{T%y{cXPkE^R=@Gs<_~ZQ5z-VS2UpZ%aHF7^U(|#PIRoTWY zn6Ao6qr4K4t9$>dR%0isQC-?MuA723p;AW*yJF$wbqyDxg20XPbH-mz^zHWDq5#v-?cpj1{=C@8W zU&BZFt0%c03^s+dOo?oM)+GtU~Li9_QmdY1E7X<0rqfM3D36Oehz zS?LCit^hgHaJdnX>~$uZXHAr24KdmMsoR?YUvk!b5+L}gEU`#-NN9#L z`eT~^iTu3JE~kQ5*GpljN+8H2W|8$9zg<=f5pg~)Hoibix`_p~6Cvo0a$Wf9-p=yL z0eH(A4HM+GR8j+$47Rqe40Gr_!+x{ZAl}%m`BlY-O(PTM2M?glHx)hziC&!!(ucem3Aa^tX794b0ns7E*fY+>5A54fp$+T4vbaMzL4nJtuu>~1M z2qx|y25th?LMr=(l%<4*SFG~JJTx9+!VHdqwbPC}3pT4Ir7;{w8K8m8;@BQ*c>&S! zM7teg%2IDENaDghsy9&s>nacV`!NYM62LhN83w)$4MOYqjpiX%39B1=@f(fB@fK!s zh(l{>d}RQ!q`B-fZj1eSod@^^OzgQh+3~@xDckn(LPM$vYA+%h9a;xiJY)|d8XIW` z7%pWv?hoi2Xck(o-CwMR{+>wN(6`M7SqGCieTECvhN7JsTpc|p!(Rpw&w=v6xDg8X zfunX)x$r0)$6}SQV5*|_HsH>r2Be^Eh6gya3x;vu}D@)5#}Ne9>!ULT@7OFHZo znN=g@_X%DBA*Hso|| zK^LBk5)C1;#*%gP7-F$rN((>fu_UK7wgJJfH0RGD+(W%^SbE$`Fb!!>-P5OF%@mi~ zLB%^M0~PNC4t6BKt_A9!#k0@W|EqX4opxPcCzldg|5Aw1kGOY4xIIolGuZ=aW2{D# zQ|dtr=T%CG0ii(;3%!*v#wJE8>8LI{pmO5l>yH}^XjlILUh}TsJ>RI;icqnzxCsF% z_--IDY_xAgUdW+lHUfFx`vwmHg~Qrq^ZaTWy@p*UM^-p2l1I0m%&lg{ZEiKE7a=^6Zx26zo^VH#c`V-*$nEc9e4gny*L)YrajQpJ`ZWON5keYT|%`^Z9-F z=V37nt4_r>Ygvw+I89T{y|*1b2up~UVQ1)@6kWy9=wWBMOM~f86jKr8>v%>__FQv( z+4LX4V-elr9vdC_ugdSml{%f^*}73!y9bRq9eL4h#8R_+a&n~U=ljJUi_~KgY!k`( ztL(JClsS3#J?nl9{0?!2NZobd-KQiwF%9M@H&GoaO}ZayhC80_?Q+quL4IZ1EtbH4 zr6xtU<+NQGu=1OS0U%~k+MGkazX-n1lR14rF=gmRF!l@u1KrqCLX7i$CeKS<8xnEG z$>K>vJ$e;)f6+&vocrr0?GNBF0?iR!_(Lj~L->R1H@Jakj)lnTcx12>`oe=A6TIB5+ICiVJEOR~%q#7*|Jm=wT1rtljar_jbn9@<&YU z-M8tZJ!q>B#={%C_@` zvrkw=>Nio>bhTS$`qc9nfsfuHau=uu{twW*rALnBb0O>^0b*jv!{wnN*SOWh*b9pK zpY)ecw>5TegC82dF?K|sJwNwsf9cWr?^aD`dmXFda#S{tJgqayb1 z%NO5sd*4~huq>4ZI@`5@PL~B}6`I-rv1?hok8mLv1n-h_%!iT{RLRZmf)yJbdHbkg zKXdP$%gpIUKn)DUH4{phW`*LTTLcD3p#Y01z%td2em#~sNX`66&wKCBS-16tAb+9>8SUJiS9*9Kth%Ob%+v3PcA zi10OGNj0u=DeC-^`Z0&=qlzoVq#_5!rcLIgd-YoA;jRsI_oc*&-HpUb$<}+iKm;HW z%YCCWRvNR%=5tPQAW2_AmVhHI0i^o*?BbI`>ZRB2v-&wl<5p-EoxyCf={_C_hx4xNm*<;_A~wMX<7E9EVRf6boKKiuioltOjg(4r{98~(Wr0M z_*_7O1OFp9FuN35Zdn~(=dbkxenk7Yt$!UPD%n~T+dT9F`5B%^09I-DP8SA} zfTSsaN@CWrVcg4d?h|^240F`tLVy1Y`&#{6;_F<{#hmNX^KfBc_RznY`M=i2E&suE zNQZW82L)8$9Dr-*7O11_&>{fO`%BPK7<%=GJlxYAE&q_ti=5OxLv{j&=^w}oFap|J z?*>HpV1-H8EA>akg7g<7E$E!WQZds%>jzrKRkDf}OKKP(;3=V&=;hsAH=<6D7jwbo znbQJe8M(>U!gfF{% znt|~4fm=|$Y*QmtXo{pAk)&(R$2}G-?4)=bFi6eoDy$ZOD{|5eaeq$Z*jLeuqA$yc ztTE;C(7c9%b!}k7y~7%qglCw9xWc_LTfDs&%zaLab%f*lP++|mI8$nlpf~;l$l{J` z9^TimF+7D6hCNRD7W6$AI{^vMyePu*30of7TP^1g>`=q-G4ALw0$lD?gm>c$yEpi-Q&K6|aAaiyq9frNb?Tq=2b_P=7n@lLZb5_0 z?{BvN+9Sc+_Xj!uJDm=4c=!J08V8k-+8+YHy94O%35gYH1UfdWEeI=<@Fhu_k}21* z@bs*;GhtM%kXtUf(0wBZyNv#Q<(8OSk=Oax!bxQnd_R}8T>9u2PLh<)D%gpm{QC>%o z`iF_Vd#2LWOgux7cqvW}LBE>pb6+Wu3&kjvI!rO&;1q+H&!0mvAgF3Dc^|PmR74G| zn`0cI7h9phJK_qexnxvH_19vOJ$DK>mJ;y3!Xq&*#%DNmCIQaiCs7 zFc_Z!sHmmoEAr(hba^A$+SOp4*ff}v)f^l?wCGo*L~|J%@0juHKt{(;(nN-^I9H#z z)Gd1udvu*wVlX6HSqu&p32MTe0X|erKxtBgo|j3ZdCCnc;YrpLV}apk4;{=cgAxdD*}ebo@ad6tpJ?n3Sstj z>?~iSt&XLZD)gu{si(&xUhF+9kT&*{wcoLW&i7W0$%~?VN!ojywS;NZDaEzd24ld) zOVUoAs<6YlWOwUiT2-!bsgNgi3r}+Wk`(=XF=CmGI%1bETOm*0x&I|S9fLXL$ie~{ z@2hsI;)1A|Mb^=(OFT;ZNqt?&fhWg>9+Q>DAyUy2#@Auvt;~S%UQ!M`@Mq>}W2hYL z;NB5(Zjj5~pA*KvcL9y1#|fcRYY;PV+OLx{?(I}#LLcfq)p?|P&O+GTR`GU`(1|^XDz$AX7bTva;m>REyK90 z+Y}PNX`x|*37L0I*?TI@A~uGr&K~5YMCB%Is{`#+(PIpTBU*;~p;Nnwsu6aAZ=m+b zRP*ia7X^>+rQI3N1B^{AK#c^TCLehUd#kbAircxOE{qU7*wu}F;R`w^0WN zL&xh#qK6ITNZcIQr4N!mVo#`ZzxHyoBYy28nIUK#cfg8(FC)M!o^}p)XQ7V!h8p+H z=e=$qJQOAzHJW@}Q;C%~crk^)gJ^I1Q@$}Ru-sKVB%vzJx&#bRDyy7}tDGCc9S(&J zM~|jXT0-jAV~Z9DeXE60p+8Tp4#x;Mog4%-DwZgJKV(A2-tygmqrZlv=iF>B2Pl(8 z;rWr*p4GdR#I@%lsngmiP?v}*i{X}RJ$CV6OljDQL;K+%32{T3ZP;Wg=N1&J;?wsK z(4(vWgjN68C9AlZ)3=n(Oc+k>-Y5~WhHQ}|o{LH$1|5iyCJN1RPMwkI3=%=Fj^_z( zB?5h=c@&I56)pT-8GK_eC`X(nM;tMe;1LEJ!qyITsrU=4*2p3Xwlj}$d*

9a(8En&i2Z=4XJ~M7Ulbg67%+B8dfQ>_#8c9D_8_FDX{x%(LeKN}=SIEfpx7t(XtGwk)qY-; ze2gZc4*IF}?G3CG>st@lPPBNg=#AybPlLmBGI#D8U_^9*Z|7n6f}rCRec_r%9tk2$Y9j{7Ckv17lR0sV^^$crF|fGcuq`4C)mt zKZSRC5i?hWVSTt2D~gBkA)zFL7DsR;hi=RiKLO>%uFrxTyiMSfL2tU@vJ){!Nh2T& zGVTPVxMq`=9t5QD6gWOCUXZ+@{`1_vv1i~c9~T&yOEnA_{y)#{YgvE#C}nABVfN|I zBmBMwDf!ZMCr=O9jfaCuS;=5zqvO6)7!X5-O_(ik* zF-Br#MuJa(U+F~O#kF#{45NhIzxus;cy>McwysxlAKh&ty>Z{~JG26q1gjRZH~p^8 zjCKJun`)qQJ?&@(@=gV2kr@AE?KL-(-?j@k7_Y1f6 zm20h$uf9u%k;27wSyDy7G8Wq_&AG)0~z4TheqezH|Z$N?f|HHwAu~e0aPz8Xxdc1 zw7fc7Gw8rbuJA{z+|Ib!@LX+MU!=+Bq=cRUpF1|}a7nTg1wME^GfVw=@q1fbH>eX7 zav<*8D;`|E0;Ul25w5=02@wep^OFd^xjqYQRNS?NAnJUZO9d1wa2Rmt%2GEs4BcR5yQ`zyUldyfPcsyT|jS64N0aZnxfzlHYE(;8Ni- zio7&<-q-m&*C;7=bc<*!p}al~8#R?ra_g*ZZYmWQ2azPRl#^)2#*W`SJ#9bq-OL_3 zJ-lTlANidn$1d)^5s>V^l@5kZu6p_Tp<>CCpuE1-uWz^JkI4%$;r^=f<*8`orfS${CBOv?Q`rnt*jP!<#VE~9 zeJ#m^R}oMfbh}LtrBJQ6Z&Az2UKfoyv*LlKi*+JvuN58EznJ%+d5R9x9?ox_rrl>H z0@Gh>HXT%N^~}bd;OwMWs+A(wZL|QB!K%*?rJa z!Okbwhhf9A_-r0`k{H4gU=O_4Uh(`v@ryxUD2XTIBNb$?#gF272O~i4kK7hUN8~Ca zh;@9#H*Mjn4Z|s+!QObEl)e}>z_40vA_~HEf7F*~N5SxFQ%WMAESh%=1lt}7;dSWE z8)0ko*vw5v_xn5A4o%ZM)9EM0%~q!x7K}UxEN=J2(he&|QI3^NX03eLdckLwsHou* zV~`f}^V&UM4(k|=BP@M!SY_&!5%DOsYoRMfnbzNQU%OT^;hXPU&e%JeZ*kTWP|!`; z-=3P57Zc4x#oO+kI*qE_#|4BFnW4QWPYNJ{lxhkQv?-SKpexYr>L3=d-1UHRlB-qz zVu3GOJ@~!SjKB@*w`>{@9CQRbo-a8D1V$?`)$-`??tU>TrpgVw1 z-s?atgf;nl$qnd%g^Kkt`S;^*c&s|GNr2u4ZV*uX!sF zyz(;+;Dj*N&0r`&!5}cMe`x(n(h9^O6FLAC1`i6e{VS{o;DETrD%JQKXB~nU>HBY- zzX$xybB%NZ^qd~~1}F>z6!zO1imh|G>?6wU)n&|6$R63A9`$pzY+?r(&}Yt%Nrb6+ z{04IPhzUz`dYaxic?bF0xc)MIbBUF%H~t<8^yH+TUUan#)A@}8lh5Ucs-sWJ}-Q&-R>b~B9#l{2De)` z{iCttO6m6BeK&siPtCf2N#QzmyxF(U21-86o=v9+w62MtQjD!FR&J*FuD0DP4K`Q) z8vPE?a{+yST}>mN@>@-dF*}X*JiQ?K{<8JVSS1os3=2iFB5;g-c7_|Ou;azMjyKEq z?jXusI6D(d(Ofty)7<-LP6EN$t*rO>BUC*F)c*6M71)SUHmpma&k|Xj_k}rLumveg zK!XvAbvDj-2d)Bx=s340DC=TCTv0%=7P68Og`g0bhoP*s73t9m^0LM$D#w;!+2<=6 zij4QZq4ie687?)S1bKubW(kiy2xlSYt6|Ej(My1v0sQPFC2O{}<)p+~K^_(81G`;8 zOJ`_donnvGa67)=qqX4P+CE%KLJz=YsZ)65q4y?sQFz!12hN9l7TcDT{)qQY+*22M zuT+{==?P^o{6Tr44bN8UMFOH~P=Xx=J0MjprgXgcHWW#1;z2nfx(uO1!s%R7WJXw_ zSN(!B6ieZzwy3?|b^c1xZRbQp_#h|!`DK?s)6+<)w`(_1@U?aX+0}X3=i&J|R!TU1 z4|t{fGP^rg_uL?2$W16;#{Ar}e8$5<$mDO=dui@Ag?bQnWMIO>c-%BmSmx|a$ir>&i2KF)D1*bG}2nJGCuMes+Xv(1M3p!$M! zCmQ2>0##|UOO*+Pkf>gS-3QU;WJk^#1J>U59X=w(cd2L&jY=}c50mac&sUPtBBwsz zSQ@Y!f_~+p^Do&?>Yu-9ta9RAQ42`6FEWu21nvWCSaE|Ax;SK9{9cVKndV4qN_uE; zYEQc3X-dC%MnYYjZt#3Fky|UWc*~a74aXJZON2JZ-a-4xYf^K1TWpor)xJv*r~huv ztee@Q!H5U;$*n$bz%wSx{M+~^3pd3%Mx~Uz{i~H*BsG7)82;HZHI|1|)`K6x&pdAM zoJf4PXPH~Mi&ML?V5yI+@(^|cJ{Ii6U z+b#`mj(hjYxYOU)D~3JE4T;Xq`QkDsed%UYS2u_4B}30HI-?KQU%}-mFO%Y{j?}~p zcbQxWg|d-a+ifozm&_<_j`JqOlc$P1YSSo(myL~?xjY-)~ zfhU}DwOHKvq;Ir=QGKdha!6E_zE(oSX&175U%IXn^X~0#R+KNMh^@7lRgm1#U_DM; zW9c)_uezO;jGmQF^q_k+TTbhHHalF>sT1>E_k7l4?%w)M0}Ybb_4E*}p}le3&2;V| z#C^W4qx|UY32)!LTd9Pr@P|2nll7Sa-(uq!^FkT)__lD(yU9)MW@6+P^XVxX?B1;^ zVSuuN!4)>~*ETl}UdMN*HUCrgZu>7|%|btHRg*N4LRTGK9*XvDN84{zMhM+IQvmg1 z`W|KH(eA_(a_*`=x^0hH(rVmOl#k7y2_fsm8ZSL5YLGwcfqkoa(u8sLP-7GM)*8eE z;*=#7@411vqd1;O(Sj^W4S1nK_})u#UdmcTplj53(M%qDpB&O+7@M#3lgaDo$8 zV6uSh%8|Y=?6~pv?DT7FWb@}pD}KT+Q55ujPx+`ZR#qsgbUAWTm@t`7Bvc1}srTS0 zA!cSM;=_$ZxT?;k@-O}fUI_%XgjY{{u}|sI$)WQyWF;9l^*>9Yus!R)=$Wb2A$Q?w zRXVdJYQ`BoNezh&#YEI>gI%;_)Ysf79-C^yhOp;EtCWV*P!iUx;HSWWOun~fQeL1Y zF;lkPBMm|BsR8Q%sr;H4GgLEX4tW|SF1pY63-iBEY5C1!*=b|m|riV0}Sq_ZUu$_bHc)J#7(uC0Qv8U>!&m>kM z-KDf78?&-+XBI&rAiWh31!FJ$(yQO3Ky$%n*1x!5cD1c>8 ze%EO3B_O!*wd;lgt~5gz4N`s(Vx^=G1c$G#!MibNC&a@J-K-&xkQFX?_Lw^%A@0;H}rI^Jg;;vX2)MhKo=w6&8pk7N3~>RfSPHZtbq0}*}|lkFOEZ)DU7xoz-zaXWflY{>_b z;3!NyOKf)S+7e$OZs0qQS{Ec6e>KEy3i1L+XpRgnlBDK4v#RudT zO}(>a${zD&t_yc)%T>VSC)9E-;A10WtoN5WK)a{3gFEwbpv&J&3`yH=;V-Gljt+lG z{Z+i&$rm*s!(nu5&HNSPD!OPucxNjLVk5(rYaYVoDY(Dq0LcZ^nfX?MXy?1HMDb@2&2?Z#_CZMfC_R@&HtF-0no#URNbMy}Xovm3DXdU` zaR-6X1tGokyfLi=)D*~TA{sDwY448}4pC>5mX(`P6R{Z$P}|H=)9*0mbfN2OqwA-6 zCtDKo=HmZgQ|LPB=Wm$fA0S|HMQXe(0>xnj7hBY=knhcUSfZ(SNb$0{GX$=8F;K6U zPFzeP6@|pu93}vtC>}#vmI_-mdUXYHX*-*!Iys*Tm-$q5xHCC2JZFPj%!^t=cnwbo zEZ23xS#+R6%3Czj6a~(!lqt|dTavpfZ`8K;=BH!D_v%%VJ;rydI8UoEual>%;2f%8 z9TWsZTfQS~A|8X3=)3M#X`faZA>r^ruRSh-L?!#@omHt9OHF&)V6@HdR+%x|2)MNU zzGtUkZogO%TXS=_QSh_@?wwK{>esdD*G*8AsV3ibAE2Eo!~X1Uqv2_j3Lf&qzqyMO zq`=Iu)YB$ub*o_uPon&*yUpqZp5h?W4Ou;|)s|TaQT^zEuFZW%lfc$(ngfvHZq=BD z)^eOs*Dk{4LL^fsCw&*^B&gW2@cI^>-z*!8T36Hf!GpF#G?~k%&ZY~q=;I{p9G?)= zs+25G=?G+pDjA0=zZP#Y10Y3rn_Jj@x57XNo?U^5e0YZ`SqDUy-WlGR<`yW!Mg#;} zhs&SqizZ1aUwCS+GR@EvdU?h8-jnBVi1C=!j%Vgy9q`ga<*c&h+M>D7-q9pI^Gr*}^;$jxbr3JH?8?{(D ze_f};XDEmiq=k}kM(@}syI&8Nv@9xg4;iXP;uW?l08j#$cSe8_hSC5+$UX8Yv1{*e zQ=uv;2#6Rv%OJ-54B|db`^xxo)fCYsfCU6*LDU8BkVV6gG4iHIg5UH3N%S?y=^+LH3mR$;xF^dPzd~k0p^yoO^&%B)igygBV&uh2(mkNh$LH)s~moUs-+?g%HlgN}s0*tphu-3xNS~ei5nW z7vH%FfvJD~BnmMc1oJzxYhuzdZprMZMfwG;LATJO48^|{v~MVI9z+xZ26ZJ5)^QqV zlV0O8T^)}Mg+0$@b&ihZw#E(y)zuX4E*Rz_tv|Jo@s9@#KBhCEUd!=-U>FdDsa_OS z#Q~m7@r1~#O3$;y?_a3JK_IO2c%z+h=!Lh;!$3${h!5JuAjr2+`d~=G(8VD1Su&>O ztTkfbd;-MjSpAoZ(86IGnG+=Cb3NL0Ao`)i8xn7Dg~LEd!T32quW$>zhRQ!TjN72X zq|LP1T4CZmEpr9I@UaE++MsH&2eSt1ruM<0YQ2u;fz-F~RiC%kWJsqzqu4O0ar^{0#PN)TaP)EAgqKI*aiV^Z zqhL@vfu95Z1AaMusKoE|NG~Hp11Zz%Q@Z`3cggEs4T{cu9G#6E-K`v5ozml>!E!LA zcRSYx{(Qtg4bsT*G0|Am6Gx&hUZWOhM_b6k=kb%&7~4|Xo=DzC^p5IBqA>g9SLk$3 z#YCfvvc{^826OZu_g#;sYhL>*xaTT}p&R--3!RIgdi2LKCpBtJm5eJi>!}YnCv<{* zkw3aoKlFWMIl4z1YbQB+W^lx|I^Ee2s$*gi;~hp(vY9>C+NcZ<7#YZGX!?7Iyk* zM_xbgK5*|nOelsAW2a#yryXJAnVhV9v*5Yg)@&%PTKEc&&cj^Z%=RDTZA3a!n`r`gJ?EdD@pQ9*yCfAyTpSVz5V+t^z&}5^j+ofMk zxP3Nb>^~1(-VR%47NW#6FxAmAPdBiP%5#_}fsxcarjgs$b1R0b$r(8RTiEh;_wrBR z6-=jnT`#r!kg*J8I#2XC*!f;5hg7qTQ{#)LXf6`YaH(#uq>|Ac&zr_*FqS(QQe&z( zexA|4^;Ps|DB3 zQ|A)yZzF7?qWT|2XDFRM37zjZrh+h^9-%nPH*yQPzEQfU5I>aRBt8`?4rOnAeT&E1 zeE{MOo~PuXMKiN8GO$lEa}3Y4h{pAMyUDx10bNVY=t|4DeqR6eTvg*?*WYa9t85n8 z^&UUhWu`AA0czm>wmM-6_Ztw{*J>JgOV3SHreH9ZsrC&CGm!0&Pwiq16EwN;|Dxv% z=@4GO@1J@cd~xN-n-R~?DRfRA?#ylqq_z5eVaj2O|E-iHH#X0bZ}T$4a4@<-KibVxcb=6vwhrf7j)$iAN(z zzVTZ&2nJ2AumT}^x#OvlMr)8>au;4n{dW#=c9%iQF!Kix@U#$1C=49Rbf<0|No^9WeCaYC{vTDDJ1EO;0UI8`M64kiI&5f2CI3MH3+i|Uby1y ze=wfg`XgC;i7@MfEzOzbNz+9*8eE>vK??aucTWhd!px7t# zO#6q{7bagqKQ(F!f-Z8z*+~K?V2<&rSGbro9TZYB+`K#0@(b-(AfG?+p*Tp>je?g8 zC8J8ZM;<9(!6r%5!}l=qadH0^*pMAotIXXk3z@&+uOvRP{t*4 zgQ=5@gH;;K$EtnPXm%7}WbRJ!Gh}QOroixh|xRn=rJ} z!VzyP5Yub5Tv-jn;C5Y1?21=d7y(R%Scjy-tcD)^W%Lhdg`lq)2CRl zoI^TD--D(^w;d5jcjru(lCH)_dA|4_h_@H<+ zHDvRpWtAn>vmwBCd#4=g88YxB-s`?Rlwz-|b@CpT;!FV`r zWr*N62$|X)5*~kG|YZ82!{^^Gz6?qc{cQii@&7L5?k8CWV3Ho z)RaIE8TBmj4jD~re=yP$fgT>(5+`CO{!wvD$42jZ#XU?Qmdn}=YXG~R{DGgqqDy2=gkM=6w1=9Fh#4UwCYHg=pNKgFMA;IDiav4 zIPa5bNM=X!FzhJi()C{=8VJOk1IFX63kiaS2f}Am{3RLM@-P$Y&(We+Vnqu5r3)an z-f-L+%4?7>p}`u0(h2L3y}gD+9cDU!#Fcx7%^=I(Z+Q}=sTE}!Vqx> z@xnND{1#)Bxpga*X`utk^!ZLuY;frOIWg7R8J9SO{=-$-VkED!0lW^%7*Qsg*s0n? z8j@7oIT}m?CDlCrMM{-UfgAd{%!8B1UIWBOy z(b!~&0!=X>cQ05Al6|Orp9f^#oJO)mtgrPNo%8H zG_rW%!ZH&4N%k7mFnC$j*r>%2ff-n=7^RoWeQa+&iAZ7-Ohjoc zDm)oV!p-5T(!>#m@X)DoDm3~(wE+L5^t&lNI$bmrG$l9-rBIHmb)!= z8p~p1suB^NG`SJ06Vj!|J3o#S;wR!e7RfarpLK=8~K{WW&0cQfYa;>cBPl}kd^>u-C=FA1OJlKCS zwVn%g<^UB)J+(=hq(W6z8dX*4p?{(l!u}JL1Sy1)c%ham6;bV97Uw=&* zD_zcmA6yXj76NS(uquqnDHzYEUim{jr6d9)?L-)}A!YW!AppkuM6Krg5@ji!@4iZ>TBC;u+W4XXjs>*yr8J|pbCmJ{^lg#%*A*?~y(C+?Nt zy~1^6U157HdkSTZ-n9HkBdi%b>5UD8!t2&xY!nRcVVmmrJzBq#Z`YH^A2-gRnuKzr zZW@RavS3%}7dc57db1#)B>2Qaaw>H6Cv2~2rv&4Zt|-@Epu3g4!#7mffa;;3#%{ac@7QSE-`1Qs3&Jg79Iup9Sb(xJ8A}>wY5c zLhZ!WU=WHI#B)#DCD~t$3CYrJIVL!HJcZ=^tN?EaR=$W18n}xW5qKtqZJgDv?9d;~EG!tWcM1dny(i(}l9hPA*@ zl-<%Xe!!+6kmgCr%I?F<^2{sr58 zZsUXDMZW8(rsYIKUn$)0AEbJ=uL#whA_JMEtJVo-f|BAWu9FhyD87~w>nNU{67M*O z2qVjr2}QE&njaAvhxQ$Ph?O5_@QnG7Q%qtGttLSF(*8m7F4y7(EZG6O~O&s>4a*?FNhfae~WCGMQ*_Hdl`&VL0Hr^nCX8kZbLHs&Nx(h-Z>*$G; z?T7_@c=R zov4Co`MKP=T=<18SOqdYr6Q8fR=5#?E(cVaC#%%cIzI?qs!kKF$n^i~GrxPkC0@N4 zhPi`apz=0tLK1;j z@eIvH#GMkG3EEJhHxqZQJLCp?E1>6W)il%d7?LS~R4&*&q)sbQV6bY6Oy7@7o9(KW z@xO=A%!o3z^h{o1I&tT_1EU2jSc8Hw?Hf@-jH3 zm4-A`x4S+I> zET>Q`DmC9dq~~AB+5H%C&~hvhE8sN2Utp$(MF?&?Hp2u#mcs;7S$h`tk-rPS?y3yp z-aro$qxj}>1pE#Jy$Pj3+Khc8C9EhF*hAj22oq|QuRaQ#?KOGXMiPoCp9^ELK=tj- zY_j-4_U`vP5RpgX74!yro;Bh(Fv|PJ%8jjnNy<;tw#_ghU?8Et0||sD|G0rR)e{B2 zHAN9BTRM~oi?Ky8r8G$7Z}2_j)P^rp+JCs! zf|i5{k-Qu7Nuv6K6wMHe!VfqOGwBUFcL4vcM)hSe@hKZ27V!Tq#>M0J=Rg0vd#32O z7*1${WxrnOr(x0P-{8M-_mCMADuA~^WFve%UIof!$@?>b^j(&+dH;&XwS)1;3;7Y6 zJ>*=BHBy4XJ{AH;plAO>3c3I90hqrX6MoIBxPhilA9_l3KMv;mP>1;2F&vTVPD8Go z1|cTGo4ZoFXc!l)8|X=GuOo&(#8&)N|43pXEC9+@IjQ+zfs;bz4;ucb7H|LGfieG4 zGW%N$SoD&~<(a+)3KkN3?SpZ~jQO*K>-pwGq+Wz-^k+19ZKnUoxq-%a1dhfYamUk17NvfE9 zV5#}t6&I_+&pk84EO5X#Si9Nay>1$@*gUC~GX4jjK~ow6=OtBf{Jp1bX%XOo>-dwCs^0nFMeGQ?6on-?u94IIT&YB9mHR3MIqqB0ZaDX6W ziN8ANK&e4(FN-yfq;}8mdzG!)VIjeu*spGkJ2V5z&4bF1dt)qynw23H2%5On^$d=c zo1ui$(cd1uQXG?U_gAbeRv)Bp60;y6uAHYg4!LSULfhoPVN+JK{ncF42>~Um{`0^~ zimSv!5C>79dH%vQ6dk~xY0fkCZ6*BM$PGb@sf6GB26KtWSzGt{O&}=1e|?(O);Q7QV~zb;XM4 zMRg?W?*9z-2~fg&KHF~QT$mZH-KHl48Swxn4aO5?jf7f3nYe6 z(#Fhx<9ZPdZAK54dE~=86?Z-jeW3+~j^LQyan8}=56Lt28BdyL>Jg!^blzJFTBwUq zo)VsR-9pg7^=r56rpb@uZLS|COxMTr`cA5`qiP0ekbs-`h2Tc*5&+G?l(GDV_nldl ziz}Z+CUNGJ?>F@jABydGOUGlWdzg`cW zoo<;}KB~O!UNtZz;?Bm6C7goldvVm_`-4BJ%D_EzJ6EZmP>@~9(NL02iP4{?X`l@Q zCIQq?O+gMCVvPPe#yL8BlU+}#S+m%l;Z{ft+eq3tbNzz8f*bk9b5KXQX`>?5S&Bb& zK*H=7DN-koQK#8g3o<5wleFYU48-9e!eL=yr(T+~sInQ-xXf;UHZ3(-)dUUopODnR zki4fU&S;AHEOZqX?j5kAy#CH$hvEnh=5*Bib?jePej>8lkc#lOWpb(W(jr(Hb@3A0 zEAv``yC?w;NS4PR=b(gL>8WRFQXwuN#2G@&0-e!@8*ZZBJZR42ax+u&G7}eY7*qi? zvWTL*w0f4A&MGwQvE+#Q_8uw90Jx+N=cX1|6MCkLS<*6}+d?y@rYpDSGF1 zMu#JyKNjop>24Q`Gk}W)I$9XXxyqK=4n({~k|k#v+K4qnig%!1gdAqi5U0L~V2OP9 z5{`YVnx?EmyEs!RaXH9YrFDkquuw^dTng`X5-7 z+33ehL+u=ELtP*R4>FrQJAgb8mc<@DRBNjQFfVY#sDor$A{XIh72~C)t=0ijTF?sq zo07OV0g5I-+!Yu1P`vOPEb!n#L;a=#*rRzQfm!lxDhUn<9Auj_{9Eg+1oz*tG0Ux!C|*d zzNRs(-&eONz*IqWrmq8J`%}tTN9MCV3P45tmL` z;?|U3e~_53gfVKhD;hg5h;;?Z3;EY;(G2524V*W6FDSd-0MyWqhAVb{1vZdn$G6aY z%<41mcLv^~(jic1omP~C#+W8lVSt1rn>KcSxbP1e^f9YlT<3#(Di{1w+R?Ij=1^z{V>JW+-6L-vsBg+d+LQ$TgB-mm! zZa!m9jHHC5L{?G+;1=|-@2C}fQSlVe&WBt0 z!D9g{;iIxCuDlLjHY5I{5O7+QD3jHT504$d{TR$GOFdJY#S4}2Bw%bY3-y(w6}`$V z=Fc~U1=tZ^>yo)_kEv~-=@NAB}K#WYBA~fQU%$z=?!5dT&SP~i@(t(&;#+)7FsStP*`O*aWGn@pZD?@A`7JjAh5JsQ5fo( z8C3Yj0xucZt_Nxe>H76GV^2d2yK?F{ojV5SGpE^)3Ue*@WL;X>c7Mk%!Yn-m+v?X7P@*6YWAb;v6a zk~HW6_LDk>{U80LT+Ccut?VuS+Go|IvFW_VgVDWRV%WNC4%_S`zfXHgQM;u;Wea>r z07(5e5W9Qsc!WH~ZSwVqv1Ieq%L~lgryo7tE`uYA%$bN^auJh^1>u+jWFK!c zW|vEBUyV3elEWfcXblDV{BXauzhCYPavCyPr-6E+P#qq6w>D`MC4|$q^oF;^!a)Ss zl=0U6F5^ZA+`Ci_7ac@s=_pBF8lgdouw877KGiOfUFt>gGB$BI+hxhnE!*gb{@Q1} z=XKIeC}OZd>gPhG#=|)x30_q(>*Rhn=pt=>0DSq0S+_rVemSrc<@`%Uvj*$9@E9R6 znGz=udoWEgHbT(xHLzfL1skV>zRoH5$Y>_>c@mMIIu6S-H<;?#F%yz`z9Tv|9RuM= zY|`94I_jBlNh{p}Dyw zJRK>-q|Gv}*tZ*Dr21wl>8yH4EaMda+NX6>0 zwofdhwZoY{f%wXs%fl-7D+s;Jrq}vlBzgza(vc;B0SIB|X-_!;oY={%Wk1D( z6P_yis796}>Fe3vuO(#9)dP39vZsm(>j>7!`#1po2NdxTW3Encu*`wl-d=Fw)$yl` zw-{{E@fT;NP~6AreD&lN*iEpnn)TUq3WF6@S*loDh4H2>y3aM!P3lXQ@Z=0(y=)o0yu`%!8$hg}=UtBHtzE%cfDwmsi*TEi(NpkDr^RY)7V0Kqb zN!5k(F<94@4y7Zjv>PjT@ZZ;uPJF*F*5|r3t4kT`x|o|_^3vWj3s10fdgZLXu*eki zb-isemA}e+t{Cw}ahups_@!W1WH7b~#dT@Eg$6nCWt*JXjQ)fOgngyx+PH2CQ;-_G zz;b8|Uf&vJD)SDI!Rhr9T|JOl?|Gg_mi+tedbl+$-1l&A3s|S{y#r@{K0eH6j8qPc zl;4#zEqVl|mRQ4Dt{$NUp(T<;Ln3I9GQZ(kM6P&NdsSxjo$w$w{hoU)m$yOxxxMm4 z=TH>{*n+AV`17aN>0d3VzM2`U{*MbjdZy2MfCT|$#;d#kAYOIfG>TO;o(+evBT=Lo z*^z*fwF$TxYU=qHyEYe2$2}G4DQVf3FWwZ>j!fR4{q}578hg1H3#P8=j!}S*N*=?F$|WFN(IS||M>Rg9wht1@+63e~ zk(KIOVOGCZ(-6%?-?Y&1e3$KKA8!D~U-GyTkwRsh8lR16-pFS>fj(9SQ|=r&ahQfN z^G&;bCpJyIm*xo(AZoB{RB`HLSQ zWVQC9yE!2uLKl%@*}NaG+ucI`)3F!cTo)5ybIcbw5D>I~J7x~-1*>LcZ2MP-%+2IJ z`!yDV;h*0kXi_p|Z4;U>Q0az48YhtOy+F_jYO&ViE`{6XUViY~#;{!0%5>b@#d==S zPf~yez~H)yNrRK}eoQ|Zf84(j>a=`isHYOAqig-yi|5GD56)WXeZWur+%*wmLL2>r zA{BtXorZe2(afwfZ%)&yk=&M5K?U#aRq3|j`WZ6{cA%WfxIY>PZmgCo#rc4ZL5S+c zj6^GnlW->NEG-hGwcZ8aBP0G?##qU1DP-L=2YEi7%5yAzEjtA?x2PPfot9>|f68D~5be5#%9O+dQnU=~ZCgp)Q zvKfXlDHRMS5#OWIOF>sE`+m^PwCsL?yqqj^&6!pqj&$U)f@6 z-Gz>D_tqKvr0>t?4k~abW`3Z44OX)Auyz6C=Glc2}zwXO?N7J#>1yyFNdFe13CRGQw=|p^VM-I3I82 z&P|8i&Wt{nGh~W95W5v;oBk_aR(g; z2}NmolVJ2U3Lj;w!mIMY!8wt>Xy{-uf1ez5So?iSH5aj|l_RE&t$A{Nsqu4_x9 zOma%mjdu0oCI{N%fuIR?y=fpTL7F}tS(C>r=}GnXWJ#wS&Pr&Z-PjwU zCyQ`sKNy5FDfOBL?`wlBtCS3R9ELbUzWmI?fKV2b2#T!M;^~Sz&Yk-6!^1>|l~s8< z2jsPW&GM!CTnF{;OmmS0{S(H6PsN;!Of1+C2V}hKM6~m!bV5>bvSP#5sVm+&Rk}_{ zakk<-9rroDI=aFqv3Z(W1&e}pyL3xD+;nq6g^yd$2Kz!QDoee9w=Qoq%%)S}c@i|1 z`~!1VIl1~qmD!qt1?kK$PGsLpnXydsp@~(NQqCJUVKG*qjq!3(8!4;dVTsthDMVV~ z`Uc|{GNG^PRf24-!O%I|6_RR_H z{pf}H-RGJ1_xaOThivaAkkN$RZQtjM7K0u=KNOk4^O~Huo4wU@2f>fKP-=-*M5s`i z4G^!eK>ibu3nfK5gGNfcddfU->^%zC0b-XEF-WF>hoFkSD|u3X2|uJcLdTpjW8JV; zR*zEJrt|u6>5=4+)g(N$&0=VySF%U{FuE=?0ui#OfAGSsr$^a=af!KxN`e^0y*Sqw5<>zxaY;DO0rU% zuO(Q1TW=NxvQGLnFx~On_g&VEQb?EE@*Y4o9B%A-V*P4eS|4%E6 z(h|l>*@~a0p34zezIPp)vu@M6uIu3gi# z5~H-j3D|Lvz$AyLwOTuv5DMin>6->pZR!ULNOJYIau~nS8I<0)pS)otCnI5V-v5%~ zBgW8O2wz$pKMKyvzx$@Tmz>zyMz^rAL|r6#d23as9FC(X9V5G+>Ur?{(%=*|y0Bk9 z>-iu}FQ;+73pz=^)FV&E zPB(BMui46jx2WSoN?i32 z9f8y6aa`PH9z>Vjom}K-b`eG-vFSSt=hWBC#wi_bd!R zdhgg+AXY3qdoa*WLskH}jD1lGCdO0SIm!abYH(YG+%HQ^jI1!<=yAU6;?VS1x_)Jb z)y9r@2{&|C7?)i$#pJuTYuaHMojKAr1+yVFR2unrQyK~cqAUqx=8$HCHpP_2S+JaB z&7*lrlj|UFI;50qtBaxQ*PJo^qWwI>TKX|ONcavV_&ityIiqOPm1}- zin3?bSA!5o3H6z&8j8p0vWhW#lQOub6)wZnIcRb9zjO(XA1-zQ^-u$K5&c8g-`!#V zqwcTPu+h_X!2BEqYNtz)w9&HM%z`FQ>k$oXRn(ERB6hkttO&hbPI{|5UlkmeZHw^Z zmy4Y*az(2MRm^N@ae0#8iQ~N!*O|qNuYD3pvr{9zB+D6S;qz6&r#|a8Q_GuhaS<}y zHkJ~Hsxd|s2K7{u0!i{aBilk8BG|1ur}WN1 z!gd?KQD(Zv4m1;<(1+AIj)=Y^+!g6*ly?mUb@{Rm4WYN?H?V&u*G(Pr3cEnT#z5gX z{}BF1@?VYU{~Fb-*gE?_77U56-Tk+FW30IlmKb5uAhb4%vY!dv{U~k8*TtjD-@O$0 zI88>rR=Zv;@)HOh2H6`{&d^cMQc=LDRq*G9WOnv&a*&VmRr3j2LGrc*QjU=ExPIAo z8mXFxVnU+0B|1!-x;feCw3uurm$v8jggPA1#~;fQn(B4kj>MwdWI{_cal)ah{M;$$ zGYU)o6AQSj)cIAN+bP{lS@hgxZia33>O?M8gTrp`vv!W6auZ{Z6Dmm~;Q7)!c&qv# zylQJG>;tJY;+*2%@VCGgs~1Oo$vE`yyJWK8|Fuesoe2%M0oG)~f!W=E)*SY3cE)DT zz^crj>~2bH(|(T!r)#@JI8IWpDLjD#f}=5CSmSfFBze;v2o+B4SU7eK;4pUF@__#$))}GUnwV47r#_s zSJBXZ%(VInTYc=l$4tMVuFpZD(bbgDXz{I4->j@jr$yQFM{|eu-zV>BT_@HY*iDvA zY0?vrdrc3`eIeX2)ePTZl~o;L54MF?t;j8SW#fX|znyc-RN6GraO$iHqYf+EiGYVI zYR9w*MyXjpkaVI_+JmIhBI3|gn!Ola(x_GLb5dQ*V=^E6OGIh50i_S zBxNUZpfzTrpT-I+4d9jI=HWeCN>qU4rj)r1QRM1S^xOV%pXTSqNdU`C>zfuxGe%!y z0r3O!yJZBNlMJlGG6OyDx8ILbg}j(wHv#KHklR#JTpQmn!@D%}%F$nuGY=E|sdSd)NT2IBQMXDL`PIF)7jfs zbK_#l8F2}%O*<0Z^LGaik+kfa_0`)|_xxk#At37XXi|-iKJ^4q>4MkFfP+|9s=xbh|6W_nCn`A?w}VbKkbDrZ(5a z!mt__YoS+w{h}J`@oMA|^=P^GYO+=Yk%48P6K|y#!NtZf4;RYXP>g+&H+Yr$BX8>i z{+}~e{^*iL7bFNs5D5qfHgLuQHtzmwngXu8fY+zJk(DizwWFEErG||ox;lnnhZi@k z-4qH9BL;MT2U~9;qbNNXm(^NvB3B_}jZ=tBf&zLvmC@JvWI$HjGsr`zfcHlohMH@p zlhSMepNfRA6f_Dv2F@^<^$n*0h5`7^#%3X`Qc#@1kBiOKx9-flO_yn2uVefCk$i)J znOih3SQZ3uGk1~u#_kFGrfNr?3fT)xE?1C~mbU&~5F0Q{gz@}_1!J9d+cuePc!sC| zj?oZ~6kRxMUII+NKt_|(0Rrf4Bh2eI#*a&epUsl^QZ8*_7#)W>UN++~ zy`c8va&BQC;W&wr1VrniAK{;H3ra_Cdi%k6G>sswF{@Iuiw+s6q<8{%rv#eUFn zT2!mTB=Rl(-q@7!nlJ>TP7Hu# zMIiI++zAEIfw+gWykY+;488`n%!>hRg&N^$_C+Wwx&onES(68UK1dpiHNm^{I2MjA z1tV6JCGP1!kSzwIpec3|H}zavC#Tx&3&{_w)k$ASWc`f>&< zup?Mn{Nk0#w|pp(X=wuw@Y-*Z`+}zh7lPwmHLFe#tEU0(mefH_Nhx%B-*oz|1+Cv# zH%zu{x2)f9(wUIgDDBZ(0$=>r$1e8-q0w71&W{8S9-SQ=e^Pc;;Qx&A|5~$vUz6+! zb>0L58aTwV#?q%`i(`{&S}HxrZi?%SXcj_yg8S)uD}Gt7dI)*q8u#bfj!juRu<=!% zcA2mWA3@OK^2NuBEnCO|+6!k#v)|QWtEk01=6OVKVMaOq!r|FCZOm~=MnJcy_geLu z+ZDbV2}N1_d1mzmU%Te%1=SF>Kd?_R+b7Gayld-OgP#cs9_Dwps;EBY5DA}7vRS7N z;2`89LO)_ zlj}pAq#ypT^>z4eG@hThk72@|pOvrHmvGPXUB2jIcSYPwbEcSk0=@t4O7_OxYx?NV z^oGynx5KurKlUZ z-c_E{e$MyIdg0scOVZMMWv1F@ews38_p)<)s;|9iI#j*p=(b6hjH)Y3ecwJ({ZVyS z?qKx$&+Df=@dz$H{pwn~T-}q4TVKmn*F0Xfd|utNo6qOfFDyQNZF*c?>h0C*_x`+g z+xlMR_Uz~D`t9z0K6$V9xBcHYrw_+}m9eZ^^S$E!%lvaSzwdtkn_h2G|M1cJ{jtCP z_S^qoRBCvDcZyv`>WPpH%vE>ZeTnHGy>Ab2RH4}HFmUd2WJA6 zTm)(qMA7&hC<3p0lJkqeBhl#Ezudkp{u-z~hlPPb07ZK}Pz0_$v7i8(tEansztaP3 zg)Zhpw|oXLAiy&RKqE?XfquuPJ+DDp$OvfpX`odyD3%8Uhtk2?AwEYo1Zybtt`@WI z)@NXd3uR^CM=@zXFf_p?6_-@zq=Kg_(Zc}!KuMVX2F7x06wPSIOQM^DK2M4;=S2a` z9HdDUbnWO9F9_||N}$@&reV-cK%a;}n7~m6H34N>0$o4)s4+tS>~BhdTb z2qUJ{W9^Nj8-U)?MHrCNfNTJ^ZZEo7=zT|oS*eZ4W})^Z(M>_`Y9UOiX@Z6dO2-Rb jKYDu*p Boolean)] = Seq( - ("request", _ => true), - ("get_initial", _.getOrElse(GetInitialFeature, false)), - ("get_newer", _.getOrElse(GetNewerFeature, false)), - ("get_older", _.getOrElse(GetOlderFeature, false)), - ("pull_to_refresh", _.getOrElse(PullToRefreshFeature, false)), - ("request_context_launch", _.getOrElse(IsLaunchRequestFeature, false)), - ("request_context_foreground", _.getOrElse(IsForegroundRequestFeature, false)) - ) - - val PredicateMap = QueryPredicates.toMap -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/BUILD.bazel deleted file mode 100644 index cb59d1d73..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/BUILD.bazel +++ /dev/null @@ -1,26 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/com/twitter/bijection:scrooge", - "finagle/finagle-core/src/main", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/param", - "joinkey/src/main/scala/com/twitter/joinkey/context", - "joinkey/src/main/thrift/com/twitter/joinkey/context:joinkey-context-scala", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/candidate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/decorator/urt/builder", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/marshaller/response/urt", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "src/scala/com/twitter/suggests/controller_data", - "src/thrift/com/twitter/suggests/controller_data:controller_data-scala", - "src/thrift/com/twitter/timelinescorer/common/scoredtweetcandidate:thrift-scala", - "src/thrift/com/twitter/timelineservice/server/internal:thrift-scala", - "src/thrift/com/twitter/timelineservice/server/suggests/logging:thrift-scala", - "timelinemixer/server/src/main/scala/com/twitter/timelinemixer/injection/model/candidate", - "timelines/src/main/scala/com/twitter/timelines/injection/scribe", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..384041a76d289a556e659cae1d5a4ac683c9fc47 GIT binary patch literal 37102 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 gj>I-_Bvh_v z6sxv+C(C$qG=G{lTCc>&{BmeZAIOXE5NPTi==kbb#(^gDbD6U@6h73O12NT63)L%&}D$S{h*o=p$Z5OENcNz0~ z&<(WF4KjVxtO$AY@xQSt^qdazH!biF5wN%+HD8s0;xK}XE$ddv_vb#Y&@?)x``F$a z0oS`2s5dL8uBOq7LSk%=Q-DttPho8<#cdk>x`Md0-7QqzoX^Fpd@4HJIUL#E^Pz1P zC2e86MyCW;8@k{uI#6MiZ5o-10v9#P6zJh?X+71qYCHRjvkBt+jjG6AlY2FsXEm5N zX|pwOjy1533WDKnaR^(8Cm>}8ZhJM_XEnx1IDF9GpH@I((gF+4Yt&1nX1#4OI_CFk z%$aQkTswX}uv0L1UM`7!clWea@U{i+ol+ec)U_SdO;(htCExQLqMfP0*7vm4@V3nW z5BnC_+QSJ_WNuXMZJWBj-L#D-QTf@^c6|y@ahU0rtP$6G+q{gZaePSE_MxjqVEZo9 z5lC^bX2McyHBqQ%58-MlnyH(UzK3%fRP01}V;e7Eo{dGVr)Bc+QQI+=%=J@u%cXhj zNh)@pUzk}#uShvD_DL zO!huM>vi6;khXvSP9O2-+90-oMOhe4hturdz=IV835D33*&2nK}}8CSG~Fc00cIa-}PB`bdfq ze?~-d9Wp3=FY@xkgjQFW!Do7{FsEO?ORZGos|jd5Aqajy)y`l^s_)lxz?pl>axTf0 zC9{}2wOA#8L${+o6hu1GQrRSWX*7q7l$N(+?u-AT;hC z4nrpwWg!NEK`DVsHf|7>R2Y_mVg7v9i2%byL=%;z`wNAvULU=_tWw`PqCcn6LkDuy zqmqeCd~P2@a@kAx1-Bent08O*;)E|3+)lE%vHF32X-)7zthk5ru$3 zT`Pcfn#I|o*SN}3$0I{wFK}I7pkukKvxh--GlRPig}KZe%ot$&;{k)8*&L|PY7!t6 z1_WWIA4OGhh$lxpIl89W`}`=*gIXK}!lr;X)&+-Nc-tZZgrtr5uu}|zd>dr|h7=54 z48njVdsfayBOcB#NSux}aHRw-61JH+SyDdVt3wB35K6o$QknF}w3_?&8f+`GV|90u8?A#IdE5t1>(?aL; zE0(pPiAOXCGbR}dH%Ysv6W)LGkrjh5p>ku=)q#|JZ$Tstijz0)MG5?*io@O>iW`Fx zI1-P*XY@m7p#lXopa2)g zpF2;l$pYyipc_*WPzds${frXc>Gy5=UddJc-rCb3od=8)BA_Pmli?62vy&syCv}s5 zKM79~4T2npg3<~67z!K;$QwWlMSIZJ^?XtV9{}OacuK)W;0}Lr*n+B z)0jYl65im6#@FxO8`Z%7`%qlQYTlbPvOyoK!G{15^g)t|8sG?uvgM3EGkN_k6+zbS zm+Vt4q;0o~K>ijV}mDO6qF(8b@v zR(E<=e*n*5I_;ZAslCVSRUp$vqNm~R_i8z$x*eQ4e>_DCkw}Isbq6Jt?A|2aOh&_r z{Nb=VGsVe^^cI*pVgrA2gTB`kE8j$G<4kM60@kozOgg+1IqRVd$H9L`>0Biq-J{4# zVenipx_OzoknnsPV-poM_$WC?>Gn(Re!n#ng!%LY#aX$TU(EG|(p81{u>vRMxma=J z>*nXTB&@whAl~prdLCLVGaDlV`wTP3=v zGAq)cnz2lNgdl2!Cf-8dlD7TJe)H!Pf6%R5TxKr8>y`FdE3~q_cdSe;4djF3ST!5$ zxxTgVXr#(FfB6c6L6a}6K!{%Hbf%=y9-^1lgW!UD$Tn{NrnfhOV-zn7E6UP@U5YYI zlCj?L>JFlko8a^i$05${I!qa1@dyH*8D<5AfkT<)+^Zw0O@dXZ{lpewfigpq_2?Rk zZ5r^Yau{}g+8{%eBiPE~FYE;v3y`Z`d zVV=PUSDgJ1#!JUwG;2Q*W@D(81+zS9mIz0a>+=OjF(2vPDWP?Q#c_lj%FH<^6dU3^ z0u75S#{s?KwNe^&xD`-D;a?d45^*jp#_>l4kk$WNMC`D5lU$F%-vU_kVdoL(yNN6| zirCIkW-dc%|IqSa@+S;XqoyF}AxE5_CU6Gk7@zuuOG&dpAtfU%dNZs%Xg>q_{D}|6 zL7HV8x>_t5Q`S57MEMFfO_~+Ck5Pz=`?naE|Em})O^)BzEmgFcnFb;%RP4WXbokG; zh#Glsuq$=)`t#^*bHRINbaZjQ^S%U_veC96>DS7q(=%;tcs6bSSm15&(W>!N=z4g2 zo7xx3zCvy?bCz+m&Sd#mcW4>^8Uq+xxK}(2oi-G_e99aeICox-$}2~-7{+H5GgfhF z2y5Ub46n9y!rKnU^jWV|R>Ls7+Yl4G<`ou30FxosA*u3usoQNMB&PMbTwV75c;Akl z`7GY@DFH0+hz`>KuqDNPSHuY(J4@0D-knGBi<4@Es`tRY9WezqMH^~<;4vK=!L?tj z9fgQHXo%#g!)cf^1}nHhE1E%Ud@;bQ3cll*mRSN*Q)zoJv{ZRp6tiZtaUVs=;M~86+2Y={<&-2^3bwFS$epC~Aja^ThmwIr>Co0}S}X+(bHE(J(PI$}0qb*tE&b8*PwDfN zw$2FIuXieHN}xxKdRBNxjAr%U80m>XkB;n!Q?OJ1sJNqJBm7&17ifrufnCIqjN0q_ z-K&y^%D;4|=AQs{yu1F7j`xYpMmDnl2MPB=?HvD+#}}nE6@xE-S%IGM$BHMF|ABZa z2U>yt|FB}z_%L+j5b7knG5OBMm%?ju>UJG(WYwnE7@_TxABaay!W%=j&0N;B4XL|5OptsfYM)9Y`XI}HFX>0|XIE55II0*;_IHUQ%{uU*_)*?Z_3?xYz>jci1HQxYdH;=z)?jt}jUG`=1Y#~hlSwwk1fjx1k#j16k_;UMm?@1HXt8Sv zBE^ByMUYx=IPOj6c&SUx8RsRzNCjcHozL~wEmzrNHQ?iVKz5jnEXMl4%GS=>IhzH@%dk<4Pl7`3t0jW zxmdP3I8YIs1SmE#)qCX{yGk1L0b1Y!%kj$Gy4A|G&_NXje5WY3ICO!Wm};GjD;z@q=BjKtR#4pp-T-BS zC=*NUTx%)~NviD<3nl>+gQ`Qf5|Jv}5TxOuUyX{-_D4}ONELCBL#tMi$~c^AkJ}vS z3QKQaL+O)d*+>>v7^n#%bcha`Ef3u=Zwlr<$%=3_X$64#cA^cp<%ih>r|gAD^`5wu z*EhTZG6Rjd$=Ya66EP@Y@K`LPN7JPlEL$~M7L&?!B)(z1Fj*soNyuUDlO`1dPOu0!+3y@v?xxKBkG#`RDEpQ;V=Xf#9=(f z{`0Z&Y{r#x4CGNYWdk3ej7p~39 zm*SGvM#pGo@xg^0o;HLGFpvZ}FBiy;CtummwmAC-rM{z4Lwlopt%^1iR=(k4(s zW)#ZCae-8LGU%2EBuLNH8HnP_2jms1Bj-_OUX{|yi3n<}KDY{mb)Ez;Kn6M0RDiYe!`B5)bG68fJH)4{Qn8!Hfg^6mcF~A#^&VCxO z%a8gqf6-~IicP3WM0wNXN3Bmumz(TOkP3Df?rYQ3w-S2aVDm` zOj5)-Sy8ihs2hSh-K%8 zBC(&i*FyJ;H21IoVKOe25X zx`1jD%8k2gAWq4GU87&-rDEvKgMgCY6AQ_y(9xf=y=I;fOisI@*pMuxP%p(&59M?C zq*SVrFLbK8m@EE=GiGxkmUxCDR`Ad%BDn{am-+wvI7)p|#C3g7Dy(xP}foWsWCW zsPg!hVS*FMo?h6t(-;97QUVxk*^gc4K@x;t&jFBVai6>fWGD$7*qE62ZtlN;**84@ z6*F;St6=&N2^Ja+;I%LgTxd|zK5T-SCXCb5&2_5bDgRL#1_xA1p$1e6P!a@BaNC(I0VO%=6PDWAW3yE^wA&agz;zcZRYhT%t zk+n$n)>NgU)du&d4(`y9gmyHcE#QmR@L|J??lQ%+pApcID01%1X#W&)*P|!P`*A2- z_F$TsQsJfYzhvt1fXz%D4We?9WWk5ef>7iD)HK$MQAc1CmGe1TAJWaX> zLYv^^jr7$C3wW#aS!jj?r^^aQnQZv*^q46*o>$*I5^TWz-(krr#IzGJ{tC;Nc~J2q zm4VJLkX1TG1=C8u(xp=PH(RI*WLA1rG@YGrGXh;6s5DP*xwlPW2)a~*CR&Nv|JP@J z&p|7^MllR|L8HJBQ^hT771;3Xf5ipKn29$zp(KbS;K8VHEX`cJqT$+F~Igj9~LN7=nvx|TBKbe5|6hIyPKwQ>jpO1vBh976sV}Ve%{@o&7 zG+^%`?lggX&dE>e;iZv`3@L(#WIrH6tc?t*0DqLSVhz<5gkNlWK-fmTd?PonDT0sW zd`>?d&K1i!9E(cLe;?`PXWG|6j6`TTmZ&vwnotjz*-;UKyRNMWL6Fr5!3@^Er32(R z;nzKtVcc8jVPX{je2$=B!JxO{G)P+sZ={4(zmdHM{0c_ok$45YgnT~LI@a0=#gnby?jVP1M(AdL_T$Rm9>g6PPC5@9j145gF?iT(w?kDSru zF{Ay5TRmu5gb>NQ5uYTgKS;?Ou_*kI(Y#{L5Tg}aZ;m|O+C3?dul@AWEBDN8<>1ElY|@|E|mcwD;} zf4q<%quEE!$M{Z4Fg(CQ-~{ySKctWc{u+Y$+cDwSf~s3+>a3CH6wi}Tz7KVXza7I7 zsqHr6%4-s0BD}pXr;CMg#kz%_*7iAO_(N?4<&0_7;dy`dl-Hzg^0YB_N4BlmOeBU?-}0|DFD{GP2_HkyKw&epqztdDqxJQH}g z06C+js+2+AR{-N5fhVKoth@}>(?UYI1_zYVz5jd}?N|PSE?aDh6 zA^WXJ*h0vupa^UUo1$1}iGJTSd+IGD=%n44k3ZBAO4wU9A;W=!V&HsNfww{2V|j8> z&KC|6ge(hG2OTOmtnX*B!I9MN`}Lr*T|X)$*q89xopG0DNV#=b`DuTG#YnR{tO`LB zx3-bNsd_7%a5nbKlTW%+8t%cGwdMMw)NM*G1jMz=?B)?yJxF+m95`(H`qw};w=6{(@s@Xz~nbB?W1Ac|;Rw>#GNLV(b?09RrU6Xv^cq^`k+sqc|{ z9G};$iGHh&<=+3F!9D@XcrWG$t-}`WLKml1m9YOsXFYOjjWBNQhp$(4E)KvoJoi}n zQelkUkEP%Gx^{6B3Tv0+vo*;c#|C>s6u?!c;2ys$Gk=`-j}%1z#c5?oq<;hD4p{BS z%V|LH%)Gf|ZS4(bL%kXSMe3JzATj{a7K8__TP;a2bB~kGbGQNQBIW>|8KH`Kb1cFL@p%$b$3)LHsLd@(vr;0|XwMAMc?Gd=Rb1UN+{NP z_GY1Ri!#}*<*x|gx>=hE`)8J7N3uk%U%x-?2>}d_ev2bhF!{jv(qz3K_>#bt`1Q!s zGXH!%a&f+6V)>}?wSU#XkVrhAG?8!)Y3#>QOBxLQq$&gV*y~cGdP+fdB}YR^HX}xV zmZ^a@3YZ2^L$!oBYKSog>X_u|>`(VRXXMUfdq-L$G3+2|<17pc`U`Frnk+ya=Vy+K z)aELF(*cQaSf$!ex( zsQ-kd28QH4OLsw2EM%dpvh?hN73B?d0Xq^$aI~PKK4@V7y!Hc;-Ii2@w_$&LPm=+02_eo9W*+Q^X5f!k(i&8QIM0e zgu|c;ppius<)ziL%5hPlVNW1OG;r`rR|dePez??hg|3*VpeH_20uRRpIS=x@xFg9C zgo5L%BY`et)j3YgvQJ97G}QXa0LgjJL#&;)TAB#RqeGYPYDdK^#i3u`ecL6DiV>$p zcoT#5_#vVHSaC%0K+e5eAz&5n!iEf-<3FUyCShYGl~hz3&Y%=RGSZIUc`v(Uz@*;2eijUwbQ`$jm8 zB?K$vdslGm+qEA5TEd!?(M&`u_N_%N&t%@CyWM2rWJA#URE()TH0D2 zAf+X((7!2(ixZ$|0>s^LagW4{zrX?yUNqEiDu8{OCo(S0iM~kSr$mc)&miTppj8Rb zS(pRyK2BT@`>6?yws9Etzi85cC@0_=L%f<~M)#7P-~X-oE2mqBj|8ftr5 zYM~mB-*_E|PLZABNeVe|ks%snfm1dz6{@Cd;;CJHZV0!+rHTBm>)D^!zpVN?eEqEL z8Afo_D^sZH3v$(Kai(;?lGrN3vg=IeB|)Xq7PMVXp&mM`{0#U7yhPHG+pb1Q@9xLx z_bdKqpx!&Qig7_sD8ix~Z52*X8Ws}-69VU2yD0gHB?c9N%)Cc^E1d;{>#uY%>e`CAH2%WkfMIE;&(chh(ca+(N&r92(U*wPDKmt|{LwkHC&5XYecH%K zSk}_iI#Xm)z%qD~DgsM#(^IBI>pT$235EBhPB0Sg!UemzE^<9|r8G2GqxC+EI? z{8vA|A|Xk`K4AB%6WIUgUgc`;=4S0+`PV+H7L6^J?>rd2J7q@gdls;*&hiJeXB73@ z3RHH$n*@L~egUz6;7&p)P~0Kkh?+>V$hf-1ynFuE*XuewrpTOw=#h_@Y9a{795fFi zPD@Y6bw9saX7_5$!IBmc#X@T&$QOY7rStvjK#;^u^WCZj8%M70o)V zlj0MElr&15VC>;c#e^t9r`O=3)irFKF8T)N&|~AdoR?`te(FRl@BC1z7pELZ=Ebhq zge(k%W3g!q&)Aq3DoWzZMM9AiNSthC{u~~V=){XnGysLTfW0!i%q&bH-qBl-n$!;$XZeRBiiB)FQ;2h3IM9 zK+-*zf}r8R56F=$$aAc?@dRyW-o=@?7z{pehQ|TmOgZU<SE>!fOd}ceS7|*vs&E& z{pa?|Q=KDK5MT?cR^Z>C&Z>X4p!#fXqWT{veC*tS%@7L$$ed5_;9-*LfmsZzXc8L^ zVONSsE3y*-C2I?CGt|t>Pj+oCoUR8d(lgSEZGXHOrd^qWKl|<3pfvXLFPF@Se}r$D zj?%#J!^C1`UBabYZ4?_+LcSo0M#K)2nN+Yf%ABA8ZcW>^_NO~KXf0buo_9Aqq{pJB0`stV%ff*Y}nsH{?oDFy!o!Cz*d~U;Xpvp{>L#3VCPviV-vf- z`f+Zh4LE#fAsGGfC5k3JN7gR61p}3CG^}|F3Eu|$FGH!*2&Qr?f*XOoYIH$t7Z&kT)J;&gQFKl<^U7zV*vi+vCIiC=oA z!c1vnpHZZO(04LXk2YJGbrvmX+BMQTa;vD|eSNCkH{J9xV_=6WsZ0iAao{HExzb$@ z*%*YVZp}%wVmJxsBF;0TLE0N#@x3CVVZ`tfG|8lK_V{{sQYqNtf~r_!mnZGLBR15= zjTt0_Q`mGZl#j<)j%@KyuW(rLqzlB$Z7tZJqg3c!`613CBw9y;jz5;k&}4v=AyGAwcyCAp~$gP zMlr1nzLm{3l1Z;(IE{*n$tnk3s~-49H`li30eLlD;iwt3RMwy$7|MGVtm`mZilCau zR#@F;X48X?aR1hw@N5vs=LsrsFJ^J5egjsv`}qA5#@)LIv97j4k6WO9=%O@A(;JpO z&(zDE6+c5l!&&EUf``$o;NA(We0)Mzquc$cU(YwI??nb|*9XLf(iO@=(HdqOrT_AfoUb$f|iP><0wOr#99uok@@jkfkChxASA1&>DhSPm{f)4Tsk*~9NRA@4h)sy%vUi=AL)^}+_ ztp>YlMoxzVY4?I@s$_Sg9``PbP}cWaOq{kJ*rdUa_wrR6cMdW zEWTM>*N#S+J>C_O1c0Gzl+2wdd;X5Vt z7}>LcZ=a#c&GJP!5$Nv-XZg1$og)=5M3S9Sq^Gf~7N6kvkrljMuoonXC8?_x+I`#A zI{kLIIv8v(80q%ey8hN9I8;5_)ON;j(mrwU!>JBbb0Unp#8^3`VCbY3@)DblO$INN z-&i*V;on!b=3zEq5HL#IufRZD--!~5dv|RZ2wGq_T846yrRlSfHF}p3!Ln$>KFbOZH_Jj$;p5J`$)VVq%1STjt;ZJ) zv*k>9kpzvU@X&%)POh<8WxlRxNjk^FnJliH8Oy8?npkBe{i1mb7Gn+C1TP=8nX(oh zmWa)lLZlsTU^rQzqLa?uzmJ(d>Me&mg360NdOP`w7ymVzU*q40VO*0DwbyB6rwr&R4g z7vh~Pe2mAmS$sjJkZMm>1Q(YW5257hhFn1Q3LeAxVP~AJ43Gj7=+6gtZXkvBq?ta= zUQ3SqiZ#h3Cfjtn@@1}|*l9?ixlYWiQ&goLmMja~p+7Rfph07fTxQ&!W>ZwcqilMG zU@R1&l$8wQfneB+^cPdM4c%5!i?fKCePTtKSVq53Xu?Lq0)<)fwY&Z)ikNq^xRDw_es+ z(n-ftFI zG0UdTd~*zz=J&&~+;vY>8Vvgz9Du%WTik6uCgMoZXCVJ>-f2>@s!{)n@HitFp1PRoP|Fd>HsOyJY#$>F=W2G%OjG5l^VNB4nhJSRL(}rEQz& zpFhZKltxbro1W9iP;GgC?$}l5hLF)mw1kl^Av}NSmR2<_^+PoP^bAi)b0$2SXYhd{ z63fDJ&%*$u_fJd&62v0E4hP$7$O<4=urEu&#CvPI#8@I(5ATSO2jq&0krfvjKP^^V z9+{m;H?GaG+S>E3;D+xBagAdRqA>--<=W`_qApUuOEPRg=dJ!rD zol}cqrD`dq?cVMQNva5rO*b)taiGVFwFIFN0%qw{fp}UI0sA)Ygwq^^UO5sJZKs*$ zL)F58C&hehP1(2ZuR(~Tg!;l%3&mr6Rm1poi!!vX9WL9)k1>j@2PUDS!RDq*%Yq6EEDPI|ky zP!$}PZJY4pr>ng`a#gzsRs4K;X=Q4_sndfq*SY1Ize6fXt8+8GB+EHy@ym75rvaM| zGppN3aS<}y4wf>hcv`8bWWYZ(#o%(3UQF zg*~8P6QFRMe+d60`LDM3e~oHxLW4sv3x>q!-od;53D$fFD~t$f5L(-1S$#s!07^UZ z4e{8@cOL~lPSdf^wQkqT`~*TrAr3~>b9B`6R1`33Rs02EIo*An9OUDCwS0oskh~qi zlw)K(ZXP?%V>OFVOh^=WL`Ru3x2K!kmeZ}|(hl6-P)9=s_!GH8GyQHm(O7g_OlT>l z&Nx)n`rUGVowLl9MK4?z=GfM+PvtT+IPCZJweu8}TNwMCQAwHs zFIT>y+qH+0HQOT*A4uI%7ZeXhzXY~feK;D+CZT`br;+{ouT@&YTzI4{uqG1;%iIRFPk;xno9LgriS64=(#rK{1cI~@#W{e$wEO*4C#G#EO5Mhxq%)P$J|vYE5r?MI{N?D1M!oWYv+8mIE4g~Vm6S~8^o7g4 zXmo*igk01#DLauPtqB|bELKE$5U(6J5AXR(iUK4zrOZ{BB3GAUz|Oaa%m5!w0$65R z|IA>T3Hmxqh;NW_R#9-yGO&)T4D`HTem%_;^J0G90&ECD?odf_ZN^^`CZ&{f;u2b0_9VI&?~Yy~nO|==*6-Fm3s0Cwpr{%wV@JOJ2JpD)eTYS0 z{cbV2aQbP|Mb&T;I}%3}h>y@CBV|H8dna6(+PABgUfV0|8;oIe#P#g<_WO?f!@V`v+1p zaimEEPjZC@XKcd@)~#*~-1@}=jJ+bS0aGmsnC*r-f2KOvJieOFRxDii{T}Q5 zLvhX&>(kB*-(8D7_ivb9C@RCA;~HnEV`YwuQ{gP%Pdm6>w=L?HuQ0Vp^0i^H`nkNx z{a>bkuVET`YWnUFe&IW*jPv;Dg;$V7z{lT1f(BJG(EI7Bf9uwAw&%mCX`|jX< zVAoMspKoeuREvwX)Gxq(Sqt@aJ@$lpyxM;~T`z*jz%ta0x7Lr~YHL)03uR*@#y-s( zx=#I3u>Ar5&l#(5e8sW{5(FfK1Ox;dIAZ}DcmFj_0asqY^V7lD+K$P_$=vcv!`2C1 z9Ye6ohnv=Z28D(Z1A4HFt-qL2lpc)B`g>^#S21IqbC^uB0(use@#n=fKyKm-$YZ#G z??(fMnp=*u(tHq~iiEHfGzvTh&M2A9EvEp6A^7d)RxzwnNTT7l%dPdd-kkd_*I8bl z6NkdFLc^iCJ2W3y76fo}Pmzb_-YJKcS|^?=*-K0=H;~h|j=?<;TQDnx$-<^36P-@G z4w)TzhL|9Z@i2~bT{vuB0?dG5o4rowGZ+>OWJTi5k2>-h;4BD21?e?T-hrRk266-X zSt|w9&2r9Qjv+kp;)nQGQj?(ZnUvM4?uE~=KW&)G(3uG9Xv+dz8(M7B%k#*cqKinz`yg^NnYPP7;cul*9t{TlzKJgpe%o2T-nU)jMh zI*oGt-b%vsfjUUcyMuj#<0M8B5N(Kkf`7&_EM~yUqfgJOw7=!45wtDA3rE-NoFp7? zN~}W{`$orUS*r?@!ngcubG!aB;;8=-8ax%#M&1O4qC|3p>9@_~QioYu46|~sT$;}t zs5}ywR+2S#ZS`wylGcKfc@@m~ZNWRfU7^zk2BBVX8C*}-$U+u&7 z{q9dbsm&tnWU?gvs^|hOJcu-$x|n>iv-u@PEVy zey&@>uS@fWx@Z9b4IW|n&N856hhv*zRxUlvZiefEXdXs;iu>tiJ84y}b_99q2KUGL zu5Cppu<=!ac7?DCA3@0S>gC6p9b4ET+HcOT)`07yc2Ubk%!{c0;_OQLrK9sn+W3>Q z?4aKNHK&?e>u#04lMYc(Svl$ToON%kc7?xuqjpri5qM9rk!{A>g&(pm#=oEJTbcGb zCs?p<70YDX7xN6yKH*~V>GC$}Y*Oj)ZAxdm@P0v+OMHpeeRH+X4u{nAS!Vp^o)^h3 zyzQxA!*$h$H8VM*`Q~*h$FaPa^|Y_UccbzA#C;4C_WZ1TwZ4RVp6~KS7rQIsUYaw- z+!N^icUQ7E?q1VJf2KElF25bNZT+#Afm{4iuzXO1!Oa7gZ&sX7cH{pbq{hx)a4NE4 zYn_5&b!yJrO*isIZ}OR~OPKfK!J|2$OD+m0Ed4K+mwiEDyL5BsJGNx5Zq1?|!3gEU zk~3e(Np$c0v`XP$VroR+2dmms6RwzuypiD2Ib5jouwq_9<{9P}>`71Bdr#|L;*EcD zsXu<|#O-N^pH1PM_V%vwoc43RXVwefZeNm?)+;mBHuKYzIlGsg+f#k*P1B+3HAlBi zx@1&cS?c@tk?N1CyK)Dk-+x{|<%vgd@#$CB+U4q=T-^FvuDa&&vgPyYp51&tuYO_i z>1)&D>QZm7UcdL}wcFPBDz|4pU)OJU@AJufwZHBEzBzq3{;P~-)tc`W_h06ptNDHR z```3>i~5I;*6)w~^|#;t|DsaE1H4o0GGcGAw5hfzS4D{*HVbZ?_~CI;>ESN1m$9qc z`p-vCo|JfVLuK{%37kLA6)V3w;=FREaQZi2D}V1`t=(G>-TEJ#%G|2@%8Ku$OrC{u zddts(r(S#|8~B$su}NhtXv9kVH}3d$$UeZEkx7IZG(671@NkBC#M+>x6Q=@OsHcEq zZlG=l3^V}67#O0RfrG)Rc_r~7l?AEAv7pu&x&f7H-VQ&2O78*3k-1^Ifpi1oF`yBU zHa@s%kFK$!jXO9KsN^D0qacdL=Rgs7-IJVO1RjY-*Z$@9ZSmJY?KvzA3<4wzM0 z?TG~i*jyd$VYBELuoYSlY=xp)J_8sK;F$xU5v936zhl#$*B~uq1ho7#&?*@e%MSvF z(!tsxK1VhLYbf-t7PIcwXJCj6Wo6(;F-eyPYEp4YWlk!1x)MDM&<~V^>2F|sYK@{9 z?RZIabI|8W5$1#y!puRML_yb%KJkLk?otZXjy4U0ZUXv51j2-}GN=hC(-P?V(MOFD z`Z+71`q9Ub(Tzawehbyql+-$7K#Dby1nRTq4ymTW?gPXcMPH@iEavd vR|{dvt0riupme;@^`o~35&B!(kg^zR>oCBZ6_|rSxk`{B5tu#7dq6w@19EBe literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeAdsClientEventDetailsBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeAdsClientEventDetailsBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..62bbb5ef14d6ff696b3c1490e6099a4f47601105 GIT binary patch literal 37333 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 lg{~jHJ&4es(~gwIP+Nxq-mJhJ1j v1ht} -import com.twitter.suggests.controller_data.home_tweets.{thriftscala => ht} -import com.twitter.suggests.controller_data.thriftscala.ControllerData -import com.twitter.suggests.controller_data.v2.thriftscala.{ControllerData => ControllerDataV2} - -case class HomeAdsClientEventDetailsBuilder(injectionType: Option[String]) - extends BaseClientEventDetailsBuilder[PipelineQuery, UniversalNoun[Any]] { - - override def apply( - query: PipelineQuery, - candidate: UniversalNoun[Any], - candidateFeatures: FeatureMap - ): Option[ClientEventDetails] = { - val homeTweetsControllerDataV1 = v1ht.HomeTweetsControllerData( - tweetTypesBitmap = 0L, - traceId = Some(Trace.id.traceId.toLong), - requestJoinId = None) - - val serializedControllerData = HomeClientEventDetailsBuilder.ControllerDataSerializer( - ControllerData.V2( - ControllerDataV2.HomeTweets(ht.HomeTweetsControllerData.V1(homeTweetsControllerDataV1)))) - - val clientEventDetails = ClientEventDetails( - conversationDetails = None, - timelinesDetails = Some( - TimelinesDetails( - injectionType = injectionType, - controllerData = Some(serializedControllerData), - sourceData = None)), - articleDetails = None, - liveEventDetails = None, - commerceDetails = None - ) - - Some(clientEventDetails) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventDetailsBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventDetailsBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..c6a8d943dc9a0a5d5a3a468b2ecfed1aba202144 GIT binary patch literal 37888 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventDetailsBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventDetailsBuilder.scala deleted file mode 100644 index 2e4c60d25..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventDetailsBuilder.scala +++ /dev/null @@ -1,92 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.builder - -import com.twitter.bijection.Base64String -import com.twitter.bijection.scrooge.BinaryScalaCodec -import com.twitter.bijection.{Injection => Serializer} -import com.twitter.finagle.tracing.Trace -import com.twitter.home_mixer.model.HomeFeatures.CandidateSourceIdFeature -import com.twitter.home_mixer.model.HomeFeatures.PositionFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -import com.twitter.joinkey.context.RequestJoinKeyContext -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.functional_component.decorator.urt.builder.metadata.BaseClientEventDetailsBuilder -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.ClientEventDetails -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.TimelinesDetails -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.suggests.controller_data.Home -import com.twitter.suggests.controller_data.TweetTypeGenerator -import com.twitter.suggests.controller_data.home_tweets.v1.{thriftscala => v1ht} -import com.twitter.suggests.controller_data.home_tweets.{thriftscala => ht} -import com.twitter.suggests.controller_data.thriftscala.ControllerData -import com.twitter.suggests.controller_data.v2.thriftscala.{ControllerData => ControllerDataV2} - -object HomeClientEventDetailsBuilder { - implicit val ByteSerializer: Serializer[ControllerData, Array[Byte]] = - BinaryScalaCodec(ControllerData) - - val ControllerDataSerializer: Serializer[ControllerData, String] = - Serializer.connect[ControllerData, Array[Byte], Base64String, String] - - /** - * define getRequestJoinId as a method(def) rather than a val because each new request - * needs to call the context to update the id. - */ - private def getRequestJoinId(): Option[Long] = - RequestJoinKeyContext.current.flatMap(_.requestJoinId) -} - -case class HomeClientEventDetailsBuilder[-Query <: PipelineQuery, -Candidate <: UniversalNoun[Any]]( -) extends BaseClientEventDetailsBuilder[Query, Candidate] - with TweetTypeGenerator[FeatureMap] { - - import HomeClientEventDetailsBuilder._ - - override def apply( - query: Query, - candidate: Candidate, - candidateFeatures: FeatureMap - ): Option[ClientEventDetails] = { - - val tweetTypesBitmaps = mkTweetTypesBitmaps( - Home.TweetTypeIdxMap, - HomeTweetTypePredicates.PredicateMap, - candidateFeatures) - - val tweetTypesListBytes = mkItemTypesBitmapsV2( - Home.TweetTypeIdxMap, - HomeTweetTypePredicates.PredicateMap, - candidateFeatures) - - val candidateSourceId = - candidateFeatures.getOrElse(CandidateSourceIdFeature, None).map(_.value.toByte) - - val homeTweetsControllerDataV1 = v1ht.HomeTweetsControllerData( - tweetTypesBitmap = tweetTypesBitmaps.getOrElse(0, 0L), - tweetTypesBitmapContinued1 = tweetTypesBitmaps.get(1), - candidateTweetSourceId = candidateSourceId, - traceId = Some(Trace.id.traceId.toLong), - injectedPosition = candidateFeatures.getOrElse(PositionFeature, None), - tweetTypesListBytes = Some(tweetTypesListBytes), - requestJoinId = getRequestJoinId(), - ) - - val serializedControllerData = ControllerDataSerializer( - ControllerData.V2( - ControllerDataV2.HomeTweets(ht.HomeTweetsControllerData.V1(homeTweetsControllerDataV1)))) - - val clientEventDetails = ClientEventDetails( - conversationDetails = None, - timelinesDetails = Some( - TimelinesDetails( - injectionType = candidateFeatures.getOrElse(SuggestTypeFeature, None).map(_.name), - controllerData = Some(serializedControllerData), - sourceData = None)), - articleDetails = None, - liveEventDetails = None, - commerceDetails = None - ) - - Some(clientEventDetails) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventInfoBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventInfoBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..c44601054ba9ee361338af338d62af2a7a2aa44b GIT binary patch literal 37394 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

`2|6yfOUdC80 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 C81~En literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventInfoBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventInfoBuilder.scala deleted file mode 100644 index f79b0d931..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeClientEventInfoBuilder.scala +++ /dev/null @@ -1,44 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.builder - -import com.twitter.home_mixer.model.HomeFeatures.EntityTokenFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.functional_component.decorator.urt.builder.metadata.BaseClientEventDetailsBuilder -import com.twitter.product_mixer.core.functional_component.decorator.urt.builder.metadata.BaseClientEventInfoBuilder -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.ClientEventInfo -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.timelines.injection.scribe.InjectionScribeUtil - -/** - * Sets the [[ClientEventInfo]] with the `component` field set to the Suggest Type assigned to each candidate - */ -case class HomeClientEventInfoBuilder[Query <: PipelineQuery, Candidate <: UniversalNoun[Any]]( - detailsBuilder: Option[BaseClientEventDetailsBuilder[Query, Candidate]] = None) - extends BaseClientEventInfoBuilder[Query, Candidate] { - - override def apply( - query: Query, - candidate: Candidate, - candidateFeatures: FeatureMap, - element: Option[String] - ): Option[ClientEventInfo] = { - val suggestType = candidateFeatures - .getOrElse(SuggestTypeFeature, None) - .getOrElse(throw new UnsupportedOperationException(s"No SuggestType was set")) - - Some( - ClientEventInfo( - component = InjectionScribeUtil.scribeComponent(suggestType), - element = element, - details = detailsBuilder.flatMap(_.apply(query, candidate, candidateFeatures)), - action = None, - /** - * A backend entity encoded by the Client Entities Encoding Library. - * Placeholder string for now - */ - entityToken = candidateFeatures.getOrElse(EntityTokenFeature, None) - ) - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeConversationModuleMetadataBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeConversationModuleMetadataBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..2daad79e04bc518bc49cbe006c15b5b3908b4528 GIT binary patch literal 37157 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 xe=??RC}2kIxk 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

}%B?z^g5l5}?^uCZQ1TRma?$#{ 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeTimelinesScoreInfoBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeTimelinesScoreInfoBuilder.scala deleted file mode 100644 index bc934414c..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeTimelinesScoreInfoBuilder.scala +++ /dev/null @@ -1,26 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.builder - -import com.twitter.home_mixer.model.HomeFeatures.ScoreFeature -import com.twitter.home_mixer.param.HomeGlobalParams.EnableSendScoresToClient -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.functional_component.decorator.urt.builder.item.tweet.BaseTimelinesScoreInfoBuilder -import com.twitter.product_mixer.core.model.marshalling.response.urt.item.tweet.TimelinesScoreInfo -import com.twitter.product_mixer.core.pipeline.PipelineQuery - -object HomeTimelinesScoreInfoBuilder - extends BaseTimelinesScoreInfoBuilder[PipelineQuery, TweetCandidate] { - - private val UndefinedTweetScore = -1.0 - - override def apply( - query: PipelineQuery, - candidate: TweetCandidate, - candidateFeatures: FeatureMap - ): Option[TimelinesScoreInfo] = { - if (query.params(EnableSendScoresToClient)) { - val score = candidateFeatures.getOrElse(ScoreFeature, None).getOrElse(UndefinedTweetScore) - Some(TimelinesScoreInfo(score)) - } else None - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeTweetTypePredicates.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeTweetTypePredicates.docx new file mode 100644 index 0000000000000000000000000000000000000000..432d8595c14d27ee76d63d7d20ede4ac71a36072 GIT binary patch literal 39620 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 LxQBk~k6-@>qk=z{ literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeTweetTypePredicates.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeTweetTypePredicates.scala deleted file mode 100644 index 7272c360d..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/HomeTweetTypePredicates.scala +++ /dev/null @@ -1,256 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.builder - -import com.twitter.conversions.DurationOps._ -import com.twitter.home_mixer.model.HomeFeatures._ -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.BasicTopicContextFunctionalityType -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RecommendationTopicContextFunctionalityType -import com.twitter.timelinemixer.injection.model.candidate.SemanticCoreFeatures -import com.twitter.tweetypie.{thriftscala => tpt} - -object HomeTweetTypePredicates { - - /** - * IMPORTANT: Please avoid logging tweet types that are tied to sensitive - * internal author information / labels (e.g. blink labels, abuse labels, or geo-location). - */ - private[this] val CandidatePredicates: Seq[(String, FeatureMap => Boolean)] = Seq( - ("with_candidate", _ => true), - ("retweet", _.getOrElse(IsRetweetFeature, false)), - ("reply", _.getOrElse(InReplyToTweetIdFeature, None).nonEmpty), - ("image", _.getOrElse(EarlybirdFeature, None).exists(_.hasImage)), - ("video", _.getOrElse(EarlybirdFeature, None).exists(_.hasVideo)), - ("link", _.getOrElse(EarlybirdFeature, None).exists(_.hasVisibleLink)), - ("quote", _.getOrElse(EarlybirdFeature, None).exists(_.hasQuote.contains(true))), - ("like_social_context", _.getOrElse(NonSelfFavoritedByUserIdsFeature, Seq.empty).nonEmpty), - ("protected", _.getOrElse(EarlybirdFeature, None).exists(_.isProtected)), - ( - "has_exclusive_conversation_author_id", - _.getOrElse(ExclusiveConversationAuthorIdFeature, None).nonEmpty), - ("is_eligible_for_connect_boost", _ => false), - ("hashtag", _.getOrElse(EarlybirdFeature, None).exists(_.numHashtags > 0)), - ("has_scheduled_space", _.getOrElse(AudioSpaceMetaDataFeature, None).exists(_.isScheduled)), - ("has_recorded_space", _.getOrElse(AudioSpaceMetaDataFeature, None).exists(_.isRecorded)), - ("is_read_from_cache", _.getOrElse(IsReadFromCacheFeature, false)), - ("get_initial", _.getOrElse(GetInitialFeature, false)), - ("get_newer", _.getOrElse(GetNewerFeature, false)), - ("get_middle", _.getOrElse(GetMiddleFeature, false)), - ("get_older", _.getOrElse(GetOlderFeature, false)), - ("pull_to_refresh", _.getOrElse(PullToRefreshFeature, false)), - ("polling", _.getOrElse(PollingFeature, false)), - ("near_empty", _.getOrElse(ServedSizeFeature, None).exists(_ < 3)), - ("is_request_context_launch", _.getOrElse(IsLaunchRequestFeature, false)), - ("mutual_follow", _.getOrElse(EarlybirdFeature, None).exists(_.fromMutualFollow)), - ( - "less_than_10_mins_since_lnpt", - _.getOrElse(LastNonPollingTimeFeature, None).exists(_.untilNow < 10.minutes)), - ("served_in_conversation_module", _.getOrElse(ServedInConversationModuleFeature, false)), - ("has_ticketed_space", _.getOrElse(AudioSpaceMetaDataFeature, None).exists(_.hasTickets)), - ("in_utis_top5", _.getOrElse(PositionFeature, None).exists(_ < 5)), - ( - "conversation_module_has_2_displayed_tweets", - _.getOrElse(ConversationModule2DisplayedTweetsFeature, false)), - ("empty_request", _.getOrElse(ServedSizeFeature, None).exists(_ == 0)), - ("served_size_less_than_50", _.getOrElse(ServedSizeFeature, None).exists(_ < 50)), - ( - "served_size_between_50_and_100", - _.getOrElse(ServedSizeFeature, None).exists(size => size >= 50 && size < 100)), - ("authored_by_contextual_user", _.getOrElse(AuthoredByContextualUserFeature, false)), - ( - "is_self_thread_tweet", - _.getOrElse(ConversationFeature, None).exists(_.isSelfThreadTweet.contains(true))), - ("has_ancestors", _.getOrElse(AncestorsFeature, Seq.empty).nonEmpty), - ("full_scoring_succeeded", _.getOrElse(FullScoringSucceededFeature, false)), - ("served_size_less_than_20", _.getOrElse(ServedSizeFeature, None).exists(_ < 20)), - ("served_size_less_than_10", _.getOrElse(ServedSizeFeature, None).exists(_ < 10)), - ("served_size_less_than_5", _.getOrElse(ServedSizeFeature, None).exists(_ < 5)), - ( - "account_age_less_than_30_minutes", - _.getOrElse(AccountAgeFeature, None).exists(_.untilNow < 30.minutes)), - ("conversation_module_has_gap", _.getOrElse(ConversationModuleHasGapFeature, false)), - ( - "directed_at_user_is_in_first_degree", - _.getOrElse(EarlybirdFeature, None).exists(_.directedAtUserIdIsInFirstDegree.contains(true))), - ( - "has_semantic_core_annotation", - _.getOrElse(EarlybirdFeature, None).exists(_.semanticCoreAnnotations.nonEmpty)), - ("is_request_context_foreground", _.getOrElse(IsForegroundRequestFeature, false)), - ( - "account_age_less_than_1_day", - _.getOrElse(AccountAgeFeature, None).exists(_.untilNow < 1.day)), - ( - "account_age_less_than_7_days", - _.getOrElse(AccountAgeFeature, None).exists(_.untilNow < 7.days)), - ( - "part_of_utt", - _.getOrElse(EarlybirdFeature, None) - .exists(_.semanticCoreAnnotations.exists(_.exists(annotation => - annotation.domainId == SemanticCoreFeatures.UnifiedTwitterTaxonomy)))), - ( - "has_home_latest_request_past_week", - _.getOrElse(FollowingLastNonPollingTimeFeature, None).exists(_.untilNow < 7.days)), - ("is_utis_pos0", _.getOrElse(PositionFeature, None).exists(_ == 0)), - ("is_utis_pos1", _.getOrElse(PositionFeature, None).exists(_ == 1)), - ("is_utis_pos2", _.getOrElse(PositionFeature, None).exists(_ == 2)), - ("is_utis_pos3", _.getOrElse(PositionFeature, None).exists(_ == 3)), - ("is_utis_pos4", _.getOrElse(PositionFeature, None).exists(_ == 4)), - ("is_random_tweet", _.getOrElse(IsRandomTweetFeature, false)), - ("has_random_tweet_in_response", _.getOrElse(HasRandomTweetFeature, false)), - ("is_random_tweet_above_in_utis", _.getOrElse(IsRandomTweetAboveFeature, false)), - ( - "has_ancestor_authored_by_viewer", - candidate => - candidate - .getOrElse(AncestorsFeature, Seq.empty).exists(ancestor => - candidate.getOrElse(ViewerIdFeature, 0L) == ancestor.userId)), - ("ancestor", _.getOrElse(IsAncestorCandidateFeature, false)), - ( - "deep_reply", - candidate => - candidate.getOrElse(InReplyToTweetIdFeature, None).nonEmpty && candidate - .getOrElse(AncestorsFeature, Seq.empty).size > 2), - ( - "has_simcluster_embeddings", - _.getOrElse( - SimclustersTweetTopKClustersWithScoresFeature, - Map.empty[String, Double]).nonEmpty), - ( - "tweet_age_less_than_15_seconds", - _.getOrElse(OriginalTweetCreationTimeFromSnowflakeFeature, None) - .exists(_.untilNow <= 15.seconds)), - ( - "less_than_1_hour_since_lnpt", - _.getOrElse(LastNonPollingTimeFeature, None).exists(_.untilNow < 1.hour)), - ("has_gte_10_favs", _.getOrElse(EarlybirdFeature, None).exists(_.favCountV2.exists(_ >= 10))), - ( - "device_language_matches_tweet_language", - candidate => - candidate.getOrElse(TweetLanguageFeature, None) == - candidate.getOrElse(DeviceLanguageFeature, None)), - ( - "root_ancestor", - candidate => - candidate.getOrElse(IsAncestorCandidateFeature, false) && candidate - .getOrElse(InReplyToTweetIdFeature, None).isEmpty), - ("question", _.getOrElse(EarlybirdFeature, None).exists(_.hasQuestion.contains(true))), - ("in_network", _.getOrElse(InNetworkFeature, true)), - ( - "has_political_annotation", - _.getOrElse(EarlybirdFeature, None).exists( - _.semanticCoreAnnotations.exists( - _.exists(annotation => - SemanticCoreFeatures.PoliticalDomains.contains(annotation.domainId) || - (annotation.domainId == SemanticCoreFeatures.UnifiedTwitterTaxonomy && - annotation.entityId == SemanticCoreFeatures.UttPoliticsEntityId))))), - ( - "is_dont_at_me_by_invitation", - _.getOrElse(EarlybirdFeature, None).exists( - _.conversationControl.exists(_.isInstanceOf[tpt.ConversationControl.ByInvitation]))), - ( - "is_dont_at_me_community", - _.getOrElse(EarlybirdFeature, None) - .exists(_.conversationControl.exists(_.isInstanceOf[tpt.ConversationControl.Community]))), - ("has_zero_score", _.getOrElse(ScoreFeature, None).exists(_ == 0.0)), - ( - "is_followed_topic_tweet", - _.getOrElse(TopicContextFunctionalityTypeFeature, None) - .exists(_ == BasicTopicContextFunctionalityType)), - ( - "is_recommended_topic_tweet", - _.getOrElse(TopicContextFunctionalityTypeFeature, None) - .exists(_ == RecommendationTopicContextFunctionalityType)), - ("has_gte_100_favs", _.getOrElse(EarlybirdFeature, None).exists(_.favCountV2.exists(_ >= 100))), - ("has_gte_1k_favs", _.getOrElse(EarlybirdFeature, None).exists(_.favCountV2.exists(_ >= 1000))), - ( - "has_gte_10k_favs", - _.getOrElse(EarlybirdFeature, None).exists(_.favCountV2.exists(_ >= 10000))), - ( - "has_gte_100k_favs", - _.getOrElse(EarlybirdFeature, None).exists(_.favCountV2.exists(_ >= 100000))), - ("has_audio_space", _.getOrElse(AudioSpaceMetaDataFeature, None).exists(_.hasSpace)), - ("has_live_audio_space", _.getOrElse(AudioSpaceMetaDataFeature, None).exists(_.isLive)), - ( - "has_gte_10_retweets", - _.getOrElse(EarlybirdFeature, None).exists(_.retweetCountV2.exists(_ >= 10))), - ( - "has_gte_100_retweets", - _.getOrElse(EarlybirdFeature, None).exists(_.retweetCountV2.exists(_ >= 100))), - ( - "has_gte_1k_retweets", - _.getOrElse(EarlybirdFeature, None).exists(_.retweetCountV2.exists(_ >= 1000))), - ( - "has_us_political_annotation", - _.getOrElse(EarlybirdFeature, None) - .exists(_.semanticCoreAnnotations.exists(_.exists(annotation => - annotation.domainId == SemanticCoreFeatures.UnifiedTwitterTaxonomy && - annotation.entityId == SemanticCoreFeatures.usPoliticalTweetEntityId && - annotation.groupId == SemanticCoreFeatures.UsPoliticalTweetAnnotationGroupIds.BalancedV0)))), - ( - "has_toxicity_score_above_threshold", - _.getOrElse(EarlybirdFeature, None).exists(_.toxicityScore.exists(_ > 0.91))), - ("is_topic_tweet", _.getOrElse(TopicIdSocialContextFeature, None).isDefined), - ( - "text_only", - candidate => - candidate.getOrElse(HasDisplayedTextFeature, false) && - !(candidate.getOrElse(EarlybirdFeature, None).exists(_.hasImage) || - candidate.getOrElse(EarlybirdFeature, None).exists(_.hasVideo) || - candidate.getOrElse(EarlybirdFeature, None).exists(_.hasCard))), - ( - "image_only", - candidate => - candidate.getOrElse(EarlybirdFeature, None).exists(_.hasImage) && - !candidate.getOrElse(HasDisplayedTextFeature, false)), - ("has_1_image", _.getOrElse(NumImagesFeature, None).exists(_ == 1)), - ("has_2_images", _.getOrElse(NumImagesFeature, None).exists(_ == 2)), - ("has_3_images", _.getOrElse(NumImagesFeature, None).exists(_ == 3)), - ("has_4_images", _.getOrElse(NumImagesFeature, None).exists(_ == 4)), - ("has_card", _.getOrElse(EarlybirdFeature, None).exists(_.hasCard)), - ("user_follow_count_gte_50", _.getOrElse(UserFollowingCountFeature, None).exists(_ > 50)), - ( - "has_liked_by_social_context", - candidateFeatures => - candidateFeatures - .getOrElse(SGSValidLikedByUserIdsFeature, Seq.empty) - .exists(candidateFeatures - .getOrElse(PerspectiveFilteredLikedByUserIdsFeature, Seq.empty).toSet.contains)), - ( - "has_followed_by_social_context", - _.getOrElse(SGSValidFollowedByUserIdsFeature, Seq.empty).nonEmpty), - ( - "has_topic_social_context", - candidateFeatures => - candidateFeatures - .getOrElse(TopicIdSocialContextFeature, None) - .isDefined && - candidateFeatures.getOrElse(TopicContextFunctionalityTypeFeature, None).isDefined), - ("video_lte_10_sec", _.getOrElse(VideoDurationMsFeature, None).exists(_ <= 10000)), - ( - "video_bt_10_60_sec", - _.getOrElse(VideoDurationMsFeature, None).exists(duration => - duration > 10000 && duration <= 60000)), - ("video_gt_60_sec", _.getOrElse(VideoDurationMsFeature, None).exists(_ > 60000)), - ( - "tweet_age_lte_30_minutes", - _.getOrElse(OriginalTweetCreationTimeFromSnowflakeFeature, None) - .exists(_.untilNow <= 30.minutes)), - ( - "tweet_age_lte_1_hour", - _.getOrElse(OriginalTweetCreationTimeFromSnowflakeFeature, None) - .exists(_.untilNow <= 1.hour)), - ( - "tweet_age_lte_6_hours", - _.getOrElse(OriginalTweetCreationTimeFromSnowflakeFeature, None) - .exists(_.untilNow <= 6.hours)), - ( - "tweet_age_lte_12_hours", - _.getOrElse(OriginalTweetCreationTimeFromSnowflakeFeature, None) - .exists(_.untilNow <= 12.hours)), - ( - "tweet_age_gte_24_hours", - _.getOrElse(OriginalTweetCreationTimeFromSnowflakeFeature, None) - .exists(_.untilNow >= 24.hours)), - ) - - val PredicateMap = CandidatePredicates.toMap -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/ListClientEventDetailsBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/ListClientEventDetailsBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..94bfd7884e0dd42c7cf6aed7eef6d4c21ac607ec GIT binary patch literal 37143 zcmagEWmsIvwm*z(a1HM6?hb+A?h-U;Bf+8Z;O_43?(QCfy9EgZcmH>0=A1Kg?!E8( zW%tunwSKbJ?yB0mOGy?I3KI+r3=V83g1`G@X)T%2Eu=`?W_r*}n z-QLVepUKVErZG`oaa9EM>)8ud60;DAr#K2$*^WJpJwq&>M0NTNkMYX>yYMo%0R}+=4xWtLReuic~8Dz0n{(2tMsX6zaWGt!7qVz7|+#pO% zONQ6`X)bV<-I{(rL-e3Cu^b)$M6Cy~DC){+4Rqq6AUGAlG3b!${2A`t4sv@nm7@{r zUHZ>^V@fVB6F#nF58}R(SuaaWR2rGq=?HCpJSm|@=ju{ljT+(xoN8Sr>FXUW)E(+p zdkc}>h7bX$-+$QlFu9IvvLC_Jl}22v>TIA}1^qYySO-$o%pO8!X};O<=NzwU(0}gG z(T-B{wmb@u#`CxnN6t9z@u#J(C)H1YNn`7XuJj7L>%Y6BEsUlRdRPiExSN}mx1CV; z9YOiZsV-cr(k>dEG|JA){pN5aPUd}+6R5k)E1}@sAz>&;<0mrUd4GZYwEqcu1^51) zU)7!Tb7#?>^QwQIi5x=`t?o-AVF6lq?58KsN5tat_Yy+A&x^(Dd%|OPWO+}R@&;f^ z|EQunm8{4;sCpX^U|@)#PeVsD8z*L_-`C2x$&Zk%sJ>@Hk|UJGc1`LM1rWeI&P>|UaSvt1MOh4g&wSUad{qi-vZ?HMk`B z4nI;iwVgn1o3!v7a%2%Rsyi-o4H6;x4U9ou+WONO(JC^BGWr&_D??1(+x~0_>fbO#qH&zi;x)xN(Jk z7F5YQFUdK1jnFGpI7t~g@T0Jg(wKfrt+yPU@;2jHT$7u-1-3dl^e#l3{KHrFLhIa( z&5$NRaY4kvv1fj!VTjsTudBw`Yfo8{bi9>`fqiE^kF%Fl7JMdSJ>klD?+|LTAZ5~7 z_2m{q_{az9I63CNPLXD|s1)TMim9T>FMrh#iKA&FMqf(Y4uA@+oQ=Ps}GP+2PyE^ zhe0Ei{R}gj8W=W$6PE|*cPQZOBFd>Mt}PmDTVW?ojt-mCE|B`=@0x?(At$}hojEC~ z5b@82Thn#f01On?4$sZ)tT8%K`U-zBZDFs$cxf8vp-%n;%vjGw9(EP92!_v0xVyfv zWKBfh_~$=?2tvZ#&Qt+JqYJkdkxe+jdM6;;NK^Is615nsoviOXo78zcJ| z3)RZH1N43f!Q%bOd=tuF&;Qgg_OvK!4%?vcSsiQqA#X&1Ig81~p4mIvxZb`EoB84MQ zg3oHyc|P$O$_ml*%T1l>PqZ8hTU{K1S#ptMA_n`**?0E?2tRO43bsUm-)^Mr%QH`D zR>5$>8jkBpRO?DLLoOpvV!E|NhjVy2Az#F4B1XTHCt7_1^j@Q7Yx%7?#I)Sjm-5FT z%ibbGJ@Sh!J!4DIt%$?w5XQterDFKhjsdQIar3;3ue^lR0uQ_V@wA^=gOMO&NwD08 zM&Ug*BP3ZnUQ_;YhpB>8uxf~!B8l+Hm>8elg!WYP;6Qv)M_)lV5-Xb%56y*gI|$ec zz6YR&POuilRr=tfvqOCM8Se#^>B5%vVC%tI5b?+rh6mVE4^NbQ0&nv&8Zl1f*J87o zoG3J@xkjMJg_PwT&Vb=vm>4PnVIMuKK1|2`_hxAyO=CAHEB^*QJ0jHgjOkxUy?yC!O_o>+F%{2>x$r3KPu#(j)f2KVD zk(5x1BVbz>pU^RxNo@#gvcJ?iFXuXU|JhVHOA^I&NevuoAUvXEo`O{+g7;=jg87o$ zdvYB--bSL>ROVt;sS-nJ!l#!UoCL~3%G@E}RzwE#r7u=3a;IODK7Gf0619hMrozTe zk0{84;44c>EG9h4gYvCnDg|m1MfEl+n zq0hT1PtA2D)s}Cqpk)5}kmg9j5G0eTb9Af6aVUo$Q;BGxZIkO!{ABxBI0W61Apu$wOF?~YlV3-Vw&}B|C(Bw!fh%3JY?`thO~fmn4$VCfAI>o= zJfby{&2P!s6>9wv6JpQ3$qI%rkRwDKekhn)z-?HP?Y4TBU$TBby$Q-8%lJg(Oofiz zE-Y||V}T?_TGu^@*S>a`w$^TxRbH#*?xSdgO`9 z{tB0)$NNT}A#6`TZ7xnm?}(wrc}t+n(Bx{e(hKbz`+L>XC`+oKI~f)nA=WnBFXV;EHziPhTF%L+@!v>kZyf_&@c$>p%f1^G5H3VSo(0bTAucHqc?*J=ecY4 zatKZFrIw6iE2g)RUcXF=UmQx<15g@*v~q-Ox6pJA+u))I0HR&3>R#XATRty+r(l_5 zD55D+4NTm*(yT;yNRFqHIR4mZ72A^x6(Ea3ZSEwFY}yv(LM6eBcSlt3g_*aR82*Jj z-QosY@`EawnwCX4(7?mDM=b z<8Z~nf{O$KhXK~!aP>@Ag$i4o<&}8r?740i(vfA>jX$+lC%kUu;LER1_bxv|+L;%8 zs^DUHWj})IogdsPjxSf3<@jF3iVGDGA713}E`DqwepVEq1S~5zedfN#RxVyV%Z9Nt zMc5;r&iSPYDP&|Z{1N)3xO0&bS5~FH0z#d>-Yj$W=SRRt)`CFg1Ly9*?2ne3Wioc- zR<=>nJhPJZ;C6D$1hSXNaqPiJMBW1o;7Qa0IoKsC`3xFwg7@Ry(!p;K|C~|meDTrQ zKugUyXjUNrEj544D1UC0{ywk#xoJueRSaOk{d)F_&=(YsS!5Uf{#PDVJDpT@p;wU9 zO5CmZ-lp!lDTDZq-|iikcQ&={?BuQL!UjJseZxn8o(KpO%-J9%Gjst9l;q={dTDi0 z>q-)MzM5XH&Lsgc`I(d2#LpE69~0!C5o%j02kHp*Br z%*3U93eL{@;?YiaFZ=_GoNollmcJS@y-ju-S z1=aw;ykVX|ylBtwSza#^-4IISE(5Zk{ocrOY}b6j1WdxUTRd5ut*|CTbsO@sm_1yS zhq5kBHPAZf{iHRI)%8rmfQJJ77f)CS;a#DKVuBrBLM?0Mam^3Mf_>*H=zb*Bw%AT9 zB^vuiYqC5m*E7{nybl52ng5yV$Z~A{aAq(t19fOHlz-*g>5IFKnbYsN8}vXBzav%W z-QAs+Z}|MfHYN~kc*+he&V}HUXJ=OJ8M{3D?5}U%a6U($82V6>iV&--sB3&Ii>u@B z%feQo-P6pBS2KHg$@b~6IRhFJN2R}$_mysLlzuzt~=Jm3CwF#GeSJveyx$o-{G;MMl6 zZ6k;oxI%1@RD3?&e-NC!w>`dk++6-Letg;BzGlN+EKFR{+taD|l{X}!?(N#LUdQuk zes$c#HB9);UJKBVcGtdpwSVLG{-k{5v*BHE@nS!)QHZGD0=S$t?5S<%viRw%!l#_% z$)g(KQ{l{4Y#}+v4;M)t%yUWCOa1y3|LK>JBs zPd+IhBA^h350%g08{%#I?8WJ^>-er!{R8etBv`lQK$Fhwlc@Bk^TeA=w=_cT@#}D) zBcsO)uLt>6eEBY|vwN5O%9^l*ShP zGEu+7<~lRVCNM>k*h@O=g!FBo`k~vnw|ab@DyjbYi%u{QEsYZIOFMk$`37ElvM|s+ zT&>-U{{(}yIyC0G1_in>_!OOQI=CJsxVlRCrN+=(TiBZ?h`FOZ+AIji=jHXF-`of8 z<$C?)OPbzu4RE<*Q$VoN_3Sh_nfo-0Tk-hK+u#f+Se0$J_=Yjil@!sk(tVw5Uaa*!IqKHk@?>0O0sqHSgToV<9j=ipRtjn--))#5(jtwX%;bmCn_DcBVOejNHs!@M_?!15h>gwldzf%SW zeNZbwp=RV;|GrxpQN|UGdH~|`x4nBxpL60x#q{Rna4V>9A=dO^HD!`KB51MT5=5U0 z*t&XN+Iud@@x#~Nw9LHxp0Z0K0GiRvnU) z!hIL@A~d9ti6|uJi5EIEFIOK~lXzAmjs7UDEM0=GlE7Xb$gqb=Pb$l}_z^Bnp{={Z zXOn>WUSq6d7;~YbgEc)LT-oL#yZNOQFGVMe;q__VvXj5+Y@lE{tcI0+Q)Wrab|)US zfD7^?oJu+ZB~5&9RE0}y)WG--=n+P-OY9i` zm=5TIoZp?FL7mwD>V(>+0Dz1BHNL75kCF+B*&T7DPi6z+U)U!caiCBV&^X#ZLUllB zK_J|Jg#JkdRZ4wkMe6on1ZT?RpcaHbR3vpko96xxiT{C$@wlwQ_D=?l`nxa}e2^X$ zRFGH9h98V1h>ZUwk&y(B+8q(@57l$=u8pW2zeoMMslZ9RValbw3&S9bPeNy&q>D(y z+57AP+(+9-hj^hqvF9U#q+c?1LQF|ZlUvuOPb-G*lC2Yggx1`?L;LdZxXmj=gdme{ z((~Ei`qPbbtG?Z!r|5J4;)F}?=Owo*-TR^0?CNc|>YwvMiU)i9qj}r+k(a7cyCYk@5CA1r;Sh<)=CL8HV4;8Zcl+OOBt?6gR5OkKEv74w#SZf z2d%#b!T{AfepS(^r8eF)0)1BxjtoZ*?^n(@`4?twx!akOj}Kz8r^kPoa3kt%u*$m- znRW)`;%yQt?1x&#b($3K?Xo_+?RhJYA)K*3Upf1Dxt_JeQ=k-XIEBkw{ zMQAR?W4Bw?kx#b1_O8bcDc{nm^*bi6Z5*Art#l7WCEevDe7~gP>HgxX`gsa@6g%X& zticTuYM4$Pd%M(dA>IGwb>O^6@nD>7;|oz}hs;>I%E$5at>?HhZfIKZg)?~>K4P}| zS$AvEMA?%Cp9~3fO^TwqWz#zM9aF=FLkg-TZk5*ZS)#QNYCN9-P7lcA!$q3{^6HY2+Bjyf)KZ^WY5y;%qzvxT3LX#$Q*2Yu^1O-D4n(fzi#$e$mZa;r?8`x7xU2e$b_1AbCO`NpqF zr#A_i93Qc#U-_(_=b$YHNTm>Q9DRl5eRNYAl4Tf1p4yax+sbwD-Qs3i1n9|iJG5_e zlY2iGQ7m$tNt#sQM6z~%UPEGbj65f^Kz-ToJj6WO*%v3~R{oIB`xQ~Xg^8p0ORfyJ z-sg&FL|XeQ@Bk+yR4>c1n?l+mX8HDQSqyJ4cviwsygEe%V-Fs|+8C4VB*hqL!`@$w zPy4&iROh^le`M{R3KVY2t`7oA%eFQ6?|(X^W6lycZ=R98y{65zPrE)|4`04s4h?#= zzc{!9?_Lw%7ET^#e?A}CvwZ4!Z4u7AWqzI>hW2;`Ls?FDZxMnr+-z@79=;)cP>Frw zG+GPHFFAE`LY9;try9?`O-7cEz;EkNJIzvQl??!VtD1j$#^~<$Que*z)Ol8ycxWJb zKmt5r)nL=##KAOuM6w}$zjT!5hhLr~n>NeDSsZDq(C)e)DE8~>D62zoN|Uw5SwQ7| z4G}V!)AaH4&zN553*G#p=~0!!ZZZNd*Q|m(fVN3vb|O{Y*!X=A?-WtUgkx-lexTWA z(yHnHJWRaBniUT+wLj<)m%q6szDJ$18C_>UA6XNpRUUbfo0U%~nqlqP(TSsoy__mZ zP2${JYr4TWZE!jCXr-AGuyKrt`}2rR%W}v+XD>!E1;imkx90HzhD&ZSiVVCpHI6miMNi`i7W~CXwZ_dWR zUUZ2Y8si|bn&L|xir}X3%ll^WDPh2MU#qg?e14JsEgQku<=C>#p?t?>T+g>L20hj2 zUlSPiiFtS{nvI%=A;qXAso}?ScF}5`Dv>u(d$Qka<_M$3lyj)j-08D{X4*w1C5 zINik^N|#Sc%W%?biE_QvwIls}GLP-p2V#_+aLE=4>ZbMcBSB`hQd__k>+PcyFky6uI6O}TEw|Lp>O>0JcG(qno1w2{f2c``& zC5}9Aw~fAk>!03iTIF0lJBwRPQ}0hi`1*GL`nW)VQz46z!NSwM{)samK|zh8 z>@y$FQd!Nh#-QTGU51T3MfJ~|U}biXEs5cWL67|Yw6@zh45gse2s)mb*pj@3LsX5y z7CUu@z6-AQX5$&wg~6M7bLU>jRY@cDaW4;dD}@R@13LkofjJe~RH{mBg*CnT?_Yj| zlu~{*IrMmNXyyBrdQ+Z!m`E1g1_TQ#VQc7J0wbU$X*+fUoPExyVcNj|+CQ#|zvddj zY#4mL@o5>dc!v;Ui0Q`!zm0{OL$Lx+JJrL*^Bk5TvqY!p268%ksRAB~UKNGJHNv+V z?5#xmy9)XrFVsM+!UfkWW!j^x+e)taQRI%R87B9_%xaB7;@IlZo!BwsxwsXcOq!Y> z{Gp(=!+{0hS_wuT^W2LwOEiDe?6-DQR zt;!1Wmfig$Ty0#0=pIrNlo8ZA*dI+cXJ3}so0ut+_sAl8s~Es2<>?V0wHBia9$?$M za-Kh{SRcNpK*y7kkyUYNCH0(QkXj~Xtg3i4T5K%t5nWg9*;ulc$GurDCA>R~yyMM! zD?_#w#5M0VFSN_!OEo8`>*Fu*?^bp;$7Ta8u0h3})mEf^_&TEAK57)la8;6aB^p6@ zW}+vEBBLcZ3j@Ak4KuBWu16gMa^O5sK|CtbKfrz)%PtPh;w>=4QrWU)3b8+AYXuH>d0V)jgHmUW}67 zUG@0hV3!^Efk)tt5Eo5oo5y;vxn&1`lM;rLmBp^;@xlJ(Tk+(!8$zV#^p`=zpHsKr zA?_*5ITF^EmZ3F96V)rTVzMAy(rs-|V`U#Sm0R_)+Fx}~AH}7JQE(Uq3y?-xk6mOm zPO{W@jgZccy82-9i2OO`Oj2%xyDL!+62r0fE$|Qxt8=}xt1(Wk+6{;< iTX3g<2 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/ListClientEventDetailsBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/ListClientEventDetailsBuilder.scala deleted file mode 100644 index cfffee0ca..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder/ListClientEventDetailsBuilder.scala +++ /dev/null @@ -1,33 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.builder - -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.functional_component.decorator.urt.builder.metadata.BaseClientEventDetailsBuilder -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.ClientEventDetails -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.TimelinesDetails -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.timelineservice.suggests.{thriftscala => st} - -case class ListClientEventDetailsBuilder(suggestType: st.SuggestType) - extends BaseClientEventDetailsBuilder[PipelineQuery, UniversalNoun[Any]] { - - override def apply( - query: PipelineQuery, - candidate: UniversalNoun[Any], - candidateFeatures: FeatureMap - ): Option[ClientEventDetails] = { - val clientEventDetails = ClientEventDetails( - conversationDetails = None, - timelinesDetails = Some( - TimelinesDetails( - injectionType = Some(suggestType.name), - controllerData = None, - sourceData = None)), - articleDetails = None, - liveEventDetails = None, - commerceDetails = None - ) - - Some(clientEventDetails) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/AddEntriesWithReplaceAndShowAlertAndShowCoverInstructionBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/AddEntriesWithReplaceAndShowAlertAndShowCoverInstructionBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..39edfa58f171c8e658505921ae35ec606b4f89d8 GIT binary patch literal 37123 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 sjYHg90 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 S%t4@BCCHEn%pS76ARYjD^{&tW literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/AuthorChildFeedbackActionBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/AuthorChildFeedbackActionBuilder.scala deleted file mode 100644 index dee273f5f..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/AuthorChildFeedbackActionBuilder.scala +++ /dev/null @@ -1,33 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.home_mixer.model.HomeFeatures.ScreenNamesFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -import com.twitter.home_mixer.product.following.model.HomeMixerExternalStrings -import com.twitter.home_mixer.util.CandidatesUtil -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.ChildFeedbackAction -import com.twitter.product_mixer.core.product.guice.scope.ProductScoped -import com.twitter.stringcenter.client.StringCenter -import com.twitter.timelines.service.{thriftscala => t} -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class AuthorChildFeedbackActionBuilder @Inject() ( - @ProductScoped stringCenter: StringCenter, - externalStrings: HomeMixerExternalStrings) { - - def apply(candidateFeatures: FeatureMap): Option[ChildFeedbackAction] = { - CandidatesUtil.getOriginalAuthorId(candidateFeatures).flatMap { authorId => - FeedbackUtil.buildUserSeeFewerChildFeedbackAction( - userId = authorId, - namesByUserId = candidateFeatures.getOrElse(ScreenNamesFeature, Map.empty[Long, String]), - promptExternalString = externalStrings.showFewerTweetsString, - confirmationExternalString = externalStrings.showFewerTweetsConfirmationString, - engagementType = t.FeedbackEngagementType.Tweet, - stringCenter = stringCenter, - injectionType = candidateFeatures.getOrElse(SuggestTypeFeature, None) - ) - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/BUILD.bazel deleted file mode 100644 index 3a4f19592..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/BUILD.bazel +++ /dev/null @@ -1,19 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/param", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/following/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/decorator/urt", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/premarshaller/urt/builder", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/marshaller/response/urt", - "src/thrift/com/twitter/timelines/service:thrift-scala", - "src/thrift/com/twitter/timelineservice/server/internal:thrift-scala", - "timelinemixer/server/src/main/scala/com/twitter/timelinemixer/injection/model/candidate", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..139d853722940506d392775410e583cde479f537 GIT binary patch literal 36972 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

5Cf7hb=v6%Q)j1db2{1WBj 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 - val screenNamesMap = candidateFeatures.getOrElse(ScreenNamesFeature, Map.empty[Long, String]) - val userScreenNameOpt = screenNamesMap.get(userId) - userScreenNameOpt.map { userScreenName => - val prompt = stringCenter.prepare( - externalStrings.blockUserString, - Map("username" -> userScreenName) - ) - ChildFeedbackAction( - feedbackType = RichBehavior, - prompt = Some(prompt), - confirmation = None, - feedbackUrl = None, - hasUndoAction = Some(true), - confirmationDisplayType = Some(BottomSheet), - clientEventInfo = None, - icon = Some(icon.No), - richBehavior = Some(RichFeedbackBehaviorBlockUser(userId)), - subprompt = None - ) - } - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/DontLikeFeedbackActionBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/DontLikeFeedbackActionBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..6e4ce91a9f2664207f971f4d624d36c7c8b50659 GIT binary patch literal 37791 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 tl} -import com.twitter.timelines.util.FeedbackRequestSerializer -import com.twitter.timelineservice.suggests.thriftscala.SuggestType -import com.twitter.timelineservice.thriftscala.FeedbackType - -object HomeWhoToSubscribeFeedbackActionInfoBuilder { - private val FeedbackMetadata = tl.FeedbackMetadata( - injectionType = Some(SuggestType.WhoToSubscribe), - engagementType = None, - entityIds = Seq.empty, - ttlMs = None - ) - private val FeedbackRequest = - tl.DefaultFeedbackRequest2(FeedbackType.SeeFewer, FeedbackMetadata) - private val EncodedFeedbackRequest = - FeedbackRequestSerializer.serialize(tl.FeedbackRequest.DefaultFeedbackRequest2(FeedbackRequest)) -} - -@Singleton -case class HomeWhoToSubscribeFeedbackActionInfoBuilder @Inject() ( - feedbackStrings: FeedbackStrings, - @ProductScoped stringCenterProvider: Provider[StringCenter]) - extends BaseFeedbackActionInfoBuilder[PipelineQuery, UserCandidate] { - - private val whoToSubscribeFeedbackActionInfoBuilder = WhoToFollowFeedbackActionInfoBuilder( - seeLessOftenFeedbackString = feedbackStrings.seeLessOftenFeedbackString, - seeLessOftenConfirmationFeedbackString = feedbackStrings.seeLessOftenConfirmationFeedbackString, - stringCenter = stringCenterProvider.get(), - encodedFeedbackRequest = - Some(HomeWhoToSubscribeFeedbackActionInfoBuilder.EncodedFeedbackRequest) - ) - - override def apply( - query: PipelineQuery, - candidate: UserCandidate, - candidateFeatures: FeatureMap - ): Option[FeedbackActionInfo] = - whoToSubscribeFeedbackActionInfoBuilder.apply(query, candidate, candidateFeatures) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/LikedBySocialContextBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/LikedBySocialContextBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..7f1a6e646c90c33b9704dfc29ba94c7fb643ef0d GIT binary patch literal 37429 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 t} -import javax.inject.Inject -import javax.inject.Provider -import javax.inject.Singleton - -/** - * "Your Lists" will be rendered for the context and a url link for your lists. - */ -@Singleton -case class ListsSocialContextBuilder @Inject() ( - externalStrings: HomeMixerExternalStrings, - @ProductScoped stringCenterProvider: Provider[StringCenter]) - extends BaseSocialContextBuilder[PipelineQuery, TweetCandidate] { - - private val stringCenter = stringCenterProvider.get() - private val listString = externalStrings.ownedSubscribedListsModuleHeaderString - - def apply( - query: PipelineQuery, - candidate: TweetCandidate, - candidateFeatures: FeatureMap - ): Option[SocialContext] = { - candidateFeatures.get(SuggestTypeFeature) match { - case Some(suggestType) if suggestType == t.SuggestType.RankedListTweet => - val userName = query.features.flatMap(_.getOrElse(UserScreenNameFeature, None)) - Some( - GeneralContext( - contextType = ListGeneralContextType, - text = stringCenter.prepare(listString), - url = userName.map(name => ""), - contextImageUrls = None, - landingUrl = None - )) - case _ => None - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/MuteUserChildFeedbackActionBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/MuteUserChildFeedbackActionBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..56caf526bc4beb258437b4854a476ae4c9fe4440 GIT binary patch literal 37414 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 NAVVTBd#vvT@c@c>_v-)v literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/MuteUserChildFeedbackActionBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/MuteUserChildFeedbackActionBuilder.scala deleted file mode 100644 index 542ed8a67..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/MuteUserChildFeedbackActionBuilder.scala +++ /dev/null @@ -1,54 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.IsRetweetFeature -import com.twitter.home_mixer.model.HomeFeatures.ScreenNamesFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceUserIdFeature -import com.twitter.home_mixer.product.following.model.HomeMixerExternalStrings -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.model.marshalling.response.urt.icon -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.ChildFeedbackAction -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RichBehavior -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RichFeedbackBehaviorToggleMuteUser -import com.twitter.product_mixer.core.product.guice.scope.ProductScoped -import com.twitter.stringcenter.client.StringCenter -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class MuteUserChildFeedbackActionBuilder @Inject() ( - @ProductScoped stringCenter: StringCenter, - externalStrings: HomeMixerExternalStrings) { - - def apply( - candidateFeatures: FeatureMap - ): Option[ChildFeedbackAction] = { - val userIdOpt = - if (candidateFeatures.getOrElse(IsRetweetFeature, false)) - candidateFeatures.getOrElse(SourceUserIdFeature, None) - else candidateFeatures.getOrElse(AuthorIdFeature, None) - - userIdOpt.flatMap { userId => - val screenNamesMap = candidateFeatures.getOrElse(ScreenNamesFeature, Map.empty[Long, String]) - val userScreenNameOpt = screenNamesMap.get(userId) - userScreenNameOpt.map { userScreenName => - val prompt = stringCenter.prepare( - externalStrings.muteUserString, - Map("username" -> userScreenName) - ) - ChildFeedbackAction( - feedbackType = RichBehavior, - prompt = Some(prompt), - confirmation = None, - feedbackUrl = None, - hasUndoAction = Some(true), - confirmationDisplayType = None, - clientEventInfo = None, - icon = Some(icon.SpeakerOff), - richBehavior = Some(RichFeedbackBehaviorToggleMuteUser(userId)), - subprompt = None - ) - } - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/NotInterestedTopicFeedbackActionBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/NotInterestedTopicFeedbackActionBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..d7232dbfd8eaa6dbf9e1ffb40e4a25b223269bc1 GIT binary patch literal 37577 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/NotInterestedTopicFeedbackActionBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/NotInterestedTopicFeedbackActionBuilder.scala deleted file mode 100644 index 2ec520e11..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/NotInterestedTopicFeedbackActionBuilder.scala +++ /dev/null @@ -1,70 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.home_mixer.model.HomeFeatures.InNetworkFeature -import com.twitter.home_mixer.model.HomeFeatures.PerspectiveFilteredLikedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.SGSValidFollowedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.SGSValidLikedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.TopicContextFunctionalityTypeFeature -import com.twitter.home_mixer.model.HomeFeatures.TopicIdSocialContextFeature -import com.twitter.home_mixer.product.following.model.HomeMixerExternalStrings -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.FeedbackAction -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RecWithEducationTopicContextFunctionalityType -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RecommendationTopicContextFunctionalityType -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RichBehavior -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RichFeedbackBehaviorMarkNotInterestedTopic -import com.twitter.product_mixer.core.product.guice.scope.ProductScoped -import com.twitter.stringcenter.client.StringCenter -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class NotInterestedTopicFeedbackActionBuilder @Inject() ( - @ProductScoped stringCenter: StringCenter, - externalStrings: HomeMixerExternalStrings) { - - def apply( - candidateFeatures: FeatureMap - ): Option[FeedbackAction] = { - val isOutOfNetwork = !candidateFeatures.getOrElse(InNetworkFeature, true) - val validFollowedByUserIds = - candidateFeatures.getOrElse(SGSValidFollowedByUserIdsFeature, Nil) - val validLikedByUserIds = - candidateFeatures - .getOrElse(SGSValidLikedByUserIdsFeature, Nil) - .filter( - candidateFeatures.getOrElse(PerspectiveFilteredLikedByUserIdsFeature, Nil).toSet.contains) - - if (isOutOfNetwork && validLikedByUserIds.isEmpty && validFollowedByUserIds.isEmpty) { - val topicIdSocialContext = candidateFeatures.getOrElse(TopicIdSocialContextFeature, None) - val topicContextFunctionalityType = - candidateFeatures.getOrElse(TopicContextFunctionalityTypeFeature, None) - - (topicIdSocialContext, topicContextFunctionalityType) match { - case (Some(topicId), Some(topicContextFunctionalityType)) - if topicContextFunctionalityType == RecommendationTopicContextFunctionalityType || - topicContextFunctionalityType == RecWithEducationTopicContextFunctionalityType => - Some( - FeedbackAction( - feedbackType = RichBehavior, - prompt = None, - confirmation = None, - childFeedbackActions = None, - feedbackUrl = None, - hasUndoAction = Some(true), - confirmationDisplayType = None, - clientEventInfo = None, - icon = None, - richBehavior = - Some(RichFeedbackBehaviorMarkNotInterestedTopic(topicId = topicId.toString)), - subprompt = None, - encodedFeedbackRequest = None - ) - ) - case _ => None - } - } else { - None - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/NotRelevantChildFeedbackActionBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/NotRelevantChildFeedbackActionBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..ead75ed4a8178076117443b8df9e58239795e0de GIT binary patch literal 37417 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 PTqVem2+SUvdO tlc} -import com.twitter.timelineservice.model.FeedbackInfo -import com.twitter.timelineservice.model.FeedbackMetadata -import com.twitter.timelineservice.{thriftscala => tlst} -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class NotRelevantChildFeedbackActionBuilder @Inject() ( - @ProductScoped stringCenter: StringCenter, - externalStrings: HomeMixerExternalStrings) { - - def apply( - candidate: TweetCandidate, - candidateFeatures: FeatureMap - ): Option[ChildFeedbackAction] = { - val prompt = stringCenter.prepare(externalStrings.notRelevantString) - val confirmation = stringCenter.prepare(externalStrings.notRelevantConfirmationString) - val feedbackMetadata = FeedbackMetadata( - engagementType = None, - entityIds = Seq(tlc.FeedbackEntity.TweetId(candidate.id)), - ttl = Some(FeedbackUtil.FeedbackTtl)) - val feedbackUrl = FeedbackInfo.feedbackUrl( - feedbackType = tlst.FeedbackType.NotRelevant, - feedbackMetadata = feedbackMetadata, - injectionType = candidateFeatures.getOrElse(SuggestTypeFeature, None) - ) - - Some( - ChildFeedbackAction( - feedbackType = NotRelevant, - prompt = Some(prompt), - confirmation = Some(confirmation), - feedbackUrl = Some(feedbackUrl), - hasUndoAction = Some(true), - confirmationDisplayType = None, - clientEventInfo = None, - icon = None, - richBehavior = None, - subprompt = None - ) - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/PopularInYourAreaSocialContextBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/PopularInYourAreaSocialContextBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..937584b5278df8fc0e48af4ae5c0933c0e7ad6ab GIT binary patch literal 37360 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 Kvqxnwhz9_x{oVBd literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/PopularInYourAreaSocialContextBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/PopularInYourAreaSocialContextBuilder.scala deleted file mode 100644 index 3782dd115..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/PopularInYourAreaSocialContextBuilder.scala +++ /dev/null @@ -1,43 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -import com.twitter.home_mixer.product.following.model.HomeMixerExternalStrings -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.functional_component.decorator.urt.builder.social_context.BaseSocialContextBuilder -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata._ -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.product.guice.scope.ProductScoped -import com.twitter.stringcenter.client.StringCenter -import com.twitter.timelineservice.suggests.{thriftscala => st} -import javax.inject.Inject -import javax.inject.Provider -import javax.inject.Singleton - -@Singleton -case class PopularInYourAreaSocialContextBuilder @Inject() ( - externalStrings: HomeMixerExternalStrings, - @ProductScoped stringCenterProvider: Provider[StringCenter]) - extends BaseSocialContextBuilder[PipelineQuery, TweetCandidate] { - - private val stringCenter = stringCenterProvider.get() - private val popularInYourAreaString = externalStrings.socialContextPopularInYourAreaString - - def apply( - query: PipelineQuery, - candidate: TweetCandidate, - candidateFeatures: FeatureMap - ): Option[SocialContext] = { - val suggestTypeOpt = candidateFeatures.getOrElse(SuggestTypeFeature, None) - if (suggestTypeOpt.contains(st.SuggestType.RecommendedTrendTweet)) { - Some( - GeneralContext( - contextType = LocationGeneralContextType, - text = stringCenter.prepare(popularInYourAreaString), - url = None, - contextImageUrls = None, - landingUrl = None - )) - } else None - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/PopularVideoSocialContextBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/PopularVideoSocialContextBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..af6622b4db285d82780abedb2d02d11ea6d1a2d8 GIT binary patch literal 37377 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 st} -import javax.inject.Inject -import javax.inject.Provider -import javax.inject.Singleton - -@Singleton -case class PopularVideoSocialContextBuilder @Inject() ( - externalStrings: HomeMixerExternalStrings, - @ProductScoped stringCenterProvider: Provider[StringCenter]) - extends BaseSocialContextBuilder[PipelineQuery, TweetCandidate] { - - private val stringCenter = stringCenterProvider.get() - private val popularVideoString = externalStrings.socialContextPopularVideoString - - def apply( - query: PipelineQuery, - candidate: TweetCandidate, - candidateFeatures: FeatureMap - ): Option[SocialContext] = { - val suggestTypeOpt = candidateFeatures.getOrElse(SuggestTypeFeature, None) - if (suggestTypeOpt.contains(st.SuggestType.MediaTweet)) { - Some( - GeneralContext( - contextType = SparkleGeneralContextType, - text = stringCenter.prepare(popularVideoString), - url = None, - contextImageUrls = None, - landingUrl = Some( - Url( - urlType = DeepLink, - url = "" - ) - ) - )) - } else None - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ReceivedReplySocialContextBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ReceivedReplySocialContextBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..6c084b0d2eed9157cb1197c10598293906873570 GIT binary patch literal 37769 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 - Some( - GeneralContext( - contextType = ConversationGeneralContextType, - text = stringCenter - .prepare(receivedReplyString, placeholders = Map("user1" -> authorName)), - url = None, - contextImageUrls = None, - landingUrl = Some( - Url( - urlType = DeepLink, - url = "", - urtEndpointOptions = None - ) - ) - ) - ) - case _ => None - } - } else { - None - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ReportTweetChildFeedbackActionBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ReportTweetChildFeedbackActionBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..f7209cc903e289202e410d8902d977b3676a93ac GIT binary patch literal 37187 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

Gy~l$&<6Ip0+-KFLpwzutKoKi zzC~%my|sP3l7Jq7%TgnE&qM1?=puKw5eirc{vx^~A@vz|M$AJ8X}?s8M)3)GKkPwi zu?^Q+@coRmd{h}ihq%MJhVZPAe6QLCM+m0;O>I$o zzstgvg6r;yu+U*n`t!>kU#5qlVsF=8g1~F-2$GBAiuc3wbBv@=`abYV=VfkhtnRr% z*no>bu8irq<^K`(7Qk^VS(mVwnVFfHEwGqc%*@PSk;Tl+%*@Qp%(9qS7Tb~~dE4*J z%+CA%-Tk9O)uD*)bI&=wv3D)Ca z+g4dew{TQ!NfzvTQ}ZCQuK+NLOH#T&H5|R9K;(JY<4|+%4Nzaq-P}A5=E;4T8o5mbw(1 zhQ2QmJd}Nz{E+D>?mA4(?M-&UnKkKqm|gqg>CND~hvb1f2#ayK+~BDrkmnI|XRnJi zI^@*&X~$LfRSdAb>T%xQP3G&I(1y*hbCsQz$5R4-GQQAis1K?y*l?ykc_2`eA+uVY zLgN=FqGtZTvLt@%?f=B_nD^@6OVI-4OH(4_!dn zVanjrU2}~S@49MWs(p!xTo7;_Skt;2l+e{N<4SBTu0)0-ttsiT!MQ!@o|h^8$^{8^ zX{N#J-BfURV1bL7c&dZ)UyB7EMMxurF?n z1w&qOIp$v{KUugbEHWyl6&&8I-y^9804DG+)~K;OC3Bwq3BDI_gXcxzyS@4rk`{38 zBD>|tBiG~Y%Lxt2=;QPWHjmRER#P8&Fm~5KMv4&DcAeMj7UEwdo!$4Sb8|d;R41JO zyj?f!OKnPab}kf?J{!n1qq?~}?kpR5b(dIC6+o<+GWd=-n?otu=()NXzaX`!^Bec!`?0SXgn@$Hw~U}#?@kF>yy6G z7Dny4QrR(4P3E^UB2K%|wa4;J?YIvg53`a&Q3Y(xm7Jo~t|seA;yO#;Nq&{xoK*Cj zOrj^9n}teRzl(*@vTp6TSe?rS&&5aUcXc#KUf1(uw5HDHNjKBQr%;cjj;_j+_ZPfF z^IpX=uHsp9{ub*C1HP5!3FhSr=*eB-x(}1P`t9VX9p>|MG}wcC6~aIzd4n5l;x8R; z9K4PnPTvB~*?aBXCt8JOZBtyCVFil?#UA& zJZn2wKa5@7AJTq2rT?Og6dh`Tk1tBJq7y>dx;q%y7kUn3>+JWtj=5LLAM$Zhw0Z5} z-_D*=9K1Sz@a`ab@$S%n0!!kZdPNz|Tw@bF`CuVy3Mb){csj#LC^A__cIC)C6n5Nt ze|7pXF}D4EtQ|k;$7dAuLod1L3077ps!UmOQkZb*Pb5@F{^^h4D4}L%C}N|{M7S!> zrgFam5WJHJ>IrXN4&q-jV^YJGq{+&%?i#JXQ?SfskWi{5_DV&;Wz=pEt#VD6Y&`=WAt>dS`flPn2XH#CGrZ7`>JR*%i9;gE6 z0n+(3Fy^V|%^V8U%UpC`AD5SYp40N1#k14Ky~}NjhQx}xCmtG1R%PrbP9REMG{}qv zI41?;=U`msu!<)AYQOT->WRmy>YlGD8^SVuoiKFv>S~O=sF;KhZ`Sy6FRz6^XeWE@ zty~rGwI)j?z(+ksvZ65lC!A`-$faP9_tK~=1McbgS6x?m*PA{Xm*!uRj z4!RdbRbQq$i|oZt0H&uDn^_)=13xSXUde&>8Y2>wC^-lG2OM41RJxGUv~~e zX4^Sa*@o}27x#JM-R-xs^MqzgJ?XU4GGy`VNpFrUs)ov42`~}s*Eg52(4!?u)k$`#QccPVAMUqfWU=eF(#2WYuck&< zz2D7zr#CD7%G zq;a{#K@Q$1qnE1i+ZWHildGHKr1WETIpIfpX(4$BwTgp_{!dvrT_xOjl7jFdZ@Qb!bvgy z&CIgP*EM?Y&7!^=#8VxX#V(fbI$VwpdpnAv>i8`fUEovYlw0_Q^>zq@J?ETtvB3SN z479XTHBRFOdm3DEV79Ur<$@4?l#=Zma&Kid2)S+XdUHE^U+u^Rk>JQry^3%5?AsFG zAa3D1k6Ra|8hM#x`3|*~5BR;6HPQdW9H7-#-o>4LJ=7E6EsCUNxBQpXR7Z!ur2Z&f>*k9dlIAeF zw`Tr=aT8NAB)qp14Y8GF%e4gPcOntY+(jl4katNsL&76Tc56TC|+@(-vRL|)St zCD{i4`e^OJ9#E*wQIf4J{f7&l=c>;PLr`DR9;YP)x`j5k~3he@N=YP9rE z`?j=!ytod5rtX1`T!%6aH0d8JoSi8|2Sa`%N+0bWKkq%eJY`#Ryt%^mwgTJJ9>Bge zTCt?G&E@hV#$~m|t)1Ug)lhn^iEPssthS)ohmzV$n9z;}e3f6PcJ}~*(E%a7_PR5z z2GkYFX&@RfcxxR_6pv8nl2%ljQ4_Hl4N==HQq%7-=JlZKYoY6B_@r7A^5)~uvdQis%`xU}6ZRNb5}#cO=Z+T7V3SzZevZRRCyp}dA?1eTjR;4Ioup_Ogw z843cIHA)odVQr~B)px492TODDVh4>X$exq?HJs-)n765OHE<3!unzKqVQsMp+lZ$i zW%{oBHCpF2Mo2h((BGa{L84Ow3NC8YN+svKY%n?&_G`?TZ3J98em=5OFn3-pi+*$S zu#xw&0j`}=85z{E8PrKqkgg@)_ZXs`sle9ruu=E2Ne2&|4QTD*1Sv8zEcdcW+1P2? z!4t3i;$gEfg{LsgbVt^RYqeumM$|Yyq+|2g)grKSpWy(cxL-42p}CeI)U%Ipy&T2V z%}L+GISnd$D!jRa=fA+lqT16kdGw^^5JTqjsk`OMEao%?JI^=Nv?eXbODYoCp+?%F z#=p&n%m7Hy!{#3L(5*PgfoEUfsSw^_M#cfrrGK7xzO@a?uo(e?*5Ug5=88#5nmbS3 zO|}_&Qa`UK-$&}w9WfrW>goK_n*&~En5Svai*nt|rc089x0^)*pX69yb)y!o|AvkLFeZgkg%9Cfc`A`_cGz>rwcpEeAJK_LSn ztaoBOR}Ba0pGQDoed34|77YYO7{7a;kUu^F#6sGa@(`Sg$ zV3?m#JyX+;39Du&ZBoC`nskaiD^LR3K?g>HmOws3z@V-dz&g(1Y}2b>XR6_mp|BUY zY%J2T+}GK`pt_pEJ%qqqWelbdF#hp?!Pj&i)O#%v5CQ{&Fw>8sqAN-=lRf~0s`)ma5B^+BnFEIkf|D6QTAs_dz%WZ~+Lt*AJRAPIX;!o$ zKsugC)(FXNJw+h|KSNN3!W`T!|B#tK#(smi!)03RoPNWyGB9?J;$X%kL*XWA_i)7f zpL}FQA&jY9nRK)vB|cgZNdsf$jCxT5KB?faw};?HqXdk^A@CV~*IukZ0rfAy#WB9H zB9PGMY5&t;zW?V20}zt^9J_aVdcFtF`=)Qb0kZ-geU~qtXE$U4^bpXEDF`S8`7geP z@gMXD)_rf}D!%XSsgO6V%d3z3B>f7rV<2;d|BZjeEa zkBP>jmOK`H^%lKMJKjbXv4o$Z%GiTi8t8IIoZ z=K5)lzIhzcoo){{gxa`x#Dsw*htZ|6t*e=>;IZA#G2%`m0&z-s{bw2<-v=*LeZOx* zvFU4h?^4M6eXRPw1&E*z6OB~?$550l=kys#8}}&)GPXZuo{PJEwW4lc_n){Ao~9Hc zMzJ%nQZr7l@l4J(eOT~3Z0mNFEUa%|dAoh5XLhFLJ>F})-<7gGssR&$X`kTgcDwb1 z*Yck0=}(?4KDm3mk9xcZ@aHMWT*$Vk;3qGa)|mp#r!?4T8usZolI~y47zZ!I)^@|! zn1v|u3{15(%`*)wqYE6CNMIy1PHAL!b=^v#>hgvz{}#5k+q?E1cm>mG-8M?@KV_`} znJy7M4|ji5%Och7;?()!DVU2yFkGwID=KI8Ch}%58cgI5ht`=YOkSq7z|;}z`;qJS zy(L@vBv=_`Sos#PhW298;hoA_4P816{wGT38u92pMP@RC$41fZ>&&IN$NL!D=g<1T zOD<5leUrLB?o0(?K0QNmR&M1NbA6?BQ6_$>z)5~7Rv5|M`tqKLwf_Xf8@^1-LyKW% zV`N~TVdfZ}Z~L4u=;J2m@eXt?J*y`p>-Kf?$7@ZUr`=$yk)M)TRL@7^Vvm`=kT|G; z$NR>VCEQOy&_KIs&^H zC2vK%yrj@RdwMXtE0Wqtdpg)Zg6Dl1YDA<}(6IiZJnOzEG8jbhMAC8REh?xbO9MIx z4^pXBqXb@q8h%RR^XqWcht@wisOwlGn_Nm3I~!{Y6CGQ6RSHxihRK%@M3vCkOK3K6 z$FJ-ce|GV2y4B08jAeM;(mpHsR+f*B)v4uyd{7+AX8nDa_ZA-Y6uIWFxgZ!c`NHyq z=#`G=it6pbx~V+~&bUWx<7V%=`y)7paWb%m*QKm`KH#*+jK$LUh9Uo&k#MoVi zDZ|a5K)^FXEuk=QC^MaUwI#GjunM)F*}~0HW=JxhTtcu-{6AF=!!Atgr+?-MvNS)v zUjvnL`#iY7zlbt3jhaT1xdM)0idTrMXqap{s$sBEP+fi;bwW>~CAwnzVO0j&A33kdYxMCO}CY!@gqS0S{2Xt^`_5&ElA zQxNo!BQ8u6I018vPyNEBq?w?Q5)tOT>6Y%aUx0l6#E0S_%`^&GE0%~Z>m7Thd;^;% z&5Ss}D8$A6Ta5GnRg9$u$1kgvD%y+;eGz3U_FvlC{1=);jl8$mmD+jzdGt0p;5{?i zI=J6>U;RzkXj_o9Vz zZyC>x28=B}D4d5(8wg%KXABKoIITqHl_Q!D<1>mHDLXfWHgFS$Ra-dX?F3BG&RL9xU&e4$|+aCE0CH z#1S4lQ^FD6jYr|Dqe{4n*T8`-F$Fe78)|;Q2^|~3jc=q~(R{qf2Vsf*;c&TyIBdu3Hc&|^kjOT1%7 z)B0IPdLq!{V_V{6?BqWx?&;VF|5o7%8f>m_8$Kkh`u1`Ers%HxFC8lRr$8MaF8|i? zF|pOiM)v<8;Z~@X?KkrDs+g**|Mf2`(9{1|@vQuBi05*k73lvDD@KiuLPn0DPQx0L z?yY?&JSV5_Htym4_04X7$1s@Qc<0=0 z0B}j2s3ltR<>CoAfLdDvjNU!>aBF3PY?Vy=hfz%I@Xpw*+|9^slVg6gi3CV z$6o@zhgs?K9gQ#eZCiBTv?vBH#WoYSfyU88$aJN-HUNmQP~aK-tU&OkCdk%M7J zF_&s|k8C0kbq<_Nv@RwH5gv+|R}PS1=qSKUZoEW`S&tVf4v;E>)O^QrYcj)2S#D0h zC<#I;2)*m9=G^e%XIyD!K|rzLAz4n;9D2A%Fq^dq=R~oQx|fe~Arx)Yno6{xmw?1SW8#$m#gn7 zs?+;xf;WT~D+ltdu@)l*F?2{|K!pkvlEqj-brX04lrf@o46#$Ki4-KMmU9f4I8Y3# zHr;A?%IAhab$7jLRD8BSikd;Hh>Pr7HH(zT;Z%BD=Sf#tdixqmpEb%xGO(QA^b=qG1@u0|ci=avC2~*W{<@VcQIcA{ZkM<1zMMjFo3Gu9jmUkE${gx`uN` z>$jEeIR9_5co;Sxy?US2H3DSnNN7Je?DewFvkUhT7yWG2PJM29z69|=vs4(ycC%Kb zsT|Er3}YSFV5;ATUcIjd_Xt*gLVjtHbkQ3btYoU;`pWRQTT^FkO^WdQ}l7ldY8+sKqg1 z8Q_$~wW9JPU#q13>CA6MB``5haLNl4R9T}f4m0LH4cO*K{^`Hy)Yn8ORKz2_X!0XB zrliV^_hwI%5~pSDpU7xLF;k`|6vZin&{UNsaxv5>>S?4f%@_meF6PV-E7J#%an)4Q zP4Xiplt(;qLYsJhKr{u=0eb?sO3j>@PYRf{jSWF`=FCO3JlKCSwZ1Dg=0IggUDavn zlwuWD8Wk0(k$<8V!~PSM1Syn~c)6Y`9Z~gP7UVy|Ubz=) zvX_R^NcM79BpsC5j+$x%^^e-ZPVt2=n3R9kOdXwG(mQz0i+C^3!auX^8iv#DwO;ml*z#U zNtq{o&fHdiB-4;fQ9LG&LIIOk(4ydHq}d`LyI8ET2``f*adsvab@Q9uRK3Q>DrGsH z-=T81YO|*Z+T@A=js>*ywG^YZbF|VC z{*1yXBdmEmsjV%8;@kERY!nRcQJdP216u#Guea04zwewuH3((L-P94MWWa9Fukunb zbQeHCN$`naY&)D8F&Iu-`T~Vw_mXoQMW2lGnIlPlARmm4SRh`WOp3NF*;W?Po z1hv-vEqhG`!BOn^65eN}HmIU=(%&1Pg7IOvUj^u3xIYVDHhf3ihuTZ1!yptZO5~ol zOR>M25R#$WaZGaZd2)xkB`UOFF@LWt?8=W%S11&^peA^)2kz`*tbjNXw01YV~ z47Tk1p3@)+!p|3fNVM2bo&(a91omu9%=@s90v|G zC}|(Jz)a%D>FMS>Rq>SmC=G=JDy2{bDg`JCg2y}ZB{1$t!CGJ_$n0nvKVef4Nb#f< zaBs1O1%np@De-zNGQ^SciwzusV@dHmFJF?RIJQr;cLxv6{ebPgwDHC8Cf|2d)pVkv zuNEE*2v)f`RDkMDlZH&uQSAmZK}mBI(@slp6#JGI?`H?XgX?i+TknuSvu4fC5Wh^5?t{?AJ9;7II${C$U!Q|!hP0pqW*d>Mxo-%}Xqd;?gel9e$n^(vh!g@3Vy zC_`qZRYlR+3O6Ir<$+4^WngZ2CJ5+%)^9?g`QezFKj+_O*b-4M}#K! zRfvij7xq+?Q#%DMKKk^A&}mJ$g~e6c&0*I{5Wf9E!@&CzZ-aAMDM(W_yW5L!t}66` zL^9jB7r)a9h)@31L65{`O?LT6$g23U);;D3WgFkj(?0v}KgOQLlg~T)N^x`6PDP7erMtCer&fhnX7{A-M0_4i^Mj3l~gh?OQ%Xjun2}S02W_gB~VE@yq83{22s# z7e<4$9sf>BSXC}?fV^iBF4QbndlIzJZ}MvwNhq#zF`UH$)vrIh#bTE1!~bUxB9HhR z=pFPDYvfO0l#i|TJ6i#hwC|=J+u=gMKtg{95{O8hy@NK@{S5qU82>PFC!XJJ5zVxQ z9uM>K%OYvGkbfTOhap5qCX@(^u|)`_6iC!h@B`%ZCifYwKiuj;%ff|7J`DLJQ2jtk z=7~SU4>^u9=?*)00spT>^2<=#pD0yn}0q%U-DBFCoIWwP`CWk=;xT9 z;6HH>kQtMzfR90BBK2>|BA=8hw;Y?xiOjpGpCk%gxt^2F|k;Fn+1eC3OR`;6)P7;+rc=VrId;)$3#r;Rg!cS4)q?dF)&)h9g zu#o860E{zc+@B#_-&bEEwGvdLKdr%QGxtZ%9W=fpur&^lOHF`s6ye@ckWQKs6+ATU zxet*0IS-J{rf3JLbbe{o~nqZv|a9aefim|!u~s1B_{(7>&2WN@tB4kMh4`TFdg=9r3m zxNc>!@g#YdoC5)I<2<)@%vBE()*%ZHo3@b~pz4}Q2q@bKSOQ*BTxFhuIEVtROIN00 z=m7R?bDo*6>k(ha?g-jU#r>DIn9DpbI(jeffFlB#W%KnDY1C+fePZ9q4 zo=*0O6$(TVt;~73_ABNO5*f8}iVxQy7x)sqcm9du7CIOtj@s!xP;}LC|${qvHP<0Tiw(yZ9!q}aeT2N z+2`0~kB7=(jYj1c~$?pqv5AgE(1r2%edD=gjT>;Vh^(L!d~# zvJONBAljnvpjE2{31-eo;zc$$fL+84z%%2RndO%0DU;R@B!*Dd!OVZ>dKCk0Mh}*K z;>$aea5)Ekr3rD;w)5a zJPtOs^O!0cq1F;oa^yeAsXrq8>05w!gu!FiNV}Q1C zp7z0X&r5pF0=8F#6%xZPk`~V5prD`NR-y4C)JcBExJYe|!mKt(xcv%6`t&L49Q#I5 z)-sOHEcYMMM23BsDN3?|GUtnnEE9U6qAL z7wl)=0B5jcF$4#5I_kp)_Al$-5!r1>MR+^1xzu=R5v+`Qc!}+mc&)%)6ahyhYm?85 zP{OYC)C)A}5LXal454O0&S;}echT>jG?xka+35w@$;&tlDgYW8#Lv96x|Z3_$~5fp zK!NkR6b953!jQaGXD_}WN-Gg)=EBeTr2q7DtU zo)SP}!Q%*Px2={Y9P;?c`J3u-F-vjC*AJg|@#A8|X%XIpAYFb)=s#8*Q#_J$?^Os` z#yPVg1N->jQe=~`F%pW($_;Yl`Q_CxG5L-KPIv*~_zbnE;WQ|0cmcqNFu=pZJd9T< zDvuIDQ^@^WSMoeeFeliJ_yiFebWA=yUI6zO@V;t~Ix0S-n7y}oZH~afc&z7_hkY#0 zKrR;O7-1ym8e3*N5V1B1mb^J=Bi1ZQ-l0Yja+m`{oW>G@Rr397IQE@dnu;o|(rm@# zwP0uE_IaM;VnuCoNxZkMd#02Ha)WEOwbycBx+sAROc&X_U^tMEiw!2FF-Co-ch(+S z^7FG{=&84&5j7US6tj< zvEr|=z=J0Z^}90QfaaNuOJkxh0(h2a^6u*=Ulp_}0y+z`AwI^5>tR1Np^^NP1y)KD z(3xYg|2X4}23>$%?^4i+lZrSgO)zc2-s(K)ML|PtM@ubKsMsPUqx{Qc6C5Rv0V`SS=fF*%`Cd5I-l;x7JoLMCOITT5Z%QF5Uo#<XAYcfyGy#~VysL5`v<#9};QDQi)bq>Q9YMnVMO z7W{PRsGKMr)>5D;0+2M)O%(Hgk(xQwF0a+XQ3z&>hrBptURe#i~Xj_klS`NCon zOYtye@fWGe2W0>3z-&5PNZu6@K#r>A(T<`mN!dO_q;cBchHN1G;gbSH_{)&eRB#|4 z>9wq2c6Wi8jQMpjXKi3R@%Bj5BRRu4SDFG{lDwZ_xtEd2Y2d=ZAGf-fT1pIbotCur z&;Iz@1?NqSdq%a%lX7`>_zFIBgsi&H1<5^YuBrP)RQW#uf`uUpU&)Ys}*Q{8Cte9r3LprFU_L z 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ReportTweetChildFeedbackActionBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ReportTweetChildFeedbackActionBuilder.scala deleted file mode 100644 index a4ef0cbb2..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ReportTweetChildFeedbackActionBuilder.scala +++ /dev/null @@ -1,37 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.home_mixer.product.following.model.HomeMixerExternalStrings -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.model.marshalling.response.urt.icon -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.ChildFeedbackAction -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RichBehavior -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RichFeedbackBehaviorReportTweet -import com.twitter.product_mixer.core.product.guice.scope.ProductScoped -import com.twitter.stringcenter.client.StringCenter -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class ReportTweetChildFeedbackActionBuilder @Inject() ( - @ProductScoped stringCenter: StringCenter, - externalStrings: HomeMixerExternalStrings) { - - def apply( - candidate: TweetCandidate - ): Option[ChildFeedbackAction] = { - Some( - ChildFeedbackAction( - feedbackType = RichBehavior, - prompt = Some(stringCenter.prepare(externalStrings.reportTweetString)), - confirmation = None, - feedbackUrl = None, - hasUndoAction = Some(true), - confirmationDisplayType = None, - clientEventInfo = None, - icon = Some(icon.Flag), - richBehavior = Some(RichFeedbackBehaviorReportTweet(candidate.id)), - subprompt = None - ) - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/RetweeterChildFeedbackActionBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/RetweeterChildFeedbackActionBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..54cfe4001aefd2a947458698ca96689c2c5da3d3 GIT binary patch literal 37313 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/RetweeterChildFeedbackActionBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/RetweeterChildFeedbackActionBuilder.scala deleted file mode 100644 index 006e93b58..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/RetweeterChildFeedbackActionBuilder.scala +++ /dev/null @@ -1,38 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.IsRetweetFeature -import com.twitter.home_mixer.model.HomeFeatures.ScreenNamesFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -import com.twitter.home_mixer.product.following.model.HomeMixerExternalStrings -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.ChildFeedbackAction -import com.twitter.product_mixer.core.product.guice.scope.ProductScoped -import com.twitter.stringcenter.client.StringCenter -import com.twitter.timelines.service.{thriftscala => t} -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class RetweeterChildFeedbackActionBuilder @Inject() ( - @ProductScoped stringCenter: StringCenter, - externalStrings: HomeMixerExternalStrings) { - - def apply(candidateFeatures: FeatureMap): Option[ChildFeedbackAction] = { - val isRetweet = candidateFeatures.getOrElse(IsRetweetFeature, false) - - if (isRetweet) { - candidateFeatures.getOrElse(AuthorIdFeature, None).flatMap { retweeterId => - FeedbackUtil.buildUserSeeFewerChildFeedbackAction( - userId = retweeterId, - namesByUserId = candidateFeatures.getOrElse(ScreenNamesFeature, Map.empty[Long, String]), - promptExternalString = externalStrings.showFewerRetweetsString, - confirmationExternalString = externalStrings.showFewerRetweetsConfirmationString, - engagementType = t.FeedbackEngagementType.Retweet, - stringCenter = stringCenter, - injectionType = candidateFeatures.getOrElse(SuggestTypeFeature, None) - ) - } - } else None - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/TopicSocialContextBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/TopicSocialContextBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..0fe1e36f17f74109036ffb64f9aa4f6d2cee0f1c GIT binary patch literal 37233 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 lU=FJH(yMNqS-;nlv$)+l_Ia-S% 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/TopicSocialContextBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/TopicSocialContextBuilder.scala deleted file mode 100644 index 7d01382c3..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/TopicSocialContextBuilder.scala +++ /dev/null @@ -1,42 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.home_mixer.model.HomeFeatures.InNetworkFeature -import com.twitter.home_mixer.model.HomeFeatures.TopicContextFunctionalityTypeFeature -import com.twitter.home_mixer.model.HomeFeatures.TopicIdSocialContextFeature -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.functional_component.decorator.urt.builder.social_context.BaseSocialContextBuilder -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.SocialContext -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.TopicContext -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class TopicSocialContextBuilder @Inject() () - extends BaseSocialContextBuilder[PipelineQuery, TweetCandidate] { - - def apply( - query: PipelineQuery, - candidate: TweetCandidate, - candidateFeatures: FeatureMap - ): Option[SocialContext] = { - val inNetwork = candidateFeatures.getOrElse(InNetworkFeature, true) - if (!inNetwork) { - val topicIdSocialContextOpt = candidateFeatures.getOrElse(TopicIdSocialContextFeature, None) - val topicContextFunctionalityTypeOpt = - candidateFeatures.getOrElse(TopicContextFunctionalityTypeFeature, None) - (topicIdSocialContextOpt, topicContextFunctionalityTypeOpt) match { - case (Some(topicId), Some(topicContextFunctionalityType)) => - Some( - TopicContext( - topicId = topicId.toString, - functionalityType = Some(topicContextFunctionalityType) - )) - case _ => None - } - } else { - None - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/UnfollowUserChildFeedbackActionBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/UnfollowUserChildFeedbackActionBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..6846e6552049be6467dbade99409596b236a2d74 GIT binary patch literal 37434 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/UnfollowUserChildFeedbackActionBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/UnfollowUserChildFeedbackActionBuilder.scala deleted file mode 100644 index 864ee06d9..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/UnfollowUserChildFeedbackActionBuilder.scala +++ /dev/null @@ -1,56 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.InNetworkFeature -import com.twitter.home_mixer.model.HomeFeatures.ScreenNamesFeature -import com.twitter.home_mixer.product.following.model.HomeMixerExternalStrings -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.model.marshalling.response.urt.icon -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.ChildFeedbackAction -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RichBehavior -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RichFeedbackBehaviorToggleFollowUser -import com.twitter.product_mixer.core.product.guice.scope.ProductScoped -import com.twitter.stringcenter.client.StringCenter -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class UnfollowUserChildFeedbackActionBuilder @Inject() ( - @ProductScoped stringCenter: StringCenter, - externalStrings: HomeMixerExternalStrings) { - - def apply(candidateFeatures: FeatureMap): Option[ChildFeedbackAction] = { - val isInNetwork = candidateFeatures.getOrElse(InNetworkFeature, false) - val userIdOpt = candidateFeatures.getOrElse(AuthorIdFeature, None) - - if (isInNetwork) { - userIdOpt.flatMap { userId => - val screenNamesMap = - candidateFeatures.getOrElse(ScreenNamesFeature, Map.empty[Long, String]) - val userScreenNameOpt = screenNamesMap.get(userId) - userScreenNameOpt.map { userScreenName => - val prompt = stringCenter.prepare( - externalStrings.unfollowUserString, - Map("username" -> userScreenName) - ) - val confirmation = stringCenter.prepare( - externalStrings.unfollowUserConfirmationString, - Map("username" -> userScreenName) - ) - ChildFeedbackAction( - feedbackType = RichBehavior, - prompt = Some(prompt), - confirmation = Some(confirmation), - feedbackUrl = None, - hasUndoAction = Some(true), - confirmationDisplayType = None, - clientEventInfo = None, - icon = Some(icon.Unfollow), - richBehavior = Some(RichFeedbackBehaviorToggleFollowUser(userId)), - subprompt = None - ) - } - } - } else None - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/BUILD.bazel deleted file mode 100644 index 60c104143..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/BUILD.bazel +++ /dev/null @@ -1,64 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "configapi/configapi-core/src/main/scala/com/twitter/timelines/configapi", - "configapi/configapi-decider", - "finatra/inject/inject-core/src/main/scala", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/param", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/service", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie", - "joinkey/src/main/scala/com/twitter/joinkey/context", - "joinkey/src/main/thrift/com/twitter/joinkey/context:joinkey-context-scala", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/candidate_source/timelines_impression_store", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/feature_hydrator/candidate/tweet_is_nsfw", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/feature_hydrator/candidate/tweet_visibility_reason", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/feature_hydrator/query/social_graph", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/candidate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/candidate_source/strato", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/feature_hydrator", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util", - "snowflake/src/main/scala/com/twitter/snowflake/id", - "src/java/com/twitter/search/common/util/lang", - "src/scala/com/twitter/timelines/prediction/adapters/request_context", - "src/thrift/com/twitter/gizmoduck:thrift-scala", - "src/thrift/com/twitter/recos/user_tweet_entity_graph:user_tweet_entity_graph-scala", - "src/thrift/com/twitter/search:earlybird-scala", - "src/thrift/com/twitter/search/common:constants-java", - "src/thrift/com/twitter/socialgraph:thrift-scala", - "src/thrift/com/twitter/spam/rtf:safety-result-scala", - "src/thrift/com/twitter/timelineranker:thrift-scala", - "src/thrift/com/twitter/timelines/impression:thrift-scala", - "src/thrift/com/twitter/timelines/impression_bloom_filter:thrift-scala", - "src/thrift/com/twitter/timelines/real_graph:real_graph-scala", - "src/thrift/com/twitter/timelinescorer/common/scoredtweetcandidate:thrift-scala", - "src/thrift/com/twitter/tweetypie:service-scala", - "src/thrift/com/twitter/tweetypie:tweet-scala", - "src/thrift/com/twitter/user_session_store:thrift-java", - "src/thrift/com/twitter/wtf/candidate:wtf-candidate-scala", - "stitch/stitch-core", - "stitch/stitch-gizmoduck", - "stitch/stitch-socialgraph", - "stitch/stitch-timelineservice", - "stitch/stitch-tweetypie", - "timelinemixer/common/src/main/scala/com/twitter/timelinemixer/clients/feedback", - "timelinemixer/common/src/main/scala/com/twitter/timelinemixer/clients/manhattan", - "timelinemixer/common/src/main/scala/com/twitter/timelinemixer/clients/persistence", - "timelines/src/main/scala/com/twitter/timelines/clients/manhattan/store", - "timelines/src/main/scala/com/twitter/timelines/impressionstore/impressionbloomfilter", - "timelines/src/main/scala/com/twitter/timelines/impressionstore/store", - "timelineservice/common/src/main/scala/com/twitter/timelineservice/model", - "user_session_store/src/main/scala/com/twitter/user_session_store", - "util/util-core", - ], - exports = [ - "src/thrift/com/twitter/recos/user_tweet_entity_graph:user_tweet_entity_graph-scala", - "timelinemixer/common/src/main/scala/com/twitter/timelinemixer/clients/manhattan", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..56bd2aafaf0d4d19f5d8c5104e1fe7a60d1b42a7 GIT binary patch literal 37469 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/DismissInfoQueryFeatureHydrator.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/DismissInfoQueryFeatureHydrator.scala deleted file mode 100644 index 976cd1e30..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/DismissInfoQueryFeatureHydrator.scala +++ /dev/null @@ -1,45 +0,0 @@ -package com.twitter.home_mixer.functional_component.feature_hydrator - -import com.twitter.home_mixer.model.HomeFeatures.DismissInfoFeature -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.timelinemixer.clients.manhattan.InjectionHistoryClient -import com.twitter.product_mixer.core.feature.Feature -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.feature.featuremap.FeatureMapBuilder -import com.twitter.product_mixer.core.functional_component.feature_hydrator.QueryFeatureHydrator -import com.twitter.product_mixer.core.model.common.identifier.FeatureHydratorIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch -import com.twitter.timelinemixer.clients.manhattan.DismissInfo -import com.twitter.timelineservice.suggests.thriftscala.SuggestType -import javax.inject.Inject -import javax.inject.Singleton - -object DismissInfoQueryFeatureHydrator { - val DismissInfoSuggestTypes = Seq(SuggestType.WhoToFollow) -} - -@Singleton -case class DismissInfoQueryFeatureHydrator @Inject() ( - dismissInfoClient: InjectionHistoryClient) - extends QueryFeatureHydrator[PipelineQuery] { - - override val identifier: FeatureHydratorIdentifier = FeatureHydratorIdentifier("DismissInfo") - - override val features: Set[Feature[_, _]] = Set(DismissInfoFeature) - - override def hydrate(query: PipelineQuery): Stitch[FeatureMap] = - Stitch.callFuture { - dismissInfoClient - .readDismissInfoEntries( - query.getRequiredUserId, - DismissInfoQueryFeatureHydrator.DismissInfoSuggestTypes).map { response => - val dismissInfoMap = response.mapValues(DismissInfo.fromThrift) - FeatureMapBuilder().add(DismissInfoFeature, dismissInfoMap).build() - } - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.8, 50, 60, 60) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/FeedbackHistoryQueryFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/FeedbackHistoryQueryFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..6f8d4de953ff8c501cb18f68a83f42456b2b9a3e GIT binary patch literal 37132 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 - FeatureMapBuilder().add(FeedbackHistoryFeature, feedbackHistory).build() - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/GizmoduckUserQueryFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/GizmoduckUserQueryFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..6362b3021909fe4792cc74a135e70d64f316d3f7 GIT binary patch literal 37401 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/GizmoduckUserQueryFeatureHydrator.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/GizmoduckUserQueryFeatureHydrator.scala deleted file mode 100644 index 431711900..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/GizmoduckUserQueryFeatureHydrator.scala +++ /dev/null @@ -1,50 +0,0 @@ -package com.twitter.home_mixer.functional_component.feature_hydrator - -import com.twitter.gizmoduck.{thriftscala => gt} -import com.twitter.home_mixer.model.HomeFeatures.UserFollowingCountFeature -import com.twitter.home_mixer.model.HomeFeatures.UserScreenNameFeature -import com.twitter.home_mixer.model.HomeFeatures.UserTypeFeature -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.product_mixer.core.feature.Feature -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.feature.featuremap.FeatureMapBuilder -import com.twitter.product_mixer.core.functional_component.feature_hydrator.QueryFeatureHydrator -import com.twitter.product_mixer.core.model.common.identifier.FeatureHydratorIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch -import com.twitter.stitch.gizmoduck.Gizmoduck -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class GizmoduckUserQueryFeatureHydrator @Inject() (gizmoduck: Gizmoduck) - extends QueryFeatureHydrator[PipelineQuery] { - - override val identifier: FeatureHydratorIdentifier = FeatureHydratorIdentifier("GizmoduckUser") - - override val features: Set[Feature[_, _]] = - Set(UserFollowingCountFeature, UserTypeFeature, UserScreenNameFeature) - - private val queryFields: Set[gt.QueryFields] = - Set(gt.QueryFields.Counts, gt.QueryFields.Safety, gt.QueryFields.Profile) - - override def hydrate(query: PipelineQuery): Stitch[FeatureMap] = { - val userId = query.getRequiredUserId - gizmoduck - .getUserById( - userId = userId, - queryFields = queryFields, - context = gt.LookupContext(forUserId = Some(userId), includeSoftUsers = true)) - .map { user => - FeatureMapBuilder() - .add(UserFollowingCountFeature, user.counts.map(_.following.toInt)) - .add(UserTypeFeature, Some(user.userType)) - .add(UserScreenNameFeature, user.profile.map(_.screenName)) - .build() - } - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.7) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/ImpressionBloomFilterQueryFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/ImpressionBloomFilterQueryFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..78d1f598d874c3d7f9cbaef240dcbef8639b7d8b GIT binary patch literal 37568 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 blm} -import com.twitter.timelines.impressionstore.impressionbloomfilter.ImpressionBloomFilter -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class ImpressionBloomFilterQueryFeatureHydrator[ - Query <: PipelineQuery with HasSeenTweetIds] @Inject() ( - bloomFilterClient: ManhattanStoreClient[ - blm.ImpressionBloomFilterKey, - blm.ImpressionBloomFilterSeq - ]) extends QueryFeatureHydrator[Query] { - - override val identifier: FeatureHydratorIdentifier = FeatureHydratorIdentifier( - "ImpressionBloomFilter") - - private val ImpressionBloomFilterTTL = 7.day - - override val features: Set[Feature[_, _]] = Set(ImpressionBloomFilterFeature) - - private val SurfaceArea = blm.SurfaceArea.HomeTimeline - - override def hydrate(query: Query): Stitch[FeatureMap] = { - val userId = query.getRequiredUserId - bloomFilterClient - .get(blm.ImpressionBloomFilterKey(userId, SurfaceArea)) - .map(_.getOrElse(blm.ImpressionBloomFilterSeq(Seq.empty))) - .map { bloomFilterSeq => - val updatedBloomFilterSeq = - if (query.seenTweetIds.forall(_.isEmpty)) bloomFilterSeq - else { - ImpressionBloomFilter.addSeenTweetIds( - surfaceArea = SurfaceArea, - tweetIds = query.seenTweetIds.get, - bloomFilterSeq = bloomFilterSeq, - timeToLive = ImpressionBloomFilterTTL, - falsePositiveRate = query.params(ImpressionBloomFilterFalsePositiveRateParam) - ) - } - FeatureMapBuilder().add(ImpressionBloomFilterFeature, updatedBloomFilterSeq).build() - } - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.8) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/InNetworkFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/InNetworkFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..aeb604965c6ad3985708f6b663d04eb665d06168 GIT binary patch literal 37360 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 HUJwre=B(v` literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/InNetworkFeatureHydrator.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/InNetworkFeatureHydrator.scala deleted file mode 100644 index 55f002b1f..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/InNetworkFeatureHydrator.scala +++ /dev/null @@ -1,41 +0,0 @@ -package com.twitter.home_mixer.functional_component.feature_hydrator - -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.InNetworkFeature -import com.twitter.product_mixer.component_library.feature_hydrator.query.social_graph.SGSFollowedUsersFeature -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.feature.Feature -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.feature.featuremap.FeatureMapBuilder -import com.twitter.product_mixer.core.functional_component.feature_hydrator.BulkCandidateFeatureHydrator -import com.twitter.product_mixer.core.model.common.CandidateWithFeatures -import com.twitter.product_mixer.core.model.common.identifier.FeatureHydratorIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch - -object InNetworkFeatureHydrator - extends BulkCandidateFeatureHydrator[PipelineQuery, TweetCandidate] { - - override val identifier: FeatureHydratorIdentifier = FeatureHydratorIdentifier("InNetwork") - - override val features: Set[Feature[_, _]] = Set(InNetworkFeature) - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[Seq[FeatureMap]] = { - val viewerId = query.getRequiredUserId - val followedUserIds = query.features.get.get(SGSFollowedUsersFeature).toSet - - val featureMaps = candidates.map { candidate => - // We use authorId and not sourceAuthorId here so that retweets are defined as in network - val isInNetworkOpt = candidate.features.getOrElse(AuthorIdFeature, None).map { authorId => - // Users cannot follow themselves but this is in network by definition - val isSelfTweet = authorId == viewerId - isSelfTweet || followedUserIds.contains(authorId) - } - FeatureMapBuilder().add(InNetworkFeature, isInNetworkOpt.getOrElse(true)).build() - } - Stitch.value(featureMaps) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/LastNonPollingTimeQueryFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/LastNonPollingTimeQueryFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..a79961a8d210d903026716a63159926881af779a GIT binary patch literal 37451 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 - val nonPollingTimestamps = userSession.flatMap(_.nonPollingTimestamps) - - val lastNonPollingTime = nonPollingTimestamps - .flatMap(_.nonPollingTimestampsMs.headOption) - .map(Time.fromMilliseconds) - - val followingLastNonPollingTime = nonPollingTimestamps - .flatMap(_.mostRecentHomeLatestNonPollingTimestampMs) - .map(Time.fromMilliseconds) - - val nonPollingTimes = nonPollingTimestamps - .map(_.nonPollingTimestampsMs) - .getOrElse(Seq.empty) - - FeatureMapBuilder() - .add(FollowingLastNonPollingTimeFeature, followingLastNonPollingTime) - .add(LastNonPollingTimeFeature, lastNonPollingTime) - .add(NonPollingTimesFeature, nonPollingTimes) - .build() - } - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.9) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/NamesFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/NamesFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..87385854cf1f5315c32b2cbe76a42e9945e01794 GIT binary patch literal 38000 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/NamesFeatureHydrator.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/NamesFeatureHydrator.scala deleted file mode 100644 index ede075e5c..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/NamesFeatureHydrator.scala +++ /dev/null @@ -1,97 +0,0 @@ -package com.twitter.home_mixer.functional_component.feature_hydrator - -import com.twitter.gizmoduck.{thriftscala => gt} -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.FavoritedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.FollowedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.RealNamesFeature -import com.twitter.home_mixer.model.HomeFeatures.ScreenNamesFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceUserIdFeature -import com.twitter.home_mixer.model.request.FollowingProduct -import com.twitter.home_mixer.param.HomeGlobalParams.EnableNahFeedbackInfoParam -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.feature.Feature -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.feature.featuremap.FeatureMapBuilder -import com.twitter.product_mixer.core.functional_component.feature_hydrator.BulkCandidateFeatureHydrator -import com.twitter.product_mixer.core.model.common.CandidateWithFeatures -import com.twitter.product_mixer.core.model.common.Conditionally -import com.twitter.product_mixer.core.model.common.identifier.FeatureHydratorIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch -import com.twitter.stitch.gizmoduck.Gizmoduck -import com.twitter.util.Return -import javax.inject.Inject -import javax.inject.Singleton - -protected case class ProfileNames(screenName: String, realName: String) - -@Singleton -class NamesFeatureHydrator @Inject() (gizmoduck: Gizmoduck) - extends BulkCandidateFeatureHydrator[PipelineQuery, TweetCandidate] - with Conditionally[PipelineQuery] { - - override val identifier: FeatureHydratorIdentifier = FeatureHydratorIdentifier("Names") - - override val features: Set[Feature[_, _]] = Set(ScreenNamesFeature, RealNamesFeature) - - override def onlyIf(query: PipelineQuery): Boolean = query.product match { - case FollowingProduct => query.params(EnableNahFeedbackInfoParam) - case _ => true - } - - private val queryFields: Set[gt.QueryFields] = Set(gt.QueryFields.Profile) - - /** - * The UI currently only ever displays the first 2 names in social context lines - * E.g. "User and 3 others like" or "UserA and UserB liked" - */ - private val MaxCountUsers = 2 - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[Seq[FeatureMap]] = { - - val candidateUserIdsMap = candidates.map { candidate => - candidate.candidate.id -> - (candidate.features.getOrElse(FavoritedByUserIdsFeature, Nil).take(MaxCountUsers) ++ - candidate.features.getOrElse(FollowedByUserIdsFeature, Nil).take(MaxCountUsers) ++ - candidate.features.getOrElse(AuthorIdFeature, None) ++ - candidate.features.getOrElse(SourceUserIdFeature, None)).distinct - }.toMap - - val distinctUserIds = candidateUserIdsMap.values.flatten.toSeq.distinct - - Stitch - .collectToTry(distinctUserIds.map(userId => gizmoduck.getUserById(userId, queryFields))) - .map { allUsers => - val idToProfileNamesMap = allUsers.flatMap { - case Return(allUser) => - allUser.profile - .map(profile => allUser.id -> ProfileNames(profile.screenName, profile.name)) - case _ => None - }.toMap - - val validUserIds = idToProfileNamesMap.keySet - - candidates.map { candidate => - val combinedMap = candidateUserIdsMap - .getOrElse(candidate.candidate.id, Nil) - .flatMap { - case userId if validUserIds.contains(userId) => - idToProfileNamesMap.get(userId).map(profileNames => userId -> profileNames) - case _ => None - } - - val perCandidateRealNameMap = combinedMap.map { case (k, v) => k -> v.realName }.toMap - val perCandidateScreenNameMap = combinedMap.map { case (k, v) => k -> v.screenName }.toMap - - FeatureMapBuilder() - .add(ScreenNamesFeature, perCandidateScreenNameMap) - .add(RealNamesFeature, perCandidateRealNameMap) - .build() - } - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/PersistenceStoreQueryFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/PersistenceStoreQueryFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..c1dc4b0bb7e6807dfe1b27e48116a87bcbaf4776 GIT binary patch literal 38208 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 DgTj}% literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/PersistenceStoreQueryFeatureHydrator.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/PersistenceStoreQueryFeatureHydrator.scala deleted file mode 100644 index b7aae811b..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/PersistenceStoreQueryFeatureHydrator.scala +++ /dev/null @@ -1,118 +0,0 @@ -package com.twitter.home_mixer.functional_component.feature_hydrator - -import com.twitter.conversions.DurationOps._ -import com.twitter.common_internal.analytics.twitter_client_user_agent_parser.UserAgent -import com.twitter.finagle.stats.StatsReceiver -import com.twitter.home_mixer.model.HomeFeatures.PersistenceEntriesFeature -import com.twitter.home_mixer.model.HomeFeatures.ServedTweetIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.ServedTweetPreviewIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.WhoToFollowExcludedUserIdsFeature -import com.twitter.home_mixer.model.request.FollowingProduct -import com.twitter.home_mixer.model.request.ForYouProduct -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.product_mixer.core.feature.Feature -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.feature.featuremap.FeatureMapBuilder -import com.twitter.product_mixer.core.functional_component.feature_hydrator.QueryFeatureHydrator -import com.twitter.product_mixer.core.model.common.identifier.FeatureHydratorIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch -import com.twitter.timelinemixer.clients.persistence.TimelineResponseBatchesClient -import com.twitter.timelinemixer.clients.persistence.TimelineResponseV3 -import com.twitter.timelines.util.client_info.ClientPlatform -import com.twitter.timelineservice.model.TimelineQuery -import com.twitter.timelineservice.model.core.TimelineKind -import com.twitter.timelineservice.model.rich.EntityIdType -import com.twitter.util.Time -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class PersistenceStoreQueryFeatureHydrator @Inject() ( - timelineResponseBatchesClient: TimelineResponseBatchesClient[TimelineResponseV3], - statsReceiver: StatsReceiver) - extends QueryFeatureHydrator[PipelineQuery] { - - override val identifier: FeatureHydratorIdentifier = FeatureHydratorIdentifier("PersistenceStore") - - private val scopedStatsReceiver = statsReceiver.scope(getClass.getSimpleName) - private val servedTweetIdsSizeStat = scopedStatsReceiver.stat("ServedTweetIdsSize") - - private val WhoToFollowExcludedUserIdsLimit = 1000 - private val ServedTweetIdsDuration = 10.minutes - private val ServedTweetIdsLimit = 100 - private val ServedTweetPreviewIdsDuration = 10.hours - private val ServedTweetPreviewIdsLimit = 10 - - override val features: Set[Feature[_, _]] = - Set( - ServedTweetIdsFeature, - ServedTweetPreviewIdsFeature, - PersistenceEntriesFeature, - WhoToFollowExcludedUserIdsFeature) - - private val supportedClients = Seq( - ClientPlatform.IPhone, - ClientPlatform.IPad, - ClientPlatform.Mac, - ClientPlatform.Android, - ClientPlatform.Web, - ClientPlatform.RWeb, - ClientPlatform.TweetDeckGryphon - ) - - override def hydrate(query: PipelineQuery): Stitch[FeatureMap] = { - val timelineKind = query.product match { - case FollowingProduct => TimelineKind.homeLatest - case ForYouProduct => TimelineKind.home - case other => throw new UnsupportedOperationException(s"Unknown product: $other") - } - val timelineQuery = TimelineQuery(id = query.getRequiredUserId, kind = timelineKind) - - Stitch.callFuture { - timelineResponseBatchesClient - .get(query = timelineQuery, clientPlatforms = supportedClients) - .map { timelineResponses => - // Note that the WTF entries are not being scoped by ClientPlatform - val whoToFollowUserIds = timelineResponses - .flatMap { timelineResponse => - timelineResponse.entries - .filter(_.entityIdType == EntityIdType.WhoToFollow) - .flatMap(_.itemIds.toSeq.flatMap(_.flatMap(_.userId))) - }.take(WhoToFollowExcludedUserIdsLimit) - - val clientPlatform = ClientPlatform.fromQueryOptions( - clientAppId = query.clientContext.appId, - userAgent = query.clientContext.userAgent.flatMap(UserAgent.fromString)) - - val servedTweetIds = timelineResponses - .filter(_.clientPlatform == clientPlatform) - .filter(_.servedTime >= Time.now - ServedTweetIdsDuration) - .sortBy(-_.servedTime.inMilliseconds) - .flatMap( - _.entries.flatMap(_.tweetIds(includeSourceTweets = true)).take(ServedTweetIdsLimit)) - - servedTweetIdsSizeStat.add(servedTweetIds.size) - - val servedTweetPreviewIds = timelineResponses - .filter(_.clientPlatform == clientPlatform) - .filter(_.servedTime >= Time.now - ServedTweetPreviewIdsDuration) - .sortBy(-_.servedTime.inMilliseconds) - .flatMap(_.entries - .filter(_.entityIdType == EntityIdType.TweetPreview) - .flatMap(_.tweetIds(includeSourceTweets = true)).take(ServedTweetPreviewIdsLimit)) - - FeatureMapBuilder() - .add(ServedTweetIdsFeature, servedTweetIds) - .add(ServedTweetPreviewIdsFeature, servedTweetPreviewIds) - .add(PersistenceEntriesFeature, timelineResponses) - .add(WhoToFollowExcludedUserIdsFeature, whoToFollowUserIds) - .build() - } - } - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.7, 50, 60, 60) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/PerspectiveFilteredSocialContextFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/PerspectiveFilteredSocialContextFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..48a599d5c3fdc2c4336ead0fb0db4813d5b41efe GIT binary patch literal 37737 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 - candidate.features - .getOrElse(FavoritedByUserIdsFeature, Seq.empty).take(MaxCountUsers) - .map(favoritedBy => favoritedBy -> candidate.candidate.id) - } - - val queries = engagingUserIdtoTweetId.map { - case (userId, tweetId) => - GetPerspectives.Query(userId = userId, tweetId = tweetId, types = favoritePerspectiveSet) - } - - Stitch.collect(queries.map(timelineService.getPerspective)).map { perspectiveResults => - val validUserIdTweetIds: Set[(Long, Long)] = - queries - .zip(perspectiveResults) - .collect { case (query, perspective) if perspective.favorited => query } - .map(query => (query.userId, query.tweetId)) - .toSet - - candidates.map { candidate => - val perspectiveFilteredFavoritedByUserIds: Seq[Long] = candidate.features - .getOrElse(FavoritedByUserIdsFeature, Seq.empty).take(MaxCountUsers) - .filter { userId => validUserIdTweetIds.contains((userId, candidate.candidate.id)) } - - FeatureMapBuilder() - .add(PerspectiveFilteredLikedByUserIdsFeature, perspectiveFilteredFavoritedByUserIds) - .build() - } - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RealGraphInNetworkScoresQueryFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RealGraphInNetworkScoresQueryFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..1d46d80d1d368a496124feb6bfbf112cf9c9615c GIT binary patch literal 37441 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

    60RlC4pwmiF?lbClm@mw66@ zP^x1`4yC;HMw;8$6J~=)V&EZQLV@t7+by2B~`vgqrs150MF(!TQa)hW&X=gVg|?Q^QRweD8wJLwPwm6elT&sq1z zYFGHnH)==K8-e!}8`);8UHBpEV*LBbzLja8bAkoyR=P~)pDu5s&L))( z-==i73-1?Hxx|-f-8WbJ>~Kg;pJm2x?s<{y!rPt-He6S2STmC|nr~jGavaNxSx@^q zd^Z};Pu#~aVb9OXSL;i-=lL#Qbg{c4?xi_X%sqkLe|IH&%1*ak#w$>>aR;T8?-E<>g^d_I#x`cTz9z2>8 zy5yp8!qWe8dD#~fwo5m6zGF+~>eejk5sXkiEIIRqoJ9A|PpcIEC8kF7eXy!MHQ|bh z$QubRox_DX4=d&+WS(Ju!JhP_z4x^4CEoZam-^$UPTZb$_}LWBX>ac;&uKsBduF}x z?e-;UX}vO2Z8JYjnX`M@xjog_-ZUMmUUPKYq)SHCm8HIKAF2MRx+`}u`u*qiQ=WJP z7oUE0tzE9}$;GX&<*I8QFIzsZ?%B=f^XeBCpT0Idt}gZV>h*hnUb}65uX20#^L71p z_dcJzSNq%k@0-(ynpc9h>&N25BK9pyj85M#!L8eit~D4%QCwIkF*GL!o!In02>414CRWD+51@ zNuE4VlZs0!b5g<6mFQuBexM{we*+_<4T@&8<0a9}L7yi@m{U{;GY4rB1zkJ(#0x@u zLMc=`+B6Kh3Fs3M2ooliK}|rJmO$5!K5C56uUZM!k3NQsZUlP&8)1Z81J>R+x&i1N zU4#MOPz=DwP1-V-P(_bW_l~S_o6vnxUbB((yvqkKP_c=wH}|l*Le6 XhXLNKz#Ih1Re}tO!0a)(2gCya9b - servedTweetPreviewIds.contains(candidate.candidate.id) - } - - Stitch.value(FilterResult(kept = kept.map(_.candidate), removed = removed.map(_.candidate))) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedTweetsFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedTweetsFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..2326f61df6282f3a33489b9e55e9ef9d9dee344a GIT binary patch literal 37235 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 - val tweetIdAndSourceId = CandidatesUtil.getTweetIdAndSourceId(candidate) - tweetIdAndSourceId.exists(servedTweetIds.contains) - } - - Stitch.value(FilterResult(kept = kept.map(_.candidate), removed = removed.map(_.candidate))) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/RejectTweetFromViewerFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/RejectTweetFromViewerFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..e4a65830e9eb5d621d936a5aaadafbc4bdded980 GIT binary patch literal 37074 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 - CandidatesUtil.isAuthoredByViewer(query, candidate.features)) - Stitch.value(FilterResult(kept = kept.map(_.candidate), removed = removed.map(_.candidate))) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/ReplyFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/ReplyFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..8b7bbb87420b6b08b271c08397b57a6dcbad4ab5 GIT binary patch literal 37103 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 - candidate.features.getOrElse(InReplyToTweetIdFeature, None).isEmpty - } - - val filterResult = FilterResult( - kept = kept.map(_.candidate), - removed = removed.map(_.candidate) - ) - - Stitch.value(filterResult) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/RetweetDeduplicationFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/RetweetDeduplicationFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..4be35a775d436fc2671e6b9714009a0c7ea8f36c GIT binary patch literal 37429 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 - val nativeTweetIds = nativeTweets.map(_.candidate.id) - val seenTweetIds = mutable.Set[Long]() ++ nativeTweetIds - val dedupedRetweets = retweets.filter { retweet => - val tweetIdAndSourceId = CandidatesUtil.getTweetIdAndSourceId(retweet) - val retweetIsUnique = tweetIdAndSourceId.forall(!seenTweetIds.contains(_)) - if (retweetIsUnique) { - seenTweetIds ++= tweetIdAndSourceId - } - retweetIsUnique - } - (nativeTweets ++ dedupedRetweets).map(_.candidate.id).toSet - } - - val (kept, removed) = - candidates - .map(_.candidate).partition(candidate => dedupedTweetIdsSet.contains(candidate.id)) - Stitch.value(FilterResult(kept = kept, removed = removed)) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/RetweetFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/RetweetFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..6d61c07127a998292b1dfe2715fc735f1dc3efd0 GIT binary patch literal 37093 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 lywLTdw+9jWYub>q7;5V - !candidate.features.getOrElse(IsRetweetFeature, false) - } - - val filterResult = FilterResult( - kept = kept.map(_.candidate), - removed = removed.map(_.candidate) - ) - - Stitch.value(filterResult) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/BUILD.bazel deleted file mode 100644 index 6be06dee9..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/BUILD.bazel +++ /dev/null @@ -1,20 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "configapi/configapi-core/src/main/scala/com/twitter/timelines/configapi", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/gate", - "src/thrift/com/twitter/gizmoduck:thrift-scala", - "stitch/stitch-socialgraph", - "timelinemixer/server/src/main/scala/com/twitter/timelinemixer/injection/store/persistence", - "timelineservice/common/src/main/scala/com/twitter/timelineservice/model", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..14995550e33e2a042c4264e2aaea39dd75b40d9e GIT binary patch literal 36982 zcmagEWmp}_wm*!!dvJGmcL)S`m!Ls65*#)j+yex6cbAR36N0-1NFccTe`jXSIWy

    e{ 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 z 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 b%3`Rk!vJqqU=9N1DnW)sVD|Xm4dMX+xsfbm literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/DismissFatigueGate.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/DismissFatigueGate.docx new file mode 100644 index 0000000000000000000000000000000000000000..f6706877f6998d32b9d7fdfb2d47c913b5012596 GIT binary patch literal 37414 zcmagEWmsIvwm*z(a1HM6?hb+A?ruRFcNz~6+=IKjLvVKp!QCYg-2LB~nRCv}x%a;B zm*$~rt)Hy5dspq2k35Iy8fEJr6WN$UYDnz}MZ1D$v<1WrY86gsRrf0{eDo!mi9NUAp0D9X=ju|QjT++noon4D=F0t&W1E@x1QDku#3F18J%2N%a$9(%9N#Dt&_Q`tI&%3u7pR9u~t4?q+A??Z(yp zhfzLrstebuw28(fkFfJ{zd0U>llk7{1nVyGN+|fYOBf2$1c>x|-(MgybmiL4yZvdwB zk1l#r$%@>Ay0;Di28IawYv^Qd>&(pb`?E5B;v*z0s{fggpvV^`Cb`R0P*^a5je0o0qB7Kovx5ZT;!AXqA|RA)TExa!GJ$0@^jA3yr3$ zFXIdV1|TKZ#QCMTvUS(i{mZ>@lZ&*GzsOOn1Da~8f*C6gPXV%wBgVD3%)wN2S!`3A!Xf_u-pA7?J9Ecr}FyCanG-XYXvLCU1F z>dVcC@san}adOOlo+Qm|Q7Otj6jMc$U;3;e5>NAu9EoHPllEso08w}Xd3-%uX>$<~ zSO!{2E_iryzp>n;0o2T5Ied`QmMxSUUX_mG_TjoNE8a>I(uzyXw@1@URzD!24pQ*1 z4+BOj`x)jmH85-hCvFeW?@++mMU+!j+*>r*Hou%WJ2`Glxk2ieziSSChn)OAclxBH zLL@L3ZdKQ99nfD`J2X4Hy~^lJ=`ZYJ*1}$c@zONLL!Dv_%vj4s9�yt}@z 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 !RoW{2)7J}@k<^E+8y*_w4TZi)t%FG?UL;m3E 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 NG9&`C$NF9n4*(|Z^#T9@ literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/DismissFatigueGate.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/DismissFatigueGate.scala deleted file mode 100644 index b35a6cda5..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/DismissFatigueGate.scala +++ /dev/null @@ -1,48 +0,0 @@ -package com.twitter.home_mixer.functional_component.gate - -import com.twitter.conversions.DurationOps._ -import com.twitter.product_mixer.core.feature.Feature -import com.twitter.product_mixer.core.functional_component.gate.Gate -import com.twitter.product_mixer.core.model.common.identifier.GateIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch -import com.twitter.timelinemixer.clients.manhattan.DismissInfo -import com.twitter.timelineservice.suggests.thriftscala.SuggestType -import com.twitter.util.Duration - -object DismissFatigueGate { - // how long a dismiss action from user needs to be respected - val DefaultBaseDismissDuration = 7.days - val MaximumDismissalCountMultiplier = 4 -} - -case class DismissFatigueGate( - suggestType: SuggestType, - dismissInfoFeature: Feature[PipelineQuery, Map[SuggestType, Option[DismissInfo]]], - baseDismissDuration: Duration = DismissFatigueGate.DefaultBaseDismissDuration, -) extends Gate[PipelineQuery] { - - override val identifier: GateIdentifier = GateIdentifier("DismissFatigue") - - override def shouldContinue(query: PipelineQuery): Stitch[Boolean] = { - val dismissInfoMap = query.features.map( - _.getOrElse(dismissInfoFeature, Map.empty[SuggestType, Option[DismissInfo]])) - - val isVisible = dismissInfoMap - .flatMap(_.get(suggestType)) - .flatMap(_.map { info => - val currentDismissalDuration = query.queryTime.since(info.lastDismissed) - val targetDismissalDuration = dismissDurationForCount(info.count, baseDismissDuration) - - currentDismissalDuration > targetDismissalDuration - }).getOrElse(true) - Stitch.value(isVisible) - } - - private def dismissDurationForCount( - dismissCount: Int, - dismissDuration: Duration - ): Duration = - // limit to maximum dismissal duration - dismissDuration * Math.min(dismissCount, DismissFatigueGate.MaximumDismissalCountMultiplier) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/ExcludeSoftUserGate.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/ExcludeSoftUserGate.docx new file mode 100644 index 0000000000000000000000000000000000000000..d8e394ecc13e167dfa8d56359ab185662a567247 GIT binary patch literal 37108 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/ExcludeSoftUserGate.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/ExcludeSoftUserGate.scala deleted file mode 100644 index a86159036..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/ExcludeSoftUserGate.scala +++ /dev/null @@ -1,23 +0,0 @@ -package com.twitter.home_mixer.functional_component.gate - -import com.twitter.gizmoduck.{thriftscala => t} -import com.twitter.home_mixer.model.HomeFeatures.UserTypeFeature -import com.twitter.product_mixer.core.functional_component.gate.Gate -import com.twitter.product_mixer.core.model.common.identifier.GateIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch - -/** - * A Soft User is a user who is in the gradual onboarding state. This gate can be - * used to turn off certain functionality like ads for these users. - */ -object ExcludeSoftUserGate extends Gate[PipelineQuery] { - - override val identifier: GateIdentifier = GateIdentifier("ExcludeSoftUser") - - override def shouldContinue(query: PipelineQuery): Stitch[Boolean] = { - val softUser = query.features - .exists(_.getOrElse(UserTypeFeature, None).exists(_ == t.UserType.Soft)) - Stitch.value(!softUser) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextGate.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextGate.docx new file mode 100644 index 0000000000000000000000000000000000000000..ff1ec2ef64a354c5026ebed7b52b18170be0113b GIT binary patch literal 37059 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextGate.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextGate.scala deleted file mode 100644 index 0ffe6793e..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextGate.scala +++ /dev/null @@ -1,22 +0,0 @@ -package com.twitter.home_mixer.functional_component.gate - -import com.twitter.home_mixer.model.request.DeviceContext.RequestContext -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.product_mixer.core.functional_component.gate.Gate -import com.twitter.product_mixer.core.model.common.identifier.GateIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch - -/** - * Gate that fetches the request context from the device context and - * continues if the request context matches *any* of the specified ones. - */ -case class RequestContextGate(requestContexts: Seq[RequestContext.Value]) - extends Gate[PipelineQuery with HasDeviceContext] { - - override val identifier: GateIdentifier = GateIdentifier("RequestContext") - - override def shouldContinue(query: PipelineQuery with HasDeviceContext): Stitch[Boolean] = - Stitch.value( - requestContexts.exists(query.deviceContext.flatMap(_.requestContextValue).contains)) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextNotGate.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextNotGate.docx new file mode 100644 index 0000000000000000000000000000000000000000..32f55bf5224e783e281649eb28037200acc4b133 GIT binary patch literal 37092 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextNotGate.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextNotGate.scala deleted file mode 100644 index c52f05f75..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/RequestContextNotGate.scala +++ /dev/null @@ -1,24 +0,0 @@ -package com.twitter.home_mixer.functional_component.gate - -import com.twitter.home_mixer.model.request.DeviceContext.RequestContext -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.product_mixer.core.functional_component.gate.Gate -import com.twitter.product_mixer.core.model.common.identifier.GateIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch - -/** - * Gate that fetches the request context from the device context and - * continues if the request context does not match any of the specified ones. - * - * If no input request context is specified, the gate continues - */ -case class RequestContextNotGate(requestContexts: Seq[RequestContext.Value]) - extends Gate[PipelineQuery with HasDeviceContext] { - - override val identifier: GateIdentifier = GateIdentifier("RequestContextNot") - - override def shouldContinue(query: PipelineQuery with HasDeviceContext): Stitch[Boolean] = - Stitch.value( - !requestContexts.exists(query.deviceContext.flatMap(_.requestContextValue).contains)) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/SupportedLanguagesGate.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/SupportedLanguagesGate.docx new file mode 100644 index 0000000000000000000000000000000000000000..75bb4261538ac6f20a79042a63d886140fe1e62a GIT binary patch literal 37502 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 BB*Xv! literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/SupportedLanguagesGate.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/SupportedLanguagesGate.scala deleted file mode 100644 index 53b681236..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/SupportedLanguagesGate.scala +++ /dev/null @@ -1,68 +0,0 @@ -package com.twitter.home_mixer.functional_component.gate - -import com.twitter.product_mixer.core.functional_component.gate.Gate -import com.twitter.product_mixer.core.model.common.identifier.GateIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch - -object SupportedLanguagesGate extends Gate[PipelineQuery] { - - override val identifier: GateIdentifier = GateIdentifier("SupportedLanguages") - - // Production languages which have high translation coverage for strings used in Home Timeline. - private val supportedLanguages: Set[String] = Set( - "ar", // Arabic - "ar-x-fm", // Arabic (Female) - "bg", // Bulgarian - "bn", // Bengali - "ca", // Catalan - "cs", // Czech - "da", // Danish - "de", // German - "el", // Greek - "en", // English - "en-gb", // British English - "en-ss", // English Screen shot - "en-xx", // English Pseudo - "es", // Spanish - "eu", // Basque - "fa", // Farsi (Persian) - "fi", // Finnish - "fil", // Filipino - "fr", // French - "ga", // Irish - "gl", // Galician - "gu", // Gujarati - "he", // Hebrew - "hi", // Hindi - "hr", // Croatian - "hu", // Hungarian - "id", // Indonesian - "it", // Italian - "ja", // Japanese - "kn", // Kannada - "ko", // Korean - "mr", // Marathi - "msa", // Malay - "nl", // Dutch - "no", // Norwegian - "pl", // Polish - "pt", // Portuguese - "ro", // Romanian - "ru", // Russian - "sk", // Slovak - "sr", // Serbian - "sv", // Swedish - "ta", // Tamil - "th", // Thai - "tr", // Turkish - "uk", // Ukrainian - "ur", // Urdu - "vi", // Vietnamese - "zh-cn", // Simplified Chinese - "zh-tw" // Traditional Chinese - ) - - override def shouldContinue(query: PipelineQuery): Stitch[Boolean] = - Stitch.value(query.getLanguageCode.forall(supportedLanguages.contains)) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/TimelinesPersistenceStoreLastInjectionGate.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/TimelinesPersistenceStoreLastInjectionGate.docx new file mode 100644 index 0000000000000000000000000000000000000000..a65559ea9293a257edc6b86127acf18f727bd846 GIT binary patch literal 37638 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/TimelinesPersistenceStoreLastInjectionGate.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/TimelinesPersistenceStoreLastInjectionGate.scala deleted file mode 100644 index 31fff2306..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate/TimelinesPersistenceStoreLastInjectionGate.scala +++ /dev/null @@ -1,51 +0,0 @@ -package com.twitter.home_mixer.functional_component.gate - -import com.twitter.common_internal.analytics.twitter_client_user_agent_parser.UserAgent -import com.twitter.product_mixer.core.feature.Feature -import com.twitter.product_mixer.core.functional_component.gate.Gate -import com.twitter.product_mixer.core.model.common.identifier.GateIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch -import com.twitter.timelinemixer.clients.persistence.TimelineResponseV3 -import com.twitter.timelinemixer.injection.store.persistence.TimelinePersistenceUtils -import com.twitter.timelines.configapi.Param -import com.twitter.timelines.util.client_info.ClientPlatform -import com.twitter.timelineservice.model.rich.EntityIdType -import com.twitter.util.Duration -import com.twitter.util.Time - -/** - * Gate used to reduce the frequency of injections. Note that the actual interval between injections may be - * less than the specified minInjectionIntervalParam if data is unavailable or missing. For example, being deleted by - * the persistence store via a TTL or similar mechanism. - * - * @param minInjectionIntervalParam the desired minimum interval between injections - * @param persistenceEntriesFeature the feature for retrieving persisted timeline responses - */ -case class TimelinesPersistenceStoreLastInjectionGate( - minInjectionIntervalParam: Param[Duration], - persistenceEntriesFeature: Feature[PipelineQuery, Seq[TimelineResponseV3]], - entityIdType: EntityIdType.Value) - extends Gate[PipelineQuery] - with TimelinePersistenceUtils { - - override val identifier: GateIdentifier = GateIdentifier("TimelinesPersistenceStoreLastInjection") - - override def shouldContinue(query: PipelineQuery): Stitch[Boolean] = - Stitch( - query.queryTime.since(getLastInjectionTime(query)) > query.params(minInjectionIntervalParam)) - - private def getLastInjectionTime(query: PipelineQuery) = query.features - .flatMap { featureMap => - val timelineResponses = featureMap.getOrElse(persistenceEntriesFeature, Seq.empty) - val clientPlatform = ClientPlatform.fromQueryOptions( - clientAppId = query.clientContext.appId, - userAgent = query.clientContext.userAgent.flatMap(UserAgent.fromString) - ) - val sortedResponses = responseByClient(clientPlatform, timelineResponses) - val latestResponseWithEntityIdTypeEntry = - sortedResponses.find(_.entries.exists(_.entityIdType == entityIdType)) - - latestResponseWithEntityIdTypeEntry.map(_.servedTime) - }.getOrElse(Time.Bottom) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/query_transformer/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/query_transformer/BUILD.bazel deleted file mode 100644 index 67763235b..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/query_transformer/BUILD.bazel +++ /dev/null @@ -1,13 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "common-internal/analytics/twitter-client-user-agent-parser/src/main/scala", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/transformer", - "timelinemixer/server/src/main/scala/com/twitter/timelinemixer/injection/store/persistence", - "timelineservice/common:model", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/query_transformer/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/query_transformer/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..d74ab95c68cbbcf3846da3a698a04b40600ea409 GIT binary patch literal 36907 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 z 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/query_transformer/EditedTweetsCandidatePipelineQueryTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/query_transformer/EditedTweetsCandidatePipelineQueryTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..27addb8faab6a87955531dba2435befaf54fca3b GIT binary patch literal 38142 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 mvcL< entry.tweetId.get - } - - val tweetIdsAlreadyReplaced: Set[Long] = tweetsAlreadyReplaced.collect(tweetIdFromEntry).toSet - val tweetIdsToCheck: Seq[Long] = tweetsToCheck.collect(tweetIdFromEntry) - - tweetIdsToCheck.filterNot(tweetIdsAlreadyReplaced.contains).distinct - } else Seq.empty - } - - // The candidates here come from the Timelines Persistence Store, via a query feature - private def getApplicableCandidates(query: PipelineQuery): Seq[PersistenceStoreEntry] = { - val userAgent = UserAgent.fromString(query.clientContext.userAgent.getOrElse("")) - val clientPlatform = ClientPlatform.fromQueryOptions(query.clientContext.appId, userAgent) - - val sortedResponses = query.features - .getOrElse(FeatureMap.empty) - .getOrElse(PersistenceEntriesFeature, Seq.empty) - .filter(_.clientPlatform == clientPlatform) - .sortBy(-_.servedTime.inMilliseconds) - - val recentResponses = sortedResponses.indexWhere(_.requestType == RequestType.Initial) match { - case -1 => sortedResponses - case lastGetInitialIndex => sortedResponses.take(lastGetInitialIndex + 1) - } - - recentResponses.flatMap { r => - r.entries.collect { - case entry if entry.entityIdType == EntityIdType.Tweet => - PersistenceStoreEntry(entry, r.servedTime, r.clientPlatform, r.requestType) - } - }.distinct - } -} - -case class PersistenceStoreEntry( - entryWithItemIds: EntryWithItemIds, - servedTime: Time, - clientPlatform: ClientPlatform, - requestType: RequestType) { - - // Timelines Persistence Store currently includes 1 tweet ID per entryWithItemIds for tweets - val tweetId: Option[Long] = entryWithItemIds.itemIds.flatMap(_.head.tweetId) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/BUILD.bazel deleted file mode 100644 index 99605204c..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/BUILD.bazel +++ /dev/null @@ -1,16 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - dependencies = [ - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/param", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product", - "src/thrift/com/twitter/timelines/common:thrift-scala", - "src/thrift/com/twitter/timelineservice/server/internal:thrift-scala", - "timelineservice/common:model", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..1d695d280d586449392e080488e719a4f942d37c GIT binary patch literal 36872 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 MiNNeJu^Yq#0F|EKy8r+H literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/FeedbackFatigueScorer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/FeedbackFatigueScorer.docx new file mode 100644 index 0000000000000000000000000000000000000000..9027d7904bffa7d22732118d8923a2eacdac61f2 GIT binary patch literal 38283 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 tl} -import com.twitter.timelineservice.model.FeedbackEntry -import com.twitter.timelineservice.{thriftscala => tls} -import com.twitter.util.Time -import scala.collection.mutable - -object FeedbackFatigueScorer - extends Scorer[PipelineQuery, TweetCandidate] - with Conditionally[PipelineQuery] { - - override val identifier: ScorerIdentifier = ScorerIdentifier("FeedbackFatigue") - - override def features: Set[Feature[_, _]] = Set(ScoreFeature) - - override def onlyIf(query: PipelineQuery): Boolean = - query.features.exists(_.getOrElse(FeedbackHistoryFeature, Seq.empty).nonEmpty) - - val DurationForFiltering = 14.days - val DurationForDiscounting = 140.days - private val ScoreMultiplierLowerBound = 0.2 - private val ScoreMultiplierUpperBound = 1.0 - private val ScoreMultiplierIncrementsCount = 4 - private val ScoreMultiplierIncrement = - (ScoreMultiplierUpperBound - ScoreMultiplierLowerBound) / ScoreMultiplierIncrementsCount - private val ScoreMultiplierIncrementDurationInDays = - DurationForDiscounting.inDays / ScoreMultiplierIncrementsCount.toDouble - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[Seq[FeatureMap]] = { - val feedbackEntriesByEngagementType = - query.features - .getOrElse(FeatureMap.empty).getOrElse(FeedbackHistoryFeature, Seq.empty) - .filter { entry => - val timeSinceFeedback = query.queryTime.minus(entry.timestamp) - timeSinceFeedback < DurationForFiltering + DurationForDiscounting && - entry.feedbackType == tls.FeedbackType.SeeFewer - }.groupBy(_.engagementType) - - val authorsToDiscount = - getUserDiscounts( - query.queryTime, - feedbackEntriesByEngagementType.getOrElse(tls.FeedbackEngagementType.Tweet, Seq.empty)) - val likersToDiscount = - getUserDiscounts( - query.queryTime, - feedbackEntriesByEngagementType.getOrElse(tls.FeedbackEngagementType.Like, Seq.empty)) - val followersToDiscount = - getUserDiscounts( - query.queryTime, - feedbackEntriesByEngagementType.getOrElse(tls.FeedbackEngagementType.Follow, Seq.empty)) - val retweetersToDiscount = - getUserDiscounts( - query.queryTime, - feedbackEntriesByEngagementType.getOrElse(tls.FeedbackEngagementType.Retweet, Seq.empty)) - - val featureMaps = candidates.map { candidate => - val multiplier = getScoreMultiplier( - candidate, - authorsToDiscount, - likersToDiscount, - followersToDiscount, - retweetersToDiscount - ) - val score = candidate.features.getOrElse(ScoreFeature, None) - FeatureMapBuilder().add(ScoreFeature, score.map(_ * multiplier)).build() - } - - Stitch.value(featureMaps) - } - - def getScoreMultiplier( - candidate: CandidateWithFeatures[TweetCandidate], - authorsToDiscount: Map[Long, Double], - likersToDiscount: Map[Long, Double], - followersToDiscount: Map[Long, Double], - retweetersToDiscount: Map[Long, Double], - ): Double = { - val originalAuthorId = - CandidatesUtil.getOriginalAuthorId(candidate.features).getOrElse(0L) - val originalAuthorMultiplier = authorsToDiscount.getOrElse(originalAuthorId, 1.0) - - val likers = candidate.features.getOrElse(SGSValidLikedByUserIdsFeature, Seq.empty) - val likerMultipliers = likers.flatMap(likersToDiscount.get) - val likerMultiplier = - if (likerMultipliers.nonEmpty && likers.size == likerMultipliers.size) - likerMultipliers.max - else 1.0 - - val followers = candidate.features.getOrElse(SGSValidFollowedByUserIdsFeature, Seq.empty) - val followerMultipliers = followers.flatMap(followersToDiscount.get) - val followerMultiplier = - if (followerMultipliers.nonEmpty && followers.size == followerMultipliers.size && - likers.isEmpty) - followerMultipliers.max - else 1.0 - - val authorId = candidate.features.getOrElse(AuthorIdFeature, None).getOrElse(0L) - val retweeterMultiplier = - if (candidate.features.getOrElse(IsRetweetFeature, false)) - retweetersToDiscount.getOrElse(authorId, 1.0) - else 1.0 - - originalAuthorMultiplier * likerMultiplier * followerMultiplier * retweeterMultiplier - } - - def getUserDiscounts( - queryTime: Time, - feedbackEntries: Seq[FeedbackEntry], - ): Map[Long, Double] = { - val userDiscounts = mutable.Map[Long, Double]() - feedbackEntries - .collect { - case FeedbackEntry(_, _, tl.FeedbackEntity.UserId(userId), timestamp, _) => - val timeSinceFeedback = queryTime.minus(timestamp) - val timeSinceDiscounting = timeSinceFeedback - DurationForFiltering - val multiplier = ((timeSinceDiscounting.inDays / ScoreMultiplierIncrementDurationInDays) - * ScoreMultiplierIncrement + ScoreMultiplierLowerBound) - userDiscounts.update(userId, multiplier) - } - userDiscounts.toMap - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/OONTweetScalingScorer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer/OONTweetScalingScorer.docx new file mode 100644 index 0000000000000000000000000000000000000000..be76299e528b46058a048ae019b07946a340512d GIT binary patch literal 37377 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 - val score = candidate.features.getOrElse(ScoreFeature, None) - val updatedScore = if (selector(candidate)) score.map(_ * ScaleFactor) else score - FeatureMapBuilder().add(ScoreFeature, updatedScore).build() - } - } - } - - /** - * We should only be applying this multiplier to Out-Of-Network tweets. - * In-Network Retweets of Out-Of-Network tweets should not have this multiplier applied - */ - private def selector(candidate: CandidateWithFeatures[TweetCandidate]): Boolean = { - !candidate.features.getOrElse(InNetworkFeature, false) && - !candidate.features.getOrElse(IsRetweetFeature, false) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/BUILD.bazel deleted file mode 100644 index 3689de6ea..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/BUILD.bazel +++ /dev/null @@ -1,25 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/param", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/candidate", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/presentation/urt", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/decorator/urt/builder", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/selector", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common/identifier", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common/presentation", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/marshalling/response/urt/item", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "src/scala/com/twitter/suggests/controller_data", - "stringcenter/client", - "stringcenter/client/src/main/java", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..d5ba9f1de0c44e407150215a966323460974928e GIT binary patch literal 37018 zcmagEWmp~Awl<1ua1HM6?hb+A?ruRB?kqgGTX1)GclQw7EkFXn-M^LY-g|fNbI!eg ziibJJcx8;LS+i=Dk}MK{9K^%jBwx7t ztWqcpQ+#IHoiEW^yLT%EvVtp~6e>Z(``bmHLL^GW&+AScIrF$Tke0fER6hwOovkyr$|v}4;O>sLD3(I#VL8m;ZhlVQZc^QU z6y-Cgx^SIJhiGid7&|Zbo8yrO1M@uHt>ywZME+IffKk-Irv-LbRTE<0tP&#FC2l5<-2?OC=lo!sB;j`A?Yg24G76 z=%Oc;tjIm6dz%noV2GfR}3V6$QKIr zewjQiwg*ZVuXcASOXzE1_YobQ?U`CEW)$Er(-+$YX_{y+1m-REX>HM7GO>#pv1}A5nQh(saKK1GKBeh3ZQ;5Zr0nM~L-dQK zF7-^ODR$WxZfsVU>+GKe3j2(xY6UvYXF&x*0~N>&V5;NONJ+UexdyAf^ik6bwjZE!cW zK$?amgb;_up9PpjAZla1u9;x3KV?hO@m3`V_n-AX&RtSj@|lkJMk?dIL#WM$l*wS# zmsL|D(b0?ZfN)Wdizp?h7c~BTHlh+BtXe*XRCA{D1c4dTkBo z7}OVAC@?V8zxT!1!Qqd#s7=_fv7mN7(L?FGL|DO!D&r;uE{e{IZ{XD?WVXzYlYNYb zYGd66`aXnV@qT8$3FmL%e`*|mS`xK@ZB+QAjy3U+KdR)ofzVVFF>4gP1ayCc|ip0;H*eLXmzqx%o~1K_oFDdXjy%~< z3@4)TxPe5qzDzUhGWsO0M@w`hmzNXrMVuyT>>GKqwK1UY8ZAdFVBImU^|qmmKMq;; z78&Z1Uu^jqTY_#?99D-gF0nZc!>?`}aP^Cu=UrmeC8QR3#O3#=gREMNBoQlum3A}= z-|1N)$-0T!ijTWYm862z!_*Whgij{K`1Gc@ArL6^k&XiWAHHj;Q`>*ds=6T|i8Qk=YiGZ#x|Kk=t0U$}^) zKAie~;?~w?w!S>s@fW%;^9Yw?kjrBeL+(rZ8lN_~a`hzO#x1gTJoWf3>nZ9wKYw1i zl5&{WNIlIwrkXXU<)O$LCQB=t<7j+mjl7u9j$gbuISi>+fFf>#yTxH?;Stx!;`WAPMREHHX$Ul*So_AsS=^zJ$t5_Ncub&8r~YTf`;g$iUcY;5SB)I1!UacDPz+r4<_3VGcfQ;}^*oRWVan&h0!T z6u55T1#gP~5j&8sG&=&A^FjT<&#?+W7xNCB1zz=9gy>QQos8ikbi%ctH~q4I!l2a_ z>yA`Zd3!^=DEmkZJaal_4mb9=7%h#uLSqyny9qj)Nkqsy@Vfm%6LC?{GXFEFO*VVq zVtC>&4)yW;ef!*2K^#kQWACVwT9=2FZ}Rd4fdO;TBAAnXZ~f`Hs%__7S&beExNqw; z!6nP0-`?WxN264!dK@R~NCI+7!3gd89N1julrZ7xo)nUH@h@Jf*Y9EnxCgVDE}Jb> zzR@#a(aVyWkrF`eY*VQ3eBzH{5xG`OP!nummRV^oFCEpzQ$udLPKEw>^@}3vhfXe? zLj2(iDKzIRc~gg-_sF8@+H1|aD7G*GY{IWat?^cO>H1HS7rI0xKToEfQzO?r*j++_ zELkO2kr`9lf{X|SIH^}Z1=f4zUEks@Is~$(EmF%;E6ZN4u$mGLwlxoKcf?0?=yz$3^|;UghtX_MiKf zBvHj67TnKguL%7iiI~Oqk?()yQ+3cu)fD-JNUbK^itlgfZkREM?*{DMarx#@+s#eg zsxEHwN4CIM|K*5{~Q8GstutZ5c?ro4(7qzJ(f#<93CS!I3Jn^8{b*2i%L_*OCxXeu3fhce}V?u#stdumm>(WACo) zx-)ip_PJkQzv6s~Ju&p7Bo!f6S5epaSe{VN-=B@GM7yt>F8Dw#UH>Hq*=aDDh64o*FEPP0?iUhH2^GlZ8$0Iv_RZx2sPXE7zh zEysKM_YWHv9jOZ)Plt0qZ#qIl_l`VY>IGiy-r6@qn1QRr1}P=yGXsaAsrx$o zMn4(eg_bN00Got}1}uRq*(2WC_HIkYpB0RAQ>TtoXn-VwFWhBUKpa8L8Ic!+(N7S`!|3U5f%;6ncuzHxt@` z5?WI&{8DS^t1axy6T;lt5o;cTy|W#f0Z>q>Dw&_4EZdEK#6 zQor7>9k_8HBJ!49483)P5m4Ql$aoqs7vT2bYapcW!qtD-`-o&*fwEJI!m2{tuTE@I zDKseI8%FCBHV1Td>%Ja2u^OUAFi?9451dm2=5LcH=g_oD>{BBUDS?Li=!KPQ0igd5 z7+wag-@obKPf9Pt3fU{Hxtc@Z(G|B-oNT>x3NQ#0r_{{2&#vplsj&5jwu~e$S0OLh z-wgb$-SVx*G}X2?c}`tA+;?=Y#4ap-j72+dds;HSQlqsVOtZWXdh67$UYvP4nR|4& zb9@<*xxErTITOlMmTJ;pm_HvlxVrjzI^dkiK_AjaP^20CHgMokPLz2?qaK8~@^$~7 z((jyjNim}(HPRaDYnTmvL~Xewj|f^kxCD`LAzOFvOGoboIez5&o0hpxz*A0X6hJeU zIm@aut|cO5NsG@7=jr72{HGm#CeiRWG#@O|TexqcK7@ueGEqh3Jc&YQ78UBF>k`ju zq_H2Rm8DD3Rg%~%f*JNP=}Bc7mp;NJD75!f`fU*~-)oF_j$kfUcCuy^fGgWxuicUA0<8SJSlg0R|2OM+;(S(#NJ4W~j*j~?id(Be;$`CXqsHXgMw zyR#x>n-T!7%`>Jef~s(djT)TT2|davc8MJq7}p71nEQM36KE3qUz1Qf6aaA1zv8Q# z@F7 zp(3Rd+AQyXNc;~}oY!SFc3>(f>hHqb@IiW1P(fZX8^1G>ATs`!L`D)gYEMMCKUB{r zx;LSA{*Lh3$$(Vqq`1=7 zW{>VIzcvirWjkjA39b19$Bvbe3ENkOC_yIOl;^Xdji(#eHhudcZ_($0rAfEEPs<)x zy7$9#IW;>TH9r@G6c6_g#`1UWqql_hTW%zXW9)aCRz#BZV$L|@@!p;s-ib4M&KRLG ztd|jHZVj!I+@1p6mNVUvhSs{7{6=!5?T(!i4%>bWMgVGd1FB;r;@h{HVad$AM9v{YI&rEzbu1BzH;^RaX)KKq(CX!bPlUsykS&bBcvE_kJ4OD#O|=JC!cD2?c0bSR=%ZE8*oZq z-#j|;SnU~%Nx92S`gTdh)8pc<`e_<@3_I+&ywL*^YJ^T5d#B8BF(dHhb@04c@o<7| z(}gI!Q)WCv<>N%g_H#lxH#DvI;+eb*A2D0QoTrUwvh2yCU#0}QCPnf5idntqu9@ND z@luZ10}5#Ugp>F48GRhvdz^bkweC$D+;nu!xVL+1QT@&&{M_Az@R46`Xn1$uPnHY& z1G5u1wxy8gnihe6w;cme;LY6;n6Dm8&FpT~QDB7EVeveRYxDV)C}?tRA5P%|J5cG% zELAFfS@bx@f;Q89%g_x4;#?vFxT1+!)ng|8ilzR(o;Z2t1U%J1+lX^@Cw<#HO(!(H zv4i%6=${{(^Qz5U2a++f26y&O zvKYQT@T`Q!ygJ2&;}2e;+89$EBqbPVBfg(aP6v9Zk6gZ94i9;Cyf}IS?_QJN7Ed1Mem);Luo!o~whCw6 zGC$9ZKzqG{p{!(hwhBQRZgsSzj@*zwsKh^U8m$Kxl%6^}BTLFpP)+3ArXov6;kS3H zoo1`F$p!(wRxdm~WAya+DEnV<>O8AUJT#I#AOW7RYO(2W5@4D?BH5C@Up`6?z^_P= zO`l`pEQvN#=x{#>7W;K|l-(&ft;t&JDxmVdmIxWldFJ@}XIvljg>FId%$Q114;g`v zdv;+yK-;t_Cz&dLeBwTYcbX_{(kZ@DKiGULWzFnh0VdIM-I@oPIxvtapTDIwu~(h4 z1zl%QA6XNpO&)oPo0U%~mSO$b$(f^=y@D!5P2${FYo^g8eP|{8XtjkCuz8G#`}2rR z%W60v1U~0dX$>6~W|cX=f9~eser%}+8siYLn&L}6ir|*;%lj7bX<@*1 zf19$?LP4?qEgQl3<@k#25Bbi^gx;^?40@`uza}vplJoIaHJdblgq5I{rbQml+sCSP zsYKsE?aO|vmG_k#9xET_I~HD{W|+lKVLz9J;`9`EEL%A#E62&GBg*qp*NzVG%R07a zAB~(4+?~m^U40-K z;q%-5>*FE;PNghLCJRr`vIj@4x-n+~f`S@F`6oV}Fu}k7)l{)QFJ`B@um5TKTtJ>TJ6;t`Y*UTT1;kH7l&>ZEL{5_*CdV9 zCw#m-traTu4D1DT2Io~|)2OPj71s3@zPWr4E2I2u`ortNv5oIn+D%33k7Tmgb|6?t zDO+RTG8h3ZN&B$};OtXoEz>6c=Ya`L{B`#zX2a0)P2&~Fl3hZKVW#hs{I-^AjwK2_ z9aIk&&+}M@%o1Iqo5&gLWeRvGdesyX*9c#0vA2^Q?kefOzfc3QiWc3klxdH$Z>zW# z#*jO&W|=&TvT8Jnh~sO z=C>pVuCCfMdn8qdj;(!Z5(;jNMcIaJg4u6tqX%L#^f4c+c*N>=OA$3H{cKVSPu5k| z+N7JEJB&JtxmRR#ob;^6SQ98m2wNy#rMP9-6+TY!h_dY!B3js5Hl!5_mK5D)lC3ze zLVH`c?nKJRVUKy>94jRZYH4wptSY)5ZdX;3x9%Mr;cDX|#P*V!qKu-}!+vkJ zJ#$%RZ)T=U-6xCct7ZVBl&430)LM!ue1Prf&VBx*V)NrY1v;LTjI4@V8>#m+gVYKs zV|C@D(Na@Mujqzq@8+_NJnqd(8R6ZJ=sVu*w{m1VL0pSIiz54czBCJh`hNbxz#e5+ z3v4#P(mGVaSzTrNhtH$x9b-lb3|FP;SE5mLXQq0BSYG1v)Oux%VCijhRel^JIradh zg+!#;Io8RSHPl>Ijt1N)7~~J^sW)kDlU1i0KE7D|PW1G0ScRqKv0W>$%4N!mj<>}F zYAufDoU5bOW@XTw`D=r*>$|MKFMzN^R{3<*JjL-d1N^a) zX4>5E@tY&$_0AMiWE*E?{i)*FmWvj6OvZQoQAh9xDJ!jH6NWLbN%CU6ox|R zL^@Mn4L36m`uw zTa+-ItSt7$j}HznUrVNTJP@M2XIzF5e@@?igSe-x;7D3uUV+vaOIEMSj?0E{%doRM zjhB7URBqGD?s(NbeH51>M!{heEJPY(J$94PILTJuGeSB$>h6chCko`4H~n%O+Eayc zm>h|9V2OulSd-_QQ-g78-C;mlb`i7+YOBQ8;&EaY!p`N)++2PCU zx#rmdWQfJqbb^xttwaaG*I}V^3Fk_fAFLKsIvDq>?-JT2$Nhts8#C6RJHhSTaN;CO zqZwpJr*J>*t{7}T@qS9kVSkF+P{Jw<+tkwC#{Ci9g`wbl&E;yl8%`X2{+)}zxKHNR+He-XJP>mh-=;(eva62! zmrcy(@acR#&Mzo4cla*(!>fl+zHr!FAs;kx3@;k(ix74)|5 zq~sh-EURy^yNv0i(Yml^mM!wRZv)oS3tE)7+~6N4DQOj`_a;Eyqp1HA&RH^kep^aDv1 z1T%#t4yX?QG1am$wCnKMmqcOOZUF6E+5oY_@8dD8u|N(}8-`-9AFUw)*A9aw*eXXfs=#xa0xJsq#A({^cbvYkN}*`UuX_U+!=- zXQT2$=w)^!>$T^&AVrrWvS}}PBgc_c;pWP31;2J!A&efDVaeju*-e+PXh8T%wP2o$ zfh*Fa9-s>9l^Zn5HjCG1Asp@Bq{|c-coe*+I?|tntvN(&zu3{^NIg5Rq6{xi8nX{Wr)1>tR>-phMMsidX8aUuWw{0hilrP!A>6@a^A)R0l4r$AwXTBm*5yH^+?ETr6-hz` z1_&N`{?zlb&S6AM>R0Us^@K4eYD&yCsTz1U{rFaBN9re`1@7#OaZ9R^)lB)Dnd%LU z7LQS0wA&#N*-Fe)q+YFRU8SkEp=SJ6^G`Jc2jM|(d#Sl3clG^gB21h#Xz$sVu25X( zx0F6mk}$#2p!5OV`J{pfG&80~q>Ii@4O8AWh&N}%t|SU7#iLmH?Nff@ynNTWessQ; zI-u4ZQ9Zi!xoVWbEDJN4iu#c^O*&<>x8kN*Zt*EOURlKV?hze|VYoDU0>Y}C>u&2M z{6j&U>VE6IYQ0^C%)BN}(2qMl`*sZbM;&&;=`nJ-T>I6>G)ds1ys&uHg8H>?^k)7h zAUVQ)9)QF~R~kkwP;C~a;-^Jt{Doj+-6Wf7r%Gd@wBd#-`MPw4B}Ci}__c{gYDf^F zn<^+k$J)l6Kb$Pe(mUYH@WV6_Qe1brRa>l2fqHpK-OPgKBYDo;;NcMs#O3NtNu>Yz z?Ufo7!*b^83_=tF9Rxxw{rjSMrkn^Ost?>PaHX;y73zXVza$hSMfkh}`bqhPf9OaQ zkdZ(eCiaO?M|}cO1x68jG>@ESr*)NEp~d~12a4ifJPLam7s^ukA zp!g4)am0VI@w)zhveArs1aMzaFU2<;ek!T4)`6nf`jmWR^~?DN3w-R5tT_C~}_)=p5 zB_1U-rGclj5wk+=b1PjaiZz*4g<=xZhX#_h@DnbF$MRxHk;`a}vg~0YO;bgYOI|^r z>KL+IdL^h%0-&6vNH7@*p+4ik%^?sr$xHUe;0R7e+uNflrJie4c)^8GV}Y;H{-4#P z8HLI|^9VW~{TUdQ(e}SIk0ruixH^Xmz)YN-s<=al9SbAW2{# zdY#eYcKhkv8Q}};_G)|MJEbyx9fZP5CPt`cppwcv_2=(&1XkUNG%qH(B(Gx?ua0ex zmk+gmh{p52U5J!4MEKDk3>?YZkcTyc?x{m-rtc^b3)5*IIUC_(*L4l=G^)EuQ~Gkn z)zw9VAw5{bfN9{F-HY!i0W?;e7nA)-waAK}6BEol#W;D}7*t470!LMbuU3ru1S`>P zcKxLT-7wWVe|4g_m64QPOsx=U+|E5P6WF=&J*{G`u~ zT(A;;r&IrBx9?a08&VjUr6os-&lGs!GilXmlP6D#N}HQF4dz7hAqRZ0H^w0qTY{mO zp5ZfDL)K_zO`oM73_V}Bj7N0NTv z?wt)E`r*B6s>&c$!w%bI#yV7R=D`311S6{ZBF2>olem(pI_LPc7&Q#@Yd|6xZyW{< zxQPgZlmTkpm+D&Fh)FlH1}4-ver+=E1L?nMB(F%x>kz>un(_Hdre^YrN^;@MXaU)3O z0PJs-P~df6Oh(#%`mh|BiR0KI1W1FsK0%HKG`>NG1rVB&FotQ#X==TbwBV1|#(^8X zxt(h7~-unyMG%HN?4Sg-CM70q}@yY?dx_r zX3{zZx9A}oQd7fJhs-dm%2_$Qu-o!=TPa^gH?Eq;Xk}SxH(jMOm3Yizv+Yo$tR^PC zt6m~7{hVqRAfqAOgAV@H_4>UFa{k)O=^~n*3g1OB`?;8cqhU>i>C`sV$tqQ9K2j~? z4b1W&SGXPe+Ap1t3EH;i1{fy08Ct{C-By`nU-y!6Eg8!xr)4r5)<}YQN`UQ}2bl|o zw&gAK)S$sc9?K<_gh4Yqqlr(unV_WUKa+U=XHxRiKI6^7EAT+)EazR-Z}X8tkGNGT(?2-9pzJsocD zvzs}b_D;|s+<7ry=l6UE5?h$_QHi(tw6>>1P!Z4p(ox}$@stEJF4nXqfgB#{l#6g@ zJWIA~56WrnNb5h8aE+2om*t!$^IGn+;-@^a;{Qis9^nC@t4Jos)Sn97{-?sr%&X9; z_^nDVFXcSZlhXH2V@{=du$O~*-xx>dstezUf-RVHT%xSx1G%sxZjR9z3pJIfW1t5RUK4bB%YHm1KZB-^YD78-V z8zwr^zl0Co4vf<)+4!EPQsrjcr_aj(jy4bw78lZiB)J-uB{YBrc@qO8Bd~_(lcT*b zkCc?VS&qlBbE`7lkM2Qk9!S|*OR*HiiV=w|Fi0Otsb#{$fL8C&Vl0zUH)pA3lDj!; z1lo!>2zskp-C94@LfvRA7{Rw}SYW60dfTBh^o3Bi0rk_g8h1zycp3W82aLmiQ_KEA zjSixQmHoZ@o^0D(L`pIGgWAn(0z}Qv^(XZ=N{mS4|AYFXdl0@eJjZa;r|mWy^xwPe zqW3M{^Y8v5zjYl2k*mV~LEgg3ff32{e~`}_$!tHwq;9P{{YBnyB=ex6d5@skqKx^i z-{l+Z57oAK<}O2nt*(GJ!TUz`c7!a#xAq_7AMY!@tZ zAh#_MO4-l|85{Iqj0=Fj5v!f|CPk$@2BXASo@5X{ZfX+8gK~S^pzkNKrm_L<8LMV} zmt#8(&$g17fwHwMKftH{^i5U$gZ`#N#3IlTeM&~>1%WIbCf^Fn@Jrd!QF@n+j7Xxa;c<_ZU$Q`Nij9@e)3(bhC8~`MI!S_~mJ}DQ<L(z zoB1LFL==0x>G34y%%%VWF6D{EGQ)zi9MPZB{ZHf;eD*lxy~>YDC-4>KR?qgzc;zb$ zMJ47$II22R%ZoN;lRxReeo7Z%m*@?AOW|Yack{Y#U#k3c33N>K=6!h5um`!yX^k|O!COv^vrY|a8v<7CNYYw-uP^@ zTM3B@aIoJFZbND6siJyN+$hFaj_!|1fZ4s8$l0BogLQY97(58?(@Oh)Gj8 zdX_F*u58%s*3_nOY$bp?60<``ti=UH=M&9NhzWCpkpQtX*O=~PEv%~?!7mO1je;+tzJDmrQ%>GNX>J>~y#LgPriA0|Sw9W7U zXOc!|9z{HYH&8l8m^JPMyTa{9lw;0-y&|=2qL}!PxMxLi2m^@w#{@eQ_|#Lqkk&@3)VXCIG;m&J1n3azbgSalbMuhWeH&VD%ExF7r=XE3GKtB${JE+x~&R3n?;-7;3%>3%+F6-ODf6;+_ z&QJa2-Ql`#v&d&^7MfB)#hcnVpuj>wKi+v*4E>s8iS>H6Ll<`QbW7iDXD`As;$_$w z+7@|tNiEzc#uNE;1lb0z;gcQbJZ}!&NAOrgx46e9d%mlRdojf>M|jpAWR{*G zBMt{1G;7hcoZj4ADY}ILvBzSySOl9yGQMhC&7^Wi@BU|`VH#&auJh-4j}%aY3oQK>!B=8!dSKPMN=r*r@+Uho6_J47QOL_y$}ob%R%$r`8iY?dBuJdEbPX9i)oWh{k7 zRrD)%uyypS<9xKRhaHxlc$|A%qZzqlMz)^YjFfVAVf7>kBAj0&H-A!LFRB0#K}CR^ zoJpI(MocBlBd58-z{PBwsqxYp73w)sHhy}R7)jnZ)a0}`{9<^;XtB0(cnG7qQ$lfI z3D!z^up~*2dL>>L$$j-KUcY0;h^}^9FBrN%xsC%Zyttw;sc^uzI_Xw#QR0ID9 z=)JOI2eSDPHsJtKQKXTI(2#4K8X~Mk1w9wNmD3&dz1!f2rmqa0(Pz)ky*o+0+W+0E znH;ZQDmd&_Eu+t?!qOst)z1O8O#ir;t>^N^_uS5R&LS*ZxsldpeXz@U5n7qLE!t4@<;y%0h&$2})~ll*&*Rmeqc-yFMzrl20kHlW$pP zO}W>shaT-&L-$;YuiD;-ua<6qpbbO-5;EU6Ibo(Vd2BuBmIM;_7iRN2(BMO=ozE>j z$){acE1rnFXR$x8T-JX`` zOvykCe?(I|KlbXYiN;`Y?R)wy_!*VzW}Vj=BslOtf&+8PpoRYw-1l4X`ESA1_{Xkp ztPdK;w%y*)!fM2t^!LfcW40BBPn3_0Sw*3KG7)cch>lwGk{iV}e z|GfJ_R1sP@ipyd}wWxtr1X|d)Yb%MihI<+`s)`8w!K-A*oC|VYSGH|=bX~AM0Qes5 zUE83JvOx<2Jnt_-pTf|o zJ>=t@?rQpnbY0}8^&7C^)6aZIT7==(+I~MM%nK_-%vPm0CK{x-6lqTD7?y^S@mVj> zBCd)>q(nkp9|2bprBpZn?z#zOW}<`>F5ip>AZXmXNKq}?#4)0`NnmvpJ`SmlWeaow zs|4Twd^9^NuMSbF)T0hBx;}PyEG~4}?b8B;w+q~c>SLWAr9@RA>5L>HvDsd$Ajk0L_CeB$u%5 zk+a=;{=fz`0w3d!7Q^4o-?%J)Yp0<=&129Y`uknKWQ-#z&nDJ?12`)F1~>};1Hj?V zJ#Y_dqyui`q?agWdCP;ZGE>2!(;_Ge!jdmL96xxw_2Tvi3IX6_T9^M`>$sZ#-p~Lp zf&+mMDrDb=PTMnW+x`Ea=5`W*L8W{G(=li0k$M;w#O zz(yjg5)d5-)~V9|q(9{Ni@wCvQeYbzWd2~M70?k0-f=L*@!#pRkRyBdFW1;81XTVI zcs-p!cTY&nNW(Z8L@fbW>4cQoldw`z%TfL>~Y2Jeh3tl^YaA<H>txD$=aa`>&U9kl%i^H z|FKoCIyIWp$Y|G;Pa85ieu_FWgxRU)#JPUOgUF-%yb7H@(b9ZqxL7~~<_z$$auP~| z3Ut3r9?Ms1R1QzJnj8-dKYQq8Y8{$XsEpFmhSgf}uw`Vp#ly9DlQ1zy|H)ahu4kmr zv@|h}$HG#_mQ@)rJpMfE!)6KKFq03nt7l{W5^ecQa=B8MQiEz{JmSU9v+~{ML5kLU zHu{O1>Tx*{N$2kj_ChamDJ1sDJ4BTX`wCPG)%u6=6F2*&bTIWhR61VVV*QDg= z=ZjH`9F$Sp0+~uVvaW-qj0|+9)MImVB-}4rX$p%XrsmnlYtHe=9VZR-A%~vq7rKm= z=11>}m(jnB7;R?-g!hrKh&l5v4t_WhVN`n?NiD*KfXI?al!Ev5Lb znE&0d_Of&85+@<7%1vtD_kU5bfT(bzep9hT4w-D%&2XE7Y_fgvWFhvlH5qMJe>9NE zPR8OFztVc&DaujDW~PyH{FsvFuSY{a;p#U1j?bjXpwXDrySDrTrA9F;{Z&^l(sH6w zGnVC{R+`8!boyf&`i9|C+sW!tHvF%k_DI+8?jIBfPwc1P87%;eOw2)z1fZlGdkT50 zve}5)x}q$O;y>8dPqeF>m|s>_E|X-AjBoq)hbNOZuz@R(&5T2Bll{G;5W)^Vx4~&I zFjb(+Hh&bYtmLn>J&joh$M<4=LdEzSqnEZeBn*{CaU$neEp3*&Ox_N57!YG(GW69@ zl(Pcgu|{}ucy0X;2`VA1NW+kCH51eJ`G#3Sxn&o{TTKcAMI+qWRkiMhf5vG64QG7nj`I0!NJh++7f7C!@1%&hqf6*B#&5=YFw{4shg>Z#KVZqU%s*#kE`1RVL214IzqF3rIP^rN&08Xcd z08I*|O5ctck+8OXH{s~6A?Y}_Iw}B4q*1tjWOZi^Zl!S@dGFL{Y~`s+MU+HwO1B@o zxzVT9?Zlw{u-^%CL7Hw_XDQ_smZ;#-_2Sc^sr`Ue`_wI?u$9}toWn#APUYSt9$J<&3sOkndJl$L8pf632rG2eWh_6j6fMJ^i2tTb3Z6oj5${fF$@0@ z1`EQ*7G=34iA8gC2^q_YTdg}hC>KH$T0b`sE8cZSZ{bKMB<&2g`Mzoq9_yo9PDvhw z&oQrPh=E85b~DBu65aCjU`E|>@gz3&zf~Zj{HY?O_li)VLRq8Q+O;b1P>~l&FRdj4 z8SB+`S>S?H?3oVp{c`ZT@$_%=OM?5P%;gzz66R;9aB)fU_Pg}xd&GSmFt%c;8N2%s zk~7rRJ*1)M1qbtE-t$mwQ~T7}tKO3LEKlUdV)Tdp zQ3feIJ}Or!27aj>jx`G5Bxre>u~(VX_ECCcw+TkIb;p#GBxpdy%?k*X6o+rP5TMxW zH&~`p06n8h7An=_utj5Tdy~S`qNB`pIJt%)CK{m`~`&d8%X!xKz6@@=KUtSfYN!dmWyz-Q5$9E zkpi|jaep8PRDjkNM`l|LTF`qxG8LK?_%tbm^Q^dFOgP&42+X8ggr-o;BVh#{;le+B zU`hqB6E?UPuz2g?Mq}c6Xmyf9+6WWs&jhVw#fyzejdG~?1A-|EMWpi-3Uiy)O9erB zXeE!Ne>yNip`K29X~K18kC>GPRboiDMCmEK%ZrGqG7R(Mt!QyPgby(VDYO`ZD;acC zme>g>FLq-N78R8cXnpI)7C^pUOw^cBBIjz9Wntn_H`3GfT8$osf9cIOe~u=`iPR}atb zC*QV>Dz4+Zt#@x+_XqZEz-58z#hfj_t24tr0QJ`T$!+A#-mYhZLHFCi%>HS{+r!!0 zc%j(Lt&d^s+u;$jU*zO_K0_f-W)~xU6ZoRiQ z;ak}Az|- z;a*uxNK`zOq9f+Hsx>qW&0ft7T^m~Z?pKX;x&FF$@qu|}gulk#k!Kq>zA=1)*~6X` zaOFd-eeRoloNjvv)Hq)20dNCqmKHUvt6o}Povi4!VI)@hqLpuF-K@ERhr z`8O-?Iy!2$7~N1R7HY;`D64uZ(Zz))7dsYwoh;gxPb@nY$h_J32xVu4i*VTd9%|Pt zkzp%F7G63sZ#E3a)O(n-x3>7Fr^+6xufJcJygc|gwY}bM5!c_P@m{mCKD+|!UTz0| zt@huYv28d!k}oNT2WV<+bzwi+-?e*a5!#zwSoO#)Hk;k6R?Jjja!fA^zg^U{xJ+UL zp5$Md3>w_yxzmVf-yQ9=-Hnmm?zG}i;xGumGAH0KzBO#@v=xlY2{PjR ztoG%uY~rG9JYd1c0gO;ukC0niO3cS7&QE_S&4O3vR~>S@%?Kq|X|QWm&Cb~ni8-_6 zhTD5uLCU=cx&;w;=WO(bfQEi-gNATHL+rOV!rod0uiXzj((gEXs&8i|R&VU2>oT)% z(>e^X*M<&Hc5i+%?L%`HAEiH>-#X5?&xr?Syw+~ntK90EPB_BZN;20dMs8SZ0-{ZL zfb!a#8(S?EBRbv%2`^Q{{me6wq5E?Opic$6o?IVB49eqkxZR0k2ugvy@Lu~R3x_2y z`u(BAo(zwakbUOgOBU=60eRo^S{WRWstqAF@DSg$gsL|UrUi%k;(b#4V^jens&$FT z2r~mwNzo1h;WZ`{gg)8S@9FV(JQBj|(ONdc*6FaAnhoy{cD3xAXSioFPD)xVPu0yC zxDT1#?un%AR}G^asu)e%cyn}v&n!?-!o|lS%@-E5dXtXo8H^$7BSs*fwB^7)&8P^FPgo0eNqfY(GDLDwtdz3*+OZ{3DX8J zPhuvG;j4~L@HN^Q%*Ymu)*@KmDNgHPRSLo9|h`+La_>Vk!e_A~kq;O$`d8b>=I zZl8~rHG?6ms(~hGS3wgbC!mQq&_u0NE40JEAqW=XTEJe?@p~wDe+T_5`*)DXlpQ!h zap`ZA#^3ONp!_}H?XooNPs}MYLv-aQwFjg&K$U(s%FwTEy{Y%m+#1SJJ z02Brf3bXkutQTO9xXmKj^c!abg6G}0-#C8{_?zcisYd8|U9wG37&<8Iw>4xNrwW-z z`cYfPEn~a;9Zo>meJec^J(b*e%5&Z9Yz$sjIhT9aMO*)?eUba&FAgV=G&3Y zEoarp9yel%`veNk>%GSV+=-L-&zJSAZY+VUj?Jf^Ox3W>9cB^P)kN=h+k{>Bj**C> z=C@Y%4HN`f%(kX(@S7`MVk6BeU)z|vc5W_XeSeM}E<8>=d|$bKwyK-bb0Q483Q=u4 z<;k4(K}&nSF>mvE;ce@24>1+4TAa|o-M$$Zi=9x+u>0n_`Q3kd&OIrW^VH$yz%Bp+314=ZJ z6cxz@1W7#%WUMSnj#rUZ)K5{^w*|^SUrCc^e(()#uoTL4u5}UM7K)f7_~k(`2eD8C zQ(l8s3fv0dVke8zLk;T^eXN1o_5BvD3HR3i@k#=E5H4Gd z+#?^YFR`24!&WG8A>^~@j)c@F+^=GuI!OCvQZ$NB$ot_BN{j8dHj*#m5Yk&ozW+h2;CxE;vFlqe1WomPAvo}XhSg);VmS2{0qd*k)bjlu?81ajp}&#fzG+{^@w z_9%ecd5*Lg^^0!B5s&RQp!Y-TdbUY?k>h~4eM&-|0F`|nkyKjM_rodPLyeWH?3t@+ zoF?dJD#Rn>Mnztwt_k86UM2S9+TPvE^JZBG*Dy4k4=gyBW^U6chhfM1#@r0QnkS3O zoxBO109Bk>Hq-WIu5hZT>NIbqSl9nVFe6W(Jv=nb}TEF*7qWGcz+gW{R2FF(-Bmqul$xH}AfG zX8uz7s9Ytjz1C`-*6w}OXMeV8U%|z<*tu8T$Ttic6Ikq0Y8v{nNN`{FW%6CNr?~4N zHMcj}73Z62-~G4MFP`2EzPm^sxP!157fTJEx&nC~F}DtSNTWl}ji0vN^j^dPTPq%C z?cHR)E(vYe4BMC4X?Z*)@W1dA4N-`#o(;h!A)>1N}X7q2Z4B3r9zwponlpUlDF5WiRIPMUVQtr0yydD7`!j|Ml#gGY73*{_>5qrTLpWEYo0ahcPB zOmnL1+oR61kr!8;@yDAl;PRALDTy`5YU0IvOs<4Nxk&Auc9+d7=9IQ41ykawGo@X2 zJn79VmIE92_l+hl+c``uRX-ivV-LsU(st6|31{3amp4Bd7;j?Ko++0d5!GaVFC*f# z4_$pI-_VJB_wg__UfO6_X0nIx{W@}1;Y-N{Ks&&ecu)V-dsr1d+WA1&+F ziHp^}nD<D~Ezz!`h5!{>=s zp>KAoDVj)O>rSqZB?ornop&l@gdW{#fJQL`&x(r}58^2~4^>~?j;9=HHSQV8r&fJJ z$Of_ID=&&VWPLrbuXWFwFfN{IY$9LVgLy!lbEFczHW7Cfh!CE1T&nNKF7FO#-yhR| zQ$~snwZO+0C0f%7p={pn59|p&g|T(^`(4G{Dd!LQI4jw{^zd(GPbm#vp51$Q5IuW$ z7(9X{@lL&<3}>#g2_C<*kTr#q@JT+N;v^KAE+M;dWF81RZN9xY|C|`x`Z3mypY&4{ z1^vKFK6-+c6^bfTj+_)GT;>xA)uDg-12{^kxjBmXXfqM6s*9QY?*IhvB!YUv>*xLW z=ggSYutgcNvaH+2ALUTkUX7pi%+(r@dvLX?UD%Q}6O5mwM#M(qBI|a*F59vi>uwcK z%rs#`+4Evl$|Gnf3G3GI)8Ig+-`le(FHuvNDLWpJMj-dqfOUX$eoc%ysyTDV0*x|P z-Is@@#b0N%{O0lOv~h3pTVf%xVxJQa3@58H_7W!$rOz8=#{yiEg7I@OE^=7Kl76>e zdTRH?V^wv})sziknY~OHxp;Lo#-3M9LP#`g{=8Gr#vinoJMvbk3iw)+r5bX1q3-te zdg1YzY27Xl{oHW7;C{erH^t5BJ?Xq{&{rDnCUd)&(L#J}>w5>?vyz%GQ=Mh@LMH&z zQ<}{@4@PR#-qCEbQ;RcYO6cUoOLf|J8mpM@N?MYQS=p~Uhat1=jHzth_sEO;Eb;c{ zd)Zk+vz5L~T4@=w#MPuXM;28><&Gqnh|SBZYgp*vA}v(b)q#ty2ljb9pkZ_d*K9M} zXFrQvM372X%{F-TsM7j4yHvR*Wtk86`w_DE)oba(H`=de#+SW6%zdXfD*VdZyy?cY zpK>irm+D`@cHw`yXJYxkj*h+sPCf4`faOldYP9wf5ZwCN_d)?znqkX^Y2OI3($a@Q zBG$jdyEAAfCBlx}en%c7D_-*Ivv5X2?6YI8@zJsW@*4v9V?v~H`NTmE-YDbe%XJ^u zQWo3D`%+<8N145@eGYyBU8HQ}kmDz0Zlh(m)vTH?Jzl-Mb%=A2-O1a+#?*{`hi!>+ zNd0u5uWomlJuh?SG$8v=Aa9^wTf+K=z|sZgK7ld}EA6z;$H9W*yti&%|BzAAgKkds zchY0aWn#G5^Xyo|>hQTcDOEAF$@m;g~7$i9* zhQQo8+E|wvsQqbt9h;_+a&R5WPM%TMbAOFsnXm2jfeB+aR1zR32B&Rbta6FOP?X|i z>p#%S3bR_eTFvJ+#1jcu-8sIzyQw9B0CBBg?Ta4jt(tILjDJ0|4{(^BGQ!*sHyB!U& znPtbd23uikw7BYB%_W^u6_d1+% zj+-OdY96v|A@{06q2INFK<HSfl>z0Rp27LVD$OYgP@YE0WhlG-UABKA0#T zq0S|(s5GZ0Vly71wq2m6-(}3}K{wDwH^}fwwIbxr$N$Er&~rM--?YF#M8M*P)O=L} zio*ylwyawv-=FiiLeuD&=52d#1YGZ8px&&Ux|&8Q3W>2fP60kqJcYKc6t`*g>k8u1 zcDGPXLDqE&4;vEl(dEN8l4hYZRmot=s<;5wrON23S87EQ=o^nrS??c zs_pDA&c=)HH>x6gPVUukp4DL9q|VmBIo7~BDhP(P#UgAWo`94Yxb4+wpVb&6;qXC! ze_8>FP7NqHuTd|Rn)R~9=$PNDF=w_FaP9c@z)r#3dATI^-QB}h!OIr7cS?0+P}g=) zH%U>ZmVD1+h<2s|Ti?T0!^<`uJoH;YYY!(#k-1U1mu<@WcGEVVMCBI`+x00t#bKsf zvPN9%ZSyjs#_=It+lQ_ef$h5tMJD5h>s`X0_{P_Yx?jcq*t zc{Ucco|ehOM{UO#GS^StEtlpoCn?x@zM*C{X*pifk;slUGLAL=Z9Zg%K#Cr=cd!TU z#X*iddjgMz@QyRGj)<=PbG&n{ZBRzd2ne)}S3fqEO;gf7^VD5uo1-W7^NR7kr!L+S z<1wq9%q_k;;$?=(S?9`i#Bg7{G1+_ntk-$VMB4uSJ8i^|YlGMV7G+^H4OTzWX*7qT$~?(+?u-AT;hC216$oX(0xIK`DVsHf|7_SQwg&Vg7v9i2%byL=%~* z`wNAvULU=_tWw`Pyg$3~vkv6w=Sn6r@wt5r$z_9SqhJ^mG7!RgXT~$NaFG5v1O(Pc zjz}?XGi{hyE*YnH%}?w5asWQqg(PIq_wV8H#%_;BP*!Te6MpUWgei~ z$})#*t1qGu!ueR4i!@;kV2AdhFd#0!MQZuQcW*;s8ecw%LW~B({EF(Cns!Q9F+XmT z{*Bh8TkKhZ63`AhFcP!~A_@V6x>f+|G>fxEuW^;Bjz@;VUf{aEK*w@dXAgtwW(Id3 z0&|%$m_ESx#{&jmvpG=j)kHuD3<$zZKZ>g25Kp#vQdCW~*ZEQGXKHZ}2%7@l7#AFR z;cbg>5Rx|H!%i^>@@

    7*a5FF$e>etXVl5jW{^pKyfIhO8uruTU3~gxehyPOq}Ocu3#8Gwh&%hR4w)p)*#*V z0T@)R*YSMtr&`J!I8+dv%mC8zT)ugRZ`5XenUlaz!+#FVvJM1D$0NxqA=!6ee)HV74R6ie(5~DCJUg4fNo4dKq1I~_BD!sr{A~fdnH%(eQQsJ zbRIB{4~Lq>Pl7|7%u0$tpVUqI{Ukg|GzfAW0!kV|idq6;5KcQZ$CJ4a8q^ki6w98CHB?u}spAMp>v403!-G#2&bvFOX!=q1|m zHnNCC{1i3DjZ7eGonSxYk6zRd17BH=-tp%8X^y@*9I@?g4>p9_ zxOl{bfknsB#j(xHna$v_oz5}hPGbTIN_c}O8Xw<#FH{4+??bWat9ftI$Oe6^1|I@M z&sO8CaFTz%L!dIDvDDe!-Jl&&hoj}@&<9qjPPd34=cF z@*ZzM*V40kGO})7Hh#X;)Op$uwi^2>n@9D$Coc4u8wg2&8hX5~Pg%kJ0t5}Tn+4s` zbJJ8P7*1rXeMQ0yVmsnfyPUuTO>O?a=s8C^f;SlWryfT?TsiVq#ET0GozusA^V=fn z?X<`Jy+e53=b=VKT18EpFDl()0vV+d$3+=4}uHs zA=|k5o8I0Cj!~Q}tSCzpb}7mBFPQ24YEQdI|>o8@w#UluKMyM4O1`cJW zbFYr1HVIat_7hvU1UbnIarbuFn@B z#eAfDr-atw7RTXoC^P4vP;7|v2sA9R90&A@*Gj3>VOBs9g@0lEOT@Xb7{?zGKvw^6 z5i!H!O>#X3e+yvEhn+{D?{ueG=VcP$N1DQ zTuPb=3Mm<3(VK4dnf42i&!6~E9Hg1XA*;ob(Ph13Pn54<)1;XZ`xu3|xPOar`M-*> z(&YGU-BLxHkzpXBLdE`DM~DAhi>Q(J2D?%xuRo98HV3?CMn@O-JMW9XDI0AIl76jx z8a>n2hDX!(j|JWaZ><_%g|3IUx2b)htSjUuGiMn`>kO8Ub%&Pm+-Shq!oA{I$h4v0 zWlCg!Yg6|}q2T|77hwr4W z3cB%#WpeH`(u}864I=UE^1DOe6^gn;@NhcJM=0~Vv#)~g0`IuMIFt+|N{6;)Q)4J- znEmGvjvk9>2w0yBZ0V1de@dSxw{?cg=H98ODS;j_>RI6(F`CtXW27enJvy=@PR36D zqvDQ^jqq<3o}j@N26o{?GHS2ycdtsHRsN+zHU9*twe+xmfFIKBSHxzhmPl0H^XwBpOf6L18z zu>lyrdG6xY$_CjfoAnQ)nA+o=eOCFvXPdQ^iXqZ?!*LCjS|5+U0Q?BEHsCuPpZD9i zXgw6CP?lzeDOo?GRY$r)_oR0Iy$_P8GKJxW^FEz{WPU6U!;WGh-S|1Oi9pOHa5B-R zm>@)WC}K_}K$4-O05iGq0xf1OUZglcx(HJ14adF794}?5IsLpO2&o|SwzHaZ-G`rX zxtRq4#g>O;DN$?a{tm(Xn`JmBimmjWLX<0^Sfln-qAkT#sMa6U21y3SI?U$A3zI*n z)d5=nLLI?NDL(%TwIMWNU?EfBAqUG=2L~#glK{m=rh2bjV^>Lo-d_v6A+%T}kY|;( z7%7OMLox$8oHHAS5z}@UZBkc+zKdxk91(XIFPu}ye>qN>Ten)77CNxPfbSH=7Kbi? z6H~2|afL(Z-&~a~#|o;Oz#E`U5M^SBooh{{AxX7eV!$MTVo-JHR>D(68v->x>sO=V zv;9%j3{pj09W2riEg~X^G37#x_e7XquRcrh4`Tj!KJqs$LNd!!RBo zI5m>f>t#sSvf0M<-uzl~< z|D>TAAX`U5`_AE@pLLd9xQDplXQzJRbHno`hzFXb!YH!=1(<1X~_ zZ6&xzu<{e~bBmO#{>We@Qw`TwhKEg`F^!aDH(2eWPVpGh=gY)(4+)=Fi_jY9qC`QY zpNE+U3x3&2wwt+abMN4^^}@B8`BGfc+UOX~EZ(@Vj0As@y=FBGURE_WYB5A$1{N8Bh6E^PuOWJaNE92-D|CxdQzK!Ws4osKB3d_Z2II&vOq=2W!;FSm!|yE$2eaw;YwPrjLN>s*=*HhA^3Iquf9(feFh1ry`*pl^^+1CF4(L zaU&*)iFu4uUYMZ98f|%yG5cx2EZ#HZ)&6CHUOmu)1bD1J7R+=-COwlptVQjXd!Z(KX)2FoFLg!IL78u> zt2I#ntS#)6nE!%F`4`^<$Un$iU6FUL2x{}vl|1+%Md5Fu(6)i=!kCw@%n7o3P1-~NA7x>u4V@*tXnWTubGqI?fU+t&rHQ!e#%jx_MRJzrgJw?zamj!Sv zpsZnMVG&bph2RlpA-~K%9~VyGFmvOTo~a2LUC)Cl-=Zp`$-# zd(Ai_n4ES)u_0MXre2Dn9?IwNPOelVU+7eGF%Nh$Z={9iU``X%Uh}u=H4_9!vFA&8 z`zF0k6`hm*)&LcZ55xT;KnKGuDtyuK191;(H=z!LP`oISd)hw5;c`MqmTucA$=UNc zH19_hcvFb-WlZqUeI%m!sFpNOywl`;I+7%Kotd&TT(k(;a*gnXN`^h;_cR$Z`nhhs zZ5?CqLTj661mVFmaSa`G%4`p`5asbL!+0l>J-yIvr!fLFqAZk5-cUFtz+_tO+g^dlUBgJ$r=_6UJRtf>#@KP zN6Ifga0rei&GWQ$L6YLsKGEJCJT&_gw)eu;7sH!;&q+} z#2njAf%K&Vf)`zH#EV#B*K*mCkhMtm)>NgU)CTvc4(`y9gmyHcE#QmR@L|J>?lQ!* zpApcID6;R&X#W&)*P|xO`*A2-_F$TsQsAZXzh>z1fXz%D4We?9WWtBdf>2}w)HKtGPAc1CmGe1TAGEKS%LL2Yog_P@r1-z~KEHp#B(`ALDOcs1tTJ)40&#O-! z2{z#V@33SQV%iB9e}(1CIH>rM!a(O6z$%@rf@!5+=~5~Dn=M2IGBd3ziq1~B8G$Yj zRGKHJ+{>mg7+tDC6RpJT|LZfq$DkEnqZo#~piw}usp6Kk3T#-`zv6v@jI6hSH%Z5>f(lqoP+w?t(gBxKC@)XI2a^J!?glW932G_kKhRMfb#r=pzLD{Ax6 zr#FO7Yr)Mgtk7-@yH$el?F||Q-j#S8p3zD}nyK60oQHE&p%)~Q*~LBkolHP{@}~}Z zATDdN&qqR5!;iJ;u|OzW|89{c>c968dm2wZ=j1E(@X|;|h7`_2vhN=*)<%X@fImuE zv4-jj!Y?*GAZ(*vzLAsH6wXI-KBu1s=ZfVVhDD|3w~zGlGc|V*BLP~DC2|d%Cgd~B z?5GIAUDsB)AjoRCU^;8x(gAX;@avw+Fzzk%Ffoc>K1blMAkf<|8lx%0G>Y#{2^Rg}aZ;m{bM43?dup z=lLp7DN8<>4W#e7lFR#7Jg!}gKVHa>(d;AVV|*ti7#?6DZ~}VvA5zEzehtC=?U?Xu zLDelZb>_%(vd2jX--kNH-;Uvk)OH(jdqik^4FKku9c~fq?C6 zzR%Vz8%;q-XX{-<)<--;9`U?efNWC5)I%%HST|g(E`N{gEc2itzYy(K!}o?+#8Qit zcFM$We1t=Cz}q11u{^mb=L-i4LY4)ngASD&*7vj6;7Drs{d!Q@t{)W=?2G^6 z&bUi6q})2J{Ioy8Vx(CeT7{sATieLsRJ|2OI2-fz$ve#{758Ax+H(C->NYtC0^-_b zcJqj<9we+o4jeXZJvTtjEt3#XwjQtuJf*nGJOyzO1zHy`&BD+D?AaDPGhf#tzK-1z zw3$ixFK#lId7gLlUfc$O0$ji390Os>{=k&|4Wkbzdsdku{PRBD>|<*bh$33o?T+=m zU?4Ouz?Jy33G-bTQrBR^)c1%zjxTH0M88$Xa_;}nV4nbGychF>)}f1bA&b+hO4$FR zvmUXvMi{&H!^g8a2M6F9mUFCpsW8Uw%hGRsUAwpmg|*A^#hPS~V}m_D65uLRaF1V> zkw4D+M+&0f;iq{X1OiKZpcbS#3)LHsg3atbriw{NP_GY1Ri!#`)<*x|gx>=hE`)8J7MlwaMU%x-?2>}d_ zev2bhFnPoH&}6jPr`1Z)tGXH!%a&f+6V)>}?v47RTkVrV6G?8!)ZtTZVOB@XO zq$&gV*y~cGdP+fdB}YR^HX}xVmZ5<*3YZ2^L$w4uYKSog=$Pc`>`(VRr{~OLdqr3y zG3+2|<17pc`U!3pnk+ya=Vy$I)aEFD(*X&0Sf)syK0%#jUoXm<22RqFn{g0F!w5&k z#oc-tE~3ijNRu*qgSoWSWHnPX)PF)!14HtjrMaLf7P8P)S$cHAit+}yfE|e=I9kwA zA2hIkS^I&=Zc8e{+mX$s&P$76ZQR34?4ZnR4eqK0I3!t}d|H4KcB7}Br%8vngb-&4 zH4kz@8*RFce)FWcNXXAlFUU?_!eLMa(8wZ+^3v*AWxJ@*u*Z`l8aQ~SDFfhAK3r<4*X+>xYkLc#IXkpLI6>TD-w*(W7k8ftxIfaJW#A=XY?EloJ& z(V@$CwWDH|;*hWJKJ5}m#fZ})ya_>i{E*OptT>{0Am`q#5U`4KVM7Ma@gLG;ldv(8 zN-8Q1^5psD)i5#nP6f_*0pa)zwW#4VC~SBEz>6@z!~GnLS1BrwGC@8O?OK|OD(%v2rR3FM7nSxoo}*$V9daqW z*UdYolzDQ)E4I~_a$veBi405^*}PylkdKNDCuJ~3eW$lq?_2Wovtj6|H=`0iEn!W{ zXeOguUe1nQ!r(T+5F{r}S*xZb{fiS9yH~S6FAcRzye)N+6g#sv+!0K49` zpb;k(aZ-k0+LFE1WzdU)hT5K%TBzppZ@i8}r-)ARM1^d)h+qw}fGHc93RTlJ@sut; zH-uZ^(gc3j^{h|qUsrt`a=&PMgc2O}$`oq)fL!%joGIO}B(#dK>^jqVN>Hh^1#Xv9 zsE5odKLdUNFOhWQw5w6lyZdtb{)+nY84$};zs!p6hoLM4oG>pju!f%F=;XsK{@}5MmGD*B5?9^;ub316Rtz{RNtVg!$A`xb zX8QXD3{l0>0uWf*?I;Y5%nT}g6G2xDY&S#o6j=oSCREIy?V=zgH<;Psi)(^g+2248 zSh&#l>(L4w|3iw6;qJ~aDd+X$zk25t2}v6E0Xt2d!2U<4DOYnhH){vWzxG+RXl%KB z=fUXRDKl!{vw&@NmOr39qp06jpt1wrBmkuGD~SCAcOpW8;tu&n~eEzs!JKwJk1UZcu zZ8AW;P^gZMeA-(yN|GXI+xjCq;^80yZ7X;iepPUz10Gy!MoSJOwRDsuuZ+He#jK#d~tKWtAy-BYy67>%7wSQ~T)8u)gbf7W z$p<(9gNGD}5EE|BaInll+CJWJ5w(eD%Xb)TF^QMwW>DPRdv`-JS$UQ{?TCpKf+1#6 zhc=n+J!gD_s%^iCT7-Br5j|`hNV?~e5i}h50ojrTd5#q~9-!^ayEqdUgFy$*@HhaR zDJQ*8D9v|~crC&1t`_u#+&w!0vApDcn|8lPbuvZaj|%e|9k;p&o3jJ;L7r=dihAT^ z?~aP7O!4~O03j|{6p)E=5;a|4b;n2ft_+k@2zmRcvgg(1j z@_nfe!Bnm^_i2DV5tHQB#ph#>GQ{kynvrUV;A60A75(V)EABH;+iNcYfupy|m00^K-jvF_XV8c&QrmLvf$lRQRc2Ut&111;uq` zv5f{f^?8S!*qr{92!wsDk-K4xyf zW{3p=WX`*H@Gw#Jz$}_oG?5L5uq#=l71@b^lC=f68EWR`C%ZNmPS*n!=^1IowjbUM z)2>XxpZ)f1P#XLBmrG{EKf<<5M`>XAVPdc{FX57}Hi``@AzzS0!()cYOe)wKWlm6l zw@RMCjm{?^T+k7wQd$No)^zGpvlCCgW=N z0I+&aIXSF@7r2ZWe3h(XrZ#Rv9H0HA5OUi4(cPU95ur;+v25Q@Htg>p|LNFo-h5Y6 zVB5^!a3COP|KpeiuuH6(v5DPZy)(B`2OPe$5RCr#8cCCuEo+z5f`Ljm8rnRCgzpW4 zPEe1vk#Hs4vGDsFzg-;5RlQ8tgMGZ$75y{?Xdn!(o0v2>DeuSZv&qN98=+3y7luYE zaXPy8AN_bv41?gT#Xg7p#4kNlp{BGk&nQxX=sOvxN1Lt8I*S%G?HZ{aIaO5fKHk;t zn{N7;(Xd06R3?KlIB*m7Txl+cYz#tFx8@{T(VT>H;pZ7qAnlE=_@3cWFk*P|nq<;A zdwe}RDHLq6fmN(A%aitA;Tvk>#tag|$!xk7%Ex0YN4EHwifKqkt+1A z{19j160IYF$62V@Xvk#y8>8b6hFTimzGZUpT9m%~jzW>imZ(LuVn+%WDLNf)IgnzHE%y@Ix7!>uE93+Jl=8yOSAxA#cPCc_@B6!Pwn&5K(vzWYs(d z_5%XtQyXg+Pa&1Hy2wRIO!&fh4z*Q1gH?`$%p8){cpuz%lXq9vkCyg6!|A>}K?iw+ zh}YRWDm0mh>PdVSPyYBV>$_B;R)bwNBd5cG)O*2H)v@aOeMd+z=9z{cM_(hpxxc3M zQeBjJDbz|C_O1c0H0t+2wdd;X5Vt7}>LcPoJU6&GJPU5$Nx5XZg1$og)=bM3S9Sq^Gf~ z7Vn_JBb zb0Unpgcv!bAn3#u@)DblO$JYt-&i*VVc%D_=3zEq5HL#IufRZD--!~4dv|RZ2wGq_ zT846xr0Fw}HF>;Ko>hNMmvzhGtc4ZZPrMO&u?U9^fWblNP@;vcxb^YC)e1lGGAA;B%S@)nJl)P8Oy8? znpkBe?V@=L7Gn+C1TP=8nX(ohmWa)VLZlsTU^sCpd*=QmS<8O|0lLusD}k`KN$g7R z*XM(cwAq0wDQ1IDFGtGsX_JT?=sPQ>u2L3-(G9KE`9(EWRL9NUt`jrs6jf=5CCkKi z=#TI>XwaA=ml?OG*%X!dTsFNzFcyMP%1VauKrrk{`im*chHfjd#aYD6KB1yaEWO`5 zBz_})fx;~5+Fkz?a>UDcMb3iCOJZ_)!xN~P%Mv0-!hbL z+c;cAlCQU&$M}`bu>7I(^bI356$zX3;inWIF^29^#LDvIaY#Yo{a4lf)a33Cx}~KR z>JrJTJL?MN2pmP}IN5`AuftzghG(cT#e?!WFNYb5snWCxO?cMSO=xI`B$V=f1nVHytU*m|*lD#JSeUoDgdF>s;PBhswXh7l#!e^I_9?p-eE}*uN@08} zoJTLEmFX6-w36$5lCr8r-FjJPNhjr}derFz%AOU6Xe*1PrwLt)JBKMs_zfSa@RdkX)x?>Z~*$gZE?5t=1xRuAdTs?;2@%JH$q~+D@J+KsP|{>X1)kr}(#=Vsx}?mbPu8e*Pe{Q5rohYgz)^e zTUyn$)ECtN&@((G%^Ck}p3Vn~NGuD>Jr4tr-aj!Bh!=~<9S*YBkQG3#U|*JkiSyES ziMB+t9^Mfl_s$5qoF_`%8@W(4sA8;P)uu{2g^&x9jo6Y3$fu;T?>agAdRq zA>--<=Y1s!ApUuOEPRg=auFf|on4D!rD`dq?cVMINva5rO*b)taiGVFwFIFN3})$6 zfp}UI4*NFlgwq^|UO5sNWv7|yP1VAIC&hehP1(2Zr$LCLg!;l%3&mr6Rl}IOMHy1p z4wq%-61=?rU%CV*kCuCYdZ>ZAi2kAL@9wbwR`*wH*qGS{V1AAQwcDde+H6&6Zb?(1 z^@IktF6u;D6+hb=UV`2!C%xTUs0xnDwoUl))79P&xvE`+DsH~Kv@*s2)ak*Q>)dk9 z&mo1R)w!8olI0w<_~p9j(|}EfnbmECxCj|;2TPe_%>*L~gL*ni>QpeV7L#eNd*ii< zgriS64=( z#rK{1cI~@#MzkG&40rh8L+ZZPO>*6#{dC2QCOrYU_w2~RXTn`G&4^uAS=ABt5Ibnq zs{Eo?HZHh>y9M`br7cqp=kB_2>hOx)NO-uCPE6Ynl)8;WNoOjheMl-TA`VTZ`ODE2 zje6w)XVv8bR&w=zD=C?b=?j;8(WnCPaJk57Qg$LoS`#+!^Wndjw8R&Vx{(71z=EeN7 z1=tXR+@X@<+Kj!5=+V%tM1Mun+?zjJS@=96;Am8cgc2jAXgdn2hoYXK(p{D(ePPf- z-7a0?-|*U5(!>2lajN0SjFw?U4s%0wr6O zttju$4ztGLRDLszvPsn#S6l?skBFS|@a+g%n3Ph^iA!j0*^}sAygPb|WaQp%tlzDB z6rM1TKv6YV#*F0t2JpD)eTYR}{cbV2aQbP|Mb&T;GZIS_fRE54BV|H8dna6((zmOY zR@*D%vHCCwYuhuocinR%Zy+Aib0fL~J)p0tKYAGAEx`=skb}why$8K_AOeNsGZ;d@ z*|~yFbN)yw3dJnl+x-u}_Yb6I;s}#)o}>y5&X|T5tXrRacmUg}xb=$#7<)xt1EyLe zFxw4r{z7%Id3-gUrC7M`^F7A-hvJ+m)~B5rzPlEE?%y!IP*jFJ$2HDS$I2WRr^1;& zpLTG&Zd=qXUtwyI(Dd0M{K|Jy8T+hw>T*Zua z&Y?0%3h0?s#$Ogw0XYdTAdg`JJ|7JjYHr!iO7nqyDiXp{&?xX2IHP1Xx10hPhTylG zTg9+S!3l=nF1Oa-db97hTxWT`PaF!z3Jr(m?$EqpSrEX@JwzUwd#4;)YMpqhWG^wf z+(1s-ItKSZY{9G$CJUREOmsT!I%Ia>8KMI@#zQ&Mbm6dh2{8SGZ1y^x&tO4%&37YSI_u1(mahcvpU6n8>Go`8qC1J(=S<8%mgOm7sxO&XWPSHql#EjBI>xI zez;W>c!8QA)of9x@|t!JT{Wtc=Y{+DX|*c-HairOz_W>pSA;YQ^BhUkQJ>x3IIq$U z6hQA7W8Sbed0H{jH&5Y9yRw5}bQQx zN1v8iX@AR8BWPQK7ly9cIY~I)lu(B*_Kl9yvQ`x)nQ!^m=63yM_)-5OGRMgpZLvSZ2CNK{LEdDl70@3PB0hk+>7F(Zdk zUV0uMja?{|OFNo^)!CzB;Y@b%G-!n7JIjEQ9gc0fS-JEuyBV$v zqIoFoDekA6?Zj2N+7aZb8{8k~yS5dbz{Xbv+7-eod<4PEtCt^Zc5I=CXumnTTK%t& z+C?oFF)t$fi?b@}myXUSY2!}HvI2WWeZJRzcfZD0BcZ5ByvVM-6ZZV9 ze6_xWd!Fy|MHjm(;$E6F#oQC<{dZTgH|}23M}MX_d@jEowr%~fmw{XSQm}kbgTc)M zmv2^_Pj=(~Af(35UvMh2VQZa&VRdTG+f6s}MQ`$%txK5q;=!Xip-V0bCoKIhmzRA( zVY_s5=R3A!u5Qhu9>ECZ!;&*!$VqhX{Ip8pUt(%R-v_JOQxmS3h`f>D(m7nH^RQxG zLgpFf7wkz-+IvsyUgC{^a;ZOl>cs77ho4R1oc8vv@|^Z_zGv18-)>)$mewmX)i(3f zlsUVXo!e7=?M>66>NQ8VO}b=MU0Le;_L1t3s=IOrqu+mCKjn!>aPjF^*V^Uko?P7e zTCTe0@v`Of>Ym+vKCgaZ@#$;R@s3+u(YYRC|5;^ zA2thaocQ5!QR(3>v6r!{+xpK(Po9)`b3bFsd**wA(aKG#j&8)8M*(izh|iG?!5Rv^tHrFl^%)rALRlI3QB1lC3{9{}#U+(F zso?2K^e{j_P!guUfpMZWie|LqCDF}6pC?6_!&C?}2Wb)oT|4^33qt#c5~y~xX&7`9 z&?h1gCMcCbO+cBJK-Z5xYK+jowF0UieGD1h2=x9p!iaVCSbO8>2B3Fz5eBq1ARB( z8Z*jaFw6;A>34p_tMx)%zRlEn5|Sqd23cAK={@?$-A68)1Z=iRbACrD#8Z#nM#8X=0EJg~F){jX{Uk6wL7CcThO0s~(Ne z>@s}Z8&h_Fneg`@e~<`}%6VC0rq;~1%|!Sb$oo0M_*_H!lW}9>fJ>eGBtwI8+*X6Wn8`Dy(&@dV5EY_#Czw3>JR+7g4};B42-av`&TV2PpFE?CP{XFe!@u~&PO?xL~XXbmnE zz9W##Q++2y$1Wr4h5|*@g8GizQj=7eVFPnekFMc#Myy&~(um$(2BkElED8M@(Un%q z&5vmo00WSgZ{~_DscQRS=Mi}?((Ec@93XlW?})CJu4vAN%Ug&d>x6kNA$u?#TOQw* zh4b~XUHPM4#Rc?=PNa*pc!$61}7y;4}KK+K?W;usqL1NOTlhDhkJ5!x6ocUkHMXIQ(*YYQFxuF zsRhz3G%=JUEa5EBJQ7g{`*qb6XYDCRik`13C8Y1H=W+Iu+KS(7tS3qZ9|@s02U0eZ z%|L!3oS$N#o{Mwt(-c{Dt7>unp|~2l!ty6g(L~y>6v(7|Sad%F1BoM&C=wgc%UX(w z!Lrax^T8uh2TbIr454P1D&T{ix9yviSpvbdf`T zy&p7I-OsY1t%YGHJaK=3MnVPW5LHQ6^=Q>(--p>KXX!A zDH@ayx2EU50T?K%8=jlnSz~gc3J`HMZ{?`Pd}$u%rAadZX07L=40{M!g~4Yh-(6o= zvt=gBVwH$xLCJoV`Oeri`Q@;||Ly(jyCp(~d!7p@ydx_VL%LZHiPz`8OM-v)<$84$ z_ZZX{J18(Pw7>Vo#L@AOwy2Lgtg@nYJTX8SxJFvTimBiw1}%uqNUY=6CT6wFjgfyy zfNEpg0s1|JWAlAtxrq>H5O``Fds-B;gl$y(sDVBH@MT2VX&s@dCUSUxb@G7R1*#mn z3|n&$-N4CcdaP<5h6&y^T}!!o%!j-*3m_YVcK;CMRcRlr?_3w(f8Z4g{ago z_qzLm^AzQ#rH#)jtV)p;kS{eKE4)glg}C1D-W=(qrXZt8Lzuj9K#hA}hZiZS>Jm~LJo56#(|&d>X0oU?;qq5> zO24TYVX3l<;_h<@89W!#*W1mr$V~me1{^Uy)J%TlYk#A2#-+6R5#dF9KBy-!lCY6;Ti|?`vL|` z7FKfS6WZ{eS#f-8{v1X7^P3+c!dy8iA9npw@XZ@C!XL82+#kKilx z0L_x<+`5|DwSwia<@ck!5Bkq2@k_7-h$Q3(JimBh%GDw~g#%vUDB`8UsE`i9fk!_f zKG9IlVTM&{J6iQEriZcpqBC`V#Nx6V3KE$=rJ%_EyuSQF(C5ZeIPe2Sr?7fkCoY2g zw>5MPO>g<82h`bZ^pCD%TsABw@WyDO4D|T^MWkoM3@ElpvKd*$A8@xLpW7km<;PsH z_o*fv-`zOF#Yl+z!oevd9#;R1aobAdcWczY)C`BCH3~KD62fWUdE{6TE;EOypxmWY z%|w%p6Er&h%JB|G>x_5(t%-j%GxPR-mGXd0&76=Y0*an$53&)5$kd64ikK@iC$wQzEb;{poU=w0@RB2Weu2&K33|g8KONQ5K zH%>z86bxo4&6}QG*}dyCJ9!0~N2_rO65w^y&R5-b2F^*3tCdT@2CD0uwDYeyL^6gZ z(0}7|3K1-Dx}<-qj|Euzt6?gYCpRtRFY(V;lX)_od_=4?UMn7Q@Y$53x83?${Jjj; zjA%Tg{=H$B^V;1M)Q!}HKNGQ6u21Eu)AW=2H`dr-R|DT{GFPIl1w9zSK=B@6h<9X> zG?l2%G_+D2G-loN+OM%ED^9T_m3j(#8ocfwpY+yTD)v)2z+Osx<5Zfw&N}b7;c4A# zD6$EDc<&R*Zr5$n`Mc9QG@A)s5k&KVjUv_Enb;*TFV~-LB|$Xb`Yqh9Eh=PkNwyF& zDc;i?icj|&%opM8Zw=2}!(=qftxO_qUefRQ1mqN&l|%&c9xvQY;fyY5X20nbIp6+j zI*mtn(yRsGz8~^r0W8hk(SP4YFsi2iQNiL=sXp;GXY0y8e1-yC7jTGffBf$1j=~S? zb2gN1#Y=a*zAAD^Z2lH02V-S)aay`~czSy3F)@O+I&Eayo{h>|WJ$z?@oV#}Yb2yj zth6KzP9w_Gn@CLgD*?m}_)N#raCkIO6&yg-f{co(%8>V z-l{EZ2;ea^ehA`?hCs!d4OOYL>u8nG-9)Yqc-$AquyE>-uP+BeVQ$3F^gpTA);%Aev+#FZ$cJhnK>ekE7O4}`w z^$eHZEyV`Spgwe{x}|wz0}3uGX%g&3wOMN0ke4MKQDVGQ^%-g*wxRDPZFz03XOaiJ72#cd zU?D_yg`-Odcle03ZB@p#-X9C~oqxs%B&D&(aak$V+&5m6<6XI)se$5q2>#CU&sxV+ z;0Q#qfPoomK!c(FtJW^AUUn8Pzn6E=J!8_2biH49_m={r=O6a*Az;H(4q%DygeE?n zIdx|o3LLY)zJ0^}7)8CEU)uwl*`BXA_desg9zTo)^JnWx(>YnDLuD&?DoMwtF4g+2v;@%#f7SCc! zL|Tq_4elS-FWS@Q+n)|*f8Ml*h3y`Bz0?c7+P{6>2xS4TkQk3gr)6mkFOrL zRJ@EIUp9KJ+3}Q!kW}{ebSiz~3y-dUyS8r7^?90K9ryN#6nS&h2K1xfweMc--*~<| zsTlcabQe~#*bi(HChoTaF6RvU=s379ntW0;$xE9&suejE$$rHVmUn)Cp}ajD7JP5S zvibxP<+16%ae_KNeDb*N$NTL?M0`@{L~8?d%VF=sFYQkZ6sGj2_8)vhyltPoI6d|l z-?eFY!25s<>$x0a)|q<}oB4E}a&zgKLBunD9R+k|@_ym-rnpL~*rjvx>hfAy6Oj~; z^ABZt?ON+bzl8D#UfZ(sB4($_oddbyE!v{X$a?swW;XF=TrewHHfmB~3FdmE^E z=r--G8K0+4ZFqLo4FjTQP~p3_!*`x<;J2rV0KKBr+kFL2Fv)5n;;(B_p^L&!G5Dv$ z8c@S(szqLEjr?>({CGoII@;qbLUH|HUJv>${o!7&*I!&S^q*^i%N?77LRB7Tr(tP4 zr#U=I$8UayXF#FqT!+Os%z>`d=+>3)6UBqoIKa;RkGDGAZs{C?uCIF1+z)h*J>1@R zY*aL__pAHvJO_w;Wfy~Q?cs#fx2CdQhAahm-2|El89Q+GpLahXn^d4~m!h(%lJsei zm{tl8Ncx4-`G(H|-Q2sbhfk~rX%Gz6A0mQg)q!8OC{l81TP62s5QvpQL%j?lDzyO6 zfBTFt12*s84DKgnmSBY)6j$9WAn@snzfzuTzH|sOijbt%Onc0%>Bg(F_l30#CoNT> z%sbrl|E%5gtHv_Zu`zv4TRhlva;d~AEPaeaKW}?lG`Uizvl&RYx(|NqFsNRbema?b zbi8wV8J4}h5;-{&&Qg(XGMJw`@87?=`gz*#lEujo+D2HU74z1=?^#Zqbw#TYjJW)5 z@1Dy4oMcfcvn4Ic2I^b5Ekk5&xfHJ`dIGp4u}L9&SIT?fZfP_? zD~=`Gx+A_NGIUX!-yQeqt;AcV0= zM^!w2#g&c>&T0dz#|ZAKH~=feOHCAErGt(X(SD;cyFdm`m4X2y$T6`cfHdoefk0dW zT47E{Md%h409=Q6R8JI5@e&6uB&h>>gh~7oCq5{?1G+Hp_vA;=B+kDkp|&Xj;9`Hp zS2y8PF+;ICY?Cp9=XGuFgNWhsM|6#_1sK3Fc;7)Ab8Jv&5Nu;#IrcSLYbgn*-KL&mvhB5ZJz+@YmR`Nz zIc06*=)`lSdmuLTE-(4}B{gritB2ahDU?y1@Z<7EPe`a?dJUZIGNXmepqJNy^J1lg zarO;Y;)o8}u}swu?@j0Px`=ylUwG!{ZotD4`z|)u1|CZ zqwA0Ee@%?}`Jp+#+T5)_1uJ`Cn?EA>CuM9v(waMw`Az{_Jj{y#efe&u_H7;tzvp7gMb0xRvufNJw$6`h$Slq= z=j2vsFZ-Q`SVuei5+pn-?+f@oAu6;obN0IC%kt=dtc*jXbF2mrc0oq-wH~`EqAO-m zXy2B@^z(&hBQoLBEiN2;@D9_#oNOm8!9*YS`(%3B-+iVw=U4J0XZKXFXj5)|5KvaW zttoK-(R@-d3qSy`xOjzIn%3E7|Lj~y(MkruhT19of63ql`d; zid4CbS!S-17<0vTkNptwUsp#t9YRxDY_)EJs_$xvQNUcLkDq_W_d;Lj6%7^c3XjA0nU5mt& z2;jP}O~rY>pxEG+op9`OY}xKmq2n^K=i3;gzFOR`2~5Y7FZe53O4-hkCG)vJ?8{*TWR)^+y)62#obUMfi;skL z^x_0!q^Gqfs$>yw@pIRk*NpjTLy=+xeb|x)rVX%T9r^=4W1* z3WxWWW7QxIcy^q$xg8iluV8?MSN8KYD&p#gm1MtTPcorl?*>#Xn@#73m#W0bVoV2 zRowHVC>>Wb%w9#=HJU{v2{ofT31g;ni7UL>w6#A3B0y`0A#>!Bdkc-3jne$8D)kn_ zB%GARE$P0So6htuY1M&KYj3)wqB~Pjj!~OX&fDt9zPKzy?1w5|@%o)oM9oTn+tk97 zHPzKNnP!)E50kuN?7M}CmUdPR>4iciMYmbx z%PuR>J~pk}Q3~-mqh5Dj71fEy%83Ko+MK2RRh1O2yZc9YI(P_iJ!EF6BWU%o zKbq~%T$ebSS*X(X$fJ9!8NsL&7!V(|7h?+_VB5R$oev+T7ja`?iZZb?|*Cr}vF zt>R{h!wy(ngGxNBtIT-+X+)!a)Hspxsx;$DESmnzOkW7wTY`Z`zl;eiqiwdzpL00Z z0iZmeggi6LHu18GmdD1~fENve@}48@CcSN<>QvL$4_m;Qfk7U-u(Uj`a~W2pOhw7* zwzyxt#mRzeWyHq347y|Qax+S<|FQ$&`{aZU|A@o;G*YsgMix45lJsJy2vMG>Ow}(8 zGwD!L*^)H_!`Q4Ei4MNKUXLn!cl3Bn$UpeaCO~&OH`~t!u50fKAnZ|8KVCIYa{kN& zf2^dPvhaWW?gV+gJ;~fS@YuOB>>up+oSz3wT201+q!YHF<*N&+!=iHgg29=!_Tf1i zQ!#8jgSoechXt2oRg0v0x3GZ2lD_*__f%SY32J6{_2WCkT@K)TUcomaJapl0UfaQz z)*XUPDi|&{R)^xp2gjFhC6n8p2r)j>u7ij_r*6MP+*4I>Ca*0mLu-zvXjJ9I=Rmk; z+S{Kd$USJOwCU%xzv`VnN=TES;xY*pB9F2iyUS{x~BcC00^}&204&t0M`+OVL zU4?p(5{12Qg^y@dlkb;XgL!JxZb*E2PW^l}Ye|6Fd3a}YL)!H@o2tO}U?qx3-$J(R z;N|sP>ueq})N*qw(OHpBvYqhTknp*rOC`)9n*$ zc&XADM!AtmypKD}hFed39}{yqo}$;4u?xdDwDq>|4r4ko60o5HQu;BxXPshk&tV$*3`KGBdFmPSdCYnuNJ7qka0?Xo%HG--%@C9aVa*WOmIy<3 z*75wZjolbJovX+F1!e95->GnL_3&}bN7)gghA{P8W~@s`08ifJ1w=huXMzQMXF8;! z{^p&uyrZdA^({`P3B3$@C-(G`;l3GJV43gu@cr})ZYjW!t~s$4cTzb+6C1J;HKWhC=M{!5eMuCV2`X}&?ths9)UWRH75=r^CqJ4;mF`NH)#}Wx07yww*tQHPFL_zrot!s7aFO|Z zhnF=Iogc~|yDe3(Gs_JrwiKB|cfl7mhO7oRTYf9_t=$@7s%aMi8gH?O-R4ouu-mAqCOkpXzwONw!qM{;2rgm!31pe@iq3%huf%c?aN3b$7P`k zxGDfpIu4Sbbmt%GrGKT*{X6~ecX}|fcxSmE_qD@!$V+dVmszQ~%m$lgH>q3|7U&M; z9?YX6K1tNHa@?E5lX$z5AaAeEnD3>y8%yEJH8%bjotXrI9XYzxZs<4rl^OOAGgfnQ z;4E0@A>P&~GyO$JQk~`kl&fWVhK5R|oJXNNA>?xvD~nQR#mcpALUT6d!KFM_^L7=< z!Ucv1p7{YZb8;@>#LOC3Uk&StVo%hSS!&WW@o)MFtkI7&PQnU2IGExW)uO7Izieb_ zG%#5{Mtjq3g+k;gvrLkCx2kuRrrCv=3s}!R)%5R21iSC1<&oai_oa(6bJ3!|<5;{x zb(`B%eosZp3`>jJ3-sWZ4kpyfoE(-ZIy*H=eOo8lm=?d1EU1)-W)pBo{fYbXL-+d8 zniK=;xYrU9_ zFB^cANRK%HGCO@~IE`Snd9QIbJSu4{B(FpVq2yqPWisqPeBZ;Zs^R&Q~%6V332p#>BRFo3s_X+GH6A(Gn zl`J49g*Hm+6{U&(2%-v#Ch=?@KFvw*EVo9F|2Gd5<-d3ocV%(Gw@WUR(QA!ej)quR z=}X~gL6(xg{}fZdX65_ZCM9anr&o2Pa?s1D4yDcrafFA8g`y5McmDds_Rbo|cLfK0 z)IG5|iEgB|>nx_4!U{E3-e|rNPNr*yetvf8;D`YtaoT#v#SIJGD-5$3^pU#HO3w6$|^`IzMWmgo7NzEP_NLM3HxE&wMi={*_V>HWhhJ>}ulteH2 zgnX-G$@3VLp*jeG@=~H9%M5f83NM+Npqhcosz@5oKj;aqyOL;MO!G)zM=M^P z+8!?-YW)#S=KMMlsc4A_V%{4%QM929X$9ZYgw;&lQ6Uy)&^>ZB!o{uW8Qp1Ccao*{ z=1FL1h=o9UvV{ZF!Lzy+kf;E()?618eaW>bN}rMv&Ar6A_}Um%NmGMHREMsXjeCVE zF>H4NWCG=h(D(vIA<1C|G=D&&8~sEu${(?#VLuK6YcmUMfR(;WZ;LM=*g70A#us@q z;6W)^j=0mU|Gd+CEQkXs0?gKyCnI1Ey6~N_ZnVu;AVZ_eOPT_6CVig^KF|~En1&#X#;AEQkb%ba7H=Ff}+yr0~HJL~@*2Y#fP%WkvG^Xb5Lm4vV;7M;uXP z?|FJ=A_fnAcFfcmrE54~o6Ok;3(hWt28VtNUDCix)ZJPTs(b7B8Sf?z1oRH;oh(8M-RPi}|v@eJ>0B_T3w%E$`%a zV$OC>=*~^}r*ElI5G3fpR_n+1Jt%z8HFQwfycsjS=_G2jd1#7T;p}fJ_oaWUR3m8w zsqBaStr7~n?z8D|+fQHCeRBz1dxSt4aJMJOk-)|`$nZcSGg78-ZFwziBq>XQ1RY$s zk(=8IcfXVWAg*$DltC41t=d#+%kNbK?=68P-G!k(x-)yXfnh{NIXOM`D#kiJ6yLvX zWnd+*QSyi#up>7$Ot#Aov8kSw!;82tUAL9;XLjMKdyZ6=m3Glrx=>5RE;QQ>Hp*#X zF}Ud`0W;32X8^LAGTj*9-`uX>xuSeoeK}n~*H`7gDCRg9S9CI}i8Pzsf;w5DPWysf z%X9;?G{7BUkFoko_d}wNorNK$=}xBh5KWhL*66q06g(@Ya;hoWtcF$6VBQkoSFQc5 zc_X{>76uy7U=pv@qH5xRxxMlD$DJ%t($t?xy#F&PWpa<{X8&@4FTw@m;5XIhN@Tlp zg)GeR`vJZfj(6T27zdS7O~2>e3Cz(B=9KQnvKlUF!Q@_O!FIC#7-yoAm0y5qHlvw} zu<+f<8cIhJGK_Fp_@euJz8#r8+~ugm$6`vy%Q3hJ=m_bg_{Vr^qB%EP`l4ViFHP!2 zgbThE`?V+4lune*A4<4KNTMh3@}T;bqoU z*krP3n)CVPcQF_Z4)M0h(OrIrcH?w0C zHi>?((1#D3>)niR?IInyp(=Q?`eA6+?rV&*ERUm2hc^d@F%wGFu_beR5Bt^y(U!LL zEUYCZ%Z6OugfLUCzv@o=`(#hQO2zQO*54R{F6@&`Ff#y@PdR6-epSs4`zx&~r2C~d z$^JvcM+TShAzMN5`X%c>@>Q$cO?nOZ7{Sr|1HnIRuzFGjyf#BXZ3 zKd3Q4)Ua~Dci$6j8w<#(#(z+|n~#I21-SpD{!WD%h4Oz;Uvv$?cSPhGZTPmm?=*%# zsw(fraG1?uWDNB9MW!9p(M;KXEP@$D;Tf)lB3C=$s7-FZ?a-gdZB{Z}J0RM*+l%pg zmtFL(#b*xbFY;Tr5fHf=>>uPUY@C=;%>M`ZjIr$2Lu}gSn)6@eea5m6s#^C5S}iJA z-}_v@!yc-&C9rfF8E$q4wh7%ga(qR|CVKmNIQHSo&Hdue=gwlNlENoOZIsBLF@U<{ zA-|d(|B*N;TX99G{Tsa)qO!A&w%-2jcxR~?Cuj;#sYW- z^|v)K;Hhne85G?0b-PEb7^lL*^N>UdzjcQB8m7W*crpCal=>u(;%s3_dF!5>h@v4mz*`91PHp8Cl$*M3C(cEe9QPRau+K@~6s0;fsLzF|ZC+IDepRv!~`}*r*<-a`Y-W87y{tfKPXV&}= zlRr7DZn}oP&Ni<6%cPv%QD;%apC-dnew*Y){B5$+{{PP;uYzs&bo)MM6%b?+v)KBL z-!7+>h`0b38($zc)5L<>i4gQexjtfbZ)f@B0K9dLh6(aoDy0!i23uQKhB<7WVZX(D z5O3_({HpT9rjd#BgD24Dn+hLa+N|CLpB@|}9D>i1Iob6d3l6$G zLpYZ#(0kUZ4<>P^(by2(TSUM8VN z0y$?P!@;+qL1-Pn(LBYfV0FVTextEC-oi`{acC`#uM8lTwv>OuZM8qI_XOX7i8~i3 z`*m<@%C`M$p)uVAwHFbM4y^+$0kQ`Xjg7Pe43{zj_XqS1Gz%@)?oU?3057C%=-U>9 zoP$Z6KEnlSL(xtRu8y9Q;p9QYbD(?(ZluC}(5T&1K0FG?FR`juFjY}|8*pb*15(g7 z!xNlY27_e;@d(~f`50lwqyy{(Iabz7mhFGkZ(!x)AEU9Tt zUxDCPn)Bxn9%0@%EIl5jn1-~c9+^|HW{OMgpyHjBgNkg<-_6zpf#H+K&?zjlF( zc9e4gn$JiFYktk5pJ-TVONEqfYU6=|^96nQ=i#vot4<|0YdMacIL%Wny|*1b2up~U z;b-WZ6kR1T=;3GiOM{tD6jPDp>v%>__FQv(x%3~v;}G5BADbNbuPW}vl{%f^*}73! zy9bRq9eL4h#L{zn^75qV=ljJUi`C;0Y?H|OtL?Os%bk4so^?M4eTTS0r0zQK=~I%O zmK>vJ!Tbmf6-Tnrzoy_q8_Uzo`PK zWhQDMCjjh@*>euF@*(`n`=H{5JisF%8UrB;f1IIrcfcH`h1g-tyKGqQWR)c5_M5LS1&y{O2_u6SGJumoPEL~Qoo71rfb}*GN+!$2z>R9kh?%N z2zY?rEjxB3p9^Id2^14U94S8t##@G>a_Wazlo!q1I z->sU?_5P)b%Td)b^1LD1@{qI$ai^RcPu0 z#ja)TKEj1!5WGvxGapJ-P$f6J3sG!x(yjM&K?p!1mis1WtPEz)&F8$5Ad}UGh z)AHO&S!j_D=<4Uk-n}(3n5=HSPrn5}qfy_i@wtEm2mMEIP;MEt$e)6He+xeUEx4NC z*v*~oLG#$I%LiISokWY_K80k|u7YG#{x4w9-kOx)xPJjFe|0sF#hn}i!+yTL0jd>u zZ19R;Kg%=S=O2jrbp{{+ONWXF_Z)?|KkZf);#YG4zE7V+!cOs1>hnF5WfAp#Hil#N*OK(6b`wych>3)cDp zKVp2{*FO&um2NGHZ60}p{0z?{0IRior;CC}K++UIB{A#RFz#hJ_YJ#3hBA@03)E3|Xc2(d{UzvC z7<%=GFSw^WS^=S*7kTM@hU^3k(?5_GU<96iz*9mk)%$XH-Gn+lUcv?U#hex(WYV)hSuNJYIjp}yXnhnh2C0E< z2Xq9h1mF8~G&7^10a2>ltpP8#HhOm~A$-~8+X95Q588t2Wt$qILQ^E|h$3Bc{?%i_ z!cK~}0fW@CuEJ^oxFRRr5D(xqj(ZioC{A8RWR0zmhvqdDtp5r&+&ip+NqB}yh%4M1 zyT#jk!QAJxSWh^<4+YkHfitD%2zuf_fGqB~=IL_{8_QEPVc6rOZ$aO4u@jgG&5I%| zpSb0jyVZLBzz#JGAM1f0E6^p-xTJ7vuc=7GYuF(6`&qwKtP>gU2KIjgI4S)GIEwfK z!12x_Xcua@9d7ufhd6d=)04k4OVP2zGB_H-ia#fUAY`lc;`R`g5bzkFB)l8R>^|Vb zPAO$z!%nD7)aifHA8`IfUt(q@xCIR|zrWoIXpaJK-yh`s?{qrI;obX}YaCQU z>HrA*?hc@b7bI4cQM@dowjiubVseT!B~!j*(dk)RXX2<@5w~1wk;g_Jb~*j~sx2|O zV(;_MMU%=Z`2H>#`SdX_%I8sv&Rm-@z;rA!zmv6AH(suouCf8U_VwWgVee+d3L}<~ z9=6p<23!TOXyu3Vd>HQ%g_7@IEwj(RMSCAZ>K`Tb?wLy0F!2mQ;-xt`1pjQd&wr&v zE)t_u>M+H8gHsGwEv$K4TvHB&oRH;X$Nj*Il`C{)?iL|kw zs{M|gVf?0gOkNZvIc4v0))J;krwrF#8;k)HFGV|js?rYYlHI+NX;rz_rBa^MJtD;| zIVI-#V#G2Rb;Pbfwo;zFb3ZvV6N5SJ*unxC@3VHg;)1A|Mb7c6O9D#!Nke_;ffvVx z9+Q>D5mNCI#^+(}W2ijrklqn;Zjj5~!wKWxyMU&$Ux{H;YcR-YgI)djR}E8(%gV|n(yZaJEx*2q6tV_(a7FUzF{mx_zjqWu#L@RQ zB>e@Z3RKzV4`P*-0+n{Bv1{N2-fT~3n15sR*3p54q1G%;;`*ko!+Mv+*UkY0VoXYb zz8Z{nQRF|?j7W*7tv{5c7RHV;3jJO)KIQPmC|fwM?4o$HNl~z9m`A57ucZtyZFlS1 zxAwhVdoDV~g(q1|Fx22+v0X)SN`Fsl_$zft2y}vuBzpKzp2W?8UFIO^Bld(k_iHaV zJL2a)k{N=gaR;nO_;Lcgl4<7<4;Je9Z>aI#eBbK^!9!ufQKQMnHTryJ z)5$?VlVYjz_ai1`>@B|yIQnZydd|)E3VraT@k@~5Ms~yC>jaA^Lm0ul936`?&>M2ZzEn$_JFP(^Pkpg`F4d&yD)bL9tKn(d4Z7s2yIFevBcZ4nEZS_6F98^{oeNCq_J9^u}`J z(BLSO44wduyA+e4)E?Icm1qKVd75@moz?MGe&etWL9_F~l9wWEK*Y-r43m<8Z@3Vo z-0d@5qE-amqe>Mj*WAP81~t}RY1c9?Xa=YHg>w9D}6(g^3-@gZ1nbaRnd$+rkiVOU2Zin=0& zfB3+X4&)$e@F-yQ(Z`Fy!uQnfpn$X$Au^Z_Uc*ihAC(^AR1E-xP!@{H_@&)`wfM;sgj^5=t^?aRfJV z=%#G(6Hs2<`Yg!7+XOxt^rky5I}vlVGy<|9<4$0jTP}IoL0}qBq2t5i1<4!gKi}Io z_6nNi;{pS7seu8*|L1%ATGp-~r7SHi%v}F`h2PI0tw6f|1a?XCl!orblh(W z17gTa=Gw_^)XnaWSA${K+y3<4Y3AF* z+1ummu}Aw$?)3P&!R6De*TDE$G$$jm}jeK_(-d_U_I~;^xft{n=LlYG#^8 zrc$mZ>bQpy&+4$plrb;wbNAxOzDe6E)zE&_%~{m?OIceQvXL!IRM^#<8%(h5<(-Y6 z_3mvfcg?t)^X07NQ~eT+zk>)(_Y%;{=Y`w)%B{}GPhY6!*1y>PAn=i=O-d2?!g z<9))jypWirbRbPn!h2O~WE7UOk{7l*xcI}r8u@bVb@$>u%k;27je`^K7G6SQ#5jwm z0~z4TmqzE@FXcGH?f|HHyxI-m0n{umXxdc0w7xo9Gw8rbuJFgG+|Ib$@LX+MUu4MV zrG=dVpF1|}a7l8L1U`5_GfVw=@qb%fH>ejBav<*8D;Zq90;Uo35w5=03lRwr^OFd^ zxjhSPRNl3>*K9JmqgKqO zu3DkMRt(R-v}fI{8;xpov*c`U3QSFwJyc)+xH5ft@O5r`z1<|Kzf0%4W@CGJ1=hXX z_WxSxyE|iFcYLH+REY@G(%kICd33n@>ZwiSV18lUEx*ugey>(BU4g|pwIuR(QPbi& zfdhC_cx5(h@JQfEC#FL>+HSiWCBNNn#ihb!6nSa%y07iqoOl31nVPhpZ7ppWk^|>?~UPVA{(ET}Be* za&FVxjc`^64^DP&elqVt^AsOtJe=P;O?%8r1ZBR~ZaS#m>Y0r@!P!Z%)F?%*+h_q| zOnHF{IveYoEfvGMJ_U&{RYQF&(@|l2v-_Y|1v{VI9)=Ce6LNVxNMZ>~fj#ivdnNM+ zB`*ejVI*FRk5rJo7C%bn9gG0^Kk{1{9g(YzAlC5_-?W9RHw>qQ2742H)B0l70K;l^ zNhk=@{n5!Wj)D<2rj$g!IW+GW2(~>FBkIvxHp18Fv6-8V?)P`J9h#?krZZ1UTC7er zEEstXSlsW4r5#p`q8+Q4%-Z;J^+L`pQBfl##vm=`=e2v1kLnqXBQ5=KSY;ZN5%DOs z>!2$~nbzNQU%OVa;al!o&)7R!ZgJKVQP54<-=3P67n97x#J}D`dFTPEby<`w{Q|6R{vPl*&$ZHx&~tj^8=x=@P}py4D7MZO zvX3aYSC_F*p?hR|deqM~vPm6aK;JokCK0BV@f*nDV1lf7)E(q&sO=L6h{v(L|$wd^iz!R+>pr=QH#u+8n}kvY}GNIPvJZo9|G z#L;t`%X@~3|BtYDfUa!Yx`ks^T(NCi6&pLYZKI-!ZQHhO+fK!HDy~W@c)QNI_r80+ z|GoFO-Llfs+D;$6_qo>GV~(}w8ef=9cBUV3TPojTBTcH_+Znp|9`9nmosFL?zf3+K zu0On5)=%p=;fLJ^E4N>BWzBe_q`y9zwtK&ExA%SxHWsK}nbdvSeHbH%KU-HAP)o0@i_S(+C_3K6k z!Hn-lMvU=wtjF~&;lkVQD_xC1L@6``;dkCk^dCPkL*@28xwfztxv@{8O!#xN(Euj= zIoT#&7fT{=25uGomlhC>q!7oiFXkX)^10B?0p4rGabCA3SV5*ljQ&mfh?cn+3wG>9 zy3uiNzacD3?c+-POVttN5jJuwpJsJI2zoUn%$!cn<6mHcnSqwr^i zl@2Uxu{RO0nqd(ZM0Edj<(Trx(x*^(<*8?dgy;&mE)mBYHGz44xqg*fwoo*=$NG}a zLD%JbfZP6+0RKr|=Ih%5Pqv4?e1FeDBHw%c7=o+Qy7%+zYpfW5=8@06*4yI2M8j*7 zfF1{)Yz4z>+xibqMm%~uB>Sf&w)7a)+aCE*_uY0MujjVS9HaPR$3YRhl!SUd3cGv) z@$~A$lWFb~we{+p+4~vHX2@5HPv?eB^4tpDlZ36@3al4(efxJeEiw+SVJMgqOqh2j zZZk+HVHdiFoOG8hQ^gfdUieP-)$G~UGj=AfFv`fRfG=ivPE%Z8Mr41Z2nhwXJ;FGS zqwIqbFT*IhOvcnIGebYRO9u+LS+uQSLCn|+)3V(u!x zK(CORe{j8ahp6HY7{@(drNr=%$bR(0`;pHHo*Rkl`r=bSoX@_4-&GA6A%tJkc~+-WfP0>Jde^PS$@bu06@T{YX3d~Cr7_9LsX$cf zv_Hd?;`;WeqjdPiS!?X^<}0`?`Bid4^|6X*(H?^{zCaFQTZheM(~2p%^-2DuXv%a+ zrwvzH(~5cj#{GSRk<)fI15@QsJJ*=QvDnm|)KB=+F6PUdU-S$&(Q3{VOOFVuGrpG+ zu-k^LK9p@}#lCyHn-&*{$YW|OXBVb)Hd;*()>`;X@G9?Qr+m)NAb8Zip0A+xJ)a*b z?b3>k(Y~1XSa`5{Q$vO1b~!sjZR}{8a5Y(Y3~^s<@2og}d&W61>rp7>D4H?jZMHhs z=UHwVXIv_Wp4btreK)?X+e(VuW;{DXh26hX#t%@G)4#?f{Mzoy#_jO#_}%}Ewa3nF zyhUKfMmbp>F?8L*`LX!GW~}2*X%yeRD;3ZnqUTY55$#SmDdVo}quu_LEvdpeP5#uP ziw{{Z(sboXR*R&o1NN=TUnC|1D9v_UhM?W zUhR61V2Rw5FUUg~t1SG-?@T0(VMILQkEdAig~m%rE^HYGf)1N+FOEOQN4I{Aw&5oJ z6h{7h;3*q5&ddx&ks(7$3=<~xg^1$NFYN&wImFZyS#+d{09)C~ME18oyjLP#9sc$6 ze%y0LbV}%=6iI33ZNrZ;C```=Hyu-zdZcb_jVdRWB=va1XNh5v;n;}U9k9#R%!b-q z`4ba$*bvs-Xr;1nDsueVHQZDc~WJdD#2gG5>eHCCGAdOcYZH{8j)IMLW z)LHxGVQKN#88xqI94mF~o9vcIaEyps!h!xoW%^#iID+JPz4WNRQ(_QqHrhotvq<9a zwo4Dq?l_FfuDR;cK@5|ZaRVpM&W4!t@(BpBCiS0pa+uS@cDAx z+qs0vI^w=W5Y}F5uXCS`mrolp3n}>c35nBS8E!SR`fImm4|grX9AsD0wxA&;eeYpw zf(&9Gjoa1jE~Cd~_M94I-wEUm^lNiy?;uzj-`p2ax*>&~w)t3CaIE*1&Fddh3OdkD zDSi$*EIABxH+vrKYZ&d`cPFLG_d>f;AG&e)gowxMnx2@KcH6g03Vx~ z<9$EP0GhpJot#-$gWdjKB8Zx{OMgjCaj^eO>d%tZE}p1CDK^79E5@&A*U`m;g1g&M z5Sy7c9E*Ss&TEH#Iq)Yt2UmsPC)@7*HvB*T|Jec9BJXp*ZaT5Iabh5W`+FUHYU5mo zQ_Oa;Ct1x!k}lv}l`HVQmgCEL(Hm#bq$8ni{N&t%^b_hDf!m~6QKp`^E=p^l8x(3| zglIEU@BW-Cs;e%ot`ayB+rW`fx}KJ=-0GPq<<3(7Y20AB5+(J^t~IqkH@2Oxv8%s5 z$G(&eRqE$5dq*uRD)U51E#1FOJaN&49Mld$8{fmQ2a5vpKv7v6-#0 zt7q4h)#RS5LR+-?E6vDuA;fm##?&MJ-{jUP-P}Q7v_XikJa0{^0JVj(>InLDUYZBv zMZ=Ui#N`#Hlmsk>gOt__l(f6_x!s@jG(YR5d#707bLZjCu*h|v4)8WE@DAcJxga)O z6@y~YgNrO{SIYKfKdw+U*r$3~-x~neyJ#pkE2qxJk@5l}EcTOtFJw<4tt&;XYJJ-L z*wkIk6kY7kMXNkYTAW#InV$2(t!BloA>0P1corMl;7nRjAr-A^>GFIR)rw@FLt9h2 zt8P_x_7`X4ME4t%kvt~$s@cz~(Qi^_tKsacVeRGkLtA6uw-8Q1O7&d!sx{B54H2<; zpuaz@fJCME=bu-rmPpKcTBEhk?^T;JTJt%#|9W60W9+zG68Y}xZY}3&4ct4WJUpOn zJ)oT^FI7Xj=RQb1U5=^iZms5NodzB<U+r-+LS-y-WZI)SFWwkzy?)kdy=5S7|Nfmi?8~u1Xa(Zn{}lY zc{zUSLign(NpI}+XwWW~8?TB$eVEvC)9_r$=QMvEwm>ryU4lCQDN#i`pZ&phzhDCL zxLQ1UIOa^W;&$zJZ0+SrTj=zW7%ldUfap4CK=NMb<%bcqwjiC?)LKDSpKhm0iBOIa zXdONXZXd+I_g5Eps+4kq-6*ZF* z&10srp=hPe8UPdz=A9m3h^8zeKZ5wsH+a}9-|k%=%9fj}b{Lm?T{3rQ#lNkTJyKI?#oVIZK2 z$k6_UOj4)&xvsQA*D|axtHDhRa>T8Ifkbp}A5DB&Z^|GD2AKo|zs`~VOeGAYZw?-w z`H?L`gwq7mWt{K|5cc08kwO0*@?y;#7}E9fuaG=XAxrh<{|cD}g-jwC)`uw9m!mXM zObq61MQx3awL$$DjVu(YoW>|>FpD+xoxHUtL5>9LRS7eRy}U{KcbVI5|%wrJI^GE{L$kXiGc*B5A*?rLpeP+Uyl z?t@`2(+AS}>Hl~@=VLMl>b05x2!;WHpYB6emLKHG5>1S(uJSxTigBY91%a^2=Z<#5 zq7~dW3j-l)B|Pj9fgs&R?uQ`;`z!*X$CNoMW2F`g=Mx}G!|cCOj2aHx#F!{9o9EH4 z1u+06+L&~UEf@wu493d_dW~J^HC&JRAOdXqL4gK-wRPR`E%0JVYS) zg&`KnO5vN58QAafG6xjW$ePd?Hj5JnU(4BA?d z;_uA}!~rp~hCRssUzD*}+k&y9ko|{a;du;xXf2c@gZkxTV;P-W;)&~Vwfz||pa1iK z0q{wFjovvvKHUN9zG<7Uz^s5v&-rV|={1QzEd+E!GCVR~-m{NE+&k^QRqrdQvd>#v z3Z!GdVO$v01a2Z6!bE0b_~!}j#NSVX69fYw$HAa9d_M;L2mNyUQ3&5@5r2;k52ns; zOluE>-luGMHOf2juyr-D^|Y~dcS%l!2Ft*d-S6J$`|}X~&`&4DMMq^)O&X25e2rS7 z9&05DU&KvTp>I!ZeeU<1no_GZQ821hZ=gKdn$!yNMf&JL`Ox!`X6qSis+(f#ox>8@?s8{= zuZfLAi0@ytA6XpTyqw+)8r|s_CG0T76C?km_eACGbMJ|w=lgvyCT%tMO%h43ms#(F zj{y20!AJ#g1V!F_Mw_0vewPd{ZSza|si@0GGxFwT?~!x=aZ)~f1T!5YCH)u^$M|%^ zn+eC=rglfs-0J3qyUS;4dV5OF{jJ*TO)<;83NRj!`US3br%NwrHTS8G_W05Ki<|q~ zi2IvAZ?3%bxlCI!ZqiaotqH(vQk{jWevfuN@$SWxe&8Z>bti0LHr0(UyS{&?O{NUe$d#6@Z|Of8|FFR5PdYm$X`yrp5frB6O{ zNDn#<&WViW;D!Cbf1-4(5{~SVWhBwLuNU6DOkaq(zm2j83+sIppCfnqBzC>un()JX zd4giE*vu>9_(txmMEF>amGoRBKb*7q^(_Ho?-7VMbdj2i8qLT;PscjV$Tl+9DjYxH z?JDd326QbgvpYTW=4IpOOLeV>?Ldp6ucB#W_j|%Zx2c|h7^uGc+xnyh+%G_2f163* z9W5tSxt#uZmdZCo^gxy)9+k^+bkLNh|BIe;#G_Ao{r}Ws?~5%%+JbO#L8f*3cyD@J zD7l^bxW9M!iTio50fAax-Ri5-jN7izKp@#8QTwfz2*0Kb73jbxkP6LeMeu5ruoEKh z-v=w+)P6~Uok!|fq>?h2Ss0t>pE0FYBtg}q8GP_TRPc>F1!fYqeM^7yW)*$VtXy2C zFMZM}>9v$=VR~<0nOy461I4mv(%W->Yvxi*mTmf$1A<1CCn$&ixx(R0L9H!FC#4(S z3Hy*`%=ArXZy3uURvK2AsS&dTd5S1)z5Ue{L@7JY;UR`il+}5NJk0D71Ux;&0tyX_ zJj1a^OI(u(qd@bCCCm(YnkeJZIT+K}?@PrH?EI8onlM|Sh1tp7DyXEZ@W4Fp0`l|} zN-9ytGB~^mP64)pL6XIYy8e28RW1BHofoz!>mQ7l_JK&|J_7WHU<)%wS>g;KwnpdY z3y>ln;=NOR%P_O!Fd5|Ob5JN2gn4)>CTX?E z|F?+fA<;&eZoR(+Fz3O}!_xvEAGlG-a*jNG8BG0$mK%dFzMl#u8D2Lj!u%ATBQVGK z(kEC#oB;|c9&Xl?X5mKt70BmLd?+^J48!2nBJrrwp3x`rSFkDKjPQN50&MKR#W?+6 z#aO7b{kCkbq)t!Q6H=mJ{jH_Nd#*vyz)3D%O`?T1Q3Aus>iJ#h?hB%@zgX^`R>P5#E0X!-{wI5S6 zilM73Y!3vNC~ga*S8q1#BP;05JPCOSdEkQLP}Pzw?p>QtilZiB3R(o+i8~G;udff? zNnGW3;Sfq?->Ibo~)! zRy~IBtzUdV+^XZ==rXP5GN!D!rK6f`ZQCI_duO(Opy^Mozp?Ms12`m)RTC_Da&Y+U zL9MI+hHoCb*fr9DHi{;FL&(OqIA?B3AGj>D))LVKYHwK1Ark9jaTkCep_Y0)hhy`; z8y78yqGXDa%rM34XVj{QSD!s79e?kGBq&XyxnR9dr6Zai%fhfCn@KjfMKt1xI0Z~3 zSQX&~3l4_QDfx@jwdbQJHC&)Zuf+)!`AZf;YP?~&Hk#rjFEyo|7Y8Edhun5lv9Ejc z(l0kL!6RF95iKQX4Bp?to6eYru_Iec-pNHeDtB9p~Kj-VCd1UhfpW9g=jk&R>Balhj7B!wfvT26*;x56se&D%Jq0ok*%?4 z{Mpe}I_Ou}1pdQS(R?(&su8>%$_PO!n$WSvSQ3(0(6^A7bS1RjFVW4RuO6sav7g$Qoswp~!RCGf) zfS{BJcB3Q8>bzuKOzWW#cq4=%9QwZV(XveXl`=G>5fw&!moWAyz1EU#r~geB2hIAu zNB4`Gy1#TS5%oKpoo?n?R>2;^g0GG0iT4fH*FY|4rgDRrF6Q!7<-_UmA&jGHbhW#X z%eR%FZvKidNYBj@&bq?`6%5rJ-{>ATy+_rOlU!gm3p+%kiJvbM*4@RtU(G_Q9Salq z5q}EM*aG$ZpOUMi*h zXv}Uz#L>}@vC0bKRhXm957KA9^xNb`{F%RK)K*2tmBk`Fsq!M$Cnd{_c4tl!6Q*SB z9!aP~(37Xe6~xE`QB@SjbI?@D>Zl~qP3Z$@&Sy;#D$@FquvJykjPoMIm4-dALK?Y$ zLNxl*0A~W%3XSaOFY@Tr4fTOEW{ic@T$q0{wcblr#sDQq9hE7mclc1 zmN~T3l_b5DQJ2FMJzVw1fLyS2b$<0mu zqMNp0Ok_095$l@weQLkbZ#Pp&AGc1R>i9Bau4)LA(qPx0FLRU8bml=oiEs%8WRz%V zPg!2m&+sOuT#&7ZmXau!qA3US*u0V|R7e*(RGduxpG+I5Kd~{U@@ua7S@f9jgCpDW z#J|l*u2V#1r@hrf1>wSQzVOk&a0&}v)c-)(gW8R+MZ*^@OyHcdO}4un7m%jec1U#e zcn-<^Q3>7{tauq6GKR^e;7n9a>oa+lJ8H1v*p_~r1JRyN$hN~M9x7rS7;Nc}UB>|;_+QU{ zkfJSkY8WrHNFa}&`kW)Wwf*Hq+(bCLy zsNg96Q5pgVR7$1-R0>ew2aj{$iKpL|gf&N#m)_Pgdc-8dljKUx=iFot4FWF$QsQ=B zpo=Bu741I+$B^WDTDl-gc4!-K>k1m2{R!K1VeNzFMY`vpqTxtITO~N)AEbPKAP?1( zDg~LWtqau=J-I-ATDdet4PL%awkvZ+bG%+N9lF0j(uEPa3J$W>M!akPG;7B66yfU>@g4|uoP#G~jsphpvHP>oba4)s<@QpUpF&fkCS|x@ zy>p2$0r!80B`Futj7R$`EKmAD`Hy5e8XtdV$s{Fo3*8E*3c=qj!Ag)Bsg;p5HiAv? zG`XOXT-jxwRs}(yCF<2ti%tH&KJ&T{Sl~2>pvm$Z_y-xwZ&@nAhGzaNE=byRtkDTM zUJM==TDg5m`r;K8$JQeE-6{7pABDF`GosKZCC|`21ng;%xu8uYT2oP%`Xf%Tw?bO> zHg!`Sk721oNX5dfBg*trIXcVc$c%&d^!e@@DNjruH4Rr14F~u}))k2IYG>9IWv|n3J{*X0fT_MVlVwOYDq{FRok2MFpkR4`3WR8vCqCI;}Bo` zC<7k|OB-$T5Rp`HW30N(;7ixPo23f-?LEYt#*xlB_((jwG?0)WhH(+?`-O?Lk|5^e zj*yqHp*Vx^icIwjTB(+8Wal=9@erNQ>88RtV>pIlP^kFsBfk7h$r(V4hn8WASOcdD zc7vH65yHFc+zR6dSqN3-}cXdK*fGxE1$Cj9*#C zw~w@I9wyKvTXP&Z-)H=L2T>rlVj+yl9L2XUtJ!>p3M-TOu#Rf z_}u`aJp)RJ$;dpIToNSm7x+F>TBF;v<{xf#prv5~MDGSX;wZi##dCzhp9UR97<7i5 zI)Q)Jp!hNw`;?Co^7;P~;o$Q7^Phj-Jy-lo1S>SrVnCkLGE%cP8*D>86VrzcN zeY>E*G z*tX{LY}vfg7>Ibb-Z^M_#5L$1$Gru}B9>1%v`~+6!N%zHbI-~&4IK0h)@;##ub)LI zF-vYEPnhA+Z%&72zoIBfc<{6-YmbNQvmjy#BBg-Bv&L_XV4fxTebeNwvk<41a$`F7 zP>U~SYte`V2MUUY^Qy0?@aot#4Rj7wTcP-~(chlDQXNvT57sQr*B>Qrld>To zuAOE#k2vZ;Lfd7)VN=(0{8d~s@ByXk{)@m%ilfwn9}9u6W%1G^^fQ1p%ZzLK+gkXy z(ObM$6EVNVO~z7>^Y)&L+dxo&^VjTSAWZ2Wn9{#tbOEK$N|X41{!csW*b*6{klJ~> zeSI$o2#pPJCUi4mybDF_9H^iC9=^x+b4TLGWFiQiMeO4^Vc$#eS@e8U)w$n^VTt-cTmgs{v4?ZfQFL9T06naKN&~ zoCrPpIN>~t6Tm8D3gDV{$jEff@Q_aJ0}_KTZD-`Yb-9d&Hl+p2I`-k7j=z|NzSMyF z4DXQ9dBN7|56LyHizCT3{RCfBw&<+^EzpfGOa6&^!<=8=GLkD9Dsqx(5!$nKHPjKn6o3+{Imlj3gx+7vC|7HLs{1)Ddmhs> z+!B#)2T>DiVSwM4f3v`70qQs}eN3n(TYg3hB+PD^EN$upWtMflFmnnxNsDjBLL3dj z9~BjK>7+XeE1DusNbL>eP*ajrPf}6-2}ubI$$ggUgeqUaL{n+*-U%zr?e7G3BnoeD zMnic}&-!)k2Lh`#u@HBA7KbV~HN2%^H#ec3BDW>DvjX6dXm#Rg0ZPz?mU5md4dN0) zlrF?H&x zs_qP4F-`g$|3nTv9Oq{}$Z}&3Cx+qkkF5^-JCRgnIWS5;DQHts>M8=n=iLu6c3Nww z!XS?hoxZCa6)_bBe|z_C6FVwGm=fZS57gm>g#Kg25!nMN=WaQlMXVDG5^#?HkR+La zjTTo>QmU6F%`2;diOzG#cf|1z!=iwtiF^1(?xM4V7kcS3B!hTRHQ#4g*M_dwY_@ZoR^mcLrb|Cneb%^ zV?s(j>9hIe?8qeyb|Va4QsShga&qFoIB~FgHu-T=Q98w0Qx-~m0-4X5A4D1q%Vv!p zuCq}9m=!vp)k89@kP2}#i*Qp@*JuGLEolV*O-WP~4_O@`>Vl1ZBwF+h7I^TWqI^>V z>{C6FaHx;>h6B$M4emX?q|5vk1wcnZ7R37)VIAz3MpUAIvcO1A1Uhph`X6VUP@(fN z>zwl&uu>2vr0}N9SzDY2JjtjiZK){*s@;C$v>!TzcZep)Wx<69sgd|kT1k~F8?T8b zck;Nv-wKw*^E$6*eqsH#>TQ?vRnt8L@2E$rK;0YUs>ke1;eI8)MTlwFk;X%eLa8-i zyNpaVcvkTl@C$g0q&>S$g`C#ahu!B_>`#B4cW5QU{H$R3MH%W!tbh~@1_=5qV^wZs z<-cFL;zF|Q$bW8OCM3nTC@nIDiQmS3#AlF~x;7Uy93~Ygpp9AX3CAt+V_buBL;m$z zHbpyB0q2h156WrK2Q{#z;)q*ZgAHWb^(`_Rx76j1q2n$t8wPdKYC}G3ifu*_1c-^V zXkr$G3(in|9=F`Xb~=2ZaK;^@9xG2!j8n!xT#7Al80yYn69g1$^1-izA>RK*z+<=Z zFo^_~?_UHcj-a^FvBw?Rvc15>^qjB)heP{28Ew2fOHl%N$nBM`=q`aRa=3PIRUSa8{fomEDK? z2{VB6DVS55a;`3$8!GXc&&Yfp>ML8@=W5f~Ki?GQV?}taPwrWmCi<&F(#W{pN6gNT z3L058*^^`%kG7uLM*_qUdkPklHt(p*785TtK#giA#G_k?12m zYlsHokPNzWe7i*aZBAFmV4<^i- zYd8->VU*v-!)Tc3?&s4*7D@6!U}&}>(={;CDe;U4UeU4K4Azll;{AtE5pR~e@>3`2 zln%%@vv}Kw&O4-?N}%vuHOp|0&)WTU!BmLO zt(v67m6tlFeOZ2RLpG+Aum~n<1AZPq>~9_KR|ov; z2J}|xpq|JSM@Qam&1%Jo;nb~t;q7s75CPWZ-1Wc8IX?p)oU2EQ4sCmvbfUQFo7tRfv!!TOt+j-I9?(By?$uPd2$alY$! z6SqAA+y#|p$8N|%p|;CFZpEL>f~#OkE2cMLu@ zoXdKdLg1y0$MDPxrg(A4f@ECmjE>7dgFhCTGINiPdZ8dEyj;W=I)TK>ROHR#0*Q>j z*hKvVg9{nO?TIJ@1(AKV7)^nfencKE2WhRu`dc(&Q~GFYrXVkPl77CZDbHC<`k^Im zz-qipkNhLW&7W?0ZD?g64xi6zO>s?NVPOSFO9CNztDGb5?N$)6p+!P+I|h~qBgnYk zzN|L^y$#GtZnifzUmkVi2|yICTx|&{Uo+nRg=wsAB+DldS8;1~MCoA-zK_x5Mh}cg z=WtdsvNSLNKI|g>IX8eEGljWAO~tzWhiGu(b7eop=xQWw1Izo3nDm8e;4VkbbP0Yv z-gnY|Ho(9kSpvkkiz6H?W1yzD7hHHv!rAg28cTG-<+%wIC+FVXpj2kAd3PH^0vUg> zN#vnbhHLj3&wz64Z-Qn4?hFKX>w2QDxg>ZsJ6=GRcz&*Z`Heeh8{;n4_{Birf#WAE z0M?{~&KKmSy9k`-AXjHI+5*n*9e_w~(!N!j@1rV-yx>Q+3M+p*38QaqnM9*gFDl zF6KO6tAf!LD@?uXVNXQFIkjce^Htm?{!Gmw-zj1)V09~#CcV;)NM zIIc|VQ-`}R7bY3JH1|!z6Kx$|*=sJ%vqXGd?wU z`So@)(v}|Xd$hj|tW)^jgEPLI92L+w=G- z>$e(Yf(M!N>KQmpP(Cn;Virzd!NTuM5^6zmz$0gF25yF$e)-9&$${1RKtX&)T)yp# zGtIComH%hIJqwiDe%|Gh3E_{>E#na?7+#oYjEqaTq^pf0y$Z+|MB%XLArhlP1Pjr(tyEkw(gUm$ji9(I z9@jz=DD=}4^RX?P1@x!TCyHQ-U8AS=voNN<>38phCP@#HTp@e}jkZlnj$L#sW2Z^j zn%w}5?o)O)%b*1gLpmP?i|EOX+hF@=KMDBkw!Y7^FCw zvoWx(>u)#^5Y&G=W(MqHtYT=XpgtMFtuGgY6UVPKPXX0u;BVL>f`-_;X?B>5(994bHe8VUaK*IC1JE zl305@-8;!-EHMF<%+bpeww_@dDr1IpVuDF5+GdK!qfAHExTjZG%s7(yqGi@*tj`fj zw9dQ`XJKM3!vV*cD43{7B>Nj9V|Mx)YBMt#9NcCl?>-|?B+|tyQOuYTf`#%9hZ}i^ z#+?`I{a7+$51t$}7Q|+38P#N27K+Hm6@j zU&6S0b|ci*lpIo+{slyVW}!~Q5+q%FqTbeQAcNyZ6`H{Xff6c_uc5-nfar+tyh1lH<#Z| z7C!uS_KpHoD!gg}m&t=SZp-p6MW97*SH-~Lus`LVKSg=8s&3yN5{z-W{>Ra`@EO2l#M z!w$a%@l+p+dOdV50gTHQ9dS{O_Z7|FKT+P;<}I20Y~kp@S0&a zng_EJC22E|)VaKppOt@2m3GNst%VlZj=$l1G6{wbfI&DBQ+`+Der=RymXIQiM-!zh zkez!R6v$=}LYCH8K3j9gx>tR9e4Na*w5-TrgS^qJUA|A{VexIWRa>)&b)BLHp2o3 zJHw1$?&Hq0(XPmn!a^tDt=k(Fz4=UVkqDKk;Lwa&My8=jX}-2_NixgLktC*!5yPYa znowya^`dDD7HtjM2qzDviM-|$ECGu*nNS;C|4_nG*7W^Jl7`;~JamEWH#|X2qnMSR zZ_fuCsk8l+5{!CZUXGRzMr#S)bRc?R-yBijkAE}1`@B&9x_JI-pX1#OGM3o4i zs^6>Qhb%R8QJedAyT5*6&;M~BN-5Tc02L~=3E~wN$a@NMsUT0I-$ahnK%NhdxliUY zNa%bj0?82Y7*yGRElcb#=7+d|?~prgq#f4A>`_MDe9;gtIhqpEcI1g;6sfe3U$q9( znuH~_A@_O<*1kptyXNoEt59V}6XcmFc#OlaS#&`nmuyQ?2p1C{3!&ibf|O743LeG& zVPlx72#^5d>&pXotS5$cr6L3nG>coi?o z%4`768C|hEM0OmeV92e4*vvEY{Og*4TJOC{r_6>;@*AKfeszcct&e9bq{+~*q4f8L zuwX}}E4A}Y==>7L-q4OXi~p?GcMo~qAC~52rSw(Ol|M{8S0k={?>o2VU1zmjHgFAv z-G-C$HgxR$bTUTHCf5t+E%**284LVrd#%1FMQMcNv0@>Di4Rk1v~@DT7s;a2HV>v* zHw+aL<>_qa(to4TFMH@XeM3u0LBwQ#_$k3dh^D<1zOp=V9GqWp|4n&6C8?{OW@%}K zvRM4;&azxF97|p@R{9{#^YGV|{uxSi(SU6B%VD~FiX^pMBaS6yBP!})8Iv63Ghf!M zQ76D4foY1IdYMoE9TT5XXQ+ev#&!&RvE~@VX0rq8E5i6V+F8hIjEzR3y9CQYQ zdA8Aq_!2&kVC{tJ)hG$|J1sW-3-eZ&kfT52?S8vD7nFim+i0a&KV{W?UVw^|2sozL)OOigDqzz{+I+ir7?`Q9smoXf~$#sB1p!x^OKIv&-AXv zG?gSZkcKpBa1i0Q8v&8u4(bGKZ?Nm%Gdc8XSguEI}>9Q`;YQtJ2Hvc`%>W zY!YRIr@jkoQZc2OhdrTSmlXbXFIYLQN3rg)L{ zRsE_cFtr;O2#^qqqqQ`vm$t1UfBqn`QW!ZcXnal~L9yokxnon69YjJK)*M2-1poZ4 zOH$dm#0NzW&^_d|E8OJTf_vY*?FPwzlP7!4BOM#Aa1bHIC7ANk1y5F+FW5UOxkW8@oEY*xPE@+AvzWnA-mJu~!{c z4>!Ps2J+KKY&>DSgeMGbQ3;t6B_FOv>g79BLRUhO(Z_aJ@2>k-htXqOxpy!^HXcB$ zn3S^voY$2&fbi%2vEV&&@I|l?bXEa^r=aEa|DlV2;%K=WsD~1$i{Kx+{_YO@A9a7VhK-)B2j=I%tDim2tBzVa1<2WF)tH3Y5XIS+?;%emdLwB2~5tQN+%dl~g4AojN=?a-5s5 z`PwBDwKz7>iZh*q7QI{-e(ASrH?g=47ZoDGZf7dBuO6pIrc+HLN|_Ae)?hHsac#IZ zGM~%rcwcz#CGMnD#uF#KH?%3jB7ohlcg*Mt#P6{78)Kwt>O?i>3VlqgXN%}R#$J=0 zMSfS4Qzc zyZv$IJO~T4Fi8+<>t$(Oe0M)`8`2HY=!$nQIUaW7(XTZw*UP+k0!Kl1232!3l=Bp1 zFe;V2`5{?dz3gnHV>~rH{Fad1?SbT@BwQ|TJC38(i%<-RWOoEd>C?BTn_cEpEu@lm zoSslegL=5**#gsjE<2GJG+PX)Nyd&?6ji!iGCpIlq(3l#yGos2RXH6qOcjMMoEPR; z)~`=x($v^&_jNUM#4+g*Zwwb-y8cHXi zf8D2${Q4iOw79v@aBE;qCLEaE{b$W#=W1(Y>IAIH{K@X7HMZ>bxv;u-N(JM^b(+Hy z*&x`O3Ix@3qs2*^??EWA>dte=n3*=OWv+~;X{)jY$|6{0QQan^Kl|=*zk35-A%DHz z1SV`FhNC%iTnB2G?ugJG%S^2ty#Gu+rMUd51iOxkIy2YiD`@$#_Z~a@8)ahw5|yU5 zluCo=JLT=#cggf98{TNnuz`n^eT|!>+C$r^@@aKiJW{XO;RQGRT@&^2U1n+JVb)+9 zXywYh!dDg!xP!X|*DQrCV>QRF+Azwn^4*9}aK#I(Ch zBP(ikiv5nt%lXWts(ls`Qt49{PWQr*`J!Pm5mUsh1oqTMEVQ#2VPyf_GMrr8=POBa zkeuXFS0VBoo$`J=GY{#0UhH_VjMTpAfmGwPwdN2rkTDh!aE?;2_N#QX+~0mZO&4*a zf87FX2te*oNN{Y%T!nY5=~R4vMO5FLKU-OF8|Je&C_qGxmXNm|fz&}(jaTX_&6T{+ zYo=_IEcUB^?I`Z%{3<_Le`G>UH!Op`A;i*BaLJmc)ewOLCh72Zbj!k|T5=4EQPgDU{hwYGhxz?Ctln#Z zJ8&(?@6Qf1$KaHH(~Yo5R2!CG1knx)opSN)@S7Qxkk5&VX>8dNX5Y1Bzke-b?$L*S1K-z_C!L^*pWSdrYj ztCCvNBjvvOFaT@aJ-2t=eIu(U8r^*(yaU~@tFAk880;m+2xXUz&hx$db5DObGMgJ1 ze4oj=oK{oba0)WnEX~{f58w9>#3sUUqcE<-ay9no`WK8_@4Qa{mQzv77c(%{^4xlK zl?Y(A8|?U%;$ZXmYARE{VBPzBwBrx?Ib)13JJURO&AObwVS1n_^t+F%9ifgD*)C26 zGrYg-V0Yd&tD3*U)F8^%ghcCRb0_wFoBF+muJ5kyy@UUa=cFRW?W5cHoKGw?`sHf}ECzRvWzU!$v zAp|<6!7iM&K6qzqgM4f#D+3YMDemBP%8&f*k5B)cu?ogk%)22$K!S)sKrn$b7O-*m zU(*zDNoIzpubuk5y9sdII7|Q4UQIDqLlI5r{AHbs|CMW@o{0R+fgv9EWoexbP z{C0Dz2v#8|UVr9tYyGV!>we35mfP#Zu3)r4e{k*&)eDvh9^BMj=%J}+(yqD2fvZyb z5}m^ZIf+9ncP6*QEC`uAa2)#)NRm313=+P3( z0Ve{|;wg9_MG%mv7<%X$;c~z|5Da-k{z&HSyx(uLJG1ll`@WgCNfbT4xscK#43|5! za#%Izq(@!L%wrqn!o=_>yJ{7)%!mD}S_!=C=FIppik z>~nQOW*g+r_z4^dd~u95Oq9g(eammrOn^A>d=c_q(7j>IJ;>L8QUW*%H5r4vZgeND zd@uQ;t-gFuteKQ{W_aB=K}aW8f?%SRu|h}aq)Yr>MR+ZnH*MxnNDjTO)S;f}db!MT zZ_d|&jDl9o%!tr)R%7NkIe&lcQPfW)%OHN^W@u}6Pv-Q8e&*WCv#E;Rq3fT%MEF~U zK3Q8tEk`!+7uNsxDi&|lRM=WBovc-ZBVJUdMZ!hZ)MDszwF@~-ah-_XIAVxx<%9^i z^Fo-nYHU?@u6j{~L$eRUXKmoU2hES>v$l|bRCEv?0IP{%;f7w#j3D@7HMgh75OgN+ z^qzy)m&?zkN8h0I%2RSMeA87Bt{AG;pjMNWpNwyw=O1RRx}LH@BFK2P30cE=8nNG; zOciaPmz|sX=v!I~9DG$|Uut~GKq2;RKV$u!pH4h|AM5zDYTWGTUnZy?$?4?A;@f41 zdq=0*)Y8Wv+{QPUgb$JjLuchLD;+8&P8X0F2DP@63>B(sG;mI_j-hvD(Y#NW%Uq@f z+H1+rT0F9hC)03(r2P+Fi06E=xlR)PP@)AM#rJ0JF6OLDi24UTl_le56-}NzmN3bl zA67joj_ZfxDsBlnLP<%=&O8(Oqc;;R9_bdkH9!b;E9faoh%m|G!M(1OFy~3VJy&RA zX=}r>Y0fnKg5@3t^eoG`x@x%|A}rl)ec%#KYoM`bAgt5FRCIoy3cqMzn?0^7Qb`+& z^qYD7?waHP^aRBOod4q^HLhmsNhK!I#%WoQ=!bq-HUvp3JyVDcW+K+ULxX`=PU9vN3yjsSx z1aoGFl?xI&EM8M!LkY!RUTF&1hF2G}3ZC8XsKfR#@Xgo?YBjN22a681m>GdDV}=!* z9OsrOS#&e&;P$D$1jR^tSJkv4HvIGb2c*ccfpJn)QE+=-u5%=EsGL&2(l>O9hOY4) zC#NH5ORs1VETdIMdyC6gg_D?yZ($!MuXTj8hQF<%qV%IajZmID{kxiOw0?cmPg* zpAOJ@JJ6K^N9Q6UTln{p@09F13u)z2r&2T_5N8`+h$x2%4c#&YhoJqCo8?OI9DrXa zxy|Fav=JOI==G9d54cXs_S_5J_UtI4fN^l)g^d$#Y~i3X4A=lJM6eCbVOs`{vILk1 zXN}ps4R(tM=a9h)aQw|yT)^)dje`Z?K$k60iP2L#2rhFb9ZQE&I_!dja4NMaRZh|%gv3e{{gg7fiD06 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/DebunchCandidates.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/DebunchCandidates.scala deleted file mode 100644 index 648174273..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/DebunchCandidates.scala +++ /dev/null @@ -1,83 +0,0 @@ -package com.twitter.home_mixer.functional_component.selector - -import com.twitter.home_mixer.functional_component.selector.DebunchCandidates.TrailingTweetsMinSize -import com.twitter.home_mixer.functional_component.selector.DebunchCandidates.TrailingTweetsPortionToKeep -import com.twitter.home_mixer.model.HomeFeatures.GetNewerFeature -import com.twitter.product_mixer.core.functional_component.common.CandidateScope -import com.twitter.product_mixer.core.functional_component.common.CandidateScope.PartitionedCandidates -import com.twitter.product_mixer.core.functional_component.selector.Selector -import com.twitter.product_mixer.core.functional_component.selector.SelectorResult -import com.twitter.product_mixer.core.model.common.presentation.CandidateWithDetails -import com.twitter.product_mixer.core.pipeline.PipelineQuery - -trait MustDebunch { - def apply(candidate: CandidateWithDetails): Boolean -} - -object DebunchCandidates { - val TrailingTweetsMinSize = 5 - val TrailingTweetsPortionToKeep = 0.1 -} - -/** - * This selector rearranges the candidates to only allow bunches of size [[maxBunchSize]], where a - * bunch is a consecutive sequence of candidates that meet [[mustDebunch]]. - */ -case class DebunchCandidates( - override val pipelineScope: CandidateScope, - mustDebunch: MustDebunch, - maxBunchSize: Int) - extends Selector[PipelineQuery] { - - override def apply( - query: PipelineQuery, - remainingCandidates: Seq[CandidateWithDetails], - result: Seq[CandidateWithDetails] - ): SelectorResult = { - val PartitionedCandidates(selectedCandidates, otherCandidates) = - pipelineScope.partition(remainingCandidates) - val mutableCandidates = collection.mutable.ListBuffer(selectedCandidates: _*) - - var candidatePointer = 0 - var nonDebunchPointer = 0 - var bunchSize = 0 - var finalNonDebunch = -1 - - while (candidatePointer < mutableCandidates.size) { - if (mustDebunch(mutableCandidates(candidatePointer))) bunchSize += 1 - else { - bunchSize = 0 - finalNonDebunch = candidatePointer - } - - if (bunchSize > maxBunchSize) { - nonDebunchPointer = Math.max(candidatePointer, nonDebunchPointer) - while (nonDebunchPointer < mutableCandidates.size && - mustDebunch(mutableCandidates(nonDebunchPointer))) { - nonDebunchPointer += 1 - } - if (nonDebunchPointer == mutableCandidates.size) - candidatePointer = mutableCandidates.size - else { - val nextNonDebunch = mutableCandidates(nonDebunchPointer) - mutableCandidates.remove(nonDebunchPointer) - mutableCandidates.insert(candidatePointer, nextNonDebunch) - bunchSize = 0 - finalNonDebunch = candidatePointer - } - } - - candidatePointer += 1 - } - - val debunchedCandidates = if (query.features.exists(_.getOrElse(GetNewerFeature, false))) { - val trailingTweetsSize = mutableCandidates.size - finalNonDebunch - 1 - val keepCandidates = finalNonDebunch + 1 + - Math.max(TrailingTweetsMinSize, TrailingTweetsPortionToKeep * trailingTweetsSize).toInt - mutableCandidates.toList.take(keepCandidates) - } else mutableCandidates.toList - - val updatedCandidates = otherCandidates ++ debunchedCandidates - SelectorResult(remainingCandidates = updatedCandidates, result = result) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateConversationModuleId.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateConversationModuleId.docx new file mode 100644 index 0000000000000000000000000000000000000000..83f7483a0cb01de9dc97edf1969b83f90132b65b GIT binary patch literal 37245 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 - val updatedPresentation = presentationOpt.map { - case urtModule @ UrtModulePresentation(timelineModule) => - urtModule.copy(timelineModule = - timelineModule.copy(id = candidates.head.candidateIdLong)) - } - module.copy(presentation = updatedPresentation) - case candidate => candidate - } - - SelectorResult(remainingCandidates = updatedCandidates ++ otherCandidates, result = result) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateHomeClientEventDetails.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateHomeClientEventDetails.docx new file mode 100644 index 0000000000000000000000000000000000000000..56dd90c1b1e347d25a53cf1fa287f07cb2f1d52d GIT binary patch literal 38321 zcmagFWmp_*vo4IgdvJGmcL)S`2^KWy;O-LK-Q6`f4DL<{?k<7g?q{;rt9zgGeSeyZ z>aJU=db+E7o>7*Agu(&?1A_zGPvg<9RxOTC1_uKhg8>7>1Vukf0PLL2?3@kNJ?zb# z^qJjlZJLr5lvYL2zMa2fr?3c7DH1VtBFA}6auFzGzJ}3TR6j$-$7xou6jH|v&-;x ze@xl+b;8e${87SRD(7{HnOZa3IuoHifHy7N=t4vKn^9xJfYW!^NrnbT3k`?*)!t$h z_aQ_8+Rr`P9%i?3EskTD`tqn7HQfyitB}1@fORl+-Ru!$j@G-KK;Fr!Cd1bbU7Z+p zAIsw)8GO%s36!jpoGJns(2668L&dBLBT`6Ly6IwTE+XahtCydEx5o)5l2ui!l(1=QTj zymXfAyQ~Hln8-7x(0zVQCMrVjj{oxP^@Lbj`9V^+_hqqkeP3kkp1j~0OThq4`MX!sI7NHZ=cpVW|g#;hwaK zvl2UBnUa;RP8CUgZJb`>!}DDe^M%Ypf+dC$n;cm$wK-)&cWILiTVvrXsE_3#a`F zsQmSF&na`4jUW|2`)T6etlv}5 zb(>Z1W6}Kz2p|qmq)2E$FK;O!2FpS( z%Lfln8TcYUWdJq1R0$vCxNQUFieICvv~#ranGJun8F|&YuKmg6ip|fLNEbQy_s2ma z)q^ZE+Bz6^!c*5rXe3l{4pEhKRkv16_N|ChCr5|PX;(=7N~D%hB$Sj7`7@_wRic6U zaBH7kHvj|0--qYscGj4jsQg8oOv(2>(sz!qgcVc4O9)&Ln~_+@uS>{knHwYj6c5$L zw&Uyb7>3RFjpa66ph4idaqM|f%pA5+@v8>*_+!C{vcoz;Q*FfX!Rq88xf4_cbUC)> zAiBPT;q+MbJPZ@ObGnvt&6pQ?gYm>AF|56l62r9f3X14PqgM$~(cb&Vib#iv3T1`p<$POj`U^eJ!uB(+;4Fpc2{EJn)hyD(0Ky)wNzs<5?~hw)`^xMy+Ep;z zh{lr!QnmVWt+1=;)3|PJvEe*EF3492+NjZ=6voAi7Q?+r)R64y$D-|xmr;`buO<5vfZoG~`y6!wZf zB4QZths>qwU8di86QexXNc*sBJA6Qz`c^6dq@lbISG{PJBV_u1OgS6k-MuXSyA){A zzfHkgqQX7QP0lO>MPs4&O}jrotDoq~mhr4V3&NVeIO@15{X{U+obPOa9iPf+ZQ4G~ zOB&3m5lP3Bt@~6Lmh|mC_mFRpL2a@X}78ag0RsMKUHRm@kvS$+vjf@t51c&N=scSG*CQ z9jGQ34TW{1Q_`XZ)KJERTipdmrj}8C$m-s4rr{xwatu_e!*6f|DS60zP=O7+SJ9(i zTuok}-3Mg6B3O5{2z12@AYaZjK*UB^pJEqVd*6Pj4}ju3OS2yX9?&M;vikB>Tzp{7hF&BVBs z+EF%8wz0Zr_@j%0$Xpb}jyBpeKX`)2K7n*8#<&ZF0vIJ;Q^%!od8d}D5+{5u!frL> zQLsBySb{qTP2-KgK%d;+17T!JPZ>|1W_~%sdmV1zMBWaq0rWl7sR*p<~OwoI7H7Q+{P#TOflXSf_r)@2^ZT5BSf?Wu?Sb441cm!iz14j zt|O`#Dq{)%5>8lE8aEp6@&mhcypy=cQ8AeyIn+QoUq-^-RGwm0C3Lv*SD^@TZH(X` ze<(xxLnhcsLs~pG1$9Y75uMzx(?ZS+QR z&131Ko>wN5dBiI8-4`ab0;Y)%A-^Fl@pZ#u`sM>0bZ1<{dG6zcP~sqzW|iz8KFmt0 z_E&7AR)~tgGdiRtChY@{x;PGgM~QQcN-&`8Czu$?;d}JNvn@nHqn?r1JmJm#u+XNv z86&Sb6L4*LWQUmjSqm6t-@G}dAm+X@NQ5Iax7wzTbx$J)=3VLFNy+>~#o*Ae%abi}w_$3dDzNZ^~Y`C7?^Mf`FJ2hig7ts2D$w z8jDeu4SH@8p1BeGx~J)Z*hPxopg(@eO7DeoKcrV|~sSs5^wb)f72W z9a*6`nlQk7-5kEU%9)zc$tuo$eVXBm{RDq{{IqYWMY7&wSeu*7?}9jE72DRjkQuZGNIM#V?cJb{3rG(2?#Y7Q?Z8*x=&U4pn!wNcqThZ{Rn_mpDdz>j~KMc5S(Jx`%|q0fyz#(fQb3%EV;7`}}+t{>8dQ z;)7irYlAV5mD9P&dqT7BJk3&C`c+WcBD&Xhix19cPpHLn75Z26r0uulnhHpsO}*cl znn54M^B09^$afp?F;p{m?Z`w}%m%j92#gfO5=soZgy373MIgTl)mDmYR}39x0=Q4E zY)ntOnlW{;D1T^sw&jOsu*h}o+)VPybklDpoRnDGOcN+rtNK2EuD+6H{9&`d;KOk_ zU~_&9@WgGItc%BenpD+`&>CuVdkm%yR9j})=jRPK?_h&w{G4-``h~Juy-a9fos=sY z!ON2J3)AI^8T|dsk{RAEAi^$GK66{;z=nvov$xdhZ65VBS5tbtuBTkusYVZNf36nZ zk9N#MOse?@RD@2BZyQ{h*Wn&TA>UR_*W1!fX)R&55k6^p|C`5n7K{&xM@C47bP zM7_2(B$ubQW(O7@iGdD{?}hD^8kre>lYNa99|g2hGu*3<$3vnK)@P`}IA7N`?0k8y z>^^FsG0olHK|j7rJ9Gok_y7zow9$pxq5kqRTB91BbhU(|9bl| zXx#Y%->$w8l{hCiXO%<*{rUve-j(YtD<@lsFoOZN?){WviKG=V$K;xD5;{sm@O4U2 z`VcXj1VVkX|0OM6XZv@ck^S-Rl$(X?(}%-$d*0Y4A$j6Mrwi3eb+7|`0Ydxt^rC=t zf~wO9D-va4UJ_~~$F(}(*`glIW2~b73*vvzI(Gg980?@ScpNkY6M}}|zh<4kAL0IU z;`#e=E=f!&h!yYK`5QuCNFr8=UF3(~1=K)#>DprN5b2eKJBj_x&+Dd)5<3CA_uM|Y zG`6#ocWMh80(cCKp8|QKAW*SpLzK-h1T9cgPkI_;G{mf{N#XhHdbvB71jQ9*PQNFA ztvdXar0|09y^U(19)Yqc-%hj*yC%BmNLnr7TRo31gpTA)LfV(m+#F|5Ao=BFP3u)> zmGzd$dWKW)mSTfuU>`cv_oaCweF`orqn-1^AGZ&tgnqBE1_>_m05*VkOX4x4jd zLz0-x*Ryq={%+*1w$JC9&!v-R*Fb>pE1tK&Z{%BS*FP1FyQSm_WkjB z@jRwfq~&B+|KV}{5|}yuczYV=sM;VBg%sp{?NRQkpj7FGX#W7(kV^*p~i?&%gG@@}sU=tsW??p`0< zx_>yW9QkT^A6mND@7p9y+;8E#oHOjDW9Pc~<(uM{ywu6#I*~Jx>^B@?dB=~J%G<-C zK@Wy3tIr@&Zkv7^r>Nt@r%&rXygyz=#3zMLwKhOcy0%{Y(tgCg!jyj0euM9bcfi@p zvlF-RU8{yiyidrm?#sa@ow=tmna>x=w^!~NL_Fg+k-m;hp09kK6xWHByL2udT^=iI zB9h{Z!S#E6JM1_2gL}PMe|65#d#UqX?${I*s&+d+ z3r*!Y%i&QvdG|3m_Z6ziwOf409Oz1kYF+6*RXkjc1?)WRy?@v3md+vQYX2+6r4n_!43$ll zq)&syxJr0H(kG10J8ah1#kK2Z_|$Tc2Ejo6F+6Zq-M3(iA~~0~RdSyOfmj(7>SYj7 zsRMxiJ79bru=?<>|1cr51S@Q(xawjCflpu3PIh?s!gqV0L{%e6Y4)j+z%L(qGNe$B%4 z^Xcr9{k_BMulzhM}6oQ5np*kHtVH$F%qfEPfF zFk_RBs(9RrGaVV6#RgW7A>4I|KUT1Znkd3b2OTM*?M790p$wcV1p`K)eL{;rY1W>; zKx{l(QBFr?$QBgn4wra5J&oCHz59reae{tN+ksyNB38%E(k3Ig!^Bqe^Wt~)0|t8x&IG> za}^3u1mQ0gDIL(J`TtAezoFthuWE1tQ$a`lr!ZFnkRDYukXNk6Jtk5_rvD+4i4=~; z0}<{o)pLn%O=ul|j`~-q$VsAc$`#m!X^_J&sXI^FMXc%KbN&eKr{kwfvH(o(`Gg=9 zkV=yjSJv9>-nHr1hWUBP)`?J3d+xvixI8>=^Trq@#QZts<$Q4c`PQXP-)_)L?4^Hk z!ZrWvlKb`NhoRZr+HLpRU-QCBhx-Sk1=|nNn-HL+;rHa@h1 zebZiRxUOL7G`aEfGnvehw(Vm<9jANh)5zJ}P4f=WH+6E`Hu_=dFp9sKpyjVRZ|)Olqq{lw<8tT1$yIK&yI+$+oxN_4px` zJ9_ng$KyE*t4Xav)+xLE=VjqriyFEe=7-`|CZqU((wv?oOW`qZ3XW9rhMjFmmG%^x20i!#PPaZM((S=i*{m?QJrZ}lP%eKANn zjhOTJ8!X?GyYi46<1ot9rZn7EzJvc35Az~GPrlm$xXnZ1^HM^&$ayYhQiB`K*7v-otf`muqV89A8&XzqAz^9B}HS8o}oIJlR(l^O!Q%&Z^mc+-REj^KBap(yJv#Mn{w-e zfbxoMO@W7B4w+c9BrTigucx2vH+PvEPAhwuGc^83Q+)9kO8V|&&w z9dE57*>@~2)5Fl7Z(yj)nI5geP==epmek=}vPaeUXD*|);KH&qCnppsg>mZf+`Cj1 znJ9wx4)wDf)i${xz>k{w=NHWGZf_O;OD^3P4avtw(nn;#Gj<&g!)*dg^Cx5*vJXqg z836>9DRLRJ%v`0>riwtfgJALB*T*>>LQ`67buNOcAL@uvz?`N}UVg>(LSKF^ESVlv zE$${K^mfZBDgfx1H035!7mSTRgz!xfhfO%fSLp|vZKkZ69?ZieTC7>|qR<2eG8YK6 zv?lgwP_IL__-Icz8fOeHhaa!BZ~-<> z5b=H;vuj%p1?KI?DP_HXU&iTnS2CER5G(UO(Xdb1F7xLigjqn-8>7uYWY^q#jI@#- zc_P|WxRFP||C~aMRbO;y7PeqJPIuICeF*Y;&a0ah1^XV~kNxE%x^WrhRe&{)$$U)=^j~T3LGJ z$(&uRdZ%jiE!4i;&pHJksiDz|A^sDQWg5mAf)tJmIVdg<35W9K)A9=3% zV_}`ou>#T3)7lf&vWR#1x$DhqM*OrPNYR2`Y>5NY2HBFwUU%C@KY#R3Z#J)Tt)8DJ zEM{o*CnJ1&e|URZAjGYbL(O94?Ot-{tkd|yRfwRdPFeAlpLeOE?nHA?>GD3yMuD>S zS6-+Jhv$~$@Z+FoVSh&Z-5jQJ$Z8Zl?@WAI!NL)m=3uLx24mkPH?YNchHYW+cHZ2j z7jjj~NMqdF)5A)!O3%PfP5_`BOvO2dZ9+Nkt0M>EvJ5ews(HohcgheotNg4} zicZ&5SKDNooq$Hb5}svQT}M5uQMLrCVWJkwH)$SO4#iKCykhLTMTq7$77gh|LZ!ub zS>(%3E6`q6t=o|baX6zM_a2os2`9=41KQf0#w$uLhg;QE6s@}l$9Ot;2(dk6Ca5E5 z^{{)*Hs{Vu9L+3Lsr%$ny)}$rR0<4;PuhzyMUSw+uDqA8s@6vzC^7J*W#v>|+sM48 z7^RoVm};t?j24?pd&Jh&dN!7<74UAC%ZcufqVM@~-YZaSh49RK&5P{{_|we^>-z+X z0=rdQ%yHNOi)&B`=ijR`K7Jd~0FD|ZFkY8sT#H4~pPT3jVS7q2(CC#jfn~JKR{L=d z=h^|3=M#}tG76qajlG4nU+I$>|bq0%JpA$ApD%1(BU7k`_cGo<8Fxchr{m3i$PK1Xpyv=Jp z*wVT~ut^2O#l~t^^7Lr``lEDm+Z`d=Yub4b@z>PdPlyMqO3tLUrDbT%(PWM4oVXka z*Gya6vv|2jEtNLC9N^pMvnL5@5>#9!p(5l_wi8!b&C?u>T_fc4( zZk$wEG^5VZw%uCrGqLwh_M`nyuhd)o=;f=NEbz^iJ&QCG!HFyMWb$i;M>4p?ZK zi?J{8oxga85#1qI2w6xYe-P+^u-Uc-5Ie#}z64^@I5pKCA!~?59NAKS+mNO%;PK*h zC~*Se1RSE|@mL6dX4KmV3dD5ZuM6IA&e{dl2;idL#3&9h)e#3A_+yUeLN7z>4e~WC z9wDoNU?#C805#!9lP&9m{%T&p{bH2779&9yBE=GyZTJpHZE*nq)Fs4*Kld==2>Fe4 z3e}A{5-+^q=H(Ru{k4;M?w=AB%@7=J4a<F&cXKKQsef7DPFc)qoTQC-;z z#gF1dd2ytq3iG?l@YSp7@)rKR*(X1mN0shOm(}XXtpG?)RoFK7uPA+8-JP7*M{tr! zyT{9#iOLUQklmK5*O}#p6kCeOp}XXZ979%vo2|GL`T?{=7&$D*mc#vSJ5{l)3E?B% zf^{Jdu0)%9fF`6@VbCboEK#40aJ+w;AzNtRUig9fSbqYx=Hv$Z_S0SD58yJ=$VqvK z0NC$1owP@nmIYAFk)tn>vn^BqL@>4WtQ4hP5j$F0!#E`jnmLVHx8z_MYYHp=7NnZ zjRq$3rzlUltq_PDWtK@Y&sO!$vQ(Q;Qvu7l=i2^*@F3US)I8Gr`o45gW-eOv4;+iv zs4jDx${(pnnPF*Bdwt#brGp5yGAD;+iqFpsQ{LA}Hm1d|B@3%0qSyrNQhwpS?&;n< zIo(Jf&}a>-9bb80H_Bp_hZ#>s9pz7vO3OXuirm?O!(&>AtCi`} zNdJqwYjr5brL2`{geU}h2!vRM55;rLxe>(FA9-5f%H-TDHH40TODal<@_PmJkqL+# z=}H!olR_IN_KMO(eFaekMv=HT51-|vcUD-U$Nh^3it?X4io3G7;M=8_%II}QPRBzm ztn_7Yv>;1KKYxj-->~wvw@HcW_kFHDRypitREJV$ggC}S#X?bsn!9*=X8T}?1FkuYt!+4Uk;~T z$48_{`ERx_5&wgY&*lG6}mu>tJ z{v8b&vr?iDI+LIx+JTog;8%VOxrM?a(sG>@&Sp}OLJca++{9E)ywJ1>)ZG2v2_ig& zFZ&{>%&Uy9-2Z$&Y+9sqVfh(~a#eOkv4qs*v4M0o{FK}NsiH(m^eS4jJZDH)%S1`^ ziciS9CWbtZK^dxp&{tkcG?<)}NT2Cn<`9UQ6r_4$aD^tK?d;H%Q!g|tJ>f!Vu)$a9 z{-4#P9f8U@cMm!l`4t$I+4g^F9&3cZNKGy`fQ2L{RcV_DCl*Gy+dH+R#-91Y?3^q4 z-HvKg>?X6t_3rD16G9s7)=GOLl5)AeE<({2GZR#^ud*tV#>*Z(p=DPh?W=Jf>Dy@K zn?u{v)nlC>;+Hv}PDCnNVuI+81`ZT$C_`F74>X~*Q}G-+eAB_Rx)zYA0JN4|mlJ(Sbtp>T5)({4#JTv|7*$DA0!LJbu9uB^ zg{m;Dcl>1n0|56%uS64H)5z zJnQqI6fTF~>(;03^qvUfK#KTgYs-@nFb7_GPgpiu=PQt*(d8vhfjN?X%mp9liLp<` zkz_1kVEjhjkUdgW8<)a0HPYXBHbrB7RxXbO9Q|5thR&_V+PI zB-uxvo|*8$Bd;A3HAd-L4%jABw!y-4cSaarFyilN;@nv(892O1SEp- z#bMHd8;deZ8=!qptEt0_m~bU;U`C4*&>{Cakogad6qOmeDkY2gvVVLp3;prk8>%hu z;B#uqc0uUMP58HOsZkIlXv0?L!}c>UY|uGmP}#H@Grj3Fa8V#S(&?f2 z`C}^sD`}0AN9>Rtxv60iC_BWadR_r9;<|LxR>q&%g{SU5QdM5oMPKDaEfKTOY%|y> zr-jAfqL=8KaX~!;kkypw#sL4}a`V9%rC{~-Yyn+QmH)DY<3e1~!LT;MWO57YbcH&# z0J)Co7G`OHJKPpy^|$V)1RWbQ15D$cOzk0>F3YUZAG^tT7EBdXQ?gkNtE54^rM~T2 z2U+umHWe)lG@xK2uf?Kj!hor*(fHS$EKt(a-$}gxJ1Kc`pXv7CYJe}?3FGh&RazCY z&4of1=J>+^Uo^)D&kl^kDygPF`&|i4(GKU7?#Hqku4uvJUTML0vi^!QQOU|Lz%-lC zOof|y?_>?7BMBLVJ1rFG{@D*iW)E{ZF7+~-(($klD)zO9bWr>&o|0h7&6d6>n9EC( zavAP~Z^3@!PBox|5kXF zbsahxzgflYsgf^tTK2(l)Uiwt_G%#iC)3DmP0S($IbO_#&@7dM{bA;o~&Ldnx*R+<1EY5Xw%W{;ZgL2QcXAXRG}Q-~!2)gJl`Kgj!xWFJ+v9uTxz zRIq;bIsb$`QfrH6=`=Lh>&~&`+T=yZZRjt@$91(V}8w7ED*=v`Jox$i=OHRja8J)v!L}2iI*; zyHL43g-xk&%DQIA=zu#@Tmby7c-@>A85-3I7!~Hy1f$4FQx840|J__Kh-oo>TlRbEchB?Ov>uMB9Ldm6j)*#rj_4+Bg%d;}4=Zu;FM;O-#^*k-9Opqo2)&+BnWHHra&=$+C|As& z{%|ij%UNIv(afQ79X-qWtGuF+8Njb#-3iD(N-sM#AtT-+kCs3SSIo~bk zQ>Zi)lbjXhtnNsyDBh4u{;CW6HA9p`vM2C8g`cs{)$^u(vFe{5b?-|?2mb@?+H2PI zFO$DGt8cr8+GiVA{%KO~^KoZ!_}?Z&lmD3HMf_v3)As+*B(H*X_cZW;v)UJA60^ke zo!=&>m58_y7aLz7Ci9CKwF4pOjdFeX>i*91=^=RQ8VwWVjZ|_YmJGJGt_*YNJi|eY z=OEtLo#}Per%l5zj*srXRzFnuAS8NqX3%CoPw;()gM>ryS~5j@Metl|9Sm|q17N{H zS7Zq1k_C9qTJ*t$_>)Xq1VOiiP~z}|rj9MhFhVeK|1j_`P_3l0Nu(@gG`wQfx2B=- z5ECYF46L0t+&Qp0t*K4nILZJGWEOj1tobEG$20AAh%rlpksyf^_vq(|I#?HZ$UnD9 zsF489S;#Q(ZDZh2yta^&6O~sI3*aBdIBh+kTdj2dt8 z{jMWn>nCpX1t*36vw^J#ZD5*x!5L*-UjrNSy0)N;Pe+M{5Lsi%I(iJSSg)jopFgvt zq&Bttf?sRSUqHBpdg8G3xRqfV(4M(vPQjWeE&)NsJFNf}?-UMpB*3N>>c5L;o2&Pa z;?;H9bfrx$C9?iQAwoam{t4msI04OM52Tfm8cklgJ1v}NIUxpw20bkFR>ByY7^$Sa zy6k|;ske_mZZrU>{t3M9L%&<0VXpZasxt&4Sz1V(xQ_MJG*Q!TxB9X$w3 zh*x3f=$jN>rP1hN=lM&6na>nc5#;N5hR?QKb9}kD&4j9averDA4tT|oR})8?^a_G5Vg)Q8Bt#=$h{C|M+>6$PiCV|C9M*0ee9Y$F7e*1d zC2Yk7HH>Qxur-Y9lLGXx$8FZ`c-#jYqiOjQCid>T%#;ca5sf4WV%*=Pw|`UNET{qy zK}CR^m`Yjx(-%NT+8=VRn9 zP!0Sap?Awq?8)as*hK=w#E^$8Lql$GYl*QJ6!o0-md~~|cJG28n|?5MM4!LB^lT^f z=={%CP3L<4R>kG0ZW(!55s?x7NB!(!%k@u6*t@S@eJ*T$X3fKLR2u25*9JPB7NAvV zz6Xfi$l82`3&9}xkdkLQl%k+YZgL;2*ksS!M-BUpd;daaPB#K-U?8rAP{KGT6d&Cz zFhB~$x0C`bTkYi6Q-z)6EK!@U3sZr{X6>Yu+=~oX6~6Jt$fJ@W3Fs~Kmaft;IbuP1 zWd+?jw0?<_V1;7Qd_4D_PBn*n()Xr7sW4)csw4R91(V9$1qmwQPiX2pC+^|3$s7*O zVowLKLfDUJB{yrMn9F#1?73YVfU%@Sg2Phr-0~3N8^W?$T;+1q`6cz=94=2PE)Y*^_RyYoW)xR?yv75-T>h5-Vj}AL#-Se2G{dnjEn*nB6yD@=60q`igP{>}d%g z)h}ijpB2)tJa=EzFF2aELUSN*Zz1R(^6@hfd`lEX#)#5x_y-caD_yuZI|E57Vk@y< z=MLwacUz~XM)<$Epy7WH(5&VKieY?iz1QHzhZ^41N<uB` zt)ydvR|NY-p6Ma~P}HZ>AHlb5s02hb8(TqO>1rzUU%=4=2)?O_Gv!+!p+%6@ps-)? zYTaHty!0=+9>tWPMWVRPm(_|J*hHa4d^$Ii=xTYUKv6YB-y=R{LzX;{>+j`T7RNV* zYyE(|Xm8i`v_Yb>twpiTV^5Hu;dun#8tvZc;y@CRGzCyeOgc7KL$8rxPFkJl zAAVuqs9#8=%>`Y~xh%a57YF7J{j-_>*V?!iJ{k|{(2nh(fa;qEaOvCvb(9@i1mN*- z1zHM2ul`tod$yzHAJTc5m)>W30H~s_2;`VFqUN^8YJjD|RJq~(i^gWk50SVB& zD8ljyTkg4Atrw5%P{Z&sZs;)rT>_0u3U{`eiZr|i4Pt-Z^-IM#knwI{|4#r1r9S}2 z;eP?x-@66wLJb4qhEIElW0p4E`Kz)N?K{kaq982zbHWLNw^}dnj!+2!pVB-1cU#BQ z{dWiZ@eu3@z0n|hFNJ#@wl}K&q2P1S%m9%Sg#VU1qV;enrUgGP4_vRq?&%B(??w{4 z7x=J4ayi&=WOV|fJ>eR4`rq`2od2LNHL(!ff(DsC*lq;?Bf)_OgPi{}oepw%_u=&h z2bGZ89|FI-!`ICN5-ZX$P8LyH5LPB3DOsA5Dc`>M?7XcrVN|V{TP~&8Z6go6g8pOm zmY7_L=S5oaq_PUWpHoIYee|pHMWmu5*JiYDIu@DF=~}A`FIRL|`G5^@eYio`vl+3{ zkR`Z>ZFQ0XR{<D@)?!jT zc8WKa67bUCkr)@_**VG}U@`GKd>{5-`0%Di=reY??26&!!+rXO&4a zI4(akS(qIol`LVT4I6D`2ZZ;Ma^Qi#Fi#sn^@oZza?p6|`!tUU$R>N52P=uEjqymk z#*=|;PBOND#I^Q^4l&N}?53J2Cr>Hq{(7_w<1VgKNc_gd2900Hyy_}GQfZd3Fpe@Yt45UwATE13S1P`Scjn7Wsd66hg$_ z`z|>B6{Z?g+2&7TRaF92HfJ$w-~^s*&uEzc!RV=@0|`T|S(3>0LtBUSK8p{?0Rv)8 zOoqN5jB--sKhX?N4zH^}lB5>Kjx-GUSvx*uS74YeoL7EXve~34SUk+5Q=QjR4w$yN zbM9OF3Dlm8N_OH&5)%y3KU@T=NKWbPYYn$k2M0sP>qw%94dqGP9@=CMl0IQisB^#d zazL~MZi}O;FV502D`CP$NfN!`{DgjHxM2Q6OI~9KCZdU!VA2V!rxA` zH}kpBh}O5#MLZ;-Cd0A}3{WnsoR6!VAHp3Dg$+lKrcPQ$>epk976^T(g;Aw9PpuBe z2soP@1T-m@DgQiXLdM?m*?^M3u#G z%eJ1ncrd0kY{jAdaFB$!Ax$={vX%3TN>%acdkE;!)sJA+zjnzgZszqZ7WOGRd!q}e$dTwIcZ-3|lBE=eyC#zs6f zb7vnyYMQ2|n=JIA@L+D#YYvKia-Sw=#Y^qzy6kH-33bqs){l3vPOKk2U^~&``J%Vx zBS-qjnPl(;XxwF(1ZB3kR;WZ1pv%*=o$9QPxAHrObugNZ8tje0l}0-qB8l4MS0B{ zWkR4l^wKA?za1E%(o7}2HsLvOM9j#5Dlz!ERQWl))03FFDh%t>omfdcgf|H#8MHWp z3psRCw)iP1FLr$vt9YVMQ!O{913hXcDd-zCACh1^ZQ>vO|h0L|vw>0RXQ?v6);LD&1i^!{1q z`{Vih)7yy~@HKaOd|m(Q`SuK0TZ?*ro_hyc+P~4cDkR8chy(2ItRimCTtAq71E6N6 zx@9WmYNC$28S<DSunwz}`+*q?cO zW_jy*%Co$Xkf?MhO;5smU1w+*nzND@x;nVH=U0P#wf44q`H^LMSfJLI+I#hTUtHI(7ZkE1?%OXNT)p;9CFUbseXAED5+LR$ z5qx)f5!k4@2Lfw1nOspT=W9n_sj9oHFeF4K7J&0Uj^=Gkrxw6@axZp%BDraiVqA8= z$GTMu6xhn)`Bz}p?YiNpMmI~&=BB{ZWcg#w&EB=~>!Y`0+uPkHN&S5~-whkvkhr>Q?xx3AZf#}0 zXXV_b0}XLj2Mu$^D(GyiZ?;qp>v|O?y#61;-U2F)ZR-}sEqHKucefzHt#K!~y9W#I?(XjH?(R-- zcY+59@;W)^-gnRazxVy42i1d7yXTs7?yBmwclEASIn>8E9Ugoze+c}kVCOIAr(vD4 z*lf=3GS!8UL{ysPt9 zZR$*Y8tjerOzw+PvK>~cjYou=?vF@_wBrk{HXy_I%%a4m#ocj@3#~(G-V9l%L1$>v zeLUP%w`rQ@oKC+eZZ^GCF{a}@Vsv>V5VQHN8(~*TZ`jJ6trhUY1PLircnsWlaZ$Y| z;k1rUFU;f{29rd+{0A&D^;*b^QTmN{&9|=anXt`|Ek9T~njbJW;t){`Sl)j%tuDtK z1%GaPwC~id`Z~_bAI|{kF?mq{<}X)M2&YcEq6JxjVpRvWg!Wa-OIl>D%16lWRjmi7 zSBy?C(oXzv`dx~wfV5kB-;2JX9J82e(pEUe>V6J z%{5{TkPBKQo4{tMz-GUtAzC_=OFkn$+}=d}3Opb_(4u&$mW=NJ@$y{orWc@Z9=``4 zKBGrdot~!AOWH-a)2n}S82%~gqveOk>`@*)T|T)}SR!BxA7Qzr_kQ$p8GLY%Io9{{ zV+5|Gfa|!|rVE$L^CeHK=lhZ6+^OXQd*$#R=ZE62<4BlqkFHNJ7Y-gLuj`pz=zN*& zo4-yNs-TDz#p6WlVXZq`ur6w|c&Ew|0LGG!&>@8vpXJecwMC zJua7SJ@;*M-)Cz6YeF*nrQQ9Zb+(tt)BKO=WZu^G&zGcQ>&ul}$=}x69_0p`D^Et} zY_%ML^jyk%&&?p}Ng)njo=rhULk%_8nnWl^u6ZcE@m-{@R{Va8fk8q$B4TD(GoRfw5e`bl zsN{Yj9)v#0FSTJ=ioObiRSgQWAfo%GDn*r!7e55UD@{Df$3>RGbqL#EsS3>U%l0Z? zvjwBc-q#kj_d74%0$g@41o)3~(qCTpcrx8|<$AmJ;`!ccM-ZGHRz06yUZO?$(+|9E zHDBlV#_C=g1avs?WXc#`T2_B>GUCzOAlW`Fu%$++TzAP0yKc97c|5hOXBos6+V>0F zB*oS8QP|`Xh^1EUA5C%}sjgOLP2WyoHbTBod^pu_kmHu`94Bn%mS;Vy>Dj%xYLd2d z4ne^bXTrQOa+yLp3OW0t&q;UQG*MXQ;DPU8TgjejIb~zy45Nh13ixD#=P<$bX-MW5 zijYu1%RP+!D9SDv@gj_Z(|A<15;OF@tCYWhi&@JOHm=FmtvRxyuZL|@G`t9pJ zZ8~W`ivTv3Tu)j$NW2_kn=$D&&oh#456+*B+~m?ebNoN-b5y<3pl& z;CJmunvfhisPa&4x|st5X&i^jKjFR^d_ zx}nmZdqvqV$)?ay#viy2tbWBAO5pr}ele;FTP)R%+KBi-_r!*H+uewE@sx14XN{z*rF9j)p_ zq4`yki(*7mZ)*C(7klP>vU zj)Ex@-bRa4U7p2;QO1Q*=&>!q>NmsdnvI0;O~#WGRM_1cC44^xS=~!a!mq8)Y}|Hl z_TPO^Si5XoMwI$JCXr)!a8oHXOXUi$CmO z(cz6B!!5Y+KR+XX+;f+S7-eRLqDYe_C58!+{6s{t?~`%|jvQocj4U$LK!B~}U?lU) z7v3WtuLl3}X*cF6Eix&1UXr9Z{krZ)2^6M#or|`yaxGFPwt9sFOM+Ug{*(Bi@L+UU z^%mH9b9!C%wcL@B8f*}2cBEoSC>1$=^$Kn>9LU65O9uHlN+Kh9>mA}CTc%V_L^-cI+?x2pEmb-Nx)sDZFbR{h^%aUZ>4#X zSN3A4HqDr81E9M}uo!20 z6t8+6xO1MwU0;1KK8bBG`y!cKRE#8gG3LRRPElL7B?cyB@%-W#9JD`A4V8Ye=b+_^ zc^U(#9h$^8TF>y@O(zxNr_fTi3|KxWGe68IQm9N^cS*Ac&9KHpmTA#K%`@2chezi$44;>wp;y20r)^oVtcfVqrXD=JYj5i=DBwsl zcu_Zb3Lhgmr9Uuq_4@~BI*s@^*um@XNW&xr3+~+}_J|1GR*aRNn$}-`K>&YDh&Un> z*T=>kuK#qt>gia-WEpl_BnWFOxzoPO#>=OLn1K{{_<+Qzw+OeKUir1ty^FgVVFt1z zVN+0_lD>PtIZhg}hsNdNdYjShJaa}BvgZi$3i_onxVs-Lg>U8)DBXbkR?BQOEI8I% z)B5EPNqKGPh9n<5ZI&zsx~mAuD^~A)M8|{>=vxPCtCGD{KlLx8l2sG;E`wM}Q>!~~FX2sdG~D0OVT}3iLcWfxS7Qy|*LlKT9R+;4ovwyP zlG;&pUuUfo7R-A3oQyyG&mxi?J7zYAO#m9*CGDIU7yX^S9>Rzk)(d~6CfV8kk@~Y}xq~O7Uy@D##)9!H z+GS*6zu@*}1jKr}6~{cFjq}oOR~G!i#?D#(*U_eHuND8#|9^G>w(#5Ruj>x%Eu0ug z;JzMvA6ht9;S@5RY)O{0k)-lCmu2(3FJ<|%o^?hUH0VfZ>pwU)A^n89MBp}RRFJOa zt%=a=>jZ^b8zNdy*SS6Ais-0GsVN8c#3ryO6fY;`$~U^kin%k?ej3)9FGWZ`+B7Hk zW=FU3)pzu^X4w|Ap-TQ-WN%9(*zNZoRCsG~eY|mNcav_)^xz2IUiWKBz6JYUXU>$^ zJe|dh5S`u}y?k<6UP`tXIqa~kX>*F0O8Drb|g79}|S4&xU zOW@imrNKTe%Ra4mIms&09oK&9$x_TOu9m9qmMP#tQ@%}|>>&BZdL{0biL0CSn>eCn zUtKL%$8qEa7_Ld`u+2A(iwWvR`n4?Y+8g;cZ&Gc66n82|P1ToU1v+=&FBZZXI@oDD z*(X4Sj|A5?aeQW3n3Ovk$M)|vY$Hh=KXo*o8%G``VrF{<8C51{x=Vy1*;Y#0R{Au1 zlIQ{{x?0}A?l~9u+j8yj-RFIR$pPFXVxj;#5rLxljy>fQP`PMxQw^9!}bdlL^9$+@ff{l z%#-!c`wMC&MVk9`C4G@{s}%q!9?Tm(Kp#!MA3o>~>4ea!XQ;72i5LV#n3ZV&ZGHw} zkE(5DY`Joh-~zw|0<-Yh5$AwO)u&^!2Sm_DV8l5XhDJKfL>K~%Toi?5L?-Weg-DGrMSFi#ii}0WioUAow-* z^e4(8AU!ki@XYsYVZxk7m`t_hT9E`Mis^D6%ed{0?5QkqvRlFkG*Fi9K&!0X+3$o~c z!*o+^4TIuj1a}(fIZvXWdsSB6M@cx8qA=|PkW zr3eUwMJ{)w0~W2|rb!40Q8VFwn=l0FCUP$fG1y082py*MX=w}9XgDuF5gKOSr9#wD z*apUUF_|2AhFZE-VC@`rrtybpfSWn9w0Wdr) zf!vlT>a2mx{#q%$FevITBRSv?Rpgm)C?HsAzQiS2JhOCDlt$fYW5A=~Kf7j869T05 zo@g1Lod4z{ zB@AIe;l!Y&2`Tp0h(PQYC8OVk?E6Uxi?t;XI|A8vFdCjm?}z4GDKe-}E;g3IsX3mQ z4p+k{FS@p7KL^kUv< zcP+YKNR_-^TaqB{d-Y>NpvG|H;Sk2s<3m4=X~q9~5F8`u133%?rQ!S0@7wQ_-HSr_ zMvM4sc(6ZtdTmmxFZecT&7)q#+7=-EahYugnUK=85p<$imFg%EN(dorgWA z!|Cdm-g3^lazg0(-i`u?La1(?(ToYzY9o1ra`0B@xCE|hm2FDbUJk%pQH zw(c1$;mr26wqe3HeLPX}4>}K2o?f@^C_3KX`=e5p zvtK2Ubh?>!-uVci_u>qc0S8dzjVH9J@vAq9@KRQfQV#_kUK-(7&pY>=yZ7UAp+lId z7)hyzm^g;VYo1Ivu2$7s3Z@oU&)gke6O)@0vaYX{9@eR;Fxq)w$<5^)n2imHtOCgW->RJA*_tMNC_#`Jw>!OL4A%Zvi# zIJ!of>LzKrW)Zoz^F%OWYDZMkTiVV=P}SM}XMYJ>-s)QZ0X&0gG_LBzcka`dflTKK z9tJwzDx?vsx3H?capX*dLg_A4Y~&TwyW+T0>2*hQ27;=Mg9D&HK-6`~DrJZJBUrhb%3D&UH2a>Ur`^)b(|k<@0Bq_rg=; z4zKu*w`(JQm`@K->}BgY1svbV9Tf@hOR*B33giZ}*1x{SVeH%k@dnP4vr!`%S?K9l zCmGp>W|}|8_IWzXxV{2iOG)ocO}~0x`}tg1?PlHAr0=a@9NzgBH`i&bBOnT@>-xGn zZU*-V@b7Ig^1q?wq$-uw9nDbwhKTOZa=@c}K8g;S)bRh%bBcKIL8tehdThP1rAeC* z&d$g*kMD1duk$4~lkazT_CIhx_17U#%c)s>Rh)9!7V7gSyC-VB_7LXRkfs9d`v6j= zQK0G$FQn$EP!p0v_U>V|?=vlfw{cDfScq%3-wmn+8OZg$@4(!-?Us9yzzaMDar6U zNfBlz@a%y(#-|>^BH}bqNU>0pt`svD>aRdPzvDx(5vS<~E*FSJ6n70jkiURU5T}Li zqUB*@|0TxZ|0%{yjqR6tV>xwds*aE%1?w+OP2N*=f;#Ri%redFo@`pnOz_T0O)c#2 z+|NFSEYyvNU#eu1X&E-wTR*-P4*r!u{-+BA-2 zMF589Zskq_Cv^GGA5!~!Pwf}OvP%$525{+x^%WgzgK9bPgDXt!a5nwXJyy#Ul+ko= z)`W#GxdjE`!6XSaiOSuctGAo+38_8KmlxgN-!>yBzlt<|iUG?$pn>$>Z%lCB7P9+* znI>lU!I?|$o1IdKl6&v26(JcWSu;wG?;#Bf-lbQQ6`7DTXn@$U&2f-D8Z)>~6RJ*R zbOFGv{6p&@HKQoHn*3&8V3ES+XY|VTx?N;>ov8;QHz7A%P#mgilKGuW({VA>1WZA* zfEzLUKIGNafgACQ+zuQ<$;=zoWc_g^oiH4$oQ}W`viTi>I9RR5gXB3K85jOHem5Lo zZ1OsyMg1GoNs(k!j6O5)2lx3@c+5|^mb3?pKP65Rn%hF8vThWW)ya*lvH-W>m><85@k zj)mlZA>o{-k>Ndf|16)RsPpZQ6(3W6Tk)XyFNlW{pcNng7b}MJ_X7v_p^k#<;%_WG z$=t@quUByfmo2*V;hR5sfw)x0ywasx%%n|Na7#rrSX;M3w0BQ!{6N#4Sbb&Rss(UJ z9IC{b@nqrf*@9YF0Q6towy~?E{H+v>dIpdUt#M9V6yI@KrY*%I2~=OP9D~GHM`F$Z zKZ4D5c=ktTz1Pl~_C?4PB$#0eS5K%_5HCKuQQH671&LD}M{~k@n@B}8K9qrBMK+PB za|x@*6L#<$i?b-e3l!`Rol*1^qifAYPpCUXja-QlD)5!ahg5&Xa;`VVNnB`1IW6=@ z%niD3t6*RC-%cf=R2(-@DlBpU}lh8c)j zD@I3OjowgqX7C%e!dLxo)IprYg3~{!wL!7Hb7_2cnHZLuSWqGCc*qu#6+0!W+w!Wk zKI-7LK?RC_T+7S_i2ih~VyVy}>=`ih=#~ShV_HJA?F>sH2-pKSA?%tyi_r?4S``Y^ z(0-*lJjckESTw%u=*n&MOKbxF=Bi*ioLf;3UJGS_AQ?$$Uu7r(Nvz=z2_^~@gQ7{Z z6q5M4)=$;tO9cup%Wp*uAmxPlHcjgJiX(7JolY~vOH5tewM7qV#e-=WL7)Z*&;gpL zmRvLg+zIHrL`#Ad#H9er>(OTH#vewb>{4e!6+0qkZc{k9Bs!`yV^!ho2EtIl;E@=5 z_l66T7?#RXOa^7ih&%&0K~j3Mi(@w7?2|~~12~8vk4zp>eTNk7TR+d-J~wo*CryyE)m&jrm?su$J4T$-%3 zKRG&paZrh_dJ}a1x)jjKU-k*XAHjzl;r}MZ~ zS5eOwlb}lb{5XEZpZjU>bKV*8mg`x~GjHJ3HG)-XIpQ1=8XwUbm^`py>G6IidkxBH z+|0@>l)?zW3@k>N+(Yp$rYDa`D4`K1tfV{Zql5vJfDxI3ev~f-j^szvJtD*>$`k|< zg+07=} zB}xpor;g&|CZuidNvMR;6DLOHMalh9l@&&_&{W83s3g#h>HTOrO>bZYH)ceu^uLRCz>Y0(BYW-=>Q1a0ZJ zDu~X`AIGCoF(r~*9EO&9EQns8JiBk34&`q@N^-0Qqzs%3o{%(l1yYXB6aO#DBw+uf z%#|{2Vx=>frpF;K8W~L{htAD!n)?`LJjcT-5@le>%^*&gk%mFp@M1k)qxQB$UP9x& zr`Vy~;3kARw#bKN3hi(qL2uy@p|B4*yH99pi%@*JFBJKSb0u)MU`;_w&<4YXOhL6L zH7{HrV+KcJeO_jx} zSrAYnTtWe9MH<>;mY38Mys-%a-%KjWSkAyO1(z!Ne2V>s{<2vdOY>dhL z8Y@0#T}J%i$ksfuuTv7M6cL#zueDGCxGy*S*#R1 zQ%tpn{GKdnL_5==y{V}Wo@Z|H1TWZkBBHAKkvzi{HBez>LpR2bXh%C}({30K75IQ| z*y11C_I*U~k54|3s8OHXdL_y6Y*-i=cdl-~fmzo+{fQYnx{*7vj|dBm3UHen0S+|C zsqfao3}Z%UX=d7#aTI-LX?vx2K}5 z5bW~}P&(a{gX&6_giO>@?f^4HPPP-#Opdh^`JNnOCz6&NXE%TVBgK^gMYQ9T7Zx6i z8uf9InHOu|l<~Jy48pc8hCuofz5(-&S0edLQ7c(2@kr`KJ1a`!;mUnG6ni(Qhyq(` z&?X=9S8!p2^KVjxHJ;#65y>)cjHrK4_0&e$a=) zL6r6(cp8K(1E8$Ns?ZnOw-Q~v{t5{+Ys&Z-;p+tP4hVIOojYQd9R{%4!!$HqjNN&u ztz`O#;N*yLX|5N~Y$8m+?O$O@N`*CI(f)+xN!=^`kw{15<;yIQponhvrOcsB@E1#< zB4k=}c{q)gU;{i&HmC$wW{JB+Ucg83S~b){qyMkZysmv_ICa8kGW>eJ0furL=8CYv z>3_!sNtui`I3mZ3!s9|KwJl1Wzo6pSnCHGZ=APuE@HA>f6#Ag(9-M=KJt;gBu&zjJ zEaFsqzzO!6Ps`q-W~}WtD47qbkiT(2nOZDMXWkf|wilZ^+gT;)j>)5{?o6U?2Vc*+ z1W{V)$eM(FWG$z`Lz_|?G@%YRJGVr=HsDkS!n4z-=XX=+p?g9t0coUSeRUebQT{PE zj>IbZ$@^#&;*$@h{~cj*y>$*Ek}__TMW+dT@#=SzLk|!ld*`tEJ^F)Q z2U8(##Jm#YmzVJEB5j+72sFr49s1Aq82;Kq6o@XH3t=)v@$SiJG@T-O^Lg|~;1YcS zy@sA=4toSfd0St(w&F8P{$bR*5h4H#B=A=tzR;wpYiJ|w&%n09yaR-7INn$JR1<1n zxEL3n=7>WCe6oq(^dMT(poEwVOasX!K*Arvcac)+T_!btbE^R@4iO-F)8i3C@dhcJ zA^iNI-)@LOd%&R`_<(S}0ZuvDdW!m6Vg6mNr&$|l5Uyfl3RdwibWY-HY;9uXC&_u#GVq8N{ zXm}jb{U)~Jqx4%66MjBWw&HR1I}@BZ3U9#BKec%JKKe)hTgmLBFmTdKGKXvW3Mg1W z_@x)d0X_Qn5U%^17lBG4ivI83;I^FpE$12<*ACblyGTWbKsoYougHjp^>K2p>NcFa zNImSkNG21EK){w2uP5`ywR(TVlhyWq^8>Da*BI^%KnAf~(!QBmloK{ayN_!|y0L%1 zcc4a-?py6NLXk;g3whiWk8WcsJo^PjQQV!oRY_|sWRDpUO8_Ya6rLr1eHimJ!LO?Z zSM9kN&7>>ik-KVqQERh$Bsfq|G_3E6A1n}dm>wJyas>VOA&Y%gK>JH{YkHV0u*5XF zAMX@5YlZ~)yJNmO({EGtD>Mx#JnW7#>8Vu&mBXuHSJlzkRcr*~Pe*=x@JO~x!rogk zH(k9KzfQ=6fVgy+UO(Wd0SRuE28T^v&GJ=tO2Y>fulmjdPbrRKH-0PxzNYzequ`GK z)(jJ_$!{y6--fU8nvFz#=GPgE-A-G(&aVAI0ghiY4}mbnzhR31g82d{eo`FA|NS|w zj6-u|h(0!fbk|6vAwT${CnsQ+t(Fyf?rC*nYaHl*e5_S_t|Wp zdCJGNQh-U8k>IQX7U- zMOz$Gh74Cn^E&oQF(b;lsgQu{xP`z5jbZ@R{-lA-y63HNrK1zGW-zhEU^}H9QArW?3|yv@11YrM|E!)Rx-T&NMW3ek!ZE%mqGN2Xg~{&*Vbn zVA^N%m+ucd0sx(ZUm{3k3?49^RB3N}oUyx0lh$s>1ZXng-dL zyAz#HDVejF?xE(0bX$lTSaW^+-u&x%26Iq{IjJK;Rhe>Anjj%Ii)1MiM<~;*tNG~@ zz>BoldNjnr0Q^BgL5Fs#!)FC!#4*X8zAS1=lFD%^%HJU=fg!n1k{wXx@|bAKOUHO5)YDp}_-I~Fn!c7ftuHVT`XrsVw4(=!q*e6;Zdzga~ zbfTr4rAmP~hY+C)GWK^s9jd>Mcy*&Xi_OVM$<0Vuz@k$EP)Q+t=BCy*%WzPnVvQk1 z(6Mn#Rsg^yzB^R52QC>We2je{2W}2?Gwx)#u?OQr@cBoU2Ynq#Dl+UCr5@z9s3^ZE z0K{fp_c6AbtEfUC5B43tD<2dv6$E~J^K214C_tDH;*Ry#=7og*ZN&lE9VzE_DW6%i z0}B%H8viaqG6owdCa;~RoYSA`Nnh0KEE3%m&f+}zHE&-;CVo1Prk;NT`4e6jjcT5s($ZKMA`L;19 zCj*9-ay>lm(*nkrq*}s9)AQ+}a~SM;7`%k|adV}__`f-Eu(~(+a8pq_#8^`1i+=!_ z&6@2;>JQ0ejU248k_VXN+o9D$GAxk_aWe~ZQ&U%I0x2!12mVD#Lp+$MQITV4jl+X!I|?5BEEqJOf$NQ?(M zb0G3>XB<$Wb1`cibL+5@5XL0&CQMnI9QxeJs3@(eDFrHBe&Mw4+l97?#K~sBg$AgS z_>NmhmMR&ph$Oc2IKf{F7RB;9uBLxt{kH6Bll4`@H3;vZOEOQ*6Xc@HAIiOeJty;R)~vyhYNQ*`iEN>+Hqu^%(urSNjcGQ9m~$5Pn{ox*W?d z34;NG{=!g&8(HbE*B3D%8Fu8~w=m-pVw)7_nL@;_W8P!a$cvpD^Xm2!^5oG*%y&M= z%=2Shf^tLtc`X{F?JI+GNA3n>)#-xjSyOSu%&)-uGi`epn2ef#;f|u?E-V=Yb6%hwbU_WtpO41@az&Vr|0bLTm8D+YWlFF>*K*Jp|zmb@a^K+UIxA4h$ z`_}GWL0lLtz0g|nfg!CsCMLX&BJFa0iV~jW!r`?ed17`Jgf%Ib_l1xVA9$^`3X=(0 zpi|^a&A$I)ra7l`nMD(!q9K<_fHLf8sMRorU_!*7C8^IQsW5h51+!UTPD&<|c{$ z%#hSGuJ#bK^P_@>SB!Th7{{WmCijp4F+?8%MWsyJYBEK|^7T+7S_$#!=3)R1Nuq#H z%U@R`(o-wTr|Ie%m`QZDp-?eLfMS;^GU>F+7 z(^TUm)Hm3^qQIj${2U=XVG>`TH#}qd$Ujc4TLTFZ!(4(=bDTsRI1OH}1kV&-|Bx!$ zGz&yBLWb^-n>JN<9E8Fsy^e)ZH~O-hOBY@s!3Tk%(Sl4@$4IBhGwOdq$8yzQLza&B zZ$bsU8LmnX?W7ahAm2=4t?v>aev*jqP#Gk<>ivg0Y`@>?gpvQRIxBdfIxd(_pVw3L ze}ftAKRd=c75@cfgMkfwyBZEN@tH60|5Z{nUqDQ^8yp1W2=+e;@HrYg zIhos-{#j?$sJh|soeQmNt5~mP#{{;?US^N_gsf&$mck17kN}XnZy?rpoN@5Ea$BTp zVWUYVDHrGHH&0XDU5*38a*P=WE;$H^2K;c0ezPDV)U-4lx3kN|RxkQ&Oi3YOOw@Y( zJU-ap+TJeq_}TU7EmA?tlN1keyNG`M^xak|&9IP`XX_hTDKmXjLzvH&oiZ7(IMC{{0p~S&D zBnn(rH16Ph)9oZ~xd*uXK(F1KIJ@ZIj&S&?s8)?}RB!~JkVKB0|YQjztSNZ7j6!NycxPT)BG zY(Ybgqo~wfQ%s-5Xon8@dye>T)5;@TxYvfDEzRY}?W+SI`#5 zZLHC=KL0)Y4_E-KaXal#$PG7PIE?|$jwZBuoSj<$;p~K6ix%&D6%skY_fq3ZO{eNm zi<3Q-KCVl;(i)@$kJi%gbuHL+J8^mXvT5FpJK(Bc{zi#z6L><2{tYqAfk(^B5a@vw zT;WmAMw=n7@Vp0%(?!eX3SxIC=ky69cylj60ZJaiT{C4*^5ifsl8 z?Ywt&BjZtbMLHZ8#H>PiEW#(%C(J zMOO7^)VZJKk|aI8UJbRRhI$|DZUW~iyl=r7pN|gm=))EK!)11)jS3%tsU^mcx|3UQ zesHlE!JrT-q~s%9v(P2iYLDWqjy(>Z`GV(tn)rku$v({Y>y6Gag-i`*BKpMiI=P<5;lp+Y^MEknHftnHzzNp(dYyvTAT( zwck+?pAeUBdgDwoY)j_;UT@C=rMjDQzF(PyJIB!wSWWmB90&;NzZ^3G7SC4JH?aCsQg|b&*XBDD-q4S4VN}T(QdaSe zXecy8K@H=GxE>%M@oF&EVlM<+=YCD`T17Km)JV49S;x3v&`ywn`oUm32}^(zbH7hN z8NA=U;%hd4rK_V5p`mH{(Su`0*9XpA;JMFB_}n=jWJn$Pge>m&aVr(&V7-Y^bKZoi zMK!54vz+3Cr$>eJy3-f*2-yBI3WL5#EV$7cj%0^@7CHfnYhxny2zLCLkkiy~kd`_} zT(^*L7-5_kH4+J|9iGmuL^75rzjEft#W8F5kTvBIeL7LW1Qsn5g~MT{154cF3oK?F ziCmEqOB2?oFhyENUWk(r(WXJa!*mo(R3wt!wV@FkU3Jx|sWc95lcG1TAt(~5Lgff% z%rL=xIlKL}oPERgv(;WKY0*1(4jMCJ6SlNUvJ5i?WWzH5YpHZS$>egnTCwlRL3%N{gB>W|rs z)ps`RLlB$+SvHP@eTP8))Xdz@l}BN&B6L<588SDLNoiI?XO?LrIfH06(hc|B;LVZw zy|JZRccMF+-$n*L^kw>n0#!1!VhoqbjW=e){3c1DNoQMG&u+gr>6Sl9X}F?h*A^0t zakBQu!MD&U=a=LzinC&O*($NJZ`c1-OgTY_q-6+L$Gx2f1O)wGhoqC4v9&SdpDpvB z3TK+Kwrjw;xj)sA+x8cp*PO%JM9)_)mWmKin}wqrM6|4^6o^j9x)3hxdwldaYWm^M zoBC@i1wWk6y{6gVHz6MDVo|S#Q7Jea4$6KfhaM(*;`8j*RlHg}3nl>l6=E;*`k;BB z=!QVFRfPC3e9`FP|2DXUvkmr)NVXt;(MY{(xm^9F1+E$f(+x(VWxBej=>QHzn>w+D zKA5;$1blzI6~&kU?It!-8qps*Zi%$eqII3l4fz+wRc`S2rHxsbH5hobLgx!G5XU!y zSi-Jt3p%_;*tN#~%yWe2Uu2{D!&-eG^>E`BTX>5>JI@QY;Ds%0WJ2Op% zqO?zF_g>|5l9DlCgKUs-PUDdd8xrw}MM-k?nf7Nj#y78L>c_LEueMp9 zjUXfOJzL(-=gqp^+CIpV183FQuh+Y)XSV$Bx51R6EeKG-lItKIA^yC_Am{ROG`bDs zICbQ?;F!B)PW^8YrvC$Cn zj!sCqBro6*?C)0k=?VaGFutA~aQj+fXjiI<z24SiCQJ(Qmkn7hz%22j_^c&>18%3X?bBQbugzo__juML@Ot)~H>2%_{K~&=kA8#sAvF zvk}ywuU}XEYwfdOTe&l}<5lqN0>{q4mKclgw8wWhIo==UrX|Jn6;kCtjNF&QF1>Ht zH)fruwVc*)^*_4|CgiMX+xlpy4V{dy=Fgh(?T0hw`OV656EaVek#}w)?CKjXkoK0KK)`?nJhHfxAqz3NEDRWjDbgIF)t||Gpa>YdR5a zeiu(Q(s9%TFS4$RPXz_0R{b0S5@KPbrbgw$rbYPAA0!s?L&tgbPe~*wmfSzLtST}C zNN7VEgNPU4pT2cSC>a)cq38fQ2gW7XW1fstct8;drC>Q{VE_`lM+ST`!l79M{?@8e zd`P9Ni{dcR?ivmerikVPTSBBhnZm*(1$p`p^QGqpMn@8LD>KZN*4#_j!8?N3tZK=I zQ5sIE2cnhvTU;TD<-jp%Mn}>1 zw3#s$AXEduOzlb$jw?f8Uq|e)8vH(%4f=&!sU>+(G_v7{Gaj0gcdvS@;$z99JTp{5 zap_-F(r0au2UfShr5iZ}EUx~SF8;BD#ZI6eN}w)+f9U$FI_$sI{V5F_Ib93P&yk_F zJLQNQ%*u>SsdCjHP{CF|+Yy(?OgDuTer%JL*zC$v0>@_A#DD+kXzh(u-XcU1JzG*# zmgsYAcW2LWYP#ZWlStHL-#{zIbP8JVe3}2L*P_+P>^f9Lhy=Tpso1u1lpdK*C50$y zJb+uB!7$6Y?$W??CcW)#?x~x&ol*%;jPzFDssM`scC*$#t-~L`&C+Ltk*1*?)sQRr zKBbl|toIOmMPeHHO;uJ!rnFsE;C1;G?4KRl*e)Zx0~Blk6pr-|;lCxzJJ{Me{^`}s zm|7cuCN$BnU41vZqs%!FW@sT2Ak>zNQeW_0eaNjy*F+-A-aKS^*bRrjRykcR^5O{` z1lZ_R%+OHIQjozYm-FTZWps42vyqPQRPpeeLvpwJlMj<{Ik{}v4_D4ZF(8uN5FDgV zULUV_m`*g2O4x9^Lml+%;ErYrO!hc!g=5fcFrX$F+G9~veCd$(8i6JKfdO1q>hPk% zX`g1S@cGPfZiZ#`@>n`WmCbthi$=DbLL+^*Jql3+;Q7KcaIGr^&jz&V*vV0QQKF^7$_wSln%a8~Abb~mZMVYADH z)wxwH7%QgT7#hz8!Pbx`sQM*RjI{9c5YjcpOG}Xma>O9{muUEcHq()frMskMq-6id+UnNxUTThfus?p++dQ1<_x!`Xb zsfBJcODPSq23kQYmFMKYuyDZb-OM>>$Zr^`+ILikP==Ilhkbx6Y(uvUM6O=j7qh33 z--V=5Cty>PpFJO1Qms+wwO3lqWhPbWF%y?eoj7y2{T!Yv5+WToLCi{EOKreHJB<-i z;>Rt`$;ExTlpqVqNiKO2B*)P%=d(3+m+Irejt9#~?VajRHA-7;3NZy4Wflf!F9~bA zOh?Q8?eSrekKK0}K6IT4f4VouF$N%737o%na2Xw zZiJV=%*Xd*vu$@x^7?}MiC*(2ole3!L$8oar8b%j&KjtU9d)eO3p#dQeR@JaBS>dR zv}&=`0{t&18Ge==Nwmq*PO1%VW4sfx3$P3t+7pZ%FT8z&S;J#|f>%sz7!G4GwY~Bs zz-H06bZJ-*X``T)l(p`G{pemnd3?_aZBG^z?yfzeHbaK4%)M9<80)Q_YkPcjhk|lL z_3n4IygqLBxuQ^v{V}yR?T9{EW-g5hs^Oj2+=HfaKp^3g5Qqq{V*!P`H?}Fj^8(hV zhl8v8A&e&qJ$up36Ja5!TZPk) zl3n}EVBcCz=JKFVhc<59Bkx6?T|?*6P8^pqFB>Z0=%=SOtsbRhPpzUeGeU=bArs{l z^}`T1Ru|ruyeHj`R+a7*r-yhHZV}X*Bh}Naxka?ah45jR;YzPbPGvzplfCbm6scFh zE(np~2yB+B5F?dC7Fhf*CA0XVJ8e4^qDa&8hS~cZ3C*vPdyA^mmyjt+7U~-34ti(A z)y?_@CY0~XxtQimF&V+YTbln6A`mA0@46_7J2p@Aah{%}H3rB1rNSRW(S*+X7UW`C z9O1=-vZ>lm)eW=%SV-kW2ZdfLGi5l_^^Whx#3h(;*hd96C0bc@&<3W8E)$L*DqbiJ zxH+!$*xR5|kZH5-oQj^$)ft0{LOAG0QqB_B3b)2y_z{B=;tJ2|F1vgM;hckM8HLvt zwTgA!?(dF5SXQ>|X?{YYAda=mYoN(yoXNobY=h8iLzJ$^tH1-ozneh-fGba{EvuD^pn^tO;5|! z5<0?~Zt<{l9^Iom$RFNn&nlZt;85Y+kFEX?1+ilP#O<=E=C9Az5AD?!1WKXCVo^8r zvWP{zAI@%f`64Jw27uqpR&p!``wUimyfnL zFSO=O{oF^&Y{brva6e#=1#+`FJ>I#>zDRGl!r0!121PsbYY0{yVGO3 z^cCRiJugiy5}S{|=}+kvqoiV?)1?rWuqNexSXMyM!8ppnh_{-<+7a)JH)QCSm42l{ctl>C?Y)3k?yG&%7trB!f^T7`42;jSjvl?C7uK?NUhP zR~yEXxl(5br81-1joT=QfvEheSBc^&I<8B}nN<(kt8qOugnHbgrn1D>s<=QuC}I_vpmN;3VFnNRCfPn1Lmy{mLu0vGi0!Ncs3vA*%_&|II^o;2GK)Ibr1y4o}F zCoQntZJZphOIv3;uDUH%xml7#+!D<_bL01%Luuz;U4E*SE*% zy7xvT8jOD$7!a8TaCdeHgntVj3bg#f9Xvg^duz3CJ!C2;1X6JZ+<7`M5gVBUK*H}D zF!t?m54_k;RiN`$peyk$orm-N!2cWh?;_jI0+Pb-sIbYfAHWKGFSrae{V`Og>UPPg9X5j?xsLi#P0&zxxHX5 zucmvtO9nmHdTtFe$2`i#|zAZ?ZHj{RNQY%Y^!x>YQzDopzo_n0O9~F K4 - val resultCandidateFeatures = FeatureMapBuilder() - .add(PositionFeature, Some(position)) - .add(IsRandomTweetAboveFeature, randomTweetsByPosition.getOrElse(position - 1, false)) - .build() - - updateItemPresentation(query, item, resultFeatures, resultCandidateFeatures) - - case (module @ ModuleCandidateWithDetails(candidates, presentation, features), position) - if pipelineScope.contains(module) => - val resultCandidateFeatures = FeatureMapBuilder() - .add(PositionFeature, Some(position)) - .add(IsRandomTweetAboveFeature, randomTweetsByPosition.getOrElse(position - 1, false)) - .add(ServedInConversationModuleFeature, true) - .add(ConversationModule2DisplayedTweetsFeature, module.candidates.size == 2) - .add( - ConversationModuleHasGapFeature, - module.candidates.last.features.getOrElse(AncestorsFeature, Seq.empty).size > 2) - .build() - - val updatedItemCandidates = - candidates.map(updateItemPresentation(query, _, resultFeatures, resultCandidateFeatures)) - - val updatedCandidateFeatures = features ++ resultFeatures ++ resultCandidateFeatures - - val updatedPresentation = presentation.map { - case urtModule @ UrtModulePresentation(timelineModule) => - val clientEventDetails = - detailsBuilder( - query, - candidates.last.candidate, - query.features.get ++ updatedCandidateFeatures) - val updatedClientEventInfo = - timelineModule.clientEventInfo.map(_.copy(details = clientEventDetails)) - val updatedTimelineModule = - timelineModule.copy(clientEventInfo = updatedClientEventInfo) - urtModule.copy(timelineModule = updatedTimelineModule) - } - - module.copy( - candidates = updatedItemCandidates, - presentation = updatedPresentation, - features = updatedCandidateFeatures - ) - - case (any, position) => any - } - - SelectorResult(remainingCandidates = remainingCandidates, result = updatedResult) - } - - private def updateItemPresentation( - query: PipelineQuery, - item: ItemCandidateWithDetails, - resultCandidateFeatures: FeatureMap, - resultFeatures: FeatureMap, - ): ItemCandidateWithDetails = { - val updatedItemCandidateFeatures = item.features ++ resultFeatures ++ resultCandidateFeatures - - val updatedPresentation = item.presentation.map { - case urtItem @ UrtItemPresentation(timelineItem: TweetItem, _) => - val clientEventDetails = - detailsBuilder(query, item.candidate, query.features.get ++ updatedItemCandidateFeatures) - val updatedClientEventInfo = - timelineItem.clientEventInfo.map(_.copy(details = clientEventDetails)) - val updatedTimelineItem = timelineItem.copy(clientEventInfo = updatedClientEventInfo) - urtItem.copy(timelineItem = updatedTimelineItem) - case any => any - } - item.copy(presentation = updatedPresentation, features = updatedItemCandidateFeatures) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateNewTweetsPillDecoration.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateNewTweetsPillDecoration.docx new file mode 100644 index 0000000000000000000000000000000000000000..8e373653164e65bbf3c6c93d6fbf3d0084b6d1e0 GIT binary patch literal 37846 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 AmH+?% literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateNewTweetsPillDecoration.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateNewTweetsPillDecoration.scala deleted file mode 100644 index a805ae1a7..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/selector/UpdateNewTweetsPillDecoration.scala +++ /dev/null @@ -1,80 +0,0 @@ -package com.twitter.home_mixer.functional_component.selector - -import com.twitter.home_mixer.functional_component.selector.UpdateNewTweetsPillDecoration.NumAvatars -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.IsRetweetFeature -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.home_mixer.param.HomeGlobalParams.EnableNewTweetsPillAvatarsParam -import com.twitter.home_mixer.util.CandidatesUtil -import com.twitter.product_mixer.component_library.model.candidate.ShowAlertCandidate -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.component_library.model.presentation.urt.UrtItemPresentation -import com.twitter.product_mixer.core.functional_component.common.CandidateScope -import com.twitter.product_mixer.core.functional_component.selector.Selector -import com.twitter.product_mixer.core.functional_component.selector.SelectorResult -import com.twitter.product_mixer.core.model.common.presentation.CandidateWithDetails -import com.twitter.product_mixer.core.model.common.presentation.ItemCandidateWithDetails -import com.twitter.product_mixer.core.model.marshalling.response.urt.ShowAlert -import com.twitter.product_mixer.core.model.marshalling.response.urt.richtext.RichText -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stringcenter.client.StringCenter -import com.twitter.stringcenter.client.core.ExternalString - -object UpdateNewTweetsPillDecoration { - val NumAvatars = 3 -} - -case class UpdateNewTweetsPillDecoration[Query <: PipelineQuery with HasDeviceContext]( - override val pipelineScope: CandidateScope, - stringCenter: StringCenter, - seeNewTweetsString: ExternalString, - tweetedString: ExternalString) - extends Selector[Query] { - - override def apply( - query: Query, - remainingCandidates: Seq[CandidateWithDetails], - result: Seq[CandidateWithDetails] - ): SelectorResult = { - val (alerts, otherCandidates) = - remainingCandidates.partition(candidate => - candidate.isCandidateType[ShowAlertCandidate]() && pipelineScope.contains(candidate)) - val updatedCandidates = alerts - .collectFirst { - case newTweetsPill: ItemCandidateWithDetails => - val userIds = CandidatesUtil - .getItemCandidatesWithOnlyModuleLast(result) - .filter(candidate => - candidate.isCandidateType[TweetCandidate]() && pipelineScope.contains(candidate)) - .filterNot(_.features.getOrElse(IsRetweetFeature, false)) - .flatMap(_.features.getOrElse(AuthorIdFeature, None)) - .filterNot(_ == query.getRequiredUserId) - .distinct - - val updatedPresentation = newTweetsPill.presentation.map { - case presentation: UrtItemPresentation => - presentation.timelineItem match { - case alert: ShowAlert => - val text = if (useAvatars(query, userIds)) tweetedString else seeNewTweetsString - val richText = RichText( - text = stringCenter.prepare(text), - entities = List.empty, - rtl = None, - alignment = None) - - val updatedAlert = - alert.copy(userIds = Some(userIds.take(NumAvatars)), richText = Some(richText)) - presentation.copy(timelineItem = updatedAlert) - } - } - otherCandidates :+ newTweetsPill.copy(presentation = updatedPresentation) - }.getOrElse(remainingCandidates) - - SelectorResult(remainingCandidates = updatedCandidates, result = result) - } - - private def useAvatars(query: Query, userIds: Seq[Long]): Boolean = { - val enableAvatars = query.params(EnableNewTweetsPillAvatarsParam) - enableAvatars && userIds.size >= NumAvatars - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/BUILD.bazel deleted file mode 100644 index f352ce63a..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/BUILD.bazel +++ /dev/null @@ -1,47 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/javax/inject:javax.inject", - "eventbus/client/src/main/scala/com/twitter/eventbus/client", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/builder", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/param", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/service", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util", - "kafka/finagle-kafka/finatra-kafka/src/main/scala", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/decorator/urt", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/candidate", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/presentation/urt", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/pipeline/candidate/who_to_follow_module", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/pipeline/candidate/who_to_subscribe_module", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/side_effect", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product", - "src/scala/com/twitter/timelines/prediction/common/adapters", - "src/scala/com/twitter/timelines/prediction/features/common", - "src/thrift/com/twitter/timelines/impression:thrift-scala", - "src/thrift/com/twitter/timelines/impression_bloom_filter:thrift-scala", - "src/thrift/com/twitter/timelines/impression_store:thrift-scala", - "src/thrift/com/twitter/timelines/served_candidates_logging:served_candidates_logging-scala", - "src/thrift/com/twitter/timelines/suggests/common:poly_data_record-java", - "src/thrift/com/twitter/timelines/timeline_logging:thrift-scala", - "src/thrift/com/twitter/user_session_store:thrift-scala", - "timelinemixer/server/src/main/scala/com/twitter/timelinemixer/injection/store/persistence", - "timelines/ml:kafka", - "timelines/ml/cont_train/common/client/src/main/scala/com/twitter/timelines/ml/cont_train/common/client/kafka", - "timelines/ml/cont_train/common/domain/src/main/scala/com/twitter/timelines/ml/cont_train/common/domain/non_scalding", - "timelines/src/main/scala/com/twitter/timelines/clientconfig", - "timelines/src/main/scala/com/twitter/timelines/clients/manhattan/store", - "timelines/src/main/scala/com/twitter/timelines/impressionstore/impressionbloomfilter", - "timelines/src/main/scala/com/twitter/timelines/impressionstore/store", - "timelines/src/main/scala/com/twitter/timelines/injection/scribe", - "timelineservice/common:model", - "user_session_store/src/main/scala/com/twitter/user_session_store", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..c21615c263531940f182fe77a8d270af500438c2 GIT binary patch literal 37316 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 L1ZEH4UJwreBI~uo literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/ClientEventsBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/ClientEventsBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..c25e3d1a46c26774eae3dd4b96e27824163eb166 GIT binary patch literal 38603 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 V2%5JGY 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/ClientEventsBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/ClientEventsBuilder.scala deleted file mode 100644 index a5cf739d3..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/ClientEventsBuilder.scala +++ /dev/null @@ -1,185 +0,0 @@ -package com.twitter.home_mixer.functional_component.side_effect - -import com.twitter.conversions.DurationOps._ -import com.twitter.home_mixer.functional_component.decorator.HomeQueryTypePredicates -import com.twitter.home_mixer.functional_component.decorator.builder.HomeTweetTypePredicates -import com.twitter.home_mixer.model.HomeFeatures.AccountAgeFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -import com.twitter.home_mixer.model.HomeFeatures.VideoDurationMsFeature -import com.twitter.home_mixer.model.request.FollowingProduct -import com.twitter.home_mixer.model.request.ForYouProduct -import com.twitter.home_mixer.model.request.ListTweetsProduct -import com.twitter.home_mixer.model.request.SubscribedProduct -import com.twitter.product_mixer.component_library.side_effect.ScribeClientEventSideEffect.ClientEvent -import com.twitter.product_mixer.component_library.side_effect.ScribeClientEventSideEffect.EventNamespace -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.model.common.presentation.CandidateWithDetails -import com.twitter.product_mixer.core.model.common.presentation.ItemCandidateWithDetails -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.timelines.injection.scribe.InjectionScribeUtil - -private[side_effect] sealed trait ClientEventsBuilder { - private val FollowingSection = Some("latest") - private val ForYouSection = Some("home") - private val ListTweetsSection = Some("list") - private val SubscribedSection = Some("subscribed") - - protected def section(query: PipelineQuery): Option[String] = { - query.product match { - case FollowingProduct => FollowingSection - case ForYouProduct => ForYouSection - case ListTweetsProduct => ListTweetsSection - case SubscribedProduct => SubscribedSection - case other => throw new UnsupportedOperationException(s"Unknown product: $other") - } - } - - protected def count( - candidates: Seq[CandidateWithDetails], - predicate: FeatureMap => Boolean = _ => true, - queryFeatures: FeatureMap = FeatureMap.empty - ): Option[Long] = Some(candidates.view.count(item => predicate(item.features ++ queryFeatures))) - - protected def sum( - candidates: Seq[CandidateWithDetails], - predicate: FeatureMap => Option[Int], - queryFeatures: FeatureMap = FeatureMap.empty - ): Option[Long] = - Some(candidates.view.flatMap(item => predicate(item.features ++ queryFeatures)).sum) -} - -private[side_effect] object ServedEventsBuilder extends ClientEventsBuilder { - - private val ServedTweetsAction = Some("served_tweets") - private val ServedUsersAction = Some("served_users") - private val InjectedComponent = Some("injected") - private val PromotedComponent = Some("promoted") - private val WhoToFollowComponent = Some("who_to_follow") - private val WhoToSubscribeComponent = Some("who_to_subscribe") - private val WithVideoDurationComponent = Some("with_video_duration") - private val VideoDurationSumElement = Some("video_duration_sum") - private val NumVideosElement = Some("num_videos") - - def build( - query: PipelineQuery, - injectedTweets: Seq[ItemCandidateWithDetails], - promotedTweets: Seq[ItemCandidateWithDetails], - whoToFollowUsers: Seq[ItemCandidateWithDetails], - whoToSubscribeUsers: Seq[ItemCandidateWithDetails] - ): Seq[ClientEvent] = { - val baseEventNamespace = EventNamespace( - section = section(query), - action = ServedTweetsAction - ) - val overallServedEvents = Seq( - ClientEvent(baseEventNamespace, eventValue = count(injectedTweets ++ promotedTweets)), - ClientEvent( - baseEventNamespace.copy(component = InjectedComponent), - eventValue = count(injectedTweets)), - ClientEvent( - baseEventNamespace.copy(component = PromotedComponent), - eventValue = count(promotedTweets)), - ClientEvent( - baseEventNamespace.copy(component = WhoToFollowComponent, action = ServedUsersAction), - eventValue = count(whoToFollowUsers)), - ClientEvent( - baseEventNamespace.copy(component = WhoToSubscribeComponent, action = ServedUsersAction), - eventValue = count(whoToSubscribeUsers)), - ) - - val tweetTypeServedEvents = HomeTweetTypePredicates.PredicateMap.map { - case (tweetType, predicate) => - ClientEvent( - baseEventNamespace.copy(component = InjectedComponent, element = Some(tweetType)), - eventValue = count(injectedTweets, predicate, query.features.getOrElse(FeatureMap.empty)) - ) - }.toSeq - - val suggestTypeServedEvents = injectedTweets - .flatMap(_.features.getOrElse(SuggestTypeFeature, None)) - .map { - InjectionScribeUtil.scribeComponent - } - .groupBy(identity).map { - case (suggestType, group) => - ClientEvent( - baseEventNamespace.copy(component = suggestType), - eventValue = Some(group.size.toLong)) - }.toSeq - - // Video duration events - val numVideosEvent = ClientEvent( - baseEventNamespace.copy(component = WithVideoDurationComponent, element = NumVideosElement), - eventValue = count(injectedTweets, _.getOrElse(VideoDurationMsFeature, None).nonEmpty) - ) - val videoDurationSumEvent = ClientEvent( - baseEventNamespace - .copy(component = WithVideoDurationComponent, element = VideoDurationSumElement), - eventValue = sum(injectedTweets, _.getOrElse(VideoDurationMsFeature, None)) - ) - val videoEvents = Seq(numVideosEvent, videoDurationSumEvent) - - overallServedEvents ++ tweetTypeServedEvents ++ suggestTypeServedEvents ++ videoEvents - } -} - -private[side_effect] object EmptyTimelineEventsBuilder extends ClientEventsBuilder { - private val EmptyAction = Some("empty") - private val AccountAgeLessThan30MinutesComponent = Some("account_age_less_than_30_minutes") - private val ServedNonPromotedTweetElement = Some("served_non_promoted_tweet") - - def build( - query: PipelineQuery, - injectedTweets: Seq[ItemCandidateWithDetails] - ): Seq[ClientEvent] = { - val baseEventNamespace = EventNamespace( - section = section(query), - action = EmptyAction - ) - - // Empty timeline events - val accountAgeLessThan30Minutes = query.features - .flatMap(_.getOrElse(AccountAgeFeature, None)) - .exists(_.untilNow < 30.minutes) - val isEmptyTimeline = count(injectedTweets).contains(0L) - val predicates = Seq( - None -> isEmptyTimeline, - AccountAgeLessThan30MinutesComponent -> (isEmptyTimeline && accountAgeLessThan30Minutes) - ) - for { - (component, predicate) <- predicates - if predicate - } yield ClientEvent( - baseEventNamespace.copy(component = component, element = ServedNonPromotedTweetElement)) - } -} - -private[side_effect] object QueryEventsBuilder extends ClientEventsBuilder { - - private val ServedSizePredicateMap: Map[String, Int => Boolean] = Map( - ("size_is_empty", _ <= 0), - ("size_at_most_5", _ <= 5), - ("size_at_most_10", _ <= 10), - ("size_at_most_35", _ <= 35) - ) - - def build( - query: PipelineQuery, - injectedTweets: Seq[ItemCandidateWithDetails] - ): Seq[ClientEvent] = { - val baseEventNamespace = EventNamespace( - section = section(query) - ) - val queryFeatureMap = query.features.getOrElse(FeatureMap.empty) - val servedSizeQueryEvents = - for { - (queryPredicateName, queryPredicate) <- HomeQueryTypePredicates.PredicateMap - if queryPredicate(queryFeatureMap) - (servedSizePredicateName, servedSizePredicate) <- ServedSizePredicateMap - if servedSizePredicate(injectedTweets.size) - } yield ClientEvent( - baseEventNamespace - .copy(component = Some(servedSizePredicateName), action = Some(queryPredicateName))) - servedSizeQueryEvents.toSeq - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeClientEventSideEffect.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeClientEventSideEffect.docx new file mode 100644 index 0000000000000000000000000000000000000000..d43ce149106b9ebddaa0ee9b171db1b750e266c5 GIT binary patch literal 37691 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeClientEventSideEffect.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeClientEventSideEffect.scala deleted file mode 100644 index a8feef707..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeClientEventSideEffect.scala +++ /dev/null @@ -1,75 +0,0 @@ -package com.twitter.home_mixer.functional_component.side_effect - -import com.twitter.clientapp.thriftscala.LogEvent -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.home_mixer.util.CandidatesUtil -import com.twitter.logpipeline.client.common.EventPublisher -import com.twitter.product_mixer.component_library.side_effect.ScribeClientEventSideEffect -import com.twitter.product_mixer.core.functional_component.side_effect.PipelineResultSideEffect -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.SideEffectIdentifier -import com.twitter.product_mixer.core.model.common.presentation.CandidateWithDetails -import com.twitter.product_mixer.core.model.marshalling.response.urt.Timeline -import com.twitter.product_mixer.core.pipeline.PipelineQuery - -/** - * Side effect that logs served tweet metrics to Scribe as client events. - */ -case class HomeScribeClientEventSideEffect( - enableScribeClientEvents: Boolean, - override val logPipelinePublisher: EventPublisher[LogEvent], - injectedTweetsCandidatePipelineIdentifiers: Seq[CandidatePipelineIdentifier], - adsCandidatePipelineIdentifier: Option[CandidatePipelineIdentifier] = None, - whoToFollowCandidatePipelineIdentifier: Option[CandidatePipelineIdentifier] = None, - whoToSubscribeCandidatePipelineIdentifier: Option[CandidatePipelineIdentifier] = None) - extends ScribeClientEventSideEffect[PipelineQuery, Timeline] - with PipelineResultSideEffect.Conditionally[ - PipelineQuery, - Timeline - ] { - - override val identifier: SideEffectIdentifier = SideEffectIdentifier("HomeScribeClientEvent") - - override val page = "timelinemixer" - - override def onlyIf( - query: PipelineQuery, - selectedCandidates: Seq[CandidateWithDetails], - remainingCandidates: Seq[CandidateWithDetails], - droppedCandidates: Seq[CandidateWithDetails], - response: Timeline - ): Boolean = enableScribeClientEvents - - override def buildClientEvents( - query: PipelineQuery, - selectedCandidates: Seq[CandidateWithDetails], - remainingCandidates: Seq[CandidateWithDetails], - droppedCandidates: Seq[CandidateWithDetails], - response: Timeline - ): Seq[ScribeClientEventSideEffect.ClientEvent] = { - - val itemCandidates = CandidatesUtil.getItemCandidates(selectedCandidates) - val sources = itemCandidates.groupBy(_.source) - val injectedTweets = - injectedTweetsCandidatePipelineIdentifiers.flatMap(sources.getOrElse(_, Seq.empty)) - val promotedTweets = adsCandidatePipelineIdentifier.flatMap(sources.get).toSeq.flatten - - // WhoToFollow and WhoToSubscribe modules are not required for all home-mixer products, e.g. list tweets timeline. - val whoToFollowUsers = whoToFollowCandidatePipelineIdentifier.flatMap(sources.get).toSeq.flatten - val whoToSubscribeUsers = - whoToSubscribeCandidatePipelineIdentifier.flatMap(sources.get).toSeq.flatten - - val servedEvents = ServedEventsBuilder - .build(query, injectedTweets, promotedTweets, whoToFollowUsers, whoToSubscribeUsers) - - val emptyTimelineEvents = EmptyTimelineEventsBuilder.build(query, injectedTweets) - - val queryEvents = QueryEventsBuilder.build(query, injectedTweets) - - (servedEvents ++ emptyTimelineEvents ++ queryEvents).filter(_.eventValue.forall(_ > 0)) - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.9) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeServedCandidatesSideEffect.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeServedCandidatesSideEffect.docx new file mode 100644 index 0000000000000000000000000000000000000000..f61ae86910b935c6a23cb7cf4a03ff407a2646e7 GIT binary patch literal 39270 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 Wp$;`LgMQ2^R*)?)Jyz0w{QDn)tBx=L literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeServedCandidatesSideEffect.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeServedCandidatesSideEffect.scala deleted file mode 100644 index 3f19dfc99..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/HomeScribeServedCandidatesSideEffect.scala +++ /dev/null @@ -1,245 +0,0 @@ -package com.twitter.home_mixer.functional_component.side_effect - -import com.twitter.finagle.tracing.Trace -import com.twitter.home_mixer.marshaller.timeline_logging.PromotedTweetDetailsMarshaller -import com.twitter.home_mixer.marshaller.timeline_logging.TweetDetailsMarshaller -import com.twitter.home_mixer.marshaller.timeline_logging.WhoToFollowDetailsMarshaller -import com.twitter.home_mixer.model.HomeFeatures.GetInitialFeature -import com.twitter.home_mixer.model.HomeFeatures.GetMiddleFeature -import com.twitter.home_mixer.model.HomeFeatures.GetNewerFeature -import com.twitter.home_mixer.model.HomeFeatures.GetOlderFeature -import com.twitter.home_mixer.model.HomeFeatures.HasDarkRequestFeature -import com.twitter.home_mixer.model.HomeFeatures.RequestJoinIdFeature -import com.twitter.home_mixer.model.HomeFeatures.ScoreFeature -import com.twitter.home_mixer.model.HomeFeatures.ServedRequestIdFeature -import com.twitter.home_mixer.model.request.DeviceContext.RequestContext -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.home_mixer.model.request.HasSeenTweetIds -import com.twitter.home_mixer.model.request.FollowingProduct -import com.twitter.home_mixer.model.request.ForYouProduct -import com.twitter.home_mixer.model.request.SubscribedProduct -import com.twitter.home_mixer.param.HomeMixerFlagName.ScribeServedCandidatesFlag -import com.twitter.home_mixer.param.HomeGlobalParams.EnableScribeServedCandidatesParam -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.inject.annotations.Flag -import com.twitter.logpipeline.client.common.EventPublisher -import com.twitter.product_mixer.component_library.model.candidate.BaseTweetCandidate -import com.twitter.product_mixer.component_library.model.candidate.BaseUserCandidate -import com.twitter.product_mixer.component_library.pipeline.candidate.who_to_follow_module.WhoToFollowCandidateDecorator -import com.twitter.product_mixer.component_library.pipeline.candidate.who_to_subscribe_module.WhoToSubscribeCandidateDecorator -import com.twitter.product_mixer.component_library.side_effect.ScribeLogEventSideEffect -import com.twitter.product_mixer.core.functional_component.side_effect.PipelineResultSideEffect -import com.twitter.product_mixer.core.model.common.identifier.SideEffectIdentifier -import com.twitter.product_mixer.core.model.common.presentation.CandidateWithDetails -import com.twitter.product_mixer.core.model.common.presentation.ItemCandidateWithDetails -import com.twitter.product_mixer.core.model.common.presentation.ModuleCandidateWithDetails -import com.twitter.product_mixer.core.model.marshalling.response.urt.AddEntriesTimelineInstruction -import com.twitter.product_mixer.core.model.marshalling.response.urt.ModuleItem -import com.twitter.product_mixer.core.model.marshalling.response.urt.Timeline -import com.twitter.product_mixer.core.model.marshalling.response.urt.TimelineModule -import com.twitter.product_mixer.core.model.marshalling.response.urt.item.tweet.TweetItem -import com.twitter.product_mixer.core.model.marshalling.response.urt.item.user.UserItem -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.timelines.timeline_logging.{thriftscala => thrift} -import com.twitter.util.Time -import javax.inject.Inject -import javax.inject.Singleton - -/** - * Side effect that logs home timeline served candidates to Scribe. - */ -@Singleton -class HomeScribeServedCandidatesSideEffect @Inject() ( - @Flag(ScribeServedCandidatesFlag) enableScribeServedCandidates: Boolean, - scribeEventPublisher: EventPublisher[thrift.ServedEntry]) - extends ScribeLogEventSideEffect[ - thrift.ServedEntry, - PipelineQuery with HasSeenTweetIds with HasDeviceContext, - Timeline - ] - with PipelineResultSideEffect.Conditionally[ - PipelineQuery with HasSeenTweetIds with HasDeviceContext, - Timeline - ] { - - override val identifier: SideEffectIdentifier = SideEffectIdentifier("HomeScribeServedCandidates") - - override def onlyIf( - query: PipelineQuery with HasSeenTweetIds with HasDeviceContext, - selectedCandidates: Seq[CandidateWithDetails], - remainingCandidates: Seq[CandidateWithDetails], - droppedCandidates: Seq[CandidateWithDetails], - response: Timeline - ): Boolean = enableScribeServedCandidates && query.params(EnableScribeServedCandidatesParam) - - override def buildLogEvents( - query: PipelineQuery with HasSeenTweetIds with HasDeviceContext, - selectedCandidates: Seq[CandidateWithDetails], - remainingCandidates: Seq[CandidateWithDetails], - droppedCandidates: Seq[CandidateWithDetails], - response: Timeline - ): Seq[thrift.ServedEntry] = { - val timelineType = query.product match { - case FollowingProduct => thrift.TimelineType.HomeLatest - case ForYouProduct => thrift.TimelineType.Home - case SubscribedProduct => thrift.TimelineType.HomeSubscribed - case other => throw new UnsupportedOperationException(s"Unknown product: $other") - } - val requestProvenance = query.deviceContext.map { deviceContext => - deviceContext.requestContextValue match { - case RequestContext.Foreground => thrift.RequestProvenance.Foreground - case RequestContext.Launch => thrift.RequestProvenance.Launch - case RequestContext.PullToRefresh => thrift.RequestProvenance.Ptr - case _ => thrift.RequestProvenance.Other - } - } - val queryType = query.features.map { featureMap => - if (featureMap.getOrElse(GetOlderFeature, false)) thrift.QueryType.GetOlder - else if (featureMap.getOrElse(GetNewerFeature, false)) thrift.QueryType.GetNewer - else if (featureMap.getOrElse(GetMiddleFeature, false)) thrift.QueryType.GetMiddle - else if (featureMap.getOrElse(GetInitialFeature, false)) thrift.QueryType.GetInitial - else thrift.QueryType.Other - } - val requestInfo = thrift.RequestInfo( - requestTimeMs = query.queryTime.inMilliseconds, - traceId = Trace.id.traceId.toLong, - userId = query.getOptionalUserId, - clientAppId = query.clientContext.appId, - hasDarkRequest = query.features.flatMap(_.getOrElse(HasDarkRequestFeature, None)), - parentId = Some(Trace.id.parentId.toLong), - spanId = Some(Trace.id.spanId.toLong), - timelineType = Some(timelineType), - ipAddress = query.clientContext.ipAddress, - userAgent = query.clientContext.userAgent, - queryType = queryType, - requestProvenance = requestProvenance, - languageCode = query.clientContext.languageCode, - countryCode = query.clientContext.countryCode, - requestEndTimeMs = Some(Time.now.inMilliseconds), - servedRequestId = query.features.flatMap(_.getOrElse(ServedRequestIdFeature, None)), - requestJoinId = query.features.flatMap(_.getOrElse(RequestJoinIdFeature, None)) - ) - - val tweetIdToItemCandidateMap: Map[Long, ItemCandidateWithDetails] = - selectedCandidates.flatMap { - case item: ItemCandidateWithDetails if item.candidate.isInstanceOf[BaseTweetCandidate] => - Seq((item.candidateIdLong, item)) - case module: ModuleCandidateWithDetails - if module.candidates.headOption.exists(_.candidate.isInstanceOf[BaseTweetCandidate]) => - module.candidates.map(item => (item.candidateIdLong, item)) - case _ => Seq.empty - }.toMap - - val userIdToItemCandidateMap: Map[Long, ItemCandidateWithDetails] = - selectedCandidates.flatMap { - case module: ModuleCandidateWithDetails - if module.candidates.forall(_.candidate.isInstanceOf[BaseUserCandidate]) => - module.candidates.map { item => - (item.candidateIdLong, item) - } - case _ => Seq.empty - }.toMap - - response.instructions.zipWithIndex - .collect { - case (AddEntriesTimelineInstruction(entries), index) => - entries.collect { - case entry: TweetItem if entry.promotedMetadata.isDefined => - val promotedTweetDetails = PromotedTweetDetailsMarshaller(entry, index) - Seq( - thrift.EntryInfo( - id = entry.id, - position = index.shortValue(), - entryId = entry.entryIdentifier, - entryType = thrift.EntryType.PromotedTweet, - sortIndex = entry.sortIndex, - verticalSize = Some(1), - displayType = Some(entry.displayType.toString), - details = Some(thrift.ItemDetails.PromotedTweetDetails(promotedTweetDetails)) - ) - ) - case entry: TweetItem => - val candidate = tweetIdToItemCandidateMap(entry.id) - val tweetDetails = TweetDetailsMarshaller(entry, candidate) - Seq( - thrift.EntryInfo( - id = candidate.candidateIdLong, - position = index.shortValue(), - entryId = entry.entryIdentifier, - entryType = thrift.EntryType.Tweet, - sortIndex = entry.sortIndex, - verticalSize = Some(1), - score = candidate.features.getOrElse(ScoreFeature, None), - displayType = Some(entry.displayType.toString), - details = Some(thrift.ItemDetails.TweetDetails(tweetDetails)) - ) - ) - case module: TimelineModule - if module.entryNamespace.toString == WhoToFollowCandidateDecorator.EntryNamespaceString => - module.items.collect { - case ModuleItem(entry: UserItem, _, _) => - val candidate = userIdToItemCandidateMap(entry.id) - val whoToFollowDetails = WhoToFollowDetailsMarshaller(entry, candidate) - thrift.EntryInfo( - id = entry.id, - position = index.shortValue(), - entryId = module.entryIdentifier, - entryType = thrift.EntryType.WhoToFollowModule, - sortIndex = module.sortIndex, - score = candidate.features.getOrElse(ScoreFeature, None), - displayType = Some(entry.displayType.toString), - details = Some(thrift.ItemDetails.WhoToFollowDetails(whoToFollowDetails)) - ) - } - case module: TimelineModule - if module.entryNamespace.toString == WhoToSubscribeCandidateDecorator.EntryNamespaceString => - module.items.collect { - case ModuleItem(entry: UserItem, _, _) => - val candidate = userIdToItemCandidateMap(entry.id) - val whoToSubscribeDetails = WhoToFollowDetailsMarshaller(entry, candidate) - thrift.EntryInfo( - id = entry.id, - position = index.shortValue(), - entryId = module.entryIdentifier, - entryType = thrift.EntryType.WhoToSubscribeModule, - sortIndex = module.sortIndex, - score = candidate.features.getOrElse(ScoreFeature, None), - displayType = Some(entry.displayType.toString), - details = Some(thrift.ItemDetails.WhoToFollowDetails(whoToSubscribeDetails)) - ) - } - case module: TimelineModule - if module.sortIndex.isDefined && module.items.headOption.exists( - _.item.isInstanceOf[TweetItem]) => - module.items.collect { - case ModuleItem(entry: TweetItem, _, _) => - val candidate = tweetIdToItemCandidateMap(entry.id) - thrift.EntryInfo( - id = entry.id, - position = index.shortValue(), - entryId = module.entryIdentifier, - entryType = thrift.EntryType.ConversationModule, - sortIndex = module.sortIndex, - score = candidate.features.getOrElse(ScoreFeature, None), - displayType = Some(entry.displayType.toString) - ) - } - case _ => Seq.empty - }.flatten - // Other instructions - case _ => Seq.empty[thrift.EntryInfo] - }.flatten.map { entryInfo => - thrift.ServedEntry( - entry = Some(entryInfo), - request = requestInfo - ) - } - } - - override val logPipelinePublisher: EventPublisher[thrift.ServedEntry] = - scribeEventPublisher - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert() - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishClientSentImpressionsEventBusSideEffect.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishClientSentImpressionsEventBusSideEffect.docx new file mode 100644 index 0000000000000000000000000000000000000000..6d1bb45cd66eb2302d19d08914765fb8479ca54e GIT binary patch literal 37843 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishClientSentImpressionsEventBusSideEffect.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishClientSentImpressionsEventBusSideEffect.scala deleted file mode 100644 index c0437767e..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishClientSentImpressionsEventBusSideEffect.scala +++ /dev/null @@ -1,95 +0,0 @@ -package com.twitter.home_mixer.functional_component.side_effect - -import com.twitter.eventbus.client.EventBusPublisher -import com.twitter.home_mixer.model.request.FollowingProduct -import com.twitter.home_mixer.model.request.ForYouProduct -import com.twitter.home_mixer.model.request.SubscribedProduct -import com.twitter.home_mixer.model.request.HasSeenTweetIds -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.product_mixer.core.functional_component.side_effect.PipelineResultSideEffect -import com.twitter.product_mixer.core.model.common.identifier.SideEffectIdentifier -import com.twitter.product_mixer.core.model.common.presentation.CandidateWithDetails -import com.twitter.product_mixer.core.model.marshalling.HasMarshalling -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch -import com.twitter.timelines.impressionstore.thriftscala.Impression -import com.twitter.timelines.impressionstore.thriftscala.ImpressionList -import com.twitter.timelines.impressionstore.thriftscala.PublishedImpressionList -import com.twitter.timelines.impressionstore.thriftscala.SurfaceArea -import com.twitter.util.Time -import javax.inject.Inject -import javax.inject.Singleton - -object PublishClientSentImpressionsEventBusSideEffect { - val HomeSurfaceArea: Option[Set[SurfaceArea]] = Some(Set(SurfaceArea.HomeTimeline)) - val HomeLatestSurfaceArea: Option[Set[SurfaceArea]] = Some(Set(SurfaceArea.HomeLatestTimeline)) - val HomeSubscribedSurfaceArea: Option[Set[SurfaceArea]] = Some(Set(SurfaceArea.HomeSubscribed)) -} - -/** - * Side effect that publishes seen tweet IDs sent from clients. The seen tweet IDs are sent to a - * heron topology which writes to a memcache dataset. - */ -@Singleton -class PublishClientSentImpressionsEventBusSideEffect @Inject() ( - eventBusPublisher: EventBusPublisher[PublishedImpressionList]) - extends PipelineResultSideEffect[PipelineQuery with HasSeenTweetIds, HasMarshalling] - with PipelineResultSideEffect.Conditionally[ - PipelineQuery with HasSeenTweetIds, - HasMarshalling - ] { - import PublishClientSentImpressionsEventBusSideEffect._ - - override val identifier: SideEffectIdentifier = - SideEffectIdentifier("PublishClientSentImpressionsEventBus") - - override def onlyIf( - query: PipelineQuery with HasSeenTweetIds, - selectedCandidates: Seq[CandidateWithDetails], - remainingCandidates: Seq[CandidateWithDetails], - droppedCandidates: Seq[CandidateWithDetails], - response: HasMarshalling - ): Boolean = query.seenTweetIds.exists(_.nonEmpty) - - def buildEvents( - query: PipelineQuery with HasSeenTweetIds, - currentTime: Long - ): Option[Seq[Impression]] = { - val surfaceArea = query.product match { - case ForYouProduct => HomeSurfaceArea - case FollowingProduct => HomeLatestSurfaceArea - case SubscribedProduct => HomeSubscribedSurfaceArea - case _ => None - } - query.seenTweetIds.map { seenTweetIds => - seenTweetIds.map { tweetId => - Impression( - tweetId = tweetId, - impressionTime = Some(currentTime), - surfaceAreas = surfaceArea - ) - } - } - } - - final override def apply( - inputs: PipelineResultSideEffect.Inputs[PipelineQuery with HasSeenTweetIds, HasMarshalling] - ): Stitch[Unit] = { - val currentTime = Time.now.inMilliseconds - val impressions = buildEvents(inputs.query, currentTime) - - Stitch.callFuture( - eventBusPublisher.publish( - PublishedImpressionList( - inputs.query.getRequiredUserId, - ImpressionList(impressions), - currentTime - ) - ) - ) - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.4) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishClientSentImpressionsManhattanSideEffect.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishClientSentImpressionsManhattanSideEffect.docx new file mode 100644 index 0000000000000000000000000000000000000000..e8a8976a878a5891658dabbf592afaa4cd7ce178 GIT binary patch literal 37612 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 t} -import com.twitter.timelines.impressionstore.store.ManhattanTweetImpressionStoreClient -import javax.inject.Inject -import javax.inject.Singleton - -/** - * Side effect that updates the timelines tweet impression - * store (Manhattan) with seen tweet IDs sent from clients - */ -@Singleton -class PublishClientSentImpressionsManhattanSideEffect @Inject() ( - manhattanTweetImpressionStoreClient: ManhattanTweetImpressionStoreClient) - extends PipelineResultSideEffect[PipelineQuery with HasSeenTweetIds, HasMarshalling] - with PipelineResultSideEffect.Conditionally[ - PipelineQuery with HasSeenTweetIds, - HasMarshalling - ] { - - override val identifier: SideEffectIdentifier = - SideEffectIdentifier("PublishClientSentImpressionsManhattan") - - override def onlyIf( - query: PipelineQuery with HasSeenTweetIds, - selectedCandidates: Seq[CandidateWithDetails], - remainingCandidates: Seq[CandidateWithDetails], - droppedCandidates: Seq[CandidateWithDetails], - response: HasMarshalling - ): Boolean = query.seenTweetIds.exists(_.nonEmpty) - - def buildEvents(query: PipelineQuery): Option[(Long, t.TweetImpressionsEntries)] = { - query.features.flatMap { featureMap => - val impressions = featureMap.getOrElse(TweetImpressionsFeature, Seq.empty) - if (impressions.nonEmpty) - Some((query.getRequiredUserId, t.TweetImpressionsEntries(impressions))) - else None - } - } - - final override def apply( - inputs: PipelineResultSideEffect.Inputs[PipelineQuery with HasSeenTweetIds, HasMarshalling] - ): Stitch[Unit] = { - val events = buildEvents(inputs.query) - - Stitch - .traverse(events) { - case (key, value) => manhattanTweetImpressionStoreClient.write(key, value) - } - .unit - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.4) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishImpressionBloomFilterSideEffect.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/PublishImpressionBloomFilterSideEffect.docx new file mode 100644 index 0000000000000000000000000000000000000000..e7811ef792497bbaf8be4cb5195fb5aba693e903 GIT binary patch literal 37608 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 blm} -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class PublishImpressionBloomFilterSideEffect @Inject() ( - bloomFilterClient: ManhattanStoreClient[ - blm.ImpressionBloomFilterKey, - blm.ImpressionBloomFilterSeq - ]) extends PipelineResultSideEffect[PipelineQuery with HasSeenTweetIds, HasMarshalling] - with PipelineResultSideEffect.Conditionally[ - PipelineQuery with HasSeenTweetIds, - HasMarshalling - ] { - - override val identifier: SideEffectIdentifier = - SideEffectIdentifier("PublishImpressionBloomFilter") - - private val SurfaceArea = blm.SurfaceArea.HomeTimeline - - override def onlyIf( - query: PipelineQuery with HasSeenTweetIds, - selectedCandidates: Seq[CandidateWithDetails], - remainingCandidates: Seq[CandidateWithDetails], - droppedCandidates: Seq[CandidateWithDetails], - response: HasMarshalling - ): Boolean = - query.params.getBoolean(EnableImpressionBloomFilter) && query.seenTweetIds.exists(_.nonEmpty) - - def buildEvents(query: PipelineQuery): Option[blm.ImpressionBloomFilterSeq] = { - query.features.flatMap { featureMap => - val impressionBloomFilterSeq = featureMap.get(ImpressionBloomFilterFeature) - if (impressionBloomFilterSeq.entries.nonEmpty) Some(impressionBloomFilterSeq) - else None - } - } - - override def apply( - inputs: PipelineResultSideEffect.Inputs[PipelineQuery with HasSeenTweetIds, HasMarshalling] - ): Stitch[Unit] = { - buildEvents(inputs.query) - .map { updatedBloomFilterSeq => - bloomFilterClient.write( - blm.ImpressionBloomFilterKey(inputs.query.getRequiredUserId, SurfaceArea), - updatedBloomFilterSeq) - }.getOrElse(Stitch.Unit) - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.8) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/TruncateTimelinesPersistenceStoreSideEffect.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/TruncateTimelinesPersistenceStoreSideEffect.docx new file mode 100644 index 0000000000000000000000000000000000000000..a47e0d1b2ff7046cfc656d82df17168c9b7a0882 GIT binary patch literal 37790 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/TruncateTimelinesPersistenceStoreSideEffect.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/TruncateTimelinesPersistenceStoreSideEffect.scala deleted file mode 100644 index 63855d3b8..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/TruncateTimelinesPersistenceStoreSideEffect.scala +++ /dev/null @@ -1,68 +0,0 @@ -package com.twitter.home_mixer.functional_component.side_effect - -import com.twitter.home_mixer.model.HomeFeatures.PersistenceEntriesFeature -import com.twitter.home_mixer.model.request.FollowingProduct -import com.twitter.home_mixer.model.request.ForYouProduct -import com.twitter.home_mixer.param.HomeGlobalParams.TimelinesPersistenceStoreMaxEntriesPerClient -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.product_mixer.core.functional_component.side_effect.PipelineResultSideEffect -import com.twitter.product_mixer.core.model.common.identifier.SideEffectIdentifier -import com.twitter.product_mixer.core.model.marshalling.response.urt.Timeline -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch -import com.twitter.timelinemixer.clients.persistence.TimelineResponseBatchesClient -import com.twitter.timelinemixer.clients.persistence.TimelineResponseV3 -import com.twitter.timelineservice.model.TimelineQuery -import com.twitter.timelineservice.model.core.TimelineKind -import javax.inject.Inject -import javax.inject.Singleton - -/** - * Side effect that truncates entries in the Timelines Persistence store - * based on the number of entries per client. - */ -@Singleton -class TruncateTimelinesPersistenceStoreSideEffect @Inject() ( - timelineResponseBatchesClient: TimelineResponseBatchesClient[TimelineResponseV3]) - extends PipelineResultSideEffect[PipelineQuery, Timeline] { - - override val identifier: SideEffectIdentifier = - SideEffectIdentifier("TruncateTimelinesPersistenceStore") - - def getResponsesToDelete(query: PipelineQuery): Seq[TimelineResponseV3] = { - val responses = - query.features.map(_.getOrElse(PersistenceEntriesFeature, Seq.empty)).toSeq.flatten - val responsesByClient = responses.groupBy(_.clientPlatform).values.toSeq - val maxEntriesPerClient = query.params(TimelinesPersistenceStoreMaxEntriesPerClient) - - responsesByClient.flatMap { - _.sortBy(_.servedTime.inMilliseconds) - .foldRight((Seq.empty[TimelineResponseV3], maxEntriesPerClient)) { - case (response, (responsesToDelete, remainingCap)) => - if (remainingCap > 0) (responsesToDelete, remainingCap - response.entries.size) - else (response +: responsesToDelete, remainingCap) - } match { case (responsesToDelete, _) => responsesToDelete } - } - } - - final override def apply( - inputs: PipelineResultSideEffect.Inputs[PipelineQuery, Timeline] - ): Stitch[Unit] = { - val timelineKind = inputs.query.product match { - case FollowingProduct => TimelineKind.homeLatest - case ForYouProduct => TimelineKind.home - case other => throw new UnsupportedOperationException(s"Unknown product: $other") - } - val timelineQuery = TimelineQuery(id = inputs.query.getRequiredUserId, kind = timelineKind) - - val responsesToDelete = getResponsesToDelete(inputs.query) - - if (responsesToDelete.nonEmpty) - Stitch.callFuture(timelineResponseBatchesClient.delete(timelineQuery, responsesToDelete)) - else Stitch.Unit - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.8) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateLastNonPollingTimeSideEffect.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateLastNonPollingTimeSideEffect.docx new file mode 100644 index 0000000000000000000000000000000000000000..6973183fa008a2ac88ef4521d5ed5668078daedc GIT binary patch literal 37826 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateLastNonPollingTimeSideEffect.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateLastNonPollingTimeSideEffect.scala deleted file mode 100644 index 24199a79c..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateLastNonPollingTimeSideEffect.scala +++ /dev/null @@ -1,78 +0,0 @@ -package com.twitter.home_mixer.functional_component.side_effect - -import com.twitter.home_mixer.model.HomeFeatures.FollowingLastNonPollingTimeFeature -import com.twitter.home_mixer.model.HomeFeatures.NonPollingTimesFeature -import com.twitter.home_mixer.model.HomeFeatures.PollingFeature -import com.twitter.home_mixer.model.request.DeviceContext -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.home_mixer.model.request.FollowingProduct -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.product_mixer.component_library.side_effect.UserSessionStoreUpdateSideEffect -import com.twitter.product_mixer.core.model.common.identifier.SideEffectIdentifier -import com.twitter.product_mixer.core.model.marshalling.HasMarshalling -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.timelineservice.model.util.FinagleRequestContext -import com.twitter.user_session_store.ReadWriteUserSessionStore -import com.twitter.user_session_store.WriteRequest -import com.twitter.user_session_store.thriftscala.NonPollingTimestamps -import com.twitter.user_session_store.thriftscala.UserSessionField -import com.twitter.util.Time - -import javax.inject.Inject -import javax.inject.Singleton - -/** - * Side effect that updates the User Session Store (Manhattan) with the timestamps of non polling requests. - */ -@Singleton -class UpdateLastNonPollingTimeSideEffect[ - Query <: PipelineQuery with HasDeviceContext, - ResponseType <: HasMarshalling] @Inject() ( - override val userSessionStore: ReadWriteUserSessionStore) - extends UserSessionStoreUpdateSideEffect[ - WriteRequest, - Query, - ResponseType - ] { - private val MaxNonPollingTimes = 10 - - override val identifier: SideEffectIdentifier = SideEffectIdentifier("UpdateLastNonPollingTime") - - /** - * When the request is non polling and is not a background fetch request, update - * the list of non polling timestamps with the timestamp of the current request - */ - override def buildWriteRequest(query: Query): Option[WriteRequest] = { - val isBackgroundFetch = query.deviceContext - .exists(_.requestContextValue.contains(DeviceContext.RequestContext.BackgroundFetch)) - - if (!query.features.exists(_.getOrElse(PollingFeature, false)) && !isBackgroundFetch) { - val fields = Seq(UserSessionField.NonPollingTimestamps(makeLastNonPollingTimestamps(query))) - Some(WriteRequest(query.getRequiredUserId, fields)) - } else None - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.96) - ) - - private def makeLastNonPollingTimestamps(query: Query): NonPollingTimestamps = { - val priorNonPollingTimestamps = - query.features.map(_.getOrElse(NonPollingTimesFeature, Seq.empty)).toSeq.flatten - - val lastNonPollingTimeMs = - FinagleRequestContext.default.requestStartTime.get.getOrElse(Time.now).inMillis - - val followingLastNonPollingTime = query.features - .flatMap(features => features.getOrElse(FollowingLastNonPollingTimeFeature, None)) - .map(_.inMillis) - - NonPollingTimestamps( - nonPollingTimestampsMs = - (lastNonPollingTimeMs +: priorNonPollingTimestamps).take(MaxNonPollingTimes), - mostRecentHomeLatestNonPollingTimestampMs = - if (query.product == FollowingProduct) Some(lastNonPollingTimeMs) - else followingLastNonPollingTime - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateTimelinesPersistenceStoreSideEffect.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateTimelinesPersistenceStoreSideEffect.docx new file mode 100644 index 0000000000000000000000000000000000000000..89e74e84480533966a105672ac48deed8077b0b9 GIT binary patch literal 39488 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateTimelinesPersistenceStoreSideEffect.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateTimelinesPersistenceStoreSideEffect.scala deleted file mode 100644 index 5a1bb0f6b..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect/UpdateTimelinesPersistenceStoreSideEffect.scala +++ /dev/null @@ -1,263 +0,0 @@ -package com.twitter.home_mixer.functional_component.side_effect - -import com.twitter.home_mixer.model.HomeFeatures._ -import com.twitter.home_mixer.model.request.FollowingProduct -import com.twitter.home_mixer.model.request.ForYouProduct -import com.twitter.home_mixer.model.HomeFeatures.IsTweetPreviewFeature -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.product_mixer.component_library.pipeline.candidate.who_to_follow_module.WhoToFollowCandidateDecorator -import com.twitter.product_mixer.component_library.pipeline.candidate.who_to_subscribe_module.WhoToSubscribeCandidateDecorator -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.functional_component.side_effect.PipelineResultSideEffect -import com.twitter.product_mixer.core.model.common.identifier.SideEffectIdentifier -import com.twitter.product_mixer.core.model.common.presentation.ItemCandidateWithDetails -import com.twitter.product_mixer.core.model.common.presentation.ModuleCandidateWithDetails -import com.twitter.product_mixer.core.model.marshalling.response.urt.AddEntriesTimelineInstruction -import com.twitter.product_mixer.core.model.marshalling.response.urt.ReplaceEntryTimelineInstruction -import com.twitter.product_mixer.core.model.marshalling.response.urt.ShowCoverInstruction -import com.twitter.product_mixer.core.model.marshalling.response.urt.Timeline -import com.twitter.product_mixer.core.model.marshalling.response.urt.TimelineModule -import com.twitter.product_mixer.core.model.marshalling.response.urt.item.tweet.TweetItem -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch -import com.twitter.timelinemixer.clients.persistence.EntryWithItemIds -import com.twitter.timelinemixer.clients.persistence.ItemIds -import com.twitter.timelinemixer.clients.persistence.TimelineResponseBatchesClient -import com.twitter.timelinemixer.clients.persistence.TimelineResponseV3 -import com.twitter.timelines.persistence.thriftscala.TweetScoreV1 -import com.twitter.timelines.persistence.{thriftscala => persistence} -import com.twitter.timelineservice.model.TimelineQuery -import com.twitter.timelineservice.model.TimelineQueryOptions -import com.twitter.timelineservice.model.TweetScore -import com.twitter.timelineservice.model.core.TimelineKind -import com.twitter.timelineservice.model.rich.EntityIdType -import com.twitter.util.Time -import com.twitter.{timelineservice => tls} -import javax.inject.Inject -import javax.inject.Singleton - -object UpdateTimelinesPersistenceStoreSideEffect { - val EmptyItemIds = ItemIds( - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None) -} - -/** - * Side effect that updates the Timelines Persistence Store (Manhattan) with the entries being returned. - */ -@Singleton -class UpdateTimelinesPersistenceStoreSideEffect @Inject() ( - timelineResponseBatchesClient: TimelineResponseBatchesClient[TimelineResponseV3]) - extends PipelineResultSideEffect[PipelineQuery, Timeline] { - - override val identifier: SideEffectIdentifier = - SideEffectIdentifier("UpdateTimelinesPersistenceStore") - - final override def apply( - inputs: PipelineResultSideEffect.Inputs[PipelineQuery, Timeline] - ): Stitch[Unit] = { - if (inputs.response.instructions.nonEmpty) { - val timelineKind = inputs.query.product match { - case FollowingProduct => TimelineKind.homeLatest - case ForYouProduct => TimelineKind.home - case other => throw new UnsupportedOperationException(s"Unknown product: $other") - } - val timelineQuery = TimelineQuery( - id = inputs.query.getRequiredUserId, - kind = timelineKind, - options = TimelineQueryOptions( - contextualUserId = inputs.query.getOptionalUserId, - deviceContext = tls.DeviceContext.empty.copy( - userAgent = inputs.query.clientContext.userAgent, - clientAppId = inputs.query.clientContext.appId) - ) - ) - - val tweetIdToItemCandidateMap: Map[Long, ItemCandidateWithDetails] = - inputs.selectedCandidates.flatMap { - case item: ItemCandidateWithDetails if item.candidate.id.isInstanceOf[Long] => - Seq((item.candidateIdLong, item)) - case module: ModuleCandidateWithDetails - if module.candidates.headOption.exists(_.candidate.id.isInstanceOf[Long]) => - module.candidates.map(item => (item.candidateIdLong, item)) - case _ => Seq.empty - }.toMap - - val entries = inputs.response.instructions.collect { - case AddEntriesTimelineInstruction(entries) => - entries.collect { - // includes tweets, tweet previews, and promoted tweets - case entry: TweetItem if entry.sortIndex.isDefined => { - Seq( - buildTweetEntryWithItemIds( - tweetIdToItemCandidateMap(entry.id), - entry.sortIndex.get - )) - } - // tweet conversation modules are flattened to individual tweets in the persistence store - case module: TimelineModule - if module.sortIndex.isDefined && module.items.headOption.exists( - _.item.isInstanceOf[TweetItem]) => - module.items.map { item => - buildTweetEntryWithItemIds( - tweetIdToItemCandidateMap(item.item.id.asInstanceOf[Long]), - module.sortIndex.get) - } - case module: TimelineModule - if module.sortIndex.isDefined && module.entryNamespace.toString == WhoToFollowCandidateDecorator.EntryNamespaceString => - val userIds = module.items - .map(item => - UpdateTimelinesPersistenceStoreSideEffect.EmptyItemIds.copy(userId = - Some(item.item.id.asInstanceOf[Long]))) - Seq( - EntryWithItemIds( - entityIdType = EntityIdType.WhoToFollow, - sortIndex = module.sortIndex.get, - size = module.items.size.toShort, - itemIds = Some(userIds) - )) - case module: TimelineModule - if module.sortIndex.isDefined && module.entryNamespace.toString == WhoToSubscribeCandidateDecorator.EntryNamespaceString => - val userIds = module.items - .map(item => - UpdateTimelinesPersistenceStoreSideEffect.EmptyItemIds.copy(userId = - Some(item.item.id.asInstanceOf[Long]))) - Seq( - EntryWithItemIds( - entityIdType = EntityIdType.WhoToSubscribe, - sortIndex = module.sortIndex.get, - size = module.items.size.toShort, - itemIds = Some(userIds) - )) - }.flatten - case ShowCoverInstruction(cover) => - Seq( - EntryWithItemIds( - entityIdType = EntityIdType.Prompt, - sortIndex = cover.sortIndex.get, - size = 1, - itemIds = None - ) - ) - case ReplaceEntryTimelineInstruction(entry) => - val namespaceLength = TweetItem.TweetEntryNamespace.toString.length - Seq( - EntryWithItemIds( - entityIdType = EntityIdType.Tweet, - sortIndex = entry.sortIndex.get, - size = 1, - itemIds = Some( - Seq( - ItemIds( - tweetId = - entry.entryIdToReplace.map(e => e.substring(namespaceLength + 1).toLong), - sourceTweetId = None, - quoteTweetId = None, - sourceAuthorId = None, - quoteAuthorId = None, - inReplyToTweetId = None, - inReplyToAuthorId = None, - semanticCoreId = None, - articleId = None, - hasRelevancePrompt = None, - promptData = None, - tweetScore = None, - entryIdToReplace = entry.entryIdToReplace, - tweetReactiveData = None, - userId = None - ) - )) - ) - ) - - }.flatten - - val response = TimelineResponseV3( - clientPlatform = timelineQuery.clientPlatform, - servedTime = Time.now, - requestType = requestTypeFromQuery(inputs.query), - entries = entries) - - Stitch.callFuture(timelineResponseBatchesClient.insertResponse(timelineQuery, response)) - } else Stitch.Unit - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.8) - ) - - private def buildTweetEntryWithItemIds( - candidate: ItemCandidateWithDetails, - sortIndex: Long - ): EntryWithItemIds = { - val features = candidate.features - val sourceAuthorId = - if (features.getOrElse(IsRetweetFeature, false)) features.getOrElse(SourceUserIdFeature, None) - else features.getOrElse(AuthorIdFeature, None) - val quoteAuthorId = - if (features.getOrElse(QuotedTweetIdFeature, None).nonEmpty) - features.getOrElse(SourceUserIdFeature, None) - else None - val tweetScore = features.getOrElse(ScoreFeature, None).map { score => - TweetScore.fromThrift(persistence.TweetScore.TweetScoreV1(TweetScoreV1(score))) - } - - val itemIds = ItemIds( - tweetId = Some(candidate.candidateIdLong), - sourceTweetId = features.getOrElse(SourceTweetIdFeature, None), - quoteTweetId = features.getOrElse(QuotedTweetIdFeature, None), - sourceAuthorId = sourceAuthorId, - quoteAuthorId = quoteAuthorId, - inReplyToTweetId = features.getOrElse(InReplyToTweetIdFeature, None), - inReplyToAuthorId = features.getOrElse(DirectedAtUserIdFeature, None), - semanticCoreId = features.getOrElse(SemanticCoreIdFeature, None), - articleId = None, - hasRelevancePrompt = None, - promptData = None, - tweetScore = tweetScore, - entryIdToReplace = None, - tweetReactiveData = None, - userId = None - ) - - val isPreview = features.getOrElse(IsTweetPreviewFeature, default = false) - val entityType = if (isPreview) EntityIdType.TweetPreview else EntityIdType.Tweet - - EntryWithItemIds( - entityIdType = entityType, - sortIndex = sortIndex, - size = 1.toShort, - itemIds = Some(Seq(itemIds)) - ) - } - - private def requestTypeFromQuery(query: PipelineQuery): persistence.RequestType = { - val features = query.features.getOrElse(FeatureMap.empty) - - val featureToRequestType = Seq( - (PollingFeature, persistence.RequestType.Polling), - (GetInitialFeature, persistence.RequestType.Initial), - (GetNewerFeature, persistence.RequestType.Newer), - (GetMiddleFeature, persistence.RequestType.Middle), - (GetOlderFeature, persistence.RequestType.Older) - ) - - featureToRequestType - .collectFirst { - case (feature, requestType) if features.getOrElse(feature, false) => requestType - }.getOrElse(persistence.RequestType.Other) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/BUILD.bazel deleted file mode 100644 index fd35daeeb..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/BUILD.bazel +++ /dev/null @@ -1,18 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/marshaller/request", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - ], - exports = [ - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/marshaller/request", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..e210962c40225ce65d0231df23b01af08b8432da GIT binary patch literal 36881 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 z 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/DeviceContextUnmarshaller.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/DeviceContextUnmarshaller.scala deleted file mode 100644 index b2c6e6347..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/DeviceContextUnmarshaller.scala +++ /dev/null @@ -1,19 +0,0 @@ -package com.twitter.home_mixer.marshaller.request - -import com.twitter.home_mixer.model.request.DeviceContext -import com.twitter.home_mixer.{thriftscala => t} -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class DeviceContextUnmarshaller @Inject() () { - - def apply(deviceContext: t.DeviceContext): DeviceContext = { - DeviceContext( - isPolling = deviceContext.isPolling, - requestContext = deviceContext.requestContext, - latestControlAvailable = deviceContext.latestControlAvailable, - autoplayEnabled = deviceContext.autoplayEnabled - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerDebugParamsUnmarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerDebugParamsUnmarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..5a6558da6df60ebc53991b355cbc79d79e9c0e18 GIT binary patch literal 37036 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 hJ&4fn+=i6JP+Nxq-mJhJ1j t} -import com.twitter.product_mixer.core.functional_component.marshaller.request.FeatureValueUnmarshaller -import com.twitter.product_mixer.core.model.marshalling.request.DebugParams -import com.twitter.util.Time -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class HomeMixerDebugParamsUnmarshaller @Inject() ( - featureValueUnmarshaller: FeatureValueUnmarshaller) { - - def apply(debugParams: t.DebugParams): DebugParams = { - DebugParams( - featureOverrides = debugParams.featureOverrides.map { map => - map.mapValues(featureValueUnmarshaller(_)).toMap - }, - debugOptions = debugParams.debugOptions.map { options => - HomeMixerDebugOptions( - requestTimeOverride = options.requestTimeOverrideMillis.map(Time.fromMilliseconds) - ) - } - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductContextUnmarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductContextUnmarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..1438f23aa029170ad1ecaf421d6c61c5e6e56ef5 GIT binary patch literal 37275 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 W26(dqa}X$32{I%CvxiDAhz9_52e!`u literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductContextUnmarshaller.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductContextUnmarshaller.scala deleted file mode 100644 index ec3a183b9..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductContextUnmarshaller.scala +++ /dev/null @@ -1,62 +0,0 @@ -package com.twitter.home_mixer.marshaller.request - -import com.twitter.home_mixer.model.request.FollowingProductContext -import com.twitter.home_mixer.model.request.ForYouProductContext -import com.twitter.home_mixer.model.request.ListRecommendedUsersProductContext -import com.twitter.home_mixer.model.request.ListTweetsProductContext -import com.twitter.home_mixer.model.request.ScoredTweetsProductContext -import com.twitter.home_mixer.model.request.SubscribedProductContext -import com.twitter.home_mixer.{thriftscala => t} -import com.twitter.product_mixer.core.model.marshalling.request.ProductContext -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class HomeMixerProductContextUnmarshaller @Inject() ( - deviceContextUnmarshaller: DeviceContextUnmarshaller) { - - def apply(productContext: t.ProductContext): ProductContext = productContext match { - case t.ProductContext.Following(p) => - FollowingProductContext( - deviceContext = p.deviceContext.map(deviceContextUnmarshaller(_)), - seenTweetIds = p.seenTweetIds, - dspClientContext = p.dspClientContext - ) - case t.ProductContext.ForYou(p) => - ForYouProductContext( - deviceContext = p.deviceContext.map(deviceContextUnmarshaller(_)), - seenTweetIds = p.seenTweetIds, - dspClientContext = p.dspClientContext, - pushToHomeTweetId = p.pushToHomeTweetId - ) - case t.ProductContext.ListManagement(p) => - throw new UnsupportedOperationException(s"This product is no longer used") - case t.ProductContext.ScoredTweets(p) => - ScoredTweetsProductContext( - deviceContext = p.deviceContext.map(deviceContextUnmarshaller(_)), - seenTweetIds = p.seenTweetIds, - servedTweetIds = p.servedTweetIds, - backfillTweetIds = p.backfillTweetIds - ) - case t.ProductContext.ListTweets(p) => - ListTweetsProductContext( - listId = p.listId, - deviceContext = p.deviceContext.map(deviceContextUnmarshaller(_)), - dspClientContext = p.dspClientContext - ) - case t.ProductContext.ListRecommendedUsers(p) => - ListRecommendedUsersProductContext( - listId = p.listId, - selectedUserIds = p.selectedUserIds, - excludedUserIds = p.excludedUserIds, - listName = p.listName - ) - case t.ProductContext.Subscribed(p) => - SubscribedProductContext( - deviceContext = p.deviceContext.map(deviceContextUnmarshaller(_)), - seenTweetIds = p.seenTweetIds, - ) - case t.ProductContext.UnknownUnionField(field) => - throw new UnsupportedOperationException(s"Unknown display context: ${field.field.name}") - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductUnmarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductUnmarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..65773b707cc6e391eefdd52de849ad7c277e7347 GIT binary patch literal 37058 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductUnmarshaller.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductUnmarshaller.scala deleted file mode 100644 index f5d0d002b..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerProductUnmarshaller.scala +++ /dev/null @@ -1,29 +0,0 @@ -package com.twitter.home_mixer.marshaller.request - -import com.twitter.home_mixer.model.request.FollowingProduct -import com.twitter.home_mixer.model.request.ForYouProduct -import com.twitter.home_mixer.model.request.ListRecommendedUsersProduct -import com.twitter.home_mixer.model.request.ListTweetsProduct -import com.twitter.home_mixer.model.request.ScoredTweetsProduct -import com.twitter.home_mixer.model.request.SubscribedProduct -import com.twitter.home_mixer.{thriftscala => t} -import com.twitter.product_mixer.core.model.marshalling.request.Product -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class HomeMixerProductUnmarshaller @Inject() () { - - def apply(product: t.Product): Product = product match { - case t.Product.Following => FollowingProduct - case t.Product.ForYou => ForYouProduct - case t.Product.ListManagement => - throw new UnsupportedOperationException(s"This product is no longer used") - case t.Product.ScoredTweets => ScoredTweetsProduct - case t.Product.ListTweets => ListTweetsProduct - case t.Product.ListRecommendedUsers => ListRecommendedUsersProduct - case t.Product.Subscribed => SubscribedProduct - case t.Product.EnumUnknownProduct(value) => - throw new UnsupportedOperationException(s"Unknown product: $value") - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerRequestUnmarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerRequestUnmarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..35dba327c368ee8a89489a0f679aa9140d5c1e39 GIT binary patch literal 37181 zcmagFWmsIvwm*z(a1HM6?hb+A?h@P^2@Z`12=4CgZo%CxxLc4waQA;_X3jY?=id9i zUp5a_wSKbJ?yB0mtCeISp)kR~z~I34Q@FJ%RSIJh!NI^rVZgvJK&`ss0Q=8o_MZ*a zJRHoN^_kr5Y#S5h6<0-2znr~bB{2(;c!{H6mF+mtI55QGNmQrb@MteFpU6Qx+>P^v zsm~~dz%a#Tq~7@ut=0*4dN)z&ic6g6>t|@@lR*}H=db56otks+Nyd`OEK2VZ&JDoS zv}Aa{pW*^%*{$j0Gei$Q6U)&FNYr`&i=wWK)<7p742Dw?9EA?8&Y$7VZ6|k7Q#l%@ z-lezP8&z_B8TWM~dl2`N%z9a3qSDB;Nk{nR&yx~nbgnM-#i${!-?`Rxg1+9#Lfx@$ zwWko-eGn0V`u&GpHIOd4BzbftIDUEkduZDBNp(8E%w!QI@fyxq9E z-!RG-PIcj0l{V4nq!D&r?l;FHaWbEqoFLt0UI_)Cb_qj48h?>~uloz+r~OaRE4cUX z{HyMypF4{7Tvh|}Oyn4nXmwu_2@BA=Vn023Jt7vDzn2i|d0s4D-xD6aBg=cjls5oV z`bQN#sANU%LDk!U00Tn={WWwlvvp=>`hBg8oA?OHit2YJBsol3Y~Q3VQLtxFFr>4SMlJ~|jYqpi{7j?i z;=?!#fB{I!HF16|u5A5b>-P0txaqUBk)Oy>j02i#s)8vi4o?BHj3dUixXi&+R9Q@G z2KKkdHYH2l@(ZTJKygJ?19ysRn2C1uejbYkf#R8#-4FYW6yy_{o|EP-8-dEc4pT(G zSZb5cbQ+_VeBefAbh*y{nV`@wh^khg+k6I;AT&^dOaUfJP5=jIW)pyu+3%Y?Gj2?w zj|Elo&RcR$UL))Z6;4uy4*clrM`=v|rPf;xPI=q0EUt;o-2ywE9C}xxP5z-P2cdQD z#%4&9;J9Gokk~VS)31oySg)(b*lSN&l61V4i9x+*-H)@ER2FLix!1>o_^)zD$y4wx|^49*U`=$uED=5Q(GtMvg?Xhe`X>-=8Qfo;Xlh{C2u@rdpx>c@vx_LFs<^diux))kadvXtoN|TKFMrn@@(wxaeeTRj zNrgy2F5H@~>jt2|uy$x}ZfA|rnbJ@AvuO)^4aQ5;7!P&wCt${UF7l9@phXCLX2RX| zg%xXhf(&M{Xa=vvo6=G zt2oD?y4XU2fua7rE}tA6{wRyunEfgXYWovCl>X4_44~;d8cvN?&ciUme@@j@sv7kot2Z9MAcA#pR-~W$yn-yU(co3orr_W`{cI*8 z`OCHTzW+Q?sc~r|MVUqMYdPdgwPm?S$&?`Hhuxba?W9B`WGRSGFYHib9_3av%b`*@ z@+A1IMjhwlmQdD+UY~F3On;)~SlH>}2+Wd;91}4(T+Y6`???E7V^Xjs0-U~)awyL{ zrC9~T`Py(?Poi2^su_A2c@op5B|4PD%L(}+P7^WmojlR{6QJiBEnCZf%`v9sw!V}< z23htN8S0T=Z0Q+Wf^J0|R);Vqz9|*Mw{{e8^^2S5U3}#wq!#$s%O6ksnKc**B31;; z-_R(0CTD~sYsYHJKkhJ9kP21}Qd1-mJ{c3^)0@zqY91VjFY4$k=tg2?bK;@7Qf>zW zTfz4L)X)hwg1AZ_Ty=Jc?=10NP?;|5SP!-yTm%u1++cWsE%oq3$tUo(FC!6SME)(d zo5_hn6PlY8{2>`Q>Rz^rvB~|bGQx$5A3EC8nV*@7&f(J^uJGUHZ+;Q~^Tw!Zg?Nww z-4yS!{`|nY0h~;kL7!R|JJ90v`_359+H_vwK?QboiS>#5ry8eI6!IG8bdbh#p=5rF zyX7S}eNP`tnMrY#pZT;2FvDk&*|O}0N6}hI?0j);q#x1lBT8;euupm|@5C zO%U_;OnAl5#OqR=w7&=xAJ~lg*I-h8vL3naw^6TQj_dk_at)HMN+vz7fcO*q*;T5V&Yq5gV!1c2V!x`9lixKl%E?F#0;yb~lxqm$%!njM&I^*-53kD)4 z_LL^>RK{Ii#o}UG2AP;l@BXM{!g$n!YM7U*B-i@frfO+~=reGrVaj!|B$ zfirMpad-%8rDXU~o~v9-FyDt#Y)a}UYc+T1A|;_kJlX;er*4bg`x&XOjgpL}R*V_k zPlfk+dj#}jWD<&Z53ctGo=R^@ZmufgitiS*lTVwK)3??abSh!SR&nR6*zeY=1#K_m~-chHyB`~yK047$tPeY({cM= z6FHVxYH)V$5qL*JR4a|agRSB^Wh_`X>61SyZ+IX>m97cDTTA?aH)!3LmkuO{tNPL* ztXPdFJ0s2iX&TY9xUcXWn`-a-Y`sBqa+hBD$cf_gknYSmN5AeNn&qlEv&P&|Q9(szw-@#FjJ-w9&Z{2KJYxT$bH z#Cgv+=z($l;v+YQuMs$bHuL*x`D0?o#=q;eg!dlhpYx8rA3i!8Xh9kS%{>I51?i7@ z=g;lb-)Emcw^j+Fih(S+U(Q|;dV}LJi|oVS|H`9kqm!yG^bVFiOow!w9*x<*dZ}=F%69IvOIUB5GhAv=%l6>4XjyUaF+u(rp|+K>zYc+-G1p$C6{{+;;8036?n@oF4urPEOkB#RknF6_o^50o z6ICsj9ThfP!s}_yJzEO(8Uej%P_;|*M*8HOltw#e2h%tArUbq(um%X`4f6!zMSK3w z@_LczhEN)J8IXPK_eNHuyXFffU=nU!;>qG{g*6$f+mM&V?BSw3lyzyUK{mnfCv14E zuV)haJr&?Td%;2o?+Qf}6YTI3YS}1{X?{2s>^)CG_a~vY!**UN(bzXyljT{to~ef7 zeF*%{{LfrRmSgjWGlPK{s6&IH{43YapFM2NoPW>opvQ*z9jQ8>uCBa%!{;A%F+pHM zllEY7t^}XFIJ5r^U0VV&UfFUH$uq^^3OT`L?Hn*`GIUAtAd*9xrtQuXbX_R=M+u%FSH}Kk$g@GR7YHi;9Cm5vFVKLV= zDA0u=r|5iBA@wLB)m6eTHHJRg!ah8~%?{LXK> zQd|$TkKJ6JcdV4uulK9_uG|NRyrmZdZ*8FjRJX=59tO<$xLx=f2x&WTbt$_akv^59 zY?q+0su1_86B}0u^-K7K(t3x^0$p4?uZK>o2B;AX)E>eDX4QasTjYt^G%XT))CfdM zpr#&rVdWYC=)Zl2mwxN_Z~FJ+(o3*H_6n;mW)OIEMc*h+HecEW7=($Fs;As$)^uW2 z*m^^nhvJtik>~Ai`hM1I`cz?>Xj>aUCodlCIXYKh7nD3kqn)=tEq=OEqqXi&wYU#_ zYuB$@n0h*yeRQ~Ud>N9ty%Ih-6UtDQYSf>fJMY`Sy83zA=bXVoAKXe%s2Tazx9?s? zlyOC)9*DR+y?0OPdrrKlnBJTmZVfdZYD53Erc9DY1T7X^g6LBLTW9x6TlWPye)!s( zmYKKzQ+7!NKr@;-)2cnD`D^f^7N0B5)5+`kPdoYyqQUQI-dLo!aNk9}2@PpvA_~cQ z;)Tx4%hiY1B%aksqd!V3OP8RlB(RqUG3;T|lgctKeuRrt_|{e7yGg)&uQA#_gt<`B z&YGSNu55de-TYFDm!k8P;q__Vs)N7ktiNFSYYi*=rp%I--A+7e0T<*)IF)n+N~oR# z2}jbS`1~M-Mr{?bn3d18q;M7+nB9hOS4Do9K_03i2rKQhB#3q!6`A?ca4O{V=m8FK z&3+^qKlJ&dV^IsT+RKBtC;{NwJR`ays0x?Zs6p}V(8G*km)J1@G40R=IlntCL7mwD z>V(>+0Dz1BHNL75kCF+B*#i-@zHUJL3;Tp44iriP8b|v_s167%7=-(e&_Ai5N~zDR zN!|a8;7pku)PnGbillaE)7<|d@jp;8o|jeF0m-0Ie;4M857MK83i68C@Pm;Ak@3GI zGLpbidmzI7p?WUftr4~T_o#n26*!AGOuDvpVi;ucN$AXzbP{Q}_?$g}`)d2@5HGYP zc7H^W^iQTvh$(4la_`*qZN<=CvU4Vo(3;zKY+D{0vwdZV5MW!*lpHztQ3BD0{Ntn<0U& zNl`SnY+C2BV`{i?yqGQafC8F7;pBb2haX3FA7@`tt-DkEHymBk@9mzNRevxEKX-N@ zeB_rK7~I+OmF2?z!0g10Z6V~bszspRX~zH*cyn_E=BWo!GrL)} z3LIbEgH!mx4pd5+p-QGNjU2_8*Jhe)9=M@EoQ-DyS2Q-Qe9WL4c^?vi~hE^5@5<+$vL-zC_H-{%yXnz@HRRe(`J4=}kf=$4BhxSH7#~ zIcST4QYl0nM_*uhAKjG(Wf_K$CpV?wwsIZ)wz!!V0eW&>j&0lAvak>_L{-&`p&QZ%mDndvqqU&?l2d1AWJ&ok zs~z@~!{=NqsiwoitTf~I%h~APi!O0TV;mq>Q+%mI z5!@7hdEYEPDGa#oZB=%f&o9!yWg{5999_0OlyAR`>z*EE&{K{6HICtsn1{Eb*{FFK zT8vtf8h$)yAFbA*5_to)C;Pod-bZq9q->DySa_M5VFo{m{ahA`(?i^`bor#T3@5#o zDA!wEJJR1b^VpufKStRZmu!)sZc0B-o`HCKk&wuAfuRm>tWV+ z<#fl(S9Bz#tsBiBDK(`vUMYiki77$f65?J;>hcE+vxjr-_&N) zD(C9iS=?fpdS4>Km$&=Z#{~kM3R#p47M`vpca9qMPn`J(3ThN(mV7)*Wi`hd1Bw@S z8Mg8i)jxAWl-WJEB!(UaJoEd~zTM7YCBTUy|ZzVe1RnY%= zPc0BEF1*bkTXtT7_Ofo-4wsL?9`U&ID6fh;R*LJ_(&8{)QFJ-js;nSy+1)?F)y74L z?j|)s8Ah#x{n2E5_IZiDiJ3Bak1V36iUEvLo*wa0YcZJkrc8>-ftmY7Q$$J#GXH@(1?ho7C3v%2N$*A1r<+dU`pmf|9c6 zj%8ToQe{QQ+oC?TW=Av5m0@esQt0-*%gu1vzRPxm?-S$Ne8cu1l1WH!8klLhh*OIk z!$i2l(^c~5XHuagGbO6~hp<@G}N*GR77W<;d2ZxvG;)!i{gh;Qc&jW}*CvU$)+*6iwB&;nhLu-sA zs#j*kWI?#5+u5DQ%06f+x9VlJz3QGmic1lr;4lgnAdRpdyUJ*sWU22OA)Os{_QK>5 z1#rxnq}+ydRiYduhGXqp;2|1T=lWz$NrMrcD7}p>llS|4%5JEAcCFCUB{5iZPFb^9CZGJi@&Hx=GNM92EQx- za|Yk0SO~JCmiw1Y)W+cHTpi9YC{s814*7$t2g^|}B?pLVf~4v6DCc%R?wpAWh&s5A zSTp#JR7eHA%{wVM2V;w>TkMWcbkb-YSW`>pdEB@Dt7-Yo%3E?n?5+^s5`XadZBRij zrfRptLQ|iQeuD4#$uorL4!J_WOcFkguMNUx-Rehd4-@_rfI;otSbd13F8cM*j^fLP z6jdI#7ms6+GYH5306B--LP(cEZzC`O!+ozNXybFnE+|I;7qvzPF@UMI7+~KIV=Nnb z8Cq|Ew|?;uNfiV$fh7*83Ok%=ULWvN^=jKIM9yh85^y0@D010`Z+FrX1Mp2=Ky3JN z4IvJbT}vfVUYoz;ffv}kxWuQsayHNYouYyn{DZ9_Y2vkAVo4*NJ^00YAD7P`)K&PO zZtP%GR<=U$A~=wrohT?neJ|61dR3j?Lccb9^ieFZD zC+77LoTXFla5H8ia)aq*wk7MdXSpCnm%e7vUhsyGBB{d7mfZ?Yw^<Q_((Nlo{NDi(j@Pr3hI>^G{`oI*JUCc?cJowzo$CVABU|vzQ(%wcpE<5 zw)}4RxHMQEM;QPL$A0G{)$vDo$zS1f{|-O=9Ue#|)=}oeb#4D0^3v1#Wma-7z23UX zMKW8N8MuR{|xu4Cf~9B*wNlz|*56@_Px+#!{$KwY4vLM>@WLdzKEB3);c0K3K-b;m9Fn`b-c%7L zP8ziL?2A_@E_0hoA1FzfU};c#fNp$JfdrcA6GPI4XQzfqZ|lSxQ({*V`4!?3to-&# zKXG1u=v+TKUrX&%YYwR%U3yCdMj@_}o3BLop1N zM2MyU8|(S1rGSYI>FV%o0M7%Qp2p-Q|iS!M|q zcLh#2@<f2{>7uPD}w{RU3{U0 zR%7IRG|0?CR{}=^vXt=sr>NRB3-7m9NfG^C-O3~7gB}JoC^ZI%BU}_rWHqR{^VcWV z_g2{6E7;&8u5nHAw8Jf(XOUIp7AR42hVu<@(w#GO^Rr6_NAwVJQ&v09E|}mRAs9s< zSAFoMa9TCIgbEb@Vf*y;zu0(P{y*7hhTZ+SFQ^w|>kll8tF3jQC^jt#R^Fqr4P8%!)!0iOEAf$!gdMm&0ROk)+6Fq(*7h zppd4CqR1t$pm$XiSq{AtR67AsPEsU@jD%31@!#eU2pi=kyQ6Rf$0P0S(Ug+UHOf8V zf~m2Ht>K+gslENT4>|&?&Ul&^ z;~bLLk@8o^*2l|-8ehaub3Pr2lr%*6ksk~k$y<>JH3RRdL#ik5C=mUiuMS~#SSwn%T;2E6@?vt z-#Y9!!V`Yd=SI$74!hH-OWEl;7QluS24-r>k>WE2TzHRLHQ40JlcLh*#7}}bk$lJo z@9&OsNXC|6D57WhLROzSTu~j9%Dc$owPTj8{f_q=c$5Nz)Fxy+{zs!U!sT+xaM~<_ zF%#DFE0eGR%)0G00|u%L1%Iv;Oo&*BR521KFjY8-ccBBrh-BEaSlHsR%L=9o&=5|r z>}Juwj@ZLVKX7-?gbf^e?U<-CNL91LHkz^y05FH1PQvZ*7&e~4+tIj96X?8+JuqXcoII+G&sp6fA%+( z`%=GEsuDMVRQAFCRtW`On_@iF`qP_b-&7pO4#8g<+~o;!*uUWoGSr{YgoH6vOHNbk zouoN`tTqnZ@XhVGtIx@Q5LY?cOQDK1SFJ0x7BT0?!y(OC7pB?&Q#)2 z3r)5I4YHb;^e%ewz_fF!8Gww2bQe1Kw9EDT&&YYJFQ*G=dMbPuMeOHd3XX==Uri>q zpiWk(lJk&i7;j*f`nkgF&{u!ye2mk!H8a34-bvRQr0%rJ7@6Kp#I;~7qnwnJo1+8K>m?qq<1CjSiL`JX|F6MKv|`|Q@k6^sK2BElYOB9+sXK&osm*T zZULsrgnBZ}%zGzeF!i0FL74MGp3d+7HYB!C=c8gTvq^0ahrmLh1EizEAMHtTrd+J4 zivrm^)JYd%&UhAV*Y1>)+TqrJDB&6=nJmpdP2{!MW5rK;WX1oF!d$|ALKl$?jEO%L zy8cgvml;cTXA3kiZcQL%R3AbklE91)Og`irwt})CqKaMmW-W(i8jw@D070>NG z>|5nWnA_AbvlJIE8*q9Oz)XJrReRdkD|7lyGLjdz?#2K#u}?6<%m9$TWSz12R5sP` zue2zW?3Y+4_zn^s>0iPJZ3V>W6|euuRjG9S)T7VK0FKt@9~u+fh9tQXktx)N26+<& zBO|bi=$)-SKZlf%vr&e}uzjmC*^BN@ZWch`|@%Q$Ca#t5_(uNU-EwYs%_s)4%Em^XrNUN^^1>h`ijXXpv0Yz6A4YBg+=8t^jo zp!aaJcz9X~p=)$dOKZe1gY-1KoNBN{tPLa^Xt#4Jcu>-}h zE^V6grr?`ksROxfu~5>wM({|#J7bJL{Eb-6oEIr7L2ts9KJ394bdlLbY2k1(qQteunbd5 z@4k?xEr6#{O|OXpPi@Lgpx~~r+uWi=Ipi0f2gQr|tkO)^Fyv=Li{O_g)h4(VW($hT zqQ13nb5yleg&rWS(+VxMx?$5*j5cpgcUnDaqIKvTXndWyQH}Ad6A@5msR5FII zFuQWLTgoe6ZYU}-E5cFPo?KSAA)9Ea18bQk!Y{hQdakn&WOG`(Z zDP*30zu9vDcl6fus^a6O;U}jDccAsOGB1R9kM<1etnN6kE*vBrg4dEM>I;JBQp-S~ z8!7-34!SH&D4W#ZbJn64CfJX7$|4ZDIhX>Q547vpf(#`96Y~oN{{+=SB9lPETtdww zT6tp{5(_bI0!Po%Vat^To7Ixs7>2C`P)A~RXp1(#fM|cB*$y^lt~U}OcIFz<9j}3P zk%RobOhOI&bId}9f^S2E(As~axrV#bUMq_rkg_#&+*IXJ~=|?PSF8hMhVs~EW z4!!{seJ)1&>)_Uyb^F&sL+U4#9z;}H)ON5~$ZkYbR+4rw9EvcUAJ8|@%ru<4KUoa? zJl<_X-!|)K9ZX>N8Z1y5h;*oPws)TlB@7^*1LcBnzRKSRjMz@*!XvZ)60Lj%QxUPV z26rOSCjo6U+`*Zo(V2%4kKhfIjuB=)wS!&Z_9DtLr^8;6S~OCO{YPA+=x=ejLFZx@ zHp3&vTfDz&h*|rH8i3#=(7!LRb)XAO6A+w1+Vv%%A*XW-y6|L#a1fCtnzX&!0F&iX zO6Wx!bJ-!+_@0EqxN!L}957l)RHNQ1VXTV2Ax}TcG}# zJiBbYzmiweVcVH9u@ukpmqLU-#JyvJ?J<1niEc=1BUS30Qg<3S&r$+(2z5GG=&iU> zR#6fO2Q`^~ z#STY!)-Gh0t^p$s2OczQ(bVkjoE#~-`9877BDH7)n|Lz5DqGEjGDol8XC2Fc?+{mr zRGkN2y^1p9Q(z9VN#IIAiHv&KC_EWLGv_qH%mzs*mbJ~VC~DP%sB=3$<Um}mhFii?SWrd3Vh3A8zdFuC3w_vT>59d6rQJ7#3-x=l|iV;5FWfFQ#8MRM~e z750J(01=b~$nmMvDQv`K!d!BiD-2xBhN)^#tzn_ABjry|&k{q4>j#>g_J%2jSB&PX z%LfNAs@ugB`xam=l>3X4*X}Izc(`dw||8J$4|Q3uY7c7ZpVsDh~<1#;GR4T2RpYthao+t-gC3^w2oX&>ngA z{M@~r(5?O7rJBn2{H21!UfDeSydo?u@>l*GU`zFni`cp@UwqE(d}hrZXZPxlb zoEM;#scZd3uVrj4;eyfe-zVjm4kpQ~keS>CDKt9p^isio;o3Wwp40gX)!!e}OdxKY z6@rIm7T_<53@j!G%Tzu7`B-KzF-zDAbYaX>->jaHlzo=wtiUtg7=BPRBnG{O-qKMV zB16n8Eia>8ht@Ar6ev?Dn2+W9p1EuAQ?)8TyY4WxnNSBy&z60^bu8U=h!{0 zI+5M+v*_bKtRU6{YSH!D2*xsQ4qJBT24FN{5&xiAEW0#V=$fFU8b_%VWqwKR7rV=& zvJ3fy0z3Jpb>@Uy^;*c$t~GSmrTB{NjrdB*)(6@E1Rx>veWMd*8k76xb53ypac@Bu zzXJ_Eq}uuH;*)&prRVOm+BtjUR!A1)%?$+IeJ)-)0-)neO(qEPFx*TKFTH+WE0(Pjw^)i%ZYbZ^6%~R5xq9&LF`7{}CLJT?#Gyr{JF7 zg3o^ouEIZdabTvx-0q`*dt3&{lI#f?8D(frq?GhRiu2*R`cv z7Dw0lYkhzpk>0NBDFcKhTZ^KbN1h-*L-Pp0Dy^QW!T@5BGL#~iu zj$54R?tfxktDTFd%mrS|xhy>o6$WGv{;Qb(Yi?ZgAB+dJX-0RDLHW%AxO8lRD#`{e z4Dh(W1RaH;Q+vq6Io;9p3+}kcN$oXY!>6D6fwTa_ueJ5QUzitGh?uQXZ$vauZ!z4A z)-f~{BmIkBfO$+Mi%7AAx;_G~B1(yF-raR0%G6jfCtRK>4M6Zy_X0(gXd}mv-Ufly zQP?P?I+iWa0jvUi@5|B5jJ!HTiBgw3yy)7<-LbgPWv6#D5Z*3e3#x~8a+nfTfuud0 zWXsDbNj^=_hoC@Y`}nv>6J)u;9bthU;{5~U~@a~%p#&ssa;MpO&AWRnWrHgd4a z=sr|#iOLpvo~IN}C@JIlI;Z8*MZPGVhbuU7ZbkxAF-d(+)>>S6I3qht`)%9Shw6nq zn-I$lnS;7nS10IkCXVDOH7JKAT8)negq=OKGqntiD^x^iX~SwQyW27{+~VPyzeyOI zq5tG8UehzuXIdN^#baTqWy`Ga9~^z2@n*9CaG1)6+SRc!r$k!(l3c3LrPQFB8vXiW z=TY%)V?RmjJsbVlP1UHJ2y#N=-s7w}Orv%wj-3`5JqB)~R_bJhE#@VgYX{@1QjK$k z9EodKqDw+z2O&@v3tya@$FL zUGRYi`-Lu}h1t=&q9yc{A)~EK|F9ksc3kjhrYR$+9IT+8VKOd|%bvq=qu;xL#?oJL zA(O1Q+ER+|ium6RYA-n_FLDyXs@x>^{P-6Y3y2Cg;x`pb_<-?N?G(2O$R=Bg2Me*M zt?}?T^+yAltVAq+@hh$O?V=pDY^EAX$B#*=etI~R;P{@bPpBAwWAxP4hJ>NgD2nHt*3xFV%iwKe zhXFChCqiEhL^vz(9czRohSk&^N>B-5g&PKcuO6GU&oj&v$|=1l+H6!1C>-L}uFPpJ z1x(rAe(qiS-ljDdk?72wASw{7f3Vo5EHSCKr#bYEDkum#R$BrsbTCK!=D;?6faDQt zT#f6shl>p{rI&aHzj4eS^DBHAK5p@pQ;-`oRm?O>%(V9hod9?!3^*!OxtOLB3or0u zazA^Kp7f`DBN|}2i&$`6Rhm@^7@$-}DHlg6H<&973JZ=7RgI*C#JAf9H30fn6TL!j zo=Odl0dP7o0BBSwQTl$wh=jG}vjInU4N1qb*;WovB8|ZHC96HFcP)u&%YCOtV=GTp zBBCUUQ?m8g$&Eg#ZYKuqi~UZJ3({o6I#VgPpjZWut{a~YP3;g?&9YNQVKb+9DVvEP zjLNN1Ja`SsEJrLCgJiqEy_}H0*mJGA~Kc}w_0adU=D;Rw0=$iR;?VvmB)X-^{`A`8qH%2Mf2%-5`BO!3_Z6W+xw1x;wM%8d zfg&%GUTX7KWUN=0C4mc4v1dBW_e(+VM$^8}Eeh_DGMA;tNSK|W!o?)W+wah$?-KX4 z!Ptr=r|;}RNKR2#b&-ag=kL#rc+EkvP3%!;t$3*(UX@rz5>o{pYEHj_bzn|+gY86$ z<%-;x42YOn;=wMH%vK6f_g;UT>lVB zarpWR0gByTgC!~j&@-xJfl?g~TO{U|7b!d~s!9n4ZOI9?H45#0{)4FycITM_N$_K~ zHhBRH=(}Tm{R`ig!OLuEM9uJk(hYyTJ7YJHo}DZQ-Nz(v0@`q!yGDpfFOzj5$Rlo zf}AGx5dqebFPK~!~5sCeNC&+mXhY?W+tEiJi_mzpPVmMck=Xr)p#_Zn3V)Z zIx^-ni4HMnFt&S-cW--5b~azI`ijNuX*Wd(-#o%y1V#y}5RB8-BC9<56$W`L;i` zcbfk8aQ622dhFKrl07xHu7CM-bJ|v2jdFIDeG59;ztOQOD8Oil-PYAnLDZDKzCZg4 zKuJ$_OIOU+KpAs06C#dG1;~+5gnKN;$Y6esdPS{!-eSjAUrT93FD@<^mHa zb9ra&W3_u5#Z^7#;&eG{{#3U_?Q1Vg-L(Yt@Ot60x^k&C^wATnzV$7#dq_41`ue^# z>HE4_@2-yd6m&f>wfdg{eLaK>+e^RQy5|?a@xB?4ImZuW2c?HJC+~Uswsg3y?m0X4 zrQe)d-FTjGFE7N!D;`ME5%XNt7#fCTt>lEP4lMrgtwOq7d)>YGz&tg?Uv2NmvxOVm z5H`l_Zchrh@}|~4_enfXvpoQ69Iti(xB=CR3mVpyFD%C|GF*4$Uy zRu^ea%`&rFg(UVPsc*Y)cJ1nr4>_lgHruYk!!yacPSb%KQa zM0~^oZ!XXL8x?nLZPlBMt|;a6)gv#Im0cC+;=xLuhUCddVoBWd#r4LotKdy{l9=x4eUvD>w>+Vu{uUT0i zUV*hQw|&1>dhgEI)*T+n7nQ^OH8nOnupjO3zPW1=+M8Zjb;&I>ncl0GPnBbGOfCt( zT~s%J9>)ee$-gog)VsxUrxMY=JKAo&8zH;hZo#3%VGw?4@VKw@ey&keXzvo%Qbc}z z8ZvAupWxD7+uT$vE)FD4VlF4vh>jk+d3xG@=)IXea(sBpN;>vEONw6HeZwc-e=8jb znOODo_0Exn6+9!#7bZ%o{+XAdS7%Vr_w4*wesE3Q7EvpX4=6uoBt*fKBSwCGt6$%4 z%^#H$WW@Pd<-=Xk$VJ((&w`Hw7^1WuBDc1Xn2S=Jn@lOmgjeQQ9dNx(4B>uXhK7nhv)>O}L;Y_S+j_FD-)C&WCO3cbr{Sw^L&) zH+Iss8CkcfZHCyZ0|zHNH$R#7pt*~V(jLxl9jDx8#RJk`Yc}mwZgow@9N}ywnX47U z*R3@Hk;XhgdF_q$&F1nU9k2Yjm&(Cj=BeBaG{BIzp?U0hU0>L9UV-HRMW7Q0X92f)wZ=Amm_?zb%sRrmdU9t_(Fm%wc z-`0?AoXTY$k#Daqqn?8INcVK9o~vcz+rfa|bH0qijLl;=kVD6em>N@4bVf-#NY_U7 z4^BgOGJd)N1gu`=(NpCU+l3{%~ z(<$NX+)F0t7%at zr_mm#7sTIRww@WPgufQULJ_a<|H3*u!wHe!@#I;@o#lOh5Me5mor$SnDwLIJ>UBIP zj$q_k*7M5}s-7Hb|M}4ZY*;ZH);Yj?i8RLR!W1{ijD*?0!4TOh8~eLGXMuiXjO!DW zRWTr@$iG+j&W`Phg{)@*FbNr*H9-7C=gcRK@@&QL=;L?5f+c6`1^YQnvJ z`*cu^cc0<9)(f&-F6?Z=eErp^svhGsq`l7kWnA43{la#TCw8gw77toY^)r_NHzyDk$uLPv!*9Q#_wWFKJMI81#>G;-hmJt5d-ScnF4D-LQ^Tii zSKSvez}AZUSz8yGk8^x0HpBL1R%$L!G5qn^e2bwzsJ>wRsrtmeKy|vzN>w5uB&ru- z&tbGV*|D?wptZMsr;kXO9OU8(62mn{-p=W1B|Nmq(1tF*Udn>5jCfq(=s4_N2R>ru56_B-AAt1~0dh zd37SocWmiBa9pvzL}&}_owT34rZi@EMAvy;?YjkW2JXL`^)OpB8u7qByEWtwdd6m( zf1CJZ;ij;_sF<36aJ_bir0NeC$3I`C#`2KNe)J>wkb-%E)&?Lt-`$~LrP-@V<XP9k|MX6&(6?b_wQ5)1C-cbyxAxX@AO= zQsthed}`4ngsc~By7Hu`Mb^^=`&Rp`0pskU$|mxyEr>k)}-RV z<=MSgJJGXOyZ$3sBJbo2%238Co8a*~3t3|r37^E{DNcN$$r7?FN5+A$TN|_nZ-(61pf&R+@R+@S_Y0+q2<|u9<2*ayPDKl`~tCM!eCpU$G+rCSv{a>Jl1qxJV0?d3E5do{^4`xR7ZIe=QMCzLJ*u!e&MHx=PG082{eFZjcJ*4aFhl#z)abJ3hndgR zM!9cUs~6p<)>Do}$x_`5*e?7pw+t-5*O8I8fXU}wd9a+R81ZE}IDGv(yc>g7Vgl^&?RVr+vZ5u=UUMfT#9mwGYHw}3ufHLHKPE&PlS>%j z;EgnTzFhZqDPggRxGxcgb&%fc+~?pI&_T*V4nBTD<~Cf0Tg|Ng+U?oHTZ=dc*_E^{ zY(&l2d)S&Fi_}N=Af}zd#@2sbXXQTS$^nnIXdiaD~hV)H)C{yPnJ<`;v3f4Aq;e%an{BFpEPBlrIn&_ z5YOSDKE_uKKZ4@NLKRqYoS$-Qk&J|MSf>fLQq_Si2A-MGWst^y`M zpjPt$ADfxueLu|sTD@hR+*wzH-Tq#pNLqGFe@RVobofi^&yv+HzNkTI4x>A3=C2sn z(Zz$pyW3F^o0+y;i+~R9YsYz-j6mYM~7x-Sw3*@}$k27g8kkL27yR;zxgt|uLHEmXst>>?c z(jMprh1wV)+04|xKj(?+s!OY@1h&LBuqBkQrxhxTl0+DCIzt{<+NAkxaBd=sT?R-sb-6&ZE;qwk6w(D|B}=pe^+t?0bV1OLFUM z4nJaSW^3%~*>z<#rRS>17JdFoGm3o(sl9{=?TG(3`8DbyJ{>BCV zK>`+6q^7H4P#i{Z(Pf=VxxVbj6`BTzR44CS|r7&Y>FCL0&MlH3ne|@dTt)-*vBA z>#W)c35O5*`_l?YREmH8d9_-J{#{?{4lk@}4%p zy;CZ~13ESXI*AI>HROBlgS6A-*m~|Z>Yg@f;2|^qE!~_Tg=U6jo;Jzr+l||J;uT-r zZPq986o!~?$r^C2w#`b38pZ~7Y#utB1-9?f9e@<~s>dxfSL21c_Ykg@BAL24>AN|n zKt)f4H@5No=GjaQsHc3wX!c%*lWrm*E z$1BSBp0apLjK{2cGPn5ZfR_;}Yn3D09?gC6#$@O9vrhXh18MvB@6=&mt_@;ySd@j4 zR9L;NEA`0B@l#iZPajG8W3NYp_PM+SRYV%Yq*j|o=gK~(`RlL+T9KHNwE0hosyg|c z4|e+n6OhN%63N3cXJQq%Yqw)-FIPGur;nrGgXYlDs9&Qpad}Qi~u7H#X*FS2jnwi*S?YFA{9~)5K(rPA&kX2!~>d+ zwTad0X`(9t3kb~8XBWI97InX_={^u)d!aG6P#8Md2y;;g3`%iSvN8RTgo2PH472C6 z4g?q`BASQ{onI(qb$aM^r4@QsVSQN*U$h}dzEm)giOua}NG$7583w_ikbw}^IWeB8 zhJp0WAt10mazu!7n_|0;6JG(s{xc*B=>LSgShE0zbi4d3B;QlWQoY5$LS{jskO_zN zA<6gUC{GlVg1K1J+F;^r&^|_^h(xNSF^d__VvHcz8$pqa8QziyBCU0%xYCJ%7+OMw zJu;;t1FVL~v z)!M2g6*Z52W=o{_%jp$8-+VYc&B73H`*D8UU=I)41}bW_^?A1f_xjLABGeRT@*r}C39BRT0IudCqRsj)qkZJEgZIq zIZ;9`&!b%%VgO34G3gdpI1GdojGqJa8n@7ExI(XS!Uh#4eXiZs3KQpfl`9B_k1d$j z233VEiSLgBg1abryf-6~2E@o2^`Q8FQo&(w3&xE?@gI&w;4}Q8y-X(m;V|;E!AfeCG z_NT#o{?82tASC-Wdgt``bO&7bP1}40W(7R@E?+xNugU!BA)p(Q5l{&7o_!4C-s$(P zdtb>_eBRnpAf5V+;=-UN@Dt$>Co&Vm(I<2ge?JLN5DkDF2ZPcH{225f^vmr>C4Q$z z`aL>4m^!;LtuqjMpR(cAsNl@U(bdG!)5g)=B{dNmEDKY1zk6fg&qw^jAe|f^6OBbJ zX*BBcHEM}=td%T$5kFa#u|2i@ndEI$_qbs+3bS8sjZXVa^mBA^_IUO2P_F*df$Q;X z?Q4G}_d+ExbYp*4k#jLrul{(}lzOeHqH(201NG6?q;`-m@<$KqhrW*tN6%PO-4sXf z9FFLAmpdCmO>7)ueE*`u$l~bc<@9FI=uXEdafcCsI3>LP6OFgey(g-^@Atu&wAI`< zDP;X#R{akFBIttzV^zQr6lL=neR|^hT{41~yS@ z^kZy1lhX}v7Cd*`+8ree>zfzeE}yCC?J0Tpw`#99r7ZUz0 zrrMh383vY7`3{RDFcKOkG_pIoZY5B)xq}yf3tQdkS^WX*!E{UU>5|eIf4tHp=$-v;If%IZBsL zV%PhvsUXa!Cn(N}&AcM6Z|#E<1TNzX+J!#SH@-x9F)9)Wm67pb{u(ada&4D8d) z93ykBpW_F--Q?WgfUc!wcBg0Fylnh@sjl^~8)z}|RWgh0eot8FHq#dp2Q_eiTc5Oq z`vnN>Z!-p^4`8OxzwKrieuTNzvuGS%%h$x*Yqt11cN3|Se_8Q!tqQ| zy)8&Lr5nK+_mFMO>`ixX7{@SH2KF;cBX$YO6iM28`>Pv>a(0~KLkx!)yUP$|nE4|J zczTE>6b24uhEtEWgcb=_fz}gSm^sQcNyei~Ft&-`r-~ui`6>Oh&m4i4<|lWnpi*w1 z2j=+~P^PC)Q%N$G!4XXH3UCz-lPpIx4A%3jY7yocyl}+(&LhyU$Z#CcD_kq4P={IqMHKvn@h=hQ z!lE31L;zX+zePk3i8ac0>;El)H4kS%BCqedIeI-rgqng)*;@8%>?09jww>KGyA<$8w?o zqYL*6XTehjf|pO}gZ<}D%MrO{h~`81jG{)$&h;Vn+=QW37LIt^ftX(F6-ufY26r2x zqSw5_!U$l}#M&g49xt`Kt%St1UYD!Oo*(bq(bHeWnm@&X&m(cybHMF0^?BB z7cUvynoWtOpkel#LpXXYq#HEZMvM-FhYz7nLK_nAti35b zCMIv!@rGBedyEiTKly-ssg8SN$h4lzn6l=TiE6U5YlrCUo!R<PqfnA!g(+S?qg6w?LieC{`n?a5pgf7;it|2|j%0Q$2g8nHF4gcQ zqLDz5{8I7gcruC?YA7O#H~}ML<=2I zuFrRhVuM5H&xxtp!MMU9^lz?87Nhx9jo|fA#)#6<#7;FPQjnxt&e34vKryJ=bSq)W zpX&qEzvxw=;dIW%y{a zG>v7WD#K!2k&47Ogcl-XD8D>mAIUk53_gU11k+5h;<&`+Mq`ut8EBfQvW8mL1&(sF zT8eHV4Z{!~ASfk*)A)$GIxkrd+h!;P!5DD}kFoE3v@DZxr3?dkM3tG)HH}M zHfm8sUcj5>7tz6qlz$*WUW+BEshDx0H-Xj z6`2?DQYr06XMQ6pfr)vHQ&teK${J;HkUsmV-!?De&-g{BzA8GdA|ByMlNYf*DOF~? zJ9CnlFePjMNJb-ynLIVFC{7uOrm8fagP}%IMf#iQtCIkB?WuCNI zb6fr43_~tO@#t6z1x#K+i~L^^W($1mVll=hyiAhBSs7T=O|N#7bsFz0lx1|j2g+Tl zO&%g>6UzcP7SPUDQjFHlQA&r9^M}M14v3}aha%CRxYvUBi#C*Wgzd5HDU{Uv(hDMu zu;%cjHa885ZrXyeQ82hiY--;3Y5hvS-Ao~W+&Y755Xz3ZsUuFxfL)_s<|bq4&VzuG z;1dhUD$~)Qvc0CC5ll?EqF9qGB~dR$QxE2GcqLV+k}q_qI-B`FnKjVDb1Z0V0( zrvVa#U(bG!XfdBW`lTre?Ae%@_ipaLf!WnR{}nTSd@FzI5D69<4dAgb2ApV6(mrg0 znZ%9J)6I3L;wk-68UhDYN}&o=3Q!aTk8|XUXWW*8wZKr2+156G#HJvS;z`Zt-ee68 z0xtqm;&oqOh$ZD0>puj?lHz$F>5(&iO8BHduu9^k*WiGR0nrxNJ2Xr(B|-k zYxuCCg?H(qTF(e*NEBIjrnG++a@Qj#%KC69ocCawn3CZo^S-6)@_60aP{El?K8G)?!OH-ynfz&6u4cew`xS1EGy`^hC;W!~#BfeHNM_&hfI`K{^vY zG&O2cmgm(wmjoMd|94oja#5{#jK9M2r5}|4NM@k(@n@AvQpU8@t8lIm{>>Jw44IKy z8A)d=+=M`v3o6BvUFKtMBtS@L-P=Er$y(2HkIkk#9Zr- zxWV2E={egp%yd15r3)dI3b&4^(@W(UtePV;4&u}2yKAI9vH8?B-N-Z@5gOT7Aj+#< z*i%qW>=d;4=+o*$rZnN^7glIDhFmK^`1S@21MZ5w49;k!AWhZmZqCEFD$(;3$ZTVu zeNVUpk)h}$VR<@Cy+Ze`2az3Y*3g?356pBTq>bsBh@-ro803#k+ zmL*~hoF@1S%|e%m|z-f@6rKsjPUE8@(}JV^bj$MZyra$uRze-P#UDI zxHnS5$})j{taqG)#!(-H=ZL)fc3Aj`%bD zpyLRW?vQgQ@c$ZAUltRe@=;;||6ih9Jbr(^`RCJf#lJ*xLK7_qbjv=Ce2)GF{tI^> znK7{vcpF3}!q?+fphAXxAPY#}WhICAuXtR$7=OHw8>QJt&cpalN-)&VLf{DW>_4QC z`~Mn*`P(t!*Zj&`XzGmN=Op)&V7?DEh`$}f5vl1i>oL|(D;tP*4RfbF#*a^gnL6lI&Mr*aM!fw-be1^ z+($N_Vg>@Xt@%7#HE%QqBAu;w4q6@Y47$hhZUM4L6;ci@HDX+Gu{!~6&5QHrCR|6d^GpOrhvBr_m>izYg zyj?dUB-k7G)s1nNW>BeRNa<;RoW)S1Dx?xY1GlDu!Le#9lyEls+mlzSV+!uUnw7=+ zqvUN;HUz}A^X%pkR~<-byDT_t>Uxg9s%r)zpmg1T5!j`;N<9Q|5CvKmFHJ+y0qj}k zJk#IS!oQ8)6119%`z>xVmwKGH_gvftf&yH=W*-A#O8>x={tcrCD1BC*B>eL|ovdRk z6o^7vm+kiTy&xboF2IHOi!t+EC{pJ@{p9!XJ&vzyRz$y5Mzin#&tRVbrMwsO16Co6 zw!w>2DvH?uqO%^pwMH1T_QTtwDjNsj5}JLibSXc|?!(e&bzQT#35B)G@zsiCk7I*9 zE&|{poqvyCnw~et`$r0*@8XmaB+|cuvimLfV`bGLc&6W+Gq(1IGNE1#fg<%v+YuRn zXbZvvRxK7JnAyh(=ULnUb`diG&$MGkrdx)GOllvH7(!_~GykpYWi+%IJy_PU5ASsR z#VqutCKNh?V@Br%N2@<1&$J$%6wmY%LQ&bGwspn>bx9+@qZnUWo@ z855?PlSO?emAElggLFv1ZNgG;lU6B!=5X3rZqxhTtlGtu)n!4YRlgs08NarwNK!fG z@k=`yx3jhhTwVa(p!V9^1M%XI86y4_I069a(j2qIQ=Q)chCo2EH`Ia@XMtM7QIM&f z`()uTwU$WpgdGAGcXmZAgRDC(Qnit&1=Nnl&fY9EZecpRmE08}To-E-Vc+yp^l-*! ztJm*OdqM#Hqu*l46ii+)-ZUBS2i_!b#Xj9~w9G$WkDQ(Em{>llz3pDrF~sA~Cyd3N zf*Sg8R1*e*KdDH=J@z>g1&;A1;z_d$9d^vA~o3xGuj|w_RAD$Qzxji?CXV@Q@}x5 zVlx)vXb9n`sHjUf-TAYU8PbIG-arm5HCgo}4fUUp)WDFuXQ|F;3I!~5l@{)uu%CJT zoxzU85FE_us1NGdzpnj2WVay|;cd_2QsbpXurliACAL@MwE}lh1RRpAPCP9@3A@r$ z&(owqTtbL3gqQ_7qm4A)M!k8^T*T*PrR8TOE#WYz0BB?oKl9S+T4p&b)3C>pBkJ3G zq$&a6l0TfQJA+rulF;LyD1nFL{HzB#UfkitFhaqx)nR{UvZ^dcW|=2N9U5vqC4j`d z`ytj&YYj~pXBSWmPcId5-x`c>ZDd3^k}>G$?F%{=l0sz{C9C)l<4I1w6jbRIpPKlfMg-YWN6Dn6v>-Pbv7j(~wUtf%MuJuJ=uE*9u$ zVI=2jTV^{Du~rF|+*xQN)=Wv>!3Gg>n0-T>hGK#h^1UlK_U#&)@=C3eEXAbNAZO*a zIi8~;MQw6Pyw}Y;rsR2YgDbYxmoi|wD1i)27uh^vIFOHu3?`&8Mtr8WSMQti^0Hv) zsW&4NJ}qHQNNXgaTU^eLT*BZs!Vn}SPFkrXC;p2Q7rSSZA1@8HbDRxzp(H%We9rtJ z@?cmtd-QOfts=m@&=I2^l4*rpgqKy6mzK6h8%SwMGx%>xVqyd+8UQg@T-+nEqHnOk zg9i=un=)XZ=823;W4t#Uc$R4L?&&98=C>#UItsEN-p7dRU_UjYk^GYdR&pZHnIo}( zJL8N7osV7TlHY)nf;b^fFlE8s;ymCSK?blSazN0 zJjAJ#TLZSsDAa;ym7W2=fVW86v)fcD>D_!deSXFM^w)idRyNAd3PxCzrLDvXNWo%) zV7xL><3&;V`=uu#BFBmH=N4u{QhbZ@B1@RWZQMtE24$&Rb3wylQh_4InAP6rxJ5y% zYfxUuzh28`7>BChywUqXISmG&hITYuaf@rPfh@beMdssHdb}|Vyv1e1pw8NDD2Gk4 z&8WfvaS1jp?1FIN85;C)t36!j!v`uC{4v_G@&u(g6~e=%*aF9)?))`jK%tfZ!a5kz z{a*w;b{h|q$Y2HjMS$uEiWd`i+=(OG3rt)=j-oW!Vk~|!b3v4(l%!NfLImIz^myQ? zoFE%mmWj8(K5TL%9kU|7&k4wiXva1A%3=~jaX)GC z7paPSWWTI{EIM3B-enO$wyNdfwxTUb=^jIbaq8cOtRwv4lMF=o%aD>3a3CM))yyFF zF9Ol&b8BMG+Q4?=?UtrTa)xuRFa^3Kc{k2-CnJ+x&xL_MW_2gEm=NGPC28%K_5Q8X zvx>AhRCcMo44x^YH!d!+fhyyAbA}p$?8^DAD|Kpq9)vw5pZ}GZnGiVE+D6EQEioty zq~|{BS!yrnU+2(8sc9)>)A$PaVIfR%+Bhnl0Xq0_i#~WPV8wlux5Sh-z{}^vW{Lo3 z#YxiHefaR$0o+f)+%nX2b=ka7iO&MY7V}VFIoi;x&0_!jQdoc;@wGm=XJMM;uN9I; z=Jh^OPC+!#$g0VnB(r#o_0&ExAcpu;u(*sxM_snKM4=&CR68*N!$KUODMcLcY4z)R zRAzd0E+3PEfxmdmf<}kdp#Z`l?uTx@zc_Fi1Pn_nb(Ut5 zjP?%KUmSQgM_wXECQTC>@keIOo&+Xn^lBj^VOdF0Yfq9%0++!XRS;Mb8=um}TjqgC zrYO*Z39}ZOF2hh*<+t%Lnx=aD`3#XoQUVZIT5Tu{4a^M6eB*&v3~V=pbrhKd|0Yz# zpXILd)JZ<23-Zl8-tHm!=_i@w9*uFTyWxMR!wvYOP88*TtFuJ_s^fv__Io?W{5P2C z;fqVWYw6!W_E@;k_v=ye?f*lHjp6RjH!=J5J|qC7;TwqE19t*KzQPXqM#OlE zdD_(_=H2s5Z;#8+r~-2q;+H(cWMe@%=74z+F$uKW4bQrlM}4wjU#2o_pHK|Vj+ zZyoPf2ZEf2jMnL(o+wmDN8WAC>cxrSw5@&N?Qw7r0XF5l^}ouw(E$%G)g#4+5t`bH z5?4lOkRoiCn`6&)D`Z!?QM`=J9L{#x(sZjf+MjLVnsjN|pby9SKkd#7+6No*Ot`HX?==d5~xVnao z(@9_N6ntznm-RA*$WI-Q<(U^u_2QTX$-LMZ9hZTDa4b4y?j9ZWLPbe@xkxB-0*RBU z#Gl0j5*dH7i3SgY4;jVli6jdJk$troO+}D?L>Vm)X`{^kTP$Kz=4flCATM~5alWW2 z&qZA3p(Sp>db~@Y@+0MoKg06c(8@p@p@8+8(wfl1!U~?YBx3SbIal1C9Y< z?l!~(3c+C0$V2N4x9&5(0hQL@M9o6H8HnyS^(0+$NeJrp{D3Tp{9K3f8+Xt)=3Sie zi-EucCwLqH&ZML6CzPhU2)yPXHy3mI0`Be|fM{;gzIB`LqZ*ll@JG2>wYF<*xb@kA z+5pcrLwOx?l2?0qv-)Zmr`_Ruez>oDk{HGI)= z?_bEcJ3?PvE%?4x1!F2zn0eR3o`_0t>)`XTM;c)ER8C9Qhx0L5*Od)tAS-tmD|PZe zG>lEgJe25jU76LV4tHNJOfq?C?VE)s+Bv;))?8X-iTb+UHJi#^=f6~r`l7f^Zp#0Z zw<|Un--6=0GT%mnocyvwPHaYhN(92bR(xYzKaD9!4PIzDJPxmKjWV5e56I;7`W;;} znAPBUkx!QL>+NQwEj`@#Xnz~HPT_kG&irz6RKOUi6c{PDCu>^#1WYZlMl@YLLJLDn zC5VPa&>*FM!L^E9^Q`wN&+9wkL2UWG^jfa&fc~>A(y8{53J9F_@ zGgkSJ4j(<&Z#~F@05a#*GjN!oa$p+8`Z<9Ohp;nAqy^cLfReQtxEX5tHAtVJ03Ve+jvJLnK)9w!FprOFd`@j2B$T}cC~zVx)3?H`d99%#T8O@FrQwN@ z8DO7i1jS$RxE7H_Wt^Uvk8Rm3U_6CBQ36xy8a;KGg)#F@zk4S(O?r^x2@xP_v};m! z>S9IPtSpK@|o1ubwHG59E2Mo(_s20J|aNg`yo^`W~tAtFK-lVaJtpKRFO zLH^UR-@JJ)Ccw&`zu`bY(Ei6Ub6_D`RU>2Dzsh@VrS#i>XCWB*@hyTTHA}`eu^9uE zZX~2>5((c61f8G`Ya{+jxP9UG48LtG%T=9p=Yw6G=N0`F1!w>auB)gNI4SSP?6dL5 z!yBP?>sN*bDls~`wjX_Xjtm3ftVQ03{KPNalOZOw(a$K70q8sFs7ISE%-W0QG;QiB z?b(%7@ZMfkZkw)pm{G8U6;#Fp(KvA9bzG^=hinW&RJUd%no*pDb7AM{ksxgiF8Cf{ zkuaioaT;V&ID35EJINGmF#(mV(aRHdo?#oRV@3?(!bxm8=1Rw-EJrr@r&lF8mN@Vd5>r0mqrB*l5UP`x_%;_6C~jGcy@nyyhkEJ|j?MGR3M23fwwZ5hSI5(45tw>Q5j{RYgPR- zbaSnHUm&lh${jQUmP+gO{DXPV0(I<1N)S|X*$S#!O|84p5$@l*;-2;W`P@MT?nTWH z)o#E_cOSoB!nk>MBi7cG>v9XU4PKN)Xn4Z1=bCu9vErwRt2=4mjq@;iplqB2@lx9#kbr4Dr}l0Le@3{tf|~d2Lb{tVfl9_cC|FKGh_bi$of}> zGi`Z?4KAFXpBg9~hf6OTZV?^gmupumC5ULPqOnb4I<_=QBxe*oh*wU1enwk$gK(EE zgLT!y@Rtj38TN!NNT&ukwCfQxO3uf_^4}?;N6DTAyn79lZ8qAU%y*6Ovv)xuzVz(}>t*7mg=!J+EXCbuz$ zlJ<&$A5ONTnh{~##Yf8`1wtpRkQZCGZ!&nG{KmS;5B_ z+_P)VK+p`k(L9))C`F%vtij`z{H*e8sTibCV|nJeA}Rfcv*NshuI9rp#k8oK-^(M6g% zd5gjgy9`S_+zfL;`Hwr#M*AWwDofpfw{CAV%;q!UMG`cYf$S=09?Nt%8e2+##~ z-w1@YjAK@MzC9moq|WwNN;2zzdO2D?7_B9G(}n1TeRD#4KmN`9?(;(X>*D#VLymVd z$XH_Ej_=E5t3j`>AByzQMQ!fe?f&|OgW$(~D7APSB2=jKCWu#9Apa@IrJ@3zK@%lj z17$uq_CAH{AhFA-C?r$BV^C%PwH&FxxF6C2p=0j2u})YUt4A4a^F>3r)M!db+mR=p zaisD>e$^UCYZ8w1hWzU-So<0U?3%x0uVR%wU65y@@G&0KX3+(ie6k%`AzVy+EQF$q zD{?;BD|i&=hpkbj5j9zQ?00J z$7kg>Sh5Uk`@V2L{d)B|a_KQUn$6GRUrMJ|2u6buN?6G-9teg!NPjV9TGMSMG&_ly z+QpZbil+5>1;=f~El`*yUc2d?LJoTx?Z^iR?t8JRkgSyyXbM)G)On`F1i$Zxb;QPN zHhkV1G+8BxvNj)pbHP;V4v`y&DH!@vL2B-qdH!`xNWJ&ov{QD&Hu(+E62H15_}0g_ z71Cs6)KL0+M1e^b?*LM#E{vTErWu=T&GL=6}Jy#>HeeXNB z=G|s>TsQEIK7Scb%G=O&@YBs0Ih$NBoVOG>jASnGr|-4?o)o1SPQZ?X1ST;|t=ZPe zgis`hN#8t}X45cKNRp?!oy+)*&Yw@{M>_)QxCp zhh;4Ckk0~Hv(8Z(&RImL9djb1TB&tD#a~(q%UH@&=YBR7RCm#Q9|&+L+lpA>#&X>c z3~XuMF5_Y_9L%$eJ|vX%c?4@G)~H5JsNZR^?O&L;zJwh88E^mF&846eyxLYf#pWri z27Li4DpG!ID~v}sxrON#v800Qe1fvFSrr7x3SRwrck_-D5|s^lSA^f0N*l5^t{?2UD+$LWIjK!xbo2o@5EVR4j1xh! zW}Wc5wm;Lm7SmLd)Il23Xu&}~zugFl{w^QkO{LzSwUs?ole^qyHPqxX+G7i98J^ny zuwRu~cF%)>U$ae=3!eJ^S&N1x%_8gx6}QZITh+e7kKX~X-ch;d0>;HzwYsv`_R-so zwz6|nuBejllMuS=Ij=_NgrXzFXs570m8)3fDc7oo4=H}#OLPoQqnjsq=mE!`NkU)P z!&i%Z8Z*U@VxZ<%MTM=?xIl!AR2;3XRlT%r9r^PInYH4`X+h(23K^;m@6R3Es_Y;# z`mp8@(j|oFZ(ULrzj42HT0#UZOF>^?ZLAyd~(>z#iipKFGrO8c@Hyu*yjn(Dw z&1>$se(^!RVIBX+UOEG;b1ctWt==!_f97I2etfH?zzZG}FndJ@zMHtYxH{Nr+SxK& zxtiJib=j+qs)rk3!2tQ`BR-xmUcwiKv8aqfjhYWvBmMFnDxoW($oOMBtasP_tK;ag zo%}l(F$W)@Rb1M|5zgyM0zmxp{#f`PCHNv(1Ujn*#ZtvWQp>H)9gAAXJqXOgu^jQVIt=!0%n_$40KH;3AktPN#fz$$15c9q*ov}u-B+CuM-lafsRoM2 z=&G7AXNxkpwhb=R)H!H*{l9bxP8=?!cYCy?WUHu;bJ0Wxa};Z4%Op~C=6<8Bq@_Y zyqZiVIc^Qt#ujs#9q$Xzy`-JgDg+Yb_eQowI7G19^-dXGfrK44eq+pZO`T{aJfV+i z^&AoX$GB@!vncQC@@jJBo$5kwt8ZZcY|!RTIr%-HU}K^+@l#Ivq%Z}4%^&%7#62%?SQTp`l z>1LP3R13M3J+~*+(V#y5c(%}VpX*K}7Tp#TT9Szq4po(2m#ohiEcp*C;I2~VS2b>@ z3^S$A7cL8PZ0pyjvT5oZcKdo-xe7|njJ-~%Bu#*qEAQa#n#1tw?cuNwq^^hyiU-4A z0^6)!91W!t(7*0e$bS9TEG=#>G~5QbCKC?K?*2XJuy?aFHgg89%KXXhrZuf5uVt@Hrs=D)g~}q><qJF+IOk+C|mw$?y!M}lzq*cq}oHfsq$$JdIEB<+2MsRguA91 z;k&FdD#Pr-w$Lh-d4;cRTyO_>3vOA8TPEsGUA1ALPE?Bf zkW`vP92$!Amm@3cbxQqCD$Dt-1!<@W*}oMBjB8*VI5W( z=y|{WdYUfc#r(Pj*bsu;p_1gHb3=r!rQni1O}iy#jxqih{CCnj zXDP+>LToCU%$Y?Bc`4j1&%ShpZ``qQ*+_<*Ns;ALbf)PDcMQv)$+hK~l%i-UF#F+O zl!gWUH>}@lfje+5Deun?GsobRe>04*Nmd(`Uj)$)i=6WC?FgD1mr%}$iED1zk?35! zJ9vns=iF|r->thBoG=eVQPo>S59j;_@VM%Jh(=!hZZ^Jf{At`tReusa97E)fkI*eG zX-qwPCtQ)-yQ`X7(=F$-F+jcFBaW>^LYolUr$4CpOG^nD!?oW5UTi52hJt00l2KL14cYDtR+xFVJJQEAU8eFWUJ^}X28mOo1 z(I?d7)xPVgIuS$$mccH(wLSzF8^e5DC~HGe_9@=rb?T4&?GN~Wj#vd_D;C|5ARs{` zARySl5erzj`>$aNIP(JbPkSRPTPABqGm9&A8%K0C48cw>Zd$u(6dFbh=z&hQz9PoY z^k7_8-%FCXiWqC1LZlPr(KD!wzAmN!vg2Ps9zzAZKk6}5U9+4N=L7hZ#f2rIQQ$Ff zM#!vhIR!8bz;8FVieMFk;tgglx7Oc!vhKHBW_i6%>v2hI#vHwkZBKJrokhvyO~YfHVyC z7*5buo88_xuha?2m1uaNsJ`$ zxjy;{{u#%hhyg2?J~gAl?v|%o(54tK6kVfZf^e)cz7}0{hK|#sMg=B`Z~52ecHL#z zQQsppcrvE7oG}VTvBWUbZ|jMrcGHw7W~FS|6t6eRr?ehM0>vk?V~LgsR0}&fmpRJs zGRr)N0Vq|`!-tZdy2DMa>~XV!!%^@MFd~G4TPQ)3hG5i50g$W+WS(8Sp&;524{(;Z z>|ce!zeBC^VgO5_MtGWi5z3CPM5s~H;K5%ElEPw5^zJ%|gJVm@i2KYE|9mLO7K>5X z95;oVb|IymTjTbHWQH!xP_;q_A?0yBK5NMHY9FrmcVFU3O$K2HlLcvxf-|)60MbzM zV&cWl>eKs}SQOEM+sEF+H#Y(Q2RJ#0c+5^^t*6-_^Cfl~#*6+6&Ovv9U z?a^BUfBS8WU+oJ*qqk;W919*k0k7UaD7!21f5iHKtzE*eP4R@fXa)fd9A^2>(*M5} zkRy>jBV~oh5#toeBHq+C%@>lkAMQ=M?!E3P|LG5s?_WL0Ubzc+@zuh}l@38xGA&oH zzxjV7$EfXz&~MY-+Zx_I-QkpeS@d<+fhDt7XXc^x^X0Rf_BqwuT6e4TopgwT z%F0Qv=d62UwJZGP8?~eAjlg?~jcha4F8q*nG5-Bz-^#SlIl+Q;t5_!6zL;lt_6Zk@ zPnWk*XOl{YZ&Nzkh4%}pT;fZ#?whN9b~vP_&objT_q<4U;cZU^8?LK1teMFf%{Q-8 zIgaJUtfze)z8j6_C+=gIu;*vxtMw(^^L&>ty4YP2_tKmx=AJV(VTk8}It5b8{Zn}{#dXvv= zUBbK<4<5}4U2;)4Vd;OlyzC1K+ohX3-?1fgb!!&&2u3I$mYn%QPNI9~r&S975>q4k zK3LVBnsCKL#6w6}Ma z=d_>mJ+of;cKedFv|gF1wwa%%%-Ox{+@9)dZ<-EOuQ|GH(j}wn%2MCAk5qqD-IY5S z{r>a%DNj6ti%-A0)-G4~U(uidu3 zSGhg=`MQ3)d!J9%w0?i=ufP5F z{}+`S9^jo~ml1n|rA@U(xhhKhuvu{9#1D^)N)LC5y^LMm)_*>F@}$I@8!D^6PvHD{ zu2}ii5$BaNh10+JTKRhiYwg~8=+^(>ROVLIS5|y4W%4YP(_4NPJoVx$*}%W7iA^eF zK_gb;zj4R6L-qmQj7%cTpy6>2hG#R(Bi05joj4WPLOlf>a|3ldV4wjg#=sEm3>*wj z%`1rysVqn>js>;O&<&_m^LF?FRC*6Mj?4|y4Wt_wj{%Kz?HNBJfBwy7n)(Z;QVMYR_R|U=TpjUJn$3YfmgFz~<_8JDGlZ0@Xj%*0lQ0QGPX5FpN zzz`S8%D|6eQVkE(q~emwoK*01C3+a3A1Dda-@s^MgQ6Mjcu90~(C0}J<}59QnS(Tm zg03BX;sv37aw$|h+B6Kh3Fs3M2osK$K}|rJmO$5!K5C56A5jU_k3NQsZUlP&8(~CX z1J>R+x&i1NU4#LejmQRI>-M6Xh2D2Wn5EQ&Y!+%y65SN^t`@=+%Vub(pme;@^`o~3 f5&EyRA!RYt)?t7*D=-Iva+M%MA~1U#>jCiq>dteY literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerRequestUnmarshaller.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerRequestUnmarshaller.scala deleted file mode 100644 index b8894c8b0..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request/HomeMixerRequestUnmarshaller.scala +++ /dev/null @@ -1,30 +0,0 @@ -package com.twitter.home_mixer.marshaller.request - -import com.twitter.home_mixer.model.request.HomeMixerRequest -import com.twitter.home_mixer.{thriftscala => t} -import com.twitter.product_mixer.core.functional_component.marshaller.request.ClientContextUnmarshaller -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class HomeMixerRequestUnmarshaller @Inject() ( - clientContextUnmarshaller: ClientContextUnmarshaller, - homeProductUnmarshaller: HomeMixerProductUnmarshaller, - homeProductContextUnmarshaller: HomeMixerProductContextUnmarshaller, - homeDebugParamsUnmarshaller: HomeMixerDebugParamsUnmarshaller) { - - def apply(homeRequest: t.HomeMixerRequest): HomeMixerRequest = { - HomeMixerRequest( - clientContext = clientContextUnmarshaller(homeRequest.clientContext), - product = homeProductUnmarshaller(homeRequest.product), - productContext = homeRequest.productContext.map(homeProductContextUnmarshaller(_)), - // Avoid de-serializing cursors in the request unmarshaller. The unmarshaller should never - // fail, which is often a possibility when trying to de-serialize a cursor. Cursors can also - // be product-specific and more appropriately handled in individual product pipelines. - serializedRequestCursor = homeRequest.cursor, - maxResults = homeRequest.maxResults, - debugParams = homeRequest.debugParams.map(homeDebugParamsUnmarshaller(_)), - homeRequestParam = false - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/BUILD.bazel deleted file mode 100644 index efcad840b..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/BUILD.bazel +++ /dev/null @@ -1,13 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/presentation/urt", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/pipeline/candidate/who_to_follow_module", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/marshalling/response/urt/item", - "src/thrift/com/twitter/timelines/timeline_logging:thrift-scala", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..cd00fb1bd98c333f9552ec6d15f2b6a63815ed02 GIT binary patch literal 36922 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 Pxk`{B5tuy=cY}BUfxHiO literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/PromotedTweetDetailsMarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/PromotedTweetDetailsMarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..b4c4d5c3427917cfb26a1dfb55eebc4ea0b3e486 GIT binary patch literal 36943 zcmagFWmp~Awl<2pdvJGmcL)S`cMH0Z;IQxj!9BRUySsY`?hXkAcmGzpd+*)7&pG%0 zDIVq=gyXU|?e~U|^V_Q9TKO!zT-ePe$sV zjutKk%pUf3jY$ehtDx8;|nyB?8Bu@+sGPLr^A&Y(T*YlW9EqV5(;>ctdWp;_?24QMi zGJM`mbAz+)*7WlmVT7EC=ja9|X+MBP(^ST2Vvr1lz^Mw2L5Ef6&+z1SP&lfq9*xlK zGJM=0Q+9iq@N*}BknoqvdRbzo*37g`M`#P+{Tgn3t|9%|xFLSPrPghdq2Ad_!>Mky zw-Ci+2oZqxeb2s!*?nA#;|Qj%H1b+acLT#FWbXuE8%$j@`vWpd>&-zR=Xh0<;bVuc zPPDqO^-+)vzSo@uO2%x-Q28#{e*`9 z2V>Ba^IVrV7+BNNk!idNh2ZJ0MP;O`wNt(0~6>KynCd8 zsymtI&Z2$S)xbP6dB$Wqy_Y1S0`%@UlPB*-#NzUIlES^ui^c2vB4c;tc~4jhhG5G7 z=%OdJoajBMdm9j7V2GffM$Q&?E-cKykCpM0A0XM#{Lh4?MyQG%nlvN}mJKC;C=>|y ze4RKgasbK{t#oy&NE&G4^b#MQ?V4FGq~{YXF%;PaX_@NG2j(vJYH!kAG_)J7!6n0Y z1dw^C?*!}ErA6FOpom&f-*H=Nk_t0yU=Hfh)t}CYRf$U)(c8X>8GeNZCnZY{e)Q#o3|7EW>n$gjg57u)_vGeofxT`HgB$Ut!0?r$@H$Up zGo)Ead`Q25NmyXy;U zw)8|h@czy1>B=~1vu2)xa zk3oI0g8~CX`+HwZ93B5?i~6|3Dl1yY69bgNr!Us9Vk&s?feT_Y66^Ri@fpo?W8@#= zpjz2>fW8l5*nFQ^Zo&oX1)dtlo)*O{VH*@bYG98)*%7yF#Tx-MRcRVyQp2!(dXNQy*biJPC`bJhA?^IfExEKx29bVlg3pb zC15k|JfHXoWrOJb>88&7Cwh*Ry&kUMEQRPXF{9(*p}P+Qh`_$ zxmy&dM*;DrXB8NeCFs=uWi`4<#0L4HWgFu(P@F(cP%FLx8Q| z`v4l~L|Y*|<@av7J0y1>@n6uGFYMV4w;o)D5Rcqpc!4eT@Wd%6@OCewk>kVxEq0qJ zNy3v_o0I~f8MqqWc1m$61FNzkg-Y)`JJMO6S%}Z!(;uz~-sW$9k^J+-cnIpL(1Qd6 z+eZ5Hf^`Qto3ntfT336}&FS}Cw%fggrTqu@@er36`Y74q#RW27LDi;@YP?;Gt9Z(&BcY^3pInie z%E9RQ8LIoCmc)*KGF?*J-l*gF`uXIq=3{zAEJ1g8F9HCKwZDe>RCPHIoKxbUtcGx5wJ>+%+&N~k5e&dXvMnCK-64K+tL zY*V>euFxYaHSl>Y4L9<=mzNN$2*#?p(Viu?Oh8&_iqwm|$_l*;j}z@ssUxV!#$QFV zkC^Hw7O!(^wWq578ImkVSs|wdS3i5w`f*9;6R8rj2cS0Toe?qawVoUUqnm%|HzfiZ zDuM$gis*bu@*Og-7ztV*A**3?zblRD1WTi}XI}eF-A--+PA9^Z4xeAOtmw~hngsbT zg{`|IjEFYpV01XsSE_n#@gs29G{E;LmR~b9`PU!6&t-?)48E5x^N_G$*S22!wf&3# z*V7T|1d>Gz=OGjylrlV+Ly$PbYt8^og=v)|bP`56DOO6}9;)ggpX#NyGQ|qaU8p5$ z_Vz3*&e%spBXsG^?_5F29J9%=ABy#Fuj3qyTRFZ8c+@nZ!EJ41y1)tFpAoJOGyQ1a z<6mFnL4e85ts#dTE-9dV5DHx^sNM4S^GoXTx{2c;MJ!K($y&HvbIuWOdjj&rPIrf8 zi740h8$>*98q2h_SH5*%g;Q&la@cAirmQ@>h)uaryOQJ zmCf7pD-sd-xfc8li$sL<8@G~Eshr?(l=&;xyxnP>%!h!TpKMmBya%z4n=23$<-;h*H^olGYYgPli}}cfd(96F2E*VkU$Y zs2@D(CQPJtwFx7pZ?CJ((WKmYW<{7!VKS{vI@!{sXCu<5S|p2Cyqx%ml#b=T?~VJ_ z;2H_;j_$EvQXp1zcl3EJA@vZ3YJR(CB`}IMnl~nAFhGak7##czb*vYDGdSU`0bp{Zy2 z=auN-Pk_M=TB656OEe*9iT>kC{Bwix_v`V`%|@b_QV=WN=d)LYzK{g0B8P}~zw)Tt z>7}a+eL|#H;%_DPH}%%d86|cCcJH`-vuW&SCvVjjHU#h(8a@Q_Mna%s&4wsjUz%R+7T=*Yt9CE(wY&%$(FFeXKbAkf`vCP}@p1P=`R-nCl?gid_{|@IzWH z{&O9VE`*NcO#D}q(Cn;FUhU);lT|I3ofWoQBI{``y<3X)nt^@jP_;|*#s(BzRK`1J zhu?1Q%?bTpU=0y08|DcmiuMDZ74)MpjG#2{G9ddo?v1U-b}bjoz$D$fB~m2V3u`je zwjnQzIU>Y(sp`_yf^9?IP1^F>T+bv9cqzhv@`i;F*%gi~Cfwm8(zaC@*Lr^})OY?B zBY>2~9>-;+MDxISO^$cvdZrqR?;+^>f7Lpw97iC61q{qk0~!qVU$u7mr@tGyt5xqz^Qn09^r{^Ie8KY( zcsMxq&^^scUVU+RIZYQ?90t5T#JoK`EuKXei!>ka8r(muU$m#pw?7@u{=8`q4c$HR ze5n(BwSQ~d2w?%PkQgQxpHKH6hNkRqkFOp#m%of3Up9EI+3^&MkW}>cbSi!33yZ9K zySA>^^?sUP9rtqoBJ$>_4d_R|Yu~*(xbb**QaaA7<~(FYQMR6sGi}_8WXdyltPoI6ZbB-?gcK!25s<>#-bc)|q`0o&I#5baUyE zM#M9I9RYM^@_OO(qPR*Z-=%Z)?DAY$6Oj~;@e5&j?ON+|_m8f5dcZ(sB6($_od zdbyE!v{X$Y?swW;XF=Trew8Bek;ytCdmE^J=r--G9-pU9u7Ccd8wx~Eqr(5x4&Qmc zf#04Y0`!bfZ}$;6!6d5=kG-xzg)R&|#o(U~tw#;5t`d2vG4j1dC!2*LGx zc|Gj6^n-i3UVr(NrvF?6T<+Ku6smMTI}J_YInClxI)3vtJOc_x(PH9(stnLzV3cNHYrElE3F|80Dkn|0s^9h>;y1I2;51&{M(jXYB zKZFO)ssr=3D3Y>iTO{{s5QvpQL%j?lDm4JmZwHJo12*s84DKgnmSBY)6jxm>An@sn z+9*#pUpfRCMM#pXr`>1PbYoT7`$C(C6P7Ab<{fVOf7WdJR$-ax*qA=2EFSJVxm4g3 zlsv|upSM0Onp~;V*$kvw-3PsO7*s7xKb_1zI^H?G49nhLiJY7XXQ)Uw8qCj~_a9tc z{XFe=$>3xNX(cSwihAom@F*kBxT4hvLR|i~e^2FiPO_+!-kcI)1NAM;mf=fHnG~-m zdK|bUu}J}YSIq;$?N$~dxi|+ zq3`HE*kreG-^F~0jA&&e3n_RLgwHI?HAdDXpVi4?KFFxZlwhbPa+C)%?qe~K$uTW{ zfQwgb>#p$IBxJeQ9P1dyTBzt?OV0;avAf7_eksNOs{4iU^=aL@Q=sZ>pkVn+4I9U% z?2@+qP6Ap1H{=I6)pP_ZsNO?KC$gi2{9wjL9aZtzl}~hJa8?^wJw|X>MgCa9o@$~9 zD;;#Ci1r&5nfWqssuT=Vv-P%0@X zj_!|CT@YFb2=^bUe^Nn}(wy0ldHff_nFfb{JE)oq>ZtY!|hFScQ zy7Q!6#G0u2+rE$5 z6ftPNktB(B*kN84P127(6@GzGudR zsK3Fc;6`lT8I+5^Nu+oXZWG^WR=mH<_VBjvt1^ag#`b*W>gVHr){;PpTDaj7R#Io1}bwUmIsle^l- zDU?y1u;a1@4@jtCdJUZIQlo|Rz?av7^CG3garTW*#Ni#XW9h0N#?!Z+pXYNjTVj?@j0 zPwK#ilWY3D{Zq5r9<#`ES0};;0r|n9oqaz!Zk+cl&OA6)!k(+zga%#qj6lIRcPC(; zMlcPFyLEfMF@C${^9-Kt=U3vOiPe2L#rGUQ<*zf;DGa4iW0>#^2tw>tV==!4vZShe*KQ!f5nY;EUVPy_%^M?oh zq>T1YSd&R_5;i+N;z+;pTRqP~UksA|O3Zom8J6$SLwQJ!aTsN4QyOk7*U5j2hj|g8 zFW>FdzRg47`&>l1$ayAZR)rhI*7UCEIaYxOxgewYSdZNl(iO2Nv~SB{`uf1L5t;Dm78Q&=c!la~1%1eBI-YYN=|bV|pXC28I~BY%5Mn`@tTf4m;P ze7zhR^lE=`@&w+!CcQ13JkI`nK5}F=>3D4s$-HHGo*stwdIdvWPWNmPhBDf0Z%!G$ zA$w4bd*U))3(hY&b#XzFQW&Qm&%RATk%=T|>rg+*^@0Lug8i zt;SVQ^<51y3Yg3E@$=8vUg!(G{G#bm)xvIaLLc|6f;@nZSz~q*b>7(ceF)zaaoB`& zT!lff#b)xV`N2F)g4LQ0FA7ayAakBTb4x;x230eL?tlS`7H+Eo$|4UNzj6%Y+Ox9@ zXAws^b+WqTxv%zggK65}a`@3oGZ$dv7!mL15$GvtC@^O~Rw?7Hb{VJJL&=SyTqT15M}{Qe~dN_kzI4|A;Ly_makVIYSr4ChSQ{?4cv&57L;JU9>#d$uz$l#WpaO`qy+3trz$7Oua zw=qV2wU}QMn2t$#_$ykCT0g>y(MnPyj^`X=)H_w9ZlLz%zSk)DN)3&c4e=j~EYmQ~ z5F~S)%RzB@N;s7+pOlv2rq>eZ`e^7x1^8tiJ8%rds<_~hFA~;G8{{c4l58&$(fdH@ zh&|IK^0`19$YBFymC|oLE&8vV@A&wOj)ZmeVg#b3r?n?4Wf5=jv)7x}jQMFpkfH>= z*%Ah(4KpQ=yl=OSzklnW-fUXsT0J|9Urf{JPeSEbTKPJy!eXHKXJhu48^N*u*C z{rT^o_QFc3KAZjUdT?sx|CM@Ep7JA!Jf;l@7E;3A(7OaiNJrXs>;X9Ym{G&LLGZbM zT#I1MJ(9&J^nAl)8M1hX2y=*eZ$iM%O5Legk++@t;o^A?+lWQ7Q)~kzougC{A637K zQt}$%TMf=ulH*+k!`=%G5W8@}{Yr)IDC@S8dwvw9<7$T4voNz-vyddNdUPjl%yce( zg*TJ7W=|j-bnh@^{&M8jOk-xFG{34!y~QvICuMOQBgmP7HwB(E6zZULgDomG8mflzVbZ3g+W%L=r&P0MzKLM+ax=bdMHRs6AX{D8JL zr|F84>)}>q1x3s5!4aMg9zskHnHlN`S{>|Olik^;C5|Q*s+4{5$lfYOFe(KG#7FJL z=z<5>_O6`gkE*sm-ce%UOUufsy0wydPccd_lQC6QJQ^=H7Was)tMzOw*(%`OESD19 z{fN5b%X%wAu@}O#?6oX($m377B&_QbC469PAqU3a2)UV#`WWlvEVq;zk-LZeU86nqy*@5tV zazclH#NmAkDcMZ}3mrE}YLQd8C{IMXY97N(DwI^FWc9!>HmgRwgHNyLqssmrJsuPC z9>3WH=t<{h``O^r+Pi!Rdlc1=S51?gKhwbF1*caJJ{T^L$FB&!^OtxQ1tlV`0}lIa@zwT%6t0L zAmY!d+wTzfROOtBYfH<}nxjb?m07V_5N_%A_NQ@j4_Yd%`dRI-dZ&*P(j=(3OhN_7 zqin}+vYIDZ8oS2GXGdLqFnPp*oO5PhZ$rB)Q4fSQJt8IF4x?yc8hKvo7k>!o$x+%FtS@o{TN=ePSLpMFb#Z$qByxcb&R<@ zWCyI1Z9C(GX%E9!jPS{JilzCH-=8<>TrKSnY+VxDjZ%td>r#u zc7&)VO#YT0?b6}TlQVe%Q3uxXBFN5BRJ-uX^$8#I7 znwHs?z}rO>;hG0^j+QcNozFa)pqEG~ye94hWlVYXGq$ zT*M?0lg6d7`UkRx*q0ynl%F@Gsq=Wed7X+}KsW)1C^x2Gk-tGH^C^^l> zg04i0MXuZM9nRX~0RE{9hz)=4VZ;&gYw2XFYfB_vc)`t!O9J{U7t8G5B`TO9INTbR zAz9lckuuiZhhMz+b^Y{SLsj7E#vVp>Wh)dvk`v|GnUX5Z?=lUjU)AL!{A;sMel&+F z^%Gr2i!-+ZASp#*+tRa^3*JMds@rUdBvhZU}?ywp5+YEH|Xs(w8i{3%-ak zWHq?ivRk2V?bZk*ho#tZxV83EWy_inzS7ND=i=Z>v?&K@Li%Nf4RTEqb(si9`!{K_ z`Gy|(@2HOqCSa?Mud#1F+(vwBUq%`^E)7w@RRMs~agcnaJO4;8`73?y-|0Vorw0*> zcb55bUpstKrS&VqFw>}8EI(_eTb)oCt3xmucIXsA@e zc@)AEOg>k>vM6;{q+H`FG-p#5RKjC5Z&#iuoNtKWk?T)0C+8AI%&c+MW>`lQeWI?+ zQk|lSf73@`jeewY5}NPM!4$iw7E#5Vw~?Vy&t&-+=|#5{0+FT6GD+suqTX4OVi#&I zU_JL#-G2}sqrO#D^ELLfl>15=O+$pk2 z+udb1tuo7xNpUKozITrpP>e$*QR5KSW!!h0FX8X=W7YOs=G5x!(`DzhaD#r_@jJ9( zIy~xf5KWCz$mck$Jf=zk7ZgM!D(5w>^`bWNHULRq+~)wu?DQpJG=f#;k*a>$^d?^k z*Vjz5n71o6$4lyOsFSWsmRUn2+<@O2d8G%15W1*?0(5O`Ed;{JBdxpx&Wzqq5hKTT zm07pO_~dJp71vJBYdunA&kh_O(L!9VOczJ^pWj}oLoqI8tV|&ezZt+bCbR#WYXHiuYR;bbPM)M7DGF>zD z^Rr8bM+^}0)7CpKu2|rnp_oM=SN-s%aN0F|M2eLEVKe#iUu=A?|DSBMBOU=f7c`4; z^@kset8H|lC^tVQ9a;Z!xxoe>J>$j2`ZukcyT>``TLL?C@dl^ zw^`v#CIu1y~1x8q}3k(B6VlxAtxkg%4SlISI$kWW=Kc@BdzR0knYUP?5WoRr9b>EGrM zh#D27dZKZKCZZf1(3MlpHOsx=LTIqTSLy!GYSNBCWu18h9gqABj7)F+Uz*4I#b2Z< zn;XDFl9i&gO@tEzBi!wi(oyBed~R{ZmGtI7wJCO;-t2b!@!SRBE9}-vTLY4Esevv+ z!6h>jR1;8H6-ncHkDk!FD}naKG>7zcwEWen_3`qd#t+eC&bJehik6rl>b;>8MJvjX zR?t07X!X<`6=Fde-6K~6T+EuD(Vb>hCs}fDj)aDWSTLjqTNp4EJfmv?i3&h#&2=%+ zmso?M^f@8k+*6#3ua!}iG&yiYb?9o@xL2qG!*<7CCP1DDjn97+k{o70a}OHb=qG|v z?uZ=?`*9#xt64xjtn^)KYivHj){g;We32&u9+dp$@H^eQuRFcRf;f;Oz)WpDL9ghMGTCe$?G#mDym~s`4(BdcPz4Xkoelb zqZJvYHz5-UJ{YGFEtgY8&}9*ho3Wi=nS~Ex)orgCGE!$K25_%nLBv6%ijz8nsliDi zg$<4%lH<%`<4D9UE1EArLpZ~7Sj7A~;)o!7&(kv#KKR3X$4re;x|##F(VT5C|IC9C z1_(x6`&FDf114cPLv7aSTM=3q*0+EJFuqt!T5wZQMrlK|+OJhLcwZ*m$m^NWVg+=_ zy$@vmrjepNO;@F8F<17t?`5IizI#Kp<(+&_%-PNf-M9(=^er_Cf&?AdYJAzg2ZjxP z3K>*3Z^BG%Jc$@>8k*u(IQyH*1L@x?)kqpZD*Iu7tAqlt{c1Yg`qPK?z+3{?9w9&m z-1P}^B%t99GAw||jFc%%TV6{WNy<_nP6rom0Nm09wQZ{C0+CtF4Pjy3r%)|4RTso46gbKz_fGf8Gx*&Og9GjH`nWTpHT8v zUrra$^;P*Via5^26`hQ#znD#KL7l8nr{p2mFx|i`4RD9sW32wt{SdEXXJLqGx|6Ow zMAK!RG5T#c3D1hDjA}|Yqkfe%h_@Knrge}pZ)8{2%s>MgOyIRzRE-}nw>KXDxRU`& zn))+|_kSiOP3|+@99$0Yg}Y!J{-*j`foylKkbyaVKfo8o@y@FQOk@ zpN$~-k&WO#3Ui4Lh+IW8Fem?1==MJqUS?c{PR4CkaC@obik+0aa~^dr(TBYp$om4(ZzH74+qxyk(Rb~EUd-F%Z6NDgfLT|e$}4#_sO2NNk#F& z*4-F_7WPRdm>B@d=d3eU-^!-?gOwH)(t{G4M86^8BZEu$;H|(|{o?h#T-8c9lU@Tp zMsW20fUww*c4VoQ$V}mWbjX`%7+JwpM4xP(`8njooQ*Pk#_e0xsXh!33X4FhmKw^% zNH)v}9KivGP%3RxUPkmf$7U1R^x9b~ZPT2M8Dr2^yk5v#&HC2nsRrssbKV%fdEF8x zxyRccgRwV+sugIEs@i^83WvZk!c5ZG*Px6i(p1j zc!X)8$khxuYLlC9JM_nMn-x#j42X8__G0|rWf#6{_MSufi~QDg1VpX|`v-Y58z*K2 z^Z!9UV=TM%5S_BQ=KL3VpRw$Ns@6S%R(S>`{K`f(H z*~ToGuF6THyb_VCd;h9dV<)OnUD`LUn}Rl>Qb!8AV&UX<&5+Rn52n}v_#5$>Id3vF zs$(!J%%urNk>kcj34AEG$90B2QX6Vp;I4^U=AJzJX?T{kRoMXn&ByO*8t)A@ z9KS38jW8xZ}VZa`i8Q z=WLJ5ep)%ofrJoxIi<2hQ%KU%|E$ zka@~k=?0Ci06Eiexe<`;btal;O_XB|G15fF_5;pJAjl+Uk@XwDT~-SbaXv0KzCd)ki3PP2A?S^AUHIz$ z&hp72c*`0M6Xdm2QUjI@wzjSebLc$7L9^E&-q@}ARmF!*BNOKb51`FA6+Q@wUY!}V zS-lB9Jvc}>1n(ttv=;=grIx`UcQgPN9CTTla5h=V1&_HH!Y>%_O5^AM|q)eXJ)jmF}5 z3o|*yp|v!=GJsgpT=p5a#s0j`1AGG}=3JcY*Ws-x+xD-8hEx;OUPLrHv<|R1$R0#A zHqs6-T*`3VJ?I-~7Fw>|pR9)do=Dr!x6KAwhm$ych6~h&qMaIC9X%(*iGzseK>1+Y zFADd8qjpod@F*O=#42CGR7LG=z@14ANI}~S4{&A~43-hZBX~pQV}u!#4zMe{K16wz zbl590t47N4|A>nc`z;PH_+0$Lc4X9ai|A1?r#0v(MK5t9Uh?c3od5ml9b2Qi#xxxPMHzJx)L~*#l`~ ztVWYl>Ol+VRZ55fp+OG|y%j&kCPpghs4hF8a^mCbj~fMOSN{NB^RC}L->BD$P_eMM z2>~hiZXhshv~NUS$f0KT3-Y}84ITgrhqcS*`PDRP4ZBW`tZ-N)k8VAgTg{5w+-gqm zi#+I$!|;ykHD+^_XSW2WU_Udyxw*^vwhLUeqnr!Sd__83^KBCSOv6fBBBXRv6AKia z&+o%O4~u44bt<-5%W~|*X_{*8z3u2hSVFuEJ44^3=qipv4?D|U8cctpnEFD#j%V~_ z&o#%FP5%Kr2GK3{vC)D5s{CGDsnZFbts8~4d(fEEkr&-YEH%3)Cr6rozF+*YNIeF@ zHi4YK%1$e>%*ng&S@&b$cZe%Q>aIiYJ|)?SX)s5*iRuVx(t}Vl-0^g8my3oC@+;eJ zv3UL~H7U9+r|rUkmESxJ05OZw<{a{aMeqZj%;`glDML4cv1ce4=*E^3Vw~?Yd0y(; zkccx*7Ec=LQLDHIi#`J7++R0o_kh0;XpZT^A5y^_!XI3}!3{hs|H8OIJ6|efw$ug0 zJv43}DP}&D=3$+;oJ;jI+OB^((AtpyrV5~znW%=G0I)k|&N-!+8u{`Z)ZF$ zf6T<*eVd+K#v!7S2tkbdi}dDCDx3vX03xUekQ39X(>RDJM7b2SSD1KM4b#xWug4n|*%u9z%Wmk$qN)V7N$53Imis16pTDA2AXY9n~AUV3npj_psc zY&%~#`-DZLeiL;~SG!fFPd$$j_~;!WcY$i){{X#PdhAF(7s4(QASQ-9Tpk*7jayBO zy`ZT7Nq_ltTVwY&_@VI|V@K54^K;L3Vvo*$w`w}u>z67nM`iQK^NNU!=wJ17ge^5V zE@JP#eDOWE_noy2%Tj5evt1kLbXkB_p{WfJyOy>42p57u@Gd#Wd?;B#mE7zuSh3NO zw~re3Gxz?v%$)8QsDXjlWj(`5eeum^p>vDFgapgX?YplI;(xb;SXr)JI5a3)kz#qpTr&yV1=+B(2B0tMlqN1a@e!GHUMLZiv)+o z;@PDk!qN%{)11RQAzAl1)j7oQYTFTHl3)z3K^w?eZZZ*Cyy?{o3f z5r9RCB4b2fulWb!eacNO_#eT6*`?4Te+usXE%^Mm;3|S+S2wl?&11VRZ)g#95-o=NB$83Pa*|Q` zzkoe@tCNCa{spYu_Q^aNcX9{}`}z6?s8-am!7GCOEYEbGdnoGL>5l*`87cx1&Bl}w zSi6}E{R22^00EeiFjKnq9$Exh4GQ}iuiE{k!`tAz>p@HjS|pO&a#^jgo=p^5#J6)Z zk*=C&3N)&Q2>ijPY{ZfSa$Q@xWp#9&zt#`fi}G<>|2jxivb89-dE^E1Gdzy~tkUkC zE(|0ANmBro#H?e(xR>SJC-e##=D5X${{AQSwfecl*SVmJIoGA<;ljY|p?@{=f31yM z{)6d|4(-?u3aGw00N2hfP)FIJMF5`nm!MB!=+z(ca8Gx%{6jh~a#H&Y*$Eh?_mCH0 z1hlu_4T$i;3X`x`>W_*A=`TiD&^d*rVy1uA544P}WECxz)G$E6Q$j7#%e%X7M4cWl z=7P&Jrv(U^^ej+Ti8XQ#>u(TRABB%WYGB&|9lBSo-W^K_ zUv~L41L5rhx1f62rbejH6iGWGNY|Wy^;od5lj3c_AT_V6uv!4F$VoTE{W*&oBvbg?pp7czZ9H`+}9TFxKXp@!k3-O-~3x&#`Q6mIP` z6=`@4>&1S*>z9glBIDh_{%-&$rQZNY;eP-)-nj?vLJhaW4WIN7M=x!9@KYwz7oPW_5n^_5N zL4(X6Y_|Z~Bf#4a208yboepw%_x|M?2bGZ89|FI-1L*Dvi4|cKD~qTt2rCnxm?TZf zl-=lsq_PUWpG#UUebkHcd4!@f*Jczj z6^qRGWUa-Omn*8Pbil5CeYjrOs|m5(h$Xm(ZFQ0XR{<oIt zP_G~ujL!g6)Y9@5`SKIGyb)~eYOqdh8qCRR4h|n$^s7>$xQvZ=%=mR6qv9rMB0^Z4 zt500&mOY3)y3Q*x7!s^328W6SHDS&GA1WrGG^s)N%cRjf!0@w&4(67@ z3B`&?Z5>$cWe+aS1B zFz)I$g~V@KXxLyv=3P_vo=UTbjp3@Z2YD$$xe43qP&-xh7Y4&IEkpg#sog}?2s^c-nNOf4=eDwaqy zhR3#i`@)mR>e;~+$*0Glw#fh9Q3w%7pWEQn7nn*=Wt%>TRa6L6*quhNffIPKJ)vR# zjnPX-2NH%_vnYYL zl*uCT{K#w1>fK6W+jEiBY3&rKOGK5$a7(rxyLd3BH0;Hp{cw3az1(ba#zs()lc?(pcK}xkaIU zGM2LRSV@aBG`QGA1&195j9rr6b{ISHl=Pi_2&rkBs&2B-^ZbLkQSUh@_Q`#ktQBvy zA6F$Gqe!TOerSDr1M9^4)&sT^C7vsKV>$A};3%C8o&b%z1e2h|9@hqyXacl6O*^R0 z>i8(Xao7f<*|}rMOA*#1;^hW}N=d-iUkFm}_8BfwD}tU;r3#emaM`1CjY5 zFzHH8aBNWN?(-kag>kyh6iGuKvvnv6SV4aqx9lfBSkTCi6Nf~NaJT!!N-({ISfK*~ zQvC}E`!|r@zk%$31I_tObOL2^U#%A4=pxrkEg}T%aAW^K5G)6+ElwC$ZxI?pv5rI(bwvvP@PQ>Az(G{+p3my7j~9i7@1fm60ck5j zWH24Hh8-t9Dm}uf>JJE}ED)8+RV>J9(kKxE<)IfplKttx7?ox!@ud;Zh2zVN45$)= zdd135;hkQ@%oSl+A8y5p;vjrTD9ND35nRck8#BdEKzT9ivmgg=6ZmA%n{K%5M9h)W z2*`qrI{_)K+2o~%0VzBMjt`3$ByXty{2vKp&%jweE-)~cY8Wv5e}1>GW&P=+l%=JG z*{450;rBI2$(OD>d3wNZJQ`HWN(Lhv9rvBWfEY3y-@Qn^y%#PopEF3Sia+{5-wgVS zUo_hvVv|>k@!clU8~6QzLo0AeuxcTD z)9>ocXcs`Uxps0JakIPQS#Q|&b}+qvn*R21_V)OC?B4#8Jw3i|aQSp|+Fo6adUlq5 z3;MKwqjObAkjV(Ay}Pr5xG8=8VD=S&nx5jGu9U5bI__@7vpVcPWz5U_+`V{mVA8ru zHFOYha~84wQren=Y-Gz45qkCJ3KJxId1vEmy?YzYT|MsVd^v0RRJTOq=O9AUy#)01 ze&M#ha;-J;)fcM1^((S}NU;R^`Mot6__^Ecu8#W_bU!e+2Al!?JcW%qO51Kd@{8a2 z-b}|`5{9#b(?gq6_PzXCI^9?IU7Y*VZ%(amyiRzQ7vd9?4yEZyc&}=Vj6$cQ4+vOb-iGJ2>%f;l(wCkF$6zEGXjG${C2Mn2U~01T zq3U|?%Jk*I$GP?Oc9W#;E|u?^jqTwTSo?C@|7)f1?u>oi@sVOtB|Jb&bF&lY(c!Mm zLz~FK{KC3hexb?yUafq(9E)>mN#yOKy7|)t4&X`QmD#Y~J&q@pm=5V^yY+6A{C2wq zmkO6rnN(h$NY%oJ2DwX8h*qY5Sq? zX7~UWR_1VL|`1%VYWB zHBEbDtpov}{FsRd6-%B3<@K$8eY-V(OkRiy_h*$aPemg)Rl@-*0WM&e%4V3t#!7N7 zT4`?TYe^=&ih$an+iiL%g=)Qhi&|Fpx@h#76%X9*(=u|-JO~V+%Bd z2O8qIy%F)&CVcIB*p@-!>aMz-9$&e!m#NLjx=n32!dV?WJlVPV$-EEEQ*@N}aDMAF z?LI3JnEqO`>7aV6XEyExXD7u{trW3tqXmdEi6$%o_P~4X7tbFSzZmp|l6W#cQbG1w>=n;D7y)wka$6W3 zk*ka#*6|VFw1ulS45x$!d*ggk`l8hU!)mn&C``g5lMslteyRH18M)wmss* z>(HAw!q(`qnVXF64|cR2nx=WC(@%<KKi`So-3y%G4_(;!$eXLRXA3t-tBMcCBQ>H{Z9Mv3E4z;;hG` zpqsM4JvA*aCYXncx7|B+8dbTE3kWALLwir26hH(i)f6IVQ!MF0SD@R~K`dao>jC8? zSF8NR0$;Rx@Oz~hjiVgjA8h%m3$TaMl@X=(W1U1#n8dohcNhxAsFB{1hu5Z9gW#<| zcL1Nf*MV3FYx4J!8_)v_73*X2@5kT9=`o3NMBF+bD{TTpQBwy^(5-+bNKZf$v7m_> z=@w|me?t&1z%_%tq!Dye?feegQ_NgbpyE&zv8V z2vhU;4dn1K6PD)mG`(^14)V2e{e$!HovgoJAR(J~dCYYA-Koc-|F*rX#4%h_Li%1c$WvU*nJ!o_x0Z60q(@v`{&DA zW*4?#X8Xp|Pv$Dvrgrl$SyjYHJFOzFyT{1Hk#n2N`-X}_tmd1OHv~=PFEJ736|b$# zo!d8;F}^=X59c4pANH27pRH>r^__{ru0qsWPkA$@e9%*$Z!B7UUiezO-9yYoDi_8L zZntjwM`Om7((S+dZtVF_&AKP1aGg5d9N1?AB_C$brc(r3*ThdL#?}@qH&c99+wPSH zn=5~geh28efSzAh(}<`1R@0)*PGdYzFG#+>Y&|npiF_%Bg(6uI_=SCTh8wD|Rj=toPSPsCo*hgXc#puo0zfSeHPbC9+uW3v;|+ z3sRPV1|t;fY@F{7Tm=SEv2IUL*2RF>qJUy8WF;jEK_M~^Ls@Gp(&H86WsOr*jxE8m z&sQ=O8Si~V>#c+{TxvcE@(6#KCH&<KB}$SPD0_MeY5r^H+*)J0~K-hdJrbFT4Dio<>T&UAqZ_ueBq{uFlIo56{mr zQo`x`z$@LC+1;_a=LQi&ZbJDo=I55>GaeQ~CI?i&?Hp%nw8ll3(y+%?E71F)Wi87z zuF$Dp!XY`nR*>2umsmQra_?}G?@)8OGHd#33bzsZnHurPq(O;KxpSPPnNOMHxTa_4 z^1MmT(KQSm_dP4_rMcS_>S5Tife8=eucnE@GG}ihXFw%artOr2xhtF+8i%5gC86^K zuh5YE6S|mKaLWyx(x0KSo~!lL6U_FAx^U1( z8R~bc6WaLn{|I{v;5fFWNm$Ix%*@OdGmMyJF*DjCi zyWhXNe@v(qiWp^O=IK6Dr+QA8-m^GhbJ_j0t&7aZIldK}Ve29*HJ7It{%CBj#ZVtq zU$Fi}V`5LBI$d_TDv=Np)r+v_AljVl$XR31+S|UKmMgRKUU4yanRyGq$1 zCx~k;eJ1!-x3g2wvonYubg$+rXnoJ-MoPPMVqC@UCTVH1CCcjMr7e0Tccf6Crt|7E;I=)0|IvL;gKnxo4@@xJX?$F0gJp?g;< zpg~OEqx?MDop@5tUDZdo{V`iwjeDB%vE?%%WW89^r6)x#@@GA;Z?#XFFwP!oY$D&< zf_OljvZWF{HxPFeh!7rioU86eFK+i~-yhOmC?muMo8jXM6RhZjP&RJ%`gesML)kj| zd@rMKmGcI@os?{zyZJY>CY1&*PVc!GWLZXH{PC|evOZA{v2(?Py8i{g1+x5A2rU(3PqJ6M@|Y8Ci97e>cB7U z9vmga%nU_*q=^Vu)!9`3#UH^dk)V$7>S-_TDI+>1bU}u!H1nq6XBiZ>XTujgGqrl; zZd|P@XSO8Gc%vt&VX@)Zh}vzii`LAB+8f1VQ%%?q_S|TdvTzzo!rE2*R5*~S_qHs` z3)Ez0%JzGtVaPo-U>zWhUlU`NYSzplU!&AT_xXNt;rA&mzgZkRZS0%;rdV){*q4NT zgNe%Y-Gp&O>9cy-QGe&eApC5M^K4eJ#Fw@U5AE(atjez0>e4|h)8}zRXV1=tn6vT; z2#F@mU$+X{_ycxwhh8d`{@AC_RmDvivNQT2hKEaXI0|kx5lwu`LNE zV*UK;5*l)_Kns<5x$ms&j(rvfs2`ceHQmVa-peEx5v0;pvk6)`tgt%DDp9UZUgE?3 zafmE_`C2mno%Wll(M8WsGoPvTa^JF6FS=3f#~h22#kyy(9r)jF8CZU=BO`AClTSMe zU^!DU8ZCVU1UJ5RJy5`vX6TYZ>UTn{)U?6i@U;xqzCZxKOo%ilpD@6|8)@`(vF7bk!eSF~S0W7SAhX-K$H6b4iCs2kVrR}!4SXgkJ_m+*TpE62%&`l|Rj(Ti4Obpk%9__1G?cTS?rAv1rJ2D@i z;|Ph7j@Gn2FK9?Ros344`__$6d{%8g21rhbAuzWO*VknFYknDB#iVK^?_Y(mlc(2q z-(4YCPI!D-tSsazm26ec^``1QB2!mO06RPnhE@_B(DD-O&?=Dd6$!mkptT|@4T%z7cW4PGy9N3V-5 z`9KmJg~?}$&F)=W;w!`reCILi!W84LhPcf^Uf>8V(IRc!Z%0c$7{TOJwO?GMcDJ~ceYH~W53LI;|_1R3Yh$aTFC=^Y-Eo2{W1q=_m*{XXI&0<`+JEYY1=LSB{jv- z;V-GbN>;k~q6TF+jBc%&zhYcP7Y_>WY(+tAWZH5q06Ms@9QPE!AMG98lwOXv-1}_> zfBpZn18_v%<$m38=4|7}LI(Hu+J|rBUV~H4c6A_I$wihe;9gNE@V!zH$a&TuXVPXM zqi=+FX+i!4b%n@l+N>;B&tDg%GtdnRwLU_!k*R-o#uL?5msVE^9EmO9NT^&*D^_my zOqB9wY5p>4uv(6i`EB2t+MgTSF3{N3-=5=8%7G^HYl*WXnP_j&cUbwo&HeYSN2iBe zOSTtR=*~t!Tk0Lyj|MB2`{PB!)H$T(6=u{#Y(|6BHuKc(`wA?l$mNc zhiX^{1;NnP7=%s4V~|pP*WGIE(`q9m96snDkINuYDgOCq)#@cuGoCgW?Q^@;X3RDM zF73bX*(sPiE*8apxVhUXc-jE>PN@zL=-LeECMwF*kng$=(oUCSe|ERg@U%$-5Bcuj z(#;7{Xl7XEX_LIR)wqQxQSsH?W^EErafs=LtO3_*%dC{BVQf&>=DxF8VCy#B0Z4JT zdfY;5C0?j|7vXX-lBtW6zMFFjRP0!IeGAWTj*UgFyLsZ^LE9mk%;i&8^MzUTaWZzU zPl#!CYPP3z1hPZ5j6=0wt2dbekfOWIE$qHqQJ@3QuE0Y9yu-At1ENdcEbnYfE0kdq z0s^hW<U7>RkhWf4QipxH)``twQRYWdVLxYGYD8X)pSUu7`bg3rdp#Vq&*dekBGMctwc0Q` zQ}H>;UxO{sj>MFr&3{Z()6M6+x7#b2fIO;}OdgIo6|cBiy%}45zSI>tc_77zJtZQ! z3L22U6M6n=Osgx*;5D^ckk$9OQ>{cK#~8GZ5Cp%EYI~qK**oV9aO#${ludGJ!7S!R zEmpx_-{tTb3L+J0v2=pbJMPKu*TW?(iwfOCrmB&6rR^#JlmO8y#k9_xh0fAW*b-_Di(eUeSYKAd7ahovFBME= z;8&VIY082nehX91&vNrr56I#Fv1u{|<=)`tOkEs}{hJ zZWn)r@l&1A;K! zhoY)D$de_W7+GEAd3G4{g<2d0!aAQf+8Kvlc*{Htgrt@DphFCTd<&%?h7=543__nJ zb4JcuBNomlK%9=%f4LYf9JYx$QBpq7qg@AL07|?u=>}Ig41^Snp9Ay?x6o_2;&bDK z4Ju6fY`d)$CeG6eR}c&zTQIK;sup`NYoKmgKMbnY>sTK6V-00C94ZJ-hCgXp4&NNZ zcWTq#j0xb`@ZUqTqyquc{y?%qNOtWZ1|cX4K@|eCceD6QcJ>ha72*b$X})9X70b%N z_)8=QGbR}dH%XhjBi{eyBP#}BOy$a?s{<+d-i$~Z5F>BYgW~^56^Feo7&i*Ve>fI_ z&+womrpO9SFTkS@&vGbmrseYU1c=#-g4y8g=m+wMaYGN*2C=pRC5%p4$FI@;0h>)G!)_*)P9J zr*kSM8eN<{UVSu_tN*y~dNfn}+F!{%Ur7wz*xyy;TnyE#Kb|$EQERGXT&dYWeYiQP z6Xc8h(S!P-?<336GuBi$#nC&9BevD$&W2DE8;2O*zu+*kFuHLuy%99J-7!ksVMHK7 z39tW1KQsojUn6(G|EqQ{}G_bNH0+HIU#Upz%~k#L4fb$cb1%$@|^bVh^myrGa< zQ^kq%)Ml7kVtrq7{odCkOYe9qqjW2ueAbX2Ogg+{Ijg~Qhk^e@=~y8i*`>%xVsKw8 zyndcOmvDa@WfK+E|0q5~>GDbJdcQFhg!%Lc#aXeDSH$&=(nW>%p&TdasYr1+XXEQz z0@m&W5O3%_H5V`mg8eS`WK{79(F} zv&ioEg!yhWeIW@@1NXPJNlUojfWZDX)4*GLZklohgYhi2Z%CMdY=?Ym7vq?qDNX+u zJ!eRV@cRA#)Z^fbD@Wdfcz#ZybMkO!c2g+5mHM!^djQY-G}wShtEg%HRptAa9g%@R ziU*SR8!s_IZ8;jy0eFxK?P_K4YSge}67QG&Wp7%)q`=NY%`9?hIqWQ~4NP=wnPq8E z&1fbcLJ&1VV^5*)30uCUFZ@|WA9Ty-7wL=edL_M93N0+}?aPyk{du4`mQDJ*E^o~| z8p-la-*P}OX!3*=2+=DXPn9&^md1F3}a8FWu1X`LO->!g4yNM3W@z0}7PobugWGsOrnBo=SDj6nOj%XUJ>L7p7m@jTA=??s z^hGf3A6j3Sd4Oq5z}wcZ#RMQwD+;kLiQ`XHH8Ixn+pvL->qhMk>zrA@$sZ zp;Z=+cw2#(UTYP~Y8VE$>tbS8yu!i=U^2uyB$Xb|wL7hZ#I#-)D@&dq?_1H+U&Wh0 z#ewA>(n0zjG$*<3h&aMyXGl82yYVP~b5spe_3YoXC8ofpXhqHQKcZtJxbkVSr4Vrg z4U#;uKM8TdUe}5G55b?kV z#iOYuTiCs_n3P0I!WOm+x|MVqKv`QGx|O=j@4_RN$-dP{HJVh_kHE9d>k5WfDC`Qx z!)Z4grp)Wgx(vJxxa9)lP|}wu8Qh#niKd`o_M1gGd?=(LV13HBp+8*uC4H9E+7Tw3 zbE~4J1bWD*XNh;nXj=E3k)8!|&hj08cvebL(f{_B73gVytaw!UH^gHZ&kn$ZBm-kDW>dqt@gLMGf31I^4&x;ko&AMc9}?d`pCNFcjb)>Q z0~N+efMP9EwOgjKqohIarv+XgQlt{Vv%*@06v)snnGPMsnFYg$X)}a2p({e)$+R4X zh&zNA#;N1C6sydwTcu139Z;^%cY#ke9BiEjumMAlGYX~I5|a~c_Z2oDLSnPS;- zk;{$7CQ}q>nwW~Fde%9PO0#;3ULg&`5FQ{XC4$rVkh(fA`7^f7PzZuC;t(EV-`Qwc zCgXA$2J(m+Gofo3XOwmA%R$|O6`zownx$Mm4-Zr@Rdan~xZm&| z)kscqh1D+X5RWE(x=2`am+*cy52UNzE`3WxYA*(#B9irWDFX zG5%C|GUyijBuG!xX^7&=`{d=S!)Fnu9u?Bc@d#?HUbqT`weAE_a?ZqjOObhMpAj%! zRFZqt5GInWmFuY`Fku1L@3}3u$?< z|72>t7wXIbDv)|=Q!>d#s;o4ss?x*%L@k2-Cn^b22qp1i9aS2l+P^H&s{>jP50CZ7 zg6YnP#3z#b)ySPPPt+t&P37UN#m)#iD6=hfwR-AbH3c0Kb6+tj|Kht3`3HHkGvd|- zL2XXDf(JjiFzhV^+9qI47?V>lfls~ayLf781V;LaFlJ-w+<`+TRG`y1*@-5QGO!jr zC1d6eq?}kF^*<<+f&G&*Puh&Rt^RO^A(xUwbS#A;Ca<7H{_hC0c|LaW7-JJ&CMn{q z3@qxVSG&nN&G%)>GCJRVl`gd=4-vG9B>@}@Xy;35Mr-FN&m*q_E`25${Ky?1(8Nrvv|@Q8wN$!ZNbKtM_GiG}1;=;%+_UeiwrCZ=3btVtG=s28KD2lF_*k}A~5 z=R4G#&HNwD8ff7;m{SF{SN$w|Oa;MF?D*o}zDuuBMP;YG)k6j0!*D+f(7|wv3ZK{i zMBIhiiLb>V6faERp0Z1}zZe&irQ32$bngwL3rR)Ttf$)GRqw;Sb1#I zAkL9wS1)ACag+cJDGm&_^yiM#013kHCqGEEm`@)4GL!`NY)s6%*LUB*?CPKXiWxt? znLl-a1PhG@@R%P1E;J}E3q;>PIdW;@jIl>aCVfdeX~Py;FjC<%hcIr7CbZb`#h zU?|FN=@>s?QxHh=q~>#Pu!aVK7Xc~py3aGjlJbl9AAn;?^E@t|lO#K~jkk3L4bJ?6 z?K!vc!SEvAbyU-GqM@%69`FxRJ=<4=>PeM>Ox9KF0y9BLbrjc0jdv9Pks9YHo{^g1 zID`lz%aa8~vg=w95gCsbgFej4k27?}{KqLKF^4u2Abn~7paqv}@j{lE)f~1&WG#~2 zRaL1-wSir#{aZ97p>0iQbNIqleAv*!+jKGQCj>MkimY2x+CPQdwaAIGJ{$_?U6>}O zWO%8(Z|QnGVAGR_1E^di8StSqAQV{uHBENqf$)LV*wT$RNT6BY%}x-%PLb|{(8f7> zBIP(@0iQ)a1I-ZUcv0>klL;T18Z{}$^Xi>Tf(^L)J1kkbn07qIUt#&u_sf4KGtl|? zvq~qaU|N2zaIO%3VGCA)%t)<_q_Y)nLZHh9mFCGV^RzAqLYJ!7L@PG^|N6}DK46L0 zAci3?Xy_kgqPS_L0vnq7uecy-)3L_KlmsyZJQ(E;CFu*7G+dhtytgO3(*ji9rp-tq z@G736d5E~vVzWUTD)eUJuJwo9U~h%=oNbzBdLF|vg^UGAWLl00jqJ-1<<&0iDJaKwirReiY4ssfT5xmo%e3o5t`#7By90&+x5Zut zr?k?Lrs{UrXJK5G==lj`wy{sX$Kw#6{HO!(iAx*p@{o|#@MEmI%@Io1ewe3<`t9Dw zoWzmOI{HZ6KR1w(A%*df?D>U>wUQy_7#iCO4-9vi*m69`n5f3fL60r(S6Z{2cW<-SGwsSK~5M(7xFpaf$aUVHG_;puh z2=@khh#18;k0aoBAm~jf4bo=Z8!2IBnZO?MjzySIlYGrl;9Q@{%QliwY{h&Siv_B0 zUskilcd~cC-+_oc60e{)&}BM{T)akJmvchw5gsb z@V%k@L&P0;zSo5`Q<|T7m=~YsNyCKva!KC}A=)#bL|BY1f+?jzB7cMLA*VHdnb!Wp ztq!y_Oo-&&kWUiT7o>QWSQLKHafC^4$hi~vcMYm9i-}M9D6xS5Z!s<&zd!%^=iRf# zzr}Du6D+vd3Axl1x1*Gq?oWuK9Jgyy#KVHa> z((EDUVf-K^80u#sa0GhxUsA~Ze-Fa^?U?Xue&r1`b;j^hlKXKm--kNH-;Uvk)N~ng zy3d(r)!;qR););?s2@EfGkqQ zlmko67*|}ZPCxgoOtZj2-(c+)gZKIw#1ix5Hp+zWdiSr$aU`{Sf8VQY)r|-V_Qrj6W89$`RBjnke%u>pG1ROIsYKAkt!ZFz ztlA7EoQeMS=#}c2g1f(JWwG`kb(5400deI#vvJ5(2NK#Y2M(LMmgBGHnn4ICUGrZ6 zUQ%489)dWC0xb&{rlIHn_AGOr>2Isy-$ri;T1_SV7B-kmJ#W9HjXq|Sl*$sggn9A8(h zh+b4jv+w@TV4nb`yytTRRv`Cbr5JkyT|MP&=#TF^q> zgz}W|wCfgv2CiRwWH(K|muz!=H(|OyUeI?^jT=)lNQVU6BrFCuX_o?M4yKLeH@xr6 zs$E=JUFKC=_4{F$@N27zq*P)azO<8ZJL{Oha4!q6EFPyPQtbyp?3-SU9?lT8dj0XZD+JI#d=W>cVDf_Trpb8U_a=cW_UV?VW&ZVg z=y8085-G)?zw>^tXotG8?*p7gg z*j|~}3fx5ra6qy$@i-49>`G5PN0SC|0U^#1VixF(Hqv+#_2xly9-o($mYhin1}~c>p~pW`0uM*|S@-h1xWkEIgo0x$ z!~V`>RauVAvX4r-G}ND!0g`j>2Uy#!H8f$6hX>9-)DDYSih{qrd$&m(79mcF@Wuz~ z@k2uYvEq>8o}7E9T);BcnGG2@$A3tZO~6J=DygW{%aiAoRl!8(Ip#az`G?^%)S!mZ zps?Zj18>3r4|lULo+YR}$^?zUx38T^voJxNU{@03L}<{_dGvVx++V?atK4g;_>iJ^ zUT1YU0tVu+9-r=Zu{Z;`SfHbYk({e-ne9NtTP0a?XP}K(Go^S38$`%q_6%_viV2p< zcQ4`Cw`yq0E453ql#*70oK@Opc@B$|bjYRfUN>%;lIO?`F42w1_n!qnU(maWOM;0fXBJLy(j>X{DN+_%BXe z?4C`2yfoC#aW>S2Qt%*iIdg-^gJIe1(ZhANN&xdhM~r$%re$&wURE()TG|>NAf-jE z;J+z}ixZ$|0>oW$aSz3dzQF^MEG>4YeIDwNUk! z7rgcZ$M6pE1cfZP@E{E`|4D0^a#fR6@#IcESA-kkl6ZcXwaicK-&VZsbG~Z3hY%e0 z$P{RLgIxBQpDNug$G3>E>^RYRNKmP?25gm4s0Ys|KLLINZ;`ZTx2aLmyZLbX{Eq$Q zulEkEVw9g1jIba_TZt2pg2e>Ecxj@}i=z7X>$9YYJSWPZTbKz+@hvI~EMby2aUby+ zl%;OX1q}yD1xgrWR=c8c3xZfzpuCWOy_U={4%EPTqxXVx8Vo=U?P$2-7FJ;cS$2Gj z%*U-h^Tsgn7MBf!I_tEd95lr?qY48gB-ymF3&MrJ)1Z%A?czEg+*7&WkI{~mCn(3M z5*{qZ7B~)d=dTI_3bh3g*1(YN{vzP9(|C|X1}pF{0#t`kyqLJ-P8``@U=oV*6s5ry zWAO`_^I{~WB&D*FA^^9bhkZwt1ewt0d@T`xl#yP7xZjiXbizW1TBo+NY`g{bL6alt zm=*C|PC!;fJFdxB7Lyo?yGe_`NLAb+`(*`W(cwb!E{OoL)hrLTlx#^#cNrp#Q~x$( z4dD-;WFW#{hLog$1Nq3TWCpQ+5r|HoT@`oM0ge-Iw+ua!Gn{jUDbOXU+i{j#S=sD* zE)4uJt6S-XgaFqmDQmy1_ivq^RiwqCa*OR{@Jt!KadD9iR2f$r->DJEE}h@HQm5wT zK-g3A`Co~d34wF1ZG?Q-B7=%RdhWw#OPzWBs~oy0b#29L8eic)EQCo;8%M=cKnEXg z(FczOtb~usrnvGtc=@dO_aeY)agt1SA3i*G0QX}sw=DH+T{bUN;*)@}#T?XEjyCja zv)Di16c%7de63IJnV%;4t3uMqyw*p`DToFdSvA>{WEPLHmfA-K#E^IlmXNjRsLPg+ zEHp%mY9}UOn2!TArAPoit$baJ%1p1WoMC8)2I7znx^v~!_Y#>+W8!NSjYyFh#=BW1 zG%zHPDWGYY?uyop_0&n9CSkNRj?Kny_`Mm^pZE8ZA)bocXdkTR@-ZnI_)E0RYj$WK z2p|mNe(2TvO90CtU|8CzGc=QAw70na62P-L@&Yk3X`0Z8KQe3PI50u8R~s1#%SxJB zXOc_`SO#xYMPNy6d`y>UnFAu3qCgKO%vfl-3`1d+-^9acnSS2OXNWA47J$IgZbM;c zU}jL^8xOo>V7nfyqsS!q51}IdEO*t%PVy-|kZX?|2HW%hTB`;#O&9P|IzTS zP)O3C7uX)^81}!~L%Eo_x?0&={I$=jS!2`r2M@mwS6_>U`Yv!V4*b>Hf z@t)U7H?f$(25Eo`l^PG{h$MJT#jK0_-JqMa?E&!RCuaTr)cNJ$PL%U670p_#;7-K#aRO!ND>IYI}RZh1VpU zF5P0VMJHUGnL=@M@7@l|Wae6Qw;?7_2nL%*9$06%b)WJLsJ6ZkH4E`(AiCSslXT4{ zA!yk11F|IZa~;aB-9g)!cW}nf2Lkt<;Bf#rla6|yP?~Nd@S20%T+HbUxVyIjV!26s z)@{BI>ST(-ALVA%IN zIW1Km&c|R~S2mo1tkPku+{u66Fg6);U!u=-X;z;)+gQIXBM7l=k&^1b77Gs z=IeUfY$|`1|6Dohi{du9q3}z=uGnCF6N>B7dHpAd}PUCAwxXtHJX;pDg9~+x19Wdbsc5-WIS<;d=+p{Cs>^z!<3< z7%9IiXIlISOf9iSv|K$x3qwmKiH1ecAZ32TwTfKvto5nP={w;;Z2CR-TCQw^{&Rcf ziO!)a2(SfJ3-ISp>(akkP<=HsR{gIFK6GQ8EX3Z7rQnWPUk%p=_zUXmM`8k(~eC3pZ)f1P#SxA7mKFEKSMW7MrdI8 zVWP1zF5r?b*NgNkAfJ&$!=i`CjLX>?WR6jQk4hfLjmje+T-73&!$&nfqqYwc%H9MN zIFXgeHK{mtF)WXrB;jgz1F*VJI616>=DCa*e3UGsC)aO+9iIH8 z5VG6)(A}I65uuAov25Ot*X?d0|LNEZZ=Q<@u-D}a90&;7za29NwsuuBGPeDz;pJvZ zzx@vuf{~x!B4|>xWNj0hF;MA7LYgL#@V!9L3F@%c<1dBV=U=|_+s3k7*2#3<+r@ca z(oa!<2EgFDib;c$@_x)b8Gqcr5$d#lWoV!hr=x58*@x%IFaXY4?}PJq^-dP-y~rLWSOiAL2AjqGdSXC=(SM4Vi3jePqnuKuhEM z_Y5vx^OAR;5hya*Vznq%>t6bB>H^iY!ZI6qAa; z8`(@lnbb;#lZcq8j55&Gs{ZeEv#q;dATOuN9W(e`Q#AgJcD6;!pF zT6d!(+`VKop(@Suu--{eVFE)XLh)Q$S^J4n zV3}<%GmB(7)(iK;_}zu|qq(iuV5&D)&|V%P{B`D*3QZ=wY673dgFkN5>NZ8FMSn-l z(D9%@>Tsq5?CQvc)ALIcrQ=}ndEG6dL*iofa=8Q%tyL_xNnF>K zMw#T4q6hKPsn5@7vu+UXqGhnIS{VLf{w>3vum$PF0Ec!hf=1c-XjtI~CG;rSlYn=x zfy(vLc__C zY!4Xewwc<#mP0sHJ=)|p#!%8;aqxr5c2qMWjNABVIix`7gk|z#>-G%>50n?I>-^9k z%bRmB>o5oy#cr2iATIAj@x(nl)(iyAu({Pas?T>)@6NUqOVB@IJor@3%gDrm4Rb&yxK2hpZ%QX7m!v2*Zk@W~ol|A# zgp}kcF3@qG87u$VP{cbuf`Y`>*6l{U!X6<_R5h$BlKv z+E_ixXq(R)!lg%3LfQ^J@r)x?=JTsoL0Xe=WY!g4Z@}7DDPULq9eb6k?CF9$6NQiP zm^O;e$rO_9$O_?N;$tC{TwIa!$zH*uI6rKSGL->RU;=%4;7;|V(C#!-Cz-2>F*#Th zOk%Q)C(GYv^NSn@6`E?rOgltX+F;2tu}WPbCBBqSEfb6eBb2a` zVcZi8d652Q%Cx52OlWozF|~^?FBMDc^9qhzkDI43O}ujZd;&S_X|$~nAh_qnrb@C} zQlKSRaa`w_5)=Hs7uFFQuhk&BIcTy%5M^yX0Ox|K+#Mo64pT7nrGnJlGxO~0s*pzS zooT1sx^40spe24~Tkx%qZ!@IH$f%+8WnEObqtcDmKqGNJ&A$=DhzU z#Yc>xyBNN_G;tK1UvT$LbuT5UtDSCfahbYU^77WITsa&^Q94$3Kh5*t_ocxpYIM+8si8ZTH6Y95HZ2RZutS=x( zf5qFsxVaRRf>+z>q}V)W)u7KqMMWx%ZHDpaCATo$AeK~colQ_yHmh4L=`89b|5A@U z8AsW*q3d)dLs@sr24|r_ZviiMJ5%Q4OPd7Oc6;wL^)H`cQ)j+D z0!#7v=}_jfD=H0!{T&WK-@7I5x)v37sOZ(7cRS}eAz9h*`I7JlQ)xri`qjN1cO~JN z6eqO_jIKTa2cm+fiE$!G&a4w&&-Pb(*Fu_Fk_Jda8Z9`8=-aiB*h~2cZz}cPjIG>( zy8OistDzQ`(Jot1%kb3Jhy9A|l6xKu{HkrDeDKr{QEeKQG>foDRNOM-Ej9ZFKYjKih;Uc6&1E_<2(^EQgO77cJ<y#~WY$U} zCk2g9DP*WNyuY?>tFnX0=);;rNEZ>FzI92fnw0pU>I1rmCZ##!p3KttKoN;$VY%mE z0MdKM#sYC-;W^ot2JMQeO>jF<3*VJxViP^0F<)yO>m zfJ*2}C^G)o3hUi*|LQn;WT)^BM$EwnXqAw0afI`_lmrm}x;qlSLkT_)7J<&HL9tY| zkkWQ*bB82V1jnWuAII3&W5rs8&=D?F; zKC+_hUGvo-#8EVo_S8LelnR;M;jsmsQtw`ErSz%^DldtuN2DT>ZNLm>;(-KyU-XSNw)l;Afj?1=1 z`0>ld&KJ3|O@u0TuB@aY+3&>h-ihnXV%66^nWV+3iC&WB47BL^s_;|4b-StMO}MxS z8E!jEsYCTRBMO6h8cE7z5U&=KNse2?m9fQaX2<*dQ!i;JwJL!m`JIt%5e^aTR=rb3 zS0G`Bjo%nET~jBT2~X%lT0KWZ{}Jx0^bE?ohJw0$d8dZZ+sYf*KL@nAQ(j>gDA*V% z9Ooax|49C;ul!%5njKefAIO3s@wI2*c5j?D55f{7Od5pNW=Zxlp}QZYE%~~5bj7=u z0w1Tz=+_$8t0jH{p~E11!>U<2>NzS37`00N{E)1!UQQ13F}@l;K`Th!_CU%}G9K42 z+fJj^3s6i*6t_f&>C-nS8(kJtE#%Vn+@4T}gZlX6*+SEOuG^7Vbel|QNhVG>R8^n5 z~%sVX#zZ7dIxXS z9E4YI4TpUobw!+0+#CKD*kbkKXegb4{(YB1_WOUV(&A=A!)<^ynQ&ls_n$R~y_=n} znKQ5|^C!ET*4nh+Q+Jj-#>%pBC3k5u zO<$EQR2IQ5kM?CU8r^rB_uU)t3iIxt}iDICLv>nc#UbX$z!NN#F*|NU3$3Dw0f z71%X2wC}TRzQR@?yYI0xFR1JDkZ5$Zr8HW6Kd5h3e@LfC+44tohYj4P>}g#m)gIVQ zl}~HZ6Oen&49|Zd+%eS*-(i(i9cB-xeQU{>QwaG{(hhC=fz0?%S`K=9!N7z zUuyyJ9Wur;0?tVW)?tN#p7-1D$LS(o%&(h(bs@-YDk-jwn9J~P4ZRBVS0v5dxzpwO zFT(;3h6P9{(Nc;wBanJ1>hUUFrMc4Q`pwjB(#3xDuN}qR++P(Z>kmz78HVLB*G1S` z3NF~wbXsC&8RLJ${~*0}mR3qH#HOOj{Jub;AdQ>l*_W>PjXO3j8_AF}DYBf3&NLn2 zmSIVhTt|UPIf|A7vmgFhd05bY-TJ*2xC7Uc^6vB?a|}-9g<*tEs@kahJcxc+&qF5c*8d6m**MhEq@|X6WATe)_(DAT<$(8;9{E zmTPcE*FR(3c;~?b*iOW)p3TA7%X8~7)gpk|Zm`o=s{M_l%c)Gof;I0S(M~@VXHBp^ zZBO&vHh<=Rf$4#wGUz_4c7i%m<~TnQ&hY-UjoW$CtZwlNQ-dU56B7M7n>VrV+tkY{ zrh&Vr_cq}-zT=9RFCRVd3X%x;_`68Zpi26BzuZ6HxHjMJ3h{krU{B0`xA)w)ZLh7% zGqEtN!Npqa6JWonfqJ|eeMCK4>ARY$6G3EP8SKJa?L%;}G0ew>vNjZBpW+Q(qyEU> z`hfrEj8!nUY|#w~0un?50)h>kv4D-c|C*+ND=*;nX>Vj@%Vh0nW^t)up}`3JN_BuAymNoqaH)e zHOon9E`U!(LRbnK1s(%ugv|PeQvkyN{AOdb2v#X5-r)Pi=Gt3N*4?Jd46oO*eZgpf z!QkvIninh!0=SvG$bD1KqFmGS2 z7Nr-{10e}K>&Q4oNW)N%;RGG^nXUD+O6>pv^!8EabsOWyWy8;A$$Y7owlIv2BOEWA z37B3``|-KAu#a$@#7F|7_0f;;PdEle3|P7JsTmb^H$2sXHpO_M=$ai9gkz2Iwdi8s z={PNFRAG|%mVR$+)m?-g_B}v@Cu3U68>3JZOAa%=SWhgro2EoDD`(54c)d|Rru8rq zC_R!LNw!3wTG+|E%u@c4UE(3ch_+o z99t?zoG45D(}5scEJk5-+!SuwxwKAhjoTNJ?{r~?Y8AQ&DGzJ$Swo(edvLukeTm04 z8H6277Nj|f&d|aGNJGgBiRarZkMCpRQAG1@AG`P8?3COZ-)}8``}9EPcE64X1qk)$ z4pm}Du(bLmD3fpbP$JXP1|Hyb+@$me&j>CCC%9@>pCH!E0NgF9gPN05>GHqn3|I?V zzprhWY}syEzu#mqA^)JXM{f;$@mn9i+!KUGZ_PYE55oh=^=JgTxUeH5ZV*mPuE)sD{?i%$dlK&KhJh-$~%CK zuky9ag;n?nf|gb;K2~knLJrVgI6GVXt`6HoEfz4(Bl?OmE9e&w&n9SNk4rNHdPKc{ z)ckO}!dD}qC{H-gs=46n&^*1M8m9IK_9+}H}gnWb?TX+CPm_mRB)a=hZPjLfRx@~T%JK+H;W{9*G_#AC$^p-BVY6; zpV_*Ec`qJ3niIO@qHw~}|8jZR7ZkQjH+Q~cOXlj=k-&bcmx-pes!%~uI|ajt*_;(YaTCKKCkZC&FAy#7Z#tsHa)H`_4exZdw*WL zZGEqDd-n5n{dV_0pS)N5+y3vH(}&}~%2-yd`Cf7VW&XLE-*>UO|D15k{CA=()@ z7@V3{5+71okXjrIYMr4QP^sqa@B^sy9&j9)8>SmbH!vOp8UbnJgPZo~8avv!gEN6j zE&??QqG)^$6oJ=0$@xX#k!W=7UvA$Pe+|^0!@|HIfTFz~C<51>SWtk?)jyjLtceD; zLLc&=TRsCA5a5{upb@3HK)++tp4T8PWCXPQG|(y;6w8%>L+N1c5T7F(f;AL+SBqJ9 z>oYLKg|ag6qnOkO3{9{}#U+(Fso?2K^e{j_P!guUfzizxMKjv*lIZ53&yym|*Zs{*PYeGD1h2=x9p z!ieO0ti5q`1JFCV2m`DekPX1r?L{{Wz3+%H%cK$6EYzMPx+&;gErcoFP0&z5>3E^* jM{f@z^gnAw%3`Rk!vJqqU=9N1DnW)sVD`At4dMX+njsu9 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/PromotedTweetDetailsMarshaller.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/PromotedTweetDetailsMarshaller.scala deleted file mode 100644 index d913f8d64..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/PromotedTweetDetailsMarshaller.scala +++ /dev/null @@ -1,15 +0,0 @@ -package com.twitter.home_mixer.marshaller.timeline_logging - -import com.twitter.product_mixer.core.model.marshalling.response.urt.item.tweet.TweetItem -import com.twitter.timelines.timeline_logging.{thriftscala => thriftlog} - -object PromotedTweetDetailsMarshaller { - - def apply(entry: TweetItem, position: Int): thriftlog.PromotedTweetDetails = { - thriftlog.PromotedTweetDetails( - advertiserId = Some(entry.promotedMetadata.map(_.advertiserId).getOrElse(0L)), - insertPosition = Some(position), - impressionId = entry.promotedMetadata.flatMap(_.impressionString) - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/TweetDetailsMarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/TweetDetailsMarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..8dc19d4bcc62397dbc16ab60e531439aa915ed69 GIT binary patch literal 37334 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 tst} -import com.twitter.timelines.timeline_logging.{thriftscala => thriftlog} - -object TweetDetailsMarshaller { - - private val generalContextTypeMarshaller = new GeneralContextTypeMarshaller() - - def apply(entry: TweetItem, candidate: CandidateWithDetails): thriftlog.TweetDetails = { - val socialContext = candidate.presentation.flatMap { - case _ @UrtItemPresentation(timelineItem: TweetItem, _) => timelineItem.socialContext - case _ @UrtModulePresentation(timelineModule) => - timelineModule.items.head.item match { - case timelineItem: TweetItem => timelineItem.socialContext - case _ => Some(ConversationGeneralContextType) - } - } - - val socialContextType = socialContext match { - case Some(GeneralContext(contextType, _, _, _, _)) => - Some(generalContextTypeMarshaller(contextType).value.toShort) - case Some(TopicContext(_, _)) => Some(tst.ContextType.Topic.value.toShort) - case _ => None - } - - thriftlog.TweetDetails( - sourceTweetId = candidate.features.getOrElse(SourceTweetIdFeature, None), - socialContextType = socialContextType, - suggestType = candidate.features.getOrElse(SuggestTypeFeature, None).map(_.name), - authorId = candidate.features.getOrElse(AuthorIdFeature, None), - sourceAuthorId = candidate.features.getOrElse(SourceUserIdFeature, None) - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/WhoToFollowDetailsMarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timeline_logging/WhoToFollowDetailsMarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..1acee4f7a705b216549c1233883382108873b3cc GIT binary patch literal 36962 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 thriftlog} - -object WhoToFollowDetailsMarshaller { - - def apply(entry: UserItem, candidate: ItemCandidateWithDetails): thriftlog.WhoToFollowDetails = - thriftlog.WhoToFollowDetails( - enableReactiveBlending = entry.enableReactiveBlending, - impressionId = entry.promotedMetadata.flatMap(_.impressionString), - advertiserId = entry.promotedMetadata.map(_.advertiserId) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/BUILD.bazel deleted file mode 100644 index ebf305ead..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/BUILD.bazel +++ /dev/null @@ -1,11 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/cursor", - "src/thrift/com/twitter/timelineservice:thrift-scala", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..92ed23ec695356c4c3b403b95ddc76502e16d71a GIT binary patch literal 36855 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 t} - -object ChronologicalCursorMarshaller { - - def apply(cursor: UrtOrderedCursor): Option[t.ChronologicalCursor] = { - cursor.cursorType match { - case Some(TopCursor) => Some(t.ChronologicalCursor(bottom = cursor.id)) - case Some(BottomCursor) => Some(t.ChronologicalCursor(top = cursor.id)) - case Some(GapCursor) => - Some(t.ChronologicalCursor(top = cursor.id, bottom = cursor.gapBoundaryId)) - case _ => None - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/ChronologicalCursorUnmarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/ChronologicalCursorUnmarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..47cb99a5e9a3485f9ce79dde95b97e0aeb67f0d3 GIT binary patch literal 37019 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 t} - -object ChronologicalCursorUnmarshaller { - - def apply(requestCursor: t.RequestCursor): Option[UrtOrderedCursor] = { - requestCursor match { - case t.RequestCursor.ChronologicalCursor(cursor) => - (cursor.top, cursor.bottom) match { - case (Some(top), None) => - Some(UrtOrderedCursor(top, cursor.top, Some(BottomCursor))) - case (None, Some(bottom)) => - Some(UrtOrderedCursor(bottom, cursor.bottom, Some(TopCursor))) - case (Some(top), Some(bottom)) => - Some(UrtOrderedCursor(top, cursor.top, Some(GapCursor), cursor.bottom)) - case _ => None - } - case _ => None - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/DeviceContextMarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/DeviceContextMarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..e0cd03b522e7a2ccfbb71102eb4d94e075593dc1 GIT binary patch literal 37117 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 t} -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class DeviceContextMarshaller @Inject() () { - - def apply(deviceContext: DeviceContext, clientContext: ClientContext): t.DeviceContext = { - t.DeviceContext( - countryCode = clientContext.countryCode, - languageCode = clientContext.languageCode, - clientAppId = clientContext.appId, - ipAddress = clientContext.ipAddress, - guestId = clientContext.guestId, - userAgent = clientContext.userAgent, - deviceId = clientContext.deviceId, - isPolling = deviceContext.isPolling, - requestContext = deviceContext.requestContext, - referrer = None, - tfeAuthHeader = None, - mobileDeviceId = clientContext.mobileDeviceId, - isSessionStart = None, - latestControlAvailable = deviceContext.latestControlAvailable, - guestIdMarketing = clientContext.guestIdMarketing, - isInternalOrTwoffice = clientContext.isTwoffice, - guestIdAds = clientContext.guestIdAds, - isUrtRequest = Some(true) - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/RecommendedUsersCursorUnmarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/RecommendedUsersCursorUnmarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..1b9973043fc4860d537cccb6a5a1760fccd06f5b GIT binary patch literal 36989 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%0AfNDxtt@l8uL2etNO&n~LMuBKS#zJ3m1V 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

    #%>z8e( zk*awpCM1emqQkVQo0E-Bi^*nkX?t!@sKWt${IM*dsb1IZNG!TdCbUEoCmgEE&z*8U zqp;*Zv4FcuonO_tozl&eMbBO4X4qD*PUKQGIPCU5Yv(8`H!=1&p^`KLo-e(Fx2g}q ztG0&1K9D*i&MEEU`-|*nBDzn&0+6mXKdyS ztjhe!?xwUh?e}u*;);nTSUB-R6Dw2E0Q4e!UKi-$DwptVT-tyCm2yIL@k<4E z6%FmjOslW3)yM98%=8QD`Wz%0T}=s%7T+56&B~f|T9hq+Gaen%2za=n zc1)XKl$!MeNhd0$JxD4oA`VTZ*^A*NjaubCC)LF~R&w=TODUPO$#dsB(a1dUFu90H zQg$K-T4Of)X{@l)0A4w69^SL1LxlJX-wekHjyh}r`9Q_qZb9eT1Y3|FA zfP-N^5=yj`qRlX*9*TOLN@q!q^tpZ$b*prdU)^haQ5W}D#fiE@Q(A^0Im~qtw&wf` z_Eeqb?=y^Xzv0(NZ=I!;(h9JtXfl4xQz%H|W_tFfDSqRQiOoVXl#gIB3P^0q$U z|2bpjk1knsL4tq;k$`|;17|E?Q1;rWsxY%5M>(0E}beZP$I=0Ur$u}67 zxkdAWWkCQpa~HX9?4Gc1s&?e5kiEdrG07|(B5FxF|eZIjuCXNU^m z7!Bb_(S^h2CBXCxwBBuZI)!1uKvpE)_^2VD0?vXURFEE{M<0rqdvX0epaC!Ab{RB!n|%{{J3QJ*(`}K<<1mE zMYSqSBH!Zgjjh^?u*2R5Xz(OVYk6Z7iXzD&rWfn+g*MaVC}!m>xn!?5%E#1hMgpZr zvLngn2viF@d6yZ=HQ7a;g8-Du=%E8CPraeW7WUZbz@aF32pADU!A+E)2}3aI!~jTE z1TxRgolp=RhFJycob%s1crKUxc!vD-f!cHF@yogQT%o6TCZ*W8v6R zFk(en;+_r!*FjmsSLyxfE9dFf3!u1+Ux zXR;v8R&<6I?nfF-nol_2UVeNZ6^|mCbNkr6|7NG;*6@C7@!O{xI;ZP(EGR&zFK4g< zJA$RfFJ75^%ZCz~mNxJJul**uFL+vTAvoSuv+4w~dK%zvNgdRbltP#HO{d>l(E5FK z!(_{L%liE$oe6o3(jL7f@WpR^>~c>K8oeds{7CTN(b>WACuLU!{?8cyuQdz!HOZb( z=S?7>fkP~7EPYD0I5w%KrP71!rnt_CW+AjExSy`K;+N&Bhma?(aetoe*p#&c8(-yV zmkF!z5dNCk`&}KjidxKLo=5Z+W|Y$}9G;ES#vGSq1aymfuT`(P zUE!;dP?W`=XI5YEwQHVUPz_Q01N#)SeX^{|ySAP+_?e*KVSZ<;it1Aik?`pxn|0~{ z4njUcjx9WZB1|E`0&3=GuBW(xE8R9X)tzuZ6*ENY3w*XVGdBVY6; zpV_*Ec`qJ3niIO@qHw~}|8jZR7ZkQjH+Q~cOXlj=k-&bcmx-pes!%~uI|ajt*_;(YaTCKKCkZC&FAy#7Z#tsHa)H`_4exZdw*WL zZGEqDd-n5n{dV_0pS)N5+y3vH(}&}~%2-yd`Cf7VW&XLE-*>UO|D15k{CA=()@ z7@V3{5+71okXjrIYMr4QP^sqa@B^sy9&j9)8>SmbH!vOp8UbnJgPZo~8avv!gEN6j zE&??QqG)^$6oJ=0$@xX#k!W=7UvA$Pe+|^0!@|HIfTFz~C<51>SWtk?)f=`~uIU7} zLcjB&TRsCA5a5{upb@3HK)++tp4T8PWCXPQG|(y;6w3pEL+N1c5T7F(f;AL+SBqJ9 z>oYLKg|ag6qnNY@7@A;{ic2bUQo+-e=wX0qFx_0!57lii9B~a~X(=g~Jpie{~Okgd8nt(Dbfvz8Y)EJ?EMg>$q`WQ005$OGI zgb@?#vG&H%4M6YcA`HlEKsEqdw-? t} -import com.twitter.util.Time - -object RecommendedUsersCursorUnmarshaller { - - def apply(requestCursor: t.RequestCursor): Option[UrtUnorderedExcludeIdsCursor] = { - requestCursor match { - case t.RequestCursor.RecommendedUsersCursor(cursor) => - Some( - UrtUnorderedExcludeIdsCursor( - initialSortIndex = cursor.minSortIndex.getOrElse(Time.now.inMilliseconds), - excludedIds = cursor.previouslyRecommendedUserIds - )) - case _ => None - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/TimelineServiceCursorMarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/TimelineServiceCursorMarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..cfcb762fcd753ffa63faf41029bc1d320490e950 GIT binary patch literal 36990 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 t} - -object TimelineServiceCursorMarshaller { - - def apply(cursor: UrtOrderedCursor): Option[t.Cursor2] = { - val id = cursor.id.map(_.toString) - val gapBoundaryId = cursor.gapBoundaryId.map(_.toString) - cursor.cursorType match { - case Some(TopCursor) => Some(t.Cursor2(bottom = id)) - case Some(BottomCursor) => Some(t.Cursor2(top = id)) - case Some(GapCursor) => Some(t.Cursor2(top = id, bottom = gapBoundaryId)) - case _ => None - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/TopicContextFunctionalityTypeUnmarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/TopicContextFunctionalityTypeUnmarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..b72efd81cbe771ddced75e4665061d1358bf04e6 GIT binary patch literal 36990 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/TopicContextFunctionalityTypeUnmarshaller.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/TopicContextFunctionalityTypeUnmarshaller.scala deleted file mode 100644 index f542cd535..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/timelines/TopicContextFunctionalityTypeUnmarshaller.scala +++ /dev/null @@ -1,22 +0,0 @@ -package com.twitter.home_mixer.marshaller.timelines - -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.BasicTopicContextFunctionalityType -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RecWithEducationTopicContextFunctionalityType -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.RecommendationTopicContextFunctionalityType -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.TopicContextFunctionalityType -import com.twitter.timelines.render.{thriftscala => urt} - -object TopicContextFunctionalityTypeUnmarshaller { - - def apply( - topicContextFunctionalityType: urt.TopicContextFunctionalityType - ): TopicContextFunctionalityType = topicContextFunctionalityType match { - case urt.TopicContextFunctionalityType.Basic => BasicTopicContextFunctionalityType - case urt.TopicContextFunctionalityType.Recommendation => - RecommendationTopicContextFunctionalityType - case urt.TopicContextFunctionalityType.RecWithEducation => - RecWithEducationTopicContextFunctionalityType - case urt.TopicContextFunctionalityType.EnumUnknownTopicContextFunctionalityType(field) => - throw new UnsupportedOperationException(s"Unknown topic context functionality type: $field") - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/BUILD.bazel deleted file mode 100644 index 65ece62a3..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/BUILD.bazel +++ /dev/null @@ -1,42 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/query/ads", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/premarshaller/urt/builder", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/datarecord", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "src/java/com/twitter/ml/api:api-base", - "src/java/com/twitter/ml/api/constant", - "src/scala/com/twitter/ml/api:api-base", - "src/scala/com/twitter/timelines/prediction/features/common", - "src/scala/com/twitter/timelines/prediction/features/recap", - "src/scala/com/twitter/timelines/prediction/features/request_context", - "src/thrift/com/twitter/escherbird:tweet-annotation-scala", - "src/thrift/com/twitter/search:earlybird-scala", - "src/thrift/com/twitter/timelines/conversation_features:conversation_features-scala", - "src/thrift/com/twitter/timelines/impression:thrift-scala", - "src/thrift/com/twitter/timelines/impression_bloom_filter:thrift-scala", - "src/thrift/com/twitter/timelinescorer/common/scoredtweetcandidate:thrift-scala", - "src/thrift/com/twitter/tweetypie:tweet-scala", - "timelinemixer/common/src/main/scala/com/twitter/timelinemixer/clients/manhattan", - "timelinemixer/common/src/main/scala/com/twitter/timelinemixer/clients/persistence", - "timelinemixer/server/src/main/scala/com/twitter/timelinemixer/injection/model/candidate", - "topic-social-proof/server/src/main/thrift:thrift-scala", - "tweetconvosvc/common/src/main/thrift/com/twitter/tweetconvosvc/tweet_ancestor:thrift-scala", - ], - exports = [ - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/cursor", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/query/ads", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/datarecord", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "src/thrift/com/twitter/timelines/impression:thrift-scala", - "src/thrift/com/twitter/timelinescorer/common/scoredtweetcandidate:thrift-scala", - "tweetconvosvc/common/src/main/thrift/com/twitter/tweetconvosvc/tweet_ancestor:thrift-scala", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..5f4382942ba104f38cd9a02d7bd4b06f2e03ff9f GIT binary patch literal 37238 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

    1 - case module: TimelineModule if module.items.head.item.isInstanceOf[TweetItem] => - module.items.size - }.sum - - enabled && ptr && minTweets - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/ContentFeatures.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/ContentFeatures.docx new file mode 100644 index 0000000000000000000000000000000000000000..b7f25af6bb3a3710d2015c879f6fe3a84affb547 GIT binary patch literal 37857 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 esb} -import com.twitter.search.common.features.{thriftscala => sc} -import com.twitter.tweetypie.{thriftscala => tp} - -object ContentFeatures { - val Empty: ContentFeatures = ContentFeatures( - 0.toShort, - false, - 0.toShort, - 0.toShort, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None - ) - - def fromThrift(ebFeatures: sc.ThriftTweetFeatures): ContentFeatures = - ContentFeatures( - length = ebFeatures.tweetLength.getOrElse(0).toShort, - hasQuestion = ebFeatures.hasQuestion.getOrElse(false), - numCaps = ebFeatures.numCaps.getOrElse(0).toShort, - numWhiteSpaces = ebFeatures.numWhitespaces.getOrElse(0).toShort, - numNewlines = ebFeatures.numNewlines, - videoDurationMs = ebFeatures.videoDurationMs, - bitRate = ebFeatures.bitRate, - aspectRatioNum = ebFeatures.aspectRatioNum, - aspectRatioDen = ebFeatures.aspectRatioDen, - widths = ebFeatures.widths.map(_.map(_.toShort)), - heights = ebFeatures.heights.map(_.map(_.toShort)), - resizeMethods = ebFeatures.resizeMethods.map(_.map(_.toShort)), - numMediaTags = ebFeatures.numMediaTags.map(_.toShort), - mediaTagScreenNames = ebFeatures.mediaTagScreenNames, - emojiTokens = ebFeatures.emojiTokens.map(_.toSet), - emoticonTokens = ebFeatures.emoticonTokens.map(_.toSet), - faceAreas = ebFeatures.faceAreas, - dominantColorRed = ebFeatures.dominantColorRed, - dominantColorBlue = ebFeatures.dominantColorBlue, - dominantColorGreen = ebFeatures.dominantColorGreen, - numColors = ebFeatures.numColors.map(_.toShort), - stickerIds = ebFeatures.stickerIds, - mediaOriginProviders = ebFeatures.mediaOriginProviders, - isManaged = ebFeatures.isManaged, - is360 = ebFeatures.is360, - viewCount = ebFeatures.viewCount, - isMonetizable = ebFeatures.isMonetizable, - isEmbeddable = ebFeatures.isEmbeddable, - hasSelectedPreviewImage = ebFeatures.hasSelectedPreviewImage, - hasTitle = ebFeatures.hasTitle, - hasDescription = ebFeatures.hasDescription, - hasVisitSiteCallToAction = ebFeatures.hasVisitSiteCallToAction, - hasAppInstallCallToAction = ebFeatures.hasAppInstallCallToAction, - hasWatchNowCallToAction = ebFeatures.hasWatchNowCallToAction, - dominantColorPercentage = ebFeatures.dominantColorPercentage, - posUnigrams = ebFeatures.posUnigrams.map(_.toSet), - posBigrams = ebFeatures.posBigrams.map(_.toSet), - semanticCoreAnnotations = ebFeatures.semanticCoreAnnotations, - tokens = ebFeatures.textTokens.map(_.toSeq), - conversationControl = ebFeatures.conversationControl, - // media and selfThreadMetadata not carried by ThriftTweetFeatures - media = None, - selfThreadMetadata = None - ) -} - -case class ContentFeatures( - length: Short, - hasQuestion: Boolean, - numCaps: Short, - numWhiteSpaces: Short, - numNewlines: Option[Short], - videoDurationMs: Option[Int], - bitRate: Option[Int], - aspectRatioNum: Option[Short], - aspectRatioDen: Option[Short], - widths: Option[Seq[Short]], - heights: Option[Seq[Short]], - resizeMethods: Option[Seq[Short]], - numMediaTags: Option[Short], - mediaTagScreenNames: Option[Seq[String]], - emojiTokens: Option[Set[String]], - emoticonTokens: Option[Set[String]], - faceAreas: Option[Seq[Int]], - dominantColorRed: Option[Short], - dominantColorBlue: Option[Short], - dominantColorGreen: Option[Short], - numColors: Option[Short], - stickerIds: Option[Seq[Long]], - mediaOriginProviders: Option[Seq[String]], - isManaged: Option[Boolean], - is360: Option[Boolean], - viewCount: Option[Long], - isMonetizable: Option[Boolean], - isEmbeddable: Option[Boolean], - hasSelectedPreviewImage: Option[Boolean], - hasTitle: Option[Boolean], - hasDescription: Option[Boolean], - hasVisitSiteCallToAction: Option[Boolean], - hasAppInstallCallToAction: Option[Boolean], - hasWatchNowCallToAction: Option[Boolean], - media: Option[Seq[tp.MediaEntity]], - dominantColorPercentage: Option[Double], - posUnigrams: Option[Set[String]], - posBigrams: Option[Set[String]], - semanticCoreAnnotations: Option[Seq[esb.TweetEntityAnnotation]], - selfThreadMetadata: Option[tp.SelfThreadMetadata], - tokens: Option[Seq[String]], - conversationControl: Option[tp.ConversationControl], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/GapIncludeInstruction.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/GapIncludeInstruction.docx new file mode 100644 index 0000000000000000000000000000000000000000..64763d42698f6fab921f14ae26e6d14d403c3e9d GIT binary patch literal 38019 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%0Dn=mX@w> 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 Seq(item.id.toString) - case module: TimelineModule if module.items.head.item.isInstanceOf[TweetItem] => - module.items.map(_.item.id.toString) - }.toSeq.flatten - - val bottomCursor = - query.features.flatMap(_.getOrElse(EarlybirdBottomTweetFeature, None)).map(_.toString) - - // Ads truncation happened if we have at least max count entries and bottom tweet is missing - val adsTruncation = query.requestedMaxResults.exists(_ <= entries.size) && - !bottomCursor.exists(tweetEntries.contains) - - query.pipelineCursor.exists(_.cursorType match { - case Some(TopCursor) | Some(GapCursor) => - (wasTruncated && tweetEntries.nonEmpty) || adsTruncation - case _ => false - }) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/HomeAdsQuery.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/HomeAdsQuery.docx new file mode 100644 index 0000000000000000000000000000000000000000..4ca23b75977c275a14e0d5a7580909a1355a74c3 GIT binary patch literal 37233 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 jKYDu*p`W82DT|@D4g Some(requestType) - }.flatten - } - - override val disableNsfwAvoidance: Option[Boolean] = Some(true) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/HomeFeatures.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/HomeFeatures.docx new file mode 100644 index 0000000000000000000000000000000000000000..1b854c3063ab811723a4800fc0a1e1d67fa17b11 GIT binary patch literal 40412 zcmagEV|ZlU)-D{|wr#Ux+qTiM?R0G0wrxA<*hVKE+b8`zd%qj+Ip6nZ)m3w@F>Z{x zYR(!}@>0McC;$Ke5CF%i?CMpDMR7@h0084)0078eqgq0?HclosPI}7jb|#KGbZ*vG zO-V9x>--2mF5gj;>3In}h2T-k_v|R_XyUMhYclRRG*;-(rGcIwC%M8@=Hx@b=;AWd z9=-9_>v_7pn#r_;gwJ(!GSv!*fJ?jzHuLE&OxX`b;s_;{#rJU+hQMlDGrcfp*Z>*! zYX`XWkb*A-b2S5!)Sm&O$*W>ik?@CuAryJWK|^Z_=GgN(iS3jXPe;l3sm%|^2`dkpbu$#uJQx^`rP(SMj0q zdO*IBG)*$4)_W3eA!1LQ!K>#BbV&uKFmK=6a>?c)-}oa@{ws=%E`a=hRMDMGivQ`W zdRssM0MK8rdJZO5j`VbYu2u0f4mpjU9R$5Xq38{)BGIdqEmj z=@IwDaQr4@k8Gx@1iaK+$U|C`4Ht6))q=u$RMz5fr9ov0hVw~$ag{#$1~C8v2B@X?Jphj=2{ik zbSHsAa!R^xBzIs_ok)WmW{uxU=34i~j%Z1Ur_?;AO`W#_6@2Yx@P0GYrCe$@#jJQk zjLm7WUH+#*p+BINEWVcc+?PR!Uj`Z58p%7@+Bwo2**ci~S>##q6S4yg2qKSOA`3FA zVYdhnA`(=9r{R*~DE=#L4=k)QRukE5Q``H6)|$E0E_mDABe!E;8>xO6>uh}A0oK;Cd{g=Hj^EYH>Tt?%)5eir^P_@~>5*ds-(o3OS#Dn#$ zEDJxT3A0)ii}Owdl@MiCf2i`uQ?wJq5*(sX{_^+73rir5Z$K<-DaHfHL@dn%3`-s~ zke=2BnO~`Z40PDF0&&5r)|A^j+0tUfT5pD3cdBiFF}h*&^}*GI4f-uMq_23CX+lv8 z#)Nb3@(c-wze(vaCzdhputWyEg5&{F4jF~rgURuc?kO#4$<+5cv zSX4K%u&}p5>qzRy=VaWcWuF#ktl&uB9I9p z(Juazrh6*?q`~)7>;rQJhx&>A8U*9i3{IDF-c{)1t^Wr5KkIV0zK(wORTnD|004x4 zuZw}5-Ct!2GMZ}w*VJVz=#i65||U(#Hx+YY*`p5l8ggsW8Cxcehx+D z{6T*o#@)dE+Bp8YEMN-WC~K~QI`N!8DsR6D)l?Hca6E4>Up?+g)L=MyjR$V$C`UcxvW#=OG4bcTmjZ2$gLBRL5cP87)Cof%}py~2WGHB=N`h5(yUzw2t!9K;gZ z)9Jq6_!nZXnY9-Bw|QdzGdvo*n|YY0L8t?Cqrx42pV@m+yNav}igf_=@W!(S0;T#g zwa}ZW^VlABfstHJR^WFbipa5_#7UM0wtaVqIqLo!_OY!G4Q1T1a8eI&ATQj4D{pAR zRBJ-unz*qE&1uNKb>p_Tzu7rp5~^;1)d9nA4qlJ4YLOH9EpS%b5lOtK=XgcxCTc4r z_vk7Kd8&uWNs@724e_z5jVLeFj*o?wHFadQqEK^Ku@GHIcY}S}01s`+K@-38V91NP zXzt-Znq$2q&|Oi*xd|B5XVVeqdc~9gOL} zo?2(?ug&St$~f1tc3kI(|M2MnI)qPIRTktP({`C=pH4O!Yqoi7j?dgsp(+Xx7avRo z;Q%ogX>k60ZwHKzH`GYBLe6JOA1B$P#$#*8-i#96U-tEiAaUGPFSN z)4jR=3L4!;v2BkYC!OjS0h~6hJYc{TME)~_#vS%jy7b5!&z@)4wToWQ(X%$8$dJ!> zmoXyOAgKL`r>XdE{_ zKli-}!>}*%?XpVv=i5cX+y`wGoXZPRs`ukSO~)bYZOTWi{O1oiOhA}yJo_q*(_kjk zu2kQ^oH`iwAUTU$E6eR#MedFmw_(G5dm<$s;HebKGe8R)us9q_dL^23%*d@Cr_>vN zRo*BH&Zoz`5Bm6_&qtP%$9})QJ}G^exB$^EKTA!PPwp;SO}T(_P5c|a-3;bW(=9Q0 zXO$`0x}i*$f!6vT`=bSrA>HU44Bz2{2u=DJ3%I1x%1aeuc?jyJ`7pqx7{G%rL^^YR zI$4np-1f=u^a4ztMPtm14doHbQ{I9l!|2LJH?h8@oz?b%u|(VzaTI^kgvLl5O6)7^ zeWfs2@Ed66{5D>dW!{xb=C`z@=QyWLX0AS0idJe2wyE4v&7GkC-Ttsdx&|{-g-3t5 zB32Yp9UQMzKwd7~U8B4!)xvVPuv)s+mn7J9`_7)sYkf%n+;t>Os1;HUBiDFKJ>-bO!ll&PvtCqyfBU^Z7o|F zMA?tsd0@QgHbq*-SXso}uE8WQGij^-PgsbL)_`@Wrl%f0WfsMCoTY4M|O1DRq4(pgm=W0`+zZb zUJVWSDy9c=v+6c&U}goV%3By-ZoRZA$=Y!h4T4sQ$k1+#BxFB!*bO;M`a7p?HgLJk zcnAzmio=$NdzK^jV9co+GSg43IO%WI93VyGyWLW8PXM{YNA{;8@Jfp+=p@2@7(u@? zxpKO`TCRcf+p2>|5wY_AMenM&1LU%NbBn3IR;4d8c(Tijx?cdgqs#04TrXH2mvW$9 zTsReZp->YF*G5E@sDToj2&*pH7?c15H%ZH2i4e)<2{I{gb0{?uiLt~oIre%_y$j5g zjESj`cm0e_D7NS`NRc=wm*qG@yEM4~f6){bo`PM9#0ABkl3c-X0Z**D$u}hKe1HIVJpp zNN+>^bo=Hzh`>HK(clF8_55#f3blX~N?g@^oOy^3vCSEZ=&!pPU1{1~w$Te)ASZnGc?4j^$mE`4L2q!pJL3?bkq= zr(hg|`h>Ru56Rjn7wHl>QZckC<|_>X;{?Ck&#$5{iG(akl!}AQIOFCb7`{Ajc0Pg< zy%joOc1N95lmf~_UkD(L&H%8|yeroWzGGl0`HLWl5%O@fA6w5}6o{=ibO$B@_?ouq z+Q9Lh^N1KtKc)Y!krWG%k|^u|$OlcgE^+O~KZRL|?#C7KhVcZo(Byz%3){nD(6XuqmJO>r)H8V>yF$=(vI+PsqFP`#=StMj@rPjkC% z#Vg)|H`%vl74M4j?r-I-K}XE4Hl2GD_Yz%;TXm5{oSFrwI*Y%1G;~*>xPBh9r0a~! zx6F?AC&f0U%j<R*;a!zEHRVNs#ID~FfP=NsLbmd_!C-e(zt>LQOG>LhD%m%+L1Fy z;B={$EWhR0+~&_&-K|YkG<>qeplx)_$yAg_nhy+fhmUoQqsY-`fsTei~C3GfEB*M3i-m*<8BAMf8 z0Ng8xjm{C|vsWB}?B3G#>PZaY$ARgwTDZFQAjTlWLgMgO6#8*rEaF5IB3rG(*4cQ%!0(Qo*9J7oeQ%sD>qN8~9 z|MpW|%W&U<)rWDPDc3r#er+D_O?ZErK6HL9wa9v!qUVae-TyJOGEJGR$Q@PPcNNod z!;W)&dYs{6Wl&pYF;TRv>_?aN?YHsICP(LKe(85QT)NBXQ+o9um0q(lQzQWPqC*V8 z$BoTWNHBh9ESh6YuHcu*6yH`y6+67ji|Ibdr$w!z76Y62-Fcb7tZKCvbI)WQtyu#R z4)h95XPNqM)2k{$668(OMy)H)S}6}=x|MGdzuWRkEH;npu=n}QBS zkj8Bg5s`dwFwU!vZ+xg^b5d~+bXl}j+R4`XdYo+ferT_CI#V(ipX2NtRSZo_j0Ce) zcGi!L)Kw`O4!^3I{L0BMl}KkqR-2)2q^hj;Clv&9U*gF7@m@{>=x6026cZ^3hErfX zX-Chg^tr$EBsCbIfE>%B#w3Td#NpM-?c&Br}6v;qIxoNo`3dRO}CW zA0~?Vq|OO+r4)O9dKRgiCp(!fM0b|Cj*>F)YJHrx8Jl?wjgzM1e#$&>jmz2$821W9 zBxY81G_+>Ql1)!yh>759EBa*so07o0MRP0H~G^2+Bd1Hc~svVtZY2 zd(tViFtV7MWa4YcdD_a#$IJ{{UK`atZmzeaCCClFx9RP2=oH9IeZxMHigm7U>zQ>= zVhHxJsg8Icar;RfTK?`}{+za~SY}gIogB$2(2?U-Lnix!hxyNKt6P#0Miy<60acAw zxsBS{tj$07)HO|)ra91)tue0S3=Fvoya?7^q$$``1XG6F_YI*q zwo$%{Z6v<0SdHthpJ?-iceRCb|Bhi5JwWR#?~L8ZANCFSJP&Q${kfnx!er9=D-uE# znKES+%ZvqC-MJ_GiH+2aE5bf04P7lQo5MJbN6YJnbMdnzLBx=Zbukhp%In?ql%|8w z+#2Jd3Yv({swr?Q$`Uv(8FiX-HXCm7l)131VtP>PE5a7}Wc8d2@~_d#7i+wl=-as*aofi{j=6t?A)6Jw-r;6jBgNtZHn@;(;cv! zYvEElLxh$H0?@HC{ha zCq+#3jtX!rYusi*M`!YWOHQPjf-mM$K(%ILnNLU~%Ve%NPeEdCeu`~6`=UnFubIvm zgjCd9DHjiXYAZzIP);gwmDqT}5^da;ui-!V=bg2{tUcICZEQ|<`KVtSdU3D5nivpN z%clBU$c<-_TLv{c{sg=q2i^#8*>bLfF8sbtX@yyP(oS*}7xc0b{ciEygSXsve|5K1O&V{Ryui7g@;7(2vJ-_kUJRM~kY z0k3El5FeOky)BC@k?50OBnBj9Z#t*|oSv_jx3CY_do$a*{nz_ct@k6?{1L+oYhACcwCC>6bry4g8=89M*hUB3^~nFO(%ZaZ2g+8 z-6#MYl{HSmiRSCi1)j3)yARx4cvSE<__Be)Dae&1u~eMjoBqR;zr`ZA&p>>pfn;kG z04btE2e0HI%A)2v>7aiN+&+Iobzf5jdnyeDKJ-m*ZC%g3etNlfDrL4yULS0|c0FE3 zhbQ2=jb?g3-oCP5x=J?;Oy}4+JJsGEov-ISUQHwTe2&mxc`k3+$=2c0B6ED+X7psF z7@&@i5%MoGW#fohF*vgtqj>D8;R+wUpDd8FT?rjm;Kci z`McZu@6D0FJHLqna)AsOKQ2F@`hyctiftk=f9I2RP>I$Qc?FBE#XkrgZfk8C(+KVP z??1A6=a5^^Pdz9tZE<5zH%bO@L;}Ho9h~J&kiMD0r=0aRh^q*EuOfits_kRzTKOg@ zGk0E>WL|kJnJDuHRo6y3SPw2tMdB}-)6dF-;Qj9YCu0CNZrb!z78=fss7&O@$CJRF^=y$xGt1w<06hw@uB~l zjCK@~9*F8=Ch!3BlfK3HzUh(?fUs+iP>K*!QEjHuF7QnWbA$i~X??m<(Dz`>sqY+? zcXNq@95p5Q=y`@E4QID4G9>faS6)Wpts`ma)v{0Ydd(Hz%GRgd&Hq&U{@=4wDV zp96o=|EJec6=>WM^Z)?5Dxd)H|Mc3?$=%At@$UwdPQspOy?0Mfeu3WGfpu&Uz{s=> zK)ef%foE5C-6gXO^Zf7GS#DLVkP|MHN-a^7wl0{%kaP%0soR1Z9)=_Z;6& zt4kj}{OFALi%s@{9@y?StxMI{lBtW^4qKmh3@`5IqYF39i|pj}cboT%48G+N+mGj% z&*#_W%jgomma~1Gr{~SwL_Z=Z2`={>j_1`|MKijv0>3!Dlb(2f3W(JN! zQVw?~*3Vih-Y3p(8r?Un*h~2EEBku8UyJ4PJjGF5`hLkK1_%!k24Vd|?W{-Gk*tjek{E#)sO_@5a<-6d^`at8Ab`ZOk z-yI1FeA1&|fBhomy6wAl4nHw+{<7)KG5gLZIK^|Ww)NE%xAx=`^~LkyCGjQm9r}cR z=$OC0ICGuYw`_REkc0(yTMaVm$~lkDc)d!xzi~^)WuLf<@NuB^c<1yWzD=mur*wAj zc3<1z6Bdl|4W|F--stXVshmg}V)V7{*zoSw*1GI|zZZHjRZPJfu;1RKhu`)|6~Xrs z&ps#o9IScnG3=|ESR_kscyrPW@j*-{#d7L^?7G^*>PX@9agR{$@Zvs4CaejIy{m-> zEeg3n;+hF*fDfsu=6kQz^VZ<=<_MBCc-siSjjsm>>Wz!6*}+Z?9zQVa&9q14yCL792PLI?32GkoRmY+Dtt%|g(v?t z)JM&yP;2}3?uh1n&=T`g=V?-W1)SGLcHP+o2#cz?o#cG`z4IFlAAWMpjO*NnW~?Gp ze@M$n!b%m~qRsului9Nzp$4a!q(w7*-tG3r=gIi@v%fU3Wr@+rn zo$95T*Yo)oyGQ%?5s8OezVl1oOa;*BtN+WI6V(7ChI%8YHgO}C0T+m<7KdydRQ)l80|3vgcC47MRDd2^xMXouL`eu?wuREG2XR~MhZ5wj#1FOBNl5^0y;Yf2AP%8OOpO#^7vJJX zka?iP9TSI8nB7?syhCaWsKGI&#g8C+gNE?+O$>CDR`3QbHXybWv@rM2r1{q*+CL{j zc1dgj1^#h=brTjT9SFTU^k~1t7SKO)pR>e&g%W(-NBLK%=2y1hue|>e`Zp9v8Tq9p zq1%4}Tq+QMjX?dyBDoXPIPZT^{8y@2kDF?=fRwMh{+*Z$_7@*TgfFcqjR&*@(6s+W zk(L00+#MR?FV+hQu1yG?fA0F9p+ZNY#%Y(1Ze-nTE@90@f^IxjXYb2rKwk}CP5h;f zq+UrV5&snO#Msi-X1DHb-!^2e6>CQvVfBS0`;OI-39Ap9NFF+^s{9WBI#JQQLevE%(Cs(KdT@tNcmY(U+`o zSf8(UFhaEMGx`WL8)dke+d~@!4;MZzE19maL+jmiz9Tu})@Kg!$8Em{!)%-kY@MFFt@R8>CqL#U{=6aM=y7sYGM|PULkm4CZ*&6&8KF`^+bz>u z$_RM>7`!T$JDy5Jilo-!Yl$^-ed5bS+2c;BRx|EUN!e?rjcmFPsBz3;zn< zMpC@6YFzKWXRNn$wwxpQ4FC1{2_fU_HTp8P|1$r9VA-2CxMlC0@nrqlqI5vV_txD7 zCCM#4G`x4{E5(K;M(@CmX2$Eju8yPAZB66z?bFrXCtoFqoZi)f zyuiuzLkL+hW*_;~IkFV$vZ!(7MGd-zmZ5tR==lU1KsiI>s+UaaRWqGKZ6V^!2}rVm zwh_nbPUc`r?Bv<|?Xc4=+iFYq*mvx*6MMfElPt4biWpU+ zM=^GpZ@|(!L|qY?A-o@TouHiV9SPyHD~J_v{(zQgrDN%H%9CK%Hm{6fA$E`K%VL#C_zRX@%~|WG0=0VwBTKGkiCEL zt!P_nbI7)=d{>qG>6d*5$~=C{_9fBhNBTm?jO)wY$j!&i@Q_ExyS=;5<44lx()r8$ zueVb>27}IzR=%tU`nQ=8P>&A)_|**eR$dUj?T(g|k$b{t#kf~i{f(f4(hEmNI1!l% zvWc9B6gcrn?DkIOi)_Uc!VLaW*6q$Y8W-;B$4HhPdo*4PUD46I>c4#1et6nuNxmNf+d)3SaQIT z2L#aNbGNi6^s11yAZZTjz^S3P$-phMGjhqt&}_UpIIv5CQT_6@H^*U3rOWrN@W5oemLeL(kNQY)p zJ$R0=6dirR-IlqNhQiWH!~H}o>UQ3nz-C=8t)W6isWRdA%iS70j45?Pq#eRnmV2*< z=h^0a$7~Ur=Ci%)Z&PqsEGX7_V8R){8DF(Jk?FjN@0}f|(N>E2J&A0Wl#jKh)}(e4 zT7poT7IC&<6QkUv7}~tbCa3jBk~kW)3@<`AQ0e)m_NGZ1udX96h5B zFV9OwBg)@5>&%9EFjm14gJ>D2enux>h6aCk8JEfnL_^?>GLh2}=tv6HRzfc0!QEuw z*5Q$ptN4^xLo0?mN_0kjvPuH_0V`*-c|)IzA{Zv>nSjFH1P+l~VAT3>-ZxZY;Gb2CM~8vdSdo=3E>r<+W$3Lvq)T znN~6+HNSF06qr4Bgh!r-JPHQV+aDH?<%8EFsW|51O7oXa5LAa+ZB%Ibuh}|U4Cfe^ zhVBRF{2E6VMePB1*w@~nOBa6X(n4-z zDYv+;NVY>g1tDVcKyc*jtTD4sP<3qI+LtCQ>q1+Ut=Gnr{kcARBq%{0Em_4OSie^a zty<~(J-P6FLvg)LyxFlszoVFaRYKE2+j5LCo^%Aah2%q&U4mIwa*9KMX}=KK)XJB{5qB{OeK7LSLoyBlX&iQz!s*<>M|L7D$0|P3i zm(U1)6rmpcpxNruX@$9&o;2l&g{=}IBOmZ(>~K8n|!V` zQ=IyK?!tf`1!q$F5L7ph*~sN4?J)Y7PhrR6bQ ztKbS{3Uc-j#RJMM_9m=rqn5^Hpq+;|+YwR&H=R&FrzSPHMs37W2ng>R=_%Rp(~9lG z_}L>e6!WR)(m+JAglh&zP#IL>ZM^#2Ula}>sW50^54embzrN|*@4o3cZD1AvS;Hxs z-!@ON{K^1)sic@T@qPJe4}7;fMb|j^(zQ0?8|eL(m+O;;8p!I6K`A3%(z( zMc`_iNR%DFe_W|uE&_l3Dm@+VAWJFSfipYIdnN2x33kG0N~VeYv<4I3E;8;Hw9=Td z4%!K5?SdXFQW`}gH9Cc1zPGBo^U7%+pTqnbxhaoY7`mmdwS#dI)rBnUc*o{!wd~@y zjp_{11?fczCb5$=faEc6AB}zm*2t;LkCw+?Pm{-P)EkB$balYSUEC+}V5v8UT^@ik zhyA^T7r3jA{rC6it>KG>di38Q#;%ZEGRL>i=Hs67c0e^a$+H>Jj-7t&xl`9b^$=Zg zCXiiez_QxgkD}6chGx|dXk7+W;)q?SGb^U~><|9y=>;tcJJKV}E5l%^^P}&yK?)xZD=~Z_c=~#m>8soet`Pwp`QKKwExn zBhaHnccRIpccw5Lkl(hiZ?LIu9ZhroSX4NNeY`Uwj=!;wFQTt`2)X>^?d&9`qR9Pv zZw;onwiALC$pZK0KtdYodz0>?UES@)`+K`zdMuYT&51Iz)qzdMHYr7B*VM1P; z6=w9TELa9z!S*X04aQrv>#y+Ae}pgmPx#57@IXAlu5xd-JDZ=tHy)Pn^CAlw4VKN$ zA~_25pq=u)$fre|!tg2O==bsGu~sDk9`0RHKTFZKRzl@#EPau>GO+zSvo*<_5$}&G z)2*N9%od~o=~1qNJS^bm28vEax{SF=*2{8rb>&J~PJ`Klh!!f=mPIa$=u~dob?b4X&z0rrYf@CP?)$MV5KmRkLke7(X=9g_ zBC6@~w=z{4XiZ-tJt%jAfwJZ4rwBb-mAgt)tU`>rEf!vD29Cl4UG`IQ2_EbF)A;FF zDG)K4mv7;n7q;caND1h`Dd78jT)9L8anv%VM#PIQFZ7Z>H}SV-1aE~4Dup5$xowhv zp}!w!-n}^9i5`)wjVPVoc-=Nipp=CgPDP&NO%qOi-(Pi6D>pSyic{eCetba!p&2fX zngFsWXM5a!4-+ehRXS{4P^!1ikXTSd4?KC~vS~-QdC_FXogO2W&b3*4NfYr|lHn7o zT2#5yirUKGvP}wiU9g2^qACp~|5j}rspzXtWsr)qxnY=1w_Bw;QQB}%mULIT$`CB% z;xpUCAv(kZ)lC-YuW9++ggcBV(#+HUQcr9e4>q>D+@dYUt3ai^q;6(W?S(jJe(?B| z0_bLKrX<4e>fu%ygk~jkZ3Ze5iV6rSh8nYIfi5Q;k4%ic1)@~StwM$8^tZ6A2tSvn ze?K8N--)Jh0TBVHUP2!~d8GLlR6r!YTl2_8c3M}t1!C;~;DC_)6GwJm0v&L-E6oTSQQsU2F0?Ky`ob7EQ{5t(wRi_HaeKg7-$}~Wy81N`?${-6@AFqs< z7HD2;XnpW)S{gXq?XfpJ)`LZvO1oiM(&t6^pERbvOtb+kX~3!w3%&-qvbhb%StCeI;{C_nIeIbvL>ab=+eLb5KgCRC=XETi`CE#pS{L$`L9Rd}pn_5k|gDM-!^>hK?4b*+*UxM&<2*3df>5f#TgT zm*8Wp;={h}<>tB87usOKy9=6>0uMV%OxK>c4Q^O1@QFO6X8Ms7x-gycg|!hPW5^qgLchX8{0hM*a=pqK|29u?5&W zCxiM}e6Kp}a0RPjkDB$Vdwpl$(17`TvecysvFQS?y(TRhzvsyiB2eZgOanL&h~)qd z_D0*Kpb66yQ`7t)YRDR`tcgwITxRgxGs)3_;cN$tmZcHh22Q}1)KAA0?-a8jIbmF;Zq(mcH!wlYJ%s5nV=|%(Q1AteTD#(@zmav+sG;cp!j1Y=4 z>z@F?8H-E-Xvj|^s*6yUT3w3~KIuZ#K!*^^twH2@B>rz4i7V1I6^fVhB>w1L<@uw# zFGOA1-uv8`@e0R<4d-v&B4b}Ezb=fm-i$v3LWi7!hvbc$k<*&aBgUGCr`cpK|BdC5 z=pU9!_>EsI2f+WZ1Oco|H5_UC<;8GhEQD?iW^zgKpUzqt)>nm zV#*z-fetZx|1jy|eg3bE>nxpRAjN9ymR0J~ht)n$ramP-g~6VhbB7Q9A-F}^*}e4& z`Wn5&KWBH+Q4%*u*aeQ6V4E7IIwXb}6)(#n`CL}++Df@Hx-pd9Mk~uoyQwN2$%LYp znyrQ!rPNTUowXBu(yz$oY$a61dyoKUo$oN6;PThsFP0Fs6}hg9nXd$8?e%KHjiz=$ z&ezCN@?mRf@4;3E*}|-m)_-eC#%oxa=pq~LWvCC6cUxqR&F&{*n9-J#PD^AqtP=!s zl=!r(9c3=+S(Ud?lYb2+aF{JC#t#}>>ra^PWqt)s{~g5fzk`yd4r%X?ZU#BS9FdOy zK&4i~T3yLxB2PRGaz-&@dUPTkSBfa8k z-*Py}ldr=ZvCNq6+(@T2A}s%6!Zu1UU6yl^#A$ZOh@Jexi2W~ydALWo&it9kQ-3pb z`QHq0GH*ks;J#vDqu!EXlhe$tN4R~KS3AG#|K3H8DCl`koSYgie+ z3Ds_AMaOO9{@I~Vp0_u9Xg)jmI&*>*FeJ1?5G-6aXy)l(#+pv;)a z@ogR2D@S8-0X8vrs~n4F_d#*GAIXi_B!INFmSj1S5jg_w+aPrask$Kt4Pw1ri-AN& z-MpE)VeZzP{?}2wfyYzH;=%H@7UW)aQ6I8p(-bYa*V7t_rZ1SZ%||Cqy>XXNmy@Os zX}}=t546-@&`4j<;8K51-;-@yOR&lMe?hw#Pkcdhv;7VIlN31u?*9RO-8~4|8J45B z<<%zEr4M;pRo;hWGoMXE44>^L^EmRFos&>#$oyd6CW+0x;sAQ&g zkiToc59!Y-y9l$za{=Zb;1ABDU*JmMe}T6!vLHv${Xf9x^d)wlqf@pw9R2~`uP^be zsP+V<)}ny&v)}0__=!?m9DSFb?sk`d8_!cCb30TP?q~bSxMcqQ)AC+wS20LQ;VX?g zT==gj+q%SI@0DBusx?m4`2t^=uB@ulYuDzZSQ@kPt$6@Vh4Ut9Ib3JgfpxW}E_l8A z^jX&X!giiAJ7TL6-sDZy;ITnB+E{se0#?NuO_gK^10!6`mjWG|@Qist+x8_A7>D>4?jDT|3PM2I6_YAT>phNnq`{ zo-LD2C&PRco@dFo0BUAdxs94<`Bhe4KxfM(^S#S9>w=}q1r$*Rc&_ng%RkxUl0V-9 zH`fAas^{RiyO}H8pI@%WlNw8S-gwIPn^Sp0vBWUX97~jWy5G6)dy z{MzMy8K+Ezo`CQ?KTB0-N_o+iRFb(SxOqB1vv6;~XEGN}zl+CR`*P(!HEKQ zvRlu2Ga;DXr74qOiY3h9vzF$pQUGWS8~-pGXdw?>#deM=Vu7 zUm}rYCzo zA&b;UEgnM{;}6ESm6F?f1`f||K9;izoIpZ-8gmHqT9cew5Wo;no-4)(?@%5qtwVvX z2(~B?pylbjIfVWm^Je{E!G8ENW`UqB!6ay0U#E^8;7}X@LBCKy1CUk%i9`bWQgRM~ zs(a&*IG{-*2x^8dE4FO#?ADZ~Ff@5v6XJ#xw)?K4=6=gie4s;9h71MuJWNbdoUi1JHX=dJ5M4Ukti_ z?l8Nc4=p;`$5Uwix=Uob{9P)noxSHHi9^s=KGH$x;WAGFV^-67kZ{bu1*$#(6#1RPZh&;+Nc5x7r;xhxXHatnodCBO{m|0%8Q`~sW=$j${~{M9@P`~m(3Rlz z_t7!K9nRmi_>2R1jXr<`pnopl^j7{bn8T@;2J zQQlWA`s9?Rb|1i7)x|3y*ANdh`d-&kWL=62*Nka!BiWUXFZ0gJzsx&_03Y?YY6baE z^Q?2U|6yKjmsNM_)Jg)wKNvy{Kp&pr>`q{lPxS&@>MN1wmbp1MZ5OJQe16!@HUP2RQ>pDUaNJZLH6?#e#mUtI%lbb^8*_jcmIvwC3rS zzK70Us1@j&&`ZQ^;_i|t#L&yUm7$DR;^}arO$@zPYt{wM94bk`7-*N+mnIvo+lnVa zxh{K1#vV9^o*{h}I}SukfwY|7++0zr#R0*WV&xd9?+HX))mCbW<@TQaZ<^)-KY?zc z$-0j{`{g7iX8`P^CTk)@364UH&?hoH9j_a=h;G042*h*UDv40;*zXqkul>QHwiPfb zYsn=#S_V8~&zd^Tjy=1v)AvoM zBegB*Sw&ki@yQzCNn0kntOc8S=^!roqc8JznXM(&n)mtBqc&-Yu=^ z`s(p9n9^2@nibO__L9$JD9Q|bAKiCeh#1}NfK?Vn7TX2L7 zvqP{DO#=Ky;CxDm0kV|Ne!Z022+!lT`8d<&t8CXyiAcSPvsPjmZjC<6>EVBMp?5Up zMu?#E%PPt#H$ioZ<-V267B0rI9cWZByCv2&1&D;=!Bw6>W-S?2+ntP~(Wiz1 zP~YzEeUyqjw>bDv-=t}u@{akvyZoShN{5TTfaYV$u`OJTdHy4D)F6~kO2S;(ju(^z%rk*)~T>|4)-@zQ@;{@l$XR6X36A08^ zjxeFL4^2bP_@NzO8e7G{Um~oc1BD?6U#gY=c-I6!Gf~0{k#9_4%VW^HL{cr##4@72 zg=29VHV&+UYUN`GPziYW<8*FLMg^!;zDEU8U}Nm@Oo;cU+pEO~(mG%Vq>piWloUah zpfiGC!{K+Y2|W`5#ugY%%ccT@iR~>B!Iq#Oi+;=p|8;TVDl|iMg)}IK?zj4OfRVlt z6=a-CWE^zfzUUo}zH7RE`{jC^i6anzzH78;CA+VV{~)ZO-G-az9e6Z*(WGv#y|xKe z@AaO4JSYbouXOy5Th31F)iV>w2xPP?Vl;O*cjJo8gSDzGIfrh8z@J{fNVGj6#}?{; zC$N|Mli)P$uLO3Ft^xZXBOMSU=e>B*E8A{dm6@`3ou+}2KxSOoVc0=Ct=A7H@Hn=T zXemm`$Gd5PUynXh&Tb2J{pcObbi0cUCx8nx=eIx|gj0>F|qR)Q+ zd=8&uE0M_)aKt{T3}7UpDjwPnXM-&5Z}?-Df54X*nSI*<{Stq)+iKep0oZXg#PZ+a zl)xkVPw#hV@Hk|CKv+GUKCbS-C=q(G642`3z{TSelSD~q^X!T)F59}|$CQfLq>_tV zw{lU-sl=*w1f+^Ru2PGpv5{=mu1<+!)z{xM;?e+)ikl*j2&Q+aId`mIb;EP(zN$i^PB1eW z8ZQ2(3U+BLSvd)!O7^v1CXMCGH!6fBSxk-xgk3&&(zOmv%2r0IYk;e-x>?cEJYZp% zehM3!ApK%3+0fS4pu8>(nY&2 zU+Y*YP2dui#gKngc&-RUlC*P1JRin2~`*mvUxe0*jHVo+i7*Z)B2vw(b}Q z*KyuZAAIc2e62-mW^xKsyn>WEqQ8^nAJ#{}i~;yYH=_@diyG87O2qc1vhQS4|IaC) zsqA-r$TTB{hNv7&F*nSx#)@OgGAk~);(bcr!9SrGzMwE7|3EQB3>og!&9EDN$z)1( zXTbNcG8}DJdC`@~PD14tx>d*Q6kw@i`agud19T?M{w*Ba6Wg|JPn=9_+qP{^%!zH= zHYWDO6Hc7_ogp< z;Sb$L10t{5atSikVkVl~u3q@nB!y-)vt#vi!E+RvGfJ9<;Y;hu>QQE#SwQhf)^Hsj z6$eioX8h4#veP#-0TiSiV(OU(zn3zzm9Vu7;_@iYlXd+>`!_?Ao65>n!mN?;9iRS) z6ru)ZU^(KMaj+fY|141u0ekO<;Pf|$DuA=i(n6J$JeAg$u^YfRo=h)DU;ZPar-lY7 z1i5N)65Fi02IHSBt_~ImK*XdJ@Y|tiCpqpj)rgdc+WKFjQ6VtW@dfEJW zW!J^qO>(?HMmRL8@>uoH&w&ctdoKS2`3$r?n5&M%u}PgTWIt zM3KXX^F;2Ctuu!RpV1~&*x&ounPI>86U^Z>P1vGFLYL!UmdrQ?yD^Z*&mzXpdP`^q zLW6yQB1e*mZ!R_S0xlu(w-xNmd@0nY^sR6a4oR%euqXwxE0a>l$56-*VUGYqgQ7-K zAuJ{I>$O4(1b3iTMwF{nFUM9@@7N~K?@N-xkY z5vd*vpN#p@yRYO3L!NUrNQxK%@5W6Bh>w=P6($ISB1XAcJ2T?Utio0TmL-xa{R4#d z38eLJAe&F1ML)pm5y|{_vt=l%=*=>dC|+xf_`eW%D*$zi1B3M!D!{lOu@dDPbh^LoRtH`dfiMBE@v_TN9=eOXQp+z=C>=%5YTa2chBw5N`rfB5+|C7h>?HY~c$)zPQZ=fP#-nY$EV&R}5x6`e<<&cwXAQ zfHap};#(sr`Dox!2n8h!c>yI)T zCpj8?;rpFR5G%fo#c2c~{PErI-QA=6#iwnviv8@*HrxmM#Y5En{+>sJZuiI0%;9C`$J5ov^ZS`w$6M~q#HP;8%l&0XO%3AJRqg{|YX4T( zIv+2c9(qSlS0#RP=H}7DyB%U?np>uPt}5b$n;ysdh}*P2C+BO=%EggE+dA3sQPlla z)aF}RTN=Ec6+=|m?S~6Qkkri|OCO84xBrf35^jG4DPl>cDLRX8ozx~&N8fzeO1rad+a#uYF3t2Evw#I z-yJPzG$2HOa>pn>%(+@}-0oUjXUOEGgS{^{tb*`{+vtXQfUdn2prsYDSGm|X5y z@^Lh6TfH#rSR(df=EnOvBk%)*+3%@#-3$S;Vr1#9BkO)sZ|qwSL(cX#&-7H;Q}x}! zt>N2~w`1G;!!|+vpLDJ}CZ?x%-@3Plf%BjJf3BD}?Vm|j6e9xERJXg(pKbrNyQ|~b z8ed!V$SgM-KPp$uRG_j>uL^uz*R(iKqT9X5zSHYAxFv9;<5R(%?za6IBYxOz#UR6= z6?kj(c&zt+t(BMS>=96xM|gi3(QB@lV%ON%-j**Z2_i^ks31^{i<`KAdD(sHzh5|Y zc>2gmJ@dOtja%9Oz#%yLC>si!TKDwx&ie|hxT3d`Hm{ zT_=KLS8+y%hlnaefbjm&u({h-I4;9ShjCKv!%^A9PS$wDh=XA_LS{KaVreG27%RUx z{k=3BT9HS2$n_yJj6|uyrd2s7cT+I-%8UbQ|78t6@6p#ah@d-nvo{2A>emk76ei#l z%fr2Zmpbly_tUN<99vKI!_36bdmG8Rtel7R4n6esq2r6a`xE*@aE{{BjHllZ4l`~G zB7vFjwcEBz4_ZbO4p7!&3^npmo0e*JF@~JJvKm{P+btC%nqGy8Z&kzn3^P$-hYLr5 zse)ZEE>9!6HHM^k-Z>OlG&sBNi4pb4 zEnDFm)M)h0dXGnY>bA`@95b00B`s!`-%MyZju~7Z@x^U_>P6dE(HXUIU}pEG?<`CZE>R>PMRTpfgG~D8OQps@H*6j?ry?Xufy<%!Y1xY`tRcYE_mhQM8hY5{u7!092|`%Lt&+@Fcur)+?6i%UOI8b9IxLix`G|B3Q{W`W7p0&f4k z;3o*D%$zMSE`&u35JFHe0F3Rwxc)=wC&(!svK=59G$5JPKgoLSY+-j8#hN~GHbFSy z=09=%Gr@mot`%R+xVC7gL^^EXvdlUN-a!7QjMgCeNmDCC3>%Hhl zCqUOSaSu9jMu)08GefPPx(9!!-|*x(@<+;FD-f5-t0HcuVrutCsem0^wAHr$$MNfB z*x_OJc>kX-(Ku29?i0RSuAHvVm)vdMAIDbnr&bSaRU`WxuqAF2h#2pW?oUt`j$S8k z8`<4xyxARFFDLZXkj)*&kvY})aC>b6F8gQj_|c2oYlpgWe2m81Q};N{6>o7-#+C1F z^j*96H*r2EW5-L+6Hf6DF_eVClzM@YHS2JlmZ5zUuB;y+^RoiJk>+O&7 zLoHP&WAk=ePJsUFdItWq-+D%@(Pf;+|8G2=Uc|+$)g> z_q&5uuaLsKgq~}l_I&1J)Sy1vrEf*S2cdFQNZbpM`;xjz+^zWomqJ2?c16X_F=vH6 zG~o}+#3|)p5Dp`r6qegDt;F6$K&ppCm=Vwd(v@S&CQ2T{;FKqy6cS^~VLC+|eya-1 z@yqt9T(gFu%HG!%cMP~J-O9P{T?p_W=ViXW?Q>^)=*jnW?0F!ZvFHQ4aZ(4A z?5FfETsKxZaILBYrrQ26k_iH=18Z1yfe<)9q+5!u#u87rr!pow)H|^y+VM1|Svn=8 zD9+G(zMjad6Ya2{b|z8VAf#33H{_! zpFiLkmu>1Z&S&N#KToHSmcM_wdV`=6AUB3{xi-#ALMUrBM`PS;rl9w~%Z-EmT@U4V0%^y{Wem4o%py)xnC z@%O5JPijN5qho=n)UUn_6Y|UJ!}gM)XD7|k``>P$GGrGiiB(4`qD8y(PIv-22(9hb z=Z(uIWLC%d6QZe8#U0k1-y4_B`qpo6>kS>ZvgsKs{@A+29*oANZKuKFO*xw_ZSd(D zY@k-3D3%=JS7rPx!Dq7xUAZe=*Nl7jb~pJ^AR>>UzLZ^<+RvFD~%I|b;xTI4vE>`Po&SU=0@=X;5oXh#-5T&8Laoojt{yx-wp{=9*=sYhEw6$`I8ba8bz0>`Vee2Qo8>JCE_s%rAdJ$cZva=X>f{Cy0 z%D!4{5809`98+Wu%{qACbs~)yo}@L1I@%yUHBV|#jvgw^LO!j*oInoQ5{aH0@H?{j za1WY}mA513H~UoY_upU0B1Hz8VB-rDEvN;MHm>*jb_E{7nA>~(E@EyJ^9H;f6s(@R zcs8>p6#CCkZoS&@pS;?1??IBdCZ3T7Ggg@SkKP%H8^Q^>#qWP%CKMViB095X>6jF{B01u5c^%5+!&?O2ud=%npK=M7@*1b)-1Afm#q z0LP?YoNUyyY$lPUm)3I+jjnj~iq6@pk^yw%=P`Xp&yM=o)3R|eu|~B&H?kTy{Wf0@ zy_6~fe5x{)L(b2>Is07B-#^i>S?7K^)!WLy?K9s=aW;QXI&JCqm4x}7vDHmyD!RJ) zvyJ*mLB*H8#w=^TT@KAdlG!8|N@Cc?&Un0Coh@ZT;P}{6dD3?hy@>ikQkKjMI3zy5T7-D(6!*78TPdl<8Ig_!f&Aqs|*M2tL z5P+U$*pgn_G#+}|_koazwV$vqv>Hi?&_mZh5l4uN7Cn1R9T4DqtQo4jHErBpzyOm8 z5k_Sa`&qf744%%{yq$^}ts-xW1)=Svc02Z1d3d!DvJgX#9uPV7mta;htK7OgySZxM zXTdv@w*(C+=z0!X62Bt!QoCMU?=X0rXV0pF_a1})hJ0-b>lpy~&O6HoOgpHs-8vTs z4T|~Rym5IYrJxPjnCfq@&74C|`+L`;Z56%E`{uZ0=~ie*>O&_Uj{xClO~dn?lBmPM zU?in?-2lmV)%v5K@D~9X+VoN!cx zb2+u>pJL)&eU6RHIsumrE-wyyuk$ULAVN&piD$9Ru3c+_ zOZW{O$5G3|R6{p?tfpWuP`Kt8p;nH!qa|O|5EAklS0{-vtb@K1{fgse60M8Qod?y|w~S5?g?hP`aFwuh{G!FX75k`(spZu^cV+ zXxoz3mmAl{+tAt9mSb1KiX!!AiLE^ae{aBVNb$YZ{qe@5!{cjnwikQY&PHHs+AYY> zdJD#smYEzL__)lLxRsO3iYhYC6`@U<{N*Mj+fX7~aU-hX03X>^3Ria^C@mnO3(srg zO1YXs88vu4S}%?Lv7#Z09HO#v6AFB0g8>Swc?y~xy4V)uY$ESudn#JtR?_6iV$JlN3u!U^(Gtp~{|ncAT?>>^6C$*{ zMKxWX_pC~h^h;PvYFFj8%J$yEOuXn`y)vT5_-+;3Nfp}f)R`(6yDDfqS^lt=Sh!92 zW1tdU=iMrelPUuQOm4`Z56eK&sR8+?Ro{vwW<0G>+vawwOc<0+A%7C9DN-@^8vV`fz8Y8pSd*RYErcH--7IyZ?qPQl3a4K=Px%l4FvM6|1t zva9lM@g~*-P;|Gtf!=p13bNze<-IR}wVRT*gLmqk<(h47fzWS+gQK#$xLRK_N=b9& zthvlG`I6MjCBprlx^PW^&7g8TyYOm`wC zbplgpr1{}AXq~JJ)u{8aU(U3AAIZ9-uZIJ+xm>uF_-aE$78?eqO1{7H*PshDqR=F$ z@*k2^wDQ^RZ1xJq!H=rMQ-)$sM9Z&NuSZv(FSLYy-4mh4o!}E*2KP(e3O!#LQfUd& zdQGktWcBKFs1yt37y{Sg0pawLZ}$KB>082wy zEE%Wsj(@WGbALg_s6>6AscaxxVZAB`j0^QnCue}FFaQ^Nhj>EZ+&kPk)~#R_9A?Nx6%6VelQdg zF%Vv@1Ko*AI8g5_930a8z zXKGO(eRGJ=JkL`JMNWX)@)Fxib2niy!94Vg1!VI1mvC4=eB`R-xBWxlY5l6*5%%Y@4+O8s^gq zdoUC?a|o9evN}r$Q;^p8J}6}M*U>!ChibBH7-S&Ki~yq29PT;VX$s?>jB&u-@SjDq zqzMMpc2Bs1NBrAE1dLx8j64)-?|Si%^z0$VE7&y_{e1i6E4qcAp=%T?0~#?B2Vtwb zJ@)_PBP{}ENbXFpr3o(n-ULq+7%OAYjTFGAjLFg(f)$MvFcb&Jt$(FCUxozipO1xU zcxr(wuFKi_Szx~Z=K_<%BYqsYakziD0gU^8-*^SI3OIG0+}eL#5(m(LLDr|hA>rmd z`Rd2N)9hLHypkyUzO|-;JMx0jB1?8VDHh z&+S7dc&9;l85tT#n^~XI>JPh3UH58`cjRX6Y-H_jW$o&e91jcm3RQZ$^II=~o8U?> zodgFBh4EYRNc8z@^di-03vt8(PKpX$TUy%_;oFGzQT<3XTA$1+wdRS4aLkYFv8toN zT-}F#=cAdL*S-pl`3eHahQ7`s#~% zKL=vJujIZ-BI@=q>3;CyL+&RUs>mHekTspqq$jQ2q`*mAKT1Cob^2;V{eIrP=h(ZS zkdGL~NJmdiKf=H^`nB%Oi0y7&v#n@m`TLox(|2-eYf{$zt;*|7G0VMDZY(g352j|j zQ#W`e_o0^N=-!Oa)%|VQ{VjkeS6=$`YikNl@?vp~v7G6I8Z%|xF3nof&9ezz|5@0| zcK8Z|02#KPv8K9dhMswJzTE;Ll(^b4<=1U(mtu&T+<~*dg{^FNuUrA1U}}xu^%A@H znJWOM3-}L%o$r-j5o)$EYy7a~O@$(8FTU9-C}nmha;4MhjpYr7))>o=pQSZH)ez|V zk?8ikCYyUFSQw;R_~tW(cB4^aAAhwNIJ4{jca-)Og5h1#jAUB(wZh-eQ)goCZzIgY z!nz+nPLVo&lRDq8jrpPY9w6AtH}ZPeL&HH?CaX7=rQ(Bt7Q}qWt#Uqw2AtaXf6;S_a0sj0_uqQ# z{II@~G{c{rk!t?Bzcslol-x?Y-`hQa<$4;Zho_QPvvgCMcHI%`4BKZ{~3w;Ca3x?FPB(Pcxy)Pb+3Z9{- zz;xo4U&#wkR?!Fb^4WR%BCK|CkA-YA<9plk#A06_Fs6BHf+DP+A^@!Z-y&iLMH{|$>HaN%DGz!Mj;0gebiI)I6lv-_gzA%)E4?3{ zzX}B@ZWjss+$638ppC)TD_BgF0Sqo4VcPxO+?C1=z~?hQ1S?U7LC8vxcyvkk$OG9c z$Rtrl#2#t^7S`Wl9RIIk%+*+5ESf5)($jT?l*n0LG&Oln)$!}Oeq)qt=Jw{&SY?BD zO=)Uj{p5P~H)5u0LeQy}Nu#0PTz7BSx|-*z^HQ(!mF>8Ddz;u3$h<&oFm{l#vq)$B zShH;!&54#9nZK1k37OR6KYvIc=sR^-ip(vAHyy;G6ERS7tP8EAfBO-*5|KcrZ3OBk(cqka!bL3jE=$V12j2N;{OhInE3(riK; zB^g7|JorZ3p&w~&ZSY3oBEJ)xKq~u2HO*i`SvL~fIWQZ)UGwUMg zCh&$GgjGRTtaxB^CN+kXlEHr#?(n{l5|`;I--_mN>5t@Ta!Y%-bk2>EiURNucmM~R>RN{nNU6NO-@GcgD*dBFIqw*tY0iEA0%7~G_w4L?w=J>m2`dnvf|74Pb(gj{sr++3b5kK|HF!5gM*Nv1Bm0W z`lK66Z&Hu(iR(4&p%u$+1GpAGUm(}2_&3^2%h`-cOD^f?MjM+pu#TST%_~&B$+b7O z?K(Mj$)j(H=G-~hymr8rmU0Gf9y?go(m~dW#=V0`MmE?du1X&`%rjOJG5D%)m`P3F;RWs_6E*m+AN$6$x8A@Hp&T4q+Vkp(Ta2; zRQ(gRPMnsm2CcFF%p~Oy<}-NjveB(HF(Ja)aFHyfDtAj& zcNA1<{MAA0LW`6FIaip95Q1pi#M2?e*|MPM(5wbg#!`U?bm*NyT zv?>*;AOp*Exql&9VNwUMp{cafEwc*zo2#PPNPcAlXdQ$hyi^Q#-KBrYqwyHt92=%3V=&k7?|DVqMkQ@#-ixLlFo- z@ECOcd!xlEbSo8UM#J(n1nxoXP-%VHrE%LRwkbr=L2Lx5Cemg5MRpfTt4v{lX(CE$ z-?Gjym72b#Y8O({4r0p%r$(|F9#T~0rRZQ-4Ti!Q!VhB8^`4HDX3{N}q9P8fFyJ|d zvqkH+6mL2HZ?f2^R`1<9e5z^z(lvxs@2s{unI~BVyYTaV*58i3e{;G8aY8bd>Bn|5 zm8B^kOpOhqA6B8M-h`gNEeCh;m-8V$HAy(>4E2}OSF!uh-feh~sHP-4Lu(Yai^dQ= zohPoji+R7AhE_QgCh{ZvImm#U_sdGM+Q?~{eFvqg6|Bz4lVF$B_=4KV=!FGMhx^&s zYg9qyVp3tI5P=7@z~V*7yp-`^YMm;k535RhCDDs8@T>}H3U!tY66#X_3Rivc{Hl}x*%#(hC(V%jL()@&-pioKqYW( zl}V|TB4s8@Wo5~s|3)o>{%=%5gitbq#ai<3@GAdUpj`{FAORNr(}Jmv$fPI2yVaZf2s@G#pc}5$o}HH5B`a~*%5i;1gA15S=7n#^;vh{hTkanVZaO5-A$AgKQ1L_y z6FDYrQf$x11f;3A?2{Zko1B= z5ieB1Sg2gIiC>93dxW1IPt2MExRC~_Y2 zqkxVE8P(keh*A6~4fSlh3bx{>(oh(HQc@LwQaJ^F(0F_91iCFrXfsrK=`Bsedkj)s zNzSxJF4Nm4f{N!OExm@(|r=Qs60CDxDxkNNM(>nrR94qCeB(?L{-v672`!p`JXT;|&~O*0jklc(+NST_CD>dryQMdvw6YP&1IU z@%HCsc2b$JVQJA5UpZgBa|tozZvPHTTqdHCfcjTh?)3e#s}x#l-vB1bWF<6nopQ%= z!58KbCGd>2iYRJp!A3ahTwqDg>{3t5g5WO_b!sR-jQ_tr^SJk$W7mtI%JAz41RKe3 zS|~w>W&RTv==)Th;V~I*EG{Q%nO$-E!UZM!<^tEvFRm$Ga&O}%1R+=@&#*jrtSOP% z;0+}j6H({7Lk^I)LK?PKH4|-*A*n)e#lp=)iu4j$T8pNrjQxc4xvpv{PYiBVbr)iF zd$x0haK-|0i`hhn;y!1|}B*Bfp+5A2Y zXRr8@pGa&S_vCjx2FB-45p+jT(qNN^fT)5KYuRNASF-lgG)>rl_b&EVJjtxRuf*MR zJuxvtI49wrf4E2sF+x7hFj?6uvJ()G$Yh_O<+sxH?A(TMZo<=9oirFHbcZl>auvTl zgy%o0IsK>!fIW#KS3xO5T%l%$g>Y{=HpBUWR>JweGxaR)BgP88?kWvpT|*8MAo=C7 z20jJ>Ux!g5Y{tJ4;Z>CK?ji1&g$p#wR38P+^%}iwBM8Km&xbRbA^Y`aHJMElzxzK1 z!E=he0$)QeFhxEBqP%acUR(1TrCk}fZH5Z~0tx&bh&Lj2`Wn($TNscwjAxLb9oz4B zA?2i+4kyFn(>zhQfPXI0yFOT3280l!p;-u-Bv8~N=pN$t2G=Q#Pj0oqCE)^u@A};0 z$bLXSW(kC02keLGwFezL0RLAb`!O2%mW>eb20V(ebNYYg{7gOj<52`NEXllIyOeKO zIOY-b5o-^TE~x_W8bmtM&*PQ1T$-dm3qap#Ifv`7ctSN@d5h*t=Zt@NwrgAqmonJ0MozqNP=JO;)6Tglv`2w>1lDvxvK zH$bp}$ZH>zBU;>N7p}+07ysK2WP{Jr;If+elyePNMAJzI0ATB??~_H-dP5Mx$y&#N#UbZ_dpy^sTo#dh>VdghtTPsRhrfGP zrb*C%Ux-Gt-h15)e6eXtD_P<+w_Z~^9NPtXapIk)b!l4yc&|Ajb1(@x1g;fcLnPA- z{>$%1ckTIj&D7r}qjxoUVm9Uth%mswsF**MU@hTy86O-K^8^F=!AkZ?_TR=}xYRoBznS8j&k&BXXTc%|8= zV(qV5n62GQTqkFPfn7SzY#g%J0)@4G1%*yq%L!0%&cKr^SqoSIJW}i>9{iZ_yv+;e z#$jLNSh7qxr+ii;d`7NuTa3m07d9A5JWkuX&#r@j<(%BIj{qXfv>(*n@u1^X?U%?Q!5j}lL_IOJG_OyoGH>@zZ5GCZWydI7}XO4=BBuAR?gAWdjM zvW|SYrV`F(AkWnyzQEaMbeyra1b}l+>0nE8PCdXCl`eRzLke`^$&kTPt()=dIlFaB zZyHS(Z?jJu(f>YP&~;FbA63yy2ba4}TnuT{D3PN)m@<^v@V+&va&l&JnpbYo?So#z zsi`cIP>Q{GZ6oGz)HH(03#1;qHu^pL#S!o29BL0yF8Bet2-4!m4S#E#J1Y@?hGVWVLFS2%mp4yCsQL{ z@6=+I@>(7T>0Xf~n7g0n~dM_w%%8d7YZ$g+KzFjg@41Zn^9UX4y89%DLZC+JT z#S%`(4aFRS>w7U(68l5=l%-(qyB({Pe~}Vje5E8Ko)V!sNmoS~mYbBLfM^P~Qx%~L z&@{}|+?(ur`kp<9;Td6pK)a2gfjQsL@5jGUU^owPl$Sm#RGlq9tqBxvyF~hZ@)&uB zWvwuC5>QEtZ^VHe4#FK46?JN-I|?hBAdE}x_UBMh5LZo5QhbJ_0EFZ^NpnPzFJPpu zFmvyK7Ul|Y1UVFivoocp*so)8TfKs3u_6-UYRh8(#zh5ZVbH}zV5`Vw0qUe6cR;u@ z{xA988op)Fj9eWw_xw`ptv#EFmxJdwy2(A||b}9Hlh8Fc+1!d6uIR zB}+UBysoWBnxY&`%7K zi;_Y|QBHi${Q!NtrJ6Dv{P4i>r^;awV^N6DyLYSDVG;bK5LZHwHV-)Drxk~!cO)D; zWxVEbj?9RFI{rhFcpN%LTtP{xPKG3}v=S;N&pzJ)J0Ki~wi-E{5{Vf*0Pqq9aJZd? z@+?N?RK#rvxq0nKo`ni#1Gy9%!$*OP$)mvz;BW)&sdTR)=SGOxd7af{4eXCce|Wmx zMQ00SXM~IqL~yLKX0QPgZ4qb8oq;r9%9P+5s23uE+SA9Z|AD(qvU>r;vQB|5V(b} zR27(ksp#}zbQeb7xR8|p{^^Jd$*>`PzQRmQPH0wIUJ)n zwb&JoU*Jc-1m*(&>$hZrdY}Tz6|)zdQ?CcCZ$rr*zpx4&#JJ;EWIAS{!xc-*^`mqM z*io|;>7X&L30Y81Oq^K*qaZ?Xn)1t-#V(fP!5z61&M4JrS)yXRGTy;rT!H;ySN^J? zT%iUp+!_eN?Oy~ub{Yx%Ct;wSDC++tIhDB3uF|35D4k%2anNW_G-^R`n-iE7*@k80 z#%L5vdOKnE7pd}FME|V7ENU!pt|cM4Y!&l^Ed^`Bl3m(J!?eE*S%drJlLA2a%aGz! zPyipPmCRrkSKgTP*;P?TO+YzubxF}6IKnuV8v|UDxEW)-k(SP`V@JgqwYZU7NDOqI zl(6*AdiUw@tR(so_I0tX6qY`tCq6!^o;>4nW10ev_`>n6Gi`Ei4u~Z+pXZf;0S{2u zT1U!+FVZUUrsv-4m}}1KUgl6of76i9rt}l+MTeVUv$B^zk!$D1D*E6wgBJ5u+7wk> z2Q8Zwoi36)`H?J@-HQW@5yhX0!(%~@X`G5m?BmBztpE;qfrUVvEhyjr`)0WaJD)`xaofEZvH z1O#0pZH97!nCb>AKn!ppj${%XigAI0EWREl;IeY z8XnTcn&$vW#z>F@i8E&EPD2prW!DK%>c%>I`Lt0*lDuH(8m&mQ^$fI1++#r(w9LN; zYDqJ3|4pcfC(B*=p@U>n8_35r!R9XI;SaIIE~R0byZ(Qu!wURVCxZ09)mg&<)Nw*} z`M;f_{Ts~q;Mpm`x#VvkTXZbQ+qG!fwttagroFlGOUi!z_#eBE7Yc~$^?(8a9Yg=e zUcF8x&dwILW`C`-YEs>F{K<*hy>#sGbwXOZB};A%_(%Xyy$_Jh9Y-Qu zzWg@HdgNHD>Gz9sw40~to^GeX5qX9zc-K7m6hnR(hQK)>Q7Rg0_S?CY66;q3R>suu zNJc7ser|s(pZ52QeSS85I?HrmPbBigL+{om)gMU_R4u&`ZSgQ*fmUT)b&q8nUjUou zRSo|*h*Z~95Wg@$0T*IE-xz(WT_(QJj^?6kVs*61mZDy<(iHx)Pj|=Vpq2E4)(WAY z9hm|f^N28HP06H_<6Wj zzx``a;mRroW(Q53L&%ZAY}WH6JP$ywnse4THGdUT- z`2wEMF*s(XB2N}4P*lR%1_~?`4tO+|C&E_BG(G zg1nFky1AmpJSQ>fyXN?Q%dt*fvX4~P0NSP1!R7vVJYLIH#Z`g%`DJWP3HX%FGWPhl zYe9tiW(moySZHqaV52&_(w;=LRuD_snVz_Od6e}BIl>6#DhqJ=>ajLH#?jj0EZ-m; z#m$vrrMp$QUIydex*&ww2Q!jUB|(93;b-Yjxq)mLsZ8anDpqAzq9I976@BC*D^WD{ z%uQBhB;^k=jykZ+aOpbX?pJPk!EX}a%7Aybsw3>2O@>po<&n!0&(F0h z`|S?g%CLhucGe%X?*NM_hdE)d&4<)@6N%jv?BZlfQ^3)+Ehmzjyl2_!cmIu8Uht#L zq)OAdCc^S$|64!jC2d(PVzO6TS=5FW^oG5J0$uqG&*mLq)h~aOWREEvf#krZIL6?k z)nz#3;3|&DnD-+h*0zAFvl+KrWeA#Lxruij^s$IIhZYVuOOzg3cg2)MT?99+Wo_wD z2BK2Cp<)NmUH#}p>|L=g`-Mqe+ECZ|`~}WqJj*9eeSG^p+?pQYceu9&7^m>N1!Z_XJ}jV%QVfcc+5Kw#;{njL zL?2dn_6REsD-p*Z5<&r&dW2~ay5wBzRhrXvzy{m&f9^3~*#`da<(0oQ50!xcTTnFv z{!st5ywc6YQ29R|_?X!~%K=6>pjof({)0s2edA~*;Y4OkypCj{W<+~jGNvZLVyLO- zKP(#Tm>qZIL?=XLTYlJ6^gB}dpX=?JAyoJB&KHdduEI8rhAE+VpkmN7&S8=-){At@ z!JiR?!(#@C4a=D8rH+vRpGqFXiq6BuTUE!M!$CGYrLYYa$ljDIa3C(#wLq(Wt)|4E zkGXE4XBlq*###2b6p}!un;M^sYu+fJ`vrNd2%^|I^2=@p%ET}I=AFPe`A(8E zlo!9jrcueElXiLZS2C7HmmGT6FE&<-;CXffT3-e8n2Gi45W6RT3ApUm-Y+f=@bHj7 zh|sOxkJoK(!2jE^7p^=fBM=~<7Z@NQlz%y9YG>=LVqj=(^0}APW@?}9Pe$C~E1yWp zv@B`sq$X5k>fzAF2?QK3pf9+!=<5j=f^G9J(>&I3j2E?19d|bIo)_F;7SmfnT=MkqNs2L!~80C=gCfOPGriOQAL_%u83q*9&|08sV|jQLHjE* zHaepec(t-`ntHZn*A@I?vdm5`aIvILCm@9DBuLA4xEM}3m${&_#n`gz3*7BnXZ(|H z0Jl3Z@2!aG!MEQaB|G;&&!JpAyWnf8%d|OoTL;dHBh@^iS#pg$T$pgai>W$j-i&e5 zdF0>PgOrYrX{mO)9QJCPWZC8not*5hFAN}_UEh|BFz9_KVz56fBwDz0P-C<+e3{Q3 zGDaMT-%2oWG3tjGoCR7jiGltAL*i>;>fkIOxA-P>_9G^Iel(lHyq4BH+g558!F;p_ z=BMGi6VpdiYmeS!PcFZ$3|z$P%ndn;R7B-C4xb zOc?$;GX1r~nWn7WIy+|fA2p=*gT?1{m&kUp^VN&xVtAAmk+?=tEo(|e!V}VN_zQ<# ze}m210hsgVf!ZoT*z@_f3|qWrgkO4?RBMrxijGG^vOmcnM~I(zy?gYOelMMc;RC;f zJIK5}XdWtgz!Pp4BRq^;GI6ddXg zmkSUer+54Wg6Q2H3uI>R2L!U|g^;AxmrhpQF>k*;-``JUT3D24u!8^Aty#JF zHs3+9JKOw2jOGdT-nU|2N-7>?h!s51c_PMfQ!*)~I90x3>%RWVWIJvy-9^yVfqFW7qg~r zkCWB?*Wn-wY)-?YJcpx+!&-j7}w-hH2` z9?zcK>~g%DfJT#gxBZ^aTl9Lg{gI>w&uVhtuJ_i??D#)!!zjdB;UU7LHh{dsgLr-c zoh!&w>jAd8t|!X}#n>Zt9w2b~B?3+#cpqHRcPT>@Am)!Sk7u7dW~de3%H&Z>)pS-L zAvuy7+Ir}TZ5X9ApI^BO)RK%TwJ!U54brws3cVU&-=k1zOC9W)BzS~Pzfp8XESq9O zTnH1J5C^8<QF}n=}tNMD|0m|HV1v2UPQX#*Rs!S zev$ovY-5dxal5cmD>QKihHYp4dsTgm}|-8GVVwSTrm?d>K*Q&2hk&a zrX}@eVv~cAu}wl*iOBa}uaNll_<2&}q)Qi_U*JQY2HUcM{Ci%^%7m-M1?v3e$F-iR zu_5n!;q7q=>h;2#14b*j(UzwDFivQSU7<2#Pz8go+&723mPglGqW`5wzPdGw9iGX(mc)6#$p5_<>Akc+fNBhh1{-HYM*1-k*-^JyuKb-W`ZW86hb>pOO( zccU3KRpRe_&hW(?uA6U@E~sd{GSwd9Trv|gCPnWt9~xSNM3+eNn|I_n!ZEDM zfnV|JF6vcKB~{JVz}kie?bit3A0#>*dAb)A<5$28(;W7*5Hv$Xak1*1Gf~pUsWpPz z=bx8Ju5@#iBX#UX4Mz-94|HOeyFhcc;tDmwNrLn30SgPc<+>g z!4=^QXw*IxQ;8+|zSFDVtIise_2qN!c#;w?#>eK~oVGMkkIgQWYH8;OCPjYo9n|4< z1sTZ+IBL%K=4uuCs@3W+6W-crVOzw%Vw@+7@gWm?%Fg$!8B$5P{J8fj$V?~r1(?C; z^$;5+un2BwP%(nGk3HDDY_Iihx#0D;w98ZuG6%D;7ujK#`J#{!mqsYQ1vIK?TRjh? zGSz5$+oK|p@XaOza_;=aJET&BBpNF7OP1FXZbs+44RzGLbB(f8Y*d*f-q*k_4hpn; zJ9~p8IQ!g3Yl{g zWpX^WzQRetmVL`oD5A!!PBXoF5HB}PZ*iE*YAej27nr_fw}#sKk=tcj^f}-B<<--< zOny?gcYd z5O}LAsp~l;igx%Oh?^>(3~~GW6j4%RQlaH3I;!Q9x0lQNMMw1$yo=%xjoMqc-CfB1 z)|E6a9_%j4?}EZt!*390Awag;P-O$pH{OJoH1QdDySivU8;j775a@>CL0wAEFIPm7 z9(TGhR)^4(p+aI|dTD-Or1%A8p+!5cmdPMpRz@wV?}7*-X^Zs=ft(qx@X9x2Pp#d; zMkjIXlI>m?ZNl2ajkSyIj9ve)4*Rclze>Zx`>U}2If&>}ljfyr+cF#Im3;kuYP?AW zmrLad{WVcVH1(<~=;i`#d?rye>*;~JV-RKen;YQx!II}?slm%Gd#;iz(1{?YRQ4Lz zYCa|5m2-vPH=bQ@v#+zZ-Hukgaha)3xY)U(O8~^Llfj-0}D^-dRru*`TIAhc(y|YdGT>!+)Br<>u_-{_9`OPN;GU6{fxA)!e=_-zAbq zU`rdN0^o5Ny<@`a9n1yem{x?Bo%pFkB&^K3ggKeN7~tg|1ap$yFTa`} zk=58DA+Z5E<=&jmbn~y}N%khm)tHrHvalD)ZC3`=CGLG%wBAG+Qj6sAPeHpxVaF2A7n!0b`O_03Z>D)A9PBDwDyn@iZC-yXr4r-VTlztdkA=gpA2sxl^^>(;^e2%!+9a8LDyK0@u3)WsLa;uYxSrPF+Pg8`mv`G- zwMX+sICNTVm2YSEuDb0i#O5nTsmAnP5@U1bu@vR&r;jQLkx`YBmRT7~Q74q*y1gEu zDcPVIJlnUI8SE#)LMp@)lo@)Zi?0$&&`0>#HipdgHmUPCKc7s%;r@q089J{SjcGZ; zS+KI?$H(i@O}fTqG(UiPbAw;Th907>Ihz*%L2zYFhj)a=Af3c}jm5bttENcqH!4NJ zRX^&Bnxwomd#V8ZoLuO?kSU%?(P`sr-M`3RW{RfU%9h;yJMv|zEuZeEBbsk} zkMFgUIy4Q;Z8UAEnJU7YwiITG+f4LK-eJQ1ZV3@NWz#{XnrNEaqCw&h@hDoYSJVxw z^H6CZ&VJtG-OZqrQ(*PQXv-++vQ+l?;b}9ux)KF5^Bj=)oR+Eafw#%F z2Xbdl4r0PDmYjX!j>ZcU ztrYGK=J`xS_U1RmdS${Vxli-ar{rf>tb)!lXcHj-5XKGwFkn|KY~k)-%M@05Vdtll zg&j=L-o*yGuIu1JqeCm(;3vi7_yKf9fR?zuLA13{K!FcW(r)T`ie#ZcrEA3PWObS+ zU<z=U?|`q7*ZfbbXzzPuxoQoDKM{s?u>iCjNg(|!TSQUj)5I&KT=@|d>ii@d)3W7PDq4{bore%I!O<}a&2Av z9KZq3mZH1h^@ycmJ*@8bEIEH%h(Q0r<0?OIk6V7bj<|#dpWBnz zwsm)(gxX8Fy6M)Hn)CL+?#?T8AtB3NPi=)*EIU^zNp62ZzYU0eCIX7Clp@;nD9!gh zX9=vB;ZBpWYV25lrNfaM3kvKYcD=`jaxp zZRrYGhoTFSG$EtbyVxD5BPSra!74ig3hOb)<4y@76rs56+xRIGU`Vh>X1gusC67NvG%iDnErlB6Yx7Vp z8(vOttfqTi^A0vX-OP8|y8Sz?;nr>l#y zn0@T-y~)*7&b%4_$g6UMxiZa{XcY-K7m5;|5^mFiF*;;em#DlIvu1KTZxg|@%yfMV zoiwhBKvDK=F>S7Vawx6G7QV_iD3!klVF?=@Upt+EiAG?kk0csuf;Sf4C_snlR%2QV zpO*2BEUa|%#4i;;4QW>JpF&J|ZZO|x=PXTH%|fg}>h->?fl=I#uyu+>uiIASZ`lu; zZ6>SxJlKV4Qw5e0Bwt_75&3{2BT$P`6^#zzj8YGQ5)EwT`6`-u@Xktscjeo`LIfE{ z1wkF;hQ1M8<26@;7AZHlTzIZQKc(QeP(!1YEiE@h?Oibz0Z4itM zWEb(XfvvxqaHg9CN+Qg2mOssB=@bsqm=~S0IXMil*D{AjZxC6L#qzktQR#DZFl8>Y zF~-*Il(C;!*yumrf&_FYjEK{&F_Q6jxbn|==a}2|;x7|hVj|%^0z>D`FhlWXsfo1@ zIu=t%)7ED=vLgG`dn;+CBMToqfU~4tx7$g{YIxq)=r^_&((d;HRg*L%>gVIBzCO=& z=sUyKX0*9mnSxQ#cJEmki)0JL3?f(A{QN&ZFU|>EoLtHY%6IP>OE(R)nJ%wv`ZhLw z741{&u!M-0MelZ@1CHd5*Lph4zOu;pzBurn{o>r`e>8J&3=NVFnwzg|G5LNRFLzqt zDbjjAMb_42f*^t`jKkNEp+i#pQR3ETH_wh3`Y$Hs5%K*-$w?NIFMa$D5=g)GxpS<% zy;+(`1Kn4LXsT-SHXz%lPPJ|D!?{)GMJ05H`d1W=w~ zVrKfy-#2o|N4@&-n4?Z`nat4g^c}ZLz+&t+Y9>u_ac>a?_!G+@{UjD#E zLw>_?(lEFTxQU2A4A!B)8P237aPhcN<3IR=@ZWgc7&0yeuKxZ*u@(1MHI7SwD|G)5 zbi)5j@Hg3u%Y~~Q|8TWE{x8>AC5g*|E4BWxOvL{ll{3N%7mw=?{=vH^|7VJw^$xXE V39&Qi=d7XvSYW4zP3F(5{{jAp{F?v( literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/HomeFeatures.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/HomeFeatures.scala deleted file mode 100644 index fe085b1f9..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/HomeFeatures.scala +++ /dev/null @@ -1,325 +0,0 @@ -package com.twitter.home_mixer.model - -import com.twitter.core_workflows.user_model.{thriftscala => um} -import com.twitter.dal.personal_data.{thriftjava => pd} -import com.twitter.gizmoduck.{thriftscala => gt} -import com.twitter.home_mixer.{thriftscala => hmt} -import com.twitter.ml.api.constant.SharedFeatures -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.feature.Feature -import com.twitter.product_mixer.core.feature.FeatureWithDefaultOnFailure -import com.twitter.product_mixer.core.feature.datarecord.BoolDataRecordCompatible -import com.twitter.product_mixer.core.feature.datarecord.DataRecordFeature -import com.twitter.product_mixer.core.feature.datarecord.DataRecordOptionalFeature -import com.twitter.product_mixer.core.feature.datarecord.DoubleDataRecordCompatible -import com.twitter.product_mixer.core.feature.datarecord.LongDiscreteDataRecordCompatible -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.TopicContextFunctionalityType -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.search.common.features.{thriftscala => sc} -import com.twitter.search.earlybird.{thriftscala => eb} -import com.twitter.timelinemixer.clients.manhattan.DismissInfo -import com.twitter.timelinemixer.clients.persistence.TimelineResponseV3 -import com.twitter.timelinemixer.injection.model.candidate.AudioSpaceMetaData -import com.twitter.timelines.conversation_features.v1.thriftscala.ConversationFeatures -import com.twitter.timelines.impression.{thriftscala => imp} -import com.twitter.timelines.impressionbloomfilter.{thriftscala => blm} -import com.twitter.timelines.model.UserId -import com.twitter.timelines.prediction.features.common.TimelinesSharedFeatures -import com.twitter.timelines.prediction.features.engagement_features.EngagementDataRecordFeatures -import com.twitter.timelines.prediction.features.recap.RecapFeatures -import com.twitter.timelines.prediction.features.request_context.RequestContextFeatures -import com.twitter.timelines.service.{thriftscala => tst} -import com.twitter.timelineservice.model.FeedbackEntry -import com.twitter.timelineservice.suggests.logging.candidate_tweet_source_id.{thriftscala => cts} -import com.twitter.timelineservice.suggests.{thriftscala => st} -import com.twitter.tsp.{thriftscala => tsp} -import com.twitter.tweetconvosvc.tweet_ancestor.{thriftscala => ta} -import com.twitter.util.Time - -object HomeFeatures { - // Candidate Features - object AncestorsFeature extends Feature[TweetCandidate, Seq[ta.TweetAncestor]] - object AudioSpaceMetaDataFeature extends Feature[TweetCandidate, Option[AudioSpaceMetaData]] - object TwitterListIdFeature extends Feature[TweetCandidate, Option[Long]] - - /** - * For Retweets, this should refer to the retweeting user. Use [[SourceUserIdFeature]] if you want to know - * who created the Tweet that was retweeted. - */ - object AuthorIdFeature - extends DataRecordOptionalFeature[TweetCandidate, Long] - with LongDiscreteDataRecordCompatible { - override val featureName: String = SharedFeatures.AUTHOR_ID.getFeatureName - override val personalDataTypes: Set[pd.PersonalDataType] = Set(pd.PersonalDataType.UserId) - } - - object AuthorIsBlueVerifiedFeature extends Feature[TweetCandidate, Boolean] - object AuthorIsGoldVerifiedFeature extends Feature[TweetCandidate, Boolean] - object AuthorIsGrayVerifiedFeature extends Feature[TweetCandidate, Boolean] - object AuthorIsLegacyVerifiedFeature extends Feature[TweetCandidate, Boolean] - object AuthorIsCreatorFeature extends Feature[TweetCandidate, Boolean] - object AuthorIsProtectedFeature extends Feature[TweetCandidate, Boolean] - - object AuthoredByContextualUserFeature extends Feature[TweetCandidate, Boolean] - object CachedCandidatePipelineIdentifierFeature extends Feature[TweetCandidate, Option[String]] - object CandidateSourceIdFeature - extends Feature[TweetCandidate, Option[cts.CandidateTweetSourceId]] - object ConversationFeature extends Feature[TweetCandidate, Option[ConversationFeatures]] - - /** - * This field should be set to the focal Tweet's tweetId for all tweets which are expected to - * be rendered in the same convo module. For non-convo module Tweets, this will be - * set to None. Note this is different from how TweetyPie defines ConversationId which is defined - * on all Tweets and points to the root tweet. This feature is used for grouping convo modules together. - */ - object ConversationModuleFocalTweetIdFeature extends Feature[TweetCandidate, Option[Long]] - - /** - * This field should always be set to the root Tweet in a conversation for all Tweets. For replies, this will - * point back to the root Tweet. For non-replies, this will be the candidate's Tweet id. This is consistent with - * the TweetyPie definition of ConversationModuleId. - */ - object ConversationModuleIdFeature extends Feature[TweetCandidate, Option[Long]] - object DirectedAtUserIdFeature extends Feature[TweetCandidate, Option[Long]] - object EarlybirdFeature extends Feature[TweetCandidate, Option[sc.ThriftTweetFeatures]] - object EarlybirdScoreFeature extends Feature[TweetCandidate, Option[Double]] - object EarlybirdSearchResultFeature extends Feature[TweetCandidate, Option[eb.ThriftSearchResult]] - object EntityTokenFeature extends Feature[TweetCandidate, Option[String]] - object ExclusiveConversationAuthorIdFeature extends Feature[TweetCandidate, Option[Long]] - object FavoritedByCountFeature - extends DataRecordFeature[TweetCandidate, Double] - with DoubleDataRecordCompatible { - override val featureName: String = - EngagementDataRecordFeatures.InNetworkFavoritesCount.getFeatureName - override val personalDataTypes: Set[pd.PersonalDataType] = - Set(pd.PersonalDataType.CountOfPrivateLikes, pd.PersonalDataType.CountOfPublicLikes) - } - object FavoritedByUserIdsFeature extends Feature[TweetCandidate, Seq[Long]] - object FeedbackHistoryFeature extends Feature[TweetCandidate, Seq[FeedbackEntry]] - object RetweetedByCountFeature - extends DataRecordFeature[TweetCandidate, Double] - with DoubleDataRecordCompatible { - override val featureName: String = - EngagementDataRecordFeatures.InNetworkRetweetsCount.getFeatureName - override val personalDataTypes: Set[pd.PersonalDataType] = - Set(pd.PersonalDataType.CountOfPrivateRetweets, pd.PersonalDataType.CountOfPublicRetweets) - } - object RetweetedByEngagerIdsFeature extends Feature[TweetCandidate, Seq[Long]] - object RepliedByCountFeature - extends DataRecordFeature[TweetCandidate, Double] - with DoubleDataRecordCompatible { - override val featureName: String = - EngagementDataRecordFeatures.InNetworkRepliesCount.getFeatureName - override val personalDataTypes: Set[pd.PersonalDataType] = - Set(pd.PersonalDataType.CountOfPrivateReplies, pd.PersonalDataType.CountOfPublicReplies) - } - object RepliedByEngagerIdsFeature extends Feature[TweetCandidate, Seq[Long]] - object FollowedByUserIdsFeature extends Feature[TweetCandidate, Seq[Long]] - - object TopicIdSocialContextFeature extends Feature[TweetCandidate, Option[Long]] - object TopicContextFunctionalityTypeFeature - extends Feature[TweetCandidate, Option[TopicContextFunctionalityType]] - object FromInNetworkSourceFeature extends Feature[TweetCandidate, Boolean] - - object FullScoringSucceededFeature extends Feature[TweetCandidate, Boolean] - object HasDisplayedTextFeature extends Feature[TweetCandidate, Boolean] - object InReplyToTweetIdFeature extends Feature[TweetCandidate, Option[Long]] - object InReplyToUserIdFeature extends Feature[TweetCandidate, Option[Long]] - object IsAncestorCandidateFeature extends Feature[TweetCandidate, Boolean] - object IsExtendedReplyFeature - extends DataRecordFeature[TweetCandidate, Boolean] - with BoolDataRecordCompatible { - override val featureName: String = RecapFeatures.IS_EXTENDED_REPLY.getFeatureName - override val personalDataTypes: Set[pd.PersonalDataType] = Set.empty - } - object IsRandomTweetFeature - extends DataRecordFeature[TweetCandidate, Boolean] - with BoolDataRecordCompatible { - override val featureName: String = TimelinesSharedFeatures.IS_RANDOM_TWEET.getFeatureName - override val personalDataTypes: Set[pd.PersonalDataType] = Set.empty - } - object IsReadFromCacheFeature extends Feature[TweetCandidate, Boolean] - object IsRetweetFeature extends Feature[TweetCandidate, Boolean] - object IsRetweetedReplyFeature extends Feature[TweetCandidate, Boolean] - object IsSupportAccountReplyFeature extends Feature[TweetCandidate, Boolean] - object LastScoredTimestampMsFeature extends Feature[TweetCandidate, Option[Long]] - object NonSelfFavoritedByUserIdsFeature extends Feature[TweetCandidate, Seq[Long]] - object NumImagesFeature extends Feature[TweetCandidate, Option[Int]] - object OriginalTweetCreationTimeFromSnowflakeFeature extends Feature[TweetCandidate, Option[Time]] - object PositionFeature extends Feature[TweetCandidate, Option[Int]] - // Internal id generated per prediction service request - object PredictionRequestIdFeature extends Feature[TweetCandidate, Option[Long]] - object QuotedTweetIdFeature extends Feature[TweetCandidate, Option[Long]] - object QuotedUserIdFeature extends Feature[TweetCandidate, Option[Long]] - object ScoreFeature extends Feature[TweetCandidate, Option[Double]] - object SemanticCoreIdFeature extends Feature[TweetCandidate, Option[Long]] - // Key for kafka logging - object ServedIdFeature extends Feature[TweetCandidate, Option[Long]] - object SimclustersTweetTopKClustersWithScoresFeature - extends Feature[TweetCandidate, Map[String, Double]] - object SocialContextFeature extends Feature[TweetCandidate, Option[tst.SocialContext]] - object SourceTweetIdFeature - extends DataRecordOptionalFeature[TweetCandidate, Long] - with LongDiscreteDataRecordCompatible { - override val featureName: String = TimelinesSharedFeatures.SOURCE_TWEET_ID.getFeatureName - override val personalDataTypes: Set[pd.PersonalDataType] = Set(pd.PersonalDataType.TweetId) - } - object SourceUserIdFeature extends Feature[TweetCandidate, Option[Long]] - object StreamToKafkaFeature extends Feature[TweetCandidate, Boolean] - object SuggestTypeFeature extends Feature[TweetCandidate, Option[st.SuggestType]] - object TSPMetricTagFeature extends Feature[TweetCandidate, Set[tsp.MetricTag]] - object TweetLanguageFeature extends Feature[TweetCandidate, Option[String]] - object TweetUrlsFeature extends Feature[TweetCandidate, Seq[String]] - object VideoDurationMsFeature extends Feature[TweetCandidate, Option[Int]] - object ViewerIdFeature - extends DataRecordFeature[TweetCandidate, Long] - with LongDiscreteDataRecordCompatible { - override def featureName: String = SharedFeatures.USER_ID.getFeatureName - override def personalDataTypes: Set[pd.PersonalDataType] = Set(pd.PersonalDataType.UserId) - } - object WeightedModelScoreFeature extends Feature[TweetCandidate, Option[Double]] - object MentionUserIdFeature extends Feature[TweetCandidate, Seq[Long]] - object MentionScreenNameFeature extends Feature[TweetCandidate, Seq[String]] - object HasImageFeature extends Feature[TweetCandidate, Boolean] - object HasVideoFeature extends Feature[TweetCandidate, Boolean] - - // Tweetypie VF Features - object IsHydratedFeature extends Feature[TweetCandidate, Boolean] - object IsNsfwFeature extends Feature[TweetCandidate, Boolean] - object QuotedTweetDroppedFeature extends Feature[TweetCandidate, Boolean] - // Raw Tweet Text from Tweetypie - object TweetTextFeature extends Feature[TweetCandidate, Option[String]] - - object AuthorEnabledPreviewsFeature extends Feature[TweetCandidate, Boolean] - object IsTweetPreviewFeature extends Feature[TweetCandidate, Boolean] - - // SGS Features - /** - * By convention, this is set to true for retweets of non-followed authors - * E.g. where somebody the viewer follows retweets a Tweet from somebody the viewer doesn't follow - */ - object InNetworkFeature extends FeatureWithDefaultOnFailure[TweetCandidate, Boolean] { - override val defaultValue: Boolean = true - } - - // Query Features - object AccountAgeFeature extends Feature[PipelineQuery, Option[Time]] - object ClientIdFeature - extends DataRecordOptionalFeature[PipelineQuery, Long] - with LongDiscreteDataRecordCompatible { - override def featureName: String = SharedFeatures.CLIENT_ID.getFeatureName - override def personalDataTypes: Set[pd.PersonalDataType] = Set(pd.PersonalDataType.ClientType) - } - object CachedScoredTweetsFeature extends Feature[PipelineQuery, Seq[hmt.ScoredTweet]] - object DeviceLanguageFeature extends Feature[PipelineQuery, Option[String]] - object DismissInfoFeature - extends FeatureWithDefaultOnFailure[PipelineQuery, Map[st.SuggestType, Option[DismissInfo]]] { - override def defaultValue: Map[st.SuggestType, Option[DismissInfo]] = Map.empty - } - object FollowingLastNonPollingTimeFeature extends Feature[PipelineQuery, Option[Time]] - object GetInitialFeature - extends DataRecordFeature[PipelineQuery, Boolean] - with BoolDataRecordCompatible { - override def featureName: String = RequestContextFeatures.IS_GET_INITIAL.getFeatureName - override def personalDataTypes: Set[pd.PersonalDataType] = Set.empty - } - object GetMiddleFeature - extends DataRecordFeature[PipelineQuery, Boolean] - with BoolDataRecordCompatible { - override def featureName: String = RequestContextFeatures.IS_GET_MIDDLE.getFeatureName - override def personalDataTypes: Set[pd.PersonalDataType] = Set.empty - } - object GetNewerFeature - extends DataRecordFeature[PipelineQuery, Boolean] - with BoolDataRecordCompatible { - override def featureName: String = RequestContextFeatures.IS_GET_NEWER.getFeatureName - override def personalDataTypes: Set[pd.PersonalDataType] = Set.empty - } - object GetOlderFeature - extends DataRecordFeature[PipelineQuery, Boolean] - with BoolDataRecordCompatible { - override def featureName: String = RequestContextFeatures.IS_GET_OLDER.getFeatureName - override def personalDataTypes: Set[pd.PersonalDataType] = Set.empty - } - object GuestIdFeature - extends DataRecordOptionalFeature[PipelineQuery, Long] - with LongDiscreteDataRecordCompatible { - override def featureName: String = SharedFeatures.GUEST_ID.getFeatureName - override def personalDataTypes: Set[pd.PersonalDataType] = Set(pd.PersonalDataType.GuestId) - } - object HasDarkRequestFeature extends Feature[PipelineQuery, Option[Boolean]] - object ImpressionBloomFilterFeature - extends FeatureWithDefaultOnFailure[PipelineQuery, blm.ImpressionBloomFilterSeq] { - override def defaultValue: blm.ImpressionBloomFilterSeq = - blm.ImpressionBloomFilterSeq(Seq.empty) - } - object IsForegroundRequestFeature extends Feature[PipelineQuery, Boolean] - object IsLaunchRequestFeature extends Feature[PipelineQuery, Boolean] - object LastNonPollingTimeFeature extends Feature[PipelineQuery, Option[Time]] - object NonPollingTimesFeature extends Feature[PipelineQuery, Seq[Long]] - object PersistenceEntriesFeature extends Feature[PipelineQuery, Seq[TimelineResponseV3]] - object PollingFeature extends Feature[PipelineQuery, Boolean] - object PullToRefreshFeature extends Feature[PipelineQuery, Boolean] - // Scores from Real Graph representing the relationship between the viewer and another user - object RealGraphInNetworkScoresFeature extends Feature[PipelineQuery, Map[UserId, Double]] - object RequestJoinIdFeature extends Feature[TweetCandidate, Option[Long]] - // Internal id generated per request, mainly to deduplicate re-served cached tweets in logging - object ServedRequestIdFeature extends Feature[PipelineQuery, Option[Long]] - object ServedTweetIdsFeature extends Feature[PipelineQuery, Seq[Long]] - object ServedTweetPreviewIdsFeature extends Feature[PipelineQuery, Seq[Long]] - object TimelineServiceTweetsFeature extends Feature[PipelineQuery, Seq[Long]] - object TimestampFeature - extends DataRecordFeature[PipelineQuery, Long] - with LongDiscreteDataRecordCompatible { - override def featureName: String = SharedFeatures.TIMESTAMP.getFeatureName - override def personalDataTypes: Set[pd.PersonalDataType] = Set.empty - } - object TimestampGMTDowFeature - extends DataRecordFeature[PipelineQuery, Long] - with LongDiscreteDataRecordCompatible { - override def featureName: String = RequestContextFeatures.TIMESTAMP_GMT_DOW.getFeatureName - override def personalDataTypes: Set[pd.PersonalDataType] = Set.empty - } - object TimestampGMTHourFeature - extends DataRecordFeature[PipelineQuery, Long] - with LongDiscreteDataRecordCompatible { - override def featureName: String = RequestContextFeatures.TIMESTAMP_GMT_HOUR.getFeatureName - override def personalDataTypes: Set[pd.PersonalDataType] = Set.empty - } - object TweetImpressionsFeature extends Feature[PipelineQuery, Seq[imp.TweetImpressionsEntry]] - object UserFollowedTopicsCountFeature extends Feature[PipelineQuery, Option[Int]] - object UserFollowingCountFeature extends Feature[PipelineQuery, Option[Int]] - object UserScreenNameFeature extends Feature[PipelineQuery, Option[String]] - object UserStateFeature extends Feature[PipelineQuery, Option[um.UserState]] - object UserTypeFeature extends Feature[PipelineQuery, Option[gt.UserType]] - object WhoToFollowExcludedUserIdsFeature - extends FeatureWithDefaultOnFailure[PipelineQuery, Seq[Long]] { - override def defaultValue = Seq.empty - } - - // Result Features - object ServedSizeFeature extends Feature[PipelineQuery, Option[Int]] - object HasRandomTweetFeature extends Feature[PipelineQuery, Boolean] - object IsRandomTweetAboveFeature extends Feature[TweetCandidate, Boolean] - object ServedInConversationModuleFeature extends Feature[TweetCandidate, Boolean] - object ConversationModule2DisplayedTweetsFeature extends Feature[TweetCandidate, Boolean] - object ConversationModuleHasGapFeature extends Feature[TweetCandidate, Boolean] - object SGSValidLikedByUserIdsFeature extends Feature[TweetCandidate, Seq[Long]] - object SGSValidFollowedByUserIdsFeature extends Feature[TweetCandidate, Seq[Long]] - object PerspectiveFilteredLikedByUserIdsFeature extends Feature[TweetCandidate, Seq[Long]] - object ScreenNamesFeature extends Feature[TweetCandidate, Map[Long, String]] - object RealNamesFeature extends Feature[TweetCandidate, Map[Long, String]] - - /** - * Features around the focal Tweet for Tweets which should be rendered in convo modules. - * These are needed in order to render social context above the root tweet in a convo modules. - * For example if we have a convo module A-B-C (A Tweets, B replies to A, C replies to B), the descendant features are - * for the Tweet C. These features are None except for the root Tweet for Tweets which should render into - * convo modules. - */ - object FocalTweetAuthorIdFeature extends Feature[TweetCandidate, Option[Long]] - object FocalTweetInNetworkFeature extends Feature[TweetCandidate, Option[Boolean]] - object FocalTweetRealNamesFeature extends Feature[TweetCandidate, Option[Map[Long, String]]] - object FocalTweetScreenNamesFeature extends Feature[TweetCandidate, Option[Map[Long, String]]] - object MediaUnderstandingAnnotationIdsFeature extends Feature[TweetCandidate, Seq[Long]] -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/BUILD.bazel deleted file mode 100644 index 3883e454e..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/BUILD.bazel +++ /dev/null @@ -1,15 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "dspbidder/thrift/src/main/thrift/com/twitter/dspbidder/commons:thrift-scala", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/marshalling/request", - "timelineservice/common:model", - ], - exports = [ - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/marshalling/request", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..a25e2fe2161db6cf0402d77d6a2aa0247d180bba GIT binary patch literal 36872 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 Z47GI_;LQrmL7-eE$dCxk9<6;K9su{ZRSEzA literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/DeviceContext.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/DeviceContext.scala deleted file mode 100644 index ef96865ca..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/DeviceContext.scala +++ /dev/null @@ -1,74 +0,0 @@ -package com.twitter.home_mixer.model.request - -import com.twitter.product_mixer.core.model.marshalling.request.ClientContext -import com.twitter.{timelineservice => tls} - -case class DeviceContext( - isPolling: Option[Boolean], - requestContext: Option[String], - latestControlAvailable: Option[Boolean], - autoplayEnabled: Option[Boolean]) { - - lazy val requestContextValue: Option[DeviceContext.RequestContext.Value] = - requestContext.flatMap { value => - val normalizedValue = value.trim.toLowerCase() - DeviceContext.RequestContext.values.find(_.toString == normalizedValue) - } - - def toTimelineServiceDeviceContext(clientContext: ClientContext): tls.DeviceContext = - tls.DeviceContext( - countryCode = clientContext.countryCode, - languageCode = clientContext.languageCode, - clientAppId = clientContext.appId, - ipAddress = clientContext.ipAddress, - guestId = clientContext.guestId, - sessionId = None, - timezone = None, - userAgent = clientContext.userAgent, - deviceId = clientContext.deviceId, - isPolling = isPolling, - requestProvenance = requestContext, - referrer = None, - tfeAuthHeader = None, - mobileDeviceId = clientContext.mobileDeviceId, - isSessionStart = None, - displaySize = None, - isURTRequest = Some(true), - latestControlAvailable = latestControlAvailable, - guestIdMarketing = clientContext.guestIdMarketing, - isInternalOrTwoffice = clientContext.isTwoffice, - browserNotificationPermission = None, - guestIdAds = clientContext.guestIdAds, - ) -} - -object DeviceContext { - val Empty: DeviceContext = DeviceContext( - isPolling = None, - requestContext = None, - latestControlAvailable = None, - autoplayEnabled = None - ) - - /** - * Constants which reflect valid client request provenances (why a request was initiated, encoded - * by the "request_context" HTTP parameter). - */ - object RequestContext extends Enumeration { - val Auto = Value("auto") - val Foreground = Value("foreground") - val Gap = Value("gap") - val Launch = Value("launch") - val ManualRefresh = Value("manual_refresh") - val Navigate = Value("navigate") - val Polling = Value("polling") - val PullToRefresh = Value("ptr") - val Signup = Value("signup") - val TweetSelfThread = Value("tweet_self_thread") - val BackgroundFetch = Value("background_fetch") - } -} - -trait HasDeviceContext { - def deviceContext: Option[DeviceContext] -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HasListId.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HasListId.docx new file mode 100644 index 0000000000000000000000000000000000000000..2d2aa41ae849e1507f7a3f4e288250945a86bd82 GIT binary patch literal 36785 zcmagFWmsIvwm*z(a1HM6?hb+A?h-U;<4)rNfe{ z5TQAv5(dW-pP6>+N3vQk+~wO$qc16SY-pINT|fa{;#;tu&vIhPyC)q_F1IMVOFTCS zSKFHD`*xZKl5MxPU%(hM^i(2OFDOap9wLUeDpm`VbSM--O?V78yry7=H?M=zQA6!; zgm#zlz~0Q$G@_B|{f9PBet}Ep=!mWI4Y}>Vy`?XTr4qSc3OBl)n^m-* z&KU*?xm^6QW?7N!dn8}PY1M}6G?0K0;J z_a?CVR`#j0c+YJ$DBnzhDVbjXIf=LsqdWe?qt63!NyS?!k>01plJz~&v0IA#M{GqS z2$g?S(Thf2><(PL4JZf*Wbj{OXA3(QR+it_s)Wh+(Cp{|ry|lL)Flqhno@V%d5gU|oAl?6AmcTJ zWWIccRU%vL*pyhjES=>S;>m?09^IsB%tNSCVoE(=p|7 zZJD_34=GgDDcYI{#vx@`oj`a4dO z{9>z1In`^5UGhU1ozdqx{bz#0KOw7IgKzU0aDp(v2{H$msW<~1U0BTk&KAFK@~nh$ zrG7Sa>04jvIYq6AOLPQjIR?nX&+lci1DD!vxVRPV#P{ANj3$CFC9hJ zd7E0G%|a7GNyFk#1I<4p>*Bnun&PfKW=k{hS0#n?o%TG;UeH(xn2q&BsuH|Gs?CO$ z%V0NDSO^!O9H{5!n)@_Gp4F;WocBXQ9Yb;Xla^QlT{|TT*&a6i&%i*Eh(yYS28^%efJH(KvCWB+}zF@vkP^AsH=G^XD!xq^Ee-E$_HTPdLHVqhp<%`V%C@2 zt8;7ij4yK7CE}Sda_zF;n7StOe>C{NzI%DQM8tT2;M+i0uJ~oa$E{a>iH!6M9#2LTOA5n2yM{271JiNa;c|hR; zQx02(qcw6XJ~ z@D#}i*-bjnCO*R0Ap5vp*PH*u$hET9#}k^R6gwhea=e&*b2otW9nY+AOAPq+TE?*= z>x6C<0`GI;2E9e+@Ael>)uTm`OpK757^p(NRo1lX!krCHBJ)P zYPXq^Br>VJNhKJTiKppfryQR$uqr27r2MY4BZKvcmE;UD zo!}3vJmQ}pSPy`+IV<>6>t+vLoc>sqv{sb}+0p$@wRIjb5hH#%B*3*(Y(v6COBIzi zDkEsd9RF&+(^?(HEPwGC_K`1tPlxWQ>odeTJZ$B=+;I7h{%gAKa8vr#H{dr(1q{Wu zG1|`4&FUCspAoN0I$XUvIY7U`sqe#fUG7_sj7=4;48b8OiXQD7f;9xn$!$C7p1gM z4eBjw#`IycM}2$q!6F87)?^ybz_A-qXBX8{I6_Oy0%gc)nDV>17@5BO4BXLyscpXE ztmTrQ>;ipC^mm-jB@W1tCTCb){dJ>AxL|4Ii(f$=xccd?t~xWU%q)4!P$!Z(3vz06 z6FKh`5``Hs$=aj*=$-_v#?3u0lWGzzwb!25>}#rw(wGTE-`E$E2r#uG7zNGGee|$C zVdH3l<#7z48ntZuhRX`W1~sU<6hDLQP!d|4@iqOBvnB6dP9?3XE>#K{B||tndvIOn z`dmGD6ng3{6sn)G^J&^Ko?bm^f~bVH&6w0?y)omy@5l|#r>b}(F5{=qndxS}uC7aS zI0|&q`zD>anROHFAj=tS;ye&&dTHJ9!0PISgd~`(TC%z)c_ue9&_m2CtV1R>#GA~R zjfxD?X=R9+2LV~tM>s{naS(kjwi+Qb*Q1cM8}epOe?s`sT&#ODmMz~-ca*E(ZTk#^ zKk|$JhMlc|%+s0#(-Ya(nnXIeYL=m#Pui+S>8o1`L!+LaGXenevJ2FAyRHVr?-Dmf zdg<1xewwhomoSHXjxG5bdlbORH?hkt1o@LrxU9$1=&lM;qcd4wzjklxV=tRU&%U`z zFKg3{pk>!Z(z3$4M#nAtLkv>}-ltgu{iVSG6hikYVaViur*8-v6{>DWkJKA4aEh-` z|Gd{70thiVz?0xOcoHN6PlA8k>whlcf4}4ZT+Y9UD+jaTe>#0Z>I+T8E_R4~`zxOY z#2`~savmqTkmJ9(qNupx-g*!Vt(FA53`dp10{-=`!9-5NOf)01NBH$O?eJtZ8+7@g+FA} z6F$}R>OtvB%_O9L2+PTK^#)O#Pgb{HbXMAKiLR%+^lm9NXa)6Qz|<|xn;24ZQ=9CZ z9(=vNGbi$YhBrd8Y@8>OEZz%zQZ$IhG=|Z-&4ljfyfd*L+qGOUgOKv*mQ0c4D5}j= z--f;@;fxgLqpnX^53vn>J88>jb2am2z*`B?)dwC*bXO#*glLDKSjSd%T>IUTaNk)f zW*`}@J+8}2sn)*9nmpgi)l3Zx|9$W`)_>+Yx&l`)k`)5NND~$U?O(ZearLsZaQQu} zfVZlNJ2Lft-QD>G#!uhv<3b>YryL*>+=)K;bY|C`aw>Ap{`&eA?_=z-u|GAr7^$Y3 zrq=uNgnGfgY+M!kJ?*SS4U6aJ9RCixQ=l`iysn%o3cs|JxT^t6y+{eD&KQ5lel!&$*?HbzB7W;usA|(A*z~$^=A6*Cc z#Sfp9KIEoM9@dJUh-SUuiYPe0J6G8r4hz0BW?g**i}Kj?-#A7aA3lCq_v8EeEGjW6 ze5}0z-s#x;2*~)807a<$Y5WIYk#9h==O;%V~gQr^Ha>u5SaFxgDNmvT+Nj9(Y(W{@)DNwjN$6@gmYoIGRs&%FN zSm|Ij7O->o{k2Z7TPB;Zt6g7)=brwdhsXPtotpOLZgtnUq7SYvFtp$Mp+h=+nuzCAxcsC)t1TW&CwCZL7MZi$p zPIbKb+#$pyN}60V?J={a7pKP27uGVIxKxEY?{MA!vv$+38rw|Q#`Gy=@nFx%r4qNW z^dT1GtnG2}!=(nj%|M#fUGQs%VfDiFchvr8q>IWKEh&*UFki!M89&#SOY@0g z#6wDvd?@7T>UjqBoKq4;uD$A5_y#`altuxxV_CDTJK|bChc4;}xZ^z@znuNFXUrrS z`i9|)Lw|Z+7XY=w%@4CDv(7`qh!Pka!hCmAj|x2C>R@$UYOlc5xPYUfYjw1)fYooy1+#bN$h|f zVV1bSjSGtFfGy1Z-T4vRiTkfkm~AQmr1)RstD6X@SzuVbkVpFDHlY56eaw{r4kZJR zqyHmR4~!NH#{Ea=pHwhqw5K-Yp8rK~s!9oNLHa{QatEw=-v5yJAE-F*i)!4U6!56O z3v(v~>rq1od&O@2&P;~P{9h88$q;D0kP-e+J(uXwgx>Lc)W4ewT_hW)+(BJfM%e;V zdh=vmBwB8Mr}vQly8e2k3!tQ)_ej!#DYReWN?V&fyEgsXu=JPgU5KP~=JuUH%fsV# zFHBLwEc(e$r-SQ{*KTcw4ud}8PyLG%?s*@VJTLX{hGuhWwmoZp&Wk7??Cp={Z{J04 ziW;_DOOeJn?6540B^kt=a>o~$yS#U1I&^xwa<(bBFl)~XVofYdaoUGUGVN<2CqL8H-HsSPdEMf`aaAJ$7A0U(Biq+Lp)i^F?GQ{=lzSTsU^`9j1#l2_h@O z!Wj1ZWO~xyeX2g^SMoi3_e7{@Q+|CAP*%RJC3yGKDFb_!v}N;@;`Jqc4m9oYa5a4K zaxpaM4SII+0^YtPy)GO-%>H~jbY%O`@zN@qb;J5JJq+vp0)e)i;ngYvW4sA!Ng2K- zzgLTY$;?&|YUMIjczelknf4g*;9!OY`ET2Bh!d((=t_1Sf50UtFd6?ZHJf+QE z>n5c3ww44H!e#pC>1SLo?74nH@${%#Q8xvVuSa%aK0w#3DJO|0e{B3Nlz)mOe8M@t z(lEqgGkMi~e;zK;YR!fZl{P4dC10?mHL*vNx&>2jzz|g%uT2qkk(XUSC6;OJ$=QXg zn6rW=Swrf~PiMN(G<|S6;&7#f8?bSNjQ{hHL&th3D0eSTIrFt{8MoV0*=UYZywvwd z(=mCwG=Q53ZUNn3j4mCSL+kr}q>aqT1M#Nfl>!ohej4#BMp2jB&Nw0WVrdNn4tAA= zU_kE1z+P;rCkFE%sfO}%J(}>Q==0ka$th95RbQK`^L#vA-s;9Fy`1R}w?*g?ij{}fX&baZi=)ZKn6^xdd)|sf1L%t!%S#Mr55ugiw6D{P! zo;WaVlqGfObF*#o?Q8$^X7eid>gj31V!CF364IyFyO)OrBD_j@v`jX>?j=vITFnpK z1xQL7ROKH9_?F6RkF*Ar&u=sB6sc-{=7yNT0kxRUurCZ=&s)0nLa$1jXpZ}Od)X*e8W=eU=?%=O$*0j&;VP{e z%ztzJ9$rTM$?S*sy;GaOue9rmlpjeHvF$*J&{B@Z-X#bkdb0K-Pr&KN%vzQW!cYC< z+JtK!QLM&cXB!`up-Xm%v4&W_PYBvsX*iWA@quXW&!6USj9H~R#WzqhILnj>&et)I~;uI}-T&mI^X5Uot%#WgWT+Xm~6=l_E6_Li*jPAsbna(Aw z@MY1}eiw`YuN_7#pAX$zXw7Vt=U3HewiqW7q%Cg9_TAicr+3M!4xCzh)1;K#nTxWG z+k~@US4Z|GI@022IRr=c|7ap&vt+vTFyMRnU#k|XMdd>zmqwERP!^ACA zFEYGxoJ#K}`NTPP3z04DtQyh^g-eQVGAWi_R$zT>TDKz=<8Vj4ZoMk16OL3826S|| zOjnfM4z{W)DO-2<5Ak*Jkz#wu&Co{B>*2pQ+nu^DaW=D3r|eNg^;R=MP%APbKj6IFsNJA%@UUbu($@3a9UTH{_fL=CTP?of$6d| z{Zc%N;nd7P7{^)Hq8VF-(If=)xBE=d}fsI z0%jB7C!OoNELl^7pGWSh@+u%&f}aFZI2o1M*}_~G91`D@AKwkJ}w&$R0x z^3SQ8Z%}vC6__f$TF2R%yCx{7hh2Se`6NMHb7rYGVck_|2T74Q`&I5xRH;=cTDUa8z zCxSHO>^qNOaj)Esjqwa&c@Xvtp>2r>bY~s!FWZ=np_93Kyk9Wp9*CWa2bcFB$9z;A zp=yYdzh=a^bOi9`PM$;6BXq`FAaApA1IpQpMTg>ecF(r$>;Uqb1HTL;{+a{=JHyJ=rb8?1P5Vx?$w5DxMuEx za|CeHXkwB8nCnUa_5-lSb6}TY4F>re7Js0qgJC9dBmvbCKPFq&2Lsf7Kzl`~xh*C_ zZp2E(Zrg|*&N>nRfvIz-jR2lu4&h`77$giN~HzP-7p^A8_0B|_&8$X%OKf+7@3ZMIT_>bS=!6Xu$ z<$gR@4&R_JyltLmrROplY?|Gqb5vPjJ5+kG4vYAu&{E3rt`m;q>`H>Xy*i`6mEvtI zg{#!q_+xfv5C(Q+>(RJjT<=$=+uzSv&B;TuVxNV0TcghO7adA>nhR2`mgO25DVK5` zhVq6`%vG!`N}m?1)Vc}J*^~#D@>?jy9uIMh52EAZfCj$2fZtY*pI$kc3LwtR^4rr!#M%2r{WB=>IB=qydK3o{qA zo_nn6-;W4(-%ZISyRGj_6Jz0~!+6WNc!}mVx2f`unv4aW4y_mHAs`b>q@6K2EL(JX zVx0WCPP#EIaVb?$DH+8s=#cyq@A~`l=np-q0tzx%C3mD;u=?M{OxVhVupSCRfnnv zy-XS~8ca}!_-NRu8ZdKbFOTeRt#N%??SI(u!*(Z zXGOA@6{XRF3opH=N$B3mLgjD!cFjV>=fl~V%%6bk#66Vj%r7iGmBI1q*n*(P4TOY7WbQvXD&#o@LMbGjc-)S4E2x- zFIbpint>{6Z#192GZ0yKCDJ{c=90aPR=ha1JzU(^`Xhgs^Xo*WrXwMYerM!F*@il# z9ehU{Rx@==ja-;c|G?dd5WA*te5+O6NuJ!BE2*g|9s=#j9u7={%>pLul@lPb< zyb(KEj-w!mHnYG6c$wR@wzvYqtses>1fq|Iyr>1s5x08vsXM(#Lb%YPz$_gFazd7% zbKeQ;M%z3^a&-FK#3=}8vUfR<13fX0DY#Nh#f(g!C>pXxDr@4>_!rrHb}Vvq-|)9X z#wan#Y(ggzzBfrHUap{yq|YWAH)B7$G>aI-uHRlWVxq}Z3glVAhKh$ulOS`3P)Cq@ z6FxYCOo2O#gDV-otYp3b3*`*YX%YMDkTa6}9dFM}#NZE~9W!+%nHo;`CUf?|f>Tc> zI3NT`U8)36CS2ljruwYY*JAW=?5}}|5d3jibdaWEOfp93b*a_0_@5`-DH>SN;{OYyH^21%(f~ zh7PKjH)EwW9Y>Bf4^8nXp8ieczRYix>ZFZemHqI)Rl-2lrJ4@6{q$wqH6Zxzb)e;8G?M=o%?qq_4 zrv41#`=3EclY7k9`xgWJ5iXbqzo}9yQS8nXGqJ|+2Kb{n-+Fgo9#l#<{qA=sG)F&} zQ@$O`Y`CCV{j4B5!y-VkM`sQa~}4zMWGx%+T`;H7XmAeD^Kbv-AJ21l<?gCwI~=9nBA4 ze{BSw*e99cW&o(4vQOFks+t@2S6Wrc_DgNP_z#gB8eSlVYz4&`l&pWxQ>$|S&}+!g z1c}if7#T3uMy+GY$AnSu*z!Rxqi)tp$250i#ss_-ZxHrTx4yA?tcAJOnm0jgS+~SZ z?(wn5Wa zAkUxF->9)7QU4F>^R5BJj))xN4d1qRohFEfRpq^y4zt-zOo1N1$aR7`nyElXqF9lX zp5fZ4^0fnwIuz#H4*dx{W+l_L17e-Ky_mmu*+p+#eCFQ#MSkNp0w!07|AV}RoeL|H z<^Ld`F_GK4k4f2FbN-9G&qVHCP5TZ>yG0fITc7JU_#f(R@vNQ3Mw^|1ZNhhrob5&-!1N>b{4~w6h1QPpnm=t4XFDvAID@> zzA+1-r+VC^piJ!M(Z8zQ)QM(XpZ=Bmy0Bfi%#qTrL?n4#D|B?glQ}LB@mivG&W9YG z`Urv=YiWW>^r)#xk^sj2VV$v$%!bAmxcfmp>$?KSNkq1_)HIBpRrx+4?ZZ#d|eXZ|(rMn_O3iZRTSGN-YFti$@3l26pK)YyOAHpIlYfT|@1&jVu2$DX)LnSrqZ7$*`o~ zCi#$mo9wjz|1-&_Xxlvv+UKeQf=yx-TfYj}Ww#QO6yV_y2*zZ5u%K}w0>4qNk67K? zSw231Y+a*ehQ5+cYQ&bs(b1D-37co!Z}A?)AGBullwx(T1v|&UUh9A77sOHhQP?yX~&ZdpWT|$6oIP(&_rQ%1jSmO zLv=jTZHJn&Hkb&Jy6}wZPt?M@DM0^TCSgVbxn`lmA-7?{XdS=NJjJWv^}^17qp>>P zz)cQuYA=ni3?P@blz+l&wLh!(gxr9OJ(D2+b#PQ@j238y&(J9>_XzYHRu0Tn{< zJ}ce@joMA+A)<2r60drJP!qGafpjJ_Bm-|VJRw5$27{+T&4*Wkh%4kue2t zrnCeCC-1l%oV;TM_>n-nR+xV#&pyZCujJKs+I6K)E+w-4r4XqfdGCm5dz_GVvIpA6 zM4dLb%##kmyNn1EN|ON|b}M0wU7SqHQA2J(_1M=h052K<(s&P9`?lYsz_{0nNU5l# z8R<>P?LbiYXy1r}utV+aXOwxLYkU92do2OcOZ#sIAmXI&PPcb$ryGo)l!cX&-1~VQhr#@4x;~PKP zbIpR(M02!PF=!xmHXj&E04#ug*m&}%{%LfN=>f0q$`&JOG)ccFll<1d|b&>J94C$3*`_E6c04?63Se!j~By z6?1f7Jo}y5`^{R0XR9{S+pZ0Cx-7t|($)ovU&+~hL)J)GTou(2Y4?bF*er zTK-9vyOO|kW8_}hm=ydLdP`4vm;yP!tfHKL9oDc|S*Tp8a6X>ryKWVy=a;&sAn9-t z)XE=-Sqo+rISZ21BJa^Pc8)wFYLYmeT*V*u;e~PT(TlIvMzNOhb2)OlHUMK^76}hZ zBy!3^MXrcSYw%Rc(B_vkesQ`zsJc;3DsfV7+GI_7)U1Ua?%Ke1Ur4UlT}!T%ZoQ)q zLIM)A-ZeR6r?Yr&KIN7Kk@gj43p&yfLTjAOE^K^9$R4?w>;1k7pQeeKzI}r2h3_t>w4i$rmW@F0< zt=-Lq{{b95fCNlQoGIIS2P=xA4ukWAU*qxI;bVB#buX?AD;mXPxvXB)z%B+W>espX zg}#P&3f!uW4E({bV$7Ngc3oGtWp#K}u+|Uw9_{PCo;pZey0s|2dFT!HGdzz3tk&tB zE(#(AOH%}=#H?e(q?h%~H|!Dx?x@v;;qE8SmByK5>Rj;ooZHgVa8Xds(7%fLzvjlh z;NEmdmu_qa6`bE(fLrGlxS|}eq5!YE3-D1G295iCyptX6fY8qK+_XL;4noH1?0G$<~~I^;ocSkl}B@y=hrjWwQWWQjl#(1aO(ezKER{ ze_2Lmi>Xk6jQw6X}iF;_E$U>2q4FCmP>}f#^NQolTxo#VCXsD2~2?HLlsd-*z(NTYCXH>fEh-N@xX`?>=JBTQoOO( zQljNEY7qbZu3tLFiJWf(=f44*lz#&pM*IQbc3tmze{=^L-e!CS)`IP_hvLO z4V&EWc&*iqk2|`nY`_k*KHMPU-Hcpe%o@_ezBrw9?Ha(|Ww=Ut*$@~z!6>+EZk z_Yt(gVPfx|sZ0$s?+`S8ijza|&u06)7b=t@aVq5wQ><46rC^q`r!Y(?>beWQ2b>O7 zF+=N?7)RK}Hdx4xxWXE4Sv4|)wU}hDouZAU1pHLQH%yE19Gs<4@L2e`J$*1T)Fj26 zXqQloCZ_;u8X1Mk0)+`ZzDRbEI=mCRCQGuqgTwn)gX)xMZWEIoGXY)b==e$6$WT`2 znq!yxWls{%uCppk#zZTN!J%RyEx1#_`^pIzEgJB8nKYWO(x@7dWIZt!6mfdr!O}W7 zp;Q^AqYJOI>}ki$bVGn|`6^{I@a%OU z7_sn^bke3O?XWL6+&h_9Rcc)-70BEplH9%|ML(U7SmvOO*cHfCDo}Lpf62(eWJx)) zut332)k#xY5HqvLK3a8&M+F@>)Q28;ah~flTUi{wDPF=%9X8p@3XJF_yX^fjVe)$y&{Xy-A#92rUsp!?O|jscA>AdHltpf0c(v=4-tYgSVgpm* zNByQ^iySoFs+;CD1KZ?C^COeDsi<7GOZf zIPT^?^+v$7$f)rHxle8RJ8G?BcE-!j9+ag-m1Z2P1D!OnUzm(Xbc_u{Cw3FnBOHWZ z!R3*y;osXY4jJD|zcrZ$n3!6C3kg6=KJpUrQRlFguyaFO7$Lm3s~>OIG_|;>tXv|? z93I>9>x)PtZ{UDbqL?0o*`oM+MWI9;eQ!e2p5dy%nQeYAURfzvX?GH{21)46{)mqC zH%4z=U1&HOt>Q%PuR6MHx0(DPPB<`QViN4-V3doJz>!u&QbcY24=EZEoJix)Z#Cmn z4*AAeBDrPf#hXn^LPf*8x>dO?Wq@hB8`r+IZy=qys3aHOFXBR>h6jrvRjDb1J?-Ik znvf9KcwH%s@S$AE>jS%tL9z#&2@Rf?ULFqQ)IQP~!lrQt?9Yhhg!m=X&LJMGG;v?i z;=cO6(+fg`!9t)xSBPsaweo>1p$u>k>&V~8Xvplls0qwmU38#B4|9CBtzFwEOI6C&?v=WgOJk2U|G*-GP9h)A{aFA zy&$bbVK23gLXfDVMZT#(ZtMl;O0eciAZHOiz~MmI+Mz9#d|}fbSwzKg=GEwm2+oBP zhc(O%!ijg=Hkd!u3r#zPZ@#NqK*V|Po>P(s<$J_09%>{Oirb8Ji^8xpHIPwvR6K!8 z`)?JG{dOtj%~<-kxkceU za@O*UI4O%$bcDDsiVi!Bn7gFCAUHdTl#HD{DCue1>TdF|vx5D(QJ*;&j>$dR>=hsN zAD5*cqe*Fke`tSwh3Lfo+5@o@Es-a7Z8`G8@GyfMkr17y6pOIb9?u4icmg~iVj@a@vNV+j(FsNE0<6Cx3n zvFJ;Wac$7(?+WhCMR2=LmB>OLa&##R*}&h8TlQ1zFK8CTOF*MVdf2(L5l$~5SL%X+ z)cyj(`3V7pnyX`l$6Xi%20mytqFQget&uixaCI7CrdAAB7s- zGGdwx(pgqq2sQ%!+-K}BH%Luk*oUG@dZLAY_`sG4mfz@YLy`gtiqW zHk=M#!-smNg^klZL>o3bR1!Ev$cvtS3W69nY2o9=iV#4J%V zNGL)~JAo-~ITU3FfhoL&j`xe_q_1fIJhyM+6*SAw4FTa&0|!Cy&vX0Q)~+9=EiEm~ zT>m`6?`N1&AX9(*c#qR`IH;VR3_(6R?l*-AHDoltd!BZ4CsI){XP91{aQL2~1$>HM zEGGbSBvy7L?y|Had*>(Q@my^81PcJs|E&)vR58*oXedLd`i z|MJv$7eKqYc6<|gy}RSpVAS=xKfQO7@p^yy`tWk(0ea4v9$z=Sc)UIV)zqM!p61+u zkM?hLt_lk=8{>kyJ1a?=GuHQKUjS$sDIOWhIa+Ar9>%<@!yZ#6e0)#ci^uyP+E%HD z_9L%PBiEnH+EP%AZCNA3E??c?g5@r5ZTzfvZ(?|A#@(DRW-TAh;c_*`;BKo$t(Y> z>9|Yca85`@SWC*Dw|{G=$LgMobAQJ5iS@PjG4Jw1LZb443R3n#TA5UqMM<8H%yxov%(u8^A&b_#sz*s#MR%}Eq|@BPFg{r%bhb#dLW zUP#!1q;IceaP<viK%&2HB0%}v3n$+G+E ztM8Yl&-cF0Z7(;Qr1iIH{8#Mk_bWH;3D8x1$s{+pT!i zcub0e_kGv1 zhfepe*~v%#r^&I4yRU?#`>$n#VUw%g{=T{L@WQ7g1)?O$H9zw+4eE^w`=4AMDh{q_ zK~Z&*gn)`8W@0pK1yaC zxvA9BEJRg7^+ETWj4(>I2K!d^?3{J6m{TiWgx$wwl-xU@doXEN&U#NMxar3hxCtNJ z#CdZq>Z3#S(sjQr`-Z!_`eu53<=S4hE;IWk4P=bFI(TrrbN!QL50nzcqba@|H75N*l_RMg#A-)yNE*7GSyc&-}iW1Wr++ne17 z9~JC;bh{rmDv!_M^&pKQDh2i+dheCYACx>B_JxspF+EU2_gZ`}nRhS-g)8A1<40g90=9=fP+n@a zIzT+=S-XdzSBA+X+VS1~mY;?oM;LuMaauq2am>VrIQMrBLt&V;GFu9WI+SZre3cju zkdt@1Pz&MB0p9Wh`Ve8_ear#<1lzbhAEF(Rx6a1OnjuitHNYM8E8q^YV{k_txT994 z71r_J5JU?IEfCM?gx%CTzX$y*`u8BuNqb15;?mzJjlbdlK>7QCzoY!`D)6~mU>#HQ zSD^S5W*i`i;H+C9P=iCjVBG)E`j?~?s6%E90C*T8c$n>9!+HP?$XjgEO}}y0q4?f> z`;GJW0e|ycE7J%&r%$l~9)<}X_S+h&t#gIk1M1D?Ma*O99{HX=%~OqBVh04!cg~+# zl(}X68hZGM8Cz?5n!zM_2j$A7;of=pRxUt4h=|>%B6hlBa=WNh6!0d>cGKkb;OQi6 zZ!c@C?-nbHP)^iy9Jt}m=l*aa(B}JkVEgUR_J+G^c$XKs#A6%{@8!<(9^u&8=jZcU zRu_&?7HH$~CrdSaGsygNb~VYHoi-cM`Op8Gwi?lZF~=yn)UdS!hPa+y>Fibl)9fiolX&KTa!4U99vtg+D!3VZNF0< zY^nM=`VFA(0)Bp7O(&W1UrmoOJBjr=IVb)0y!FIXE&90x9)@&9@E6YMDPEZ3jyK;r z{w)97gD7*6oGff5bCK*UbDyI*NhA~Z^4?z`VHzl5_MaZCAV!pP;9Y`zm&oIM&du>d zEXY^`8;wz|b8x>oa2Faz$GJbkSeF3eiUUiuQIwS_g@nmHjpVGY$c|P}mNie%IJbn# zKV8aFX1?{*F1 zu-g^9bc!C{DgID{u;ceFS{vcD{r#mB>;OWx2Bl{{MsH#lrKg=p(0u48@og!YkN96D zy!24^%4F!2A5r%r?o}4r@olA_C84SZB{@)W0@KuE%En7>!rrJ)+^Zx+mm_sZI-O~W z&WI@XYMgV0VJlwO6@&WS<}a1pcaB9x4stV|o_7VZyo{B5yLJntu7|ru8sq#H ze34VXq(gE-oe+&f9*Im^)%Sx*{sXP$s_f~@DZD1wCmQ6#4~@$FDxKq`E&M8+N3}gW z7iZ1#j&9)?c< z@CgqoJYtB8hqPWJIE`ZLK#|WQsJf2F)Tpz=Uwgg}7IpvFy6~3Ja`RGsHP<+JSZEfc z($If8OLSS{G4}GlvkZ-=i%l_MNr*ZG0U-K=I{CRKJx;bEG#X-!uN{K)&T|&NzQa zMq8Y2{BS;=TPyzm2zv|QIJTupSj^1K%*+-ujF@FHGuk4HnVFfHnVDrVSN#CYw`}P>a9pvzL}>HuowT34rZi`^#nyOT?YjkW z2JU{C^)OpB8u7qBxi#budd6m(f1CJZ;ifpxsFa$&f3TL8;S4s>{CFR&$*54maTwXhqo&)G$5;w(<|6CM!#Q0ec;a6RSg*-LRiyzTBlcl zf0lT1+pWRPaqnIgfBO4+)v!0EG0EAvKwRdeKf{db>gKScbokjtXYAqnE4V!6WpYCG zk(zkXE|UwPP!3XChwVkvvKgh#asH%u%5+JmEl*n0vPJ*;-CcvR^Hw$!OXV+nx0r*m z*wpP*c*1E{i=~ZE`bHZVHK)p@heXvGKT3%>?Lt=W%hq*b-@V<(qTPY=-=JDMik zOy?g$+!xwAD~{ft@b=AnluEgZzMJzmTb~*5Ej5iZFP1}3Yzx=Eo7~iGCPi*BpPr(@ z?%k>q1}G~STwxP`ZFl3~b$oaF;eX2BWB+BmMd-V&YO*F$=$fO;L-D@tSjVl(D4}~- zDxg73-=q9I+MRe(&Rx|}^0DPJA!NN+)1@axE%IkQuy3_bnlR2DYHT9k z+JbmMoU)}7JU0+`6o?QWb)2j2MlWvnY2P2xUMM5P2AkpI3KOj8gitna_WE~)9z)qW z`g|{=Z7>f+KHaL+Vvm65_u<|QHC;B*aVN>S;!j0Ncbcl zPH^H2O%{<|IWqQz9XH;doqmmvZvGr?!%zGrih{oHDIYb?$_ho5AxBOM6DISCgzCUA z?H(K@#LNsue58p8SJl~6{>2}`E0Lg%@akzV?kOWWC3HcCtTgkc;b$2Xwr9f^Ju|g> z7o-&oL`5bz3pC;T~|0q3;Z?gO>lUh=WEO9yE#gR!>U$HF- zCSv{k>Jl1qus{oydAaYb>yCXE2dE#J#x>o@^4`lN7ZIe=RkI0NIjpcc$|_N=PF~`} z{c(sae)(E5|DE=msnJExPcxsX^>W{`Rxi3y?Z+I8lEu1bupRi{ZW&m9uOlOG0h3QV z3Sc=?F&Zs>1Ozv}c0EwQm1gLYLF#uxtkkr@;PAB{@NNv+i3za7H$RX^$%+;|d(EAY z5PNNztG#vXzP>;Je@uupCZ90C!5eAxbg|~`Qo>>raaSS?>mak+xyQjTpo^4+9DMYM z%x$;?w~|@?wcE3Yw-#|0vMXsz*od03_n?cr$A*JoMxmZ|mocETEtDiDTdeBWNevW!0P zcHdngSmbGYeqh3w4i@{%iNR^x6{%bxF%%{{+W7Uiu)?gAtW@#24)R36RdtLl?QCcX zAV6FxSoxrbc&Wx872#h^FS>kNq4!!Z?7c!f)@7ORWcjJf<>;`pr6i_--;B`-K3PV& zfp1u6hcM86%2^u&e7cc=wswlw+&t|Zbz?+ zE%`ta9EHheiOud^TjDFk4SeS@>%tV{uZFnIL0;epEzu%v+;2xqJ{ZB|RJC7Rq;|Ko z_<-D^sdu(a*<-)VcjFFkxeA#4gj&f1d~9Tn_x&;lX!n+Na%Wu*cKdsYA!*w!{v|cV z(cv$tze-lR_@V}7IE-$snZIIOMHdeW?`%auY-HMUEdV;WuN?Ojz#r`$-IQLAx7_<} z1%LhjvjcEM-sOJXaOP~|#zF@7_u7YV<6eVP&USSmTggS1E#O{JDDb^f5XgDfA7|2L zAfs=DcWFWX1$BkUYucZ%nHIwT1GUhz1N^+WX^0!_+yX2MJhQk(w@xL2($t#g=p{<@>T9mT4LsQoU^M41w!i z4Akr86Bm<6MIkXZhe^OEipP-F<)T)NK3zdv+OB4*F3zW-6+RUm?ktW>&$-}M^WxSJ zUc(at%XM9F79FUNidKzuMS=5bWeW7r)|Bq58@27dg_$_y(*l zIEQLj2L-{<))<6M#AA?Beb?P;?bB)_Bpg2IACJo*Q7QiUXVvN@QZt@580~Yr)n?2# z0xs>p@7XDsJ1!Q*ez>{YD0tcc_fDw}59rzq=q4)4)R6DG57JJTV}EwH(eSiM0}uJ` z-_p$qQfOva=4q3>w$-?WCsFa$-DYhPPjQIphO7bCYRjyYs9|hS*XF*nSzzln-2q5( zw|d+{Yb9Q&dl%tyF_Ni^lfIjC3RLV^czp}cZ;p*ct-E>R;6d9Vn#|=>SM!Bg^l>tF zu1|<*b!xV!bOf?PwTwfxU#mBn0g$4*%`NP{TT!3`&#u5j0ldSstOKG;-z@KJODmLN z69NLQ!{yKQC6naTFFdtZS!U>oeY|3P?rzVNvEsQei)5U1~&LjGwqNeELYzAA3CL#C>cc%|(s0F(gcoe^M!p)`mPa*upU z?AkZdT%<}00wTuFGK8@(i?~nIu{yC*Jxz28U;%+y6m`KnWYO^Jn(hM;wig<63x%PR zi!c|1z@U^sB^%QZNhkC}bdnbxw?@YGELKvj_;R4;&F<+@{#BTnn1@zw`&sQyg zA>A(i3d#2vvRH5NuaH?#C}hH6eMky@IVuyyq+l-Av^JPH>$DHiC?b)nY0Tn=GZ-TX z_C`?T;)XZmfk>;JDXw(lAcmGuA$gu>Qp!9)wH2lISC(HzA%yd=G8Sk;>%k7}LSR6g zUqov7#dmH(U>cr3i9(D7!TgTwo}6-wUp6~xm3~2M)GhKTNAYh1?H>+Y01<_NL0!#< zb)3Q3q}RC2P{$)fVb6D2o2O&Bt+j(ebv1>%3x>H!A4uzG{Nn+GkLfI^*Gd8)7zPAk zx(`KFagZlVJTbDm%Jb|n<_onr2!wS$Z?rQGz3`TK7zjx#@j-_e1o;+9KMW}tx)_8$ zOXiH6wMHzQPk=ZbtN(H_S~zSIbE2eto=3Y5!~m3dW6}+-a2Ng!|aK-1w z2^&D@>fH6|Nu{KDJ<98&oa!VAeq0w0;;=t=F+U@W&d;Y&cX9oD6@`vK+oS zhVRs-y%`h0v*CXZ&5{lTNc#iH3L)9GhZuyQC{o~zT&DSssaGs3 z1LH4|9L$(xDBL7%?v8l>%|})Y!kEgHNmmC_^1T_6G$2Oas0YRWlPV5-TQF`EivMsd z0-xbeo%wPUP``X!9OE-90!e+Iwm$>r^M4*N03q4$(Oaj7$6H|CH*Mn;m=*BoyL|09 zxgztYhk$NKMnECRd-5@id#B&C?tLX!^?7ScfpqFOiVK69z)yrjoXAWJN1xD5e0da} zAQ}KU3I?SU_&Ml5=$G4%O8icb^fEd;m^!mQtve8Um$L5FsOZec(bdG!)5g)=B|Q-u zEC*9|w{vaa&qw^zAe|f^6OBbZX*BBMHENM|td%T$0Y6!du|2i@iR5im@2Fuk3bS8+ zl}_hWOfT+zJI}CWMOpUVtONJbh~4exWkA* zf)ZZ;k;dES&J$JN_s3vN+Dh)5G_rm#tNw=o5%hk7u^QkIin95XK0R^mHW@+I_P6X~ zQJ0T) zR(Sn9eJ_-8>Nd1@k2RI(o>P*aL&fp zw*;)+2O!?id1@|NG&36`1N$^H$H;7}X#9Y;o4orQ(6zM8?)1#-=k;ID)wLdW11(0r z%4U(>?+NqWX8J-Bpa$-5Ym=66zX5^$ZKi>@^xQP%3I^j@YTuAB1KAGw)Go#`K~tLk zFM7_94&n9t|Eb5p7gvtF1@ZixLg(b+&g`a8dMou|Z}$M6_i3;JkycUD`m4(KFFPUw zffNrU?KfUxg4%L4pabwA724Ix;MJ&M$0Xh_`^(<6eo29yhniXB(sI~YSR0t=*fPt~ zpqkN4K7=4@gvOpi-xIccOJDf2iazL;&o9y!;q^*-trS{V-rJWa7yI)-aV(qkcU|6^ zc{Gyco4)0MV9?|VD-fbrIG!qLv<2yz3J@^;~2)u!iusqVwa#yk)*A) zzq)~_WXCz)$8d_QScYWzeJn~i*fuB0c7?677;xp-YD0t|F;0vJlHt|`Ys~#^+L8Y zlVtsZmo9bdw{_O%XT&bBs@Y!X=~`ppcT`<~?baUueGq`TU6w#X*{3 z6ueR-8CBXd`bhZ-Hbt5dzK2nOi~F}2=l`o1OHGa!tL94D^mKg@6)N@@9UcBNEuseA zYwQZ0+`e3Tn{4pzX&qhMAH2_gCTz6LNS|xuQ|XyD*WDYpe$MmOdudhsD0JSxy-n^3 zWnLmTnmWliSf#Uktl2k@qF|f z2}7$a9PzdSF}>C*l+`c{Zr8=cu6Tuo5x``Kbx0~bo@;kn35jXFE>@O2Ki;>Zr@x9f ze~JUkJ*0#5J!npH+Yxbu$Ig&+gm>dn{N|_{rs~ncsy+ER%h!k!m!lsvm)8o7WW#uTa<( zjEB>1HcXk(qzkOBu zqVg{ts(Hsi9q%sx*6}{R(ZELb{~+O3pq=GA{P3)lqN4xpFDuZ~{#fy-@^6U8GN2Xc z{|_rhj1Gc_51@`i8xn7=y(v5j(cOsw4TkFvgVbIYO=Fy zhv@A6zWEcwU~27+bGshEC4HoxV9A$*C*S~TZ4EGb^Vq?ykqxv}HticiF|ort{i5=L z&o*Nt6-}h^hT{?@HDebH{5Gg<8rlX2;&6}Tbsfh&v#fFDuF+pqa?iRu9yG0l$ijDNG zLZl0!ScCRtf(^xFh}Iv}dPxSxTFj<~bK^g#RsLH4LLJ6SE;{=QwLT=ie?CLtJ{!wM z2L~#QlK{n9rfRoLV@FAY-cJj>KBPz`fMjN~te6B*pXZxe538a#^(7r{hP-P5GwcB-;beW~6 zx4z_2vvfEED+JUS5jsc*&4!0=h&Ksyk7QZ6inJU+eKX#Q+x*jXoKyB(q-s~((&IZ` zKAFD8>_kl@r?D6mFnBbU;e*NIG?tB;EQ@hPDiYriUWlxr!qS9&BP4%pE9F=DE6um+kh9NvaP)Y=+@ga3}Uh-#bo1qW{W5gjm#=f)B zvP{P1G7RJqHD*HBFwQ9b){-sf|4kMT!{)u`^Ct~Wf7x0R+IJ57&zYxL1-ppzzP9Se z-q$=|19_lX$_-<>Sj$sY52nY5unwy+HEu&L-j;*91uH%wKQ&9ad>$UCV5;W&#&Eyk zJ*ttM}_DPVQsM8R|mG{ZZRfo?aOg$>3mE#fASiNu+2y5L5qU4;3`IaK{)IK9% zx~L@gs3A-wSu595OJKq>z^O=RN9IL5SIYR&nO}=ZVqzZQloiCQu|`?!r_X%qx6On=wPINb5(&RaZ+h$%~Lw8TP;lY2^I{(dbVHoC(}2w6dc=DPqz#)Cba;GZ)hG zVE@U~dN0(O15_aO)TU&Ti&R-@R8^&i|A|@z`%hF7q!3Et#X71qM74iepjQX9ARZp; zj|J165s6PE_p6aRWuB->o|?+TS&N+!bWmnn>T31WziJ9PB<8+iQvStvAMy|KW@p5$ z3xe95bOjH7aADY62((SWnlL7(U;>|d)pzmK(g=+76JgB8)VTwPOsGJoak3LlAZ1`J zcuL019Y{H`K?HSShIN28yf~i*KNVrC>Y!$HZ|{iw0@=EuBVVcZk$0i z3FXGzG!Q3c!LHCRa+5Li=0HG6@QH=wROskW*k0352_~joQLIT8lc*P?sR#2oypk%^ z$mcuMoXz|n%^GOoIha!gwO9QtdrSqvQSA8Q-@Z$)QAK5^z12en;lpr03(&!Eiwd9D z|3ut{+KI2lAQUf5;GVKew!at`lBL^nOmy;i3d#Lh3Emj2d=VWqco%_aHliiX6X!T_ zmxd$>UTdoC1Q#Vjwp1;Au99vC`6E@vlzz5LZ%fAryuix(2|;+^R9r&`oifWEEm(PM z(;&`~WLGa_%W;$d4Ji%`w)E$Y(*Oy=?ZuY410{Oyb7q>1I3B@Ra{34S@qHrBDMZ1tjE=DNp%$0NsV_D|B)K!D4vm; z;5dW`Bg>NoMY8K!5D^)V7K1*_%8xU2#{9=ACNYOL6CizQ|DXkzYw<#snAIG%L}V?J z-BneoNVS1os{LCuB%y6hXmj|&Readc!rOE)?I#2@B#NwCQ`$d;+_lJwvOXLN=Utd4 zret`jyl?4xJYdt4hXbfwBpL9bGawXM05wf^<$>^l)!5RFH%Opa-_1@CzfO_vg3!h} zdLrdGVgaA_Jp;`U=Xg=>Ad?9nni@4J$Mfo)OM(r!`#UUIxtMl5#$RFi()Y`MCNt3a z__InUsbE@uu5hjpeqjq%fy_v)jHI&_ZbG2T1(oK>F7vc52tt>t*F-Be{r~#R?>=CO z*C2)=FKFl=WTLofr2-q8`LDPjY16UB$CLyy1Uwk!4khUemo!|P3%s`{ywd_y-lok+ zBJe7np?Qe7(_*th8!Gf>;;!|F++c5o^qg&)W_ljOGKG-Jg`0=e>7@z`R?U$a`|;^> z-8C|v*nApVZe&`H2#xH^5arb_>?tV6c8c13^l9}WQ(ACy^UJjBL#`Dde7ggN0k_3o z2B);rkf!Q(*Joi|mFW2iWVW$SzQ^MbpZur;?}QY~man3^fbfe=^$T08m#t^#Hiq$$oXvht zg>%7j3dN#Q^W8&w{*{t5fDsQZ#}cs$P80kEW@bc$;I?x!Ob}!xOfZeLcX1y%M)-AC zWeE2MdWaasH;*IWcOd9ZC=JqP+#4xjWtqSp@{UEAP?LPkQQ%yk$;&p9P;A9~7>fm} zZ(mlk#dorIzu$p~JQA;^-ZxfnYz0hGf10*$h6w=!3H=>NAUx&!4YaAA zDDb_Z{6oYYc)r(#G*gtaqG)#!(-H=Zb)fc3AmRJ;i&~b!GZ^*e5_Zkfg5({A=P`1iR?FS2-6e@qv$Un7s`~MD% z{g0Bl-(tX`mrNed%r#K3kl1TKj5B8JpCw%HHyjv5mb-L>qw_mKNI_mIt}n1O(8t3FRw&FhVUNT+L^gI0$;gYI#>n}94* z#gqd}%@|i)tWH1otW2}OLEm8Q7K8Wt8N?Fvqx|ZXw=9)nWC|&bk z0A5mDr5=JfhypDO7p9@;0QM|%p6PF^;onAY2wF`g{1!HtOFhood(LkHK>;pbvyXr< zrGH>b|AzStD1B0yB>eL^-K--k6o^7vm#y}--5?+|F2IHOi!t+UC{pJ@{p64EU5>A- zRzxqVquF==XRuFzQr`2q0jrP&+u(&MRVD0y(OC=MTqTTI{psydm5l>%3C%uIzEBut z_hIR?x~f^&fWq40_-aM6%dyTL7XfgQ$-l!dP0t(S{UZg@cVS8y66rrc+5MJ#v2q#^ zJkxK^8JoL9nNY8WK#`wI+YuRnX!F7YRxK7JnAt}OXIb0;b`diG&$MGkrdx)GY-%5n z7(!_~Gyje2MKrV-Jy_O}5ASsR`3&@h78E*yV@BsWN2@<1&-7hdqd4ja~7yK90r-%xla}jQ)`PfPuL-Fac5V=GRV2pB2^oSSwL-TZtu=O z;})i~TghJ%!gaAW5%x_lMh|C*TD|^w+!X@oAHIkqQ!shKc++IO?|YNL75j9{(=z{h zJ#==uWn%fL_O^S~z>tVPn=qDe3To)XQA-#I{-i1c_t4{9t$IR1b}2_gNj5D;f10j= zHUgLeP(w8bIcSJ6`s*0y>g-K*Kc!{QVS9#KAu((tY2(Zf2>J?c6d2D#9p$BuiPU5( ze%ApBvtOb}n>t3FVP7lEoB~eLk{huQheHU5MMYhD>CU3cW=InU}eFxPTC62r&zEMjL6oiF)&(IgiiFO3TkmTEt;c z1<=SMit^IxS!Ow_(6GmmBkJ3Gq$&g8l0TfQJA;?alF;KHDS?Nh{H%L@Q!Zc`>&%7>oZ~;F$tGZgCDv%Bo>Eq*<6CPOvM9aUwM6=sbEnf9|i~y;bhDRD4L$ zJFl}k903DySdUM4yI7n7TrAMh!br~5w#;@Q;;oV_xiip4teH~0gAF3&FnfkL4aEe@ z{~T7<(1kcSxQMOLCz{|vpk1IN;>3Hc&{6`Ov!WP2A6Cr&t<@LQ4$%LF0y&T za3CKR8BEAvjQC7#t=u)|OpQ*T5jd|JeskkL#+x44)Yxq!iKgds>uoU~F+PW%@q zE_Tl*KVBMY=QtbcLMeEVxtzH{mg8GQSazJ~JS3=8S_8JqDAa>zl%D{D_!deSXLO z^4EKZRx!%Y3PxCvqpidVNWo%)V7xR@=S5Nd`}J8;M4l7n&n?V^r1%z<1(q<$o4Ako z49Zfs=7NTUqyi<3F{@qCxCKG1D^Om@zg|mb7zb+LywQ6>ISmG&hITYuaSN-kfh;?| zMdssHpLt^#c#F%1L7jElP!5`6n^A=U5|V7%*ahLj-)Ydtt#)yp5ALa4@W*J!$`h31 zR0$6jV+$OIy7O0s0fpKE2y0+ScYhJ^*l9dSB7+t97Xhk6C|*q5aVL&!FE9y3d5Y3t zi?R5H%y}`AQj$_xNfCfs(8Io?N`g#ibH0`cK*~rjLEP_2dOBgDL#q8-=dD~m}C#oeUEU!*GTko~d(vgmLjd6z^0*=m*tTS~ShrMnCf#;JcB zvWD=7PcjhUFGEUFz=3>ZRx*RwzX(L9&#sC)>j1}zw_AoD$r;YM!W8I|)a^LSt*mTz zJr@T4nANTHLPCJ+l$5n!*88_k&nnX5P`SnSGI*wp-nh8P2C9s!jqlV5WS7owU8z%Z zb0F*~`TVcM%!I(X);2;uY>`1lAU*ftv!%|w{#6cLl)AQJHjS@v9~QzSr;VfHDWHQ7 zx9Ee%0#?FDWm8;v9lU&2{Cg4Lv^Ys7yAK~8JAnH!m|K>5wl13&D)C9c*kTUqD@Pl8 zwOQ<+UkVGbBfi!r_sma|{8b@oWM1ndU)XIrZMrgibkZ!4CCFb z5*ip1$Q01DOm{`=#(L_cPm?fO8pmd1H~ij=>CgN7$q-M)ZL|+obNQGQ4g4iq<~2LC z4+IbfaX<9x{Uv~95HKw5)ESydGTK{Qe+l5(9C?8lnKVsk#2=Y8a~znU*{h9=gk>d7 ztusj`1uTO%sv@u?Ha@0Hw9EmKOi`c*6J{*5T!x{r%5UOfv`jzm_QIc)R=L$6sVpyEMkB?uP$E9d5uM zbz&(0Tb(TeP#q6Ux8K_t=6}FU51w7(T}%H4vd6-OzFUh@X#Y1UHip|<-^A?KkN;{Z zS12TD&@mwS6_>U`Yv!V4*b>Hf z@t)U7H?f$(25Eo`l^PG{h$MJT#jK0_-JqMa?E&!RCuaTr)cNJ$PL%U670p_#;7-K#aRO!ND>IYI}RZh1VpU zF5P0VMJHUGnL=@M@7@l|Wae6Qw;?7_2nL%*9$06%b)WJLsJ6ZkH4E`(AiCSslXT4{ zA!yk11F|IZa~;aB-9g)!cW}nf2Lkt<;Bf#rla6|yP?~Nd@S20%T+HbUxVyIjV!26s z)@{BI>ST(-ALVA%IN zIW1Km&c|R~S2mo1tkPku+{u66Fg6);U!u=-X;z;)+gQIXBM7l=k&^1b77Gs z=IeUfY$|`1|6Dohi{du9q3}z=uGnCF6N>B7dHpAd}PUCAwxXtHJX;pDg9~+x19Wdbsc5-WIS<;d=+p{Cs>^z!<3< z7%9IiXIlISOf9iSv|K$x3qwmKiH1ecAZ32TwTfKvto5nP={w;;Z2CR-TCQw^{&Rcf ziO!)a2(SfJ3-IqxbI`w9P<=HsR{b9reDrL;^&krZ$gEe-z(IoQzG)PzXaXA!VP}#^ z3$h~tC2KQqGt~6+FLrG%oX&eH(o@p%EnmE8rX895Kl|<3pfvXKE*4FRe}-t)U^BkG^T8;fawQV4r9N#b5Tg5|Kh>oSvAAZP_SbJb^w|22<`DJ#m1{?oA+-aHo*V1v3BI1muDe>-LlY@VuSWNiCaOUccY ze)}IR1S3DcMbM;X$=W71W1!NFgfvYe;d_Cg6Vzd?$6pG!&%b=OQ6_W-h<^7m>GXA)KBh+dA%FsY1PDj`Fvk%XaVE~-9$oqhw__=#B#Dq5b z2}LRZeLEfXaHEA;XThANO(Uf}yOIjt+pEfL!}T*}6zpIHmGM9{4%~PhSE};?8-ozl zjTwnn6er=CYdzOE?@U{G6h>qKqYJR(uAF7*t*)75rc$q z5}U5M^3f>Ep$-1YB@Qc|biR0*jXC>MgbKY2Kg4O6M9Xl%Q6?%j8Zz15`pB5QftJSi z?-^XY<|XewBT!_r#cENk*b%~oijD{Cc?Tw)=WG2qauWBRTy&PC<{TN-6j_$aC?*ww zH?opr+~^zUF5ttI&6L{o7%FD z!7|%kW){hEtQYQw@w*G_M{`@R!BlUqpuIdo`0LCq6`D+V)dW6^2Y=kA)oqGUi~f$9 zq2ob+%AH_}>S$Hno&zKp^K|{s!*Ai=-Ck3BsLo406>20azTNy+GtDFsvbGUmAKy+o z5D?6NpOUVYW_D)Ge;rx>>Tsr`;IPhx)ALIcrQ=}ndEG6dL*iofa=8Q%tyL_xNnF>K zMw#T4q6hKPsn5@7vu+UXqGhnIS{VLf{w>3vum$PF0Ec!hf=1c-XjtI~CG;rSlYn=x zfy(vLc__C zY!4Xewwc<#mP0sHJ=)|p#!%8;aqxr5c2qMWjNABVIix`7gk|z#>-G%>50n?I>-^9k z%bRmB>o5oy#cr2iATIAj@x(nl)(iyAu({Pas?T>)@6NUqOVB@IJor@3%gDrm4Rb&yxK2hpZ%QX7m!v2*Zk@W~ol|A# zgp}kcF3@qG87u$VP{cbuf`Y`>*6l{U!X6<_R5h$BlKv z+E_ixXq(R)!lg%3LfQ^J@r)x?=JTsoL0Xe=WY!g4Z@}7DDPULq9eb6k?CF9$6NQiP zm^O;e$rO_9$O_?N;$tC{TwIa!$zH*uI6rKSGL->RU;=%4;7;|V(C#!-Cz-2>F*#Th zOk%Q)C(GYv^NSn@6`E?rOgltX+F;2tu}WPbCBBqSEfb6eBb2a` zVcZi8d652Q%Cx52OlWozF|~^?FBMDc^9qhzkDI43O}ujZd;&S_X|$~nAh_qnrb@C} zQlKSRaa`w_5)=Hs7uFFQuhk&BIcTy%5M^yX0Ox|K+#Mo64pT7nrGnJlGxO~0s*pzS zooT1sx^40spe24~Tkx%qZ!@IH$f%+8WnEObqtcDmKqGNJ&A$=DhzU z#Yc>xyBNN_G;tK1UvT$LbuT5UtDSCfahbYU^77WITsa&^Q94$3Kh5*t_ocxpYIM+8si8ZTH6Y95HZ2RZutS=x( zf5qFsxVaRRf>+z>q}V)W)u7KqMMWx%ZHDpaCATo$AeK~colQ_yHmh4L=`89b|5A@U z8AsW*q3d)dLs@sr24|r_ZviiMJ5%Q4OPd7Oc6;wL^)H`cQ)j+D z0!#7v=}_jfD=H0!{T&WK-@7I5x)v37sOZ(7cRS}eAz9h*`I7JlQ)xri`qjN1cO~JN z6eqO_jIKTa2cm+fiE$!G&a4w&&-Pb(*Fu_Fk_Jda8Z9`8=-aiB*h~2cZz}cPjIG>( zy8OistDzQ`(Jot1%kb3Jhy9A|l6xKu{HkrDeDKr{QEeKQG>foDRNOM-Ej9ZFKYjKih;Uc6&1E_<2(^EQgO77cJ<y#~WY$U} zCk2g9DP*WNyuY?>tFnX0=);;rNEZ>FzI92fnw0pU>I1rmCZ##!p3KttKoN;$VY%mE z0MdKM#sYC-;W^ot2JMQeO>MQpjAS~#SzZyQW8M?>+VSS4kh?JSOhw&2E|g< zLQ31M%^i|d5geOtd>mt6j}>bXLL&&w!m%9jq&f`tZOjp;DFD4yrX{Qxy+clVtEWH}9G7j2 z@Z*<@oiB1_n+R3xTvvmJin{aUv zGTe5SQitksMid71G?J9bAYLsdlN`5(D`Sh<%#Qc@r(V)dYE=SB@;f8jA{-*vt$L@7 zu0X;L8^1ATx~5Jv6Q0nAw0e$+{v+H~=^2!F4Fz@i@=gt*x0Sd5>WJIiDX*{#6l@F> zj`I)Ue9wx=kjuBoikbs;bXj zaz10Qb!}DJVcT6?IcUWarhuMQ|p;asM3SZf{;P!9l-LjN6O*EXkYQw0*%6B5* z;fgyjZGus1*AFC}sFd~~skDeVG?nHqMwT_|l>41jm-1Q3)%z@^WYVY3o$o{=^TosD zBBn^$i5zH++307m!pZ`8<+yox&z6%EAh{`JE<+T#Iu-r4zu%|(d2tfJGSm8|2hxnw z*IGb)hm5g|fOC?8by#7b=l%Bkak_{X^Xn#HT?lfUN{VYE<}$onL$3n;6-jezb{ZINaJRC_N6O+~#8M?Q-pT6%ONKM4y#$h~( zJ z+tYlv&7ZknV0xga47!i1ouH1CInGanGrT`-<96OOt6RLn)F8>%ghYSN=1uJTHubWK zY2dEuy-oOy@3`Y|#w~0un?50)h>kv4D-c|C*+ND=*;nX>Vj@%Vh0nW^t)up}`3JN_BuAymNoqaH)e zHOon9E`U!(LRbnK1s(%ugv|PeQvkyN{AOdb2v#X5-r)Pi=Gt3N*4?Jd46oO*eZgpf z!QkvIninh!0=SvG$bD1KqFmGS2 z7Nr-{10e}K>&Q4oNW)N%;RGG^nXUD+O6>pv^!8EabsOWyWy8;A$$Y7owlIv2BOEWA z37B3``|-KAu#a$@#7F|7_0f;;PdEle3|P7JsTmb^H$2sXHpO_M=$ai9gkz2Iwdi8s z={PNFRAG|%mVR$+)m?-g_B}v@Cu3U68>3JZOAa%=SWhgro2EoDD`(54c)d|Rru8rq zC_R!LNw!3wTG+|E%u@c4UE(3ch_+o z99t?zoG45D(}5scEJk5-+!SuwxwKAhjoTNJ?{r~?Y8AQ&DGzJ$Swo(edvLukeTm04 z8H6277Nj|f&d|aGNJGgBiRarZkMCpRQAG1@AG`P8?3COZ-)}8``}9EPcE64X1qk)$ z4pm}Du(bLmD3fpbP$JXP1|Hyb+@$me&j>CCC%9@>pCH!E0NgF9gPN05>GHqn3|I?V zzprhWY}syEzu#mqA^)JXM{f;$@mn9i+!KUGZ_PYE55oh=^=JgTxUeH5ZV*mPuE)sD{?i%$dlK&KhJh-$~%CK zuky9ag;n?nf|gb;K2~knLJrVgI6GVXt`6HoEfz4(Bl?OmE9e&w&n9SNk4rNHdPKc{ z)ckO}!dD}qC{H-gs=46n&^*1M8m9IK_9+}H}gnWb?TX+CPm_mRB)a=hZPjLfRx@~T%JK+H;W{9*G_#AC$^p-CXOENguWYwj~9lE~L+RM5zd6WV^wJ|wJOX113Ns}7iJNL)3B zIVU@NS?Wb|=!V4~MD{kbB(3;?;a5;5aFMjmQK(wvgShD@L^zS{w-qGsMrK+u*L>e5 z;ubkDE^y!&2Avpo-E$1Brod02jSoVjCmH7v4G!jG4U*$q%?FQ?U{fwP$+JSgD@@g* zuZI?yoByx%%1pJ*{4{0G?q%opR9}13bf|jG(QT718C6%7`o4Xn`lITu+`;JgpVv=$ z;t^bY`qi~|xw|6Q-#b`q_trzV{s*Trx2nFf;(IBRXQ7+R>(A&`m&}h(MTNSqe1)Wm*DVKl-RKLjRd^sDAV@WOO6Y``-v7 zj@DuAjiVcY-qA%EFt;Ar0Bqe}bhFU=jtH}+H6WXX+LJ^#1-+|Rz?otZi3%$$4g z`+nIxRMq;)TD_}k@2*z<01bl!0Re#kvHz7f9 z5Uw$;916!0pOJd&OS)1g-09OqqbDhKY+#U~l}`y>?32Hi$8uu9yDJ?}A-5pALoz!6 zSJRT=^Ja<%l5MA^PrwK(*u zbt^rEXdZ*e0F3WH?7CUp$Fw*P;p$4GuGDnbv8+RW90P2EX=-K;ptH1I?FDm=Rx}wu zwd?A{sQX$S2FVh7-AbZm9CZiM)7DcMe1S{jXpgP*3BK*Sy`?XVeJgUm7-o1oJELGX zuHiq7{+U}tv{n@)9-BPE$rfC7$l$+5PUg1GtSrB;l?fB?q1iF~Per7Msf+EKG^7fa45bbf z3PifUj-M3S17(YrJ3CaQ47BljNcT^7OfBZq^NAK2i)@3mOmyY~a~FEFH|WnBKt`(w z$%yR%6dvl^!8*2Sk=ImcV&*irJQkYdB8=iGCcCu(C!KI0qSI91O zTCTp#GXOY%jC>P!L~&*74_o($JJBW=Sz~{(!#D>_wNynjc6`19G&x7?D@nQishG03 z)(pJ12axh7z4CLGgCI#IHA9cLS8x;USp9sK4MN4!Ej#b_nBP)OXn9RqxUL7O_&H3G z{$i_5In`~9UGzm5nbzYu{bz#0J|nAHfj{Qc-~?fU6J!Q3Rdxb6IJ24poXmfJ$TJhh z6#LjPq;GwsXB9NVFEJ3LE)^hunBc8GW=S*fS0)Abo_0UXT+mnwn2vTwst}?e)nq}- zrL!Bz&xZ+6_1AH8&3>Mw$ZSz9$~}-!!&F%MtSOd2*G7d(zKcWuGa!I8JdrA)9<#K$ zh!i3Nvm_TXJh}g){G=hw%wjoWkkghej2mHN)zgeOHJE@=>@wVkVF?X z_}9AuW7WM3bGjNh4&r0Cdsq~7NKP@8R8{vDO^(foV`nGFjVU*1gL0JSP!zP}H@VZt zB^6?Uxd^LzZtH;l!rGzP+3i(kXKH^@7qb@58tmt$F+SRqkHCzzT(lu~Varg&%rCcB z=T_|LU*vF##WP^!+GM{obx!0R)cd`@dwH`+%y`Fp4nuHgiDpPY<1YE~)O$hn&$?W# ztl%Gk>tYK70fF)Nx_oqS_@gZ9WA-a-810XYFa|CWR`B8~1POuj;?t6Agf$5n&9kGF z@8e-w*|&kd_hGpFpINWN1?vSL8%7@X?(6hCR;j@{=CD?6?sHC9Iq?X67gQ#!+x z!It7`4qzHM8cmH>&cQJwx}<6;SB-j8)|-rpx3UZd_dds=}reQ4alF{i)ouWJ;L(-Olx)PI3||nhey(XHJ+g&vGler7#(M z1#%*GHJOldIL0YK2`yAIEiRix1`Sb3;E%(nXDYr%JN^2Q;rdBpGTs`NCR4I zH&T*BCbTx*3WjFjYk1o##i#VI$cYvzz3XUCXMJKNJwr^tza)B{yZ%M?&kqKQc3K!D zGz0`1(w{f1JHW||6@1sa+JP6RKUO8p4Zt!R25`gZ<8DZ$t{ha9n@TQv~yH}@xr|!h#k(eo1b99Oq74o6r)e<^l~UpqC#fB|A4t?}X-}4jjWFqX!lnS9&$1 zr}0OP^W`J?<=}5#k6@PqIVenG>lMGr23^4X2En+09pw^bh^sb0$OIE!7 z(prU)4mr|VD@7BGkM=#M)Ro-K!^$wR&T-+Jt(^8Gqw1_3wWLYb+nmf3?4~$<5FVCo zrXdzc{p+OOry>Q8I8TraUUSQWQC z+ESf#?#K#*4!rkF(gK;CQYL;zzfL*2f63-EcRFqZgjo^b@YiCG1DXv9t(pm3g6tnn zI{0LYtsB>VeqKA2Qu%quYkls8pjWB5$;6rA$2ZVwM5M2VKlHwRpjXjDHQ=19UJtWW zSI2gjIDy0tjtkDr`Fq(WHvMtT*GW6-s$TX~B7K9#;U)F4J0{R~A-6^S?l8U2Oe<@~ z8aZu*a}6St&&MCCUeW(~zu5Z|VR3*b(lPKvN(`Pz|F~cN+y?ypuK9CI@I_oHh>hU$ z=?hYCNFq*=edL>8c{Csfnd(BH5SitK8_C@by)`o?$?brhTOQwRTDzHv8@2g$K?25x z_kny-Q0O=_AxsF#CN=Irs;p@lH>?{{A5aszqRm(+3h0UhuTAFjureeKj zU@s<2?c$uV0Tnm3@%HKdx9dAIV!vm2LnMoaIbzA8-GC_|o_)m%Ag8s%b6zgd+%sPNz_)xgT@Ay3AM~B|pSg}M#}kZXg@7>B zfQ3N+SFW91JZ;ULf6q+d?QY_>Or396S6;r+(+|72V2Ghfdx!)#;*Z`PS+%E}3Y;^) zzJ0_06nkvsM@=C{rlG2#`MxZnPOvu%PnmvKD>G5u{P{WCuif?(Xhas1{(Q2=+t-EK z*{XM{`B*%0atQ(ep9y>f@ApnTbWgI9SDx*kPtrvfh5#@3v9I@!3#T!~qRmG;26y*s z=b)51(BuBh&udU<=+2?%bDhwO-D}%=2rF=z%rLq5Y^rZRG-Y>dY~`rA{CVu?qQP_3 zmbX}xtfHs8L+LYrSXABXl~uj2_v75kn3sEm=&OS^pbzsFv~#(4?eXTgeE5^mZD{dA zAFxq`w9gW_lr`k7WAC=`@w4K`oRo>f8qpKc%ojWnd8c>h%3DLBL3c*1E017N?i+sV z$LM22#}8}1eBYi$B_@QAwbsGAB|C2c89!2>$Xh=ezkyfe8_>-8$&vfmj&=P#!FyDA zkELMKj_l)@^vAQL>kE%G65g?^NT3t5*E7Et)n#J&4!x^qr|0sjsFXykUkK|<=V~XY zxneA7fZfjywCdZbuXoz{d@cE4p_)S4=eV)PioOB-Doy4in{`a_+FyO&WzthUHb;|O z|Ky?@3dBsKCUgNIcATvff>K0*o{{PxAHid6it6yVs~U9J!q5{efvM1X^w8=m(dQZ? zUma0jz7W=SP^@_fzTfl9exHRO!t>SIvrC%(Qw?ybeM3mN(*5)#G==vhi&yFB)z|P8 zC|s3ozwnCP-%!I=d=auLhY(g-E}YZy3E# z*bLCst@CQ=*lK_l$x!`1Ja9%Gn72ullug$nwM&acstj)GVH8!V0f7J8V|wnle)DQ@ zH!iyfFJiB_;%W{>$WYYw_ITsDU5H7PEV+8heR@?lPL-oKw0S6Tu@Y_0{<`mH&4zCk zj;W5d$y3V0{;s2Q1zthPLoDW5>*K=5OLcnd{#47mpx1VTs`;tM8747Wl`H(8M=h@BArG#H~BbZ(u z*Q`1Ot4{k1mLh7{IXC1Mwe7YOF$#E~-y^7|BT>Wj>`OUP946)mGd1d{O2jR@&{H5- zuH$qYAzT*u;{!F=7QeBsBYzXZ$b_jE%=A$Z9VS*`x+Q z>hO)|iD4*S;9&$Ow!;oHOI+Z^1;(|*7UcZy`~>dA`&TE-)>{Ci_+R6z8VRXcU|2no zhkNDLq5g$^%#{ERB?phA|07fvj1~gM{YU7ZR4}Eqr`8l6|3z@BLIrL?`a?x>JFHpm z|B(0}s5q~SD!jlH@Tk8Fb0Y%lQN;jz#cBA#OpeU_UlN(g5okS;5&lp;o9Nz%(f)hX zznco2B^xH)K%LlzSprhJbL5?*ny$X5_mF-%e!67yprr2iNYVi*v|r*%TADmMH~d<$ z^%m`%iKVn>_Z&e>Lu0ltOi{utddW|x18a}huB`_41K#3KeGB7mxt|t2F7@sPXR@oe zJgR@ri74&w?v3Pa-9>MR8Z=)^k;T|=vn+`v>BpRM#}mFjI-p20drlc+Fs+u7WNZwq zlHZ&F-4-+4Q3qB!S^S2wW$lif682kv^+y1zw*#tTF-mQH>4bVO@12+q9p5aUZ3xcK z*ztl`Q;zoI@utRpnDQd)ud^$-k(zY`UYx17SX594y5;j@&kk0yM7;d@ZPaH@#0yE zc&=y@8+6(+0fk=O9f5fo!L+RIR-k-iLXgGNG=a_M7t)~dm0bkIcbq`wuhTRsjHS_| z*mF88v&{q7Z;@vbnIM%+%qkx;7?&&!cJ(ExGR6>T`dWvatJ)b`QM8;e^+)#F5~6>; zZ_2GQbL~sQ$?V?}2oL)CHpV}3RW`jz#PsNpGyT$UV_u<-re3 zLuiv5G648oe&0FJe^yZGFJ@^+9AO z`N*$ZR4{t)6{>?h0U|HP#vJnfY;w}qb*eV&Tl^zy=R~M*-?Z zS@Xsz_lY6#Zr z1p<93-Lpjm#%Kf7oHBGxajzQx$ZfnDoL_R{?2IO@Fh(<$eUpMF8%5OCu6~lG+WH{~ z@U3d@@d>-D%SXlkoLl!vL+ZYP{2mqXh+Bilc%1;(^d8lg;?3e=S^!ab@`tn;7VhF` zGewa5Ua-Wk%fqa8;Yls_8do9JH#MYa5YAIaPe0>&V9)jPi>5|Y3%e+ZecZDO@&G!f zjoC>wd81=@A^el1VdGBm6$ZiP8_6qXdvkD!maEo$XtaTWEO~;>Es5P4)XiAB{RU`S z_^k?P3%u+C%CStVPfpHUMV#d{$?8&PzS>g_CTRmp;fKr3+<^5XWP+cE9NJccfjPTz zN*S-UOL$!#N`|vk;w3&u8V<=@CH~yRaPt`YqjYJ=9GXAwBdukIA4oP7uH=yj^-@V* zF$+6gx5tRM7fPxbaB(Wl1^si@`*&kYJTRFD$kdgd>(GTaM4#U@OHPUcu6kQloaXY2 z3~o4xM=wT~Y!4LLFA}=HjWX%0#r_({c1X%2T-IvTItVMqC`pYxnzfHr?@*1thS~k_ zy+*-TdT^v{P~b>(iI!=aC>i|73B&Cv=~%jSTv~>oUQ3$mqoETW;Fo!1&)FZR;!Hrf zKwLLvkf*>zwzWXQ-~*#0{zU(U-x+G}11>;LDgDONyzkQKmS3RgP((*BRxny-N_)Ig z4*7;Kd#!2JSb#1BC0fXvJ+XhvFjMN#`)14d`?tQSjiwdumDAINg*1)6B&5%;cP|g~ z#P}5-&@ntguYdd|YN2YN-?SYyn`%hOu1 zLf_C{NVk7h^+PI6C7$A{{@iz$A7Q1`pG^B-xUJOHPkGHO`Xi9Yv@X%VfuN3j}(o~?gef-c@B!5(D!F)nCpsqR>;$OodiKYyCV zHDZFww@y9bQ5VvsN{ZfVgFzcq0XKnb1sTyVUqy3#7!%UybSAY-Le&_ z5QjJ7dFxqTm2jk-(66n{WwNZ~y1!XjLDjOecSxW^fE3$JVTwMCQ3wB{$@bJ`k+X@F zI%StKs;7zxf?9zQ`9XUjrr;hP)S2`2N!8}y&08!&8MzOtZmksFlT0#86wFl>55^0P z#ogj-YTfILHVOpSOQj^Y2hq3uS+8YicESV}Jr;%bc><{x#C5%b1%X{Et`>M4fQ40< zgwxuJw0EC}H9#ZA2~3wIX_w+r45z00!nj_NjI{ct%n)gcv^nm)d`f=-N#^0);hWw9Mg@G7M$N{%;0ed^7Q=G@D} z)@G%!?YkEnkstal+L69bjOz#t+rLX8r?_rlrRO0_EpiMOK~%-@|uD z=&P*>mWKX^j^!c0Am69l9AM(g7aVAM5pz2J+TdCoYS%n0u8h_9Pf^&4p<`(*J=MId z_?#0MP1Zwz-hf$#W)UP%ZrMYi~C2AW&8i8iR=xY^n4 ziyrPBp1&1OYdr!FxApe}a`3`kQUC#Aob#Vz+b0kTlGAk|%$}Qc_?j-)hy_QO= zeirCO@8m&Jh728_S-1dog#E}(PV+cRW5*cv^suuRE{`;jYu5DZO=wpo`hHR*?w%zf zvQc%eZ+12Ii8aWO^x}->>2k(`2)pCp*7};f^J^w`zRmt}B#FMcTkFx9|HdCG|&sFI_>bVv}dCq5j%eJ4Iz6# zFB7wpM}8yH0b{do_9M54i+&8mrgd(tK0wtFk2tV<`*~f4CXd&f&#}lEj1#brmcwf) zqQ|7a9u$b}v0D?o?vk+s&Jn;>y^%=*V5TDh*z?C8%Z6Qo)gR!mUpPQj1H(+3F z4@u3L!hPTCRxfyr~Ib$^~A&7~gi&rw zx=v??2U>hFB8&comE1Ly!D7G=~P`@Kr}wxYzG*BENx_P==36Llp2;0N`*u6knN+ zKf+7?3ZMOV_`&b+AX15rGGCr6`|r>fUe?bu(zEIH)=jR`*($8C?aJNQhlTu7=qY9R z*9pgQw#9*7o*mKOOYqkh!<4J7{jfUHi2~ZQbZJ~MulFj_?Cz&6XFou);+zG0S)on$ z6&^}=mrXrT z!8weSMdPx~u#P0=SY4U5Iz^N4x|hfb^HAeBG~b<*Ic`BMvWg{dJwv0O+2SF}i+(c% zDodGlg2Jmsy`v<>Hq=beYWA_ZZ!bK^Z6_s%{I;$)Rg8t34)YD?!X>)v?1u6?YH}8M zI`kf(yMRm(u~z!TkZj@UiBa!0IHh4G6Hy1blN1v+J44wkkEpO6sp^lCDaY*g_=TfZrPVWCnzhI%$Febgga7 z1;Z($EWHCxjowX?qQ-TWS+&Oc* zPa#DiF+d^3GQKICWyy{prFqBOj8O8yqg+Gy@RyXLw3vW*Kre-$=z*?OJ|#J_*@yY#@P9Akd=+01c450>C5+@ z;_6py{B5n$Vg|i>m4_<(JxuB_>P%3F1n4+u>M*lsFOTeRtnhr6@gPUs5}Fd}hg&*N zqpPSa(PQL|<{A)WJEs}uW)}Ak8KDxUthSw9aUeZIv5Ua2`VdPIv}^cD6yN@b?PJ7$ zvGKe9f3ndHdj#;F(=No^D|7{M5q)|b-I|g5PJlftKQ#s{Kv)l_IgccWah5rA{CfzVh)~QF( z(eTf}sPxwVrFd)+{-RacJOEa*tQ4g!61-SAkuIN<_9_RKGxJmKq*r_D4e_h=X1AM9 zXU<4p;WwAt8c>u=4RnzTE?Aghnt;lxC>l>c7>KPp6X~8!a>!ps%3mB?A1>}|{E$D+ z`gR~w(~%NIzcX~CYDF8=3c8~Wt)9H4MlMLBf8cIFh+Wk)y49@eph)h?k<`!-4~F(& z4+Ew`W^~S@Py^_!xX;IXzto^9eNId;^OWG`Z)H*?PYxVb9lTsJ?h&rQvf1{R4Ui|n z;P)SariAO)`~iz;^b^S_ci5Je<0ufK)ij_UUgkEnH7=iM^Pu0DQ1sD&7cGA&{8qQ_ z>vqqP5FWHBFjHHef`}#X+-KaX!6sLM0)sv$aT3Cb{9QI=e|L;S3Z4{G5hK%Q%KFUV zit4yj{slJgZS!m$6#h2I7)2(T4d_Io_r_@?OXbv&^jXAXrtD{zrr`rPbz7^3Of(sa z0X)k%Q1MWy668)0Y6wy&VFSa+lz20^c#`o;ie~e$P)_ii=CQvHIU_0F@pey#4;*-J zo2oI%RCB^Nnz0Y$pL#IC0U=0hze@0Az$GqasLeQjE5ZoF`4*4}!5@cB2WcY4Bx8tC z`?acuAY$B&vYrJaPEd!^dr$Un8mY?DbXAHLa^-&eUK0N8yC+mz-qH8ijQxz*jfeP8 z-_j#sNbrTd#+UtjVAz05$bhn06LxCjapXwT;3SX2>EBfD$^2HSM%DmU*$4kyB@ATk zSCgUEpFV7RW|H`JNCC2tu8+{e0S&LvVF4tj<#`(iVd8I`{~~*Ei#CzQ_MT zT;Xajg(=cnv98pX->m}PSpbW>3PQYfr+04xLP-jvt-XvnBipiOMp|%V zBA?}gYC^x6o$=VG?F?|xn`xVlSzx&;Y%rN$6m2O8f>M!UZK0MPwY-jw@&P**QKM&VrN;?^D?z5dSn2I87 z816iur~A7fgvt@-d|2#lKB?pB5L5_sfOb^;qdhsnjE6mSK`5J#Hu*f_o{A>_q=jm`k!p;wqMbJ@KbPxBsc|BI7c2B7UQS$4ezw z{J7+e(}+`vKKw<0?sw+lnW};}oV%Xt1Cl*xJ!SLi@H)08Pm(nonKAJjB)?bagZquO zE~ZzIXnS^u3W1z{D2A2WD$@+>!${-7_5MNhxKdS2@$ByXo>hL7g-snRTXFG{A-5MX z+@#B|+LOLsxsx{OXny#*YeVqFKEVt(4M6*xb;{;j*;K!`+@eChS7QCeZ;^)f=H ztsB+JUMvqP^FZpBnzsv4?AVcbLj8=P)Y>L|Oqg{J%^&5`YiBIAO>)+!jlo;-dSP!h zs~hXb8klR%Ib+1;H4D7tZf`p*rk)V$R-i$ucEc8hAwN?OR^P|)-_#%epvD4I!+-d_ z`yOvypGQqL{)5`hYz#~-$nz)lcWUfNwEu(pyt5y%Jv`fJ-KX_khcV(|WmylF{Y(}U zQ-J#~3hlu5rnjIYQS3-6k1#E?4>kP`+LUHn_I(LFro~e={bC(EJy^eY*@bVKy=PJW zBENAR29vA7|3Ti&&V?Px@_&#|8_R9p$E0kmI{ii7YbVHXc0f70kvNSeHU}Y8J77q zXY&0NIx;H{&)u8$;+QPU)@LAeRgN3wl}KFO`&P6XJJ5~l(!OzD7qkhNI#AgbizKgU zhK%%kFvkTTUQ5)>dQ)IfA3;!KFOD;b9yK;f62iDWtTFbIThrJ8cRs3R{*dQ53D2^U znu4*lEZZZZ{q$W;!?K6Pt2V z7=)`Ukb8_cm%{whpk%RtRhroFR>ldJN&bFgiu zVfkMsKjS3A7NU^<-U-!meBHvS6-Wi#zT#pA~3Rb*z#n- zXSJj>hT|y%G*DR`K(Q9*Q0uAlKny&m<^*?cbQNZ~dBY zNd1W3gN#9s(GC$0-HnXFPTmfI|27=|2kbR0D;@XFPc}n;Pn0d#n`VQo{RzBY!+9D* zu?`LH_U_}MF9XPDK>1+&2!*@A5!=aJL^RG{;*~EDs$zE5kWSc8E)YUSxUJbofgO%f`23{}C50{#zVD@R`K9&G3lHCjYM*GWI^w1|TFk z?C%SF9ryy*1cYRgb$bqM$m!gKEj%6}8AN7_rD*Rq#9_OT5qZ>OO-^ZS143SE&YeNI zhkD_$cDt8g8`7P)r%%G0DlUS+$vZ9sC+`>memKCk1?Hd0v&+{1D|s~?ww+%m78BY2 zQi#-tyn95vHAX}`(G6{FtVWwt>OqI#RZ5HnrNICXyO}V`E>14xpf1<1a_r;lj~@*H zslSJ;dDG{fZ`5N+tXNpwgoF}&+aDM<(mO0KY+o}IfjZ}XO#pzwW9zhjdNGM!#jX25 zQ8*-;N57WLqh`rtW;v@DArJm?7|}t!#&ovw^oHmJ;%CM;H}?;|Ai;AG+L<8jSCsu# z-zKrov}|-G!b;aQaX_KD{9eMduo%V_$71W%EQb!frpe}>oAz#`MdXXHQ_Kyj&f;jy zu+!Ydf%HeJ$q33d0;5Me?pgk9hWC)M$Zl~DjrIbU<#!TF9gc|XU1)4w1IAnqe3;ha zsoC8*IWi1$eG(5v>aj>RiIf6Wwpw4x9KCy=bUy`thq^?j>D>43RgxQ@f^hgSUL7ez zz87kWKbG$8eBQ85d1=!no*;0kCQZNTxK$Xi{F{dnAZ}jToI|;{0J+DTIkitUY3N2Y z`UC?9+t^YnmWzp$<`&K3(TI=%PQ~@-y5f*V3=hd(-IU!cD zE|2ms!|u1(y5jNgY>lVnkC-{SZqk#>I7KzSK#}7ABESBV3U6K&fDBFo^!QZj6drO4 zNiG%LB{l(0!&J4G_OM9Tp~}a{C#j*NwS6sad!w&Lm&_I`OZ)q9YFou`_bee=sP`76 zsW2`jYa@9tpS$stj_gh@Z91O0dPPK~e-m|1Rl8NDPd<$j`RE;@c7k)@e-FD;dgMSk z8^R$PATEwNR2~{~g8X3`OSjH{muf28>z67% zXJzy7)3T_n*kAc`fG;&TD&pw6c=kQB^PRB>%Tj5ew^{A)aGr-%p{)%Nzml{4gb;#7 z^d>pSY%p0tmD2P!Sh3N8ua^e?Gtcgs?5u7COn-k|GcovNStucDv8nBoOB2(?? z=R=vj)C@^0(3Lq)W21UP`oohfcLkxz`tZGy5gGU`^ro)T5G8V6X?Yp_8mvK)l2Dmq z!CXAg51mR*k1w^2fzn~5XcY&Dne(RQ+4GXrBJVNOw~su+tCKh#UBn;u;DvGTF^aBM zN3fR&ayYU(*8!tn7KrwXC9+FHM6QTSs_~Ue(dQP`e{s4#sJK#1C~{J5SZ7YSSFeU1 z?pVWiT}Uq5UP~^QY`&upL;{kq-ZeVmq_KExJmnMzlJyp32|CabL93t5EIcZtUU=<1 zsh@E+ZiZ$-UtdEp+~pFcBLRyPMMp`#UJ3Lk_>{ZyY;**YmBp6hJ~7;!lx0uI!HT}e zR6jfN>Zy*#W^?U%{4MwigXVgb-x(}8@IQhBvrAz`{}kNwTkzR$!Bs>@u5Rr2nn$*s z-ms$TWLk`ONn|6o9|@R}I9m#pxXVp-P_=-^IlvD zRy2yoVo9yAo?Q%9)VE{f3w<^3B)C-#8F;|2Y{Z%ac3oS#X?b{+zuE`*5$)r)_H}@y zWOG4$M(p1S_9V>=m1dxx%>HW zdRjpPszkX<15tc+Q{p-A2yNxtgztJ|EFgPdR;4yAcb zh0PprNlCsg;m>6p`yzH;^koT|Ev8%^md{YAt_@uwMN4yME~yM+&}m-2Vn}RQe5Y82$%xPZ4$Ke; zVd%JqLya+vxJIB*xeCuC0ydj4ilS(0mA}bS+ z9f((HQvami=lYAj*wj*J6BcZKZ>t3Wii8C14RHN;I6d^x&fW7B9y&3NKNMkCJJ8(| z8Yj{yP7YaH2wpbfOOni6=3Ixulhf9Ygb}quo)5`|?&~?YWeo2sH^n~`d7XVNoKRLF z^m9(jWr%)OK8sXz;@*e`rs7ce9il zcn;1ID0plFyzX8Y8EVoZPV`GCM&nZeHI0mXMZWyFE?*=&NDbbRU4tcA&EEcfi+)u~ zG`F$wwyA&)baea#ZDa_mQ}wZP-I52XN9S237Gt8N`M_Y2kS5$I;C;n7j3y0uy-XU( zQ*KZRPqG>x4GcfMZ)a&47+0)_($<03Uh=SIX1XCHuy~a+F~|DJUA(GqY{0TGHcH6G zR?CrD5imIVH0{G-3E(nQ2(zo>VEr0x`Ad4SLXTRLW@+3@HJvqG|<5DmE|`LDX+5w#WgK&DtqmQ?N~rubymVUbZH~Z5j`Ta#=~Zf|8fo zZ`#GVYB|g_laC&fQ~mYn7{^@QCQ$@T3Jn`RQh3*ty`$DFVrRVU=tf;kRBpnx+}BPO z`-R1LM8{Y^cw#$VHOxWu4O|}CYX055qTsRJv|HmjfU$`=xR3z!#_LF7h7IOOUhmtc50F3Lj;r&$^zd*Xf9)lkCTbkB z$B95JBO)lCatd~5rHT879{0`Xoo*l^3^oD{hJ0L8iKRDWF_pi)SWo(6zA+uJ+*KkZ zp(@R)1OiYhr<{wgoEyRu4ugxpfT2!aLhjdXgAoXOqlHzWKS!gEzyvs%7yvXXmMDKe zWJbl^^j$|_xPoTj+5nXUlqsSJ{3vTr>)lG?K)ERDbhZjKC1T3r_$8YUoxE6+8g>$} zet0OtJkX}=)|tw=1;wg_4BbQwnCb`c>YqC06gP5u7qeN2!)e?bB|}zG&2uDj(W%5? z1Ci3iU|G*-GBTaOA{f*OJRvPbVJ|h0f|01BMZPOTuI~orNU-KeAZHRiz~MsK*rG2M ze__)aUO>Zj;#Kbq56XcOhc(Cv#Eo~|(w{rj4M{zPZ@R0TN5p;amR+0+<#WU@9%3jK zg4cw7i^{M#*`Ho}R5Xr9`)?J<=zppR>AoaUELYL2vUaTu+*jg9)lY4XK*N1;T@*T} zka%Lid9xUdGMe^%c0qWTg0(C?PRjfg10n8N3J z*hD3E_}1toMIYtfyheV! z1T=c2yR8cw(bOVxg$@`<^)DdY-#~i*2D1ANH0w9s0hG;sv7ASsk6J4=j})@SkNX2b zs2n`EII`Me(}UmpQL54{A*RY8on^)a;~>z_M&Nw8L23-eITTgY6)pI~2aZetCrQ0~ zKAX2bK{O7bhju#^w2dfD)D^`9C@9-jJsR+Y)e-oiM-y~_N+JTeBGPcJxPDPKYe|8IdTU*XHSi- z8C*PGpMa{X(N9maZ@@?U*E?2(g_w=-KwTXbq)q8-dowQp^z;<>bfs)f^f7lM-jyNu zNn<{~r>=$Ly^pOc)PsAG*Qb$d&!w#?s75xdk)fBbu5dwe7q`~FRy#K_Jk?{aP8Ty4 zk9CW*e)giYU5h|Z?`IyXOV?T>Uwz@~8^0pE`xFbHpWkbffuFne&dQi?LDxM?YrrYc z&r`&xy|nGdBft2S|J7v7IdLdEI6bsEW!KBErNez?*V(Br{rbe}+UuBiX+9xQX$S5>xIVW^wVBv>f73#(6%g*^b)~O-EYI{e%O@jD_@G({odkVm%53SCbZ_-hk z?LJWRXr&9l3#eY0*R-yDZh3LCV$^|?S{8^_xtVse=DpmqI!}|&NeMj#KDDpg;*(`3 z3cmMxVv+vw?Dx8`W>6<2Y){&|TRgCG2}~j7Cti7}6DAQP6(AFOb$t?Cueb$)syCS3 z(97qlN1mxGyDG3GMaSnsbG}X%t&7K&pgBr!4gr!6Q=*0V9DesTE0$>RLxSmnP5mK2EJKHydPix2gPB?Cke1z}n}VzF*6|x2GIy4i8id zD&YZInj0N>5B9fh9@-@KX6II2^7Bn*cWUKRnz8YRW{E>UeIw3o*rqo(o+9-Y;V4W;7ZAhKlE zax%@>*s<%!$F2L`>zPBx``4`GBfrz+*oB=}BC@^L(t*&46)!)ZoDcBAr=pAC9L$vl}JsG)nz ze-zKz8v$~EYKv5@8%_!j^u+t5^v0+GhSX{k(U7M4qP|2s2!&Uh zye09;qJ6_iwB?ZyUWeJd9=6JW%hF_Yx3{fr-!#QLm3~~@YUKveW4~+^ ztoZ>LZVryMBANXhf$ULn4m}^3#|9VaRF42QcWR}Hr1jY zYz3xm9n?IIyB_d^)Jm1Vc;K^EH(`$qlX0}eyS+_cbwQ3$`ZAK#KAhv2@sDwC@9YOd zv1(*C1gexo$}hW`WQ z?*smh^1rJf;BJO>_?ov2#V0>)4@nGX)eM0a6buIA{)g7TBrQW7GGhY3!w|v4Z2lV7 z4X{VvWRq_Ejk5;Dhw}Y5&ff?8&2x=R1MI9GbH6#IQ~7gjq*=vFD@(`L^+l}j&yoGPhq3z~OIJ@;wG;YIBw?2!YON=H8IwMksZZDD ztv=8EtzGURrlOVeV+J>y*L@?gV@m0E-+kAA_)pHbe@Wp!ak$>I%LYo_&zw%B2)3?D zoKTIfE>v!$_^!0wDGfAN{v7!Z&~pYqzpkW_PWr8+#h9MNdY+t>TanFozf%PZuq_Od>es{^s^*X)qo@i8g4+UT1@F!@l7a- z+W5V4LUb8YyQJfprs%YYLXY}6S169cb!`!-&voun(QW%!RAfIV{poo}Ak))Gsi$)% zQRt<17}eEj$>;v*DOOq}eHVDC`#iHVTKCi-YRE$@U&iv(vUJMJO3ZAJ4!D`+N{!Jt z?^GJ{*lY!Q-?yx0nZy@5_DR|&C)5hj*yobUq*ngepWxruT&m2Px}3ysgngnxKK$6A z#IM{jM%K))%z0GPy?t@k^ufV33={ty8~%lv+a&sa*pb0UUZ!77?2ns!}IF1UMoGXXczJl^yo z;vCJ^dg=*fdqkhx>!S_!Io1iUyXZeiDXz_X{A_8b1Ukhx<1?-Q%1FuPD@5KKo^CQW zgftYXJyWhXNe@v(qiWp^O=IK6Dr+Q8ooqy?m^1#APQ?(QCs#-vbeX)srAaEa8^2dnfHD zuPM!$ZLu|8SNm>3oPoO^WCZ5uy1F^+C>?%w z(HVQV{t7Nnd6}G0eWWH{w9Di|D3pWL)?s_mv}{IcbDTdZo-$q1Y0Hz=v~1D8es|Yk z?7WrD#8Uao-Yw=}EH-sJ6`pX~)naMmlfKagM$M^m=^;^d#*b1WPP>qm`?7VN*mrMt zv*H3VMQp95?821JM(YXUT1%e^e%0;l6!h#2q6gipxe8j}v$>JdE}hsI-Sat*`Fra( z4Kzqz*V99^#*U^5H`Dot5ch@l&WfYAC%k?09;H&QqVMMX&DLiId`nH^%!}pF6WhYI z?v6x3(Z25T|UZ1kVk`9R(tUM;+&?yU~l=ecJbjv=_<AiK3wId&)P*$(i*t3?Z&&jVPfTmJx#(vG zTlshWmOII=mhXvYtph&NaMu}IJ&fk!tD8UC>7JC-e3)u2vgSJgm>$w>X1Op@BX$m^ z6CGNd$&*6I$DXQFK2umlbeGbSY|P5OUD*s7t*1<-Yd(jb+@}dQ*FQ>6FOcyVM>)mLmwf{9o^zq*8m94yd6WnS((>$+o~#R2L^rg2R-vb^^)$wdUIbk%Hv zRt_tyjcN^V7^{YQ5aItksKdRQoZ^%&t7vUB*b1@=4x*pyRR=0z%LUbjmakraPUSNJzcDMyOgllMBJ4K!#c?9 zcJ6WT3+N(cAqO8lB6Axq!L4Lgf9>|{;jKlSh3rb&5;me{>^*2rkVERD`*L}+!|ZX9 zJ*xrPcMN$A{n{MbI|!C0F#8FVVMuAaZ7voT9Ou1d@=Sz@z$*OvGSaRc9Z%(^he_^TmqbC4G}LQAwr8~5AM zk`G2OIaTc!7pdJXEj}Q(XzHCUQ});|^WC_^Tdo2oKcQCg03REf<9)x(0ouJ~o!nWM zgWdjKVo2I{i+@Q?adh}g>aUWOF21Ni84jacYv!*QSJB0T!aG}05F44cTnm5>?kmSV z1@K3EM>nOH<1P1oTftxd|Lg!9k$1UYH=H@!xUrDI{k`_#+ql=@l(StO$X0TZWed1h z6bgK=6a;df^~agC8OZ1x;aysge?eU#@|rd)%hmJOMd=K5gF>y3kZfe?-<|P9b=9TS zRRTw13pf%gSJR4>n>`byyjhyROd70~qhx;Dx2E>z#_{fs z8}uDkes6RCee2QbA=i@a#TB}<5zv-;2lk`EiY2*qCWjv}HnTN$<@Bnun$mMcWRpIB zxf#Vigw$Trgm%RLo5Cvf7k3aCT@cbs&l}S!Ky9JCCZYj@m-ha6(J*xmX?cYiH4&T9 zAhpdrHT@1_Za2EVHoAVgcZww;Zyx@4Hihn!0sh8${y_p3SEQ!PVo)4LaIq!bO8LI* zhh>@uhg2_{J44`l7X$Tr`NYK}Qc*~Z&0!MoiQ+M&b-Acjqfb{5m$s{!s*CffXoXKj zhdYZS({nDk)x5YhgxBzdz;ay|oJ9vJq@q>PBsQZ($}*e6K+j z*<)h2n)9?8^Ezdw8qT2_)kHVU3Lz`awd!vnfD1G(!fK$`?qv+f)tt=mU-GFuWdDM;Yn0{b+=iY#8Vt%x*==8wc0W(C2ANO z)U~fS}TT#RJu;-v59oB|a)7GB@N^P6L1QR{A=IC#)@ zh$eIS)YW`p7JZzIo$C`~TAiBhDIJ0AP%Yz7?bqr}W&otu~vVeaR#_^$Sn!RhAigVjr&<-+Ri!4KW_G+VSkds{>v} zsGL=fTzfS4`5Tj+*RMLAw+y7MmzUIGU#@jxb6Ax5kyO~vS(h4-7vm?c44*!d^v7Ng z2kmot395)Rhe@qAjLuYiPV(1a3$!CKrD*dX6V-I{Iq&WE3ML?rswI<$V@|~@ZdPx` zR-Z3*MNS?_F=9`NNUnkgr0+zYe;U*33Nv_3trleUeeP5%5y>$Its?}%@1xotC{Fgy zIRl)!B`sx>Tv{-TxlxN%@Yi=ae1?KZMOrMKVDyfAvitRLNz0-__mHV-BwlH|3IHX5 zd1nL|VJHnEgxn*a61(<|G#9Cof`EvzvkYM@%p&g7bgWLSR8JFK0$4y`7DZj~4p}t( zx~BU;gzbgK+(KdKsahCF-z)+G>jOuG7`G|5>p1Zx zAndKMGsTro9K_HPDkRVIOiGytsJ5ci{>t*JD1>kx zR>lHNXg%10T?h<_^NUCgzxd8g2u#ECCsBxzAei5g-IG&}@yljMtuu~jDI{} z@G+eQ^;$^)1jB$JO!uLvDh~2wi6=%@S9zWt#(bd`2Z6B8=Z$v8p%>mV4+9}-B|hj7 zgCO5R>4zZ&Ll=Y4XUUwAv(|`(^9c~AWA$GyMhk~+VosEl&+};4ff#@iZ%n$u6%GR- z1>@%cy}~W@8m{=D{*s+N z#D0ai!DX87n0m#sGBExU$-#_ChQdwK=I)61Kl#XtK^RlHGU@6-O1?KEk_N=c8}*?0 ze^SL^ZwtnaLh&DtMc_01sWV@W0_vBKi(`CdMIfoq)Anb;eE!b^1|TH+J$mc(@OTTX z`=)KY0K!$VMq&2LuhQw9iit)SXOCAO4dv=T?zW!3)>AcEdcFjfN`LQyuK z(x)e`-6kW*+WwY(Eb8*nj=X-}ec;}Em{bfO!A{3YNk78IGdWrJX2El}t=(3(u)cog z?edwL-kMTyf2;O-Q_ga)0*nWweuAsr?$Qrh$$hM&KYFnE^u_&c#Qn{mKUY!qOs*{% zKWVX~))ZhqsmVrDze~TCc>8R|IB*`ivK_X%>^x3HD%o|T`#E0|9Ex5{;tbgGml2HeABla5Dc0;VFg0;3dd6=jkX}Ylx_rP+yk~Tvp2onVI0F) zSy)k)M(h%lDU!6c_E$F$mFzgj`xp*!c9$W_F!Kix@bnN%C=49R45uC)No^9W0_{h( zFmse?l8gtJU~Ch=PZdM3b5r_hq8x#i=Et`ypwe!l19SZIDAQA@sU#Uo;0UI81-MFv zNtPp;25b3MwFq+zUby1ye=wfg2O?Sfh%g(1EzOzbNi#$^8eN{wL5lcDcTWhd!px7t z6M0~As++`K2v z@(b-(AfG?+p*To0jDlB+B%?}uMjt6(!KO$v!uK!=aB=?@J4d@4QD=DK_1*3Ws~ zdM~YNABE2Qx3|eXq0CFuZQbcYU zqWKU$qnMG3bA3oXH(_X%g(KcpAg0$^g|Zrk!R@-3*cGp^Fanqiu?|V4$8+sYDKp=1*~8xrcO+z6Z@oZaX55@YorWj___gir*Yn!&E){_iTwNuqj$m z^ZbwK*a)tCT5Ksq+(3gQPwY=ZoG@6y^;^*NqhpHz9+mLzN3_fmn3_sk1HmQATcViN z8x4CXO8Va)MLa}2@ImotYRMLMuPi1d(UP!*ErV_)od!_W)`o7SF7vzah-I>GHByZx zRrMqAZ1cK;;S~zIg7I+L&4wxSy0R_;X$V-K z@@?o3mwri~CAD^h$>!Xus40OSGU{349Wt8MeP^U60zEvmB~HRl`lI5Oj*akd6&|2L z=K8i_gEDHb@3*f?UsV33LpARhsN>z`-#XsMHyYT;{vRaV3beC)haaAmQdIQ6{bdDu z+8-+(RsId}SO&BL{r_Rbh|xjt@B!3uXhY(ywKs*w#N^Ey-tdZbj}b!aCm)b6)p2hO znbxxzQ`Wq)QB8Js?GT;4-#33^7)-6bac{v2O{N%+;miNu6gq_E;X?rpxE$`EGB3T z-rXXYeYXhXM6r>+Rfu#U6l>6)Ot7Jt4AJ_7S})1KSc}=zaBlnuwaQ=XU#P=)$wg;> zq1K1Q_s?et+-GCi=-@zwaT1_d%T(=_Y3wLz(EDkD*M}6T1n{h|79j;Pv`eN#hjC`X zFk;#ap-t$D(04K|haut);e~PP_$|dMbL&+_wU*x=Clb7HD>FfMZl{fDcv z#b|z2BX~WOF``T~u~UtSG$g6Eb2OL)PztV2n6~$Jlo^T9(PUT!w)>qQ*?<8pau=-&(Te{J+WKVc5L)eEy`N=`UMLLi^5P z|2gwCt6&##-q%+B*!!C2YakCaOSxf87i)Q{>cRB*5Y}Nerp9f^#oKaFw_wF5Q4NuMqf*4!n$U(G|RoeC2Kk$xRyAk6z_CE9G{ zw9dYR)7A;sWaLS4No%8HG_iQ$!ZH&4N%or5FnC$j*r>%2ff-nw7^RoWeOzAwiAYj2 zOhj344!X24l#nTfvQdmb6`l;b#Xbqr6LlJ*xbi-Ex$5v)gsDe`v~oOx8mkws0%5H? zL6n>`G2c>Tp4w*wOc#~p9yNrCBx~h*Y6(nO1~?T7?Z~`{=SmqrI`eBWNleTmoU(#= zHP$GL{q&hn{kC}#f95YbjTNzRRfz~sn!Jd$N$E10s*xaw+YCV3H(D#IQ)A&tDhAR7JYfHQ$xg;sX- zCq+!!hWbD{bLK)?9_&AvTJMEAbASq@p4ya5a*--4jjF2j@IO(DVE>6qf)qkYyjVw- zhN$*03-s!M7R1A2{jp%WGa~VcYS{i|oej<$7m^ydh zkO>v&G){J+38W0H1y9MCxdSOD7D)XM%4A^wq|B2xV{WTIoMFhNBoQ4;p@_*VXp#Rr z!fc+8T|CCvgqKN*I4c8-y6M$!vQG1TnX-(|cVDGTt;s_KZDL6P#{$~_8;?6ZdNHUeUU;uCP6pJ%zGHUwT2L5!Ni8^u~rk(REueHVOv!h)vD= z9<5*Lx9ch7j~i!DO+vXbHx0x|S+Fbgi`--ky*Ut25`1DIITbqk6Smj%Q-X;pR}^cK z#U$#*XzIZ{4zHvNHS+lmHD@#bN3#Z6cn;=NLG4vP%N|ofa1=Yf__y!UYgAF$X>avV zLHID-&jNHX+@iwg^*<4Jp?2bHF$l#A6S$}BlI<_Xg=Fcr921>9oL8r`eM+;US+cb!CB-zyq*>W5uKtqZHgDw5J<1|2m@cYRR5-sMFN52dufjt`& z^X~QCH!!>Ur@vyxk8kEr9U#F%qX9hT$AAkBO4|DkFq613db-&TH9X}%N<-j)N-5NU zN&!lO;Bk(8@r+y2uof7KvRgXF57-n0(mbj8+#9T+LEuF|O1$p#46&sA;{6BUSkgR? zi{~WCj&0*@T|t90zhHaLZG14i$afvpw47+@tAq#qgH+G<6`^`kWgwGv)w;k;P*NSm zbyDLU#eby6If`ebCO8fu!pQPuL6Pjb7DPnGqs5>Pv-0B%oiYD$ib>3&%>+na+CON) z7 zA$KiuqO1>x!g&{_i76RgD(_pm9uL^`NU}dP5-|>^ScjN;x&k2$O{_!2bm~tTB*Q>X8tQKNZNF)@i8Sq3;_>DxkE|%!X*vY z<^u2S3GcK3mA7d#k_fztXJ{TG?zGr!(1r@VnYe5HAvf4tAw6fCrkS3{uuLJOa^dD7 zb$Y1+gH>~6#(sSITz8F(CpMpkmK&LtBSItlGDLZ`3wsL6v7MqeAAMSV$dne`-25`_ z`jBe{2;c62VZd#%m%%BmG^DAz-St@*S0#FW0-0^>lkf33#3w)Mzuz&|(zPGvsiJSgQMxs73bBxkdqQ{h~&oIf4vqZ1J7!-S2lGB9Fu?=neD&Ys7D0l=qF*8(RUB)Sss9n_)u0 zKtg{95(rQEegkc)CklLTDE|;~2cGYBAdRu{Q$9*8 z;Qw2Ui^uQJfBt#*Z1Ha~oX|we0ll(MBcjp2!GGiKAu}dc0&j!JM)-QX3RK9F4`c!9 zyDaDM{uPgF2jhEH{F+~R15KSV{FLN= z9L)Ej4)M2RI3hJ&hFrOgLQI4=cV%?ZFfLd(&{Nu8M+|?6t@^3{k;Fn+2$ZdIQv1OI zCxyx%H1ba^-u}M>WB;RM?zb4Q=p~cKGjk0TEF|{Y595p(`)3K)`^|?)y%^Q#&uH-4 z%>0pa1C8$p9F0BX5)+^tCAc>fq@%_JMRzTG?mgr_&OK!FDP|yG+p5o#Rr7jdAkyht z=b+Ug&!Br8?kQG$b(6c^e4I|owb|HxEun;+Wg{{iC@2Qb z4;6T8#9fw0XXQNM071x7e|6BoGK0E47Hb?y?cU$_DqD3ULV~?mYXa<#AhLj)o z##szCt3oOfG;wPh7#yoMLkVZ1zdd@TI;P<6uUc8GJxJXoWkWz*InQhya@B!^w#$LT zrmp4qtGQ+n0!r8X7l4-(SE+{}4x&KI!i8xlI)FXPoM-ymYWTO&8-i9-3BQF6=2DNd z_MY>bKv00o*X$!8Oz9t((!XIo14^G%CJF!ipKjKX6$(Tlt;<&X+HMdK8W-R~{Kc60 zHWaCIpnmd4_%6rSRV$(w)zR#`|1;PpKq>F}+<;Zcf^G1^l&TW;zv!%mZ>|!?tp4=& zsLI9xxP)dODPJgzviq>~SzXmEY(Qb{aD25Q+2vSgkBb1f$mHMQm!{{9@&1v5=({kb z42kp~pzMCjy;wO72%hOT=ZwwWp-iY(L!ijdrR|6eK(u+`0jm}Z63pzQgtIJe0K148 zfM?nL!RD0XKYG6pjpG_D`I0ZHI;ix4H1bKp(L9Yqd!g8KpO!}0jQyxgB&!(82xpOb9MHnx}Var=deA)t&kYDk+gB<2Lycu zHwujBp^oy>$3$wf6~F6%gxN1qq)i>8&akf)W=;VoX~~UPh{GX-!=j=ty>w?$WizA+ zncaaLT57WDNgC=uA*q2Oc~4WF(G&|<=qfGTJ7Gn6{hh%M#St9L>8SVX*}ty-L}a%i z72$2q;!@|OMX)mJ<|VdQ=CuNMQ34#0tV}%4LkYXmQ_s<)L0mwHGlZB0I-`v=-bB55 z(45ETWu@h3B`xAGr~+tY5k+}v^(?cTRcP4b$PxAJJyMkcaLFIe)t$l1W=ZJrkCec} zQGV9FJTLBWVi=*|*vhcKGg(!ZBeU$Ik}eJPXJvroocjURc54ky806uB^AEMdB9@}y zZ|~l15{E^IQzE?afqMLq(0{Brq_`*N-YFNbjCE#12F~#x(qt2`(UM9kD)sW@d1X~F z(Rq&fPI&%d_zX3uVKgXgc>chfFu=pzER1IfDvvTjWAN>3XVNT85GUA`#5fTebaWm) zoTc+eWa)V2@ zmFF^Gx+sYZOc&WaVK|Tviwq`YFh+c)wpQ+%^YXG_=&3g%6Fx0sO~_~_p<7(cj9kFr zHo_1jB~DtYCMW)j6BoN@lOHb)wR4;eb)ghI$Xw3cAo5^XHhc7NovjkUywDM&9+GL9 zT!fcZjF*tH`MqLKWQ1y*t*(3wN=|2X4}2Az*x=aS!mlY%%QLoj8* z-r_vqNkKzxM@ubK{pAI({lGE2Lp(tt3oblJgUo-@TBcmpWK}%5lg}05Mz|!N-(@ZH z6Z^LnZ~L6D+U_9)hdnX{n%*FnJ?5uMcgyiDA}l*jbRH5^Dy;!qWfbbcGs;hZ-@scW z?b&T=l=N;soIbx}fBEaZL#r6&X9XiH$kA5f1f*awK`>sLsPm$z{{8waDI(8_^5+(2 zLQ;H-$^uK6pqvH+ zP(wQ!uDFF&*g%#Y-y-vItIxbK47|l|X?;(`Q%3oppfY#M>=HkK_#J zTww}yN$Pf-RtXIZ31kXrTBf_Abz?ns(x*unEsbNdu^WDG#`Nd?{bY!z;x^g` ztGRqkiU$4?E%TZk+6Mv%gSa1h_5KpTG6)!!cIphxBpK~3uD=BEY>vD@j7*v)G~$oU znmGA3FZR!VJOjW}3R!Xj8`4F&o9aKClDU+xQX8Zug^gLP7J~ zHgh=JWy{d5*yxD<+Go7yb<#~NX0SmT;6kOw!#N@eUQ;pa;(j;iCT)8FeEEr4zdv<; zIk*$${7Xf%7VEg^7$GTz5+@LQC|xlwLeTLwuyAD+8>f@L-YNLVXg2G43Xz{W9?LT? znCjUv3zB)EGdeB<1K~()%G^CV>Y0j?_+o)jhy@MI)$kM<7gs}7U zr`!Ne>=f1t4Ktqbrg04Q%h%60+y&fje9|($^2Z0@@sd{Hs&3i@$-SeeJ6Mv0M4YN-Y1l%+X%eo zAU79t`U39mZGc#A(w=pj?}Iv-qVPw#S+$O9ZMgO6zWM;q6+?L)a*|hjdE|yJ?1rP1 z5@W>-|K>e#*RNo+bgwxAvGm}kB=*p6o2xMBp;dgbaqr*AxZ6TsTrK#%Rs~}!SD1O% z!yb!Ca_i#ru}2zU_Eb(w)ra#jSl5*eXCSL|7%O-3-#3g+#@v_ab6uL%rw(^t%uh0T zY44eZC)zo^a@Jf}WQqB@-Zq=cU*$hnj{2gwO>QXsQm`vF7~h2Ax-{QHgPi=bO-^h^ ze?kPpzFK^3TtAH|NDW?SIXn)pZ;djYbqC1g^m>V|8O&<%JkKXf`Tcf1(v}|Xd$_j+ ztW)^jfipiJ9~Ll1DhEc&@5-4LKLS%rtPw3&kI=%w=G-?YACeK>(Tc>KQml zP~A6;Viiqb!y)WU5@|tpB%ow%25yF$e*VR-&4tr>Pepo4TE69rH_fyolmBPGJsXt9 zUf#u`De=$HO_LEC7=D;&tc(k|q|5ap{R+ruB+;KEW%^c_HLo=^MDx)%tu#C_vIFcBjiC6;9#9_C1rb+kGJRt%^jdo2cPF)PkV<$CqzW(Vp1%d_v3ZDTgZPp_QIRzVgl?)`2uWmhxTvB z%z+J9)r^d7|7uIQnbL3ngN0z^=eG!&)GS%s#AXasx{;8kNhEwP5Ojh%to8Uy;r98L z@BFs0ESGgMo%eQeo|p7f6rcexxUOQ-;H11CGf&1J_iuzctzQ`$sKn{$+J5%oIWi1@ zvle+D@Do3GPllM#Mn9oQ1)y)IqaJRwFzYOs)3j-%v}adR!FzjExox<9#*Bg;te`R; zh{k~%uj5K}K44=IqPj67(Td_EoDDlmj|6FJaKZNoi-Zxwi_;{N#@XfT-cF`qiwUS? zjb56t^9);88#7{%5Kdy#HCH|wWjVCLKe@zV#gon#FS9Xce~M6{cj1RP4U=dY4miq0 z#YRIW+gl$Qvp3Mv`2IbEi`Ts5-Dd=fOtx4piWNITxKPpYU_I}^r1N~OA4g8&-jj>Y zlGL0dqnaYiQW?dhBJf5w(@-Y0lHnvGCMu&0bhWDgJKb#S?ia|*sd5L+fW^}K&;G%@ zr-8cmBP9r`xoibht)|x9=m>XjU2#wP{(SDB0(WBO2kO^gr8^HlE@0d|yAf+^%JsMf z+6K={A~Zc=*>g=i+*t9`Bs83KZpV2TJ@W4y!OF(Qbv3%&4*T@Xvg~t)PfvH(7Y32f zZ|+J*nGHUavAG@>60F?0>99MP(dToAO_2xVw&IQ4Oa>5zXF*oXqG3NEP(HP?cJdTZ zS*eSh7e|N9k7ZL^)-hOS+sn)%S&sF>{V;xaVf|=s>ou6_%@wqlM+kqNxursr39p*K zXYt^V+qAk(5o*!jQ8RQr=uf#5Oi>-Js@rpb1Y@4A|9SW={JYz0Y7flMVy~^WUeWtEHKp8S`I9*1tNO=_oj?bK&&-(nRSvSbSc0i|CNJ zSiM{>K}2g6i)|9uwWU!eIi=`9ymadGGuo^hgu7@Ntg9A=znFi^uqSLmIx)bZU5lVm zc0L+b_(2IhO7uQ*1o{%@B>(oPbEx8hNU~jm^f-Fi>=pPvyo|R4_KZZa zD0SIPyJxdf`?(FS76#h`M!IdLwy)(74pomfxs5TDv{xMbV6q+6j0od4K3Wbb5ISL* zyx6*ZgTVvk1?xIL^vCk%9Lzcl0!FdhB^ZdyJ5fAw&yF<%K{M=n^I&$OG<^oLCXZM0 zlj`rO(k?li)zBil@i#(G7U9qVFbHQ->K_`suZ^;-QZnT67~%{C^0NpKbck0g%50jZzRuvf>kk|UPE0^l?oz%OtEyWV_PZ$qAmGd$(abUw7kO{7n(axLF ziOD4?ij7;Ru6XBE89E^)If@H(+~@e}=n9|27HH}eEDG1{GA!|MGt31QK5ji5?Tf6a zEcF83y1mgbn@@!oNYGdc4$N8Q`k;RlTW0@8}6RRwzo;Pj6Vyr?N z|?QP#l260vzxh_u1=4<#&SP2U|SY5A=qKo{73BM{a$j#=*c_O!pAI@4b%#jOA7 z`EY4}w3g^i526?L%?a)O=!N;+=b85R`O{a29Peh3vBbV@-{*@~gI+y96q%v(+T6FB zy|r@(!H>I8YKb;Ps8E>=5U;R6{u7W3B}F=eCQ7^p%6xF_Jqp)BVwV#!NTz^?pvwL$ zc~XA~Kcsm=$J}va-LN)Rk22ck^M-Kg(Ug$3Lr*;8NR|2gs#TEIBpjJ_h1VOf_Eiel zRe#4`r7C;6AkReMBRr;!qH{8ZWIM7#xS04@2qhO+m?Tcb>6fE1WOUmmzq zJt?$1&D2TeYGO z4N-|NrBllUqrnIztYjGX1VbLAznL%0L()zrD0#Kvnih;9y=tPn(5n-9RbU@CWq$dAJm z41K8}HTTRs`?@Nm(R*jwDYtH${03-=U)dIX>*L!DX)-cuD1BKM74E2Xqjk9som=GE z9om*;^Plnh;i1U?)5@Z(l(9;-@~5fiO2n1#UFYVU+l;R3I=+$Um*J$mbv*|^y^N95 z$+f~cOM!z(<^q5EUh5x8QCi^y>^MkZlEc(mZJkUAMe>;R&4Xz+4MT+_d3sy9jNj-C z%I-T(-Y`;9kgz%Le@XEXW9Tl1FE33T1?LyseN){_N$P5+TU=bGE|$E!wJKK*$5E7y zmEBMCJotTSaEcmTG$5b-e2}h~B2BB%h-XFJh=z7h#-afEB#<@Z9Hr@;MTFWhD>AB` zTIW;zrKPZpr95@^S5rZC7tN1>0Ee>8h-Gdp*S)~NmgcQ8E(XKFJiF)vLMfjIuy$h2 zYSe`K?H1eq`8n$g$kAW%_AhQO1*PECwmK;`k6AV7^H5Qd3S*mLJbKA3OgD%n6_C2Lr!qn=6~W%y>)9zQK>*0kGClx$6SP#aXqoyxaEC+l{uoeORufn(vbky5l*gPUnQ8E5vB0 zxHpxnROBh&s*VpSan(z71Wu!uCwSli$DT<-U)aM}i+mC@#gAg3?pH;Ht=l+Hgp5=i zt)pGNxMdyr>nEAD(#T0c<5LP5stxb2ZQH8sATs)}<`B|Fgr{#^(yAsUKB)SD?x9I( z&bTMDG(J#7Vp&-3IT(QS-m$SjoLG3yP@tWLtN?O3`;rt)tf#hflm(L2(6$JIX6&?87#LdOk!A{H0mf6bH% zd|?<1Dk#*b`EWHd&p)6Nx)O?vKeobpcig`^jvm=5yn_*Q@BvySWLzBKye=gH#J}#2 zgzr#-&x1vvvuaQ*RV}2n-P+tCNfp7d>Bh$~_Vrk?79li(z$_fg5l^baVBf|Zahd|q zD~1CiZ8cN8sG2$Oq?nJaD0|m@H3)H(P@kDZfs~K}PDT8a<;4)2}gO=9*hc3a1 z!=-MZ9%`U2qJQZ6yF2WE)cw^OHhQKWn4hCS?Q|=WHd$7fSZ z6{B~^NpJNOsDk6NZ4rL_a2pq@sOG8x3H#blD>)^KHPF`L=(KL6B9+DWZS zAW42_WLtzo1iMx5l+hJP*kR*0#!T1LiDtqR`jA%75z&8yyDB|{@~)wvE??fMA@sKL z2KLVZZSIs;*aZqU1`5adhwwj=|LXq!*QjR4)!PTMU`TxJ8MxgWXU&7K#0ZlHp|x3( z{Y>cYM`=sGE*@R+?xn!TX)^k?#`S86pFrp^$lkDOmX3OkiULNhl0QErtE-ojgM5sy zhELE6lD9pOa+Hk6^~<)?X!QaV6B5NO(P8@Z&B;cW#Z(Kqv^}>c)Zw5${&=>~bf4>X zBo^H!6Izmq6Ao3?=Po&)Fu*;);nT$sF-R6Dw2E0Q4e!UJ%*g^`&aN)WN)Ggf> zV>ptVTHb&Em3l&T@k<4E4Gr!4Y@4sJ)yM98?92=5`aC2WU2Q3i7T*u*o7ErE=~1@) z(cEDJ_bGc?*GaVpc2nikn)C$ZUNgh~_8_UWh&VKr<}OB-HR_c6om7|dS;^J= zETv@9r_P=4L?iRX!{j2SNZE-TXpPzEXRyM`0(j-Pd3ev3lN2DiDP=B06uCMT{kFf~ zr~7$v62LOk`lbicjMLXzKzxUcv5bIol7V$tVW8*z_WN^#F^tpaBb(?gtU;S%GaX0r@ z#mV|ZQ(A^$Im~qtww8hm_B5TAm|4d7-|#<3Z=I!;(hISvXfnSqP$)>_W_k9dD}LjS zjmt(d`;oBB8H!h)^6_?Q3v?I|ye|PW@Nzb`iU%Op%FF0l%hN7ysh#t;) z0r0r$eTYR~zBC)3JN`26q^duT9*!aM$4BUvkus*9xfQNR?%h#Kt?7|*U%4NEwdtPS zz3RS}*B6iOz82kv?*FX$dE_A2OM)57J{yzoM>l#;e>e)q7chiA(=!E~ro7=46p9(T zx4WOd?;l7_#NozaJc;ERoYD2qSU28z@Bp?GajR!@F!u7?dQ7zlV743V^p$FVJ$lBIe6S54?gT0zUpO5;UlizTPkQ&o{2kx4S}o zpBdN_v)}DK_ifv2>+(!23~O+)7W)L)FKVD3uSOqHk5>Awrs_lx8CV9p@K*Z}Tx<;U zaiOdY#n`8KgV(4(^0z+V|2bn7j4fMqLxO+=k$`|;17|E?V*erro3W_)QezCds z){}L&=`zFXb!=ZST3|3ZdyD1;%Yp!I<}PyI)H7+{T;s@7DSLs*`J@kOJ-K*-~`Y+XGHd2x_HF3 zlICipn${}rStCu1(O?DyoP5o+WF{~kJ4c3*Io%ri7Fo!O5?;#<_0zRH-xJgrsd|$- zh1aBO@UlUjJU7hSSF1(o#q>Z(0?#@!P7%^D)MGe7M}1~%{j5?uKmfgclzH98_;K0r zvsp4<>ZL6VqvHt2%Vq+m7u0@y?k(&i949f7fM|X6Bm5JNK@kI1E`4f7h20HLwV+Kg zUMRX|#{}V6V|*>T*mpWkiyBp!B)+BJ8(Vc3VTXMW(BR3K*7C+E6vdLmOfS|Gi|wW< zQOwHOaw%SKl#gjWj08%LWJi)M5vUe+@-DNKKV+A94gyfBqK6NpJoSc~TG``f0*9mE zAz(xZ1vgQGCJn);lL8=F5y(8dc0xgPAnxHTZ`i*Iga3e9;l%*9LXGe=`y!MbU5QYm ztjUAF5G0Mon&{ni90$jiiV-Ku6904{$QFxH*c>;7n|3a(lUw8Vh2%S3n4wyQE<(z~ zT71@!=j9$;?@M3eaZLtc2a^S9j-oTP@Bq?K@{lPPWi@^!5n$;(WH8TKr zOX{HJ0jD8aT}IgQZ`|7RM&dv`l)4-4xdu(JX}a1ozYRR>F#0 z%`o!hHSW)|9h>qFVB@QN?Q&riK7yd7m5Yy6Tegq`v=`3K7Qd^*Hc^WO%=3u8qRa~V z#ly1++SudL%zz$I?;kZk+^+D|NGQq^&a-MR_&PLCFQ|s8{egXo**;lT=U-dT8T?FC z@G!r#RYmowfJppwlEXTE00$u-A;%UTKoO=8U;#DzGtX1pz?E*Bo9a$@fQlI+?FBwZ z8ydak5Y=ym(yuBVRu?HJoLnE`B;zn9Orf4V*Qf_1uItI;tkxAiN1?P}F4A59lp9QM z3nlt}6E|9aE8s>E>;g&rMYyH;cQ*(;_Pi>wiXY2b-@=;vjEN-jH5wH(vg3rdU$YMh ztCyMWWy7ii<{A=LjbYBo&R&*!(Hy#A@duH;%`8bPeqi_&lnGoUt#cHr7Wp7<`Uw$E zWczIe$@~9WVroR+2dmms6RwzuypiD2Ib5jouwq_9<{9P}>`71Bdr#|L;*EcDsXu<| z#O-N^pH1PM_V%vwoc43RXVwefZeNm?)+;mBHuKYzIlGsg+f#k*P1B+3HAlBix@1&c zS?c@tk?N1CyK)Dk-+x{|<%vgd@#$CB+U4q=T-^FvuDa&&vgPyYp51&tuYO_i>1)&D z>QZm7UcdL}wcFPBDz|4pU)OJU@AJufwZHBEzBzq3{;P~-)tc`W_h06ptNDHR```3> zi~5I;*6)w~^|#;t|DsaE1H4o0GGcGAw5hfzS4D{*HVbZ?_~CI;>ESN1m$9qc`p-vC zo|JfVLuK{%37kLA6)V3w;=FREaQZi2D}V1`t=(G>-TEJ#%G|2@%8Ku$OrC{uddts( zr(S#|8~B$su}NhtXv9kVH}3d$$UeZEkx7IZG(671@O*}O#M+>x6Q=@OsHcEqZlG=l z3^V}67#O0RfrG)Rc_r~7l?AEAv7pu&x&f7H-VQ&2O78*3k-1^Ifpi1oF`yBUHa@s% zkFK$!jXO9KsN^D0qacdL=Rgs7-IJVO1RjY-*Z$@9ZSmJY?KvzA3<4wzM0?TG~i z*j&vMF{^_S*b3zXj(nq9J_8sK;F$xU5v936zhl#$*B~uq1ho7#&?*@e%TEBO8o}Bj zK1VhLYbf-t7PIcwXJCj6Wo6(;G06lNnqZTPODc0x!PAxKVSs+1Busw;;~Og!&1lC< zqML(0Pl_-nwg6@h(j*GHcJzrCgm&)|sCKkz7<3cRCn69g)Rsa`K$(_6*N;AGjLu9DpU$$6CoiWM&KYIu)wXl5&-+pX7-;A z)jS-`ob{RA?Q9zoNlX*#?;goJU&^j>25=d61UGr)$upG-l-QSM! zhpA5~g}^b#rl;KckSx~q+7d$=21WwdFQR>GM||9>`KLw%g)Pe6VLR+ zRX3-5zn$cUWZkarP*XV^ zqSN-W^|@5{l%z0uFtu~b)2Ej$wJ++ zcDcI%)qMaNfc|60u8Y}iRFmTnuC^rNN>yhK(>i$P7+@1bT|IpOovHb1FOYq-tifQ} zrlTFD=3{jjC_~_RD}kDR)D=KSQ%A0!0GG<%7G2>TblZD-OIHy6PWXNy)ZlhzTHbC< z-ERo(3zxb`jS5ICI%$}LkLT6#P=dneIy*>rkxx>=r%lpOh}K`U&+G0S^>ObL>=ORn z8~@5%nWy%`U6gyPxKZR(C~4ZYgpfvE>aQ zl>Sjg59*Jici`%+K|w$ugMS)2nb|tCF#mp5#EpM|W<&Qo6_y&JDza}>m&{)@kUWsj z7w-Btc2Z~$lqp>5Xjhih*TU^4*+1PjF`rAzBV1r8v<=iW)}9T>neWzGr#r6)8Ll8C zA-4IGyQ^&lY1^iTUsIxrno-|!n`@8>Gpu3t>(bSoOo>&BOB&MK$)FYomBeFQA%CXT zbn#)D2EYNN%8C4q7 zl8)Q@08+BlEjwpE2$WD%HE@4-1vlP?*~e>9FIY6yy#0QU=^f>`rsssY%UYnaufrtC zFV>pmQ=NwB1s{arDP8WZoQ>ujJxufDMim$kr>o-+VwDfL2bcrGSU^UOz;M&Iulwp zjZI%}E|j0Lua=8*=F0?mMzcy`&VjfphWz3e4beE-R!S7IU2M9a{{AFk@sx3O7$r@G zBoOHs#W|2+NqwK>CJbPv7s?O=oi=S@TnQ?56t@o6blC`&8&Q@&SGPWxT(J29iFHtd ze!cHEQrSy4qpgNxCpvb$hkb(v$swwoqT<%9!M^eJ*xAW(ebNeYC z#pR*_IS4Ddu4{n4f||jZnXMHjXDUCD&!){B)mYDsqr5c9pMdGBIjDnfLKY#2840&n z=T>ZK39{HlV(Boltuj9tJH~Sl>U>|{zr0-_Vz}cuhrvIzKsBJ7c9VE{>bW5NXI-wA zm+_9kb+LtkfI$CyT|PND{81LQQTt_9^tML^82!&*t>DF!@#6yK#HJ)x3994Ln`TBR zKE%Sbux$Z-?n80-zOY<}3DgNZ){i{SiX&QHUEf)vQp3X9H)U4EuVv8BRhDHQ#gjr@@3*fHwUZK2P^F09hquviDu|UlJrXw@H)gX@r@~1zBMC&%U?XaZ{jO1ptT^sUhF*XWmID&h*}XX zwqm^VnV1rmsu`^=`>@4aPA*hAK=Uq%_|ce@kimrRM00;%VqQmIK{pa7i;Domm1;8> z*aEo=pn*-W5yDq`@2ay!dTUAWjLv*+$F{$5?;?bJ=my6NY_3BjNj^rjeIAY&CGl^z zT~AIF9@kudClHd3r|xB|7@OR;EGtr=_`ba@jpd1jZ!XE z{9(03{PP3r25>TE0e@;;?7*AT@0roB@lh2#GdgZHExl#Ex}t;N4#_tmpm)EMs~(h0 z|D?Sb(5N9v+`)f10$otDP19i^WEe0We|Y@44A^Z@R5+EAoik$8bmIQd<1Q)6p6Hk| zDQ#%af*SR{kDs1HhaRzR3VLDc=hL`shWS@@sC>#$GCLg`Ze*nW&jeCQIAp~ruolwV z4Nl~$6e?vn7U;7hrc=BMTjqt4#zsseZqmD{OWA=~);yeI+9Je*=WI)Q_N*_a`J6I( zdUTY<64N{QpHAp~{Jy2~ckEEPp^@0M`fE=Hj11NH@-Cd6vC(15%;)~%DJ!~Zlmz8O zvw~u5B_;%h2|Z)|F%cQ8kSm*7+p$sb!bx_9gW!kf`1w|<4)(vy@!CSVV zE6gS^B@k;&83E< z*^Hc6qQdY6RqjprBO+66fHrPD3 zbc*(cCl~2VACxn4px5~+`J*86*4>uv!zU+33mcT8jJQzxIlu_9fwr8G&l8q zo=yiGLI67n=>X8e|MGT_H+l&rt5{@^?n(Gv$gnc>z-5n}eEwm=!V*Ij3R<8g zA9dBqsEgTDkRkF{cXPKd2#U*39oHmUmhXQ^kbgp|X`$+?MS9neV=vl*QyH0mAgvnr zrItqrN?UR&?%Su3tjy1zAd2(x%I1sqa+?j2)l}#14TU<5fF2B(nuS>-eM&AWqpj2Z z@7H&xM841P21w@hvqTbwyZ%q|dXbohFdDb%(7haYMph%+=5rHo%3H~v1hdMk$358stShhKJW+2KXV;fhAR-x0s6hwM?0NL)qTXZ0mZwOBw7k2kUGWQFXhiMn zl~tXN*W>K+sHfXkkyi&TKrhBEX!~;S+WqZu*^s5-ZAj64FR($Fq}Kwtm^tXBZSOk& z>5Iar?BwyoYLOF>j2B#CIj8sMN}Gcrfp>;1%a34DZtK2l$7rL2#}BJMyx*Ti#K(n> zHP^sr9Xl_6X-~LzR8_@Lm$&uUWwsqY-{s$Cz_r)NS_N?Qmw8yi=>kIc( zVxG~faG(>D=QE!t$twkg0>F)CPnHklX*=3+E;boY1~~kI!m2Y_w-pO1c;GJMerGf*nYM~ z07@1CdW5TiyakT2$g9F)uBy>s3qnpX`6ol_&_b#zMV_k-eY8b(U6>g^|A;~-^nLLU|uRaE+K%vSk`}tR_zK*1b=B3VK zh5hAdz}DT)YmH8)bS7a(tFAQnJ>5eWx92Sz70t`t@}4WtJ~Cg)dH*XYl!*GqSk}XU zB@e%oPy;D-3!(Pg_6L+tWoVnlXlyE^J?f;!<-&cEKB08pq0>MY*N&^fW2=4|Bm=ek zuz+bbVD1KGVis+)oi4wS}n?Xdm8UX%nkMX(B`t7U!-I&Y*ys*8(vWpoM0exZX zyW{oeHbF)a(xj?Mx2YAK7!~%Okfy=-g$mSJ`|IAH)$2Z$*e2T6#!t!f`@4?L<+%C9 z578KBEsyh`F4gF)`%*0K0$XJ^iO_bxAg zp7c7Wb20?C5EW=fzV`09my)Dk(y9j{FMi*>qw+l?omWh2N)ES%`5tP+@U^;BidPgP z7E+SrQ$Bk~*E6W=oRTnn&LpsU8 z4-9V{@*9L7V&24tw6YNel)Ul6r{-nqLo1R`YUI%$WRzu!F;x;c%7Peou^GreGR=QL zh*N0oEcaa}V!6{8X&c0zD{o^<%Y#(5JWa&Hl0@1PP`I&8H!5dTnNNwI>T~Ty}3taS|_%_%f zCh-g0n1Glz*!=9@otEHE+<$e#Y`z0Piv2advVnk#8HU9Jd8kKr4eDRm$DDECP%`j1 zx<5j7z-Yl>+<%1rNd;3vb81cQ{$B*A%9P+1q(4+7wZWR^{11u$fr|0GsKgCO29Nr? zFjqpb9u;)3SM2&7CNgBE|B}c=hCt(ijPQr*nRvGb^tRul{@s-CEKxt<3hKZz$mEyQ znI-EW(QxrOy@&MG_SGSs10{BSK$7xLrb&n?Zfe*>eOf4vyNs zFh&S5>n1&&_OCu(yR_)r_j`#w_0EsE=2$McU+UfsOlMVXx>x<26;|Be-5bu`yo+2H z(QmqzB#pA)VqO$Y)QdXhiY0h`ba*4d1 zx5g&#N@Cg`m_x8mtgshm9oKGBw7boA|GMj=Jc4w}_H^mu>+N>h9RCijV9hzSdhVJ@ zb(#3xNNa@VLOd?Wx|VXh<)wQyc0l=tUai+Dab@lB*nO$9FDmIaJK@I#HE-uVQsP_X(}H^(>9*sN_k-EB<4=# zW%)_j>!v+y#1cOq&-tcHVrsrCoLMxj_1H2soI9G&62C_Sub&9=zTQI*!`lzjFX+}? zDSc~>E@^jmk4>sO%py-6?MNR4;((kZi1PZ>oIRbOl zgJ@XXtU!521R(RLDSVqRFC>9u%ex2)?>T@<-=?UO8A>8Yux7QHXPWx2-yu)OGeRmF zn^rueGb~!@@9IfVrjH_0_qGf=SGF;P-sjf?#Gp)se@)TK8OJEL!tKP>R) zyC}c-6`8a~VUwdnj>_0PlfO1IZvfbD)A!O+AUX5SezoyC@j#Q_u3Dz54ZLtNO_ds=ka|(mTzX} z?Eai1%cEym9*s=rPzf36jDqfMHF8}*SI8m{+Wd&+W z?2IZUKT18Cb(4%L6G7P8rgoC4((*A7@V#>O@d>N5(_7i^oJ;3P zUGl!3>>dU1h*OQra2*HN_yNV1{O!VFsy|^_(#OyxlVMa{<~W4OxlQxg(=@!F&@Wp<_<5 z<@!Np>q*O|d$Vxy7Aw}gs5Aiq%(((h&GB98R85#Vefp@HcrEg%^E_<)O3{ofPfpI9 zg&bwnNota3K3bFY#;N^_VTVgiT!6JBWc;6p>{?a>0ol7Tis`R4i@2TciUu>3V#VG^ z>JCYp#eQ5waC7K-Bebc=>>4}w;nvba55(*8S8_-Mx+%o37zG_JTcdWU7ja$R zM;P@~qkoNIIV9#1ENM1q9)uR57pH_D&Dck)wW~y4!|Zt%fAWTU|TS-#6pPo}({D*%_Z=o~U+GKUbcSbaS4V-Wx_+ z?1?Uc&lzg(BMv}TG3~~~toPFCmXE*iP*__xS|Cz-QfsV27WsxCYqfF3h@Uq2O{Aa~ zTYTT7L5Ad^*UhHUkMF&c>y67?%crMt^Qr2+iAY~w?_M6}i15lkqNTI)b}qPcR;z#F z%0p66dsk}7&%01seWcN^cz&C1EB~(QXLg7(hv$am;C;VmUTk;Yifyj{de+>f8+uvFNPX1X)5BV!T+hH>P^WK3?;TtCf2CZPB_AYGM7IJVf{WSfyB8pc=*U`++ySSS>DA0@gkO3` zH3?VTB3KMV&elFHLKkfjV+}Cxj0xCUs5urX@PerC&!1*+3|S=G#nw>MI7$=<(DW+b zNnRm+ug2X-bhs^N*mE%R_tOvJ6olDtN_fw~CQ9%6)B;@{dRok2#RLY_rg9Vb2OVYWD`LE@%& zFVZ}+910)CdBxbb^O4PME$UM8g^CJp(kT|5mteiDn>WMdV{nH(ZavB>~*&Qw|cU^L%Q)Frm6+O@V|BaeT*SVDYz z5P8d&`C5u4e7`D zm^S~A{rhAx^6PpQI&RXGLdP&sp71o4T!yI>7^w`&s=h%SR`oc0?{1F=<=tC)d?u6~ zev>iqH=XOvC;iVWZ}Xt+P*p518^<|+ra?ZG(@vQAKKyWmzSioj9`8BJyGuHs?A<5<=tt=!Jf<1nZ1{M9*; z3@SoP>#TfuYp~4$e9tTRN{o*oyvb|R-_*QCxK0Jf#l~u1_;By={Jm&=(;X?&Yw~kH z^3REzA5eExWt<5s3yZKC!-?t@nK7AAu4#65C$S&zHI-ZRGC?o8Cl3Ac6M>2jK8ppTXS~S>r;+ zUDMLtz(0s=$5L><;&!o}cXeOKaY1ND^rnN8-AL@k^qh8#!aIYj=Q9w+&EctK%;7QV z3L_0V+u;@{?3TT;Hk=|X4Zxlvv?&sXZm;3_WfQeFa57Vi_Y20<4Y6H*|MK2)#7oHm zs){J-ds>upn;%d1_&HQ9LVK(kVtWd-g5LVAw48&nMdb}{`zLxCjCP#K1@l~<8~^3h zye8!hxj_zBsMf?Ce!n$p==l`wHh5T?vyo4T?LT=3k=>z}h*-$NzY}VMvDr5IklVsU zJ_TUWI5$)sps0&|J+OQCWlfqom&c3OvCtWe&7=Y!zTOG9aIei

    A??b_-Cmn~Vfq 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerDebugOptions.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerDebugOptions.scala deleted file mode 100644 index 818380946..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerDebugOptions.scala +++ /dev/null @@ -1,8 +0,0 @@ -package com.twitter.home_mixer.model.request - -import com.twitter.product_mixer.core.model.marshalling.request.DebugOptions -import com.twitter.util.Time - -case class HomeMixerDebugOptions( - override val requestTimeOverride: Option[Time]) - extends DebugOptions diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProduct.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProduct.docx new file mode 100644 index 0000000000000000000000000000000000000000..869680e291c302779a3a056e55fc727602c4e5fa GIT binary patch literal 37047 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProduct.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProduct.scala deleted file mode 100644 index 7c27c50d5..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProduct.scala +++ /dev/null @@ -1,40 +0,0 @@ -package com.twitter.home_mixer.model.request - -import com.twitter.product_mixer.core.model.common.identifier.ProductIdentifier -import com.twitter.product_mixer.core.model.marshalling.request.Product - -/** - * Identifier names on products can be used to create Feature Switch rules by product, - * which useful if bucketing occurs in a component shared by multiple products. - * @see [[Product.identifier]] - */ - -case object FollowingProduct extends Product { - override val identifier: ProductIdentifier = ProductIdentifier("Following") - override val stringCenterProject: Option[String] = Some("timelinemixer") -} - -case object ForYouProduct extends Product { - override val identifier: ProductIdentifier = ProductIdentifier("ForYou") - override val stringCenterProject: Option[String] = Some("timelinemixer") -} - -case object ScoredTweetsProduct extends Product { - override val identifier: ProductIdentifier = ProductIdentifier("ScoredTweets") - override val stringCenterProject: Option[String] = Some("timelinemixer") -} - -case object ListTweetsProduct extends Product { - override val identifier: ProductIdentifier = ProductIdentifier("ListTweets") - override val stringCenterProject: Option[String] = Some("timelinemixer") -} - -case object ListRecommendedUsersProduct extends Product { - override val identifier: ProductIdentifier = ProductIdentifier("ListRecommendedUsers") - override val stringCenterProject: Option[String] = Some("timelinemixer") -} - -case object SubscribedProduct extends Product { - override val identifier: ProductIdentifier = ProductIdentifier("Subscribed") - override val stringCenterProject: Option[String] = Some("timelinemixer") -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProductContext.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProductContext.docx new file mode 100644 index 0000000000000000000000000000000000000000..124945e3d659ef20c0ae82710af8a7c04f9d34fe GIT binary patch literal 36979 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 bkg^zR>oCBZ6_|rSxk`{B5tu#xbc1*R*#;pS literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProductContext.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProductContext.scala deleted file mode 100644 index dddd733f3..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerProductContext.scala +++ /dev/null @@ -1,42 +0,0 @@ -package com.twitter.home_mixer.model.request - -import com.twitter.dspbidder.commons.thriftscala.DspClientContext -import com.twitter.product_mixer.core.model.marshalling.request.ProductContext - -case class FollowingProductContext( - deviceContext: Option[DeviceContext], - seenTweetIds: Option[Seq[Long]], - dspClientContext: Option[DspClientContext]) - extends ProductContext - -case class ForYouProductContext( - deviceContext: Option[DeviceContext], - seenTweetIds: Option[Seq[Long]], - dspClientContext: Option[DspClientContext], - pushToHomeTweetId: Option[Long]) - extends ProductContext - -case class ScoredTweetsProductContext( - deviceContext: Option[DeviceContext], - seenTweetIds: Option[Seq[Long]], - servedTweetIds: Option[Seq[Long]], - backfillTweetIds: Option[Seq[Long]]) - extends ProductContext - -case class ListTweetsProductContext( - listId: Long, - deviceContext: Option[DeviceContext], - dspClientContext: Option[DspClientContext]) - extends ProductContext - -case class ListRecommendedUsersProductContext( - listId: Long, - selectedUserIds: Option[Seq[Long]], - excludedUserIds: Option[Seq[Long]], - listName: Option[String]) - extends ProductContext - -case class SubscribedProductContext( - deviceContext: Option[DeviceContext], - seenTweetIds: Option[Seq[Long]]) - extends ProductContext diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerRequest.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerRequest.docx new file mode 100644 index 0000000000000000000000000000000000000000..909bbafca7e654286b5a0a7c8ed8404ee47de9d2 GIT binary patch literal 36966 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 Of((hk?D4)E!~+0%vMJ*L literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerRequest.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerRequest.scala deleted file mode 100644 index 34595c34c..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request/HomeMixerRequest.scala +++ /dev/null @@ -1,19 +0,0 @@ -package com.twitter.home_mixer.model.request - -import com.twitter.product_mixer.core.model.marshalling.request.ClientContext -import com.twitter.product_mixer.core.model.marshalling.request.DebugParams -import com.twitter.product_mixer.core.model.marshalling.request.Product -import com.twitter.product_mixer.core.model.marshalling.request.ProductContext -import com.twitter.product_mixer.core.model.marshalling.request.Request - -case class HomeMixerRequest( - override val clientContext: ClientContext, - override val product: Product, - // Product-specific parameters should be placed in the Product Context - override val productContext: Option[ProductContext], - override val serializedRequestCursor: Option[String], - override val maxResults: Option[Int], - override val debugParams: Option[DebugParams], - // Parameters that apply to all products can be promoted to the request-level - homeRequestParam: Boolean) - extends Request diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/module/AdvertiserBrandSafetySettingsStoreModule.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/module/AdvertiserBrandSafetySettingsStoreModule.docx new file mode 100644 index 0000000000000000000000000000000000000000..d001249222f774ca7cf0ff4f4286cd01fbbcc7f1 GIT binary patch literal 37406 zcmagFWmsIvwm*!!dvJGmcL)S`m!Lr#cNz~6+}(n^ySqaO?iM5v-2LB~nRCv}x%a;B zm(4>}t)Hy5yQ=o?YGpY{C@e5AFgUP-R37b0)xx+Wa4@hj7%(tQP^+EM^Vth_GK(;&w*)G7*^UFP17jS%WOc?3ug((7i9E!^-2{KQ z#*A_(40Bv&+MO@)YMoG*PZPDCgye~VL8ewdIb^X<{`yzuQwyFwsW>v(MVVcqxj~qk zmQ0^_)7;>!yEXm%Mi?Py;<>tkN!kx!(KMAYniwQQA#kcfW6)vM`7=Cu9TX1gsz)O< zy9}T9#+2P&Cj8vVA0+&xvR{^%sWr1~G7#DVcvHiT&o!h!8#lxcIM=#OGSoX+YB<)d z_7PiBw^lg{1|Q|S|Y*ME0MR~SPn{IC>ecsDnzU^k)R zKZ5$1OGBhqwOuSGd6a{X=gsj*g538eH&}0(Pg2phL()iyHb8X1`~CvuY5ybi3f?_Z zK-Hbhb7#?>>uTUvQ+dW@I=z=9q5|~pxQ|cXkBG(P?<9qLpBIbQ_e93-$iF^eDHwt& z|D%eY)N-Qtpz3WvfPo=`{u()%+d8u_|GrknPkw-8L-RiqmKvcdwr|pqELb*_JX9zU z?n#|EEwTs76s>f1sz@4W25Fh-%m?Nz_G)j^T{N^Ct-&S3 zcLb1msP6>p*rrF^P@ssKQ{Qo0Xp#yuY+w%R(bb>Mh*gP88qwRypp*ocCZJyyS<_7^>hbwF23Q#514*!AZ%|gCBkQAcGaK)OyRwrC>Xr%{{rfTVSV~%iu=5DKLEHAiU1g z*bHeJ5+6bm8g~|8_61P~`*qa>XYDClik`1BDY);f=W+Iu+LGUNtS3SR9|@r*8&Wod z%|L!3jGtnlj*D~d^AuTDi)vBcp|~2l!t!TL(RkW63S`nfEV`co0mR`66!G=wrOide zV43J8dEnv610Ut5454P1%He~Ywr!!@@T+u{b`Cf6*zi}IkXK!5+8#|W+5CV+y2!!5 z-VYk9?q{0Q*1)h6p13_gBcXzGh^nNiy0>VuZ+$s&c5>XDc7rr1M`{j5LP>s?H*-=_ zAsUzmx2ET|0T?K(9iE%pSz~gh@)vP2YvHKDd}$izrAhe+%v{ey8Fm-442921yt}@z zV#`RB#VQudgpzHO`Oeri`Sq~g@9q8TyCp(~d!7p@ydz5#L%LaaiPz`8OM-va<$84$ z_ZUcw&GuaQR{dE2e@MAGjbkBe9NO6Q9{UH%9&; z4yu)H2k83{hRyex}gTV0=7Z%lLq$q!`BgI$906p>Mz6ltCI)h&QN90 zrP!K-=mw5P(_@wMFih|+X8sg&%2h_M{xfShlm^7{e zDFK^t=lR4ZC~HJ-mzz4XpXj-kc6zvivlODo#EcG?vq<*?2tRO53${do-)^KG%Ck;s zSHW<-C5laGO2hQ49Rpnb;^9R~sJw*K2LE#T<7q#u1~XCAig39N zoziz|Mp&wLyr%ra4s!*WP}L9(Wiru|2?+s%Dcz~o!GXl0u7RRn6m||5KDry#b_lQ) zd=EeaooFM3r~KYccZcNe6aEVt^MxJT!PbMT5aN+L3@@;y9-cVm1m5;#G;*9cpv87G zB}sTvYm-tSG!s|D+g2$qWnfiSq)_R7XGaFhGYj!Ke8$5S!Q1@JFOq-W7*W~$e)P~_ zV0NT`eqh}JPG&5iPpzvRXmR>|XUwM?0am%udN%Lq;6xaizKuD>x29

    m@Y8E#!)2 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 z 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RealGraphInNetworkScoresQueryFeatureHydrator.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RealGraphInNetworkScoresQueryFeatureHydrator.scala deleted file mode 100644 index 92ab90f2c..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RealGraphInNetworkScoresQueryFeatureHydrator.scala +++ /dev/null @@ -1,46 +0,0 @@ -package com.twitter.home_mixer.functional_component.feature_hydrator - -import com.twitter.home_mixer.model.HomeFeatures.RealGraphInNetworkScoresFeature -import com.twitter.home_mixer.param.HomeMixerInjectionNames.RealGraphInNetworkScores -import com.twitter.product_mixer.core.feature.Feature -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.feature.featuremap.FeatureMapBuilder -import com.twitter.product_mixer.core.functional_component.feature_hydrator.QueryFeatureHydrator -import com.twitter.product_mixer.core.model.common.identifier.FeatureHydratorIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch -import com.twitter.storehaus.ReadableStore -import com.twitter.wtf.candidate.{thriftscala => wtf} -import javax.inject.Inject -import javax.inject.Named -import javax.inject.Singleton - -@Singleton -case class RealGraphInNetworkScoresQueryFeatureHydrator @Inject() ( - @Named(RealGraphInNetworkScores) store: ReadableStore[Long, Seq[wtf.Candidate]]) - extends QueryFeatureHydrator[PipelineQuery] { - - override val identifier: FeatureHydratorIdentifier = - FeatureHydratorIdentifier("RealGraphInNetworkScores") - - override val features: Set[Feature[_, _]] = Set(RealGraphInNetworkScoresFeature) - - private val RealGraphCandidateCount = 1000 - - override def hydrate(query: PipelineQuery): Stitch[FeatureMap] = { - Stitch.callFuture(store.get(query.getRequiredUserId)).map { realGraphFollowedUsers => - val realGraphScoresFeatures = realGraphFollowedUsers - .getOrElse(Seq.empty) - .sortBy(-_.score) - .map(candidate => candidate.userId -> scaleScore(candidate.score)) - .take(RealGraphCandidateCount) - .toMap - - FeatureMapBuilder().add(RealGraphInNetworkScoresFeature, realGraphScoresFeatures).build() - } - } - - // Rescale Real Graph v2 scores from [0,1] to the v1 scores distribution [1,2.97] - private def scaleScore(score: Double): Double = - if (score >= 0.0 && score <= 1.0) score * 1.97 + 1.0 else score -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RequestQueryFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RequestQueryFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..0bf996b518a1ef8b49cfd325ed76f7b6d205b06e GIT binary patch literal 38240 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RequestQueryFeatureHydrator.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RequestQueryFeatureHydrator.scala deleted file mode 100644 index 3968c9532..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/RequestQueryFeatureHydrator.scala +++ /dev/null @@ -1,121 +0,0 @@ -package com.twitter.home_mixer.functional_component.feature_hydrator - -import com.twitter.finagle.tracing.Annotation.BinaryAnnotation -import com.twitter.finagle.tracing.ForwardAnnotation -import com.twitter.home_mixer.model.HomeFeatures._ -import com.twitter.home_mixer.model.request.DeviceContext.RequestContext -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.joinkey.context.RequestJoinKeyContext -import com.twitter.product_mixer.component_library.model.cursor.UrtOrderedCursor -import com.twitter.product_mixer.core.feature.Feature -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.feature.featuremap.FeatureMapBuilder -import com.twitter.product_mixer.core.functional_component.feature_hydrator.QueryFeatureHydrator -import com.twitter.product_mixer.core.model.common.identifier.FeatureHydratorIdentifier -import com.twitter.product_mixer.core.model.marshalling.response.urt.operation.BottomCursor -import com.twitter.product_mixer.core.model.marshalling.response.urt.operation.GapCursor -import com.twitter.product_mixer.core.model.marshalling.response.urt.operation.TopCursor -import com.twitter.product_mixer.core.pipeline.HasPipelineCursor -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.pipeline_failure.BadRequest -import com.twitter.product_mixer.core.pipeline.pipeline_failure.PipelineFailure -import com.twitter.search.common.util.lang.ThriftLanguageUtil -import com.twitter.snowflake.id.SnowflakeId -import com.twitter.stitch.Stitch -import com.twitter.timelines.prediction.adapters.request_context.RequestContextAdapter.dowFromTimestamp -import com.twitter.timelines.prediction.adapters.request_context.RequestContextAdapter.hourFromTimestamp -import java.util.UUID -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class RequestQueryFeatureHydrator[ - Query <: PipelineQuery with HasPipelineCursor[UrtOrderedCursor] with HasDeviceContext] @Inject() ( -) extends QueryFeatureHydrator[Query] { - - override val features: Set[Feature[_, _]] = Set( - AccountAgeFeature, - ClientIdFeature, - DeviceLanguageFeature, - GetInitialFeature, - GetMiddleFeature, - GetNewerFeature, - GetOlderFeature, - GuestIdFeature, - HasDarkRequestFeature, - IsForegroundRequestFeature, - IsLaunchRequestFeature, - PollingFeature, - PullToRefreshFeature, - RequestJoinIdFeature, - ServedRequestIdFeature, - TimestampFeature, - TimestampGMTDowFeature, - TimestampGMTHourFeature, - ViewerIdFeature - ) - - override val identifier: FeatureHydratorIdentifier = FeatureHydratorIdentifier("Request") - - private val DarkRequestAnnotation = "clnt/has_dark_request" - - // Convert Language code to ISO 639-3 format - private def getLanguageISOFormatByCode(languageCode: String): String = - ThriftLanguageUtil.getLanguageCodeOf(ThriftLanguageUtil.getThriftLanguageOf(languageCode)) - - private def getRequestJoinId(servedRequestId: Long): Option[Long] = - Some(RequestJoinKeyContext.current.flatMap(_.requestJoinId).getOrElse(servedRequestId)) - - private def hasDarkRequest: Option[Boolean] = ForwardAnnotation.current - .getOrElse(Seq[BinaryAnnotation]()) - .find(_.key == DarkRequestAnnotation) - .map(_.value.asInstanceOf[Boolean]) - - override def hydrate(query: Query): Stitch[FeatureMap] = { - val requestContext = query.deviceContext.flatMap(_.requestContextValue) - val servedRequestId = UUID.randomUUID.getMostSignificantBits - val timestamp = query.queryTime.inMilliseconds - - val featureMap = FeatureMapBuilder() - .add(AccountAgeFeature, query.getOptionalUserId.flatMap(SnowflakeId.timeFromIdOpt)) - .add(ClientIdFeature, query.clientContext.appId) - .add(DeviceLanguageFeature, query.getLanguageCode.map(getLanguageISOFormatByCode)) - .add( - GetInitialFeature, - query.pipelineCursor.forall(cursor => cursor.id.isEmpty && cursor.gapBoundaryId.isEmpty)) - .add( - GetMiddleFeature, - query.pipelineCursor.exists(cursor => - cursor.id.isDefined && cursor.gapBoundaryId.isDefined && - cursor.cursorType.contains(GapCursor))) - .add( - GetNewerFeature, - query.pipelineCursor.exists(cursor => - cursor.id.isDefined && cursor.gapBoundaryId.isEmpty && - cursor.cursorType.contains(TopCursor))) - .add( - GetOlderFeature, - query.pipelineCursor.exists(cursor => - cursor.id.isDefined && cursor.gapBoundaryId.isEmpty && - cursor.cursorType.contains(BottomCursor))) - .add(GuestIdFeature, query.clientContext.guestId) - .add(IsForegroundRequestFeature, requestContext.contains(RequestContext.Foreground)) - .add(IsLaunchRequestFeature, requestContext.contains(RequestContext.Launch)) - .add(PollingFeature, query.deviceContext.exists(_.isPolling.contains(true))) - .add(PullToRefreshFeature, requestContext.contains(RequestContext.PullToRefresh)) - .add(ServedRequestIdFeature, Some(servedRequestId)) - .add(RequestJoinIdFeature, getRequestJoinId(servedRequestId)) - .add(TimestampFeature, timestamp) - .add(TimestampGMTDowFeature, dowFromTimestamp(timestamp)) - .add(TimestampGMTHourFeature, hourFromTimestamp(timestamp)) - .add(HasDarkRequestFeature, hasDarkRequest) - .add( - ViewerIdFeature, - query.getOptionalUserId - .orElse(query.getGuestId).getOrElse( - throw PipelineFailure(BadRequest, "Missing viewer id"))) - .build() - - Stitch.value(featureMap) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/SGSValidSocialContextFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/SGSValidSocialContextFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..6e9c600aea756c7baf01dd12bfde0e554bf82f76 GIT binary patch literal 37830 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 sg} -import com.twitter.stitch.Stitch -import com.twitter.stitch.socialgraph.SocialGraph -import javax.inject.Inject -import javax.inject.Singleton - -/** - * This hydrator takes liked-by and followed-by user ids and checks via SGS that the viewer is - * following the engager, that the viewer is not blocking the engager, that the engager is not - * blocking the viewer, and that the viewer has not muted the engager. - */ -@Singleton -class SGSValidSocialContextFeatureHydrator @Inject() ( - socialGraph: SocialGraph) - extends BulkCandidateFeatureHydrator[PipelineQuery, TweetCandidate] { - - override val identifier: FeatureHydratorIdentifier = - FeatureHydratorIdentifier("SGSValidSocialContext") - - override val features: Set[Feature[_, _]] = Set( - SGSValidFollowedByUserIdsFeature, - SGSValidLikedByUserIdsFeature - ) - - private val MaxCountUsers = 10 - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[Seq[FeatureMap]] = OffloadFuturePools.offloadStitch { - val allSocialContextUserIds = - candidates.flatMap { candidate => - candidate.features.getOrElse(FavoritedByUserIdsFeature, Nil).take(MaxCountUsers) ++ - candidate.features.getOrElse(FollowedByUserIdsFeature, Nil).take(MaxCountUsers) - }.distinct - - getValidUserIds(query.getRequiredUserId, allSocialContextUserIds).map { validUserIds => - candidates.map { candidate => - val sgsFilteredLikedByUserIds = - candidate.features - .getOrElse(FavoritedByUserIdsFeature, Nil).take(MaxCountUsers) - .filter(validUserIds.contains) - - val sgsFilteredFollowedByUserIds = - candidate.features - .getOrElse(FollowedByUserIdsFeature, Nil).take(MaxCountUsers) - .filter(validUserIds.contains) - - FeatureMapBuilder() - .add(SGSValidFollowedByUserIdsFeature, sgsFilteredFollowedByUserIds) - .add(SGSValidLikedByUserIdsFeature, sgsFilteredLikedByUserIds) - .build() - } - } - } - - private def getValidUserIds( - viewerId: Long, - socialProofUserIds: Seq[Long] - ): Stitch[Seq[Long]] = { - if (socialProofUserIds.nonEmpty) { - val request = sg.IdsRequest( - relationships = Seq( - sg.SrcRelationship( - viewerId, - sg.RelationshipType.Following, - targets = Some(socialProofUserIds), - hasRelationship = true), - sg.SrcRelationship( - viewerId, - sg.RelationshipType.Blocking, - targets = Some(socialProofUserIds), - hasRelationship = false), - sg.SrcRelationship( - viewerId, - sg.RelationshipType.BlockedBy, - targets = Some(socialProofUserIds), - hasRelationship = false), - sg.SrcRelationship( - viewerId, - sg.RelationshipType.Muting, - targets = Some(socialProofUserIds), - hasRelationship = false) - ), - pageRequest = Some(sg.PageRequest(selectAll = Some(true))) - ) - socialGraph.ids(request).map(_.ids) - } else Stitch.Nil - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/TweetImpressionsQueryFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/TweetImpressionsQueryFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..ce02e4681a9d19f72958eea1fe7621e07d1f07de GIT binary patch literal 38052 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%0AdX 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 t} -import com.twitter.timelines.impressionstore.store.ManhattanTweetImpressionStoreClient -import com.twitter.util.Duration -import com.twitter.util.Time -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class TweetImpressionsQueryFeatureHydrator[ - Query <: PipelineQuery with HasSeenTweetIds] @Inject() ( - manhattanTweetImpressionStoreClient: ManhattanTweetImpressionStoreClient) - extends QueryFeatureHydrator[Query] { - - private val TweetImpressionTTL = 2.days - private val TweetImpressionCap = 5000 - - override val identifier: FeatureHydratorIdentifier = FeatureHydratorIdentifier("TweetImpressions") - - override val features: Set[Feature[_, _]] = Set(TweetImpressionsFeature) - - override def hydrate(query: Query): Stitch[FeatureMap] = { - manhattanTweetImpressionStoreClient.get(query.getRequiredUserId).map { entriesOpt => - val entries = entriesOpt.map(_.entries).toSeq.flatten - val updatedImpressions = - if (query.seenTweetIds.forall(_.isEmpty)) entries - else updateTweetImpressions(entries, query.seenTweetIds.get) - - FeatureMapBuilder().add(TweetImpressionsFeature, updatedImpressions).build() - } - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.8) - ) - - /** - * 1) Check timestamps and remove expired tweets based on [[TweetImpressionTTL]] - * 2) Filter duplicates between current tweets and those in the impression store (remove older ones) - * 3) Prepend new (Timestamp, Seq[TweetIds]) to the tweets from the impression store - * 4) Truncate older tweets if sum of all tweets across timestamps >= [[TweetImpressionCap]], - */ - private[feature_hydrator] def updateTweetImpressions( - tweetImpressionsFromStore: Seq[t.TweetImpressionsEntry], - seenIdsFromClient: Seq[Long], - currentTime: Long = Time.now.inMilliseconds, - tweetImpressionTTL: Duration = TweetImpressionTTL, - tweetImpressionCap: Int = TweetImpressionCap, - ): Seq[t.TweetImpressionsEntry] = { - val seenIdsFromClientSet = seenIdsFromClient.toSet - val dedupedTweetImpressionsFromStore: Seq[t.TweetImpressionsEntry] = tweetImpressionsFromStore - .collect { - case t.TweetImpressionsEntry(ts, tweetIds) - if Time.fromMilliseconds(ts).untilNow < tweetImpressionTTL => - t.TweetImpressionsEntry(ts, tweetIds.filterNot(seenIdsFromClientSet.contains)) - }.filter { _.tweetIds.nonEmpty } - - val mergedTweetImpressionsEntries = - t.TweetImpressionsEntry(currentTime, seenIdsFromClient) +: dedupedTweetImpressionsFromStore - val initialTweetImpressionsWithCap = (Seq.empty[t.TweetImpressionsEntry], tweetImpressionCap) - - val (truncatedTweetImpressionsEntries: Seq[t.TweetImpressionsEntry], _) = - mergedTweetImpressionsEntries - .foldLeft(initialTweetImpressionsWithCap) { - case ( - (tweetImpressions: Seq[t.TweetImpressionsEntry], remainingCap), - t.TweetImpressionsEntry(ts, tweetIds)) if remainingCap > 0 => - ( - t.TweetImpressionsEntry(ts, tweetIds.take(remainingCap)) +: tweetImpressions, - remainingCap - tweetIds.size) - case (tweetImpressionsWithCap, _) => tweetImpressionsWithCap - } - truncatedTweetImpressionsEntries.reverse - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/TweetypieFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator/TweetypieFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..6fd26eb564aeed1de89e74c274e70485ebf5fe1d GIT binary patch literal 38619 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 rtf} -import com.twitter.stitch.Stitch -import com.twitter.stitch.tweetypie.{TweetyPie => TweetypieStitchClient} -import com.twitter.tweetypie.{thriftscala => tp} -import com.twitter.util.logging.Logging -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class TweetypieFeatureHydrator @Inject() ( - tweetypieStitchClient: TweetypieStitchClient, - statsReceiver: StatsReceiver) - extends CandidateFeatureHydrator[PipelineQuery, TweetCandidate] - with Logging { - - override val identifier: FeatureHydratorIdentifier = FeatureHydratorIdentifier("Tweetypie") - - override val features: Set[Feature[_, _]] = Set( - AuthorIdFeature, - ExclusiveConversationAuthorIdFeature, - InReplyToTweetIdFeature, - IsHydratedFeature, - IsNsfw, - IsNsfwFeature, - IsRetweetFeature, - QuotedTweetDroppedFeature, - QuotedTweetIdFeature, - QuotedUserIdFeature, - SourceTweetIdFeature, - SourceUserIdFeature, - TweetTextFeature, - TweetLanguageFeature, - VisibilityReason - ) - - private val DefaultFeatureMap = FeatureMapBuilder() - .add(IsHydratedFeature, false) - .add(IsNsfw, None) - .add(IsNsfwFeature, false) - .add(QuotedTweetDroppedFeature, false) - .add(TweetTextFeature, None) - .add(VisibilityReason, None) - .build() - - override def apply( - query: PipelineQuery, - candidate: TweetCandidate, - existingFeatures: FeatureMap - ): Stitch[FeatureMap] = { - val safetyLevel = query.product match { - case FollowingProduct => rtf.SafetyLevel.TimelineHomeLatest - case ForYouProduct => - val inNetwork = existingFeatures.getOrElse(InNetworkFeature, true) - if (inNetwork) rtf.SafetyLevel.TimelineHome else rtf.SafetyLevel.TimelineHomeRecommendations - case ScoredTweetsProduct => rtf.SafetyLevel.TimelineHome - case ListTweetsProduct => rtf.SafetyLevel.TimelineLists - case SubscribedProduct => rtf.SafetyLevel.TimelineHomeSubscribed - case unknown => throw new UnsupportedOperationException(s"Unknown product: $unknown") - } - - val tweetFieldsOptions = tp.GetTweetFieldsOptions( - tweetIncludes = RequestFields.TweetTPHydrationFields, - includeRetweetedTweet = true, - includeQuotedTweet = true, - visibilityPolicy = tp.TweetVisibilityPolicy.UserVisible, - safetyLevel = Some(safetyLevel), - forUserId = query.getOptionalUserId - ) - - val exclusiveAuthorIdOpt = - existingFeatures.getOrElse(ExclusiveConversationAuthorIdFeature, None) - - tweetypieStitchClient.getTweetFields(tweetId = candidate.id, options = tweetFieldsOptions).map { - case tp.GetTweetFieldsResult(_, tp.TweetFieldsResultState.Found(found), quoteOpt, _) => - val coreData = found.tweet.coreData - val isNsfwAdmin = coreData.exists(_.nsfwAdmin) - val isNsfwUser = coreData.exists(_.nsfwUser) - - val quotedTweetDropped = quoteOpt.exists { - case _: tp.TweetFieldsResultState.Filtered => true - case _: tp.TweetFieldsResultState.NotFound => true - case _ => false - } - val quotedTweetIsNsfw = quoteOpt.exists { - case quoteTweet: tp.TweetFieldsResultState.Found => - quoteTweet.found.tweet.coreData.exists(data => data.nsfwAdmin || data.nsfwUser) - case _ => false - } - - val sourceTweetIsNsfw = - found.retweetedTweet.exists(_.coreData.exists(data => data.nsfwAdmin || data.nsfwUser)) - - val tweetText = coreData.map(_.text) - val tweetLanguage = found.tweet.language.map(_.language) - - val tweetAuthorId = coreData.map(_.userId) - val inReplyToTweetId = coreData.flatMap(_.reply.flatMap(_.inReplyToStatusId)) - val retweetedTweetId = found.retweetedTweet.map(_.id) - val quotedTweetId = quoteOpt.flatMap { - case quoteTweet: tp.TweetFieldsResultState.Found => - Some(quoteTweet.found.tweet.id) - case _ => None - } - - val retweetedTweetUserId = found.retweetedTweet.flatMap(_.coreData).map(_.userId) - val quotedTweetUserId = quoteOpt.flatMap { - case quoteTweet: tp.TweetFieldsResultState.Found => - quoteTweet.found.tweet.coreData.map(_.userId) - case _ => None - } - - val isNsfw = isNsfwAdmin || isNsfwUser || sourceTweetIsNsfw || quotedTweetIsNsfw - - FeatureMapBuilder() - .add(AuthorIdFeature, tweetAuthorId) - .add(ExclusiveConversationAuthorIdFeature, exclusiveAuthorIdOpt) - .add(InReplyToTweetIdFeature, inReplyToTweetId) - .add(IsHydratedFeature, true) - .add(IsNsfw, Some(isNsfw)) - .add(IsNsfwFeature, isNsfw) - .add(IsRetweetFeature, retweetedTweetId.isDefined) - .add(QuotedTweetDroppedFeature, quotedTweetDropped) - .add(QuotedTweetIdFeature, quotedTweetId) - .add(QuotedUserIdFeature, quotedTweetUserId) - .add(SourceTweetIdFeature, retweetedTweetId) - .add(SourceUserIdFeature, retweetedTweetUserId) - .add(TweetLanguageFeature, tweetLanguage) - .add(TweetTextFeature, tweetText) - .add(VisibilityReason, found.suppressReason) - .build() - - // If no tweet result found, return default and pre-existing features - case _ => - DefaultFeatureMap ++ FeatureMapBuilder() - .add(AuthorIdFeature, existingFeatures.getOrElse(AuthorIdFeature, None)) - .add(ExclusiveConversationAuthorIdFeature, exclusiveAuthorIdOpt) - .add(InReplyToTweetIdFeature, existingFeatures.getOrElse(InReplyToTweetIdFeature, None)) - .add(IsRetweetFeature, existingFeatures.getOrElse(IsRetweetFeature, false)) - .add(QuotedTweetIdFeature, existingFeatures.getOrElse(QuotedTweetIdFeature, None)) - .add(QuotedUserIdFeature, existingFeatures.getOrElse(QuotedUserIdFeature, None)) - .add(SourceTweetIdFeature, existingFeatures.getOrElse(SourceTweetIdFeature, None)) - .add(SourceUserIdFeature, existingFeatures.getOrElse(SourceUserIdFeature, None)) - .add(TweetLanguageFeature, existingFeatures.getOrElse(TweetLanguageFeature, None)) - .build() - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/BUILD.bazel deleted file mode 100644 index 59284224b..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/BUILD.bazel +++ /dev/null @@ -1,29 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/feature_hydrator/query/impressed_tweets", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/candidate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/filter", - "src/thrift/com/twitter/spam/rtf:safety-result-scala", - "src/thrift/com/twitter/timelines/impression:thrift-scala", - "src/thrift/com/twitter/tweetypie:service-scala", - "src/thrift/com/twitter/tweetypie:tweet-scala", - "stitch/stitch-core", - "stitch/stitch-socialgraph", - "stitch/stitch-tweetypie", - "timelinemixer/server/src/main/scala/com/twitter/timelinemixer/injection/store/persistence", - "timelineservice/common/src/main/scala/com/twitter/timelineservice/model", - "util/util-slf4j-api/src/main/scala", - ], - exports = [ - "timelinemixer/server/src/main/scala/com/twitter/timelinemixer/injection/store/persistence", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..f0316e2fa53d1af5086dea04b03e276320fd68a1 GIT binary patch literal 37078 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 VfHx~J2Z3^xAVVTBd&KvEcmT;XSU>;( literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/DropMaxCandidatesFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/DropMaxCandidatesFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..f73f0581d43f1172f99fbd032cfb2bcfcb034cf3 GIT binary patch literal 37075 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 Vyjg)c2$ZV?84`inBc=z$0|0jDTy+2d literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/DropMaxCandidatesFilter.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/DropMaxCandidatesFilter.scala deleted file mode 100644 index 94943fc4a..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/DropMaxCandidatesFilter.scala +++ /dev/null @@ -1,27 +0,0 @@ -package com.twitter.home_mixer.functional_component.filter - -import com.twitter.product_mixer.core.functional_component.filter.Filter -import com.twitter.product_mixer.core.functional_component.filter.FilterResult -import com.twitter.product_mixer.core.model.common.CandidateWithFeatures -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.model.common.identifier.FilterIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch -import com.twitter.timelines.configapi.FSBoundedParam - -case class DropMaxCandidatesFilter[Candidate <: UniversalNoun[Any]]( - maxCandidatesParam: FSBoundedParam[Int]) - extends Filter[PipelineQuery, Candidate] { - - override val identifier: FilterIdentifier = FilterIdentifier("DropMaxCandidates") - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[Candidate]] - ): Stitch[FilterResult[Candidate]] = { - val maxCandidates = query.params(maxCandidatesParam) - val (kept, removed) = candidates.map(_.candidate).splitAt(maxCandidates) - - Stitch.value(FilterResult(kept, removed)) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/FeedbackFatigueFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/FeedbackFatigueFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..1aaaba40f90b37ccd9819e565959a1087b701237 GIT binary patch literal 37820 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 Sg63A0GQ<;D9=oV>-~I tls} - -object FeedbackFatigueFilter - extends Filter[PipelineQuery, TweetCandidate] - with Filter.Conditionally[PipelineQuery, TweetCandidate] { - - override val identifier: FilterIdentifier = FilterIdentifier("FeedbackFatigue") - - override def onlyIf( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Boolean = - query.features.exists(_.getOrElse(FeedbackHistoryFeature, Seq.empty).nonEmpty) - - private val DurationForFiltering = 14.days - - override def apply( - query: pipeline.PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[FilterResult[TweetCandidate]] = { - val feedbackEntriesByEngagementType = - query.features - .getOrElse(FeatureMap.empty).getOrElse(FeedbackHistoryFeature, Seq.empty) - .filter { entry => - val timeSinceFeedback = query.queryTime.minus(entry.timestamp) - timeSinceFeedback < DurationForFiltering && - entry.feedbackType == tls.FeedbackType.SeeFewer - }.groupBy(_.engagementType) - - val authorsToFilter = - getUserIds( - feedbackEntriesByEngagementType.getOrElse(tls.FeedbackEngagementType.Tweet, Seq.empty)) - val likersToFilter = - getUserIds( - feedbackEntriesByEngagementType.getOrElse(tls.FeedbackEngagementType.Like, Seq.empty)) - val followersToFilter = - getUserIds( - feedbackEntriesByEngagementType.getOrElse(tls.FeedbackEngagementType.Follow, Seq.empty)) - val retweetersToFilter = - getUserIds( - feedbackEntriesByEngagementType.getOrElse(tls.FeedbackEngagementType.Retweet, Seq.empty)) - - val (removed, kept) = candidates.partition { candidate => - val originalAuthorId = CandidatesUtil.getOriginalAuthorId(candidate.features) - val authorId = candidate.features.getOrElse(AuthorIdFeature, None) - - val likers = candidate.features.getOrElse(SGSValidLikedByUserIdsFeature, Seq.empty) - val eligibleLikers = likers.filterNot(likersToFilter.contains) - - val followers = candidate.features.getOrElse(SGSValidFollowedByUserIdsFeature, Seq.empty) - val eligibleFollowers = followers.filterNot(followersToFilter.contains) - - originalAuthorId.exists(authorsToFilter.contains) || - (likers.nonEmpty && eligibleLikers.isEmpty) || - (followers.nonEmpty && eligibleFollowers.isEmpty && likers.isEmpty) || - (candidate.features.getOrElse(IsRetweetFeature, false) && - authorId.exists(retweetersToFilter.contains)) - } - - Stitch.value(FilterResult(kept = kept.map(_.candidate), removed = removed.map(_.candidate))) - } - - private def getUserIds( - feedbackEntries: Seq[FeedbackEntry], - ): Set[Long] = - feedbackEntries.collect { - case FeedbackEntry(_, _, FeedbackEntity.UserId(userId), _, _) => userId - }.toSet -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/InvalidConversationModuleFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/InvalidConversationModuleFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..3d0bde5cc214d3685e05ffa4c07bea3fdb63dd8b GIT binary patch literal 37554 zcmagEWmsIvwm*z(a1HM6?hb+A?ruRFcb5Rc-QC^Y-5~^bmq2j$e`jXSIWyZr@$W@Fu$C@a4zg#7jV6(fmJfXGu638QSsj>?WM7Duc){gz8}iSbkh?D2krCroul zAq0vcHY4@kn_#t$zsswMLR(bqR981cJ)Z=;*eicMkKxRWb6-4`SZYyn7k_RLs-`8w z>*F*BDAR6DKaW0Y@VQ8iRzRZ0BS;iwWwaV9;ZQJ)68{)vXm$P!XKn|nor==&2<0yA zm;EsXm)8kjSCU6jKk=;BB?bz$OsjObHh->^FoO$KiLV9?aRZLEE|awN4(6)%b*sIF zh;Bph0OTKgHa!fk;KKNJN zOTKg#?K`gqI;t$DH3PHl zsa@fVcKId4QJ|>2vYs2+4b)@@>HwE{17Gn>%kHNGdNR^Ub&n}C=Z!!`U%P37Ure>h z=UR=?OWrV}Guj;I|141GS9oO$;AK7oED#E?KqdfV1qXngBcn0E!SweL?Xx7h|5EE68@sIacoxUx=5B$FRt~KT!6xtUwVl8^XJa$C zad2EPVMy$`zsWavO^mlyBh0nuEO8p{%EX|)^PZ>KD++TSCCz^ z3!yxu19j|db6=;3Gh393a*srmQDm3DstLtWwUHta?W0rw^!FzSizkh%M=5PCA^^!i zDai#5OByhgnbL!pT`GqSblA3raKWk4lHWPn&}PP2Z9-Ues%d*NzGC+E!Pi0v`t@nh zKni&8(szaX&%WHOu40`4 z`(h0N0)qVaz8Kos{m~YcaobfUy)alP&MXBQg1YINdRrw1OzK(coFsE@$WU{l!#B{Fh7Z z!@xzNLgUg#iXxNzw{q~;>M!N)CDZ)upLTDLHIot%5GBA2Us)l>-ODYgmO~}5WQlN@ z4LUC-zCc*Qdph0Lnfye_F}Kmi;+rKEIw7F5yPEy*FaWoQWn8c&s!M~J&|%H#_*NC{@Jh57ImU41EU45IWM zBE%D~$kGd@7|n_(v=)9$d{Zi#Z|xZ1`WGkHhxp1Xa1GFJS9{L~nKft$LKb+-Z75{k zQ!@hMwc|DApLZB4i219AD9MuWpN$A{X^pAR)DI6u7qxWdv?DRH*>O-@$hU)iT0!># zl#mHl{MZVgT(ouw@4w)@A~RgtFduF`I`hLHyFzjKwA8~AB%i`szm7(X6Zp4SZzd-S zOsa2^@rGnzsd`$=$0iS~N(mOqf9mW=XMABKxPVQ6yvBW>zx_q{&kG}MUFW0=5(I>g z@Xs%-E5N~o5%{fjwgKLpeqR}rn%eOz9Oyph)m;6em@ET5XGsNQF{!qqV=}Y0{Y~CW zqfC8qwRKHg{|o8`ALg>U=&_b zttn2?Z>>jyp7szc$ih-&kS7F_sRADB&p+oYL<_TrWUz%`MO@9oHY<^oI~WLadobrm8g9uUWINtLGI=H%K^}i^+sl?d=$~W;Ucegir69T|+jt zYK*mnNm9sc84#(;eBhXeP%kNGbN|YMX7rHqX>Fpi;!bIzL0c;EXpbd}-hPQ4AL4uJ z(2P-C2f!AJ&6i%S#74+W+Gm{F^#bRcIE)4y{*}q#s%YW1K?}0O`B(V#O!CUv^@z80 z5>~HD2wU)Mv+x}%QJ?MsHAnbx4U}<=RUwVVRv{&)uI2s`>Nwuz$kpc0MWdf_Hf2|Y zbm&bDNgfC^TO+?|&$j!2{7Tjf^6hoXfTVzA7Y2oR*MPt7NB=LjBq!U=FwYFy=cl9o z3RZH(W|pL*Uy&Q-Lk<)CGK|D;7^zG`AF@*IjZ>~fKGrKvR9~`61_MN+#7NT_nMmPw zA^G|&)ROE`RVnV<8#oDSC`2bvzOuN2MvZ6RyeOoSEa~&M4&mghEK0cfc(~7%dR{fEL9-{Xi6;4ZTPfkdy^@l2-b`AZ8KL-d5%q6ILT%d30JS%=a zeXRMMhultAW{Al$*s~9dK%B~g%}U`%lS&rR=Z07kMLhy$Mi}LeHN`^x5Lf~`d*A}M zRweI%c$`Ci0V0WRNGNQZL1cLR=(UA|3{k9?>i4YFYY%1NUyrEa{Gg7Brv)J*Q8H-M zotOYs21W>xz#nDlr#Xlq4$(Y`5I!yz&J+qz+Oy93IqU!(p<|e@!@Rjg^;H)}L}Wr& z7D6XSeK5j7#?K%F@-xKB(kIN=-RKr9Y?wpHW)%tsB|lwUijuDt?yX4^$2C4ozJ83+ z37%&LaAdZhx9tsd@zsV!pgE=?k2a3V)Xw&bl%9LRX* zu7?87Qaef?AE1pbf1)H9y2vn%l#@GvUyMS1hF;h$Qi&X|({wc$5zyVxO4YR$I}1T2 zo<|O$m0<{XK1P5zqT?-!1|S>bV>q^FFsE%gupR5nsFpc^0E~RmADs2@-FtUd*bNUD zZz+CMw9U`gAo?1u>#s6Dd*NEhpgsgle1TGxJAsU{{O--d%*ff!ABj=Ax^nzu$f6QT zfBb72h7-A`9Hv@QB(YvvdA^o+B}DnMQPI-2Mek5<&*u7RYl2OR`!kIX^bh=wAuUh z&-KfKR__i!s_ELM5>Kt0(of^-#Sf9OS~ucnUCK}2e5EM*r@44e)U<|&i)DFP2hOwg zw_HinFQPQ~B`B7BS3J&wE~UPx$p%@PbXb0(ql#Er8$q7DHl`Ga`GKAmKi6VbHI*DY zw6O-_5_MAa!#A9hnHHB(;&4H*EivAOm6FQ1-`mWWie2s9^ZpI`pNqY%A1*2ja2GHR z+y&qPcL9Ga_J8hS|Gwn^xt~oCmJejY{(Alf*B2a*USu2o@mC&2JB>tjp;xfPO5C03 z{-*Z237zPU|L#49cQ&QX?Bt#D!UiukZNujPt_UzB^x0qqQ&c{4q~w#HdP!Abt4bnR zo|;~c&Lut(*_qSY#4iJ zYnaCqE!y{gk=2Pr)rU~K&j9adeK4>X+cjG-1`%`Z7EKmqDXhs*-Uh!aW(^nSBCktR z4zddVIBCUYc{7tR;2{U=e(ySwx9 z^d)i}&&1%uVYoD{1xB z_Vp}XaB&#$_89&C_`G-?RV>(iva9>>xPIB5Jm3C&IQ#RqJtSoJ*!{JR@6G1DZ6lb` zXN6ENsrX{L|1czZe|voOq`CZc{N$>^ea)J)Sdg%yx2IG7D|cu_-TRG2y_Vo>u7I}JcT%6|d?|bf-{J4tXD`oAT*r4U>mRW{BS5}>UZTh5$6M9Kzof5wfR6lkb^;VD1QzX^DIBA9Wprn!GIJLueUTomBCky(xhpV)E z@t&d)SBJ&i)F43?hMb}DOo!AXg;ZAwzSih_YYKXE1v7TEN1Fy?`M$m#_M7>_yxy$8 zI;H8n)c7oSZ1V9}x}KkfBy*l+amt^(d+VM1@KGe4_r78;kipM2jAO6@hI+$q}=rw^Rc^e)!@>0 zVCqtKKO-2HBW;%;F)I=FsS+Ah2n>jMhf;fm&iXjJblnV}S`1Rc>8U)11d9@?Nh=LC;*3gX$2K)0Koqa=w1gbKfdceOh_(43)sr7I-7#w&=j?ioo>E%@X-kp zCRI5eDBb$T9|%5oqe*qw|^a$y1N!UJr~GOlxWnQpS$QkxW4{**6*0XMjPCU zSEwHO-hbd$Mv!q$r5Xso{C)p{-1mZTQ9ivnIouNBd#Dxdx0*6>E+LdyP%#3-0+z0x z*Y=)EQrz&hcMVf7|L5$I2!MJtW2Qw%O!K$kMGYPotmo6Wi=Q^M83aQ=P`ogR?_hoi zd*SO-NktTra>Waro0Y4Mtcks-5J!KORFo`1RZ3tj52D*grzMuAU;GRcC)d_p;k${) z_@Fk{F^s-Y(ZQUa52|Q=nce(aij$)CjqdGv-J+AX>U^MJ`CAP$>!#F_hRseqasdbU zXBee)IC6;ILos{ejf%{C zNf;$kTGRl$xMn}1j6Gf6=vd@}td8>FEph;;CfBI85VG7ACUQ`G2jmF7$Q5QxKuiZ@ zLC){VFThF6e@#MclL0`5|BA0_#35&ZV04Ec>66+3`xo{pTO2Tz2pC8GN2(SOEf|RV zkJLY@AWA9EEs5R!i{M<56gUF+hl->QNR!SMAzO885OE!*pVj6P?_U+5V(95&t-7{@p29EvixV!nUzXgiwI7CNv#Yn=s(;Q4$RF+>jOJ}WL~aV|Hs6X7M%nH# zEDI&-M4hw8;=DiGeGsL0pEf|ITPwxS*c@CVx;yi6S;}xl7+mdQ@Ey*Uv^jBzJ8b_kNb!zFrQacOZR7aVZKZo4D(OBa;l~vPSGSX^@|P*ZQOwYjvIaMB zh+!I4%H ziPEPFz8PYu>SRT8%O-X1J0|)ICyUu4k4V7v6Gqn8YvgHk_i6SG*|H~fV8h-y{lVtB zS$U5^@TIF0?lZ5<;Ly&#uQUhdCq@TOOmhMERSi7dE*m-@zIRu9pFGtdN=8?U_Iv}J zcC(imY^$$t1c4K)`!I5!SbY>yW+;+rOC!h7<~14Sng?&m;Ai9MK;?~0DxWfFm(6we zbwo)s#$hS?TZbL1I%r!zs5_wOj2^VbMgIKUlv`!u+@FY^Ik3$W7Wk7a$}fIRGQCN_ z_~e*1{n~f+A_rwLP$GqZ?f5G+_mi8#kTl&e;?$-D%vP?w-xepsB0xu`+rE99lhpgA zh-{JVT->+{E0VeM%NhcsL*xaCIr8g4=Mnnx&VeW)r{br4?yvB&EeveEPPtN?I$tWH z;i>JaKm#2Ski9I%ZVRc47-ieHrO~{-V43j^xwVQ4#vVOFG|?v8iHgxshP}TUo%MI0 zE6;fs?`7?t@fB`LuMYxB%eK{cAAZ`Wqt6mHZ=RF9zopH!PrE+d3}3xn4Gns0Y`YZ1)6V|ZgCkoJYdJ-dir9s> z#&m;G+Te27@k%p0VB-WH`{yx>hQ&}o&VG!1#(V8DX1ANX-W;iLiPwp$UD9@mA3Gk@ z0=PjD*ii4VVCpHI4=8QNi_`ydZj6^U(UwBesqZ& z3jH9Viu`LG691;)>&Ir%DM7$ZU#p_Se14Jc9Sh#r)!4H2k!;6RT+jD0IvwTcUlV9{ ziFr6H>W%70p~c80so^Jcw$Un`N|Cn^`_eyZWWB|QM$3kHP6U@J>1J?~STCd@*xg0# zOP5be%dpaG339zuH6#6fGf!+;2VxW*u}K#3>ZWz`Wa$XE7x8JlAT)(vs1vvy!49M` z08;YlckZVB*ADmGJVnO>n%dF4krLAy6O~f%cR1PWO=|``RKXu2`8=892d4Eh#g0Ai zwhexK@1NdmT4i57KaX2XQ|(WL`}+Ry_OyV9RUwU(!Nk?Q)eM z-z7(Tv(XIm!r<+^nR74rshlK=7!E+D_a6=U*~v7&dUf_K&OMuDM1q>W5rx z7%qbs@8F{iG3-t7TAQob7t3+AQ#@Y2%wgy=iggNaAf~gH%HbgCRFR3@z+1BxAdlp$+^%MX6d)`XT7hE9EeEK zMt!d25~7T$a*u(6Jn4jw2t&Zzg+_;FMyO`#i}d z%(7bmZ)R;?pIX3QTzHp3vh275>1o-r9WEP#IqH7zUS1V z>gXdGDvpGdw316JvF8+>#4<5`RmGFRVqh{{2zpJ$Kf78KMn8 zwpp)Pp=};dsu^BgA8$cGx1zHdCJSJ34I=Kmwj%A**AdnBQG+yor<;Ru>@V;z1B z4^di5ol<&`wAR^5U$)_FTY$oRJi^Q@^Tg{aatVGn+@J;~58@YK07>>KF)lAGfbznXv!PAyVwK72wgJi52M zCF)AaB+s`xTnWe5F_kJke0{r6Kc5E=Hrt$vbC9DJYsdROByb_-SOIm!Y(}Al_OS9H zu1$Q*FKDSDeHF3;)W!uXM!Y1FPI_b#`^(O<-qthsm$+=!=ZJL$jDpY&4ec%LqsUG) zIma6gXX`~5w@nOZm`+$PYAC6##C}wdS^Frg3#bNeJt53o&N{kWPUD_1!k~*i4&I_( zsXI&k8Qih}^ch^MVgc~ZTFzfqQ5!>Nb9Gq1AWU3gJ7o{AAHR%wD%gQl<0XAhk8)7F#F$<(%j3NBUrozzR@{;qW_1B; zOWfn}+n@knOx5gwhNQe0GlcE@$u$h`2EKyFNEH4ZR}+ZMyfpyd5hiFDfJW)qSbc<` zD*WxphV1Kx1VtXFCzpMZBM`^`5HW|-TtJ&nXCp8G&27IXXu~OE7g!^Jvq~eK2*5;B z1aRPoHl7W+45>57UB7sQpbUhW#1I8kg&j>cuMheud$#WvBIYz3@Hykl6*+Iib~tE= z0C=V@!8ZIjhT%s@ZX}Y(Z_GY$!SZchUg6SQJDO$xE>Xb@?%~$3B;ndFp}2w8KJ4Oy zx3kkHRVCi%TN@~)m8}q*2sXqQ2QuWnqovJP`fnS?_GNU=oVbv_ixjr^7Y*EKT;g)PC!?k z++f^(z6<}}zWib2q%>F-OA!D}$NbXz236PSv*^j5wb&}2kp3!TMQ|=4C^-TG{(9(z{9;W@<$2Q#!{$4wWTj=XF9Hb zN0t_aGs^8jMVigyjQN~2C?onskcS20On>3Ac&7<3*=lKyo}PRO+i@^w5XoHm%A)vr zkwT3#|D0u6U@5lyTf|zJ`6uk5S%lnNzN_Ntc>a#|k{U=do==vwhNH#h)4_mC3PP zc}f-cS&$VJt(;fA(T?26+W;hfbDaYqu+Wr*Qu0-qL@4=c&={uRt*;qnF>F_=jhEEl zQY7A#EHed*y7+u=MSu{~Rc6r|?Uk=uR$Mzh zul_`uJv(rCOa*qeGF=?*cX4;E0ztQwu`&%80Y?J{7ft)IaE>AS8v(^9&SsbrX}5A! z{^MU_a^gZfp8kEryn;tsV)-OQkoxhxLX;6-fK&kyglc;rY&|H zozX$vL(qzVuKHn1VKi#E@#V<=!)EyHzu35)|3BHNM%?^4FDVye>kq#aS6ga9kZpcR zJhu4dc#8o#ddPO!%Ja>yqdsj`Tj-8F8T?5+ZzE`hS~)!*7%o?}@_VpNO=z zMNvq;P%HO<38usVU8Vj%t4TEik#+7Ccrx-cAR@i>e`y}mH$TCuYz_b;VOFyIHa=!F zlt8yvaz~XN!-eTNd*Zt-`KItqdb7*jmkUR@6zHv$wuTQ1rMg;h1y>C85KTS`N*`2T z_Gs`dy5gx`jdF))$YbrL7_=7_4Q3I~C^F^Br3f@X9rd>{umN z6F&vwK=dgabf727E*Vpdu85ZID@lFkNJVu_D)%Cj=Z!$bgDp z&QPAU|6YU~ivHa{9)vpvjSAFAh)zNexi+P$2K(ED3rRf#atyB~iRXdj-!zhzr)en` zE#^x7_Pxyi+jnn>hK#-UsR{E1o(l)wpT5OMfsnut<{EG29|56*PQil;CQWFmji=$G zO+!;0vgdzOc_8syr7~dyP-Q>#Z zB69Zn)!&RKw;)beD3bFKYUppFmIgS&Y*1H!X?>2;n}}^r zUq(J9l~KP+6v$QV)24oqF|Ti3)=WzY9E|5OUsQ@4FtITh|FV+-Oq%*LiR*tRB~I?s z-yU2IaECdf9{#3EsX(y4kj+3Fe;DA7Wc}#TfqGaW-uQdo1=j@ma8CYyETjI43Pk#q z3S=kak8yf(DVYVRCS%H}FjKFcjG@#I{CZ)I3wc_<=i3ojLLHBbJx!-H-R%MkeeA&P z<^C8?iZkJ0PF>{7=Aulx40FUWXSs1BpVADs{6h)H2+>q&_E{pg`93pl(i1c8e-!58 zAK*I+WuQ&|snF$rD!j_L4w;PItl;oa%oRQ@`RFj}P@)5UHIVy*eq^?);3Mn4yUL(w zFJf=mf(o>zwb6@c&1Pm)>?Z#2JM_`x=6W~Xd%IvqcCaG0luih;h07Ybco z{F-&nRi= z5|Js;j{<%h1trC|3h$MzIX{Pxkh4*SL$`gWG}VXdMrs;B-cm!h7{QDdj>$Jb8$zyO z#6^cvXV+{fm0mk*u3?n3F=GJSir4ddDqGxHKG#6ps?8g~Hm{puCiQsQpwjgQlehZl zrfM{76YFu)^`iD0hW)0N{(~A7NDVFhd-pxjy0L(eWbg;Ii^({UnwR5G>L282;fVhS z^<~!pY)4qO{)SiUr%nUdn?2_~{6&7}JOU(FhW>-RnVAhOoZy_)eZ9?2|5pBo2G%yXO#Jt@qp{C(ain-xjp-m)en97Yih!`_P2%y|+clb?W)qb*I)37#}I zisC@HJgw9A5m{1L`Rp1hXYR?coP}jsh)qLSo0lEnQhxcNtoliJ!|vOHk3Q<8l-4U8 zNg7n11%`e~>HSyYv<1*KitlT}K4(_t#t<+!H|?%b!fdh&FGHfmJQistYiP2wp+&Gu zQ!103a_D$g=V5-Iw1><3m=&vtZ%Xp0i)Jaxv+?= zzl1B_K$L`REI}QJbcul53^z~)NmRxW_+wZ-g%h|L!w!&Z>^^uI#&qawV)I6_@&Aa6 z6#gv^JLp2>(rRSXXp8$-4Iy(sL4yw{5#;X==sMsBRFe-VoutcaKtoQ~7G&Y+DE<&U zQ#5f$j~+VHm4v{vHe*t9W1A1?wc7jzm}`g!CS#9l37Q_&nQQtKw6WY$JFs}CWx(Q{ z!a$GsTem>`vv@YyI)4?frqjABWpXK==`V$F{qXxIc-!N+l#@N+mIlg{Ii+q?Fdn6N zs9>rz(2!ekW6Z)tVspFJ;Py!!_?Fp|6xoR3-fKw>2?7eDnEzI2WN&w5#^T zmTOsdotRBi&AoRWJ#b6#SE1)9o1|UEktm_(xl4oT&!kh|NY=6SpKaLZxU*?KgGR%< z#5^_H@?4ich{$)^!!maxGIb9cu-S2;SPG|R_vGYA(9HLXJQb-#!&$|X@Kjl=CzRQH z_PuC*3HSka4NuW^=-DSPH8BlhCp}ReEtNA~x11wolWNcB7aZjYb=YGnh;7)T^LLnm7lmJ_x5yVug$!m|fY`^z&11RD$I?9X zi&L65K>;0=7h@&i(`FIwUz zsvXv{n7T1>(3*N*=mcSwFyt1LQLkA+)=;lc@=!t_x0$+Qu^y}qre#j(S-S7ilgd~H zRTIDnuznHU{z-+opag&i76E)>I&~ToJ{dokl~By+(mg8st72*c$e!8cgd1Q-i)I!-#vXWOc~ zcR`Ph-|0Fc&tG18wi9|Z|GQPw*&e@?uvjabM_yJ0C58T~pB;3m?nx0#_tmTSg^l;D zS!kAG1GUxKK&RsZq#|XlzwnKe^%t06RNRkAIVM9%vPvYz_d#-vc3gcF&|f+BFC^!* zzCjEO#5CiH8fAsxpqK{uizE6JlY(R_pZt6(vlW}gZ}oAe&r{v3o)njUkz}vHG1?e; zl-DN&zJ=b>k{>34&nqo2qh5#9Et2OelPj2y<=E4#WOYlZZ43|(B|xk=g3VkoF3(;N zB^UUNtg>_B7FM0eYVRccbO6nd@rYb>vo?yhjGe=h-L(N2OIXA`EEdTw4Hme;E2+j( zC`FoIQu)Q|{G{kiIw{9Wx@nm?=~}%Oa=dE^*?lFtVtp&RQnK}lIsncGpYfs50X>bu zZSy6kIDoLPAdA z3T;j%QCO2hAQ&$*IhRH?#mD zOQp`JaG=g&xGA-LXewIzSDgT}m`Wz0Vlh=+IBa>O679VEn?|JR@nUwEJQFGazhTb; zS(R`j+px|Cp2cz47`Q5iwT~T01?c|Q0fa9<~0POBv19l;X+hK-JdkCVIHr;qCGUV(!%mO38%z3iHaD%p5 zF7J+z@Bp7vJNF)4xbq7Ze*N>5c*WiPej7vzAAfwN8oRJkQAUF30*QaGugh~w*+mP-@)s&El5=fJ)h>6401?0ve{;>^V! z*;P7V-M&6tFW}JxU#`y>)Wf_wNsA>55~1*TkqhNfEL;4e%`EfcdxXacxXy8W@4k^l zH9hALICiqVZQ#!)o7^`tghF95`3@trcNn=qhKrXFR50?|E3PMu4n-kdi{>ah$i-Gj z(2kgbYIaE_BAvCUB=?=djios36xa`Ri?J-MC1B8K*qA+i5EA4BMXX5IV6+D30CEZm znTmXw2`#R0=5}RhduCOJBxPIM&n-Gt$&u^^20O+)n&6SKla%4Xj1JYOj&;j!1a4gy zm8i7w=B9%~MSN;d=YY=@6A)??!24z5Xr4lYVpyWZ#8^Ps`C|t|%ix4uMTCYXw8pZV zH9g%O4z}65n2{;!Pxj(99Rpp4#qlv5CZ<}J%nJXZv6mSy7IOfbiEOA%9SdVhr1>xL zr3!6wHHzu6Z?87)6(2SZk~BWD(2n0$jmZchCM51Z&6+_qYL;TzXn@e7VJB*&PE}Z= zU$MA!(yuDiI9A9Ixr8M;CnQF`T#lG!BaK++OI65_bRHz6r=v0?pO~5=V5exL$}I>P zn`WJ?I>sWlpVrp}AG)(%YSWvW9)BoWLQNSq*vj+|>m_2v27O_eHh{>%2_rs9pl4J5BJ3h41ZF2A4zo?jiRM-)}shGkCjkap1 zIgNofSyJ4Y2tBNgM%q-L^rW&9F?dCVgs3n~|C8hf5P|=P%yG(uHF)Gw+ zFeLV@Df>jOR>Vwu-Pwb%6tB>PVScEQD)bAL_JoSIe(214qH2T%_dBpXlGWV%2Sq{S z`)T(E^8f=QQ(z+jNJ%H|0-nk&RwCBUNDCvlkJfeLZK_75R}~dYL>a?lTi$(PiNy6R zpmHSBV-Q;;fA1)mpqWqSiohJ(!=7(f-Ehp{WTDMWI#{ z&;DIQlj%N#yPXvZ$QYjpc|926Co9hMkYQ+FgrA%GFCAN-?we9AUYKT{y5^s;EP zQI4;0m{YSdr@0g`ZGGp|xAvo5V=f}mkuyPvEJ{ECrBVvHSPHqp9AOX`Ff_<2L?uMN zJyys8kay~+6*}`2Dll|_v&lg~qg;u?k7IfSj4kgC7@8Y!8n(^$a)1JH1hy|p?RmXR zNlbh02Nf!7S&9-N1!1g`t*0(d)G1XP5lCOm5Bwb9#v7KI3b_TvN;ot^N^)lP!o z$Rh=QD1dJ42j++{=7_*&;yyuPfLU21Efps)sgEooVmNTBbcF@xfC)qD<^*8GI&bUD zA8Q4towMcUM&OVsKD8j&zUHiD7Y(IZDuQOKh+#k?<#g%hR;2(yXSJ!aJ)~5VEx^ zx{NqpJv?@0cS5``S_8CASMp$>~B5`D{)7?v7YsRWI>s*c~_$gbHw15ft+qhXj$-#nZeyj*MQn;(N6BF+A5`2Xw5J>4SAdKHY+W!W! z`3*GZJJIPQnfqqG07D(IUTPZ7XN?u}2LfL?aBZrDFWwA0@;`;ath3gUY`Xzc%Q%_hTL?)V!>yKkbpzrqucRMcFra# zJ@ilJEU>`-hAKO+`FE=Th}W&PVP59ymLGp*tYsC@l`EkZ~9)J>+b?6H`h+@ z!f$tX-0Sta-Vdht&(hx?&)=WkPF&kxv!}<`b+4Xp&)Tc2kGIiXNaL>hoU6mGQwCgIFWrl$2ZpVyMox;UU-W&QO6;SNE3Q7Q1&*9M$8_4p*~g&vi?bzP5st-Ag|1p06Ah*Uq*2-a7o% zcfLh7kI7~}zP|5Gy1uTKyQ|~g1>KJft^VgezU~709i?q|Zu!OU-0w!?j`73ULFpmQ z$@?C@EuF5b`;HF%>9=PVw;rdQ%L{Sw@`n;Mgk0A(`uZVRD>)&ngNu85HaUX+>_-iaq^)`vc7C#&56PC)hIf|_OJYs;I11+6BO z*a}ai;@ymkCFk|F#bugIPIAb(&r8RKH5OrZJnv_Z7Y6aYSKs%=b=^8Xep`aR{o=vZ zYoBBSZoJjEI(~d!0vd{y7%I*qOQNf9Y_IYmyv(}|k z^Y(cXPZl10>1n}2EEeC#npJZ|=vm71i;7|X>S~*vm`}F%ZEhO)wkDSr-7*VJ zCJ)Nx)8*)FQ%i#Hm(|Tq6PSQ!**6Bgde>OaR08S`$J?#Q&@`!KG!}?9-lN_3Bo15~*#esxLjOB!C(b40#&(GVBeYdm6_K)vbNhiMN zNzseD@3@2q@1=twldB%SUOCdx{O1Juf&@v`Kl3tl>hucwUmTyx4{s>jBWgu)0p%z3 z_(pj81p`$I}5H@g#_3l>CQv>g< z>v3E11ABMX-Sqg%t&L=DM%G!E4eR988EC|8;=M#-5-$o~7KJOiZX~gbsg9Ox~sO2wAgBupK!pddJj&o z1f4;o-KT>sZxvpa5b84g)PD5Ss0qUumru4sA*eMHTQaa3q-$VY6)3i#lMk9;3!zPZ z9?}EaAR)qi^nU#~+n7Cuk#_J~7h|POAc)E;zzOOV-~`bra3TgcQ6td;Y4>jkyakwM zkk>TaZt|VqLI2AB9ppA?1BzEv@*Ab$H~b$ce-HRO%Kxqco4py*E+uaTj7w(578DQ4 zq8S7+FbD|7{tvBxNm>Crrbht)!(f47R)2-{0Bqs6n8X`@mefaSk=kEc3^IRj* z06C{kvH=W31%~~$hG^wbF7{%W?T|T*8SRx4c5Mi}x@P7Dm7P7yeIo5ZN7J(}z z=r-=N;lkzebjH)_^?qpefV$6TaAW90}{~!R-;|)WP%T>sn?P2480T#`8~x zD(I$mlW$p71Rr)<1)XiY$YMApXvOiTUFPc9{IW z7ta>XA}{Vqw5ecT4hFzfFgM54`(jBH&d|Mb;L;MJi5%ki^~C~YTpggKzu0Ldy3Yr&qgST82t{WpYFnL~VOK$!-jf&#g~CsGf6X)6noi|>f*YS+l@ zy8@M=_fq89l3&A`ECjP%>Rko61tS*;EtfcfZ@xfg>RhRIbW_b5aiNa`i`uoVnk4ha?66O*vS znfvUijd)ZcL8I^+=_uk^aitT-M*K|_tae0{4GA+KLnXFis_ZEYL1p?`F)^kRu3OaU zMqOxLP<}x5mLm*9{;{F7YshW+9^k%zB_w!~pY{57z?b7`pfJ#TkRJ~gpHfXcprNFt-=@MMPfM18#`clQ1pb_?Vy75uqTvjVST&lGVRuOj2wIY2(Lfj~^FnDH%~SdbgGa?1rFU zc<2Jk4pIgeZ<}kJc-K?|Q|(Jkdx8wrDcq zfqiysEEw{N%Q62t`N_gfVS!OGt>EB#?G8yb05E}nzDkYdDVg)=Pw=CF8$2%x-|fY> zkhFkv2iYx09=RTGPflo1Mjxk7uz8&Rpql#7gR#2?GE#)Fw(G23w-En4>GZBgotxvq zqdMX2*Ug$?UusjbvvZ-C^yxsR8P)aeQD@o6i;MR7aQB>cv;v&X_ zcuLko#aE}}DMw0`dxr9ieQ!gmPnX7Dq$L}m;P2nVb5|5`i2}LGL$gUij z2f~hqBL1q)@|dDawu%CMt5B^)du7qT+M1{wq%V2 zqi4wx(UG{wx*f2~wyegwTZI!-4cJijycp&32pUSlx;6YXIFRZ0_H4>a)D&jQjt8U> z$bD5{9Uz@w17nVA&di}ez05`D@*BLFpSv)&!+?(8%Xh^K6d*Xq?WL3sq;sm19 zd4tSYfOAqXeh$V(4y$O=@AgYit)6(Ss_wa(vLP(fmkC2>udc?}^NL9b@n(&mck){J zgLbk<-pW-0Uu&{dLM|`VT)$o~JU%n6+vcI48*CTc4_NM|xLUp^owp78O2OS^Zuc^p zi>+;a@1T2DRP|-5v&dfP1Ymkfv6u0`om{R`MG{4cjmEdSTh(YL^<=UsWQ-04{L)_wwl zTR*#ADBwynY}p{~8zEL&`cO#3`geFY2Cbw-*pb`s$YW&1OJ05EPDqG-w#+p?+IC-l zLjb=_h%_#jILN^pW%PWx?&DI*ViS2^Dh%r&z1OwR!7reLl#Lv6{DjPHxD2*nS==2U-2UA9~%hMPUljy0?fpSzQ?<$IA`=?}elLSm%jbuF(; z8qzK&qp_6!4I>oaHQSFtl2c*`%$=i+b?JfHpGMcQY3eBl*P-m>8FfAP*9aE*T3#QR zFs4H#0kWcST6V?Cmq-jnDULS&1FftutEH>ee6B-0k#N~1THs^hm{bb(KmQ*PoL*4rTr_MCCn z#R4DiWuT>%s&NuG*wf&O1GAa6AQy!2vy^Plkb5($LC9^B*PGkX`*K?@hy+J|>P393 zXU~@S8gUcfdEB}v)%c4cZcDH?I6`ZTNIUo2@v<*Q2su@qyNl%Bwk98tTMYH?wkdm@ z`$7-y$hND1$q%U2e89(M)wE!QHTll$6nUmpC)-qB6*_sO=$fUV%q|9^G>j;Q;* zFPqMs?c7+%-~rwT@a^2|a7sC@4rHr&$TEf8tMY|@*YX0nFZvTqS`1|LP4F(Q$UmX3 z5qV8plw=$D>!Y;?dqAN!MoBia^zYAkqPy$U>#Kkxu?-vvDZb9SZ>?GO2lD809P{JQh(@|11O@#YHK-3)9` zy9fK;XvLD!Hk-?j7?;%+w|aJ6RYU2uDzZgiu+oBJA4+O3VM03^@Kt_|+T8;LMhArS z%Ins&8cH)Kuy2PnAd}@uZ6Ck;gf1f$eWM< zjZMDibdbMkfq#gA#TBXfsst2=5nOaxr%J9r=W&Im(IL&-=H3vv-o-$@SvhqviBb>} zWpkJUe4=;?ZCfdBQ}5Ri#HHfpw4<3~P%; z*g`x3Dbsh|tI;~EF+#%OgZ}=s0ur4XP;g$ORw_B`WrNW%zgJ_%Y$M>(@#}$|g1Pf@ zN%Xs$hmE|K4RG(2%E+LO&7e+_f^;qUp2raFOa-={hmE?IO*(k!w}93jPLLuq!*Va1 zl=bbVZ9MVHFCI4QQ+Nu)Ot)l>xK`U{WkikRLpnAOT`dCJcNq>qihDH^7MiOGLOpv3 zS4&Y$-JJA2oYSD9C&C-sc>eQjEUG;%lZTI54l!gdpSoKv&05F}yrd$L z9crWT=@LmEqGzvi|t%(U5%}FF`et#t5m^rqQ{w?`gq0Y@t>Z zrX+2_QzdFDMs8G5y^G%pwzv{%MW8( z9bpFV>9xY_e!VW$QjuI^(0W1;{C=vP!IBi8+;hO0Tk>)a$(04Os2jCtC4WP=gB}z_ z8q!kPB%@FKv)#|fD_Rz1y2mUPBe5#mH2^39%sV5%2t#oQA@l+HjM%k*w53>u6a+++ zon;tfaSri-rgLp_wPuFs3cvyav-H^o?}$a+zk8-1MA%+v+${`-PBzk96as@%9F=Tb zKQys0G#SI}`K%KGhKYzKGE?Ul3R%4#dVN`?o>h2%cB8vCmx^`D7PuL>jd!?ApC!ZL;?MG$cr@#U`V&ize4gog)TK% z{3~QO6bhMect4VSf3EUm2`QM1HLVRM&Iavc42npUN;J=IRA|1}xug;gP;F(I{k7$n&k(}-Sec77VGUr1cA+pJ&c8)!`Nei`Ltz?U zK7EE54Tkv@)iX8in6P4Y+$QxKtx2cYvjQcc9duwMXc6Qy1Ptn00j%RJ&KAA;Ri+vq z847!W%lZNx%Uzuv463Us+a`~Pe+7N?KVok}nxWeHeq+t9Upx3xX-XoQIO_MgLFd1_lwpN%p z&#PR)Fnnwwyf&zs>>;c{I_U#2sG6_i`QT5rlsRyyAUK%;q~*DM^9p)mWmOFw1ij<8=LZgH6wI;UT;tPG6Zqd1r`$xygS z+C3cc{+o}CD1!kt6504ni2J<{*7k)gENjTxQ6u=~^v?^*Yt zKTat`jACbCrDhys}q~ z?R4u0ujW0~(;q)td~)}A8})b#;LlT#IhSou!B1W)tuqCfPie5xH0;r@C*8f6F%DjY zt?q=cG7C}S8JKEonr9kVMi)3NlE6r4oY2Vb=(?3c)#VLc{4H#Cr+4)S@Cv5Wx@nZ$ zd(2t|GF>Ek8t#6tmPM-D!Kw4ZQ!p2aV7OAVS5(gGP2|mBG?>UA4y`j)n7l}9fvF?b z_aoQudrh|VNw6}?u<|Wn4eiCG!#k0+8oF>8{7;n5RpQY-ip*pNkM*LPmzfK3kGC*i(S=SxkUr`=$yk)M)TRL^_jLXVlg zkT|G;$J_dpCEPDS&_KIs&>cNDO@+L{M7HWzB+MYTBRHC2vK%xS-HJeY`ijEt1+!d)(hUgy(%8YDA<}(6IiZ{LOt=WH5;0k)-3+TU1a> zmIibX9;8yMMhUzIHT;Cc=l8*i53PT4P}h-0Ho256b~e@~COWqCiWI0u43jS*h$^A6 zm(aJwZNIYL{Mp4HbSoE^8B6fGrF~ZNtt{^yD^p7Y`JgzK&H8&TZ!J9PDRRwUb3rg@ z@`dFI(JLL#6xG{)om0$B55=Mm_;iOe^O*v?UAE<x28=D-E1ZQ)8wg%LWeg3RJ1s}%l_Q!D<1>mHDLXfWHgFS$Ra-dXZ3kg` zuU9ImVi??Qh>BkG3JW8ENfT?6RC&JC?Y0pT(|TX7E_;2vZ^z7h5o`Gr50-aC2kCd% zlI*rC;s}qODd7n3#-s4nQ6*f(Yhd4&m;#%k4K+XDn2wF$+PBq~Lc|R;SmMvMq({n7GIsq^Hv&TyIBJ7rZx&?81& zOS~gS)B10W^hBUXN4CVt*vWrX+|jWS{;k3jG}v6if3!1H)i? z{f%>{0l+17td?lWmy0Lh0BUUwFnaUc#jTYIvQ;weA4V~;!#i_V{=jFOwULY=Qh&p7 z36)$QkG}x?2(!}XI~!lBhg|;fnJKr(kXkAPYB0Ll^ryL-`&{2Sy+<1W&vlcH>93WK$sriQE)?|j4 zvecY@UJ`^<5PI8L&AINw&$!&of`DSfL$Z{pIdp%AVD`--oD;=H>P|k&g;2CnYbw!( zVk%Vg4{C!117jU#bK`~aAJpmq&3~be;H4Cw|ApERnlP}CDe#bkWuuJ)70yY3Vl7?0 zSFXORs7~*%3EmJ|tQ^R*%36#R#Lyv;0Ugen4a10OGmJK=BSPQBv=WYpJB%03sqMcU zr^KyOtwakQSfS5%ieiI97r=?B+R3=WA@m=vN)}@U)lJ|HP{xSTF~m-_CQ^{3TFxFsMMebOi!$;1i; zHAaLE)<(18p&RB+#@r`a5w0e!08rmfwBfe=FrDC(xe%$|6SMUEhF3tQuRb?f8^viX z3Iz-vgJt+=vNVHbqbkEsI9w0b1lGFHzx+XtG58Gxq6u}sA7>}|4e5^c+aitssc~q5| z&^4ShTEDGy+xdT!#lx_9@74RHt`Q(pM?(9~VXv2UmR-1qxZr22cH(ox^CgG}nx(=p zwwtvgP33TAVi@bF22=em^zv;bxJR(^6Y_J5q>J9jU?o!x*H?yzO`kFKlw?;}t)fn` z7}Dp<#B~pGpI7tH8mFQ}L8PCDnFtGh*-18=xovar;I#F^wVC;nTvA%-7|kr+xUh@_ zf0DgsRSaHMRW@o-L|_IMFG}gH{1D$?NFtKl0ux!@my0fC3?*brp=1;rK!qobZgD_@ z^h}+OD5i8kUZFB_9%<@XDW#NvpvvlvD^FPGK@ctLOw6|&m9MIYfa#)~(yNLvnQX1p zKrN05%K)b=t`(IZ`BEkAPiKB3DuIc4j8k5ipvoF;agZ_lX}~r=^3VK5r@ksWp&}mX zMUx-7J|$Idy!-7WDRElX{*jDE6fK9dIUatJKVi`J{kJ+t?69XU<$i%Y*$VQ|r4_V-8e? z)K#69PAOJlrBP9l8u=$`G3-B4NsvM*iI?iB(h*hvWr1!z(1HYbtUngabVVjTlRT_N z?Us9?CVOcpjbtx%Mbbf;ZL6s^Q2(qg>=d8>f=T%o-vh`$$Xi{JcPRlHGq_Xwcu%KGY=r;q(aI6 zqD%(%Ps%*$v*xz?BbkO=isCVG6bhKUf))k8BFz@~*u`RvO?a6kiL*1YsGDEyrs_4` zS18Nr{0@}6RhvCU&?c7!a4evmucR2QouicwA?FW?EgTTb&JRUmK5?&w>=$n+=?L3n z*;6Q~_h%GF8DY)gNo{T#6yLOmV54AgkJ{9}@6-C1eZ84R{8(x&ut-MZV_M&N~3*3SsSgJ)vu+US(o9%vy-<68#tjwE}!q1%pQ z1ZYU{V6bIBcAW-E5Pm)TL!!lg@*I$+B(P^=V&1#C{|aW;@cdWIgo&+!=|dz~Xf%N5 z!Z>iDK}q|t31$*MPER-2sfwrcM`L*KY$%dF z*TTrC1hiQ65mtVj;dACcPBDo(w3`6wO9ccky4;8rvBa+BvLzvFlI*RiNJgm+?ol1w zp&<$FXh5687p>vLh85jqh-y6}pdnFY-Ddet4O_ulLP&n_wG&7~ZOXh#g(B%P} znK~Lo%a?Ib@gs$S&NqNnDp?uRQm@jv zQusGph%#hmT2&OCt#C5}T^^_uPfod)bzv~NWP=7;iRu5>XMT@COT0!=3^_r=fM64a zEh}Z%u&jT@1xcTYGd`gth$Y~`sBkFFSiGX)+FInjJLR1bpz<+oK@x#i_6o~K#GMhH z3*J4XjzuXHE@~`cbM5x5rVs}t#Cn*)o{Ud*1n|!_BCTj*h86u*3q zz+XY2w_!9$Tk&tCgjMAN`^dW%;X=)FwZ}p8{U*P6kc8qY7s6RAQ2qL|TP(hjz5D+P zLgW#D1-*q{WR3g*2V=G(;7)a>vKmrk|-)^Bzbw2~&8^%9O+==IR zQ$#bZp~u6#^t?bCF65s_`fdo(kqITjVr&sYDFqVs3w$3ry~%w>>kqej(6VqLl6ONs z2~3VFb_4GXF~ySoD(4 z=b60$3KkN59e{DhjQg{M>-*|Uq*j7z^k+19ZD#+-xrN4e1dhf&a;XVWjw0L}3es^? zqJoE}J@-CxKj%KO`7|>Suzk(<*{WruDG2Foy=%zoh-b(no_7n7O{$Q3XsHqFii_3d z?~$El7Bu7+qSb2f-Y|<;YM#W$g>Lmi>Gon;d;94IIT&Ua;aYs5X4CugO6;XpyivH&&Ep>l)z zeimyS39Y_g56av1qe6mx@n75+cWH){T8EXM_9s{jHL63a5HxUW8yOs{x55Z#W4=Cl zr#YtL9;{hetUpTLCg(svTszNh9&y!!gmuV*!=|n02B^Ab5(3KB0~Udo6jzz2AP%BH z>*A$p7&?GG+ni_S>srLuv0H*RQ*r;rP3AJs^N!w&+aOSY%a@#EAWYdGn6kfN^Z;eg z%2R}Y{!b_S*a`)rh}LDhV|_0e2#pJHA$B)rz6(R@8f=*Q9 zb~(OSk?e77u*XLNT%-%`@yjyu$9exqLG)XkR)R$O4^Ym4<$j#3It0(mn{(#Y-f$Mw zt07RNURehs0}yRNc+jfVf&???IPpB28^A7N2H=@-%*=Aj^pr{K2NFXl>tN=;b-j#% zHlqj2KKA9ENw}DWzSM+5M{vySy5MLFfaICc!;|8fc|s^IU-Z$07V06CqlBm3un;tG z{n9J5W%8|bhwGaO)6L1EzLQG)xT--0B;Yo2DWqAe3_x=@V=TAnb8lAT;>zl>pwgy4 z0K1G|S6wWr9Q)|rLB{Q@Z334cNH?Ut_Vz%$_~RQ9{|X!dfOKh&S>mbQe-J|;u*3&y zL5j0bt??+>)Xrn7XoOlzq-D|$fr~q*GLAvkgBGdANYnyqM`LGi78;!eSh{Wz+LgCU<(q~RWWooiH1Dafv5X(-8NMCs2m)X_!((*SCymS6{U zQN{pm<2>#C>7M8GoOx`o2rDFp9V9KBg+W0-!OcSB1*qfvjB%0L9EES%AmR4Q6zS6^ zsI%C9$m1Xc>|omj>Hfg%;~5P8rZ+A{Xk^5Ar;~6$mUYxrA4qZ>ft4}SK_q-cTof! zlB`ZXEkFso(o@gVq(fXnh%tnk1v#UQHr+F2kkEguIHGtU z=iaRlu#9tNLk7!Fa5v z=leY@&Oj~}=on!n=NemPI}oup36{KBXd~7vN#3DG5ptM)L!8DEf)(<;D>(M;TAGR~ ztVd$whqY^(YVNFVFB%@ng&W>Kf;5NY!BqvQ-siY+RixU^SSF=Aa4YhN; z4Rw(uJji_R{1Ea`cn*8aNWHBhz`V#2qXCj>gS4fUHcV4voRj7wvpF9LX$X!7pqCtnt{DgrtSvmxHciR)oMHKCFG zlLb~v6403=vHv*Zj0RnRUGGxRh?9yqDNQhK!QSdT=tV(8ZAVKjRO9{|uj9}$qEjqU zJ{v9~Se-0j%38WY#biw^rHjuM;a0dbf!}34>l6FeRUiA@FIpa<1V_Eng&IB}SH0$E ziuWrCts*SDPIR8)RLX6E+vOB$A+t))fM38{Bpo^Js+9C@zMQ_l;(i9`zC$Y;6=a7X zEXvYW;RL2)F+nh1nW*uisQmrXlMs>PMEP?IGch@#Re6ymT;ewVBO#Nr%&n!c@i4hi z5o6qH?{oa3Al5Y~FXUgZWiyOJRdC*z{ove215iUd8m{=oHP|4QUB6=U2`fF`SO(sb z@)1yH?RJ#I=C~GAVSu;!=<=F$KjrW zHDN%JmH@&!7}EV;1Uz?}4wK1X1^z{V>IjM#6L-RiBgY#|TtSYaEW~0wVKHk#l%$NL zOh!Tk;1>LN;HaD^9oAByDFTo*(oGcef0mj_T9uXElJrPL!@!q--fIs{Na-VMEJ{) z(o}FDAL-SsV0L$bn2fnKF=uVyIPvyK(<3>!`dVU^+J+*-Um6(|j zIM>=n%7rg6C<|odJ?dF%FX&(A(nYIjDdf=j3HM_mOmW&cDx3j2`EZLrcr0MWeU-Pw zls3RC=ES}g1I|j4rE~i6;jsg`pF+50sORc)c%hP>1&l4`p}ugmqt}?l{rRS_06XGq zLrU+$49Q;=k|yT$eo{_BG|;H(sorF>1dR2xelj42_*00uj74XCj<`gTAzE|?F#*Fu zJfJyM9PnxN%X)NHMorZ$Lt_jOhiu4$E4QJK$ZQ4^U$b~rlFTr{%_^~xA(2cTP1AJm zbNzU4z0_GUMr+gfT->Jrn=$>xzyKNInV5~%;aVOalY&8jc7QufA74v6%s62I%PwRqwHBYd6NO}56Cb>sroaSNpKh)s{{!u52^1s#DA^_F# z!1VaPon!t7%=GZZCBe1qZya~jx17K8VD#>k8Mg14!?rrf9nhXp)NjjE*#aLD0Mhss#O{GR z5urd~hkPS)BGo+o>Jszr`CDJF%kY>2b2g%TK4OZoARKexJct-AJssEm{A!u)s}ToF zYIr0It)U>FKknDg_p1XzPD4iP3{Wo=s-q*H_7?S$qzKx!{)movIEX--3f_ia72N26 z2bY@BlEX+%ZAFPIBQ!`6w#&`&=lT`0E8S>b#ug4|yBuk{RU7TkKMxomc%5{TN*HXA z2DwnF@o|-m z`c{}9GQ~Jw+??+sF7wbDKWIJCtxx%p>K?$byf(Zt7*8l*y{5D#w6L&(r!9$?vQ@zq z|8^^k)YvL1wH*t~hZStn;85O|h}jNiEkD~ASD=8l@dO}=P^qzkRH&Wk_{1_^Kbq|u zgs-%A7lvYHT%% zzLD+yMqK7XEohf3cczrEf#5s&00&_3kRlOc!qo{5mN`hv#~Uu9Ht}rv4udTw@$%dh ziko}yZb&*S&!VRtF_A(r#5C&AI@7J^jBik-?Ke@25N{@;hfM=X_gpf9x;;N2TcRM( zq2k5^w4HeuXX0Wo=)egc2Y@r>sQU?}`7RQ#CD_fyoW78|X9pmfm%MM??)RuhrXc)L zVOFEA?m+BBqrAjlO2G|o(32q&HKK3XB%-*UQ$%Y6%2J8Cr zkxXRePGhAm{)fi#sn~~7eXc9BhP08M%Y`W>Z>@c^h$K6wSI*i?i)>Lp*Si)|x$A^ru81>}w@A#tk!=g4EzemLn7J`qn5j z+4q1fPVe6_wL{sBUKa&qslVQCM%yzY{EqgwfprSMdvNBLlcPe$D5an%xjk9ak|$tl zi8ZR}>KRrPRwh9-B7z1f{R^&5!<%8+l`iQ?H2{dX3E(H~zU zY0|P~Y?E3rfGy)fo2QWQy+P0k>ajKwu7o=let+Y)jbpj0m+pG7i}$*spQZo}gu!(c zl>#T_{g{0={&;vJ)NcF2&`2dlN7w$NAJ36t5S+Ex=a8THrDrPCgf`|GMKTb5Cj<3p zvz1wU(VV7TJ+&jJiVEJxyV`BjRSz>7cBqodcrXSBZlazm&H0dxL5S+sj6^ej?5a0Y)d5+lggl5nJh!;v?_+v z$k^!2a?rKvfp2tkZF}yJSJM>^8i7k?4SE3~yk|i=_M@c;DtT;$)orHMJ?IGcZ{6|F z`T=|%paS=z=7(xGU}d|H-!Ea@ym}DpYAbZP1=@!$N+UJAVA=CbJl$CF)5X=DwC^T( z7(EN_9l^@SCv?=i-H!To&9d!tN6yanHWr7FFK+M4#+VI0l(4y;789*JxaqJvnb8;W zMof{1;-&HkqJRC^97fe+d ztFGU7fCOWnY4~yUHR7AwYg#YWMVXg;twiP5+yCk&n=C@sJ_>AP-9-lig8A=L($&(; z&W!o5BkNxs&a~wnHn?zle`=s~9xlCXxJ7n~U#?xPlp>DbaJk(^QVB3?Q5 z`x|Z555Zlw4%OEP!(T4EW!e+ABApuG(5^?)C^;XG$bYAV9wU1e@aZ#9zFEEqBLe*$ z?j-m2qEYDR={mk=Y16a<~PLSACsvB}_x@*C@>Ang0f);!Dx3<5@p z+Z7my%R5m5aqq4*13?SyM$1r6k`#R=vIdWL%CpL^>9THFoVBoGyNNeKFBajjK`;ns zQtI#Oysu3%tdi2?2^eAwg>rL`Lqa)BA}BJN%V%pIIQMEVkB?JXR#ugn9FRBqb*oou z3tiNEbFC%f^v@WNzEum-((zy;9FU2wQ!&n4Qb{SLsR~WoXRde`RGHeLrMU`=bleyC zYUuKxL>Fo5Uf>@qF!a5K#Xs| z*TwS}hg_c)knyDc9lw{$HiJH0e-!EAi@LnG+x_(m2f>f~FlzC3M5r+7O%U(!ApTR3 zOGO1bgJw#+M#=(k?0pK?A!3(PQAno1$Ka}gYdO*Yaet%*LdU!bW1aAJR?l+UmW##+ zsj<}1_9HJm<0$2Yg6cJpwqzXX4f)qwu#Pnf*tG!1KE-N#x?ry);bT0e&Eg9(`4l^{ zBDmOuI0!`-SL6b+SMX@g4_l)wC4eNDKz}~CQv)fq2hH?p)>=|*F4iQIs7%x8%GbGq zV#gu*<~mW+&dLXLPD?Z^iT?t8PTkgSy!Y6@1K)O)4I zhP>~Gcg7`XHh$h3GFc^vwl*JxbHP;V36-0GDI9jMBsKTSI{&gJq~3RL+9kVToAL%| zO<3I#eCy}i3T-wrYApM`@maXD%8l0LCTxC*Yj1c*f-PXy`@5$C{|_sR@-oJ1nW`VA zUaOJUe)nBl^KP>`t{eD9pWR22^EY%I{B<)&&!*Ok<}C#dqnHZ===-d{Cr4{W5U}GQ zfk})|YqobWAr#AD(zgty+cXXrk>u-c=P`bzGbn%PJblARO+~`yeE2EJM~tDf6tS{A zc^pzuc>h&pKQ+0#gKlYQg}OxI>dvY{DFR19Do*Ag-RtnzmBATmO!1&x&dXtjLaG$4 zd=s7(brTxeVL6LDKY@*X2rvvf-8k&O(9S3SQ!NuEfWeJ_WAj_TFzAP%+D<#(Z-Omg@V%q1jyjTD#CF|PHGbv9en@} zL?ur%<7BX`Sr@#n?az$v#dOtVb&$q%T5yohZ#P1szbi(0)2R1nZDkMD{n%$J@R4T*KCvILZ-ie)}moaw+Mei#Vt49R<&>R=XU_CcUJAWfN^nF zudeL1fAsaBt?V3CD5@0rCWh^L&8yKlq38%P+9~W$=P4F@$+fBBLyBMb5gmim=;jL^ zdcv`1klKN{Tc7*({w86p>g4mU|usAhmyDED$dm zkvkk@r!FIaT*1C92@~g~t?n zLx+@hV|6)l^O`rIUvf}jSkM2lm%#w*9LMukr}yi>8mQ*_^R1QvKk%S{*(*Bmw~3pJ ztAm}Uoh`GKtC`(jAA2>?4RC`j7$84=#U~OcO8LSu7L`$`Q48Q|rC+{7C3Ytk8-Hwv z_w9OoaU46glYa*z=HLUgiA%dU!g*gw0EmCy9}C~3gj|G(KxfyYSgKe^YPq$0K$0qe zW7ADcU>xYOVl6?a2ZLESRv@0%gu}j#JK{74qF0UtM%ikldQ-J<;7KwcTT%9{`>7M+ zD5AbF)k5(YUDYt=Zc&ERwZmnZItMSW|CcVo$)n{SpdM+ zg+VQyBy}p7SCh#k*RAo|*kUfL^L^pDkF<+gg+PM*-pIBXhX{7N!6~ylh_KVff1H`F zxeLvNC+so3fg^I@7Z9~mgnO%8T(S} zdcDj~AaoRLZ&*D?M?FtP0i#;QUl5wz-N(s6KF(LmCujx9+Yv-LM#kgnzT-4jvk1k6 zL~%!SlreLAy4h_p-AXQH&+P?uG^CF|ks~zI@46F(MYqL-mTcmLLshNUE$cfDOa223 zxU1CpRgK#z(@g2}h0DSm+xqpXY`Qv!-M*eyo`O;fW1kZ$Ni*Q($|q#I_AsJmdnEh= zsXOw5;=%Bjz&5KlM`PI}^soC=vS0tTN{gQhi?9LKWFmms-G9~`_HK5@X3oH>%wKKc zHMi{dd2o7m%7hanbXy{lI3PHh3x(D7VkF30?m?(<>d*7WSy?u(Wv@(T=&N&t$|Kq3 z(A=kD(EWCJ-+chDkiTAUf)clpA~0OIu7h;Sc0?JDWv5pT-hZZ@QeFO3hFwQP`!?6^ zCv5ex_Z~O<8+Bs=5{<5|j7F31JN50_cd3kMTmBgC@WF@Fea)NXx5SntF?LB?7} z!Z}I9I;=9#^M3vHG*irr`DF{RAq2TYCCRlJdlk{6u3L%zilnhOf3~vVJ|f^?ScrrY zBdK6B3aN{tmZ02SmM3+g-$LCkRpQ_9+F8=W{Y7D_;mDMhVMG>lLxioh@RB`UyES%> zG2s{dchWm&DaDK;Y$}?pZ;KT2Qn=Y({TT{hx#Qwu5-k%+2jl(JbW*B9YtTC#%2&NwqIpyKo5i~b0rJNHJ z*W9ur(Ybhc@D$0&z1>*9TlXkDVIF~^YOshI$^8xBan=10jk@~XVtnEF)3}SO;Us1x zmM8!pp+{QMn0oe3xH6@0S2eA+SK4FsVG!1)XKwGh=SEInET-q?^A7ZYo`&A&VTiXl zGn9P}Cg1lS^xlC86b^SVgnrX=dF|%>kyI3lS-Q9TAAav2NX^6%#^F3k73!QZ4KG-? zKKbwfwo@^y7jrQ7io6C))kt8r8{+hZ>R|KuYC21yaNXy7jMEQ=ITNf;J2QNDEqdI) zVS1sc40?`hoS=@CI4(|wGkreo;C9`%s9C(i)FR2%hQ{dS@Fw+to&LRsY2cyZvqSim z@1!!;{i7FNUIGChe-8;7R8e2|r-$CHYs=l95T70cds5E3z1M+lM_qlsiG^V;F4j`N z0Q+Sv)YJ9Y6YBA5|Mhge2qFW^P&eLMKZ1*mVF50bwV^2cG;hc{^+&<>2mC*0titgX ziylZ2kYExJ5NzO#1#H~?*E9uOc>%9adm}4bCTmACiz{^-M|3p|!7guZTDut(8b%E0 z!7jG`V#d$(U|d$;OOv^Z8S9)vrIX~*GpUTeET#f-5?(+a!vuUj8ZcB{vz-*@1NoH2 zg(aa;;4yGU$*gZV1uzW2Z#TD!VHJZD48C1%t-tkV-*36h@_L`x7mgJg49(r4dBd_G zfSY-UJT&)C*|*d>@>I!OVsg2HoVIlg?t$2VSt3jpHZ2)zciMJH@4z!e2Xc&ua-`|N zVe=AT`UhF>bvm8FuwWo75O03ekS?BR3j5YbljAg)fq|!AvMiYi zjK?pKVWiKthrdP@v7$uOaYOxZttjvUHAbr0qE6*C=^najR3py|_wmzgRs3ywC?t+& z9Tl$tX&B}?lBlgVyS;H?E3xN~pAn~tXkzOpk<70vQV5>Q#{c2w_o)~PEyQ>OLk2hR1LR{dA?+l+m>G6CO| zp1E!75=_taDZZe3%j>GelO};Ry+@z8SH&FNvfX&X`R1cN+$Vb`AN%~h ze@?bE*&m#LWVLvg!S;qpfy(#lRQWYEo1aMS`Z(=i>v_8?t&>W^*S_FgciyieL%n6| z)ahCaYoiWj*=7B^c_;Z^&b_REA7|#svt%VgUZ^9;{E;bQUW@;2&hQt9w*N@u(9enFK>e2Lb5bG6S7 zht%|0X8h)!7s)QX?WthHb=8J7GdZLA=5;E^vAme|w6DW=qw)O2eGC)!{H%PnzJz<8 z@A5?#yDQ>enlr`R6X^YSSF$(mUeiZ^rZ;>pza6%1{jryUTl`Y6d{BeI%>$QjR-8|E zJufT&VM~VqQY#8Ri%4 zNl)5)PwQUdjel~fKYr@O?P-UfP2rsO_O9}r_H({x)(hWmUy_#AD>KzL^V5_$yO*8Y zQ+@4C)1m4$N4HJ7WK>;Q>ihPQ>W`|satEW|e_lW3iAQkp=~vg<Hyi@ElVsEgtskSIrMTs9a3vQhF z;c-#v;V!Y4v8&tq&qq(5lz4MPW%c(7oIlSME5AD8ymF>+`Zr%IfA3(e-CGac`X8Li z+^YJ@itnXNo`rIH%g=(RUVJ4R_?I=YNo6c(#7g`(?)Y}dKERuiNrV|RJkG)JWQKXf z+MuNqrvh83r+{N_pl$~YGyugI7^0nlgTbkJCGjDZ1*yfcpw=0>0hMar4nKfO?*Ye= zxna72bOYltpb?NZKDcR*uCb$yJ2(@l414CRWD+51@NgsKkCKZ=d=A?qBE78LM{Xj{W z{szXCwkVp>j+aC?2YsFtVUAQW%p9ai6m;$A6E6tu9OY2$Xwxw0CZJD5AWX2TfSQ0Z zErG5debgAC|7;ahKl&Ilx)JF8Z-f!Y8nO1q(G5WF=pqc5*Mw{Uwr(%FS?GO7gjv&@ zkpl<< E08O|(;s5{u literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/InvalidConversationModuleFilter.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/InvalidConversationModuleFilter.scala deleted file mode 100644 index 0d3f1ca1f..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/InvalidConversationModuleFilter.scala +++ /dev/null @@ -1,50 +0,0 @@ -package com.twitter.home_mixer.functional_component.filter - -import com.twitter.home_mixer.model.HomeFeatures.ConversationModuleFocalTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToTweetIdFeature -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.functional_component.filter.Filter -import com.twitter.product_mixer.core.functional_component.filter.FilterResult -import com.twitter.product_mixer.core.model.common.CandidateWithFeatures -import com.twitter.product_mixer.core.model.common.identifier.FilterIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch - -/** - * Exclude conversation modules where Tweets have been dropped by other filters - * - * Largest conversation modules have 3 Tweets, so if all 3 are present, module is valid. - * For 2 Tweet modules, check if the head is the root (not a reply) and the last item - * is actually replying to the root directly with no missing intermediate tweets - */ -object InvalidConversationModuleFilter extends Filter[PipelineQuery, TweetCandidate] { - - override val identifier: FilterIdentifier = FilterIdentifier("InvalidConversationModule") - - val ValidThreeTweetModuleSize = 3 - val ValidTwoTweetModuleSize = 2 - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[FilterResult[TweetCandidate]] = { - val allowedTweetIds = candidates - .groupBy(_.features.getOrElse(ConversationModuleFocalTweetIdFeature, None)) - .map { case (id, candidates) => (id, candidates.sortBy(_.candidate.id)) } - .filter { - case (Some(_), conversation) if conversation.size == ValidThreeTweetModuleSize => true - case (Some(focalId), conversation) if conversation.size == ValidTwoTweetModuleSize => - conversation.head.features.getOrElse(InReplyToTweetIdFeature, None).isEmpty && - conversation.last.candidate.id == focalId && - conversation.last.features - .getOrElse(InReplyToTweetIdFeature, None) - .contains(conversation.head.candidate.id) - case (None, _) => true - case _ => false - }.values.flatten.toSeq.map(_.candidate.id).toSet - - val (kept, removed) = - candidates.map(_.candidate).partition(candidate => allowedTweetIds.contains(candidate.id)) - Stitch.value(FilterResult(kept = kept, removed = removed)) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/InvalidSubscriptionTweetFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/InvalidSubscriptionTweetFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..0c576a946107879da6b6fc5af0dc5c14b1be4f4d GIT binary patch literal 37759 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 sg} -import com.twitter.stitch.Stitch -import com.twitter.stitch.socialgraph.SocialGraph -import com.twitter.util.logging.Logging - -import javax.inject.Inject -import javax.inject.Singleton - -/** - * Exclude invalid subscription tweets - cases where the viewer is not subscribed to the author - * - * If SGS hydration fails, `SGSInvalidSubscriptionTweetFeature` will be set to None for - * subscription tweets, so we explicitly filter those tweets out. - */ -@Singleton -case class InvalidSubscriptionTweetFilter @Inject() ( - socialGraphClient: SocialGraph, - statsReceiver: StatsReceiver) - extends Filter[PipelineQuery, TweetCandidate] - with Logging { - - override val identifier: FilterIdentifier = FilterIdentifier("InvalidSubscriptionTweet") - - private val scopedStatsReceiver = statsReceiver.scope(identifier.toString) - private val validCounter = scopedStatsReceiver.counter("validExclusiveTweet") - private val invalidCounter = scopedStatsReceiver.counter("invalidExclusiveTweet") - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[FilterResult[TweetCandidate]] = Stitch - .traverse(candidates) { candidate => - val exclusiveAuthorId = - candidate.features.getOrElse(ExclusiveConversationAuthorIdFeature, None) - - if (exclusiveAuthorId.isDefined) { - val request = sg.ExistsRequest( - source = query.getRequiredUserId, - target = exclusiveAuthorId.get, - relationships = - Seq(sg.Relationship(sg.RelationshipType.TierOneSuperFollowing, hasRelationship = true)), - ) - socialGraphClient.exists(request).map(_.exists).map { valid => - if (!valid) invalidCounter.incr() else validCounter.incr() - valid - } - } else Stitch.value(true) - }.map { validResults => - val (kept, removed) = candidates - .map(_.candidate) - .zip(validResults) - .partition { case (candidate, valid) => valid } - - val keptCandidates = kept.map { case (candidate, _) => candidate } - val removedCandidates = removed.map { case (candidate, _) => candidate } - - FilterResult(kept = keptCandidates, removed = removedCandidates) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PredicateGatedFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PredicateGatedFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..83df6e1fb86a500fa004d5f927a66851179fb4ca GIT binary patch literal 37326 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PredicateGatedFilter.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PredicateGatedFilter.scala deleted file mode 100644 index b263a87fc..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PredicateGatedFilter.scala +++ /dev/null @@ -1,47 +0,0 @@ -package com.twitter.home_mixer.functional_component.filter - -import com.twitter.product_mixer.core.functional_component.common.alert.Alert -import com.twitter.product_mixer.core.functional_component.filter.Filter -import com.twitter.product_mixer.core.functional_component.filter.FilterResult -import com.twitter.product_mixer.core.model.common.CandidateWithFeatures -import com.twitter.product_mixer.core.model.common.Conditionally -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.model.common.identifier.FilterIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch - -trait FilterPredicate[-Query <: PipelineQuery] { - def apply(query: Query): Boolean -} - -/** - * A [[Filter]] with [[Conditionally]] based on a [[FilterPredicate]] - * - * @param predicate the predicate to turn this filter on and off - * @param filter the underlying filter to run when `predicate` is true - * @tparam Query The domain model for the query or request - * @tparam Candidate The type of the candidates - */ -case class PredicateGatedFilter[-Query <: PipelineQuery, Candidate <: UniversalNoun[Any]]( - predicate: FilterPredicate[Query], - filter: Filter[Query, Candidate]) - extends Filter[Query, Candidate] - with Filter.Conditionally[Query, Candidate] { - - override val identifier: FilterIdentifier = FilterIdentifier( - PredicateGatedFilter.IdentifierPrefix + filter.identifier.name) - - override val alerts: Seq[Alert] = filter.alerts - - override def onlyIf(query: Query, candidates: Seq[CandidateWithFeatures[Candidate]]): Boolean = - Conditionally.and(Filter.Input(query, candidates), filter, predicate(query)) - - override def apply( - query: Query, - candidates: Seq[CandidateWithFeatures[Candidate]] - ): Stitch[FilterResult[Candidate]] = filter.apply(query, candidates) -} - -object PredicateGatedFilter { - val IdentifierPrefix = "PredicateGated" -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslySeenTweetsFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslySeenTweetsFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..154c5d0816433025dbfbfd58754465757f4fee2e GIT binary patch literal 37251 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslySeenTweetsFilter.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslySeenTweetsFilter.scala deleted file mode 100644 index 047233a41..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslySeenTweetsFilter.scala +++ /dev/null @@ -1,37 +0,0 @@ -package com.twitter.home_mixer.functional_component.filter - -import com.twitter.home_mixer.util.CandidatesUtil -import com.twitter.home_mixer.util.TweetImpressionsHelper -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.functional_component.filter.Filter -import com.twitter.product_mixer.core.functional_component.filter.FilterResult -import com.twitter.product_mixer.core.model.common.CandidateWithFeatures -import com.twitter.product_mixer.core.model.common.identifier.FilterIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch - -/** - * Filter out users' previously seen tweets from 2 sources: - * 1. Heron Topology Impression Store in Memcache; - * 2. Manhattan Impression Store; - */ -object PreviouslySeenTweetsFilter extends Filter[PipelineQuery, TweetCandidate] { - - override val identifier: FilterIdentifier = FilterIdentifier("PreviouslySeenTweets") - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[FilterResult[TweetCandidate]] = { - - val seenTweetIds = - query.features.map(TweetImpressionsHelper.tweetImpressions).getOrElse(Set.empty) - - val (removed, kept) = candidates.partition { candidate => - val tweetIdAndSourceId = CandidatesUtil.getTweetIdAndSourceId(candidate) - tweetIdAndSourceId.exists(seenTweetIds.contains) - } - - Stitch.value(FilterResult(kept = kept.map(_.candidate), removed = removed.map(_.candidate))) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedAncestorsFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedAncestorsFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..1f7039ae90fc9fb85a345bcd4228f8a28e172015 GIT binary patch literal 37430 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 z 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedAncestorsFilter.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedAncestorsFilter.scala deleted file mode 100644 index 42b0ad51a..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedAncestorsFilter.scala +++ /dev/null @@ -1,44 +0,0 @@ -package com.twitter.home_mixer.functional_component.filter - -import com.twitter.common_internal.analytics.twitter_client_user_agent_parser.UserAgent -import com.twitter.home_mixer.model.HomeFeatures.IsAncestorCandidateFeature -import com.twitter.home_mixer.model.HomeFeatures.PersistenceEntriesFeature -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.functional_component.filter.Filter -import com.twitter.product_mixer.core.functional_component.filter.FilterResult -import com.twitter.product_mixer.core.model.common.CandidateWithFeatures -import com.twitter.product_mixer.core.model.common.identifier.FilterIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Stitch -import com.twitter.timelinemixer.injection.store.persistence.TimelinePersistenceUtils -import com.twitter.timelines.util.client_info.ClientPlatform - -object PreviouslyServedAncestorsFilter - extends Filter[PipelineQuery, TweetCandidate] - with TimelinePersistenceUtils { - - override val identifier: FilterIdentifier = FilterIdentifier("PreviouslyServedAncestors") - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[FilterResult[TweetCandidate]] = { - val clientPlatform = ClientPlatform.fromQueryOptions( - clientAppId = query.clientContext.appId, - userAgent = query.clientContext.userAgent.flatMap(UserAgent.fromString)) - val entries = - query.features.map(_.getOrElse(PersistenceEntriesFeature, Seq.empty)).toSeq.flatten - val tweetIds = applicableResponses(clientPlatform, entries) - .flatMap(_.entries.flatMap(_.tweetIds(includeSourceTweets = true))).toSet - val ancestorIds = - candidates - .filter(_.features.getOrElse(IsAncestorCandidateFeature, false)).map(_.candidate.id).toSet - - val (removed, kept) = - candidates - .map(_.candidate).partition(candidate => - tweetIds.contains(candidate.id) && ancestorIds.contains(candidate.id)) - - Stitch.value(FilterResult(kept = kept, removed = removed)) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedTweetPreviewsFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter/PreviouslyServedTweetPreviewsFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..983d8c2108017cd9bd9e08963061f82ffa342a5c GIT binary patch literal 37130 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/DontLikeFeedbackActionBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/DontLikeFeedbackActionBuilder.scala deleted file mode 100644 index 9032b53d9..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/DontLikeFeedbackActionBuilder.scala +++ /dev/null @@ -1,87 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.conversions.DurationOps._ -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -import com.twitter.home_mixer.param.HomeGlobalParams.EnableNahFeedbackInfoParam -import com.twitter.home_mixer.product.following.model.HomeMixerExternalStrings -import com.twitter.home_mixer.util.CandidatesUtil -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.model.marshalling.response.urt.icon.Frown -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.DontLike -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.FeedbackAction -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.product.guice.scope.ProductScoped -import com.twitter.stringcenter.client.StringCenter -import com.twitter.timelines.common.{thriftscala => tlc} -import com.twitter.timelineservice.model.FeedbackInfo -import com.twitter.timelineservice.model.FeedbackMetadata -import com.twitter.timelineservice.{thriftscala => tls} -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class DontLikeFeedbackActionBuilder @Inject() ( - @ProductScoped stringCenter: StringCenter, - externalStrings: HomeMixerExternalStrings, - authorChildFeedbackActionBuilder: AuthorChildFeedbackActionBuilder, - retweeterChildFeedbackActionBuilder: RetweeterChildFeedbackActionBuilder, - notRelevantChildFeedbackActionBuilder: NotRelevantChildFeedbackActionBuilder, - unfollowUserChildFeedbackActionBuilder: UnfollowUserChildFeedbackActionBuilder, - muteUserChildFeedbackActionBuilder: MuteUserChildFeedbackActionBuilder, - blockUserChildFeedbackActionBuilder: BlockUserChildFeedbackActionBuilder, - reportTweetChildFeedbackActionBuilder: ReportTweetChildFeedbackActionBuilder) { - - def apply( - query: PipelineQuery, - candidate: TweetCandidate, - candidateFeatures: FeatureMap - ): Option[FeedbackAction] = { - CandidatesUtil.getOriginalAuthorId(candidateFeatures).map { authorId => - val feedbackEntities = Seq( - tlc.FeedbackEntity.TweetId(candidate.id), - tlc.FeedbackEntity.UserId(authorId) - ) - val feedbackMetadata = FeedbackMetadata( - engagementType = None, - entityIds = feedbackEntities, - ttl = Some(30.days) - ) - val feedbackUrl = FeedbackInfo.feedbackUrl( - feedbackType = tls.FeedbackType.DontLike, - feedbackMetadata = feedbackMetadata, - injectionType = candidateFeatures.getOrElse(SuggestTypeFeature, None) - ) - val childFeedbackActions = if (query.params(EnableNahFeedbackInfoParam)) { - Seq( - unfollowUserChildFeedbackActionBuilder(candidateFeatures), - muteUserChildFeedbackActionBuilder(candidateFeatures), - blockUserChildFeedbackActionBuilder(candidateFeatures), - reportTweetChildFeedbackActionBuilder(candidate) - ).flatten - } else { - Seq( - authorChildFeedbackActionBuilder(candidateFeatures), - retweeterChildFeedbackActionBuilder(candidateFeatures), - notRelevantChildFeedbackActionBuilder(candidate, candidateFeatures) - ).flatten - } - - FeedbackAction( - feedbackType = DontLike, - prompt = Some(stringCenter.prepare(externalStrings.dontLikeString)), - confirmation = Some(stringCenter.prepare(externalStrings.dontLikeConfirmationString)), - childFeedbackActions = - if (childFeedbackActions.nonEmpty) Some(childFeedbackActions) else None, - feedbackUrl = Some(feedbackUrl), - hasUndoAction = Some(true), - confirmationDisplayType = None, - clientEventInfo = None, - icon = Some(Frown), - richBehavior = None, - subprompt = None, - encodedFeedbackRequest = None - ) - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/EngagerSocialContextBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/EngagerSocialContextBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..1840cebdd41d445adc7873f1bec95f9da8bdedf3 GIT binary patch literal 37850 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 FcmV4i(f - realNames - .get(socialContextId).map(screenName => - SocialContextIdAndScreenName(socialContextId, screenName)) - } - - validSocialContextIdAndScreenNames match { - case Seq(user) => - val socialContextString = - stringCenter.prepare(oneUserString, Map("user" -> user.screenName)) - Some(mkOneUserSocialContext(socialContextString, user.socialContextId)) - case Seq(firstUser, secondUser) => - val socialContextString = - stringCenter - .prepare( - twoUsersString, - Map("user1" -> firstUser.screenName, "user2" -> secondUser.screenName)) - Some( - mkManyUserSocialContext( - socialContextString, - query.getRequiredUserId, - validSocialContextIdAndScreenNames.map(_.socialContextId))) - - case firstUser +: otherUsers => - val otherUsersCount = otherUsers.size - val socialContextString = - stringCenter - .prepare( - moreUsersString, - Map("user" -> firstUser.screenName, "count" -> otherUsersCount)) - Some( - mkManyUserSocialContext( - socialContextString, - query.getRequiredUserId, - validSocialContextIdAndScreenNames.map(_.socialContextId))) - case _ => None - } - } - - private def mkOneUserSocialContext(socialContextString: String, userId: Long): GeneralContext = { - GeneralContext( - contextType = contextType, - text = socialContextString, - url = None, - contextImageUrls = None, - landingUrl = Some( - Url( - urlType = DeepLink, - url = "", - urtEndpointOptions = None - ) - ) - ) - } - - private def mkManyUserSocialContext( - socialContextString: String, - viewerId: Long, - socialContextIds: Seq[Long] - ): GeneralContext = { - GeneralContext( - contextType = contextType, - text = socialContextString, - url = None, - contextImageUrls = None, - landingUrl = Some( - Url( - urlType = UrtEndpoint, - url = SocialProofUrl, - urtEndpointOptions = Some(UrtEndpointOptions( - requestParams = Some(Map( - UserIdRequestParamName -> viewerId.toString, - DirectInjectionContentSourceRequestParamName -> DirectInjectionContentSourceSocialProofUsers, - DirectInjectionIdRequestParamName -> socialContextIds.mkString(",") - )), - title = Some(stringCenter.prepare(timelineTitle)), - cacheId = None, - subtitle = None - )) - )) - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ExtendedReplySocialContextBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/ExtendedReplySocialContextBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..e26f1ba7646fa614c6c3dd3b7536672244ad2bd4 GIT binary patch literal 37779 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 - Some( - GeneralContext( - contextType = ConversationGeneralContextType, - text = stringCenter - .prepare(extendedReplyString, placeholders = Map("user1" -> focalTweetAuthorName)), - url = None, - contextImageUrls = None, - landingUrl = Some( - Url( - urlType = DeepLink, - url = "", - urtEndpointOptions = None - )) - )) - case _ => - None - } - } else { - None - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackStrings.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackStrings.docx new file mode 100644 index 0000000000000000000000000000000000000000..bf9e9cd8995c8b6df961e7e73700d6c25c5a8ba1 GIT binary patch literal 36939 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackStrings.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackStrings.scala deleted file mode 100644 index 8a9c214aa..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackStrings.scala +++ /dev/null @@ -1,18 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.product_mixer.core.product.guice.scope.ProductScoped -import com.twitter.stringcenter.client.ExternalStringRegistry -import javax.inject.Inject -import javax.inject.Provider -import javax.inject.Singleton - -@Singleton -class FeedbackStrings @Inject() ( - @ProductScoped externalStringRegistryProvider: Provider[ExternalStringRegistry]) { - private val externalStringRegistry = externalStringRegistryProvider.get() - - val seeLessOftenFeedbackString = - externalStringRegistry.createProdString("Feedback.seeLessOften") - val seeLessOftenConfirmationFeedbackString = - externalStringRegistry.createProdString("Feedback.seeLessOftenConfirmation") -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackUtil.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackUtil.docx new file mode 100644 index 0000000000000000000000000000000000000000..41f67fcf8fbb622a944a7e4bfd9f728a4b507c79 GIT binary patch literal 37402 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackUtil.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackUtil.scala deleted file mode 100644 index 08534f26e..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FeedbackUtil.scala +++ /dev/null @@ -1,61 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.conversions.DurationOps._ -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.ChildFeedbackAction -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.SeeFewer -import com.twitter.stringcenter.client.StringCenter -import com.twitter.stringcenter.client.core.ExternalString -import com.twitter.timelines.common.{thriftscala => tlc} -import com.twitter.timelines.service.{thriftscala => t} -import com.twitter.timelineservice.model.FeedbackInfo -import com.twitter.timelineservice.model.FeedbackMetadata -import com.twitter.timelineservice.suggests.{thriftscala => st} -import com.twitter.timelineservice.{thriftscala => tlst} - -object FeedbackUtil { - - val FeedbackTtl = 30.days - - def buildUserSeeFewerChildFeedbackAction( - userId: Long, - namesByUserId: Map[Long, String], - promptExternalString: ExternalString, - confirmationExternalString: ExternalString, - engagementType: t.FeedbackEngagementType, - stringCenter: StringCenter, - injectionType: Option[st.SuggestType] - ): Option[ChildFeedbackAction] = { - namesByUserId.get(userId).map { userScreenName => - val prompt = stringCenter.prepare( - promptExternalString, - Map("user" -> userScreenName) - ) - val confirmation = stringCenter.prepare( - confirmationExternalString, - Map("user" -> userScreenName) - ) - val feedbackMetadata = FeedbackMetadata( - engagementType = Some(engagementType), - entityIds = Seq(tlc.FeedbackEntity.UserId(userId)), - ttl = Some(FeedbackTtl)) - val feedbackUrl = FeedbackInfo.feedbackUrl( - feedbackType = tlst.FeedbackType.SeeFewer, - feedbackMetadata = feedbackMetadata, - injectionType = injectionType - ) - - ChildFeedbackAction( - feedbackType = SeeFewer, - prompt = Some(prompt), - confirmation = Some(confirmation), - feedbackUrl = Some(feedbackUrl), - hasUndoAction = Some(true), - confirmationDisplayType = None, - clientEventInfo = None, - icon = None, - richBehavior = None, - subprompt = None - ) - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FollowedBySocialContextBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/FollowedBySocialContextBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..2f7e7452a36e43c651f5a4de7260c3fb6081d54e GIT binary patch literal 37416 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 Un-!RYK)FhgArY88p7w%x08dpMr2qf` literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeFeedbackActionInfoBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeFeedbackActionInfoBuilder.scala deleted file mode 100644 index c932f6362..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeFeedbackActionInfoBuilder.scala +++ /dev/null @@ -1,53 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -import com.twitter.home_mixer.model.request.FollowingProduct -import com.twitter.home_mixer.model.request.ForYouProduct -import com.twitter.home_mixer.param.HomeGlobalParams.EnableNahFeedbackInfoParam -import com.twitter.home_mixer.util.CandidatesUtil -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.functional_component.decorator.urt.builder.metadata.BaseFeedbackActionInfoBuilder -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.FeedbackActionInfo -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.timelines.service.{thriftscala => t} -import com.twitter.timelines.util.FeedbackMetadataSerializer -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class HomeFeedbackActionInfoBuilder @Inject() ( - notInterestedTopicFeedbackActionBuilder: NotInterestedTopicFeedbackActionBuilder, - dontLikeFeedbackActionBuilder: DontLikeFeedbackActionBuilder) - extends BaseFeedbackActionInfoBuilder[PipelineQuery, TweetCandidate] { - - override def apply( - query: PipelineQuery, - candidate: TweetCandidate, - candidateFeatures: FeatureMap - ): Option[FeedbackActionInfo] = { - val supportedProduct = query.product match { - case FollowingProduct => query.params(EnableNahFeedbackInfoParam) - case ForYouProduct => true - case _ => false - } - val isAuthoredByViewer = CandidatesUtil.isAuthoredByViewer(query, candidateFeatures) - - if (supportedProduct && !isAuthoredByViewer) { - val feedbackActions = Seq( - notInterestedTopicFeedbackActionBuilder(candidateFeatures), - dontLikeFeedbackActionBuilder(query, candidate, candidateFeatures) - ).flatten - val feedbackMetadata = FeedbackMetadataSerializer.serialize( - t.FeedbackMetadata(injectionType = candidateFeatures.getOrElse(SuggestTypeFeature, None))) - - Some( - FeedbackActionInfo( - feedbackActions = feedbackActions, - feedbackMetadata = Some(feedbackMetadata), - displayContext = None, - clientEventInfo = None - )) - } else None - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeTweetSocialContextBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeTweetSocialContextBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..1488af408231e7ec6870e2d3cf129ff1c5a6ac0f GIT binary patch literal 37394 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�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 - likedBySocialContextBuilder(query, candidate, features) - .orElse(followedBySocialContextBuilder(query, candidate, features)) - .orElse(topicSocialContextBuilder(query, candidate, features)) - .orElse(popularVideoSocialContextBuilder(query, candidate, features)) - .orElse(listsSocialContextBuilder(query, candidate, features)) - .orElse(popularInYourAreaSocialContextBuilder(query, candidate, features)) - case Some(_) => - val conversationId = features.getOrElse(ConversationModuleIdFeature, None) - // Only hydrate the social context into the root tweet in a conversation module - if (conversationId.contains(candidate.id)) { - extendedReplySocialContextBuilder(query, candidate, features) - .orElse(receivedReplySocialContextBuilder(query, candidate, features)) - } else None - } - } else None - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeWhoToFollowFeedbackActionInfoBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeWhoToFollowFeedbackActionInfoBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..8c868f1c04ab871156ebf0962f8c19c6f530a8b6 GIT binary patch literal 37431 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeWhoToFollowFeedbackActionInfoBuilder.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeWhoToFollowFeedbackActionInfoBuilder.scala deleted file mode 100644 index 49017e8cf..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeWhoToFollowFeedbackActionInfoBuilder.scala +++ /dev/null @@ -1,51 +0,0 @@ -package com.twitter.home_mixer.functional_component.decorator.urt.builder - -import com.twitter.product_mixer.component_library.decorator.urt.builder.metadata.WhoToFollowFeedbackActionInfoBuilder -import com.twitter.product_mixer.component_library.model.candidate.UserCandidate -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.functional_component.decorator.urt.builder.metadata.BaseFeedbackActionInfoBuilder -import com.twitter.product_mixer.core.product.guice.scope.ProductScoped -import com.twitter.stringcenter.client.StringCenter -import javax.inject.Inject -import javax.inject.Provider -import javax.inject.Singleton -import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.FeedbackActionInfo -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.timelines.service.{thriftscala => tl} -import com.twitter.timelines.util.FeedbackRequestSerializer -import com.twitter.timelineservice.suggests.thriftscala.SuggestType -import com.twitter.timelineservice.thriftscala.FeedbackType - -object HomeWhoToFollowFeedbackActionInfoBuilder { - private val FeedbackMetadata = tl.FeedbackMetadata( - injectionType = Some(SuggestType.WhoToFollow), - engagementType = None, - entityIds = Seq.empty, - ttlMs = None - ) - private val FeedbackRequest = - tl.DefaultFeedbackRequest2(FeedbackType.SeeFewer, FeedbackMetadata) - private val EncodedFeedbackRequest = - FeedbackRequestSerializer.serialize(tl.FeedbackRequest.DefaultFeedbackRequest2(FeedbackRequest)) -} - -@Singleton -case class HomeWhoToFollowFeedbackActionInfoBuilder @Inject() ( - feedbackStrings: FeedbackStrings, - @ProductScoped stringCenterProvider: Provider[StringCenter]) - extends BaseFeedbackActionInfoBuilder[PipelineQuery, UserCandidate] { - - private val whoToFollowFeedbackActionInfoBuilder = WhoToFollowFeedbackActionInfoBuilder( - seeLessOftenFeedbackString = feedbackStrings.seeLessOftenFeedbackString, - seeLessOftenConfirmationFeedbackString = feedbackStrings.seeLessOftenConfirmationFeedbackString, - stringCenter = stringCenterProvider.get(), - encodedFeedbackRequest = Some(HomeWhoToFollowFeedbackActionInfoBuilder.EncodedFeedbackRequest) - ) - - override def apply( - query: PipelineQuery, - candidate: UserCandidate, - candidateFeatures: FeatureMap - ): Option[FeedbackActionInfo] = - whoToFollowFeedbackActionInfoBuilder.apply(query, candidate, candidateFeatures) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeWhoToSubscribeFeedbackActionInfoBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder/HomeWhoToSubscribeFeedbackActionInfoBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..4d57279dd974daf404818e14b9d8509861ef666d GIT binary patch literal 37441 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

ST^&11YLw+KsijIiDoyIC z(JwD{o|Q-&`^nnx*crxdsz>ETQ4*8(9%n6J8gdmn~F7Jz+~&|6pty$CVQ$U zD~Xq_$?!LgM?=}{By0hREA4mfVw_*u%`}sbACuGk^=TQ#T-_#-_)Uro8$ObG*OtGh z(ky0Uxa#OeUP@4I!nQonP80ow!Ej8=P(OHTJ6=7^PB0BBk4z2U-hOfL*k1ab@jSrT z#2i#e0BZ8Fr?9sgyN$T5E9$~9!Gmqx*f$Lm^UKQ0CDP2H(JkNJ@FcQ&c5p@VsZppc z@_$woLd3!6HaP7CrV5nVrVnD3l>(Kvr_pQR1YT@UXqf+C^wQCRgrU|fPT-o>)?vNN zO z`iMQQ&i&fM&5oGbOEN>yIA)La1-_gBuVl(8*qwzsb{aKy+ULD)AUqT%95tGJY*VSF zH+Tt!zrAQr##4bYEwI8>JS4t4-KrD}P$sLKhpU_y!W|BU4M&frPFhOp*KLCq2z{%C zQK>&qtq#WsIGq>(G%A)Ve?MYE#@_PXfTO>Lr03jhs{kmIMdJC9e?6;rD~)Z-LsF-; zRiG{vRTjf7-Focg!I;#r6NmQ0K@#GIG~KYyQqC(ZQN^e4CZI=GKZI5P)G4dDncKUR z!%P@X?cOL6vW9G)E1ri+AqE|YkS+?%a!#F@C086Vi{KFk8^XpGb*UtgRcm+=1>1>7y)!&07eWl$AU6;@&UIUV{zx|@?F_c* zzG?v;`-59fNgjmHF`rn7p=bzB6XqQ<{nBKA#@FNGaU7a|sX#>iQ${r(%!3#3+XL_u6OTkE^>EGuTh4#o;$}?gm&Ck%_ViOhYcNj2s zNqX8~Y{gSDcJ?5orf90W$U@Hx_UA^t=b+dp_Gq$Kywwh`N*^iQZTY9~vBGkiiq6ahGBel-l81qY{mSrl%=;)ma@M`Gpbafavd&v6xNnE89W`DYAGgN=?RWCD&2j-gPAZ+=b0jD z$YYKUMIkHbyK##?^8E#kf;e$V)ChN57gmC)CB#Y{5RmF$K-j;5^!^28_Zw)=Z@dF2 zllN-507nacyqNpoU_=gWH=>QI*diMfWZ+*NdEPM~`b_z%v5h8=Bpf&6`@e%1^PE~(EFlC{r zOrBz4Zj(l-5GW4439ncSF#~6;084f-HrqYSN zi*4m_9zqGbfAxFy@a%l@ZC$V8KEB&TdgH#|w{Hb5305!UZ2DcD8SMgSHrGyWBW`wg zJnIcR-}a~WPBY#f&fXqhkKNl|a;C=C4KAN^tsAKL%JgYljkd16u zB0{g;Tw#J_FYl~R-Y?u%SFT@;eD#HDZvBew z9#SlTetvIF27d0=yQ^cqggpaX!*pmUSd}wseeUpyUZ4ZE&$E#fc9zf0Ff~IxVOUtX16@w0p7r(c~b%Q!VA$#K9y^?{|D_{yS zAK~h2oe+@#F+Yjmo9nZ{M&(^wTg@hu8*0UT&BzN?RaYg3gvj_p+q|!nMeEXuW!pTt zH#}TWF1z1D?W!dTY{k(0OIzm6y3vS67fbf$roiMx*+cd9k1Lax2Op=_*V|2! zy1O*KYc{rrSK!x|+rD2by?1Bq>kf|;iz?v(TAG_3IFI&s-#oO5?9DE$y5tv{%SLq<&%6Wls$o101{B|#*~EEOc0F)?E|Pfyzqy*IN*jt_6y$;WkJF~o}C{n4z6k1BEL!y04k1|h)}WQ zNl;$j>eshh3r6LIm~ekq`|?yaa#J)j!sro$~z6CS9Etz4mKvpqb!#m^lnF0TL1$xqv$#wO2BKQ1W8X8%pBI_(%oWWB#LL-rfk1_am=`(E+*I2x1){@l9K}dc$y1 zXrL#~C#5%94KSqkH30=-sxLAz%0V!^#)Oi{C!6LS1HraOe0Uvt^G4VjJvMWb(f$68 zwtdqS&s4@qNwejthB+h80gKx`v9$e)QKUl^lW8koj$ZJY1uAN|#3-cs{JeH|;!z!= z@fQnU99EfnWkftm?XS?4BTVaWy04upS@6yGEobcQ&9^w~@hIpf>~Bv^%ZmwSq2k}} z9XpJw-Nyuk6PTgBCr%0>f|P2D5VR?l^q?!zZR;Qwu-x^4a+0gn{$hbITHW|P(u~GY z4)6E3eANZmL+Q$i()zGYqQ^hRy1lm_48^FG-javcrdWgEtwgs6pSah7SO{zK_mb<^ z0}B=FW%BRC-^S_w80CPtbv|0w1csuf4(gy=0d*as7wZza*_d95JB-K*Qic!)*Q<)(x;n++vk#{Ef2?!He|$H_kr?{KIptbOZF9 z9{C1n7zSwAZ)+$vP8G6`D7ROa(N7_JWP5tl&o#0M?O;HkIX@;5rslC5$f08%GSV+=-L-&zH5VPHe%fwvDHs%+;_> zZDwDxtBH|zT18xUkCBNZ=Qfx33>Ae~%{C`)2%0KhVj|2cUt5_wwr?(De1DD{%s-Aj z{8+wzw)#4u??e=K6{6O9%9}aqgP!($W8UiX!q?j69%3p|wJ>IIyLHny5;LZhVfWp4 zm2B_L>B9PVTKoMPRbI{V1#0ogY(^< ztI!}S*6j((sss>Q98jW#tfWLCC`9IAC~IX&dc1qZQa7LZQHghs8~C;ZKI-!ZQHhOI~A*9I~7+Y6}(;N+F&E-uql@?lH&ObB#+6f<>_9I;hGz)N*yAaiY>{4eP`mlR1I& zG|#6|x!AU~7`o+_m!FLzQ19uP><6^17Q%4}rBj(m# z7io0JsqxdctL}>!U~9$Wti7Ae*EyjLn_>GhJ1vi=1pat@zSU44R9~>+RDE(^pe93R zr86)QsM(r2)Gk=ocQk zfU<*>!NuF=8YkX0)xcEy5)-)~;6AXXH8&`s%Ol3+*jikP3`bg1(j$X2d(vGmQ~Kp| z66(@SgO}T>{Cbh)JGP8oIIcK9BD4keF4|At(;BloqU*e__C10)gZJOfdYLVnjCf$5 z-5Lvqyy9}qzfOL#a8p=dR7@*4xL&(MQVjr1;GeHjV|hyEJo*#-DBuRqi^6w%@hv1R z;M_rW%aKQ}$J>(=8kEt;=@V=or$4BsKJ;Mhu7QjcA*}5>tJf{WKTkTn>rvN={ z)Aq7?#f;MCq+m)cb*8k-mM6V=#bRLN{=U)Jc{_)RrRt}>TkPR@T-r_=JmHM1#q#DS zeWOi`+B2oHBchtj?`1@scA={e-)8C5562*qX~ZMX6m))|13_mcEnxDmyu; z=sB50k2=@$m9&26^P^?m+HtWu7xSJA57uw$Xpp?FXGdsFoz0VOrVEdu9*Z4amB(+- zcn9Xaie+5I-^}@2tj`VjmYXM-mnxtqcZBQSO>XPAlB2en&(6?b_wQ5)1C`_ruCa-~ zbhvTwI=(x74>)7*wRfLr75ZkYlA?hWw(jWiSaM)H-g&1yM(EL<251!3_pG>x@gSa( z^-%HE>3GVKQsthZd}`GrglrIPzVf1|L)Oy;`&##`0pskc$|mx)J(vf?DMvEVYZGx- zo(SPd+qwFF?DFn__Wd#aH)W*gPz!u~QKA){5X$E5{=lBlQy5!kzu#5Nol^dgkCUR! zOAr56_LSn_<=MS=2hp>4hyEj267SRt%5df?o8a*~3t3Y*37^E{DNaI>$r7?FN9KXB zqtsi6U_(?xMqo5yn$wg1FvO-a1%94}9giC)Sp*r+We*i}bH8VpI8*L`S zRdF_z`yGJbokUPic>TN||C||<8n!4+R+e?!_@f*O+pE!C*G#nmxd&IX+LQ*uBL1V%k*W!(Alf2G4{M-5<FXPc`%Zrb`GYKotm5}Q$i;vUMkbR(^$oHS5gve%u0UU zISiR?XG~@5zDHi%XNk8r-^0S%)wxTc%gKKohZB7#&psy4x^N0nB`*`-P~Da(Ag-;a>Ru3k$QzR`X) zHM;EmVdgu%QQ=qK=1n)I^^|K-x>WxHwhRBuEfdTCb#(MCaO!zi9xQh{R=u^KfZ*28 zt``cp(hOTRNc%>Jm6kpf60!ar-i<*kDG_$$_B-+zS@DurpScqfVxKK@jgPk7m){V; zFB2k-%OwtS@J1OuU#|POl(N`F-j@o)I!Nzz?Q`%8=pbbyha5j4a~m$ht!CAH>GA62 ztwWrH>`vYmHlk+iJ8VmoMe3(>zq;LJ_PorQQ-|z7fxLl!Z3*ie0!tT|`vl4`thm!Y z9|sGL^WM67{X<$&7rHss-%*z>mx3Chs>yn1F z%gJagrGLW+#dpp2W02&O7y@(WXk%S^p!TQHb!?h?%E5IgJ9$Q3&;2!mMZT8T2PTZ^ zP)UHSD4dpEvGOGnLs5#OjsHL^E6i%?YBith5Kkmrb?5lrhvl`ndzw@Sis zG5+<;lFQdsdhd;*zH7u29hQYImLED?jt;xqilXZHEf`(kQ{|MK_=fd%2!lOmoOQ9l z$7dO6X{BnM#0~Z|xZ=QUW-Z7CA^a>Q+cV_e%xVyF+vN4;cJ#j7mJ1@mk)L`I-|E@3 zCB8=7#CIOIE=o22Vu;%k> zGiN(D7BYB%_W^u6_d1+Xj;jONY96voA@{0$q2IN{U!!*S0D;i~A-(dt zHLV8J70GEJ8ZdZk9ZVFDQ0J0XRGLu}u^A0f+bmGi?=t4~pzCX)>u30+S`zZ+<9}n5 z?>QahZ(86VB4BYvYQ8D~#bE>&UDm0R>(6;yp=oqT^R~G+1g>{6P;XXFT}+}BghbgK zrU0KPo&QhTazRd@CmXXC~88&!}!C--VN&uTDlQfF)69BN=49{MeywTBa=$jq?Z%O+)g zyJ;Iwyz+~O&H5Cc!Z6bUd9 z6jL`ReGlg}sOX9C#x|b+JR6H@Ps`-tqn1Mqnaii{mP@mklN9Vc-%!(Y#~NMwf^ zX@?sBHXkwrAVm+GJJ$Tr9k+y&TP8;## z+8{QEMOhe4gVoEvQjfZvICW+C^pUJT{(3ZIpT|p3O{6hGYPD%}uIzhSunt?O6@@8D zTkw>ms#C!EV7Fg533*&2kunl{CRTa7c00cIa-}13`bdfqcSb~V9Xu#?FY@xkm{v!a z!FzhGFuPx`OSM!a*BG>(5Cp%UYG<${#V7Y1aORf0oI`SD!7S=VEn3On(CwfH1(Ald zR5r=z6aQ@Y^YMz7MVam~OT|d6%61I^N&xfD2r$A>96|_vKt3aO?H_F^Rv`re5oKo? z##o#~JfP`Zn_R7#A-V#vfWRz$cELMhQTOkj=?4+E7aDg9gQ1g+G#7=ypcF?X8`lp_ zEDTM?Fnd1hM1Wx;qKVAZ`GrDOuZLb=R;gzd-k;s*t_?ZrUdcozHn)!I3Fu>ktVDG?9eV02E_TdNG-qE?rkVcn1hj(=j07!$e1?EQT`PcfoW-;Fzomvb8!n%Mr#udr|h7=546hfaRYgX1;Jr2${P>hZ> zV5I~t0=AhsNkT5)vqKwV5K62m`4(3=9E22%p9Az7x5#^>Qm<*!1{Ee_uEW*}6X$uA zD;S24ErizwRg*o0HAp9Y00vd_bvz&Zsg^Pa4iy9^Gk~-_mv5fo8?|X)<|OcJ`0t@v z)`kG-cqCaRB)jnxg%JDt z5$}KUkr9P3rgCM{(T0?GZ$TstjFmI$MG5$%g2Ub(f*XwzFcOErXZS;Vp#lZezW^7< z_}q#>LZ7Go&w%;#4p{e1-+TpT1w8sLUph~($pYvhpc_*VPzds$ zeGTK^>G!SsUddH_-`Z0lod%5J!=Wbeli(01vyvjvCv}p3KM79~4T2npfYJ&47z!Bj z&l^A`ey2zJJvK6wHoGySGZ=QCy5ZfV;LOL--OSP3&e78?H5nEn3sZi-dt(s5NBqMe zgB%|djYTbaEc)^_dWm+tjVxjjKSh+x*e>p&IvLKQJ|(?EBza|u+R{zUe)dY!4Fag|0R_0iUpcCa7vM=$D!zOM{N z?|5_lG)LbYj_7u`2OC0dTs&gJz@o$G;@IZp%x3V|PUjeLrxAfTCA|I#TdL}1z{xVoKg z{ovKSr+WJ1M~hGH9&e)_Zvp&y3Nq)i?J4-lOQm(D0P`sgHkyV#`t_u{7c<7ei?G$5 z@Kt6ZN<0HoZB6q`1Iy?FheZ+?35^pP*&SWCQmDGTp^LwTt?u-${s3OVbXqr!l6#L? zt3alUL{G!r@71zMbvrn9es~JzA`uK%YW9lCS-pw88H@%K`NN@grV5i6X)Q2y#QJ{Z z`hBm-mOcqqMj2MV1+1aHm~?n2vQ|SE4uk)R(z!}Jx<`?j%;2$Jbn`NEA@1=u#`gKM z{zu6Ak3#HD9*~w{9>-JlrGA|j}@&<9qjPPa69#?U}QrH>{66zlJxbCS2qyloOs8FSPn6E zmto3q^G6Wyj8ID`3>?Z#r(SIdEfTCkttYl{bCem9%tx0HY!m-amBX;})B5S3If5+B zPwrMhrQALb&hsyz%uJ)Ekz_7|Bbee9;wl;@TaIcNtQS<*AHJ0-LVH$M)SMVUDVgQ14zmP` zDEtfKUn0(hMLGV60J8dji-;K(Ym)8J|62fSKI}XKeK(Q$MiJXN%FJa5?H^k1On!v^ zs?-z&J>-b<(*#by9OF~Ja4BgfD5OM$d2hO6o+w|z zrb#m+_Av@^asL+M{C^c=sloBvs-=oHBST+AnTq|lwl@E{CQ&2r4R)n=UVk3FO%8a^ zjJ6K$citC&6E@lwB)wX>G-H_ky^I?2OQ6pvNhR_CX!mw%!N4)JIOz-td zB~=WAyA4s%YhGbt1Tbl0ZIUX_m%80HLSkC)%hhGCkN54EnJ;23pW?ytj_4r$4qKAl zc10ZFu`?wc;oW!?zB;Oet9T9U+Y(b?Q?#Mx2OQI}5nTJW+ER$Pfd)&Q+Mk9xVX%Vh zx1#CC#1#WPtKd71X_>__H59i8LrRslKV#NxHtwS+>VJC@@f7jI2gReQBU{|NwwRJY zOU4$q48D_a8bn!NAHI{kD(J=|md?3TPcxcQ(T~Kl&F>C@moMrL!Nch=8==ha&b|t| z3%uh3<51KWFCE&NO^u)VD8NvpoT-@PijEB{M}O8yB@$GgkF zb-Yh(HnNfZKS;P0YGwP4JiaKVD(ip!%L?@LKUO>`{~O||9B2jl|HFz=qr;GqL#UIm z#-uxI9}3UOsoQnDkyYznBZRh3z98;3@ox-S)^nND*1R&&&31Mj5M6!Wwtiq3Os~Ij z?lb_nq>j}RE%|cs1ROxEtpP@Fp1ZiUGC{UVrv1YxCU$sd?#dtdY_m3!F+}QbI4+@* z>*MhkfFEI2`h17u^L`r_t%qV1N>Z#aCF^IjYDib;p43ji_dybsr!ZV`-lsE=%#P(? z*ip=-8r>tC2t=I&CljrU2||R2BIc9>Bp5mhFq0cE&|=o&MT!HYiXb)LaNL^A@KTnV z)6YwSkP1R?JF7X@efSxdn^_Q0Y4GIkRCHF>Qv?CUr#UyO>tO5pjp{!a245m*bSU zb*hzUp#v-Q`A$)6aOeU!F;zPmS2%?J!&S**tf0CHyaCD>Q96d$sn$dal2pq%2230% z234DGB|PPGL!i35UNtH{+aE>EAXUUg_N|&l%Hwbz0-#P5{vd*##_YfESY}HPDZg{=~@j$aw7{+$9 zR-~yM&P)tr9o1l}--TYjtpxW7R(?W$Zjp4+8yT!*s^R*|@UZDKrk;}Q3aeGrDHcQe ze3`iJA@1{P9$Mp6lqiVw^Dq-(!7n?>W;3^K?j4-AUbr?hUy@5o3mv1G#Tyrvk>F3V z*Q|=c%c{yoEs6-tz~V(Iy_Fy0`wK}#l3QRR%lmTCrHrA3OevI%Vgsn~q|q%7NRXbX z(-Fm#4#+E1M$RKmJu9V@5)f2by>aCU>pTdeWu1xnmZS1j^$;*!lv8?D5hjzZl^UqU zF<}|tl*P58@*`iWr2Xm4Z$u?9F^_S|3lmgXqb&|HWCn^b2C?)YyJyklQ>c1?|tp{3=0FU*@f|;(!q-Tlkx#Aqn^;;|Bu2)mFlJNQ{Gme@RFKmI*{KGQGO!jrEp6rjq?}YJ`9CO= zf&G&*Px`F6t^P=+A(x_fOdN#*Ca<7H!LLZO1wMAMSYs1jCQ0J#Of2f=SG%ctjrSGG zayq{Q_Mr-G2r9;U1Lt+aD#Io~4k(f{1Ya#o^8%jFD_E`25 zO6vU?g;7RWb9hpln+C-aweS11{$*cprjb8xok2ASWyjsr5vOFpuF)^^ zQZRJqK|o3HiG^g9>F7_{UNg=JCZ}CdtVx!Vsh47?hw?eRlPgup7dlm)%>tgx8foD< zn9~Hc*8DAdO$EVG?D!JizDcc9MdzfyH9!U9!*IU{(7|wj7QSfsfw%{?n^1>AC{~on zJ#Cj_e>ou}L$~diE?R_a zxkmUxIl~U}dz!Q<{am;1wzd&?p_TPBg7Dy(n7TGPWwr-eh|>6$LA)c$o^I&2;}`)N zQal)J*^gbPK@x;t&;F2Tv7bB#q$vsP*_fF3ZtlN=*)=@>6*FOCt6=&N2^Ja+;JGjk zTxd|zK5T-S#E;X{&2_5cDg99z3I|k5p$b$AP!t4@cjQZ8+?Im1z)+Cc);4~`rXY~w zNh{#qWDN@jF9uTL^;lqtBjpzxI0VO%;(1!SAW3m-pJ?w69-93L+k0W-i{VYa=cuab zL_=RKJQxtHa(_nWCfG4Q7Ip<|w9}mf$G%JuTi*EHf?9aTpOsh9?_}WY4uQ zGAaQr7JY=3A7}WS`Hxdfq7LmQK>AVv!HX_8Vnr;mYq@Mm$eJX3Ybugas)Kt}2X|;l zLOUAJ=I}*p_^@F`cNwBu&j@Hp6xnyCw0{b@>rs>C{WuiPdoayRDe#i{Uo&)hz-Fe7 z22r_4GU3B!K`62Tsv7J{gAs#kab=rtkU+D(nVlkjnI_!>p^bO+Ldtc-0zOWD7Mda6 z@v_1}ItxB5EqY3p=hY{V1RHSwcUZCtQLO}wzrylm98~;BVW9I3V3kT%#Q4~W?&@dp_L}ANH z88$5IUvWXwXX1=cC<$T-crYp)N;4L(Xt=f(dGAhnX9TExOk0pd;FZ0?@)2=oMCXDx zmFdmITpNzK!QP7KIombNbUjC;iy)PXwvMPX%H$cWTB0%!5;Ep{YNfrf`P4Pt$TS@h zn%Gw$Dr#KVQ&CRr6twv0(;GskHR0wLR%kbdT`NKO_67|D?@GK4&S<3|P1Wpf&cnH? z&TL|m?M;}e>YG2?7#OAdm2wZ=jbc>@X|;| zh7`_2vhN=*+D3*{fImuEv4-jb!Y?{KAZ)ExzLAsH6wXI-KBt!k=Yr)FhDD|7w~zGl zGc|V*BLP~LC2|d%Cd3_Pc2tDmu4^k?5M(u6FrBq;=>R!a_;pWt821)>m>9(`pCj;B z5a?|f4boQp8!2H`xxha1u0^;|vs~?Q(0sqi?;RwexXOia77J9r{_GZuZ)ETOzk(2X z#9u*gp%+;re*vSsZ?4_i3Yet*Fzwh17Xk(n`a6(7MC!L&Xj9$K!1spn4-MEwHaM^0~YpV9imtsb;2T!`e|kWT{D z52R#{_%r;F<0zBvuyYsi?^;wp78Bo!F=By$U!q(*{(t`S&%5VJeu?6QC0P#YmVX-k z9P?8Me>;XFQrm6FmDeQ1M0k5&P8S2? zf^`c$t>t~p@Q2u%zses;EQCcs*~+JNA1rW^sQkgB|J33W@GB_pKT76*i2{pW()m2I zH$cHcqOSum&X{q3mT-MveTmdcP>ueK2CvQRA33+s_>REQ*helk0m@N?dqY7wZc0?} z(6r~?NABm`M>d~k1_HLP`9520kTOIQV%UPVqI~uy8Jz| zv&@2q{6e%^4c;4O5lhWe+9?yi@foyaAaGt$l_oxT*_L-CK=xabumzJ-K@r#xHbt_| z68*ku_Rw93*G|1L8-J)H6t}Z%LWTnc#lZQl3~!CN$MWQ?lrJ182w4`O20B!3P~XpD zjU%De_v=A{)q= z@X!D0WFK3hKorrsY{tNNL_;sQ{N-@IKHe|5&c#f%entQgM9*& z@m|aiT7@p!hAd92C}RJM&U(bw8e#0(40+}az?f_gOs ziqtFXKx6=-EeH=AZke7kY5hQA2xT42{I{-`G0O(J2CiRv zWwuPdmF{qTGhw+97ap=Tycq$a>Hs)fkCdK<#Mk?9D>s7G6&LzDS_;6nme;@cxf%lz~8$l2+RiRGil$L>`f zLp9tpf1W7 zplzI|y+7UaoSrj}?G<5##IS>;g|jdy=qI>YXuJS*oS!i+Qk$djO&cWKewiYD`UG{B zeZ44a8aPQyY{o$x4I>;C7kBGsIDb|$Lz^7t#ydBwGYP_@vRz^L%#P&+OR^Tp*fJ2hi z$)^PQAi-i2_^n&cU~Roel`p}^=4G!rzNaOX^mubi_6*3OBmcH7=q-aDJzwfq@T8%BQwHqQJdtr}O!P$n&k{}EJ^kd%f>uR9XJIzP`#5nu?58F)l7F(m zN=X7bb0qd3XPnWX3$W{53L0@z5htYyrY+c8od>-rXsGRIsfB9Xf8%u=I!1JgCCX>R zMFgvp1x#5>SE!h*iKTS$xgy*OmnQJLtY>{<|GMg9pZi72Bb4B%SGrKc2jr^P{7mtF zC81S>W!H($Q=CeLM>!g=^5|~c#EVXr(Knj-p!ZO_gCD{0Nr36gD0v7b;?m zTkU<0Ulhc;2IYnP>$Pl#ai|K;8?zsr+h_o4Xh*{pzqke)#IoyGY(8P7#~aJQTT(s( z>a5+4a@ZW#f+`FUmtfPvE{qWVMuR?KwTJ6`_(0`?KTbPdk*E}}LU_0oSLit0Q?Mos zDAE!@SO-J8|BHa69VU2 z+eo?aB?e`IjJ!uZOYH^y>s-2MH7$i48b9HFEQBde8%KpRKqnt=@du9uthlf8mYC88 zc*UI9w_?CqNwRcKKR!HmAoo)Uw+!`MeGV^F(zAfE#XQs(j&}4Kv$#Ls6c%7dd~HbS zU6>*Ht3uMmyxvdBDToFdRXx?4Y?gqrp4LwW#1MZ95tp&(tj`gbC^AHg?jR;$ScnHS zr-}nUt$taL&dR8%nq_E=0pgGid2r=6^bwiOVB%{Qk4lmmCb(H8HZmlV$)jnS?tQKw z@2!_QOU7tz8lQ{X^nWv^zZe)GLp&3+(K=kq<6}}V2oP^w(CE}U6hIil{m^X)5C@h) zz_7H^W@)C#Xzy?X#DQmX)Fon6@(iI7e^mDDNl>CjpB6F_mX#E>_7s^UungX$g20m0 z^pqjqIuArLMS&hloVCz&8G*v8xJ`i3G}YTLV2CP~5`e(cYDZycWM)w2n+UpMV7nQr zr^q7s520fIY!8*EF7jzzkgw(mb`L2}KglHbXpGZ54F5|VZr~qvqA34coh<@T9S=;8 z|Jym{f51!+UtAJg%l-zk$HIlaUyqjW_%|swhPykzq@34}|LR%zXTw#Ikc2@WI0(oI z?0 zNez!=p*0lb^T++#`F?dE$Z5!EodN2FLUnZH)83+9k`zJP)*sOk4+jxwQ^DKttAZOH z@ZeH2T5=evsjVn+WrPMP!gjei{#?I8cBLE5%hI5vW{1B=a$81RE#jcq6Obmo$(P?v!nCKTO zO5)2!LXi_loGc~&Y#xxPgo{lyco=-hXkITQSty8{tHl^9f{Y`|7me+X`LKdb8XU^|5;5DstmS9>;tCYdHl6?^5h^uSkP5XE9iLdn>qoPF zgYcEMR!5Z|))4xcO>gwUNOTWprJ~A$0ujP5GM@7SIk8h&E7etPDt?HCBt2IRP>rod z(KoWa--ydxs0HnE<<686HV}L#AK(BC9#SMiOt?D1!7>MF`FO)c)Fz%S-(j%DBwn7I zLUD8N-3>`+7GkQP`Bp?WJ?s} zIaJ(ufVMO5;!Io&1|2xT;{b4`9CbgTG~Y$ywFJAln9~<>_v`>f^OE zD$HuMUF#yO&kocEd9E2M>XDPZJ1U|!bznCgB^4PfXZg1tfV+MLTcrBT5s0ORwj{8J zf7x7zLl3Xvi%$6bLdM+@a(A`h`%)c(sZ?p^(*S!SD#5LT&&M8RfZ1C$BiRta$6#Gw zK9Y&7+-a=T#sAPaJ{9{=s?T+0){r*RbGb0Z;x@G@|5M(s#9(3zitEaJ8x3;GeTSUbjQ*4egng~##<*byQ;-_G$Z})?Uf&vJ zCi@m8uI_;Tb9?2f_K^w*umx2s z@aIqW*}qy)eK9ju`L7E;W^TZGhy?*;&bxQ;Fj3{eG@A8uA{!22SF%VevLgW{YYT8Q z)Xd9Ib}cTPt_Ld8Gt!D}KfD>HUFm{9`|a7F)c5l*mrRL&gl(CO(!lV;#9(D!!X;mA z6zf+)z94-Lj~OO2u3&4FK0yIKDtQ7oI-h`WO_N|AAJzDr+CEq)XA4m1L{_eEg<1Pr zOGC5}bK6G46Du>wKG_6{zv6i?A03Voskrqn%l>M#pq=9h8zPHdX| zAjK0ZK-6T{tnAdyurhv{jH}fH!0I{W$Z79KcXL8S zgf1b)vUxw*u)Bl&r(?f)^Ic4U?Mi>cfq+c9%scV1N^W81%amTsjE*nejs82#}z zk|r%%#x|)11C?$xw0Q~%-x~y-pdM=@;Yzq;;rBOw+c=i1dg-nQyLhiF`e_Q#Kp0$C zQ7Ldz-jCU5& z&oiPx+8bT)J;S45MDgM^$fR)g_*>ud6j>lMz zZ17L7a9HuA3dG87%-NqKmFZphAC`27;b&8r8ouC_v#TcCaDqBK&&3zj|4#M6xxKV4kiN&9Ys zhtad(-Vv;Pd_qUP+wG`d*DTvUcjWABZ)0%?`QrAzY>e69LkXMfX))2tgPRV!lNo&> zZ^RUND1JM^$jxLBQFsny)hq_~0|Mn!8*3L&A(fSy$VEv^_`-M&wPihnWsbe{9FpaD zAKZ82cNf-=mi9h_>ApNcdpU%N*V#KNH0g-yNqiPh{`f7cyHuf8{asZ<$HRftd%;wd zvFiGL2S_mHnT8)nUn9P`y{7e2U6gsr*Gg1=z5TClt$#kUlSRndM}du^yXZhbF#ml@ zx>}mqnKA!$Wc{ndnYO&c1{Y56PYsmL!=;xEx5!TM%eAYOQbe>i(YR(Y9a|bDk~4~4 z#4D$Mf1|DXA-K!dq52wO_{)X2Onbssq*DVN+Vw~pCFkQ2`R|m_V`R?)K79ttH_I1c zM4-RJo#fu0w2zcM5lMDRk)Fn`TD*haM^^B5!CsIkmL#uQX!mVa>-5^;>R_-vVWiq; z>-t-d;81mGQ`#BBNc+UV52rd%&4@7W5@KYLf}j&u$V;p{HW@roeq-GfgneJxnupnd zLBJ?+y8;7oc_&IB?%lO!AZUTzXc@{$lA_N<*5L6@c~%4PE||=ps$MyhYK5U8W@-Zl<}Q{KuVFlYOxjm8EXrTaOPKX3LrIA_*Ex;h{OJ ztZZYm@_b#R{~)zRC?P za?uzeHI^FMe&mH`9HqQaP`w7ymW(64A^&;{*0DwbyB6Tsr&w)I7wnZJe2mAmS$shz zpJGQ=1Q(kS2chWVid;bU3Lee*VQZA71ds$1=+6gtY9NL7pqW0+T1$$}#hPRim1#O% z`8ron>^LOfTqkPU`B}LgmMjz7zCXfWzd?PDTzcG&X7jVSd)f2~!B_}FDJvPq1HrH- z=`W@%Yr3t(7AFx?yM&4|(e!@rkob-G1q#!oYd5`9$Pq829r-}PeQ!1ulC{!8O~J~O zdau;jkoW!Y&bS24#?Mh*2g~RTZq~=~(=U>)@)cfvDyJR

#f7iq|O-rnqp*DMs<#4dH_vX|{Mp7y_MeBt%Fc)+%V-N3F;7WbNoXj#o_BN1SocT z4Hl^sK;Ka%^Ob6G*dj4Ey-49{QB{gDXp2vTAlu(Sv%cdUK4 zZ~+^fm_HB%%0O$21G5bVE$F=;nF`Gke2Nspc}7eSCLHbTSImT4goY5zLtzCS;ru^* zU`qM36V|!qv3Tj>Mq=W*YqgU@S_>2EPX(@G#fptc4RfgY0fH#Y> zXhn~te>yNip`J{5X~1=2|2i!Vs>Fb9kpe8_GY=?HhRn z%(U^N^LC}t*sk&cY{Ork>! z8jS5+q}<*Mm6grvr&h)texz#xo#GeC@h96` zBu8b>Q#0B%6l!n}r6#Y^+6qb0pIjKnfur1I^ws}=XvmgPmNTy}EE z8SuG%-3Es^E1v(O=QES!&llgfg*E+J0YN*W-rb^sl`CK}5ih~YYpoz5KM^0Xz?;i6 z|9bgdTU*rzqbo|;T-C@6Wkpvxy14N8eA}Flqj}5XiACESnHL)$q3o1!0S=q*L-mRU zGHlt<+)G>f&6?qedKYu%#s>f7M9D+t_0KEgmj`dhme<=2;@Z0u-fLFYhgV?D%WdEB za_`+4+nW6&`GRtozoy1U2lk`gU8}nmp`Gc4WtZH1qv^eB*;E-O$K;~$+eKBA^Efu( zN&c0|pw2CpJB5h$-QiZt-3Zz3Rx=JI4ukMZy~lm6_j9$PLVK66mLl@&(~x0f*#wvN z>c)m*QBfdq5_1``Ms)Pp&C}D?L+{PZp~J&lX3~-GSyJ@E&Ko}Q-do8)$i#}LuXnaA ztl$|@o-k2T)j@8$UadiX-?P(W+5Rdb;0 zZs%zUDf=Gi8c5ukwbmUB8v3;f8o~t)vESYZdub88c0O!LzvJwxyqy|bzOj|ANzc4Z zX*0xL8Q4GBzBypph2}0iOno@Nb(nIS5f4avt=_Oxxz#lpbAYpvWUf*SU$fE#L>lt| z<+az>Hk!(YbiDH7UMdEAnWw@-c4ziLM+G~cTporDN@KIQ-H4+Iih5Z|G8MR9Cj@4e$51wd@+FxTn%iikd7=)y){V z_nBSqiKOh74I}I;7)@Guvvh;b%u!In#77~`=H|4z6Ao(`jJ}%tV6#ZqDIwxgXw^WM zk1(#i>AZF>XTUezH=nV!H{D{d#UY~^v%NhvE-l2HhKRM^J9HRUx{dJ*#WO*BO`POI z1S(b+AZU><>Oz;J+0;VJW4h@AWhGWB{X_#^G`sP7q!^4M?LX{o`l#`jNbO2PeXQhGe&#wFe30}gx$x0>#jVmkEeVs-f#QXKMt*L zIV*;CxDkuo#!zrx@7*8ZP8_`sURE>;O)}IcTDq$PjOuuGU6204Q5q8-*LL!Qo z-B{W+P!MD>-I%z+Z!CL>4mT}-ZDH!zy19(@IT+cWdmMZCxpe((Su>&MNEmt*tlDzQ zlRoKDN3-GxMy{nj$Dg6< z$f5S0A1%O!6|-QS0=ySVW4ta*af8fAnEmSwku9^Zf7o&6>qo}8K0#R)0b&aMi!_lG z70CqzN!<-(EG`pKPF;@js zT7^~&-0ncE>n%% zJr}JfzLVVDMkrt|_>1V4gw$u;?_wT0NV_FcG>T8iyI~JX^R2knk}u*Al>_2z$XNa< zs!=6lMYkdERL38b;v!2C+Ql8tHH4>yf zD1h5pj+7|%i%!KM_stfd*F*Darg3b6L!Y=^Qe2Gym0b>zR7%Cq{R!TEjirjrsjEqx z2Iyxh#KTYZio8l4W5i9oO6*6~-P@Pvjk5MGp=dZCSa2>)T_;iYLyz=7aWfn@ju(_V zdJ#GTDmXK&C+$pK;8aoB6$H%*9LISC2j!m7L`8#|Z{Qq8(6%8+=iro`$D*oKSz&M7 zKL!fBer}$Bk8i$lrMi-B7&s&_)239{cQ!+CRpd7M`mrOwZ6_(SGr32R zivhTa?Ee1zI(p^ zz4uoao1&^2bBwX}UOm^`z4pW%gvGd6YVgz*$n%J~bBk(HOGv zap>|DDZNieb8J?UF?pQ!_;In8k`Xnde`{sPZUp*;hc2M(AZ2jzwzkn8dG7`tmABSi>nyUyzM3h~dAPVag&xH%p?suRwB-K-h)r8XtIxD<-ZoDO7~ zQ(fO4b(W31xay2Q-h2UK5e?Xu%Z zZ(gw+*toxMG;!I^VPdKJ>EIrFI3Aa_lLk*X<7TO=X4PTaeXhj~e%m?E~;a!yfdSCh>oah;X#B){rTPAYm%Cefqr^?W6*-}(G#S+`DH ztnS6U=fZ={n+6&ruiM!XT2p89q`TR|W2nbsM_1+X+cVyQMXypBSMfIs{uY~aL%!wa z3Ff5==*b=7x_8st`mN-sZRWExG}!$+Rl-1J1;cA>;x8TU9K25N&ff#h*n1s5PqYes zvr|pcL<(DXa(yg0up95ZQyC-l=uQJPiWzuTT*P<~Psw?x`s#K(&rm+K>JvgX zh&5k%QPd&p>w$f(d)9<;@l<0I`Pv@L1LB+`mFTsJxT`>f@TB8XeLr@2cR>68nEsnG zQf#ONKE5c?nobC1^LBq=Pv|L(t+U_nD&|f(f5^vK$@Zm(e=B=R3ApF{-n)b7*}KEw z5iE&!>IG#ubCpf-_??BUDV&5)^6?ZWp~!Rz*^MLfK-g*X?Zx@$#Msu4v3C5VpQ0$} z2VU~g6RfOIRGD(*q%h$!pGc?<{nH=7Q9{klQN%}^iEve2%;bLuAb2Mc)DvDm@5eu9 z#-xTV%8-?1-8TLxhr;%1{H$lL)_~lDt5xm7maLgz{46yhHWC+Ew*z+Bmep8yt9W9j z2^-3u7o$=hK|@Jcw}zhv2QvNMo=tg)n!-%k@qjb}xvvJS1Elk7V$4y^nL8F}l)37@ zJS;8#I-}(`k7uWidz0T13yBr`oOob3S(UMuIDsgA-XJ>`;F1)KpM!Cc!zz~ayZzEr zyC)v2s(Y@cYzWKjWx~kCtE(~gykZhUqFM9joq{(0puOCYw@OvO*P1NVkjo2ox3AX= zkIzi&c6sRMhT8@A16I2!ZdUI}=WT<&(r`DK+r5ky;%i&qJLsO3)O?xhEVCCn0hpfB zZ030|Qls{cW|N&-oGDX6CnsL2)4tPK#dKHFl5EV%e%(0?nQdoGW$V62UfgGiw>RI* z&Jvof^kvdY%aA3mCcQbbs2VDFB*8>%US3_pLJt>dp|Y+HTy#CK&*K3NqcgZ>o7q15 zS>z&uRJv-m!K+7=*2meU$~7s=e7N6_kj1ZFOBcS;el;_`?EPWxJH1iiSKj7LH>UlR zYgxKf{{prP|I0lS%l~zB^eu4ec~=1}cRE(1wV#0C*3Z5d3b@h?TQ*GlMu?S`J`@tM z{vF<(K|3iCcI5Uu@)%k1l2@OFGZJE-9dnJ3j{TS45Wp`JB8|%@4s!5D89!gH`?!{} z*hb!$3d1_e>~-yP@C)c7Wg~|iKOu7)EyJy5)qLsk>gBCNoP+F6-WE2dX6!p`OO!+E zr~7<$yUXl(nKP#W*?$6g1O3_();9!}E-?2AlwnwDr+q#S798ijb@Td%jFKL7bE?0S z9$PLG!_A&&#~N0L&)rGc^1aBe%!htFAu-bNy0+IP4QZFN@mNa#hB1oon%&1B$tf`e z=FZW^y39cBPvh&@G>w#l>ri&`jJlrtYXr-DZLbeZ7_*_0068%@ZTn)COC*M(6enB% zfmT+S)zZ~!KDQyBNVw|G@#Wo3Edd0GYXxgx^iXfrgyUlT>zO6judDRl8%2HBh$p%% z3tcQfbh(@ycejg^E*d(JrPVu6oiGSt>i)jWwC>}hbrf!WMj zkPkxmSxUBN#J!o-AmqNu>&@-teYq_kM1rF*^&+v=vu8(qjkt;LGHz3pYVyShwtgq*7Gv#ZqJwiX|dTMYH?wi$ce=Y<~Jk!?2t(;rZ)`GAkjtcm`g z769$O@-FV|tD&9%Z!sio`=!66raC$PCG}_NYByi>kPL_MoelFBjO&<^A>rNaXo$@$ zJFZ1QC-=3}z5@7@gOj_`?~`qh0XxB;|Nra&98vdqUp8Gh+qtoj!2`Sx;M=*^;goaS z9LZMmkYx+GR}~8Vt`!7wUkoOgv>C|go8Vnrk$*y6Bl4QHD9bhQ*GKCN_JBfdjFN0- z8Qh=qM0eMx*H-~YVjDOTD%UfLRa?E2WxUy%KTR90SE6NpIkcq>8QGRdt_;u&mjl)!337o0^0DzvgqBSTT(qDGklJ*+LYr}|cH zXMb@vUVOh%71?uguZHui2J@sf^2cC3+ctnqL2Au|M0^sv2yJ#a4$ za^%?)cr1i>oRM`zbnTzxooj7_GHOOZpmn_Zv9WBLlJ=RW?mF8XJ*l5pjPE^l@s=2m zS?y$Q@zoJ8Gfd7pSFR(5`{Iqs-uq|0&RZtZ_V3?mBYs>P#1^n93!`bU`q@_+QI`{^ zZVaD3k`2aRkA@ubcnPYBG)G9SH;vC#d`}D3VGFgRFr{bk831T zMqtUVfO+>IyS>Pp=hb_v?45m5St=fYuX& z;P+GQ43?z$@7cNUkiI#oVdID)}3_9rd9g(vX(QCK-L=pY4A>UeU6s&^>0U z8jDxitpPv@VBQ%4#u!RN2%!(iXT)y(qb@33=i*twvG@Wact2Hx3R{$0e zm?cqHydxG3|L&Q75Mc+QarZD7I=M&-F$fGw2~@IigV4mn&}0nr=d(@(7$zc`$V}Z| zC}j2e==Eil`qtt7*^QrdAV)t}GLebT?PEwT8%!Go!=R9X5Y{_0o~ea{^v@w6us(7` zigBA^yG;;Z0mA<~Bns%iLtd;|0zDWf#6gU#phEM#&ZU%jfNCqt z9Imath(ZYGV`VPVgf)O2+K0k`xcnBW-qv6%Uzv4462(M+#eoVfffWcx_R&*h5%@bkhf5 zP_H;OS727aW8nIw^Yof5fF1(6F$DpIAphCdDE^&(-=^=CT-EojJr&Y< zz&Jh}Y7##Q4skLoDFS^`H|h72@FdY7$Z-fLoxqQwfFb|90aW65dZgcDBSUGk8#B6t zVfU#U-c5=wd>q})9KG!vJ>AliVIgub<@dWch5>xUKMXU-@iEa@)RV`eFJGgVXvf>g zA{Oye)EGO`I-W`1#`KOG$D%O@^*YtKTat|jACbCrDhysb@OJx7&umXCc)ZnkzbR*XR0Adg(>}q~?Q|OiujW0~(;q)te){b3HtO*f zz@MimdoI_Wf}gxpT4x5Zn9^jUY1pG*Pr7?CXB@l;Tipp?Wfr2uGc?oDvdA>FiY{(Q_|_s>>U?_*>ZOPVedu;1x`#ebXql_n5T`WV%T7G~E4OEr(RMgHz{+ zr)VJ(!EmMSprn%3o5-8NXgHBS99n0lIC+uQ0#iq9;74xI_nK_wlVEL}VeMPM8rq9V zhj$`pJ#^tX_@5}9tHh&w6q(5k9_vLnFEbYs9&cl8qM`;LCFdyJzDeEhw`PJcpPryN zD>w6txxP}mst`X`;3Pj6D~{xDetAp8+Is}z4PT_?p~Wz>F*2~vFmsH~wTUJS`nbz` zya8QH&+5s@x_R07`BGEoX+PL%?5AuV)$^XX&|_{OBmrvZ@wPr?1@{XOG|+AqbVtuk zQ=wouk*)R>2{VZ8h)?Zu0uwZ~`TwHl9O($&VBnv69Q|=#@@qN*e9KdZ|4KF1Uwm zm9G|ASyZWP7kph;_R-&l;IYSAmACHR!|r?l$p-G zI+EHXScTe8Y~dCtGbEXht|8c_{+}v`Vdtj}(nUFftSnCMRzaoRMF;2k7f@!VQPW5= zm%$Ot@CtF2jFPQJH4WDbs_PKu8N6}D+5cd?bPPtZ_7h9)Z4_$YP_2?Hpz1GKBUItUa_frttf`)?f`{&Ov&M&29jN}as^JbK$4@SYhRUEJ@yFaD-%v@J;bweo57 zOj{csP1`>fcpJR6YJ3&C9^T%j_Jy*pkeke$WgM+DSU%PrTE=su0b>jIif19yhJu$* z8AAi-&dZT`<%kx;_>5x4DlQG74cvrb)s{|p+d-J#>y^rC7>0KnVq(|4!omn(GQ>J0 zRh}<(yKRKTwBDDi%U&Pv+c7g=#9KbagXJC3LHZrGB)jj5IKg9QN;<*2^C*6GQVm!2 z8rZiZrog6XL(LC3rehR26$G%cO26)OJHg$ zZ4ZW&DsPKo)@(NJqbM1CdlK;!@x%wkqp2fX+`G1%l0-|!7Pbn$lXMDc4#Iwuq4uMxF>JGuf=`bIm%$_g?GegR{xEWo(S~l$c{J}JNb`_ zJ32PPzg2jG23r`|g%8Q7y}sYQDt%V@mk!nZ6QGWF*MIAHpV(|=;?o~cvAT{#8WxY3iSVn6{E(7AtQ%SCt;0AcQ!s0o|99z>v$upHoe9O zZJ&HWKG(#*F=W}yWlr1h%0@Ta+jl^8^?lp=fnhkk{>Hh}0N|27R!_9z%f%CL1hugN z7{7V$;?~Lr*(sa#52KjcB3%nt;SS65Wm9-ct zh@nF=13H{D8-@|nb{K6^SA@QcX(b#HcNj06Q^$WfPMKS`TA3C)u)=`v6vY;YE`SqL zt&?$uL+C$Tl`Y2#s++(YpiB^DVu+nYQ$!mAH9qTCqvEsu zQPd1lMO@_2s#T;i4yW4VHb=U`(%aWi`lMMll8F@xYJvzItb=CDLpRKujJZ#;B3w;c z0ieE}Xv1y!VK%`jdm&Q2CvN5W4X=RAKx1yQHj2|k3sI9w0b1 zlGEgfx+XtGAKP{~6u|^>7>}|4e5^c+aitssc~p&=&@G%Z+Mum;+vR_g#lx_D@74dL zp&1}sM?(9~;h>*&mR-1qxZr1}e&Tb(^CgG}nx(=hwwtvgP4#eQVi@bF22zp?V?Wc7}Dp<#B~n|pI3{}8t0-!L8PCD znFtGh*-5sWxovar;I#F^wVC-+T+-U;7|kr+xUh@_f0DgsH4I)>H8yH7L|_IMFGlID z@(|x&NFtKl0ux!@my0fK0wrWdp==x*K!qoRZh1h0^h}+OD6V`!UZFa29%<%TDXpA< zpvLNrt3X)iK@ctHLd>@um9M6cfa$7|(yN9rnQWunKrMj@%K)b$p&gYU`BEk0PiJu> zCW(o8j8k5ipvD?)d5|&tX}~T&^3VK5r?DzFp(+vSMUx-7J|$glvit2MDRElP;gO6+ z3^QeVLP>%$2u)3SA{RrQqMk+?)0{Do?tIo9u`+!C8CP8`-84T^Qf0&wC$x$8Cqz>K z9dIUauhhzk`J{+R+t?69XTe-V%Y*$VQ|r4_XAV?>)Ki<5Nhwxk1wMCIdgPy|#jyWG zB|!?MBwnhgN=H=tmj!zDKnoJ!vHn;v(-oQYO!BZ6wOj6mn(U>iJd(ZC6-ftWzOAm- zK>f3}uv23G3nt}Xd=DW1Aa8X=-nk;E%}ZDE;D;22zlB2E2CfTZatbE$saJm!Pb-VW z$T$_oY)YFybj*SZa-JYN)dW%o)`F*H%sqgVlM1E&2W2v_e^Ta2pS7?v7|Ar^Qj&;? zqfo@;6|^k)6=}Y}$1WagV#>=TMVy_9Mcw>rKUJ^!zCu|}=Xapet=8-*f;PDrnv>S>I$x<@)QVjJ_K8JU5r5gD{r<#j-z>|3+Ej$NvnxOWYzg4f9AUKLWU&7lr z>2<2;ob>E~I5uhQ(gTa>l*mWKxLHPCT4~Z80 z$#X!4lE8tDiFxnl{wtV$!}DJ;6DGC_rVo)|q0s=I3**3r1|{voCYWjbI6d85ry8E} zAElviK&2FFK&1dBLGXAdz68c?X;@1PMcHi~lSga{0%@MK0`5)Luwd|FASGUp1%^0M ze(`}ra4cz_r=<&$6sPuy_U_=J*`Khz7q-3_-sF2uYFf@T^wq+H0l}*02Z~U=X)=&0 zx@z5ErYLDn;yP&wPU7Fw;+@1Z(-NJA5n*I`vY|-!+zKP363}ANM_BoBhR>P*IK?F9 z*lr4>FC7rP=z1ew#1gxf%a(+!MY6Z1Dix(RxJPwxhlV7yqX}&RU$lk~8&-6eA*TI| zfQCeoeP>4dr;xiIHCf(|L*cRq)6A3tFO~l_Lyre+X6k4Vm5U@3K5Q0*A{(Hl$*w#Y zF}N02w)qALH0zuBDdLxD(mfE`cqcEUTqi8x0}j5EB#8BO5xvZAu5oWX;o2lcEZgFba|lC zJUQiFHig0HQVp7DC1(F$pZProt?(MfFysY|0)kByx2#oQ!?OMr7bJZq&g6uWAeMj! zqr$N?WATcHYip7B?v!^%fXc_L1xW;6#Vafy5qCyxE_hRg-dxHQn_gBh&rQ8fx)^ZD)S&AW4@0eFdVT#+5x4<-}f5n~y%d zA#_>`Zhm2fc4OGB5`=GW&?xY(#M|(URvOYw-Tvl0oU01GAd$>2?%D5T0^*ZDbK9;S^Jg_kYj~k_f&>)Z=r{YQT*~b0)GX8-iFa2ZN}N9>?7}5 zh6^>z*B%GW_nZFSK@y6qTnJ~eMD^>>Zn6AE_U`{H2$4tP74#N*ku~xcFv|Pp+O3^{ zY1$97j;(MZU?8Et0|`W=e!GP>(-Q^0H;jLnxD(Isrif-*Q=f-<>3M-PT*yC<^xX)e zBNIx5#l$j%QW_-c7x+GMdei3_?LXY=LCeC0NZyV3BvJi9O6G_~;fI_?ne>KTx`2Pz zqWZCz`c{k)3k3WU3BMLp z-9l4mjyxxOoP_Xws6+hi7>-D7w-HxflMoZ(?R`0242&z*E%dau_c6mCVr%}Yept%1ing1mQEPBc0^UU4=1q+G24#2oz#{F5s^?mgv zQZGR@{xcf9wzGfa+(P3!0Y_sWxzrRWM+xo?1?jjcQPD%ofqNghpK~ACVwxEU*uLib zY~8Za6ohoP-Zf->#53d(&$|W4CRI#5w9<@q!^P_I_sGsN4;u0d(QY+-Z14ippv=er8L4dNcllZ$e`aG)S$S%5m|P`P1!KZ^~Hq;}u02bJymQ6a&;_%H5^ zyEH?}t;5Ps`x7iin$@9I2%5OHjSNoJTVaH=F<+m&)0|Rq57w+L*B_;BlXD;-u3cs~ zkGSeV!aC%@Vbj)g1Jv9y2?1s60gJ#(imS|15C>79b@9?H3?0CpZNW41buHrS*eyYu znS}r1CUcqRc}MTXZ4fBH^-In%5T@)8OxfQs`hc=$l_|nM|EHUMY>fg@MC-cUvA!1! zgvJH95`Q*fz6(R@8f=*Q9b~(OSlk9P9u*XLNTxAOG@yjyu z$9exqLG)XkR)$3S4^Ym4)qb3u1_aN{n@i@_-f$Mws}WG7epv@10}yRNc+k4lk_0p7 zIPpB28^A7N4&a$_%FJ@l^ps8O2NFXl>tN=;b-Rp#Hm3*6KKA9ENw}DWzSM$3M{vsQ zy5MLFfaICc$CKunc|s^IU-Z#}7V06Cr-Y~7uoN_O`_e1BW%{jjhwGau)6L1EfwOA- zxSC-GB;Yo2DWqAu3_x=@Vc;B2pxS0I0K1G|S6wWn68reMgN)ln#}qC< zkZwq4?d^eh@y9nJ{uMX^0O`^kv*c5~{~(4yV2KaZf;4BLdgD>BnZ3tU(FnD+NXw)> z0vC5qWgLT?2Q5;Kv6v;)j^@tZEHrLW2D`QV6(L+VYcpa0%u>uqrl|Gn_oqD}fWgsk zabyZ6Zx|n%%=ZHy61WoI9(h{kpRY$Q&UZ{KA2mMquNoK<3Fnh063)Sm{WxlggCU<( zW#ArrU20TMDafwmXeh~M#OTj5G|)x?(*SCymS9H>F~$HLlRTaM>7M8GoOx`o2x}yU z9VBg>g+W0-!OcRG1*qfvjB%0L9K~-sAmI+n6zS6^sI%!RM{M9Qf6;3mzJ8WW{QUTPe^KDNZzwF7c|8}7P=}+k1kkI-T)V{BXI;r3p(n9 z2KFy&KM>h%Nkw=&vbofGX%VcAdw7W*lzFYeU6lZbB&(B83sAyt^wje-=@6F?;tZkY zK`v;cO}Ei+o-`K;`Pu0O*~v>d45|PcSwvA@T0N_57Zn=zcydGo2hTKR09?w4OHEhE zig_}6!V@L%a9oi6AkT|Ck`zuTIKDa(;6hfN?Zhnmq@+tjt*;D_ocB1y+G(q$35Ps7 zbos7!RLoKw^7Y-PUE-)1aax2oAxMuO68eu7M-&g_+`AP5R&g$D$iO-NLz-+7HbzoO zMWsQWJiojeCMMshz!@(f9G{^UHJk>84KDzA69#y=pM&u#MdeW@XbQP|?Mj}53FZX5 zmY5(ygO16k#|z;80^V2cQAfpx6tnv}r^69A7?1Vze7}dq8OX%~9V3k7Qe($#4!E`|5H zdB>D8Pi}a{w)#>IOcy1Qf$1Wf7YqmTQL*8q492MM^!Dm~OMZSf3_bN`RN|*4tVtQo zWOU2R+0jcF+$I=;~P4r7n_!2bs^EA3`1q&tZ=lskc)C zSQI&7G(a+~kc;rLit*CY*6IK$Eop`PO-Wpw07VlZ?uLtdBwqX#7I^Tap?*^V?9)7v zacNHUMF7tdE#5tYs<>P zaZ(W{WeBD%*;`!(y(nm??P;lnYCiwQ>o|0Z=oC*>$cBpu)*uU*vXQA!HC+==>Ed%k zxD_r<;CEfm`o#Wq)yEk*8YR8EFQ@OXxSs)f@6am71=%48i*mG8IDx5HOc0D$rs}*Xs(-)q zB}L>pQU2V*OiWH_Ras;Sm%NStNXVotb8jhZJWMWB!Wg&S6OCUK#JUFMh5YNaY>siL z2F@F^ADr802x??c!xg`{1{=h(>sM?sVXe;_%fMSwJ_72Z(~ff39M^&>43Lmy)5b20 z5dKDkK4HCw>vH%&<%&N}J6@5f9Ir}vxD;3DG~83LCJZRj7C=}BL%RQqfah-0VKN!4 zz`qDk9YOJ8;!ZeoG#*CSz_*+(idC zPP{!b^hhpnE|q3Lm!$3{SngzHa~ilX@W-w1q!$wd-KM2%{IlP`c6n8kmW0VIb(F(1 zW%k9#M>SGqUT=P*Mj*R#dFxJ_o}UL{Pc7hoC1xfB&b4-t^5IJiDgqgKkNQ?R3kKJ@ zbkXYCia9iX!u?nXQ=GO=if4dMKHTCD9!ppWUzII!bd$HUZ|vJ0Tau4s4pDt=r!hXf4(U!z>fIZkkY#_L-JRJq=|XGpOjM&4K%8H zsyEp@0b@O_pA3j0@f0E>6 zAsh1G%5CT)GM~Z3*D4;BA~Q;Gw@z$iNF-B0(=yu=tsn2Lmp)6zXl)vwi`(>nGoim2 z7$8GD6SvhqT+8EQQZx*ZXkF0k)IJnI7{dL~YY314mO;Rhx?*6v8LFqqBKQxXV*YFo)u%4_?JHMoy*ZIC+`I!3vgySZ6ASpK!oszqbVV-mebmY_CqEV6*LEF|J(Gd>^5olY%+wiM`8y)cAS~FU57^$VBBza|w1}VaJxjFt^ zze0AU7tPDq!r@|{BSW`pt0VgJfboIXSvRSK!4_$d3zZrV=a?j9UB$ec``xgIwEYqA z`3Gjh!Suz|&~CKLPZiBNtdrssgyd98oFMGs48{0JL8sTCqSZBQoG$tX=a6ILx$Ku| zM1JZ7EU)|!su!nhNan?^nD|T#gk!O33y+xS7b;5P%SA$w6G)saW&Ug)kf?--6 zC_hp^2QVzJ4X+Hw6AIX@DX$4FEUe(^NFk-3lW$wn|BF$HMYq1)DZFmiHxM zwu9Ly%=X0}f|#q!0`-i#oK) zbniLi8&qxkP1GX9n~CUQ+d$GimyDp{zz@ilEXZ@LxbXmOXWqq`xEKsNaE8YL;7mE` zeL`uzi^OXQc6YU)FXZmo0f^-#@7uKdJ*tx_3V&3X*XX#_McAAjs1Nd7GgQpHVh{hay$**SUc(og@cD&|yCd}3&64j+ zbqJ<%rMXW7?1`8pw=O;(dz2w&Z`F)cLj)g#O?~-DCbCMWiE_e#m*Ohrg z+DOmk!W5IY_P%*UlD+dQXYHkBwwRyWU5lCgb-_#3m>-J!)TY8u1^W`ii7hCuD~oM3 z$f?ge+*Pzm{hBpMzwOlDHS)+lp=0(?~R z1a5Rb0pXe!!8|^y$vL${uu#qxpwOAD+`t;M_O+IVXd&jdjfN*yc94Ct2^4?D^IAj- zm2qZrKCX4Mknt4yL>WxEd+gM47RKB!P zbIQqK9lXG0%;2kJ6*IMQ8{+uvFNKiP-jD9?jED$bLW*VkezIYI2l-FOe)HzLngZKj z{)PhqLHoC37Qk+=YQ`pZfAzrJN*!?c&O$Ky<7*^MTDGiRQVRwu-Dqg@6cWBS2s%MM z)<(jWaL2;$Z~S&~ELZh1T@Uv0URU(f6rh1HxNc(7;H11Cv(F|U4{wAzZC@A~sl@5% z+JE%pIWY`^vljat@)N)GOof`##yq1)1)}d{pdM|uGV3f_(6no$cH~r1!TWeuyKlPb zV@AUcRZ^J@#^AtB)N`e|9I`P8QQex8Xhm}p&V`?6M1iz7y5f6=N5P2U#cPsDh~#jc%@O?=$4pbcLg4 z;8IzGen1HCS&**7Xeokf9$R5`o0&}yI>P;1cl@(K0G|h_z`dBoq52J2+3w@_OBi>r z9>luZ3O#Ot_MwZ?NKG$T_B>NhcUJs#2@PkRy9pjf&w_g=u=4QjUx2*3{g<1`E)r_1D2U70^Q&q>R>-QZY!I)k2t+QHBmYb zmtHp9BReH7*REDd5z*Sj;+n;E?P!!q&M0~jublh+jkoHD;4WK->T87IFBjf29SB>I zP7QHr*CT0^U5-Z-zEeVvkv$9e^ckw$EMJ5Xf&LD6mVbNFIa2XNB-trNdK$ZG@eX<) zS;5-{dqJXDlDcZ4-M3w>({G2XgTeNMk#3)@>u)`RL)D{AX=e;0?Gpz-oa#U|C&IW( zh>=4If=*l^FR|&^Wbj1!jdfEH_I+h*9%cgu0i(qI3Jk>cohX60ch`o2papiLWhf^} znm!X*lgB&dS@qX+S+^X{T3E6D#2cX(i*VQ=7=#Nc^>+>4*Ctt3DH-wv3~`1+`MJj- zp&TX=6j`n1vo#N#d-a#c$Ehr9>&i?H$Qy&Y)hqRdF6zCx))EQ&XN*VRss$ODc(4%; z$V9iP7?&;Sq?FQB#is2uH@pj~Or6luT*XB??hAZ%bcIi1i!}8LmPH%(nO1nXnHGWy zA9r3&4#n0~R(gSNJw9ldEoZ`uBxo#!hZd}Ia*fR@^L0f_(%GM#$zscyvCImgiB(q8 zE}FMsG1j0>@bXccDQn?jiP(H7MB3p7h7*^vXYNmuwfr{_pbPE45(sOX#IE#yeLmPo zn;ocJW=gz9$^vlgeG0cBV%JkK zNT$HY;HrUZdC~w0f20LMr@RRh-SBo+&vM$9i^d4)vDDD^BQHFYD3yhR>NSwIWE`0d zh1XlKjx`F{wE(9+rD_MdV6P6 zfE1WOe?GW#11Yoz&Gc#3T2gE-)+CddY}4t=*SUgXry+&rIx(|OQI&RBvP^7;{s@1A z28}s#nQ?oXO;L%@Wz#DJV<8BotYjDu1jC-BznHRY=(ZADoJGv+6DrEY()+zb;y2}a2tnLWD_493oHX9o^mi^uk74EEZ zr**vvn_uGE8{Uy*3z+r(?y1QC!`iaEjImm_>W7)vYUH)web?5!`>d|p2EMWA=aJ<6 z4LwJHz0A?Gsr90HD}lo(=E4B_KAZ2!(OMA%>^MkZk|Wew?OjX=#qyZ+Eko(Hjl)GG z`Fh)Vj9=*t%O5&V-!M{Bk+3-*eoFBXW9TkLtSnC+hZGdve^uR2P44cXTUuJ7E|I*t zv#wB%z)_TrlRZfHI{bBIc!nBNJSd;@a+sl*Dov}~vCXpR#Mw7oeh}6vns0dGu0R znQjqFE4j`mDXUu4t(SF{bW(n*N1aZf>{)S$wz5cin$WelbC}X~xsjo4xaWYgP@uPh zm$;uR^YNumfor?J_nQS&%(AI7-yDOb`u=b%cij_}2E+aa2cYlU7I#~Z4nI=#9>~9& zcbb%}YSh0X{LWO?n7wiRV9#AeI4;FWZ3?4n0KkE$xBVfI=YR?sni?e!lWv~6CuLo^q=cqzSwZJzqY}adE zoz59WSBTMGaeq2bsn|=tO&uRn;<}IM7@S5gU+~Zqjy;QnzNnY44*4{8njghb-M^X& zTeoR}2pOp)Mn}75Y1=01=MOR)rP0&Ersq^LR9oJkJ9gDM!DRH|Euo}K2+v=;rBzK! zeNhbnJ;PJdobk`*>3pDw#Ims5^DqGE{Sy;`c(I7w;UIerSpnn<_GKxUI4^CNXiFsP z;T;ij{~R$fvf@JHr^SlPBeN6f#IX6&?87)ZNw1(O%2mj@jDH-2ShRy_)C-xIq>S zke|L16NwY0eBl_2Dk#*b1#q=8FW;dOyAz8|KDNXAc0Im0jUC%7yn_*Q@B!K+WL%x# zyssny#6Rzkh3`>9EDmLN2O!7QCB5Kn8u zVc*7`aGC?rD@OvO>@-uosaiPjq?nJbDf`y_Gzf8&P+yp8p?Hk1Y8Z33C`0Pn;j+wJ zf|u9-hc3a%qval;9%`U2qJQZ6yF2WE)cw^OHfFW~n4hCS?e-{=Hd|GiThbJ0J)wcE zi#m~3#m}~em!NmbNpJTSs)FOPZ4-X{bhYdez`9CG+@(VW_24OE<%Re!BXZ}Gr@?$pq@^WIu*>T#blc6-gs?dIhWP> zzVO^f+C{BOAW432Y*&m!1iRhfoY@^j*lFuO&P>)hG1ur?eyA5Ra*R_g3KJG#&d=>vp}&Pat#@>|j(qM@KzRMFFE$#a|Gb z-QCB@K|an`%O_|J$=eY`IY!3g_Iby7tY#6435nv4=qO|6_H?t`a=MjV+JV~(>S)LS ze9o}~zz$@gh*PEckZKMbc zSFYg0 zyY^i=BifEXhC6)lA$4EtCb{m=e!5~tlb(Rwdv;{uGvTh8X2dS5tm+7Rh#jYBs^S6C#G!(O5Mhxq%)P$J|vYE5r?MI{N?D1M!oWY zv+8mIE4g~Vm6S}z^o7g4XjFlCxLo8kDLauPtqB|bELM1VAg>%Z5AXR(vH~PGrOZ{R zB3GB9|IW9E41aG<0$65Rzlk=iLs3sq=`PEYzA$K^ZkI0c zZ+Pu2>EZsOIMr}uM$0fFhq)ob)>?SUp03jxJI9#t3;sLlor|FUli=0UI{&b-*3CR+RT= zhgsurD!&;<*`#WWD=vcRM?_9}_;v&>OiC%|#3i)0>`8Pl-W@$fGIDP>*6-Fm3Qw3v zpr{%wV@7g+19;r@KE$G~ez%xhIQ=x~qG~va8Hptdz(?qjkuss4y%VlX>DyIHtL>HX zSbZ3Twe6YPyY9J>HxQ5Mxe?ug9?;j+A3Y55mSBc*$id|M-h|8;o zIe#P-g<_WO?f!?~`v+1pafC@YPf~>jXH3Hj)~!!IJb>*~-1@}=jJ+bS0aGm!nC*r* zf1x_qJieOFQY>8e`5xo^LvhX&>(kB*-(8D7_ivb9C@RCA;~HnEV`YwuQ{haXPdm6> zw=L?HuQ0Vp^0lEc`Z>Hw{a>eluVET`X!`6Be&suRs1_G%sb7HovKH#;dh7}Hc(wm}x?Tj4fn}&0 zZ>=A})z+v07s|#+jD4CnWS#n>VEY69pEFkB_=;r@BnU__2?z)_aK-{Q?*40<0Q3 z1@ufR<1dS;fSiOEkjF3qpN|F%HMeYMrTIWU6$xP}XcTx1oKZ5HTTTHCL-54de#&i&iqIo8_Fr979;b#SigZQj@^(ndH@~?({pp6lQe}P5`}2 zX4Jryt7m*0X`V)!S)Jm(4btQ|4Q62A>6a`kW&)G(3uG9Xv+d!pQAMmM5p~>9Kinz` zyg*HmYPP6Tc}=^At{TlzKJgpe%o2T%lUD?4fI*oGt-b%#uhB`>dyMuj#<0M8B5N(Kgf`7&_EM~yUqfg7M zw7=!45wtDA3q#lJoFp7?N~l8@`$orUS*r?@%(wh&bG!aB{HXsC8axHlM&1O4qC|3p z>9@_~QioY;G_!J!T&njQ3re8?w`0b2|3qc-ZC^@cTH2sPyw2Oyfsk3jrI187 z&6-oh+F5{y6?Je+N*Z0kSDir{L7VsWP19|=ZJYPoOeW;-ln&@^LBIVsCa(4cq0!s2 zE{+8cpIjWBeo*#Q;s1yW_)@ooUzh3yb8Z^T4on=7D4#zg#tXz7S-3-?S(L9v) z6!+83cH*jB?FjPJ4epQgUE7LIVB@O-?FwNPK7!!o)yt1HJGRh6wBMXvt^U_X?V^^8 zm=}@##aWf~OGoFEv~ee8S%JNxKHqDaG?#Ve5Dr2+asw+!<-#$|PQFT}DVD$UX>!&>N2rfST>RP*8-II%3U&~e3JYKeZ zUfr{s&*#-IEIxg0dR$%V?bYk|{=9bE`d;Ps?C0zH?e2X(d9U`j{ogmI566F%v8-D2 zz2g4M{Bt$G?|%QAUT;zV@X`AHvA_QI+y7rwYIuNmid{zR4VE_57Uila@xx}pjT1jS zE-F3TCH69QbzA@W=*g23Z*Hip{yu^8=ec6#S4W&z&J<4n=4<8e9jvu`>!Dl!gHxGX zRbN^0y_CtbP)=|8S@6`0uVe%NvL-gEj0KHYiT}nO-wxRacr!AIFoTB2IT#+yFppRp zv~=QBU<>sWaLf(V?SO#>pcn%~v@>upI5n>%KBTfBwKx{kIzu<0Qq9}p2TK^X9AU61ZosS(fAxF00s>;pCcQBH57VRi&=N;Gcd%3vNG_an6wZWnqZTPODc0x!PAxKVSs+1 zBusw;W27~TX0+oa(ak}hCq2bm5oPsQd*kQ^pm%f;2KY4~8-T6bi*6Qr-w|P! zdn2-0s69z^Q_#Cw2vg#kprL}&@j};+-X28g|JjO^#ZX&^0p6^@90bZ$f((hk?D4uA G!~*~;;v$a# literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerHttpServerWarmupHandler.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerHttpServerWarmupHandler.scala deleted file mode 100644 index e27133b23..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerHttpServerWarmupHandler.scala +++ /dev/null @@ -1,18 +0,0 @@ -package com.twitter.home_mixer - -import com.twitter.finatra.http.routing.HttpWarmup -import com.twitter.finatra.httpclient.RequestBuilder._ -import com.twitter.util.logging.Logging -import com.twitter.inject.utils.Handler -import com.twitter.util.Try -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class HomeMixerHttpServerWarmupHandler @Inject() (warmup: HttpWarmup) extends Handler with Logging { - - override def handle(): Unit = { - Try(warmup.send(get("/admin/product-mixer/product-pipelines"), admin = true)()) - .onFailure(e => error(e.getMessage, e)) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerServer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerServer.docx new file mode 100644 index 0000000000000000000000000000000000000000..7de0592a80d41f26c920b84963bda0f1344e6a1a GIT binary patch literal 38102 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerServer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerServer.scala deleted file mode 100644 index e635c7a68..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerServer.scala +++ /dev/null @@ -1,128 +0,0 @@ -package com.twitter.home_mixer - -import com.google.inject.Module -import com.twitter.finagle.Filter -import com.twitter.finatra.annotations.DarkTrafficFilterType -import com.twitter.finatra.http.HttpServer -import com.twitter.finatra.http.routing.HttpRouter -import com.twitter.finatra.mtls.http.{Mtls => HttpMtls} -import com.twitter.finatra.mtls.thriftmux.Mtls -import com.twitter.finatra.mtls.thriftmux.modules.MtlsThriftWebFormsModule -import com.twitter.finatra.thrift.ThriftServer -import com.twitter.finatra.thrift.filters._ -import com.twitter.finatra.thrift.routing.ThriftRouter -import com.twitter.home_mixer.controller.HomeThriftController -import com.twitter.home_mixer.federated.HomeMixerColumn -import com.twitter.home_mixer.module._ -import com.twitter.home_mixer.param.GlobalParamConfigModule -import com.twitter.home_mixer.product.HomeMixerProductModule -import com.twitter.home_mixer.{thriftscala => st} -import com.twitter.product_mixer.component_library.module.AccountRecommendationsMixerModule -import com.twitter.product_mixer.component_library.module.DarkTrafficFilterModule -import com.twitter.product_mixer.component_library.module.EarlybirdModule -import com.twitter.product_mixer.component_library.module.ExploreRankerClientModule -import com.twitter.product_mixer.component_library.module.GizmoduckClientModule -import com.twitter.product_mixer.component_library.module.OnboardingTaskServiceModule -import com.twitter.product_mixer.component_library.module.SocialGraphServiceModule -import com.twitter.product_mixer.component_library.module.TimelineRankerClientModule -import com.twitter.product_mixer.component_library.module.TimelineScorerClientModule -import com.twitter.product_mixer.component_library.module.TimelineServiceClientModule -import com.twitter.product_mixer.component_library.module.TweetImpressionStoreModule -import com.twitter.product_mixer.component_library.module.TweetMixerClientModule -import com.twitter.product_mixer.component_library.module.UserSessionStoreModule -import com.twitter.product_mixer.core.controllers.ProductMixerController -import com.twitter.product_mixer.core.module.LoggingThrowableExceptionMapper -import com.twitter.product_mixer.core.module.ProductMixerModule -import com.twitter.product_mixer.core.module.stringcenter.ProductScopeStringCenterModule -import com.twitter.strato.fed.StratoFed -import com.twitter.strato.fed.server.StratoFedServer - -object HomeMixerServerMain extends HomeMixerServer - -class HomeMixerServer - extends StratoFedServer - with ThriftServer - with Mtls - with HttpServer - with HttpMtls { - override val name = "home-mixer-server" - - override val modules: Seq[Module] = Seq( - AccountRecommendationsMixerModule, - AdvertiserBrandSafetySettingsStoreModule, - BlenderClientModule, - ClientSentImpressionsPublisherModule, - ConversationServiceModule, - EarlybirdModule, - ExploreRankerClientModule, - FeedbackHistoryClientModule, - GizmoduckClientModule, - GlobalParamConfigModule, - HomeAdsCandidateSourceModule, - HomeMixerFlagsModule, - HomeMixerProductModule, - HomeMixerResourcesModule, - ImpressionBloomFilterModule, - InjectionHistoryClientModule, - ManhattanClientsModule, - ManhattanFeatureRepositoryModule, - ManhattanTweetImpressionStoreModule, - MemcachedFeatureRepositoryModule, - NaviModelClientModule, - OnboardingTaskServiceModule, - OptimizedStratoClientModule, - PeopleDiscoveryServiceModule, - ProductMixerModule, - RealGraphInNetworkScoresModule, - RealtimeAggregateFeatureRepositoryModule, - ScoredTweetsMemcacheModule, - ScribeEventPublisherModule, - SimClustersRecentEngagementsClientModule, - SocialGraphServiceModule, - StaleTweetsCacheModule, - ThriftFeatureRepositoryModule, - TimelineRankerClientModule, - TimelineScorerClientModule, - TimelineServiceClientModule, - TimelinesPersistenceStoreClientModule, - TopicSocialProofClientModule, - TweetImpressionStoreModule, - TweetMixerClientModule, - TweetypieClientModule, - TweetypieStaticEntitiesCacheClientModule, - UserSessionStoreModule, - new DarkTrafficFilterModule[st.HomeMixer.ReqRepServicePerEndpoint](), - new MtlsThriftWebFormsModule[st.HomeMixer.MethodPerEndpoint](this), - new ProductScopeStringCenterModule() - ) - - override def configureThrift(router: ThriftRouter): Unit = { - router - .filter[LoggingMDCFilter] - .filter[TraceIdMDCFilter] - .filter[ThriftMDCFilter] - .filter[StatsFilter] - .filter[AccessLoggingFilter] - .filter[ExceptionMappingFilter] - .filter[Filter.TypeAgnostic, DarkTrafficFilterType] - .exceptionMapper[LoggingThrowableExceptionMapper] - .exceptionMapper[PipelineFailureExceptionMapper] - .add[HomeThriftController] - } - - override def configureHttp(router: HttpRouter): Unit = - router.add( - ProductMixerController[st.HomeMixer.MethodPerEndpoint]( - this.injector, - st.HomeMixer.ExecutePipeline)) - - override val dest: String = "/s/home-mixer/home-mixer:strato" - - override val columns: Seq[Class[_ <: StratoFed.Column]] = - Seq(classOf[HomeMixerColumn]) - - override protected def warmup(): Unit = { - handle[HomeMixerThriftServerWarmupHandler]() - handle[HomeMixerHttpServerWarmupHandler]() - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerThriftServerWarmupHandler.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerThriftServerWarmupHandler.docx new file mode 100644 index 0000000000000000000000000000000000000000..c629dca4c8b2bb41707133adf24ccbe48023c72f GIT binary patch literal 37602 zcmagEWmsIvwm*!!dvJGmcL?t8PS8ezy9EgD?(XjH4k5T(kU((ve`jXSIWyq*J67PbIe8w{iu6>C(66qzWJ%afmsM^*{ z?+-Japv-%<1H6W4A?KpGI)O=Ak08-hRWTZ9M8hF4Dgxt>VKoJ_TzQ>j4r(gLqf~oz zpZ3Rs+(;kA{3Wtqml-KFvTQQo+5@;#!;LP~CBGOo#t%BzxlYkFI9aMY*01#y zA-NC315m#Iu@%yiwKJM6(Y0aSE^rrmUSi0?*cbx97_}S<|5V)TyH# zt>$BO93+M7c`t^PdD0t5L)Ac{p9q!C+8I;j9eh7!KYK)P=Go>c+l(N66yKC7;+Wo0U@CJ zUh1W*c;96$FyB;;KAA@MHHn}QwI|N_+3N|uq~e3PVBgD9$;Q6W_&sU54#RbrWZ2FC z5_h%TU~SvuI`Y~(MQZQc8Lz(7tmrRh0s;j$T|?B_5;_=~wN zfdxVZ7RU@>s^kQ4aAq=H)fQuTfwmq-jBqzsg8q1T44Rv2)1VPGoaVZS57>>EzP65^nL0TssJEa5c4n zn})=P5QWB_2bg_@*T#HXGr?Ma&X%C%sY(j&Kkt2-yP~w@H68DbP{u`otIYcpro2XFvd9cmi2`18P}IF(F7M zYH1#5c=DjJ+_VA2+;RnMkkgJWgez{fj^ggorY;NaS~KF>=i2rs(<>G~UjiM(;9nny zj8qOX&8cglSn*F?A0ZKtLD__r(^TAAHCVU5o;o`@Zq2xY>sKJOgd!j%f5@9XEv*y| z%!66ib=?FE7S)Z+&+o1?I8*oweKu=lt3`ipp5UfRG4{>e$U_=&6R-@0%}Tt#xwK-* zNR-AX5y^y*ZkPH_-#wLo)Zq92@$JJhKHUS?B?Qi~C6WQnoSWF&OaB$#Kl^gCwuXHI z?29b~2nfpG`(o_i@JCzJChXUkQ97ULAoM?fwSpE=#)%JH6qyyA+&KQcBw_*GsPIW0bK)_7RLOAzuBqnh$idpwA*nM&Ib<28 z#t^E$qv6bW)dCa)?B_I1rRs4n(gu^sOG0P|XGOZ1&#Oqnn~h$@9SRQK-(JjxC4RZq zJq%tXDK#x`rYbWleysq1t@%{pQ92{Q@p13=SUWih5lIrv_>~P}!lS~9dL>K}Tb>w? z#i;9I@)LwLyw~U3db6LXxt4ai*!**3!Y73E4p(ys4})+&uuTiMg?+!>N;*_zol&oW zV1I2qX&_duFVhUWiaL$$(GnTS<>3H-6{C(E`%ac*Z4BtULCw($Sa*zVy=y4ri$#*X zLxOnX6J3765~p1igVrI4O=wO-_p2KRT>s+YMo6f-0@nildiCS^AgdNVQP>K9r5%;r zXL?ppqHdzLLS~n-l0=|-n2J1^;Ms%-kIt0lO!M$iY)MC7K{pCBhXWVYm0~Bvw+(b3 zKn0m-BY>my(N$-c=>8M#D+=SK9n0bNql*Ciu^SY(Z)*cAVah42?dw?N1Ytm{?N&;X z;FRVTIbUcdwz`+CVqD7LnzT@n;>WJe45k+*!VB1p$7{Uzh1*|5|GY4$8AvzIAVEMD zDgOMzx&fTbn1J6}7dznM^!v)#*Es>KaiY9;_XMJRk$^&bjGI60tdn&CpF~li-}>=YB;8y#zWb=6+?z90D$1 zSZ(ab#G#F>iix={Y(6QgNzzOw$#y=rd{+a4w+pA$aQ9TpU@HiW)MGh`=;b1pMp!*@uc;{c-n{F_dc$}8Eke!hBxl6BJLE01$Jy7`* z#DAJxwqneCK@YyMQ;qJ2sqiYrNYN;~yNk36$Yh#Ksn+Oe*}M^RSy<)z#dnL6e2?1f z?=ckF{pKPUEEi-Q)Upg$3m6$uA3qJorq;M41V8iBkxvYB`J{hJ4#BITT4Nh?uFI8N zDp<7Sa@N^~=?>K>E7-3pyX{3lr{4xKH!dM!W4v^M3lrWQ)hcv@+5DOQk-ECiM^NKsE)*=3i<=UL8NyShiIP>yT~hKx7uom8r6F3YC132& zC-g-vHFk8pW3Sxd#2s#m00nZ$v|AN8sy3pkPzMSw2FD>p1lb_0z=`}v&@Yb)g3A!ZVv+H^65+zB+Z-tw118%#Z$C}6S-a&;<4h}@md&iqx*1Zc1;Z7y|10O6V{tykQu zk|AMe2Cv;!sNPiJ4P_KWl4>~VM3Ef=(uX)cc`XQTu7lF4-)!n5++*>(JnLPpJo&;7uBYR-B9CLWZ=}FnvmK})CLF_F>ZxEEx^bH z-Jb_xy3EF|KTYY+uSz`IBWg~h?M3Ca5kP3&I?>3x{7R=NH~S#$BkGWv%M>Qb8P8{F zmt@6&Z^BzTxA~ro&U0<`L!;pC<4WrDI9{M8t9?Jn@&sf&=a6tZSp!5l?1_RsVk6R% zBa-I^*&}sqvTiPjS=#f1?)FzD$ACtEukLb!OZa%ruNtqcFE*xm~!bY1_ zzO;E-H>D#x#*MPJtIw_5*r7{b&?4FY^phZ29L8&P_0U2U|B4W-C{JR5g(@z?=z}&W zo+CDkByr2=RLR}~#_$q(pZA#w)so!dn0IkKs=<523}M1RF!aM~DYyr21WAaN;L5($ zmW-sa7$AlX@dK>`#)4Q}{X|nwlL<2{;;(KDnW-k5sB6+Y@TGgBnCdoT5-dL3<~!u< zF6VAB+UR_kC$*s^8;GHt!_21H9c5dm)~~leXV(&D7cR`0d3pIf{CId@U6`L7*tvV! zaoR)CuQElD*7i`-z}r{BwlEsFq3?ZSSd7m;sJiep%>=ZVZAtEcXQMSy_@c5{{oIw( ze&!W??Aqe{a2s=;k)ld(UnYctrsuWSBN^mnx8%u?Q@>jI+|L=Pnq9o!nYM~{KeP$I zrbA2vjpaYNoDcfgY!m#UJBVIT@piq8kMZ@r#%fi}C1EXr3cgE}gV>UYE}BRa(`$gA z{rrZ}GSK_!2g+(Qp}jV!e>kA(t{y=AqFhDadF(O>Xzpt*eeia|Ml%)^E4BNXhCWX? zd9NVn5e^Y|Q1t>n7_JX9zm&$V%qBPwy!c}Hiwg9#d6_kBO7xIzi(6j8rVf&}#U!vKxM+}%o z2N)Zu$TQ?o2zKM6kdS`gZ|~NkRD?BfhpJxZ^SU2MPc9Vyxj5MS&e&thk&`Q=6d51`@#@~tUZ|QEB z(TnW{?A>$vo=fJd#w6|5DGT1EwuL8=q<%nv?z6 zvxD?6tI}p$Xd~UZZ(E^3Bd{M8qHcM?NS};@!f5yW@Z0T!8NS~uv;mw&;{v`| z@qWOIyj~QVA%w<#Cino`gOSzvp2eamh`3viSc({HQEjH`4)|3GTZ9NVMSZ$zuuaH^ zDI0Fx zW@{jL9)rF!{j=6l6X0DF|Ejg~XAfI*=ikdP@Yyb5SF+xxrzgL_@a2bH zY%s{kv^_|?E55N;S9aYwn>^dxuW#S5KgFCH`caSw6RE4HYsi$x*YovfV=2+>Yi1>= znZLf~_;uQz`x+8OXS|+ma1HbzcDL!CYdn`son3bTd|z?A`5q6>+;z^flhAKbcsIIS4{WOyH1vNYh^BuF@5>AR9W;-zixx@7!C!8kW%>bO?uOepIO zOHj_~h7b3*S0T|Ufm6**;G=<^7q6rrp|2ph zAEn>WJN#Y8+~wJc+r*xA!y}FiBDDKTuxVG$X>`W(Mbhn+dpZHv#7%^+6NBd~k0;r6 zLd719i$}M|>bj7)XpCP7(_8m?cSlR*MA8t8pIyhgPq&`#dH3tB*pr1y3gLj`)&>*u zmT#&Ak+)R#Dard_&0~*AU(LhvVb~ zv+=sybtO3;X`XsHJ?~j4sNNpd4qUko;d#m~hu%BF@G0+1q&*Cn3UGSxG~m*AVd_)& zWDt!jkatRvSyYJn)rm|h1qa1_!f3q1=6qdTyKhELt%j)J4AdUO1LxFy^S8;8a;RIy z_o?6rm4HKibVACt0N{TI^sj@~AKvvJCZ(341??5qT+G36X^Y#*Pq$t>`RRp-l51w% zX4iFMRapB&TSgL=tB@A#ZwG$XZuwMWm}*;_yre80?mIeHVilG?#h_laJuewwtI=2w zrdd7&y?5$YFU~xl&OJHYJHC!c-(3rxo(pCwOE&2*%wG%~Twnh@8*t8KrweJrFVc*9 zA2@I?C(OL2Ru6(-`L_Q+;deo_q?pl?5@8MTEzE}QYi+p%w=ilPs5qfn*so;%{`_ojG}Obg%X_52|3CjdW97m7~2V1nEQM3 z6L1piUy~3!hHo_@ql_%P=H=B8hH@ZPKuei$KgzX!BqyVFC^2_7 z(dQg-xbM#n2x1H#Ge#)%>tzI)TSM!_cW1t?%b9M7Lu=iPej_ApKdfGC@h#5Tadj}IoE*ks%}o3-<$~ASWRZ6zH0uh=!`&iK zI0(0n?=mgf-(z`v-}g}-hdXC^xpwjMb~|rPAV)6RbPlUsyk$^bBOo7dkJMaF!0NEB zC!1<}>)VJMR=%TE8*oZm-#k8bU+o!;PQK4g{C-8r-SgQ^_0u%c7*^Oxd80cx#0afA z)=rt>Vn*QW+u%j9;^74A=4Zn2PU-Os6`6^Q?U(p+E=U@&#dCRSULw|pIS(6=B-ztN zzf5s7P4eRT6|;JeT{FYQlcgNdM`Ymr6Gq<8d-Q2+?`iH0#kx0baMRHx4es!U2mK_E_D@)s%4ileJvnB} zxb|DS$VFWWl1wFJKmG#E^W?5HEK5IvG`%GWvz_PYzs<$C1kjV~aqQUPBJ+7ECSPJd zmoTlyj$-Nhw2sK+6m>yriSl~Tb%b%edmu){rTnpg=L@`iDj9k544G(#CygGXL-oGWi zFP=Wl{d_rgU^ec2YZc16V|tkxf%JR>L0-x5XcdGo-0Ema8M!5SREc}$Fj@~TC_Qs_ zMv{=9pq$9LOF@!~#B1+VJIhvSlMMoVt6q41LGS7DR`$Q-(0Nf8e{3XvLO`l`rD2Xyt=x{p-7X5X7oZTrft;tgB!msk7mJkWVdFJHh zXKWwjrEWp-%$Q114=KL4TXtbSK-;t_Cy6qDeBvR5XPPi<(kZS|KiGULdClx#0V=_A z-I^PTDlm{SpRc7gp;w)v1x;sAA4wCtO&)29i-lJyhJO9U$(g;Ft%5RHP5i<~Yo^g8 zeP|{8c(sKCuz3QH^YfTh%W60tVMwL0Af9~eseoU!5D#H+w zn&N9cvcQ(m>xUMxX(7N(f19$?LP4?q9V`C$)%c3-k$mS>eDAk$dOg*cUz6w#N%^>| znoXKVVI?S~X%Q#$_AzQ*Dp9u(`?B9_<$WZE$I6F!PlQ&e=x6bg*)C)uI6TB0%T`Xy z%CR%*2=lzvwW9+3vQF&T24j_-aY&c&>u2=y<>`rbmI!FQA+$waXcBpx!470G0n&;Y zcOK>g*G~65yv4_Y+PX1(QIa!SlU362ceptl&FeTWhJ4WBX z4a{scuW_uMpT{qys}Cf>eR+R)ds@WDu9QX2WajQ!c4x0uH|8jSQ&1x>|HR9^TwZ&k zF{F5TpJ^*kUh^|IRGH0lTYThk$g^M|z5Q+;T`6QOl9qcmt~7t~2t{M4)n1*x|B|z# z#blOcap-oz!le&bX{ewO{&?s!>FT}YeibeNzZzWC7xo0poRQRl1rLRL1v0ugmteF z-onMK)A>HA`%aQB^a4h;P zitO`w(=71o`}qn3dz4))uvh_0>k#qhb(QHKzl^GPj2Xq#Uzes|i$v0%o9YQ*dWz9e z>6I~nq_@pg`LU1W*aMUn5)fzSSSDZBP;yz=8*n0_kUp}d+@`fnR-I{h`(W}p(b36a z7M7OBbge)umnkbc-W3n1wK$q{td3fnl|gpyUu{Lm4qSD@eV>}t<{h>Fm_kf)+sH)2 zNt9OX7%t2ek)e`LH=70_ktJR;ID*Nn9&hj6=kcVxe@~0UfcS&gbQ1WabG!4R|9SmG z0hk?<%BSn*DfXWkpih<5)8>9p-yOkkcBU8`2cNoDNBn|(Uh;B%6V?(jz-a`{sd?&x z>o6!>^3m8c*JWNJ(G@}`(i!_|xR|in)-;K#_X-QxENFXv^-QO9lptsHR6l(%*kkkk z$j$#wfP*Ty!)-Iv(z=VcMFGXZ!faps^yu*Vtz>G)9WKgi=JOEz&*{7GU=I`(?1}5k zE07vvN$OSEvDsj*8FqGOak7t^%58et9dEj4Phyfp$k+@5g@|J;C$7>Or`hUzMu_Lf z-ThGcgn{hyrm1(KJypnuNfDR_mbmbSHF-WcHRxy79R`F~7nCp8a~62$T}SuUx5VA4 zSri2}hpQ0;dgjt)hp%rJn&%7PAr@QH@lFaf;vM+kh6OLgohzY^SS%=Y&>vP2;@c(0 z{ezbqGu9wGLG4_zV7;HcDe2ULudyd>t!YmBi)Y9F?Ig08+S8%@J zbg^A>b>G5tf$4(vrh$^)P8vY-oO6uEzJO}vF%ZVe=s*8L* zvLpYpDM^{n<;Cq->4c`2mxd*Hfz(uWzUKC)aEebgB zN1w=nT!GXZ;%QhqLR1C9Oks)vs>6?_S~iCKRlPd)i;!|#jQCv$6pCGTU^|_(L;<|h zmtdRzoFnj~q&Jeu6gL(K+_3yxmsfbS*UlC>ze`j&i+8v^B1N>mMixW9TnBP^puU>Vxx8Sd>ez~z+inPx(nXOKo@_?ii`5g=Y z@{-rJy{QF#IA^KUdz{SK$h;6b=^crB?Kw_xk>#)1G?zRPrX;gpWI;H z%G^bK>sUb;Jt+&3$5sXa)3FeIB)k4dFa0Zh{@>|Gzte*VMZ3y&n0j=*-rk zbV0p6s7$weoVA>n1!cmx2==r>njI)Qmgq9$BVQ}aH84;tWj_w#3MQSeSY47hFIK8` z5tz3w4=UxdT(GT36f7`+bI@vTl^pS#?5t7?~#Htq5Z*-$J^EUxWU)|;bh^(}wVO0FpW|1m>TC~Qg_#5jc*^E0?8WW`rx0FdY zr7O%KVy?d5nz$v01mLZ|B$0db$XRw;SGg5x?7w*+$p6KouqTZT zx>Itggj#Fld_2s=Oj`;=4YZW_{ilf94Kq)Bn}o1_zi!pB@?jsn8iX1>*f9<=29g@Y z{KeZd%Lgkg?^P_&G1vI!1e(#-?(?W>GE3xWIm3lU7^&`A+J(90!(%$I_!+BRXBP}m zk5KetpsNAcG8nB|9s&jO|F9W<{Vz5im;X;T>QVOqu1l(=xQ4?|B{kMM5ae5*l8&u@ zIp1P}jvcaJw()-T?`%k)lMsH;o&pxp9<-zZx8h^SEd&OErt6$w7K6M5a!^6W7P?Zx zg@$dQ#$H_)knj|?)RT=1tz2H?NOCd zE;K4UVM3@dLDy*h&uUVSLS&!22c3-m42;ZZ`(K*J{MBEmI)@X$M3kMPxI=&y10~qw zozhwDz<6PP&XM$PPq8I(lhNXO_vykJE){xvwY?ERsZ3u7uJDSH0ixMgNd-auMoMxzFaYNb&+6jca|{UG|q3-L5&}fsD?k`4D&{9saQ_}LE20M8lWZb z)7oMS@V1Wzjc|pY^|_D=R>JRf>Qi_7PWZ9Fg?zKLfDZOXJEUNV(-+gxe<5wi8m+8}P2*W&_S!Yi(MI5D2aQ&sm)rtRz>_gbCs?VV zh@i>FpD<;)xHb(R!l>U_H=w7?R0!Z)#Q=)~OA{q_0#St#M+h4lg(tYaX8F zlt2HQ$^*&YDpiRZfhq@}f2)K5txGi-Y5VETd|)PqZ3h=11?ut)J{r*Y4jvXjU`oso zrX{DTg&<+U7pIL4GkSYB>FRU(AH+5G&N7H%%{A*PExG+_-vK72;XUwb`UMAcK_y)0(C5LIwA ztodp>wGDB)N|}<6Sj%t=wLHifZilw^OGhSN+t%Cw-DEdIYnZCrDs$}HUJ{NaLpjB? zbY{aEaS(TjZ@cC}=7OPZc?%sCa4><}a!DnA(9F(g;?r&>FlqYFB<}y2lr*)^aC>ky z$P@02cKDkrwGz?xLOv6H;$e^{itU4EC)#19MAPqiS3EP6!+FK~@yv!RY7p61YLMN` zKgJm-q~#W&noX&u!_B>SGl$a<1PsER7xQ&~&vziQhB+UXc$rUYdpHCY`8t3*D*Q2? z9B;D+O4eUxGjR;EA-Lh)70mmFa#ocQW%piq=~4rAQX^2rT|Vx=;!&6K;Cc zdWRNc>5RHLOD&V!%~>PhR=h#LOV#Sm`neY3R%5{kwq?TtE4kOp4voGqgrdz?KTWG~ zhs1z~z7K7{IQ%!Y>>t!oK6V+w9#@t3q1n%6)6)mI{UXr{>})3QI1xgRAaf7XM3Su?bkHI-+p!;r z=QJ&usT~yV+UrC6y~{58(Bd_Z@E7@=%P5ds75WeI78Z8&2*&?|eAY;M`!PCYYu)KD z@_r-fM-|NnIL#JijPL!Qze69Xw#6}Z85(SL1+)n~G_tkBWf8o$AC1f8-##qurgjxW zloUSGYaxC883m|I9QIkx6`@__(U>dnlkdu^I=*ykK8U5aEZ>|1(NR8al2asbaT{3E zZ0bTbtWW>Oaa-6fQ072pTOydep%F4R=*|!u0DCK1JMTq;LU95@fxbLRFLct>B!&y& z`m{mUPi#$TIxi;k8OPTSu3l3oC|Qo>rUU zQkW|&DUWXN++nYJ6_ih(Yka~KXGavD8}~BTKJKayD|YcOhGp-F%XwZs&IJb(cs--A zK#@=2=(+q>rjSng;a+@>J>LqfnN9sVYL5M9S$P2?fLGq83y^ijUgZjjDi1!}c(oaj z?0GJnZ$*%61vb_54G^V0iJV~{ZJwPL^GB_kS!tPSiHbp$2NEvK8UD)7^pEsE3tGU zF;giOw@B5kS!f*Cq$vy?bC)e=HgtAtN>ezN5ih_c94F8o)jW9tOGt2}JAsjpi;=1+5c$`5TSN;SOqQm`!teVs#L{w59wD zcB|b*y*ub8RLq4a$*;pZ6PBG{i;Zc<$bIlAG$@@Qap1l1C@jRCAlT&L*gqg|A(^N- z_I@%O_s^&2cw8VGl(b9DBejwBAjU--%eV}F%@2pqGW&Vxl_`z2EK z2BIQtXASB^tWONwX1IegN}(~0!XLvLD4oE~8h3(R7`s>0~>R@w;_v8#|VbunPW&g zdkrv{uOtPZb(xY=n%aFquQe7fz}!MTv6y<@O3@9d&)hPmp-mN*JAlPIEe96w6b5=U zz_u0QpT)Dw(fg}-wOzK|sZ+}d%zr6_8-U+G!QYv{qnhdkw>DCx$}MxJhVd-JM*~x* zg@)XYA7>FE7I#pS9#lT{_VLG#0(7X!fYyE(a4RtEv&2^@Drts82)-W-3>)hol@qY9 zo%@Qo;B|`wfWTtzwtjgtiCV|3mnA705z438Naj?vQF$S7GO0RnVOe^Rn0tnd*d4f0twqvudUJCnX%_}WpNiFD;A|2|d8=(T6U!aF`d@TD z1%3y+hNtX4^y*iXo}2-3ke#fFkR(0`HN~FD@N&Lv+$6oW=@E(Ny;hZ=*>>D13RwNk zLkAEsFKfvqJy-%g;L4ggB%3yH#T$QtfP!plEhWVIKAZ2UrUec^>uCP0t`@b1eX!)s zSHYROMg7C~7aY|IP55IPh<*5@%Qu+87o}flwy7SbOd=lFQkI)Dyu7 zv40WY{z-+kr~-fo76E*6CT#`_K7}BUjQScK2cvPO##3ulu;*CW`1wVABx&PNlf&LH z)$p3ZVr}K{5K48Yg#5q~q?O`eNrDXJTC6UD>-x19OYy|+?AoU5mAzk3Na8n9_e_mz zRmSwoIG(reF=98c2L6wbdu1mMr1K%HLIENoh$9uDAvf4HgqVv8dY|=H&UV!I?t&ki zzR`C^oxi;F?j-hV|97iqay);jV6#=VjJ~W2NeTZ|KL_YC{gYzWo~u`%3p<}Vi?D3v zMjD&-!7k@TNM)+J0FfJM+fOhdXm}rzbIpd62}I54LS zQs_^?eZK`?{1#k|cjDs8@~ClQ+wBD@q(-Dk_mD(1W?MltCifSxdtXgbP|Ux8mD)d> zMPpA5gJ8bg-1@2(cW!bEVZO*QJmeh;`*iuk`IZhB1BvEh%JHmR%>@1d95o2%o02eF zw*3)O2vHRR^985I?X}ZO|DyX*L=jRblG9>EwWxtb7*fcmYb%kahHDx)stWIW#G_=$ zlnZoSSGH|=d{eMK0QeE*?YfaVL{PfDB(inv3G_3v0Own+)i+ZVNCcE74=jmk=cZ8~ z(}j2FH6qkWt26DxPs|&&3$fJspv!re<(HA7z?|WKHS>S1jcdW9$*?x{_%0H#zPSLG zu5DmPSs{f09uHT*qcF5;kNMbVyPEzXU6;9O{RXUfbTdB?7oqsHwm%FC@jwd_u~zAg zi3I5_MVQk#hNYore9;TEh^=B4E)iGPhr>}sF4fJyziC3AnJD3a$v2}02pIP+l2?l~ zv5)9&;#(bukAtgY+WIQRRkSs%MU5fi-X_HOZowF}&a=wq24 zr9e?2?u;N_cly<9&csTLvk8UJvZ2gu4!9;I-W2s`H;Q=^zAR2$foG1ckb~ql;ID57 z8R;8QN5?-$$Hx}zi{9q$yJYNlT&l;PIDi1@yTqDSbpXEcA4C*&Sa+;`g9ar<;8ydiYbHMjT0q?sM>~q}Nto%!XZqV!?fisx@wmZDdNGQ4`FE$rU zpX1)?ED`r+BC8kZh+|S2$Vfz0JiG(`I%V3Q^oQ(!(U+K7@^3=|%^&Qv0y-ix`G!Z21EUW*@EDn2nulAIyWq3GYSEOEGOnLmDN!6oM!TlG+Tc-fQ&bTlOineY&h;zqgznuJRcLex zmgYml#rzsj=Kz_?NeB%};Ch)fmao*P9G+w~IUX2({@BUbIy9+J8L6cWt+nEA%RqmJ zi(~OFZeou1lcQu^&q$wfX<{6gnYoTNt1@7C{AJdg)e^vNCLd;3&&re#LndCBo)GvepMyx{2HBaXDe6#H9VFISZ&J?J{gTEf6|%oFuKZ=}KFSD^}Mo zhBc*H=Sn$Z*YG5l#H6T~%TbFQnr_0ybsB-!q{yJrn8d5L z{3C@%F$>*wS1;mnf>JZ4<)K!Z@GmsF6KcAK;WOLG>QPp_Z@~6Q)$r^e6bDc2r{5bb z0E|q`fsF(pC!cr-da1J7h}ya!FOK3p+SX6BtDBf#RaPz&XO4_-`}Bt=kuMc;J!O#QFriK7b3Z+Wlj~Ng#w|zEYXm7x2*|$0>07@j0IDVvc=MAoK-BG{$dPu*N-)9QAjkbYPQ0-WHco7P!Md4(k^xU{`^w5V!F&}yH$r4_bv z`x<%%-pio$2%JwaiD+1Mg4mn1T4jxHf#I&rCWhX>_?i9qV-24cp!?C32V>x878 zLpMKEEy7~TxaO4Pfq9?sh=dpjhhR0M-y_m4PY-6)ofJ=EQT#C~v<@ zhqg!5*8ycKnv$`*4<<1~Roz1pdQosNKjt+L!8)~1mA&evdURd-DT;_P=t%S1J4hGC zw_cFlDA7FOTZ_>n{o@Q0SUeQYQgpmhJ8WxYf=S@*X~tefZUxLzHw(W0IrnD*k|A z@<786Um!otGb^z)xb_(GTMq{K#gHL@^X@oz- zwy`;nAcZ}=`MtS&bU*vFZB%id+;1Vgb3Po{xA`vfS1;yl`CXqI?g6N_)=%#uZufRQ z8VtJM4`%kyGTtB0-=E%2+&W%!W+pcDubywuI%;Z=&(Cx2fJgf`yVeBw84R&Hdb%nJ zn=>{J=H39v87XcVia8p{6K;lFYa?#cM%>&lJxiwt#%*g9!v_(!=MfvPWo;>lhBizQ zq1W#&P(jjH_trjEdw0>CH4`pQS92E6^~+R#_Ci!W%f237ubfubE_H@JdIB|fe#Lf= zDHgtde(%ltes0!#YZE?&J&%lS0q4Gc9)gCQW$kzF1tsr1?PTHCqg>$Q27UW3LodJ(Xx;LX(Rf3qDR3ZOf;Y9Sfvh zth@xWGeSk!tbUKRYnDjR6(b9;9htWqhGXhIOxasoeA829kJUFnu1#Jay`9?L?zV{P z@6&j0SXdt4eCuBC27ayf-=DK?I6RRpDTfDWYHW33J=x#4yK52Hn_XJ<$SpRTJ*Za9 zRA8`AFAKe2*0g+{!~#6azcCs#xW#d$5z-(W@3h^Ik>2gJVpCw#3%xdaJk)!?)G8`; z_6TVyBE3D27&cc-acZw`Z7G(N1Q8`ORS;>!#7x{iKkq#D-_9L7KE7uspZJ|8$1Lr= z;}IRamkotZt$F%+=gLA0oD&uZ5hmCC%+J)THz*ull2`ryP$CcdCkpUB^B*M(_J)AGA9=0x4v5u;U>msb?^=S@n+DSY zLw#}HDgDu^fDzTY1SGhbfyl%t2mbIH6LJFYY^o1*csuU#;q|C3n_=s;n2gPa4+pzi z_RTX~Ga08PEtY5M=JZ^LOs)@vlJ={Hkq%W1rfobqy20lb$jIShL4q}7&hK@-nv(_U|Swq&sjTL?yxrEkx)%o-=CXTmJ-ZDMcW@7 zy9}${Cinys7$Lo;P7A?;6l;s%w8)lqAuCaB>%kT=+;n|q#n-C+MFL+ndvW_D>5ZZs zJ|1lQsPVCe(v%aV4Pcx`Pa4O%ezYGBMXQzEmV?zITLHyleZqIs zmD}~{jJM7E{m|z7vCSPv)yN(fe2LoxGWOep`yV42)hnZZ9C)6oc2add$~1l^M2)N>v0P)6{=dC(7)Th9T$9i1f5-q&#zS7qSMwCKB5Pj#n#Q5<8D^zaZlY0w$ zkq74_%0wVH8y#RGkdtlVb+IG@XW&-Re`x{HNCt8I`eF_;CZ7xK9N@i166bYmf*oW^ z%;evsk7${TxnRdpq#GUQ_8Y>o)IP4nzf>JTUY?BqGl{#Nl%+ZG#dm~t)oUcSUH*!Y zdr7h^iEp8e<^oyHbuRo|0uhV&m+ttBV9T{o6}2d3K0E%rtVCs-*4CB8gzACrRVYIT zJ%MXKki)u#Uut3Yzb!QZiiqK#t{hW7S^5+TuRQgvkPuw~*Cpb3qb4{n zAlI*Q%N~j@_gG)jIq1544{+PR5)?Se%Y1!1;LY~Xm+$X6NaTO7A470;TK9f_eT@|p z$UO47*Lqt#m}q!y64c|wm#tuYZCn4r#e~mbhh+b>#GW3bdfOvE>b~3V^LZ5my%G=PidD=D4t$@crwj%qPAY0GkZUS)eQMc`RUxSNuEccdy=S?M}h64u5bVD zrbWiVH4Ftyf*I@1#BB!YB9l4Tf0m&uq~Wftg1cj-VuH;c9v96Ym~d*zKh{lHQF#ZHCB z!5@qG_oZJa-le;XIuBBEdXk*6XN-IAXI8&@c+vapBD&)Yz@lF))q803=ekGV+UX#U z3_3P^-geP>5e00mxSzFkk@`5rw_?$6UuLD|au+=BZLWRI?w8K3h>SoPw%?bxY!@utK!do z-K-h(rZgrwITeUXo%Uy#QeNL4b(9XjIBShP-h2g@rMOB?s6JK^E!tyrCJ@X)Z0oSO zY+5m;us+G36it~f>9pZaYg#ey-?+bTFml??W@N7XY3CYqI2N0_llqBZ+Qoc%^Ru4e zCVI`8V(AfKb;kEnLJr%I)rYbTt=M;Ochlkm5qT_)=d-@ z48lk4>-h>A-}CvA(k`vo810LBkA(-TH#Jm99+$Ht)W(jc30ISa#}N0$_Rfmqw`be~ zvmS*~&Y~GJzGka)ect7!ai*nm=!qSn+IQpIx~-(hZKks`RM`DHWr6@jIsI!aqOa|) z>^u(dj^F*y*m~^T##;nuY?PDL5kuD7t!uSlQQng zKHBY1*^(+;(-coFx&)B*B28DGK)Brsu8pNT0C{n8%5kwZ*Pkwr(E2yv91 zOk{ui!+Ry-*AZMl@5eo7M5lxl|M02hYexNjaDiPr=}pNUBgR-1DSen%c8hMNoJyGe?T0D+*bk4 z1Ele(qt8*!ncC;8l{#y`JS;8#I-}t;jbo#UeUsf1362qQOE}P;PI*4iVGH&4H+1U_tUOoXK)};RPPEHeVz*gqS zOR3WTTXm*#@a2W7%eU)=$7jZMn_RSW{q6kwev92?7mN4A^VR_$Nw}Mg?H&d*(Y3Ab z?X=GdDn5+0=2;6J01OXFR?}Pz)> zjMg*8(siFBPp-3s+nevDXYoxIx>BhnrAT5|6JG3@l=T%m;$Xs7FR#v_A%}}JP?=W; zPTKBR=W&4gk!c*0%`ETzOfq2sN^KSEpw*)a%j2vP#p>i`UYzeoNTOG-B?~h&-%JcI zdw!VuOl_3=mbH4(j%q&Tn3pWoy@2h0`sJE|>GwJ^@)j`pyekKmGZmxO(ua?K>ucKs z1srLHF6*bx5MZXJ4F-p=fB)o4ubG$tJAC^cX_T~R$+OqY5fP!+hN;?H%l7MU2;iRy z5yxZ`2H1Hb4WBR9y`4*#tt0MBgkbHZ_B!|3`S`UFvyg(1pOCl=mf==2tG{-8_VCmq z%t3Y~Z3`JvG4vj`CdeT6(YjsT?lO5?X3wcX_MJf9K)*JJ_6~xj@y~q*r5{q*X`7FQ z1;>7G*}VQCrJw`dl;Y>0!SA zUq%E@)3!+I5|O?z*}>Yczl8;6wPdx5*JY490L;-S-SsZmFq@eRvVrhFOGx(&xHdEE1zk6Jyto{^F1KX^iLvD-U&OY$_iTu+ z5jOFh#;gicjJ_J+GzWQs!?#2Ww{g84FZ-YelTp^XIZNzqYw!ZOMN{o=o3O>YEp+1y zZ@cgt|A1P}1AJ^|j`#gE18DY^b#i504R-r`i6Cm)F8w7n#likBsXt3ryLh7prPvMc zteC!{Uq=@Y3hi!3L2PE)a4rHmxUL=c<-nip99$KCpKQDL+X(#p|7QnakG#+Qy6MEx z#)XLl?(cQ*sf}wLPBGiXo^&-ANxFb*Rj$DIT8=;GMQ@x@lb)2W@so24(od*s1Rj%S zMVWfOx+txIZcwO=5#r5Ez58?SsII!Sx=LV6Yy(?D>3Ukea;s;elqXC5r*VVjN|e+u zyVlhH+}L*h#;*SM9Q#ssRH>iK939Do`-8s2itlaizwSIbJ!D$4y*NX6Hv`&I@4>z| zSTZNK&gSqT#Add}uAW_2R#SMc3UATnuQVgug^<{Z8`F&Vf0J9Ia&rfP(FP&8^1L;v z0@N1Dsw3#rdubkw7Y$S8kd#-LQW3Hm4pLb!P|@u&GJ#+)r#b3p{*(1RktcT`-`)2qWcZXNFEb=)f{Kl7&j@i)o}LJu=a8Sp{+6STL>p0 zrFt%V)tYD3hKSg_(BGd{K%!Fo^UteQOC)AJtTbP0i7P+EcuU%VW4UcwO4u+qsBQhw+04Ivmu?TFxK}-HuCW>~*u4jTwG_$N z#X;B2F$F4eBDArM>o?EJtkT^)armfdA5H4~xvTloH2NeNE7vE)q&hX*Q!)a{zFNw@ z+OO4{R3Avu-TDspz_lpQo_mk~vEY;aw6r~fbKe}#TuUpIK@&VYjs4Y+jb-EHR5$M0 z>nu~W#6BJo-uINnTOwR0m6N%}S9{!yP#Mb{nf7R|i#JAFub*{VZyAW&zkjC=`*Lm& znZY72jHJTqW?iX8UXGu-(0~3&(i?j{8nnyh!LK4zA11NfG(1=GIn7^(Ezpd_kf6zb zN>tI#=XkK)FPMNlt`<)ojyV&pxLvy)TYI_E7CwC>L61EnB)$$Bkh~Xu`C&w(Eky4H z-18=@Pq$O0L^#I?w2lA-ua9zPpg7q(=Nxe6nzWovd}Yog;z}h_!B^j9uL}i{invrd z!QdVDZ2R-^iiTN<_Ayi0P_)u!4FHM{^UeS;L{}Ju4|za3BXa2*X)aPG0Ra(VV;(|Z zoI^OE?pT{xt)3>l0x*NXEPZjtJz`e#>zeKZ5wa5;a}9-|m5DGDfk3AaLm?g03rQ#l zNkTV$KI?#oVI-uE$k6_UOj@UlR##e~YZ=y;)!?QDIpS8qNGdwFk1oEfH)Rk6gG>rS zQ0K^SrV<9yHwO>T^2i<`!exTxGEQ^_2>b7l$e{lYd9h{=4C#9LS4iHckfnO_e}&9~ zLM9ao>qC_5%TbyrCING{qOr!n-k^DmMi!1#PGb@^m_;9fw=;wy6E(Oc3q)M&OmU$V z1u?LI3d!?4mr&#es;wxsySDiH1wtqfGh>lDv>xoxHUtL5>9=qVpXlyw2u#Dv=PwW= zK`_4}yCc^OEfXEy2|tX zD8`LS6a>O5pC{T0n@(ukEDVIWmFTcT1cGcExgUlE3{3<=k2!Nz#!4*~&L=>Wmc@Ui z7&RQWi78QBHqWD73t|9Dv@z)xM<@)01dNXz^cttoYq&zUal#q}CVj5m#u5Yjd6hE= zhL<&%#~MY0Etn-xJFOoEMdNiW5B#ZyA{!0`1Uti@q%4Pbo_>bPq&H&%csBfZ(=2O2 zfV4jnuM&{nc!)pi^I6kG4+aRsc+;K$nhG<(lj zQ{5DM?;N(sc9%OVd`)Z|LVW+C{mA0z=H>Ke(CALbC{c$Yz8J+Py(emKpLTzx zF=?y0Z<0uQy)1ek{Dja42}UY_BPfdIGrIJ|^}A$vX`5ftPeolmnvpjzdyicEkCXD@ zBUtH}De1>pxW=a&-psh}Hnls7=2kZ^JY7Ch)7w*W?r+szZ;Dy&Re^0`Euo@&t=+@@sgHGYE1xUlj^M0^?P*diFYri3g zOcx2ChPvLXWDsk2uxovB<;{e{>917n6qGW15_r-X^vCmtLTXLqCoWQ(VQPu=e982B zUz04n<1G!-Eq(G?LV7T0aZh9{2QTag{u8BRm1ty-JR^zTeZBDJW%@$Q{cV)>%NMTED~(c)QBFzX4rK%j{0iym{I9`BGi$VLQ-b=&NWN+5Mid&~2(GCHnhV9P#LrUjIM!*!$wh zkhLIOT###>KHi(&7D{fXKJM=we&Tr^Y(SuqSGW4AG~>1_JP=6!NZfwwB_g0HLk&9c z38X@^S`oY&CG3RQ`}e_$H;rFXVCRu~7MY|BRu<+a1{#*siX^CdG@}mzhzfy`r{GM& zwr}ZgzO14T+LepT^rcTaCB2q%EzIxjE0at8d7#)9O?rFIZ_V6l$+At~azN0j^MvFG z&?+3x6x7;+bW*zEop26W$4uXJ_J*+yVx?ifFgIeAAWspet+&6rf+%IjIXuL$i?TTn zQG}U2f`F%oSU{m;Q)D>yXo+hQV-{#Wv4)u;PZMW6ItODJ`+cq$f}NkzOZ&neXkm78 zw+brh`ek6AZvlCF3MG{|V;LOY1h)W3!63YWTe0Y1C+!xHeLTWT|l(M%>XZ~2X zYaYvq0*o%)%bx{L=?h#wr4RO>J1$4$mLZr8;W3C9Dmm4M)N>JpR+&5CZUa_;2bOz83+a2`HGhLg&A5x6#aUBRE^3cG@FvD;0DDe}6qt^)4@ z?l{5N74*bP2DfHYqRFY5{N~_~9t)}QS)TK)>5i6vN}eaRc7#di+$pIjfF3dESl}Kp znAFWM&=G%BCo3KGCmDl&XR|Pkvf9X)pI|1r=cmB7I z_wmgJR?`0m3D*M6EZ^bB7ljlhy>EY6ftL2iiYKLiLp+rMtw8&KSTSOF7(9FkbrRZ; zcxUBJ?lCcWyN)}&YSm*1-}>1H#H~8+jXu+AE@R4yM>?v>*0vp@vv+3e2fF^$`Wwei zJ%Cg4ST(_dHwTyB9@NSTVEE>-i&G;VXrpM-H-v0#i+kp#^nu4ZYb_B?sP=~K93rtk z7Iy*o5o)Q&dpI`lyK&KSC`zs<$pTZnenz8;c!lOc<@kFaBtdBs-39x7Djm`ESQds2 z*-Wy*Eus-$#3^7R!Kw&9SZFYOPRU=KzC9l!so?@OdM!@4$X~J$QsWKVwb2wed8sMw zyf_dsKjgNfieufIk72oq86Mf1n|LWfWAOeC-gL%1j04$P@=h+&nLwmLb27o2d@@Ai z4{E(QJwq)(7Cq(!sF8F8Cj=isqyFRgK{FP(}z+(L|0l#*&aEnoiMRVn8t{ zTC^)+$zSRN)ZBEdQ1Dp)C~5+!Br3FP(I`|JgH!HynIljGP;Sv5tckeYr77Z8*Z!C`bnRh^fti)B3&0&j#cgv-!(K3bN^uu_JOG@`;p;1b3W zrPo@r?exFN;-Xu>_vn6BQ}>syC8l|2x6{o$%PQDISn#z`J@LNb{u;;)&0KB})5TJr zs(d&-K7@HxjiGiIa{0Cr)Gbi)8R@xM!dZ8Cpn|cQ^BeucruV2?a*_+IW?_eDG|BU2 z!n(Vd_p4b*wPRs|0OHTX4EP1#tVHY0oYuK_aGE-ynv6UNPDxEP^d@F699RbYKgnK` z3OWyq3M-We0x$!M6QS@@dWh>QAQnz)hKVTa%|Vkif)X?#S2T?Ar^J;)Ge00ke5Oi6 z5LG-ND_0&qk1+A5kW`F^S7GtOkt3*e$B&Y6BH~?+%u~^Y$8c6k?oolCNU~C_rxL?} zrH4}z(~QiEc&U`~qcyt`5y!wd#x5&}S7C`VKS-bb+;5W?@u&ZyRa+GqR~C!#q|S?2 zpOh>!+MPK`Oqi0fdnBb6!APDOR}iBJL{(87&p}ruucMa4Fl7j!J)bp2s7UKa!ckR8 zGtP?;R~q)f4r%213DM|J3+xG8D>SmBKg(m#G}H&unlTm9aAW<+)Os&fnF5p`byTLL zl8cmCsFjr^hyRIM1p7}^V#E*%qNO^@Gz67@S)fw~v>^Ty<{t~DJ0lXGi67P?cgs9c zl04NFhqIPCBWR&aw^dc@seaZJbcoG=#i00$?*Zf=#?<*k`%I`n$8pkAbs%NnT=0~XsXLHzVu8f}piBz( zPs-eBvt~AW!x;vg3S!Z*L`NYnY zDxkUMXVGIK0FG?S8~-*VxlS3Co%U7_6@&-F^}N$xm@iTgA}aqwCbMMtb{z+Z;eS2*L88Wd_UMp@OUUM`;KgP${_zP$@t`06fltH=bcz64o4DUV2;0=n;z?Uy?gD zpKFsPGzh#1NQuXNfj*XmPqhCK98;3}Y3YJE*`aN`tt)77_9tx5g|!d57ulYJiiRUK zU6s&)e~|L|fjm@CsuX0hwn`V6F>w7`PBDtuw;2QJOZo>bI^T#EGRLgtuqGmD5bv!iOGK&+>`@-vp&|Z4K2J&7twr%M@1yhx-+5qGm*OE;_G(5xBLQ-rTmBzqt?eS-!>Ej$O z%k8ByKZT}7P0Db;dgl^j0q*|}OIj|X8IS%~Sl;x5@*m0cv_AeUl1WM!7P=Kq6+*vR zgOwmNQY#~AZG@WOX>&m(xwFeWtqOwBB88RtV>*UnQmXjwBfk7h z$r(V8hn8WESOcdHc7vH65yrpk+zJx_Sq&3NW9eNwK#CE1-BTLExrH7gLiWvL5BL=b zdK*fOxE1$CLQq-8zmK$Q9wyi%TXP&Z-)H=L2T?G#Vj+y#9L2XUtJ!>p^xf}QAOg48 zE9fosB1^V8ZVbmFN>IA;8LGfia_9-7F;`je0!pZIT=bL{%Jy-lo1Uod*VnCapVxr_eC3)xZXeWX0}?K+QE(6ZoMnOh`+xs%wXc%YA zTj(iGuVeZ@#MbQ{n-{1UZwhSpg?T<4Xs8@wl!mH!dG|)R#ZG{rdMt^(qN_9xV zIasqaUw@RiP0EIVxOSS|JmRba32m1FhfQ72@mF!lAOMuE`!517Db7+40c-^Rmc>hx zP&5ErmKpc-x3%zZqqq32CSrbzn@pu1=j}Zgw}GGl=danvK$y}$Fr|OP=mJWgl_m-P zd`~;;*b*6{kj8nteSI$o2#o`9CUP@kx(h|@9H^iC9=^x^btA%%!?)H5V%C0mdsJm(1Dr#%j}~t3&1993gDi0$jEff@Q_aJ0}_KTZD-=Ub-9d&Hl+j0 zI`-k2j=z|NzSMw1gLla2ykKwjhvc5t#g*iqeu6J5TlCg|7VIXFrT9d%VJ@KW^0h~L z%Xp?_hjYf5@#bVv&rvyUOhrE(5^$Ta6x^g)3ZOomHj>@+zBjFQc42W|P;S-hhh4_2 zttygGig|QvC*^X|GKR|wpdHj&dwU>S{4qnww*rR`AX%DY5`U`m8$jm|DE5Y0kmM*( zZ8!=tv2~v;9H!C~Zl17(=j6(+h^3ctr$MYX6fuX|QQz5{g~lmNXS0;OB7o~+X(H&G zUWy*h_+t6`{b^4Spm+3J6p5VC3&xu|a?&dqY6{Y65xTQDyVL-rFV6(tz0qQs}eN4C}TYg3hB+PD^JZ7+Y-Q8Y!IklGu_p`jwJo}{Mw6OsxTlIJYd301y;nYPm0 zy%Y8ekG~Vxktn>q87A(GQTh8bo#DxRK#2q{O#SlP3))$VM>@MK2V1b68eu7N8}G=T)XA` z7O_sONWeb+Ly~j?HdN23)HcU`RHUFqCV~69dB>PMPo{sxy82QEOc%wGfaxNuCk#8%QIYGWWwhq%n2#=BsBBO*^x^aoJJV@q{K-}<>bVFapGk2Z1UrwrgDn2rYe;9 z1Tvp9KZrCKmdzGDTxX*IFe`LGuZLt@Art0d5#gbssnG&bTG9yqo06y~KC(JM)CC9U zNVMo1Eb!n#P4%V(*r$FX07+0sx6R=fSiZ9jAf?+{Ip%Yq9J zQX}=Bw2~@UHeM4=?&NiWzZEKp=W|}q{LJ=k)!Q!TtEPJh{!x!qfx0)yRgc-3!u?8o zi!k%9Bdv!RrBZ9ab{V;9@T}r9;1}=~Nqcsi3I(034~NgM*q{D7@6bwy`B}m6i!wBo z*a0b+j1UZ0#;QEX%6~s}#f4=#kpJAmOh}4vQCegU6Tgl7h|i!Xb!{$aI7})~Kp(T* z`x3V(fO!qd1Nqlu*%bXy1)L{(KPaa`AJo8>nlo;34K|Q@*SE-Q+)|e(hMuRmY#7u@ zs}1?EDYh9!2p}fTs)5Ml-?5SJ2{N{b5v zT!S7D9F!8ILYwn7gaHzUItikF&yv##iybPRnoiR3=2(YK4kTliME5xXSrP3x#$TC@ zW619(&Ho}*agXGe6_7=X1Ie>249HfoINVmSAuipck1$I8+mLnmKYWsb2!9z;k^&Co zBej|t#OB5yoj$iF>ZAp1C!TI8Iz%TprwS9GOA>eE%y-h#+4Y?0cw?4#l8XreE>jX# zep&C|Iz6jMibG|V+RHvMX7t9zMK(}oTyM@$!ING&y>+Ed&Ci3drR4Ly5-||~`&yd_ z*{~&gCI0l>M_mi81-hkskJ6T?;s$v6 zoajsu;H)@FD!UKw6IKA%Q!tk_)m&XR4^-kazmfSo)K~U4v})7XKmQcwXG3_cPwrWm zCjM)Nq>*X8kAy=26*RJHvM0$j9(_Hvj}(X@_7p58ZQfCrEhb)QfEv|KgipT^2WUzW z1AJcnx*nC8UR^m$-w+MNAsuw*%&G4sG@Zu4(a^ z&N2Q2W^(xA9Pd*4H;^4B4)pzclwAA2NwL!3-T5YFzkd9W8jOX4;`+VdARs5O|5dTf z+0@0w($4&^bym%4TTb7((R+4E4chk1U|Sqz4`|NF>$c@6ZGf8ufHZsqv3=l5fX|oT zA=`);Pccioy2QA9p6Tsz9vYQr%0h6Emjr67J~hzcppdbv6FT(?4cr4z-&(9G^+n=M7VYOVF<=K;e5kE3>CF}*e704E9+ zF7`2T@Vb&|7uUOfH%Z$g!0iV{{lV15)!=TF(@!P!TFjH86ZoVQ3hY3vp>+AU2my!J zz{1rvEbLCYddJ{n!?~=NDFi;Mcudc{V9FPVEJ&us&gi%dbogVDDKq!zs255KqRT}B z;S)&gOhvvdZji|Mi%rx|FnEwrJf4U$P!QQyi_w($=|>dNa*)fYW(x9x zCmH68n(~~*q#s)12CT-r^e8@3-2Ca6*M?RG;t2Sy))dzS7Zz4J$B#;XPn?xR3Ww>^q@eU}r{w8b|tKwJI1xvBK259`-~;oJ$*zmn~8sqo;COqCT9L-m0!_I0H$k z!$`4{@1bFAGUlN~kMqj3K6SYJa$%CuOLN~eJki$im80g;JWIsa<*wO8_B#Kia?}^u zb#hbgr<`rE{`eLY=atzuD&(Zw4jGXt-6y7zDN7pz?Z-A-PVWZ>WF{Uc zH8|sWghj%L;Kr$wN@DNvcJCyUv&IBevP3UW*m{O-sEirXiwPyMYMUt@k1`)w-q=toCRvzjg-JE=du=5wVGIUqru<5b;UjF`SZGi z^52V?9je}dmF_-%zl3r1>_(`qDc9lRZyUTQiBR{1Wy>}8aAmpmy(#c&wX{joFQ5+q%FqTbaQAcl)Z6`H{Xff6c_uc5- zndPIotyh1lH&?(;7C!uS_Kp%&D!gg}kJ*DSZp-p6MX*J0SH-~Lus`KqAVqn!s&3yN z5{zlO{>Ra`@EO%MR; zEPquv(~<)g8pZDUsgB%nxb(8&8qpzkxpuWuf`Hm865AxIZ9}a{d`8}baOK$NXSh{2 z2zS{sSXV9d>2l#M!;YW@@l+q1W<7#h(dl?t?mGqaDCsl5cdx$E&GJPkA?WWgN7=V0 zts^B51mc|%#HZ1#X0O2a;T7Cnuopz~C5fwMntkilTHQ9dS{N)37|FKT+P;<}I20Y4 zb9 zd2N(tk&q&bM;E0pkez!R6wGE6MwZrCK3j9gzE^#De4Na*w5-TrhrH3NUAAlVK(x_i^XhXjf!OX`vJF*6odo(R?PfNQ}x{aA?LNBh%2NG+$e| zB$?&rNE%bdglSR$O{BDvdeO86i@pYJgqw%bL{akzmXOt(T(}Lce<)!oYx@2qNyBdg z9=gEx8@`aHQOruux95Y6)Y<+@2`0VIFGtGs8B6Tj@qM{$)$i5uLzWu4sLg%5-Cw`37x=gjr4nmHfC`n`1n~+B5Q^Fv%9aL64u(hh55@hGEdzGw)S98C#n zJMzReid0(2uUZ3XO~RJikbAuaYhNRWUGsP7Rj9I~4f0GBI>u$(EV>|-OSUB~go}xf zg-~#ILCPn61&`wRurbV31W17K_vL{*){{WHQ%{{{t|i9gU`{ZKNH?CYe4EQJau}3r zsueNm_@dMXOPYaY*B9=mSFbilCN*YDz4=AVt#oPye>51rgoPCS0e{GYejPvVmv##cen#Z$ro4PbXvKY;wJD-h%%ylBvL-uGi{&Qj|tGJ{vY7nD{W2 zMq4K%e32{$UGrd?b;D30ah}e0F2grk{j!IS(>L^#6hthJho2I>MCjT};Va7%$HDmp z_urKFQ7SuQ7Y)c}zZ|B^r%2MsHR4)Q zHKL*(mNCmgKJ#bIIz_2FWf7uu%n6Tbrq=lsyR{USF_)*#{cI|z?xOxa5MW=n6|usF z>9QXf*wVaR#z}85m}eV(NFd?!2-Z%dUX7AaztdvVzc6og2|4;R-tM=nb3rM1wT)Ja z^;1?2+5%Kmq}l%;ab-;Ki=zioCpOli-@J?|mlz<+H4+OgG11DLy~!%bfSVNP=O_ zzyaubw?$pnqr#5lz54U+<{c))D;spL2);9xHe_vFKiG0r5{yZ3P#ME$>jAJKD!7{% zCW2&4J3r~z{7mm!OjAix18GR30SEc=b|WbAyL^Nvm1=+1M&?je_HviSK!ek8k2R=e zcxwB@ZdH2OJrCy7noXi?@YMG&n$*l`=3!4LIAuoLDs~NieD;9#j>-0= zV!FZ}-dd#7m?=JFeO13IN-XWh1wtgm;%F_+>ZNU~$e%w*trSL13mTtONKveLe(u;* zWe1Vcg*AteEWtm2>ylJ9F7ZLp19T5fN^-3A4qFm_l0g+vQW6=D~7P)Q=Y_jBkRxX%SOz zEH8&|UUSFwiVyM)>i9nP(&=HHV!7XHb$>zsGZ)M8<6SKU{@_6YvsX0WtFf!Ii@mLe ztqqfd8jKYP_t^>72s=pa9R#KsfGOL)W37nP8yQ1anwq+Y&5C3Gbe8GUSr_3pZV zbr?Oim3s#xV&?_4ib**;zTPT}LXu7t!Lz2jYW6_R} zqaWz7U@k$Z1%a76lp~y0hrzy$Ibb&hpj8Y9MB1pQcu_X9<4Q0cTT=9{`>GLOE1=mH|ET+`G;H*2Jup8< zhT83xCuy>%Fg2&n*LXq&TmRxfQW-bf5>|}XAtSlnQ=klv!@5oI@zdGX7pbyMm@;<0 ztfV5@@6_SJk@MVq&DSoOxW%!FPMrB1wCLr!@N>UayNShZxTr8GPCIj{ef2m4GQDaV zamr*6j|QW0j%&lUk@;L^$NR!_FG(krGQK$3y`fDJHX-bGy<KoWU8??DoR&Ea{*a#>b`yaypNLFyNcX0lz zRkP#j?E;z6#lH3o-0hFEg8Z38{@6v6|jWlX%D0rCFOQ;+i@JNUW8&qB)=m( zN}s+x-Rv@-Y9W)fZ+q}^gfO)_@GrmWKKlJOaXCHsL1Tvh7y zs> z{$TKnf1AaNy`gjh`qzC5>97AWN{gEd4Yvl)$%F&5yZ?+i>|AY)Or3zUGJmqWX^kzr zeQxaTol>EAah>MyM0N=FrUD@~-Dq*L=6euI?7H*ZF&5^{YndzKX}YRx!LkT8SyZ>l zXf)p)o_BA+E99@&o4|x^#Bg+H&g($!(j5`{W0|RygZH1Qr<9jJm0;IVQD^4be1$AO z_TFP>f1_+HK%&ytmQri*ey6%!`!1OtWy2TE6*lmYvafNIRC{PURX(jwhfn4;JG|gV zuxp|ozRM!5Jj@ns1Fc+{SNO`x33qU};F_hdWvu4dRU1YXR=ykY39h&U!#WtbcH>ao zky2qFl2U_^U0q@Ra%4rVPO;xnc{!hjOtsHKLMnag!s-4?WWH#aOvDrk8=*ao5i8v+ zW>{GOj|>+#&-qG{93&To)K!Q)XQ#a1&dfu)pBD!{EEA1ydLZ>UU9CC93}lQ&1e~K3 ztoyJ!m=!a!6HiTJQ3NG2wv|3{37~+3@ z`c87^B&m>Ih($@AIkQMECyA5g*_ST=jVm@T8_|FxDYBfB)+8PNj(+(InU)-*ViXNI zM*pW5#bE*e4XgKB;0jy|iu<#}%rQ8n-}ED_64i#~7eREx!l&H4I|61#B@}a_Vj5ev z#M&3{_8!9NIky|@ckAv2Crraol=bG(!#TeJ+%7sFB9T|Wn~g3Uej0UB)}KTV#}NAC z!FNkZ7*WmM2~{Nb?y98L^hmj{J`BKGchBuzci+hBiAHzdeA$8S*HzaYISlp^V}i2F z#^C+ljn>m2j?C@`2H$6LE~nL$H=Ke@K1=&{|HJqF1F?xH+$fAYv0RNKy8Z?8);sSL zfb~?=^2H2{tvt6LLnQ*3?FKu3r99X?zM9IEFIe~f9_{!;e$E*4^UgHyU9&FNZH6hWu**uAT-===AVd%T7d+!i@<2|W} zar@}`Bqt7!hqs3a4XU80^V41T)}{GwPmouao-Hx^-OlsCroFZ<&)D3c1_yJgkDu+b z2I}d0^aw{bb(GUE*jfuWNHR<=z&hw zz9NP%bYPs8-%FA>ix_GhL!=Vr&@w0uzb>W#vg2Ps9z*%PKkCs{T(TS$<^y<@#DpZE zkw2khkC0m3a`2<;gWqm$6~QV5#p};pZmqxdWZiE$&+>Sk*cFTx=nu}_p?bkG!-Jc; z3qLgVOxiWqIB-`=Ut(~&fSk6r5A1;yhQs2) z$M6fZ+UsyUgJDKTk|)~ys3n^Q_JSakkRD@X?RfF6AUB|2HIhJG%;)sx=tJW#eu(Cf z7zKptPa@A5zYUTH>5GTf{F#-Zkzh+u6;Tw%z zAi+qTZ4Z5mEM!3rujPXJ;ZmOO32KB`y+xJ6W85`()u2k28|Lk+(W3C%m%eb#{B>yizlOAFX|qX~Wv+X~jU-G?_Q`$_9qPVTAqnRsx3C{~FuliSs{k ze&aHg=d*Fz*!zw9r$qb`9kKb^(`T*9{b;e)E_uk6fIMYDX81XPx~9o74tb?VB_lxaQsfpfj5RsU7}He;WzOu#p# zXKvfN1k-bUiZ7_%^15pAq)A{+@6jjjRWV1mY&V{8zWHbmHw%ZOtleFKmeUDL>QkCn z4SAHR_B?23h+_G|mGRNI+=2NP+jUD3;8mzyRjFn6b9-0wtP2dckiOjFA!azaX3z5p zTt?GHCO8>P{Q1Prs9$99)(K}MXT0`^n!m2JOyQhXM?%P|Xr5_bZ%&+Zr0VS>uKm9c zOn$y@mh3LQbj5l8MeGiT_>N4yJo)wg>)-yJaOsh|RQmtnm)hKb(#`)qrT?hg$3B1W zpOY<3_6O%5SuNgWu)SeYpz^&sRenv)<|k6SK2AH>dfx6z>!gzKwJ&(ro%gHAP;c2f zb-LEV+NeWWc3J;!-bucfb1&=P$60#(w^Z|lw>ST8xP9{NBRh8C?XzD$vwQLlSbM)$ z-Md=)eSc&5`YY1wr&Y1N-pat(eAM8U!NGtWiR>9ED?E-Er$`p@rnYImkhJ}9Z_;(| zbw~M6e~^6t>OuC(UBHX47Dldg2(prCxqAK0{~I|*ZBK-Lo9^D$@b2jjr}WFBue%N` znY~K;%F|b;H2a?~pWU?2spi(YTcz)$Lljh2PI^6O-5aZ2;V<8)9aV1x-cxL3o3VD` zhpdb7?N zAvJxL8Na#bMY0QTdn(v)UA1A&OwMS&d7a8}EH7p~?d$N}Xgoi0AH#$_KPz9YFX5i& zyL{2b?uxjV=1ej71bYA7mF$hX*Ywe!=?$ODZ-;GLf9z%87QYlMAJkxQ^T6es73Y)P z_&*4#vGW(4ifq_gr(jr}n)7zkjeOCYd}iws=Dm3EXin&oi^2&@|I6iNUr^XC-Q4+( zEt#uZv#3WfLiw=d%olPJ-8(<6Quvpc8qxQ`s`k``D<&duB)D`A7wSB$n3s@whWQ11 z(v$Yy)4G><|6Q-#b`q_trzV{s*Tr zx2nFf;(IBRXQ7aMAxTRsCA5a5{upb@3HK)++tp4T8PWCXPQ zG|(y;6w9~rK(#}Bj%*0lQ0QGPX5FpNzz`S8%D|6ek|H0}q~emwoK*01C3+a3A1Dda z-@tg&7DY4K@sjA~pwE*c%<(FQnS(Tmg03BX;sv4Iq8zFnZ5jsM1oVjrgb7&{P!mw5 zCD8Swj~XNN|E+@RM;}8*Hv+x?jWFU{Bi7zHx&i1NU4#MWnve~^*6l?%3%&1%Fza|T zvRSA-Npw@tyIKfS?zKQe1*PMKt{=TUh|pizft1BiTZaMOtiT)u%2k34iNNfU-3Q_U E0E{0_;{X5v literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerThriftServerWarmupHandler.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerThriftServerWarmupHandler.scala deleted file mode 100644 index 982b77487..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/HomeMixerThriftServerWarmupHandler.scala +++ /dev/null @@ -1,73 +0,0 @@ -package com.twitter.home_mixer - -import com.twitter.finagle.thrift.ClientId -import com.twitter.finatra.thrift.routing.ThriftWarmup -import com.twitter.home_mixer.{thriftscala => st} -import com.twitter.util.logging.Logging -import com.twitter.inject.utils.Handler -import com.twitter.product_mixer.core.{thriftscala => pt} -import com.twitter.scrooge.Request -import com.twitter.scrooge.Response -import com.twitter.util.Return -import com.twitter.util.Throw -import com.twitter.util.Try -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class HomeMixerThriftServerWarmupHandler @Inject() (warmup: ThriftWarmup) - extends Handler - with Logging { - - private val clientId = ClientId("thrift-warmup-client") - - def handle(): Unit = { - val testIds = Seq(1, 2, 3) - try { - clientId.asCurrent { - testIds.foreach { id => - val warmupReq = warmupQuery(id) - info(s"Sending warm-up request to service with query: $warmupReq") - warmup.sendRequest( - method = st.HomeMixer.GetUrtResponse, - req = Request(st.HomeMixer.GetUrtResponse.Args(warmupReq)))(assertWarmupResponse) - } - } - } catch { - case e: Throwable => error(e.getMessage, e) - } - info("Warm-up done.") - } - - private def warmupQuery(userId: Long): st.HomeMixerRequest = { - val clientContext = pt.ClientContext( - userId = Some(userId), - guestId = None, - appId = Some(12345L), - ipAddress = Some("0.0.0.0"), - userAgent = Some("FAKE_USER_AGENT_FOR_WARMUPS"), - countryCode = Some("US"), - languageCode = Some("en"), - isTwoffice = None, - userRoles = None, - deviceId = Some("FAKE_DEVICE_ID_FOR_WARMUPS") - ) - st.HomeMixerRequest( - clientContext = clientContext, - product = st.Product.Following, - productContext = Some(st.ProductContext.Following(st.Following())), - maxResults = Some(3) - ) - } - - private def assertWarmupResponse( - result: Try[Response[st.HomeMixer.GetUrtResponse.SuccessType]] - ): Unit = { - result match { - case Return(_) => // ok - case Throw(exception) => - warn("Error performing warm-up request.") - error(exception.getMessage, exception) - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/BUILD.bazel deleted file mode 100644 index 3f738bcb6..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/BUILD.bazel +++ /dev/null @@ -1,26 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/decorator/urt/builder", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/feature_hydrator", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/filter", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/gate", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/query_transformer", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/service", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/candidate_source/tweetconvosvc", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/decorator/urt", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/filter", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/gate", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/candidate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/transformer", - ], - exports = [ - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/candidate_source/tweetconvosvc", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..0f30b68883994b5fc6dc248fc9a873ea76bc5796 GIT binary patch literal 36979 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 WVSqO)Fb9Ehl^{bRFnj#z2JrweRyr>L literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceCandidatePipelineConfig.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceCandidatePipelineConfig.docx new file mode 100644 index 0000000000000000000000000000000000000000..5d97e2bbd96e70aa71c1a6f7deb12a121bbfe3e8 GIT binary patch literal 37978 zcmagEb9^RU)-D{|?%1~Nq?7L0Hafgx8y#C6+qP{d9oy)nWBc6wJTvpo%zMuF{Zsj6 zSFH0yF5Om$Wv z1d1^(BlW?XaIH?D%d3e}TTJ{+S2sgFpA@{p2iqgpl)gIlq zgE0k{w+UZY(kC%LiLAF}MoP6zt8}PjPTm9;j}EQ9yY09HYiHFL+{S?V9Qd^x9UYINT^v^1kt zye&=wrEonS#E>#hdje>v>Pd7Hq0(48Vk*6Y9{L|1XbNM<1)r8f^&aNuWNju?{YH?# zbEpc{Dz%HmB#*N3aDCXHh>?2V=EIIIjid8OzWo(`dgX5fq?y#~HqOKEoH6e-an$eO)TvI1n0pAkBNhkktcG_>U^O zQ+^eG1Xgbo3p*oQ&4qy6rCyCKnyZF({dJgR*baXZ zH+8+H@O!{a#x-7Oe1FP-1 zUE!N{`4!`FpqRX}o*Vfs)MN+R0JnJqfAMU~-seLGaO zT8%Nw-Y}!H+ME~vnV`_`@X8jz+k6(7AXH$2OaR6T4gfnxCS!nu>7ScCGk#pIpBY8s z!AoLZRxRuX1x7-e7W5?iixh_ca_c=ihphE@7U$&FUV)8P4xJ0(7T@rVo!|ynV>7sM zaC|UPNZf_LNjSVF=KGov*7{491T9ZxQc&MT&-2_hr8%$hSWko^E&^Ol7Pxdei>}OK zC@aI3WBcaJx9iE@xU1xBl@Dp+}X<@5De`^}&rb;pN$=Jw68g>;h4}r~0e7L=`U`bDu z#wZrafRJvJ`bpn4nRi_8`|_p`G1dWl*M_tiplex=`M_~p6{h$>}5&B47x$?n=0n`Q{ISz{RUiPb@=e%+T;h-qm9i!M<#qqNN;yNhwwN6w~uXHur2H}b0=w6o_S8a27(>l za9U5STvw_ddL4BZ+pQrooWsKb{w78pIr@_<$dstd(Vuum)K0e}iJ z(MkYE;j@d@F44m`+&2`)D;t)h?I&je_!CzsZl9KVSi+PuSnIdZ$ZRwHv~u!xPst%We4Hyu4flqaAKf3lB3t>_jwY)>a$av_m0~ z94(lC+jw{JdS6?^!-j!ld(snkR(g^)=@GtN8yU4vgn6M!L12Ix%8M2+;Yxp6&5X8_ z92oAqF6~b>0Jq?oxTxv%<1Jt_TtEBm?ArcJvp+#1+G97&jbl9fW#q}4$5PPc=WwU( z!>5ip;{4js&|q@EG0;813dz9i1rN6y3wS!TO;0_WgO9 zM_tI5@0(Ff?UL07E6V-UY=oRz@yAF$3ZJW+6pBI3e$W@`77io9)~jFYZcaTYO4wf= z(0|6du@i>}%?G*3oVP=ry$WaJP~V9SnSPoQ!QdWaH@J{o;iy^nZ-9ar4^2p)6`+na zS?7fpM1hU$Fuek!u4l-@ zL=?Y6*(o0AIcpmxQgN->$8K$4#YeO}bGix;!$Fmd77>pz2E+aPVmWmrEZi6^+N=)0~m5$&k67FK#&^cUD~dDNW; zJkZP^CWkNdH6>u5p<$%{4a;dk53nVZ|+6M$$A}5hI11^A406qjR2y(KR!NW0rcb zlQbG6LJ59a1=rB{b0;-K&lo38VinFwTzSRe8-_ul&_ss{^O|9N>q$k%Y?H;J&m%vX zoYhKCXX@Y345{EI!~#o~+O>V8Q!?a}ah!Nr5t&jJe zp0IiL^JM7hU<*G~W1!gs@7sHmNGwcTHCjf1FfvbwRX#OJI2FJxwh;YOk-th2x#cIX z%=BN^z0b#M-}Ax?=N)iqR!c~uB?R(i%5YjYXi-)c!?6s{_z`&s%6~}JvO9)owh6-a zDk3*x(P~3|O8=}H+dSQ?RiTTTqFL&ED3%}anxN^pfx>6WTdU3KKooSi6WcgSdTYuU zWuX4}@st>-Ia@}8RC2?e|0Sp^_kMCpC4G?dL;!c}Nb;x(OK9^~@~^1)GlckqJrp}L zNDg8z;YwLsu{~c_LHWrW!!&Uo#}AX<8Ks-4PHuRK!+qIu+LY1QBdoIF?wuP@14zhTLrN*V53sF`PkcU@g}eqlIg<1jpCNc2e-Hv zGsI?!##Z*zHKjY6Hmt?ainuJz&~9s@kI0rgFBT1i%g!}1jjR zRQ`{9ge*S$zz2;eGEJBR=yrJy7GC_(Uv$Dr6WLv!Cb8uNsK3#KZ=B>4h?wo-=9Ub} z@2pre`uRZ%N5M)s+m=nIv}Z6S@CtS^zCbIS6S<&64X)3`T)FmU{_@qgyZx_8+13va zjTP9fjRU(id|7kqim;@tSvYDH_S6V62Kh^hKw;6tYC`9Z;qUD+EXv3 zDq>Yh49i>7%h|ciFDg5GR-5##;^<4F>?>StE5$$^9C>4|t#B)5RaC*Tq;mZCIxa0R zP4U_IABG{>Sxz49q*s$wE!UkDR@*`wX^y?ya`kEfeW(z%%L@j&WE>O*yB9|@caJ9c zzHiWaaApk)_+mu|{;#q+QE2)QY7ZIU{cMj07Gry6i^d@0uH9lOVyuNV8Ol50*TrlR zBHR>pY05!X!Jj6rxGisI69+uxV4Xan!G!h%Ba88Oc?dMD6vx#+p9=I{{y_65rn13u zTrE*MG+6)2y?Q%a4Z-si_><{B8=$CiEWQXP5D-08ND$H_GbHbo-VXB40wNv`FMI+x`-|oYChf5eSF%uYEM~ce>s}_b=MvevUlSCR>%Kt z^U<~$%;d95q?cTLIo*F0l5(&!zINJN{x*Jk-Qd1%%~dQ!RMFehDgT`(G_vmF)}mg^ z^JQUe+`~0o=)+C}(2x4izIStY=l1EWeB_({LrC#bzfYqeVZXW0O4hKarmf48;deR1 zoRrCv8liKc%y%q78HdkT3OmCgfsgu3YcD`iu3NsFXUOBjXU`kn+%s=NqLTt=>YKnN znT;o}q%Wb5Ah|E4@8Adgef!+i`Kjypo@Mzx0N8{&g`@3^q0$|yKA>J0z0+p^8=OHOv=UH6xryt&W7d`@2*|tj`=mTBJku9s;XL3ht zF@W92{f}C$ZpkdXt~PB+&L^7Z9!`%377D8O$F)Njt|NG!(yPIb_E3Dvdn0LgJ*Iq| zZag)(v|X6GAA4UA4a<>tN|0HUi278Cj4A{N#Jxjlyh7)EoL#zZhtDhqso?Zfp27m= zRDANb$&#|ETf`5j;0P6fL%noDiZuY>e~0vM1D2mYbRQ?AmZ1f0<<^`{!EkAd+Q`qg z-a7c{g@}@?r(I{)wPKZ6`$C$B6P7EH7HseOf7NVxS78`yS{l8kEFB%#J62#7lsw0v zUben08Q!SSSPrC`KL&nu=vFOGznslI+dbI74NKqO2%TLBW++NF>MqP*_8;Ed{5tP< z%wVSrZpANDkNW68bSopwxS>`JgkPCCc%<;XBwCVBZ%&D@gqR7nq6@Dnli(IcjRO@Y zG%R54>UnGLxgx`hSpU#4_40qoE{O!F$1r7Dbi_7?2QO*xx?sPYyM)@WQNIb!1)qRfQzxiG`0F)>qlhZ>6|Dw8H7%Up6c{`Km4k3Rc2vSlG6tmo;p5 z6Hp2`!N0&LrNdD`^d5=Zlbj^v2hlfbDv8FfI?<58m~UeA=)>F;`C$aPD+|M|cF+*R z+iX^3=1ajSk@)UwU??&0I-0*i zwSZ{BK-~Wb{hJD+latBXEDINbZ0%$^Bmv{|748SyXZSCP48$;0?(i^wsh&@8ZA9t#bJf3w3LM26rd-;)(Dkx-#kCfQ zy9m{sy)T|XeKmcxh!)$EdcMF(_@_`M#+I}+xpi&%wxVk<+c@HjYs??ox33J3Tffss z3NUIXzg`S(yxcjr>e>!^ioEtOO}ONKTXwtAejJ+1uHJF0{9wI!t6 zd?!v6ZM)03BAlcXeZdij`|)CjAjaT6ZGb|*UP_R$HMmZEf9~V5oZ*T%xYot!JDe?L zbLtR()cSiM98kUMUloH=YVA$U-*@xmK!0NYY4vi8Z*k6stDPz3^e7H%dVJrQ3tnfF zMb?GTq%$xVcZ)#oFw8Q()42FxkLBs(z*}()?t#w<)Ai ztkBc41~+hsVOmwJol^b9^nkbbfy*NKqjA9KUBFXQRkukmGEkThb87qZg4 zM6C65?p7j6U(XhOGsMx<$&2P!OzPZsP4pK}m$F5lkb%!n7+GJhk>}C9=ec(j%bwJM zO?&6`N1K;s<$Xq>*RD>uFMKkCL%RpQUpcWpGdXZ!nG3qFY2fR2+0gs&f4JKF z@;QTU#a#D5M~p0E9G0@bb=a}0gRT`p-2qi+^sp^H>erX1+$t02{v?ddfgRqkz+dFi zehKSR=}m&hrzdRbH@<6^IjBp4l0OL9PrgI*Ji93jeWf2pn%a_t+0M21+vZ|i0_eze z+qdsMa2B&$PUN}Z*~ znP2Hs4IvVU>a@D!~V8VVCpnI3CARNi{7dMx`mA zU(V*hK}?AoD#IX=iu_w0vcQ(m+oxu+DIvgZU#p_SLVl6%JuCj$_1KE_v24e6e9z1n zy^eCs?+J9fq&(bJ^+xsM&|;L5)QHo0+ZdHjrKmfIgRehpWW6PZM$3kHPlZ;f=x6bg z*)G3AaJY-vm#&D+ z(j@XYf*pRv1W3!L-@BXk-#9$*@D`m2YHG*uMM+L;OjJt4-{WR)G_4!(QU@bM@q4l) z3{2}~il2Di?-=}?>7U+eTH{!|xQJg$Q|(WJ`~LCx{=A5fUGWt;gPFT~*^RwM)sQ0} zPELiq>>Drla#_u(+MxW^Lx#01dG)WH5JfhRZSmo!L67|Yw6^>SP9lwI^8pDiVQuJL2EnHxZaZ}YTzt!@Vcf(6uF=%- z)?Fi+^g}K;4OhU6cL~sk822amtj$&Ii{-f6DW9%h=P~t}#5+YcksD} z;bv;Ewv+50D(Lp#sC+OB7hP`@X-=~4D>)ZNkveW>8QlvrtJMmL;;Kh?1 z*2mh&p{O)n^p{F*(YoCdc(n>&tK@>Sb)~gdsV2vEgZ3h>6=^L89m`Rcc#2_yX7YDQ zE@?KoFO%FNta}CUX4dBQsRaVXh4&exD~_v>o|Y{;5wfvZqwWvx;T<^dJRdQ)1@tmTUTp?kos(3b7YAo&%*--A;T(*+MxmzhEcsP!F z;K}+ZL$VRTG3zxew9Vs9HN&s#<0}a0R&+MQVg)R%L&RUyR-}FYKBC$_Y7kFP*N7txdN?Nswi)NU(~PCY;Vf3I$~*33fXaRy%q7b|GES2=j4PY z?}+W^6k?LQ1|}L#qSPY$Fk!BUbfrAH*;ELLO!4Z0VN7P#cw4Vt_h-d}2U;8k#C=}l z3E)cSZs%3kY5h|^m<^KBx0|L(_Fw6s&lS{DroPWV?ZIz%CK($Bo;z2EeFME;b8~zW z))FzmX#`EFd1`}dF({n#(AYE9zr04G%Y}@mG4@t-F=4Z&m`ax(y}e(mUo3zJn{7?SJIK+9x8u(Y30{gjRzMxI zm{Dq>KdvIgw@Hlo1uZwEuR(Tz+PGlHN|Z#=e;t{``L?^FxBbHNEk2v=C2~UnvmkU+ zLwg(NII0s}&heJh*?P&vZ41*GrW4kS21!_02oqP>PT8ZIr*C7P3U*-C z_{lTr(T*K{Tsf0hV0AE^ai*}Hso-)tTMv>lc1Gq^_gI~Vv{I;@nA6KVs=B-ce{c24jOI|JI?-gb zIB?1Wl2T-M%>2rV-`4gf7j)qqrG7l%WXwk92GdFJNYrW0ae|91hiB1T@kERvD#Of` z-3!dLTfmJRm12IyuCq#6@L6DJdjYdv&@_G z*7hg(wTI=~oWy*3y=9ZLM7AOmWQRfz`bi;=IC4rE_Fep0taWjKhkIw#&l2p-qIohE$bYo$4Qdh#XgC&64n zr1RygOA;4F3N_9G^Oj|SC0ynU*5!$U`Fe0}xqejhUmZgU8C7rE^y&zr&r}qcs#DZ( z@A~j8P)}6PLh@bN7-E-{BdQqlHZxS~8O)v|J!rOr!Lk&XCP_S6R60vitV2xrEaqRT z`wzncUG`FPh#%_uQiT~gs8K($E!`kH&u=MwrXXg7rbh1dapjc^#8*$B9F{7)IM+}9 z*dW@R7QGSAuMmr5;j>Nth5fd#b^GjiD|twzKCFCl?RC>2jZqqEG#PoEJ4G^SwYTD; zUS{?!DNa$?`{5Z4f_|tZY8=d>jPqgZE$nlCtnxw2ymFmQy7as{cHr>?uWcK;?Xwme z!PF?3Opfj9bE<^TqO6cu<$~(1cGPCxCLk%?bsm7oN?Q_2#b0F-spP9cYxo0yW8El= zai>ykyrlk)GU>Ktg*jNv#b>6GTXIkUu8T6zU(3?UlrM}l(%jSkLjUs=A!2M-nMG@i zSH5alaqaYi`ZHPf+`!QZHQ4p)ba8~=<^7Ec1pRWx>NH#=94#1J4Be-~dB*H;Ldwrv z%`hcj-O5!3PJWBaNeJ_L`uCCW2_0*R=aUjc>L>IHQ$>CQQUyd3xit-+XQg(QS)j)L ziwA=IpFDDV(%7Io#a9ZbH3p6+Lrl!HB{0-LONl>!iKyH%^R%@}2ilsX)wMzQ3@1vcU3M#R465iEm1v8ENUdh^itpM~;@!Uub}l>YAlpm|H$N zp#zJbw%B!a#sGB>K`#Qj>W3|b(Wv1ekR$&eHpB4$V&ifC|74>car5W8qFRcpKl)Z& zZK(x8zV$8X#NxN(9VY1L5&KmuZ@6DaecGIa@T2A=Fp0LH#r3%5pM&opFbLFL<^(et zWF?RT^V7G`6%sDhtOL~cYCD01XRsxP{0iI(s0#fr7sDn6nwJ*Z5aespt8zue#!vOc zYhh=ccF$!+62jL}YNc62g6hWd!q+?kURBYgIdlpT9r!*n62d{G#00tw|1t+h&?qa> z6OAn}5oK$Os*rN2R_*~4Ooa)$M)Uv7CiMtJ)`eT(>Bz5u$n@6#OYxY){e-HrIRQ*W zSt;^61XwXpg56#z9aVOWm!=mSNguWpTOzmV%`W%fE*;^1KyRT1CiTr)C2 zH2EkfA*jCY)8bonB~ZT^pP7WAR8oF6A=oP3yv)c8O@|Ph%;qe;)|eLP@*EA*nvg_OS%_MlbwW4HH|9}8T_CsRX)1dlP`%4@=+ z!75jl1cfFiVG6{7_;WVsKu@$?3YIv15gq+^()!Giit5-@o+W0_UDIq$1fDj~XgPYx zE${@qF9vA@E9DdsG+FrL#w?dN#$kgPbvx^N^pqKL{+z2AU~yonqQnj$$}r*xp@Spv zq*!y9SYmN2awdzAU=Gl1rZK-y*dj$8Y|OFR}?yEjBb#@_qPgyj<7g%kg8-x8xhNZ^5`#+&75KDPonWzD%vLE`7N(j)}A4bEizr2_aO~kNm;QXaPonOF5 z{2M;NL;VSii5WsQWYjefB+U5YG_heu?(QdCywCmzagDvB6rxCd&9YKM=Ag>w(afi~ zyCB$8YxdyYKZKw#E32nY(Ll3@?B~pO8b;zeIhV*0D`I2)WV`ebi_%3ItdPs{ZEFc{ zdKZq0+ek%eNf&K}Bc)jMVw3e?!&h|-I%k~(pR`NLS%9>fR5u#vjPva$C#1Z!xAR3* z9VOnYBDPCWIeY!;aO25sh_hA7lsv>5hC8U`0nRWRw6)(_U*a{bP4&=?cGES6sJbjN zMrZbtaLgIXD5j({>eq+^xr=?;)DJTj^sUR9>8OB%3EbvOO7R0GHU{J0b~AuMQ-23> z|L>rr$pePF!|MT_Fh{hbKU6;|5Unp|GtkE$2Y8~`K6!MY9aTs){yFc0XM%DxFaI!> zQGZPh^7V}xWH;llaRv%$nMJ53W2&hzQ?K2Op;QC`y)ehcJgq+9Q(u}bDO9|%)@lJ?nzmyRxbNaJ5B|_^`w>(RYaOME4ptXgeTQr+8yOSE`xA!zgES)&SUw*9&+mTijc|)Ii*+Ef~NyZ?t7wja}hDw;4f+ylW`z5ALrlH zKPk{7kp3UkS6u_J9bwt}n_jJ-I}Kn@D$9D&Z0EA*>HS@QlV}8VG?BNT3ZX}kxrM4D zeXSX=(;zk3vF(rNG%lX584&K=>qYz1Wfy*G_MAuf2l>782#{PE`Y-Zk7IyRq#{UQT ztbz3QQ*_GKy2C%n`wXO?l++*L)SDGCe)c*2gg#bojbrN6*W2p!ZxwiKU~7ZRB=~4M z9{ZAa_qeqCqq7L2xZs6e11bDh6reV7$a^_Qgm#rjZ7$zewllNx3>U)Xd4sNx*pkx9XU|YMb6X>qyzCH<>f29c)z7+{cHxUY z`e>8VT5oWqX;66TBMn* zqsz{P7Qrr0sZ4Uo%@q`vMYnbAuvfkb%BIaVJY$NpBZ|+Bd75gTbk>CyIr|mCvbV=& zzpS3*fP)FVol}^h$R==fU(J-trBQx*5T9euvjA&iQ@x3rWB*lJmd^;_m9^>wWS+BE zxG&zVdD_?^lUilm1GX4#{@ zrTLx7EO_m)%X*ZZl#Jua&8=SSmGa1z>x+ob3A0yrq?8qIeogwO1^q2em`%JV;3Jur zzR$(uwr#26pB}Xyibel@~ieqXJOdiCPR|`nB<24 zW3toc|IZ}1tX21P`yqR!56~ofk;MnEbyf=jVLmn{E?;!Ip(&+3KJbllUD(>e?#kH_ zXv;bk1Nf~(QUit*riPXjW5@#CVY9~|&e*-lO~scjeM5&QHy_IxMIJD*Ud>sQIqeA^ zZ5VJEIL~Dhls7n!<(9!fR}=sS3}jiFU^a=r$DDZ|RIne>w0R(8b1*p;FR<&_1`ovt z5%miNHH2s(mQEyQDxu;Qsk}1@i36K3hM{BbwC2o$&T2_%48u|Ys3J1iwa1uUfpxr4 z?*tn$)f?~=IdYC_Pt-s=%YgrxCLu=r+2_DRL3bd5XdQph+(as&wL-4`pfTCqLro5` zsV|SO4#1Z*mwm@>vAL{s1Kos*xfCV&eROZcvh#bfA=MDM7aoNMr2`}myayhIg}4I* zn>-AAAMy^8iJD{Y7qgz9JHig+eY0-X(Ii%%-Xf)*aHlFqN6*=C;voE`k4zADxa?!V zsP$AXEE3yqk;-=vC1D#&PzPdNVqlx$2FfUf#xw$d0;{KR3O8%m0dj-W2QR~v4t+yn z-bgrtP(rcXf|%PqG9 zlXq4IOx_s`^oYN83&ejW&n8>vAIYofwC?&bxtzfK4~203@CT>(JL7m%lRe;;2Fg@9 zrEb(P9;NtbV5+pxklXQNEF#3>b}G^Xif3Nle%Mifc9k!nHJ|!j^Ywep@#PAOo8SO!Vwod?{EMRSj=6PukS`t>zH+4NeYLB@@O`aIhD;hP0Z)D!)1UU zhhgnhYK-SAFYfWqL4IY-xVV1xZs)sdN4n&r`hjq??%gE(or;;dL_q$oCf0|4A-@mz zGBlcQ&A!-jJGN+Horu1C!#$F+yARAjs2(f<7=6R@SfWyz) zo4%;3M6F>TE_v~lbN<+(-uL+pM|DaQ_LK@@8}{Tp12gcd@Eh$8<#M@@(M$^v_tdy` zBA5A8nul@Oaw*Z%Xtm*VsJ;25sVP~H}T!yR9K5j0C->$z$d0tr?KEu2y)4&Z_sft8m6l~G)4rwPZSMb zUd4x#HjdOeZ1sQW-!Pc1tsEUeDen}MADV--P#i8vkfGd&)kbjLy!BwopW2+?SarU! z_X!F~{2}U^u6C(RpL!j`^U^*+>;mS%?+J3R^wf@YKA2U=Uql3PxI85I7Q31db5Tym zNoVDJM|JN$=&5mrz9Z`5^|fawu}Aa2OEsPC@mmR-t+ILKbyY}8_#gSRgD%xQEn@Ay ze)GPx@t!ja%~EWjv05MKbXOEXN6}Ysa#*vwHUVRaOL#}cqS>Xv zg17i3)z}K9$P3FVzuBCh6`jc@<=Du!EHfuvtJgzL_ADX0ufl{>=AXa{ZB8c9*povbn6I~YKFUQMo7_T}uQCjexktj@oqljWB|}9(qPdtdJPQ{S zf&T!G8i4ajNti9&{tPLEs0@Mmic{_S*5Rpp+4UqM4=EJMX||$VSkEF1DdgR`l}J;~ zH3b}1hW9z_>UIZ2TA`DA`^T**ft6`Waq;^QqG4oh}R@ z0!otwro^~o)1a5>(ktW!5$d$Xk@oQy=B>)5*pK2^YgaGNi!kSXH1HSPeKoqrG zck{f3j^-+y(Ce|+F{SOf+VzizkVucunjdn$i=Ii2XSeCuFQIn(M z)~gr!^R8ba+Ma}a6Z5|T?B)LeoP_-aVE5n}um>^R4l{h#Lm0ih<;Gi)A!pZN78nU; z&YKm67qs1Sb$^VE5BQSW>9^N1rsB6Z*pCBehwp^~-g_n3YrnHu@ec*sfwKbyj$nS< zZtzyaA?W73*jzBZ_IqcuMBJN+te&95_DQ86!x5G7@OJp?l&OEyAF=;~zS!8De;X2L z{&1%S&>jKWemKbf-{Cai!+Vc!w^+#dlzw2i-5oxz?%)^^`mxgR8vM{w@rg;2;>^tv)m1uR-M%qgFX+((U#`y-)WfniNrx>95~=WXnG5AnEL;4u%`EeBCeq^+ zT<0XA_rOT9nt^Kw94E!zHt<)IP3}86Vxb7Re1{SG2aH@G8HHVZEvCevQviok~=5jpF4_E~Hr8ri$5-@0V9IT!`2uTXUA~xh3 zFgk+^00pI_OhvxTgcf%MOS>|(J&P)1va+r1mlmC>lqe1ZgI!}@P4K9=NveooCWq=X z$GR0aLbtBVN;J9zbJM}0B7QZf3&59(2?#Yx;Cz`hny1j97?xx)F%}SZ@zlZCGB_bu z5vidGt+C=}%|L&Ti(~d7Ze)t~i=%j5$3T~HX?zTqnYorVv%-I9>~+?Q)f~WXA{%N` z$IA30%KW#)a)ma98s+p@_?wM;1;XZGvc@M?y79ZJF&SZ`#H54gIWwq6%~EU|4G=nX zoFt9ZsS0b1YgU&|hBbv6#|jx@m#`$~#H6U#s}Zwo$iv!bq)qi%PdY0JlTYkM<5PzSdo8PpTJq_0a;l#WHQl(g z%M=2yQK4RgA&F;A*=Gv1A{M%v&K|_&1cfF{^COK^;ooRx?^!lLCgsK;GfmwQ?_~f znSwc`S4CTma{PtET$+_R&82{8>wBlZ^`Gq;^N~r8T!|w5!MaCF?TX@4ItS{*ZInSl zka3#gsG&nSVs}T@>4U`2m=h|T@4cL?@IU&9X7L)wZ85@O%kXfDryYV^nJ8mtkYi`O zK5GTQLZHJ?qR7NHm6&^i7L)ne3iqbJ@_)!yqtW zXi-#%ONf1YtWW|V@72*NbQUO8VCVtolY@Xpxe|q+Ck%*~+uoZnw71~2>|5>S00ojr z9ADDfi+Y!m*!Elm6>4i)$`WA(5$uxf=PoX^DODR$NM9@j0Zwq^P0LJ$+=5~yT-qKy zT2z%|Xq9hW(sElleaqR5_+gZ;jbg#;h^9HBxyWQ9kO6RM!jMdtlo^>0KoPVmIPRe4 zLXbCVr$KNOQG!1eKsOHpb3~bPMBy{>o}n?+AYm#? zj}_C7LUIXEt)Idy-B9i-*Elf{s^WgKddSFadl#P1`EXX?iJq zuvrD6Si54#NZ{AQNQlAKU-6Ug_315B$^qA?5(Nr%*sM_)+nyw_G$=|X=rko~ zSeD2%kNHm~f>>P_a>T*U*_vbp%)oEsX8ojxi>mo?qTt98uGUV>c+<=96`DXGrGEfn z{sGed7m&>#pn2bkP9Le#CZg1DUUa#xpaQfgp{p0E4xbH*t$kBbQp1W z5wY=B+M0r>Z^aZ5a`WK~6)1iEVCikKcOT7JJ?`vqJ!ke(w@l@0D@4`3?BnkF#%Xcm zT&wS`BT#+sTV(T;V&>!P`_ZK9>uR~THtt=}{lwVnf8pcnE~wv8+IH`jU;M%IVKnZT zFq|Ef9@3n0;NjcS>AH5{=+K{jcW!a#amKZ>7@r`2BuPueeN&^aACk426S6kAwC`Jm zc)k96J;mxeerl@l-Pgs{aD)2t>YK4 zCG0yW9$dTeNg?FHUwf|;AmAh9CF1{Ze&yS&cxZ30-ePb;E?=k~eWR%Cu0RtLnpkXK z@OCh3T|P5!Um*2libl)W{w11KD_YOo^iLKKdRczl(n_RH#J%MRCT+5 zWAygq<!G0b0GZL1UO+4iB$O@qMJ z))A}$ z^w!}1Sm*UxBQMv{EuU)tKv$XetM|Aj6Iv6s!=Hcs=^A%d)f-ql*FuD3yUWQJcUP1q><8%4ZEmeDD ztr#Al{FH$J8AFB$>HVXAW2ZHLOh$kK`&X4WS4ATyMZ+O89yVZ@!g83*(p-E#T7G`& zM@c5EBA@c0%YAwXnNqz?i*i=>hH&(SITy^{%L-!7qmN44Eh)C|)=!e$(v>A#$gGrU36X-7j9S)d%G6=eE$>Ay(;w zZQ#OxXb4tq>P-m@_QrXo^hGNJhLvj*kl?2KBNLQ}jr^9d#}LV8Y~6@UfG*A&8OkS%LNR-jtffh}UVYWsW@U#s#H z33yZQ!R?i#H;A(Pe7Nnc!p9myQ$~>5k8u_~VHoT3*>)%dtwwTN23CV?9gMpI)fRN} zQ4?%2w8_uo>wq>$h)5rUUq9{+R*zwn9sKtHA?z)n;##(DVcdcTcXxLS65JYhcXtUE z+}+*X-QAtw7TlfS2?Tjf&bjy9bN}ys|6s5gj9op~oU`_>URArR*VTAgGYF!RGVlcT zci;)43*d=Z;E7tXR!IAQL*OmJw1B*%BP1%6r6_>uFG`_?CLHW-H z|B3QHv%q3+fwWJ}{|?3_GiwWq2W8O$f*2481Y`dP*S{%!2Ro%lu>&@P1vaz#yIHTD z?T2k9(WZBt4KObFxp$oZZ15kNYsDHN7qmz=fz42X&EBOUS~*roJ|RBb-bDWnIv_sK zqIj;6Oy~sh_FC|v7ocyMxCb9OqeoMno~F@H-bJ|6Z+LVZ`6=nE<&VegSrIc`F||`v zDqsg6X|<*QcJzE1a&V9}-v9GsB(9`@+l2R~E0^ojB~P2z+mY4Wsnr8})yN*_hmtQ7 zNSLp`+#X>r96e87*0Z|N`La4Tf1fZ^LpOIAhi6w4!0)yRxa^%F5JWC)tsdwCJ~0_@ zP2J-*SG>eT7+1cwF?8+R-^6@989Q2hnt0q_y?eH(o6>f~54{aiYP;mh{N{y{_Iz*B z=Jmqe*7GIENT6zILg!)oeqbzSLN3E*?(62h@3;9ci7D)t_VjCHEWgAnZ|osU6Eo^hFq~dPtZB5#29MDY|T;h<{i93#q~ao~Nc`7*yZUjN)Epv!?LQ_k?*y845Y5s%&$$?jo+EiGE* zx?66o#Ra(o{3mD;>?~rd8_%V-nTk>W6RjRA7V=pZ zuxMusb?#bxIc`zcw%Ulp0}l0{Hl4MfL;xF0ZYQmsB;Jm3Etqth=b0%vTty!aM`xS$ zbwPFc>yA~&cloN)q?RfZ@F7t=@w@kaVtmaqVX%)OX{D$Zme?PUQzZ>wk|W`YgloC5;#AgUyQEC7E80I zHYPsMJFz9+_AsVhJSCzmPS<<7p2)2gTD)ON>xScq@gYE+W9^{+nhIePh&yuHhn8$@M4z!>i7G9`w)c-Fly z-j6&^@SF%-mnZLh;ym^(B$q5%q*|OE8G(K&U92Ad#!=e6O3HmV`pzoIa3TEaj+0vL zeB9H7z$9?H06qnZr?IlA`PMV|lS6{$o$S;!O zs}7Y#3U?Ts@CC9FTidPA8<$MTt&Z|0M3Se9JFK}<8<))b)^2a>4IMYL7?>)4+PXyV zkH(~IrF_7jayDCB|D$_SPoNtF{>cC zqrq~Vu*TeboL6ZpEBRwqI>Eix~J_&Z681C#2n!ytUdMvLuu_r^p|gb?_nUgc~nB$ZC*uw86gCJgUJsx+}8? zeQgco0&&O^kM~$d*p?-Lf6#QSyd62e*`t2FPyJ0EE*0YV^(X&nW9xQ=-;t6>$eVK*-@Rf>WjxjSsQKUVjbhj}7>x7!uB$kyr=0#>hI4D}! zHGWTTydrHUehfk4v`%Wo&oLnoHw*17i&;3~ck8*kMprCGMdwUa$pD7&)0n=aM@N11 zY1uf0XrtQC8(9t9ejDinPsIwquT>dJLFZ>G&R;L*?jIRet#dw}>TTxT_L*-dIh(&G zoVN6POTb;FZ+6q0imYsWZ=-pXSN3M8G0U852cWx4u$bh)h!5M?8IQNCvnNdm936Qm zO?ppa6w+Ksh_Ns#_;hB`rMH|gl&pFmcyOM?UtfJMIf-jD*O5#qEyb^d_Nm^gu&zas+UtSlU4X_u^_CSupB&^Q;+F$lfE!E9mE@ zke&gsRKA%{pmc-sTdlJ(u;5s)&FhyxB;~cC8&(6G|FT?Vs~ zrqy)aUc#H@YIwY%!x#?~`AG}IY1kAho+Hu~B-vZ}_BAuZEEg|V@;DE0g~L_0k1lSn ztMkD_T*_K_e+>3iiaRXCy_{Nb`npW(xmM6~iEyOFG}poOLyN=SZhKQ+SQWPktpj|b zlzbgmzt#r6zw3m(CK~uPYI7WYxji}U zJ&p9Y-w-k`2G;V>bnQg2OjQ3AJ**94>mJ1(8zJxH^gN zY^w7BxkXWKZyK}4xXyK94{bX08U27-&IP=!XN>j!GzDn%ly-1tUJP{kc?u(H*ev{! znrv_PN9xbwJ0e$pLd z(4ZrsZTR5SjPw)g5`o*eNkO`fw>DCmw!y@RMX`6&Z-p1K8Ca;cU4|1Z|%-c$BOLMD0o8750 zVYK3NYWsD^O2*iJz99VF#m!3A!wR@}N@=KH%c@^1K~A!objNLgda4Xl$IVLB!zvX# z_?usI7duFSiGHbvRnqEa!zPYs`4=~<)d?KAL56FRdTfhLlM;gZ(E%;1yN)Kl&6_kk zAjO@kF*Eh$IDxJm_=|-IhE8_cF7`=K;UmGdO&s4@7AEDcrt$rI4ZA23r%#H|eylATC8fA>)m&zpd`#%&7Up?Pp1&r$d+!4;yim{ zu<`s^tND_SxcU2c%8(Do8lfpH^4xF=tWM^IYQ*{2u`}JLw?y61=Ys*;9B#Zy0<|Gx zi*(P~`3oW7Jdt$Vh z69S^kzT{oJPZQ?Rd~AAFJzKhosYF8 z7~a+Zid01Znlu1$r6bvyMg&CP94a{1<5XOM3#hid#P-ts%V!9|T#WR2s*pOceVbqy z5Xav_)x09x*TFFLPoF+R3etpvXa~YSEfipL{+87=|QwBr3eUwWgd5wBNnaTrfDb$Q48UIyD$XlCUPGPG1y08 z2wkR(X=zK<7&vc#5gKN{r6SZY*ha<#F_~QVHcg0rD3ON5Yiz+#5MnT1HqcA#0?(mx zorZBM6qvM`HfsxXtjA@JKo}mDAZ{xZb=Dx}0Ik$M7!>vA(OmF{YVs^N6cDU*KjPAC zo>{tYl*T>jcEo0D)?Dt6ti?uZfI}+J% zCxE?4V&hk5_c9R|QB`89ImaQ|=vT=z{~e+Fg+T)IwQ z+K(?u{AeMd>yzM-@p2!%^t0`+JMN!UDYk}`c;O4}pR%ZT=2{YWHw zpUeu4=85p8t?-G@Er!|9smz6#E{3PR|HzRp6&BB&nSvCK);8e@6G3blI5 zgN+HzKp&*HZj?7&Zz;C!(Z_7TE% z13Xdk54sOjUf#DJD7rr12clD#b6zBnbbFX}-}nfi_u>te0S8dzO((Qz39C0r@KV;l zq#g=8y)`1Po_6jzckd_U!iF)^Fp|>_F>#EJ*Swf;+^lQ16wEBIp13=`C#N zsOolTR}*fYOz8X1LYB8eml*}farBHe)lJj&%p>#c=80g$)Q+g6x3pb~p=xpl&i)d% zyw$z@19%71Xk68c@7!lB1DVbfJPdZeR!Sq*Y+=>-;K-Q@h0$H8*vczrbjNe2(d&)n z4hGj4%Z;CiUrC_BFrOZv*vr>*3pu`$J1G+0mtiG77Rn7} zuYY-o$Jn_C;tigq-TbzaeD!}mYUI(mT~p8_VcN##@(jB z*}zA^B%ap{|mL_dRI6EWLJifm*xh{~{Ou66P+5f=(I8cv3EvIJrMe&>K zworcn**#I)wWlz@hBOsu{|AtAjVcB3DwNP8BCp?jOJ3Bzi2)r4YMG=G(wLbT>*yab zC6^>X)uI@@@j;aF4Lt}RG1%wpt8 zqSV#4XBQB~tXTWIXf_d6r$O>i(|Zu`v|w{6G%WIThi*+V4I+$ujR%%cQ{*Y4^n0fu zOe5b<<%6)Zle(#&*#gW>k8YMhC0suD&+^V8Pfenv5T!4I!yDt|W6SF&nh&e#t>#tM zz|YcoVvDf8V?4F>M=2gLIefUjmqOVQ1lKI|)qJ z3Rq5&r_O_@-)Xrr_~830Q5~qjlqUB>_|0Txp|0%{?jqSHZQw4Qeny!!{1?z83P2N*= zf_m;N%yP|~-W*!1Eby)=O)c#2+)utnEYwYiI@K~Mv>ZJS23BLO3Gw{j;zlY0E;4`~B^rw)tZIi(1ugShm<28xb# z!F8PYA(dwKIGX|Jo~z{w%4m8wYr?{p+=7DeV3LHIL>2B&HQO!tgw&qr%ZnawubWX* zUqqTd#e(G=&_Md^Hzm4k3)z3bOc%5N;KC*M)m|x7$)j)Anve{WtOX_4?~sNC@6x;3 znoP(AG*Il=_Bhx9jTv0G8C5qbrV!v>@uBUIno$&8O@6aKs90h1GkVo}{VuY+?zaaa zcOiFNP#mfnlKGuWvk5WOL`*^Rz#B1#e&p5F!5i_5yiOcK$*ddI6oUyR-EbW1+|Hm6 zvIU(%I9P2aL*%)gnHK>!{x=+8Z1TFI#RD7D$x&ofjJ`AQ2loY3c+8J^R)ya*u#IUY-7><8^Gko`vLpA>op*k?AvZ|0JKRsQdMg6(3XIt$0xU7sNv; z(29@$ixtBL`$0qdP)8y42{)ErWbWe=*Q+=~%a+{+@GYObL0qe1U+6L{XVNDvxuqf- zZEV^gI(ois{6N#2Tzz5RssnIH9IC{d^JL@j*@0SG0t{ZNlXr~WtU5KdCz=^xa(;JCiIbiTVR z3@c46s8Du1WJ}4)ol@0pc~x3pb@002LPdYBW#&S}0J=7@H0V(FOc;7}t3lLpEg{+t zhNVyh>_MDRc1_>K7zIwPN(E|Y|1w>kV`M8V8b5Y)<#zfdHi3V0RWKXLt84(TgEB;r zj3RWXHj;oO)^Lmh69tMv(WF@lP5NBtuj;B(iGs`WuBZ{Dg0R50S-n7U6i%tjd4_n2 zsk^7H_(82?C>P)C|N5tIy z8%`dHuIkKqbp*SiFcdI&6o&r2(ZUplm9i9*VR;H7&mc~)l)miZxNQXc6cYF#4kAnw z*^>PNhYOWe#%G{u!is7tnP*svO)AOS1ypo{IDo+9aCXB3%BtKX9ZajiV0c4>K^*$t z(~;5)`lV7dq+w-7eCJU1NZpp=O~?OB76;AhwOi+ts+ylv4H5M#o2^d9NoM{I!kmw_ z%8}O<*Ove;Xr?m#=uYOc6s7&Cu|bT3DsYNDR;TBR zb4X}>L~CU7#D=BEdr$TnmC?AFm02i-5r7$3tT4H!;$3WSK9Nvj6HIt%PxeO%Lnr}b zG6jQZKMEYlk7j#Bh>w)12qFr5q-9D&r{Tu#j)Xjm5xL4b z@aRs8N!`luiW6>8dJss zYA($8Os(f!h0$LTQd@aaGO19BnMz4XV(6c!g|PobB|;1)CtRqdNJUWo+XC%cpapRs zFy1Yg>IhGGB)VIP*e>-zN%T-t7|LAe2&aKE*;G-kqx@N&-!3})1)cm4-#y58S&4Ek+@ONcmtbfs|5ZVBcK&!CmCA1-DJ9`(X~%--4Jotxb{S9s4r3(8YCy`s zwctrf6E`5`gnaS;qD%tzPs&`W)27zCL+Sb)@}f~OWOC@-{APK-!cFFQSVf`@jkp=a z2{Y3%C>x(`CTi7Qm&i+LeD)MOl^flKP{$Yfu*{$xFC^$K9U~R?A!qjq&Fm0LPWOeP zK5?!D?G~;nXbIY4*pexz_NL`W7+}ocNUX2x6<)OlVIre(4qH{f?o#`fe7%}Pdb@T6 zRl}Dabx}o_kOI5>c%GAlracP+N`y-&AgxG4d(85jc7iuP>5Obiw2(--5JfqV%jTI_ zu1q@DuIy;y_h3>_{eg`!g+#lUNf6&&Cqg-8~w1kV)HY#_g0Hy2n2; z22UB^onjESYc&GWm+%Xmce)ZOV2WPJW=TL& zC)!z25|2>s-=WyMK}8hUQiC@AP_Tjv8&YtSCam!YkBUf^d1FldzL2{bF<#n>Mdr8z z)5wtYK|J?snl=~M)WktQ3I|d8hmdIyvP^)o8mmHoSpP~)$@&W<(5!DJ#|U30iFZJ# zW9>Z0<5A%j_gGK7^!1PDpb-d*u*e0&f2bOHwAR5r_6CEKk~A*^eYT z8gD;li9|(obDeU>a>3s$L5h&+DHRbk)`E@jG&!IWTv??amid7n#p~2ii;VxjKJ&Wu zo8#0Aqsj2=`vn@wZCEJ6hGhI57bJBm#_)(7FB*>vt<0`CZT^CaV`HBC=9qhmkHX8i z2~p^SqDM$B0``>fOyIgAt%-k>p+l@n_+@{x_41`lm&UGStj-0a*E_1d6wIS9{AzrO!X zk*D4XwFIQGip|w&C`ZM|ym%7pm`9(ZF^EsTlmT~yB@H&Yh)Bw~(Ux7N@FlC?O;bMm z?%YKm$CA$2dyC&a)sv7QhH??@`i2U(kRaya4wILypg4i>3QzV4TB?+;W#u%4@(`WQ z=%m0oVK{_fP$>KCB0l|0&hAHxgO+9rUje5Ia)p^57Q(yf*a+nZSq|k-W$sznLy8uB z-ccOHzJ?woME1#L^Zyk9dL2TAxDoq8j9*d8w~MrG7AnvvQ+*gP+iUcD3sE4Zd@hv9 z48^B6v&rlm$*b?L00b`4XV7ctdFJq6z$mZlE7#V1Mkzmx+crW4fPn=53d9$d{Ouar zSo<@uZ3yomVLOh`RRPtcnhqD^!s8rqsDN({@vA;WTRM~wlc8At~( zGey6Iu|g8e`?X6y4S$aM1^x?r7l}Th0{9q2D%{8YnXg=mv_BI_-)SkE`%gTMZM1hU zWJaiVk#f<#6XOl`G2z(*J^K$Sq<+5!VE%GU@HwyI8k#bF=rPglD2V4x1>!Hqu!O2R z^*M4H1Q_tIZ%b*SV4N_np(iyw59!{Ct@tXvOJc$=0LoT8u6bjE6G!0<9R8;kFTY;_ zG5=OF`%4(O=p~uUHGKsXEFk>c2jhqy^FD>^`RYxeQiNjg-W%Lj)9-Swp>gejy|If_ zYy^}e5BGwMc-Rmx=caDUxr@}xzKdi!$p{2&UGaXjXj*FsKs;IP7_d0t8gPr{-T-70 z%O&rdt3^9wV|4hsWoDQJ4EO|TH0!N`q&=peT;N^RO;$i-YVn zCt?XCrGUb-!fyy?o+kKx)##=@7ps|kWionKgD+}h-hc!L3W|pHUGak@!Vc4eqe8Br zKR;xNp9<(esa|a_lO>jzM$fN1#m(Ab0sfxYFD~@kR09glg9;D3V@&#LmBAJ8YS`8F zboP}SA^6i#UmrYE?31zgRxHd`@5QeZvmhWY9jDh1IBG#c+N8l@Q&zM6l%3P@0VS(` z^T1n*qr{yb3xThB{@gg^BY-v2lxyniO4!$tYrGa?QQ!G>#uE3_w(hg*08oI_m#jk| zOvyV;$zL!!fRabW3Hnqmu7->^A&4FQbravicG$kG zSP=YH8p*o-pTRx>O1RHv`z?a!t%K$#mEdn+^aaldT4u!GJ_Qir|hi#2DHXPt2nRkm@l9oHl{VoN;XMR!v67kzeR{_kTZ!m>guHzSi8Z}A)RQpqgGV5Nq zCRI+(%uaJkExLWMi?}tFh2o0Q_pWUuoQ|4CaJl|81DY!@cZBmlz7g;)!Qlaj7iJj6 z9%_C2(fIs}yrAYJ*z;BD4+4#C+$IW!C^dwd#%)SpoD4)v{MzP_tP}Y(cGQvdQ8ol#q53JW{6(;Po5m>`Zz?(}Ca+WF;;v7PRF4!c%5p}rXI`YMx>MSldGc_+WaRG}? z2|y)<@R^%h+dR`zk%~2z6hYV4Jw*Wkm-OaX)e*F0lK3(1fgE@^%*(u!;l>_H2*u|g zT^{mtB&p1_XOw!7*P^1-Q2>a|y6t0ZwNz7uLLTfpepfyyWGW2$`s&pxdQgZkDa0KY zpv?;j{cgnp*&Qk8b{U^}j3WyYaEyPGAQ^{^5|dX{tdk+lEv zr9x)G@dG}D0UmB=U_6RZxD@ajf^MEW5@%on*}*PF#|TiNqjG6+{5ZdW_f)#oQ1Bo| zZ9mUwvibMNVmv(F?qIO{b1*?i2_iaHSu@&zh_r|?RqrbKa~R0MKL5`y2#=I z!-jNFs5dT&HtapQxqRD{o0|zkOSv8q|7ihZTv9FZquKfN@Hq^20}Nhb!i0rVQo`Sy zI9NRzeYvS99b>I13&cNw%x2FHAPt0Ou|^HmTFV1W3+&PAAQ_fOg}9l8xv8nEHGz~C z)Pw$_BqD-`tOgKq#>PGnDf|ixJh)R)z9<5AsUAo;)W&+kfLDn+_l|Djd0w+Tpglhm z;&qg;7WPvED$ze#U?e2~ojDNsw=<5Y(0Q1(PI>iM$q3_;c#~$V&5r#ZWK@(k)RY2M zuD@~G_U*&kMdD>M;lct{N&F@(CCikIRz#9Ic%0#{1&iZ&omMkGv3_0lvd#XY;TDW{ z&@Gv-<^^)mZF(YqyA;EdjVCIJjexv$0X0e0qxPM3CggZ(-S{APm ztAxM55R-2|*p;^;2q@6tgI@(hy!}JKeY;^lkp!0SZvqqtP~7O)V-9Rto?xPKGGrw| zW}|WQ8FRu!B}64sVnP6y!23OW#dyh(raW~afVhEnyom3k#8muzyK;wyqg0$3=6<6+ z@u&siZMJ`AcpJ9S7bc@KcvcUk$f}#Gik6Pxfg{1S<2@7oATB~B|CKChADp; zvI_ssCkcq~$B^P=a3CMa<%~d9SH7sUnH3R7O<+H9cS+JBI>I@Y8v|VuzZqk?k&?=) z<3Ph5wYZU(kN0<;6u0!veEr(tQAu1BBE8U7`hg+6CpI>so+ABn{Tn4b$%W%fXUgR4 zEC_3I9`7?DBR+7fwGNjFU7%CsOUt>}G1r{az09VGRMC*jqVf^!#ekn+x3ZTz0krdA z7rt?s!HRk-ZipzXftSsQd@BT;6eUV#_2PcO^yhpC;*_GCsmrBk!^%{baSzQ#$-{zr{yoJkr`=K71MO}Q9vA$0XL59x*h_PDRf-*!eMa|{Wuqk z_%K3Bv}b*NBnT%WRvP;&IXnzN*l*f(exkr-5HJjllxeC766zalKT+V-9C3~ikvN5Kz#EY{eH0L{)}w)hh+!c? zsX0L+4qOIrP=aSlXn05yZJq@p86!gv#7~>4I}Jf$lwHTcs2l6-=FvqIO7KBoXtW~J z)ics5@{9#s(6L+%)RJZ3{hLrBZ>F2lLkH=kHpo}gIGekqho2^322VSjBsznK5)GfVXZLx3= z{#Iq&b-&6uKLYNYs)md9!__tA#V!m`A%$4Z*GC^~mq;$OBf06D*c@%LBx#ndG(Z2` zqrc;J&`KzxvqJ3WK%vCJIwT5ORW#}3eAVkBZoLP%{y?wWn>@Q1*p77ksi;z)Km2;gK6e@noL~$vEE;6`PI* ze<(a@>J}CGL_tn?K94VS1c{ZQz?;bh5)pT{j`{%x7c!FD15p|ZBI{y4iUKd~fILbT z(n^u_w@CQ9)WOEL{M?`k`q{$9TqjYfyXM$_%dt*f^0#DHKf1-0!KMCKd_Kz+g%yFh zxg{J;afGCeGLG1nYeB^NW^swlXjmSMK%+Xl(w=zqRxnH1>7JN8In=cW08yAyl?9|+ z^;p{{rqSBrOz!|(g^lH5#k&>wUPj|9T`(f;{b`Aak^q1B(6hA19DjDqWae^JWvj9u zB0&j{6@3&V%MrBoEU#ChQfDdw+Z@?b#rSo2-%0z}0R8)9@epIq4sfuH0UBPOaADQ) zCyO^|EK%|2r^Zm6oI5uIk{LN>U9AZ5Wc)$K5&M?uE?p-){Yovr37Q1B(-GXP>WDgL z65&;Cc>$SXc{z4vS8kxKjN4daXZ--OUE^ySmM8+X86zx+)S zJ*M!45(67zn1jEpE<>RQS8#>LynZ2JZwa_MoAG?93_@2ZH}R^2JrWk<)WYRqjnG5y zu9y<93*(`)tSuc%M^bDzROsNns~??+zAM({xG0%%zLUB@j-T(SeN}NYg42*wgJU)VY-P5IpMlRN@zlROaQ{VQgmflH-*km z30`16H1M>v50{!Rq z%45v~B@kcIG~-M=5Nv}YX2{5hTl3%?^# zs2Rx~kDR#)xEX5d=_jiO2Uf=&1@Q@S*`^Q96vMV;-ur%g7AV!--17xv!XF_UM#EGv zyf9H1>F02X7i)#O<&aN^pF^VtNes(a>LrhmfnSw8h8>xUhrgnZH;ap6cuHv-D3G-Q z$af$q)wMvcey*k>n2Wk@q2h{`>SrBq0L5K$zZ4Qjp`RL`jcH!br$2^1QUFuv967d| zhB5I;yLlxvPP~)g3g#nduxV6u=%ia3Jx;{d=mKDL9ka7p1kQ07(0R+7M@_6<2iZOP zio<8M_I`A6KtO;lBF36WdlR&KecZ+ zlKX7GGvN*Y_!>@?k||}K(1eCUGaTGFfr#q~@)55VV=eANux;-5H(u))ri)t1jys!J zj|>+-IQ^ zptv?6QjcWEp9wupivVe@cfxfKjerrxiB%(!z}n&I+Dam0iT1Bxj#?bI@d#a09yOp7 z6-;E&GF3PnVLGtFJ-)zV#*xSqDYY_XeGFHmb>f9M2^DP~@;}T#!9+zO*Nr0B^a52164oiMz zi?LH)CA%?s>QNV5OsDTB@Bc2ff-RnYP(OCnq~=^8-j{*S94jjCyYhm>duD z@fL2JG??v-ALnw0jFARnH{%RkjQSA-XF!%sqF~=3kUzCBcW~uXSf~h{6-9;4jb>4r z*V371*-FkJnveFteK&k{Vt#9C?a`a;$>Fz^fe(A0zM(*s467W+Wpd|@-LSYx7HHPp zR@S%Q?@PYrPgWYKtlhPP1Y?}4`*H9!?3>GTN;kz>iHB^pSozoM|El_%C`8ga3@kX_ zK?4GU{;x~Y+1$j&gz?Xj`A>y2OF^wWx z)>H~aCuH3S7Y@C?1{<{laOcefwN-*2&gWjzZSk8CkM*#qSHr0k91n+Nzmr3ckUa8v z_2?;HEuMuCfc_43ka>B~JWzB;AlfQMd>FZC@(g$#TEf`|dqN~z5Wi@m-nCk;(P@RN zfx&c#k!YQ+>1{rML(!&AYNZb$?hygspJ+odAwau{i;_kRfR0}xEwXG|r*lXCjd7J1 z@_lJz7G@0w9<9jb0u03Il^~9=d)tx@uL*XoX&@^>f;JsVjmtCXQR&xYNvAZ{N=Tv2 z*bBY~lVC_c7=$A+<#$!?=LRWeaY@oRG!eRdnVI_mfh-0gWGVH(O(@pth-)=k_Yzr+Y%(eYry1Y=)n@$Ah ziBOsH_f46lrRy6NXKM-;Br;tcNTN#_F^uz}2^E)8&Kfsh(N>@hadJ@_$*VuW60mrY z3AMuY4aP5IPTd|Qs{5|NL+9Ik#S_#pj9%*g`nb22GTm1p&Zzt8>0ohhq=w){8=?pH z#R2v8@HgYD_Y?K6v&S!X*gB;F0Wa)&?000C6zB-du2pI$~%ys>$Pwm4xVQ zjBy5GsfOdFuQPdt_5-qwHNwX2pA}nSNzyTGd&7Kn>r`h*B}Z+j)<287mP{_;jRe6L zGn1g*;SIVI|6<6nq}hmXau71Mi7P7+PVMy!id~DHBQs98bkRA69P%*OlJ)1`^<+^Z zS}D#~=Py61^+=8mdfg3ekBL*S|GY6^w2T*NY1$9xgs#vPEHeg^Kj>OcZ0eD5`ej8x zwddBjLwe0R=>^anx4gyw0xaem+-P7>U-EnHvtWCL3$@c#$m{~g&fu09i{G^8cXv77 z9~Ne%CG?e26+etUmcuW7ZaX$+U8c31*KiF!yACDhu4&u(YNrpMOsp2nn)B^PFy{Nw z_E>&Tj8qT9W5q%Q6C0vbZ|z`!FO)&2Z5l|msvj&M%GKV?q5n#wS9;fe{DPL8jEKp8 z_fwpQ5KU_#Y-w@)Feoqo_N&rva$;v2&BDSGWs%s$jYXM47?zwwjMQGL$NsMiy%UtE z!hV^or~Nd!WC?271{@2@22|AjQYKl*N50Hy$4E8DOahel8KDu4lv?j1*XDv!rm~co zpN;udomAiZ{q0IO!k0KPoOc5PnwvIDIq38Ua&4ma@x{IG!P*Gbs!-zVwwkT`=4LI= zAxD13+5UEM$}a)0verztddRH)I0qFOAv?Me%B7vu%y5lRT+VSiPF~TZVzH>Xpqcbj zCE|DtdB>dXb2F2eyCF@J3!4#5hcgNCnoAZq6WPaR@FJH}1so7I%DEcp#{;EJIzDJy|4i$gPgPD-1*uP^1_$~4awQ=AyKI;{g>rY= zT6$ka=6su3U!B8Xhb6FiXmaz-c3EoCEf?m)igkia(B${e8dOZFW}y!#*rkS>%C_~s zymo-q_KF=RFb?+0<)xk0x1KK4rLBW9d8It>_>gUnSrr-wWGw-D8@b)d9Qi^InHCjX zNYTq4fh~e{NY{D8H1bk+T>Ci zXTfrk)eh&$jjjT{Xb@AbEY63no^!@@i}v#LYkA*x(&%6vW4K;wbbdkqGZ)MD)`sC&_I5Ai;l&Q74w9m%_|~PqU6C< zOFn&vitmgsG<@3(?b&wwVn1?dBl`+Q$i@R`5tVeZhx5D;0}%eaJruk}4mt}Gg3hc) zHdite*KlcdgCv#%$D|n>L)+74##n$*4Fof@FGD!43Wa?cwa04o|5!fcA7QPQ>`BqY zh9k~+XhGhy>Z6K}C6DsNPz}Xpa8X5{y+IyS(+Zbi>=?MX`d_;E#}5{}fO;r_x(NQE z>#ypt|5o>>G;Gv#9WXyfhT86uBW^S=H!-8iQ-44OTm5WLToF6n99s0TU0PzZJ6{PL zn`IOK?WdEC4^l;|5Jk*vX>oay@3H-z1IMY^ijQp)QL{rMtr*iOXyMak!KXgUHe>Va zFcBdV>^7znyQ(pIWIB~pqU4D{ZgmEuY?t~=L$jHT_Sd<`9^wv4B|I_GTLbGtECSfg zI*0Vm0Q`0<-%&=I#tu{?u8{lGI=1k>L+llaY2;T`SrwVG4po7dN_t68yiwgF6NqF=iEZ+6F+b0N&pLM1?`trn$p@ZEgLtx4BJ zqRL-AWqH_*M!r-#UoP_E2^<94>Q~OtP|i}2!6;Yo<^^YV_OP>&j`CFV@LND~w*`=o zkZ?J>ZaIup%|kIDlHCv-q)lBPuXmbFHj_%&a(X}=4CvyHWeH66I&Vc_&}=ZECK@?l zQB>-5N_&sOlK#K|?kaVBR^fC=H&OU}<}^3MvU+(eovO-av#X<#Bd5?r-{XKn)ChRG z@Cw?j-VdwV9149y>{p&WFrM_Xi%Z1goRU#NCrri{lzy`tAm@lZR6D3C4bPGa(RePE<%FMKW zDScryMO&FAP#VrEgX%gF_0eaG`_&8Z4EgK%Dj;*N~qL%zEfVWe3wXzwC0WC4DG*5-c`R! ztl77jESplJ#Uu5c9-4E--!@hY+h&$h8e$EyhE}S`EqG?(fZMy7bIFw7Fj95stO=zI zE!z(N09VwGZWV-Fv$ikhKq0>iNuf@_rY1joKD?w_tI+45w3x?Cs?uvNE}1rY=6L%# zB2Oe#I((9tmB5bLkcD;{Bec|?Tbh%L`*bN$7Lt=(@*-G{qeISj>)TzLuO~YmEF-l~ zS^(7;ZH*bkH^^x7a5x7^Si5C9TJEpE9;OPp(Z6f})&wB8D8xC|qc6g`RJF@LJ|n8_ z%$_XGxeoE!>E|ONM~TZ>4MS=ptHddGmgGpB={8ZeN)-9lJ+~Kiaek4Ts5>yGrW=w* zUlU?!&Oc{O)ohNQp^y9Z;XCn-qlA1~0VV}i#A8p{3+;BwY}6OOp} z-DG%X|I@I8qV6baD4M_z7rskU+>mnmMzB1oXInX?x?9q1`K}+hl(KpN^W&@P3e|C?k|@7CO)Ou8-Y)VaRN*VDP=hr?Q%jxkJgwWYaV+w?BMd-w+!K z!wf^Y63SHBqw1b8uDxqR{I)ta5-lRA4(h7EJg0w1wSq-K1jn3{#CLQym@XxF#y53*wLxVSrr(4g|V+CSZNuAQ51b_95I=vWi7UTr=0 ztlMg8bB)aOtFbW_dihw-tDzn)M;=fPmwPWKYlRT#m`|Hs3z{bHvIYT{7!}1OW*o0s+AUj#$9L-G7ED;LHnnf7%*YSTk7Ko0wgwTG@Y8 zLF4~FZJl{k6W1ER!x}bOOb`%6G=c>|_O%L#)~bl0NJS`wEd;|NLMS9*i2>OW!Y*Pc z6!ig;Xf5QiNLej{vI_zx3I?=VtEredo-rAsDOs zzmon=3l43p(W@`kvO2#RUntNz(_Jw=ozad}Zj)kv2fnUbv z->~Z@nO*w9@<*t&I9&euLCl=tF*s6S?k%HO)GmgM?BFm4m+SHu7{Q&Ugz5y5zP{&L@EV|3J zOEZqlo;gK1;6ZAAl{rvWn>%lorR`u~c;QG;UQ)w!FfNULpx~z*FPiNrMzXE-J6RHG zBJ{40wvtCHTT0~YB(pgp={H^J1e&q%47Q{Y&*vdo&N!TH>RH<~{ksFAAU-_GvC@v` z#j^NeFD5C?R>&<5*OKn!(8(O0D!WQL2CMo@d)U{5+wbOr$}-ED_7l+xd~U#Fq{|Y7 zKadONMY&>z`z4QAJxSq;FUcc|HTM)8$;m7ApED^p_r1S24tAxwZC~qCG7WaJL&FeF zwHL`Wd%gIU`Ir+wR{sSmkR^*b?;(BY{^^#ZJWN|(l~;DM_QiYF*@R_PZf>2Hk{$Qp z$J3RGGHCzv!Ck6D=U$tzNYal|T3A2ge{T7MuAkN!-I6RWC~{(-IYT<8-HrcnCP_$F z;vl~EeH_F|@UxiDoPMaKz>x5ODIC}eH4%^c#o}H{nFRIX6%)nYm@|8HGs0`f)5P?0 z;AvJmzinNysx$HAe1=NsVR5~=`-7c3pOJsi;BLRLpUNBG-?JYAVbFGkiu3!eS&MGVQJp`f`; zE>VY0OuvX=Myg7wt4Fi;R?lTO-0C#%yOoZ;Qa-VZ+Ib<&=Wt9#R*pttgi|BN9J4a` z)|2VS#H`Ha9hDkV4S><3dBout)1&5482v8$qdAKUJiTXBpOq=jq}~jr^(oS_@xts1 z2w!xI&X7)nou9mKuGfFgH0ygQ1nok_s!u2!pJk>GSW{c1+GiDJrr!IOR0A7d6<#f| zykw>n^Ll`@`o>Q$mbIH_SW`*-H1=OBbgwKsvA+0j>5;y%sW$c0@rQRwbynd+)S-}1 zikDRmm87%tsT{NFE0Y|xmcuuJeTwyt`;-^XV!Dwt88$fY1wVV4$Wp{E)`u8{2Wd|jVsBV;r_oMj^ z#oaKs`>VOsjej)*3OI}^(CNmcWuDl6_N$J?`J5p8LG25^qN zm}b)r&5LQ+@+~7R3K+9yEu@7#a>W@>7WOY}t zl?mY=9z3K(ejFU9L=^_N_vg4qqK3<8&zAa!zh~m;zT?zXbLPSeW(3b-nbY2c{Gw!v zfAlr%-Q@L-a3169GCIm6YGjo5r_0~VsTQk6A-eUuGR=Kl-U!C3#vt%ca!p3|H_5Xf zfuLrGXqQUs*;bA#8fcptTAky3LD4^wE z+&wUGr>m~c<=*y&LLdSsz@6s;1F>E?02Cqqz`gH;2M`r^>j9m&16?U?>s(861OMmF zw@P*#g_N>A-zRB9Ag&HV5UFjZJHX-kg#=@9eyH_wC3pYo6ZtM$Y=c3smjrvj zb<#~wBleqTOA!T(g9|U4_~Wn*98`t@8^DE#O~WW|!?3L^0p`J3<4ry!e1iw)kiiOY z{Jp6Nh~6<82MfS~?xx^$%vQlpVK3MPjvY5$7Pq##wnvg+3pmu;wEPsiF)G^vFE9^Y h4{q{v30tPv_SK=CwGc3a)@GFq#2uI(A5zzj{tplD3y}Z- literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceCandidatePipelineConfig.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceCandidatePipelineConfig.scala deleted file mode 100644 index d26843193..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceCandidatePipelineConfig.scala +++ /dev/null @@ -1,116 +0,0 @@ -package com.twitter.home_mixer.candidate_pipeline - -import com.twitter.home_mixer.functional_component.feature_hydrator.InNetworkFeatureHydrator -import com.twitter.home_mixer.functional_component.feature_hydrator.NamesFeatureHydrator -import com.twitter.home_mixer.functional_component.feature_hydrator.TweetypieFeatureHydrator -import com.twitter.home_mixer.functional_component.filter.InvalidConversationModuleFilter -import com.twitter.home_mixer.functional_component.filter.InvalidSubscriptionTweetFilter -import com.twitter.home_mixer.functional_component.filter.RetweetDeduplicationFilter -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.IsHydratedFeature -import com.twitter.home_mixer.model.HomeFeatures.QuotedTweetDroppedFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceUserIdFeature -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.product_mixer.component_library.candidate_source.tweetconvosvc.ConversationServiceCandidateSource -import com.twitter.product_mixer.component_library.candidate_source.tweetconvosvc.ConversationServiceCandidateSourceRequest -import com.twitter.product_mixer.component_library.candidate_source.tweetconvosvc.TweetWithConversationMetadata -import com.twitter.product_mixer.component_library.filter.FeatureFilter -import com.twitter.product_mixer.component_library.filter.PredicateFeatureFilter -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.functional_component.candidate_source.BaseCandidateSource -import com.twitter.product_mixer.core.functional_component.decorator.CandidateDecorator -import com.twitter.product_mixer.core.functional_component.feature_hydrator.BaseCandidateFeatureHydrator -import com.twitter.product_mixer.core.functional_component.filter.Filter -import com.twitter.product_mixer.core.functional_component.gate.BaseGate -import com.twitter.product_mixer.core.functional_component.transformer.CandidateFeatureTransformer -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineResultsTransformer -import com.twitter.product_mixer.core.functional_component.transformer.DependentCandidatePipelineQueryTransformer -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.FilterIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.candidate.DependentCandidatePipelineConfig - -/** - * Candidate Pipeline Config that fetches tweets from the Conversation Service Candidate Source - */ -class ConversationServiceCandidatePipelineConfig[Query <: PipelineQuery]( - conversationServiceCandidateSource: ConversationServiceCandidateSource, - tweetypieFeatureHydrator: TweetypieFeatureHydrator, - namesFeatureHydrator: NamesFeatureHydrator, - invalidSubscriptionTweetFilter: InvalidSubscriptionTweetFilter, - override val gates: Seq[BaseGate[Query]], - override val decorator: Option[CandidateDecorator[Query, TweetCandidate]]) - extends DependentCandidatePipelineConfig[ - Query, - ConversationServiceCandidateSourceRequest, - TweetWithConversationMetadata, - TweetCandidate - ] { - - override val identifier: CandidatePipelineIdentifier = - CandidatePipelineIdentifier("ConversationService") - - private val TweetypieHydratedFilterId = "TweetypieHydrated" - private val QuotedTweetDroppedFilterId = "QuotedTweetDropped" - - override val candidateSource: BaseCandidateSource[ - ConversationServiceCandidateSourceRequest, - TweetWithConversationMetadata - ] = conversationServiceCandidateSource - - override val queryTransformer: DependentCandidatePipelineQueryTransformer[ - Query, - ConversationServiceCandidateSourceRequest - ] = { (_, candidates) => - val tweetsWithConversationMetadata = candidates.map { candidate => - TweetWithConversationMetadata( - tweetId = candidate.candidateIdLong, - userId = candidate.features.getOrElse(AuthorIdFeature, None), - sourceTweetId = candidate.features.getOrElse(SourceTweetIdFeature, None), - sourceUserId = candidate.features.getOrElse(SourceUserIdFeature, None), - inReplyToTweetId = candidate.features.getOrElse(InReplyToTweetIdFeature, None), - conversationId = None, - ancestors = Seq.empty - ) - } - ConversationServiceCandidateSourceRequest(tweetsWithConversationMetadata) - } - - override val featuresFromCandidateSourceTransformers: Seq[ - CandidateFeatureTransformer[TweetWithConversationMetadata] - ] = Seq(ConversationServiceResponseFeatureTransformer) - - override val resultTransformer: CandidatePipelineResultsTransformer[ - TweetWithConversationMetadata, - TweetCandidate - ] = { sourceResult => TweetCandidate(id = sourceResult.tweetId) } - - override val preFilterFeatureHydrationPhase1: Seq[ - BaseCandidateFeatureHydrator[Query, TweetCandidate, _] - ] = Seq( - tweetypieFeatureHydrator, - InNetworkFeatureHydrator, - ) - - override def filters: Seq[Filter[Query, TweetCandidate]] = Seq( - RetweetDeduplicationFilter, - FeatureFilter.fromFeature(FilterIdentifier(TweetypieHydratedFilterId), IsHydratedFeature), - PredicateFeatureFilter.fromPredicate( - FilterIdentifier(QuotedTweetDroppedFilterId), - shouldKeepCandidate = { features => !features.getOrElse(QuotedTweetDroppedFeature, false) } - ), - invalidSubscriptionTweetFilter, - InvalidConversationModuleFilter - ) - - override val postFilterFeatureHydration: Seq[ - BaseCandidateFeatureHydrator[Query, TweetCandidate, _] - ] = Seq(namesFeatureHydrator) - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(), - HomeMixerAlertConfig.BusinessHours.defaultEmptyResponseRateAlert() - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceCandidatePipelineConfigBuilder.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/ConversationServiceCandidatePipelineConfigBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..88b70fd565447d4998df1ed083213557c13286d2 GIT binary patch literal 37127 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 S44R)+$`DUrdhAJ=Kl&dAx5kM8 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/EditedTweetsCandidatePipelineConfig.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/EditedTweetsCandidatePipelineConfig.scala deleted file mode 100644 index d9bb73695..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/EditedTweetsCandidatePipelineConfig.scala +++ /dev/null @@ -1,84 +0,0 @@ -package com.twitter.home_mixer.candidate_pipeline - -import com.twitter.home_mixer.functional_component.candidate_source.StaleTweetsCacheCandidateSource -import com.twitter.home_mixer.functional_component.decorator.urt.builder.HomeFeedbackActionInfoBuilder -import com.twitter.home_mixer.functional_component.feature_hydrator.NamesFeatureHydrator -import com.twitter.home_mixer.functional_component.query_transformer.EditedTweetsCandidatePipelineQueryTransformer -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.product_mixer.component_library.decorator.urt.UrtItemCandidateDecorator -import com.twitter.product_mixer.component_library.decorator.urt.builder.contextual_ref.ContextualTweetRefBuilder -import com.twitter.product_mixer.component_library.decorator.urt.builder.item.tweet.TweetCandidateUrtItemBuilder -import com.twitter.product_mixer.component_library.decorator.urt.builder.metadata.EmptyClientEventInfoBuilder -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.functional_component.candidate_source.BaseCandidateSource -import com.twitter.product_mixer.core.functional_component.decorator.CandidateDecorator -import com.twitter.product_mixer.core.functional_component.feature_hydrator.BaseCandidateFeatureHydrator -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineQueryTransformer -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineResultsTransformer -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.model.marshalling.response.rtf.safety_level.TimelineFocalTweetSafetyLevel -import com.twitter.product_mixer.core.model.marshalling.response.urt.contextual_ref.TweetHydrationContext -import com.twitter.product_mixer.core.model.marshalling.response.urt.item.tweet.TweetItem -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.candidate.DependentCandidatePipelineConfig -import javax.inject.Inject -import javax.inject.Singleton - -/** - * Candidate Pipeline Config that fetches edited tweets from the Stale Tweets Cache - */ -@Singleton -case class EditedTweetsCandidatePipelineConfig @Inject() ( - staleTweetsCacheCandidateSource: StaleTweetsCacheCandidateSource, - namesFeatureHydrator: NamesFeatureHydrator, - homeFeedbackActionInfoBuilder: HomeFeedbackActionInfoBuilder) - extends DependentCandidatePipelineConfig[ - PipelineQuery, - Seq[Long], - Long, - TweetCandidate - ] { - - override val identifier: CandidatePipelineIdentifier = CandidatePipelineIdentifier("EditedTweets") - - override val candidateSource: BaseCandidateSource[Seq[Long], Long] = - staleTweetsCacheCandidateSource - - override val queryTransformer: CandidatePipelineQueryTransformer[ - PipelineQuery, - Seq[Long] - ] = EditedTweetsCandidatePipelineQueryTransformer - - override val resultTransformer: CandidatePipelineResultsTransformer[ - Long, - TweetCandidate - ] = { candidate => TweetCandidate(id = candidate) } - - override val postFilterFeatureHydration: Seq[ - BaseCandidateFeatureHydrator[PipelineQuery, TweetCandidate, _] - ] = Seq(namesFeatureHydrator) - - override val decorator: Option[CandidateDecorator[PipelineQuery, TweetCandidate]] = { - val tweetItemBuilder = TweetCandidateUrtItemBuilder[PipelineQuery, TweetCandidate]( - clientEventInfoBuilder = EmptyClientEventInfoBuilder, - entryIdToReplaceBuilder = Some((_, candidate, _) => - Some(s"${TweetItem.TweetEntryNamespace}-${candidate.id.toString}")), - contextualTweetRefBuilder = Some( - ContextualTweetRefBuilder( - TweetHydrationContext( - // Apply safety level that includes canonical VF treatments that apply regardless of context. - safetyLevelOverride = Some(TimelineFocalTweetSafetyLevel), - outerTweetContext = None - ) - ) - ), - feedbackActionInfoBuilder = Some(homeFeedbackActionInfoBuilder) - ) - - Some(UrtItemCandidateDecorator(tweetItemBuilder)) - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.5, 50, 60, 60) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/NewTweetsPillCandidatePipelineConfig.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/NewTweetsPillCandidatePipelineConfig.docx new file mode 100644 index 0000000000000000000000000000000000000000..87b7ff1f0736798a4e2bdbfc1db916b809722687 GIT binary patch literal 38166 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 PN)_+}mq&i;mw*2U@lA5H literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/NewTweetsPillCandidatePipelineConfig.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/NewTweetsPillCandidatePipelineConfig.scala deleted file mode 100644 index e1a92b9ca..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/NewTweetsPillCandidatePipelineConfig.scala +++ /dev/null @@ -1,123 +0,0 @@ -package com.twitter.home_mixer.candidate_pipeline - -import com.twitter.conversions.DurationOps._ -import com.twitter.home_mixer.functional_component.gate.RequestContextNotGate -import com.twitter.home_mixer.model.HomeFeatures.GetNewerFeature -import com.twitter.home_mixer.model.request.DeviceContext -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.product_mixer.component_library.decorator.urt.UrtItemCandidateDecorator -import com.twitter.product_mixer.component_library.decorator.urt.builder.item.alert.DurationParamBuilder -import com.twitter.product_mixer.component_library.decorator.urt.builder.item.alert.ShowAlertCandidateUrtItemBuilder -import com.twitter.product_mixer.component_library.decorator.urt.builder.item.alert.StaticShowAlertColorConfigurationBuilder -import com.twitter.product_mixer.component_library.decorator.urt.builder.item.alert.StaticShowAlertDisplayLocationBuilder -import com.twitter.product_mixer.component_library.decorator.urt.builder.item.alert.StaticShowAlertIconDisplayInfoBuilder -import com.twitter.product_mixer.component_library.gate.FeatureGate -import com.twitter.product_mixer.component_library.model.candidate.ShowAlertCandidate -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.functional_component.candidate_source.CandidateSource -import com.twitter.product_mixer.core.functional_component.candidate_source.StaticCandidateSource -import com.twitter.product_mixer.core.functional_component.configapi.StaticParam -import com.twitter.product_mixer.core.functional_component.decorator.CandidateDecorator -import com.twitter.product_mixer.core.functional_component.decorator.urt.builder.item.alert.BaseDurationBuilder -import com.twitter.product_mixer.core.functional_component.gate.Gate -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineQueryTransformer -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineResultsTransformer -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.CandidateSourceIdentifier -import com.twitter.product_mixer.core.model.marshalling.response.urt.alert.NewTweets -import com.twitter.product_mixer.core.model.marshalling.response.urt.alert.ShowAlertColorConfiguration -import com.twitter.product_mixer.core.model.marshalling.response.urt.alert.ShowAlertIconDisplayInfo -import com.twitter.product_mixer.core.model.marshalling.response.urt.alert.Top -import com.twitter.product_mixer.core.model.marshalling.response.urt.alert.UpArrow -import com.twitter.product_mixer.core.model.marshalling.response.urt.color.TwitterBlueRosettaColor -import com.twitter.product_mixer.core.model.marshalling.response.urt.color.WhiteRosettaColor -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.candidate.DependentCandidatePipelineConfig -import com.twitter.util.Duration -import javax.inject.Inject -import javax.inject.Singleton - -/** - * Candidate Pipeline Config that creates the New Tweets Pill - */ -@Singleton -class NewTweetsPillCandidatePipelineConfig[Query <: PipelineQuery with HasDeviceContext] @Inject() ( -) extends DependentCandidatePipelineConfig[ - Query, - Unit, - ShowAlertCandidate, - ShowAlertCandidate - ] { - import NewTweetsPillCandidatePipelineConfig._ - - override val identifier: CandidatePipelineIdentifier = - CandidatePipelineIdentifier("NewTweetsPill") - - override val gates: Seq[Gate[Query]] = Seq( - RequestContextNotGate(Seq(DeviceContext.RequestContext.PullToRefresh)), - FeatureGate.fromFeature(GetNewerFeature) - ) - - override val candidateSource: CandidateSource[Unit, ShowAlertCandidate] = - StaticCandidateSource( - CandidateSourceIdentifier(identifier.name), - Seq(ShowAlertCandidate(id = identifier.name, userIds = Seq.empty)) - ) - - override val queryTransformer: CandidatePipelineQueryTransformer[Query, Unit] = { _ => Unit } - - override val resultTransformer: CandidatePipelineResultsTransformer[ - ShowAlertCandidate, - ShowAlertCandidate - ] = { candidate => candidate } - - override val decorator: Option[CandidateDecorator[Query, ShowAlertCandidate]] = { - val triggerDelayBuilder = new BaseDurationBuilder[Query] { - override def apply( - query: Query, - candidate: ShowAlertCandidate, - features: FeatureMap - ): Option[Duration] = { - val delay = query.deviceContext.flatMap(_.requestContextValue) match { - case Some(DeviceContext.RequestContext.TweetSelfThread) => 0.millis - case Some(DeviceContext.RequestContext.ManualRefresh) => 0.millis - case _ => TriggerDelay - } - - Some(delay) - } - } - - val homeShowAlertCandidateBuilder = ShowAlertCandidateUrtItemBuilder( - alertType = NewTweets, - colorConfigBuilder = StaticShowAlertColorConfigurationBuilder(DefaultColorConfig), - displayLocationBuilder = StaticShowAlertDisplayLocationBuilder(Top), - triggerDelayBuilder = Some(triggerDelayBuilder), - displayDurationBuilder = Some(DurationParamBuilder(StaticParam(DisplayDuration))), - iconDisplayInfoBuilder = Some(StaticShowAlertIconDisplayInfoBuilder(DefaultIconDisplayInfo)) - ) - - Some(UrtItemCandidateDecorator(homeShowAlertCandidateBuilder)) - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(), - HomeMixerAlertConfig.BusinessHours.defaultEmptyResponseRateAlert() - ) -} - -object NewTweetsPillCandidatePipelineConfig { - val DefaultColorConfig: ShowAlertColorConfiguration = ShowAlertColorConfiguration( - background = TwitterBlueRosettaColor, - text = WhiteRosettaColor, - border = Some(WhiteRosettaColor) - ) - - val DefaultIconDisplayInfo: ShowAlertIconDisplayInfo = - ShowAlertIconDisplayInfo(icon = UpArrow, tint = WhiteRosettaColor) - - // Unlimited display time (until user takes action) - val DisplayDuration = -1.millisecond - val TriggerDelay = 4.minutes -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/TimelineServiceResponseFeatureTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/TimelineServiceResponseFeatureTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..06c182314cc25c8bf779811a4b066f7269ce2144 GIT binary patch literal 37105 zcmagEWmsIvwm*!!dvJGmcL)S`cMIA`aA-V0a1ZY8?(QCfy9EgZcmH>0=A1Kg?!E8( zW%E$A)=$>jT~)n%E6YJbVS#~x!GUdm<m6HwaVH zlHv1inj4&Tx2B)p2qWZ7JV!S$N&5jTnx-;F6N6+Z1Wr|G3_7eje}*TwgThf=^=O1< zm*L~yn6lf;gr7V4gM`0S*2@wzwPvPmIzn3j@7HkSa}DXw#trcUF12ox4E4@d8cubq zy@eO`yiS|0_;;CtOkpky5P1k%yelNlt!q_KCzRQd$p_21pm6~<5sKP-hA-p$P_*iUHq zkDz|$(h#XtZ5NA49_8TUd2>3FAosn=3D#TYlT`HWkTepa4GrcW}){-Q^*j_7Ksiso#%yagz-PMFscvIo=AWwEUp zIBk#Z${+R0FPIO5B$U()Jt(hXCOa?&c&!=)i)UJP-|sU~QcP-jO^BGWq&_M+<2bd{40~}pg%mB_7zi;x)_;JO4 zRy3(QAE`M7&G0KUI4N0r@S`suWUvC3T5mbI6zs;cxFdG%9G+oRbfn;(!!7diOX z`$1#X{R|7*8W?uM6SoIwBvfz?QI%9x_ZCg|tuH4o&Q6=tZjc7$NX?;0D9P_~XHH5g zL<4i-*7V#q00V`!!*g>xYfLUw{vw~uTR3VkUz)~wX;Msp8SA+y!|p;>q41fBch?uz zZ0U)zSjA!)P_k_@-x<3m^A79%-rm2yTOwq*=edBwJF-GCq?>h@czy1>B=~1vu2)xa zk3oI0g8~CX`+HwZ93B5?i~6|3Dl1yY69bgNr!Us9Vk&s?feT_Y66^Ri@fpo?W8@#= zpjz2>fW8l5*nFQ^Zo&oX1)dtlo)*O{VH*@bYG98)*%7yF#Tx-MRcRVyQp2!(dXNQy*biJPC`bJhA?^IfExEKx29bVlg3pb zC15k|JfHXoWrOJb>88&7Cwh*Ry&kUMEQRPXF{9(z1Qg3+5u}$u`Rdtr2?@i zaHBi)x!p`QxM|Y#z4gt1; z?*V9_6K#d?l;6AQ?vUJl#D76!zOZLI*m`gkLOgPZ;RUwT!xN{Rz}vlyMvfB)wAgK? zBneMyZBhz^X5eag+bPAR46MqE6e_*%>_}&MW+6U@Pk*=~c$>fZMe@%Z19vy;`UMgU zObqAG53D=D*_;LRsdcpnZBD=MjLEMCfE9kc;j`)D8fPct?`cpg{cRN{E7tQ-5waS& zS{fmdyJ*$n_RA>NJeg;}tPXL#Lv6Zm1a=}#Z`0E(G4{@v56s~+k@S;LcX~vt_GDw> zaCq5|mE|)Jy-tYML7x6*y``IN#cemOZ;P_~(18W;doTeIi-y$U0I4CFX(!I`kAaPu zta-sWxwYXkgy^3mm1!{P9orm+nVePO#T#MVi@#3SG|{(8Rum^2t6H^Jc_Ud25kwVB zimRd|)aGS7k+_h>}$E7}KmbGYE6LJ!IlAwZh=wK{H4Z7IN zeWNe+E^#FtXSSM8#Px{IV*^91qM$ywx>e;WiL{Bcg6&{kl6Q;d*1P5i;gH!6Jl=w} zD5hi{&DQ$WVp}1@JaerLyPZ3oX6|%l!IGXfIGX9e-E5R3v!@?rU&OuD9EC#&<(H>X zIkWTa+LE;&P7W?7*dvGz7eUFCH1OT~hvW?D(YsB59q8*)Mi7<7VpV(cZ1i(l6%BPAnXpc*=5a!teH&^$TY@Y;?xeH zeLpBC%j8bbPf0>?HgyMVXP73?mz}Vbh6m$AC7E!X;<6*%Qzc!z$V9S#n9S0-rsCoo z5+?ght`Xc7uuLmf#ku~75r(rrkS6oA@uW{zSg*#5HMzlhlf?2waJJKLNk~2`q26USU#oMLDux^ddAG8eIvOO z!EO7Z_oiDR6u_MZfuFZuX3JCUi>d*;DS$c&u!O6mS^VVPpZj8&X-5ckGQ9m6Ur~Tb z(-9V_JkK#8WM1Jj%+a+&4e{_#h#2Nu4`eeAUug;6pY8#ToH<%~CrF1T9U|MUD}$D4 zKb)@URc8G61-mHK3+;DeszE-AyOV86L)a>q|OAz|4w1$}YhQD)% zA~*xZPuzZAFVo>}WKvH$_U!=gQgL}pVCn^rtQR=xTju5L(I046rR7Pm%DRGP+Vc=q&Dee#leR}g=d7?R;qzI1j@!-2hmpS zs;GiPX|?#zbv(KdI+8Q-Urj=@vp#vXlV40$wOn>q*lvler@8cQDb{NS_Mt=7F3lSo zP;gNh@0=ZcySXQwjSHHTrdNZbnli( zkzg;Z$xz#dye#I35aXq)OH&KB4S6?d%WHEzlQ`g|2>;0&7D8lKII@^_o@s!>L=_-*ZFpL=j9tc|FDk@1{4cH1Y1tsy*XS;F$gO?HlgLm=hyE zDl$6xBa-O!m(z8g{%+*1R=qRLr{c-e zt9AhJ1frB3kG{;h2zgax=lVwhZfKHYy1nzFY&zIxnT{xW`i+2FZm$5SjqQqkMf zsq~pIEVAzH+PYrX`)Pi4+{^uo$eW`!pdbCNefMhr#^c>d`N&73yU^mreqf_8alaLC zIcwNk$H8sU!20n9`5hZ}1KAwte>E^w@oT*QWjf?*lTd$8xY)XZA^S z`qO#R&80^g5zqK_1kjnu>xIvY;wqthm(JC*%X4K-L{dD)FNEc_YptujxnewNkj>A& zea*K^U+=8zb>+_|4bw3@B8U?XdWU zInb3H*|O4oqIj?x1K7F$@m8zbEuBTs)ut!S{XqBF!|ip)Mn&^_zq;?nbAZTKdNKIc z9!5xgYbxt$$dZrOO`wU8wgXr9b@v0ZNjd6v2`ZZ^NuLIZX@&5Bq;D9VPuMKb)vfD# z_{4gU2EkDMAv|za9hkR8k(5o_BDqI{K&%WJ>SYj7sR4lg+h=?kuzB}pa6cil1S{;I zxaw*Fflpu5MtQRN(jmwwLXuoP?LM=n8>`CR7ur0WuvCdM?{L%qvu4w`3d>B##`HO5 z@nFx%r2?m*Qy!C0(16iN@y_XGSoZcxdn&(kl0~KT=9CBq|}O$yk%dS2RlE+_~h*50%&d;*@bOCkYUF)W$Z9kI<{LKe08-Ef~y zUeABpGh`4CeMk4fCcB0EF6KjIL@OIvNWq&Rd}dj$F|sE4tWFm5K}JQU1Vc5Eqdb^# z4~v0Jj%o1&T)bjicZJ_3AiuODX7XM;wBM-6%$I>vrC`7abc}EIC(Za_AP^IWR*=AC61)+t2aQ~6|ClypF&6y3E$A1x=sZfAM5dKh++yQN#`#&W92P)R< zvI-|K1r+snVQvH!d{d=guMWSKK zt-TA=FpFPOcb>G1Sku+_>;c?Q$4{4Jp*^YR1AZfdYoxcQK)0m~ zcjUpsY#IAw=lFxxUjttN)jI)IF=(ZBzO;gUR}apNM^5in&Nl@XX6<>}SyGM< z;&7(Nf0*$g>Tj?qxDlIo2Ib;!5-IM7+r)R874Pk`J-qGts*E9=u{~e8`uVt@wIooY z7H+tN)hygFsjU)Gji*VYm#PkiRwONFbp6r&w)m)@ADVKj%w7AF zurdd>`NM;LQbzkHtjVM|37Z`saim}Qt)AzgF9u0}CFVT(49oZEp*$qVIE*s2DGj%k z>*T-1!@LO4m+y9J-{zt4eJ-M0-@Ne%;Fq%PHu(vvfp`#b+ofDLBgZ* zKA-P1qCyKZXYZ$6Sswk56)}i(j#c16F34y;)?+t?bVV!*?b~vgzCQ45L?(Q?MFnFI zUZFaelkKF%nCQd4pG{BuyU*0-e2af%?Vbu2Zpy6>0!quaH3jZ}I;CUHk~D9gk-xpB z&9zUvKVA=CzFrOudbPhec>?cVlin6i9%p|(A33s`biB5RWZtqoPY*+Ty@H`Gr+c;t zLm6$hH>V8WkUglzJ#iVY1?QKXy11Z7DU4H(XWyov$V3vfb*P_askX`m0lrnuKRsi1 zcl)ULUvTL@Ye+sckUk&-p0I0h7;fTWnm!=gk-b|wN(&$;PnJuYW#%f5GFNPO-wzi5 zb#;{0AvC4MR^uwD`mTl;1uEHSLVl#Qwe19G$!D`Kh7lkG;kU3AFxh0`TgQ^)rcfbHe3%6APWs!%C zUpa=SyTqT15M}{Qe~dN_kzMo0Lxhd=$Rp9F!nHgCzFsQP8+u`v>&`d< z*J4REJvLUQg@Av~#=u@oi3d8Yb`lH&A=zXAc#GdIA`CK6O<*)&=O6j+r7X4SwcYORsN5VRKF#=K2)7lf2vWU0%+3QVf z#{9G)NKt~`YzYI?hMAH_-nZMv-@o-wZ#J!Rt)895FQ#eqCn0=(yMKLLAjGYZL(O32 z?OyWWtkE#x%12OCr!4!(&%0DsbF4Y2ba9tqr$AZ#GbdDq!)r@&_+ij1zdx<*b`DcH zWHpkWcP6eRZ{ZM4bFjrhgR$>|yS>?ThHYW+X5P}Z7jjj~SYzDB%hN`&Lf_CqP#LQ2>hdY8Zm=}6m-JpgAP zGisPO2tN0ZYZ0uuN3s}&o^O~eLl*B4VGc3>m=LhDQga z=O|UgN7b*Ql)OgxR)e#Zrk%rZKZonqO6=-eQ=9ld`xa-FJ1>ncgL>JaB61 zO_fx1V=BxtY8A?QTOHXKmt~0lP{}J^w^M?sS>b1!TyV0cy4ot!_O6`gkE*tZ?M|$(X7t9*q|pi+jY@)p|CT zY!&csmP?854x{e)vfj#2?1k_wdo2qc^7vCN3G4a<3Ie-TTrF|f0gG!;@n^LaY41Oe zXta+S$1`4)q+N+c(w~{>3t@XnFwp3iGJ&PF&Q|(y4re<6l;;zWXJ*+ZURKd^*f{I) zB4JS8bEMp)woX)@YWnzM3pg_{$YU3jl*M!|!>W|3C^_90^{Y2KS#Yh4*qE0>ckEqm zM#%MFb|8G8oY3JPad@9XN_Nx0LdQ*#TI3Wi$`g^Un#VAc3MG{(Sv@d}&8iXa;M42* zsIqrQkH>`kgWqfd^iAhx``O^r+Pi!Rdlc1=S51?gKhwbF1*caJJ{T^L$FB&!^OtxQ1tlV`0}lI za@zwT%6t0LAmY!d+wTzfROOtBYfH<}nxjb?m07V_5N_%A_NQ@j4_Yd%`dRI-dZ&*P z(j=(3OhN_7qin}+vYIDZ8oS2GXGdLqFnPp*oO5PhZ$rB)Q4f+Lu=lO-5sj*IeY2}E zPi@)_i7(HopRZ;u2{1bk?`&>JyS`>p<=Y;tL=fp)$d(?wyq;^F%|nJ*ZcfEJE7D1} z6Mh>KK9_Wb)WLPeS-^LuLMrNS-bu?lnp#!e;&htO%b<5+ zPcK>K@!STirsX%QY{?IExIwff{owcCpoUyb)#-qRra2!of$#juJB;W7xkAW78u5)l z2ZYVGHGtR=E@BdhN#oL3eTb|f_T|u?^7Do?bsmp5uTzl=2q)kGC5OjKSdUSEBPbBl zW3MK7<5R{is73%+^+rZ|J$!RtgbR|+Oa@~gSaMl(F@K0SpZ1{5zBaV!gMqd8QmpXf4LoVgVMNhu23mi}eMFRQzg^9BemGGFiTGG-!kLl|VYrRsEMxgo`t zzGTr|@I{OvtHI5d-3oncw?-H_D8-h;t+k&jTh@f|m2Sp57YA3OP1#2i(l0Y?kZY2t z%S1TZyGfJHH}uGVM}1^40b6x^jeYasHsV|RGSbL#X@~-@3ILRjgXAmS`A2%mU+HuI zPCxve9z-nOS?0@q?eHD)(#z&$R%$N2-loY_DqDpGx^vf8mi-r?~*- zYH5z4p;8IwQ3y{k`CR$RqSRTDa*eCdoK0C!36IshU3sE#z9E7~u0PG3oJ$xnv&L1M zVI5KQiMldNb&4kbO&@_Z`jN&-XudlKQ|zKzL=|)1MutW`ljUQi7u{9}M3yqkB$-!> zdS^+BU8uQ$_1sf+|9*Io+ipq@>0Mo4swguTE&4l-#Vb_TxlQHwRHV$Xw5Yv6cYf(0 zLap@4VVT0SQ={a!b&`!~@hi#v3W-QI0f*$DxGz6+uOD5mrT1yHhSiQPeXbg0u}Z^C zCnFDYr^qI4cbDC?$}B%7#i@w;-aTSKF%FePjYC+Mao=segul;^RoiQsQ>(L2mz~qX z4LZEzcWA?Oc+}+}ni{2$&v96JOqBvID2PZ@&TCxjMQ!A50Fu7A&jFCx=}W?B1gp#= zRsFQ-O}-MYubE~sZ&zxLm(<@-Cta5;vxZ2x0lzi!N)HMlbWsNd=-Sv?2!xYIT6qVY z8NHt(Mvm<&vu=&?$=4_=uAQFOdZfsn9XL3mg}7XqE{^a&zr9k2VqD5tnMR02poc(+ zVR%dWd2Oo>8ZFHe1H$NsFS^sjm!3G~a;Jj$%|Ki_KpEfHcdapAHDxw2;aXo(d z`;Z$bEFvwpS>a431u4{^{Pays<%DxhyFks|+D;JR34Do(pfayAx^n;1*|2$m&bhT7 z6y>VyieeF|*+V_)YWNAa<6~Kol;~xYW@*-tu$GyU=p~Lq8uF1l~c|&%e~-2Xt2Ro>Hg1Z(vCo7op}TukNgabOmF>P zn#cOZU!*FV8^A)6m7=swgcAcJ-0hRnQRT>dZgIwy^yWadDR!OS>~{O{+y&t)?AA(K z1Cny7fi6P9B{LIL6Hr+dN#pqkJ)w110_}@w4(aP?`KwdweZzm!ZEipmV zdqXFRR+J&FpnICo>Zv;_#DX-sN3I6Am^D44JI$(2vgF7>tdoWu?9uyb3(kir#Kg1E2AoDa^Q&S(ABbWuTTYs?T)`pfIJZzpZ_Q%In03O z4`_6wp9n^|BX%_G$AMt2W&!oE(s!w?vH1jBhXcm=B2NZ9DEZ6bce-_7cY2QnaUey2 zncDJX1k8aKJ`>grwz&#qXmmLVQ((@d@3X-NdZHaua3mRv7#Kg3*JqAYRL7?BEwXy= zSY+!U@wI_RD>6!NLM9M=Fis;{E~kp1%OV^%V>`bx3m?R)+g>wdq|Q(b;9kLkh=WKK zCv^r>gOfxG8yrC-$C<^(k%(JXG+%&*aE9fui1~HI5kdBzr)MU7@X&k5OpQ^xngh1c zoNX}w%!3gI2u57{Rh&BmCSf^4ZPw{q5n345w}1pNzF16Ja8pr6X+yNyuT?d8Unbnh z>zUDF1$4;0_htU3k)k|JSEXn%SN6B>Wuf1`dqcJ5oqSKs+0F^wxC#ICEj0>)1YOu_ zeA&JSh7EoS8B{iJ!c1*Ei5P7fn&MVC`E9~VNE$#Y`(b~pgaWVqYC7Ed(}#86 zTmsh~AwUM)^$Bt$py3TNEP%+2lqpPGUP~KE%2FUs2N!PS=61r(_vAl_tDGIBP(@m+ zHkI1)dsV=DOJH$#L5R2R%-(H4C{bZnR!^OZu}%-g_itNiScz+tJYomz$c^=r?Xp8` zs%K^JB5q69ttI^FU3lsqBNe43UGx<$)DqDPO?HC~a#~mnuKEeUv~%hifUKrWHwO4O z*XwtmQ1Vt^P8ZPiRrxQ9IL^ftos6o#m`!d$ovcu&WLMVAKm!^~;I&#*jUO<# zHy;1ElL1Pa`ZJ05envyI>srrutfeYvNbF-x`3TE@tBwvKP;9Id@dr(d3MA-bHgnNW^ zsx#itS)yh$GdgaQ==TnN_^`R&&G^}i`+6d!EejUi}ZpJalW0ib-&I%D;%Y^vX1X;C5FFR@AV8zMe3xP%Yh3XIh+UjLD+ zTIpueYrw|{j@};-78}xzEVUAuDcp|^c@qsIE4Yg2ldUs9hn$$RQHIaBeXBavhv7kC z5lGciL%A5qh8ck)IKU7}rESW~h+gN|Y$BUpJ8PwFnzJ!u3_6O}3wf(q-`YIYK;3B0 z8^brRTjC`5c-vzz_J&Zk0u55N8@9;|`51dK`c1-rQ_KB9jRB&DmHU1Ao@m`zKu$LP zgWAn}97HX^{U`NzD$EF!|AYFXYXH6@Jlkl)r}cfOG5k?wSucjeY!)M9fcq~p?ZA#E z%JyRs%m@mPFfA0hngK^`a`SD6{&;S);^~?J(azmojNhm1!gtNyb4Y)Y-@1-~$kkx~ zAa7>l#EfA6Kgef{Ww#!pQ#RL}|03@*mVHpwx<}AzR>At-_vt(Ap;~JkOQ(_HW@kXF z(0v0(8$u@0TifB-hrFBn#htI6MNq{BPmJ0qUw%dbY7>WimvY4DSNJq%^ZgV$Gb@iS z+?)1e8Li4TX2En-P8#Kvh+N(KSG5{DQH|=-zH!|YvC$DRUj1G7(#RkCN zh}X<{lc7-^gHd5FO)!caH#SP(L%BV!GxU+#P}>4`P1G`f$g`h@XIV>5L)lrC?Gw;^ z{H~_)-eAM=%L32{V^UW41%W&bCeIq%=xgcSXR@>f@HFagYhu7t+j27~xa;e7_h>Or zg@xxKiDG{1H1jn~h1swo_@ycJNgl=7g5t91wvKJi$`@gUwAqG7Y)MXJ$=NY)3!S6R zy09Ww{~~zK_PFe)m7^R;2%(o#DoZql1g`FjZ>5T9)bH*jXF2n%A(}WeuA*i+f0mZz zGXwY)Y&!v&r<|2;(C7+~GYyv;0m)uxqIuRtIo1%9-9HYxn)ts2h$?k^GvG_knoj}* zKb0jE$qot4a7KMh^FNWF_u1uC@G3hh87EMjT{+t=5{)fq*oRv3SLv6DSEB`Vnr+3s@ z82+cp(4^lcc@ck`?6m*?Gs&x9+dbXB&shlsnZzuze&e^xY9S)d$Hm4Mh)y@Lpmrhz zJyEU;U)|eTJ~;qyS)*Zsyp~F8z>>k%)|FunooCo@_8P<+yEVV6_^@eY;{4zNwE3pO z2O-g`GlMp(H^HX|2MLGZy=0E|g5b5(G8p8J2Ec-YE=v>6CJXSIwd#Wj@h6$K3W9D9 zp~T?_ojSH4!wA8|{lmabpjt>}6G>T0Xn4gcZ_GpEASTS<7+5>)xU*ohT2dOrag+fX z$SjWSF_sq)9Z$5|A*L+##)2d++@pFEHL$MokiWM{sF489S;#Q(ZDg{K}2IC?Eu5249EQeeFM!x%eDKH)zIG)X&d^s*&yp+5~t5_f!a{CQ-iCc=VUl> z5b+!+AB_7&;XZKGZYmcZh2xi4W5XFk{jI zc7@l6D9@4(dqrl|NICu=aZzHw#o+~?i(lA|jGAuo{i-2h>nCmif|El3zQERjE-+0% za7G!om%xUct}W=olTo4}MAjIxjvhlS)=O#OCq0(rl*Tq7_?71TIfQ$t7Y<90dkLl? z?WueE6s(!zQah-4CuN}Goxs741lYAe{j+%X+4_GKucp(k>+9rF0_$H25&9ALjtRHN z31}vJAZ?7*XmUzDXyLp{2{9lv=wYF^;>Xy;NF^QBWd~GFe0=?JqX6ydAHZwg^}FXA z^;!`s78W-lAO+tI1cr_FjmQf*)XaWCp7*}N13=-hcG*0?nntZ**U6C;4vXZ`ttWG< zS#g_N&FOuS2mLq<@2Fm5HdlFeOK=MIGvk|^yPR*kz(qUCxd6>qq=PlzCehC{th6OU zN;fsJK*9O^KK%2rXogj%Vw<%r$4;E4spj6>jvj<1#LKWV^i7Jc;wbd6v)rY@^e2j` zFXZcZMo;!!b9~wKAHZV}-C`db9r&-x@5Plmo#5HJQCPbNjX528(QU+1vwL!Kr0M7T z#UG2*V-Rc;$oZ@6v=Ymly!)PYKL&n>xI(1vI`HmOlAV|abCjE?j*uqZ4>iLbPxp4Y zXxJdXvh5a&=f6^uqT6!XE(}=t&BFi?vnXxOA>UsF-{;AkKA@N~bR!shhJt}^Y$+ke z`9729rLGN$IOAmTq@f&0n{=R)sPbacE`*)hgtbxe&u~o z@q!=Vkr0i65cz>$v(H=NC#s#-vRJ!u@G+ZupBY8qmar8U)G)3%z}7IXj`PsN9=2J# z<8bfojHl&~nb^B;)04|ML^Kj1h;e_B-uy|0v!Dt<1Qh{tVmfsi2Qh^xmxA^R6A!Cl zy4p*7M7aA%#pLN(ayV)IK#R-4=&R8cljZ92!2yigb}{9?6<7<^{-P8G+Lc6Y1kcq= z5028Y{ppo$=L=__u!z)eqOR#`x61UX=P?2wy(8o)BOT9Fc8~JC}ElvijQs)7$AiLET#aD@(p4HJN6afNFQZ$BHYidOEK@9)kK_KKQ_10x zSlbvV6-JCwaR{HeU{;>JAVDSk0Zo19*dx3;iNooW*yBE|5cUIF(e>IW<}zLmdv@0b zU@UQw;GkGMyEH`jny{oASGg2*eo6fohwGz?E5)QD2gRmM=A?V|TIkWP4RrUV#ERXG z#7fE5d%8dbAQ8)bqcc_-v&ZIhPH`YfUqP0DBP{`>`uXhQlS1mH*Y30WIY;AGXcpwn z4FvstE`B-!ut-s4jOgn%|3JJ?xhwZ(XCO&gOgZ*5{q1R4_M|Md$Om-w^JA~x>L^TB z*WRb!f}hc-Z`Sx+K!OARBRDX-6k6m@!M(o)pZ^wIMR4ru#`d6jY}e%tEuv1M#c-cQ zGHO>&GAjQUut#roQc%plfR)=mnMdPJ4uN4mU*7=LiaIuUMX;acneKBBM14E`5r8E_ zMIfTtm@)!uH*=wX07nfV08g$s} zi9(C`c5WupRr5@NM%563hkVLLEIA<8wWV8DN7wml{eT})K5pw@2Z>6y7R5G?yg+`2 z=MjKa+P%|-fg~Vl3ZRmhb!-^-vYh*bULnIAx46*X|HQslKbQDA7j!Y_y7W9;7??fu zuV((QwQS>>5i6vNasaPYM&uH z0mJkU7VrjEn_QLMT;dh3=r^?P)qdk z?yehAr^k!A;PT9A0YWA{3zSu2jhw^!8-&(J;bV{**mgiiunO?K&qp&e3K|e4%H109 zVr!#!#}dMqT|Uh~c>BODs9v_I5h^rA(vAqyHRoSF7A)+fcpETC&Fdu;Jce4NSr_OhR1Y-smmf-V5eFr^PzL@qH+;-V2;5 zHAm1B{{dui$2AY{YuIR>!U@A3Cw&Y0o{OD;cxYY}VfpwikL<0M^9OdQVfbiw^k{)D zfrcf8TYF7K8eYSCvER@7rJ|k4csH>B8^B5FH^5Q&9{`Sb?t!~d!|iaxCq2Z`OPe12 z6&Z?-9hO0n5LWzI;RL~3Ef=?ksDywIsh$42Eo18byMz6B2#$n4Xpp@Z!o5!08x?;k z&YEI>vh^anIYlbNM!d0A9hMA1sjg2j7M}NT%%6?lm3A7 zFZyCLE5R*jkoo=X7C?Ihc>De!=YOZuK@RWUzg**>5>op^;CFWb-8~_(B8*~X5w!(j zW#SW)q$!zl9Scv-T07%M)e5=gk_+88ae=VF;R>AjkNz0{=dQm=) zP;}vGI->zYb(n z+$2pz2#a&|iA&wG2eC)jc_juzf|bSKP?4Y}%o*TA#RQZlHE6#~8qHH~Pzg`6o)`-Z zKYQq4ZW)|VtccXsfz@92uw!Dp#mBRJlQgx!_{mkgrf+P(yf{9F&&pcMo>>tvH1<5> z!)^uOG*<|-uVZKV8fEoMYN;j`Ci_=URuV5e(~&lfM?=}HBy0hREA4k3Vw|h06t~z^=mlBklu&oZXQ$>GaFdWk|)DNB7 zO;nAr6MO@;N2Z!@Z@(ybd@t?JcphMEY5{5_05$p8Q`lRL-B#Sr6?I{R;K8nLyiLQ@ z;4R8Bg+PVfY4jR6 zffw5o8s^^^y>xUSVW>5W61cu;>#*Ks@U?TmfEW{!psxlaT@?9`HN%s_Yw8XqsfDp4 zj6%Lwk54(|8D$FRlwK5VHYy4h4)f?#<}{ZArtNM&^{stx*Pe?^a^Xo76AUppSZr63 zoYLRZ8g8Qw4u+1?kwgz0%8|G^uuC5#eZ-zn=YH+wW=H(mM>0duIPQS;1-^^`uXx%y z*qwzs_8V&KH=p;qf$&h6aMWn>u}vjb-r&U){tlwO=}-B_w7_y#@sRkcH0u&DK&h;9 zF0OKJ2zNLXHXJ>gI%x^1Uym(XAoQ&kMuq-7wK^Ol;B;~j(5P6V{QZat8GFlj1CIV0 zlAd$3y&RxS7K!IaUVB#WRubEui=<9#r$AjIsw{?Evh~=-gE6IHFAnX8gCxWaX|`dL zshnF-tcp+HLqLzNeh91nu}fBQGpBDUo0%}2+PzUCWDVIOM?4pmLJT?(Ax#vT<(xVr z(-|a!ULDU9+)4!cO7l1vfhtP)yE6F3UQmuWOO7~VCcz^NHiWGm>QZqctJcUO3br$k zdRKT*4ulxAK~5lcoa?s!{E==*>KSa)edPi?_6N7@;#>%yV?MDEL(veNCd@lz`lYFX z^xEU12^^Y#t3X8kQ${r(%!3#3+XL_u6OTkEE zY2W7-h4#o;%F<&cEzZ#3ViOe{b{H^rNqXC1?8H;jclIEprfI6W$wJTb_vc2v=b+dp z_h_k;vC145-F;Oj30DR=t}m#7s%-%+Isl8bGR7)`FN=|TWQ0eaTAIybuy3Q0yLmsnrC<<6Xzl~e=lkYERGV{3beqGP$o-3vhIi>!lVEf_AvEe;^2!gVq)&7CTHj z&~ra>RoZ3vRB43s%-CQoIJ&tnSc$g?jiFdaB8s{q1%LR!k`CY?s&~(4_14FW!ov5^ z?x29Q6(KU14qC&G6Cafx;Z*ep1XC7>%H%2*6i9x+$<)`pYFJk73Fsu)^VnuNfJ|vW6(BcTL(u05$o&v{*#S4-*)PKIWZ|oU3%f|%<=28szskisS<>hk*X;tw@ zALyGwZ}E#}`(up6$czM^0Kd|SzKd<;a2ZAkyMOh2_3-R^@@-wO~pSt3HO-dtgVWH0Y*e64qHqq(ccU7asyEuZR^X#5;R zXu6kxp58Cq)>p2zM!xz&)wg~{_75qRKtI2?CIdfro88rM--7N3=GK5Spr5C(QAcUp ztw(Yj^pfBMa-^^MmF&+fquJzbfR*wb$K?_bk)H0@V&qyjys24dLS~9u8!HD<2x2bKj)nG`jy#K+I1f_~!a7uu*Z>-d?@Qr0y=2@0yM6;T2f>a@+rFrSI;HeckbqVo@bLKudG8 z6X((4uFXT6$ie)=x?6ss$^2fee7YQqb81QC?V`H*(*zFSN#T{*u--k6CzY5E>1ez4 zZj}6Xy9JjDmr>-U!SlY(=eb5nv7=i=TM6a$Y1pW#e3DydZF5tpxHyO;nWdaWGbU#I z=ILqsq3>q)$m!uNEBV;(EIDRz_lO;z4nUd4~kz5`a(%O86T-2do6wx&pQ|a za)0EuFghYv89}V$Bfe=1S8W(h2@Uqf`K0tks{w}9Y7S)!tbON>EU%+G80Bp%f<8h^3$#bK4HS4PC6)UJiD7-d?2(|zq)$%JpdZ#iS{ zXuic+k4Hf_Wq*5WT3$>r4;62_cj`2%avv8EPGE-io;)dl2vVvkM9`*K(u1x*x2uC# zz;f3E%1N$P`HKaLgL52Y(3O6|uwiJmZtb$jnH6pB$Jy(JH? zO|b^STY>HXK6$SLu@Khe?CSzm3yl66J`vbv{A1OGH|#!V(bxQl#ys z@!P@kY3SZw=2+hyW+Z{Eh{rf^!;RPN@sz*S=k37u`;qM}SLN_74`Q+VI4bVzy~hLG ziL>|5m$l3;Y{AU-ji;Z?Rj^I%=3la^h>><$MO=4}k%=ScHkbDd6@^&MHz#ihn#x~d zBFrmZTbVnzZ!Tkee~uo^KaM~ASiXL?uAS6(CJMU>QENTr&6x5*Pkp|zX!UvFYwdOq zF%zj=7&o}xy6GQ{8COcT|L(i-!+&blJu!vr)bVEDJ{u_cFnczgBG9@feo8U6wph8D z;=9^*uQb?P`E&F;K+gsA{dF~sc*<`zE!ylf#`E-oy=mtt5bk`;kp*k@3~U=S7S_5@{J42UfXDAqz&QlbzPBJ(hmwYDNXUO`^g zI7Q{y5-j_CB}0+%-Z!+~N;t!%=93_g@RwP_Umk?B5cAbAW!2~3UVIyhq&D%O93NGN z&>`V;t|>AjtkA1|!5NCBa8p~<-tRhprRcVEA|iZ{lm7g&%b)3Kq}1EBn;`gFJA&-$ zyzKMv{2U`CoW2LV(tVlT9jkk85HaK?lrLj`ZdpF#VIgF4Kn2{+ai&IVTy!Z7du+7= zy&qcEvP|O&o%$sllH+RysU32OrBf?^98B^ZXf9V~O!w8Nc$s<^91TX80j*MvfET#ohmEzqo-`J zkcUf!-c9D`lGujLuzi`6p2t%H ze>^_lYGeRvAlPuKF}W{LlPSAWolFRc>OQyG>8`gK{qi{pb!nF2%k5Nty~y$%TV^jDSG+$F+5&qQ?I)jU&DkBX zbzV1z9zmSJ`|swx%$7~YJh0F1jRiyA@wpaXCO=uaD=si9r57AruiYW31p+4U&sV9j zyrgm;0|ExdNOv`Kt_oW z)^?rM>lNakC!gN+XmE2pcvdH#{kmB*>Pu@%ad9aWmpL8CGN-z}J?bnQd2!Vlf4un& zE>C%tnpAVFCSJV9GJC}*2 z>ZgNy+~Ih9`c67L;f$N*^5!Q4<4ug(Gv%@)qMEGlWkj6zVXF`28#?jtzMkeKg<^`> zTFbdbXG zqPLmP&d^}@?^FqclobrGv57x-xO4D2y*qyoJY(;5@R(>7`evt^s)-c7?&SJda$q;! zd8aZ)=-HhPXcRN>stB%YGPlYSkx%Y!GX{@}{Um*4G33QunM0 zP zSyKcFpXB2yPGXVi60#dd)`76o=G%+&&xx_EA7kzK$v;I=&=0)jV+OPWBGK5vj63v@{i!Oz9G$Ym8v{@s4*rQMT&RnlZv&|ge{cLg(K`LD}+mO|xO6%jC zQstV|Wj@^RN66w=ucZs$Xup^lU-tem_nY3R@Go!kp&QeF`f6FaRR03D3;)YK3oGDt zbo4D~>UmcI?CW%#Mr%I-!L7f2FBEX48NO_o{*4eTJ!2>|a{W8JJA-y|670zBcjPg$ z;wA4s3uh$6K0D?bUmg3;zafBMCPW&SPa5RljW&M1T=#V?WwDLAFBOJ$l-cXr=inF6 zMan@AJ$^#wHd=;T&93>}ow6-#OwHJL*p?)R)KBMeb-T;#b(uS-0oi{7 zc?13065climLV|r36x=2X{UWY9u^$uy>;{Yhm4XQbaPsOlOEewCWf0muZ}gW4&S?z zvgLb`U6~L41VUn@<8^KCOB&KHXXCNd{taUkzcss$L6TEq2+W(xgK9~eYVd_O&?=tVlce+wrm=MkqN| zorkN`-nJGWkXtPE?zS0wyvITh?#Q;AfawpY)qKFmX7)t?PYZx{UwIdI&ec#)ppO`m zw*AsyQq!Cq|C0K%bhVo=W=Mv^_|As;Gsbmn$&m2wb_~R3wjI|Zpp*OBXG#RD=YXBy&;NgR0FLPUyw961obB9L$l!rK2k`CO>u}1sZjNNDdC0Pb+^Y(O{?`fu zUtbI+n6w$l=$qhOTakZ4T_f_EwJ6Iq@Yl!a4EBIRZH$s^W*gj}^Tc%5XVg~#M`9Z| z5-Qg-id9>^lV!X)nm#7<`?^Tg4`ht}f6o)WU z2T4=f(ZDYXYt$Z|ATYWhq*vazX4QbYB6&?jLk1u1gNfo1>aU~~mFCn$Y{o;>whPqs zyNr1~=my&82ARHTR)oCy_}|zRdQJ!Vn-=(o2w2>Zny*SgaTvkHmUXM-`*R;xXc`^U zeQfWIfa_fh)SH!4SJP-kAu%?`DZnR+r?9q_;x>(bT|r#h?iQ+U&gbG)J{2AA9FA=7 z`Or3tlD05jqf-K_4P9^+9jLI%HjPY0fr}bt3iR-{w4Ul)wVnON*#ze>$KCM(L+lJ9vA(auz0>wDU2 zc-v-xhkXld?coF|GB+yswoP5%Zra9^sQm0{yFP`dILvfQ)`)ApZC*yyI6kCn`_R=Q zuzi>52&A}IGhwNhj6tN&D70F-@`c#Dt02gv5gln&&HzG(=vJZsO=a_=K86- z<3O5z)1O zj(4uL4a%q)0fE->>c_^iX==I$Pu+EnIeKzGuNdEZ+TtxS9<$oX+~TVvURJoA^;fx$ zSni8ACVQWs^*V1^NZY@Er;qq^Z4g_)qAZN2!|LZ;X+&R6oVqc5`baSte?1y<$m1ob zCej=swca#7SMfV7Scfgtj>eRtEqF>+(=Fh9u-`A7ggma1OdW|k6R*5oyB%M9xzZIm zeI&(*KO-W!4jGib7kT+%LaQsx;4{5enA5M{rB*8P)daMj5Cp%UYG<${)%WW;;LJT` zIhW+hl3C21TC9@4q1#a(3L+h8sce$bH{sd-=i?PEiwfOiwyLpsmE9TulmOPlM1Wx;qKV4V{e?nSua90|R;h0t(Vx@k zp#wSUQOQImKDUn{xoj|P6as@n20~cx%y_020n$H*fWZ355hccLhV3>%d|wU^;r}`I3Fu(ktVzW z?9e_82E^sJNG-qk?rj)Mi@hpP0^30cMuHbX zL?K{M*9u^rW^uOYHLkMM@yJlv3tZP1=veOR>|s#d%;4@rVJi(Dj;^WpK0k`{pcV&#uqoh;b-|$*-nNJUA!#E%>=c6_-$ogL zAq7JhgD_ypo|UuFh==nF5~pJgTq!||gl%R{mXy!;>d=80gc5H`xy2QZ03ikA=K#IN zE%F(u)Nh)!MTN#(!N#Ccxj3W4Ec3+1&%)nX524c5&VfI-!I9nS}Us-?_@Lj}Rf z3M4K6$~VvOjoPd)YZ7=i{P)l->p*~XJd&&ulHGWTK?sUMP=&$l-!A=>ojbyQg}B9K zTIig9#j-Xu@rdSN#w0`GCTaI{!uy|mWW^v%sN9%zbs#0*TM$Wu;^d8cQ35}y;;^@e z;>Mr^j>IGI8U4^%s6YV?D8R)rIkzT|G~j9fGhlxI=K%u{lKmRHbAEif1J->rHeZ2R z0gr*}=g!k>vOszW=*Cn86oUL`Kcj?q`hASZTK`Py6|yyH*@s1 zbM$mePlkue!IaW6pjV;NYs5u_aGk7|1JD#n39jM}7s3L}L8t5)|DS_%Un8=yds54VC zsnTquKH8en3Gqk%=tcc7@RQ}}9dE9m=IEQl5!>$eWJ9QpPe4o@Sacj+9NWB{*$f%m z=^P{OG$xRsgg1Di@%6j+Mm6yNJ`|U+n)fD+Y|zJQ@F741eUN0L1~`JEY&oOPOkTfB zMUb`oCHqv|?WY}m^RoBIz5h6+7&(faiItXljE!e{y5Y-$=V@2Bqikt&^TONhH$AgG zt>F1q-u2ulA1SGUt`5VD&0R8N2WX!*&*^KI1gEs#G?QTAM}JrzG?skF`v zU@@i1M$@oIzn*;eV$L{t5x%+;vC1q&iDzi0qh*n0Xcbf7xJUvcsd+*px1;A?3RRak zbn&;a)t%neAHXY^PWz@&YVR?7707gv=xMn7y;=^bZU?8%A5YOjB$DAu-9bquyEln9 zlhJS@e>kkpOmXrey#=O@*ubCMpzk%s$~V#4IMdp%fHkZalMe4h&U)y=aqvG;I#-ED z_b9Sb7(CaDZeC_CBs|~7*hEDQK1$9}y8V*7-*3$XVLm-UaaL~T7ju1~bX6gKtiVZm zE>;}*y7~Dn32W~Wh&OzZo`)98%*M#TKEup0I@czeIOyvx@A(FFEhD=pGyCRcT&ePl_PIOyttsyIeol0zb%s9PJi6rJA~(b9%@9SRn)Zk ztn$rcS7b1l;*q4|)<;ZGTaE^F5FVsbyG9wj1~uY@#P|2XiZ5+IN^sYaW)8Wu9Ci-Y zCMG(z%!)LqW-OB*A&45GiMPf9V=5y1Noph zR?P-`u5T?o8maQlU%rB1(Bum%5TaK)ohfOwhv=pCAh_TjvW=U+>Ftf+7{$xNin26e zm!eFQWUP0*x`U|XCOAFBafq|K4pT;0Jc58{hFL*j;812c_v%P$lVBBUKe0tvpv;hD zJ-UWsn+ANU9EP2rHpmd=2)42~xmyL5b{8F-=U+gXnMO?~$yx?SFvBavRWeGk8r3vh zFQ~3Vm}l_86=(m0@zOCE&Du|d*%)eN!7NXjCBo6<`g{RW%tyL+N@yKnaU3CsGII_J z#fCVKK*J)-aX_zlt&~O`ZUq!k_!q{%M4StYar_YhWcB|R5j!m2B-dl`w*c0B*m(r{ zZX%0~BDQmsnafbxKeRlU{0Rfps3{0~$PwqK37mmB#;1PaQqn9?NXbZx-V7@b+Rs2f zf8s-NkY*W&t`Dk|0>2xljFB_OBHQqrh$kG75i@; z9sYAIqDI~u>`I-y{yciyT=1S59bMe-ye|Q!Y_u&%`nB@u^h{eDo=w|77I+(cv}*hm zx*p!%ruK!huaKL}oMjxXGg&^?9a_e}#sJ0^?iJ5Mrws)!pE8FA&YhQ|^2!k{hVdE2 zj8$A3!Wy^cWw@V0|7eby_L)i4b2HpIlPd4+`$z+{MZNUFSE>UP@*iD`W);c&XRP3cjr<3;-ng(>OHV;M@)fD(T18IcudDe zaP8M>Ma2n=}!3u8Bie?ZSUkvc7g6}w{WtPCyRN5X4EmhtY#jM$E+(%I| z`1T~?CE|q-ibqpNwzzj~IVFjff-P(nawq9Lh_b#ud?$5P(2YkdlY6I;Zak%G5QS%# z-yI6CP}CiYhtpv`LYd#4a}|6SbjJn8p=2OYIz#_466g`5o)z8^qgnkoMtUO9qa!=w6zr5gD(>jm2>({$1sY;uU>7kY zqxSlK_p0Qf@-H2#`6oaf@2>yW@jkKH$VT@6AmLu9o#Q|9_@b1iV({fJE6_9kSn;It zZ-}RIpcUx<4=YBE4?{-|p-#dZlkaSNDZD19ZrAZfR&9EX5!ycafq2v;yfI|k%wmNoj zwZ}X2Q2D@To3)jSCDM4qaSfANA5XXd{0O%;;5!_j_usf^Jrt)2ej$$F*=n>UKAm$P@nPgK;5Gp(rIj0gR$kn#!Bm-j|W^?0($sg3}K&^kFj^L#hpZ|s05SBQw zkR|Yti)E{W0~NtZfMO$4y;rWWtE536patF#R;&`lv&veG6wJ^enF$@inFGU!X*-NI zsVhR?#k3NEh&zlI!Ko9l9Iwo+TdhnB9aLe!cZy<*Ll?-2sn*H3!Xfk@uF95U1=UU9 z4NxYCGO@(YwWiXLq}ndAU=lzvs5*2j5vigLK^h+V)u{Mve-t%?R1p_Bv}zTpjKit+ zxXqESu=Msdls;*ejbvekftnyfhv=Z$^3V2G+mm(vQ?91F{w;P;v2>blQmLUo^*)joIwU3 z#zTT>p;&QR;&P|4%@zfkCZ?jPo^yet(xRTGS46`wj0Xrwi{dmnqOQqL)yK9S4nr_O z9L8hpKOZa4W?U)9Kps_NCUlG7j4@~{-FErkWbrU;-+T2xX=nz@){)S@b2#W{pXC(p zAujmash{}X@O%#Dfo7>NitA>rNLM|anHa`8s=?H_3%h(<3F#56{Dl16BIT+-GFZt} z!}W#XVbga^BQ?bhR=cQEJeKtNGHKmY!uQo8tj4)0Nf7DhVHU!Ie@?RP=GV5lcW~Nz z;o7WxDK2Skbc|*eA6!^Qf|=FqvYb+(0dX3CjSdBB33fAN5it6F_HiBPNN7d5lwDn5f1YV|kD{ z`)R-~KkCo?MW?YUHlZpJH=G^ROY5Z(E#IbvnT05Yz+T83$Ul%&dt7fx6c?@x%PKsw+|;9jYf8~aHSleV!T zn9hQ^h?WQYPo~y)sm>gv0;#7qEt6WT%1WcEDn0T~)MD6wqLLtmQ4%lJQ)M8k{mTNq zdY}b~@K}E=nCXg2ekOTXi{35wMosb7R36D$>WZR+GT&BLYoPvFTi7Wv{~43=FTMwm ze~`DjqV8M~)aIotdGJGvBHqHFZG+Z@F*ya3_|&VviKmxEVPu{PV>YGFA3A131v^iW zooWIp18c$4GUlE@%E^UN|AR6a*gq-rWXxLF8H{8ZaVbf}##1O_@(NlO{E9MP;A0n$ zGco05k|NH@!lG_|wV$fjd|#m~r}IBh=~ip@5<#0>7QnHDcDa&fv~h`1K7^b?x1e64ySV&HVj{cPGHS>&Ma@q~WhGZ#)dMTEA zD4)Y8rBaQ2p;OJpJn+f9krtkVIbBeDEx@YROb{H!o-gt3oAf$WOm4BjLbN>a* zzTx?=n28fx1=EK}u+V4#uZ3~oLW7d_VH3#i71%WhAdI9$)Yj_BFF_03k=K@1KDZlu@Avl&a&(qQcNvc!( zM0N1aEFE@w4(`a0bjI+4;x-|mno+GjDUtjk#lE8`=^k*9z9v! zk3-?I2h+@y3NMxaB~ydT~;{CWW$H2$4trby!z&mU<2;|4og-crk#lKS6IHx zgNh%i40L{htkNkem{$6gE|tQ+*+Nwyv(l@g>Fk7?5$N(jrFnA8y=@9Z(4`tQ(Mrtz zzdrMO4qD+giebnL8U==!DsEY;z=mi4D=tXJOuWenB|#hk4@QM!Y3AY;4cFEp@7*cy zi~yCdSqqW~yoz^tJ|gan*j&h_3cb0wTf-4I*jo`jXS=4kp4W&>5u|d_))94PnF51# zOLW#jV&;5Lt&BG|pN5t@nU)hm6Z;B8MU5+a8p?^iqBb9WMnl-N7To;83hlOspQgh<|v_#{#NK}zO`Md62>Mw#@6UAlmO*P{BfnEF+W5eo$V664|t z`17BC-aS|HOAIGG*=kU){L`pt>@VZUata`vgCs~K>DsLUwQwE z$F+;`#|!x}ntkMajPIlb!vib?PC(E8OA2}5uOXPf9TR>nsJexw&Kh}6@jMCT`%s7Y z+c6xG+HNDRye1(g!rS|Dx>y)jtXt@5ZJ%R?Kg8AoRR2g~AuIyQRynQvV1biD*890SXopdmVsr!Hoa2gzNj_N2FeYYW!z3cx`9@$hn2a zcLI*aK60rkP>vGZ8w%2KQ<9>mmIL=bazE!jvc)tr5U_pC@7cO#qbV5aY`ts9`iN)9 zGl6#tkVC4Nc4(y;=Z1^b72uhZZ5}-2AFADI_}(y!SZa~lPMP$L&#)yEf%A&0H0iPTGz6_(L6`guPW0G8`x<2F`aCcpJn$ zmM0hGeBmHL$g)6n(4lg}`hFH097*lIUk@tV^`k<9eF>l48Fy)hlv{_DpY|tMj5Mpm zst`1BYa1Dys<*-kXJfxS`J_9g;U276TdqG!-KOM1KwP`bZXR*fgM@d;fy1V+e+^V~ z%OV7ntp_dwFDb4vFF_ncf!4)Kvv70(dyWOq%$K#uFJrd^ZDtYyi<``4UgsUX7q`Kn z0N2mC$3U2}KQLu~!{`Ibo>is@|NNhB&apKLL=mm)cE|c&2oM?<;7aUa!h9Ew)HT>J z^*wTrCxDvYuFvGiMC*Dh{CVeN8!wkFx**kDhH0=UW)+~b#J=8yCKk%H*IIIRqc^dF$y z0jvFZISmM&nKzfLt-axFs8=JPNd2-7L(P}afBf9rM`3vEshmUHaKJCk@Z3w@~tg^u8q)pfzq76{2RqmL)eGxLN{ zT)yb51ufJ=C{GDbyJ0D4==Ql+cFXiz=?>R7Q>L4fMFVHmgmE>)Oh~|O(o$%%b{T-? zaK=P_)A!!I#?_70bwRbwU;uU*zplDiN+s^mql1jwMaL8_KZtHfXYK8Qc=5+KBK{RP z0s!gK9JAz8eZU}wKv0P<)Pgi;p?c#{h?%|TRM7~vwn)pQJpvbZZe=`!oF^?(jj@;| z)Q;xP-Yhh3Q6{^!{1qWwH)}It|IAYCNS3Je>-VQUA%MZrZ*gP_CLb7InymK&UlOqXhqz)4ziGalk-7~!b6xLYsNMO4`wX;Nly@GC7f zSvIW=`LuBg)DScmY!X(qP&4FU`OHzjuv#(2Mz3>*M1(7w_DM;XhFV`4AUW@Oh_%yJOA`Tkbm;P3?WmZgIP}ZAZ@a`% zG2*lcZ(^_>KP2=YD~>20$hmhb1gzp+*pPv9{D(BzBy6mtl8Q=$Jb8Y3HB4;2Q-L#H zU<5uxEouY}3L9P^@FooKa6bp*U5d)1Owbg1_u7>*2NS{xb}cbMga#d(PmdSK{TaNk z+Ov*|4=Hx{bxwyPXfOfm>G^&Si!+Fe1v*w3$)(1Q*&al^O_C*V7TTCKTZ(t6QG^_3 z-w3C%gkXhy?+T86yOyS+O1m^iDP=XpMWua?=crgohg=Hpb@PrXb)MYtif#3!9GEUj zA_LP!Hg6aX5#(H99kOSE|R3{ox& zT9p8ug*g!KcI>H5us4k@$a{aY2JFz^->KXv9fFoRlG$wq$R08T6*0 zp|+=`7OL_1jn{GL6xk`Bq>uv_8KOZJIAtSKp=!D&p4!FdhHxufn#k|Ep8bja%c`%# z*U#FXVFX9LGKHGHAXmK>XG-@giLD|myUui85>zT}LEGgN>Y=mB&wyXRTO=L1?P`?t z?tYwpzv6!e>b*m&7#HM(A}q?$R^bGtVKG54UYV-%qNx7;(w7vG=S2B)3o|Jtu~lV} zB|`Ex;Uh7Nvdq1uu<c;KXxBop3Jpd|v3GS*8H4|tZINm}ew>(X|S zO|-;5Y<40Ywi;|C6Vo(vt%zM!f%F=;XsK{@}5MmGD#95?9^;ub316Rtz{RNs-Cz$A`xb;(iL{mZhGn&*gGeMIInnD|=7 zqf%r>iSE`(jSNX-3TRqpd!qH@z4g*(DHyFy<8$$w0dFSs7Xt%ih-c!q+J|d-d`yal zffB6?nw{E*0tiF6A9@Xe62LMD7?yVWEX@=d?Hz8Q1n_K*zC?^pnISahkItDr2~N`N z(?&+ZvX-XSnIe+{mcg4;5m=I&o-!p`=YdFOD9}SmvzA(}BT!fsw}~)XX8QXD4AI5X z0uWf*?I;Y5%nT}g6Tw#uY&S#o6xjs-Aymwt-_4CQ~TvqJ!?oE!)|0c!8aChgQ zocsFmKU(q?2}v6E0UKDI!2VYQD_3(jH){vWzxG+RXl%KB=fUXRDKl!{vw&@NmOr39 zqp06jpt1u#BmkuG3yA##cM?K@;tu&n)I^#^#?>X}-SfA;Uf1Cb6G1rU zpm`8+T6#LJ`}x%}yH{flmb8c{7Fr`gz5v`Wo$pr%f}BQ-HkqK_C{#yBzU?g$Ekp{U?sqt`*NkZ3E%)7bY4SPu29|0aeFdGi0FRq4mV_bf! zXx3q!6rUiZq*3AoV-II4CPWE3y#^Ppu3_VJ(Kk4U9vjc)yi6nVQzv41=Z8|gIORYx zFLuQyWMLp2i%na2#>Tu*Q4(J+5{jHa;$$oH=kS0;Cthr#!NcG~#_)P0$w5KnUM(M|u)H?BGMGRp zV6&#YCbY1yf~O;en7UQLmGE{ejMUgFCA}R7%ZC+W+Td8;mxS34W}`6M7hj-=w($fY ziBzqzhE%Mb==j7kUO$@S7mTmGwK}Tuu!hjjY<6P+Mxu8(D;-@H9E1>Yk@=h##EG58 zTB)ICTk%6YH2Jw|fNE?tn!b_k{YFCeLOpnw>+4J@VFST;@&OLO;2}j4#DtqO94vFN zwyzIdWNp&f@*M_SY|`bq85B47-rbN)cAjNVJ7N-rV5nL2p-q;1&l%sKYTIw379rj& zL{HlWlJ2<_1Pup%K#pWVo@2$0CulqKF3!ZoVDN!6JPrV7%1Q4NO7mS5UQ39(s|9@_ zch3$$EH7o>rrrNholH^qqr$vK$E_~X=IlUykms7Aq8>TLr=uczQx|sANlJ;aa+ZJV z0l4c|utmDh0)be1XiE}%_?PW<1oZG4zSxBCFJ#;uArCi8zR%U6n97yrz74P^Vv^jt z_OAIHrpt!Cqw$UJ`Ja)*5&FN2xK-kwx zZcG|xFa@c>i>yW_;0Kv(p09#PC0)PHASN*F6)n{`P)&IKSW9J5JhFB0l=6rew50g|6%wkwY zlh|+wyHZ42k(~%ASzCacp=MrwvTJkUbUjd!o{?5;`{T_p?aCDV*>BGVrLmuXxnxHC zBYewrlm><$CKfB}5-#Oxqu8Jl@&!pWB6gU}q=Kzc<^%=!sN@OUn0x}lH7$a9d{mQj zYKIV^+$}(%Gg-NTHD>K=Ee+8^>}?wjPn_%^`(zU+{)*SNh!iU0%;bE0>t-S2DfEdl zm~!{nspBk+xqs%}JF!{HgEUW=08x{Dvx;*!!^-$+3a)k!0ITPelfyb>fy;^Wf_kit#4F*Bh2P)!?c!Ok z>Sekf>=V4N=%*<_gJ5vo#H7JVc|T^KO+Fsp2zA;%Gc;0()6up6=*M$n7zAf6_C4e$ ze(9MCGo_7vMv)3a-^oNh+H7UkS+t;O*GTKgt)hbW^{IB>bkoO-fgP%(G8v4;ft#r3 zN_RPAV-TXcH7C)E;Ut`kIM0j*X>WAJ_lk&y5yMN+B$LM3y`Q!jT`{0s>VXPvtV9!9T%dnd5+@d;gxZug^pJ@XuguOnw?dmD>G$QQTwWn;{S zAIjKVPm4*`p4@cUoy_P9c_U`XLkZi7#_pzrh{AIqtLCw=9}p;?+E}}I3aPBsMJ`HW zBNoPUsjcc6ta2S>=8&w$`{2Htyt}e~w6ymbPWR;rI>;kLzRuoJp~*y6PvWz9@h5Cq z-=zt)8tkeWIUNq9-3z9vj#bz1J3@jn&oulv`V#rg{WZOp>Y~hBp;of;%kBSYMw%i* z);( zyIQB;4p#?*?FA#_*E_Zn89e7P2OfPwKPkuj#UG zIh?idV*80VLT?t~@If#L7gFl)8oaMfvaC`vI+@edvmQN67T)GJsPZP;g7;o)Xk2r7Ksc{e!}TT@x-1-HYG2u#rAHP$k7|@ag4f`CzP$ z=uHoz5BAL&?fv*S^Sj>*?XQdH&yHVxTR_H>`*-|bF53+I^a4<1hA-;!-fs8TFB}Cw z?!&1i+7Y3`Wi~;4B7*r(K`xaP=?t4G@fs-$z_Ir!+=hrx?I6v%+vy}l-U;_R5;LZ)C(4I8Y zr`c=CabK|}nZ#t9PFKFn6%;!SDKyuKnRSY)w8N5RVLS9k1{gGG%#q8C+tX}{N_dn_ zuMmudB9yX{VLT8Fdy)QP%C@1~N@{TyF|$vsC=<)*_X$ndNLZjSOTKp3KZP9eHr`PP z65RJ;Qzcm|Ez}aMJgN6iiwk|xS>;aadJ{gs#I-lPBgqyx z>+{`9k^hIaWqBE6wQSW7Gw;=?YybPMt$FuZUAGN7}n#{j*o(X*-bqIoNU z!)WHhK>9wL?#e=l#Z7@$nZY= zb!B*l8e2RlpZju{shB2BtI&jJP2Gfsc394$0QoGCGwTwg>5@Z)+BqjOrk!5zSK`rH zRL)Y7KKHY^u%?^l`(Th``Bu~lH>;6)-y>KDv1ScwQo~NG z-N3@U%_Zd6&qRmc?yiMp;5BwSX|_)}wde~_G0_U+TM;~ZsjW=6h^3WW=aZCGE$Y_G zI!ijKKh>j8Cs6jRI7C}nB)v@NTHHBI>AKv=P&V9i!C5HKTfs}*&z1T3GN!<_-QWAo z0xM?O)R}LN!P5MGIF`HaiAsZEe}e(-MUlD$1Dr?Ny zxPGwbt|AimlVG1J+DsZjG`;VXs@_Gou^dn zE#Ib&4=HioM|2EMqn9su=mp1~O+sJP%U6ed8aK_4VyGTaO@*!7v_OQ6R1&MBU9+@p z6aDiCnT^uuX<^fI8X2lB@6R2(>f8`A`iPb=(j|oFFWu6rrlo$U27sR7DQV7xXY&j` zP()%`Snhckfb{-}i9mu_DVTU~ZI>8JB}mc1RbwVS#9UmtrlF%58oEEpg^{Uj!mCQA7tFcwu% zs8I{xYGq!&LnU=56`Oo)NA&G_es&r=wpVxuBj(@(v`NUgI>Gr|Ndky}-X9C!ql8|B zia_VoqFAX~N@=^ddqR>bf@9N7Okf=7v0^PjXoP@SI#nQ^)b;wYiMFx5iw7+=*ee%+!Bt!szNHggGCUjHAu1SgM{dw_bV zfx3wPq3iGNu>Vo_S8LeV*#=;KjsmsYqe$9pRcUTXQ=s*P2DUEhL|T-#-XFQDU4$xrzPz+DHQ?0g!I|saa?Rf%m88|VnO>6R9JKi5y6Dq@ zO^2D)ZKSve8EywlnPbfaBMO6h21(jf2(K2C=~ws0YZJ@4?9TUv=RVRdYE=SB@_S>u zVjLpa?FQ$p?qI@B+kkOqy5=r4Q=ah0j0TRVfn(e?=~)hF}} zptK|35Ra{V_fg>EG#&d~>vp}&Pat#@;$T!gM@KzRMFFE$#a|GX)7{6(K|an`%O_|J z$=eZ3IY!3g=CR{ERAIm=vG^ul#vj&1$=R4zki%xvqnC%XY*Vj^(CT z4&HyJpHf}^RDoSbL;E(@?k{ZpvG*Q7`x|v*0TPX_u8c;D?>qJF+IQ*97(4!0?ufyM zw0*6cl)6Lv>53UmdIEBv*^vbg!d)}X$X!-h)e-hkJ80Fa{GwMjF1Ulc1@|1KEmIBW z?z#x-h>G1Pc({^IOxsYDx{X6gXDX$ANGdHN4o#)`%h45$dgTFU)#UIDVfaa z3zvJ*=mPNwxu|JUb|Obw6E^x;tcda;UO8?a-t(0d1xRj6nX52Gt}exZoo^4B0Y01r zu*|gnnZYy@^mUdH-yq|xqTrlmU>#Q(=y|{VdYUQb#r(Vl*bsu;p_1a-jJt~L(a@_z ze?`*Vn?GAw@E8$rG%7?wiIq~c9fj0GQBPFqF3Xd?FleD}mo5otc$I@BU21FWm77xkyHw zDbW>FbY__dcMQv--H$|Hh-8#eECz#X_&l=o+c+2e33zZpi^q-u;S zE<)%>L{545b_6XrKVo-mIhRMsx>yKwndT^f1&%f*Hyo7nARM4|?xFBnpQI7(&0`=kd`CuONwlkH3cm4XR|I_tR7V)~)4kPl!*Sfjv3* z-NF07uA{C#-_+8m78h%&Ux59x7V7DG>Fqvcp^eigl&x>h*+{71< z$8Z7Pj|L1iw;X4s`5-uU^SrCK@(rcW&13$41 zmh(q{(p_%%Gst&)HVY1SaDb$S^Wz+rwX?i&#-2>$stQxK$K*gPI`KY*DB2nsyIe zHL8>6Mfmz_wJQBKI~0<@vx!bngft5G8cEVopWWU#uhI?@K<^l1-mo=!S~1c$PvuL$ zvV&oC8s+%Cm4xX7b&!~M2m1uaNsJ^Q+7SB$|BPc;%z%|gpPp4|f6G%NXj_68j;`4` zNjTn=Scfk5jgHf@Ruv|NZ~52ecKv0BxUk#KT2d;+TcUH&fBzs&{@Hy&?Gm_np4EuS%9Y%bx2EU zI$gmRok1HxoA>oi(`~zLoA=u+Cgksw4(M&czXLWVuJ#3?(c7{wjs*{&fS=w!D0`~# zf5ZoVu3N&dOY?@hXaNBY9%1>;GN5FKW1C@CEUtM?8^T&?JG}T zozm=ozI=AmKBt;n>u#04lMYc(Svl$ToON%kc7?xuqjpri5qM9rk!{A>g&(pm#=oEJ zTbcGbCs?p<70YDX7xN6yKH*~V>GC$}Y*Oj)ZAxdm@P0v+OMHpeeRH+X4u{nAS!Vp^ zo)^h3yzQxA!*$h$H8VM*`Q~*h$FaPa^|Y_UccbzA#C;4C_WZ1TwZ4RVp6~KS7rQIs zUYaw-+!N^icUQ7E?q1VJf2KElF25bNZT+#Afm{4iuzXO1!Oa7gZ&sX7cH{pbq{hx) za4NE4Yn_5&b!yJrO*isIZ}OR~OPKfK!J|2$OD+m0Ed4K+mwiEDyL5BsJGNx5Zq1?| z!3gEUk~3e(Np$c0v`XP$VroR+2dmms6RwzuypiD2Ib5jouwq_9<{9P}>`71Bdr#|L z;*EcDsXu<|#O-N^pH1PM_V%vwoc43RXVwefZeNm?)+;mBHuKYzIlGsg+f#k*P1B+3 zHAlBix@1&cS?c@tk?N1CyK)Dk-+x{|<%vgd@#$CB+U4q=T-^FvuDa&&vgPyYp51&t zuYO_i>1)&D>QZm7UcdL}wcFPBDz|4pU)OJU@AJufwZHBEzBzq3{;P~-)tc`W_h06p ztNDHR```3>i~5I;*6)w~^|#;t|DsaE1H4o0GGcGAw5hfzS4D{*HVbZ?_~CI;>ESN1 zm$9qc`p-vCo|JfVLuK{%37kLA6)V3w;=FREaQZi2D}V1`t=(G>-TEJ#%G|2@%8Ku$ zOrC{uddts(r(S#|8~B$su}NhtXv9kVH}3d$$UeZEkx7IZG(671@NkBC#M+>x6Q=@O zsHcEqZlG=l3^V}67#O0RfrG)Rc_r~7l?AEAv7pu&x&f7H-VQ&2O78*3k-1^Ifpi1o zF`yBUHa@s%kFK$!jXO9KsN^D0qacdL=Rgs7-IJVO1RjY-*Z$@9ZSmJY?KvzA3<4wzM0?TG~i*jz3Cc;1)4z*eZE7`o*%fB^xXIRF|_nhW$hHtl&0(n3Z+%TEKXl0mWj z2yiGJtR3QWWJ9oqLhouZ>u!AphPY5x27VNifU^`3lZs0!b5g<6mFQuBexM{we*@zS zYZT3B$4jD{gFa7+FekDQW)9LM3c7ami5G-+_fn{Kv}qW06VN9j5GGWXK}|rJmO$5! zK5C56&r=E2k3NQsZUlP&8({=%1J>R+x&i1NU4#L5Q4GM=?L{{Wz3+%H>slkaV-P(_ zbW_l~S_o6#HbFxLrQ?OJAH6+@(BIL9l*Le6hXLNKz#Ih1Re}tO!0b`g1L6Sy7b0U9 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/TimelineServiceResponseFeatureTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/TimelineServiceResponseFeatureTransformer.scala deleted file mode 100644 index 3f0a932c9..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline/TimelineServiceResponseFeatureTransformer.scala +++ /dev/null @@ -1,34 +0,0 @@ -package com.twitter.home_mixer.candidate_pipeline - -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.IsRetweetFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceUserIdFeature -import com.twitter.product_mixer.core.feature.Feature -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.feature.featuremap.FeatureMapBuilder -import com.twitter.product_mixer.core.functional_component.transformer.CandidateFeatureTransformer -import com.twitter.product_mixer.core.model.common.identifier.TransformerIdentifier -import com.twitter.timelineservice.{thriftscala => t} - -object TimelineServiceResponseFeatureTransformer extends CandidateFeatureTransformer[t.Tweet] { - - override val identifier: TransformerIdentifier = TransformerIdentifier("TimelineServiceResponse") - - override val features: Set[Feature[_, _]] = Set( - AuthorIdFeature, - InReplyToTweetIdFeature, - IsRetweetFeature, - SourceTweetIdFeature, - SourceUserIdFeature, - ) - - override def transform(candidate: t.Tweet): FeatureMap = FeatureMapBuilder() - .add(AuthorIdFeature, candidate.userId) - .add(InReplyToTweetIdFeature, candidate.inReplyToStatusId) - .add(IsRetweetFeature, candidate.sourceStatusId.isDefined) - .add(SourceTweetIdFeature, candidate.sourceStatusId) - .add(SourceUserIdFeature, candidate.sourceUserId) - .build() -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/BUILD.bazel deleted file mode 100644 index dfaff319d..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/BUILD.bazel +++ /dev/null @@ -1,17 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "finatra/thrift/src/main/scala/com/twitter/finatra/thrift:controller", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/service", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/controllers", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/configapi", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/debug_query", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/urt", - "snowflake/src/main/scala/com/twitter/snowflake/id", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..4b61c223f28443fafcb8e09c7b308d2bcb9f2e77 GIT binary patch literal 36922 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 lU<}3*?yMEl++>mysW>FQ` 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 PTqVem2+SUbyFokvGGY!> literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/HomeThriftController.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/HomeThriftController.docx new file mode 100644 index 0000000000000000000000000000000000000000..2061c9956d0894f5edfedf0fd9e2d9dc6458a40e GIT binary patch literal 37411 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 L^YY;%ZNDbLRTNkH?-s4eLT!c3PlyLHJ5XW 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 O2{I%Cv&WiV5Dx$^H1&r7 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/HomeThriftController.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/HomeThriftController.scala deleted file mode 100644 index fc1b7770e..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/controller/HomeThriftController.scala +++ /dev/null @@ -1,51 +0,0 @@ -package com.twitter.home_mixer.controller - -import com.twitter.finatra.thrift.Controller -import com.twitter.home_mixer.marshaller.request.HomeMixerRequestUnmarshaller -import com.twitter.home_mixer.model.request.HomeMixerRequest -import com.twitter.home_mixer.service.ScoredTweetsService -import com.twitter.home_mixer.{thriftscala => t} -import com.twitter.product_mixer.core.controllers.DebugTwitterContext -import com.twitter.product_mixer.core.functional_component.configapi.ParamsBuilder -import com.twitter.product_mixer.core.service.debug_query.DebugQueryService -import com.twitter.product_mixer.core.service.urt.UrtService -import com.twitter.snowflake.id.SnowflakeId -import com.twitter.stitch.Stitch -import com.twitter.timelines.configapi.Params -import javax.inject.Inject - -class HomeThriftController @Inject() ( - homeRequestUnmarshaller: HomeMixerRequestUnmarshaller, - urtService: UrtService, - scoredTweetsService: ScoredTweetsService, - paramsBuilder: ParamsBuilder) - extends Controller(t.HomeMixer) - with DebugTwitterContext { - - handle(t.HomeMixer.GetUrtResponse) { args: t.HomeMixer.GetUrtResponse.Args => - val request = homeRequestUnmarshaller(args.request) - val params = buildParams(request) - Stitch.run(urtService.getUrtResponse[HomeMixerRequest](request, params)) - } - - handle(t.HomeMixer.GetScoredTweetsResponse) { args: t.HomeMixer.GetScoredTweetsResponse.Args => - val request = homeRequestUnmarshaller(args.request) - val params = buildParams(request) - withDebugTwitterContext(request.clientContext) { - Stitch.run(scoredTweetsService.getScoredTweetsResponse[HomeMixerRequest](request, params)) - } - } - - private def buildParams(request: HomeMixerRequest): Params = { - val userAgeOpt = request.clientContext.userId.map { userId => - SnowflakeId.timeFromIdOpt(userId).map(_.untilNow.inDays).getOrElse(Int.MaxValue) - } - val fsCustomMapInput = userAgeOpt.map("account_age_in_days" -> _).toMap - paramsBuilder.build( - clientContext = request.clientContext, - product = request.product, - featureOverrides = request.debugParams.flatMap(_.featureOverrides).getOrElse(Map.empty), - fsCustomMapInput = fsCustomMapInput - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/BUILD.bazel deleted file mode 100644 index 30ee81acc..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/BUILD.bazel +++ /dev/null @@ -1,24 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "home-mixer/server/src/main/scala/com/twitter/home_mixer/marshaller/request", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/model/request", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/configapi", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/registry", - "product-mixer/core/src/main/thrift/com/twitter/product_mixer/core:thrift-scala", - "src/thrift/com/twitter/gizmoduck:thrift-scala", - "src/thrift/com/twitter/timelines/render:thrift-scala", - "stitch/stitch-repo/src/main/scala", - "strato/config/columns/auth-context:auth-context-strato-client", - "strato/config/columns/gizmoduck:gizmoduck-strato-client", - "strato/config/src/thrift/com/twitter/strato/graphql/timelines:graphql-timelines-scala", - "strato/src/main/scala/com/twitter/strato/callcontext", - "strato/src/main/scala/com/twitter/strato/fed", - "strato/src/main/scala/com/twitter/strato/fed/server", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..4a23fda2487de0434bea68d06cf8d0b0a22468d2 GIT binary patch literal 37017 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 OCCHEn%pOWTARYiRGdJh} literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/HomeMixerColumn.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/HomeMixerColumn.docx new file mode 100644 index 0000000000000000000000000000000000000000..d1ea822f2611be1d318c978e1be98f48fb44e568 GIT binary patch literal 39181 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/HomeMixerColumn.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/HomeMixerColumn.scala deleted file mode 100644 index 0ef27b7a0..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/federated/HomeMixerColumn.scala +++ /dev/null @@ -1,217 +0,0 @@ -package com.twitter.home_mixer.federated - -import com.twitter.gizmoduck.{thriftscala => gd} -import com.twitter.home_mixer.marshaller.request.HomeMixerRequestUnmarshaller -import com.twitter.home_mixer.model.request.HomeMixerRequest -import com.twitter.home_mixer.{thriftscala => hm} -import com.twitter.product_mixer.core.functional_component.configapi.ParamsBuilder -import com.twitter.product_mixer.core.pipeline.product.ProductPipelineRequest -import com.twitter.product_mixer.core.pipeline.product.ProductPipelineResult -import com.twitter.product_mixer.core.product.registry.ProductPipelineRegistry -import com.twitter.product_mixer.core.{thriftscala => pm} -import com.twitter.stitch.Arrow -import com.twitter.stitch.Stitch -import com.twitter.strato.callcontext.CallContext -import com.twitter.strato.catalog.OpMetadata -import com.twitter.strato.config._ -import com.twitter.strato.data._ -import com.twitter.strato.fed.StratoFed -import com.twitter.strato.generated.client.auth_context.AuditIpClientColumn -import com.twitter.strato.generated.client.gizmoduck.CompositeOnUserClientColumn -import com.twitter.strato.graphql.timelines.{thriftscala => gql} -import com.twitter.strato.thrift.ScroogeConv -import com.twitter.timelines.render.{thriftscala => tr} -import com.twitter.util.Try -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class HomeMixerColumn @Inject() ( - homeMixerRequestUnmarshaller: HomeMixerRequestUnmarshaller, - compositeOnUserClientColumn: CompositeOnUserClientColumn, - auditIpClientColumn: AuditIpClientColumn, - paramsBuilder: ParamsBuilder, - productPipelineRegistry: ProductPipelineRegistry) - extends StratoFed.Column(HomeMixerColumn.Path) - with StratoFed.Fetch.Arrow { - - override val contactInfo: ContactInfo = ContactInfo( - contactEmail = "", - ldapGroup = "", - slackRoomId = "" - ) - - override val metadata: OpMetadata = - OpMetadata( - lifecycle = Some(Lifecycle.Production), - description = - Some(Description.PlainText("Federated Strato column for Timelines served via Home Mixer")) - ) - - private val bouncerAccess: Seq[Policy] = Seq(BouncerAccess()) - private val finatraTestServiceIdentifiers: Seq[Policy] = Seq( - ServiceIdentifierPattern( - role = "", - service = "", - env = "", - zone = Seq("")) - ) - - override val policy: Policy = AnyOf(bouncerAccess ++ finatraTestServiceIdentifiers) - - override type Key = gql.TimelineKey - override type View = gql.HomeTimelineView - override type Value = tr.Timeline - - override val keyConv: Conv[Key] = ScroogeConv.fromStruct[gql.TimelineKey] - override val viewConv: Conv[View] = ScroogeConv.fromStruct[gql.HomeTimelineView] - override val valueConv: Conv[Value] = ScroogeConv.fromStruct[tr.Timeline] - - private def createHomeMixerRequestArrow( - compositeOnUserClientColumn: CompositeOnUserClientColumn, - auditIpClientColumn: AuditIpClientColumn - ): Arrow[(Key, View), hm.HomeMixerRequest] = { - - val populateUserRolesAndIp: Arrow[(Key, View), (Option[Set[String]], Option[String])] = { - val gizmoduckView: (gd.LookupContext, Set[gd.QueryFields]) = - (gd.LookupContext(), Set(gd.QueryFields.Roles)) - - val populateUserRoles = Arrow - .flatMap[(Key, View), Option[Set[String]]] { _ => - Stitch.collect { - CallContext.twitterUserId.map { userId => - compositeOnUserClientColumn.fetcher - .callStack(HomeMixerColumn.FetchCallstack) - .fetch(userId, gizmoduckView).map(_.v) - .map { - _.flatMap(_.roles.map(_.roles.toSet)).getOrElse(Set.empty) - } - } - } - } - - val populateIpAddress = Arrow - .flatMap[(Key, View), Option[String]](_ => - auditIpClientColumn.fetcher - .callStack(HomeMixerColumn.FetchCallstack) - .fetch((), ()).map(_.v)) - - Arrow.join( - populateUserRoles, - populateIpAddress - ) - } - - Arrow.zipWithArg(populateUserRolesAndIp).map { - case ((key, view), (roles, ipAddress)) => - val deviceContextOpt = Some( - hm.DeviceContext( - isPolling = CallContext.isPolling, - requestContext = view.requestContext, - latestControlAvailable = view.latestControlAvailable, - autoplayEnabled = view.autoplayEnabled - )) - val seenTweetIds = view.seenTweetIds.filter(_.nonEmpty) - - val (product, productContext) = key match { - case gql.TimelineKey.HomeTimeline(_) | gql.TimelineKey.HomeTimelineV2(_) => - ( - hm.Product.ForYou, - hm.ProductContext.ForYou( - hm.ForYou( - deviceContextOpt, - seenTweetIds, - view.dspClientContext, - view.pushToHomeTweetId - ) - )) - case gql.TimelineKey.HomeLatestTimeline(_) | gql.TimelineKey.HomeLatestTimelineV2(_) => - ( - hm.Product.Following, - hm.ProductContext.Following( - hm.Following(deviceContextOpt, seenTweetIds, view.dspClientContext))) - case gql.TimelineKey.CreatorSubscriptionsTimeline(_) => - ( - hm.Product.Subscribed, - hm.ProductContext.Subscribed(hm.Subscribed(deviceContextOpt, seenTweetIds))) - case _ => throw new UnsupportedOperationException(s"Unknown product: $key") - } - - val clientContext = pm.ClientContext( - userId = CallContext.twitterUserId, - guestId = CallContext.guestId, - guestIdAds = CallContext.guestIdAds, - guestIdMarketing = CallContext.guestIdMarketing, - appId = CallContext.clientApplicationId, - ipAddress = ipAddress, - userAgent = CallContext.userAgent, - countryCode = CallContext.requestCountryCode, - languageCode = CallContext.requestLanguageCode, - isTwoffice = CallContext.isInternalOrTwoffice, - userRoles = roles, - deviceId = CallContext.deviceId, - mobileDeviceId = CallContext.mobileDeviceId, - mobileDeviceAdId = CallContext.adId, - limitAdTracking = CallContext.limitAdTracking - ) - - hm.HomeMixerRequest( - clientContext = clientContext, - product = product, - productContext = Some(productContext), - maxResults = Try(view.count.get.toInt).toOption.orElse(HomeMixerColumn.MaxCount), - cursor = view.cursor.filter(_.nonEmpty) - ) - } - } - - override val fetch: Arrow[(Key, View), Result[Value]] = { - val transformThriftIntoPipelineRequest: Arrow[ - (Key, View), - ProductPipelineRequest[HomeMixerRequest] - ] = { - Arrow - .identity[(Key, View)] - .andThen { - createHomeMixerRequestArrow(compositeOnUserClientColumn, auditIpClientColumn) - } - .map { - case thriftRequest => - val request = homeMixerRequestUnmarshaller(thriftRequest) - val params = paramsBuilder.build( - clientContext = request.clientContext, - product = request.product, - featureOverrides = - request.debugParams.flatMap(_.featureOverrides).getOrElse(Map.empty), - ) - ProductPipelineRequest(request, params) - } - } - - val underlyingProduct: Arrow[ - ProductPipelineRequest[HomeMixerRequest], - ProductPipelineResult[tr.TimelineResponse] - ] = Arrow - .identity[ProductPipelineRequest[HomeMixerRequest]] - .map { pipelineRequest => - val pipelineArrow = productPipelineRegistry - .getProductPipeline[HomeMixerRequest, tr.TimelineResponse]( - pipelineRequest.request.product) - .arrow - (pipelineArrow, pipelineRequest) - }.applyArrow - - transformThriftIntoPipelineRequest.andThen(underlyingProduct).map { - _.result match { - case Some(result) => found(result.timeline) - case _ => missing - } - } - } -} - -object HomeMixerColumn { - val Path = "home-mixer/homeMixer.Timeline" - private val FetchCallstack = s"$Path:fetch" - private val MaxCount: Option[Int] = Some(100) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/BUILD.bazel deleted file mode 100644 index a40bd4030..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/BUILD.bazel +++ /dev/null @@ -1,19 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/javax/inject:javax.inject", - "finagle/finagle-memcached/src/main/scala", - "finatra/inject/inject-core/src/main/scala", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/param", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/candidate_source", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "src/thrift/com/twitter/search:earlybird-scala", - "stitch/stitch-timelineservice/src/main/scala", - ], - exports = [ - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/candidate_source", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..9ea963cfe34b2e8bfeeaa55350d252db97807c89 GIT binary patch literal 36958 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 HZV(RudVe5l literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/EarlybirdCandidateSource.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/EarlybirdCandidateSource.docx new file mode 100644 index 0000000000000000000000000000000000000000..17b4b4b2cdaede7f86784618f080b8df7ab40f51 GIT binary patch literal 37316 zcmagFWmsIxwl<2pdvJGmcL)S`m!Lr#2@Z`1cXxMpclQw7EkFXn-M`L~z1QC7oO}OF z9;#}*GREwxnzO5w=Dfm!PK^9 zdcT|D24~%?9pE>@2tE_f)eT6}egKQ6sfy9WAQ=vZQxzJA4y`Ge<;m-$a8Or08l~A| z__RN+?D{h4>qh<{;U|^-vdm1anProK(C*Kh8fJX1A^pX;F@Dgw&UK2R!O2p?v3{+u z2*rIE5rFpXyIn7{+k_U!5lnqqeJ-6Q!| z-^o0874N&O1>~E`GbYpNy(AG8qW8poeDZokEU9=WDctwGRI;%zGJZ#%|AeJr2&ViW zRrH{i6TJsjZxaFx3=#C#$jRK+nT7fHwJLt<10)-o-Alvxa2hilO8Wg+k%p z)XCFgd!S75YIm24q=7b0AMxSYo~gxRMghSxL$Ph3mWj?nK;BZH_7>emV~5c?Trzy8 zKbgDwZjg>`dc+L{il{mD9k+!hsW8JP=8zs;!|AM8wYa1ay`2n7X;4`L`ZeNbS}hkJ zra1r%Kw7?;E4-wt?Ypg8_`OK;XBlHZ(W6)gbhR`^Gd5h_LKIm?%xekR!%s&Dpl++B}DX(FsIxz-$EgJ<(W?T2(A23l;Olf&eTexfns`xt05dUJW zOF7eRidpu78=KYRKKsuEg?>R)vjW}bv!Dc_gA!y0FjaN}I5@MI0-Vf$-{e{G6N&?@ zXi|6HQu7L$VOMByQnK{mN8ul2u>6I4pr8z5%_grI;8j z6TLJKJS=(eqx`fX)ZB6fe4x{gEtD&MwXV|ck4-%`{IzD}wa>NfkEWMwzCa>fg zhm2JZGRzTpys3P{BDwRnk=5S~c0X!%v)@9Jgj%Aq^^!T0)RelHcXco|IOK z2IRr5>$z?M28-%O=I3|UnVhNoL_V9fa@1nJG*9r-qD-JF}m>vR7l!GG4}dTkB& z7*rQqC@?Uzf7a!rgTo(XQJ=71V@2zHVt_LE9Bu_Grh*qAuqZYwv4LM3pV=}$PW~Yd zs*PNQFY*SH$qQmw2WKUQna`^zqMMCg#T|+c-d~^1MWueZ z*4+=DCn+~AZ>FlSDuq`-zSMlG@F<-T;(EV#bEK1;gp48$@$rQNYQm$!igqPb8drgo zfX%q;eDV{NHKNz&n|iaK=((15dbomf6r#t(j1HG`NcV#X-*HU~w?%dUl3FQZOkd$h$ya{0I*UnFQF$G%Y{S$_odU8Cn{`>#93w%#_B3B;nv z-J(D}3WzU1<4Dr4O2Fz8#U?bTVfxmM1FnAY@FFEtT|#PuhhKhwI>@TUOcb>uTxmzA z^qHO&ma3bmt@yCZTuCNWJxoKHO!Q23~U46 z2hcz#+6dt(zjxK$CAs^A|ANMRVaIm3{oo>mc;p7d3v6wGCr&wmw|yCloFMjZwcScd z5}wl9q7(?p#MSV!RfvQub`U( z6aUW-tQ)||j0Nx~6`Fj6U-_x}vx@wGW!VHa!uU1X~@a!R!e^!oX%&cWd%>I;WBb{n>RHm zKWr+=UIYO{QHEigTP9sAzG3l`dsM#eqr`Apny$`9TB_r=*@ye0$dh*{9mB9-ue>`8 zW^K0i;Ejys*w)ywL-Bj6`+S|v`GjC{d8WzJH@E6mtaw`D$;9qEwF!+4E!nd%*x90N zxUC4!wc3g25D!jaL;&arZS)503Q_k~%V4uO?}U;v3zfElo6k>*V~kmHrpK}Z*ex77 zXmCJDO{;>Tf}c0NNG6#9kW_;rMDS(jv5@3ndFvxTd!l81Vb5G;pXy;wWU_}#zc-zP zw50X_b+Reu#hvV%W*9!kM63dZr_b?mSb2Y#J#PuVBhWe#-oyaq%7%c2lpLWKaW*b^ z`Kt{Rhg4~jwbM%Z@=l0DV@_>x?=)B}J8Ev=aDQYfhEQC1JNgiHV7*b|8#^Y+9GvBP zW`wW>;p3t}uUc=SdB7aP(mO>|j$w)NZ1gGmMVFZJXtB*^1i>~A1Wbtmj80%(YE!Tt zm@lw042iDgG)rcu9xb*$v~ODrUnnbT9!f#2Qs!4bPYy~N!iEA%73z%H9q=Kxj=41? z7jp+E{nD8Q`3X^${ebiS(GwQO{&xfsx{{dDO%JyluY^ON#8J2h;X zoAT9^e;=sC$`7A8Jw2UmX*sOy+k|@K%C>{F<`XHO=Ua2dk2@?~m&Oy)wl=wzDUDdb zHiY&C;_yb1SvdY1Bj@|Hv5b9JNhjp4BJf|CodSv9iS(~DxiPQ%H+lRU)^0vPW3P@@ z44oC8JZ$lGvHa)sXYWUV!46s%CqPpmA!uFvWBU7ZSNG3J@XsAyqL@-3E8ds0SA_oH z1gv8Fhe zpkmDhE1P2oTB4>L_cq9Ah}l$;!t>Ymad#~XiYv^X)FpkYJp7QT@QhH`Mm1QEK-rXM zFWQD(9aZ>4S}p!dJ&!Jgj^u27>c^0r?9ZMZCS!IiVd0p{pe72 z%L~Q^6kJrsyJv@AZ|=DZM757uj ziIFcAnJ9^ds)pu=^7wjz{%jm&x_zyz1a#-kIi8 z$<*mp2LSkj=PmGXaO$pmnw`A%V*hfQA+j_AczuX@dw5zpi!KpqIo>n4f7rO_NLlE3 zI-L7?(-9J~cjWO>FZgQr*1j3c0$e3AOfET}88{3{+25I1J8r3XnK-^|^jNp$DG?#5 z?Cb4P`ob3)S^suz)u8M3w6Hee=@u^X=AaE2K)>tQyE?dWe|J(b`pM`nq-1FT*d$Cm zU9%G6P<$f-!yD~_wFWxBSi%05ux7UEpUQKRudL`U5g4`6mp8eKNHe`8d6g&@=|N$qa)(O z8_d$#5n~>V>-+M0IAGxm_j0}Q@;P1qxfZz6xg{u6<#u)&lEQPE&7*Yu=3{sU6spd# zUwXqF>`snsUF|thJY0(b?B0KWtJCd~&L-$?*OTUcpnL4)_Pk@GqItbvJ8G z7<%gnC8WMJk@YZSDZuL?&_qbzg{x29`+)qh0(GYpl}(kTUxUP?Qg~3(CzQ@RbPnj^ z+I>B8Vl_mAV5t5O7BHs{%-^O+%AswQ+^0bxRt7coF^H(t0zm&AFun|0zk4&dpOjgK z6}DGgb1{d&r!Q`&JlT5b6l4@3Nv@f3n_bt9Rb}rFX&Fgau0mO`zZv*hyX8}jWvXLs z@|?1CxbNs(iBnkm7=wP^_O$fzN}bMnFwOEl@U7FJdU59IWbV=7&hceL_V!BT40-4Cqr->VUbqU+rWW)IdSF{twtc?%GdpSD&KRGC8dm(ln866 zuc0;!;kD&byrSrF;F8223)#DSUpjg(CN09?iPBB$l03_n#jobmN(!>UW5 z`fRXpCA^l6V@q~f+io`jt&kh?1Dt9G0u@x>p`;_(Q9?lwW0Q`mcz>x*_{=^+f)E>9o{iL zQ8dL%9JHW>PUul4@k^Z8fY?sx!rb4TpFo{Be|JLdPy)ck{u*E1gipl`#o~cD+Aq5a z@i+DfXFMpB6f}FDM*UNmD*;H4DjLWuR^xXjQbeZzlE_2~N8^DA_lN5F1h*!%&flZ{)l}## z(Kzke(T!=C%`d6DK-x{L>Ed(t0Pd^ft4p%jk<|MELCQacCNZ|Owb{LU%eM_vZ`sb7 zP*QvTz_DXxWWx59F;a+GFZuawXyfU|rOm*8$V=>bU}@4d@6)pTmEQgETu#l7d(F=U zVWq?UgR%Ub`=~7ugO(dfl4$!~<`vN-{pd5UIQ+LK2P6q5j~Qb$#`Q9y%&nny(%Vy@ z>vE3JDv`f zl;guVoSBL5raXxHn`{cM#AaQAdH7pIiU(oV@m;1R`+IB;Z~Hzf;|OPL&sQ$K-fm~D z36!Wso6e!Ni#JSaYebae?U7o`2{;|r^%PTWuYDVF!z#D*>H|(m>zhX>?yEh6(aCqY ziQg`%d3!#)sePJ88N&%ZE^l;)gc_mOz}YD?TFeM|c^y12Ryv$u-~3D*)+sxlq55GW zWBWP2oClgtV)0BtmY;;ZVa~%wEJ^NU(Kk~PLyNL_e#NZbW7o`R@pvgm`~ej-f5IvF zdXGMi?LE%DqFMK*4Q@KRWZc_5wWxh(7J2UOLiivcKQz3%?<>cR^Pa_t2gg#_V@;dT zpxcfSDEQ{)2+Y?AqG55f>L@VA@345D#k2YHN*p-3whyQHo&%_yI!m3xP!=_gxuC;5 z-!gPVi8z+-O12~q~(OJKX%X_ANBJ?b6&NX z%RmxV*5D3*Sl~~}XupJYnT%#()8iwKj4R)@^IY_$Kg zZ?Ea|9W!o^*CUs&m%~Gz9WRa^z`NI^x5bmkxu4HR4y+$LUt2}8ZdsmZMxZ@k!BAH+ zJX(dJjJ7&jQbumb9#rF=xQy3>3QA9%ol&F|Ca5QJZc|WXA_>|%)laik+vEZPU#l0M zo-uoRyjA=zxOAU2Bp(_{ACLi0*tIweH}NpdACPUy-Yp-c`x8_o%cajTbCpDyDR#IW z1d0E;I?C=8n$}{gbrDp3S4)fn<~(!!{4=%>`a-XucxFtssE3@;+bz2=AE0B}l#@iA zKR$6E%r{LOI_VTwX%J+-mAqzlumF=_xo*viLK6_coG;MQn$W93)q-H+opiB z#KXp~9K*Q&?BvW@%uzv|tS))(qdn7Tl0LK&cC^~U1=u`B#QS-~u5C3Okh>qNl=)V- zg45%!WH?VDR_cAM;gGyj>c>S0vxufYPMeO%uKE2T!diOtk!VZdS{?ykFOBF8y{Ow| zcY=UxskDY38>`A(z%O@ma6hKh9i3^2L|y5n9#v>d&@j#tBy*h0L2-FVIF_xPl$GOV)Dh=-Yv@Gz`(_>6a}36+IOCBo5!TNb z?{${dqe4nJ<}!fIYS)CVFP59GHyN02dPuT3l=VYkZV%L8WY~09@dJL`iAy` zx`Xqoa%t36IEw4~3*SC}4=tnmV*11L!Lg11SK3WQ%8w-Sn06poa4CCZ-!d2>9clZq zJK*e7W-aq3!IyyvErNBoNEV}z^UaSdkR`iBn8VE9Ck1RR)g4O|c{`{dE}rMHjaVeR z#5PefILZ|9QT3}SC9e^_*5Yg@Iowq;e1D+tsREU;YY45G^W-{3u~&>+YD21Qs%d$2QDr;Gkc^} zhmNg%X_AVrOhws7Z9>^^YoiC^vJBB5s(8igcS{j9D}8N}3s2Tn*V<&7ojZ&>ig{LK zb)EFB$JpYjMu=J{U!{3uITSxk@rtqU6(U;LS~jE=3Y8SyW|FTsuR?oSx9&tJ#Nv#3 z+<8<~#~&-l4{B?3nyf0h9Bx-tQncB}2c0za-eHKOb`TS`Xg!TObg#kS(E*3cKfTeY)__Mmo z^!HyzH9E$O;~B3?)33xL>Ca5{g|Iy(7-;m%n84E8=Bj)-M{?`|$_oj|vvX{dFKcMI zY@7{vkuWIlIZ|%Y+9s<`HNAbX1)LZd{}&AC=bt4q2ne=D|QSM<%!5p&1aZRgObXUtQj1^X4Qzd z_wMs}RN23y$74eN&Tl#ideXVsc{cdG{;mMR4n_6TRr3_*&kXR#O4@02-^Xu`kk>m? z%#DMOU8^I$fj-Z9xxj?AL@Y=;VRKr(x}Z8NDwli=&dl`>&ykplArtA$eKkBRxEyO* zB-ML`1soRiJ->RUQ#wjeGkU5Y-x=<40N?Wpz7gS}3-9pS47IfG5^PbyaIvx47e78Y zynHR0+HpsS@|yWPg!ps%_8Y`KRRw3_`tl02=2((ORd#GPglmSK-D#ZMgO*C0es;&J z-sz)+Gzls$lTab@7~8R{tma9!#-1_q*->{tOg?b{=e%j^ZAecQ>S0m@_JJinqEStr zPfiWysda}T@#Q)7^VOUM0cO{aJL?#=l z)5vEiij&7v&zQ$!+8ag^bpD-Nptw)=*4k*6pgaI;mcXV&7_zI5=a)_N=J4r!J?<|k zGdK7yg~O|dPvc(74iGhj$zL;~ojd(_a;GjJ>fyTL%;CGzAQknu?xf`%Of0K!ak@Uz z%b<5*&n#Qy^W6Hcr5CiQY|D>uxI(liedqVvq=sBd)9HkTra2$~2;cRScLdQLa+Q#U zG~z3P4hWlVdl0cROypw#CXI7b%@1S^vG5;ulwUTbsq=ZfcpZzKK{)=0D7ieA!g`GQ zn}GqC?)$Yto1ZiHKsf@qs5dc+1I%>90SA7V6FJZ;(E3As4NE_e)j%*)*b;#1upd(` z8$*6-ULE^ID7h`hf-Xdg#V$MWole@~0RHIJIXs*0f-hnmSq*Nk{8s2|hZVx;VHvg@Zk^q9`HCilk8}&xxj48IZOQ?fkbb#g zqg=B@eHOye{!O}UfuVcBJL)5YN!aS+YwVj3w-H}ER**)I%YqefRRExH93&smhWf1sxX6sVBpx+!+rrSNtTF%RXvtXSEd0L^&4ip_p zb(slJu9f8)8Y-1?9tHCRk<_7y6&aqlHS$#r-?Fi(W1ZOSh_-Wncq@=PesZMON-hE zbmNx}B-F~78j&eFJ2gsv+aTGT5xZI$^71m%0SK!wsUg;qrgl_6Ue_d-EbAd4O zNJ}sOGo$y@#K^JTjo&t1}3Z z2=ovLF%0jD=9zQCiK*Z7w7`|hxmRci9sQD2loI9l^6w`T5c#1iSwKz-ZIsX_N)!1B zL=_N8;@&)Rnw{2FZiOEEFCHk$zj+k*WO2cFN-mVqYmJ?chFMtYOW|limJ+}H6jQ%u z|<1iQfGuX!b8PEQHPp8e|=(mXNBXviUU688sD5iH`>~L7FA7Q zi5e|$w9p7A(>+VSFt>bo!~hXLW3}t-f(7mof>{i5H2_}*r(MfOq)7R1wvXZe#m49I z|H(!>>h8~TL9-OsaQLaD##$GOa_dvlk<~Bf8*K2gL(Ypf{&2s}hV(fp(R-aKP!jFI zOB(Pi-Ur`6VG(J$&IxBRDM+CP7G!K;Dkq$4+6HLu)pdagPvA>G3M%s|qbmYQ8YK~b*Bt|}Ijnm#m;u7#a&J3N*bONm}aX_jRV3u~DwiC*#vc~?i1=Q1cmbrJ&Q zr9^|sNr?=Y{$&n=dOPBAgf);U4dl&T0qdbMrH^eYy~- zXo(4;-Wxhnw4n@Z1>Vzy)J)$|Ar_|7J#sa|#jNWY-Dy^LktO%#N@!?^1wp#Ag#y#S zGrJd&r~tH9To;r5iM1$7UlQWYJjA*9+89+ylLJOohp$$Q`-CbnYK-L!--0mtKldsY zL>xq#IH?nu8k{6j=+G!4InEq5jzrvwqS+!egcB@>dCadPjtH{%JiW7FLqEKBP1P8s zYdBz=%-Dts&fFPcfMCRRsp8z3FbOM}YIBZXi_t={zWOJC@x@}&f}4mkN*kiprB>JC zg-^PYH!!2c3h0n~9mxDcBSl5Ju1fJzp6qYmD?-10_l0Q7JNlfMv7HmTaufdPTWSmh z3A(V=`mlWq2p#$yJfv*ajG5MS5;4|1Jk70e_79Z@(!W)zku-u-4#56a2?bu4YBJLH z)0_3cOaj*q!Cwa4Yc_`_;gE3t&l4VX&9(?EbBP2vJdXc5l6ku}&|=x3AmjSc&VDJYt9J$W0AX z9kRo0s%Pc!BCgBVZKeDf-FWKmqm^Z)-Sm~t)DqE)&9+00a#~mnF8T?;^mFQ2fUKrW z4+i*Gm+N<*QS#SbP8ZSjRrxQ9InKou9gS+jO{cb@PFAT?@{wzqZeW%Nxx?%*)_&=J zh}W?-H^emA&CnjE>9)!o`?{BeXUSAfH7%RjutpllTLNs?I>=lwvMq06paC@|@LDdZ z#t)j=8BcuL%>)Ha{~5&lKZBB{_L*)DE(iI-oG}i6Q>9iS+ny_AVoux-@&2*T#_ipBJ8j_GszA=r?RTsYF*!NH$lITO}D_>NH)v+~smZ;szijLbN`n^K`c-Y$LVSMWl z>C6dM!IRYwL9=pQXPjes9BcYJv+0%BZC_dQw8$-~m%J4}3Ja0wr@9T2Nu zvhh7nwaWElp8+2uIQoEpXl!r?veas1mhb>Nq;wE#*=q8)gKK;2=W?m9_~lBYM3<%SYLax;aa2libZ&W6)N-LC8zZ>el+H z7V1WG!5F?}!vZI{*UJuru`iga4QP<2-MB+$$j8`+G4L_$H?`a!)EFRYSh?T3@5#2! zMdW1TKd4>JCP35z+<#Jkqr!|p`9G*Hx(DGq!*Yx^z1!Y*8N(k{mG@!T&t)?*`n&xi z(+=otrtCNt!Hl4A57k1Es~vRECO6x$ABg8REt#nu6z$sU!}z_+E_&DEHIMWc`K`++ zh+GZ!5Aqf^PRt1A|ATziSa$m%I%R9!=`ZqrW7!8)t$PHm78R^-{hzb<)leoiO9umU`?y33)QGT{VUf^VY^V71BGpgaPo#`@YtX` zQ>;Jyjd<<67a1DWF&Gu*@+70kaZ{57K9uX@217roHMI?J@1t7QcX{^Huxu;I87N!J z@&f{zPv6uu-WzN>gf9Y(Fs5X6Ul7RCVe+l8jZ(|*zL2Faf~Qk|T^9qM+EkcA!ChZ> zxJ8R`Dl9$^OO)_irJJo|D$Ioz!!J*(Pw^iK@y-OL~EFRIkz#egq4 zXEp^8{9K+;EITYT%Ng}4-S0$x!F!KW!L$6Rbb>%}ZuM-hj8CD$NKA50l(VWcrMzfU zF6oml?5A{54$0ntw`6|Cepk=y_NB_dJ?h>Sj}83;?8<^PaIje5Ehuh~GSN}FC zr+3s<6!xddkfh%xc@ck`?6Uj+Gs&x9(=*d?z*z+ZnZzu%dgHgvZY3fvz{SQFh|c(E zPVGntdZSz)wzj{!a&idXx=zCcc`cRHh$Vxqtt-PEvcPcA;yHvjertAB`C-fGqtk;s z(E6(iAB04o&MexT-XxzM93&iq*RmPf3xelz>rkK@8UPCpx;$Mths@t|&axjS*pFn! zG7!2Ym=cE{wCmW03?&2;_X`F82-Qj|n@Gx1O2aEwbz>G12Qg_1$H3ZU%bg9I-I~%A zhNBG7KxT31h_SeU=zOBx2{vJAFcu_n<{s0Vtc7)vhy1-vLXG-!&OwHP??8jlI)9_N zi&equhFttcV{y2JnHuKMTAo-PL@aG7|AO0UcV6!fz6ld^E>8CA@YaNF=htFm+DFtr zL^L|IPOv!0UPLrD(oQg3$}rsT&^OR5v|M{XSq=R>kanPNTMV)fr*QfW7pV+1Us$RiVMeVG?ok$HxLE8*>aAp|{mQlnbctho5 zgxQasU{`qki1I8MuvcW3O_US=78fP+H{wgKWsAUG-X?+a`_ z=mOIW1ZR|SeF+CheV!f0We$rz}PHAcff?sJaoI|*Uc;c}1 zx|L!Y(w@3yOv9QgE_Z;EcTx^Y-U%G+sK0G1)PE+=E=T{beeGO0@`Be59sml5wcGmn)g)>iyIzj0XhbBR zZX=mn&63;9a$YZ79`xlfyn}kJ>3r4MEx{?+&&;o`ZgM^y0v8=9=K?gTNQdh_&7xmu zSZPazlx}Kcfr1MK{rKmh(F|*jCD!ZN4qZ6S(=C0soxKRlh?k*f=vx%sB~j?1XL-v* z8BY|`;p7{5Mo)HJ^L#nnwGzu6z51VZKLvb)xI(1vKJ@BWlAW9ZbC8>?iI65e2rfvgr|v=f6^uqT6=dDe_RBw~b#^(dAP5G~?0BV`Z8pufiyF=Ez{hWLd zzw!Ync|i~GNQlNjh=PFBob%TB$r`8iY}Otee9Y#)XGRgYWo*SoHH<3`uyu^9<9zhc zhaJ|QINW<%;~Dv5Cib4&jO20-5sgF$V%%S(H-A#$EUE$!K}mp|oJpI(K};daqoBRQ z#KUTwsqxev74A7w`S|oKIg+$-sKsS(lxlRvWU;n#cnG7mQ$l%Q3D!z=up~u+b|q04 z!E^P}i=%XGcY0;h^}^XNEF$%rsC%ZywJKx!d7Qvo?+CdYlmov9=)JOI2lDw~b`gIu zG31eokl<_F8e;54Mg7nEE2lded$&OkO33 z$qK6ErguS#O%A;M)UaQ;_s?bKb;F?s2V+|ZB}}qI@X^f!{H0KUB@|#;YR5kx%k3rS zh}wWIO!*pHHB(Y@&oW$<_$Hg94@yQPptsQ5x=JJDi1}p|<#Zd+2E|H(<%)$1aopc^ zsyN&e>zV?jLWxl-f52xgnpWg2N>B-ZKvUm6b`Psb;&A*d_ILm*g#Cb4e7!z~xq_F= zp3}Vv7*AXxI4lv*DGL_9CM>PNRW3taSXTeV;qs{BLNTStL9u0>HRV>b9&)s24c&7o zv1)rGv0A$Qo-P0ZNW^mAy&$x%aGo&e60T zk_~xt13`bEho6A}ELId5CrZ8MAB^{|aN*wS3Lq(usla}wzdbF_nUaMT`GBr|e(c#- z6NSm@()aXR@G~0q%{remNN~Wv1qbAmL5ut;xbL^%^WTE2365P{*&Z~HZM(goMbt^O z819ou#%wD{#^nD3cJHf63XJ(1Sh@YPSv2m{Fc|jp^$k$1xO0}R|hx0g;YgY)hOF(qh`NN$T2 zwW0<#QD_mLuB}A68lGuTs~RHk2cNPLOD@QDUD>wf(RIQ40N{I+x9djg5K-y&lGxUf zC&0hAKc&Q0S!mUHirD`c4CR%iPApV-&x=Mt&&ffw^G%g-Z4 z0Xf5e7xRD3jcdV!$*>OX_$~@4zqtUHu5D07*`Y-M9`~1^qcHU95Ba#KyIOw1T^G4& z{f6uW3^U)67hwdnx8Dtl@WBd`uvh7ii3RE}MVQk$hNfX=e9;fEh^=B3Es@kPK)_Q% zE!E4vyKX|AnJD3c%QvG12z~5bq^uTe;vCW6B(ypT8;8`uwgozXRf6w-IhvhS(10ja z?$Ll3TOYeSmJq(|_HF^f+XZYx^|4KlQlTl5c1Dn{JN@c4XJIGB+k`=C*-&9M2V9Yp zZi@SH8pphfUKA&;AhJeR$V2lQ3f8xSjr5IZU=p5T651MF4YrG96*8f zUEoZsIe^~y4YLN|UhMkEL-V2t%g1lK=WMs0Kd?iMz(>2G zM+3|zK=_QU{ z-g4)!%v5yfvN(lIn*5$X?IHn zS^1X&y};Q)B4-G{ZFfYQkq}Hveq0{7KF7V2SrXpOM0PLm5yzx5u#t$Wcti)nb?US~ z=?^*oqAxME6x@aenLpTR1$0D!cN`3H{&zSXxoE!YEc2 zQCkpJCO$DqnvyBcq3HCitt);^t%zGLxyWrZ7rUJPebu&@T(ReQYSEOk3cjy%dLDh$ zi}HDdq7&Cv6fg~o%;#ji)rFTUs=I8^wqs+YLD;hyvBHQYsF!VRiUC&vEK>R5JP*dR zM4{wcyG7Rd*GSJ}Nd2RPzI_wv8YZ4$NW2tB`@o;gc6qOq$VFn5N}VQ{Z*Yo%%;(P` z7!Xu-m%NYIohqURRxQyE&`WL5;GMCBHC!^Pr26a8$sW5!o6GTdsqjdQOL6QRr4X=~ zcsRZNP|{Sy#T=+t5Ddm=04i!}`N{(MNnPFuwhlE|M>Y-SWHo#H53TyuDN$U;#=EBc zI*?IuQ#295EKW5i&h;zq#O~eaRTvBjmgYml#e$kJXMhitlTez}p!G6oEMK`%B`nEm zay%gH?4gsnb!bwtGE!RyR(r+WmWlBeAJ5`V(!?C&Cs)b3zOe!G(!@AED{CElR;B;& z`17ncyCs0rOd-^+o}DE%%JP@ga-|-XCiTpC_=}xKCDP_Wvi3W6hKZZ%ad}ac#H9Vl zISZI3oibcIZ7>E*yd>?k=}KFyOLo^TrZweS=Sq1}*RUj)#H6U_i&2Xl)KS|4*-Clx zu7kvk3=HO!V{>z4yj1Np#YIt5^X%g_=Qxy(lZN`>Ll2G%Jtj-@Bc$SGjMNe1?JWPW zK2i=m@Mq>3W2jv0puSOZZjj5qACtzvcL7ahzv4rt+3<9vm5_=BkcM@Zol};$h+tK3 zQu@CCO~neL!i)S(#TqeWvRyaBV+yj#p6bC$;%RF#+OF|vD4U&xEg*5F{jO7tvyRmSMuhbsCA^q{y)GBbiri`FkqOVm5}Wu3qHj1m$LI%R}un(O(!0$FvL$ z!>6{B)uZeLUqR)Oso~o{C=Qy~Prox>02rH?g9-^iO+NMz_EKZF5w~?gT^uENu&tkH z*Dx`^tgKun%^Vru_UR8xB5Pm=S0tYqhuS9pXGI}I9K3IX(q3SyK$&g+AXZr^P-%M_ zy$(*`$@YYX`42`<9UVv*YR%#VuCLlUtaq7w9UL$q#)Ks3tD#6|MgC*Wu%xis`X7?i z!q^c;!QW~ortR~MvV?QXE{eCB6a|Y$cyy|ATgm`4wzr@A*S~dW&qpRX^CXH11{)kM zb*M;A>+frgv{MHKLC5JxqK6LWO57aUW(<)&Vo$1bzxHvnBc}F~%n~$B*kgsmmlNQX z%s2(Pu~5f;MUDOH{a!Z!9tsnV8cja7xzy4NyoAEfUbHXcslb>PSm7cb9ABMoRSE_u zlU2^cRn80M4uismqeoLGEhY8swLuGjzSY90)L)=hhhqesP7MK?6ib!A9WfzeZ~JV* z(O*N-b8dB10F=oh@qEea&Kg`xV>|MY)M;%Ms7pna#c)fvAG>)lrZw!up?z_Xgt#G1 zH?6aj^9oB;@#%XB=+V`Gz^Z@hmQ~!!?O)DeCJdu?Ymx|FM>fwD&qJjUgAPDQ7lmdy zr_RiB0*Rnk$MXQU6oJ0dJPtyjiW2^&48FM^m@CebD~^~&@CbtqVPlKBT$0GDHM)d? z?Zl(r9Tu1iAqH)b8-N|>vZKFnq#K-e2HSjJwFr;>!8NBO55oJHPb}C_G#IBD^A4GQ zd3rFT?zngohvr`@5K;eB5!`!4q*$S%S#9l76>zA;hpeC05{`oX>ar|&K_>o8kM(Xj z2x&b1+x(KyJ{e1SMy#ay85&${qJsS{1I8XnUk8k>cuL0ZK7`Z^O?3}h$a%rR{Fv7~ z6#LXZP4=pn+K;Q!Pf;Y)fj_jqzJYaNeeDI?jS|ljy|EbmVQ`c|22X&-U5ZIiYKLo$ zN;C0&8!iMX_xcT&sTD!bs8WT>^|W3CpgxqboT`hX2Lk#XNsi3k2yLNg{+|O#w`ZO4;D2F;>00QBiw91 zvl7fKBUb8wfK>ki!u}1U_b(v3-$3)elU+cWyjRObIJ(G1%78L4q*tQ+6xQWQ%v>3Y_2E{mI1a*_gpv$e9KnSgx+zQi1QZvuF$Z$+Hi=IL zz2%C_PQ)B3jeso3xa*(dl0#m0=%2z<=j%Vh96~&}^-r+(z8&?RqpAcE26W?4M@5J)FHgz8<@EyyVPG zY#3ZV-JEvR)S#Z7<=ldf_HTBr2?;V8;dJzLRT4L6Y#hwJ0#Gwj+%lAMG*KtqjCj^Y z+@_6rd7pchP7Xe{tx*jhMBJQ3Y`m1Ur63#GutbDhy}7^y%3j`C`&jMWMswFpxHw(T zSv=J*)A-tp(DW<=J-lAHt*%_^jC}NkYHodt?H*DrfWE$O%?7@1)_ZFcK7~CG%x(T> zKwl4Gqt3GSTla#JH@-KM3Fm~7oS=-5mXv)@-_|a-wS8x&fsC6|s~gV~o|VP;1f@f1 zdJ^8NS|g*7?A6?mwV|c&zSYQ=>#utk?^$L>1ZwOZdAIT68p9@7-0jH#SKc%_=RQft z>9&VJ&EvHm01u#MX;IU<>ZSG7$%;V-Msk%uO67Le)tcvO$Lb4!`NNz@?2$$XWp?1v@1-4>j;iV(< zX2WPqqlYDXYfE5ys_dcq`umm1%Y(O5+w1KXN&Q_K-!&WC!z-}v<#yoLYX99C`-a0K z#ga;xzn11!7tW*oUAwzBk-gc4Rge5)v)R2`#Y_bj=k&73+eJ;w=SdvElfo;rVS`&7 zPZ}{D($P-a-5B}pPAe`IE~CgxqsM){_j9e1VrP$twi3$g(}+=X#T2*B`qq|GNl73{ zGD`)CW=zb)&C}D)L;ua(k>kT#cJi_BS#r$M-WvhQ!CTo-$kdvruXnB-tk4;8fe3MO z&CmQy{d&W~foJE(iotL*0zkzv6A>zwJPFF{Tf@dqTfw-z5EJgtY9F4;CT^<6 z16BfDzzCJ~2!*w!oCGu8#+AM zz4^(!56x42l>Tsj>p0^!ClQeGTDxVhdaGwT;Rt6d#Zsdbv0<$Rh%(^?D(Gx(Y_(L3 z=z0~zzf=wPv&=+J@-o%4ohAP`a?)O7$2!1 z`^>+WEZ7?X^1kP_GCCkv8$oQ~Bfe=1S8p0l3k~(fd8hP8s{uyT>Jm^8W(Fb?qZ|ao zYD_4Jyt8TEF%ayy$A{IUw`_*4(_=F?8{Hr5YTGx@@XTbKl(bl$YM3+f9J09H6HD8# z8bvx(F`2gU<>&>SS)ihZNsL39FDz*HCLYx@8i!l>;IPUxC?n!gYS%$mjxlY#>ArTa zX2G}Ix1Op@qd+tx!YV!7!7TJI%=g`p&kAOLAVIl0``(l&_lKRd(hv}zX!Qb*?|)lm;Od+{0;vH z%0CDE6XkzbfydPX?U0(k3c)KsYY$EcW7PtN5*P#mzJ@QS^FbvSJ-_}rUoGN4=QEsm;qo0EJ z$@cZApKD|jI>CV6^S(?XOf3^PkR!)TSei34^v21%$k)aV4^AU@vVM92glt|FF*6lY zJ4K};0HjEpE#tSt=hKk={jBl+JIqJ|SrPXM;HE3D>*FbZoA=wH&9@_)Tdt~+Js!jo zw+U3-*L(K|xDzL@pD*iK-PnRz9h*--nX6%&JIunftBH|z+eBRUj**EY=eJh&4Hbo0 z&9=d|$bKwyK-bcOnYC3RY`7<;|S-Mo)Xb zF>mvJ;cM%03pN$0TAVPr-M$$Zi0n-`Q2}N&Mh&8>(t@qz%BlOk{Y$ivm6Rw1g~;3u zWvwhpk5`dbG)_@Dwgt<-T***mzV``fuoTX8uKg^?BOE?Q_{*Je4q~AOro0Bd6u9Nj z&rVXhZevqHN~{&=UWq=q*B!Wgh8Ef-_E-bA>+>y23+}D`!<8iTAY8UOg?m1FUqUy9 zyRC4*Lhu){9m)Sk*gHU1wr$rSKc!IO0WdwG+!m>|F$;c0_~) z0X-l?CAMO!>^TfhW%@-iF{ToxTg2&BU0{JpEeuWWsiCxM$Zh38-u>WOfd4c< z>+SuJC&$x3VW9UgiSMIf9Nx`&!{_DgEl!L->)7`}`+ezfvhl51K%WCowvyqked7lw zBObjyqQmntTSlzfU9ZBJ$6kl8_e=X$u5m(%(~yXLYGMN)g?#~mct*|9=?wR&`bJIe z+`}wp3-}ua?1fRY0=Ht%6k!{;BI{*+|H1ujtBj*tI5MUL6Xw0C`z+#V_@$l^C*4)+ zbV;SNH@>q&4SSBwti7ollnN57{1@FFH_o;3nI$WOoP|Esr-7Om3x+qUKoxzKLV6R)-LKV z-qRX$yCNIhuJ%3rSc4DW&3YLvnvA%hU)&lChP>i(%)d>3v2asZq*qKUIJ{ZEM^Fur zpTNCXqr~u($a(U|`%%CNniqxZ_UcnwdIc~y3EQc-g<37&Lr7AmRzE*3`1y0znCbuJe?7ay(P z)ltB?UC)nEnmU^&-AossLOqr`x++iJUvLi1dlkz#if7GvTdXe(cvhMx7?&#`CwB$w zK1}ZFx09oG7|+j9pbzd<@B@|P3~n$9zjnB>aXWrEeGfQi?X`EGXcd^XRY}o62-|RU zc`7-y9q+tX9>e$OPLppG(f6#ljPW3xlJQXS)#-T7kyPcJA%AYw!v}8=X}&n3*9c zGG$1Kp~9uU5K$cYr$2%sg_@ZmiHNr%Ki?3^G?F6$G>?wh=0k9Nex?)A}Pzd zYy43Tf$7!gu4|^+fY^hrS?$b{tdU^!A~7N|5*Jyw3v$(#)mV3@aB8Xn9m<*)qg)nA^;qUV3xU_3iH+G%t#(z6^C1*^8a>=$?`+W_eH&qjnCa zlbxFEDN_Qcr(P=4zS9`RG}n^iER0Hi-8pobZRZSS8@|V0oac#mx8KXo6Phjcq|!>u z5XG)1z1gxT8Y*|iL4>Sd-(12%kCvz*vaS!Ebv!UH;^iAgXRuATvV9J+NQL+*bX0AE z*N!W#PO?jtYEo8su)iN8ieA5!F3wVaGc~&E{bA-iy;iJ#gw}PYxt^I##{49}n-&&#o5&u+j`$F-V)m$4E;b3W?bG4(mpzm6QlQ za`zo^jHGzktIymC0lv?cvBpQ+?(1(bz?TUT#$^)+*|?*OUamHLTuPa2A|FZxp&g|5 zyAIfR`E(Gn5kpR%5jhQ4VAir~zV>+aa@WDngLfzI2pUn+_Z_t*${_U9xL@DxF?wF* z%&UXhGw_lFLAMyYJbt zj?v+Be_FQkAhaj-sTYq=h;Xu@<#k0x+~s66meRjzgyg$!`#DH-MhJ$!d%U?JHBkH0 z=q5HzJ>~Ewl$A82uIJ$f&LUsS>k}Qybf_diMg&I7u2}gBfvzaU(Z+wEl^JTSbgi1l zb%-kxrn+-{Wp7K94-V``&dL`x)LSLtq!{;RX4&Q28m;$cQQr;xsSeX(7t;?N4o8Q* z9Yqm!+!nMh(5Z6rEnLHTJGjA~bN0Gezyq%gw6sz+PU8l98eFlUwz3vwgW!IalI$CD zZe=wHxNUKJb2@ro?Z^fZVaZLsif#Ao+Y;WuZ{a$RTNkAoe>KEz3HAnsYmE_V=X^g| z@kI+ErKodvk=WnS5j*ME&tE|e|GY0Q4e`vx18DAIWZ7H1H2Dm+c`I2lyY1hNY?TYr3*RN z$ z81frY`e^s~b?@2bDbt$c%@MY@71*Bk0P?-jiYcXSE|(WRE~_nW?fj;yhTLmSXq&cR zwFSvOl-OR}gnBgKo7_63y9W@I4iNFR*PUs#d|i>O2D|~Cx7OiA@d#xuaYdyWB>{`k z5T(r`CG8%4UJt6i7OH-RPpTz8cRubci(JpyAaBzm?+_l7D?;;i2{0BtsK|;=m27{` z(<)V?Lz=hEgCStOi-vr=dgfvhr63@};xHxuh3q-BZMC>fyHBZE3NgE~nHQnjS}9z)bK z6_|P+HtJqB>7b#r0j)jkKt*PThx>gN{W`AA*5BgA1;J)K{AbHK?A zld;N`>4@RHd}pxp{#md6o{6yY`*+%iAIB!4IW*GZXd1L$_O*J{)x?=A-Ivc~{qeWs zA^SXTylMiC5n`(?qYGuxJ3={B`H3+ z7xL$B$tyWT*A|Q-Zj>UGybawBdJte~2+L)Y^gi(~c0Zr4shN~%p0ZSoM5}Dq<$>{_ zKIr9*&=iN@LLU*&30?a~TZ&bPfq+CmW5q#j+xZ` zyJz}=1nmXJ-NK+~WFpN)z|hFWkV(e%LlX-_lhMpx&O70t7zn5$Gj)C;k<{y<)|XZ4 zS%vp!H@a(skGfYfkciG7poy>OPa6h9A&~&#*E`XltA+#h&%?nnKe0uMaGGMeP7q$p zhyQm-B;bFCyj-^cgmk<5Dd&Y_LM*&9KSiW=UL1|h6>rMl9H0vTFDgywr)NGNdu)K-?+-&lSX1{2K3 z$XucdYXCX23xxu5{w-9?E4p_V3f1`fMHp-}80uG4&(ySI!m8Oxo8)hlCY@r>3Z#H` z;DM2#B_LriDCG45XvaCMZCdr~Of?)5B-R3#jYS%!`#L))WLHy|hY+Z%jKTB)`ad4f z`I^oHd#@$Rhd=?r&GaLwC=79BizY?YRC`?<$GTIB0)bfen6NSs9N9*#KwlaI6rm@$PbgN`=1_(uyoabT>hQ7=-! z7Zohl_7Lo7q=1n)I3B|v+KUxP!2Si;SjHDtc;fn8?SBT$_y0U#^7tgb#_pY-p6>y5 z-}J3FKvuw|@A9?t?1m(O77Vg61r7->|HaoZ{)6_wy6=rt#rM5E72IjSC_Wrw5;qA3 zelja50(DX+>G!kXB*7riNeD0v-;beyA^*GqWWo5pO$yFD zY~9Ulz3ps0-I9}GAu>?q4|}%;0X&313^GV@(NUPxlEfQ#bI2Wr3A)5xei=9g#`t&EV zr`79B6^*Mj8Yz#rr?i9p5I=j7KlOd3*?PyD>!;cJ=CMR}x;XwpQ(I&AH0zD{k{*yrmy9_OCsv`G3$Tw5kMX$8mr15Ly)(e z(`F=X+^4`v+y0V%F7Ec#in@K>f8soNno@`u#mvA+%{altF*)1xVZ!mSt=mHgJ>e(*AEZ8v<4QGguBz*Jk)Jk!83y1-$H2ufVzluBk- z*R2$yE^p}aZ((b@y=y-JS1^s%ZKK5gQ`Q=Q=@P;7aQ8>G3_{&5R-GS?g1Jxx-L;y% zqHkY!uzT&RmLlypOR63+sQDTp)G(CUt+@nesz@d4^!G+{!QJ_(txc zO!!oRmHbkyFp|6V^*s?|{|SIMe3_Pq62r(sPscjL$Tm9PCY&(n<0k9z4sb0!t0yDt z_I2~;YfYV}-C(PcpORTr&qv~7kD0!J7_foI`^JFCgkMXB3V09}s8Xv&3A6?|{FKP&_u;A!wSRI@*Re)6 zsiX{MHpUh@DyGz`B(O#dgD*aiD!#Foz-;1g~b0sXcJc*hehmX79TDBUpxU z($K<8O_-%f(?sbT9dB+x$~p0lkFji`tS-ak;pR_3pc$c-5NKHBnNGdh;#x!)g<8)n z;pRv)M43-6A($rqUn+;87pC>oh1r5E%}?*wfF<382N!r3k!Gfm(}*%xK;cYr3b7Rp zlPyOz3^od?>);mXys<@D|6sg!3`Q~c6QDPSSei4+5@!mrHMzW80u}QR@1NmYg`1y* z%OK5M07J0AFThbTNwXc&D%>chQifRqL=^so@h=eIK% zIUjlfj<%b?e6xt<0%_(dg!&IHcLqOve^p8{ydF~cg=st|K#uXHU$B%o6Bt}P!n`-# z(w+J%fX|=!5NyPmMj>m(;?ZTjW6$JoAk)N|5eI06*w}xIasI!GvD9GuZPijmospq0 zq)fs3TU(p=LX)78`xdiOJFh>F)+PtEXGU8G`#blmzX=O<3xZy)Y#J@Y_NGVE&W}az z25-$8U%9Tw_xGs-fvju9CQ~OV2dfOG&kg&Q@!V+nvBd|4^N?u+{;TJVp@9phmB_qu zc=KUgdJ!XK=Z4S*PW-TH3rC!tAaw7IN+ne^gZoVpksEG7K{ya8LT#cd&)2%WHhe;A z@2j;Hug{O2n3=DlEnnh6@{Vc1{f=6a-S&hWVKFns9bw(L6uvpCgsXTB9M}?)VUo2W z=Lek7u;AVJw%U>jxd8`@pV^;bIik$HW!Odse}AoKQ20p=&7a42F~{?FggS zY&9MrDeBKY3wa88;sWDP)sZai-&jnEqaXI}IXjYz*H^To-iX5K86TtEU-F zspv=I*yeYKz{(YMhu~m!n2nIL`$Ar96kqNYioIc1H|b% z3eb}qFHvIFej5H+*>MSDKmNkZib!mJ>CH z9`51HW-Y?mk!&RI<)U2hMH;oH5^cz)LN))OHi*;F*P%BzUK;;Ftq#!q7wQO3O7X>C zs12bB1B;n_k2x4N+E@_b?087lQq}wA>U)anwEmi)4WY%#fn00M#Rx%k9pV{~;q2K^ z^yoIjD3dxuv|S9V;qchQIN|Kt{wr}xoI2G?)R2J{`aEYyHdr(P?C7eU^s8(F|KX}+ zF;-CB1lj;$3@;T!=u~SW2~Mo#90MW-5QD5uvl^Zv+z_blu2+qW%koE2Gf)*_k$tOX zk@7fOEj?#(3P|+T=O=5U*o{RX0KsE044+JvXE1D3rJ0N?(-3%uaYCgHh3-{p{{cP1veQvqF25~_$RT##0GgqXk9L-D&V;t9@tKWxSy{`uM@K=68d})zz z(Hj}8WT@fzM)$boGp3%B>QaHLQz4v7$6DAVCZl@3WOR7Nf$O+70ml@j1onZ2>)@asJA zqGg;3c~+wGRrTP|U6fOLRpBO+t(6)m#n7SYV3ftQqVgkOtEBvC%x^`+(a}$^$_o=z znWHTZGv>Yw*ycz6nZIb%*F+{%#3H?@@*_81q6r)BJ)NT@{6Q>G^r#mIwD zRFx)j(bUN5sU*?O=mTjk=FH$L(+3c-)l}0>@*~BSM?A4Yo49|1H3iTBW&*cL&77Do z3h3004M8;Kj78L3n13?0zAH7xKxJ@U)oH1eVijg86&1;mf1(yc{}Yu6A(WhOxt<~& zUiDuV=+*-)NPxxoW5G;UWYP=K<9gIyxfgP>mxj_v_HtJw4TRZ_nrZ{(&)ULHv4yYb zVPQWX9k3TYF#A&Ab-pU9(DJu8}47KxT|CWzjYws7Q- z1rg*lL2{-6pbV%5PfMA304OIFO8gJXBq0B!%#}W8ZmU0%X~>}{786INfX>ZtQSd9$ zY>|gmG}hRJn?ZswI}?Ml`OR*sUgKkxyqw1GP`O*R*;5E*a)l4e0@C?flHS@mTImRU z;fT<}0lw_wNGRqD=X%IN@urfFpgo2?nUZ>cMq!i@#ypPX)|Nr>ZF>kN5*p{IP3^}4 zwSU>S+iAqlJ7-`Ge3@}Kb@(Z1kQ>yiyc9Iu1t4G|TtWdEWg6NumbZ*^yvb=-Bx|DO zWXk0j%AtHV@8n8V(#1|yXS0B3vqoxIHpVo5t#yCPUQ>QhBs-pj_gTpeis+p5_Xdby zTqw?0J{l-aVZqCWAMpDSdkJ-D_@YILoYQtG_E!@E(lk4cNlu5K$}98u400R z9wOn*Ml~h5;vFX+(hr9oLV4{UcR%!$hm*l4pCMgeZ+~8^k*j?dyi_IF8|=AjE?}m;Kmt8YF`I_2LhX68pt-K#CmCo`r#N z|MuYc=e*llXC3n)yyu9Hl=>Lty|)$y5PK z;)r=g2aZ57B)OiK zFNsnd+b7z)gNNpRLib+U_@a4}?mMb#I#JP93l0VZt6Ur^K=h_bfv4!Gc7vE8r8$af zrzJRweou>c6wORabR33eL2G2~ZilVUoI7F(KBg@QLa@qSVfpabGa~cBTgtR%qOJ|coFMN-wCwE~X1bmuQbpiOMcc=e z8D(;GRxMGPhY1-AJ+)F^m^|v5ZX}wHa80bMU==kktf@$+b_!ZNwCN3@)0!{~i>uU| z!>*M;Jo|%&f%hfe2Ith0;HGMJw-@0YRj37tB(`xcey0;)U;HV99tq2u?D7#1RdHjj zd(7d=Holvu3H$Fq#-7EK&O7=_Jia!PkRXI}5gqu4i?op-6yT1MSF9tu0P%`U4+vVT zm2c+cHHGsKUCisH!MI>Jg<(*r`W+y={!GmsL`#5_VTxP_r3!I}nj00uyYJc#=LcE~ z=TB$uTRudL6@1%Q9>%_d9418a%V!Jx6$E@2Muo5)|4xiwRnB*SxMvYA&@5Yf61327 z@_QFSAg*#ToXG;&uRpuRVwU8?|5p$^m)INd9pn;ot#t8WW zeu;2!`TzOPKkuF|`6YrCmSj1oTmEHKIOZ4VFYE(E`lKqrZ4l{5KhHP5N@>!;Yyf?i z)m-ks;&JSu{qaI}jOqX}AMHCa-tYhuo+H4s|B^x)@M{R_Z^s1R3aaiPDKkf2l08mC zcs|v@{&oyYsJ7dXBd+8KTFd){?hmnbf0aLynDC1LvX#&3KAB)7 zka>eg|Ea|%;8#%Gf0Qiz5&;ywr1H7uZUKS?MBWCVoYCX{EaCdT`4Xs=ARGM|4Q`vc zKXUFMaUB7pae!EA0+6E!^NxgY(v+y+p=r-~fY{G|fM`C=2mowf_kFQy*=!0zIN#_R zvO4A(@`&f&md_?uNIkODh;_xr=<@f-&N2%c@(a;wHTYRu&si5_ictU|=`Sb6dw8^*~`AGN90D z8@U0hu9^7qWg7uYfJ=&_%#$Arp09Q3$}|jBo;BN?Yv$W}#J90Kyf#xY|D`R)GS7>S z-pjinV0o9XIVS*^vOh3of5Yg>m%S)Y;s5zRo$M1UB(NfCmz|D{{a^qzw!90WyD{T^ z7(&-z!_@bPeYUUbRs_FQ#&RD1&tPBV%eXHW2CYJuY(ti&RTMG*MQ0;odmTS^{fCcd zbq3_(*vdse%XGvW)z3?mtrC{g$Sc zz!Clflrvy?5GSJ!#x?WqoVmR}oCWb_2oR}P)&WlkKwA_Xv}&~=LeDu#yvXL1XB9G& z=bCZM%yP^0luqjh5Q8i0VC21Xy^4V}qXo%6@#UULxSWH$(u6>TbIk0zWNQlm=bF*O zk>r|rhAS>#^3jA8=)spIho#=M;5Tsn+AFAtbd%C3Wq!K@_YLEdgf0wu% z(yUb`Pjxh7EW73NU{>Se%IvbJ(xyKEy@Fd;T`Zv-`{dq1!s)DS0+Sy|Go-!#{z$m= zW0rt-6$Ve9czK>t{JGwL5REUe#0O$glD$x^@i^Gj&SR=*gi=eWWzr6ggEOZxj!wpd z8llEW!~$YhV|RZJ61yma)k^jnAEukR8NYvKIc6kN*y`>3^S*$*{_$^7L^1|%C?BfK zk3%0Km=fO}S!%|gZ^zC~_Y6#*H9mH4>S$sK7n8ia1+`qaa)19D9RrZtxY~JLI}FjQZ7)XgI$4%(uJA@Iirj=-9^89 zQe7tGXQvlrCof~ssmN1F!wYj$>sn?zD^sz?lfvuUd!{ML!=!vV*K~!fnkAzqJd*ulJ=9gDP z#pF8{IN=0@e4hf^W3-~<3}!T=5r^H5%;$XrTzO(FMhUCHxM!R#P6ViN=?kTLnR zI02krLHnvb>L_>+V)owVwb=p(<1wCJ9`-TV138!=V+0YLYit?qfJEEGneyf!jhM3} zxQ7~rNTCi4u^LP8R!R4-VOV!+sVb_pO0yM{*Mgmu+vmBCixss=C2-!h?io@RNDZ!8 z)?Uj2>7qCyAYEkff?`8FE;g8yLL2p+-dTHS$KMfuLcY_N}U!g}a0O(;bFWPy>A1aRh9^gqrxqd*p5*1HrmVx_`QO5sgg zu(mo6dXZ64+EG&q)VTk~={RzX=oC$q%Z7;vRwoIVvX-h)FEdyPyAv!;;C0!^ z`oj8c&Bs3XtCmM7-f^!~p@t98b+7rk;=^h}s}R$k6OE@Bg>qZqPC1!c$ehxP{4c;Q zl8&5qRdQN4Uv}SLaX$leKOmKj3bI4smSm`_umV#t7{KVSP1LxNRQ`VHi3`cHBmKFB znV6i=s=UM$E`AsPnUG0d=GIc!c$8eIh&FDuFC4$bk8uOc4gS|_#SHC86_h*XAULN z+xh5`!UcDndb}c0DP9HtXgRLXak!^oT~NMAiw|xC1mWQ?0-k$KN6946eE%XqaSXwY zjy>VTmg5Z~rXWjJ7Gg1;u#~kZLR3anCM_-`?-u-Y=%}1171mOqDI_mpq?;(}{~|e) zxYViIrR6N0V1aqm>_|LrMfi{#m>t=HZSs}LB$n)9%Hl6ll@Eyi*@4+K*x=kNLh?DP zmPb2^wnSz7bdknse;cv^_lHjk0O2n~N>f1re5BU0f?3`9Vlw8}MV++)lWaz{BVLuOxmd{iSv z=FQeDB^=4M^LuyN^uhuVYia@S8zCb;V6L@|lnq~|Q|8Oad(yMiUev$IrHNM4Qpln5 z6YR%;n_{m|>V(OR3v=i|2g-;HT62L?#s&qZyt zj@I*d7!(Ww#99|MI<=1Y;D)e2bsGZ20A&ym46U>|swoocd+Y!)z}Xyi1s|0>gKxwe zl|6SFl&I0Cg@}M*B}u70MIr$xgEy(bF(oxUXNa{f0FX?PAcqp?EHqt4ATTQK5}-6q z^$rT?qKYN?z%aDhk?0y3>6CdUg0AUUZinj0vhe;xsF*j~L*==PbXphan|XrWW6JYS z5{Z2(<1`P$|5Aq?_(z=x(*IUx3kOig1=ZvKeu4fUFw>(~mju_czk%#Aupu8dqUAdN zO^Su?{@yPs=k4=2V>Y~d zK75KXKMZ5w0+1**Ee*%R!djW_n-LpRYIr0QwIM%`KlZoIkLyEzc0+pW3}7!LisNIS z_7?S$qzLM^{)mov7_dN_3hstq6`ZK@k1jQ%B}b8(+KS@WMkwGyELU6OFZHV=*SgW% z^et@8b~#csYc|@#KM(02xt(;9O6Y75204%^aj;H^LN=7mx;Z}#dWhSfJO5PHsKYodK7~t8CC3WF9L`XPkK}iJ3o2S$$HeNQZEy-XF`CbQordS7Ou+EU z521K<%m!y%>WYcaM1wmKnKt)`iGHOZC%jt17di#U%2MLZ<^qaJxZFa4g~A1o=JrC6 zfdI?7UW%c>%Qz;Fkps6;X8kQ1xg~wPJzJO`GDW{o+??+sCjHnNKWIJCtxx`$>K;J1 zvOc^z7?00qy{@z_u(-I2qb&iSvR%Ou|9&Tk(AX*=xf2V`gAr`f;85O|h~5rjEjQN} zSD=8h`7BQqp;BW7u24JC@r7x;el*)R2v=!)ZB+Sj9j>3z^j05)NcU(?GO8>n5H9>O z<0UVU9W#}=QeD-i;)iHR(o59<#n@UDZ6nLat(f$sTF@Rx?o26u1KxMi0XF%;BeF!W z30Ef=XvQEdA8(k5+Qjpfdo-4q#H$Na2u{xZ`yr{UJd2)o_(U@P5Ywn5>rA(vbDlw! zw%-IT0^FJK9ySd`-Sf$C>h`?y+2RFx4i&c^!0n8CSQD3nL5EJTSn^m?j=Eovn(rfV zT7unN%xMcbdv@hT@{$j%+x?!@NE8G=E6i%NUF#yO&kxlGxo+qx>JgK@J1U~KbfC8! zB^2o^=Xkdt0lR+rTO|9;;Rq#%w#6}rf7#rGLk_RwicI+YLd4z`aCf!f`C1)_fyWU#9(3@g5%nJ2L*h}eV3Hb zjP{HGh;_Z>*0^B?ou3l4$Z})?R^J+FCi_7?i{1NoOzlv1qt|5tN$Rin+tK!n2*2Zl z9YCGJ?*WwY_4K%qK1wMlN_JnywB#9(T4Ic9x_X8cg_VgDj0mBCOZ|dr6T0Er=vQ9Q zcftYN_J8fOT-ycy=l04o?PC=nKnto?z|Wt4v46Fo`f6sZ@?RHx%>01$5EC5Gym#;5 zQKHJBX*9ENA`2FNSF%tmq9YzTa|>WI)XeKoRxJ*!u15;ubK;5}Kb#qcJ*k2}`|VjE z)DQBnmQ4wNgl(IQQbF-T#b9J!!6aXA7VB4nzaj{S#|)DgSFkinogx7ql{|qRosWmV zu8FsRi)?&BX&)?*vn^lfL{hGAgZPj26?IkqSQTh<}e3k=9h8*L1>!%D9IJdN6=)~tnAcHw>o~7jIGrpkI{3+&Sn+7 z$YDh1t7sWBwRsof@Zv84m($*l>gEIw4_QKtVe@giX?G9)Pse_9=ew8y8jSvi0Rlq# zw`1mje!8kg#a14H~QmSBvo3rv~5xg8ZymjX!8^Tt~U@WUOmQU!nI(> z;_q2r+c>7{da15QyLhi_+G#T2Kqzci5lK*D?$5awmPR5vyZE(-7v6yir3q;Fp%voO|m1$jg!Op|QT1Ns; zvXC)R5J?U;N5}0AG}UKkGdZ};OFw)^AxNZ4RHK_Y3(f;t$5|P zyZ_N&HCc$HeH75zxr+t}2>suuq^qTwof+d_N9MmeoN3EBY;s`r{?tI~JX(I;bc^g1 zyIQ|qErmyE6NzgU)v={gB04AQg}-*{_cz+EAA-4R9jdPpguPmP&$P#HML09SqTYz4 zQgS{Sk^4>#IY#or=hJ7Pe7kZPMgaUf+)4KRS^HSo6P{?d6ybU7y2U%_V`LR)59Aer zY+2&Eh5Eo|txm5UrVa|z6H2muuCBlJ7zSCFI;EXHjJQt}^k}LB*^B_~J|RX1AqX;Y zm9)gVV~frc={Lr0LD=`z?FFb!C^)ndw`&j}mk)vj!rnb=I=mL>&6c5@BuUy#L=7(Q zloyp>(`DT(;K-7P~0-=UYp}XkXBte5)3vq~bwF*uWEAr(&G9 zC6iK0Qx%$a&RuaXDKfP~OLG;LXgDu%)llWWh%8an%UKj{+GSeeU}u{1%YEK^HQ5(i zQCR8*zW4Z`ptqb0E)k(H6&{&0%g8h~D=*X)ElXy*JCVeeGh&z)LJ}&krd>8~L!+%j z8sp?6HwaIB8tT^Fnm`rQfTI+jpPNOmxPr+3K zH?qV5V*Ut=_>OrK#ya8c%%0`cEticEl4Gf%?Z;j?#!O7apQeEs>L zP7TD69#qq3S?fu$xfqiSBGOG~tKa4eiXDgKn(IVNJB5|op-D0^?fWDA^&8aZNu|c^ zsJ4W~+{>m{@y0^nN|{N}9`S}fiGML?hs1BjFOr!i-MHzU zfsc3@?aBr6A9%B<5UrOMYVuc})_bMKhI|}^cg7`XHVSVKnXKVOTbmEUxS%Wbgvw4p z6%M;s5}SKvU3^^^Q15#%?ULEFO?j7ZO<3FIfA8nn4sA9vYApM`DJk&Jr-^{oPZ6_lK25c^Q4Rbkz@2ueHbK73O-NKNkUpjlpCr7RJ@zPGASiojBk zjFUc0_d5D@ZE%hpQ#>e}^Lmt_kSa+n*Mwt5*@S{}RL&#^{=%0%=Nzr!oK1k-IWIJ( zl~(Ut;@(fV4y?!cH}B2hU-C4P;1LhIR~BLP`+Kv5x#`)6G#W4 zMh$Xe!)~kXz~X}S75LcC1pD7^E`?>FHMZKRHqY6$sEZKMQF7zk;as{YtqgbYrIj2P zljKz`YE~=S%i1YF)uPTOkoGOvgj<=!J&kEv+}KQLx?D++Hr;YSnaEIEK}*~&lz4d3 zr$DvbKKe}qD&|?FE~z$S2gNg z<9}x;Ys}ufd9>rK!XKAlr!;}m(U->ptK@2?pA42U>w?v_{h86dl&+er4%C=V4GJXu zek&mIyJD0(jq+g5R^~`e_G*vWP?N)GpC!0;WP0b*eocDCBOeNO-8M-!Wcs_X78O&v zMffu^cDeD6s(qtBuY>$XXVtz72nT!h+UkD$XI~G>>h5ucqDp~pV%VP7f*Oqzl8ykq zox;I%o?@|=Y?~S`xY$h}!3ijpZa)8!Ck$&A5p7W~PaWb}>@+Wuftr6c1*T5ZA^{>o zNsP8u&GL?Q)XyIz){3KNg-tK1B*-@0KX+}bbAm}|!&^d$m*HN%bxW$4l=>p;%l8aV zNwUYkn5FXo!xKtFb1p#1OCFpW^Tmrq#Q)8a*#nTpgR9N;a;~Guzm4uVRPo3u3csq?yEOxn>+!(3m6ak}(=mLS&G}no^O$ z5#)#&GlsSrbSR`XFM#BwYMd;Qo7@Kb&>*DUT3wCYzU58mmmC%t*7JVuXV5`A$8o*a z>HUKIXD*iO&$Ctr_`rhzWUr`z-zIJ@t`2sZcD9UGu4ZiLoEcC(RB@d?lyTyT{}#csdMnk#{ba8 zKY6^;1JFYW&_(bMU4M6n{g1l8TEoW7H30H+B#6Bp1>$DQN;3kPTr+;;Q($ z*6wfkrM6FKEwBk$` zz{RgOMPCN2J4`L_B1DBqusfK_9BL-$k?7RYiBhM6xiuL~a@`tlj4kG~IzJX)`iQ$I zRq(_~AB=2^u?V1d8k{n_gYY|T{Kpw-n!8X;xWb;&8`vTTPO#S{=a4?s<&*%;p1^UiyxYi%@PCy0@*#mamLKu*;cp3bStT(J*OAM@sK|5M2^5r zzw2%k2F*4DO0tO)7DcsQw~X&NH0civz^+o~H#JVDOfx0nOP9rYmW`V;nRInFy8}I~ zJO!l|`aUOQqGtKmYoCyv+M|e?ossZQgzm^ovPZ*Td^^nEY>j1;kiQ;MNq+s0Ra*Rf zScDCrCKCb3?*6mpuy?aFHgg74W&UJ$Gn(7>2V7V^yJdn2;<_ynNo-(j&4q&MdNJap zEe}8xSoIfqVf8Ma@~>Lbj6GYEgq@&+{mIk{+_8u#2&M>$_Q(SEu>0Se$g8X2h8F9 zqFc7&wu!n^cU?GTc*R~MEKEr!x=jdD-R6M6CyAZy)t{m8 zjWaGj2f>g%IjVw!#xw)&o^C~$R9lWgDVmxLeE{}VX@oyu)B2+humjhU{Nem4YaB-T zH{B?UM2%6!WiaiC&>0ucF2A{PDfzspnC7+}k$zA!l37*#tGs?iS6=CFw^JDE_T;li<-q7 zR4syRZD@>M4tG-jx9Q*O=ms7dKD+qecup&0-9LL_<;3A|arY4*ffe<2e|qTMxwhQz z3-IXCu_onw*n1t?cGT79n^+juVq+}#^RZslLOkD$JtLp2_1{d_3&GPd4RzzJ_rtl^ z7#3hdSR0D4PIHHBP<|Hde8T>7#wr|Nwder{0tzMq0>T8$Sb)aee@#<>l^5Xpv^TP{ zWw3TMv$$5baYR)^vyzUYg8NOkd{|DwQOMnn_{w zbtzRoC*c+7DU8qOvjI)jHQPyXA&^H|Oi%(62^I}&l*Iauoe#|b^lodr7+Ntn!C>}k zd*i(~`(fKj|@M*?Cv)=}{a;D%wIBZ=B-b32NPJ ztA=`JDLiS{wovqrqinyo6VbgP4iob3p`T&c2@&{&8)BYeU$6{{=`iwW(=sdV?zn3B zZAx&$P&GOy@yDAI>QF^yY1l1lRiKi2R(@^m)L(@k_dh{`rl4EP8Y7XFh>tM*ww_$> zFinkSRLYS_^?oORPVc41Q+y^l5pRt|wy=|RnJ51)y~1@Ah*TXjawOrUJJQ_78b22_ z5)BImC4|qvjTAg(2tt`02+j;g;?=zu2BZ!42xEE2`c)A0JH#3{8lV+wq?ehyKu$~* zT&eEI-_ORFW0ZiZT{-o2|O#Ds;3*uY_XGp<8gyEE>q|4p4=Z|sGXo5wz&;7@5|7*Dc zrJMhKO8-%}kA42$KPOw7><`XAvRb^$V0*))K;?UNs{ERo%}=CueVlf%^}OAc)=4Gd zYhUoLJMUMKq297}>U6DzwNZz%?6Usdypwz{=U&#okF)gnZ>i=9Z*TtHaQo!jM|SMO z+h@OiX7}V9u=akhx_7no`~JrA^;e|VPpe{ky_JEn`KZAygM$G%64^6SR(KpSPLV9) zO>NVBA!+;J-lXf^>yGlD{vi4O)r0JnyMPy8EsR|05M(9Oa`pO~|2J}s+MWpgHr>6g z;oZ|6PU)9LUw0i?GJBQwm8Y*xY4$%~KD%k3Q_Zb)w@TkhhbXA5ob-Cmx;Iw4!e72o zJF4CYyrC=4_O!E-%s|fO#7S@ELgXSWwPyyd4^}7aIyGwc^h>$sdV@@rL$dl zzo5z`zC`Q3x!PxkLu&dgGk$Z=i)0tx_EfOpx@yCknVivl^E#E|SYFI}+SlQ`(RhC1 zK86WJq|gz{m@nJ?rdx_5qBrSLB?HKOl>Rqd$>S4>3SNO0*K zF4TEgF)tzW4D$>2q$lmYr*$v!#y`2#A3t^C_O!##rf^Psdslf*`#Ik;>xFN(FG)-5 zm6>Xr`Dx0W-OJAHslN86=}`5WquVB3GODgD^?mzD^+(lRxr5Q~Kd+zi#3Q))^s8&_ za&=EGZhb9RUGsR^@_BX7Za$w^zp(i9wdrwnskc|J-~030ZR>lL+q0jq>$ki2`Q*LY z-}ZmsoIV`?RmQSv&G(A?FZ0jU{J#7BZ+g8&{liD=_s9PF+i(AWQK{hp-YIq&u{T)S zR9lp*qQnoI1vgIo@VKb-aF^K2*wtbH8~}|d z%?0`$oA$g0X(1z^<)?v0$e>t09T)~+?GT?M8-g_ydRL2Cck44S#D%gl@S~W-%!_hD zBsOQDA1Dda-@v%r21PU4@sj9ai9Sz?Fh{2dW)9LM3c7ami5G-+sWPZ`v}qW06VN9j z5GMGPLrp-LmO$5!K5C56f4>r{AAJlN-3avlH^PV;4On~Q=mwy7bP)z@Xhb#uTelb8 zEcCu3!mO1|$Y!DTB+*Sl?`k1TInWFZ6_kz_x_ t} -import com.twitter.stitch.Stitch -import javax.inject.Inject -import javax.inject.Singleton - -case object EarlybirdResponseTruncatedFeature - extends FeatureWithDefaultOnFailure[t.EarlybirdRequest, Boolean] { - override val defaultValue: Boolean = false -} - -case object EarlybirdBottomTweetFeature - extends FeatureWithDefaultOnFailure[t.EarlybirdRequest, Option[Long]] { - override val defaultValue: Option[Long] = None -} - -@Singleton -case class EarlybirdCandidateSource @Inject() ( - earlybird: t.EarlybirdService.MethodPerEndpoint) - extends CandidateSourceWithExtractedFeatures[t.EarlybirdRequest, t.ThriftSearchResult] { - - override val identifier = CandidateSourceIdentifier("Earlybird") - - override def apply( - request: t.EarlybirdRequest - ): Stitch[CandidatesWithSourceFeatures[t.ThriftSearchResult]] = { - Stitch.callFuture(earlybird.search(request)).map { response => - val candidates = response.searchResults.map(_.results).getOrElse(Seq.empty) - - val features = FeatureMapBuilder() - .add(EarlybirdResponseTruncatedFeature, candidates.size == request.searchQuery.numResults) - .add(EarlybirdBottomTweetFeature, candidates.lastOption.map(_.id)) - .build() - - CandidatesWithSourceFeatures(candidates, features) - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/StaleTweetsCacheCandidateSource.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/candidate_source/StaleTweetsCacheCandidateSource.docx new file mode 100644 index 0000000000000000000000000000000000000000..cd36af75339c5de94380045d1b9448400efe5f80 GIT binary patch literal 37152 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