From 65c3a3fe906c79282874c717b93586d403536de8 Mon Sep 17 00:00:00 2001 From: Ari Archer Date: Tue, 23 Jan 2024 19:08:30 +0200 Subject: [PATCH] [docx] split commit for file 1800 Signed-off-by: Ari Archer --- ...ementRealTimeAggregateFeatureHydrator.docx | Bin 0 -> 37577 bytes ...mentRealTimeAggregateFeatureHydrator.scala | 58 -- ...ementRealTimeAggregateFeatureHydrator.docx | Bin 0 -> 37588 bytes ...mentRealTimeAggregateFeatureHydrator.scala | 61 -- ...ementRealTimeAggregateFeatureHydrator.docx | Bin 0 -> 37515 bytes ...mentRealTimeAggregateFeatureHydrator.scala | 57 -- ...ementRealTimeAggregateFeatureHydrator.docx | Bin 0 -> 37579 bytes ...mentRealTimeAggregateFeatureHydrator.scala | 59 -- ...mentRealTimeAggregatesFeatureHydrator.docx | Bin 0 -> 37540 bytes ...entRealTimeAggregatesFeatureHydrator.scala | 56 -- .../product/scored_tweets/filter/BUILD.bazel | 14 - .../product/scored_tweets/filter/BUILD.docx | Bin 0 -> 36887 bytes .../DuplicateConversationTweetsFilter.docx | Bin 0 -> 37349 bytes .../DuplicateConversationTweetsFilter.scala | 37 - .../filter/OutOfNetworkCompetitorFilter.docx | Bin 0 -> 37250 bytes .../filter/OutOfNetworkCompetitorFilter.scala | 38 - .../OutOfNetworkCompetitorURLFilter.docx | Bin 0 -> 37266 bytes .../OutOfNetworkCompetitorURLFilter.scala | 38 - .../RetweetSourceTweetRemovingFilter.docx | Bin 0 -> 37337 bytes .../RetweetSourceTweetRemovingFilter.scala | 40 - .../ScoredTweetsSocialContextFilter.docx | Bin 0 -> 37559 bytes .../ScoredTweetsSocialContextFilter.scala | 61 -- .../product/scored_tweets/gate/BUILD.bazel | 12 - .../product/scored_tweets/gate/BUILD.docx | Bin 0 -> 36847 bytes .../gate/MinCachedTweetsGate.docx | Bin 0 -> 37168 bytes .../gate/MinCachedTweetsGate.scala | 34 - .../gate/MinTimeSinceLastRequestGate.docx | Bin 0 -> 37154 bytes .../gate/MinTimeSinceLastRequestGate.scala | 27 - .../scored_tweets/marshaller/BUILD.bazel | 15 - .../scored_tweets/marshaller/BUILD.docx | Bin 0 -> 36898 bytes .../ScoredTweetsResponseDomainMarshaller.docx | Bin 0 -> 37005 bytes ...ScoredTweetsResponseDomainMarshaller.scala | 22 - ...oredTweetsResponseTransportMarshaller.docx | Bin 0 -> 37666 bytes ...redTweetsResponseTransportMarshaller.scala | 70 -- .../product/scored_tweets/model/BUILD.bazel | 17 - .../product/scored_tweets/model/BUILD.docx | Bin 0 -> 36897 bytes .../model/ScoredTweetsQuery.docx | Bin 0 -> 37174 bytes .../model/ScoredTweetsQuery.scala | 39 - .../model/ScoredTweetsResponse.docx | Bin 0 -> 36777 bytes .../model/ScoredTweetsResponse.scala | 6 - .../product/scored_tweets/param/BUILD.bazel | 11 - .../product/scored_tweets/param/BUILD.docx | Bin 0 -> 36839 bytes .../param/ScoredTweetsParam.docx | Bin 0 -> 38449 bytes .../param/ScoredTweetsParam.scala | 361 ------- .../param/ScoredTweetsParamConfig.docx | Bin 0 -> 37500 bytes .../param/ScoredTweetsParamConfig.scala | 89 -- .../query_transformer/BUILD.bazel | 23 - .../query_transformer/BUILD.docx | Bin 0 -> 36983 bytes .../TimelineRankerFrsQueryTransformer.docx | Bin 0 -> 37624 bytes .../TimelineRankerFrsQueryTransformer.scala | 64 -- ...melineRankerInNetworkQueryTransformer.docx | Bin 0 -> 37586 bytes ...elineRankerInNetworkQueryTransformer.scala | 63 -- .../TimelineRankerQueryTransformer.docx | Bin 0 -> 38217 bytes .../TimelineRankerQueryTransformer.scala | 108 --- .../TimelineRankerUtegQueryTransformer.docx | Bin 0 -> 37635 bytes .../TimelineRankerUtegQueryTransformer.scala | 59 -- .../query_transformer/earlybird/BUILD.bazel | 23 - .../query_transformer/earlybird/BUILD.docx | Bin 0 -> 37008 bytes .../EarlybirdFrsQueryTransformer.docx | Bin 0 -> 37377 bytes .../EarlybirdFrsQueryTransformer.scala | 41 - .../EarlybirdInNetworkQueryTransformer.docx | Bin 0 -> 37649 bytes .../EarlybirdInNetworkQueryTransformer.scala | 68 -- .../earlybird/EarlybirdQueryTransformer.docx | Bin 0 -> 37689 bytes .../earlybird/EarlybirdQueryTransformer.scala | 70 -- .../response_transformer/BUILD.bazel | 16 - .../response_transformer/BUILD.docx | Bin 0 -> 36916 bytes ...coredTweetsResponseFeatureTransformer.docx | Bin 0 -> 37842 bytes ...oredTweetsResponseFeatureTransformer.scala | 119 --- ...etsBackfillResponseFeatureTransformer.docx | Bin 0 -> 37134 bytes ...tsBackfillResponseFeatureTransformer.scala | 30 - ...edTweetsFrsResponseFeatureTransformer.docx | Bin 0 -> 37137 bytes ...dTweetsFrsResponseFeatureTransformer.scala | 31 - ...tsInNetworkResponseFeatureTransformer.docx | Bin 0 -> 37178 bytes ...sInNetworkResponseFeatureTransformer.scala | 34 - ...TweetsListsResponseFeatureTransformer.docx | Bin 0 -> 37248 bytes ...weetsListsResponseFeatureTransformer.scala | 45 - ...pularVideosResponseFeatureTransformer.docx | Bin 0 -> 37291 bytes ...ularVideosResponseFeatureTransformer.scala | 46 - ...sTweetMixerResponseFeatureTransformer.docx | Bin 0 -> 37402 bytes ...TweetMixerResponseFeatureTransformer.scala | 52 - ...dTweetsUtegResponseFeatureTransformer.docx | Bin 0 -> 37150 bytes ...TweetsUtegResponseFeatureTransformer.scala | 31 - .../TimelineRankerResponseTransformer.docx | Bin 0 -> 37656 bytes .../TimelineRankerResponseTransformer.scala | 91 -- .../earlybird/BUILD.bazel | 13 - .../response_transformer/earlybird/BUILD.docx | Bin 0 -> 36876 bytes .../EarlybirdResponseTransformer.docx | Bin 0 -> 37658 bytes .../EarlybirdResponseTransformer.scala | 92 -- ...arlybirdFrsResponseFeatureTransformer.docx | Bin 0 -> 37153 bytes ...rlybirdFrsResponseFeatureTransformer.scala | 33 - ...rdInNetworkResponseFeatureTransformer.docx | Bin 0 -> 37163 bytes ...dInNetworkResponseFeatureTransformer.scala | 32 - .../product/scored_tweets/scorer/BUILD.bazel | 20 - .../product/scored_tweets/scorer/BUILD.docx | Bin 0 -> 36929 bytes .../scorer/DiversityDiscountProvider.docx | Bin 0 -> 37556 bytes .../scorer/DiversityDiscountProvider.scala | 63 -- .../scored_tweets/scorer/HeuristicScorer.docx | Bin 0 -> 37325 bytes .../scorer/HeuristicScorer.scala | 46 - .../scored_tweets/scorer/NaviModelScorer.docx | Bin 0 -> 38886 bytes .../scorer/NaviModelScorer.scala | 179 ---- .../scorer/PredictedScoreFeature.docx | Bin 0 -> 38099 bytes .../scorer/PredictedScoreFeature.scala | 166 ---- .../scorer/RescoringFactorProvider.docx | Bin 0 -> 38050 bytes .../scorer/RescoringFactorProvider.scala | 180 ---- .../scoring_pipeline/BUILD.bazel | 25 - .../scored_tweets/scoring_pipeline/BUILD.docx | Bin 0 -> 36988 bytes ...dTweetsHeuristicScoringPipelineConfig.docx | Bin 0 -> 37004 bytes ...TweetsHeuristicScoringPipelineConfig.scala | 23 - ...coredTweetsModelScoringPipelineConfig.docx | Bin 0 -> 38887 bytes ...oredTweetsModelScoringPipelineConfig.scala | 223 ----- .../scored_tweets/selector/BUILD.bazel | 12 - .../product/scored_tweets/selector/BUILD.docx | Bin 0 -> 36852 bytes ...tworkCandidatePerAuthorPerSuggestType.docx | Bin 0 -> 37223 bytes ...workCandidatePerAuthorPerSuggestType.scala | 39 - .../scored_tweets/side_effect/BUILD.bazel | 33 - .../scored_tweets/side_effect/BUILD.docx | Bin 0 -> 37153 bytes .../CachedScoredTweetsSideEffect.docx | Bin 0 -> 38426 bytes .../CachedScoredTweetsSideEffect.scala | 134 --- .../ScribeScoredCandidatesSideEffect.docx | Bin 0 -> 38248 bytes .../ScribeScoredCandidatesSideEffect.scala | 126 --- ...eaturesAndCandidateFeaturesSideEffect.docx | Bin 0 -> 39444 bytes ...aturesAndCandidateFeaturesSideEffect.scala | 225 ----- .../home_mixer/product/subscribed/BUILD.bazel | 82 -- .../home_mixer/product/subscribed/BUILD.docx | Bin 0 -> 37585 bytes ...ribedEarlybirdCandidatePipelineConfig.docx | Bin 0 -> 37478 bytes ...ibedEarlybirdCandidatePipelineConfig.scala | 64 -- .../SubscribedEarlybirdQueryTransformer.docx | Bin 0 -> 37804 bytes .../SubscribedEarlybirdQueryTransformer.scala | 67 -- ...edEarlybirdResponseFeatureTransformer.docx | Bin 0 -> 37176 bytes ...dEarlybirdResponseFeatureTransformer.scala | 38 - .../SubscribedMixerPipelineConfig.docx | Bin 0 -> 39301 bytes .../SubscribedMixerPipelineConfig.scala | 221 ----- .../SubscribedProductPipelineConfig.docx | Bin 0 -> 38343 bytes .../SubscribedProductPipelineConfig.scala | 123 --- .../product/subscribed/model/BUILD.bazel | 20 - .../product/subscribed/model/BUILD.docx | Bin 0 -> 36934 bytes .../subscribed/model/SubscribedQuery.docx | Bin 0 -> 37088 bytes .../subscribed/model/SubscribedQuery.scala | 31 - .../product/subscribed/param/BUILD.bazel | 14 - .../product/subscribed/param/BUILD.docx | Bin 0 -> 36914 bytes .../subscribed/param/SubscribedParam.docx | Bin 0 -> 36859 bytes .../subscribed/param/SubscribedParam.scala | 15 - .../param/SubscribedParamConfig.docx | Bin 0 -> 36925 bytes .../param/SubscribedParamConfig.scala | 18 - .../twitter/home_mixer/service/BUILD.bazel | 15 - .../com/twitter/home_mixer/service/BUILD.docx | Bin 0 -> 36881 bytes .../service/HomeMixerAccessPolicy.docx | Bin 0 -> 36898 bytes .../service/HomeMixerAccessPolicy.scala | 13 - .../service/HomeMixerAlertConfig.docx | Bin 0 -> 37352 bytes .../service/HomeMixerAlertConfig.scala | 66 -- .../service/ScoredTweetsService.docx | Bin 0 -> 37029 bytes .../service/ScoredTweetsService.scala | 24 - .../com/twitter/home_mixer/store/BUILD.bazel | 13 - .../com/twitter/home_mixer/store/BUILD.docx | Bin 0 -> 36863 bytes .../store/RealGraphInNetworkScoresStore.docx | Bin 0 -> 37252 bytes .../store/RealGraphInNetworkScoresStore.scala | 34 - .../com/twitter/home_mixer/util/BUILD.bazel | 25 - .../com/twitter/home_mixer/util/BUILD.docx | Bin 0 -> 37048 bytes .../util/CachedScoredTweetsHelper.docx | Bin 0 -> 37252 bytes .../util/CachedScoredTweetsHelper.scala | 50 - .../home_mixer/util/CandidatesUtil.docx | Bin 0 -> 37922 bytes .../home_mixer/util/CandidatesUtil.scala | 116 --- .../home_mixer/util/DataRecordUtil.docx | Bin 0 -> 37065 bytes .../home_mixer/util/DataRecordUtil.scala | 31 - .../home_mixer/util/InjectionTransformer.docx | Bin 0 -> 37116 bytes .../util/InjectionTransformer.scala | 43 - .../twitter/home_mixer/util/LanguageUtil.docx | Bin 0 -> 37774 bytes .../home_mixer/util/LanguageUtil.scala | 93 -- .../home_mixer/util/MissingKeyException.docx | Bin 0 -> 36743 bytes .../home_mixer/util/MissingKeyException.scala | 5 - .../util/ObservedKeyValueResultHandler.docx | Bin 0 -> 37131 bytes .../util/ObservedKeyValueResultHandler.scala | 43 - .../home_mixer/util/ReplyRetweetUtil.docx | Bin 0 -> 38025 bytes .../home_mixer/util/ReplyRetweetUtil.scala | 120 --- .../home_mixer/util/TensorFlowUtil.docx | Bin 0 -> 37042 bytes .../home_mixer/util/TensorFlowUtil.scala | 32 - .../util/TweetImpressionsHelper.docx | Bin 0 -> 36927 bytes .../util/TweetImpressionsHelper.scala | 15 - .../home_mixer/util/earlybird/BUILD.bazel | 23 - .../home_mixer/util/earlybird/BUILD.docx | Bin 0 -> 36968 bytes .../util/earlybird/EarlybirdRequestUtil.docx | Bin 0 -> 38691 bytes .../util/earlybird/EarlybirdRequestUtil.scala | 182 ---- .../util/earlybird/EarlybirdResponseUtil.docx | Bin 0 -> 40615 bytes .../earlybird/EarlybirdResponseUtil.scala | 411 -------- .../util/earlybird/RelevanceSearchUtil.docx | Bin 0 -> 37213 bytes .../util/earlybird/RelevanceSearchUtil.scala | 38 - .../home_mixer/util/tweetypie/BUILD.bazel | 10 - .../home_mixer/util/tweetypie/BUILD.docx | Bin 0 -> 36805 bytes .../util/tweetypie/RequestFields.docx | Bin 0 -> 37326 bytes .../util/tweetypie/RequestFields.scala | 58 -- .../util/tweetypie/content/BUILD.bazel | 19 - .../util/tweetypie/content/BUILD.docx | Bin 0 -> 36908 bytes .../content/FeatureExtractionHelper.docx | Bin 0 -> 36999 bytes .../content/FeatureExtractionHelper.scala | 29 - .../content/TweetMediaFeaturesExtractor.docx | Bin 0 -> 39371 bytes .../content/TweetMediaFeaturesExtractor.scala | 285 ------ .../content/TweetTextFeaturesExtractor.docx | Bin 0 -> 37307 bytes .../content/TweetTextFeaturesExtractor.scala | 44 - navi/README.docx | Bin 0 -> 38036 bytes navi/README.md | 41 - navi/dr_transform/Cargo.docx | Bin 0 -> 37066 bytes navi/dr_transform/Cargo.toml | 32 - navi/dr_transform/src/all_config.docx | Bin 0 -> 37093 bytes navi/dr_transform/src/all_config.rs | 49 - navi/dr_transform/src/converter.docx | Bin 0 -> 41612 bytes navi/dr_transform/src/converter.rs | 616 ------------ navi/dr_transform/src/lib.docx | Bin 0 -> 36688 bytes navi/dr_transform/src/lib.rs | 6 - navi/dr_transform/src/util.docx | Bin 0 -> 37223 bytes navi/dr_transform/src/util.rs | 32 - navi/navi/Cargo.docx | Bin 0 -> 37456 bytes navi/navi/Cargo.toml | 81 -- navi/navi/build.docx | Bin 0 -> 36850 bytes navi/navi/build.rs | 13 - .../navi/proto/kfserving/grpc_predict_v2.docx | Bin 0 -> 39446 bytes .../proto/kfserving/grpc_predict_v2.proto | 326 ------- .../tensorflow/core/example/example.docx | Bin 0 -> 39695 bytes .../tensorflow/core/example/example.proto | 306 ------ .../tensorflow/core/example/feature.docx | Bin 0 -> 37627 bytes .../tensorflow/core/example/feature.proto | 110 --- .../framework/allocation_description.docx | Bin 0 -> 37024 bytes .../framework/allocation_description.proto | 29 - .../tensorflow/core/framework/api_def.docx | Bin 0 -> 38907 bytes .../tensorflow/core/framework/api_def.proto | 138 --- .../tensorflow/core/framework/attr_value.docx | Bin 0 -> 37737 bytes .../core/framework/attr_value.proto | 64 -- .../tensorflow/core/framework/cost_graph.docx | Bin 0 -> 37808 bytes .../core/framework/cost_graph.proto | 89 -- .../core/framework/dataset_metadata.docx | Bin 0 -> 36770 bytes .../core/framework/dataset_metadata.proto | 10 - .../core/framework/dataset_options.docx | Bin 0 -> 39469 bytes .../core/framework/dataset_options.proto | 196 ---- .../core/framework/device_attributes.docx | Bin 0 -> 37449 bytes .../core/framework/device_attributes.proto | 58 -- .../tensorflow/core/framework/full_type.docx | Bin 0 -> 40863 bytes .../tensorflow/core/framework/full_type.proto | 276 ------ .../tensorflow/core/framework/function.docx | Bin 0 -> 38984 bytes .../tensorflow/core/framework/function.proto | 136 --- .../tensorflow/core/framework/graph.docx | Bin 0 -> 37659 bytes .../tensorflow/core/framework/graph.proto | 56 -- .../core/framework/graph_transfer_info.docx | Bin 0 -> 37368 bytes .../core/framework/graph_transfer_info.proto | 71 -- .../tensorflow/core/framework/kernel_def.docx | Bin 0 -> 37393 bytes .../core/framework/kernel_def.proto | 48 - .../tensorflow/core/framework/log_memory.docx | Bin 0 -> 37396 bytes .../core/framework/log_memory.proto | 95 -- .../tensorflow/core/framework/model.docx | Bin 0 -> 38065 bytes .../tensorflow/core/framework/model.proto | 134 --- .../tensorflow/core/framework/node_def.docx | Bin 0 -> 38512 bytes .../tensorflow/core/framework/node_def.proto | 95 -- .../tensorflow/core/framework/op_def.docx | Bin 0 -> 39881 bytes .../tensorflow/core/framework/op_def.proto | 193 ---- .../core/framework/reader_base.docx | Bin 0 -> 36941 bytes .../core/framework/reader_base.proto | 18 - .../core/framework/resource_handle.docx | Bin 0 -> 37297 bytes .../core/framework/resource_handle.proto | 45 - .../tensorflow/core/framework/step_stats.docx | Bin 0 -> 37767 bytes .../core/framework/step_stats.proto | 88 -- .../tensorflow/core/framework/summary.docx | Bin 0 -> 39009 bytes .../tensorflow/core/framework/summary.proto | 149 --- .../tensorflow/core/framework/tensor.docx | Bin 0 -> 38092 bytes .../tensorflow/core/framework/tensor.proto | 96 -- .../core/framework/tensor_description.docx | Bin 0 -> 36972 bytes .../core/framework/tensor_description.proto | 24 - .../core/framework/tensor_shape.docx | Bin 0 -> 37444 bytes .../core/framework/tensor_shape.proto | 46 - .../core/framework/tensor_slice.docx | Bin 0 -> 37318 bytes .../core/framework/tensor_slice.proto | 39 - .../tensorflow/core/framework/types.docx | Bin 0 -> 37618 bytes .../tensorflow/core/framework/types.proto | 77 -- .../tensorflow/core/framework/variable.docx | Bin 0 -> 37838 bytes .../tensorflow/core/framework/variable.proto | 84 -- .../tensorflow/core/framework/versions.docx | Bin 0 -> 37164 bytes .../tensorflow/core/framework/versions.proto | 33 - .../tensorflow/core/protobuf/autotuning.docx | Bin 0 -> 37852 bytes .../tensorflow/core/protobuf/autotuning.proto | 106 -- .../core/protobuf/bfc_memory_map.docx | Bin 0 -> 37097 bytes .../core/protobuf/bfc_memory_map.proto | 47 - .../tensorflow/core/protobuf/cluster.docx | Bin 0 -> 37811 bytes .../tensorflow/core/protobuf/cluster.proto | 84 -- .../protobuf/composite_tensor_variant.docx | Bin 0 -> 36937 bytes .../protobuf/composite_tensor_variant.proto | 16 - .../tensorflow/core/protobuf/config.docx | Bin 0 -> 51885 bytes .../tensorflow/core/protobuf/config.proto | 902 ------------------ .../core/protobuf/control_flow.docx | Bin 0 -> 37578 bytes .../core/protobuf/control_flow.proto | 91 -- .../core/protobuf/conv_autotuning.docx | Bin 0 -> 37170 bytes .../core/protobuf/conv_autotuning.proto | 33 - .../core/protobuf/coordination_config.docx | Bin 0 -> 37266 bytes .../core/protobuf/coordination_config.proto | 32 - .../core/protobuf/coordination_service.docx | Bin 0 -> 40045 bytes .../core/protobuf/coordination_service.proto | 256 ----- .../core/protobuf/critical_section.docx | Bin 0 -> 37016 bytes .../core/protobuf/critical_section.proto | 24 - .../core/protobuf/data_service.docx | Bin 0 -> 38095 bytes .../core/protobuf/data_service.proto | 88 -- .../proto/tensorflow/core/protobuf/debug.docx | Bin 0 -> 38255 bytes .../tensorflow/core/protobuf/debug.proto | 94 -- .../tensorflow/core/protobuf/debug_event.docx | Bin 0 -> 40475 bytes .../core/protobuf/debug_event.proto | 300 ------ .../core/protobuf/device_filters.docx | Bin 0 -> 37771 bytes .../core/protobuf/device_filters.proto | 73 -- .../core/protobuf/device_properties.docx | Bin 0 -> 37618 bytes .../core/protobuf/device_properties.proto | 58 -- .../distributed_runtime_payloads.docx | Bin 0 -> 37086 bytes .../distributed_runtime_payloads.proto | 24 - .../core/protobuf/eager_service.docx | Bin 0 -> 41563 bytes .../core/protobuf/eager_service.proto | 344 ------- .../tensorflow/core/protobuf/error_codes.docx | Bin 0 -> 39583 bytes .../core/protobuf/error_codes.proto | 152 --- .../core/protobuf/graph_debug_info.docx | Bin 0 -> 37521 bytes .../core/protobuf/graph_debug_info.proto | 52 - .../tensorflow/core/protobuf/master.docx | Bin 0 -> 40498 bytes .../tensorflow/core/protobuf/master.proto | 353 ------- .../core/protobuf/master_service.docx | Bin 0 -> 38895 bytes .../core/protobuf/master_service.proto | 121 --- .../tensorflow/core/protobuf/meta_graph.docx | Bin 0 -> 40809 bytes .../tensorflow/core/protobuf/meta_graph.proto | 342 ------- .../core/protobuf/named_tensor.docx | Bin 0 -> 37058 bytes .../core/protobuf/named_tensor.proto | 25 - .../core/protobuf/queue_runner.docx | Bin 0 -> 37057 bytes .../core/protobuf/queue_runner.proto | 30 - .../core/protobuf/remote_tensor_handle.docx | Bin 0 -> 37184 bytes .../core/protobuf/remote_tensor_handle.proto | 34 - .../tensorflow/core/protobuf/replay_log.docx | Bin 0 -> 37253 bytes .../tensorflow/core/protobuf/replay_log.proto | 47 - .../core/protobuf/rewriter_config.docx | Bin 0 -> 40501 bytes .../core/protobuf/rewriter_config.proto | 223 ----- .../tensorflow/core/protobuf/saved_model.docx | Bin 0 -> 37097 bytes .../core/protobuf/saved_model.proto | 23 - .../core/protobuf/saved_object_graph.docx | Bin 0 -> 40683 bytes .../core/protobuf/saved_object_graph.proto | 251 ----- .../proto/tensorflow/core/protobuf/saver.docx | Bin 0 -> 37505 bytes .../tensorflow/core/protobuf/saver.proto | 48 - .../core/protobuf/service_config.docx | Bin 0 -> 38166 bytes .../core/protobuf/service_config.proto | 82 -- .../tensorflow/core/protobuf/snapshot.docx | Bin 0 -> 37349 bytes .../tensorflow/core/protobuf/snapshot.proto | 47 - .../tensorflow/core/protobuf/status.docx | Bin 0 -> 36829 bytes .../tensorflow/core/protobuf/status.proto | 10 - .../tensorflow/core/protobuf/struct.docx | Bin 0 -> 39126 bytes .../tensorflow/core/protobuf/struct.proto | 160 ---- .../core/protobuf/tensor_bundle.docx | Bin 0 -> 37797 bytes .../core/protobuf/tensor_bundle.proto | 66 -- .../core/protobuf/tensorflow_server.docx | Bin 0 -> 37727 bytes .../core/protobuf/tensorflow_server.proto | 61 -- .../core/protobuf/trackable_object_graph.docx | Bin 0 -> 37872 bytes .../protobuf/trackable_object_graph.proto | 80 -- .../core/protobuf/transport_options.docx | Bin 0 -> 36805 bytes .../core/protobuf/transport_options.proto | 10 - .../core/protobuf/verifier_config.docx | Bin 0 -> 37056 bytes .../core/protobuf/verifier_config.proto | 27 - .../tensorflow/core/protobuf/worker.docx | Bin 0 -> 43670 bytes .../tensorflow/core/protobuf/worker.proto | 611 ------------ .../core/protobuf/worker_service.docx | Bin 0 -> 37790 bytes .../core/protobuf/worker_service.proto | 90 -- .../apis/classification.docx | Bin 0 -> 37215 bytes .../apis/classification.proto | 48 - .../apis/get_model_metadata.docx | Bin 0 -> 37115 bytes .../apis/get_model_metadata.proto | 30 - .../apis/get_model_status.docx | Bin 0 -> 37678 bytes .../apis/get_model_status.proto | 68 -- .../tensorflow_serving/apis/inference.docx | Bin 0 -> 37532 bytes .../tensorflow_serving/apis/inference.proto | 59 -- .../proto/tensorflow_serving/apis/input.docx | Bin 0 -> 37432 bytes .../proto/tensorflow_serving/apis/input.proto | 82 -- .../tensorflow_serving/apis/logging.docx | Bin 0 -> 36955 bytes .../tensorflow_serving/apis/logging.proto | 17 - .../proto/tensorflow_serving/apis/model.docx | Bin 0 -> 37235 bytes .../proto/tensorflow_serving/apis/model.proto | 33 - .../apis/model_management.docx | Bin 0 -> 36811 bytes .../apis/model_management.proto | 16 - .../apis/model_service.docx | Bin 0 -> 37104 bytes .../apis/model_service.proto | 24 - .../tensorflow_serving/apis/predict.docx | Bin 0 -> 37283 bytes .../tensorflow_serving/apis/predict.proto | 40 - .../apis/prediction_log.docx | Bin 0 -> 37026 bytes .../apis/prediction_log.proto | 49 - .../apis/prediction_service.docx | Bin 0 -> 37059 bytes .../apis/prediction_service.proto | 31 - .../tensorflow_serving/apis/regression.docx | Bin 0 -> 37049 bytes .../tensorflow_serving/apis/regression.proto | 37 - .../apis/session_service.docx | Bin 0 -> 37602 bytes .../apis/session_service.proto | 56 -- .../proto/tensorflow_serving/apis/status.docx | Bin 0 -> 36902 bytes .../tensorflow_serving/apis/status.proto | 17 - .../file_system_storage_path_source.docx | Bin 0 -> 38094 bytes .../file_system_storage_path_source.proto | 88 -- .../config/log_collector_config.docx | Bin 0 -> 36823 bytes .../config/log_collector_config.proto | 12 - .../config/logging_config.docx | Bin 0 -> 36910 bytes .../config/logging_config.proto | 18 - .../config/model_server_config.docx | Bin 0 -> 38103 bytes .../config/model_server_config.proto | 85 -- navi/navi/scripts/run_onnx.docx | Bin 0 -> 36930 bytes navi/navi/scripts/run_onnx.sh | 9 - navi/navi/scripts/run_tf2.docx | Bin 0 -> 36807 bytes navi/navi/scripts/run_tf2.sh | 6 - navi/navi/src/batch.docx | Bin 0 -> 39180 bytes navi/navi/src/batch.rs | 203 ---- 400 files changed, 16974 deletions(-) create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetCountryEngagementRealTimeAggregateFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetCountryEngagementRealTimeAggregateFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetEngagementRealTimeAggregateFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetEngagementRealTimeAggregateFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TwitterListEngagementRealTimeAggregateFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TwitterListEngagementRealTimeAggregateFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/UserAuthorEngagementRealTimeAggregateFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/UserAuthorEngagementRealTimeAggregateFeatureHydrator.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/UserEngagementRealTimeAggregatesFeatureHydrator.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/UserEngagementRealTimeAggregatesFeatureHydrator.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/DuplicateConversationTweetsFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/DuplicateConversationTweetsFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorURLFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorURLFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/RetweetSourceTweetRemovingFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/RetweetSourceTweetRemovingFilter.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/ScoredTweetsSocialContextFilter.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/ScoredTweetsSocialContextFilter.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinCachedTweetsGate.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinCachedTweetsGate.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinTimeSinceLastRequestGate.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinTimeSinceLastRequestGate.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseDomainMarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseDomainMarshaller.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseTransportMarshaller.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseTransportMarshaller.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/ScoredTweetsQuery.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/ScoredTweetsQuery.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/ScoredTweetsResponse.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/ScoredTweetsResponse.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParam.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParam.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParamConfig.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParamConfig.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerFrsQueryTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerFrsQueryTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerInNetworkQueryTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerInNetworkQueryTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerQueryTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerQueryTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerUtegQueryTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerUtegQueryTransformer.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdFrsQueryTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdFrsQueryTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdInNetworkQueryTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdInNetworkQueryTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdQueryTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdQueryTransformer.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/CachedScoredTweetsResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/CachedScoredTweetsResponseFeatureTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsBackfillResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsBackfillResponseFeatureTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsFrsResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsFrsResponseFeatureTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsInNetworkResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsInNetworkResponseFeatureTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsListsResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsListsResponseFeatureTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsPopularVideosResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsPopularVideosResponseFeatureTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsTweetMixerResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsTweetMixerResponseFeatureTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsUtegResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsUtegResponseFeatureTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/TimelineRankerResponseTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/TimelineRankerResponseTransformer.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/EarlybirdResponseTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/EarlybirdResponseTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/ScoredTweetsEarlybirdFrsResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/ScoredTweetsEarlybirdFrsResponseFeatureTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/ScoredTweetsEarlybirdInNetworkResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/ScoredTweetsEarlybirdInNetworkResponseFeatureTransformer.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/DiversityDiscountProvider.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/DiversityDiscountProvider.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/HeuristicScorer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/HeuristicScorer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/NaviModelScorer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/NaviModelScorer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/PredictedScoreFeature.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/PredictedScoreFeature.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/RescoringFactorProvider.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/RescoringFactorProvider.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/ScoredTweetsHeuristicScoringPipelineConfig.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/ScoredTweetsHeuristicScoringPipelineConfig.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/ScoredTweetsModelScoringPipelineConfig.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/ScoredTweetsModelScoringPipelineConfig.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/selector/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/selector/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/selector/KeepBestOutOfNetworkCandidatePerAuthorPerSuggestType.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/selector/KeepBestOutOfNetworkCandidatePerAuthorPerSuggestType.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/CachedScoredTweetsSideEffect.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/CachedScoredTweetsSideEffect.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeScoredCandidatesSideEffect.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeScoredCandidatesSideEffect.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeServedCommonFeaturesAndCandidateFeaturesSideEffect.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeServedCommonFeaturesAndCandidateFeaturesSideEffect.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdCandidatePipelineConfig.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdCandidatePipelineConfig.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdQueryTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdQueryTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdResponseFeatureTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdResponseFeatureTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedMixerPipelineConfig.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedMixerPipelineConfig.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedProductPipelineConfig.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedProductPipelineConfig.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/model/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/model/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/model/SubscribedQuery.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/model/SubscribedQuery.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParam.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParam.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParamConfig.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParamConfig.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/service/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/service/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/service/HomeMixerAccessPolicy.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/service/HomeMixerAccessPolicy.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/service/HomeMixerAlertConfig.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/service/HomeMixerAlertConfig.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/service/ScoredTweetsService.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/service/ScoredTweetsService.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/store/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/store/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/store/RealGraphInNetworkScoresStore.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/store/RealGraphInNetworkScoresStore.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/CachedScoredTweetsHelper.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/CachedScoredTweetsHelper.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/CandidatesUtil.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/CandidatesUtil.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/DataRecordUtil.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/DataRecordUtil.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/InjectionTransformer.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/InjectionTransformer.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/LanguageUtil.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/LanguageUtil.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/MissingKeyException.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/MissingKeyException.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/ObservedKeyValueResultHandler.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/ObservedKeyValueResultHandler.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/ReplyRetweetUtil.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/ReplyRetweetUtil.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/TensorFlowUtil.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/TensorFlowUtil.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/TweetImpressionsHelper.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/TweetImpressionsHelper.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/earlybird/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/earlybird/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/earlybird/EarlybirdRequestUtil.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/earlybird/EarlybirdRequestUtil.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/earlybird/EarlybirdResponseUtil.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/earlybird/EarlybirdResponseUtil.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/earlybird/RelevanceSearchUtil.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/earlybird/RelevanceSearchUtil.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/RequestFields.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/RequestFields.scala delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/content/BUILD.bazel create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/content/BUILD.docx create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/content/FeatureExtractionHelper.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/content/FeatureExtractionHelper.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/content/TweetMediaFeaturesExtractor.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/content/TweetMediaFeaturesExtractor.scala create mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/content/TweetTextFeaturesExtractor.docx delete mode 100644 home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/content/TweetTextFeaturesExtractor.scala create mode 100644 navi/README.docx delete mode 100644 navi/README.md create mode 100644 navi/dr_transform/Cargo.docx delete mode 100644 navi/dr_transform/Cargo.toml create mode 100644 navi/dr_transform/src/all_config.docx delete mode 100644 navi/dr_transform/src/all_config.rs create mode 100644 navi/dr_transform/src/converter.docx delete mode 100644 navi/dr_transform/src/converter.rs create mode 100644 navi/dr_transform/src/lib.docx delete mode 100644 navi/dr_transform/src/lib.rs create mode 100644 navi/dr_transform/src/util.docx delete mode 100644 navi/dr_transform/src/util.rs create mode 100644 navi/navi/Cargo.docx delete mode 100644 navi/navi/Cargo.toml create mode 100644 navi/navi/build.docx delete mode 100644 navi/navi/build.rs create mode 100644 navi/navi/proto/kfserving/grpc_predict_v2.docx delete mode 100644 navi/navi/proto/kfserving/grpc_predict_v2.proto create mode 100644 navi/navi/proto/tensorflow/core/example/example.docx delete mode 100644 navi/navi/proto/tensorflow/core/example/example.proto create mode 100644 navi/navi/proto/tensorflow/core/example/feature.docx delete mode 100644 navi/navi/proto/tensorflow/core/example/feature.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/allocation_description.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/allocation_description.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/api_def.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/api_def.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/attr_value.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/attr_value.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/cost_graph.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/cost_graph.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/dataset_metadata.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/dataset_metadata.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/dataset_options.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/dataset_options.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/device_attributes.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/device_attributes.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/full_type.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/full_type.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/function.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/function.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/graph.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/graph.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/graph_transfer_info.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/graph_transfer_info.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/kernel_def.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/kernel_def.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/log_memory.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/log_memory.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/model.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/model.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/node_def.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/node_def.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/op_def.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/op_def.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/reader_base.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/reader_base.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/resource_handle.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/resource_handle.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/step_stats.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/step_stats.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/summary.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/summary.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/tensor.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/tensor.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/tensor_description.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/tensor_description.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/tensor_shape.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/tensor_shape.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/tensor_slice.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/tensor_slice.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/types.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/types.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/variable.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/variable.proto create mode 100644 navi/navi/proto/tensorflow/core/framework/versions.docx delete mode 100644 navi/navi/proto/tensorflow/core/framework/versions.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/autotuning.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/autotuning.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/bfc_memory_map.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/bfc_memory_map.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/cluster.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/cluster.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/composite_tensor_variant.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/composite_tensor_variant.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/config.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/config.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/control_flow.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/control_flow.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/conv_autotuning.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/conv_autotuning.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/coordination_config.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/coordination_config.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/coordination_service.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/coordination_service.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/critical_section.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/critical_section.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/data_service.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/data_service.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/debug.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/debug.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/debug_event.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/debug_event.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/device_filters.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/device_filters.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/device_properties.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/device_properties.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/distributed_runtime_payloads.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/distributed_runtime_payloads.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/eager_service.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/eager_service.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/error_codes.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/error_codes.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/graph_debug_info.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/graph_debug_info.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/master.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/master.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/master_service.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/master_service.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/meta_graph.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/meta_graph.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/named_tensor.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/named_tensor.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/queue_runner.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/queue_runner.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/remote_tensor_handle.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/remote_tensor_handle.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/replay_log.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/replay_log.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/rewriter_config.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/rewriter_config.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/saved_model.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/saved_model.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/saved_object_graph.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/saved_object_graph.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/saver.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/saver.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/service_config.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/service_config.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/snapshot.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/snapshot.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/status.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/status.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/struct.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/struct.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/tensor_bundle.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/tensor_bundle.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/tensorflow_server.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/tensorflow_server.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/trackable_object_graph.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/trackable_object_graph.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/transport_options.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/transport_options.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/verifier_config.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/verifier_config.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/worker.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/worker.proto create mode 100644 navi/navi/proto/tensorflow/core/protobuf/worker_service.docx delete mode 100644 navi/navi/proto/tensorflow/core/protobuf/worker_service.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/classification.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/classification.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/get_model_metadata.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/get_model_metadata.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/get_model_status.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/get_model_status.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/inference.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/inference.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/input.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/input.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/logging.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/logging.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/model.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/model.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/model_management.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/model_management.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/model_service.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/model_service.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/predict.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/predict.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/prediction_log.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/prediction_log.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/prediction_service.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/prediction_service.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/regression.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/regression.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/session_service.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/session_service.proto create mode 100644 navi/navi/proto/tensorflow_serving/apis/status.docx delete mode 100644 navi/navi/proto/tensorflow_serving/apis/status.proto create mode 100644 navi/navi/proto/tensorflow_serving/config/file_system_storage_path_source.docx delete mode 100644 navi/navi/proto/tensorflow_serving/config/file_system_storage_path_source.proto create mode 100644 navi/navi/proto/tensorflow_serving/config/log_collector_config.docx delete mode 100644 navi/navi/proto/tensorflow_serving/config/log_collector_config.proto create mode 100644 navi/navi/proto/tensorflow_serving/config/logging_config.docx delete mode 100644 navi/navi/proto/tensorflow_serving/config/logging_config.proto create mode 100644 navi/navi/proto/tensorflow_serving/config/model_server_config.docx delete mode 100644 navi/navi/proto/tensorflow_serving/config/model_server_config.proto create mode 100644 navi/navi/scripts/run_onnx.docx delete mode 100644 navi/navi/scripts/run_onnx.sh create mode 100644 navi/navi/scripts/run_tf2.docx delete mode 100644 navi/navi/scripts/run_tf2.sh create mode 100644 navi/navi/src/batch.docx delete mode 100644 navi/navi/src/batch.rs diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetCountryEngagementRealTimeAggregateFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetCountryEngagementRealTimeAggregateFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..ad76485712b2e400867b9380dc3fa42990290b00 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/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetCountryEngagementRealTimeAggregateFeatureHydrator.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetCountryEngagementRealTimeAggregateFeatureHydrator.scala deleted file mode 100644 index cd9e34a3e..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetCountryEngagementRealTimeAggregateFeatureHydrator.scala +++ /dev/null @@ -1,58 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.feature_hydrator.real_time_aggregates - -import com.google.inject.name.Named -import com.twitter.finagle.stats.StatsReceiver -import com.twitter.home_mixer.param.HomeMixerInjectionNames.TweetCountryEngagementCache -import com.twitter.home_mixer.util.CandidatesUtil -import com.twitter.ml.api.DataRecord -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.feature.FeatureWithDefaultOnFailure -import com.twitter.product_mixer.core.feature.datarecord.DataRecordInAFeature -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.servo.cache.ReadCache -import com.twitter.timelines.data_processing.ml_util.aggregation_framework.AggregateGroup -import com.twitter.timelines.prediction.common.aggregates.real_time.TimelinesOnlineAggregationFeaturesOnlyConfig._ -import javax.inject.Inject -import javax.inject.Singleton - -object TweetCountryEngagementRealTimeAggregateFeature - extends DataRecordInAFeature[TweetCandidate] - with FeatureWithDefaultOnFailure[TweetCandidate, DataRecord] { - override def defaultValue: DataRecord = new DataRecord() -} - -@Singleton -class TweetCountryEngagementRealTimeAggregateFeatureHydrator @Inject() ( - @Named(TweetCountryEngagementCache) override val client: ReadCache[(Long, String), DataRecord], - override val statsReceiver: StatsReceiver) - extends BaseRealTimeAggregateBulkCandidateFeatureHydrator[(Long, String)] { - - override val identifier: FeatureHydratorIdentifier = - FeatureHydratorIdentifier("TweetCountryEngagementRealTimeAggregate") - - override val outputFeature: DataRecordInAFeature[TweetCandidate] = - TweetCountryEngagementRealTimeAggregateFeature - - override val aggregateGroups: Seq[AggregateGroup] = Seq( - tweetCountryRealTimeAggregates, - tweetCountryPrivateEngagementsRealTimeAggregates - ) - - override val aggregateGroupToPrefix: Map[AggregateGroup, String] = Map( - tweetCountryRealTimeAggregates -> "tweet-country_code.timelines.tweet_country_engagement_real_time_aggregates.", - tweetCountryPrivateEngagementsRealTimeAggregates -> "tweet-country_code.timelines.tweet_country_private_engagement_real_time_aggregates." - ) - - override def keysFromQueryAndCandidates( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Seq[Option[(Long, String)]] = { - val countryCode = query.clientContext.countryCode - candidates.map { candidate => - val originalTweetId = CandidatesUtil.getOriginalTweetId(candidate) - countryCode.map((originalTweetId, _)) - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetEngagementRealTimeAggregateFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetEngagementRealTimeAggregateFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..61f02906118df12348dbebaee31ebb85145b6434 GIT binary patch literal 37588 zcmagEWmsL=vNepmdvJGmcL)S`m*BpU;BLV^KyY_=$j03zxH}{e-2L6@?sHD}x%YnG zpT$GXsxd}Yt-a=4b4_JANGL2YFfceUm^2>kD%GNdWN=YJZQf~=V?D8E)T1UnNe94-O8(y6ymJ@l1hr4n9 z2#p!#Fc{{9%(OdS;?;VgPM>CKJqgJZ1A|Ph0&>U_pMv##=2HuveW?U8*+rRMqPYQ> z+SW{;cT?Qpth=>+{6-j|XX3fKLCM+=V6ik+ahez;gQ0M$LZi^(H3c&~dF>RA>Z(V> zG`kE|`=iQkFXR61QGR?02bin_y^gw$yN{ zU+pPE@fbt|pnc!7?`C!%)8aUSsV|GZR@2?UunFBe0oaC6*UtWc%+`8y5Xe1V)nu@0 z*VTzt_q9F>mcjSBlR(Kl?hc}(X&^KB0+Y_(9#`cPa@TivM^_X_Dg3Y$Zg@90t6)E_ z5ipGUnM*^YP8BE?momb^$MfcNBthnmD?|pxP@^tVKdIj$u zDX{uZ=DDMI-*q)8-&CG4g--7!nWzxGE8*jl_akCS#XCvip6A7q^?i}iJM#P|ECoX_ z<$rY1lUh#n9@M=J2rw{2&|f2Gb2}Fn=HJ(<#EB1(Y-j;z!cxOjB@WFRl7-8Ll0Os* zg}c9wpB6j#$rP`2cBn`iXyfz{AD-=+S}bG~5G*ki+XZWx=*$P@E%s<{(p@wHjn?2& z;M)VqJk)nWbnMcjZYWSh&8hFWEi_4m88$En^ynH+XT++-C5`CqWl%~(%97Bp5kJvt zx%x8A0$>2r^37b4B~@*EcJ7h)BF&#r z#afqorrQ*^$y1RK2MTmwW=29{Sa3}S6Ke6DVj+8jRKi;AB*m1U?6cs5=CMIdRa>` zF<2&gX&!h)O8-asNkgdFr3(09=WRPEH~eZ{rJWxedTjWs&B&{tYQH_2Ub6Z75$Pg_ z{CYoNta^}XPFoAZPI%(>0F8tS&LOIjrt03R$-WhN;^OSIIpqdvP=VAEhJ=#xE^p?f zv{E!E4{lA*Z3EC>R5vs?x3k9NLKPtL$*h&57W1WfjF%?$qhIEF9?ForkYyNr)|b2M z3v0HFFS1xAVwq5~-(efj9<_(xmR#~fB!(b}IFpbS1mTEmK|;3Wnvh|Nf>29WHdEeH4noC|0zvNxq8%_yuoDrf*97(MTueR(+Y~{Mx%EzP|?w6`q^Am z>X%#HegAo~a?{erR~1&J$O_1p8mkJ=(kUUX_q#VoIw{G>DAEugUpSz~JS(hem&2uT z6-Wu#j62T9t)OfWy+7U5oBc%3wY1m66`Z9IJtk&!yqrb4??>3fH7(o{^_#wtcC5%c zrCkNXjchz_AXTd`(+aA_4fGdVAw1>xZn`@pcUJf>Xv`P(Y=>J9u0n`M?l8Q5tqt(RsVDGuFC)=o#DT4L zo2kjd6Iz>;0%4iB8s2tF390?7vLZ!F?>pKvSe{vk&*3v3t_a@dZ+?;d^TtqLfzsQ8 z20h6r{`|qZ1DwrRK)+g7d(hpqJzn8EJY3H zh*bw$e+agD#c?01CZw3%u~w$O_=o9iS?tC;{&mIMFSI{{7fKyO2fiF>k};=L$VQbJ z37@+1Pt{KJiw`PDvV#W(=c%)CEvchVDyLf4N3mntEPZvdIMCDtkXft%iaxZ4Mz2Go z2nJsBh$A5P z4fdGtMSJGm27O>fH|nJ<+f>3PQ{Adg4~1sG$sj#iiff9@Q4bF=$NFe6W})GPfNHid zad08Yjh-2|J|3>~z2oqI9`2@jt*4@AUu(S z4z#oY!$TuePNF}jc8Qj!NG=F)o?^|EE|3wEM7F9JGsD-Yz5`A-ow3mvp+{ks$v5Z9 zjD`pI^;>px!QlsAp|JFLO*@p*o#3#GRSC&3SaHU793y_7emP{F8l;|jP@2=}>8li-Yn#1G(ygA_$ zH!6&RsK!B7dV%7A3b?aN00PShZ%Tfol5HWxX!@QjfRVA=*o3UF2V!J3$V3U3A|p7Z z7K#^h3n?m0L{<6f^R=zAT7&>>#E2&-5oQW}1m?Zjr^H>SxSw?s6HFv@s@C`*@8e0-IhqNN~hbnD?CU$-kRyY=~#sNlkmh z9Qz4Nv-g_T!wX^SgCeFbsUG?SKu4C>WkZT{CW<>6@j(v06F!q)b=c`r`xHO?B*cBQcBO3 ztVV$<5-L0`{e>l1mfBuT?UgsS&J)XHs_~nML?^ccH_D(RypCnCSCgAIv!BB?%jde8 zDY!+`Rj~DoW8>6H+-}Z;&V_kua?wp<`DlOs#HgHZRd)=Yj->2Mu$qd$ZJj=yk z2J*4oI$1o==B76{%vd1I=y~$1nB{wS?YAysoopasE+EjM z2=G^Si*;080QyfK-`3|?C0Skb#7;g|oo;N14R!MM92#YBy9oGiN9zhnQ!n{X`=-O2 z&h)D*gxHwrH}Qou&A?BCp-s$o$otS1m2nl!nN5giv9t|t^n%}JRSLwv5)_g#5WpJ` zN5|3Ld1v*CwsF-DJ@Xv8-58moyg~kRI&cUez+eZh6UIR61VYd{;g9Ly&sFZdVh9+SZJ4C(vl}`<%m#!)D36)++yp`DB)LS=Wl-LQ}z2o-Hp|PKx zxK&%&5Wr(-{1C(&4S|X^8>(!MA!v!3dfeS0qakKnMGDVf+r!I0+L@$RJUGsRN8Kd ztf#y5Y$-Nq2KAyt)h*2%8&Ggj8Sk7OPT$;{5&FNt8X{OU&J#)$?*~3B=*M6fL22G) zLiTao8(WX=S}d4?NxFAQq)Mv>;17%@A+4ZKvEie9G8_+%>&~#Io_4)nHng*hv4rl|EzUP z1&%-z3mBN81~eGzziRFB$dG%Ldfu~-4*?sRbO1|qBmC&y zkzIGjp};ZwYkC^jD(=L{pNdSBL_<|W^Fw)Jy+Cg^jxyc8R#uX_`O8a=f4kk8pAkuH z#>?qCPhS^uXPe%c=2OYU=@k&*_k!mm@NjVIp?jL0vijoia+)EsI0Sfoho~YAe*CQXF*kMMs8-}uBlh4S`LSn$0O z%jy$Il>4Ut#tG`!(8=SvFYok=i1>uiiPi?_Wx(E>U)rD8Pngo5+JE2;@fJ9HaeC}N zwrkVyfcF6z)?+!uv?J#vHsk3$`R39iorq`bI?B(P$?JvBi{dJ&VwcXW z&OempwR5c#*it!`Jiz8}4_x!@)Ym)fe7TW$v`|eY?sM8)XF=Wc`zl4^Ba?kX_SRqX z&}Gt7Gd541((wFAH_Q(`oeKXG5WeGl10R?w;^!Hq4)hT?!6d7Rh`+8yg)Ry^#o(U` zYd{UFsTO&uHS*OF@#PI=X$QuchvNFbydL&h_`|(iufKds*MF|{TW;SJ6smGRI}JAhf8G6n{ILRcyA+j8m84gL z#H3QVU(z?6&L@1<&(*E-dg#P@fCj-({UIV~R^2auiy}FPwpDVU27y=^Wa?oMQK9=|JW^g|)vji*bpt$O44uMZ!{EhNt^QB#oQG_I=X3BkLO*dYZy*I37C~2t* zW!~YY?`Q3%Z#9;wj*ZE4>f+(PlS?H|Vd-NW`gz;a;>Rm>I-CA9%lqKBc7y7Lsi%|K zN5?y-mm%5PE0L2k;Y=0jCWHC8^S*2dkS}|{Z2Oj0bnOC$L!HCP# z`}b7-=Ol|t87-+%Hc->ywhWQAIi=A6 ztvHq}>-PAT$k0V?emC5wlh^Z~_6(WCgWu78u*q)WzKi(~8PUo{7g6vg37=V1Xbi7O zKC6?(eUMR+DaBCz!ch^zxR1p^Cdah+0WMMTTUVw3CLznc=4ks6)7WP(6o|PGm<(1tE-0 zI;!IFE1&4d;4C+=x{ctjiUY7hJk>-IR@&)E5$!iBvkGM3R4EuRf*ccD0!TCW3AgE;>hgxaPAfQ$X* zU)_XH#SF#bi8$OVy8-bp>=VvJP$((LkM569T@YF*2=^bMe^Nn}(VW?kdHff_nFrm(@5ysUWYv3v(j?=}|=k<%-p~$3%+A^j{L0Na1Ka5#jz& zJ(uL(gx3Ds>))nA7m3D6H()2GVK%>{?mTHHv8Jo<*#o%0j=wI+0x-Gz1AKHPYKtKewe!cjST9PGQq79eu+Jze?wN)a@(QnaOOG!9Dn|g|gw%4BZgh7>Cdi6f% z9TxvN=CqKx2#AD1_JKtc`CYv62`87*W4y}b6H7b_i( zv2T1Lj%b%1%~1U?ma+AmSk41YC$Vs*Aj?m}-Z1NFE0!#Gvf!U7iJ?VVJhyCC@3~`U zv~awbBmRI2dVazw`1=e$j_f|pzM|Q5r}b|*xn|tkKeedsF^fERb|8EZkRKS_+4q;@ z#(B@;%!6Yo?76BrMjJ=4N1!x zU4P`@TVl-556yYiX0Cn7SXuqs{1L%FDPseY)?_l8g-wr-I5MvMSI=|N7lWn05_2AX zhUI(oP#%u^K$s1sTo9di17jTe5^pQ`uxN!8rD@+G-0!Uhdi9Y1}+2pjZ>r8FVw`4DS_f)WGQ*M0#P*%RJ zDRBSODFbVkq-FDr{OvV;4mjohcs+FadO0}Y1$=Sx^t*daep@(soc;NHz3ttY6#lv6%2Jb!?RTw%4ieVk~(xl_Mn>Z#AUn|Qc!y8;({WjFh)I=bDN4H6HV}~ zUHvp$wM{MRx zMJ|1onX4qmOcCgQ5F-BT>L|NiXi|%<)>TmTT`e&Rn9J1h^UwGm=nK7q;;9kUqAqem zANTCSe1MK=Q%*8<{^;0!DBmP;__%XIr9p`KX3DDB!8}Zo<(dsI3QbTDbG|@JYf`rc zRSSl0zX6ICZkqziA`ctCavbB@v$G3lF-HY;in`>vul7`_ zySDXUQ0{)bQs!ITGESF=lHnYMSgFskhGWWhX#f`?%mSMJC~Z0-yXM|Ql#TT8BhjY9 zwLAj8UK-IGdQqqA&KLpLVrdOMHdd9nKtS$B|9)Jl2RhRLiMrBDJ*v>A$jiGHiAfQ_ zb#I%B^L#-A>D_TujKf+7UO4Fi_=N#hH zJ5*zCp!Vgy*DCl*4UUu#@*j&V(=g5uq;Q@8|N6K;x5xpfwJajZkP&( z*Ouha!+=*oU;4M(IZWly)o6O&nS|2(g&$~|1Fa4kjJ+4!z!sAkwuOP4c?;Jb$WWoBr^6aBAcKm3C8+`XiY}rn1jrF;{tY;>P{t! zyg=%Qi|09PBNoXHu?>_Ajxt4jRQ+m7$!mn^TAZz9$Gb{~y%!ok?4kwtD;2t&JXTKZ*Vg7VSy6I5+^VXiXx%+H!qdS+i0dXZMIA<~huv$o zJNvZ6(ab`Xx=$Y6Q_ToQrNDsrsJ$3l_y7y+%zd^}wf*sq5(8gaR!-Hejm&$JQF@t- zsk-vfc(JLZTWnpedt=E~0q zJ_&hdmTmlH6)l&IvjHy}2IW0R>P=ePc-5(GXsM>c429GT*or3N|}n1(`|8| zdW(}e*UGSsSs8Tu{^e$rT;F9o!uN@B9sXg5_o<|0H;pWG+$3qmP7$I!Q5mZF3^Qp^ zQdyEU{X^KS8i@`*J)Vy$`*-wsOvroursJSDoty1vgHLPk3LxxJRIRR>Cpdp*fIn8! zPMZ5aes_Yr-kxA??0@W78S)SIea_4EOIrPc1xY7tPRmypQinz5nvcPmx%S~X8dEWB zES5_?U4}=)+sZRrlKPPX$L)=qUaDG`^T87pfN!F;!j?ad0%dodU zO^|!gQfbrA2EOW@K1xWFpyDzK6(WzY9lObDo@8t68Y7<_b@syK69;k5nSQ+u>#9OM zOpd}nu*63+s>$=sslhz80U8oto>MLNL&nhv8<0*Pw8M`oiLtAeP??+4rrlQL=x2xTvo5v=$D_jS>4;_r` zR&pPP*Q`@4?m0{&pP?vD9#1`E9*=2v1WCyG9=AYokL<0D(F{R(5Y`NVZHX{sM;*^E z+t`i4)46)wUr=W5@Er<=R}WUB-pY;;HH0bC8L=+y0X(@A7ZCMu9SP>}9chq?`kQys z@{T5!)wehuAL(V#JFusgEb@7716R`vT2!{=hdA6Iz9sMR2W(J7E~e?U!$Q-XkA8&j z_{lqj=mEJx$U+)5O`rq9X4~pVY>yE67=%gV(p2*USwk%Hhdt%z4Qc9p9&cW!Viyoj z;2}ybkEO64qy9#45T?g|ZOF!_%w1580IupyjN$+@9dW=x0OnW@^fI*m0AIu64`ekE z%mlUspgQ8mM9ca>fSNaOzX&C_#aPglNU_*;8@}CHTO7bYc>%Ezz&(UGOnxn$LUnC{ z#0xLDd2vZVf8}D4^SeZaGX#fQLoy_5yChP^y8G~p_r9*5-fO4|Jl)vCsIF{<;YV|# zJUdfTh5KKo`{`GA`UwBp?3EwMrAqrmm)YvftpG?)RoJ!&C@*KyZ=ydWV-e z6P*{zAiFJ9uQSUHDYg`uO?SZ;HHxeTH(P!yG!3*y7(Oh+mcy;HpDbV2gz%Ma!8#WQ zSE5ZlKoin0H*Az^mZ;A{INHBSmn|^#D0oMGWH1g}eSD35^WipX8n}!!d|Vc)fU5!k zh2tRkN_YGbUiw$~+`q$r{0?)O`!UEl{+>Lou z#3zZGT8?{@coJ_{66EFC5%awicVj7BxyHsHqa%YLusvIs+7iVr5b4tXR3$RcOwpJh+s{a^9}ui*SJ< zf=6Be&77P|I5D%v)i=X>qSzC4WtN&$P5hf)0&DamjgznfcMhibMYX7E=KPIJjRq!* z$7nCQtx$+;WtIstuU7Sr(p0-JGXd+lr<%Tlh+wzf)LhcL`rb5AW-eOvcN~jXsIGIH z%I~R2nPF*Bd;Hw_rGp8zGA4#(iq1}rQr^}{Hm1a{Bnv7fqS*u-QhwsT?CD-Vx?D>i z&}a>*9bNidHOgX@g_}%7|Hzvpo3PzocGD`iuu4u)5%s-$#DHQPER7k1urBAm+kA<5 zUl6ah-#VvOZ=WGMr-d8*YjfE(g)%2!(vE!^&ftl;47ah(y)A#xjq;MZsd=qOik#X0!y{UV%ay5;sDSg^ zD|INwrOcHnglGhM2!uF>cSUo|Ig!NF?|E9_O65E%G=z?RNh(T-@_PsNk_m|X(3LD8 zCxtdj>Jg=hwgOQFMU!|m51nSGb(CA9$N!rLit=APio3G7;M*k^%ILMmE=Pkbtn{ES zVW5=0eE%t?e$C4FtxZbQpjWTzNae7HQ5{O15#k6B6$?cjYVQ2?iS3;=j?W4X_=sC# za}wQfYv)-^HH9T=th~{DBb-d<4E_A<(%}&UMBIuoEGI)Iln;8(m4y@A3a(sG*>&SFxKLJcm+*u+#$I@h!d(%h}<01=+Rmwpsf z=2b>l?t3~LGAqEG9L5XdqpUIN^4DEH9Q4y^PT;%N`WgGF1}2IZ$ni zU1zko-CCWyAbf@0TKU$9q+Dj8i%@vU%mmf!r>u&k@w`V*Xx*7a`(lzy`Z`ka>eTjl z`B3YR_;Jp+1CffBm>}l8p%X8qY zhK5)Oqz7BLUmAF3=K>NHfYzGpV!ZcDEsE0Tq(n1MaW1|#Mpe?3pkdX)t7YRJp-K$f zodB6Yc_K8vfDuS?n10PYXmq2W2u69sb~NnAL11mBfeoLM8dM7*#b0#Gc1RB+^-{!D6;oF z-7^sbKfHHL)flB~IAEL1*aiyDJQ!j8z=-R#beTf zn}{+>8=}>Ht**t39CsscU`C4<&>{CekolWNii&hymEy%b+246D3;oW!Crn%3$@j#J z?VQk!oAA%PrA9!IpbJ~AFWdK^@PSXE1IlL2m}yNXQ6tTRliUhte^YrN{ad9PNh3&Q zAM9_HP~df6O@`Wj`mi3DN#NQe1j>NBK0yu#HoifI2NIc*GKFi)YiT1%SqLQP;KB{x z+>X2Xp8N-Km9xDJs#t5)rb=6WzuNEK!mp&OFw|RjX8$%YjHoC(ySrY+Sf`uf`}9^i z)|WL(9RCCwh}+V2TPc4=C!V^;aAjF(Cw-+0wM6Vfv)w?WoE8>? ztA3JS`Z@IsKvq+x3j=)G_4?f>l>F6~(*<;WRsM@&j&pHEC!?B3(}^vplNIXJeB@fD z8iR9c0cM z*_F32(146dyq1fqiT!5w#$#4HnV_J_KZAJxXHfFQKGV&?Wj|kp3&!DZs;`yEcIOJ2 zm}B?-d@&sFyxK7iE2Wx#kGm0=p&iaC-Hm28T+)Kcz0iW~Wd31iqLP(gfN3_RnT#;^ z*~uJCLlQEKa9POL{XGsuW)F8cD)Ba-)bVr-F7k7PbW;4oo|0(B&6c((n8QnxauMNz zZ^?e`K{crpW%Gv;?qSl&vYgXoKFfVJf|N%#g8wMYBRU{*70tw)_*0?V|5SLHc@;L1 zuvy9NrIIIhQu@w$#JN--_Od_kJJaxNb>TaXeNXiPi5`@m@&$ER9Xpd}iQ3Jq*n~}@ z-!t@&ht2ga#y6lydrqhdo~(Wtnzh>+<1EYLNYjs-!yhr@O4YF?bNdem)&>x;e)NeF$6u>CzxPn04Sfc&scq{ni~#QT2)97N^QRQ z4-y|4T*8NJ1;y)^tncNiR=IubG2mkaNAC*^j}HYRORYp_3HPBx-o(Pl3a%ph}Lq0(l+5`M6Y*j`6!!FH*2YFlDjcu z3|fje2zjen-`YIYLfvT28^gD(Ti~R0d)s3$_JmTk`5B~XH*S*|@-g;c^nHx@O)d8a zH3o9Ub&sIcqJs6k z_tSUSA8Kt0EFDIMn;n5|Liddv-w?8h-oE`9{g8iizqs?YqZq2B@QG0yCGuwspzh0{ z?^3Q9{R*GvY=OT*M^@F*g?sZsJfmg##w?hw%1M*F5|OKW->Ozq2dYth`ZU)~;Wwc& zM+&fab%tJ28){p>-H&Qn zd-Ck35!u#~Q&4u6`g zy(Z>&YFl9n1$TW7bdMF|R9JW(lqli1PB&Y_RG1AfhF_XgpWsoPEi5UI{nozCS@j~U zkUrb^h%L#9EIB*sZLV|FQ6FCH8c+<+2~5a&S~<#vgb;c;rLsU%NaE_cm@ZRHr+#-Q zIm?-E4bjY@aTPPm`LnFNfEmEAVA}!6I_0c#gGN_?oN2t=2u$%h6V10K%C&}==-NB% zZ03&)6jkc-X26%6HJbnkekxBYmK_wD;f%3L4>*yZ_u1uC@G3tl9V1YjT{+t=<5Q?G z5|f-2<*aH?Eic-TOSaO5wMrM|kn9e6OW|kib@RIZwpjVE9Ch!CM+W`|cI7>5_D7OG zIje3u2fxiWuKX)WIlZHfqKH3}3`_oL5358i3fy(e}rl!mHk4>QcA-sR&`?*mH;ts z3dg|OVaJ^fo86k)6oI1*&_HH!1jbohK(s&6Zikw%G#Cq#xNwi?jn~4u%0vF1CZUD{ zIcFim!MCA7XzjnzJjAMCb;B-xqp>*N!b}WuXf2Jc^dpwGlz+x;wLh=-0N;R#I~OPW zb$DySw*70NG3_I24kqY-gBX*N{@F*O=#HwDwR7LG=z@14ANI}aC z4{&A~43=TUBX~pQV}zNH?O<1Uy@>KG8L(GmmQ9pn{}C4>_FEiY$hr81?eK`n7T>R0 z61G0#Mn7;;=-(IEde8-?*$o z=U0=MHSBshvZ5i8e7f}%ZZ%78Gs`)>NO{o5VR%RNTGP3zvs;2wu%DUJZtilvK!FP& z%DDi|SER!=-)7OzG_16xLP|Ha@qU8y1-P9-*L*^V7J&66!Xx9!~sONf`@ zXXu+0oh32o;b(bE0~t>glab`>ct%h5TyuOm^dG?E5Z&S*n;iJBD(=OVI-KCyx=>iV z28=l!dC_ge(sH_UbEWC$`@|oM)#DIslgRn2?X

J9+m$>skeUhqywd?mYDFRgxW_ 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetEngagementRealTimeAggregateFeatureHydrator.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetEngagementRealTimeAggregateFeatureHydrator.scala deleted file mode 100644 index 99bae79d9..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TweetEngagementRealTimeAggregateFeatureHydrator.scala +++ /dev/null @@ -1,61 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.feature_hydrator.real_time_aggregates - -import com.google.inject.name.Named -import com.twitter.finagle.stats.StatsReceiver -import com.twitter.home_mixer.param.HomeMixerInjectionNames.TweetEngagementCache -import com.twitter.home_mixer.util.CandidatesUtil -import com.twitter.ml.api.DataRecord -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.feature.FeatureWithDefaultOnFailure -import com.twitter.product_mixer.core.feature.datarecord.DataRecordInAFeature -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.servo.cache.ReadCache -import com.twitter.timelines.data_processing.ml_util.aggregation_framework.AggregateGroup -import com.twitter.timelines.prediction.common.aggregates.real_time.TimelinesOnlineAggregationFeaturesOnlyConfig._ -import javax.inject.Inject -import javax.inject.Singleton - -object TweetEngagementRealTimeAggregateFeature - extends DataRecordInAFeature[TweetCandidate] - with FeatureWithDefaultOnFailure[TweetCandidate, DataRecord] { - override def defaultValue: DataRecord = new DataRecord() -} - -@Singleton -class TweetEngagementRealTimeAggregateFeatureHydrator @Inject() ( - @Named(TweetEngagementCache) override val client: ReadCache[Long, DataRecord], - override val statsReceiver: StatsReceiver) - extends BaseRealTimeAggregateBulkCandidateFeatureHydrator[Long] { - - override val identifier: FeatureHydratorIdentifier = - FeatureHydratorIdentifier("TweetEngagementRealTimeAggregate") - - override val outputFeature: DataRecordInAFeature[TweetCandidate] = - TweetEngagementRealTimeAggregateFeature - - override val aggregateGroups: Seq[AggregateGroup] = Seq( - tweetEngagement30MinuteCountsProd, - tweetEngagementTotalCountsProd, - tweetEngagementUserStateRealTimeAggregatesProd, - tweetNegativeEngagementUserStateRealTimeAggregates, - tweetNegativeEngagement6HourCounts, - tweetNegativeEngagementTotalCounts, - tweetShareEngagementsRealTimeAggregates, - tweetBCEDwellEngagementsRealTimeAggregates - ) - - override val aggregateGroupToPrefix: Map[AggregateGroup, String] = Map( - tweetShareEngagementsRealTimeAggregates -> "original_tweet.timelines.tweet_share_engagements_real_time_aggregates.", - tweetBCEDwellEngagementsRealTimeAggregates -> "original_tweet.timelines.tweet_bce_dwell_engagements_real_time_aggregates." - ) - - override def keysFromQueryAndCandidates( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Seq[Option[Long]] = { - candidates - .map(candidate => Some(CandidatesUtil.getOriginalTweetId(candidate))) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TwitterListEngagementRealTimeAggregateFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/TwitterListEngagementRealTimeAggregateFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..f078f8d69e9735a873747470cc555e37eb21f004 GIT binary patch literal 37515 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 "twitter_list.timelines.twitter_list_engagement_real_time_aggregates." - ) - - override def keysFromQueryAndCandidates( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Seq[Option[Long]] = { - candidates.map { candidate => - candidate.features - .getTry(TwitterListIdFeature) - .toOption - .flatten - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/UserAuthorEngagementRealTimeAggregateFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/UserAuthorEngagementRealTimeAggregateFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..e9fa05120b367d35b2828dfa3667974f0e8e3d24 GIT binary patch literal 37579 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 "user-author.timelines.user_author_engagement_real_time_aggregates.", - userAuthorShareEngagementsRealTimeAggregates -> "user-author.timelines.user_author_share_engagements_real_time_aggregates." - ) - - override def keysFromQueryAndCandidates( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Seq[Option[(Long, Long)]] = { - val userId = query.getRequiredUserId - candidates.map { candidate => - CandidatesUtil - .getOriginalAuthorId(candidate.features) - .map((userId, _)) - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/UserEngagementRealTimeAggregatesFeatureHydrator.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/UserEngagementRealTimeAggregatesFeatureHydrator.docx new file mode 100644 index 0000000000000000000000000000000000000000..cb8c1de43344815bca68d1b50c7acd590159338c GIT binary patch literal 37540 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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/product/scored_tweets/feature_hydrator/real_time_aggregates/UserEngagementRealTimeAggregatesFeatureHydrator.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/UserEngagementRealTimeAggregatesFeatureHydrator.scala deleted file mode 100644 index cc05b52aa..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates/UserEngagementRealTimeAggregatesFeatureHydrator.scala +++ /dev/null @@ -1,56 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.feature_hydrator.real_time_aggregates - -import com.google.inject.name.Named -import com.twitter.finagle.stats.StatsReceiver -import com.twitter.home_mixer.param.HomeMixerInjectionNames.UserEngagementCache -import com.twitter.ml.api.DataRecord -import com.twitter.product_mixer.core.feature.FeatureWithDefaultOnFailure -import com.twitter.product_mixer.core.feature.datarecord.DataRecordInAFeature -import com.twitter.product_mixer.core.model.common.identifier.FeatureHydratorIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.servo.cache.ReadCache -import com.twitter.timelines.data_processing.ml_util.aggregation_framework.AggregateGroup -import com.twitter.timelines.prediction.common.aggregates.real_time.TimelinesOnlineAggregationFeaturesOnlyConfig._ -import javax.inject.Inject -import javax.inject.Singleton - -object UserEngagementRealTimeAggregateFeature - extends DataRecordInAFeature[PipelineQuery] - with FeatureWithDefaultOnFailure[PipelineQuery, DataRecord] { - override def defaultValue: DataRecord = new DataRecord() -} - -@Singleton -class UserEngagementRealTimeAggregatesFeatureHydrator @Inject() ( - @Named(UserEngagementCache) override val client: ReadCache[Long, DataRecord], - override val statsReceiver: StatsReceiver) - extends BaseRealTimeAggregateQueryFeatureHydrator[Long] { - - override val identifier: FeatureHydratorIdentifier = - FeatureHydratorIdentifier("UserEngagementRealTimeAggregates") - - override val outputFeature: DataRecordInAFeature[PipelineQuery] = - UserEngagementRealTimeAggregateFeature - - val aggregateGroups: Seq[AggregateGroup] = Seq( - userEngagementRealTimeAggregatesProd, - userShareEngagementsRealTimeAggregates, - userBCEDwellEngagementsRealTimeAggregates, - userEngagement48HourRealTimeAggregatesProd, - userNegativeEngagementAuthorUserState72HourRealTimeAggregates, - userNegativeEngagementAuthorUserStateRealTimeAggregates, - userProfileEngagementRealTimeAggregates, - ) - - override val aggregateGroupToPrefix: Map[AggregateGroup, String] = Map( - userShareEngagementsRealTimeAggregates -> "user.timelines.user_share_engagements_real_time_aggregates.", - userBCEDwellEngagementsRealTimeAggregates -> "user.timelines.user_bce_dwell_engagements_real_time_aggregates.", - userEngagement48HourRealTimeAggregatesProd -> "user.timelines.user_engagement_48_hour_real_time_aggregates.", - userNegativeEngagementAuthorUserState72HourRealTimeAggregates -> "user.timelines.user_negative_engagement_author_user_state_72_hour_real_time_aggregates.", - userProfileEngagementRealTimeAggregates -> "user.timelines.user_profile_engagement_real_time_aggregates." - ) - - override def keysFromQueryAndCandidates(query: PipelineQuery): Option[Long] = { - Some(query.getRequiredUserId) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/BUILD.bazel deleted file mode 100644 index 07a2e7cb3..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/BUILD.bazel +++ /dev/null @@ -1,14 +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/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/model/candidate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/filter", - "stitch/stitch-core", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..ddecb521bca6342722c3719fac1000a8136f612c GIT binary patch literal 36887 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 x1-+|B and D). - */ -object DuplicateConversationTweetsFilter extends Filter[PipelineQuery, TweetCandidate] { - - override val identifier: FilterIdentifier = FilterIdentifier("DuplicateConversationTweets") - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[FilterResult[TweetCandidate]] = { - val allAncestors = candidates - .flatMap(_.features.getOrElse(AncestorsFeature, Seq.empty)) - .map(_.tweetId).toSet - - val (kept, removed) = candidates.partition { candidate => - !allAncestors.contains(CandidatesUtil.getOriginalTweetId(candidate)) - } - - Stitch.value(FilterResult(kept = kept.map(_.candidate), removed = removed.map(_.candidate))) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..a968fea76558e2c4a206d54f5450d8133bd7c9aa GIT binary patch literal 37250 zcmagEWmsIvwm*!!dvJGmcL)S`cMIA`aA-V0aCdiicXtTE-2x;K-2LB~nRCv}x%a;B zm)%cS)%wX=yQ^yNE@e4LC@e5AFgP%nG#>3L)uOm0a4@iO7%(tQP^+E60RgXq# z_830yk1M;qO!~Q#KS=mXWxp&lQ)_0~W+1c&@TP_vpKC~eHg1d`bg6TjVrX!-(r~I@ z>nlR>7)Au3efw_T%j`a(#c>2vUlw_-rn`w@6Y~88U>i(bJNE-JTkFk1AoqApli_2h zu1>VNuk}%o48GT$1WM*{Zy+5_1DQc0OgejKOqEaY-N4-)T~Q3B@WXPL;obb4g8ih1 z|0wEbE)9`7)ef33A_?++e*GK1oI2PDvvn+5pi(@B0gsrvnq{RlIwo zfa*J$=dR*?*R{ZWGkL~jI=z=9qC)hZIFl#uN5qnfcap+=&r2m6`y%6au|~N zodIMX>bt=@cIgo}6eyw=)OXyLnxw)Eo0vm-bPcDoV%6f3M)dYFD5b$=3Fy~|pJ=sQ zeVOI}FaT-!X09(KRc+tx+`rt5G=GvY_7^>hbwpQ7Q#5D8!b;7)skUgAAM*R-YUW{`@X;|%dH z*1D84-KLmjU%0VZJ?^uACMfJPqM9}6HlGD02pyClbAXw$Gr-Y>#SGwV@%tvvil0y% zU`3O<^O2fY&BH0~_G{0pKE_UoD{&iYff6g^*6QgHuS@8jGhwH3eFcyELXJ`zH0Hl%C@ zn}Pgd7(c~eJs0Qv=V`L6R@LIXAL4503M-#AMdNAPDUeC`vFLsV1Q3TOP{cQ&m$eiV zgJq(Z=7EPN51PnN8$!)3SHK53@7O`P;aBS_?f%%*W5Zu-Mqc|=+x}>F$>s+n(nSvb z^?t}$^&r!Nwibq+@Wkx_8VMDgLsTVA)xA}def!Iai?h?#j2omu1yV~W5=!#ByxEh| zO3}bPxOF|ZO~7DL-N^j>?mCkTmA}X*^Hz>p%$Mc~UYZmWVCF_1%80v=RVaK`;@$Oy zHCslaELMqFCX{Tu%s0mFsr(-eesAwz-z^g|-1A&O;T>6_7}CwTOT0e!UlRPYF4t>o zxW}Nn*g=7Tq5ZusCXSAOltq2QVT~27^N9h<;L{gtSTPm6_`pT6S&0q&+W5?t`El|O zaZqh+yFlNEFl@fhEH~i-4FXS%<4;RsmavVAA2qNi9`Z+(oi-4fYQBsdtW6z~yFisg zmtkuTp&K|E&5Tzqz%apoO4CxV9``11FrB<0hIMpNVwm}~iXyt%=v~~Q=;-tH*+Nw6 zms{Qa;CYgA)ADAj3aiqW3don5j}@M!GeTVN_im1Kl9P~8q#;aRIG`pxE39c(!lZE( zND0`CyUr&+LfIgCf4ZqR|B0S!Wv_=TI7cCROw8zbIfryVi0~cPtZ-Wt`1MBGu_Eh~ zb`1>oOXG0^sak!RR@i0KNoUbka~h^!-8kUt7Y{E|Le(XtHu#sz?@tF=wU~*b)`TnV z=#;+Gv%*q!6SWl|c9|>5gsO*WD3ghvOi2hB%;-+F4i6=kbPW{sqOfzg@X_6_>`;WHkt2;LTMev$n1#)w+^g&PgJ zDJ<~*{K2{doXuH4zgky&(Bky_&Y03MaM|U?@;$3jeo;35jF(VocLd|M`m26Qz9Y{> zz<2Z)Yk&9fsx}G37~1Mjzq1?I&!XHDpJTs6%PoDIo$Y$B70>7EJAla!ZJ&y@p}Tft z10_i+K~24}YDDq~OT%T#h)t$Y=rTu{ z4iytS_IL!S?#RM}c~cFg+R$#r1#nY(o0U|m$!U&CMQDx_{xTe3xRdh5=;OUiZ_cIp ztoG(oGpVjHj?gtXWdt+eL(1W`EW~gs)b>RnvxJ19%@35U zzqt-$3~e4|HJ7_T#GKIK>(9ZXecxVv*MQSVAcsOR?NA$r)X!O44PW@#(cB7*HY|*4 znHjQyuaMcl$NGK|@)0ZXotEkv3)=yE@ZbwFvTrW;g7LbMDuJ9Yaq{O450Th`HV;%B zGq0CQ%1Ns4WIpT|?#J&{6xswP?Ma;HNLw;@lA)4y%0i7@=CbjU8$ZOaD291=)fNOt zaV=bZa|h3c(3W9pyrObg{W2zRyIw|jdI;0*=Z$vxcv$)2SNe0s=O&-VOuChc)j~+7K3b!$ZbVY01 zGY->8-21p%own;@?u`hk+K|Th{4}hxyhMg6Eho|%)FMn6<1bCr$y`HkJpN5O!+^${<>JjSm7?MK-c>6^j|1!3`A?I*{DVESV@}w{jLSR{02Ka%XwA`;sJ&CBuGn96J;hfyp za3gA_XRqzC;wo6}Te6>EpL4~>bJ(fjI@P?F))#tMvxH^l3Ymou-IX+GRh>}*pZ)C&i4M-=65WdU zW$g`_LJ`ePzv{w}+9qU3yz3lL`}jF3v|p^*#5JoRT8qE*T-uPayR#|T5AFID_MelN zgFgWVJ7`s#08LTig`DV`%&k$QucPiZvIaY=I#ND%5dr zgN%llZ51gze{COk*Rr6v!t6<1(#Oif4~YuT2z6~#gY^iMO?eKYZP?XOg+HX#;y>5( z=tAg7&c>&jgyv*_^6DVJn5u5Q?5ecg7THL5>DyLp&)9G8zK5W1EdR`PR0WPe1Pd6Lp$0S<>c4XB^2yWA!sYie0ebdG z*p;sL?di!cFna!O9~%rdGVK5s??!0i-IZN;#-YG5_v`Cd+>bFQMt)Req9hus8k!%< zRxQ0N@LrkHEvh zsfX@qcJkVb!^>%g$kGVl^&#f%;c4kCx^Xj z;H&*x`(_9WaFxU`x#WCi;4n00e`jLtxTWG{;`p-BbKQ=oM1-WWueVF-GhbL_{oA#5 zgRb|}!rFwF`xlWnM{U3W`d!D~)xnL&yOWC1k4AT)B})UqCSl?ME8t4@h_{Y|+mgv= zMU&i=siRtvQ<1D!9ASCq_ZP}LBcVa}Ml5SjAW`mHew!z#6C)>&8@{|>Uqr;Ggif?J zL0eaQZ+>Y%VxTakAGP1m8{%!p+{Nj!`^272!vo$2WLS@tV6(2Aljw}6^Q4bi)ec#K~N%WL;~cSlR*MA8tOpMA%=Z@0eQS@+A0 z#G|EZ3h{u`)&>je7BE$c#78FkgzRmw=Ap;5uV!L_I=SKblWr&wJ)H{wQwMz4`6hlx ziU`m%LcPOB-~^MbCOr1K78SZE^b~`CCbR)Hw5D3*rPjz-N5q#mgr&11#v%mQ@8$Jy zz|s%y<$B}gQ@Z|hEpVlCOHioF{p>U}h37PzN9p*@*YFG|RGs6n^oBXuogCS^+H<0K zxE2H0z5o7Jr`sc)P0-!0C(Zpp_t?wrb;m|U^LoE_;Kp-^$X9kT^wtqZNPTN6>uJbR zfY(EyiIBbvSD(7~0okMib*B`SO_iiygT%B_cu>+ejLs))4(RIEeLZqwJw$_GsQwTh zIHwNG-=;{)p>37ir$HcA1~v6Dh^W*8K;I4+Uj}X7y&2q3$}GbQJ1DNXT0r2_7q?TM zY`t^}GK!ES*UY%juIt9CviFC!j3g{qp)5Gu4E(I!@~y@))3GsqPFXtKcXFx3DJ*@A zK|gPMS~9s(r?VMMv$_v@>olldoOwE#dvv^WdKr-) zNn(>i_U_)7j@}Cjf{67uZ3~}(r<~GAfL07kmUU-r%a@QPZGJc0r<2$7pY{xy#KYgv zeXz-H;l7Fa5E;?RMix==)SYkYMRJ{2<*iznh}zw9Q&zpzg@<3XXMpmB76 zgzAFOLO{6x2>p`^s*L8$hRox?2+mX}KrIM=s7UUFHqZMX68{4g>vdU;6PN-T^><-z z1Ry=CXdtgxjo+C_5t;r=A`>YbjVB`9AFAgQ+?&uke~P1WzohO0 zX*aQ^tMAzZxSx)nF3Dm?Qtt-@selxk#Msi-W{>VIzcx(0WqTJwN$vRqr;e483ATH9r@Gl@9k0#`1UWqqam0 zT5cpsq8)abS45NaqtCeF@ZX*sktCQrXN=Jp*UN}9w}#e9Z%=`4%bD)TLu=j4ej_1FB=t%Ith;1^cfaoEeXt-mRW*2`tXp^K`JJ93RHv%uIYY<3ZHl zWK(b>Ht!0`!`~uOJP5am?=mad-(!1t+xJx&M>u19zH;^RaX)KKphPX&bP20nykSyX zBcdE{kJMUD!0E85r&Q6)pVn*Q0>)?5@(%}UA<|pFtPTBDc)ejRH+t2akJkWF!i)RY5 z{3PrRbDp+hNpdHPewmUOT9n1}E9Ui{yXHoV$4fcl52&E|6HdX;XY_Gw?{V%G&89bP zaMQ^(e)*6)S^%eF=)p33%#(wh@==PKGulEoXH7v4i&bsGlF2^Qz5V2a>R|26yCh?=zx8D>G-` zr#x96{g0I~h;)wC;6X0PXg=2CH$`;CED9Yva+tn8@N7gTe7ePj;}2e;I+#-(q$QZ> zBfg(aPX~I=)aHFlzGv^93Knh2Z43d*%6Bvc?teOEV9k-VY@Lz6y{6B1%(y>Zk6gZ9 z4i9;Cyf}FR?_QJM7Ed1Mem);LvYK?hwu)rkvOLd>KzqG{p{`_jwhBWTZFRJyjNFht zsKz~U8LtNyl%Be{phzi9P*3FCrl80~60~=!pJuDJ$przvRxdm~WA^m;sQ6!S={{>n zJ~Wa(AOoJTYjGHE;$fOUAls3>TRut;AgD-|OP^!rDv2^z>~KE_7XNj1l-(&bt;JUB zDyaIdmKX)hW#;(#XKWwzg_Tadv;+yK*y{pCy6?LeBwTYZ<;u4(mAfu zAlPCndCmM_0Vcs}-GCNPjWU!bKmp;v>d1w(hx07VP8O#x+zhmBu3hH?Gb*@d&1 zqk=kFUGm&ld#2GeeP|{8Xtjk4uz8G#_w$Hd+j=-KcRyAs^Q~?Lr^iFdaGpY})aO{k zF?pxdpNkM?5lw%bHXV^&^ZP@Djr8av(U!usJOaL68qphiQMc>v1OeAlX$?I#R+WW- zf9~eseoUzcI@1t|y3$KMs?e6m%exkdX%WD6f18T)LP4>?Ej!`(<@k!-4~5Rl_};JM zjQVOZza}vqlk)LbwVJekgq5I`rbQgjJH)7WsYcyE?aO_uRq&M>9xET_KNeY`VVosM z<~Wyw;_{SmDqA@zE62^KBhK^D(1{B0%Q|-87>reM!6RQHte-K+S70RBSt6qMfzlCs zrc2~=fjE%E2FNO9+*&P@L`lzRPgcny-s0zMG_M=;(}o~L33{_7 z49*y4NgjFM?ihdjIxw@L99w^9x@la;q;*@LrI!-T5< zK~bHu{3Ac_a(V5s=8)3GU8bD^WzEmrP!$fZZOM^`A+Lgg^!D3%Oy!WZNP6DcxYGQ^ zA849GtqvND{TJLFEvB<zW$#!x!1W|=*UvT8JoNaAY7cH_oP=i^s- zvuJC-3xtE#4nyWIM{X@NW;RL-YpT@S3{!AY7Pq7auC6*Wd!$u|POW`ul8SCjMcGDe zLfLO?qX*)$4ACE|c*W~?OA$3I{cMv9Pu5k}+GLttI*dDtc~)d~o%L1h*~IL zrFmpI6hBPyim~q%B3jy6HKY{^l@#4(lCQX|LVMe^?nEfW;*5FTc~(@%A1lWXYHM?v zt}3}6ZdX-OwC)`o;pyNZ#PpJxp^l=}!+vkJJNvZE(ab`XvQHk_SIr1UrNDsrsJ#?j z_yF6{o%{Sz)%M3bN(_8ySvgg=HZt#NM(GtYrs~Q^wCS8Lvvy zuf!th&&>3Nu)QQ0X!OgNz|!01s{A-davT843kk@xb8M3@YiPM_oDF!9FevXiQf|`P zCaX?0eSEP6oEaG8u?tJfW4cygRmxP9oNkK;)LWb^xK>AP%*&uV_b<01hO;`yiXw|yJ=*h<0eTfb_y5eiO5jRXP8ZclFE{-863f8)rfcS>GOP4*}tR5V?zGU zZ#D^f(z)4rHu$vut^mRwMfKxV^AzXL4DiQF+Gz{F$8S!M*E>_pjf0O}t0R6vzR!8N zz=X9#EJ!+G3tGOq;5sZS*L)1l%=Hh?k(i316Y0!-H9Rc19BW!6)q8~n9G3Jwzj~%q zI!aJ8da57a8SZfa-}4H-5#gZ=@9^3VwY2UMY*E2*v9UT7KR!6Vd@Y&U@j!_3p7}I{ z_;dR98^k?T1!v;=@(Q%(SdvCnc5F6;TZX;;X`I}HmP(s`cE_vU>7#@+2`Vm=P$BXd z+p(Lh=1I23o-y*-QFlK~K5-!DyjkjPXipXDVNwM4ffYWYQB9t2P7UU%O@|@z3C;FI>`>gufxLUk}j1n zKiDj(busT(k>cB>#{Gkr8#C6RJHhSUaAT!PqZs8zr|>@Rt{84V@qLWX;dqMNP{u9{ z+tk+E#`_V~g{kOr&FyNpP^z_vsfva62gmu>Xs@acR#?k^~Fcla)a!>fmn(IJr(zcnPQW2bE{~P49;5zdP#~tqer@pPr_4Q2 zjsULeO^o6Ia~*NOfj{O%4)hAN{t#co(hp=c5X=;|1fV+n$5hM4kiVLD$9@q?Zi}&? zE0JQc>kfRUv$i;ZfBFJq)1P|;ag_X8I+^O)5{VaHaO>idfd0zGGUs=S3TFupw?|}1 z*7r!HjCJ?nm+pOCKfTvb6?nR_hf!VK4#kh;M0s|mqzd!9Ob6;$cl!wc+Ul1d%cV;D zM3>p>%&h=ON>SLc^e-=YS=*ahFhFpTNxj3%oQ=#2VUXRCs@Iw0h7?==l1+EP7cq{k z1~*rJEA+L)8e#OX3|kJj&VIUlMH9kTx&`Z899)SuZ za$oLihi{OVUN$dtQu7%NHqEY5IVvpBoyxtKM@4*+s43;RH}NO2b|ryco?TJjN^v)r z!<1`m{4lyQ2m(5@b*Wv^Zw@Nc?H^{X=HxrUI)RkFk zQZ(^z`U$Mjk2Fp~3*0%FVwcn+s+sdQGc_8REFUAi=(a;3vXxn;$h=zByGm2+Ld^xN z=bvf@4#I=n_EK_5@9O*0M47p0(cf__U7@ppyeQ6ktV6}Oqs-HH!Nh;yS zx@k7^PL<|FX~PY5(sk(yYlws!@M{yV^pFrjH+4{eu8pmQKsb4%m3P3I(fes)$Vu50*&&Lx|s#7M~a-e!NVh3h|ATPk_i9v+beY_#^ub_8H7j#dI*FVhId8t%sF3( zso(Roz?I5*RA>kt{gPCa66N;}=qD2p`JpRWKu!v6l+Y(i6ZsKD6&Ok4(L8dRoz_)u zjUM}N9w^Fx@hI-e;)3s#TqvX08oL|~v#`>a!qI{(C4T!Urhd)J*WM;2YS6D&b)<6G z$EXga&IoaYhl+)w4mE%N`o#9m8pmf92Yk#ezBz$zw6*&zs+z(IHCot8N6*x+M_oEL5UU;H~8(&wZ^?{%g?Npt`&X~3^|A94eQMWp36 zC!EEkAcY!Kkgc*99UxfiE=?ROVGiR~~pe8!<1`Ik(n>qFj?*RV*eo zduSkC3qRp@d@L`P61|MlEXy7i)-qEPz2p<}sg5SkWl)CdBm~M!i3XFC5*aZ4+Z+N> zlY&%lG_KHOl!F7ha>}`8g%?~14L0~1-T#?Q+EJ+NGmoI-(Vu~l8EyYd@mRn3i&W=u z16WA1Q>gG@ifH6IypC(7u@FlD>{rygIc#UOv?NA)3tlb|F&H5)(wdH*}(CLmAcz zx~B=PnZBb!EKH|+r7cfJz#Mqt zGilvuo2NjAMwgo~4dzVxJ_mfTH`*};N0PCaf$=kWL)K_zO>7$9607&FMUD;P*D|?o}*^IEXZHQfDwVI7y_i zp;1I~oH=Y9iMSO-^F?R~XIKu4m|sU65oGUqdS}Cjet7SisWD2|aKJX1vkeuTc`(8N z!HDZp#kn(K5>_(R=A6D3qlIC84M+gvi^Ze`Hx*@+HbkpSt**uUGU-O%z>F3vphNC` zAoDkk6cy>ZD#c5AvcG+=2>tfm7pg7qF{8RB6laR|D@Y zfh9eKA>O*P`?mq1L`B)zz4a=_I=vL%zHX;uC9YHQh#j&cH#JOk$PTlqo|VIkxGi6| zmGWnFL&oxktvYIkI7~o%Buit$_$zOXp zT}0Pc<-aKAI2TuRGOGDvHnk0PvPzwjk6g=i1G7BH9d3`Y_DlCeypElPA*ShWhW0Q` zw{_;&*S#b>E2eU)Y1zz%HPRs75@5U5LFR&yU3m)w4X81J*J?>Me$d?Bc;e%3CMan7 z&mi9a8I&}&&vbKeImj38f^qnpDzy^X?pz@gbK-uGFN))xS0~0{rBu`Jem4Shw8MF& zyYbA1OIk3w7h160%s<+hsAT0AVVccoro%0Kb~A_5kc14wT^93ofA@DFvxm7Hm3UiB z>v%c_6#*R~ofQ9QPmVX|W=mTV%;BX;z6f{0w_?Bcpqkc+u=zs?_bBOfSxtp`bpsjd=khhxkt<6&{)Q#qXF?`F0B~Eg$ zw><`9UkFtj&>&5_afi&1kFgJ9z$E-PwcH=n7$9m`x!=3*$+pc!^K&|jG*uc z(?XG}9dy(tH{Wp>i03vdnW-HV?b_?Z_`S<6de`DTkMtM$t?MX=Tn+XQ@)kBu%n0WH zgM8LlcKabZWozB}FYI!HRx^LuYN5~?2 zYyUC+A^+xnX*ad27^fTBevz{q9b3jx*mHqM1YEDr%1NXIXgxGk{;gwhNGT z%30+GjjjMW+jzMdknD9Pnr}^%YYj2g^Zl^9ng2_Gs8WwN1HR;(`4m9#Q+YzM?6A-* zXVk}Z{}cHIpFK_mukxeP2?E8r)w8`aK7|S+G08bm&Z^Fo@}f<-q>s9=AJauSBzptj zlKC0?-Mp^bmn#3|QTMKRZ0K)bSKf2xf0+EqS#{Gr+&@~zyp1NmD!T^_SpQOpFo3v!Ot>>aKr__~X=AKL zlUwFN3+GivhykHN4-35=Kh7pbD(R>$JE(Hv`Kq&9f>W@cnP1)9<$OB?E;>-o1!z){4%dB~ML*N9(v}J--PFbc1s4kX z@z2Ae8P=RiY}T_KyKtJPTl#K0dl8lqFT>8zwQ47gy?Xf@kYNVeJ_*=5*vmw-HOr>CMfRre7Eke=JsyL9k6A z=dZTYN-THs?tj+(82An13X!_|(7Rtrc5(*HQEsv(LYnj-)C_kb!`tPeag+SYwnr?U z|4L1YZrf?6C}8zB4+B8VqO2vC{9plFK{4BCT#`>F@-3Pg7yj%536ye#!GutxaUa4 zwN9ox9^vbsD zg|lB+MCvzD_e_mjRmSx5IDwDe5pp*u2mTMxdu7Lt)8%dl*fMmpQ|!7i6YXcd~e0I_RXyN_@o7zFQfD}-a>EdDvgjM=9g8J(``T-6e|gqD;6%qaevpT;_yhUYYLPKBSxwG z0iU&KR*|zPK_&bFO?~&+BfKVw!|9XQ;{mJ?_5)h+_4*j*3SKUIPWL8YJaLKOutYqk zEJXO4u(SqOxeRq-S^XD>>!XS*#grlk#g1pR#;eg*=t zSW#r0DD|3uFy5!am3ylzkfc1O0{fZ%_Ov`_N)}q=1G@V8u~%PB6eg={-_viw&uG*) z>wGRC!GZq~9GFuEE%K+}zTbk+e+#ZAICgbod(b?#>-L5gQ76%2xKAP(v#TH(lm83Y zqpv0@DCS?l%I%-bqj9H(!LXmNZ-8pWotwNO*w6Az_j!k+zFqzZz|!Gj5Yb#rIf1pC zxzIm=qXrRxDG9S>+wY-8kkz2DpYdwkUpl=F&buGPl%Pc-xh+@JiW=BNp+$VVwi4-T zc&0(EYKXuee9A^FxgghdW!qLq*9GeXfbUU0ZX2mXM5WtHVp~UEAU`7u2*7IXzL}yx z5|A_nP)f`?H;wyP&V53!kYSEnUFh$BVqdGDOQg;RUCg^KKaUgz<_!O}r2ZG$Sx4lM%kyuSn;g`rn}$j3e1)$$MNy2wrIH)JPZnE8&p2qU1q z{ccc%4_26jy-I&fEJ%MT!h+5zEDbZ`vwomuY!$0$iKK=B0-h3Tsb2owbrb5$La79kKDeli{9P=uAQJlDf z$QoTC56x>RSl0GAI(l zia$G?Ab7j=;`RqBA>cz=m;YYtxVrz|&;TBSBcTr(WZ#8wpVQ7}oRZ4GMk1=>5giHFsnh_{1b>N~S!= zqSLdsuJ|#vB5t|lBKOT)>~i||Roh~6#a`#BMN`Tu_aRy9d+ru(F301g!Xq&*#j$ggLcn6;;q>-HNmCIQbD&;9 zFc_Z!sHmmoD+}Z&b$KJ$I@DmD*ff}v)f^l?wCY!IMyVK5|ESqu#q3u?lg0X|etLTOTi*2|=^eC0-!@FeTW@xbu2hfe0!p-IKc zNNpWh?G+C@CdONQJj*vpQwxlrTqW!J#sJl>x)!&$B-4Rsc?Og)sYi zc9zsAt6x&fm3mZ~)HCB>UhF+9kv0#KwcoKbOx#qD%Zs8UChb4YS;92wl;PTIgE3&@ zC26NkSK47+vb%LLttr>KRLYaOg(tZtCPh78j9TWPj@lK-R?3ri9VBLCU@)f~TUa3D zrD~@sE{d92WFN1&#G!PYG}MP2dU9OoFdPGX9a}!k#gXHKQqr5L*-%z z_l=TsgIxCgm^A*q3ur3)6(2gyhNmN~gj6hmG_14ilCs1_1gmyvW~F ztPw+|+jTQMW+0pFsh+GPUUsIV?HZ4Uve`-40uoo+?>fae>)6dTlaC*h)BN>m875ra zrjhtfiwql0$h>RI-&1K8voTzC^&&4PC^utU9crhE{=#55re$atKDC>y9%U!^3M!9G z4d4Djaqz@``knCtz}VCRR7e17^0B9|w;H>xxScEN;wZs`UHwG6hN;D6W#uwy=E(TA zZ-00aSpz$`BKgcX)HeCwD+(dv=yMyK_5xD{%53uovC2w;O1snOb#MYNwkI^qzcG60 z=s?0yYZfPPebv@sz02h5;D7-!CL}>$4Mn;r@*iu4CxzG6|B$2>#*Q!w`BpPA?T~Mj zC7fG!QM}cpC|ESYqf?dJQU;i@yZzL^{;flMJ~GLLCs9l=#NcqLLq&30e_v~)ojN!e zI!;FtJ#08v;^xpUV~F$-ds3bIwU3(}F}0s$mY`|E0qYBVIRReDjB~I%3w7*Q)Yz{+ z?{x#=p)ld7(d1*BORc=YODOyuMEf$H3XExi6|UkT@zv?prC@+ES>-%j<-8E?a42jz zdNg&?Qc}NOTeLvvTP=)A{RL`uI7Yzf)DWOau~hln5fd`@w(lk!{WT;#=T=7rK$$EO z&yT$Btii1`wj&Qooz_l)x>QtI47YUqv6}~DTEku(+7Aawh#S&u(dY)>kO+EpJWp^d z5$G$;<6s1;DB*9);G6qFx#BFj;)q!Uk1*H}wsxq?C5fzBqf02*&OGYf;X%0&V$cS; zf!J}bJNgSpx*=(2u+8^Xi}2VV+;U3tAbgJb#6k>3LvWfg?~v)2rw23Yj*BO8X#TAN z5%o_MA-z{biWMrF)i$nGfrmwvKnPs!Nbhme|~sqP^QJuf(zAM>7vVxQWl$zJtV`*BtJ zF^Ysb=!e$VH?S_Ouf1TqQQ~=`HkAycA&rB3@oVsFVbJ!-XK_UcccowIb*lRjN?A9+y1|YulR)o(@g56qBy> z1jh!I?!Mr`To|YOOp!F?F-M1@kQMabxa9!(!JQr zb?i9tG3ilGRewM*Wud4{o?>Bcvqq^9C=R{kk?c^=|tbfwsE+OpoHDO`n`I1c0c*HZB%g|-)$kiao-;}v;mg|s~2;&{I1T7 z_5d_n>nFDnH+#FD4Tjxs2Q&Mp8E+3~Z;!9X?j0{VGZPyImrpmR9W^zmXJ0_r5sJv33nr&wGsDeV_x3po~4rmleRUg;e&{q zvxtqCvbGdtBU_e;(5p9Bm>}89I~!l?z1wK+nh96u%Q?%Z`ehnF2N9Z{WuT|`3%B)^ zYn_p=zEI7rU$Ol|iY3s`@2%Ou&)sHkZNj&(=YhE`;0);JDQwhP)_&_zQ1Zt2W;)@L zFp?9T5!#Zn@8#Fp<-WG>;yjRXb83C#b;7f<7@weYC{0hodsS;>6q>!78@e{M^xdx- z`Evbr@8Uhn%!ojZgA?yIUR-1N1dE3Q8Q{u?M(5l&={Vi)5U6>))&t-H)GRG(+El%? zzB*eo=)g#>@<*xM&bry~T^#ulISbRZ{Hi5z$scd3_o&YOa{#)>+@$QYtA4B1vYcAkmD8nYej++Ii@|nLBcN zc*{;c_B%_CS=xIeAUSv|8w#CT^YZh_m4g*JBQ6jjPOkZxpQ&GOSUB+P@>p?rP16xs zCqV$HIA$V3#gZpMd3|fx*l8;mmltBf{aNkHQ`y8#)p)>4fD0I*vKgVUv67sRR+^tq zEzN>g5l|a)yUhrtP;IbpRm;xV5RE>w;(^TN*(B4xgg%CkXwM7Wp6w7+hmFRZ$5Q|vudO$hJwQ7H{ zz!$Av{61+$<0!}X2iv~t0_>r5`rdQGAn5x39B%bLMZ)YL&8bgQ5a(i2ceEU2Sax)s{- z-w=e0a4ldj=>$DgyT1qhEBf~!k12a_!s623D2>12|3LZsfWM>s?<(-PTA&?M^H(8w zVQcb^cHXwMBzWv7e z`+&cBu9a?tp4TJa1P#Lg4f|~k#n!n(_7Uaw>N5H%WS?wbkNUYrHlY&?=rixfB*N4( zaRWJW%!H*mGed8jyo-Eo-0p^0)cC9ol|7vc2W18rkDPEODPe#eKc^cz`=`_Wt>@p4E*l znANfQ^pm+7wz)tUkape5g%D$nZ5Ucst)D1y%#Y;?tdF5*xbJxzz zWsL97vBQPOiHGki*U#2~~F&o>rrJ}-Q2J?%}!%HPcKNmy=*@-R*QTofrTPj75IgHc7_|Oul~bK4qSx>QL%1MP}U`Y*y4Z^Eo3Dn3PB+<4?|gNE7Idt zT0TPy>k@mcf!p={7NrIE*8bs25_%9WTb;rqAH6T3o5I6RIB+54v)GQL^hdm};-0$5 z`(@I!N>3>J;Sb7-?Rd6QFA@;dLlW#L*a2y3(Pa}Qx1mUClMl-AQRN7o5>DruBD2B@ zed-sSp;!tx|BtY@fQsYWx(9K0cXxLW65JYhcXtUE+}+*X-QAtw7TlfS2?Uu=e(!tp zy*D%eS-mJ0Yc>1qy>Hd+b5HfH(@@$qB)mwlOhm+2|)I!Mj!O?JWgX3}^6ZS{+%H-qmkk_YY}EXKuB zgQt!_o=42By)M$|kW=HQZCBkFF~HV}$60$fnXhv~8#crCWp-K~PYL|-_Rh@zCcZe%u003uqyL$ji^@#D0|kBhaGjHnsC zTT26WL(nfgbOB`tDT9l*%{5NEYpQ{%_9Z5ALBM@rO>1sYLYGI3%dxe%5*d!Prldy( zXZEDKUZ(WR=OomnnFcSnQ~C8G%Xe%Uy>MJ{ene;s>|L~sT#vUWCp0LdkJBgEJWhX5O?~LW*j)n|DMDD=bylxih<~1R zde@`Q&GFz-opAQ+X3elKwJF)zxll~{bRg4=>iYJmvuxzWMSJ}5<_owS4p-?VTd#CMX^NJaz%}K$OSn5n^mn~0v^NPj5#{GSxvGaBg6HC=kd$-ub@wl{| zGCnye>@ z>nwdI`BipuQqglVi5_*X=PPOb&gVzVy0znCbuQ*T7apwN)X^Y$UC)ltnmU^&-AorA zLp>Hdx+;&~p79RMdlk#Liocojw^*MW@GUn_FfUa=PwoiUy_?+DZzV@w(p{Fpm&VIkE zm^-EXAs;72o0lH`t?Vhq!OOFI?+&78?+*P(uq5887nI@5RW`xncNVgya1uU=$5Why zB9kR#SB}gBVaLt47pI>SV_QGQ+VPWqenvq*@REz3U}c4(%9JH1g$bAbL_&4wpZ)-j z5^83KA~xDggsb9gD)&18!8?hdp78p4KmIv0CN*qPnyf7Aw(&RpxBv#Zt@xWlR zDq}Bk0#WL`L1rw#IVl)F2je1#RW#{$`=zH=Pdrvt_gqcc5SHo7grT!nS7YpX#UzAy zv&PRmc`f`wJJ};|<*IN%%<^C)N9`O;Cp$GcQ>KJYPP|m6eW$UC z>8_+C*qD|4x^oyZ+s>HE)_sq>xX%)AZ@!nEB{W;=NvD;TA&Xy4dUIq^HB|0MfQeYY zyt;&i9xl>CWnCRO>v&+F#{(KhXK+n7vwiln$VCLHbX0AESC1;Kj_#OzSDvqI9YL1#B1oms=*5|Lf@JTj135t~^-o zbgX)7KLNq5pIt8$aHScxY>@Vi5GyTxC?sP2JG>i%R#GDD$nAIJF|y(%uRe1pB*Z>j z<{BSuyDz^XfL|s=8kb8P)Pkw7tle}{n`@NHw2b0 zF!u?RVOVjeeLfBr9Ou1t^ZJLhqAqlEs=uQyTP_pB&7Nn+8ditT-AUQX_u4HSW5qf5sL4c?Z+U=DKP}*&e6uY^g!)TqwCl-^^}9_Pi4X+00sy3qtr=O15Xny_wY@(oT|>95pOM~A;s zf0nLx^FSlULf~He}YMifsDQh z-lY}!C)70}uW5^tYy*FNwDw>RDAdL%$!3=R{W(u`cYS(&6>ucBfg_=OJ)=;y)jL_n zo2~KFq|s_6TKboLTiQTgT!%nY_drLkLm3B}^v`9^&J?2kA-@r&_jZq8cb;9IvaLDZ zTw%MLf$eGcVBZ_9SW?<%bNLbDvfAQS&#tR#D7{uiw&)91T2SmmN$n*}Xh#FS%CAwo zdw{^`fRJ8!-I`Vd>Wbtv5Dgf-wGJkVN2qg2D=N*XiP(&WsBIRg>313PdeHT?(DgHX zQY{I2^YOp2$@iQN@;5E;4-v4qA~j!?fZ{NMi!SR_$@S+vuFy0(qRyoRR) zmK!?YEZR_^m2K)73IZ23N)+f}ZK*xgx2ik)i?i`!`;98do|AhuoM$zdH>tBVa1J%F z4)TIwZLtVjh$kRr`mTF5T4yyzNH~1Z-=9`MqEiD3&TG_4C1<^CFgoVZIY%}zveqK?&_teE(VmxNmlexuL2fWNMS*u*xju`HXHzqsppY_^r znMm8ef2WQ3acvNr!=fyVrorlEU#Ul3PMo?jeELY%AAda>vd`lss3y`FA+_2xI#>2R zEm(&w)QZBCq%C+#Qq?Koe6ZUuoP<2Ckw_VdJrk?EUArA$d%4mPIejF>h&v-9xegwb zx)*u*VN9zd%-}t}R+!zd*QHu2l4}fFPY8nFPqi~xlH!wl4mfj5Ud|!8vS1ce040EVX9O5wC=MZnJ|LeFyY`Q^ z6swSefQYiQ3}Yij|>tJg!XFRRqE3h&Qubk~L)b+2S16Pw$| zkXY8AHVlSAAp;?-cVawK4F~C;LqK4C3}p#Kx{V$A{=((UqZ zNWQ1gr3QpV&G$N&RN?`utt_*@w*2xLLO35QbCD*j0qoE&6b8ikw@59& z*zRp8OykR^&k&=*Fu$UDrluVeR?Lpuq<*6{=@ffbpaiso4vYjXf_#R6L0v0=b)3c7 zqF2AlRKp`fVJ~o5U!Y^TtFwbabv1>%4}rPN7)&2v{Nn+Gujw49_i7>_1O^0QrXNK` zVTdPNEGep{+Uxu%)}2}m1j4$2H^v!LN=SC&DGDL@8G4($R*LcyB=@4UCmD>O~3oq=LiV9)cT<5-<{nz-RbF zd!Yga)V}~1$N1ceKti9V{m+2;{=W|xfROCh*qzhk(;cwxo4)x9%nEq)UA}alUXumT zLqIpCAfOQBKl>WSztitq_q~#<_`bELLOKl?#fL*p;wQl&PG%)Vpik-~{eBXjBpL)c z4gsYT_%RePTWT^aL>8v} ze)q;8fRFfxK?XTKCK`)c@>ulcYxENBcpF*7B7TZ0V@F!YGs)YS?s4N-H0FTZ8lCo; z=;xS{oQay_;XM7P1J~o(y4Qg!?u9C1=%#`0V&@X5KK+U8Y4ti&MdK=sM(U%jDeYiC zne(Z#XN%bCsKv7OE_;!Yz1aY}go zCmJ8$doNUdzwbk_>8p8fQpoy!tok1UM9>F`#;SlLD9V;I`i!LYyA%W&+g~zI#ofMI zQ8zDpkKFr@QwkBI*cn)<8OPXoCZ`)dEO;KabvsHH);BM_-M-T^+tczMZ#CX;O4%OO zfQi7gPjGcR-TJ|+c~AB9$B!1D+&$h#J>CNN^Au#xW!qEmlb1^COabOo8f-KTd-Ur` zcQ0m)gBM||JK?L$LX>z0rrMh3nFf~81rCcOFcKOkG_pIoZlzFlc|#Zf2wUChUHt*P zg6Xtw8YTB0vsQsj7m1#RyWgv2k?MAE>iqB&%tay?uGH)mm9u&ic{3OdCh~_v>r53U zFVb3I>WKCI$o2bPlP!G`tc)_Od<$4Zdok(oPGqfyE*u8`9i?-Xcyx~nXZ??obCho1r0(}yQ$d(dPf(ndoB73DUnyObi61L)lAnteMshd5yd`4o zJp%EDFVgbRVwl+&8Q5o-IY#H&J|_(NxXF3E0bNVa>dDBudD-~+Qd8$?H`r?Ar(_n@ z^PafSW2P@84r<`>wmxME_X`j-&~6%ZN6$@DA#X5|t@;%SGl=boPxW#F6EwB?|3l9? z(hjyf?colG;vt+}}Hd=Y1Y(M5I;Fu>PX_&3#v7Fo@!j zq~q3GR8UKn26PY}q*AL!3A_e1{Dj2k_rZz}t$%V**O5jxxs)t+Hr6I4I=1wR6sSfF zlP@8NDxtBL(6_{Gzp~%_*~K4pD;Jj;OYpj-eOB_VEbkpFQ%eK+pg5Mz`g<;KEj;Qe za?M|JK`?0Yh2;s+D;>`i)!T!0Q+p7caSz$X&E9nPMsN({WMDtDG+~#bOp~Oqcf7iR zDCfjGKE!f}vAYaYhMPZvfM2@Pg`15863eBuMk(!Fxhfc!(hFjx(;EU!5deM z{SU@V$6yp|KM`hQh^0BR9BHNqN0ZC*1xPU;>E0=!Rk-2=v`V<{L$9=O{Cm zA+&#Jxik3@`m0h?5cH5E&QB9K0dtH`{lcZBnV^so5$3(=mhQA)fPDVMhvFd3GzwWQ zmWVFv9ebjD1)C<#jM&F0#KrwbjPw7e7)uR~-&QSEv>6%tBFa?kzqPgb&ozk}d2g^Q zwe$M(=xuVqduFtCaKH1u_?xiNwjk-%%B9gWZEbioZU0!{ZSdBt@s;m-czc`L7s|Rq zZZdU}cCgA|`B=Aa8PAOdj4j+NoP|sq2wpyA3=Nz+El1{+BbpE6Gm081J2!+ja1(}A zTR7rv2Vr`zS1PGu7~E}$ieB>y3nPF@6Kj)HdA`)`wh37(Y?6xc72#=j9;Rx@>qwv*HC0xa8VBeOQ0-K@@H9z2(j*Z~jx7C(H#0@l9 z;?({$)Cq$XT)!1fKPIji;8_LVaZJlBj;W!zJs47|wEY>gX0vf0MN$9TlZdB?Cq5`1 zO&!_d-nGS)1X?n-ux0R_gwr6(`ugyld`MdL_5JQu(Ovmp zI#lvcfI8k?{zu3A#AYKK+5drrTcK9A-^k;OVyd$K*S}Vvr~k3yN%?;up2~q%p#LAN z7&ST!899VH32RKcv-Y9zoSeE{#~WF-?lnSa`{WDaUK9VukYzoWIc?1=6WwfQ*8$Ph z_igJ3hQaju8|O{~fJ^FFEzy!M7f-+e)Y=+g^yayXTPqV}t7O_gjACMkcjm7AfzLK; zBN;=a{)XccD!D!$e*yRrW~I+}I6m*UanX7xMxi9d3RALvMyrN&h3-l1^m`v9QF#i( z73Y0A1Ig@I4u&1YT&mGMvWY;{IdC%3x|kqDcqn2{IY5G;qX09x@d7PoEncKJK&l8* z^9{$X$qX-LsX6_;BnYV>^tQ8_bKQrZak-fV0mX)gWGPW|=>87D?3+b6CyI^KoqUuF zp=hJlRH6;VRH)`3)CLI##yZUA#tY*=sMP_Q|3V$XODR78i`o#HFtCs*@Q{OLqm2U< z&Pjk`EnU4=uD+|NPVcV?-Vj=>9LTfET8tFL&>@il9nP5z!-#1!j5etwLf^%-5{`&F zj2F(S?Y|tS#H~}UL<=2Qq0e`UVuM2$z=^5a$+*HH^lz?87Gnj~P2des#)#4}#7?y) zQjnxt&M{!(KryJ=bSvR0pBnM+$UKPt|qMjP~T3p;kNuRo#2$Y5UJi1v-JFiS3st( zJ~vq##c3=G1q>d8W%y{aG=pWMD#K!2nTEtSj29|nD8D>uAH_L?3_gs91k*yX;<&`+ zMq`up8EBfQvW8mr1&(ryTB>dl4Z|=VAUHLW)A)$GCO<_F+h#Zv!5DEEkFo!JtUQZx zr5po!RF#>~HJmeAzpZrJ`Tr)1hhg*HtM^G=BS5B(g!Y}oUN7q`yKoP2!OvFh#OH?R zOArqmK4hujZjOPDP1=NIwrV5f=QilWaC~+veWEY3qe+GxH_6q_og6 znpwPYVHpYjBzw)O7`&{iY}BHNzzi&2l+s)IA-=zmL?pQdCbGOQ7hTF2O30K#$tX5} z3Qro{;(!F{nK~U&OzD8ULS^JU($uq3N+|(BmDL+pp0Lh?AX?U$m~S~MUsVqQ(?vO@ zR~2D0*;=WAS{xIW0Zv(5D=I(orApeL&iqDH0u%EXr@Syhl{MPpAY=B^fNg%{pZSYU zeN}WqMLg1rCO>k0N~+v=_uENQ;e-X3F%0qBvy`nyS)7E`}OKJ&hEm8Dk*b z`K%dYW%>Xzu9|APNq(e+@`xu+XcO;Gh^7EK;7s6FshJb=Ndc3#u_1`goVkdW2m4Q^ z)_1AK9H1u>Xllf)q+gyi`w>j;Q)C3v}y&79_x9{jp%C zD>CVs_Z*@i9xge;{ zOI7mVhZKdsg+ki|t_x#w3MTTYReuvpD~rU)I2FchN}E4)$bt%TnjkyX08$3lf~Td; zJb;vw3MK!GG8x!^QszmYHMi9t$u#6r6px9cP{8CBv?%x$X|}+}E*5KS!pkH{oSlh9 z-TZ1dRj={BLRn7dcc9#@+UzNUHn}W-V*%}aCB&-Os$E`D{2BGY@ zn>yl@4A?dLWnKz~?mP%62|lrqtTG+_Dcftt8NuYVD~dJAQZn^Y4E0bxhj((ND)~aE zsoiD$@ax$h5-s+V=YTXNfjt`&^WM$6WVDxT6GrJ-;@r4*__r2s`i@OVeQ1jcPCSPKjV znQd+3M{EiLDW0?f?oHOPVDMrfC0>sOhB#7wv4KNyEGeF+r3;c2$M%W#?%<)>pRm0b zHoh3%^)noczI)xv`T!7Aqm3Q)ai(vT@Ss@-5FC~1yj+Gz=nV&Bu^9mO)!5*>#T zVPtr+p-A>z3nQZv&|=X?Sov{=&zb)?#U$#`ZUUq)6%f4WawAs661$emmV~THvbUxp z8KpY7M|E(Ah9tD30c{Rnw1y8GR&l=S>BIB;k*aa%#;Ez zng2CImj`TS>Sz#^izE|1Y!-wf8=$Jet~3}ixE5Eo`34Cz>zmmr;+JXCJrLS>M=zvY zM=apu+h?H};vFw59Hg`0!_uOsWO-hF@<^}&_y2??s}R*n!1x=MFXN!%M+yU-Zvd-Q zvNEQnUZr!T@Nc#dWys95swg^J;bsK7JWwf~oN_Pg!eDgC1`V_l)BmT>{2qgrc#WbM za)O2d!6ph@R?4tpS^tU)l0Fk>d_qYOOTdFs;ZT~fctyjtwa9yS$~z-K~}H&@yVY$=z+Mb$u1uWSrtFly2l)$Z2h}=+Gqd0huG72 z@;OIe$%mIlGBTua9+G|kaM3n0qyqd=%8E5q7Z85Y=>cJDwepReyrytIlJhyeG&mP5 zr!XukRlj|tm!GM*gBS_WvMiBn;4~rbFtei~1b1Cq;esHm;ezR`eM<+(vBIx=%EP#~ z(8I(ie)$}Mzk)z-!)TDU;@?OKtI7rTk#{Y^g_`ARkAvp>O@8kn3B^?|gtJ(n`t@hG zSbQUU_x}}y$Rqv=dJDbC8u<$t<$ZJQ)>gnI?T2Z{R=5x_kkCJY1R_$u-9nq{eg?ib zjDMK86VLCah-O+tkB52bd4V)s$Ul$t-4LQ96H0`|*dl~d3MA?m_&#!allzR;A8z%a zW#K|3?}mI5sD2I#c3ytpx9F2YCQWKyY zMYuNnzdln`RH)g?R1M8?*6;Izn+f%O+$vP*4n<@5=Djh&@T7ADBl(*|gg#`QJzqm2((hMoJ4l6zFPp}wjREJg}XyDd1GB{Rm zg%Qrie0}mxb4yQP9O~73_7lza|*f8}yVvpm?nibJ+ zm9d=r|97xYfHK~T`9Z7DMca_YX%$86f6-Zw*jgiuUHjqVS)GFea0$yfR=SiQWA|n0 zx4N!f+=Rl~<@jPnvd6K(9v=yCkuJE$FU!au=lvrE(Qk2D2@>hwKsf`J`*E`B5Ii$) z&Y4?#!&y+ThCq>eWgUnNK(qznL912^63m?A#Pe)!0K148fM>=rGs`X0Qzoq+NDQH@ zgPH%<^)d$9j2@t2`b+M#!?4x@J8Mm{x30!_4-H`U$+XM09k8ec$D{uq=(xo|OiKlx1 zK@5Sw5+A4qDb7N*#-m_UJCCWN5o#@wmPtDVF7BMlI0jh{TBI5yQ46RYjh($&XxyR< zb}P9nLbz_$X2SlNrI?Y-&sMMBpZ0_R`bWRTkSUnFVSH#Z-w%99;7WXZr=vb-VE?lA1CiZ^RD`!9n@f$C7QxD>hnLu1 ziPs9;MG>2@0q3qfJ^ysuIUO{F-t~Ic%lRzjtjCMulI=a*N*#N;~`IN=3^<1^HvhSQ+1 z;ROJ1!T=BVb1+_|s60vpO(A!$UCDDW!JJ^%;uAz@&@uV+cmdpB!27B_>ZtgTVs>BW zv^fF?=3R z;MlioX)3C;O0yM{SA(6E+vj+WiWRlVCGlQ2@0e2N$qla9R$t12>7oQOFkNKxg5f|u zDmIvu#u)XT-d??L$ z&HlVJ)XwoX)J2l;AoIENL&!tnIqWeb^|p!t^CCx#21uqAauHruQC?cwT5TYuCC!k3 zD2a&?plATZTyb%a#EQSd0uP=v)NjgweVQjSE{%!42;fDlT>SO^^*3uO!CTn6TU3{(xx5A|f{4VQRpV+^y`q<}w(eel-IO>%y z)bIhh>NP)8ykALZ6=B(RqVp7|Qf>>}E~iinnN@lQ`~u!0>BwnUrKETB<@Eg(_cK8E z9a`C_AUgzMQI@s}ComO@34-y;M2#0k<)4?Hgoqp`%AZ@9iOC7A%8M-F61VXm37M2- zZY_n4hslMC7~@uZpW_z=v93XRA^*OX%`gsC!Fgl$gL4}VKn?9^xZ)SrV1rn8{ff;e ztn_$e8F)*|M?jsm+ffdi<62OK0pb#DTG)jV!ry4nC#?2xoev+VT=2(f$14(*;#CL_ zm*NT?hkFXvgaJib0toA1NcVpUcMm{EGn95fm>b?t~LZjyIUNf*eIzh{brq zV%CBvNf}9*jD!flE%@=kQ8`gMtffFx1R!aon<(c0EH#t3*s0p3A;kKeJN!cDlq;c9mhO8s} z;gbSH_-jaMDmajj^lDZxySqS4#@w2ivo>&?czdMjk(}Y2D@}neN#0Gc+{wt~G;m?y zk6YbIEhYxKPD@(*XTN{#@~S2+36ovwD2Hdt?2C_&YNX1%-uy<5Kz8N))}1yzKM%s5 zTEPEG%uEQJYi%Rt!j~A71v2s;^(?g)^sjU2qSdq%a%lX7`>_zFIBgsi&H$Z!xWykl z7O>*J%3ESe8{idlV&94ZXC=wfIsN$X*n!+nA>1<5bM-mAP)W}M#uoEXUpU&)Ys}*Q zd{bC}9r3jxrFUV54H`y!!V?C{(42U8A6e2ET(OI7(E>UEN z7TrNiz_1VxXigOed|Lgo9-Wm@Q#H%b7z4y18}i`FZRjI1o594_EFP64GfZ%^N^E3E zB$G$eG~N4LKi*p}b(W0L+B7~Fx9R_8On)&jK!$iGW}|humdD4WU=SeQx}edibtr%^ zg!`e}5FidLgMeXarOnbzk-^?$H>hc^LjLb-00l)QO_} z-|B1;fa-W)di>wcG5-x_didg!;9B+%kUbVI^!<9Ye8>NgVq>_w^GnKk{rImQfki?R z27TZlASbZ@tD}~SnX9Xny~W>sRxRpV&fj@3dUwhU+xN_2Tb<+%XwN9>x8|iFx<@t*_T*cuavg8__)|0b_iN|-)qxVWg(EqQsRE8l(u@<>vTv{R-KYZZt1r3x~5^jx^n>jrQlC2aFHA zPC7{?3^quET&UD|IL9O*>&j-`-0ucGr0tIY_aB%I2h$fZHqqc=@FAmly^v&~Aabr2W2gu+jwoZ~A#Ie| ze~U$K${cNdE6fj>Vw^8-&UX=)d1#Fvw4UhJr~F8D4`5hc8(tZVCls(=Q(6;RSXjZ+ zmPAb1s^E%$yA?)iY?YMSj)mpJ3N~qQDDO+eYzMQJpY4k)P(a&w0+2+g)L20()J}AK zVi~U=&Grq#SK3+~Reo4Q=w~*)(FY^ZJ)D(_Dhmok2*1d9&I{zkPGzlBSGB45Ar_MK zTs1&7wi-p>$o76CE_0z4w9Az{Q%cxC@SS{s12A|I4VN9Hiyr4Hr?Hc(#0p z!4{Kvd2R~D&AoRwB%PIK(bJBYNFf+v8g*!$>DF_`H>lF~o2W&IHxtprrh%k;E*U}H zo*$4cQIO|QapM8n&b*5=aWNQl-~^8Yz?pK?{e;qd7m3#r?B-%lU&!6F0}#zi-nVY| zdsHJ+5dNqztI>9?i?BXBP#fgAW~it~PWJAoh}zVF-E@>xWUQR!-+BP<`W0-E>N7_m zmKxfUz#jf(a~%#nyoN72;qwa_cSp$G)q?L!bqJ_e$O*OggA+DOmk!W5IY*1lOplAY5lXYHj$wy2-$ zU5lyQb-_#3m>-JU)TaDTdAkyWi7hCuEAwqM$SL<7a$+<3Qz8)dwUQg-h8avjYVab< zkqLNxYm}Mndq5Va_wSh6q3lMlivqILUvD>~?HLh%NBi5rI)&doIP=TNQ6XcLQc#rK zo~&uf6EL;J8r5|53@ZvNlOP%qL4%b31=l8W&9mOGJg@JB2eIY<(r3B41NxuaD^InL zR6u|&s9J$Pf4aT?Z9(%`ojs7yQ|8&jzKwpMSYzO8g^i%Vd-Wh94#d zEAtXA`D&wBzY_8V>2r9@Fqv@$Tch*|3h+_M6S&d&1cYmv1oQZ)#^==b!9qD(fI=s- za(yez+SghdqJ@~-HX5E-nL+l+CQ$qp&ubA$RK}Uf`MB22LdH|*6D2UE?y*ycSr{|F zjJtPY)8q#!o=^dzCc9>3r*4Lo@zZ2ntsVeY&nYK|Rqz6r5reOyWz5vZZHU9Oza&CV zdq29H6CxsX2`QG%`^kpg9pryH_M11~#RS+M^fw#`2-^QRW)AFzt7>Fy`?p8vR_cKL zcNT)tA73MB(z0c2lUguP=|)4Fr;zZyLC^{6u{IK}ggX{~f8)1}W4WrA?s~9`_qw8= zrT`6u!F3gt0w?ADn0+?>cz7e!Zu`Q}NF_!`*Z!j)&yiseoVD2Jke~RaXDZZ$Hs%>c zG7xKBesFKQfFa`&1qMj?w`H+o4i0ami zL^GO`a4!5jBMPLw(FNZ#JPJk>FJ6O83TKb6XD5Y%EjF-VpOC=PO%Ai}B zEJNwEDu&a@*yzl1(6#D;Z*+5Qd+v}|(-jUHflFl#dI2H4XF)plqooKcd2EH%ZKl>e z=m__3-SN-*0el{y0{5ckhiW%qWxJ2xFJaugdJyYsD|ER9+J`PmBQ?BW+4D?1-B|I{ z#nqj(?LZu(_TV6RkYB z>99MQ(HHVYOp%A;w-b!qOa>8!=Rj7?VqiZYP(HP>cJUNaS*eL!l*EKDjOS2W)-zb< z*h|kLS&sL?eK&r0Vf|=n?=zV0%M-MhLx^~ty`w^tj;Nl*XYu5Z-?F+(6>8PrRW)=x z97w$vOjQ}HuHScn1Y@3Q_;K_#;+xxRS})Z_nU{R6MCI4p|LTsKEJD^k3T({WMF#?c z`9G(mtEHKp8S~#G>)#G%+VTz?TsXZyHBdSamtHp9B0I$|*REDd5z*R2T87IFBjf2?Sb7YPYrNr*CT0^oR3H3zf(ewkv$9e^cg7M zEMJ5Xf&LD6l6!m7K2r8XB-trNdK$ZG@eX<)S;5-{dqJXDlDul6-M3k-(`$#TgTeNM zk!qi<>u)`RL)E2CX=e;0?Gpn(oa#U|Bf_{#h>=AKf=*l^FR|{}Wbj1!jdfEH_I+h* z9%cgu0i(q23Jk>MohX60ch{PMpapiLWhf^}iarxrgU37NS>@MsS+^|CT3E5cX( zi*VQ=7=$w^^>=mN*CrWONon!~3^9g6xw*$7p&TX=6dBFsvo#N#d$pIx$EhqUtIA9c z$Q%8-)ho4yF6zCx))I00XN*VRss(B3c(4%;$VAtv80Rgiq?FQBg{JK@SG)_VOzqIp zT!lqC?hAZ1boo!Bi!}A}7DXF&nU;9CndXA>A9r3&_Qh6Imb!s&Jw9ldEoZ`uBxo#! zhvuxZvW?Bk^L0f_QrYfKWU=MUSf+*0#L6pa7tLF+7;DhRc=@Q!l(q1%L~K43BJFSk z!--4TGxsOSn*JLI(1mti352zbV^?~=J|AqP%??yaGV6bOIa)p#t0Q{Th3JEQb3%JR z{>}XE`$GHc;`xh1u1^cdcvAn4-^*p2L7%QaiuCYBUEbU6{`!T3;KzL!wRk%sRG9Q8 zhkGbLUlWdS($K85QLvCF9_BvasHaMi%I9BF{KKhgrBW8Q?ZPIx=3 zXE|-lMPr22SZZkdkr$qEl=4DB^%_W9GLH0y{Oc`P#~KCfT7YApVzoV8uve1sF&@)q z@dcTDiXB-ITx>!dgrbWpask;Zcr@pStx=W|KoU%#KOfwwffU+s&#x2W)n&ClZQWz#DJV<8BotYjDu z1jC-BznHSD>9!JEoJ36R5-Q3>)BC+c;y2}a2tnLWD_493oHX9i=mi^xNEZkY;M(c7DHowHRH@qXk7BK7m-BW@8hm}Qn z8Dq6f)elpz)yQkV`>w5dw^<$64Sb`|?jy{)VrZe@}1G^T5D<1nG?awS9AaLWN_p+Ij1FL66p;^Rx70@reT?>7yom}OIAzBvX< z_5I;c?y~n;3Jm)j9Du%WTg-JmI{Zk%dm#UA-f>c*s!{KX@H8zIr(6{Eaq)cdoxvWIGN zm%FTnnp{SEY{9J~)7u~Rt1`F;mK$%Y+Bf?1I{?-@ ztM**LxHzjX1)kr}(#=VzjktmbR^gz)^eTS~>G)E8AB&@((G#Tox>md*!?NGt=(Jr4tr z+CMQCh!>5>9S*Wnmk~g&U|*JmiSyEOj$5rJ+C|$`Lna4sA8)P)KW@2g^&< zI9{YQxe4~6LrS}`x*WNA&706KIVdo!=l|HtV1RXw<9Vyo`}JQ9RCE3LR?C1Ncu>IX z6&?87#LdOk!A{f8mf6bH%1%Qh^IB-uy5mzIL(3Rl_P;swi>D4R4p8MlFY|e zlzr=d>V!Cos4q;lP&`IgHH^7ilp%HPa9O6#!OQFarAu(~Xt@WdhZ?Ah=s$G*(;fET z>i)KdjhSr#=I1C-yFCh|&6bsB7BmH#PiSE4pB+i7;%8gKOVB%IrM7zuRlsrCwh2Fe zy4d+4SG9{!#m$$OR;Ku$IzBjYom;H=*{6`SIyKWvu$+Syzg!o68nEs#wY-fG6CuOx zU@3E`nP5a=P)jFCoeJjFWHQNhYrHnLn9J&XUwG~#?V?s8kRZP|vMt6Tg57R#%Ippz z?6mP8XQpfJLNnnBdrWWOh#WY^U6Yzcc~_TLldI@b7kXQL1N+b9x}{4_eh(~hp@y5mja=+S(ecw^zf&&CEpN>seJdA z=i@XP`%>$Az06M_bQElFSUpEaJx@geqgusZ5SrcH$H_rH&R5GPXa&jJ5kxsg#^dU~ z<1|*Y2*rd%aYuBNF>`ym*=;f1N-ky3?FDr-q>n$5BQ(?Rx)X&(x5b2(Y~qANRjt=8 z>pKoh{sRlRtJL{bjoT^HOzHE5%fcMn`t_-7x;ls5zMfW|f>H}(pA#xcGvMXQCuFV%ZJMx0!!SI*BHmf&BW7#D1ulrQ8U;njAi=PXNumRR&B7oW5ztc4667uSAXGT@=Xv9-ESuM|S0*#` z)j2}tk?eA4?o%=7emlJHK7d!qU#~YoiQ7mK7%p7bK{{nSq728f(<=w>KhsXBE`KV+ zuA`xSn``$Iw))t6kDL9Cy0HL>MpsuxqsjN3`gZNRR7SKde++l{;6v)Z=1p?lq1|-F zj0Qacx%ceIf;-`^sYb*utBlGBdx$NxN>zT*D;pQw!QFyew&IqFx>I*uICXf%ZX`Th zNhhXF2uj_?p@b8a;yxsmCJ~2*;{4_4ih8}$fRoB{0V}y$zon#f#`J~r{pY9xv2fYQ zX;O9~2U=q``dO^-@<3i$ZXVwAm1KEHZc6E^PzA0o1^=CI4;lX6oCL7Uw0;>uG!yi7 z77*VcV=W`$oTOnLRvGAdzy5lfDdxrevIW=>g505!CHd@o#wTEa~C?qA=BPWJ=30B8#~p!q!@N z$)2v=8av0B@C*Js>7BEbVnz`*6;0N+MGAQ-+-$G@427@Uaq&4whMdV!6;yPl83=a_ z%b&@$<(ZVCX(=!V;9rzR1Oqm#-|K)oa4jkC&knQ3;go+fjIv4A7*$*Z(~pRp^6>2l znj4o=&WVX@ZrPFOT)aDYie%*8Zmi#}dla59k3dm1Sj3Fv{s!>4>VAkuUHxt`zHt0$ z+(p%J5;GD@6o8M=BQ0r6J$olynbNnbnpWE@?XmhW2y4?bw|CuhBd0GG({uBA2YNtH zLvQpj#9N#h%035^?|Tn=??40!hdUTTzv;QWc60tnDhkCc-P`>SzxNNMX5t9raGs4(Cc3D&2b z8NRy~J?`Hyy--vJJ;yapP{&Ff7pKCRKA(1QyKY<5EM8%1k>qMaWAt)(lls3-|6ap1 z@X+wtA^ggBQW@+1(F-pxfq;*{hXf6(sIU9eL+{qL%g|7u0G$y z!mt(>YpGv={jwJ7>3Zx5^?0@adb(Z&k%48X8*i;2!Nta~02j*IP?UX|H)NgqqhR|3 z{y%4|!toW09!L<7U=k1zY~YLqY~1~KngXu8fY+zJk(DizwWFEEmAZ{1x*CRHmp3=9 z-3$s1BL?(f7h8WZ<7av>F01dQ$y~*ZbxxtuN%H8KR7PJGQvo>%FCdR$0zMxN7^<$> zPKxt^e9Gd&lF%sd7&xP3*0-Dj7zW_Cn_I=Oiopp6-!8Y--+Hs}w_IjqD;LlBHqt!xG}AhTeQTu2aT?6P zz|${Tmdpgk;}^&<(r4SlU!#gxQ6lQNp?`c`_-VE( z{x&@n634TSidTR%4D%dG)K;6_-Z-z)3KT%^7-QbBF@9Px)H6%rOS`g#VRRhj_`Q{g z=?!&|kaq|B1jk8?B=ET*<_Z28$Do)2D~~=cv(oOCr$*4G1TPF-qjQpQyeXj$UGy6r zr$wy_Ofui{ug&fH%kZQAM`-XAOlvt~6p9jw5vJePlS>_@snN_zIkKtVZ_hgEN|Jr2!nrzTIIz6wnB~cGIJNoiK#-URnp+WUksMQVombtK8c58 zOT&o&%#!eYD99FvQPdJYjhlWUrJYyn=1%gBF5FPHQU@XRaXle>*z0N^uJ3n$(n)P5 zVJDLXX|94ZwD2I(aLQuR#m?%}`?y#%(SqB@-osZrMYpE+JBwewz0i3*uM@$6LIZij zRoIa%ZT^W$IcmXtKQg0I?x|JSnY zvi{w?lYB4dUe>>lv-J3Hspbi9Z~onI`{dh4cI?92XTN@C_v9O}_I|IrceV8U{>Jk4 zSEScZt73b-m4UJOsKG6Rg8?}b*)vjBcpNcKku2g(ZPR=qY5U>cr0d@6j`E-WAo>2) zgY1>NfEQmaj9lpuWF^yb_4=FtH*$>Ho(TOm-My{h-P0XT>6b-ccO6(VdzJQ;r>{B}O5aI`D5$KQ^m@*^H&(mCU%pX0s@@2^r`X6gW9`BZSr_BqPxh@$ z`%@k znPTn<^!~dm*&BDS>7zf>8$Orc4%@c=*vr5zekoW!sKMaofy*~5&L_L^e-Kh*=Px)F z*|4=v!LT|t=k2B&`Jy-Z%+@8$d-34WoX{l~g%g(km&?n(ps-!Kx$_-cGFP`|QIBAR z@?puDFXSY;cYa!>@GmhnqVI!M?WqY@Ohn#DaOoT_)OlDjFCp^`^9%N*C+)qbbuaP8 zKe^N&KXu~vw8PJ)a87%BS9wnRIo~tug>SbnNlWXMnQEK)Y08}4%g*hozV@c+Q1zOl z+a_Hys;(^cefvoDN7Y@qgVFClub=Y7Be?kVt849Ybx$sCeJxjA^LW|vd3DcjKA%^= zu=w<~>2YwA^kv!Ac)x4ZZGG!#1ESVH%|QUxTy4Sm)OhL z)ouOfqbE;Fyt$#W`uhaVpXZ8|UmbB?Ia4_Oo3E9>cd*v(t%q*?4^CxnRefc}_fjU$ zLOH$VXTei1zLE|6%bM7vG8QyqCH@}cZ-&IBsC2-GNuqVYLU1YY+f=NExTqS3W~xqVywHBfsF3j>1yiuQV- z2wZz&K>;>b_uhOX-Un2d3T&C9T0R395a5{upb@3HK)++tp4T8PWCXPQG|&hc6w5<_ zVF1<+@j0>~SVN(AwU~9cJ_AEsC@TX$ib)4~pe7ZUROY0Drz_FJ0R2EonEnRFN*ff- zXva&Un}a@2iZJI@A(A&`m&}h(MUYRSq=)Wm*DVKl-RK zLjT-KsDAV@WOO6Y``-v7rZu2<-oX7fbOX>kx(EaE8j%ga*6l?%3%&1%Fe|+Y*(^}! z8PStOHwC?`g)pVA85$}m9WQkK=r literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorFilter.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorFilter.scala deleted file mode 100644 index 3c6024268..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorFilter.scala +++ /dev/null @@ -1,38 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.filter - -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.InNetworkFeature -import com.twitter.home_mixer.model.HomeFeatures.IsRetweetFeature -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam.CompetitorSetParam -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 - -object OutOfNetworkCompetitorFilter extends Filter[PipelineQuery, TweetCandidate] { - - override val identifier: FilterIdentifier = FilterIdentifier("OutOfNetworkCompetitor") - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[FilterResult[TweetCandidate]] = { - val competitorAuthors = query.params(CompetitorSetParam) - val (removed, kept) = - candidates.partition(isOutOfNetworkTweetFromCompetitor(_, competitorAuthors)) - - Stitch.value(FilterResult(kept = kept.map(_.candidate), removed = removed.map(_.candidate))) - } - - def isOutOfNetworkTweetFromCompetitor( - candidate: CandidateWithFeatures[TweetCandidate], - competitorAuthors: Set[Long] - ): Boolean = { - !candidate.features.getOrElse(InNetworkFeature, true) && - !candidate.features.getOrElse(IsRetweetFeature, false) && - candidate.features.getOrElse(AuthorIdFeature, None).exists(competitorAuthors.contains) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorURLFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorURLFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..071b5bc68bf39ac5986a1ccbfa214a0d5ab1fe23 GIT binary patch literal 37266 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 T0&@^3R|zsC0<(v7FNg;K&fuWu literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorURLFilter.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorURLFilter.scala deleted file mode 100644 index 00e2bb200..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/OutOfNetworkCompetitorURLFilter.scala +++ /dev/null @@ -1,38 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.filter - -import com.twitter.home_mixer.model.HomeFeatures.InNetworkFeature -import com.twitter.home_mixer.model.HomeFeatures.IsRetweetFeature -import com.twitter.home_mixer.model.HomeFeatures.TweetUrlsFeature -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam.CompetitorURLSeqParam -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 - -object OutOfNetworkCompetitorURLFilter extends Filter[PipelineQuery, TweetCandidate] { - - override val identifier: FilterIdentifier = FilterIdentifier("OutOfNetworkCompetitorURL") - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[FilterResult[TweetCandidate]] = { - val competitorUrls = query.params(CompetitorURLSeqParam).toSet - val (removed, kept) = candidates.partition(hasOutOfNetworkUrlFromCompetitor(_, competitorUrls)) - - Stitch.value(FilterResult(kept = kept.map(_.candidate), removed = removed.map(_.candidate))) - } - - def hasOutOfNetworkUrlFromCompetitor( - candidate: CandidateWithFeatures[TweetCandidate], - competitorUrls: Set[String] - ): Boolean = { - !candidate.features.getOrElse(InNetworkFeature, true) && - !candidate.features.getOrElse(IsRetweetFeature, false) && - candidate.features - .getOrElse(TweetUrlsFeature, Seq.empty).toSet.intersect(competitorUrls).nonEmpty - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/RetweetSourceTweetRemovingFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/RetweetSourceTweetRemovingFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..d1446109c6706a9ae0759370d61c2034d9ca5e52 GIT binary patch literal 37337 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/RetweetSourceTweetRemovingFilter.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/RetweetSourceTweetRemovingFilter.scala deleted file mode 100644 index 5900756d3..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/RetweetSourceTweetRemovingFilter.scala +++ /dev/null @@ -1,40 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.filter - -import com.twitter.home_mixer.model.HomeFeatures.EarlybirdFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToTweetIdFeature -import com.twitter.home_mixer.util.ReplyRetweetUtil -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 - -/** - * This filter removes source tweets of retweets, added via second EB call in TLR - */ -object RetweetSourceTweetRemovingFilter extends Filter[PipelineQuery, TweetCandidate] { - - override val identifier: FilterIdentifier = FilterIdentifier("RetweetSourceTweetRemoving") - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[FilterResult[TweetCandidate]] = { - val (kept, removed) = - candidates.partition( - _.features.getOrElse(EarlybirdFeature, None).exists(_.isSourceTweet)) match { - case (sourceTweets, nonSourceTweets) => - val inReplyToTweetIds: Set[Long] = - nonSourceTweets - .filter(ReplyRetweetUtil.isEligibleReply(_)).flatMap( - _.features.getOrElse(InReplyToTweetIdFeature, None)).toSet - val (keptSourceTweets, removedSourceTweets) = sourceTweets - .map(_.candidate) - .partition(candidate => inReplyToTweetIds.contains(candidate.id)) - (nonSourceTweets.map(_.candidate) ++ keptSourceTweets, removedSourceTweets) - } - Stitch.value(FilterResult(kept = kept, removed = removed)) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/ScoredTweetsSocialContextFilter.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/filter/ScoredTweetsSocialContextFilter.docx new file mode 100644 index 0000000000000000000000000000000000000000..0c03ebc3bf69b6b3fec564cb9c8981f79284d34f GIT binary patch literal 37559 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 st} - -object ScoredTweetsSocialContextFilter extends Filter[PipelineQuery, TweetCandidate] { - - override val identifier: FilterIdentifier = FilterIdentifier("ScoredTweetsSocialContext") - - // Tweets from candidate sources which don't need generic like/follow/topic proof - private val AllowedSources: Set[st.SuggestType] = Set( - st.SuggestType.RankedListTweet, - st.SuggestType.RecommendedTrendTweet, - st.SuggestType.MediaTweet - ) - - override def apply( - query: PipelineQuery, - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Stitch[FilterResult[TweetCandidate]] = { - val validTweetIds = candidates - .filter { candidate => - candidate.features.getOrElse(InNetworkFeature, true) || - candidate.features.getOrElse(SuggestTypeFeature, None).exists(AllowedSources.contains) || - candidate.features.getOrElse(InReplyToTweetIdFeature, None).isDefined || - hasLikedBySocialContext(candidate.features) || - hasFollowedBySocialContext(candidate.features) || - hasTopicSocialContext(candidate.features) - }.map(_.candidate.id).toSet - - val (kept, removed) = - candidates.map(_.candidate).partition(candidate => validTweetIds.contains(candidate.id)) - - Stitch.value(FilterResult(kept = kept, removed = removed)) - } - - private def hasLikedBySocialContext(candidateFeatures: FeatureMap): Boolean = - candidateFeatures - .getOrElse(SGSValidLikedByUserIdsFeature, Seq.empty) - .exists( - candidateFeatures - .getOrElse(PerspectiveFilteredLikedByUserIdsFeature, Seq.empty) - .toSet.contains - ) - - private def hasFollowedBySocialContext(candidateFeatures: FeatureMap): Boolean = - candidateFeatures.getOrElse(SGSValidFollowedByUserIdsFeature, Seq.empty).nonEmpty - - private def hasTopicSocialContext(candidateFeatures: FeatureMap): Boolean = { - candidateFeatures.getOrElse(TopicIdSocialContextFeature, None).isDefined && - candidateFeatures.getOrElse(TopicContextFunctionalityTypeFeature, None).isDefined - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/BUILD.bazel deleted file mode 100644 index 6d3fd9b1c..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/BUILD.bazel +++ /dev/null @@ -1,12 +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/util", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/gate", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..866f3b43d23db862b6e2a15b33020471b3780402 GIT binary patch literal 36847 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinCachedTweetsGate.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinCachedTweetsGate.docx new file mode 100644 index 0000000000000000000000000000000000000000..335bac310262f39fd01b0de6ebde1a6e5f5b368a GIT binary patch literal 37168 zcmagEWmsIvwm*z(a1HM6?hb+A?h-U;Bf+8Z;BLX)-QC?oaCZp=cmH>0=A1Kg?!E8( zW%tunwSKbJ?yB0mOGy?I3KI+r3=Rw?g)8ud60;DAr#K2$>9#$MJwq&>L{-`ikM<(-i5$ek-8f&U z`m|Co3{z}+%AGgSO08h0S0k0KxWtLRe!6BJ8Dx=H-dZlxsX6zaWGt!7g7gmI>;O!4 zbGq02DK2o9o$5Y5L-e3Cv1}dxM6Cy~DC&x64RqqcAUGAlQRtAWylL*7c5-_)m7`(m z9s19Eqe?C><36rr58}R(nJR2mu9X$Y-;Jl{f%&ef&98r8@3JJq;M(APOys5{iI z^b{bw4I%a3$%1?`>ytOKd4XAU7VHQ(&`vyWFa=s&mX zXh*4eTOI{S<9XbPBc~sC`_od_k?JSFq_VX~S9k^9_1)dk7DQ7BJuHS8+|AC&+m5UI z4x@bKR2QyMX%mf38e!+k(ivfL+3c>^$| ze^k+(N>=0^RK0ZwFfc^Wr=g>njT1A|?`uWe#79V0RNpfp$zjSOyGC`1{3Qd4L-~B6 z?r-C#g?2#c!sX5mWeI&P>>i?nvmF!j`LsOzMfyUU08L}ZoUy-92do$icL>#)kTPkk z`f~FjeB}MLoE)=XCrLA!RSI(s#Z=Mcm%eI<#L={pBa!T3(*E@GBMOZtkE=r~X(}WF zOGhit0S`^;|0FkQ05!8%1|Q(KWdr4cSE-}8eYmd6inr2;wDP68_0i;#)dxtZgB1Ad z!+?>>e!3Y=H4GcUiOU1@I}~ts5#fjt?Ih01NsYUhGu8CR~elseTBc6HnUe_yflvSP$z!^rmy8754j3j1jA<}++AN- zvZf`-U>1p{L&>yC|6u5x$UUs{dHeACevyFwp8Em{_s9a-fOf`J{Pnr_691odxn5bp zIR@3m1_}%e_3w50WN-gRS=7etR#;HmpXj0Vzl2%BiYnvA`Ok|^i?88T$E7#Tj*@+h zg=%5l26{h)VDWxsz6s^8ID0*4{~xe(K9IvdDV9XJMOyz1R0=GZD#O zE;aZ4=ZQ)Ui|gN%Sro&{AYZCJm$?^D337hexjE8KN<>1Ig81~p4mIXpW=XRYB84MQ zg3oHyaX$VT$_ml*%T2B6Pqb_cTU{K18FGAERWf`Y5 zD_}Tb^~ZH2sI3rW_DRhNC-W-2EYtQ@4KNFsbPCdQ{Xp*__+I1pdZ(O1xo#LD8tLvx|r3Ieu( z?*XWx6RZVsl|H!WY!lyo#(P0!y0B$E*nDsnL_BhZ;Q=<+!4oB)z}vixM2r#nHQQ_? zCkjnyZcy+Cr{k!5+9<{*_pitZ7bt${XisB)W+pm^PkXq+f1A7cMf}ejgRW93L;!SC z%whfcgLMTsnlgiawa&Jn#p(B*F`=cax*~-MJgZuq7Pl#sjPv7D6P=Wk$rdm@n*WK> z#}fX90+8EL-Bz2E@_Lt>5&|mR}zOu{|mHZStuHg?ff2QD#I`%O9>+LN&2}eNhJs+D~S%yX1mb zww{Bn4oK!sQWrsqDp#No5KxVy!C7DiF__(=N=G&8hD4COlH-s%UJCokEy9*+9~b4l z3^W8RdkJsD;w*3FcSG5R=x<>lJ9fp%-6fg7E0KJn9sgDmWXCMo*K_gCbmwa_7r%N(-dg&r=nO43Vz=#K z(G8iw>^L|1Z7-w1HpxDHV@|b|)1WEueIawax%R3Tx9wB|!yH89$yXQB&dC}UGy&MM zi|NbxaXV8flhSjr3yRj^pxNs}5vgJx2eh9^Ec|Q3*XxO;kN8%aUNXZRso%+N?I>V8 zS$N?0P3E!)X;Qrkcu{vZS7__7>xGjDDtX)b=-8yk`X8xc@qSqILwEZQmq5ds(TnK! z35~g(`*U)B8cdwMeeilwluK8c6?)Ng&TJD(GUhXS4=G4D4er`zYlZJ$U>0O}g{w|r z&DABEBhqBriB|Awv;0w;7Crf+rNhZ7c>B-53NyZqrKYK^9y5d>elWc-NJML*2+CvAU!z7sJk+(7RJbQ--3j2k}x` zpNic$rGS#^?7^51KP2z?hc}r5hmGb3o+~(Tzhj)k1X3u%dP#7lf6da_?boC%7Ql!t zZEi=swW^X_3GB{*j>X$f=+X?ip7YgT|g@7MuCel;PvydMi!0v>tL;N62i;(WNFWV)k}ef7{@Q&*4dW zhl|vAbID1~(}ZuQCLfB|Om?IxQ8Jlzq6B{Y;)Ar3CAi>KUn|OVd{)5)yRdhgn(BG2 z6vl>WC2zj*qxanC)XCkoX7VZ~Hc+DMeDEQk!=Mb^*uB*s3)4t?MhadG<~J|5ywWK3 z!LQ6Zy~#vrqGTK|{8G12iScHM)iFsYR5>_aM??=mc(N0Ot#4U6tC{PGB4PGvkK;BZ zsfiZUX-F;6WZrvh?NdFixHx|`T*gbVDt4&kVt8S{?LGfh|2DRj!hMWqwebG7?{({E zxl>?x>3Uxtu*%RISLxvpK#(zLaJIQg^M!p#>+J#eSX6Ke!`Y==ZP91eQ`fJ?%LYe2 z--^<(9&tEHYDh#?gbRQ|cQ5y`ZFXE%mlNM9l;Pbi7tqnE^i+-Nz-@!yW}Hymb>H}` znwSe>&Pr|WQT9XiJqiCk&OfIbJ70WsHqaV02AXaNKx@z+Q_Y_{sJ~A*f9|FdL=^*A zaKE0tBJ>8uV;0(lzyFm>)kY^(Rp1pQwH$XVzPF*fX38MG?YDEs<()-sJ2P>sI={}3 zOJD!dpC1y$qZe<0wwvlyG~kN)VhKMp0B!xt7B0>On&;LCh>Fm!N&yoXM~y- z%KlmeiiR9Jkru4V$oxYo)wr*<+&U2264P&P-}{%~e6 zFavdHFqD7g+UbkCjhWN$Nged05Wg)|>)q9rn`ijEYa0^?HZ*Am7Ux3n$+IJ~=8RpQ zedgEq?>L{MPYiu1Nkxd&Rn#>;md4fc_hw=%(e7zx#H*RTykz;b+nfOniKEh9PS?2m zx{x|sbk8)NiY894+5o^8Trd8I{Zluc)6Arm7rU3!G~tCI!0SWw+r!hsSyYj5)A5e} z{lnTtTk>4n)4|Noo3`NKog?>`T7g&Fx7PI_X5cchK~mBARNp~x^4`|i%5hWK%h>T{ zz5A*Scabo0c~5tT;#b~~h}ySn%Q_v;r@56e57#i^H+wBWAKG2p&ei^n+xwHU;m?M5 z!9@#wzy=|rJ`3Pd=8&hhoy)?fuL_^ClP8Xy|UlEhxpnJ1)g{Z$WL#ywSI zb5u!n&tG(cfoQ3ecwgG!JI>ef+LDEV?%`@}Ui>E*q*b9Y*VQP{1;MB2d{e=7D8W^g z!Y|c^-rB<6JVDIuZP8{yI6g102Yu!~a4*+uFJDsio~waN?HdAu6|QHe!O7gGncRxU zZ{7xHK*7o^yM;H5{?4R`=H;#vg@cu7!1n#_Ta8YaR3?6BtF9E+1MOosm&Y9|CH3q5 z%DxNt0U~e7#lTxz2m#ftv5dO`a~^INz6L_-HeBtuosUSL%22k7QCL-od)0}J%Z2(S zyhCWcLS}%@E}hpyCzb=$2nK2oq5d;!z}!vp#4MU-i9KorA|+5$552H*H30N&pW&t7 z>iwJk{kZfZtdO0;inAF69$jH8#mUA?y8weQaZ=Tk>-4Hlj0#(CaMMuyVg>S?-A&)m z>J9HoOcQM@wPcGBjwbh{Y^_ zp(Ta0SjX%(gu5#A#SC;;6+u{TrzJtOT`$kblZI0vr$_gE{#Pf|76kxY^sn)i4S1AH zP|WU#!@V-=5dXqH;fMo;l7Pn1{t>DJLJI=n{v-5HDyS0bGb>WJ{~|b3CI_`3{GlSL z9ojVKe@OffRE)=ECANPuXw=_@x!{BJsGx$pV%G06k{~kvmqbPqIBIu9xIa|S#=AD4 zw*MaW@1}ew@%l-ZwoVL#Og;&nIg(By4QKDO2XG&4A06WPw#4p_2$Fuu)Cn=g&5drI z8$K-1QJ@a`wneOLt{3t3=x7%x=GJx18Yw=&Mo?O1D>MKeGB6*IiDBZu5|AQ zXR@lc+^T-g2`L`z?T_Sc-A8T+>o?s<5J%ZP4M##^Sv_*}oHKbe}RpWmqjC zOy3w-CAmEXx-6!JI}{ZTnS5qn6ls(+KolJvcHPIlNy! z-{7C0vE^=KPCh<}#hx15HQ`3oTW6JbAu{a<$idqnRM-!-it8{b+S_4$c-!+<9z{4~ zeZF$`@p3(Dj;BB=Sa%Akp1)yKT_L0xZH>@ejK^-XswJOjdF@$?9aO%hQ|og~TwOmp zaa-={k4n1BPWW+2#nbi0RrT{E@(6awacR99B-9X{I`&qH;e49^%WMC6q2j?9+xi!x z&~};8G?kBIX`9b+rQFc8;`3+nGJM2rbu;ePqKUF6^FHYk=$aITvrDG6?%Sq@^T!KW zVh<>w`4djw$7}d;Wan|_71gRcrGMSQIqlx|sY!L0N%*<51K}gT+`!=Wo{uaS_6KH1 zZfpx7_Z2My{Z3m3pun4}129)Tkeb=mvMtXDug&~<8rS;kD^bAs${w7;2X>&+w`r9EGC4kCPrLG2InPF02$1?l#BuZ$miN(3 zX;7A72zhct3T`vU!FQ9JX#t=o*X7W*#ZB)0Tu8CNaVBX}i4)1%@p%=A*)j5*%mVdg zzvB?|XnS9rm|OWn9`9E~`DP}Lo-a8v+5HpbdF{H9qa@I#ZqXF51o9ITa|_kX;)9l$361@ZbM* zNW+{VZrV5_dwWftZJTm^ydJuIy&N3yXnS#R2j0CVzRjOJ&is5nvS<0!{@N^@am)NX zH3aSP3WlWw_DSlst4p`k)f~#A&n|m{)x2j`hM{!)epZcNj7zc ziL)ruRH4mvKTzz~)lp`<;G`yNwX=ZA`)VR&FsG^G=bte>&= zxd3gGhO9)Y+|jZ7Al^x$ka5S@a{WNFjieRR{W+L;i&ZNgWNLqZrd_0%)sY+ z$GN;h{aZGI(aX^#n?w2b%ee0EqYQeg(Z9wq>=SeGmNgqR4?~Jji&MgnXYHcZI#eQW zp!Q^cRLgry4vv%#@*N8=Q8P^AC$XQ)LUFo_JCrP)l$7G6)ez-)scT32`D7g1vG>O) zJK>To5Y$fT=gKn>Z!Hkgc|mE5KGP=fIzjBqVgY0n({A0(`mP-Bc=-yCgtT>|`6H#K zw8krB5O49a)*4rh_-KOOMGAPb#`jMdWJnx&-fkKF_}(|Q(YV67a&{KCkgDF7i1798 z{`GO50H<6QC7p$*YtfCPTKyAe9)f}zMd@cgp2gDYV~qjDi@S6id5Wr^*}=-}9-9(F z4+9=~eW|UtvlvQ2D-m=&)3L?5^M|M!1I>2o480dzZB540tn&jmbLP%HkSmf#>SJCW z?p6xrdIoj^I{mXMvME#**b1w9b3eZ9hLli#H97QnaA@KCm2y*-e3(cU-3kN?DrT$i zSp*}XC22i&1Dt(MuVz}u|JpaEiNER^!E6|OzW!+mvS^zSV~}ZgoZrSm&7nwvr;Y02 z;&~R!kXfQbbR9X3y+i>IMX!=V;u_(5HTGtr{arcz?h7>#t6<*sN}2X3^R|L(ZUnjg zYMRNtAfrm7fH<~lWIJ}$cs6dCCxfPXmp>G=b{H^)9l117n^-B%t*B6K(oeuin%$D@ zJ3DJn?T}O)I5hX9NGP~47GxT>2xh*m4DXA{&_{i&;1R3cE=JTS_pwgOKUq~-X_0Pp zYBOpp(?)61$dEA?&62iN~$UEN5w^C$VL0t15^8&kEz7%tU+Ft&A|1M=`b8I%i z!YWkUSxtHBhp)rxZ6ii;3|GaeSE3PgXC``rSRUf^)Osb1V5u!L6+Rq8S#|)Wxp<`M z8P@Ta71V52jyl{37~~J^$u}u2;}xeGUfx*zj`Z|$Soy`J(H%>$$|cH*4!4DUYE2Gi zoXf*jrX|qrdzTyGvVE8B2tOvqwfTnaJ|vTn-qbVGauKH#I)sXFho`CJ(od&ANoGh? z^$%gOsK?oP^|(JO@7>YiG9vBrnT&&;bZ)ku^}npX&x5cV~BATLxvG^}%vDp`Mvc$-&F(x#rm% zWRUsBWSpY{twbBa_d%g^38!+HLsoMt9gO?scX6$fqrQQQ^=T{6?cla9I5CpNkqolK z6S$wZmkc(act6Kwu|GwuDPiS@tZV6R;vPnJU?@0Ub2-~AxVUX#Im30pd(pzkY$o=h zd(1dQ;he+N^BRa?=Wy3D2?8BXJu`eRPxTNepIcGPhHvW{9G zJe{q@`2}U_3g01raP{zc)KkeGqKY8tds>uJyDxY4#05kxTt}=Kd`AkTg5JiRl$^b> zMddAa$0s^zv<|GPMe|(lTfddmye8#MxgmBJh}OhiKHqgJ$b}T`c35cY^U+W69Y1-7 z5Zxe`37AR3zvF9zuvs_z5!*wBKlx)&J2g}tBB_gp9okZSU6-QD<@V%pD0Bkh_#Gf; zb6W`MGU%-b_+z;3RR^wrN#6nG2;i*Nz#s-N)fNNn`(lh`K`%k;4e-`293rWLU?#A{ z0hOVL6HRLazN(&Wdj-hZO-2IFgbIbuTk!3UT4Dgc$qR^eU#=m<%7Bk|I>{vjLPz6FkS=)^0Ola zWr)vZDp0So(@W^rMz7pRHf72e+Vo~eE_py=viz30Z)wrX%Fe``K7y0#YQ>4=;l zdYLWBTJ0GwNYTZxOxg?H@KGdHxS7&h!S8LB2*U>@Sh6@Zwv(kx8W7%6O_=9m;EFWK z`>29?r3Uq~jpDT#2uFK2sWN#6Zh7yij`YW2E03?SZa&_Ie{WlQH+)&6L%70Q{?aA-Vynu7-xMkM5)Tk2fZT=->*GWhsqi4X1_eu_F>v$Ru-HY^E}YQ z5_!6>;7GE=l%HayB-_A1v6$m1h&zyMwrqJp@~lv)+F5Ycsx+XO+hWe9EI}yG0KqNC zmwHy#DTIhg{i@ZVmN4o>O^LZGSp)B;7vB=?Nc|)@&y}4qWOc{4v6V zb~6YfQ;B(k)T3Fgqd3_n*p%OL_Nl6GKQzE)CpnwsuC_Ntgo%>|?LGU#6^irhhSCR0 z5++z0lpdffpHu*WX4=G%bivuFVba?g@%oh5l|){-cmylIUD8jSmtCFfN2hD4eQM1i z)uT(Vt9lvCk`UvGh{K#o(h2LGB^S+7^UsN~$|Bx(kLXYggT;|!5SFD}cN;IEAM#>U z_nK!_Yi-kHW;JmF4)6HvS~2V%b=V0fN66)}?Uo-?B!Tnt!r~Qk>esrF>$&TI#4y)c z01_KraR{|QrD=qUj~3mhZv<WrYz@ec*0_E0%RDQx`n?C7~cG!sqGNOUf^Ns3Va_MgnaZ z-y=dD@fk$rA3^NaICPqs(ot%O7V~c&D2jjaDD24KfNvFDD4|swIUNl$v(Od8(SR%^ z{P-!VcFn@u+9D~U->X}3qU%mHGR@aMx73BASdm#)C?qj?s3TbkJ>jx{EG?82xs22($s82YG*J|}<1d@>u>NEb^90Fm3ykvJ2j^KEtogJD|^0`Kt2V4*}7WfM7|CvpiVW`YA zw}9i}pZ*bPE&ogLSi*dTE3>!&%*2_=id%%((J(??Udip1_DttyXPk*|c9a{U*J({I zx1Z0Q5Wc}~F1OadQ!3HdLCC*kVuWf0Dyh6vf8M1duOIsc9lKx4^yG2WX{jjZ@JKF-u#jFY#8L4_pAe^_PkYRRZaupHfb+gI98 zju4gCcLb6Qre9+h8qM%0f?>|E4K>@bKUj;2UmdK}T}n$#9{%QGzY(7BlRh_c-csnD zPVKkto?`)QNMT@xmK-TQlmCU+xMjU{jyx$UZFc-5m?O!DEb#vBDEnk=35G&?hOcCG z8N=mOF)6$YES}qDS=#S-Tfw6g7^F5J; zr7QSxEn`B&LZpb1ID)CdNxTag7)B(+p25Nvk6ltQori{Sgk?92{&mD2PWpkndpdOB z&~w{Fl|ibC9k#)gbs+D|jR6J-MpW}nj4K@`ekomb#^HM*Y6#|czj!d-7z`S4V-W@^ z1Js&tmDRXm<1S=%OsFyZ+GL*l(tp!PUY4q(T)2=U^V|25;BVhO!CG<--Y2H4=L9ZX z1b_OL905UsF09qwtUvri2EGIhD48~5q%@p_k2DTWa><|lP36ASZ-S%fb5~wY=h5_3_$~_B&&3oR46DLSCN`l?mZ_3+k*XPQU>5ti zLT%Ake(8LS)3z})z%brU(;B4iv`ioQzLSV+!B|Q;DU)8eLK47J1Z>sZPoFciDQ%*s z1~ta>SS+Z-^_$unjeXuu2L(<38N~BHgAyn97;pA3`*}m1&<}o7eJe+@IhRkz7`yN1 zjbwlC(T;vlF4^$A-v!?k^1szx&&e*g~9+iagCGwcYIl3V`;I4hny?C&ig^v8F5tWbsfZU4%N}S+HHZ zQBG=yTm7MgYnWuRBUZ zu(8&~@YW{Wo)x5wE29^TYU#4dFvI*f(r|cla2PqRSQ%9`yZ5kfnHOPhUCYc;RJ3Hk z=|KQ9`Q=y5XGkI^ey+s#p_aQW1u&&vRg*5?-z6V!$zxg3!p)Q1Ln69pq9u!887r9C%`l#sn% zipQ{Zt1{V(?nZ9rPuW~eu@J$E5sod;PajOFWz55XR%_q%NhYmk#zMZfScZ;=}CGW4MLeG2_eE&B&GI*1xp z_V@04yk&hJDaq&$Y8TTn5H&y7pVU7nF~X7m59*7~e)#s#EW>rLmJc09@JAJ;J?M5b znG6hmuD?jN{M#ET+Kz=W!pYr2G?8Vi`|Y*JOt|K|XCHv-uE}ys_%|7kRId%!7*NJ%VPFGUkuoFF#-p zRa;`2I}8mrI{aD$@9WuH5i$thS`SA*=HA>dY=7%0geuB^V$ebk`xyzSNf`8A%oe3v z=GBMSbaw4q(QN2IF|1Af&UusHDp+DqZc`+b zw5Aa>((lF?;|G5uRz2%Uib{D5Mv1XF&LDi;&>)TnXQKB63^Us6gMSPa2rmGn8Ga-fWi<4>-+zK=KMWs=#?OPlbFGBLEGxd*H z5*$bpGozkn+D9F=A%)Jqh4370u~|>cN7;}Nf-k3(=BV=VoLv{+OB7P6-rq^gaO7G- zG_tE-Mb2>iEGf-n0`SROcK|X@IVxPB(c~eg>o3>+l042taxDq7Eg>elb`Lrm`NI4} z6uUg>@g!zUCjbIpO5+P<1_h@%B0s14p2*F4?QqC@lpYn2;VaB6pY4?J%9k06O3a9G zRJ13T7OcxAe%68goGQXD(e3}1#K+L<;&I)&Q2sBEI(LO51Aha%@|-dK!{kqnikr^C z)|vX{f0>lkJ?bb3{nKP{;%}2Yh`&vC*#7^Squ+1x7{DF9HN7hT zxMBFo@xcvf^<9}4LcB+N8g)i@oL3hP5)Q$0(G>Ls!DF#`AixzBfC&d(nktk<>gO?I z(F+sgOFU%}0NoTsfz1cnb!YVM}CqoGXi044LK%6l7d;bxe$sBlO_FtkEuV5-7wpQSdB>E(vZH5~-lQcT> zFyaxsfzmO;^rv>PE8Jd0Ip#FjD^iOFin0HQixmAW4ma>z?816@#CVhUS2ZzfA5lFJ zoCNy!1-2G+foTMSGf2C<_}6E5ZbBEFj1UeYvP6@%cN<``TuKQ&=`trJH?#u5uQcY) zAzXt!u$jAEi!lsnPF>R`VNDbk+d#=XDFr3(1P*rC&!!pbpUJb$()%lU)g3mS-zFC0 zS^iRp(1*BpOt3YEPd(8MX=S8Jon7Ka1LsjffDWNf2MfI!H_9qXB4Mv4)31Eu^-LJjoaYTL01BI>)9U%vIC2%M zR+hA2NH~{vEs0Cjg3HumRyRxz^ye_Vy;`-&Y{l6v{wdhc^zSaNvfgd{7j4Mr{M6sx z9jtmcihQMJp(z$rys3@>3e4s8;+=;?(XTiZS*>Q;cVIV8Huc=LcOxt!UWS~ZZIE{s zMWThAdwxVqMPdzdn{CoMzD@2U?@CpYcGF?2z;F3C4?RHCtfVQMY<~fKpF3mffPB)x z1%LDz3I@8NxtIw1$8@fTnieGDw1e4`x?1E4&i;ZIe;L=e4VqoxF9hmi+R%p-FuTwP z=kIX+&q}}0Z&1${3z*Dx0I?4Z8%GKm4<)&n=gsGm-3``jU-mWE<-V%`sHDfMAjbi0 z_8GHwGjf4^O8cPX1wO#PLo@@>2ynd=Qi-6;X6Zn$-gLKDYIrF%QX9uBWwL?eB1!hgPPp@e{q4vH1)a zgpU6{Dcf`~NnVA_S(>vP&v z>(vpACERSbtj=}7Xu<;iL6KNiNs!PrL2(t1QVGi3qS`NZ=SO8{@(BfY@(rtu3D>IC z;G-QY=&nogWt$uE<>Ji`wEhS{LgxDhN6b_vw~goQB7frE{7im(8hl8#^O=Pw`IJkK zooBUk_J+;iOvsxX2)g?myfg%0p@Q%z;kRqP{y48PXReJ7f8x^UGOTC1+tbpl2^nbN zk7#P=#~wXZkr*t_Jx{*{KciCJtnxa61pEI-uzywwwD6yTdwvT(|1G!@|Jd1u^+Ds< zrqdHzSdCbd{yvd-#HNgRMD8zOx1OrRfare#E46+xjl!821jBm1z5%Khwy*ODV?E0; z-sc>Mcz5_B0E-6;K}0jrrTCUErh@+fj_gMOCdW^gY<_?iMpA{sdd97CeQEd9Kks}H zRfHCf;4)uQEvRD^ffn}e*hrwQ;+_Pxsv-gpd6f*Avq7$FN;WNyuJcy=0K1W1E^FTg z2#YrtL^qB+Kz@ei5P+3hJyQk##2{(%pp=-juN(C+pL+#gA;BCsJJH?$#JW~H7ymXJ za53w=_&ikLpEdZeV*anWamjly9@M58-9`rGHyhyGu?eau8?-RM{r(bk6oyXiAs6R# zThlkF<03ny*MJS5ergwK9)@3Q^L@WCFRTzTTZP_;Xn@{AxEZZOND4;US3Q68mjspmu_8{mTvHl=;HU0+ib~N2jv>8u0?VV&QAl+x8=yT{Ir!e! zqv>gRb%V3>3r^2kI^srD3%F#H3S8H-u}bMaRBVdM7J8h2E0|DH z#`AGX&7q5YQ92J-aOB*G1g2n;dY`N|JM(Zxc9!(pw5<)*33)UkmKib!cC)Tb(BsI1 zMJPR-=fHRr$rt@-HP1Nz9^r8esdp6Lvu7+-#mGGfiJRHIku9fGpvlIIbtU0FomvMI_QdZ7gxygeqric?yJL~k`J$$h(EeK8LA8~i(l zg;+NBVhC6aT%C@D&!LUxoZ2zsM4040@_TzQ_{xDHP^Ynv*p1FJeylB%8E$7a3C zOVQhx}le1`5&q$wXVQdtS zg{6iqqug(B^m*Eg%>uw-Dj#B7%f|dI(&CroV!1A*2G!JP*o&=u`MdS~B(3*s^kX-b zqjDn135k1;Gv+W2+9f!)T43}TxQSXRljSy;muxN_j4MjjPUUhWE}@Ce35k)<7sKXR zD8n{+GUak)9s3DsY3NMJ$7W_oxZku=6y`-t%rcKxoMMsNPU>od4&2!)ofzo=M1RJakpsaV1Xj5lkhxJ^Jd*}l265PR4d54Wm68pvcOV)2V# zX}xb3<)~pZ)kr#iOiJ<9qoE&jcA0#~XIx-V|B2MIy7U93Mjj&z%|L|&pd=l;3wf%tS&P{? zqs$NEKiJfcwW=GNU6z+GlB5rfZhH5ICX&{%fh&+rjY4gb{k@_P!uDRbfhjLA6`;&E zeiSV)=P$Q8jamiA_h5ZO#rPYehqg8(43$P3}_iKp=! z#_TY|;7jpwi>4d{U74w3zN5r^_xhmY4-bU_M};aE(^zcb30_3*YbVl^_LOHt11xhE z3yP~uwJZh$l*lOM;3(w;afL!*!O@|rkrb2obX%kPL*Htmm+Q?@slhP-PA3Kc4GP6d zKaLoYur|Hd;pna*={Ppp$^c5F5x72NHD`4$#W8I;@6>2)(I?ey z#h`t#-wAR-nyg!8DCOiAso>Fd8oa%~U~T17I;7Rx~) z7lrmmNELx*KBr30a0H2PjOEC!))^X*4Iv7xpY4wo>%65mccc@Pat7OYUoj7l_0c7(C(CJ9Gm*zDiBfrR1wsDMW|4wtWjy@T;YG9$cvW|q4!97yu(zF-}volnr8jo#KvWx7OgTw{Iz-$YzhFsm___-Lik)7AMJff* zGpc01QY{W!B<7|kDLgHzN-+j)@d>sS3hjN~gQ*a9=a~XY&|{W1c|Hs1zj5|i-_ggARv{$fUtf8>HZtY_BYV1&v*w=I_K459*#C*t;8%`zy>Gg z4+McS(A?s{Y=c1ydhbW3LbC*)B870C5fg|BM>`vanQ)8H5R7>wte_*D|A!AuDL;0? zI@dfFPd(g7OguNOc5+B-VM6_>fK{wmu@R|Z4i#TOAVt22bdExPcB6W+ASe#4=#lhK z2SzB=lL;>kxK8Y0)6$?!4CodqJ%x675HXd9V1B$6EsTZmBBmgP7DI3*gKo$WI|0Q- zug!oQyp7|LLT|X>un{svNFg8zFl_rJJ7Cr=Mp4MzitnMq)zBV*o^=n#VjV>=fq zxA#J2WwZLJm2pQO>6$>N_(igO(TAg@hXYT5-)KeN$F#6J4IzizzxuqoxpzK!x2#og z9p7!dd*iy_w`&0|3RKQ#ZTMWB8SVh6H&#z>!*6!B-RlfG-}a~WPSf5V&fXqhk6qhd zvZlt?^e>-oPTQ)gP|nV>Zb3);*E?1O1sDyn+qyc+i5k<^_GexJC~3*AX^L4IC}XaM z+$%$_lSVu|&s_^A`=44?C(0do=BXk6Dmw?BP2AY}&@pB=J5s=v7q#}e zcj9rX%>hv3c%=)#4X9d}*RZO1X?}IIq}PU#SmujVzMXcl;=bClyhxSHP7Xc;KDV#i z;1FlU^MCYsW|G`}@p)TV)2|f}v?J=>D;ik20wxpj60E$|3KH@Y@evEWIY0BSm*2Iu zRc$c3pp?y3jl57+bd{rv3y;sY&3QYTw=AAmw9S!uvhfkhP6-#_u=zYxuUH_%mJQ9l zw58vy8IGuTF=uXU@J~*ZJXBuqUKzhUcsaJb-fj@r-lgzfv$8(C0&8Aw`+hC=-kq_n z**}smD2MuKYHW01Kib{3x@i&GnO<0S$;~&K-m8{Pm0@yBE(*V0R5g7W#|AvfzcLxr zxyEv*5YfIn+G@EQA-mmb#-YSv5Pqq5zpwRru2xiN?-JHhM1Fl5GHfiH;L={**ibAg z3Ls8mE+f{6jvl*tdfIyEy_q?3czDZ9I`%nBieA`x!zbQka}n9d3e}a6wJ%w>QF`S_H414_ngjIJ+uur^c3VY^7_`GjCJc46#=R z4oY9u>z}ZMLS1E?CS!n_yjd_6b+Usi@ zO=Uwmo_TRE6@$IZQ{lmTGy9;Uf*nuJ4?_l}v02=%#8Cvrz;1Yty`s5;q8I(%U}ATM zM@q;Zv)!UOJ3~OuZca0UJyNA1#2Oyro0d@Jy1}I2Ku@e!a&MF>U`Vwl9vNY(FCrn* zULdr}n1awNllnb9{+3%@Xf0aPddMmr7E`0){rt@RN6^Vlf|jJ83XqLv&%h^ zl-;sngnb30Nege5Zs3_Y3QDN>D5TlkoK|AoIh&yEzvV7N@W@TuffK-3Hi01r1cJag|Dp9SNy`vNjA#JRFnG`~ z>%WF|1MCntStJ{NHDqhYGMPu@+pEi{ zr=UI3Jzc8jDw+6pFre4052G++)7TB<&@m&X#?%y@QPMWjwNc%J+Qh$$C33dXT{JC zH)4_N7z)noz1suaiKFMwm(`3;EP;%+^{1aqm9UL%reT?tMDMm+gq?Sek%%H@HE?qxc)=cO*5{6s_skWT*q)&RG zr99u5wRpYowsg4$nFv?RkLllT-t>(`k13|v{_tMk^_`q?O-SZEwZGZ7%>qh1%$!Xn z^S7*uosy5PE>vtJd#|+KD-JYO{2ciK&~*YmzpkVbP5P{)Mwy&OyPsYV|9IJaW~dYn zD}se0UgrOWb#{gmEWho+vxYmv`~D!pR46M0Q^8ayGsD#Lcvc+2$fdOB*Jr3Ya;W|1 zM+>lF#VlASf3HQ-7|#n++(0uDX1{tvWXmk5t1|A^Ftdu#o8B>~+Jm#IeXmW$RC z-%0LfBji69^i_0ALh3W_cQJPzq`eX;8pS8%z0e1x`Bq$O$ro{m$^mgUWGufF)u@uO zqTAqis^bqzagn76?cxsS8p6{;@;z!79Ko3KH#LQAea>@N3NG6x!a@hxY0ob^d>QVB zianh>@dB?k!${7KOI{Dp&(V@XX?wscotK%N(c0&FVFNA#xl*R*=A|=kW&%b#6u|8) zM@p3X#s4GhEr8=#vMymUGcz+YTVOG@n3%w0V?}^B8l|s!;@*= z6ZQ4#oZ0&s>}JSUD)@7wCIw!_?n&ZSUPbncy1xCpn-*C|w=h&}Nfzuo(=Ri~Ct(+Q zM%)aSEmOr6&R&Gh4%M95HZ%67ZZIk+?0`?^1kO`DpGM?fhr)^i=7cs!riu+kx7nzT9 zd@DA?_GMOTE>AK1@z{Kep+2a-VEw83#J)gvy39&dA|WKI7h%s~v^m+av-+U5w|%FN zNXdN~nnRPKwDIGV`;UvY%jYE2B^d@Ux088wBFlGd={;~TY!I_czV~Z&du@QUKM}#>t@ZcH>EMj*||VW`m{g8jOzOK zsH1fF#YKDU@#ZVI9OYGVLiMq#SkWGn3!zXBQd@`ZWz&iorOiqHq*%&yNvADOTGNU} z|Hl1&gR%2=HWN$bPkXnR!?D=Zom6-Rv*eX zv}51B-OY*%L=~_#m$M5~IvcGgh-)oB0MCfrOH9z)z0+dC_c-=6Uf%zG3|xr%1Y`J1iJ4fvLu#+jGO zp(l2PYu`<7>$Z|2x0%n*&|vrPR0so<X-u?4img@~th12gE5`GQo2baaW!Q;Yr)M>VEX{?tu3FG3_^Hgy>*1 zd|Y9I6`c^u=Iws}p3qY$TSuSoRrH-w-k`UWqRmS;|5nzd;=twEy;nQYvsb(RBUmEu z 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 PTqVem2+STkdq6w@$M0&B literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinCachedTweetsGate.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinCachedTweetsGate.scala deleted file mode 100644 index bdeb33a92..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinCachedTweetsGate.scala +++ /dev/null @@ -1,34 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.gate - -import com.twitter.home_mixer.product.scored_tweets.gate.MinCachedTweetsGate.identifierSuffix -import com.twitter.home_mixer.util.CachedScoredTweetsHelper -import com.twitter.product_mixer.core.functional_component.gate.Gate -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -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.timelines.configapi.Param - -case class MinCachedTweetsGate( - candidatePipelineIdentifier: CandidatePipelineIdentifier, - minCachedTweetsParam: Param[Int]) - extends Gate[PipelineQuery] { - - override val identifier: GateIdentifier = - GateIdentifier(candidatePipelineIdentifier + identifierSuffix) - - override def shouldContinue(query: PipelineQuery): Stitch[Boolean] = { - val minCachedTweets = query.params(minCachedTweetsParam) - val cachedScoredTweets = - query.features.map(CachedScoredTweetsHelper.unseenCachedScoredTweets).getOrElse(Seq.empty) - val numCachedTweets = cachedScoredTweets.count { tweet => - tweet.candidatePipelineIdentifier.exists( - CandidatePipelineIdentifier(_).equals(candidatePipelineIdentifier)) - } - Stitch.value(numCachedTweets < minCachedTweets) - } -} - -object MinCachedTweetsGate { - val identifierSuffix = "MinCachedTweets" -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinTimeSinceLastRequestGate.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinTimeSinceLastRequestGate.docx new file mode 100644 index 0000000000000000000000000000000000000000..e9bf9ce0ff3817debb8cb517ac7ab17510e44e01 GIT binary patch literal 37154 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 D!xClI literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinTimeSinceLastRequestGate.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinTimeSinceLastRequestGate.scala deleted file mode 100644 index 050f2ab67..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/gate/MinTimeSinceLastRequestGate.scala +++ /dev/null @@ -1,27 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.gate - -import com.twitter.conversions.DurationOps._ -import com.twitter.home_mixer.model.HomeFeatures.LastNonPollingTimeFeature -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 continues if the amount of time passed since the previous request is greater - * than the configured amount or if the previous request time in not available - */ -object MinTimeSinceLastRequestGate extends Gate[PipelineQuery] { - - override val identifier: GateIdentifier = GateIdentifier("TimeSinceLastRequest") - - private val MinTimeSinceLastRequest = 24.hours - - override def shouldContinue(query: PipelineQuery): Stitch[Boolean] = Stitch.value { - query.features.exists { features => - features - .getOrElse(LastNonPollingTimeFeature, None) - .forall(lnpt => (query.queryTime - lnpt) > MinTimeSinceLastRequest) - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/BUILD.bazel deleted file mode 100644 index 4347c1093..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/BUILD.bazel +++ /dev/null @@ -1,15 +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/product/scored_tweets/model", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "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/functional_component/premarshaller", - "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/product/scored_tweets/marshaller/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..a70dbcd67b44aba3e5ebb645e10bbd6eb9f18e51 GIT binary patch literal 36898 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseDomainMarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseDomainMarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..0244150266ce4460d8da33a93e57b126d7f99658 GIT binary patch literal 37005 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseDomainMarshaller.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseDomainMarshaller.scala deleted file mode 100644 index 796970bec..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseDomainMarshaller.scala +++ /dev/null @@ -1,22 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.marshaller - -import com.twitter.home_mixer.product.scored_tweets.model.ScoredTweetsQuery -import com.twitter.home_mixer.product.scored_tweets.model.ScoredTweetsResponse -import com.twitter.product_mixer.core.functional_component.premarshaller.DomainMarshaller -import com.twitter.product_mixer.core.model.common.identifier.DomainMarshallerIdentifier -import com.twitter.product_mixer.core.model.common.presentation.CandidateWithDetails - -/** - * Creates a domain model of the Scored Tweets product response from the set of candidates selected - */ -object ScoredTweetsResponseDomainMarshaller - extends DomainMarshaller[ScoredTweetsQuery, ScoredTweetsResponse] { - - override val identifier: DomainMarshallerIdentifier = - DomainMarshallerIdentifier("ScoredTweetsResponse") - - override def apply( - query: ScoredTweetsQuery, - selections: Seq[CandidateWithDetails] - ): ScoredTweetsResponse = ScoredTweetsResponse(scoredTweets = selections) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseTransportMarshaller.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseTransportMarshaller.docx new file mode 100644 index 0000000000000000000000000000000000000000..950a15636084628eb4716808b51efbb92e1c8dbf GIT binary patch literal 37666 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 R2$ZV?84`inV|5>h2LM3QU}XRR literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseTransportMarshaller.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseTransportMarshaller.scala deleted file mode 100644 index 27486768b..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/marshaller/ScoredTweetsResponseTransportMarshaller.scala +++ /dev/null @@ -1,70 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.marshaller - -import com.twitter.home_mixer.model.HomeFeatures._ -import com.twitter.home_mixer.product.scored_tweets.model.ScoredTweetsResponse -import com.twitter.home_mixer.{thriftscala => t} -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.functional_component.marshaller.TransportMarshaller -import com.twitter.product_mixer.core.functional_component.marshaller.response.urt.metadata.TopicContextFunctionalityTypeMarshaller -import com.twitter.product_mixer.core.model.common.identifier.TransportMarshallerIdentifier - -/** - * Marshall the domain model into our transport (Thrift) model. - */ -object ScoredTweetsResponseTransportMarshaller - extends TransportMarshaller[ScoredTweetsResponse, t.ScoredTweetsResponse] { - - override val identifier: TransportMarshallerIdentifier = - TransportMarshallerIdentifier("ScoredTweetsResponse") - - override def apply(input: ScoredTweetsResponse): t.ScoredTweetsResponse = { - val scoredTweets = input.scoredTweets.map { tweet => - mkScoredTweet(tweet.candidateIdLong, tweet.features) - } - t.ScoredTweetsResponse(scoredTweets) - } - - private def mkScoredTweet(tweetId: Long, features: FeatureMap): t.ScoredTweet = { - val topicFunctionalityType = features - .getOrElse(TopicContextFunctionalityTypeFeature, None) - .map(TopicContextFunctionalityTypeMarshaller(_)) - - t.ScoredTweet( - tweetId = tweetId, - authorId = features.get(AuthorIdFeature).get, - score = features.get(ScoreFeature), - suggestType = features.get(SuggestTypeFeature), - sourceTweetId = features.getOrElse(SourceTweetIdFeature, None), - sourceUserId = features.getOrElse(SourceUserIdFeature, None), - quotedTweetId = features.getOrElse(QuotedTweetIdFeature, None), - quotedUserId = features.getOrElse(QuotedUserIdFeature, None), - inReplyToTweetId = features.getOrElse(InReplyToTweetIdFeature, None), - inReplyToUserId = features.getOrElse(InReplyToUserIdFeature, None), - directedAtUserId = features.getOrElse(DirectedAtUserIdFeature, None), - inNetwork = Some(features.getOrElse(InNetworkFeature, true)), - sgsValidLikedByUserIds = Some(features.getOrElse(SGSValidLikedByUserIdsFeature, Seq.empty)), - sgsValidFollowedByUserIds = - Some(features.getOrElse(SGSValidFollowedByUserIdsFeature, Seq.empty)), - topicId = features.getOrElse(TopicIdSocialContextFeature, None), - topicFunctionalityType = topicFunctionalityType, - ancestors = Some(features.getOrElse(AncestorsFeature, Seq.empty)), - isReadFromCache = Some(features.getOrElse(IsReadFromCacheFeature, false)), - streamToKafka = Some(features.getOrElse(StreamToKafkaFeature, false)), - exclusiveConversationAuthorId = - features.getOrElse(ExclusiveConversationAuthorIdFeature, None), - authorMetadata = Some( - t.AuthorMetadata( - blueVerified = features.getOrElse(AuthorIsBlueVerifiedFeature, false), - goldVerified = features.getOrElse(AuthorIsGoldVerifiedFeature, false), - grayVerified = features.getOrElse(AuthorIsGrayVerifiedFeature, false), - legacyVerified = features.getOrElse(AuthorIsLegacyVerifiedFeature, false), - creator = features.getOrElse(AuthorIsCreatorFeature, false) - )), - lastScoredTimestampMs = None, - candidatePipelineIdentifier = None, - tweetUrls = None, - perspectiveFilteredLikedByUserIds = - Some(features.getOrElse(PerspectiveFilteredLikedByUserIdsFeature, Seq.empty)), - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/BUILD.bazel deleted file mode 100644 index 6414453db..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/BUILD.bazel +++ /dev/null @@ -1,17 +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", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/cursor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "src/thrift/com/twitter/timelineservice/server/internal:thrift-scala", - ], - exports = [ - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/cursor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..d4ceb16991531357d40b047a25b3c871460cc754 GIT binary patch literal 36897 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/ScoredTweetsQuery.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model/ScoredTweetsQuery.docx new file mode 100644 index 0000000000000000000000000000000000000000..4b9ecdaf8115ffb2163c8d5c915e309185d3650e GIT binary patch literal 37174 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 =)>-|t~@25_-JM++l4SKBh%frzzA zu;k7{8?k0e@(wnLki+a7;xrT!tdQ?r!Le`G(3Dqdm1HRuePP z=7o+J^^i;}@Cg%o)k3HcC^$&)n9(&wI4c$cZem(XTgOBsgwCnT1%I!n5>BTRF%Rm(ku;HXEsK*Jm4s>l3H@qQ(~MTBM7iOxfuO1U*)yNp6D zcvk5d@C$f}q&>S$m6G1ghtua*>`#B)cW7m!{H$PvMOoTPoPZQ8CJ4qW6E$8GmA_wl z5+ZV(D1RvN!-SL#Ai^Jx-}Ox93~YgVvJeseU4ic#JUFMh5YNaY=&{D z3eFq7AC%Kz0BUGQ!xgu<1{=t->sw?#Zl%W?!@yfyHVo>l-G*}56x)m{3=o%K)50zY z7oMR(AGg}Wbv}Hca={;?9V<^zic=vxT#7Al9O}+r69yD&2_US4A>IE)z+<=ZFo_IS z;2#92j-YrkamSrFvc15>733&NgDuA57c&<`NlHmdWh6uZZb6R+j>-wrq0RZ4A^=Gv z-2^eeXQ}Cg#SYa@EoYf{3+%%tN76AX;`^L{tcZ48ldmi$F%Q<3ZOA&pA3n)Igue_aNdX7)kzUOVV*er#oj$iF=By2D zC*E#pdL(B!=L%DxOOkivEO#<8+4Wo)_+wUgQi}-zu2YiMep&C|Iz6jMi$i6X+RNaX zGJ50UA{(eOt~Y0>5y-Bb-?~z#=I24!Q}X#=iJ1w3eXVVTT-XwWvOs$7qn@Sqg8p?5 zU6h)ZLN<-Ba32=JB&Us|!Wp2054Y%p#{yQ|M|n$3X#>1`PHd(Ka8{foo!y5Ij~&4M z6wEC{Jy(~_3zhgRU~DlD^_8Oyz1l4H&z-^o?1-=R$vq3xB!A72G%~OEk#Y*6fkswM z_9U6bW2~q4kpVHppMu3@EIR74#U%<2(W2Uk2^bdQ08J_4fKRJm*P}Ait1D+28lr(X zWP|QpIrY6nX49DXnnfd$WQOr>RtXIZ31sqUnx=c7>&ANOq|TBsS{ldZVmJNXjOj1> z`^gZ`#B8(<*K+xo6b$^uTNX4rv;1)n(;#42TB)-%lVr4axc=h6y*cs{ zF*0eI(1<@WYxX2CL8Dg-841fuiduV;OcFQ^-l&4WlGyl^F5WT^L^4Hz9!!|E&~zDw z!YaRwhtV|E+s|i+ERqs{z|v|%VQ64xQ05yCykcOx8LXqoB={GhBK|CQm8VYfDP53n z=J9q9$xlDYB==~HQ{4^!O&xB)A9bQA|683c0#F?fOt;_LIp)8>Ob=gN;$2Js2C~P( zg}z^pl5hVfDK>_?JKx0Y*N^|I>sKfwVbBW>0&)WTZ&k2d%v@cq>@EIUXVt8}<@}uo zqi3houx-yAw#7;AfcA`{Zd;zp7Wj|=kcMv{b`RVM2>A*-A3FaS4(YQjW}3R!Xj8`4F&o9aKClDUmXZ?8Zug^ zgL!g!d%wU5wz=cYUhjUC4ysm84#rg& z3_fHOuP2f$6h!vbVl)*&`VnQcJfw{>`){#`O_`&unS#9FNyho2raTvMnTM9R0qgND zeaerNFa8Y6YeOpoafAZaYf5WE3kxfF+LDOLTjgAFZ@0oo4K0#V+cB_wSV1QB4rRRw zm~CLz^0U3M`3h(oPXLl|m1-+Ug_`m9Pb_0~BUwIy_)1%=BgzkJ2z|_^H~L^Cx`(q; zk)?qF2w@lL&$$7d*eR?P>Z&&7Kg5C)pDX*RMpq;08`$1&#APnj0(ZG`rb`Ix3BHr} za{vYoDH0&YU7g@ynFF=Fz2L%Y63&+IFxa9KF3(M&xViW42BkA|ExOwf6DS0OO(PGj zGu*n*_y$y3e-kwe@n#^p+tibE%_SkI+w%jmB=U0|%5U63+n9H8#xDi}51im}063G5 zx}Q**?jrD-gWO!q=?l2KcL1WfN&D7qzK?2T3c?@dX4TrRwc*xh2WkU6*9_%#$Vp!9 z<&m2@u$zvOii{Pr{96yeRlkDGQoZH~#8QJ>64*n(Y_7wght}{#$Gv|coPn&|VXV~2|Ijct8S_x0&vj*1 zpE}%qxiHD(rL}Jso@nRv%2{)1ktOQude>|!cb)%IIqHkzHn}PPQ{JxFV0;UT>&ko^ z4RZ3!4mq(I{V5R$`&#jhas4!=AT@ZQ!zJvj5r$x#7gq*7p{+@7py@e?q$#2V3b^$0BtEtMb|7D0oQ{sq@6 za?P{er#!Fkga@(Z_tI;*x&!*3%PUW{k5oW_C8%0}?>`k<|0+TC)y!Ds-wycbxqjG>ND1O)A$j+p~1*s2;C+x}J8b1S9a{yPi7$d7LkG^trKwu#LcsB|MCO_NCYULfcM zbyyqmSHkTJzi0SuV_B~1q&pw%;ykbDrzk)JU~pYUrNBvfKW3keKOWu)wOhY3G*F4r z(Y5{P!*gU90B0@oKIA8U>7EQRp^bh)uJGV2cT;WQ|^)u=5PtP#rU35Eo8j(=k^%9%VVQ!9TsiVa1cm7b~+dXMc`Rrg!0o zI13YR84ftkM8!r!CfnZ_8M8OgRG*p2;NmqedG{HCB9kdrjbg=)5H3`3Jlx1TH0iup z@5hl9fAHj@vm`a=$f%~svQ$DbsR+E4$uyKstz6N516`}?pP`#;-TMN0HC67Q z5wKKRuje1kdlsl;KT?9AlFL?5)oNR=WH6{SwB_ zvm3Ftrd*d>pl$G?BtpXzmOaF}xvd=?M>xGk%@6rmRVT~$NJ!~T?e!4#Fzs=9p#NHFH<`X5K%!e`uGQ+uc` zNr zaOq{kEuusGa_wrR1QD%OG`2}h$CgHkC^y+c0Gbd$@zF#{yQb~DA}`scdvo+&GJPk5$NwQC%LyL?IUFmM3S8nq^HrVX0O2a z;T61HuoonXCCRI1+I^eVTD>;7S{Q5(7^$||+P;<}I8iE2%2Fxng_EJ zrRXz|HF&&|pH+TMm3GPEtc4cYjlU6kvIvI`fI&EuQh!(HeQlIsm6Rrr#}H#EkehoP z6v}22L6Om1K3j9gxmSC6e4Na*vZ~17fV|PKUA|*Pqrf~go}xfg-~>HMb0OC1&`wVur9V;JA&r z1q#!|Yd5`9$YD>T9r*ykeJ?f@lC_coO~HzjI?t4t;P?Hoj@Wq3hR<7rCaVNd*5(6n zE|^N)A#&p|1w&sdNX8cKg}d=~Dg zbfa~-37uc!+8f%DVDq2#`tG5?|HI0ntdy}zrt*iW=W4{Y?|tXiyxXjf>ju8j=P$!a zc^kS8e!3YWXOruN^OgdKk<11D^u5;KlcF@k3D|Lvz$AvLHQPFw5Q^k5>6-`BY#N3N zN%C~Ja~Z$U8I(PAoW5bCq#$8)KKzvABgW8K3SU{CI1bJ)xc{cIpOVzoPPeqQLR~Cz zb!Szs6po`H6)SU)=6U$*%HRw&x@bTy`{giQAw`N-z7fxgx)BZSu#80>@>w8j);UVU zIg1FjV@_mLE49w2_)AM+8B2NU+|QMok^0|5?YTM;YVSg!klfi2D3Wn2t~gL!t* zhlG+ok6`V@8r7%?^*b%L{R{Kfmyn}B<*IcU#PLJu2)-!K**- zZr*W1qOw8nitsyAX+ze=^@AOECE=JPC$$NTjy?bfqJpQ1aUw|8tP@_>_Gfz6Vw!4_ zI!HqrEjY;Mw;LhR-{m8`snq+kwz7w6a+kZThMHVPdu%~1!&BQI_Ny|>?s+iqYqp7U z!BgKqYtgWzS%f{I;+7e2tJ*jC@jC$4J1X~Fz_>W8R#*1gK6<;+R(6ic6;<+m5<+)9 z=hf((P;`VC?G*N>autg_b|gN$3lE_-c_)W2X2~4AlIp zsIYY!7l@FNileo)s+YE{BY*xNvsN5AEogjBAw#v{{kdaXl^sMzAJ!Z~x`gojtxHP9 zq{IhRAJ9ECDa9H0Y?j6cibyO2%RLVRklH^n7KjrK&lw7|Qfr`h zFhG9#h>s_Xm+*yQEGnZ=qvpfaNWXlCO6W=`GXB^O>)mz#>Nt9AC;tvc%)tj}6_<8# zg!8(R01*GYKNh}63BCvxfzGNyu~e~;)N*Tcha^=1$EF(}$2ibs#ae<;4+67rEJr-8 z4ugFgbHr&1K(81Mh_uy6@uF(xz>{P?wxaA^_f;pvQAB-Vs)6D$x~gW(*`f@tZG+1+ zbq-oy|1VvF6GzM4Kt0qzT}1z(>+kBY|5Eo?Y1ru5dSHHz0=3(%K-y$kVP-*-ula-q zw*J|Xv@&kCC9D{|Lsn|Lr$7Z9mu;KyKt+6W6)Lny-B_ zNsChxy#&iSXwl1c;irDh=1)FxZ59R z&4aMS2$KS#wON+YBXswpv?bpVi>`S0lIPdJ&2ViQhG&vhpfi*AbvEy=_QhpI}iOV(!$miz}6a8;@Es~WdchMCgm3zvmCw)N{% z*)(+yyL~;aTm_|O#$G2>k|w~*m3Q!V&0%=;_Hft-Qdh(U#e?B5fo)bVj)u|+=wJ6K zWWWAvlomG^8g2uelL-fAcmEo5*t^*on>hn#W&UJ$)0$iM`#d<^JEg+$61vUdi5w6d zO$Ea0deIW(&G#TwICbZ_W2`Kj*Roe8)AUu@LS+%`a%f*BqtShLc;CGNuaLi9Zvqpx zk-{-txUK_rN_RvVj%BA-4&HyJo>E=@REAwgLz|gv^A)!G*n5wi{f)Y@0EtFdTS}wJ z_nrE7?YmTZlr4WWci6x~%D(1JQthGLRQa?9JpsAb?C`=D!d+91@Lg6Jm0|W^TWFQa zyuw#DF1Ulc1-C54EfaO8uG%o_u=3pqc(~#YOq*bo+KodACo08#NGeSt4h_Zm%aIlJ zI;DOmmF0X^ad3+MaKk@;d_vJq3H>_iT<#%%PnSYc%Wyt3Rpyyq)P@{rt= z(pMo0T%8JjJ2MaIeqNjeu*|f+>47xk^tBccGmtTs5pYh@unwyX^t|7GJxv$!Vt(BM zYzRT_P)Txa#$1JWtLs*vzanYu&7Z9-d>IySFf2eqiI!Bb8G+PAQHxjZD$SL;&~K)0 zlPdPBf9)vl=KiWMS$||o%P=g9xgo;VQgF$hrri=V#~A+${yXWNvy@_bAvP6F=FB36 zycBMhXJ5L)H}2TDY$QX@q{wnAI@5H7JBH=YQ{FnEmiCO2dNw8`kf&z!kWb zl=o+cnPYIuzZpi@B&&_eFM{ZYMNWD6b_C6hODN~W#5K35+C{eHehX>7LuW?!J-J7mMz``Md+&ucx6mav1C-&J1Orjmh`D8@;DL9EIZx7($=v zxx98$-f#*E#Vp<1{SV*w52PmIaN{tZ#Bz1c==v9|Tkkx00NbgU)r&b8dwFg>rfLK* z+YNU5N_DV#d^MG+P_XX(J=*Dq!kh`#r=4lOyJkJ^-!MH;R0iG0)lN{yN*oub!WrJ5 zc5pjyo7F5{VQP@%YC@v*vUwBxzD@mJ!!&T$@ZKT(#&=Q?^W~!lUS0wLAAb)C8dOnV z_outwt!wk$o)DiN1AAijyS?XuZF_B9o{5EF4KCJFp8)%14b;>1=o9MkYTxx#od_ZW z%U~DYS|5UojbT16l(nHK`xI~RI`v2X_6Pibo`MR-RxG+9K|q2?KtQm8Jr=NV_g~!< zaO4F%KJAUHY?-Vb%`C3eZ5+|nFa$fjxM}UCQD_)3pa(kH`idAo(}QtYeJ@GkDq^g4 z3Xx8fN6(-#`ns3`$c}#jc?=cs{;0=LbL-T@VK>#;%7kOyvnY3@Napb9#xy0mh z1vzbPAJ_x20kcGyC}>m%uZFYO(yizMb z0KI*bdBeu|X~j^_ESWF$$`*#vafIXdRsyCM)Iogi9qbbvCoz)1=lbX;_-7o0A_lBn z`qYdHyIY=WL7QT{P;`xs3Bs|)_*!()89Gjj8Wor%zU5z=+jW;=M}3db;K`WQa>ghW z#S+6zzpW>h+D%iUn3b|+Q@q|NpVE352^62mjwMJB%xvd7H^4oAU5z=#kEZlMHC8iG+L1wgVQka>3PhJt8AJiuArvVRo@{|>dvivcW! z8sTa7MJPME5}`&(g9m>xND7NJ(Yxy;4vsAqBknUx{PUq8TP#LlbKDee+J%&MZjIX) zk{P-%L)8i$gp|ki_^ct%t9`iM-+hTEH5r5*Octa$3eM2N14u*3i-{LIt55G^Vo^j3 zZXbIO-|Q6K8sG0Me);r3=XSr22L%ZA=MGh3N3gW|B`A?^`%og&(gq&lb=;=(2hR#F z1t+*_RG%W&%mUmkse_u6Q|a=*X%AQnTEDMvnrz!{Tfg6CFd=`Zv`23Z{Oz|fezh+M zjozAhaV&WF1U!5HpzN;1{}Jo|wRQ==HpLU_q8S7?Xkw68pUbxO1U`SRIK`dU)%p_ddA`dRUF@!iduh%Tb5Ef6-(AVxxO+_>{h8kIx%_t6w)Mwe25#|7 z!SX>31~(5}zFBcT*^U2$kQzIG!KuiGt#t~9)u}meH{Hk=y~$^`E@9q_2ao22F1aY2 zu=KxNUiJlr?b6Mi@7R*Lx;2Y>1S6CWOU`^DC(*t0(<+63iK!8NAFOImO}Jtr@()1i8ubqrT+M-6St=wel~@3+S|LzbK1}Oo>?z^yM0Mo zTCdDh+ssc>=ImZ}Zcp{KH%*7C*Bsq8>5@@(WvTDmN2))n?#dmEe*by>lqVj+#iw6g zYnQ8ga&hZxx$2t7%a+fpdv^2ry!wU3r>{+qt4qDTdi~y?*KS+itK6Rbd|kiYz0W7_ z)&92s`{wlF_^&dSRcpRi+<%#WuIBgM?|;+lE$SaWTE9Q`*WZ5o|BFfu5AaU0%ZRpveoc~aud4VBg3Cvg5eSFHT%i1W&s!s*|9 zt^B=%wRUekbnAa`Ds!vqD=WU2GIY~Wwk#3q%opb;za-?-!3A^QMt zMkWzv(C|111KUjVh_yjWCr$;nP)`BJ+(6w97-#^BF)&0s0|$ds^Gf1FDhpDJV?nJm zbOS2Yyd8c3mEHr6BXh%a1L+3FV?ZMyZG3Rk9$jNc8+ULfP{~E0MnM#f&w(QFx+gim z2s{#vuKmmH+v2Z*+H+VK7z9wX*8@f1+7k;3u(`Uzb)~8kP~9V7%N*768Nh%5&l~`a zD9r`>9h>&N25BK9pyj85M#!L8&It?yuy%;gkqyBb3cahvth@CY7~(=%8Te65D&>Ki zR9sS-lM0@$L=OY>10`Yl8yIzMP&A_*FNtmr`aCJZoOy*XbC4!c(6ysaydbpqltQ(m zO~as@fIbm{FkxRA)C81i33UDFqs9pRft67G=wry}Mxgh<5k`15pm*ND{Wf$1&^x*a z1C$z(4ZzmzMK=q*?}#uGsNLZRHxtYXfHCK$U!{Zjq`=6 zPb-DMFvVr0-uV!%)CqQaH&N+|OPuKIXK3b=K^A-GujMhFnse_;#*xY_NbeBN4#3p3 zWO%=y;sR&csp;c0L=Qd_%h3r)(s}@krml?9KqnpyhEow7g$}LGpXSbOC%0EqIUJ_m zq5r%)s^t1I?(0VOAnqrb^|HuBrIBf!j_}Q&=WCeJxw_OBqlWl?r&`wu`g%tTb%(l@ zoPOm1VE?1wOQrIFXFI_v0G!9Py`)x zw4>F0EDr;v@jUOuku#3E18Ax1N%a$9(%9N#D!qg5`tI&%3u7pR9u`9l?q+A?ZO7I9 zhEcw7stebuw28(fkFfJ{zd0O=llk1_1nDmEN+|fWOBf2$_>1&=-CrO-?R|n?#=U>% zUv($_+)=davJ#MIBFB(StNW5fSb)|Q_vy*&5wW=Zy@XKD^Fs03uJGs`S>6+-yaAZf zKdR_KB`b0ds@^&T7#Jexr=g>njT1A|?`LKF#79V0RKGJJ$zjT3yC!vsf+Yiq1Nj1> z?yuvgMRq{xqUFvGWeI&P>>i^1vmF!j`Sg7JMfxI}Kuu%qxq#e-9<2@9i-tDCRk&pM zc7IZLwe28no3w}Gn#S!`J`G9`8Yn@g023ugfV~s53Bb|p_ax7ZA5-XK zL6yAomYkK>2)jasla!$YKMemUjp@JGddtBnZ!?y~HLkG#K*lVkSFBxz=gN>T2Cm@1n5(iaVpc$#nINF=+Mw7>lQiNX@d64NQ zk$_ydRbAJ0K!0KF(CqB?Dx(vnpRluO3wsU5OVbz+b;>7T##%1&kei@I2z+MZ-Svef zYkHy#X0d1nl*~8j9}Jxnc?b2rZy#RYFA~t-b6-H=9$Fw9(9XDtzdrX~;{UTQ*DEVH zN1(dcK!Jgw{=F`r?Ct+3i`tmo3JYrc6Fro^bGRj}s4{MRz`W?R_!?eKd`9!^DA~t2 zs8-f(pwB}n7Vj74n=t-*{-=h~rv*`S*an5q>R4kBdBaK$YY2_i;X`{X6Z>RNP-W1i zSQ-Op`VNLuqm^?ojPTB>no3opUS##g;}=A*_D+iQQ_joCBI^xaMQsZ9-rt|iL?n-0 zYw!Edlav}4*S{*WD2A6qzEpoM_b8bXw@#%#fYRseDl4dDX3P+v< zpVg@2eEc(%6{45(O`Yj4v>XdtT^xZKa*-n<2K&pIclZ4WKXFV7HbsEnZ=~$YGf!z& zz;MDFj_OHN>q<34FQZOkyR<}ya(Fo*U&Lu5M}CkeS$zWZT%%=c`L8;}w%pd2^2Z{} z-XcRi@{27#V@uF2i^J*=#wIkSV))jM0DnefS&7@yvR_Ed9!UwlDFUqLqtE1MG!&6RR17}yHF z3!sKhv=+ow`rxXwO?>wm?**0V!j^S^^T93Z}Tz|IY#8)VzZHw zBs8J9LBSuAfurtaqZpUczak@CsQ96yJ)QZPndlro{oxA#ZSLln_@5Jl2Af{55%gg_ zg8TCW>jrQ%Wd?m}U2H*{)9;xvkSq_tWBp@SqGxIdIfhk=uY%yE_?RY6iK%jvh+< z0a4~P`F@zO#AoP)SMrwErRz1zBzAdC^u!n?(bjf0=O6SP+#c~fIsp_+$r(B)*FT2T z#w3_iGQ?CY$KplP3Ue(giZ%(D+!SWhS`6r^Z-7?u-{sw6i>N<4HO}29NaHK@hWd4U7Poi15;D_ zHzDIWx|kB1Oi5$m*oo%2>$nFF8@?ac+R5LiE`58D$)_{KVEx6&VQ_2enPxN88fwaErGvBeD7!))CccpR3x6iuBCE3~; z5x$$p=09X-#;z`kx6A-LX-mtg(K8q4-a8p4O6SNQc5Dc;B53y%dBPi+@!v^V3fA|( z4q+TqPeAp5s9w;@t5;C&p|8pBp6jcml!ToafiqIRJfLUZ0@%}iEs*O&ny3jjVYB~N^e0M{4 z&6GiW+kfYd%O{)Kc4p#Mb$*>6m%ia+08bK!G6pgudBCS|eQ3VH5s_|dyxOE`3C8p!QehSIX za`tQ^yO^kIx$LO0-V|O-bL!btsMiSSMT4qcoHNoV=cF{+KHL9(b8kxE`vPl#VBRoC zAYQcV|17T;g>DF?ahCzv$9`{QIl5y$ZvrOa)+L@I&Q@5Hp}GZmSik$Le}IvENex-q{NlLU>0gvY23-mr%=Ec}(-ekznunS9E_8YFlil^i9p`h*iJ>ngsR*&Uin_+fviLgw-Yje-+Fi}e z1U0jlmu%m5n=_yxadi62=^A%m7gA@d?wQ6@@x8vyu%>&^eLcj~Tlnw7lrV)t^I zF1#=VczuX@dw5zni!K&!KHAa0e^|R{OPOnX+MoG#(-so4bLjC>C-7?f_H8|w8MsVr zkX(E|)wds#vb#05a@1V@GIn&?;IV4MT`Wvo(bL_b_=Pt#vhMBLvR=pQX>MiA(=A;1 z&0Y)8hj!PtbG3Kl{{EzV__N_%Nby1+uu+Jp&jPrVHRPpj=eqFei^8Xzl!?O{;Zxzv zS8O3U#}5}uTSFm%_lC?XPasil8@}r&C}Tq>k83_W-(Q5qCInA3*Fh&7TQ5E-Um~Co zg)f!wz#HOi+swu3k=xjgRs93*M6#pd+K_3$G{n zRYLg=t&2ye$MUMMgjkGkF!O8YYG+$>#aPk+tFLX_s!yk$?pf!{jrgOvN(xb*!^Rpj z$_DVOB(b-2)(PobfAvF`aZmNw9944tv$IYJ5G{=o&$$i0<9r>jEkzjU5uw)R&3}SH zS{)X9U4sH$7;=ivHx*Kk5>j0y{8D4+qb=;i6U^M+7GoBSmOIN8~NN7KQ6rpD`cmz;$jAYM_2TX;$-8cU4TKDIJtVt zZF*HFR)wuMql1$IHnV+`7P>(j!gD>YiH z{#1+mz_)h&s`;s>lbJ{RJBODcncFMjlQW?VWvNE}x!Lo+y{oHVr+rQt9Q47h1cjPW zZ+(02WkeZQH0ptfOW$|zDSgk07ZlT*QzEROzK2@Vhu4%z@`#|tflCm5Dq!pEerfBz zAjgkbebX}Y_J7JQi3DiIFlSn}$2NxtFKF?(;yj(ap8v9?&mbE7f#!`xdJFeM)SJ+d zMkcb5oF_r(%)DHEcva$AjWp(?w6b&wx=JE@c@V=cCOxSv`OS19wy`mF*Itch{Y~D(~`njtYdZ?!d(^lVFr1qiXbev(~=E{#Pf|76kxY^sn(%jd+wyP|O~P!@V-=5dXqH;fM!?l7Pn1{t>DJLJJ1r{v-5H zDyUNGGb>W}{~|b3CI_`3{GlSb9ojVae@OffRIKM^6?Q-hXw=_@x#ENLsGx$pVmAC_ zBtc~SFNusKaMT`%aDS+tO>k>OZT~&$-%SNh;ti9oZJihfS$q;Yb0nQa8ZJI(58%Gq zzBN@Us*n2WbT zsIV7i72jb}yt~8t@V4utJc@9}`h4Z$>+N>dl0bn{xb75MGk?RVx6_2-W!%uT;`3+nGJM2r^)nvUqDitR z^S&7p=$aHovrDFR9^0md^G6HWVh<>w^%G9s*L(PJWan|_71gRcwSV2gCH>y^saf?W zlkjtA2f{~wxq-p$U0+!)><`S2+}IXE9xGY|`kl56K!Ge82lnc2U^7Z&)7BHAxuRXV*%$mHmd zJ^jjer9oMSA>_#oDY(sC2fs~jrUihWT$e-J7B{)ia}mV? z$C;!_6;2du$LCcfX2+;=G7Hp~y^aIS!|gqBVs7OR`Mh5cT2)v+c#f19fI(4OT}`)iAE<}LH{)DX1iD;UaBx<`u;l;K8ObIQ;S>4Qq#6Q|K?P=3j& zlM}L}{20|(_H7EXbR_<_cD2(il~&n6!1t=Tr)P|=E^lSO3r?M9b%}=tk_RNf6IKm2 z{Y^Yf(?=v5()WvpY5w@-$+BrPOq|70rV4FtdqHBySBF{cf|Hu8H7)`w?`w#V!JMX! zo`1#mKws$Q7fp?*6n2pjc)Mj4rz8nctA@}kf{R#nDY3WTN1j}DVx!C`t^}Daa!e(7r0sZlwufGpB829Cp%r$zY>(k{E|gT$VPRI9@%!bh_wUA(xT7%+ z5UVM^)S(D&2*12<7M~ObT=%vrJI>`7>EE&uj9!i|*&N8XU&eQTA7#)}jX562uusav zTh?sUJP0jDElG_ynzf5j>rjchf!dY*Q6ujoIXF@_$af^XM9nabpUi$P3&rUn?ohgP zQd)+SUQ3kgt*#yA@0)pK$KD^S?1W3UKu|ZOpC`{iytP0`=MAMT`b?Y1>jbeUiv^HT zOuzLo>$`Hi;g6D<(i*RnLA=GwUTa!4;-d+E7bW1un$SOGkSTHKb-QKs z<9pxKM$-!C%Gp``LYjJC62h0a``5>L0-Oq2lnfT0u0?l_8ud?{`3MSX6lI_JcoxfQ zjx+`oFYYpI&@-?T(CMF5kxiwl#8z0WwRQOsa7o4oBth7ouIkg$J6>%@g=s4|2}tst&> zk9nb89$%_CL0vC@K|q(Xi#awMU||(1{;akl?ZcO0^|leCc!sNzv@6j_x-%0!K`c*k zdTPB=MzFNjnMz-dp=>*V(p&=4^bG6x%L-}^D@Q$UBnMTgs>KDA~CGtT8OXezhrWwpKPo<5385u@NR3Kk%ZupYU}Xq;rJ?-(JS z9d`D@x*-whV+OxnzG_20`$*#sYwQ4gUx;&?PzM3(|$LKh?v$`Sa z{F+IbZ@s@9L8xaYQ@a21daijk2N`U>F&XcuKr7Kk@O@C|T*9dW=780lN(bY9`Ca@s z$x*+c#fJ11=yq^hSDaYMk|+k*;R)Q&+e-$UPrRSwv)P{_*OagdLf5r)H*pW5IxrNR zuDM)n7F^vouw39e;Js;KWHyuf&^>1yqH)e)8h8yvuyeWV7;?Eyy2FTr&VO?87xl>8 zS{Y8`mjz%><69RCL3Y$~A6rMS51!7};T%Jmy1{qI?_WK99`#bPho~k<{+=G~)b7Wf zGjRb?2iFm22H%kisi3!UCnaZZY*BTK-SLS|8m$9sYSBE8`__LYEx%cLQ*Mae72;dc zPd>kOD#(RY?RHpb>hsZ0@EyN+h7jE$mkF3jBEI8mgRogQ`w`p2gg*sfP&+kNA0VlV zh9B5cd|8*G%H#IpaVT;E;rQ<(=WtsH=`!f82L@oc@74sZJ7?^Gas+TuYh(}um}-jw z_WUr$vZ0rt^#*wB7Y>kAK`;|o;()5KgNf#~0Y6o*w%tPHoMs~d7ea+1mo4~qM=db` z-{b|vx*yjN;xO5@R5InY`8ytXfsKnxe7Y+q^X%U#DwxLK-yD)AUfm&hu;m-sqJZ$)QYjrp;(^oh ziY1FvYdcxCqygb0)r@&A2ChhxvWF_DS7y*4+az9>iEy}klO~gI;GX}U>QH|iw(95_ z>*nKa#P_zPcf&`e!SXoD08lvgJ0GczKf+7?3ZMOV_`&b+Kq9e@G9RvMyC0C3o>nh2 zlC$acR!uIF*~-k&?MmGkhlRWnC@Ez)H}NO2HpKy+9vx9XN^sT}LzSwne9=47@%`Jg zbf{d=ZuTnDY#*jAW@W*dG0%fMEs>}D3J)baO!+BRN^=Yh6iYY`gSmsqX3LisB+rVJ zYFq?ot;zyRxGm;v$`gh14G`RO{itVUokEG2)UUo7)DcFXs3|d5r)c2a^x|8h9jc#% zH_(vozFrBJv=2l61m)XUSEw%=~jwoU(|| z-6J{_!(d6&7=&dR*WJcT*oXXB)!mj^)jHdBnORMoz=JzJyKfkFk2>sxlOyDEId;pB zsgl5Xd13L&IrVGZsP(*cKvKBdEC7j(t|XLNpvp8-#aD~&(^rDERpTtCtxAotlKLB} zr0bF;mSAyL;P*xzsR2QRPO3nE9V=@y{xGsg3orjO!w-{0NU@z|maQ?~`RZlGwNrDN zkL1}i{riVB5SPnS#Swnzw^wRV42v1dQwWg=bPxzJ^zRF2nXE}b z63#Vj0yK7NJ3xdd@FkxFlz5cTl=_~|hD-~z&na6^ckq9_mR}!cMsCAIpj) zMJ}T>O0x!qG))vmE_nsLtD?zr=#`+_34n5vB0*#%g!+vCHitmiC@5gl|9qB*%@cjn;qqb=yiIt>+R=rCxoxCo6FxC-YJ#p>mU?dGBH9m0hLtVsXzau zBe3jDpm{OQA$c7se|2bmynLwfMf^1D(}74yLxdmo!N7sM6?srI@SZxPdh(7Eu^^51 zk+T6VW>welPNS-WG`S~7TwPr>2-2N36qpL0(K-K)5Cp4PjF9gHfVH;|;qX4j06aRWx zsk_wH*nIrWgMK4C;U|4=s)zKRN9<` zNiau}582@T-O=_b*b)py^bB9f>NAHcs$)}m7g)Tu&9b%M@qPo3R$!3YfK0&uXp}~{ zR8AQ|n?*2Y!g_vX5;lNYx3y}(K$W53&$WyR5eJbfM&byj3McU{bYK{f40{F(TRd(_ z!E_!P!V#9;Eav!-J%aQDclUJIz=7Aci7JCsH9KshDeFM~nL7gv5R9nys~A@XOu|xz z>WstpBGgdK@BRs3ys;QG;Km{hQU<8CU#n_x!^d68>X}eu`L)Ts_N4!&k-R)jN4aPr zSLV0xCBfgmdqTA29DGhpS$1U*=5d{}=3gbp|d4=9;7VWc*mM2s{I zPIAeg{Y~Yb)Nhrl#0?;oeXze(LV?$QH6CjH<;}8ZDvo1|;4cmC@&q~T-|z+*>Q87w z!WgP0r>XT$(wsj|8wYOq=62lG=j1<#D;({mP(_+6R+UMT zPReA|uaE@t6a&9$?q$pw+LSfZQ-c~4cq|rF;`>c)jmAE2XMlnx{|w^!pFv3zyNow` zm;Jn9PU!o;slHYq*__K~V2s`O^G311_iRVsuaIo~-S3KTin>3mcsH6+e@O!-`$7Y@ zo$*IIBc+VoJWP`b^<N`P$FsJ!Eo!|X!NNk}_hs9oIliD8kfrUVONC$;K z+LPl=xmZ&d1hRRklP|)Y@GRJ_-6V!Zl1XS(<&C#A~t3il6+*ivJ&lxrBR! zE+QEi6Mrgn{htaiGp<4=;x;O{Je6}rPfFf9jyRU+!Cv;~{$L!QsVaESzU!ejAl`%A zQ#P*#t8HWaEMBvb86CGl_cF%MRzAR3!rSNp;(Ay#fZQb=%){%)H3E_ zK&!KF{v?xLJ7b|`oU=Y{1Uib>3wo(q-da7?K;3A}8NoNNnPVq+d)cBh^aNA30`*h1 z8n#Fcco}-o`#y#Jrk4GK8XZIpEBpKOJ>I%LkCbfm2eqr|7>Jsm>rd(*lo%1n{|EI& zXFq&inb$Rj0ke~P)%gnntppNGSe-) zzIZN^;;EW`k&c}n^xvoK!uQQyv+w>QzjYY~k*mV~LEg;Dff2#}i*ZBwRfof|UbBCe9Mu&f^;C%!8H-t>Ww{HidAM_$F9tPi|8zl)R=9JksyZ80!yzBUUr(MT$y!1V)LmIL;t^)YvGF z2j%*>M&C^@xUr5vD!PBU|uZjXst;$s4a4t(Ik{J}7=7{>7=651D=e@%r z?^$+OGKQ}(vwXHw$}3-PC@L`{!cp0tQdYPwoAg-+_H&vDyF_=uTQVO*udC3~q!mvM0h9vzq$%FXYWQXnlpGh8h z>#nJ`J&sBs$RtLQQ8tu$A5IrIUT|mQ`v-$ZN@@ z225!zEgfm5kU9FjX3qiK(Oc82ijNzHpBx|DfmYv@c_GAmw5L&LbjNvh;UM7tWGDfcm|rOPC#V(@ znM4xi5^5gN${W*=IEZl*IC_>28?G$atd^9gKI)K4fqh^Vxv?O<_`-H52HB<)~06k#|&p>Lp> zX*hR&u^9MyyxW4lZPw4)pTO=ln5Qxj=}_lv?>-qy96&q=$_3$s%ijl#*i7caBeNfi zR=$F%h}c?zJCf*=fQ}jN;7ro!%)^L>@CHgp2-Bb1!LD$75#^ZEVXsIn8Y#y9BQ8qx zw>aFObFmBS;Su9a-s2i#);^*JAUFy1?+0uh=mFCN1ZR+TeFD+`aJQ*PzL}ZB} zZSOX~WVw_QdeUW1PHFrG1i#XlJBM%!@x*5Cb}PX!pgDC*pM*70SZo6&@1zWryc0Os zVSk$zsDCEUHe2tn8!3Ds@h&I}My?DFHf! zIvp(ZX8b6tD2ar2`#!gP!yXF)g~H+{gm*!A{Q;pPy~A>X zb~Q8MNON8{xBw_@mQJhZSL3KvtU6iJ!Xe>2+O=dZRSPati&@=pInW=6;qBFGOlB+3 zZt+jSer0@jb(8gJ`MsE8hXXuo7cxuNfDwm151N%|YIb){juhQopV(uOS`3190vTVGjb>t*gIDjf z&gXz15Lbv)o%>$BiZbI_>wi`{M!!KlUo2!Y*8#*mG;SO!WImMUVV<{~ zOLjL}uQ~5&uFHK_0Z>VgS3`~i*z7ZB?PlbH_>}fQ$qRabe}`xUgvby0ntk39KVI#) zn#IzEjfc_H^UNR&w}_=MuZn)f4z`MZb(Dt|`mn{)6^CBgq#K_ilo1R?8F07si zL4mDL?f^y*Z0KHRsWKT95%qHwFDvC5z9ujFDHI?motb)T{**yHbEG#YZSN`l_OZAV6*t#xXe9mosX3Rsg zlpAQRSNl7h=Ao6TYyCy9Wo$mf1*7A?PtGwNOqN$6Gr0>=Xtd|)rGov!wRJQizHDrkA3#$=p(%&Z$kJywGkI4N6?A}wI6d3a_V5M)) zrqMVPgJ4+C*Ec}bqV{zjVXS94#{1lT5uXk}1YpTv5r}9erVQWG)l~2wz)}4Oz?6jP z(#;Rh!bqx6SkJiCZZGX#`sbYwqKeSMkzD3Ws)hBeBGAG<9UF=&c(mZ242j%EItnv24oNZtC;_5Zd~&pj0d%8Mz@hc`ON{i zbZmku$_6bA@VLJOU4@}jd&t8%-PZIA?zqTF?KNP-r=R+XG!MhCwfVkZm={)vn5|N8 zL^M!uA;OH-Av6^u{fl0Jd2A(%NU?;vJ_4>HN{MdX-E||%)L1bmT%IWnK=4!dJVljg zBgc^5I)UY3*eIkrmJQGztO9)Z%i;92ygEdQQkOcs=<3Mbk+{%hr*|_D-Zo$ps)u!Q zm=aZiq&f+w}2g}p*FaolWwBu#SM49iVOw&cJshU2n)WfF#Mp+mW$g1 z6av7<)DFL$mQgjooq;}F1bYH+RLGtSp&o~=^@_g~=mt*r6FNcoZMq{`4~1Y@@ZoU7 z^*HRDOcV30C$f2g4>=^2f(=Df#v|GjtWu@^Nx#qW7k#mbg}^2>$o$?`3!p6mylroQ zZJqdH6b zZQ9m`>V-U;5X%jjgSuH)Cg^eG!6KC&&U0Zri{*=dd^68H{~qai1gUqJ(6ehSRn5pf z2#K5GU>EqS$u{?u0;y1xLb2T#;|)$Bkm>w61Ra91_LAojt6f<{-?BN{9(th_8oWKW zpqf)!g+y;PI@x2paD6cz_bdE6hJ`pb_7VtK3|#E)UMML_q9S&bD+qd{GXN!(lw3u= z+_(-;1Z$frtOKh$Q?ja^-NzQas+1^BBcp8-K5fXTxC!crU}nea6Q{Z*cOv)B^GbC3 z1Pil)!6E?-m@~k~ig73nD$stJG?J&(pd6NDIX)T?cJ|QD)G{!xP!Xx64Xd@}Zo|lM zi-&9eCSh!b{)@ACRnJJDX<=*>kAB8Et0zhxL%K7v-pBGu22wdQ49B)1#pub8($~$7ft<(C~@W ztETJ&rA84e{Z&Ud(qe*A6PCrkR;tJ`I{gt1ef{96&3M%?8~%4td8Dg(clU~d#&*;0 zjOGAF#%7>G0#K5VJcPVd*{sEETu|nR@gHpJ#=fZ=n_X5^ERtjljc)q%h9!~Kvw}>Qkw#cjSWVr51eFk0gkkWH>aj_?Ji|<(oYIS;jYb85 z!Xa+$%ADp>z?99cbMNYpHm%vnBq#1fQGsCn{e?DViAlX(&7p5pK|#=Q+7f7?gE`_i z`!?wVB#&6*YFw{9Tx^J6dx@v<8^`Q0!{N*Daf_!MgWQ;@V!xxre)s;M695l|0Y`-@ z7u!@~;RRky?q?^`lm3)%L<1~$5ets5O0z5h1C+`r<>Dyi26Kf$VZqU%s*#kC_;y>P z20-6xqF3n6QK`W(08S?c0F4SIN*5T-`A?Y|a+R6b+q>;G3WVL7Yt|hT; zx$o3yY~-m*M3h8vN;V%mxzQ)pZN;E{vEK=DL7J>vWh&(s6szFTb>q{asU5(oeeRS| z*vRQ!%w{48qjGB$4_-ww%Mr^(As2-XKu8mTWfWC~!e4_DqNQelh6XXxfk21;JfX=Cbry39~a)xY$H_ zyKQ>(9paug7#p#a^zB^;$tmipF4B2YO>mXDcH%vK6 zf_g;UT>lVBarpWR0g9bogGDL@(05eH0;M_}wkXU^FH(3~RFx78+L9A&D-_!M{0CDZ z?9MXN#vpmgr5#XKBs>mgM<)F32f!PLw7WCeaOoe6%K2-|gJTo>36OMK^ z95eA2p)myWP*_1nxZn>Tm{R`ig!OLuEM9uJQJ8q{TJ7YJ*20APQ-P~kabhD6S|nHbP5R(cBS@FZfY2*vz( zD_Rr>;Z00I3N41iiId~h#BZb~@#bG04ij+b?5@6W&PjSg6E8X`` z;V!U$Shyg5L;2^ueIt*68D35>FsEu5FuZ@>+t;*o{w!&3Zf4^A=M{b*{giyEx|62| ztj5Cu#jIp7(vdNrNpy%ogRz~9)Z2TZ^72{zw5s^Sk95tTTl^x~e(1w7(!)U~z^}9- z?_*oporaJ@?_Ygi-90*=d|KBkxsL8O-o0_%@7c8i7X_;3vp0ON&J1?|)ElcOw-Glx z+aC1>oo{YjY)hK6Y*|(sp{p%eof&z?&*lk@M z6+}(xYkM=V0F?9;w{*p94U{oAL++I!w@D)&p69NGlf6%^E0lwK5jSTMYcHj(DM*Ia z%n>11Z!R!_GM9H&K9)PT(OlJIE{>No=1+Bt)V_AY)Ln}}53d(4%PW^!LmxfC>RaC; z+lLf$ps(*+lfJK;)y~S8PeIoMQ>*_O(APuAu)Xx#t$Tj)8}FO(m{Y<~c2IgqbIPu# zZ%c>U%C3`RU;53d<&EbF_tJcPg5tgu9Wl>UjiF&k)^bkB%D}=;-zucb)z_Vi56n|T z{MB|2Je#<24Pj%YQ=rEWqFY%my;5527GQ`x4|LKPT>FO`OGBw^TqdVVNJhIK+uk;cei+8=zPsB$o@aFQ&zg}_I)>gg2=!#N4S3UAVS=m*AE-pMi-!|vtXx_SbV$n87 z=EcTGC_5!wh{NXlP_trz3|l@l_tKVevt~G=-o>1?vB5t%QTkAI{qxHB<-yyr_4Rgx zxb7~M_nMXU;T2f>a@%*j+&1}Q12GUok~Re?r^L1ZiMW1s|AM=he7zI!Q;Np`?*F@ zp}k93OA-0?X~?jte1c1Rbz?)ZxHynFnYo-;BPM3-=ILqcq4#Fy(Ba`NEBVOxEIDRj z=MA5D@2zwoWMakB*E>fRR`84{UzjMl`d40tUY$Wf-?P(W`TjL^TV$;`KA`-Fkq`w_ zju`p%t$uB*HGfo2kP+usl@E7CBNt`E9t%DWV2ILch}_CTVm4ZFcJgaUCcHAg>VWHQ zdI-5ny={wXR`!}m^qB=W+|JVyQqDclHITS7d#yVd)O4^3YQhCIvESYZdub88c0O!L zzvJwxx}6$ZzOj|A&B(eoDauBOZ|cTC-uNa;s}H z<^X3S$y}`%v1X+Sh%)8@%4@H$Z8Vn;>3HSGzf=zPGEYT>?9S|gt_pTMxjYORl*MIp zyAekdlmNToJ$H-e_KRQidqapl7#=Ahd(3_o&)FFQa)0KwFxVqi8A7b#A--t|RjnIL z3J&zdd8hP7s{)2pYZH(WrurfiqwEF3s*NcKy|bv_)8lWs$A{ISHLr)R(qS<*8Q$-0 zYuPnTaZjb66gOL(s+%!z?=!pJ6G_=E8%Ek!GMcpVX6pu>nWLbDiH|~>&CO|bCmz-@ z7=@erV6#ZqDAZF>XTmq%x16!HH{W8f#UrB`v%NhvEiELNhKPN; zcjz#zavS3pN??Nanm8$d2vn>oM9?B%)P=4-xcNFa*6uYEuqgi+mM=rvl9meBxdkVm`FV&r`Nv z7c4}ym(i~eZwtHoQQtf?yu58SEtu zzl(DF_n?18{~qK%VGB-BRPr08;WzvrD1RUDca;BK1ukbZwEfq-We6U*X*+NN7|Uib zh80SB<{v~M{;*b#y02&4l8fN|1ux@}I;wFn^<8Pcb2%dL8e&hUoz~4OANHsvu z>XNO4hM|Lo{kDc|?N~1Jh8T}NzOS-E|^;|8J&<+Olp7muEW^5k2fgCzw#MGFY zqBBa~M!Ghte{dYSlkw9HAYk<>kC`f;*eWa$2E2>3-Y|OGe?AS_-OU{By~Bvaml1X! z1FpOBxIUipwR*qpTmLw;zU8bO+Tlhlb{j*%dA)akfID&Y`t`D!*@-2P*|z@li>V5> zsm(MztBUB|cB`<<&Jhw(9#+7 z)_?j<&bTF}aGu)V?Ac}mB_3wZrc(G@SH(`rM^_grH&T37zTGPhG*|u_`2o;%0)2m7 zNh6x{T}g{JIgRl+y&(SaviZzVB^+K13q`!le~fi@h7%&c?a8x-JHz{aKhjhvI}=mE zR46Oc)az(g9Kp!7tmpVMR6RM=-t(gc*sx+YtW$vZB5ADGg(+^3840t0gCVkIHueuY z&I0|YSl1^g%VI!mk$>lKLqM`=&tImn&)Vj1N8`^%g=I zPBqQ~+(O|q1jp_KGZ1stFlE(fCBO}TJ~rZ#Rcq^V5+cn&_X@QBozB3;Gt|%y(Z_1I zZJ!@ens9I5K3+*c_rqnWk-O)i^(1tXyW0o_%msfD-I9>{jQd^8LkDTMREkFN33)f{ zL23RQuC?TgI7HQeI2$sSf2wM9=~(e?$UD{X2c`I^GK6+&IcBp zOHN{n{ZHHs$4%pfWsY8ij(|$eOzTNIQx`Z@RCWbHa{|Y49>GDmCp1yfpq3jr zhY_@G2+}z?W#_TzYE@R)8~2Za!mgiN=HKI+Z(OOaD zC}`VB&gx8b!kskfx|&>Y^YCH-ZX&zC?}f)anyvNF707mvy0Ftj9_(|d6I^%Jdz4UE zn|J@!(oP0+jBCbWSU=84$>u3U+#8;5GBN-+5UM@U7~K}AO#L`tkw6HI=0(`~Gs>K7 z&rze#%G<6DC|Y#&6&=u^Bx8It?tXT(n3NhZp?~q&klhH}jfc*^cqgfM=Axm}fp<|Y zAla_aL@p5Ye_-{CE-=E!yNq+uRqv%z?P*O(cMX5pk#2gL($5`|P#2{cK3Ig;5WM$^*K2xW9PS-qpC+#P%Db1N}u{B;-`))y;fx91OJmHHSA4kOmcQE5SKaW&oHC9x;gA99e#Gv8GE??3NBB1nVe94q$Xap%j7~Rl!MgP zVSCZEY({BwoIfd^GF{SX%ahi$Y|+1dch_L-yp_$wQu)i?E#_b>Hg!7{o^aaLVrk=( zzR?Co&8c$fAyIY4k5VE|yO5RpvUQ!j~moOP>jT)$QyQ z^z00x2i>c=3R>T@xslQ?o!A)N^Er?Cd+Rq1G)P|8(?hhzj;0AW)A@%G_l5S(iletD zynXW?rBbe<@8AJJd$+2D0m=#nSJ=c~ z+ub;L9p9aP_@A=(*nb&s5&CYcnyiTwy5{KeP`qzD)^V#cO6cB|3TP11_b5M)b|;>c zb654zZGX&`R^y(gd~Eql2w5-Ibm>V^i~Ly+>|5=VCXBO(8k@+swjdr5r);SN&ke*K z1tNq;9p|dM(Tm%C+V_XF7s?2+!Djfl!UQWiA(V}qz5ZRH$56J8KHtmeTjjh#Zzm<2 z=WhPZtVyMTi_<%=cA_V*cKrviMBd3~l%b3jHo>EJ7P7`L5b)(C@&YxPnX>&JX&7=( z4Oj-(aFLeK%noQTnW2 zcGTZFF$g~!<2;*HEb*o7!b7_|4y&?jwz_l>%k+8N(Al%IA?B=n0z#rm^Vh9{HvWK} z+@Y6BrT@3;Ox56vb9L8mSMv`~Ol!8e=w}97`FH)6JISt=?}=xv13uDl*BM(qjOOC2 zn?Ks=o|M#lm})Ju<~snG9@1=PxiC^Ab`GW!9a@~plS0SGo~lzmQ&>fGm(r4K%*wu9 z*$f%2r%a`5K8K#%rwKRLKT1#In=C)eq?VK-OI%KPab!}}S8PjyiC90sx`c)tEYLz_ zUhX^Vx?`Wk0qRGlaZNX}y!SH6MFgpI)og-R4lAsVvPzVzlb85#e;gu&VDkz~s}80$9#ej7Ccz0l|&0 zT@Ms+r5UZE}IDG8~yc>gdVgl^&%@5>JvZ6)LUUMfT#9mwGYHuC8uP+e5 z9}^;t$tMhO@J1RvU95S#l(5)D+?5E!I>_vH?s4!7=ptny2Om8ma~m$ftz=ez?e^^9 ztwo%L>`K}aHlk+iJ!nmkL+YdZa(T1E>~WDjs{z?}40#Rx+8o+D2$m)=`w5g`NNKxm zE*2IX=e=d)>Zgp79&}TRpQ9dI4im%mu1EVSR=fA@ap}^X$d1g%=Qu)Qq@y)$&kGvT zPA8+$YOSDKE_uJ8u4@NLKRqYoSsogCtJ|MSf>YXi9_Si4; z-MGVBt^y`Mp;qz$9~+tDeZR~B+P!6++*y}{-Tq!;NZNLbe@RVobofi^uacE6zNkSN z4x?LZ=C2r6(Zz$pJ6ll@8=1CT3xE#pE5|(r@JD+`H>H>3E%$y~!C(LX>;N2*ce!6T zoH^ULv5>+2z4qbTxYyv6vt1p?R&tSL3%FMl3Vg2=1ahAB$CxT)$`Xy=?rv(LamRGY-H-+o$*9<)uq){0!LyCI1(yX(~6awJrkw8S(?908myM1 zWPaPXruOH?whJ_N^|$9ZlyacS{95AdNG94F^c_}yZ*%{B>(S{U*OKkU6}qz#(3W}! z_M^dyCAoDbhaWLEvo&_*^s2I&(sM;*lRkgB8O1(?)LznrcEtai!YcI_cMup|5YkJ} z8`CO4ZK1p-q5*@K_WpR$Fm(=Td4(A@5u4EFL!K>`+6q^8SaP#i{Zu_fI~`M&IjWts+uR4FCK|wIIH3nf5 z@ff63-*vZI`?T5!35O5*$Kx_cREmH8S+#nJ)QqPMM*G}uwHdRGfJ^)Ddv*%uj*CUH zA8zh83Z6E=y;G{g1G+W?x`~Q1HRQYQgS6A-*q_~PG(2t6z(cu#Pnc+hr;CUg1J)qG(VeVmM)>l0#Hoto__9f9mn zE#pw_*Xm7X0Ho+{a|^rgRut&Kvn%jW0Pip@>wxIeH_JQQ(h6nRgn&TnaQSn6$s{@T z3s3D;mKl0tAFmkSd&m(*cj zu61H_Sd{sZRM^j1ml}~5<0q~RpFWcG$6gNy?Q?kvs)#g)Nv$@F&QyF(^4DMsv?DR4 zX!9Qv)pYYY@9p*qCLoWhC6k9^PQ@#3R&T~upD%SqP98`xVo!-ku7U=n??j$|8q?|u zGk8s{7G(8(?o=xg$uS14BLubQHxdZ*LOL5hJr{% zS}dJl^p1P7`}J^1%c4T}kf~}UUTM1u040EVX9O5wC=DWn+#{b7yY`JV7panhfQYfP z3}GzHBJR_4tWK;{PZM1NSU_MFMP2X?Sv35*ru#sI?S;nNLSg9SBFx1gFeoKZ$;R|U z5(+|+FwCA#I}l))h-e}*bbq6e)qO^Lh?O^EY@56 zD`XZF3Yl<$aDVU2jtqms5I_*O=ib$kt8nd|J48{n8y%7|-xZw?XAku1Q ziYuKsh@mA^NS^1Jlrj%cZAGd5mE~7a2;n@ej0Kv|dawh#5Eu~W7m*r%@tvCxn1<(1 zq7WlNFux%1!wUPh`h5c3o!77p9QoG2-u=h3bMF#sjrm~?|H90o!P#?JwIgvb#-{IP~I8x9o&C&Qn#EQfE7;XAcyZ^i`hZ1|r; zv!nw7(*8iQLP&P)AqF8R3PBYDvv;%jOLq1U`xW8_mubFZ>J`h%!1zlf2Qwxa3O7lc zyCdFz^N|&UFs5>4($#^Kd~Zf14TzC9>Ot}Uq>97d7K|H(;y)aVz-RbVXTBT-)Gr?w z$N0>OKvJKl?azSu{GSI5KuGp`^w#O&@fKM3P1|?{W(7R@E?+xNuE_l9A)p(Q5l{&7 zo_q}B-s$(Odtb>_ecswqAf5V+;=-UN@Dt$>Co&Vm(I<2hUmk@ghz3B8fkfq8rL223DmwFVbTx7Gv~hHINl%0Z%fXc0?OYr9^AZ0v zNGHd~L}O7;8jZSmjasA~Yb6U`z)x0VY)@@}B6%CtJ8Bq>!t9q{rPDbT6OAs;9y?_Y2jSs2~8nBE8)-R>AA?l2;dpoG_dr1AE-^F-D6 z{V^DmwvziMjjZ3xs{bKC1ihbNtOhuQqHI2;PfuLCO-7Kl{Vn@g)a9ccdHuZmz`ge{ zsTe+josN}~euRx@a9? zJ8Xqnh!W4hR7cA^!@x2s-(i6SMpE;bMs8crtputzckujgVJq7`D?fo(FrD^wgVgRr z<_eJM0@348*L#&5QtdWQtuLOUxkxy}rMkV6N@h<2Z#tvFc-~M*t*PR~d1^CEEwR2Y zxqk0!lBIXNl~KBtPd;l%4<;Snv7FW5xx>JJqI9efkL*%pBr&+J6<$A2pG&yEjk1Y~ z>VFiUp>+8qcD>)23c`GPgyO8&$SdOdM(LtL{7{aQ^i-rcoU`%uEdguy0f;wro|=mm z&CJHgz&_2)F*4gK8b9FeChz_RbS*8jJ3aIIdHvUOb*+cpK#P&DvRP#Jd%}FTnZA$& zsDb<2+N34iZ$Mywn`z)JJvU9cg28x}+BYQ3K(<3ZwTp2~(3GbCi=H#2LwNoEf9i4Y z#g!v(K|DXF&^dXyGrK92-b#Jg+dY8ieHv^)q*c_k{;Kl*%Z|uEAjJbo`;C{Fptc+h z=m0!Og?6bL8)&?dzw#>3LsAe>i4R5dF&yIT zE<==I<_{p?=^>U-7&w#}PCYu3+9X&7+K+5u<|xx784oVO*d~6TDu!U^ru5T9IRY)s zk8f8%rQJja=J@APrl(L-Nivqe5lrz4aFq;`EJrjA*7B=r5#|`YaK+jGU_7@EM6&h~ zVKxL?nlsCjW{7Y!x;&kO6!DSno)B7vnIDD8p-i8FLa`yvA<(eMa_rM9UMZzehgt$f z6#RwpFA-QJ38oNR#w=b98CL6qa zT1OZ62k*0=2^(!Q(&rlaRC=b(b@#@tpYy!+URu>Y3Z3_FZrR_QDs zYxd1!IZ=So`8&na;3)&ai^ufA{xhegh}<$n^C5gjF(Vb{`jC2V!q6%UN4%{-Os};H zWi969=pW?uB59uI%51NzQ zc0?TEu`?tc;oW!?zd5Rgse1PB*%DJ=Q?#Py`5)1-5nTDS*iwkNfd)yQ*q?+rVX%Vh zx1i}q#})xRD&gCYXqhE2HI=pof=iUQL@}#38un0>^uIrfc!+r5gW}QDk}d3BSxicz zC1DF&2Hi?J4WO*84c$sz=6B%{%Vghbq#8}C>PO(&=5+lRv(4B@MH6Yf;kblI zt&PQ<1Ac~D>GK_o&H1jMw;YI5C`+@#6tA7qsv}*Zdr&*Q?13bxOk%j=yicVgnH|Z) zu%nnuH++d`BoK2Bm`JcLA_x{944+l;mt<(q$4qKCM~hyK6DjhSE`-#2!*Odg!%JRl zN;@kKM9L4j>8Rpd^X6wa7PG10-1rY_mA}@%P>1o7i_ZQ+tq+OspU)7u&&IOR!GQ|nBtWs2soE{m z*iq7;_tOHe4=GX!;8|fULJDMPmrREaq^4_9T2(fq1L@Omg?M44z}ry3J!NK$R*XfO$& z7*rj)<*;PY`T&hDpQ}*u+5RYM0;wb}v~STWR2hR)?RK3dU1sU&tuJ}hEFI3k3IR1n zgbva{v*Do|;!VQbBUu)%A}t3{-;B57Hvcpo=afAcsoE8{^!SdKPo}RiJ5dwKX)Fc> z3?7YT_+YX)jb)=I%VJ!Sio`dB7b0t@ury&G$vKS-K7@w^(@e4KxX9&3W0NTgG)+uJ zQ$6b(N2OUkMX!*CVF(WploG*dd`MlLm;4#qW+()~7;y-XvF~iOER%7$3JM| z*78)k7^_*xx#7}c8Eul zK3ycNxl4Gznuk<76($HG{W{1%nD@;}wAsjMoqY$VtrM=v$dlrd)<(x@V)4R-WhD5M z>@}%j@Up70QHvo0Gq5-@N-vfBxV{1sk)&prh_c=sbZKKKAyW!vqZofGJQ;M0eG;T6 z>NG@g<$dyU)#0-UQ;!O1<#+@&Rxexy!diENC^=_hzNN@Kwa*BcE-J}AY6ufa*2?wN z5}2?Ia4Hhok$Dl%l`?*G=GS79n3zX6Wd-qStWg&G=`)}DZSx}j%wKdGD`MlS5)qy> zc@b-q(q+aw-;Wa$rsV7&$Y{hclc&a&Bq#&X)Rf0_Fw`mPXrwXC7z60eX3P*P()y8c z)z#8W@**TvhCOgX8hL*~H2Tv4X9Bkht?cMeikP$w^?`Ke%!RZ(*ncv$-V1f+02N3* zwJDk8B2`uzRaNQXf1(z_{u7l1DTI=Ev5qPYQSDzA=+yx&h=<4eW5IN1MB)?4{c7Y+ znI~$Jr>637)?#M_9hBLYx>`N;ubP4miMg+slz;Kvhx~)Q*%@)`f}l1hUBQDNTp0Ei z0&NqpCXC4`n82rA^<6x*Gy)_2L>RL%b?(3+6DrVYoa{ssNEuiQo{}+h2U1Qfkoqsm zWMKcK%#$`_ZmU0>VaTN<5gkjRh{-Exk^eiwY@Ux@JjU3Bmr05^D+7zV>D6wsPV;@4 zvW(7mU!_Z}$wLHfVo3nU0^0dfn$g-hO8EeC?ts|B0kQP#KqUGT_iFH7(Yms(usxPN zg|bFpdO@TS)-0a%#)d)Bbz3kt3I_LxP0jlrtzYT4>nY@q8)r~WLb)+F4a7-Vuq*V7 z+++;BIS^11d}1Lv6*~G8w%7Dif{7_t6l;>jBcKn?ucQh!^7#%mXEXmtvj$pt z4(3!r?NvX^9#cVZ6g$57x9`$xR8iS!Z}m_?_%Phh0(3CkqQd9(KM{AKcH(O>2*nE% zxToxr?JvfKWa+jX6P-MsLUMmrf;R>$UqlBD-bEmqjc7^p#5qpfr6Eaz*P1Fj!9|IX zEmaGjtEAgO{z#QErJwE6+tM)tFR-$HLJ%G}71z)~r_6Fk3sxT6G>CH~+0_f#avUW< zLy7}~E&aLUG(dvz`^gUyE#{L)zYHaTJsT7A?)BX_FuVGvzhcIZZ{|-OAi+YT0X*i% zfC~*u+WQSKlejT@y4emjJmo)1L*Rf)Db#>U0ZM}4agKcPj9b#M78r`MTRO%M*c1fP zJgNEI8?2#0;6*@6yzcW1v84Rs{RiM!(maog=OoFFZR2fSL4z~DV0+GOd@#JocOBKV zoM`B)ga`bCRL}Mmp?XqfAd_{~y1-0OQXR#0QsW)Pf277aif5!II1VAg$ns=Ck?gt_ zL`24;#h?$f^5YDhG5>LjNz9?m1V~@nKWM?_TD*`YW;KT`5m}35cU4s?Qf*+DYX24u zNoZRW+8n-c6(2UV@HSmc`w0OJi6ZOPl=e>{cP(4Siq-z&p+H|b(F(p9^0S`vGLrMC=B@Nf+0`Kh!@3a7ww`nty2)v4CXdWW&wAgIW zh6=rzxNH3(H`rStJ!hMynV!e6Od+Il;pQQAdZ_|~RdZyV!M0vFfdkV_2ouW1$eOi6Ulos6F{4(wOkZT19-|m26z-_UY!6~gYq^Y{y^;sBK zC3=1WnQiQo@9{XqCqL@Id*aeYyF4UhHT)RsZgYgvwIAlGqJF#gF(+~4vyMJe_sH0<*TSJApBxe{leDjW$W3wjbVHwXS1JE;asqsLb0gSeD{!^ zf2HIMV8lbqu|%wb(*%EknHdowxb55w69ica6HH_6UED{G5q{lO8N$7R9wJ8Z&Ep98 z9SC|8N`tf+_eM%sSthWDykik2)FfYX6gbys^0JL26k9PL#$ti$+n3dB@ty45?{^>~ zkHjnJ4fFzQ#BX4f_l?yXTLF{QpQi1bVM4$_LVpJm2v7Nb18u4&3Vd%U{}6Epp6_)b z&6MV69_GcTdD1W;zg*IHLx}baC=nK8i(pD=kjUTQd&p^xU#7MHaH|6?4HF`HH{_E< z^#v)OB^HGrbR1#Q8*=Uh{$GRY%VOeFK1wX$|67cU$M4T4|Gay)__r8NXrkqSUfHJ+ z(dggczj61F851jkw?Skhd_7(TDrCtAvVinmmUDRjipRBs@y84KQJOvEJd7Wt1VjBS z1dc$@{)ZHD|KEc!e>*1pnqPSXO`S3Pl;nOK%=e)V@wa0*A~juxT)B-xOoTUgWpvRn zE?76vQ`%lf41b8N`lmX9?H)&4)<67}e;{Xz<$1{E>45jqeB?jXmTN6QCR=xHlA}qs9b9 zcP)GFJ>)*lJ!JDKW*}hOs?U>E^Lk?-(&<{~pw%JIpnDweCLoJcG3CHgGsYDctJBXt zE7L4+&^K7S#o)bu2C>9Exs5X6JD)*wIs)eIDVPgdA z4AIMVle^x0oKDKM+1Pz8p@f}fBQhK)CXoO4s}sfR_|ksfQpAqCm^S zg=r`{fIZ8cXZqV}__xs;f>u)rzl9CvQjfFtp7WbPP=L$V>?0sd=^vQVzhOQDN}p6F z3IBXfH|xj>1)`AFWvhK{HwXxg3veO+V$6ISiqtt!Klvkkm*eZI714|8X!hOz8SE3F zl=pmYz$#?HHh5u5RSElFbk@Q*R|#WQe|mdVW#a%`LbH#QFBC@EeOUUeu4)!Gps;p0 zzFLv&a;&q*MF3o6^6&6V)APo7|42dfU6@jaMEVajs+Pv_9Rf`1)X7*9SSr#{dUBnE)Gwqm>>6YOko7x8?hEUqh%zxv05e;od z50-W0!#f>+J_CKB1%-~_n9+I8(drM$GyNG)nrHeEp{Q)ZTMJsKn^2w-o_5_r(7^R; zkL;$&_mXX{?{D$|PS+$ERtIND zoCWF)he4)x?vsVX)Y>A=6Ltt(+}Rbe407(YNYzGS7Es%o+q*N+xP|HLR`QpGa9ylT zgniSC(Zd;{RV|piUllm zl@{)uu%f*F&R~b)2oC0S)cf`9Usr!3vfGe~@U~}hsq@kzSQ&Nm65A{DT7kPL0S-u3 zCLZUZgk9;W=V;O(E+E7iLd*i4(MB3?qTW1c&g1j4((<#C7I7F<0W`9RqP(>+f zlnYqKIf8b3R;Nfl- z#Fp_h%Ewdenc&j8!?hLdMYo-+MV1o!b%$^}mLovZJ`R*kg`&JE2d8Kwq zmQvD6kh4nLEYD$)k`B2P-s{FKQ}P_S!6n}Io=x%JWI5AclDDl@>`Su9R*ns?_)J9%%S*yoN-2j&d08E$#1|(L7b2wn6hARaUSrbprN*-r539G@`BfX;27Q^o}iEg z7apWR=09mIQ?6>VDxTcQ=ZbJ6ToTXkvX=RY{o9JSea=^H_Yi`^9+?77Z;;C#^HZg} z<@gp6mK`TL4+$!j)_|=t3iaR_^3z@dN&_VpWm^+{Po_URgChpf)N(v zXe)67Qm~jH7%xrKc~MmVetnh{k>^DDa|<&eDZWKzfhA1xChj9XgR<1ExuD@7sXz&1 z%xYIOZb1<13X~V}uh)_p#(^3*Z}eVJPJ;ocp&boZ+`=ksAj^(#k@>jQXWkeF-r}-h zP-mSsl!K<&W>jH-ge03bc0suCcN+9@t6f~@gL^6${4v_G@&x5LRl$o}x6^Vk~|kb6$+3l%!Nv zQUu@@^sw)!k{}b>oUbJUkTTLs5chkMo=#ZkQ0vromW{W-K4@|z9kU|7%L&MeXva1A z%3=~jaW`r47paOnWWTI{EIM3B-X#%0wwmR^mXa+==`KTraq8cOtRej2lMF=o%aD>3 za3CL2$_?UtcOa)xuRFa^3Kbvw>-D=V8_&xL_MW_2sQkPzTH zC1vfG_5Q8Xvx>AhRBo}o44x^YH!d!+fhyx_<2yA1*`@PaSL)Q<90+?#KL0B*Ga+!U zwT+MuTVzlXNY8!vY^gJ^f0aWQrLL`*P2(%vhlMc7Y2&DP3h3a&E&AZGfR*r3*%Vh^ z2QQx$|6T+*El!fj?!$-24&Z(a=9Z8Y(fEW^w!4k3-9d+3fl7)t7QSHP84D)e- zrW6Ulr@keIO90w+7_G%*|VOdF2>r9eK0n6Zxst7EJ zjgRRPEptF5QxxdIgc%DhmtiQZ@|$=VEz{3?`3#Xo(gF}z+HEKd4a^KGeB*(a3~bkf zbrhKd{~=VwpXILl*hxO62lCB4-tIp6@fVrYE{$=jyW#&(ha2!mofyjhR%eRfO#A)g2xbEgwN^M__I9O7` zB3Nh*1^N7NzjeG{?hA4nGFqpDdZJJr9(uPmYZNDj)3)}7x5vRj1lW}G*8eW&MhD!x zRF4!NL}=+KNnRSEL5i?lY>YkCEt6g9Me#B=b2!^&%h0XZ=!pK>XT0Zi(oHO8ut6H& zLZ!yTIU)&OQ!(q}emCeQZF>NG`H5M-KXraNxD)04OGUF5>$vC`At{9tClGrmT`?{~ z(D5~}aAg%6r<1e(?1l6j#sIxYhP;Ye)C+&wz#nTnG5 zVu4WP7!oH_nLmpMBr^Vd0}UPqA2N#96G;vVBKvY7nu;L(kTO~U(nf{-MLc3d_Hgri zL0<4A<6Kcwo{NO+eM{Vc^>~*)a;~_y z8)2k|7Afhi7+5~6Ad`BBvfc#DHZW_2ncmoZMYQ!t07CzPh!2)yPXHy3mI0`Bf@fLLzQo^_k=gF2a_@JG2> zwT^3Txb^A2`T)-rLwOx?l2?0qr<~?xNuVAxuuQ>v-^x&o>_Rw#e zt1#%HReZ5=@88I{+d^MlE%?4x1!F2#n0eR39*aqG>*DjVM;c)ER8C9Phx0L5*Od)t zAggp3D|hnWH;hfj+?VKcU7FRW4tHP7PcnIF@0o=s+Bv;))?8R*iTS$THk-;{KaD9!4PIzDJPxmKjWV5e z2gu~~dWo(X%xdsF&nHXy{dPUlmLBeVxVHtYQ~2J2Gd~|67BEIC2S&>8%9$2F0#i$@ z5iM7b(8ADCNups9G)S4>aIGR&JZpU_bNWtr5SxC_y_PH6|J8!(MCVWy1lWSA1^D-; zDd=AGQ8EX3Z z7rQnWPUk%p=_zUXmM`8k(~eC3pZ)f1P#SxA7mKFEKSMW7MrdI8VWP1zF5r?b*NgNk zAfJ&$!=i`CjLX>?WR6jQk4hfLjmje+T-73&!$&nfqqYwc%H9MNIFXgeHK{mtF)WXrB;jgz1F*VJI616>=DCa*e3UGsC)aO+9iIH85VG6)(A}I65uuAo zv25Ot*X?d0|G6Rcg*VT|1lXAF1r7uR?ca`>1DmF*85!ID)k<+zSu?ej0+`E6raF6(4E@9p9|FX^W!Km%ZKUB#rq zNqIkJo{T^4-w1VDzcMsXiPO=w{p`bYWEcQvE%H9#Cw}gp3^AdNenOE7K;KSBJ=|zv z)>$y8Y12q)&#t6`_x7rC+i?Ai83j97L1jD;jRQAc$Cc`Qz{Vg%bz?@N6~#$78+Mi+ z3DVZ!g6|O)2_uFVr%5J_v&+}LolL~mvZ=j{|{d)!%uX)M4&j=Km zY_VDtD|Uo%p`zo#dftIa=lNPcj-153Cl{S1sX0eRHAR-CGKxt>;Eimip-gHe!%0L; zR7M%-YE}Pty4lv39S{eyW=19k03N)S|Y*$S#!O|84p5$@i);-2*V z`P@MT?!?Rw)UUxxcOHIRz_@vKBi7cG>v0RT4W5@oXnMl3=bCu9vErvmXgKNIj`J{j zRdqB>et zx90!}#ynmB^YB~vcemHn9;)+FPlX!Eif=dn)kHH%gsg1@*uS@v4g>`A->0OjrJ0=> z^Iu2SzdD@hC^)Qh;q?5{MCmwKd|r2p=#aQry<9FqL~9j`Z4%eDrBNn1rRYJtbn5dn z+N>LdyJ#7#s}_d8n19Q#Cu~7FF~Ff+i=a_pDO5$MWVJ%sLDLMzPx^ z7>LU|Q9NhG!2E;*dl&?39>H$qPq;m`pv2xn62 z9~!)`jk2s#GUV|X;tU1yvk!wp*-RoRvRX^0tL`{=>dy}klbKdl6&W0m*ZQ?9m+JGK z)Vs4S#S-*S7!N*`^D;7VV8a}c39ggT&YRMS$t5X@ja#R#c;{3ZIw2)FiVJky=lJUA z3ZKLlXzCO!3fJv2Eb(wN%mo!bZao|Ai>#(<)JoF*1*FOv3XO7w88ZcB`ju5-yJ7u z`K=>B7ubCx5Y{%1S?>Avw7;G@(_bmYtpDlxaA|+Emgr3nq8Ikf3GMyph56m*nfCYj z(^rQa?`Dv(#J+9c=ZjW@UOhh)nW6LA+_#&(wQ~o-kGoK6i8e&2P?-%7udqP=6Oaof zMLL5fO1uWjd~obN3fDnmmlH8arhtc_%Kj^PQhy0Qq>Dto#h&qU!PJf@AJb25cwJF-H! znD|%-B^OuZe6m;YD9#UCqfBLh6qrC?9=KCIDYQGy)Jf)QVoVO!1e2I-3+595M zL4~GTG1CrFl{Q$i3~c+pa6kQejahP;F*}+KQHd|5Q_BRS!3ZU+WEl4ZLms5RnKG^E zHWQkiL`?1C%S*-5`n-bU*5l?WOcSr%KA%7idm3#k1PJbVv8j@*mK10SRvg!Pro;rl z?}c^5#%nc*ZVsBP5JXv<55T!#DtCv-kHZuUeW@Td_sl%|x+W;k z#Fg(|=jNQ-jIQfCzLDsc;iSBEJqJI%jFHpHwZb_|frCiq0)P5m>mNx`THyrjI7ncU z!_-=BolFQt@|g6^gK0JmLxm)HdRw`S-{=g=?mJH2Fj7*GusQF4N%0Y5=q`pYFHIZ; z=NH_4Q{78R>T0K3TwJCumb|>RDpwB2QIw9A-B0s8_s| zXGPtJhIUZKq5%0MkTv5RrRkhSgxWDHGOC?g=TrQprLc^pJazV0Q$ckX&5wZqhqBFx zWo|6jy}-bh=B+X=2E)NTyXXT#DW3cQFK#XcrQp@J zIw>}fSvBbMP*ITzW1C?-ddV$JH;5$_TxS!MmCfo_OFD}>$-mSiPsUMpEjdJ6SR_4+ z>6+a*Oz1jY$xznavcXv>&|AQZ-OiNx_|hi9wcXzPO#RDe*wmS?kHAuVema!7?21Z* zVSk4M(D!bMyRJor9V&YD=iSaZPDoZZe7+?7!BpCiwSIMP$6ZM{CdEl@0;8)Bz=5dX zX=0oRk~8as*R%bV-nEdXmZSmFkVXp*BKmeMB=%B1!kbFHH)AVzpe}#0!)mC-Wwgr{ z)G|D^^jK8bS+%mf z+xF4hjkdgfSgxd+?~@R^<2k2J=Y*mw#Av6uH9KUf>MW~`9q%%3=&mp> zyJo6MjJ9j~VL6>S(l!ONAvIJwd5kFy1p-mFgfVkSi$S|$YSSE8Zi?p70;S1ykT)Gt z>b2Fy@bzo%xPI||zF{5z$8I_UtaB{STkYrH(ErTEa{TyKN`YT^P{8ccHy2k2 zJ1sj~W-C`SyT88ns-x=R23Rmae)&j@CybZyg<&kHpirac!_~+<|A0#9N+>e^*b3|2 zasTQ#dSs{Y4o1wu2WXX$adCw6x|9SE|GGO8zC#H<4;F#WszI?-wUE+wYjcMrRRqVT z8z0Bm*JH(6gwO~Avv4d&JgE+YeH(McX$nBE7!HWE)lBiCYUaR`Vm`8>>|OKKAjDBZ zeP*hG;xW3cX3W{746bd1%QSTkT3Y)rU4j#bOWi;{)IeQC|Iqb!ci8`^`>Qo<^h`Z4 zKSzPu=~g6dvaB$(pvl*IL<3tBbtJ8fn`sFvM(>c5-s&k(1;=IEBK-K}V&{uo*(O32 zJ6Bdxk?eQkc<;n@X0hsPpG?x?)I=}Iat2!Td{y|V-@4t@@+MqdgbcTxrPQH%oDqdV zJ&hz~GKg1;$t1_E;mX)zHnZb>{;8L=lUkKPlKjrdwg`s^cB|egqbrcG!^UrnnXai5 z&4efPA+4SxqW=hYReA>HT|+@#zPwXI=xyZ(vrJ zfzV-)yf9Imu;uf>IEn!B#K+2 z!}RH!lZ`HmsTOi+du~st!$E!g@ob^#KG*F?EV@l5v?LQJ9IC3%U2;BSu;f3nfV)ba zU)8ytGR%}k&t2wc+19R36k~9IHFTI1eY7WAyw}!($kh&ty zDeet_3v97^aWs@pK>xl=A^ZJbtF*Y;&~O`IO(qXiGPRG0Eu$<_NTrDW2l&YkZ>BlE?>*@+xzjoIjD zu)@j$c;&cxc+ZxT6d<`NWiCS$xjGg7w!hz}`+0E^z%tYNrU%lD)7M%+e20v&jDT~J zfpu76py&Pe`*FI67xU{TU|k4un@WmnBjz%^TSKn`{S`@bckXm~{>!j{gJA&@O0<-s z%?P9(ih8_CS81;FxqdTsn{=^X{cA^YH}_Y?$@)W6T83dc%ykjAmVyiRG@X{1S;qL^ z@IOdzou!r13$dwaGQTfSC`jXGdG@6%e&ddf%SJNfOo}Y0qBBiLxMf%pCD&14QjVgf z!0d;ARvs4gU$=g*1@6GLq`W&l$Q*-Hd0`k~ld3i5*|?xgUVF>7L!a>b{oO7mx0~7Tt#K|E&3WAg+(jqkW3 z=F3M9yn-YGKK?EeG^mok-Y@shH?GaMyFz@Q8Q2rE-|ap3ZQE<>@=PoYYjCj^`vll8 zYM>skMjug+R{E}{>O>G3SO&ZBR{IcKYz*^pp{xzX*r#}d*Qh`8w?5$iIb#)!En9R$ zf`9~(fPi2FXDndj?!Trf;K~blecBsY*)mx>nps?G*f^rAV+eM7anssOqtGy7Ko4}X z^%XIS(t~kX{U}M|Dq^g43Xw@vK+m8u`nr$;$c}#oc?cEo{;0=LbIo#6nhW4lkr0-G zMuEq`86mU2;S|6y0KeJTEP_=EiZ}RvvAOovlXbW0GQ;b2Y+o>1U@$m)i{=H(f&gyj zE^^=0Gil#k)9m1kgKYMD}00c*M1m=4zyx)++8^gu`g&pI+r z5z;W!V>m%aeP(O@tWrBb0KI*bdELhNaoO;*Su$Vhr7aAj;|RygW&)-c)P8*KE$ky4 zCoz(MXnph}{1c8r5d&5(eQHL9-3?E*piMDeD7t3H1mRd?d@Z`zcREgs8daDizNOzA zTXh##gfBJFV+)_?WQSF%*xqvDPC`sk7+%O1WJ!&N0KcOs1|ne zF0+(BWS4jj0#K@=hYzGY^@f{T+2dvchoj&jU_=N7H&KEn4Z*0B0w7rt$UM7tLP2yO z?%^zN*uM&c|A1QI#Q?TKjqo)4B9t9niBO}g$%DTTB#p(I=-qW32gjC*5huzL|8yY8 z7K>5X95;oVb}p@xTjTbH>Y(Q2RJ#0cIs?{%*6(W@CR?^!*6%kN zOvpbd?a^BUU;Ng`FZTqY(OWamj|2}MogEy1Qg&D3|BUtjTDyo}o8k#|-V6d7ILz{c zrC-Sw$0p6ROnQjj6xSKiEQIz1_tW)O!irqYF!JOz?$5IwoAM4|P~ooiWws91wKa`8olKZ)o+E;uPPl@7bz#4Tp!{j<1i*n zp`Jb0s0Spj>&fG+))hWSp|oHw(p~?Q8%%EtCHj36H(Gxy;6@Sb0!jQuxTX1bHwZlT zyehGZAInR-38WLBHVb00UUY2^%9J*og z2a&zaEJ-VVVE7f330x$ta}=r;`5=t;(TM1zC*ScByFR`bE5B-oV8P4cYJ?+R13=*}d%Cp6Y9FnhsU3Il67qC8O%fQs1|aRDV?6l{*;y{`2}NPdtK)Prtg>E?4*D z;?~!4)isZoEuUBS?B?@%^$UwnUz;9RmwJ2k`n^A|-L}40xjp;&x_-NRpHJSa{cZpE z&FRDOUu7(-)_kwH|1$qv&F{P4|EAYl)IWT*et+z*zy0?A7nK?w;GJTZ5qpEBO|?b2 zDoXsYS#aaT508sV4|j>Zj9uN6Sozfv=an;s)4%yz`FjUz z?cRFm*8kvC=2q2LR(vmI@+_3oTYeTi_2Mhpz`v}CO)6tSBUa+SamTkq_5t3EOd`yn z;c*TIwwdM;YlD_foC<8Ao&t`!fw~10`Yl8yFW@p=d@sUJ~6L^m$T*If4Z+bC4!c(6ysaydbpyFNSJIn}$I* z0evC@VS-^P)C81i33UDFqs9pRN6Ml4(Z`U{jX>{zBaGNvhqX73ZUA~m7h%BEdSnBz zb$ijxLhm~w%<5}EHVd^UiEavdR|{dv(ne^gpme;@^`o~35&9ikk+K+S>oCBZ6_|rS Pxk`{B5tu!UxgyXU|?e~U|<-aR$Xy`owJ#pv!R-Y zy_u6fle?`=W0Jh$stD?r(`T$?W+4(UaTKhw9eWykhB!Ql>hxyrnrpMTOXp;I>9dQCMsQViDP~J49$Ep$YSsO^*p8%bM8IKI8vEK>0QFPL71AB z4Da{TT;MFbHT`^s=)tFAIXVGJTK8bl)Ri$B=)^<8a4Ldh(4p1&Gu*iy}lw6-DeBH?I#r-6+o|l-YG%~Hz5!(EDzJ?i{sY`t^YKR|js&$>DuXnUicc@$K zEkt%7LIj|G|6$w1h|l04;SrseU3%8e2z9rFYP6|LrYpVGM=P{ZgpG?cA)q?S#7D z2+9{ub>Ui-cF~yRQFdPLSBFD!GN0?5Al+qN2?d`H2}3~|e~|&NyL05n{ZG&Hvm)m zM-@G&WJT^k)!Tpo149J;HFPwyabjkAdsfCzeuQL2^*a@k9HA_>Yf_geST>OODPJJe z^L65+$POr7w9?h7ETON3-AiCO3BrY;|(zU5PgNhcE4g*0~#- zAx(nggNZ}pPW?^85w)>iR*kXO9P8z@)2Djmh0pBuWYc&klFtIjoT4<;9^zCc19q@dp) z28~qqGt6jeVAu$bUGJgap@6fCD5t8pwP>(yg&#XPI&4n6Lh6^lYYusbocum_=D4In zBp?@VP1kh;Fi==KJU6$q#^^-pC+uw6!d`>%+%(QZo$?8ov7U=O>?UXt0-u?9dv$Kf znw}_wSuC0XCDSJTouO+o?`OU5>xY;3O9b?H+~-iZhZe{Nw6kvFFHe0J`2VcS)#@tF z5vVRUP+(xFf3M3Yd;34iqBd@~%7WVQNDrm&9Bv6Ks*D>Supl}kzK&NDpV2%wM)old zs+DyI=yM;6#ruW%I*h-b|FL20aZ%J9wn5>uI@b7o-iVUJIznT0`0)PfvoKGaT5LPC~;`1H&UHSSSvNwXX(g(FXb z&uY|pHt`wC3en5?y3X_$T8@RSE{?z~xyTU_gZ;(qySo8|A2=ojTOz=3*HZT7nI|-> zU^w9oNA)DCb)}l27g5Kt-CClZ&*C(Zqu-+mCcEV=1RF83~UA8 z15iUJS_|STeQ?#;A-?^L_l(MPZp(VGb?+jGc<2Vh18k{>CrUYnw|O3o94GQ`vDr*X z5}MT9q~H(9z)|l?Xk@HmN6|97sE|4$!=qm*^?d%Ws*KAa zDQiO$kNaICqxv*9J|)lZXu!n_{oEXPE?cwb@7^WuJpYkx`J-{ zMf7D8?h|AvX5jCB$**ua9k^M zX)j8N@vj3h%N+Kw$eNuv;ka|$_F1_Ddf~LQG(TcsU5P@9n)$ih?kDP9*}9qF6ntGN z%FK_fkO<|?2B!g798Jt0uHF|fD1CuKvLF96y6X@WGmqHgoX7A$)P4G;=R5|58tIo; zMl3zcFYsA49K z`G|V-tLn_}OPRoXYIB`QNzo{h^!NLS8CpiUf^qiWLSKjU7&CT7GD=!7!&fU6y;s_x z$_lG^Tz9EWQPpZ<^0~9PhQ2^lN>8PZ@IImBExBGmJ25VHtJgPXooF@ZVK_ZgTX;O3 z@SxUR*JiZB=P+(CURG;oP&6;*D+aE*Gp70BQ01F)v=|_s&d^H3_A3K0`C4gDvXvvc z_YAs)L4B&}`K*5|1Rx(2uus}&U>ZzAj z7qzY=f#<8~nF^L|U<`q6&UWsm6b)_nre`B@cT(?9;>UF!~stQcxNwI2;p6!$YO#WUP3Kv<#EjqM}mE4U(x+ZsBN*G zR!TJXjn-s&R<35Mp?L2Dzcc?c*HPuz{1MDxU~Wp8_Y^{Bc0dHm?2!DG#ayI7dGqPM40@e6NgWZmnPWxbBq ztrHhnjaQO1XlAJ%<%zC8S{IKlkCioH39%U8VCI*uwXXK&it(gDR$trpHJ>g$-P5k;Yw-tj zl@y|Whs||nluh7QNn&s5tYgyGf$IBi*u_+)}>2`V&lEQtG#jSYs>SJ&U6s*d&TYSYB=t_=kS?NAjI9QDV z?A-l$t<~w4%EIqz)0N`7r+w(*^1NlGq<* z*FZ?yfvfwv`w{6=Im&hk3abinpE|K|h0uV6PbjT-=q%91wd-p5*m95>!9eXkEMQg* zn72iqlugqju}6(Sqy%c}r59GN0f7G7XLug4djG0_HzBS6|gM_1HFalHB5 zA;2I^oLoKaHnXM^tHRb7(mb57REa!qcisQ1X49t%(?r|K_$g)aV9&v+0=uB(AqMTN z^>Ojjr5df(K&r)E;A@9|)xz}S@$7^Bt;6%M%+00n@u^UTvQ(q~{M=dp{^jMblYXZR z4*K9$fP=`!BNJIj&XXW?YF@5BvL^AQMjG=`T3NaTT_usdJcwZrlb%$Taq%Nuyh2-d zh3_T-^PR?6$1vtXMF(qoKDe^Yd3N)2Dc)C|aE6!1b<0lvs?&jj1vzh>pFy42|LTO=rT~D8{$*d)h)2l;#q5DN(kHV4@h|LSj(CtO3CNE24_6%! zS}+LrAFh8=L6uUUT9LZ{7s07AIj9BU4;9HB(5AWnL*jp+Vm&Xaume&+R(}`fiVxDG zf(nWiv*8CL2_oZvNn|8}qxL|A`$P3yf?FeM$D7r^n+lx78>U>_yD$v0_#|}ZNxFzM zTzpRN!F{!Tb%+<*lX^ZPNcyKxC&revG`V+e`nF=|F4;N}NNCONJG3tkkK4R3L<%zL zCO@4Hu0LM8wCdXpdWk;uFHX4TeqM6F)V&*;&92^dul_YJqqgmb;xf<>(*|dwTqb2{)qN2CKX) zk!fdOF5V`g!hV=le5XnA-Y)C?>zOQXgx=CzsTng_2b5N8t@z!i;6D<3lG zmo4=7^u)E zI=xBAwT_>L8P^>0uOXTLiM&ByDp?HVwP{;mc{V#hG!-G#H&+OFm~@5qKz@xPEw44Hth4o z_@ux4RCUg$_(#_6i9q3|?D`;}v}{|0|L&JVI_4~K^X4hp>r2{P`?TA`)$qm3#n7N< z`?G@w@b)F?b>aA7_Se&)J)!_D^Ql;LaAdzH9H zPNTJ;{E`zVCuB+aajNm`n-pZ}Nc^@AwUaEBR@p$nx2pNaCyefHZ)Lx8PMs%piTehU zdnCXkRt+}&bv#VdMTm)3! z*AO9tIZYou{fg~{KG)4JnjTdt>?R}dcFQWr18AExW+zeQjg8+0^G*?kPB_L@=m(i? zCa;?A&%-2GtXc6OQwIbvT6YYoX;=PzhNU7yBJ%x`6=IV5#RG|j6qK| z=Jy1KeNrCYie{tc&(LDjlGKQ!IlCCOPL-%@s6E;5HS#`^L!)Iwd`H5|)C@ED$?Rvc zP@Ep(4yDV-rDZtjwM4nz>e^BMzL`gM>;tjNPPk-?1a;H;dGZXz+lz#B-cZ`2Pqc}= zP7wRDSO6Kt^cxSe{!7POUcRD3A#L3l{wS$wt%*t*#2dWq^`UUKKCQUAo5kD#DN zQTCaSXQ`~_NMlg({5Hczo}&6!PKYwQ=a$6q{h()le_Gqk9EMWxY9t-cOk7Fc!cSC< z!4^AphQ4#I_GaT5)`h|Ad2^Ru$W=)r^>J@c4=aTVJp(%doq;(O*;J}ZY=t$w`R~p@ zLQ5&XnEdp-cWCANoqAoK@-vAnrVR)dT*B7Sy97o+OVW1a4mkasQNy%>|D}Ii6MxMu zlG!liY~#~1WbqCm#t_qw34R+3HHTsao_4DH^QSp1LuQFi(GBEu_EH5r6ul}6i7SL} zHP~B8_O})EKc1<9ScMC2m&&wd3yB41M&+N*=Mgof1Ti3SaBwg5x!n)mG^yr*@0VJfdv71&HQ07WJtGg2jb58Dz^&E6`q6E!z?DvDl*?w;ttH@kdJW16o=f#w&_0 z2V0dDTuONRGwPN% z>$MEoRuI>`*Syd!k1y4npstU#T=Uru($>le_C6S_TkHjdi$tRJi}#4+NEeD z-KmM5AeN^%J+)pbBUoDNY^5*9aJC&lX+8mIW|np0c@;H>m7^Xv5(fDLd&+fc>qO;= zhPMwEzau@p99BU|Sxo0Lta7QcqQgy5zgn|{8RyD~m1!w-$KJ(eglzvs2g3Ks32nX+ zyALTOq}L71v|PlgMGj#i+!5(2dGs@>P?DJv)dRy=Eb8%g-n||V%6qqTxQs|Y_)I21 zZ#vi8Px{Vl@ADySkySolHcfK;N(XiNTg}ak!@jCXT(w(}&u&iF{kwZArM(y> zy}Rn+y}>R!@B@#)D)^>ca4xv54-wc@`wUB=1jicgmhP;93(|x?OWg>8dm4}WLIOHShX7vU7S%pUCx^0 zV|4z!wYnzh`kG0ZZ+);5L8xaYQ+n|Ha;AAY4;gH}ITi1yKr7Ks@NG!wOv0%G<|nH; zl@7+;%DebB$uYm6rH1rX=nimOSDaYMk|+k*kxAUoJIe-JkG!Abv)Lab*OjmeLN~N@ zw{U+(bz&$uU2(bCEV{aHV!6O|!h6%g$ZRF`qkGOeMB|*nH1HaTVCQnzG30Wa^n?)y zo&DhAFY1-Ku`-;&FAKn&!M83Jg6yp2{%sw-F?2Flhw~fC)D6B<{^0Wd^O%>CJw!D@ z^0)M8rw%{voXK;DI=Id_Gx*L_NCmykTPZnvV~eUA?9NYg(rBGn(@W-g+&BKKY5C2{ zTXMtft`KcWKluDMs2~?pwL4&;sn5nf!FT@R8Af!6Tp?g4iTH-E4Z>#K8bIs_6aEx{ zLG9F7{S!%DH2kM6#g`2!syuEl9)}_)5RU%=at^nJkS>GXMqmJj`(91ZhI7U)C`SMn zwMGUpfT^|^VBZg8JR5o$T5piIe(@)gDhOs0OB_%Y_H(j%eb7(Ut9`E!Ij7l3z=cqu z$YmS8!%<5Nz&CXcvEj!xj5tDeC6!EhW&Vx_USRY50-x^E$vpclMFlhX2V29^#B006 zl14gv@QZgoF3um+RrnvTZDCYawnFeCIgp5jMsp}rooO># z9J%BHNh$K%=6+?x&#SwW^ZE!*(qC_JGiD-lgXv|qCF`_jxgbTC!n0`4c_YSXjKZ$To@BWg;BzU8l+98@T7c zr#jT1fUP>Z!n*!=6Y;Hm`Q6A-X|OzwG63X`{mw_K^AGouzuf2k?f&!4J&;JOv&@I< z%I-Vlg{Rf?tmIsJy;YNoWVSLhbca$8#$h3^1WHO7&UO58tW9x%r$=Yh_Y$0qrBJ16 zD_``^bbSAgEFCHrwCnwfG~4?bi#b_vX3Vo7PfO&P{=!4aPE&r0)zTaT1H}@K!(i?p zvbpk=Mak15r5YE(Ijge35^jrmoAN}Vd;Kn_>J$yU z>ppx-v_tjdkbF0G#@I#Gh$^PMjSTgAM)QYAPui_uh%6=MNm9=iwa$_hn-Eie%elwu z{{65(*WHvHlH0nzR1qdl8npN9i%<$=VwV#672=Vs{C3H|aGrnYTs=5lN$pc>4yztscwaWiV3vj&Pe%UCog$sI-d%Rp zEHnR{6sIiWbNhe}#V}M7H4b4}#&x^-9QGkUR&}psPPNW9U1m-bC-CPjpIsY<-GdH0 z;nXO(T#nt!L#iZjL0(wAa$fyPH)>lm;caV`6w&X~tvpmd=w(oY zQe%KP#6`hGR)d;5dwFDiZ;9=_f(<_E8sC&aJJQm18dXJZff6leINty#-8DluKf82r zNDmP|ZMoy*f(h;sf>8vDsvo`-POFBOP=VqbS>5>Vn%LR0F0JRLSI&_1)&g`!xMSy3n=F}bfN zSq(epvVSNmk`%d!(kRUu64EqL6uICP^sb5~%b{0->L38hNs0uKkr3)L{yR7X!bW+? zo@gAwi6}ceG^La?jdD-8U}`MzRoeeEn=~U(S*PxSMb*_&A>bA zkm{*hO2mRR+6T@CxR^Cv!&{B2PSWJw9C3AZ(I7~7)=*$7ct+R4J4yhJCFl7>Ut$fi z;+KSYQx7pt-c|+`lH`C9m7&XJqh7%Zbn6{IX@5CFR9?SPNHUlKjUUixhQAODb4P5b z*^UChT21`xVWnk>WE2oO@4L zHdyD%lcLh*Bus%hl6=SpALxm;Pr;U8D57WhLROzSQc)e7%Dc$owPTj8{f@T{JX(Q4 zY7;U6|D#bF;c_`;1Z@_o0GXeN%B9TLgb;aF<8O z5&wo)$WVVm6B5QyEjdlCcarA(aoRX=BiA<*u0F^AL0skND1|E0T(zpylH02S-kAf7 zy9@jU_)xGpKO;IVpTaUgBNyPx@s-q zOYg!}b04WFE$O1GaH0~AUTCrzY>?H&q<7Iv0H&Q$%>ZOHq`T34mX+Hf;wKIO36d2VZ4S}8sG}EMPL1`^D$oA#>@c2cqd(Jh`P%% zWAxi@60QYf8Re8rM*S*DAWt!{O>;kE-q5D3nVuTdn80JPs1iS5YHKw9c_#zpH1($w z&;N8vn%rZ&-oF^&4Rb<2c%%ASfn;+gpMf!cH^3Xk{@$|#{h&g!@vYw#-xT#=PVsgu zqyB;hO!k=uY$xN7c1B7WxdoUe6Y8ljGw+>@q11PR24PMMc{*?X?MQ5)PKU)_W>eZ8 z_JM^!dq@X`KiZSyO}SW87X`9;sFTmbobW8zuG}f7v?HwkP{K7rGF6&=lEiDV$BLi) zz>5DLg}H?Lgf1c(7?Xc0bp4+SFETDeCgV0MxIC3}MUP9~JB~V*=)qnLqal3qiGXU1OMK zei&{1d42FRYC^Fpx_EBye%~@b(%ia^nWeaR*?`lN0A|YhckM}kpUg>{WE3xK-L(N| zVV`7#nE@bw$vS26scfp>UujV$*)Oq5^c^BP)W3ia+6su(D_;MRt5WIusaKzu0UWL0 zKQuPD9Z7N}GE=A@4e~k~Mn+&2(K}mvehw)yXQK>{Vf#j9st?_r+$?~yrG{cLk`*HY zTVQ}bgi_0xhXJk5zWI|(dhM)*mT}I;j1lN4UN7jSYI$SzSOayfF>eIlyl#%2+~Z}7 z&d?i7*$UK8)oR!#HQ;6FMeqL<_C_uH2Q@l~8dmo0^gYqKv4E6p^ar)8={Sg*pX*QR z@01u3$o~iRdDj4ZM_9JuhIi|SP9ylk%CcT`yV)!T27kBTq*?(TO%&}%!Wa?c?xC8< zvNZ$tT4bi%cKz{OCdJb=10tQfz36YJ?85iWUUTpMBENAN0g`&F!IOa}6gUwF=R>8Xl_BMn}!q>K+ zV;}Rb?-qByb{0Vu7d$d(A&38p0@NlB`7Gs#(yj1n%;x*bcV<=|p1U>e$1+%yZOnq{ zC?7YiSzZR>R^CCs1JOZP{ zSejrEK5A?f$AfZxSf}qJv7)jD?tW6u{2|A75|(8tF%4y7QMQjy4Z1O*{y~4kK70Xa zh(0N!^Nc{229sxrW%#x9_6up+0(ctLw>44ViFLUN6x`KSyIZsX%Wo9KTA-@|gg9^46Vz%oC1E zS7J8$?hKqT}^!9{vwLqUi5epv!;^(0q3%WBAFq<8IGvW zX@19Y^WM80@}6afCFA%Cvn!{&rM&XxhN2R)A{><+DP@HlvPqwHU_YmcuuJp=ye9K8 z^tpOowJlcsD@L8$qS3*>fn9pdn*I^wFOJIVuA#QshLwK>DXV+fSs3x9&O;!sbQ9ce99)EQDCo?Js0?-%by0F!~o#o>L z@Rl`dM#wA4qy|iBEG->rrjU91{btWW+_4+e%ZiVihMyeo-GNr$lzAbSf45WJR5QJ)b!ms$n`-B1CTaL{FGLfNGLp0gHxFu{Jr(-wiy&A}Ade4tau7Gx*^ zn3!KE_$R0q5}8C2<`QZi(aLMnkT{456F7R7P8+T)*sPY6#xQIpfI1SheR~Y(0!zmu z&33RcbG?xOu@l#*?nDi&iyY+JHVHN2&oK)b3cd{uLhE=#a~G|I)d@L&Lu0nTfteg) z*IXK389*#)F8hMhVtZES4!!{sb0$Xm`{2fyb^G^1L+U4#UPM${)DEyX$R0#gR+0`d z9EvcUAJEs(%ru<4zgP_XJl<_X-!$uI9ZX{P87xp4h;*uRcJv$%Ck`T>0p)^l!sYJ* zMs22Y;gQ*Yi&nmXsfgHGfjg4ulYovH?%+()=*%OChwuhUM+h^YI>0V*`w-=r(_t@3 zEgC7t|06C+^i3RY(3#k|^~k947VqyGV%C151|T>I^xFfr4)lO&0)jJ0yFLdrP`daSxSHop-u-2y%j&kDoP?@uO>5~eC+MxhZ6;8SNjNF^S<9L->}z$K%ua>3E^GP z?La{2Xy1sOpk2*uIMTe=H7)=Oo2AR@>BTr|4XaL;v~XBBk9IwoOVxtQ)M8FITn_Z( zFuc85jmcc)=?(q~*sqLlu5PkE?fmEM$Y=c2U*8?9`80`qp=O~e5mdaci3JMG=l9{A zg+|k_Iuu*2W!ZOPH%&G7-gNXJEFoTmo}z7%cNIsWg`Vav4W>VmPlc1M;~GBNa?bH) z(|rVwL3E9MXtd+IEWZ;|>~w%x=Rva)P0jAf$&sR)?-zS0Qj0;bP9Wo} zve8T|bMWeW()k?l9pVy^s_Ve3Pf=!K8q8jHqB=r~WIx0NXFT1@>AYcs?9#ehG@kEL zRg!kgVY|?O<&B3PAZk|HoI|$12)@sqIekDrW#EcG_5=k3-Plq>g#CRc&r?kc5^=`C z>``4UY87XH(VM@V>+2@X58!VE>Lc2)`&2NyuzQzpa05?DztOKz&z1_A%yj^9_l=u} z3Yqt%d6;J{XOcaQ*6Ysunj3Q8Q~*@c6V;Ft05siQ1XKA;ol(|0U`1O zzGk1b#7|T^u4S=wW8+~o^*%8O!!2PcEU2PivV*OmUmoS5h2C$objRV`*%(dB9Wk3X4n)#btMA?f-8X(?=!iOfdg|Fu?9u-3QcY)j{#LDDKy&i^ijcn z;o3Wsp3@138W@OeCJ;By3c*7&3-Fgj1{RZpWvU+idMLA#m?dllx-jOcZ&puA%05YR zR^S*@b*kft`HQDs$4UdM)H|*9yA(LVU&MT70Es>jP~70+5jT zuF(-QjmdrUDW^DqxUV3K-<}2^QtfPZ@lihY!gKdY?To!~D#~i%ak0o8Tu@s_Qjg zCy?NP{|FAqE`=8UQ*iH_;IlWuRrp6PuB`VOM>btv(86lOn)G)`#G^Ll#G`V50lW8B zCk4j*3s|Ym*)$qwatI9T>FOG&TGX+@BaHPV$9R`}AmY>MhX5=YDgqJB#+2b(x|$09 z12}2`0hp37Q@Zs5S{O+c3hN2C+U>c+OaH9vUQ`iUIFieJS+%g9RRmhtr*kurwwiki z)T)XI{K>0i$eaU;y0&!7;_xbetsn3s%G-7Q>mXst)}rXm7Y1Yx{i~S&Yi?Zg?~RAF zX~uStLHW%AxO8rTD#`{e4Dh(S09}QlQ@hW@IoZ+l3+_D6N$oRW!>6DAfwTa_ueJ4l zK$sU+h?uQXZ&Wl;Z!yA*)*&<%BmIkBfO%{si%7AAx;_G~B1(yF-tAQ*%Jg_KCtRK> z4M6Zy&jLl2Xd}n4-Ufl?Vb~a?I+hL49;^a<@5|xLjJ!HTiBh*Zyy)8K?UA_9MVEIo z5Z*Rm3#ylOYJ?J1futjXWX^k~vXET-mV5SA%h^2})G&Os8(K7f7k|T&{Ee-K0yU38 zz3AJwe#vMDQl1U0{|0bSd;>TP`vbuK)-7NcYPcP4__&8CdTG<0uOdUizQa5)62gKn zD-1tqtL6OWCkg@JV```0Zp)aO-|k>PE`mLQH!5WBxlpge_D02D3UmW!1_+%X{I=W? zt%pM}EckG^;d&i*k7tN^HWJyqz=s`@O2LLBD&rCD3D&4m|D-?Q_=~>S#6n;T8WjBg zb_<|A0=#{HkmJAIX(5Mq@1C!)Q3$B~An>|7fNma;m=T7tGKg9Nu+s5~Nm3Myx%P!8 zr>&jwqpF2mvdM*R8#!2IbRR0WL}iOS&%PE;DkMJPCOZbku9F-d)n z*IHb7IHS5s2W;BchwFtrn-I$lnS***S10Ll&hBH2UR6pIr;*W)37#8w15#+?Ay@y$Im`3eV99u0gdJNno zt<Bj2c4 zA_k4OYNxqPKw+|d^ZeCTKkni> z^^VWD(4gTHsaH+e2TF}1R{G1%9;BrNr6w$k1Fck%-{|y5H1zdDCpHsRBW(EJK;@CH z=H1&b3L4)_yEU2z7#W*^3JE|-KJpOqQf0FivvEOL7{R}{sT*%oH#WPds8}M&7#`d5 z=?hCDt!D#QAe$b8+9LaVMInUky>Eh2pJ6INnQi(gT2aAYVRI6_29EE^`iP40H%3ow zZAcg@jiLn3Z(7@Xn4ge2(8!AK_sz9WsWq_CR0pAu9;SP_Q7->b)`?D7mV zg>p*Ii#8h-1PX__wJUR)O99h1H_m-)-`ln3B9olB6Ga7r^$!-?l_jS1_B4mvsDgr^ ztn3ImP`RW7!v#KH@_nB31!q&NLB--rfS?jjZ(UzKKA0tP6RQOds?D?+jHNk(b&jSm53;b;*@MXbaA6ksoRP{`(nQn1_{Lsfju>-}7-A;=0}K{~wGGNraUzT6$RaY9Bez;tSYQr>D71b~ z09KsKw%+`qPH^feY|~xk0zB47*X-h42=60a(O?6SVC*K0TO_)rse$y`qoN6H>VK<1 zMEO%iaL*;7LbkUZv-$1r+Ky$tmoj~c_7mEcr+Q{`%vj_njoY+4Q1j<2civzO_1}*5jADIfxGJL8O z!dYf)5GEY$TsUUp4MJlG=Ap2Hj&Q*rabQaMvlG_4<+FI{;YMNNxodThLs|Q4u* zVa17!N{w)+_yK|_3PhxH6$)~i)Jp_GerUxHq<=1Q#;s#!RtekYCLDEGUB42|QBhO;;Q?LZ(P51SA25 z9sd-UY_ie={}k>5`}@Un;#ZV^-rG0w2$<#N1Os!bh5^I-=e>PROXts$=H_N5&VOFv z_t8(um#RB{yvJ%h98}Co1|uCE_nAV67%~{&Jx{&46DlvC(@(34Km17747$ZHlI@2+ z5+gklbPW7TEAl?JmECC=IrQ$u_r=|#>(Qrmy^`zbcJtjU*WJEdD{x7mY9V{m_wv+m z7eKwac6<|Yy}RR4Z_xF+KfQO7{(67<`tWk(*8ZG5J-)7g@pygGUR{lHdYXL$y4t_d zxhg2YXo%h3-C04@l)k<{`vO2oPjO3E%+^2|cQfQ(9d?^C;^BGfUOe9a)VfMJv>$PO z8nOOd+M0r7Xw4iEa{1~46DV_WYvp6PdlSu7J?`RoF>C%@b6j{6jJ-!rxPp8|b7gbX`M+iu+Ri(h$PjmMo5 zhO>jxLz+|eJbha_-B$OU9Q)I+Pb{xJkGYo@;u91Pr09rwE^7=8L$X$KLRJSCfB04* zU97$Ao_}DT9_FvMbKu#+jcW)SXLh$E1zdVlYoGZf9i`bE05y(Qy8+yQ>cs^OtIFq= z7e`BaZ5W9az9{9J8CNUr%Wcc^G`XCVkW=7O$A%3Kadra#N6#lF$sfg3}!msDm&CV0pfJgZkCWCsnIPO#;+INTBt+%6OH`^^ZlsF8+ z&kY`Tb>2@kiV7Xw!di;RFOS29P34nZ+H0Geip9l&#L3L%#2PU%S0077}yOigQz6 zOETe=`Bev9Z_-1^RqAb9RI{?zMWRnFxZ!pmmyvSrfUbeWUD@kB!Jwv}Tc9RfP!s#j zwXl~K!AsZuw)8vB?y8&V@s(>^>Dr8}o78qg?A5`8QMiV^Epnt&){9-zGT#`xe*AOgP#^PjM9ALkKIp1o z=cCL0ut8Z|Hn$sbG(icl2i|k9c>bXHS-&rY*n{DL60+CqNAbL!At3ihZVQ7wQk5aZ zIv(PymQdA(!Ia=&Z=82ZU$iPm8Al-HKtPeI=twD{r=L(5X2JN|^W< zq}lwuR!`z#9fMK0xeqprbiEQHE`?Stbj2v+`m4@M*GeXQ^Igj+TSxN^_If-rnlan! zW7G0tf@z3Y+nqzFVU^oBzfb}bwAbWu0Yso;O(B97`I0Vl1)5DA!~&+9E>KotwaQO4 z;90W=uUCq}D9ZlB{+5p#KU)ZG8DVNa=5h4Ir&!kyc0(cPHBwu0@LJ?+5IhxVcHonD z+7Jt&O@5xT1G-=#qJ4~h{dn8hJ)ffN5x369N}IrtRnRp4?qL)(ANTY=z_ zo3R5YfU#@_LktB*qAPyPP03b7XkeT&gW<3Bq#4Q%d#y6aG2%dM}-*EnJ z@VA(2q#B^-bjdbAX6PWZx6qKS9m{1NkZ&$8q923zNcVK9o~mUMI>3P5bH0qijLqZM zki$oem>Sd5bVkWLNLNPn_m0E2GJd)N1gu`=G1KLf+l3{ zw-}N5GQ#fTzztU(*M}3nR`1sX>+grwH=LEjyWEJyZsRC8FL&cxh$o+`hhu z@%c4+F#j-q|6}>;$+C7*&yg_nGFY|sgePOl8!h$e+N{<4nYXpuE!af3a$#KmX6w3t zG-g~e-S)fB#t*-#S+~R#&J+9VecNoH#Qp5)bP9j#n%D{X*xF*{W{S^h+nwTIbLFqm z?*LsV(EICZ8qt*RYFf0(NsPzIIq~=BttW;m;qYQuDB>0V-&m)oI3e;oo;>Tgv%K#Q zB29&|GcgrRg|aeDy^iL@5sX~RdVhb0swaoqe|oS08&S-LbqeraB8~MrH^mJyBVqP$ zFhsV@#{O={S)d;k>-q>~Sqz9R@-NmzQdA@t5F~Xskg>ENIa)zlRzE>u-x4VMaw$!o z@xdpg-a;tDsm57=TPS>%;I})$EW~^@Oj$Kr32@V&kBzuw&Dy%0gh(^cy#j4uw<~bz z6g9L{^r0GV$LD*LCfsY=$4d$50k|wRa`!y6-h?i4cN?LA`QR_2+Y(ZraleUq=pgNt zO3^4jBJYLWD=oC)T1!5QLsSilvms;or>aJmju+pAyi=XHSBj4+L+B89IMWcG5t8p! zJLd?&l)tVmYVUWMzf^GDITjW=$Vq>C-sQ{mFjVaA+D#C6sU1Obaa{Jke|n0M6iVL% zUg|v0?vB+xH3%DU5y+J>J+&;Kax)V!+Mxh$<~UNL)z7;WhuybYfnN75Ygxu|g%17V zcFFOz0#tUnL{h1hKMp2&4>Xo5v!*Yna2lbXs1Of7H7N2bb&eA^^D40))%5IKoHfbX zyM&_Qd|<)3Fm;_mIS4({|HRGkyJ@1Z%+ZU`5m3pQX+33U>H?>V%B~=2PT)AfBRC}Y zh$bo;)N&2yFp9PVK{^ko>^vS_t;z~}?fx-P*!6SE!h3x4%}dqQ9K*n2f!TJY`u@{d zg3DsJv6qjX1?{`ZSzU=vxKk$Gms5*w9$pN>;Iam_dk8^1GBvUv&-_eW-$j10gHgld0kjO_?irhZ(gNFanp z^CIl}5oJ!c@2JslS`PmwX^_A6Vn68&d^4X$LmBdsavp~0y= z>5iu<{n8l;bxDT7^UY*loygKHTY3*1SFA4)+B|zF?I*7(&6#bnHC|WyZb6)ZyB}sf z%odGCJg`r04f%tfvDxO|CO%oXDb6!0rRMKnt==N3`2)uB&sM0hJfyN8{0M&LbA#tb z;=4Wj6p-d~ZX>&8D=Y)^wiM=@sCgC7#@N zYjAViyH~}Z{=Qx{>`iG*a&|5dmpSRrFr&JC%xoKStFCSJ75 zfkd^zgb)DFEZ+Ele0x?Bwt)=Y3l+H%$3F2By zp9y}|?d%lv>o*NFNM6^|L$t<@rU^IG`G*kq zh4#*hqqir#ee)irQm&%!=KRgpX9j#rP2 zY^em#4a6MEWi`#wL_lL9>$_TN+X85?m1S>irl#QFc{#~KRP_~Xf-^=J* z<-9>}CncNbZvM@zNu_~{(>t$rq9?C*{Rgl_-pOZ_p^Oza!J~H;vc@nHKFNm@ocKbM zMPyfwjD2Cpjkjl~U*n^jKS$f}6Mu=KpznLiM~$VBb=PlK^AArmGbOr>i+ho0Q02{+e2N>AgPEI-SnmXsn(Tuyj#WKz{vY)gWPSUPMz=O*gW<_cF;v1gUh@Y=Tw}E3A&PN|dXUm-ujh93qQf zzLv~?r~PJXbkXzE%x7x7+_$XNi*8i=F~_20vF;gc2mZHP2A1FJ$jDp3ZAK|d9%apagjZ%0oiv9c@6#A9NIewmL@R! z36x<-X}fJM78V@my=CL-r;L&wbW@6-qaIrh6T|hcNBb&PyZ7yJ>C&CZj?BmBI6`8i zqcv^M3mVc+C!^8izI7uMpH`)ge(G{LI_zvIiD}?BV|0Q~mQilt8`jw& z40NAz*2VyziDaOyouYXhJJ4P4iUYHeIWHfG@T-Ju*N}T7vtGz;gV&4O(d%MMK9B@Q zVe(mGvwPQ;_zH0Y-+9csFva+*A#QV!7dS#ov`8EG+tHE_Mld;5?H3oR-7PIXAh&4h zoh?)L*e~2-TTu`jnYLUDfDY~}$2|q`M|(#%rI+I^_kLT!U;qE? z034BbxnDP&Ior6gkiq@E_Tk&O*Wi@1T^-0)a*<^VxK|Vke6JJ)a-Q|anY0~3^Vdb`40MA+t&fmwWa{6Y@kDjirPWmeM`8;&5-L~Iij|u^6Q#Ua zn!ijMtd^r>e%rUE_UFd73p951x92#Na-hllTH@?TCfXbH9aesCbN_wo(di-AlI_J6 zy0a0`mU;*Fqrr+LxpgLoA2BwwHFo9ns+abq;BHg&8#wo6#V(%{(>z4r6XNy1q8Le!6#x zB_VGf{&zNo?vnxj#(Dlh0v1=Krpsbb97b@lCEZH-zU+r(ng)kdFPl3<;CdGW^?Lcl z#UxTuNQ}*467Y%QF{E|5s8yp+R}h!BtC^~c^QmZsPeq42izCx>F1XdaxHW{=@Pxo} zT^F212P&kZRU=(d;JjLy0zI@frMv1zZF_HFCQf{>K^56!Vz-*}v>Nj|Wu_X=p&Hgf zK`^v624NHN7^GC+b+=mkwAu&>hY$M4<1$E8ihurDwR(xvjHeAo``m7|8MBRmOZ)G8 zb_(W>i$$>?ZtgY;o;JX}Q>w!Qx;6v4iHb5cbNSTOd|?)SoQ$386JlDO zn(Zkaf$UH%<52C_>P=<#RgPSHH23)%lbzSEI-R!+ zq^*~i)L~z)bz*Z^l=+cV*w0y)8j%;{C$0>iK9cmuUJnQDb9o7>h%|>utu~C#RD4eI z*I)~@BQd3D^B)t{bn`jy?e+>LAdjjglZRtY#Vc-BZ^l-iFLgyu9!N1_Pl-sbf(E4T zM4o>d)9MN{culPqWc7XSR4Wn5F$S$81i|m4+8!uQ_Rcv2oVq0~Ws_W5FpIfSi&gN~ zcR759f=ESLES+HVj(f8E^>9hcqC)qOscIx%X}bylC4hNn1Q=l`4I+fxBcBqx_Kh?b zsgi<#h_SN_VJyrd?$dOvPOMZ<6I}vWKwuU{UGNTBH2k`z`#^;4g~r@MVd&%{%*7xu zC?!zI#`HrH3PO@F%$`m=5MY>yXd*Inf1{AqeMYY{ddUoRSRH9w~N0* z@;!zu)?555WEK<(nQ&Mil0sjO%0w|Kn2R;74JOVy?L#z*NTg~Sv$)|5#t4GF5fr(& z;SG5p(rRalE1fuqp(RvEp68jAG7nH~MXCLjVJ^}K()t;pvzJ<~cLkfm22BFWAIU{GS z5ew%NAWp~Xzg&zK4%@_>C@G)k(XInA043g-bb~7#20{wP&jEUcTj(`h@wsur1{EfK zw%yhW6X$7#D+q>ha72*b$X})9X70b%N_)8=Q zGbR}dH%XhjBi?`Wkrjh5rgCM{)q#|JZ$=~yh>o&w%;-p9c&;NcMa5*6HE#7FhR9+js?L1w8sLUpr2&$o%Oc zpc|4APzds#d<^5>>G!OAU&&Q{-r7WCr zjV{g}uRa>e)qmV~J({U~?XTpXuOx{l5!>o=XG5rojYEv@UvL;%7~Qy--Uu4q?ieNRFd~qkgx7zh z@%Fj%MAi5GF&LA!lKUo&tl!J3{~KVDagT``d{7n?HZ9qU@PmTQYvqVo9wjz>; zo%VHu)b2y(3Xtgn(c@6pdzBng?KV!WFP@^gNI1i#y1kN0W={fdI-|jO-cU%bsp7{4VTF}SZ4UO!Kt zOSr#{vWbf7e-xjgbonH9z2BG$!hCv!;;h)nE8_Y_>7qjXP>z%IRHQhZv+?yU0c-aG zh&Obenu`|A%*M#TKF!QAGTSN|Kj7^q@BRjKEiJPVr=>T&SJl_PIKJU^$teD#REzE zjhC39wj2%U06a*AcC|8iHEP%~iTBI?vNx??QefwyW)``$9CjAg1|~YT%(677W;Bxz zA&45Gv8T}Yge~9F7yhiG54z>^i}Xc!y^>xlg%+0g_T|aN{yb0|%O?F@m$zmfjb!0ATZXhbz zagO&f9OCRQLzH3W4GxA@~dhQ<`}$i#o7O0 zJhu--vi1>SHUwLmGs}}^h;THzJe`9S@saMH5L$(qABD-GOrL>5u_4YO(6GpI?9(e= zDWy<{S^`BB{Dtu^5of|;9DhUrS^d97L=TBK%604iEr2x-b`F8Qi^zPvknId*`XZS2 z53MguzJz{i)D#5Wq-3~xPnzWy+OI%9f8s-NkY*SKuM|l} zmG+E2Qoe#sk!FPNVHDuv{w>D&|0>2(ljFszxso_RV8CQGn6;JH^xBDFeZa$MnJeGpD79+%iP-A$&$LBNgZRka}*y&?*Z@ zysbb?ueAzgH4KB>buqCkUSVMbFd1SUl1h)~+MQNHVp^|@l_k%Q_pRvZuj0+0;=pnb z=^%X%nv>jiL>%FsGPw4&zuAJMT9T=}%vQi!;L21%aS zpM*GJu!8Hipy@})76Cje;oFaBnI$kam9_?gOO&@nF{?Kk_E41czdwq2ht@Sl0Hjn?Ff_2xm8h9 z0zG8Zv&1`OG_Cv2NKXWMcxX$Ugq`$9#Vs8h;omAeK!eQnZNmm-)L!3jUzNV7{7Z*w z-Z4gNVpYfXZa34JS(NB=zsgm3iPx;Ry?Zw8{)AHXa)NJ!-^53 zgW%xLv#9M1`3Xh4&n>D=Q73&@&gw{_!AYZEE-WW2iXEUa(d1a%T?CjbhI(xrw z{=_htT6^Q%t_N^QAE_r;^5x(OIDlGP1B~80c5rKC18tQ}`-V_V?C?&%sC?kF&Dcmq z6KTBRxP(Zpjm4bWsfh4F*Vz}bG zPo*Q79m&J6qnJxKe2Hiz5OWTgNU$y<2o@d;pH=afWN6RFOlmksi(ZWrDe{*tgw%S& zaceZgOI~bBJ1Y)E$`85esN!7n=4V`LVnIN$;UQT}&>FnEMKJqr5ypvPBYmq7=|U*h zpgoyjLopem^#`?Hl7X=nv#H_S_z!B8zt+D{hw+k&&i+EJ4~g%e&k(rJ#8I1&=sNYWLgeG#2vy5 zJ3+C*q4Vd&RO?_|<`DW1S7nRQ{HjLqdMIN=nP_6C8WU+q zQf=pGFbSX-R2{nIuw>Et0F5u7t5EUT{wQh!sU$A6Z_z4L8G}>pcAX_%X6fmzFL~4~ z9nQcC0X0U14$?uh;h`JiO~TwGSr)D$EeBBFjJM)8|1=%vlsy-z+7-9-_>PxPrmrzO zQ4`5&ECvM(9*t%AV6r%kWuqp`VqB4m#5aT&B5SCyG+`gfIgJcHgogyvOtI{^$mK?3 zlPL-`O-w~oJ?k7trCB{iuaJge2oDgH62WPFNL`(m{2AM3CJF5T z9%zJD>>G2_~!)i>8+mMU5<)CiCiciQ-%~CF(hX*Q{s=2-~+;4b~Y9uGQ z!fF?Gh)0t?T_mizOL)JUhg3TiCI}+^I>~eFvwl6Ryd~lj4%rM#pGk z@xp~=B>0o;HK}3nvZ}FBiy;CtusAVFFO~baz5)`Fq-L0ivfdnYX=5lMQwn9H7=J1} z8FY(%5~L^UG(>Ubee!bE;j;)+j|yq!cmy?8FI)w}T6cmdIcH+NrN}(B&j^?dl*e;0)G6v{q%qAH1L)3X z%n&Qm`jK(f)zVDzA|zFYJ#a!Ad4EAP`qKet0=EjS?C4L5n6wS`fpq4~g|s}_e=@b+ z3w7oI6-Yg`DVgLVRaP2RRq5e>q87pa6O{xhgpzo%jw%gN?Ozt?)d4MthsXM3!E|Rt z;uFdJYUECtCu)+Xrt)ysVrK*$l-ZWLT0Qlznt~3Axv!X%fAQUi{DZvN8FA}^pf)F6 z!Gj-M81@zdZ4_iht8CVORk}-1! zQcf(8`Y+04VE?4dlQv^+t3RA!$fYC^9ZR8z$t!4)|2x8Lo{wET#@K|HNs2ft1B<%p z)o!v*^L?4JjLvsorAw{JLj-MNNdU(J+WAtN(b_pm`2ce6fY`zTvGnXfB>EHgYVcms zy0WgYJ(fL%vPNHeL8KAZES~hnhC$JFTQD{X2KR_f&HEm$U+K5&DddkEXHZQ-xiL2l z#7SAOEA)%pWDLDI5Kt0)Vj(#dI{Fi~*Ys0@i78hUYm&tz>cwd4!8{JHqzX0i`3^N_ zGyg}k23mLy=2SuLRX@ufQ$cVPJHGh0@6u~jQQ2v4^-w|hFx<}qbTHha!sqor5qF_> z;%hMo#S0U-r|gpLFUEyr>9!mbojjgGa(`BWHwG(TL4N`l~Vj(qWqThg!=7>cr6 zI>ry!6a>;dsrlR+tf4{RMLr2OLj2jE!JJdca#B*~6#<856*gEPNid(Lfq zFucfj9o4j)Xy~hi2mFIn&-N9edQxQ|lXca)z)Vn59mRE0;~m9+q{calXQU=L4k5zG z@?=4g?79|2M8>1VpbxY1;|!fK|8a^*%%RN$NMG7NXu;)LypSbkHHR$`S&L+MRaGid zZD5yb{}v5NXj>E79KLWBA2zh`HeF2n2>}g>BJ0+a_D>;qEpno)4~N2e7p93R8D1*y zTe=<(*!1M#04f(r27KrY2t^h^O_N=DAbemowshkS5@^42fv~iA}NI8yJ zz-NTdKr_TSUX(k?WWtB0Mor4`yn5%7U<2;{4og-prX7#*S6IIE{qmp540JyJtkOv; zn3kU_oGXN1*n(9cGg2!f>1>6Y5a@D2rFpW;Jgp0Y(531%(TYv~zdrN34_M+gh+)VJ z8u|yBC~jJ*z=mf2D=tXdbgc0)B|!`U4@S8|N&3Pi4cF!Z@9hciv;dX2X)}@tyozUN z9wP3v*lf^-3cZ=QYyBZN*jphzXPc&(p2x6EA*6EQ<{@=@sRDylb7aPTeEM8>jf^KY zpN5tjnU*6$Bl|K$d9@3B3d*saqBb9WT7Afr7TnzYGVS`1YXu13?to#yZLycZDXlc5 zsk+_uSr}I(dVT_#ZS0fp@i@dMKkC4H;?hRDJS1c_{21$QbA-~hALgl|e!KTECvoJn zjy_WN&kbZ`NMSrAdwyYJtz<~~_#>3%tEes@{9;r6!q)0#>)E-DVSFTKv!7GpT(F!% zv8dF1_mG}{rQ{4?#6!!mM680-1b=~<84)44?c59#1X&3aOk?d`+((WPe%)0W!o7hW zB1ZAe;|Ta22znDrgR~jPx*cWZK@{MU`lC_$lu_5$Z3sVrnUcYs{<_! z6C!yxIFj1EzwcGH>PCbFd*i;kG49X|Dz^+NKkkjQ7;099R3d2N)-*6UR&9n7 z&P0EE^h$M1!QEfAvRHeNx=G50fVgs=**N5?0|{-H1BXpr%kfup%^(DnuK6zjFDb54 z4?!G6ftG~}(@=B(dzLxR^taXUZ=*K^t)>!w3meR(9%t=6=Qn|%0GF@XM?jd;KQN_# z!+ZvmKB-I+{`o)MtRpKFh(cPIt@gFuARsg@z=imWG4pLGQs+SZC5&19>FrUKjRSBA%|24TP#9(RVd=BF zs#(~8!rI~ZYDKckvCbYB0dSGYzr!z0&l}_YBL&fSVM-Yi=|4c({g!*NavBgk({Iih zo4Z4qP_KqSk)KQ35gCAJ^TGpGEfyr0*+&UyS=<125iq^k+P2p6N$~qOt{VEoh-`LU~Gf z+I0&-1J|!TvYRH~OSZYbn=oA;FX%g|#*L{Nq(cI35*CA-v`Yar2h+y#8{T(j)h@2A zF7v9b`u(s=__b9}{wtLmUkcdBlo+i>`iq)rDe}ydxl#fF>E7g2)PF)!14Htj zraGf37O>D&TDW(@it_q9gB^+^IGEE>@7J?`UHys3ZbK@<+n&Xx&P$76Wz@|}Y_H5~ z1@58*I3QV>c$|k4cBQADqe+9ffDmU0F$;7?8)>|Wdh?(;kI&0W%g;($#9>ec(8wZ+ z^3v*AW;v_Su*Z=j>f3vyDg)q>Kb)&OgO|;c(BmH|frq2~tb2K0+~LG9Lcy_>VSi_` zsw_ul*+(T^8tTu=0LeM`1FY@V8k#W3!vp6ZYKKKEMZw?Rz1t)Xix8(oc;f^0_#vVH zSaC>kPtLtlE?^n!%!Uk{<3FUyCSao_l~h#f<;nBPs$in?9P^#<{KN1WYEZ*yP}uPN zfj41*hr3xA&k|G~WrD`w+t<#dS(qSBuq%miA~fjeJbFBT?yumzRqnM^d`Qtdud_NF z0RwSZk56~ISeyY|EYQ)yNY2%^%yuB+t&%LcGtfq?nNqxi4I<<)dxkg-#RSXbyO(h6 zTQxN0mD(j)N=Yk0&MIxQJcmU}I^!>Z$u`1TEv==(M&?OxR@EafWd8qAxKJ`v{Fq@{1+!KcF!h1 zUK(oWI2-ChDR_{%oVh{d!LV%h=;1nBC4hOMBSt+W(=xdTFRK_YEp3eskkX=7@ZXfg z#R*U}0phN>xQF6J-(Z0U4;tz>6~G?NBN>e2WsHF(R)ET4F;fwb~IdZ3#+h!EIYnM=HphM zd1DxOi_3;Vopst!4w_<{QH22#l5E=81>wTqY0$^5c5$5#?x|ex$7sjO6O`jr2@e)y z3mk{K^H+rdh1voLYhXxse-ZH5X*@_GgBAD}0jfhNUQFC^Cys0{FbPF@iqc?Ff zCm<`L9oOV5i%AT{-K51|q$=)^{jvhG=x`xfqZ0EGK1K^2t=pPu8KSB0LO{9TZSIV8P2)F6zG!F?KsP=tZa5Y7Y6>A z)vfeGLV)X(l(k>h`?pTdD$?RmxyAM}c&3crxVXp$s*J0R@6-rnm(FipsZ(=vAnYmm z{IA5!guuDhHbOpZkwHZuJ@?_WrOv$mRSsR0x;C(Li?47W7Q!T_jicfzpo0&$=!3@s zR>DVRQ(So+ynI&tdlBHYI7ueE4<8;ofcr6+Tb6pZE}IuB@kzkgVh-vnM;m&zS?r&0 z3Jb6!zSbxA%ukd2RUv6)Uh5;}6hs4!teWgeGKa>C;5~f$T#zNyZhwFUu06dG{&j!hW|qyZonUPVkrMx zoh<@T9S=;m-`g4Hf51!+o?YTyOaBJ4$HIlaTZ>X?|2HW%hTB`;#O&9P|7t{6C?sjn z3l0Ku4EsOYHo2I&x?0&={I$=jS!2`r2M@m zwS6_>U`Yv!V4*b>Hf@t)U7 zH?f$(25Eo`l^PG{h$MJT#jK0_-JqMa?E&!RCuaTr)cNJ$PL%U670p_#;7-K#aRO!ND>IYI}RZh1VpUF5P0V zMJHUGnL=@M@7@l|Wae6Qw;?7_2nL%*9$06%b)WJLsJ6ZkH4E`(AiCSslXT4{A!yk1 z1F|IZa~;aB-9g)!cW}nf2Lkt<;Bf#rla6|yP?~Nd@S20%T+HbUxVyIjV!26s)@{BI z>ST(-ALVA%INIW1Km z&c|R~S2mo1tkPku+{u66Fg6);U!u=-X;z;)+gQIXBM7l=k&^1b77Gs=IeUf zY$|`1|6Dohi{du9q3}z=uGnCF6N>B7dHpAd}PUCAwxXtHJX;pDg9~+x19Wdbsc5-WIS<;d=+p{Cs>^z!<3<7%9Ii zXIlISOf9iSv|K$x3qwmKiH1ecAZ32TwTfKvto5nP={w;;Z2CR-TCQw^{&RcfiO!)a z2(SfJ3-ISpOVPiYw0$)*R{b9reDrL;^&krZ$gEe-z(IoQzG)PzXaXA!VP}#^3$h~t zC2KQqGt~6+FLrG%oX&eH(o@p%EnmE8rX895Kl|<3pfvXKE*4FRe}-t)U^BkG^T8;fawQV4r9N#b5Tg5|Kh>oSvAAZP_SbJb^w|22<`DJ#m1{?oA+-aHo*U|YKvI1muDe>-LlY`LmtWNiCaBg)N`e)}IR z1S3DcMbM;X$=W71W1!NFgfvYe;d_Cg6Vzd?$6pG!&%b=OQ6_W-h<^7m>GXA)KBh+dA%FsY1PDj`Fvk%XaVE~-9$oqhw__=#B#Dq5b2}LRZ zeLEfXaHEA;XThANO(Uf}yOIjt+pEfL!}T*}6zpIHmGM9{4%~PhSE};?8-ozljTwnn z6er=CYdzOE?@U{G6h>qKqYJR(uAF7*t*)75rc$q5}U5M z^3f>Ep$-1YB@Qc|biR0*jXC>MgbKY2Kg4O6M9Xl%Q6?%j8Zz15`pB5QftJSi?-^XY z<|XewBT!_r#cENk*b%~oijD{Cc?Tw)=WG2qauWBRTy&PC<{TN-6j_$aC?*wwH?opr+~^zUF5ttI&6L{o7%FD!7|%k zW){hEtQYQw@w*G_M{`@R!BlUqpuIdo`0LCq6`D+V)dW6^2Y=kA)oqGUi~f$9q2ob+ z%AH_}>S$Hno&zKp^K|{s!*Ai=-Ck3BsLo406>20azTNy+3(h1FvbGUm_uo!B5D?6N zpOUVYW_D)Ge;rx>>Tsr`;IPhx)ALIcrQ=}ndEG6dL*iofa=8Q%tyL_xNnF>KMw#T4 zq6hKPsn5@7vu+UXqGhnIS{VLf{w>3vum$PF0Ec!hf=1c-XjtI~CG;rSlYn=xfy(vL zc__CY!4Xe zwwc<#mP0sHJ=)|p#!%8;aqxr5c2qMWjNABVIix`7gk|z#>-G%>50n?I>-^9k%bRmB z>o5oy#cr2iATIAj@x(nl)(iyAu({Pas?T>)@6NUqOVB@IJor@3%gDrm4Rb&yxK2hpZ%QX7m!v2*Zk@W~ol|A#gp}kc zF3@qG87 zu$VP{cbuf`Y`>*6l{U!X6<_R5h$BlKv+E_ix zXq(R)!lg%3LfQ^J@r)x?=JTsoL0Xe=WY!g4Z@}7DDPULq9eb6k?CF9$6NQiPm^O;e z$rO_9$O_?N;$tC{TwIa!$zH*uI6rKSGL->RU;=%4;7;|V(C#!-Cz-2>F*#ThOk%Q) zC(GYv^NSn@6`E?rOgltX+F;2tu}WPbCBBqSEfb6eBb2a`VcZi8 zd652Q%Cx52OlWozF|~^?FBMDc^9qhzkDI43O}ujZd;&S_X|$~nAh_qnrb@C}QlKSR zaa`w_5)=Hs7uFFQuhk&BIcTy%5M^yX0Ox|K+#Mo64pT7nrGnJlGxO~0s*pzSooT1s zx^40spe24~Tkx%qZ!@IH$f%+8WnEObqtcDmKqGNJ&A$=DhzU#Yc>x zyBNN_G;tK1UvT$LbuT5UtDSCfahbYU^77WITsa&^Q94$3Kh5*t_ocxpYIM+8si8ZTH6Y95HZ2RZutS=x(f5qFs zxVaRRf>+z>q}V)W)u7KqMMWx%ZHDpaCATo$AeK~colQ_yHmh4L=`89b|5A@U8AsW* zq3d)dLs@sr24|r_ZviiMJ5%Q4OPd7Oc6;wL^)H`cQ)j+D0!#7v z=}_jfD=H0!{T&WK-@7I5x)v37sOZ(7cRS}eAz9h*`I7JlQ)xri`qjN1cO~JN6eqO_ zjIKTa2cm+fiE$!G&a4w&&-Pb(*Fu_Fk_Jda8Z9`8=-aiB*h~2cZz}cPjIG>(y8Ois ztDzQ`(Jot1%kb3Jhy9A|l6xKu{HkrDeDKr{QEeKQG>foDRNOM-Ej9ZFKYjKih;Uc6&1E_<2(^EQgO77cJ<y#~WY$U}Ck2g9 zDP*WNyuY?>tFnX0=);;rNEZ>FzI92fnw0pU>I1rmCZ##!p3KttKoN;$VY%mE0MdKM z#sYC-;W^ot2JMQeO>jF<3*VJxViP^0F<)yO>mfJ*2} zC^G)o3hUi*|LQn;WT)^BM$EwnXqAw0afI`_lmrm}x;qlSLkT_)7J<&HL9tY|kkWQ* zbB82V1jnWuAII3&W5rs8&=D?F;KC+_h zUGvo-#8EM2kK$7S0h{P^W! z=Zjp~CPEcES5{Jy?04dL@5FUxvFdA|Ow!`iL@&v523qudRrsmjy4}?BCR|*E47Z)7 z)S-Hu5rsiLjU;62!{xEtKKQ2E0D0m z#&3+7uBj8vgeUYNt)3&I{|I+gdIsfPLqT1>yi-HyZRPF1I^s5W$}8*w1sel}oX;36 z`A;n1u2Sb$b#A8&GiA|pm-$(?wW|}kGz|{Bz0caYiptH5y-uhkO@QZ1@8GSPgYfFD z;jj;+u84Drd&A!XTdZCj4W$#%zwc7We*f1hEp9e6+y+>a2?u6(|5z2@*l4hW8>0%48M(URoNcOXa+fC4^i|nH zWfAQ1XkR9y(S5gh-@O5^kiTEA0~5B8!ZBR9t^##Sx5XHa zn_!gM^#e&KDy2P0DlH-oO{KYuk!6iK<$fpCrF>R$^*&1}ne?f1=R48JeDN^3h$&Kb zA_rPyHu@Q?u(AMNIc^@_v*jcONN!4*%MeAbPDQ`%@Av6`UYrE5%(TAgfi&avwH6TH zA!95f;GAS&9ab3VdB6RBoG#+U{JIHP7lPcTlH%HkxeV{t(5payMbg}zJ6)dtGA!U= zSb&5QEv0BP0;z|h9nk#*--%Q;mUF=u?+ELui{Z(0^bJ8&&2?@kXg$KX_67)IEns*TFegXo7vPI&mX1Mf#&b6x;Eu6iG0k(V#c#^;W|j6137 zkE4fUi2U&px@Dw{sb_A5E0TM6)KY7DWZYNo2ViZwXLqlwu9gYKhhC#WN3j`I`Y4DV0dxSco6>K3msHAwO`A<>_+c@z7-O}(sQ8n|nE zZxepwJFbZN^3emYAc=sFzl#J7s-&;?%l-3>YxC`{5Z`A8_QdRWd(VB__S(8U6AQx{ zT&%@D0rra;sK=|(N7SR0zN@J^5kv--!7jYjJ_HvV!+cyQYeO;iDc;~U>W}=b5BPt6 z1Qm=eTXaK$fCQ0%fM5e>EMVjAzoseR$_sdX+8bHfGFdyCSzKz^IHId#2zGjL)7nj= z&@f^^4|KBi6)}p^gK=5?C`sZfVytxvkx5iQ&!95;x{w0Mj(-Mu2o>=DsK-!q&2mzj z3*b|c5SD^QfyclZA+x^W6u>Y5zuDLjENH~46~HkT z!jY;Ahs{fX=@)3d+u?Ky!-9dVNWAe;OFj*p1wp7FJ;un}@#9-Tu0g+QC4stH%<9iF zgvOu$6we_w4j7wGTB+D_FuYq#I=&SjGGFSYEexaM2*=B20;U(# zethmN>?0f}F_M62ee@&z6OKU<16D45YDR_K4NtY8O)*|5x@N}&;aFpQExOouI!=ok zRhT5crQaJ{br)fWeGky!$(Yvi#wZlUlEX|d))R~ErYTX(%Gq)$UT>6-X+4YtN{?hm zk}VOa7IyM3vy?w%mv{~WP^zMb52QTxhMQX1<7NVfqu?Q6L8At$Ui9U(OUyw{MN@W_XMHQTQkp(1P>ma9UOmBc30y6jP?IoyNF+#;t6%$ z3<4TB%<_Y!U&$87Ce5@=dWhW=*BQ|)g!TmY)Ad%uid@Yw^5iw{&$Aty@(y6*t9E49#QWfH9y?0 z@YP5t$`j7BYA*OXG*2(6hN=C5eTvyWSyty?ThAH%OjPhNzq3_E^{IeJ{B)ATI(+~K zAs->f79KzmrVwBOHTyHqQ{2FnZkwCxPI!Qd86xckK1UlGz2y+qZ-vsYDjilADJPs< zAL1nAFeXf)o;}y72PCfR$>Xfn6+TCyv|ujMUH_CDOm7P%`h62OT7N6xMiJ}+N&H2) zrTKR^2t4+@DzSaQzvduJN#@4=d`zXmFKjd^F6a( z_;&k}w6tECskWJ)rp(#B?A)H}Yj2tkRj)a^ZPF#9>dI2zw~thRRNa+382$e9`YBI5 zf{RbTy4EgN_vGT%*K*Z0kC!c|M$)5!|`8bEUVUhuekp*|6I-QyWjt&*IU#-e6)Ul?61H5_Wu`^8Xn-C zVwVwngQZQiMY$?U{IFSYin;R;tzfa)&d9GOb)e+~F zGlkQ?`C9pV2W#!#dg#{w;8f;T)mK)0FJEZ+s3Y6NSC_#D{~tfA1mTFkmzpMfDRl$C)W z#UwSL)4(PbmsIAYf~PCd!vOt2Ntpfy#(P#Mn$eDzL^lV0o)lq@e*w%Kq)8NX?dTIP z2<^5dQ0-{bFz6n=B^!_)(h~ITsd*kQ^ zpm%f;23)R3HUL|<7u_uMz9Yh{GY!aQq4p%vO+oK!AxwGP2n`jKju*Oq^!6Y^e_bn5 a7DH_v26(dqa}X$32{I%CvqwQUhz9`rb;|<) literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParam.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParam.docx new file mode 100644 index 0000000000000000000000000000000000000000..e3d95ebf7d13d394cca7960e16a8082479487d3a GIT binary patch literal 38449 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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/product/scored_tweets/param/ScoredTweetsParam.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParam.scala deleted file mode 100644 index 9720b9344..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParam.scala +++ /dev/null @@ -1,361 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.param - -import com.twitter.conversions.DurationOps._ -import com.twitter.home_mixer.param.decider.DeciderKey -import com.twitter.timelines.configapi.DurationConversion -import com.twitter.timelines.configapi.FSBoundedParam -import com.twitter.timelines.configapi.FSParam -import com.twitter.timelines.configapi.HasDurationConversion -import com.twitter.timelines.configapi.decider.BooleanDeciderParam -import com.twitter.util.Duration - -object ScoredTweetsParam { - val SupportedClientFSName = "scored_tweets_supported_client" - - object CandidatePipeline { - object EnableInNetworkParam - extends BooleanDeciderParam(DeciderKey.EnableScoredTweetsInNetworkCandidatePipeline) - - object EnableTweetMixerParam - extends BooleanDeciderParam(DeciderKey.EnableScoredTweetsTweetMixerCandidatePipeline) - - object EnableUtegParam - extends BooleanDeciderParam(DeciderKey.EnableScoredTweetsUtegCandidatePipeline) - - object EnableFrsParam - extends BooleanDeciderParam(DeciderKey.EnableScoredTweetsFrsCandidatePipeline) - - object EnableListsParam - extends BooleanDeciderParam(DeciderKey.EnableScoredTweetsListsCandidatePipeline) - - object EnablePopularVideosParam - extends BooleanDeciderParam(DeciderKey.EnableScoredTweetsPopularVideosCandidatePipeline) - - object EnableBackfillParam - extends BooleanDeciderParam(DeciderKey.EnableScoredTweetsBackfillCandidatePipeline) - } - - object EnableBackfillCandidatePipelineParam - extends FSParam[Boolean]( - name = "scored_tweets_enable_backfill_candidate_pipeline", - default = true - ) - - object QualityFactor { - object InNetworkMaxTweetsToScoreParam - extends FSBoundedParam[Int]( - name = "scored_tweets_quality_factor_earlybird_max_tweets_to_score", - default = 500, - min = 0, - max = 10000 - ) - - object UtegMaxTweetsToScoreParam - extends FSBoundedParam[Int]( - name = "scored_tweets_quality_factor_uteg_max_tweets_to_score", - default = 500, - min = 0, - max = 10000 - ) - - object FrsMaxTweetsToScoreParam - extends FSBoundedParam[Int]( - name = "scored_tweets_quality_factor_frs_max_tweets_to_score", - default = 500, - min = 0, - max = 10000 - ) - - object TweetMixerMaxTweetsToScoreParam - extends FSBoundedParam[Int]( - name = "scored_tweets_quality_factor_tweet_mixer_max_tweets_to_score", - default = 500, - min = 0, - max = 10000 - ) - - object ListsMaxTweetsToScoreParam - extends FSBoundedParam[Int]( - name = "scored_tweets_quality_factor_lists_max_tweets_to_score", - default = 500, - min = 0, - max = 100 - ) - - object PopularVideosMaxTweetsToScoreParam - extends FSBoundedParam[Int]( - name = "scored_tweets_quality_factor_popular_videos_max_tweets_to_score", - default = 40, - min = 0, - max = 10000 - ) - - object BackfillMaxTweetsToScoreParam - extends FSBoundedParam[Int]( - name = "scored_tweets_quality_factor_backfill_max_tweets_to_score", - default = 500, - min = 0, - max = 10000 - ) - } - - object ServerMaxResultsParam - extends FSBoundedParam[Int]( - name = "scored_tweets_server_max_results", - default = 120, - min = 1, - max = 500 - ) - - object MaxInNetworkResultsParam - extends FSBoundedParam[Int]( - name = "scored_tweets_max_in_network_results", - default = 60, - min = 1, - max = 500 - ) - - object MaxOutOfNetworkResultsParam - extends FSBoundedParam[Int]( - name = "scored_tweets_max_out_of_network_results", - default = 60, - min = 1, - max = 500 - ) - - object CachedScoredTweets { - object TTLParam - extends FSBoundedParam[Duration]( - name = "scored_tweets_cached_scored_tweets_ttl_minutes", - default = 3.minutes, - min = 0.minute, - max = 60.minutes - ) - with HasDurationConversion { - override val durationConversion: DurationConversion = DurationConversion.FromMinutes - } - - object MinCachedTweetsParam - extends FSBoundedParam[Int]( - name = "scored_tweets_cached_scored_tweets_min_cached_tweets", - default = 30, - min = 0, - max = 1000 - ) - } - - object Scoring { - object HomeModelParam - extends FSParam[String](name = "scored_tweets_home_model", default = "Home") - - object ModelWeights { - - object FavParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_fav", - default = 1.0, - min = 0.0, - max = 100.0 - ) - - object RetweetParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_retweet", - default = 1.0, - min = 0.0, - max = 100.0 - ) - - object ReplyParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_reply", - default = 1.0, - min = 0.0, - max = 100.0 - ) - - object GoodProfileClickParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_good_profile_click", - default = 1.0, - min = 0.0, - max = 1000000.0 - ) - - object VideoPlayback50Param - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_video_playback50", - default = 1.0, - min = 0.0, - max = 100.0 - ) - - object ReplyEngagedByAuthorParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_reply_engaged_by_author", - default = 1.0, - min = 0.0, - max = 200.0 - ) - - object GoodClickParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_good_click", - default = 1.0, - min = 0.0, - max = 1000000.0 - ) - - object GoodClickV2Param - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_good_click_v2", - default = 1.0, - min = 0.0, - max = 1000000.0 - ) - - object TweetDetailDwellParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_tweet_detail_dwell", - default = 0.0, - min = 0.0, - max = 100.0 - ) - - object ProfileDwelledParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_profile_dwelled", - default = 0.0, - min = 0.0, - max = 100.0 - ) - - object BookmarkParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_bookmark", - default = 0.0, - min = 0.0, - max = 100.0 - ) - - object ShareParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_share", - default = 0.0, - min = 0.0, - max = 100.0 - ) - - object ShareMenuClickParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_share_menu_click", - default = 0.0, - min = 0.0, - max = 100.0 - ) - - object NegativeFeedbackV2Param - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_negative_feedback_v2", - default = 1.0, - min = -1000.0, - max = 0.0 - ) - - object ReportParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_report", - default = 1.0, - min = -20000.0, - max = 0.0 - ) - - object WeakNegativeFeedbackParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_weak_negative_feedback", - default = 0.0, - min = -1000.0, - max = 0.0 - ) - - object StrongNegativeFeedbackParam - extends FSBoundedParam[Double]( - name = "scored_tweets_model_weight_strong_negative_feedback", - default = 0.0, - min = -1000.0, - max = 0.0 - ) - } - } - - object EnableSimClustersSimilarityFeatureHydrationDeciderParam - extends BooleanDeciderParam(decider = DeciderKey.EnableSimClustersSimilarityFeatureHydration) - - object CompetitorSetParam - extends FSParam[Set[Long]](name = "scored_tweets_competitor_list", default = Set.empty) - - object CompetitorURLSeqParam - extends FSParam[Seq[String]](name = "scored_tweets_competitor_url_list", default = Seq.empty) - - object BlueVerifiedAuthorInNetworkMultiplierParam - extends FSBoundedParam[Double]( - name = "scored_tweets_blue_verified_author_in_network_multiplier", - default = 4.0, - min = 0.0, - max = 100.0 - ) - - object BlueVerifiedAuthorOutOfNetworkMultiplierParam - extends FSBoundedParam[Double]( - name = "scored_tweets_blue_verified_author_out_of_network_multiplier", - default = 2.0, - min = 0.0, - max = 100.0 - ) - - object CreatorInNetworkMultiplierParam - extends FSBoundedParam[Double]( - name = "scored_tweets_creator_in_network_multiplier", - default = 1.1, - min = 0.0, - max = 100.0 - ) - - object CreatorOutOfNetworkMultiplierParam - extends FSBoundedParam[Double]( - name = "scored_tweets_creator_out_of_network_multiplier", - default = 1.3, - min = 0.0, - max = 100.0 - ) - - object OutOfNetworkScaleFactorParam - extends FSBoundedParam[Double]( - name = "scored_tweets_out_of_network_scale_factor", - default = 1.0, - min = 0.0, - max = 100.0 - ) - - object EnableScribeScoredCandidatesParam - extends FSParam[Boolean](name = "scored_tweets_enable_scribing", default = false) - - object EarlybirdTensorflowModel { - - object InNetworkParam - extends FSParam[String]( - name = "scored_tweets_in_network_earlybird_tensorflow_model", - default = "timelines_recap_replica") - - object FrsParam - extends FSParam[String]( - name = "scored_tweets_frs_earlybird_tensorflow_model", - default = "timelines_rectweet_replica") - - object UtegParam - extends FSParam[String]( - name = "scored_tweets_uteg_earlybird_tensorflow_model", - default = "timelines_rectweet_replica") - } - -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParamConfig.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParamConfig.docx new file mode 100644 index 0000000000000000000000000000000000000000..2431bad8546c1bd753f4d9c52d2edd606064f301 GIT binary patch literal 37500 zcmagEWmsIvwm*!!dvJGmcL?t8PS8ezy9IX(?(Po3-7UCVkU((ve`jXSIWyBN_^UQ4tt}467-a<;v?Ib5K(`9--Q! z`?No%#p#KEBJJX8wyYd2oHEYTp~Rm7(=e&JRk&A z-%Gu87Vo>P1?HQ|(WlVpz9thCqISm{KYKmFmsETZ7wmmmD%sc<8oMXWf5wnE08#o! z6+I|rg&%;`+XMpvfd_sXI+@!#Gco?YRwYczfU}_Zp9@NiP?Xp=tBV(|7>FOq7Yg=# zoj5DD_mwJM?dnt(*Vn@8B|JReGqqUED8O5$E4B^NG|^rN%vB^Y&TqoNrCMM zAaPgQ4c4|zkGv&A5;mv2=d{ou7NpxmAJnC3IGYuz78N(7wUa_B4K7PWy@CHst?A;! zFb9AFNXj*HM3hvu{jhb5co1s-EM?>`d>rS1s+y)?#)8dVh$QWZej_G*I2}_S*OrO( z?WtYqlWxT&<57^9qN;&A`3=-$2igF)Wg~ydZ0p{~0|s)kNlniw3zy9xWj}{$!e7jF zspmRPvCBR%qqDl4=l@Jl*cW(JE8uND3rr9yFhOPjQza*WgENyUz{&jgO`er7uF%hn zB6066F)yzXevJYnAx#T<93dlx5wP5L$Ic;dJD$xsxwThlr;|(PO1Q;0eC;5(!PV3P zZW@vhLKGT*9$*#$uZ{V(W`ec;oGn4iQ#NSDOtkox!3n zw;0AtHc-#OKL2HkB&$`WIPXYQ6;*!ai-vFl^*1s^;(ZL7p8)}c;fZ7k4X9-;#e^W4 zsHJ(J;VA>ga#IEnbITR5K~6ii5U#k@I*PkTo4PExYt4vjpKHH8nO?E@`4Z?L2LJjv zXrywGX--`W#fpFG`Ur`D49X^~oTlQ|s=>M)aq8^kxHatxu3v%B5{iJ7@*!{bw6sz< zFb`&3*L4#xP*gWOKfk-q;7s8!^x3SHtrq>Yd7PUn)z~+4BM)iVO~5h~HY@4==F*BK zBS{*gL?jbJ`kT~u`mV|RqXxhCk8dBA@#!A8E+KG^Es+dp=G?^IUiz-^{#loswKeP$ zU|nn>KtNFbUKe8rhd;`qHg3PhjMDK;2ciEt!U|eM87CodQDjzZ1GhFIvt@paR3;vx zjb+!@=P?YE=L^$qI9~(bbK}_al86O#qrxY3%<;$k5hceBxTczj;e)lwLsDmma>z1F zjX_j>N5ko{ss$(p*w1O2O4Vatqzxt$mxRy`&Wd!?pI4EDHygc*+Z7zVXI{*OC4RZq zJq%nVD>W@|epO~xjHm#At@%{pQ93Qa@p13=SUV*d5lIrv_>~P}+@r#ZdL>K}Tb>w? z#i;XQ;uC~5yw~U3db6LXxt4ai*!**3!Y73E4p(ys4+C&NuuTiMg?(pkB^@fV&ZyTw zup=5z8i-Zv%QVBTqEF+xwM2$pmhl15}VV|{p!X5*T1;95fZDez_malu6{fpWYwZ430vW>d_yJo znVJ=ps2i`XklAIdBoU|{q9RWrcs3!zqcf#B(>y#BThh^2(2d5-;lM?8rPvAaZ3Ep0 zP(dcy2;eAvbk*4;}c{+u8t2n0g9p`#KsmP8iT?yOo+O zIH|cs&KH`At?p&37@s<@CM{H?__4DigXx8d@B%jD@fz=a;r18NKW_||Fa-NBNDz=^ z#y@|sZU84UCg88u#SXYQ{k}8y(+vS@oG3k8_cRdQg^(Jf3MwsZ)-92$CB5m3k>Bs? zat9kG(n&cI>h}9z6vbD=}bT*Zu7&L1uKY~s3b?JG{ATfP(( z`bZcOTMBjA{&H~m1St<;14MqC8v81sIlVfGF3o?jv|4c>>PV7;F|l2GT&kY_j4Olb zGBZ3m%8oQGs3+32jMd~qt!Pe(_geqG09P6CLd z3D&L-?M+tztPVj6!#rc0dE(yK4Trx@i|h&g(Vrg;`bICNwuL%}PN7F@loL!v>|s9sj|5a+v}v-XAL*)`b*vrp5xv zA1NMPf|YKZJG?yUS%0;F=#wg11AXe)I*jeCC>(5oyQ?0dU(n#jC%5n34P|}H3;M0) zc@>XO!orvmgJuiWJzw@`f1b;-So{QM`J}|=F^S_%{9(Od3}7b7C`Q=@>UuU$Kq%uG zr5YC$-C6$+T2xoG=Z&hF?s>2^+b7bNWUVLs)s$#Fr| zng4>QQ|1mE!8LT-NVGhi&x=pO4=c5Osry!Fr@0+Vh5TuexQ9HARR#e;8z~dE^vgZW zQWeYII?s=31C&fa)(ZCts!49+$J3HsaGVLXV!{ubY8Q zo=(+@BUiss)%h(2+app%Hd7L#+`_9yd2X_ z5y2!WHw%xVQ_hm=T*6!F%;rfZF7SMbw@||w5bJ_Vzn4J&t3Te;vLBUcn~j>&LfDUC zLcH9CFaREEoTp-6dzN$9qFR?u#t@XH>z5ME{oY2gIqlzDCkxxb3d>zy#(uKzsRiBddx@M53Dz}g~ zok{|jfKF1tGIr!z8zPT(loYGa=FKOxvJUwe(lLNiH+=i90cPRcci9{ z!EY%A>69^`rA!fIG$nTh?1oQ!uw{p!ebHmn!Wago>b6N3Kf9^In9`YqiE*C&-?Y&Z?}7Usu6ej2Y2)`^YjvJ!^!O-C z|8XDDa^RSSb@-`&5uR!Ss^FF;A2+RPnkR~@TESmQI34?0;YCZP!7&|cC`;oQZIokC z1KjA`aY2oe>PSbU*@t3WE-(rD)WSUXJ8rd>@2?M4-O}f;;QySq?fvo4Sb^*LIB-43 z2d?LTOxu6%M*lu}|G6_w5>X6d#`$vo2Gr%w)*-Q47z>f$CJ4qc;6Aa@iPGR9npk~tc`C35OXPlJ@Yh)oqSEN^Wu zXXi4%sQm0{UGk^OLzyJ`7r44Mih+7K@}@j{;Wo_b=)xmO)r2qgTsmOd;4s_uYam9RyMa8uN$s|MSI ze3-Q1w!WE78t_zr{pdkBo1kYp8ccy>lI=TXjFOmra#6TSq1o>aNcK+;PYwrAefdoEvCGJYr`*e5b7Z|?$ zu!{=@8J@BSNpQtC_Ug>8J7<$;oBK60gZ(M?)XHc-**bPhDt#KAih`+a4OackJ<6&;Mrk{%tda$#<2= zAf@DDy8kdVb$@4k?WCpRb^PS2(PQ0~t3-&XvbU#G@e5B_RQ>ynRfCS#^TOJ=r(1;3 zyMq>>AN9U{@A}}@{ljU+$S1@5(2}Ko-zGuAeoNn#>|rl$d)Fo7FAB!FsguXGLT5r* zZ&-qIP9HCoc7{WP9t@e*o`Is=w){3vk;jKmpEi8BXI_OwCk0M5H-VdWJ1<^IKSEzY zaz9GH!FTw(_PNWm6Swg_>xM@h8ANFJm0;7(oYR<$=ZoaqEBAB)uJM~lUnd67R~}EY z>%@vZ8W)c)kJWV{anV@65T>`T^{)1o%JJku7C*c8b)POh-Se*3Td^k#l~lrh$E^(} zDb~IsB$|$3r*!Z%jQx%dG|3m_Z6tlv0r*eALvSnYF+Ib~*Uo9)?eOXCm!kz*KSC_|1cr73@vD{u;yY8hD%%gjr?@$wS%8th$y9I z+HH1SCr*X6FSKPiak&a;0E?||o=(kOstEK`{ix=g~M@2K9GBzG|1MZ5_N zsimWe$hZ>)&n+s{N7lt()JS4wq?Dyf(NvPyDuU_vG3ZES8J1*V5){65SNd(?Gd*aG zbqr%HR(7yt6o4w*UgosCmf?QYiJ*Ub-mvQAt3DqnT#2Y60w^^B0AO)jB zMu!&YkkH~!ocTkaFE$>fFuS87WSas2s?9yBD~zIWg@qEF*a11hAbN!r7Z}$8S(y8~ z^AoTW>tCG^JLCXRk-x@QH{nt+LNIy2kMv1zg8d8olsy3$N(>xF^GB!-5G@3V`;X8+ zsUXUz&aFw@|BK*UnGDzh_lJs<4oI`S{~_@|P;s7D)mVY4z)^n}=86Z@qk;nTiqZIk zff%0Qza%mc!%%s^!~CIoKGCfSrQ`Rge>W96i#1NUws)Z$Wb=yaED(1QYPk5EKZ5#c z`{@uZwkP+n__lZZJ$4{ki) zy0q!r4|<8b^e;`g=6zarzt(*in#-x#aj*HgAgFk_e=wTA^ANoyq~CHYP84Im%eW$( ztQT|65s&-+?0_J~;4y84Lcd-{khwLuPJDOf>$;rjhB&y^#ppMjBV~8ulyKPgYajwp zvl~zyi&AFmL(SiJ{pdu0?D%2zVvBEa&W@{{DfQ$q9&391hbb4l-X@E@E1_9uP#*3U zfxKXz0*taOnw2=uwzuAm_#x#xTD5+s7agF_6{ zs$=bx87^i7zP=4y6e}K%vu=JS4DXO0%TSRS&)9xRDCdHt5nDW$m*yp6ZJ6`05lNOk zUG&QoN7E!Po?kJm_t-TvTs&FI5q(4k&Yv*ye%>QbqkB(tZz$G1X#<;%E*TGY&n>Dy z7=>QCI^ksav!4F`|`iLIr`?S2U9V*S+y4!;kH}6 z%;MO5c_R#(SlfqD_{ip~^mUdpm98v$41GbHalU2nmK=UAksegh#H{KmlWxUQe_v0G zEOQ)|vcGNExw?a{4MEchRd4j*TSD|tndZD|Gnf8kjI4nj-teHGrxrbf~F_O zY#G;nYZtkwOF@!f3E7XoK=VAgD-Frg4fR@X?xX zG)W&^2|r$K;Q(x&z~lTpX4SG93e4S)Q_Os?TfypfS2UO>6DjpRQFln$DfQ>Thgw9@ z8>3E#XVv)e7-=mz@W<1V zNTjCtT8}KSCG`5CMQln4aMRbO?6go&tbfOfKXx^?VtXXtah1?BGe)nc8vAPk-61(2 zcU7}V^C+wYr8F(_WZphjty3lX7Ghuad#${W#L#H@5buf53Kjh zX<0dTMjc_Ex4L$8fM3>$J=;K>vNI0p5`O)(e!e_C(asV9tv7_W$O}ypk2BbTEG9r& zG2_m|y#Lzio`<*iSWsIxmM>azT5F<88vYJ9XQO%Dh?hD9A)4QdC2?TdAWQt%>u$&B z`%M4zR`VLi+WC3HQo4G7GTfKKcJh#P%9|t`P`qRJN&7&)YtVPjs&&HSLFCL+247S><)AwC+ zwzrtfvMdhXE?Btqg0D#!sgHYmdRQw|>KWMc>kQ1R$fi+NVJWQZEqwp{Bdm<#i|LW) zqhlNIue95W)T3n5*l)fdA*HO1y~`l@G{oOd+yUpGGHV$(@xJtrYvQfDMKKwMUThk# zfS2qNpbs(rnBcRuRC6p*;BKdUynLC*G-ML*6xl?|U@KF=Mb@h(7r%j|9Xhu5rim-KG8APSwh3gvuZp1CIkFq3C3=_1Fze#dQvnj|-a*MF; z6~bHCS~jE=3X~MxWsRg{o|Jr_4ZMt1p4dJ^lOnQ+H+Gq0ZdOZ zIx4*~29Wf&xhg;Q;T(H_(n2EQ>>SI)>l#Wf3wr}j6co}&w$$6Swu!1U4R0SzJ|{Xl zIn2V+^4QK5Xyr0xMaR41ezg`ybB@&!YqK)Qj{U2xNZJ0Y4!G}=6WY8Z_8(J;Np2gN zXgG<|iXFp+xgs-E^66&NASANHYX*ifnbi~Qy?Z^Ll=tsxaTpMP@S08lpLA|_Ui3e& ze<%R6LsI#4-8{+uGXwOgl6uPA@9DcE_|48FW8=V6=jyOukk3nAu5aR65(YSppgA>9 zU2q)+g-bpfd*-^#OBA|7=y*C~Zw(g{HrtveQT1M70huVN8fz9D+B!Ql}blKtS+lA)&0(gkU)>ML%0*!b({>+fzg}8Gi)DepXr4IVTDni0H zi824+<;ILP$PQ3DSL`^6(r9|wkx86SyDJ9U&pe+Ja@d}uHk2?6!#1^aw{ec5JJA)K zZ#Z3Smt5VqFkN6eVZCXfq_>m%(LCoIW3Vrv8hH$avGTa;>GQZud%}r=FMe?H757Tt zSsTvcl?P(X;@Ol4f_K(&{j!PK96Fn?$NmLj<_6m-e|Y`)Y0OK>0jvf;WhNuWxx=3; zck&Xf9;P$i9JVtJTtRQ^UQ*7%#IpJhtJ9cP3bhk+df6hM>n>m|y`V*TTW*-m73^E` z4_^OGO7NvL?G9*2s*5pW*v_Ba!|?9ltN2XBku!MOKx~%n0r-w^A>%-FD(9w}BSdwP zh$B1lFPoB-`CMMyj>XPEoPa~5TrNvNU3$IEpg?r@{o3Ho&zXC`906R^n&?FVX4;~F z1Ap}K9LN<&y+NLar6WXDAj~AD7@#`*XtHHv&|lT7eZL4Px5bFxg+QU$We2vyNlO&K zJ9P=R>CZU~KSFvVnL=@6fxr#Rzjb+qM|w82JMmqbjOAkIS zpFgUr@IBw!L8+{6hvG)DBfU70Q-t|lrTgktcXI*PLqWYy87e> z^H%0Aa;AL+VdSJNL>^li01U@M@R98NBfRvl@cDm-AN>vwA{6Z`_u;&;{|&Z!HDmr}rg{T|#Z#0g&2|V_wi44MiD#=?XKAW!s2QKt{BuqJL3ohsUTQA! zeSKe=Fe3*w>Ib%^Yh;)CEv1hX#Ej6?$i2R9yploqni-SBQbp%yhAHnGM4Qv1*Wv}0 zVo@x7_9;KHUw`P_JUQP;9#Clxs~%r@UpGo)l!cj0Mjho%kxbg`t+;BITYO56R~GiU ze?o(xA1aL=2eT^Yyx)2a|5y;Gy5BmlT5p#jJ+Fx!bac;a{|(*#Nr#PKYLrYa*M9XW zO~Q9kUP!EJLH$NIdNY3$kR0JQ4?tw4Ee)gMuQrQP@zbI;{))e`Zj#NoQ>8Ip+Hgym zd{er@93tlGJJZB1IVb?vMHv*JV{K#37fu>w=@oEp_;HF5F|MoJsx8*LK)t-AZhArU zi7aPs;P99l>}qwoB+~!l?ph6kemQe>8ZHWs77Q+y?nBW$V@?Di^sKq{NVhiM_&9QJ;WRfl);6&BJHeX`SU(sB!=1fgt}EkHVfb zHt0^tr4nkbk@N8o6Ekfo3^mYF()XVtYB$V0-`XUE_4{D3_A=)sP0kTH@LvVR^4&fsVQ+G$+!Gw050GSCd&H$H*BjG{Q)A&C)K+Egv4!fh9~^?K-<) zfO>?Y7Xw}O!p+lieM&yI z`sI9!2|9Yne%Zzw;os4aJ|`jkpgjppqCIFy18&8~kXr~00!`OB!7K)O3FM%Hj4gDf z#0w4EK#je+P9WhaY^gE761NhnQvdV$uvww@g_SM@`I_{qLNT%FV*~M8_$jBuQ+ct3 z@Kv-%S@w{irm3Rv6_0>-bqr}Pof1R`zOS5wa4;z`fj+~(&A|~g$xHOaU<*t{+uNfm zrCw-Mc*2BGVS=vF{GZvR9)ZX{cMm!l`573M(e}R-k2%6$s5*xez(kats<=ad6$>TU z?VZ|D?Z9|pe$J8nZcni#a+A^GdiUwV8SX3e_UgAr1f?>49k{|PMh1vxUnLa;^_L&C z_*Pws)UPJF#BZY&Z;owGSC6%R@W%5#o$wUYgm}>(4IIhZkcKpa9;iZVrtT@=3)5+y zI2vJM*L4l=HL5#FQhIa6)YV0T!QENHeA7TPyA}~B0Mu3-mlJ(SwMdFz5);fkL^*ic z=v9bQ0!LJau2+nD1uD^OcKxLS*Qx)y+k3)~1uo>9r6os##~66&Jz>>olP6DtLX(>~ z1>!{fF$Z*@C&nQaOPs!#j{Xa2L)J)TOIA0 z>EFIr1b+MO4b_r!^f@(Sxxjbj#Q)Q`#3&FFcwwpaVfh{yHuyPYP|2(rJ+0|9aNYf2&j_Y6Pn6hyJY+0<`X{$#C0GZ{`CtF>E`y04Y$HXYi4L#&__r00L8D zhA=HTO)Ufo3%+=5Y?zVTy9rmH)Bhl@v3Ha~6l<~wNLnZ75;T4yU?S*_M`uM{DPc+*H&knT1N{Oc5{jPXsD2MZk_hXq2SJWV~uhbyB znSZo1P)N%yLN%LGO@*6#?`96AAqW_RJ1^$z{O)f@WDRpZF7Yy-()Mr&D)MyzcU1VJ zJte`6lO=75KZlzthtDM{q#k zBAkgn`KLnH|EcgQ^Ez}geyftxQ#nuMwDg11s8gvP^wmJ#cZQL<>cS6f`yOh8V!cSc z<%??2+O{SyVzpaYG4WdjzgOs^$E}TS`uBFBj+_u>9BI8!6f4(t`Z=bj(Wax@!=va4 z#p;-n`TfTOtAZ#Cn|dbZl9Ckz4o`fjsn5Ua&iebL&%Q}S^FY_%8UQEuNd~A{0MeK2 zb7r5a=7xjSR%POYQtKqYA;M$*E7;)ez&O2J zg8iuAw=q!C{A=*uIob>Jh)KDd<+$`acPdkTXzpa@ffTK^|$+_~3__IsCI^r6LT9^o(YJC_k4xhnJ@ejl` zU*vs8(vK>d4{(|-${64KK7WTkQf-T8>NGUi>I`TTcxYt%2A4(f{_SW?Cja(fY4>Yq zF+@q>Grbm4#Ls9zUDA-xa;^yNDv!oofuDS5R@L#PTk}C2y=D349EgtcX_K5Hfs0%J znr2fcvSEGt499KZH-Rz-GTRctlnsrL(E)dcxB%E&(b{=05)_IP5DN6=33{QErY135 z2-l|#x;|oSN*mujW7Vu5a;#_J*;eAy5Vn@(2Y6JUzN@N#)ZcW7SoAeSo0Qghg(FRe z%D2Ka{91PZg(Q6uG@Wv0UBvgyrot2g=H{l|Ek=Z0e(_~Utc2Gp-E19QelDySc6mx| zl1pK(u%tZZTgMK2)vKU<`ds4^rZ_vI_}rM6x%P2qeOR%Je=#h3dwkCG>TxbOn8529 zg$0UyB1iY-OqoJD<%fImIre-jux2*(>*zW5pJn9*i~wGFn@&L18GDs0B&t04Y~$5t zK#J$NaK05mt`*p1_m9J_X5NSZVa0AQI$ZHNvq=E|=kmm2=^=qx_UKRP{-<&a-h1rw zp5@1-<9G^ltLJ-VJn|KWBI0wx>{T797H&sV6XB8nnW+QdgryxZY3Zrz{bSoi^(uHr*y;zzEQ3ZU)$eZIXwhzU8iCIzmZ68 z#E`<&(ve~eU7$N?@f^e%yED74l-V*gc6xO8wVqMt0Tb)ho<*6{o#4@h0f&L}S~f#@ zh4Wl)9Sm|q0bsyDmZuBmkOX+nS@uDN_!CWA20^xjkYn)zcOBc{VfY}T{$ZfT5Us@0 zNyJR0RNNv}w`QU7U=yY=bj+Q$oY~OXt*K4nSV{nOL?(y!Sc^-rj%Vtf5EG^bBYq-h z&QaZoT4)zJ@ZZZM#7F@99C#S$4kQq*<2RbSNENhB=;d!TCWkwy$ssn)J3Ci*v=Z%iCCW)xXo|}Wt2i=8i7BCHBdT%n>FqLxyI>(mt)F+z9zA3A|L;cxM-2z z;&6g5L@#YdMoqSPe$^7O^b)0sZHN}L9aCyF2LMEJ+YX2+)B|6sL$Lorl3s~mfL~JJ1qw$?-T}l zB*3;6;-AU0%hCHQd9|IkU0)}c6Pf=~2-gq4e}ca=jz=}w18!}kN|jsYP7UK(hK~lO zP74jWoiN5CLM-l}COx2h>h0r?9Svw#lL4*$(C=1Y*lUTeP*l!4O^I$w2u zhj#|@Gjqn(P1dKK@3I}~f{*Ge!r{74v+x%xX6jM_#oO9AU;c%HKHQ727`ipb66^JB zhfb{Ksg~ZmjvlyW_^YsU)Ge~El4#Vh^StH3jAyc`2+|E4!)H5=d7d0v8PHgG*SM!9 zd*17c2T{dNM_86_Be(WhdySU8(RQr>D?&7^Wiuf7+Z zPl4aTuHh-W4!!ymr6;CA9AqbIA|;6rLQS#9GrXKH8#hU>ZMsDgc&}9@Xto`9iUL-D z^UwiA%*$GGNe`Al54f_X56PwsT=B+UAfO>d+AYe(auK724j}%qY3o=a>#-~!X0>WKPMN=t8@TNUhpF<0=$tgSV7>|oQu|ki5jQ% zZ02q(T=eGN7kVL>WlV)dRkUk1kae`{lYG>$#~tSGcHcUnpWg2ictv4 zps4MhxQEvyvpIeic{+d=zOThHd5GJCK{dDrT6)_;1?9i+jSmipy0s&2oB6C zgB1ExaPM!y7rzBp>*mikA3aJrk(mf;-joMZajmrH6?A}|G92EO6V5M)L z&0?@8hd?l2Zf<>5i#s;Cg)m>_7#{Ktg?&2x;e1Pnih)FPvE_JHu4V%N0FEAj^G!{h zE!+MGDTJsBf%$?{pR^ zWXc7)t}ENNJiaMd?+5&d_IBO)I!I8uy(F@A>akrUV19D} zE}h%Jin2lq0X!bAfJb3y)gJS)&vrHaLpm>W)A|fp@#v<1ATC1jX>ETP5aNLrBx0@7 z8x;xCTZ%NNaSTgC&-kJjXc1S%EL{Yyzca?$DE0k7-tg-p=Cpv*&J|9O1vrR&u$d^CVW|(v;xl@Qy~Y*ZNOju z4P>}?SREbz933B9us3F#yZ4f@&vB_9fBXOfr1uhQO4R}Q#(w}&)M4G->jpZ8t7yWY z$5GFmw&!v;AOVsaNl-3f+dXHy_2Q8gVi-2Y4K;?Zi?4B6{?1NAfr{IpLFD(leu)@I z67EgR{|0bW{0(p%{s(}=y<6ZO#Be*z@M#ZW%<`5yZ)K)}Lx)9B6qqG%b~s+}cI)Nc z5i&kNCau$duXRk#e{ZlK2hIWC8wI@gQn1%?XS4Dz1-e1A0|d@s{@d>GHp8Llmb}

*IWgx?mRSED8`0JEuf6^ba|3zP7YRSJ12{eDO(+X&h1Z_VU zWdHAQ8t~!0hu0e{WPD10Fx>7AUpEhMj7Y;cX?QJuXsLvxWJz*{JcpvQ^R~`}QPm<& z*_0x;&0NfK+K*M+BC^Gv7hj7em6UP)oYV7YqhFOSA{CrCwxWI0Fi3n(*IQk!QFq1tgxR4itZ&s4;{dtT1_{~` zS6IU#r9!N?9+Tp+TeP{Hfb$g=fqp5Tm8}#E8XX6#rw>Asg0Pqk`5KJQ=o~;nDJfT3 zAUC1I9m&$J3hl_E&X}TVZ!goTSDhNoVPv#x%Bu|?9Y0AG8N%dLbLw2b;!fz^by0;z zmuP7|I8@B90d)?Lshoh&paia$$)ov7jmqK4Ruf}^;pdMXjIDzc3YAe>+R$1n?zRl{ zcepqf@8TxrXg@hh*7c0^8JEV#aG9CwShFevhQ?lIy;&^*>}K*|cJ-`GU!yI5Ni0|D zQfN?4k43!Nc~l~79;9e}0G_YEtsavTMoLQFf10y^YSJ#lw$lQkL&r(hN}H;*#kgX1 z?POR}s&%fEBX$i>c1cQ(ez_d6$Uz>lEs(C1Bkep$%E&-tOg%9-N5uK6m8P&LY-*l; zvgRC*)PCAfA9CoycB#u?X?~1Qyo~mB*l0T|AiS5D4F~jvaoPwX7c;nbgp?ELviE4h z==Uz5sq9xm=oAZ%wxl9LF(1N^_Of&85(fda%57@zkAG1y1F3MLep4|=4w`J&O>>z7 zZL)s#U?%dkH5vJ){$wDXos7vRcCGcHLxjDK)l4JhqoDtd(NkL+9Ewt-IFVyU zOPl#Vlc${x3doq440$~m<*dMaq7j}PUR!@8PAP~PX&CaoW_-#%-!Mxsx9qZbt4V>s zXqZd8Dz~K!Fl~GHxo`b@yViVEvNKnb2!DwF;ZnP@_>|th=I}Sl;9$sjZE@7Fpy+BLI{OyH%GoA~KsC_G3L_-p))2&KD0A`YQ&|)emyoQ zfsl8aXq9>klxi^afV0U#K$AkL()VKqM9giUO&Ho6a9Z}Q_6mR!NfeGBY2A5)YiV42 z9)cRRtvqF^u#yON>Go3>7uuA%ohYOq7J>jLxap>KmQr3}i3%=l4<0S5+7Yzcr!HxQ zt=zul97g3%$g%hNSIDsYF*($xnLrY`niFa@h&@h3&%Pk zY3I<*4^@k>m@=+8C3#@pCp;n{2Erj&&FJ@tw98Wi8FeSc6IfLLRsoOvr;3oCYXXG| zWsPcUm#V-+MIJ=Gw3Y}Y%r}>1{!0?k7g~%D%fSd^>EGv<1olao$}{4`&CgL_;*#X; zcj?gfh_&^`3Ex_b9O)ltkig=haF(LumD*ujBNI#jr>ALql{sy1rFS-)U=&+73^@t> z26&vjfKUlB*oI4f^1VKTWl9C$GpaUBfG~dp>HZtY?l;i9 z-$bXcRNkBAA`DH`Mwxjezb$s$9|-&vz`4bd$rhak_}-6Hg?a@xO%m=RD=ruVhGsqj zBk2yVDHP*aNI^%a@DCptk^yW44Q>U@UV1pu7`X0Q9c17(LInELLF<_DqN9={>?;0% zVDds?sXT?k+-CJs0bm?z$rH(+4vdhgrjlNpaGcp9W~G3c7}PCMdJgaOBxI}%!;rZX zDUJv8CL$++6oqpkg>1?aJq5{K7f@Xd|&wBf+P>UulFt z#I>J1*DiI2K6(N*cYeio zkEs^Eetz%G`hITKdu!u9h24*gZ2{-Lejb8`9cAC{+zU$HdEQONofC(1f-^!}QujUm zT07m=_MM&jGj7kUZaq)ARu&Ty6%Qq8iMX$84GlxHS93$x2A6*LRU=-lzwKRqWSSo4 ztFd?F-o}Y<3?FB5w;;X#T z%6GG_)?C*+R+s5=xv8P&zAqh{w%9~DiF`7iFN_jDUj5#eHuUTH1?&m?_DcrWu6IDe+2ziP4-(6n#HY@Mj+iSKMT#+jlYDQlvs=6!D#Dpdm+ZTMCEZUY&E!!7J zy;yk(WT%CSuvz^cYu7B1peu$KUfVNoHw;JByP2}Lw)mzd%O0z5eq5WpK6*Q~z1?jQ z)!(P_+_11bzWLU@-u3@l?Ylo`-Eep!TT%`W(A3!K#Co#7|K_emU~hJ5)h)N!Z1$j9 zF)XYEdR!6(BKx&l}1Q|aJ~!LC&`J7+^U=G>ACX770gG55jOHHfGyXQL+s*mSfFY{CIHvEAJYd1>Llbv^D# zA#ik8-%XFN-r7mkWoF-{wHsos4IZBE-u`6VhvX_gPJg_(bDVaY6AR3EtKG6!xzjZr zcZ9K(V5(7!+_2UJM4NE?%4=_KY_(Jj>v$C;yjBhMF-=E??#~?nj|z4^yF3mXl*i|A zxe>+Sm-_a=dhVAj9G1N5_k|L9&_7Xt_nQAGS+F+*noVlZvv$s3l;tL z;Mi$c?KaLQn8*m}HF;VH7Nl5P1gAx|tP5F*YFiJsh~cK|D=WTM?JpAes@a3vD@kt@ z?eOtn+eeL$HI$~DAgv$cG-kp$&h?}HP$*ih`jy zubX1`_n?18{~qK%X$Oj5T>2ZO@i+V*D1RUDca;BK1rA3Gq{G+zRWNS3S$j}?D619_ zq@Z9R7{@=f{v~M@?3e)+02~Gj9A@*^upWRt{5G>h({G#&Fm8nJzj6LP;BTI5B^x2< zbxAjY!_a`kep^GbajKAhLb|)Yig^y%C)wAfe5sL6>;Uogp7&!AVrUt^1s^_Pz|feU zrZr00MZ7U;cyt=Rm-g2U#AorUh@GyO+$ky*0w6@$Y#F^DzMO^b?`Mtm-J?h0Nej7; z`);~&yFQ)qwt2rF+I&B@x#OrB-s6HVaT`a*etU3#ggJHc`uVz^)rHBQ)xP=sld&4Q zx!o)xyP6PTw@t`p?*x%BYJO{F-#|ft*=%d_7O%PDH8#?$@~w@rbLaLd*5~Kw;lk7S zk!qpGw#eOZ`8DxTk|&WSDvN~ryY1Wl(b#dt47=|> zn?L-g=G>A}InEqz5A1S$#UJO+r&Iab)&d-=GspAcFv?6YCksQt zOfWmk%j5v5~7J5;`sH&0%Tkv585TrXN@%8`_>dE z*o=fZpxFS)Di3SHp0ijlCf@xwgjJbCd}%!2#@P|JOH0{Ga7%QtOosz``5f;_5G zhYxy#)_$Ob_lUgI!R&ush|z%g=#;q^gB*s*RVDW*L>)-#CHJru3|tNg71aT~89`$c{K z{@qQhtfN~vDz+pG_MNHwH{_G>3q2!lhRfFJl1gW9LT85>&K#R>_NHzyDk$uLPv!*9 z(>$L><$j}zhy=Gk!Z=N!?t_so!zj5<#n!2?LO*)Q1PQrYwy)sgoA2DKY~&jRjR`Dv zDK-uLSR}YF`!e}1(^K4akeb_@?1J;nr0@RQ>K9LM2H#yI58OdmjEkiPPaT0gkCU+082Y=-U2?6f?d68Pis`Bp=HP<_FMQ}xMxftn1N zmFgryNK|ja-oqGkvSVlUA!{G|E?<$-`*bviW<_b^$7zor7i%dQQ8RkCmImyGpkH|C z0?H0j1{ZIeYn*u3R0C7(OHAZ~fcwCj*4&_kE{_`8aMOzD@; zNvKOR4PI`i^6N#G@7OYW;ke@bh|m_;yJ$aoPixHXh_3Ux+V=?J4Bme?>t(iRGU9=K zc55sc@`}qb|2p}}!cAd;Q8BIH;Ck&2Ni_g4fq%YAjpZqs^XO0TqktPcFACr7#kY{O zfO7}gEk_=?9&b-hXi!EUr%$kXoc^Gi`p|>1y9P2+gs`^jtX{Ve|2*mRu1B4l3NAu|7B8TW+3UUaEke+!3yOH@U6fN{-rQK08B$-M>>I3{;XgxW*>_ z(&5Iz>-g^UJ>ZPJ*WP`iRp^_oN{R+j*t(<3W66Q-c;}t+7@}%b#28^?(Dx1jH_Fx_mryR*duT8{V zc_M@-ZRhIyvCF#y+V{uw-;|M}LoM*}MTu5)LMWTJ`vZGIPho7G{eD+5cS`v~K2C}@ zFFpKQ*;9&xmuL6h9YoLG9r}-8NxV}pD8renY=Xz{EM!gLBzzK&r#J~kCQHb!9GM5g zj+<{UPCqBcwtkGY<0t+6jDmjPB^N!x$_ho5DN9ZY6E6LUgzC^g{Q(>$)XWS;Y_ypO zSH;;>?sou!cM?H8;q~)={BveZYS^MQSy|R?G$?*%1hJ~X3CBSq!Gw{ zRbU+;onHfEj%v=#p+LRNMd#&VY4O(?Ex%bjJ8j&X+?Hratf+h9fx%=|#$MtCqSSeV z%vgYPQZRlF#zhXRXwvWYOHZwyc&w`Kxtg*eEYp_>Luaq9#@O?UNeJ;~jh}b&TKI!@ zvPa&^RRLdXvQ$DYFVtMWUN1a8Gp*a^p`ROU7u*k6?xwg}z9*fx4f;yK-DGa}GMbC6 zZGG>cdsbBSWva8tUg!j1dP=dG<-tgf+Buj`c4~5_ObMNwc&SYLPGc3*T}er>F)R6X z=P+cpoiUZI`yP35pC#Vjd@nmoXtvaoPAe@#7QdSG=E$OIsN9hN6S01IbqNbST%?7{ zx;k*y@xVTh2Q-Y%;F@k``|M|tiwIKbsM-Xt9#vW$XO}9~q%8B{em_DMyLv5M_(uEH z)abJJhnes6MulH_n>XE<)>E!U=~Dd**e?7pw@fVm*U{0pz^Uh5d9d8+SoPL^0)ksV zyIv^ZN;7QPAnh9=R$BT{NW}VgcsB;Eq(s<}+waI@WW`HfedbO`h<&!qH9p#QUw%UX zzf6cUE|)mS!5d}te7Wx9Qp#czd0#3F>ma??wa>vXpo5f+9CG}G%x$;~x0+S+rN^t6 zw+?X*vO9TO*od03@31XV7O9`k{pxm?+4C}IP93uU1o8&@wI!@?2rOM-?h`1(u;Nbp zd>kw|&U@?T^$%%9UFhaie@9)mTqcH_JMld|P|kzMHzy?8=mq~mohuS*)z zE+?b0l>QAP6yG)5k3o`CVhGHgqm6axf!d!&*Rg5pDF@e~?Bp4BJ@?lL7WrCUADA$v zLnQ&SqHtPv#mbjR3`Hr9HvR*xtT3yktJQq2Lp+gi)t%$ZyPKK<2oTruR=((=-YN;l z#rW4VODAg3K`mPaAbXXR;SbpemIXdiaD~hV)w_tREPnA<{;v3f6Aq@7Man{8G zAJk=_rIo625;xe>;EDsYnYADngz&SJY|oH;Gpj+!ZIjoV+tK@STP}zMM}F!>e5+^A zmiQWR6W@8}Hus1kDYm7)c_uKKZFGdJCRh_$wACOxN_3pMQdz|}1 z5AMjetANQ5sMUPH$7a?<|4(y(R$qA+clOm#Pk^^5l9t`lUs6*Y9sZK~vvjqaFM3Ft z!|2YM`3uH%Ov#Y&?shc9W|l42BA}D|+HqeV{K?+YP4V~1w#R_2;Lrbmb^wm3`@Aok z&YbPsSjgZ3-UsmQ-0N^kIj#<5t9i&Wh1{$1g?`ua0=X~x6HHnRWb{q&F0IHvp{@~m zO(lG2fFrRD90}#?8HK8?-pMlFY>l5LjaDns z(!cE6(gyP4Is}@!2Rd>c$~e%Ze=c)&rV#B9`Hd*Ow|o4$^X&4JZO!rK3ftWbY)`uf z``&29lF~Mt%a0hB)fTsUc3o9N>9s1dMPIPef?^*^YA<0zI~wp+evR7Q0|Z6~g!Ibm z*0dT>S0tx_Xu#mDbudvpLY+%mQE5g^#AY-^ZL>g4zss1{gRZZIuAkwPYDvhOkN=HL zzUOq1ziEMgh=9cvsrjk|6o(O9bXliLu0Q8-g{ILV&D-YQ5V+pOK)qQxbuo!j5E5l` zm;!vFcnWP>DQ;8m*Ac{}?QWs!=6o(*aa;T>jV91val=XmE@+n@}a5fEq{u6}GRo1~<< z^VD5uo1rK5^NRAlr!L+S<1wqA%q_k;;AMu%TII@i#Bg7{G1+$snw>@xw7wR!8&ZARurZr zZNXELs!jptgWZ1NB;;|8M9N6)nONoR+U@w-%axAE=_4sd+!+zcb?~6ny~xWCV_F?y z2Jh*$!t8#%F4aM3kLn z7-Mk`@qngtZF03{hUf~w0s^!2*#+;2Mcu!9rXNJuUTEAc42DiN(p(e*gHjxoY+OGy zu`o0l!|eI269I;ah$b>q=NAfDy&igfS*4y;cz<@IyEf#gdnFT@*xWvb#IpXhVK58| z83*BDMTtySJe*jW3@* zLyQK){EF(Cns!WBF*|OP`i<74Q|wuR63`AhFcP!~@)-gKb*%u_aTaHbUi~Ul4UY_k zy})ICfsW;_&JG6E)fDbN1m-ehFnxgWj|U9CrgNa)tBHUR7!ZV+eiRjjA)aipq^O!| zuk)i=cWN;Z27*a5FQ3!pOtXWxW^*A`+KruSj zfRz%o2-s%kBni2E&kk*fK`61NIhO1-8@8&sH#xei+^Oq}Oc zu3#8Gwh&$$R895})*zkq0T@)x*YSMtr&`J!I8+dv%mC8zT)ugRZ`7uJnUlb?;lGDw zSsMbRQknF}&6hiPb1XU=^{_WCFnYknESBP6&riISwS1c<7WA`WyW=t{^ZjyEn zN4)>ZM@AIFn97w&M;lV&y#6ee)HV74Yc0eCa&BCJUg4fNo4dKq1I~ z_BD)ur{A~kdnH%#eQQsJbQ&;<4~Lq>Pl7|7%u0$tpVUeE{Ukg|GzfAW0!kV|idf-@gScQZ$CJ4a8q)MQwQEKK?R?u|hJAMp=^ z403!-G#0hwvFOX!=q1|mHnNCC{1jEjjO#|J<&LvQN`V-mH>UE}y##I`P)JI!W+QELvAHAp_`o1z8 zz2nXG(;R(sIHKF#9&8A;aq)-=1B(u$i({LYGn>I-W7TTlyqe8D&`c7O;l)V$$KA$XX3uI1K(LO6Mx^=pIF8GK0r@(ap=ug}BGt7~AL1 z`X43dDBZqE-S4-if-s++pg1cx^NYE@Qo1M;KUUx*KNl;EOT^lH1mX=}q~)Q- zFtaf-u+K1ajLx-vP8jrYlk<23x|W{RlaY1vvhnk!rq0uDu+_*<$tg5C`XlnESMbA0X5xoAuKlM2H z;mVS?B3@ijXrDgbo81;kZKpl%?;XPPJ`Xh_(kf_Je^LJCzAG{qMDa+{aqBHAs3l7S zItUL^sa2x{UV|EbLgMrLV8w^lKRKxDNF$qEN)|gCYZDV4TY5zbR3nDTmk>mi(AZ1p zTjI7~*>C>r;t#r&i_459c-_)IEBRKI_l}jRrGb1<9Lr|?J(sr@9`zKt=C8RR7&Q69 z@`UJ>j%SMM?ZLXKJqXUYhiv0!Z@POUIEHaDu%B6)uuD;HbK)HzVmZXv zU4|*c%^yL)GeRw)FmNa{oqDw;v`DZDwVv3*%~57ZG9O(+uuc3wRSv_>PwS_D<_NMh zKe<~4m2&$$IM2U;GBb^uMv}PsS1q?nI%@08Fg-26CP7G>rf6p9UT9)X5MhU0)<;aV}3I?NI% zqVO+_e~CC37UlRO0?6wBEh1)EtVy;<|8D`T`LOc{^xZ_}8%1pAC^MHKw0~&1Gx-tv zt5Q=C^pGRYPZKx+bBs^@!lk5{ppX&~=Dq2b?zCTkeE!6T;vmg53Rx|dh%W0Ld!l>= znf*nnaDfH`tZhdHs3xHaXxu zGuk@1-+5pBP1tB#ko0Qh(&(ACHawcPe=P7ecx%@9%6C1yy-n>4WnCdRnL0^3SY@z$ ztlPJY=SBm@7VZ_!LZ%G_FP}1o2F{(9BlF4;&4=+BMU9l58$uhn3B#%_9Pze;Fum6+ zl~ged?lwe4uX%-q5x}I0wMnWxU+Q+-2#IOEFIShnKHj%uX1<8Ee2NFlJEDX1J8VgI z+ZAzy$Ig^+gm>dn`0A(Lr#8bo*9~6(Kj%;!7+G0uq zEg4(bGWbryX%J<7efUoDs-PQ>SUTrUJEj6+dhymV-5HZ_KVhS`4(;pnl5hJf|Cz=r;4`KQ!*a$9G(Ozxessv_tSqpl_1 z5u<7SH%59Q(4!+;;$-aPKPv9%*a-ht;RzaSu5TMYB(3`Te)p>AuKX_@D)}cs9q%sx z*6}{E*~mur{~+O3sFm$E^7x{ds;vL@FDuZ~|5)*){BMY-a-bFH{|_rhjSfRb4xvuM z8k6pwe+xmfFFunf9 zxzhmPk~&sPwB*ah6L0{vwgwozdG6xY$^_Xenf4E(nAqW+xhsF*v(4H_#t^B$;kblK zu8+rG0Dgp7>GK_q&--m$v>u94C`qxxl&qi8sv%vWdr~|7-Umrkp2Bd&d7sWeGCP)o zVMj5SYIKimA`o>BoJ_PXCI}H8ikMRlkYMO2z)WtuK#N(67by;qDuUE}!*Ode!%JCe zPCqXRLMjNo?X2cp_u*$;Ze~G1vEdze6zlW)aSbVk31YALT+Q+Nd>^XhSg- zs`&@CL4tv?4zs!O!uStrb%5r-P)G1miqHQ-Z3s;mSjZH3$icGF#(@gwBtWs2uHGwG z-&Itn_tyk(2rX6)HIzPSl#OI!g@PI* zLI-Q3+3?T}^Cn~NldK3=lU4wzZztMtTYi{MaLQbWRPTvddVa$zAk$Z$o2-rEG!}&d z29Loqd^A~_!Lm`6VKJ^uL*g683zadHU!Js&;+#PSAI3w1X`xtgT;g)0vB~-jG)+`l zLoNFPN4Z5URkw(SVHgh(oEph#d_-N7pQ49tGaQOwj5v(P*nd7&p2fIQj)6R?%1r1Q z&Ka%WR=Vx{zscfZ*u3}ZeNxv5kf|e~edn;(%R0+0+(TUOvsF9sx#9T|!~@MzVHn%Z zT9Kx5I5RPfbyS0?eiwTAwi4VUSosP0xkb`NZ)C8NsfOz-!^5V}n0iXGE38&gr&tW> z^JU_?hq%wHd1#GOQKBHy&%;cF1;6Yho6X#|xp#2ddg0p4d`T`TEp&`#7H?cwMuI=d zUb89&FRLmWwJ0Jm1B(}>^j3a|?=K_~Np69OEbq%jmokPDGNn*5iVdK`lSa2VAVGSj zPDd0|Iv}r5899$M^{kXqNqVTs+ zXq&)wVN6cJL_W3ZZ(?a>kr)}L!kA5I^M?*uP(e-;WTzTH%D`Iiw6vKAkaAL?d z2KGw?Mn7o1(1-~NA7Wml3VvS9BnIws`GqI?fU+t#qHQrY! z%jx_Ml)F`%Jw?zamj!Svpq;Oz7_FV7l@1~24~Z=t5X;UFMPfd2uZ8RvZz$;q+hf^N zD5>{n6h;|g&EZLHZWsZnMVG&bq3WSlpS|dN1T!YyGFmv zOTo~c2LUC)Cl-=brlUV)d(Ai_n4ES+u_jqcre2Dn9?IwNPOelXU+7eIHVb$%Yovwe zU``X%TJyK;H5CL$vExg4`zEzc6`hm*)&LcZ55xT;KnKJ9S@@#i2jU*oZbBUfp;%EO z_q1J#{pEy^4BfV4l9T6iXx@)1@TL%@%b4Jy`$$ByQB5hHc*n{6bR-GzI#VSlxM&fw z?`hJe^mE<1+uBCpg;v(j2*QJBV(QxHl-V9=Axh(02Jwz0d%B_9j$;I9 zNbz8>Wj}VE21yWpJ^MqV#eVV}kftQCXJcaCySe`gX4mliSImTot%B)8Bv@!Pfak(E zaG^m-`>+XS5&5Jg(^@fKv57p-jOeXaa#)30z*M&Tif^%n}R@! zC#`^clQk?DyckG{*JFVpj+9?);1C>3isxzRf+WSUeWJZPcxd(~Z107QFNQbyo};R! z6AgW}@L)i&%K3o;RBxIzWQvYzH<$@ZnxmL@T7sk4_q2FNvCOnY$6-Vm8J=t?l0DbL z$fyLgSo9HAew^WR=08p`i8{2K0O?Bw1TVVWh!wHKuH~{NA#0NCt*J;xsSfT@9o(TI z3GHY=o5L5a;lqX%-DQYsJtLqYQDonl(*7yru18Il_v27F@4+-PrNB$(f6dV40h^gR z8bswH$%GG^1)<0WsA{k)4Mq&E#g%QoK?2SCW_F7BWtwykgf`yM3n|wT3;5vrS!jlM z$IA)_=`8rLwCE{Wo>!kd5^TWz-(krrM70ty{tC;NaZvFig@MjDfK@748Pig)(z#Oj zH(Q7@WM*1b6rHVbGXh;6s1#35xtDceFuG)e23m>f|JP@Jk3mbkMo|noLBoJx6NN1+ zW!SK+f5in!pNTU*p(KbU;K8VHD9u>BqT$+FOH-fmikl%SXhW5uFR( zRHio*b8R@{274=_=WN$7)AbyYE`n4l+B%}nD3fQfYKh7`NXVG)sg?G^=2O>nBhz$5 zXkuT1sHkyaPenPgQ_$k0Pj3jF)`Xj1SfSk*cC7^A+Z!|tyesiGIHQ$^IS=Qm zLN7=pvyFT9JDGs^jmyd+3iXUs;V~$X^{@pz7v;W>h>}fptoTIPg!%HI> z8B#b8$-aNMXd4+)0sbgu#Tu#$2*2p`fUvb%`9@A&Q#c>V`J7%FoC}sy7#5YP-#*gI z&(z#Oj09*|mdG`5nh&2qKJLG%44zju&?;wl%ySu9Zf`mswA343reMajKw|daBa3PX+Lp}*q zKai3+;?M9yj-yPv!_Hm6ziUzbSWJ8?#)t(1eu;AN`2YFOKkuF^`6Y@ImSj1oTmEVE zbIdRBU%30oj7e3%+aNNLex9!al``am*+BX(E4jRX#pBw=_~V7#7|lL%KE`)ag5d!c z0!N@{|0RVy;MWk$-;N2t7F69rQ)iAmCwrWP@O`L3{OuTyNNu+vS6-746XETBIb95l z3)U_4w3hcV!yjU6{wjYYu@DvkWhHhN$2y- z-T(y)iM|fNIAg~BS;F;w^(9g(K{fg_8oV~Mf8^Xk<2wRJV;{NH1Sm%l?hOU$xG7P= zL(`snAGx1%AK84G83@?E=KE~bve6WTbhh3#WOc+dhkx< z&N2%c@(a;wHF$5BMJzQ>X{Sv5#%Iuyfxvl1RhszVWn12n0NHOz!WK+U1w~*(*c8b+ zOZ5Au*+X|BUOV;1Z2X~)P~6V42^kI)6a(kGGQ2h79?O%nQoeAYAY@s98t72DL47}q zHI9T<->(Pd?fOw6!M^w}Zj8G$LrSf~N>BR}EQT7@p;ZVPxV4Q8j@4UXgtIYUpS;r? zQ*jU0tSr_aC2x~+ARw-tXE%?y>OsOfWWiz6)^h_?T{8&*W$OWpz)Om&%u^5tQJ{74 z(liVmz@BZ+GxK#V;_KKgL7S<#|KcWdndf;&@5OBpD8S`Q&M^?C><>)Y-!OWBvS;Nf z!ax6~lYMN30#QWkvfZ)17Yu~P1-KBq8#CX9A$1KlOnr~oMf6)`Ea(3J4E707 z#(Ob8Xcf9>8?rd9qKN%3I_nWzYlN|DKYTo^b8rAIVL8W2m-1umzAXJ#*R_kAP*}Sh zU#v*>I5ybhBLObb1^4)68TsS9f21J#Elw*zBK-#_XTWklPF5X)XXed0b8Bxn3+mMn zC{nMi1CarUwjexc)oMY4nRA?Yp3Mzl7cm3y%s6Idxn+9Fr1b-dA(VA6^WVB&#z33V zgJmE4^3Eh&%tBvkLZKr#W_De0v;{!&%;@1s@yt9S6qhghXhIA15Xw=)({5M@8n}Mx zmDw`+R=UIW&4lUZWKrKqC4OAhAOjL`o46FxtW^e}Ih-+;+w{3Nt8sBa`mQ;>?bnhVJcGfn5%MYX*(q4OeAYT0Ojfj5*jsQTqG{-FQRPR5CArM&N1GON< zS*X@{6l`keF;z4|ttHYjX@|hYol_adAnQSkRAVG+0kxyCvo{NkTa>|WC3i&#*Uj2Y z*gvxrGm`n)>h=56o)AF)=(iX$1(P?74^8I#fe#5>iEob_E%VRUBWI^OCYFyHAG=p| z4Dp2XNn>%R;KqI&)x^P&Pb$)IkG;+{DyI}=SF$veWHX}lXBp~fqkw4uHB?KmgSseV zfVOd-_WpFwb9&A^wpWA|62lIX7S6(;pr7Doq45ILael_QNNtY7H*Jt``(=vs=@Zmh z_VuEyY2YL+u^9((G>mXmT->dj;rv<23~5q&Z!njZnyhAuhWbxPYG6p-vovQkg+dm( zDhrP;*w4HH&R|Dk2oC0S)CUdhU)FvgvfGe~@OET#sqxYxSQ+*365A{BT7kPL0uD)5 zC!ZFegk9;W=V{U*E+NDiLd}Al(MFqYqu)GfE)w#y(+jebmv9(V05md)pLuC@Ewi1K zY1re*5%ujo)06;kDId-?T_G!G$><4Bl)%GrLH2_jFYZWEIHBP9>PUbyS#`D}v&@sC z4h^-Q5*yn9LPt-29welqrTJI ztM@JW`Pne^)SFR>pO&yDr8Sb#EiPwAFJW+-U}oK6icyc_=)GJ!YidRuN!ccw!rOj3bl|~rDwn|;4PAloOV@8dN*HA-(PV*19ab^m5mCrLl72a zX{&GoQ?ZyJ7_Us!cu`dTe(6bw$Z?|lxrLdSoY1Pg$PzAb8~>4zNm=IBQrLKyT&RdK zZngJ0eo+wX8k86Euh+5}#-S=WZ_IvhZleLHp&boZ{NfsH5X-J#vH66R9&aoIZ%O$G zsIzuE%3*U{3#u?cT!KvtyD&od8x8t|)gG?%;RBTm{y6P;MWRx?3gO{WT%qG|Pr;fn zph!yqVI2(V{x1TayG@75WUvDNB0zNn#fynM;lz>S4JNK2M^P4HF`lrPwIE7TMp7mt zAp&py$*IPGsk))D^jNdY4KWk_i% zIFOI@YF042yFg6F+?trPHgKGHd!*@+oZ*}+O@S^+-c7LF$;jk1aADw&Tir=5CI-4r zOIrJ9zkluWswOQ7lU?d4hiA&{i;s_Lq{_VB{6>vHcIEumoi;r`55k^W!2e3jObDE7 zZ6oEvml%`Z5$QO0G)ie#UDHtu;RYTTVhHZ z;1zRX---ceCCSn`{rK?Mf!t3a+%nX2^*OvyNzVet7V}VFINH%`%;NrhQ&@l<@wFkP zcVUL)uL?;M^Ljriryv?=RP|JEvRMMgdRjjj5JUVaL|n$Avpz>$qR0>}x`UX2VIdyS zoGK3ZwEAT|IxC~5YL=lf28cs8>gAV9ozL8DXaPyk^F_d~ZKKpa>G z0mITto28i|qrJlo5C@*kQJ08O$uopT{88DnCqaoCeOky!SXNTh+EZkbz%qD~3Ia<~ z(^H0c>pT$26a{)Han?f9WdsVV;x++B(^PN2fFY__N&o^&s~v@*k(oi6ZzAZ5f$e6f zo+69jKZJ_;vprOvy2z(>LB5(N*gd2?{UnpzqcKkNF#IodxPgDviK6^(b+!mVbv!UV z{%_}){{b^Sd~r!|E&ChD9t#)xemz>gS|?g@z*}97WFOX?>rd2J7tFLd*-mMPI3pdXB73@@>I6KhXjB$eg(06;7&v+ zP}m{gh@40@PrtgvynFuE*XuGorofzy=$?<5Vk`*995@dmMoUk}bw9saX8UTy!IByt z$wF%=$mfsywe$VzK#rjOQiSbtbNsn}h3rZ58>B%l zRBAk&W0H_{WwUPXcY_|%_D5jbAk2n?>5HqO-Du~Z${KZ8C&ecS$*Gh$LD<6?3h|MG zj;}#Qt83UeUGxo3A;(5@*)P+G{L~3pUil$ZFOJ!e%!^$y@tGJ1$D-5b9x>4`RFuS* zi-aO4kT_XN{MkGpQ3)5DXz(!jkkPzeNU~56IaiA@R0J7Elri#09-_a$PsgIUYZ_Qe$_plv(>NFr2ftRNL?Cptc{jMtB5`v&1F zZLN+fKdd42Gn?M%gOTVS&Pqj<1qC96Ut~Pz1#)7ivR10A+En}y3rTve8lW0mjiPU4 zd%qEvxljw*<;tBYC2S!0PCmc^7(Ap%gqU!3f`era((>_!i>OUJTfW0!i%GmZH-+Nn z-n$!;&dRgsX-7p9~aRB8K7)FQ;2iRfX|K+-*zjG%7M56G4%$aAQ; z@c?aS-o=@?7z{dag2w^iOgZX)LTSE>#A^w5b1|nc9I!xx?K`Gt(TBjoOC!S|&)1XHQf%%=hNL{x%X2cM5U$^f&sYDTglf{($vzI-GT zS-I0#sf+)iaeONFp;Vvi%B&%6q~~&Bipg7R-z*}@&gqr2_R=C-)X(*<#Z>OP;H7HJ z55;Y2Q~syCU5UZO78KW&`8FEll=}`ju^Ig-5eWNQ$&GQt45lD8c#-AE1iZdA%1rh> zAdA!ccTDY2cB9ut0a@y=x0})Sj0nG@{cT{K!tWlO`Q_xOkTFUrC`xWm*0kgam|9|u zYPx!c6@`^a5RHhSK}!FEYZJNVS?^b#*LT8$*z$krvs~Q){pa?|Q|%)a5MT?cR^ZQ{ zKDU3hp!#BFtnyzMe9YW{^$-gJ$eefY;9;W5foU}B=R`If!mebIR%Ay4O4b(OW~iB$ zpX^#(I9(4^q-UfR+kSX6OuNzrfA-t6L8+9=kq zgnU8z93C@FW?aG6D1Cwgd{puTZgf5Y;hHAFJU*)NIkkPTP|g;h(21;E-wLz#wU&lx zA?CJ?h9_2LkbSZV6o19@T0|0+ab|Kpu647J@f7+*2~4Sb?9^cv#>_9{?w!~)`9X>& zRDh_-u36csn_*@AG#OW`2Y}Uc%E@6Byuf9|;HzjEGqrIW;_&P*iICIYkM8D#hzMOm zie>YDvSD`z`A^4w^X9vl02`zJh64dX`?q7}z&^mLM#i>(bw}Mw9kBn-LNNN{Ya~rt zwv2633kE9PXlU~k623PGIzc_wM#7bF$HMP#{I+o{SM}0e4|efhSM<{qpn)*BuA)-l zq`V)q&&D4QZ-m-yUlHoZMy1VM#BzOQW+1%;J{7PbEP>SvM~rz-I|eTMspI*g`a0c zfwVWe;CqHg!HD9;YmiCd?D6&Nq)@QM23E1gEKk~bg>R^i8!?CrC$s68D;9I|@Z6 zQ=%HpiXACjq~LhCk$-5?b+JBxBP;&k#YJaHYR-{aLy>K%gkn+|bSsl(D4kZta2gpK zommdLRz2{IZmw<59r9|r!a*Z&sjNXSAcXfUNXLG(6hS4At+2Yy)Vc>9;r^{V{#ieO z&jVE8Uex?h?FOuD_woBBjGI>vVqI;8F1JAY&_!vah8HY*o{6U$D}K7Tx|8<0wOr#99uoD2Gf0cg7$I<5wEj%RA|x>)sy%vp8WA!R(GjFt@^vFhK`2=srQ1ZDr434 z`woy`%rgx?j=n~Gb9+terMf8dlCPDh{CfL8`oboQkhPBjTT*w?fq-EC`;>IGG_x~f z{_Dv4SBEogd0-1roZg=rD4mB(FB@)=o#K~kS1YB6Xle8mPGlr4&iGd$Zb)cFNVcaFe$RY(nC$5l}Sa)nPc%uBqx+w_zzOpqBvjKyEQQ~$5 z2IBHgltA3OYt2B=0=v;Nl#?VypNXu&)ApGw-UU^rc4%p?!Xh2_1-=@( z{3p>xntFMQq7A!DOFZ06b3yr!JFh1DVk;_3-N3gVA2iICGvP%NG?v0cb5>c|#%AUD zx}qhiYrd;VNcRuOj*`+ zTZt`BBBpi;6=kC7{oWz*8}SPirb*XsdZ&;hUPe3efr9(qY$_ycrG=V;l_&LHsj(sN z`{A8&37U@*Veq-td8pjzR_p*k>vahT?c>N%+a%{^`d!8fx{@~!T|a{>+i|Ynh^x-I7na; zBh;GhT}%kYa+vfjL+Lh+!$ln;h8j~mD3|kcn4yp=MJwNg zXGPtFhIUxaA`kg2kUi@ht>K(agxWbLGNzSQ?_1*DT2#(bkv8|Uxv-|2=KElvL-|(Z z3OAPPeo#zgW*uVUCbe&r0*kG2eC#CYGT7qtL?zTy!9pI*v|y}-)=62W#Bco z+Nm~A*|q2kP|;EH<6Gf8x+$$pw}_>cT<4RNRV`{(%i2rYDL>VsPA5?IEIB^6vPgIu z)3vy9n9y~(lA&z4<$$wLptpjTxScEU@ug3JYq`Dmn+8{%rAMZJ7=$fvQ>{3r%${?%02I!y~i$VeqI+FCVB+tyJ(e~?)#j-D1aJ*SeP+VK9| zv8~PtCZi8;2_;=Zc>dZgrD9U*i>eRk8J?2jjDI#u=L1C~mVxD-hXF|KpBM|oi$>%Q z2id912q0ImFH6G2d1*OETOe5t?}(85=ZK1u6&D&kEmm9}nVv{BuFbL9*zvC5hV2RC zvTLN7#A>-_997VnBkfQy8&X4MkjI+RP#_THh#ND9wiAS_b^Ug92u+=)m75ZZ574 zcA9p!%vP>uc7J{B)kHVI4YFW>{PY!{NSr9;3&&VgMxjP6fUA{$`3{xXomg!Au^ryG z>+!{L?AT8J9gLWR56~tq?cxaMeI)@P{&{~ae2)@x5h4PeU5jF=Vj-#J*6smGssN5n zH!*>6pv#K21fd=bX5mpw?~1r*|O5if~G+82@P!hvm&Bl(b>V# z<*!lAiEpqEV!;sq(mQy!Kf#(0VTlng1ww1HETc#0;ZJExz9AM<`R*;x$7wS5rPlR& znV&%DDA?YxdXA2Io{9oSwTizWG`qWxlY@Mmua-~H3X-=Yh;odK$JKquX{=@uiV2D0 zj_4?3=Js^6+hV$vT*{u?3+iY{AAcf8Xr|wFCkl&hiwP~+#0iJ0TCZEycN~`d2NrNw zsq?EEw^OE>(&r18g*mqM>r>fubq>3IJ*_+ir546MCsdMVz{{0S$ad{vM9ua{_yLgUel9G+23V7c0A_dpS##LC*%_NT1FJHBvb!10 zE&F{QoSvOB;RFfYmWU({2#)4LVRgM23G$YE5GtJd^Sp6Zmd$I~E0Y=e>Kvi+NOn0i z_o*0kza8FpAHXZ*uh*NP#BHPq3>U8JAf2)uQHEpL>6L@`pJ}I5mp_$Z*U`|v&9(ap zTYc=k$Ibpm-B^G`qpK^U(d7G1eY^HuDkIvKKZZMe@F8_y^Cr3O&~Cb7MuVP!+HxeGMq!ZI71f_1{ zP{N5yaUYUOlZZn@asG02MZI2Wz)5AffR$XW-%?UKWBS7R{&Q4;Sh#HDG$}ig1FbO| z{VY~^c_6PWHxKXmO0qm8H>LDdr~+4)g8$C9hYWvjP6AkFTEC1SnhE+k3y5!!v6hi= zPSUUrs|@tKUw=K#6!T(!*#c|`LGDmVa&5+5Mf9laR-(TmY3$9Ptt_~Y2sjuPBB8`c zD%gxd>Y}J6D0i3TNnPl-P`68!_&2F@GnXuf&m-W?{&Z(xR#XnXNOtiaLT_KM%g55j4CdI=|@CPdH8k&&5cVb=fuP{ zx9muCF5VqHMKW@4H`edgJqk~lN1&)0EMi7-e*<`2bw5O-u70-|UpW3W?xJcqi5ZC{ z3cyF`k(M;3p1l*UOzGQIO{?vd_E>!wgth6J+q>?$k<%B8>ACs513jRpp*MOM;w{b$ zWuJq|_q_+bcOU|V!yOEv-}GEwyE%U(6@_A!?(P1E-}?trGjW7*I8RcAI%iD73)Zbq zK0JW!RLttd9E`mpuK`mv5}56VIDMfy*gU?P&Qd5`_xT><^h06J1nbkz4BuUg9`|pU zUMMPqp5q!PsADCLi&NoDpHDluUAHZ27Oyb1NOHBIF?u01=!KV;K)}b}LxKiX)Ytv#p?B-ra<$y@iRRbm(};uWUgYyI;T+SBzg2qDx)upseqh>7m&v=0iTZs3{}@`C&l?dK4o!X zNoW*!44hFi>sw9%3kZMI7|065n;&)LGr(C8gbLDgoV)`+p$+5)^owRPsH?@C{v1PC!o?4< zTvFq}@tNe+s_yhVz7%FP4o(2Qb7s`Qm5XP58)=?;nrWTFzBSV1I1OfC;OUnvOJ)M& z@e5=a>9g(OuTe#;C=qqsP(NHN3cNs#k!rT6Q+Z9ghprmc$n(N|{4`q?f14f(iQ`#E z#VbG>hIx)8YOBp|Z=6?Y1qz^dj4^N67(cBT>Y1hRrCr&=FglKM{N75$^oBY}$h(7m zg5xAc68PK@^928lV^GY1l}DeJS!s96QzK|of)|Fa(K$&t-jq;>F8Ym*)1p=dCYf*f z*XDNpW%yD5BQ$slrnQ_g3Pp*;2-9!t$)yg{)M#d<9NARwH_E5d0n-5(j>5^_vjP%s+gl&wi{14-+Z)(n}x$s*6yxA%jpCr^(jrPhCE7D zdmgkiM6rC~%J^tp?!bJD?YgB1@G8`x46sGhTZ{&0kkqrf^QHBOzo}G|#lJHz&?HQuX!`*Z$uJCO=;{ zOLmuDy5c6=9xb(E?f*(tp(LW1qkG&&if1 z`-Ah3tQPMw*xoQHQ2Ab+D!-;?^Ao9EAEzB`J#TlVby7+A+84a*&ihqlsJCpLI$djF zZPcMGyR3gV??p-bY zzQ3`2{T1o;)2i5BZ)IR?K5B5w;9x+GMD~o76&^>7QzVOcQ`{+an*Gn0&u-f1RC8~_}3)Zb-nQZ%Fp5fUiTr56a-bS5GDjmK}>1-F?FQ{^fFVVVhuJ+mCkeWWr zjNjbzBH4wvJr!)YuG+9>CTBF?yiVmfmKU?0_I3DfG@hThk72@|pOvrHmvGPXUB2jI zcSYPwbEcSk0=@t4O7_OxYx?NV^oGynx5KurKlUZ-c_E{e$MyIdg0scOVZMMWv1F@ews38_p)<)s;|9i zI#j*p=(b6hjH)Y3ecwJ({ZVyS?qKx$&+Df=@dz$H{pwn~T-}q4TVKmn*F0Xfd|utN zo6qOfFDyQNZF*c?>h0C*_x`+g+xlMR_Uz~D`t9z0K6$V9xBcHYrw_+}m9eZ^^S$E! z%lvaSzwdtkn_h2G|M1cJ{jtCP_S^qoRBCvDcZyv`>UO|D15k{CA=()@7@V3{5+71okXjrIYMr4QP^sqa@B^sy9&j9)8>Smb zH!vOp8UbnJgPZo~8avv!gEN6jE&??QqG)^$6oJ=0$@xX#k!W=7UvA$Pe+|^0!@|HI zfTFz~C<51>SWtk?)ukOgc^$y2?uH(^u!AphPY5x27VNicJo3_DlVzaNd-?=qK5(cfs!!&4UEOM zD4NlZmqa%QeV!Cy&XXdTIY^Tz=-SaIUJ%+Zl|i+mO~as@fIbm{FoC54Y68l%1iF6o zQDcPu=~Ynu=wry}Mxgh<5k^dC#M&E2Hvqk(i!dOg3E2Q_-ClIF(EE-Evl5$;%|h)- zqML%=)k2t3(E<$>l#Um=e)RSrLceeaQWisP9R_%_0&@^3R|zsC0<#BeABYD4a83c7 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParamConfig.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParamConfig.scala deleted file mode 100644 index 10b9de49d..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param/ScoredTweetsParamConfig.scala +++ /dev/null @@ -1,89 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.param - -import com.twitter.home_mixer.param.decider.DeciderKey -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam._ -import com.twitter.product_mixer.core.product.ProductParamConfig -import com.twitter.servo.decider.DeciderKeyName -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class ScoredTweetsParamConfig @Inject() () extends ProductParamConfig { - override val enabledDeciderKey: DeciderKeyName = DeciderKey.EnableScoredTweetsProduct - override val supportedClientFSName: String = SupportedClientFSName - - override val booleanDeciderOverrides = Seq( - CandidatePipeline.EnableBackfillParam, - CandidatePipeline.EnableTweetMixerParam, - CandidatePipeline.EnableFrsParam, - CandidatePipeline.EnableInNetworkParam, - CandidatePipeline.EnableListsParam, - CandidatePipeline.EnablePopularVideosParam, - CandidatePipeline.EnableUtegParam, - ScoredTweetsParam.EnableSimClustersSimilarityFeatureHydrationDeciderParam - ) - - override val booleanFSOverrides = Seq( - EnableBackfillCandidatePipelineParam, - EnableScribeScoredCandidatesParam - ) - - override val boundedIntFSOverrides = Seq( - CachedScoredTweets.MinCachedTweetsParam, - MaxInNetworkResultsParam, - MaxOutOfNetworkResultsParam, - QualityFactor.BackfillMaxTweetsToScoreParam, - QualityFactor.TweetMixerMaxTweetsToScoreParam, - QualityFactor.FrsMaxTweetsToScoreParam, - QualityFactor.InNetworkMaxTweetsToScoreParam, - QualityFactor.ListsMaxTweetsToScoreParam, - QualityFactor.PopularVideosMaxTweetsToScoreParam, - QualityFactor.UtegMaxTweetsToScoreParam, - ServerMaxResultsParam - ) - - override val boundedDurationFSOverrides = Seq( - CachedScoredTweets.TTLParam - ) - - override val stringFSOverrides = Seq( - Scoring.HomeModelParam, - EarlybirdTensorflowModel.InNetworkParam, - EarlybirdTensorflowModel.FrsParam, - EarlybirdTensorflowModel.UtegParam - ) - - override val boundedDoubleFSOverrides = Seq( - BlueVerifiedAuthorInNetworkMultiplierParam, - BlueVerifiedAuthorOutOfNetworkMultiplierParam, - CreatorInNetworkMultiplierParam, - CreatorOutOfNetworkMultiplierParam, - OutOfNetworkScaleFactorParam, - // Model Weights - Scoring.ModelWeights.FavParam, - Scoring.ModelWeights.ReplyParam, - Scoring.ModelWeights.RetweetParam, - Scoring.ModelWeights.GoodClickParam, - Scoring.ModelWeights.GoodClickV2Param, - Scoring.ModelWeights.GoodProfileClickParam, - Scoring.ModelWeights.ReplyEngagedByAuthorParam, - Scoring.ModelWeights.VideoPlayback50Param, - Scoring.ModelWeights.ReportParam, - Scoring.ModelWeights.NegativeFeedbackV2Param, - Scoring.ModelWeights.TweetDetailDwellParam, - Scoring.ModelWeights.ProfileDwelledParam, - Scoring.ModelWeights.BookmarkParam, - Scoring.ModelWeights.ShareParam, - Scoring.ModelWeights.ShareMenuClickParam, - Scoring.ModelWeights.StrongNegativeFeedbackParam, - Scoring.ModelWeights.WeakNegativeFeedbackParam - ) - - override val longSetFSOverrides = Seq( - CompetitorSetParam - ) - - override val stringSeqFSOverrides = Seq( - CompetitorURLSeqParam - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/BUILD.bazel deleted file mode 100644 index 15fc94f47..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/BUILD.bazel +++ /dev/null @@ -1,23 +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/product/scored_tweets/feature_hydrator", - "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", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util/earlybird", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/transformer", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "src/thrift/com/twitter/timelineranker:thrift-scala", - "timelineranker/common/src/main/scala/com/twitter/timelineranker/model", - "timelines:util", - "timelines/src/main/scala/com/twitter/timelines/common/model", - "timelines/src/main/scala/com/twitter/timelines/earlybird/common/options", - "timelines/src/main/scala/com/twitter/timelines/earlybird/common/utils", - "timelines/src/main/scala/com/twitter/timelines/model/candidate", - "timelineservice/common:model", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..b3ed61fcd5d00326f1f37144c6c86df284e96065 GIT binary patch literal 36983 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

`ocYhkZbfR9O%g4`OM=< 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 um} -import com.twitter.home_mixer.model.HomeFeatures.UserStateFeature -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.FrsSeedUserIdsFeature -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam -import com.twitter.home_mixer.product.scored_tweets.query_transformer.TimelineRankerFrsQueryTransformer._ -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineQueryTransformer -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.quality_factor.HasQualityFactorStatus -import com.twitter.timelineranker.{thriftscala => t} -import com.twitter.timelines.common.model.TweetKindOption -import com.twitter.timelines.model.candidate.CandidateTweetSourceId - -object TimelineRankerFrsQueryTransformer { - private val DefaultSinceDuration = 24.hours - private val ExpandedSinceDuration = 48.hours - private val MaxTweetsToFetch = 100 - - private val tweetKindOptions: TweetKindOption.ValueSet = - TweetKindOption(includeOriginalTweetsAndQuotes = true) - - private val UserStatesForExtendedSinceDuration: Set[um.UserState] = Set( - um.UserState.Light, - um.UserState.MediumNonTweeter, - um.UserState.MediumTweeter, - um.UserState.NearZero, - um.UserState.New, - um.UserState.VeryLight - ) -} - -case class TimelineRankerFrsQueryTransformer[ - Query <: PipelineQuery with HasQualityFactorStatus with HasDeviceContext -]( - override val candidatePipelineIdentifier: CandidatePipelineIdentifier, - override val maxTweetsToFetch: Int = MaxTweetsToFetch) - extends CandidatePipelineQueryTransformer[Query, t.RecapQuery] - with TimelineRankerQueryTransformer[Query] { - - override val candidateTweetSourceId = CandidateTweetSourceId.FrsTweet - override val options = tweetKindOptions - - override def getTensorflowModel(query: Query): Option[String] = { - Some(query.params(ScoredTweetsParam.EarlybirdTensorflowModel.FrsParam)) - } - - override def seedAuthorIds(query: Query): Option[Seq[Long]] = { - query.features.flatMap(_.getOrElse(FrsSeedUserIdsFeature, None)) - } - - override def transform(input: Query): t.RecapQuery = { - val userState = input.features.get.getOrElse(UserStateFeature, None) - - val sinceDuration = - if (userState.exists(UserStatesForExtendedSinceDuration.contains)) ExpandedSinceDuration - else DefaultSinceDuration - - buildTimelineRankerQuery(input, sinceDuration).toThriftRecapQuery - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerInNetworkQueryTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerInNetworkQueryTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..d797937e7d322c4b71937fab4c50640327e2e9b7 GIT binary patch literal 37586 zcmagFWmp{9wm*!!dvJGm2`+))?h-U;<4)tj-5r9vySqaO?iM5v-2LB~nRCv}x%a;B zm*QdXwSKZzb?sf%)k?CEP*`AKU~pitX*^n$Dur=L;9y{5FkoPqpiy0MfSt3MowK2u zhrOATKC`>6O=FV0;;IPRm$Mh_WELS(FL6}tvK@O`d&W3?iRz3SUhO586FG>7y9xd< z^%!!u{PnNQr{+9+l5u1*i_*J9bAvE7 zEt%f$rn$jccWe6j4Kaex#By~4lC&PcqG>8)G%!epg5gvI$Dl*2^JjSSIwkQ)^^dXCSos^QMLwovTZIF=~h(aH@5kWT!tVGkXY`t@&mrkbAtU!SK05 zM>|^0$MPsp8sGCy93}I(CxDKoo=iUxCY`+_rqVm;uK(_it}upD=wT_;;BIbK-gZLW zZv^!Vm%4DRO1o%G@+b!%&zr-MIJwVFZjkOWpM-)>hlHUZt-r{C*Zl>`)BY#u6})>S z|EfFb=gy)%m(_r;CUT6)bhBpZo~PhURxBBsoG=Y}ceNQLt5E?Vj8RF=@!!s#VGINLQbU&zQOSYjx$3Dh*!o)5@d?A6+&yJ%=PT!Tx7 z@9-ycSKA5Fwn>k;p+FHaqrT%d*B}*Q*uWgrrK>-k5v>xFFr>GYMkxs@O+dd!bf(pG z@nM<;zyPG=nz+J?D_eiqxP{*fH#tii`H39G+M}zcDVVb1@)n@TIAC6j%N$Hcm&LYb z;xodtM?$E{hLp)* z)0bNa<);{^$=V zSSET&9(Y*tz$dvW1E|@ha`-^UZ5t?8{3;#Aox=@XHvH8l(@Tj3{8jt-mCu8{iWNX;QgD9P{gW=={f zL;~{Q)^uGr00V`!!*g>xYfMg5e!|YCEgUtNFHPgTG%25end^Bd!)}5WA@Es=ch?t| zY#E6%SjD25P%>@O-x<3mzaG~6zI}Low?xQr&vOBVcVvNLKsW0q{`%Z^N$}6UT(7R; z9)tQ~0|f?#_V>PgvbX=EEo$R-tE^}pPYh7{&f%7@qRM#j0Slrt;_LV|@tMtYW8@#> zpjz2>fIbhQ*nD4DZo&lW1)dtlo)$&TVH*@at7DHpd>v78SVw5A4j5CL;OE zwf27CJV~i>X(LscRWZCA@}>H7xkt&gAlHZ8nP@ z1Z+l~=M$fytPs7NZ|Y2cqUT!J>f*kir4TtLX0*SYMY}hZiZK@)A-DJpA&<(|%SBW}=8C;c^=~ zrO(uikYw$6P5H+i<_a>wsv#Q6WTGcy5&{Mjx>L=A1Mx*2eFfbp>>Mt9bXThFU|=iw z9)Jcq(OM8s>4U4z4$0kT{1-Il3tP5>tp^uD#3MHtUSLZ-JaNhiyv@sKy}yZYxi|Y(Rs7 zX;A$6fpr5onzDdCwJx@x#p(B%F{xv#y2^|83hWk3K&6^cqUqq=Tl+GF9Gl#luM~gV z?~)oxUX6*Z>qx~1zu5W)WLTaepi99Zyce-KHoLnxTAr_(SasXwB^Ospmz`N#xjE8> zf=U3#ec4|)P&nS(#+msN?kA-p;&hC2z0jV&xe@&=QpXAN3GO4>3JFz(_B*_U`^I#0 z$k5VT?JjO9w4)-{YHo6au}2@7nUl+9BIp?G?v8H6 zz4wjDcbUo4{CcL8%2M&Y)qFDZ?7sh?8j~y879@6XvNq$QHvTgCu`DQO+?}uY)4@Gl z56O@+o7M&oH)OhD_&Y1?*yY58wI3)3@}fb0h2J2v#gW?D+S>|)wYLQ4UfvNsGc{7nxiJXSllLYZYZ^=+5=9BCvBsF=^a|H+u zckh%Nk+~$ti$rKe%0BP<+7D_3 zrN4Y2%}2twL!RBCoR;TC7E^tVs1vrRp{?MOD8w)ZLq6jKB#gobaYo5yAWm#tO=fbA zZh#Lhs0qSoYl=GXE7;ePY6UsiwpZ!-VE4R|}(?Xn@=7>&rcv_WtZ( z;ry6~3}a}PSFZC_8NN3-@;g`+X&CS4IXg83fehuelb4J+k39FB-Pf$z15|YHkA=&> ztaGA~wQ$p$-NVwGb7~Fc>KxYN%W5X{>@VQ?2NyZBsZSR_v)eE%GMQt0`d+;DB+5qf z`5d5~bH36B=hKx$m2Y%x#E8sq=KhdUkLE5pLEJ}<{xH2bTmNh^`QvIk3^yMiE}~?i zoZ8S(wxMuV(m-NAN^!poE8yXmA0x{eItW@zrzV$2@D z6ZW{1JzR~Z)mY9NtK8#loI4%BG;9BC$7vN;S*#I{bc2qhKKi z(5_4QeicGoh>t!#7^_BOer+_-I5YoNo$^bQM7;Ie>gu?n^~W#BEoHK(<=N};w<^TY zvQ48C9@|8G{yW7S3OEZ-SP@7O&g#3&d!>&YS4)afUK8_d?>>}R%`bynSFI8RW9W1pHe=EMXsk?5JTU!^Xx=gv8$pA4y9D%ztr*QKxj+M#HW4=$;o#1Y$v~%tZKRJtgzk^ zUQc)G-BPI622}GTJ#i_;zz|O6dCnYk*+hFi$96wCDdUuNQ@32&HkC z3E9taZ)7>PYrbFtCgIjCo+8d(Sd*!`4S8A25h2P;RhO6nS17WWaEFgb%UXF{^TV-V-+3yAKPinZj?+qs#=g;-Ebq$oOf?kWL*RFof7Uvx z97iC61q{qU9U2VvU$u5}_OLN?`n~Le?&T78r0RUSyT9feKL4)SWn&oL*4zEor)Ba8XwEz>je6;ag^xxG_w-a%wAq{d^>E;fQBT| z884^nJpJ9sU9Gxj8c)TOr&sL&;0vC&z{CEjyUuBL^6HD-%V~!2;xOR#A?EGjY4I$& zSh)FkSO5ND{h~c(zWwQ7_UBD|NXYJy$4lM&SKGI?jbIkw3W-5-@%eQBK}gEp_W0^? zbNS2o@nwU@nhj5}FiAykPp9G+zR<|Jw`w`u;Bxk`m$sej;-@bPpK?Q@tv!^G`qo&+!+<3pubV&vA$S?!`HJw-$_P&tj;e@41 zlzF?G{+~6QK2=yI+E&KTDT@bt4o(#~1tpI$=;y6Zi=VF4=&T0PEbar}I`pd+rk_q` zAMNiPUWR3EuY^y|gff+-8ujPr&inVTu6~~OJ7sb*1h*0vYDT^F@4J@~XI{~&2O=(i z+qrLB12l4$U+L<1fetYa`lll ziDxykn2*xR(j^!wi5%rYjC)uNWU@?)AK~H^+PW)zHwjtpHO4xIu@)*i*fR3Lm2EC^ znqNxsQ+2`_U!T@3I|ZuF1`3wLYuGq8WtOyTcM{MFxFJ8nsbnBfLG>O;IFKDB91toMqk1&Z{;=~5Tc0d>8{+|2{n#B3nB-Az~09^F1 z_^L*HDrP7a55$o^nGJ}4VV`iugHlOBaddyA>VVLKLAd`&{gVo+l;+He%>BOz&Xg%Y zBM5(}NbZ0(&HEn`{{t24d0B-MkOGSOyD(P*kRBB@kXNjRA55f(O#da3i4=~;0}<{I z)pH4Mjc6Ueqy9Zq;3VEK<=WnbX^_n?p)*g~MXcfCbM^r4tL>{pve2H?^ASPPKZPbS zwxp%Wy=&9A6;pS~)`?I;Yi{46eR+7?=9Mv0kXbkR`D}3g>Bgm1-)_)L^tpd=!Zq*n zlKYkJ{m^Vq^|pKU&v_xmgT4LHuiN)go5K3dHxeY#c00_=B1wADXIydkZ%_6};!GaX zMre#{r9_#VgKMO>r$E=GOgH4g)h=e=;T&n(W5@V|)?WkRfa)Fpsu;9V8z0*DeOC{T zj7JXdR?asC7G`aE+F4SL58`m9$A6gcAnI+f$-5Gpb_V9*ZxSi&hgrpUniTKtvOT=* z`6!PeoUuJ$x%hg!owX!Tq84sAh1M+GFsZH*QI54mYAz++_GG~~QvySivS@DEw9aG4 z)NtW=F-PnH6?FZCllS!=c^ut+oP9;J>PZ{eaB#`Ew|#0>{lP5!+|`NjQ9y2RXlKt? zmK)~-iz5$?g^J*03s4>iWZRWY=!5d1%*#t&#MPt*-$4rK03;jJkaf-}wc{kHh1pC6m@s!Uz_ld!S|w)w*Xe^N&KC9FwjGzpm;A8}+{`L3SlqAvzYr4n-< zeSzhBbXOXZWgJGC+LVIZ%5(7B;$dC{=*e|Ev~TlJ_&gU;E^?kpnpELNv2}i4LuPS| zIw!Y4d)eMPAzcxR zeEYU6rjIu~8__2|ouY!V2hR{~%*l4rVoda5pD)Iz{oQA(b3VmCvUgA47jDX~4+2Wd zwlxIqe>!Af&5|^4o{_)3rq8ucyFFeHU%p-r4SKe}ICuc>UX$JyP9A4}J|Ee$e(HE_ z5ze}0d7d7I_Iw3HUC!`m5rQ(@Y;R5(z9D;1iF@KQS_{fAIdyVEk(3{&9?!W=L6MFm zXzNfr%~olZ4Fr6vntyu6?C$nf_PgNHc~+NrXdrz+20UTc;4s|8!!&(Fwjq1Bbd>H- zP@XKCKFiEi9A&D|?zSH!_Uq~>yF+kFldZ<(y~?{9ViYi^>Eq|0vAxh2y7@)Zqbh~n zXC*#%z#+9r)TNz`A*#_xmqrieo)9OEkVgUmLQS55clVG=CXtawpq0s@%73N*JQ z^r%xcW9SU%qiEu`%A+juu<~h%|C*WEvsiw!qsx%Yu%iS2*iz#tOXBs3?Q+%mI72FhldDkpH zB@DRkYgKlf&o9!yWhWfF99yysHYn9YXZ|g=_~$;yiD4?I?fW ztYbTlfmmfHJn}`tx@rBd@{Adc!vmci228afQ^Nk zL$LyHJN3iG^BlGzi$tgB21*7;sRBN#UKORpHNv+VoUJ7Ly9$OMFEl{x!UeZ0WxAv6 z+e+^FQIw9W8D@{dtZI!ylDO*8owzaMx%d^{EZUkM0%4%F!+<&b$hDcq#7c2~RfT$s zVG>T#?3Q%j#YKC1m$dT0p`|xXLcx`(Fx#+IF#BzFWM52%A^Kw_uUOqq38F@YuXS?4 z$(qV)t8|l7yHR@)&$5h;qn_0$TRhb;Q8VSM6psvt!pBKoQTE*eL~|R9`m_SU;=x0{)Dg5g z*dI+cXUk}vl z=vHB~8s zV+T;0Pe7iTWt(_eMayO5tjCLlLHWRua+B6NQF*H2?Sn1g$iN_nT~JaM)42?*T&k?- za9h-`*6d)$wK8I5S_<8{n)UXMrRy*qk5CgdOdCKI4Loty1vedo1z`4F}!Dxa^KCOLm* zfIn8yPMP^Wes_Sp-kxM`7)nZY(e8u3*T>JPO ziK!4Wp3dA`&BKDrv8qW@wOf$SVNT!ut9vS?y%;s4yXx_s!7c~z1MmAcB0O}VZC>la z=9V3TO)3~JHdec$#|QhDZ^e__?g&v{)6Rp4Kc{ZLL)=r9b0)4WEkkRJCaG6u$7Vyg zX4u-E#>qZtD!1xox4-J1K8j0`pyDzK79fwZ9lOeCoMfx-8X=z@b@jn~B@W=6GfBM- z>8?aQNQ%JTx4=g^!`)x*_dK&7#V;K3It$(le7O zJ$QLN*F2kt3^w1Kig#3?lV~UWHY9W|;Zy;0$YxHhgL%J#6yGK}<`=Zokg*Eg0dDJx z8!K57#V9*6iT8PD* zHyw=3R#HEP=d43C?m0{YpMeNY9#0)(9*;>+7)j9i4{m{?UYT1f!x@6I0IV4T>tZ3u z&RU*d*3lb7r*n0x?sl?@WVK z(A&I|lCw9qsJg}J{6sH}-ibZEWd4=s)_*lUzgc-pZkWRrqAlqMzuyKmmGzGU{yv24K4H)dX!gXYPV(1aMJnWE2CKYKsB({V>OKpqHWb2Knk2 z50O#MzKUJ^xy+V}SW~28mL<&VN+wdKZT4DhHsSAh=Kki|~5%O!P zWU6a(BwqOUn-`Y^^jA*iIloI(Fhg*#H7rfCwo4*uq_YRVc<+XP&y8hk5uO$=_P-q&;2|7@OOG3u~=uB5BIg*cgRamtCv~Hxr})+h;s8&N&ZzGtxEo8MO4U}r7@Zje{vFvm)Gp{Z`xWW74>J~X zvfwOO=Ruy9C^P+qN0ObU0+g$zxdsM`C7egWJVE4hL(%jZX8Upi>eV-%wIP$ z)$5teA0s{Kwt^wDl~^XpJX_Q{OHyn?Oa(0Go~rxz!vbA*Q*ue~>iW_|n7L@t-*GHn zp}Nd%Dt(|LWrn3i?FG8=O9c{YW=sxC7oMFOCcmwdY)p$?N#s|EN3sdnCI7^I`Jr?D z=yWZ$Pop`kdUWZ1)gXga8frWld6+jvHfg=P?5bI2{y8a5S;Xh=5d(^Gs3d9}!m^C} zZu2GVLw>C4UdxZc(4hPZHD1}_E-O6K{Byd4qSiEvx{aQC_ zDco%ifXq%`5=!&F$~02NSBw5rD&hK?aW?aIrN($k{S9@}b;&You(&JmTO+U3 zpddmQb)dhFm9?2b73PjZik#VjgCkmq%a!Tk z2*2~&D>W#_rOcISgh&K>2!t4hcZGAzIpM_AA9$MKN@U&3)di1!NhnB)@O%09kqHPN z>PY01lR_IN^or0#eg;tmM3T5S4WDMGb(UG8$NrlKit=AP3cE76;M>I)O6WC4PDev5 ztn?*tv>;1~-+zj#U9p z;UiL@{14lw@c&}tbNT;dqaAVg=eeL+jH^HRTwHCX14X&{IqAsqm(vY4_~-%WMJs=} zUq^lVtfa`j_9Uo?cHqVJ_~jphZ=kSW)BHznkb4~ z@(FrZMU&?;C_!})0_7w{g2+jU^qKx`4uPmqUa}_|S8yWA&JJBEtl@sbRXN-M7Lx1~#cd*-7#N{$@05-zd**YqGp?jJ zJE~35>x^dC+t24t2&u4JD{T!(N~QWb2nCnSOi)cgB^4y~=O6ThmR$+7FUGl~ucPI! z4y})u4>i7spXPiz5vgd238Fq2I8d~r3~2`5(}Yw{-BBSHq|-feHNeHJ=^EZ?RCSUi z_vVVLtBVFfy0e7>)4(&k7Lcd_w3b{K6Mcy_D2iVa;!QooxcFKbRY;QqMpTBbmW_G^ zD=@5g{G|Qmh|u`_Mj^>z1~h&^qZ|H2Fw7gVpngJtqrh-5B3Km2hM4A|>BbX|j1XAeW2qHPoEH;jK+_Hk{0yKmpEQeXluOp5K zvJX5xGhu^=UOOhLj8fGcu#Ki{gZXFfj4(hj;@VU(?o613R1(P9O($-VZa|E7_mJY7e*XfaRbx9?@a-@bc8wB#Io zPE6U(30=7f|MV?63W5Y3*lK*(z6XR3ItLFbnKogjHJ(I_HVsX2%b)#C<-XK!m8v8S zAeH^Fzg0qk*QOc|xBm2I-8U7-wMFok26uUa9Pw{>gADa2G9hIO)soZHLXtEWh||V} z8@aiiaP>L)58^6kM=4a1=BibtmfT(y@ZKC)++7gtr8Bd4>mNc?n4R5Ir);F%L-GCF zRytPV8YPeD0XuSI{bak$5Sz+b8N9IT(sgSIe?}Lcn)^saX-OA-g%h=S^g@%(V1ukC z7K4jk0xEAu{>|n3oiobU)tA!+bUhXRiz1G5F$D+1>Tr|EEvSXfg@ zHB2`!O9R|twiv6wbUwyw+n5<(8t-Ii4bgO2W{!T_O~SKaDx;c`$*f-`4dg8bwrTEX z&Kug4H8aqF1`~KK7FFU0Ol^(EKksCMlBWJl;{BgVNt1g_H~W_Zd|^%)2fwLOE0Ar@ zsCPHvXP>B``%hm{YtP%dEeo1(SWD1>4E|W1NXfMs5M7$%JMq z%*=Zyb0`f-&>+ld;j7N?`F3RXP^Y6}FS99a5BtDEpgp96!XM+w@uu8tX^Zc3cxjR^ z!kq9e*stBGrnDoh{!qd_LONBNbDG3wvByS`{K!V|ABA~D`$R4xnV6G*Ds=sy3NJIS zLMG!jE4V$C^F&Wd-Z_psmgvD=4&;4j8kwysc*n8lp*ASqi_%-Rpa!dLWBe>$vzZkg zw@LJSg+6@PT<>OlYZvaw30B6F(F;MdbX{YdWqBNJJiIwLjG9oaiY}hpd)T+kk2JTg zV__{WUN+$JB!roA{#AS0-zRh0CK<&CTX$msy0A|&!OQ?qzGR=V`cyX6@2|8dlkS&T zCHf8#AL(Dh2WJ_j5$Wy6w{nV?^#|Vzz?;jc)+>R`{5}75`j}Cbg4I}e@7129K zdwvc%F?XX3pK<$EWvUOuox&`Ds-=cZu0mMq}OxzIojoC%MPV7K5=jn5q@1pQhEYO=iHy*o)EsDeO13 z>>tz^AZl3I-@EUL){O<^WTQW*T}{V9)B@apQh%qyj6nH6s4uz(;5)){3^%-6KXe+w zA61t1V%W`QGcx+S{UXx}=xCyBKNiM}pl}b>M3Jo-u-76t-L~tG=Qb&xt{D*N-0j8q zy~{3q*X%Wi^cVT9%Ls^E74{GEW;RaD2mfR2bItKD@;)P(2NlhG1kGk; ztnYo!-(e3`TjN+d4GlIs{aXd^8#vk!vWVW=4#z%zy}4i9N$o6xDlT|p)ItgW83m|K z9P(Mp6{TO{)0oZomG8`|Ji2ge+K*+lDBG9?(@{QYlv5;faqC~zZ0tletV{pKbyLtL zSZYsUQ!JFct`R&s;La554}T+8Gv`HyMs*BEg}F4rD16-5D2@;1`nb-}M`}fF4cz^t zn)O4D{WL7wQeqm)#-ePWfaddeRrL@08}{J~Ktqg48J!md@^qN5me_`=rFUP*(igzf zslTm>0#B{WO`zbeuiM?CMLFdco`=MX`7P5;*D&R0LyO>-rqm{R6lM#G%c9#lwmBMGIFTi0$Gpt6k2>o@i(LGQ;5pmla-LR>av>oEUrwpa(c}}jx-Y(!Dx_1t zyOWsZ{Avl&#G!r_HOu+4v@D+)z%Osz3CKF-taOD&mxr8bxZLnh_B<2$YDtu92{GCI zT|l^iQK&RE~mU_*-^8>GpljN+8H2W|8F^ zzfE=v5pg~)Hoib~#wRms2SU&j<+`xdy`ANg1MrqL8YakV$)pA>X>2VWY37i5hW%#G zLAC9F=!#cwng`&*dFAr8%@@s$C@lIF56xGlElb?)FBFfr$1 zWWNq>joG$;Ei|NkLhVIFqeJTei-YVzL}MfE0K=sW!~Fq$1II z&2R^2md0QiK|F#tP&!7K`P2b+h1Z8D$C3eiMP|`RIsPAUQKG-a;RT(GU09Ed8gKFa zsv%+PCvE_OlS2PKz}A5dFik*kMrqfVfQHJE(XkWuW4nz`>6A+q6Lavv{^SdVdwK zrqiY?b#f_z^)H18{fK+Vgxli;G?P7$Rz|8cxux#3aGs@v7!d08u+UraV{D?N6835` z1Ij1fK7P1SfOfTy;5G01-SQ24EeI6~i<=OTg6;+aLPz^X9RTP&lkz zR?n}-QES+BvSfwB!e8muletwbxJ@nQbi?I9Uk=0DtJRpyRi51voPzz#{O0N=>(ef9 z(T;L1K$D7eu;$Yw@`Z+#wnR|zrY08nem=hs|2#CBVb!77YAxHo6Q^max%alC2Vn{E zGV~06lcK9Q3O)2JZ)q^&iDD|8d>zm5$(C!5FNgjkcnqRz>|>)H|5f?Dm|~{`JX<#k zYxkfLr#&yam1tT{Pj0Rh{d~XJW06`6f^`Bpf0d19VwrX+a{+IG8=Dt3|Ei?k{=^lyj$U(*6McLZCUO z3wuZdvkQB0`35)etn>@x2JL*Qkl9=Z5cklyd8Cl_Q2G_?yyaZ7r_p-dd0%rw?wbmL zT6&@yast3^pEYMUD;LDCv=1s?&;vXYq7e`xKOi;dyd{33+HozLwHpT?v#Ix)Q5bFs zTVX*J9+drZO}vGH^z>rv*+iY?Zh7K z|8CWEj^{5GT#m}-k>?d*X_3F`XAfJde_X`gefi>ZZtF8^9-6J(Kxe%+(CM@QtxQwv zFM2Iw^BFD}gWz3quIW&+yb8I=U64YfJ#Qa1>=*96bLlyqaHxTS*k(d; zbnDRiMT+ms6bk0!xPNF@a=0hfHU>zB5~EZc!e=d*l;-{T>DmB{B`y*i6pQ7Q1`AyimQ>>^m7>lssr}+`c~o|xm{j1P z*tE);bgNzqIoh>??!FXXvAGdnDcSl!7k~gHV!3a0#7bv&-+az34j}0($QH1tC4f{r zpIv;CPrLNoeO5c?Xxs|PhP=6fpuf+<&p-ecDF}}drC#$7#Cw;!aBp@7kd(!gV?Wd1 zo|ffI%0LT$L{~dM_Ux^W!en*nefll<8IAg8jn4@rIN(2m19D2Ch5r=X`&;n&Z^2ar z$1bjH4;sfdU0%?_Y9yKr_emt9HsvIva(@B4_f{tb#{3Idsm<9m8h3IC4Ey=|2B=!p zvB4{h{Vd0HpLZbQ)9Hr*EEy^S5zWSw5m>sK3jPB)Y5)P4k}y-c^#NKKSrrQV8L!&y zrNc}Ayz4TG*#^Gm);EX9_f`iU>U9Q!-@91-Y&*-Lg2k&R^>X z{D|^)T~8e(D%n~T-8}LH`5B%^09I-BP8SA{fTYQTN@CKnVbsfV?j3T440GJ#M1TJi z`&#W>JasPcV$NmhdAKkjXXsze{9kM1n*U%tq)j`vg955=F2JR83)E3|XkmcI{UzvC z7<#pbuehf>nts8Z7rAMD2J8e3(?5_GU<9_^D@svP!g(b69VK(DEp33{oB2 z251jf0lxR;Xl6!U9il|3TOD3>ZS?L~T?8?Xh{%QiJag{DB-5kb1<_^Zc^ zg`E^{0|u#iU76Jka79kKA?C+v6!R)_QIxoh$QoTP2hD5nzOD^yxOZ3`lkg0a5Lc)- zdW*OBg1OIOv5s(j9}2AZ0%uCq9`wY209nj_&E4x7Hkzk!!l1`N&y2q3V#hxonioY# zE`G~BXRGD>fgNfXKH3dETA)jyVM+ehRzrb?*PveX_p^S3Yz%JBqJKXR|4{`L;raON{rhdYgdJJU{hyK zR<*PH*rHdJ62)a?v}3}r4H*?TNfQyw;#hs+RJZI-?A~==iNTOyVKz8a^j-tz4DhjH z0!o7#v|c8SepPBv4ok9}7z+qHd+1{FWf*sHokHR_E;MNPMCMgf_JK;Hh>hW@vj=%8 zL8%Gb;y^1+zkG~>s=;aI|mGiF(C>1 zYB17Cf&W+|EGev}?ofhS2s^?s_u_x5HUwgUP z5mWm}W(XR`?Xbe(%Lwp_ryYabSg2#ap~imm{-6^84}}RwjV2e{RAS);UQFR3Lw|q9>=&vE^IXBzO0ZL?%c)sMdXZ5ZnvF&+CYP2@;)FmQHqPQhn zk6k<%Q|h*2(7rfGg4~cM8&+9Lc?HEP`1Cyl^yq4buxg*XWE3`Y`<8N;3B#z}8pVUx zkj-+%@=z&6p#u=oMW9*EsWY=2K_ckY@I1gRgrToAj)M@WqJ+LHfp6>u=8Cc8iXmnZ zJi=f@Slgg36(_Q4jx3^JJMyS?g$3q9h(hb<24KgzZ0pS*=>(^p!8YAjF2G}dbj>Nw zgYZ7)6Ad;H3C3x{yhEm6ni|NcJuaHSq4~E8MASc31ovDKDU>T~R9U%H1{^5zA?u|z zhofM>x-7lFAQOA0$9lIEgfy1^eQr^3kBp@(BUZxf3=J+eQQmHc0b`e>w;jetEG1)S z4?=R9rmCAPV~#dO0W0Xc zar1ui{RQ>>I59}n2sayNR)Xmz#0qT?kjh^`*uQ~v{|#jO8)(jVq7x{c_iC{KM;EzX zY8LU{1~>K(g!kp3Yl{Pm4JIAvxgWU-?J|6t6vBB{Y!DV4-CQ_U;w?gB2-cCXf{t*( zA3m_8{5go~-SSzz^zfpv@ZGgKC?KtciS(xf*RbQnMx{nLRr~-!lm#Nvc?t!&P3k3r zpgi>AN3uU17@^WkCB8J`IdO!~NP{Xds9UV`6xQiU%v=$Q_3>7;C=SA#gpv$e48esQ zx-m=a1e6!EJ_~a2Hi1tDz3Ga}PQ)B3g@F8?amPQ!C5OE9z(0kj!2V(Jg5>SLej{Pz z5irZg1qS9+4FiV%&-eBG8ozDxX%;@ z#E`-G?nT<|y-<1ioPK&${Lx4HX3$&wA~}8-BQeq=K_|deI+1s=tsG9nD53YSzOU{c zT~9u(>y_NccbiCW-1qx-t-z)CRSP+rzE@|4y8xQawUgV3o829cdV{XF{pr2ajJJog zx5w9GxAvEu>G5^_%cq;u_UdZXv$LFA(5w9$ovVWHnGA8-yE`k0n=;n-XI}xR87XcV zia8pn<8FpLtHW+nM!dYw-HRvtpITR`hV~@2q?* zcWXvAH?SyH%mw+B#FWi<_F13a}dVp|1+Skhmc`MY1^%Pe(@XMoAJ0)!f;MdMo4qYo~Lh1r`zhDlVg9z&8g*$ z=Lyg9LVSYaffPLn?^TVVVMz8$ZpiB3;t$^{(Yru`#iZ9J3o=^v~VFVyYEBI zss##c`SAQpd*;o$;i!5yOZMibz|>^vL)G<S=>SpH& z9Ke(OE3-kpTO3asF&)y;cI(|J`R#TKE)_1L@JoZoeVzAnjiN$Fx3HEX%InjxVN>}e zxAxlRrebk%AW1SyIf+J0%=pdI)AmE(&FqoG!&`RpvF}-O%;N4F0m=Sb>0rp@s;94a zt}LwJ8F9WaadP#~ubFyv1_k}kPLJgW*EH>swc-ST@?$07S-&Wb&=>Z z3m&-Lr)A{ad!TC|NmtH#PcUfca0@hq2O8qIy%F}(B7E(7*p^1(>aMz-9$&e!m9EXq zzD;X4#919YIN7=R$-D>6Q*@O6aDMAB?KUeOknvixX{U0lYclQtXCui{tr)Rxr3r{K z<^{@YZ>(=Nmk;ZB<;TBN4)w82M}+Ln?t@+x?0j;07&a)2%i(b&i6$%o_P~4Y70(|O zzv%acka#dYQbG2b{V1NdGX&)Q$ZKJ=N3Jr2SjR_v(-NxMFqje??2YqI>5Enc46D{A zpdd{5M;ozrUkp*EG#DopDm!Y;me? z#>jKP;(AXkWw&A&X>2eE+VrVEsnSgrCC4S3P)!S9t~G>WqSu)pP_Ccqv-S4Nc9 zk986~@hR5zgWXUFMvc^#9K06A8U$|zx*hoBy*9)`Xp^6(?0_y^UqAjfPS2+( zd&I5tvC<|m6je3Q1l=3tDB^!U^tV8f3egBQ~_kh27u90ehp3^1Y0EJw$ZEPdc|*`t{t^>mTJhS-+_`;o8RPSF^kDvR{Ncy)^|NK|q@E*D=vA<4 z>nU&Mls9_X^Nm@n_X}TZw_C7@aOJ|d{_WOH|7gs(VutN^pN$`WQ?qV~DO{)aH~Y3Z zK#7Ohv;RlfJ3v>qZQa7LDzF&E-uql@?lH&ObB)ve*C}+li&B^-ojqw!8wUG70Am$2bc=v z=9qe4EQ!Jyx>pWdT0%6DK^(unSb&Tx_}QTe8gO%*YrMvzA}%J4yN(Ap2=@E+lpI+*>h z3o#lnADuGyVvxfyxvFFyg(w3_y<{G?0)fjRp~8D&5|-F=BA(g^M->v(3cnGLBAyjj zIF#p!@d@EPop9G;fgGh)?ldlkk!b~}8%pW8QcjT1_ohD7aC6C3y`?F$Gc zGHMP_W_V82*K2ZT@4sQSK)zCbIyY)o;8Eg$})hDE=9nVpu$UGnL8e7@CCA5>qU;Z%KcpT8zUW~Dlb020NUp!YDwob=dP zeaPC!zROp*^gbQcp;=Md_;K3f$HiJoM%0Ynt)&5*A?O!w+JLfyl)=T@<{BrSHPygW z`w|nmAmBc*rZqPx!OJ6t<=9#ri3~>?Q<5WtGkcOi(%)d^4ws2Ee zU{FjeIJjQBLsSg_OyHfbQek>Z<~;i2|0v)B&x^uyd+{wKDd5;aa?6oNs>j`v6C9M$ z$LxxdBu#v=A>XsEOn-| z%a%L6dBtL2Cnye>@>MVUH`BZjtQqgiU2_JQ?=PPOa&gVzV zy0znCbuQ*T7apwN)KMXMT+fbBn>w2(-AorALp>Hdx+;&~o^cP%dlkz#i@%xkwOF4U z@Gdt`FfCO;PwoiSy_?+DZzV@@`W|q`)@$!R z(JJ`ORwYFPF>Kw@<+0?zcD(aWd5plLI}Ok%s_$8G5#vELCF`N$tJCq6Bc;kUL-EwA zM*!I%+I;0jUWcTo3--0{Sp&w|Q=4@kNPNw1UW+xBCNof=^+ro&A1SF?UM&Lq1N5HZMJVTiH{JgO_Lb-W`O` z-W~dnU`aevFUZ50tE>XY@64o4;l#WWkEhrPMJ7u~uI!lyLXMknFHS!v#Iqh@;|cD)&18-a84up5Xd< zKmIv0CN*qPnzStIw(&RpxBv#Zt@xWlRDq}Bk0zvA$L1rw#IVl(~2mK<4MKtMm z`=zH=PdsK-_gqcc5T@zNgrT!nS7YpX#UzAyv&PRmc`dv_JJ};|<*IwhQhDEO%2}E#H&Q+Xj85;BGRvdl}5d*0#QP&^{}w`ZCs8WG{3A zFg&GL&GKL*N9`O;Cp$GcQlxXu!9 zZ@!nEB{W;=NvD;TA&Fm2db4LyHdO9NfC*c_yt;&i9xl>AWnCRO>v&+D#{(KhXK+k6 zvwiln$b_- zOzSDvqI9YL1#I`zFSkrg|JTvcx4^0AU3swF=~(sFeti5}Kf7Ki;7T)W*&yv30cKkI zP)Nl3_fKy0T1knpBe&m?#z>2oy!yi2-ZP*uWO&3k6#Bd8!6=Y35m;a8E!SJ=1Y%PFHar99AtO$wvZ7OL*HRr zqAX%Rt^3vOE|ceF&YU`A{|V#`^lM94-w;?j|J-L#`eDVL_W3wiaP0Ti&Fdf1in`Fv zss4_-thtQzH+!BPYnUBAcPC}b_rklU!?4;VtsDygo2sOovJWWJTe$?245y5$TIk z9BupuT3KLLOINFTU5B_M;i@~wmv=Wc`Qah1<*j_tLcLWIj*IcGXO>*PuF`pL6!l#r zoaitwbTR+X;dFG^-BuJ;$7@0F0-q|U*u*oew}T(-Ipe5{1wQ`EKuarC<0Njdr@<8) zW;1I+E(rc-De0ae*Jf6OpxY*oHcxOGvg@fSm! zmSAsi_|_QVcCNSMWnc6VGRiu47sZEQ?@wwg&v%dZC8GiA5g3LfRD|r ziTzI-uq229h zh|Mfp&P6~c*R|umJouBnqnqOIlWmUyTY;bd|Lg$lQTKUYHk~=zxiFEy1H2DDwR5e* zDdo62kgnz-$rN&}$`|@w%k$^H=ua?e(Ua0OeR63<`U!Q7z+>8?B-_AOAFVyu0}8b< zO1zn+e}B#$-CdtvUj-bAZQw{KU(YC1ZS_u;@nmcKG-rlpyD*bbrqceqYf5>k{>Al_K*PUmVr)+DEH)q)HW?*~TJ=pg~E9R88*<3z^xU9Cg z)wAoW8Vavf;Vrs?l@?_CP!f9y6PnS0ukveD?j9g8Iv^xhUbm*zfVv_%4Fm&vZ>@ug z;t{G`l8Q<*DneGHAu5{%D!N^UydE@tEj0ZMpHxc%o_xG-tnxjlgM3X3d_(xmu87T7 zC7{?0;G)YqRdW3~k1N!T4r$&t_lCgrE;`E1%BhP5h6A( z^!KL~km%Hag7X@+Qps5_8}yF(y&5wn8-ACLUk_~LOr4iYqTk&-Y~;OcfP1G@Mh10k z26d7Yq-)9cJcejyDzNlCY}CDM(!oQ&1+?~XfE1Y-mV4QxtZz4MDR_$q-Jbcu0h#__P+}(0%7ITtdD;Vs{?Lkn5yN)44cX`M;8zoBjF4Du8l5Zqo))ab7HUOdNYWHMC8_EZa6H)U7fwPR z*GQy{#GZ*&-mcw_uf1I92%kQZpvRpN5?==oO5F>;{4l1`5u*2=UMtM**XvR(70xvV zttSA%>!;iqEJ^XnJqMh*B`@a?Us*7Tx>1Q%@-=ij=s`iGAug3oGWf(l+x>jJqG491 zeauoZ605RZ1AyYgyfXld&=rT^Lm!aNh+O+eTZ&akKtM#?U!XPxjcjD*yY znL59aN$d5{>dPwitit=V8{M@bN8KwKNyX;&(IuAkrwxN)kV!!Z>YW(QRKr2~=iuR4 z9@!&BxlFNKCy1^9;r|^H8T8*FFV-x8A>A(j3d#Evy3}CtuaMbL$fQEy{fP4Yxyq9z zBw#MqG&UI68#IqG$ih)7=}cmVv*@Gn_C`=-VurV5L5OQzsjjqQAcmGuq4{3tl1kh_ zwUuS|*Op&IAcXQUGZ(4D8o&2v81S)YOnL7Sa&Kh5D4o6o)~9r zI-zaza1i1)qQg#62(oSD0T>c6G*JkB=B!y+YxOud-#{^1mVlKK)CkySrX&fue9sPT zh(Rc^rsP{3p>PlqFg|wBYn&qQkxIR$NgEWHjJXb5D-7)CRnA}-Ue*vE8x&2p5SAdF z^Z^(Y&DZgK@TXde95@sZ?92d?@?73|`fpUGeVLQMv*EvoW?35oq~nozm4NidQxrl# z1cEXYX8(5Sr_9_D)+@v<4&y@S^ed*7fw6lOI}-*eG8b{Xha>L)rVNB`DsG|)j z@!omUA}alUXupUK|nXAz$4@5Kl>WSztino_q~#-_`bEL zLOKl?#fL*p;w8Z$OlBoTpiSx|{eBXfBpd`e4gsa*|1lIW8v}e)q;8fS2fpK?WHf1}d{!@>ulcYxEM$ zcpGWNB3_CrLq}T2Gx6J)?s4N-G{%738m;!3s7Opn&P2`eaGw6tf$Q;X-RnRV*FqH$ zbkjh0v2zJjpZ-Mlw0fPXqH&c*Bh}H?lyu9Jc6ow+AbH zZCpG;!oZ@#=;GMs<;-UA*iPpdQKu2UIK?OZCu$$xdoL7yzwbk_>8p8fQb_uJEcze( zgwO|x#;SlLD2kRdx{RdtyA*gC+g~zI#ofMIQ8zDpk6inYQwkBISQ(h98OK<-CZ`)d z%(x!5bvsHH);BLa-M-T^+tczMZ#CX;O4%OOfQi7g&v11+-TJ|+c~A9p$B!1D-96q$ zJ>CNN@)TswW!qEml9x*BOabOo8m!a}dvxnbcQ0lPgBM||JK?KLf)uz0rrMh3nFf~8 z1rCeEFcKOk)UrFeZlzFlc|#X}3tQdkUHt*Pf@!sG8YTB0vsQsj7YUz+yWgv25$kra z>-=yP%!MQ9uhi@nm9u&ic`_IbCh~_v>r53UFVb3I>WK9H$n^VOlP!G`tc)_Od<$4Y zdogHnPh_ozE*u8`6Qy&NXmpP}Gnw9Fz3Ap;=0e=#ZH!e!ME|4Y9J$*!sr&ubQ~>7l z6BI|~W_~f}R|*$pqQ?sCB)?bvrx$g=O29ZA!ciei53TVkvgARTIsnn`b0{KOy${ zeX!y~0J}dcF=J$@3silE@P;AR){XLhr7H;(vx#q9AAn4TjLh=M?m5yhM>g~b0sXg${ zIESp`W^cNCBiM#vSAy_8)_|Z0Y{$RXx3`Vi^6Jj)mSei4*kz@+9H@Q4t zfE4qR?41%=g_|FT%OcO5gF>+)%)?VN%dj8NDO@Y2QiWLpMHK#p@h=hQLZa+{L;zX+ zzeU6hi#5si=>IK%B_DPkp01nFe4~i<9C_w4gys(|cSb(~e^n}S{2nrd`DuJ7V2<&* zU#OHM6BJS+!n`-#(w*iDkk6m^Q0yd`Mj@-k647P7V^0*XVACX-5&P(cI5>ZcasI!G zvD9GyZPijmlaZk>tW3%FTU(p&T$8Yo=LV}%JFh>F&L#)EXGU8G=R41fzX>Z%3!+}F zTpAtY)`myZ_KyXg25-$8U-_ zc~#JjOC+6hr=DgsrJ^5+Yn$I4@=3m^I|LWI!)$~izdQRX=q~V%6O3I^U%Yf^Yc@58 zoSMmh4*uw|h#H^exxj|*X!)nqd2(B4xJ>SyvZ^BJ5reKJ?h%7&{Wk_WLeQflTcTvF zA)!WxtAtbNEmC#P=LaYt6I zdyU}RKKp{W*TlckXIal>PFwTHL^s>nbwG6WecSqhZZN(6#<9}?;FLO6OSI(8#pQPZ zwYCNry?O59)XD_eDw*~VBb(Uap1CW3;IYoyNX8JVzhS$CO0JK`UjTlDS?Tj0j?epT zT(lmFkt<2Dz?7_?(WoI_p?Oj{{oV&jRGvb2#eSd8Kr}m+gJDB9muhs6Y{D0H4xCK1 zF2)ZL8j6@x4v?VlD8NW=yg-dvix(~qkSc=Ie8YBYGQ&+-YEC~d2|_Fgz3r^#Soh&$ zSZ-#9N4DW6UP{y)y1#=r`(_c&fovmnCm-cPAlj%km1sjg6{`6MwLyZOp$?Uf5^eK(Z+@f=fFp{mag6_SKn1sr}NhYZwM_`4&+{C zDMk#U?~urV4(G^*VZg8%MxE3Vrt4x{2}i&g#trAt_Fs-u;?k*BqJa*q(C0lxw!x+i z;J{GrWLRMr{0~g3-=Hf{A|@ud~UeE1aU(%R~W{2vs9$19L`J(V;CwGp3%B>Qai!5L4u}z-snQX|ln%%$R7TDtO+726 zloH@oS-f%N3F%L@}!S)wftGG;#y*ycz6nZIb&S4AgO#3Q|^^CQ=%q{@wVznvr{PRrUq zl2VIeq)bmJicbmi-KQ~W(&M*VzI_1JdBb=*_oJB&98P-^&0Oh6y>yj2g=>5&7Q)jlgs?r z7SPUDQViD4(MpGq^M^zh4hUuEhr%(RxzXgzPcx$(7XmGYX@OFz0ZkHa885 zZ`wn!kkPqDZED~5Y5dE+-b^EX+&Y755Xg?ZsUu9ufL)_q=B1$P&Vzsw;}HqUD$~-P zvc6`V;ZIJxB3lzLB~vZMPz~j?dnZ?_k}Y(qI-3PNnKjaUVrNPd&|34i>@^htN4Dcl zc>5-`P8pq({?-5$j0eN@!cPmsB_edu@B?8FYB!+{oj|N8k!#v6#r|?aP=2i(Gg>r@+U8w)DWfdErWPR;yvBaZO1WuRK$2N*s>qHPJ_hozn=Xe zQDZ-Q4oFkr+p{tJ0)iJ^Zp4b1W7l$7laMrt_tsP-qf`g?C=c#X5e0WNpv^xOt>M9j72Rcs zYCXfFB9dp{nbQ0zSC9%MCU&bu@^=Nu2p9Y!-w(8=$Je zrZgBaxE5Eo`34Cz>zmmr!k1~1JrJ6BM=!)&M@-=3@Modv;~g(69Hg^8g{4JL$#TE? z5?*9%;S|O^Hfc{rl-i(8aA1U;-z5y&!$;ud(dX>(VLcduw+%Ly0;1e+*qSt-MYW&JBINcv2i@d*Wf zEIv1Sg+pn^;uSUL)*{c{DbEZ)rH^R~qVOkWudsXsoEg!%;7w&ZGcnhOBQCJFB07$C z4KrQO5$PgGrJ}7Ps*EyudaIVG%!7oC`JP&7FDzblO*c|aNBAbT6^M!&7q(R76FUVh zUb^&#&}mJ$`GpmljbYbH5Z=8(!@#=|Z-X-$DM(W_yPNZH&MLHmL{i(hXTOsPh|m61 zK@UV_O?LT+NUC_T);;F%W$WL~(?tCD9%4`9$>tn=B_CcINl6jIxrz7v!$sRj5ex7} zDJs@bTtN6lrw4?r)yg+=@|wbViO=Ws(%@V$ox(6FRsHr6Uw)?M4x%SO%Q8oU3{5YB9Y;@6+uV)2di-Tzk*0=M`p=q>ajOXM$Ll=scG zTU&mUv>&D&Tj7GhK!Se<;*UuEb_;E)D*}9P7~e2aC$8U35%si&9yim{^8!h@pno38 zyCFnJCX_IZ-4LOc7>JB@1 z0spQ=@nbgetr#QX5BMd@$?gB=KmWXYuH=^}c36_-pl2Mv%=nH#&;CmaS-`I$n7=|4S5D^pei!p1lDI78HFQfN{o%`?G}W z`|3-mR)S*mXEbbMxsR>YyBHSA?;&D@=f`_I(*FI7|$3BwzG!qc8 zea-jTs%4`o2=Q#aYsl(|d&nc6XA6)`qL6xMsS)dngW2Wpk)350G~^ee)oSqGFpE%X zp3+W{_>I?~B?F%0in28E!OOP1BLTACl9)A^j1mgphM*~uWtQ;wO|ysYLcDhBjoJ7^ z9f7!=WfKw{C@4DicjZsk2z$&=&Pw@0fdY_a0cxN_yQP9O@r?mb+M#!?4x@JDVMXh z30!_4?U44`+XKR+0=RCLW`h2irI?XS5v$klPkVv@ z{iEMvNaT#(Fh10o?*~4_a3#Jyax_doUyq!f?iiUrYJBWo)zQTh&L@qe!4B%83<284dD{EaJ; zv{VNTY+u%XAh6kx2=jDgbE@&sz*`yh@DSN6@mPVoC;|?NS0|qqpoCoMsOG8DAub`r z=tIqdoKZ)cZlm8ksV@@pv(pQ*lb5jRRRGj72qHW*x|Z3_%G7M}WC;59o@q(|xRej) zny!!)vt+b{Cko)$^|8_)#&!v@lOXkS-r2^dBpZ$REhKb}RTTv zjD(`Ha)TUMet9)aOul1*6K+5_9(^rJI5jdWZUFEm4DfJ22jf+W!mWhg6ms|4l{^O% z%mH>SK0$~I9g|Oo8^HAiysz4$j*=HKX7_bYn>}za9`ot>eh-r)kdqlYMhMZl#+Jzr zM66AMId2x)h$TysXQ)w_3})XDyRig+g>3H%j%~Y^x}r*}G+QxwHP~6XeUAI6SW%ly z68ClUjxlAP%;1W3^`#t`E=nK)(?wP<7?9W3@Iq#5!zB{4C4WDS6rD-O<)Sn*d_;K7rc>P;E2 zPyIy7sWH(P0X$1IdG_>^FAG`~0iA`}5bxte^{}6tP>KJ^0y8BE=**GWf1Ghfg)YFV zcPVJZPDPlM#-FxeYjqy`;~-NVdh;YT2FCG<+i}> za&onhS*2&dFW@bbj+}N?3OYAm4&PsKKLd2%p_PpavP0k(WofFg15+^>AsDVq)Oe6p z{(k962+MIG|G9;kn4Hk6yvQ6baU1`UkV#SI)>7Dbm|UocK5n%q62B;bc@4?~`PXaN z4E<0QoF`^KIJeON)X_1t_4L1ATGhG zg;f|K^o<&A!fFr4`S5|#1#g^YydqI4UWMRrDX!3QxTj!E2vDTO55EqEc>fmx&)ufO zWKvlEe-WTOg5trznQ&sy@dguDkRvY(u^3NS%vum7E+a0Jkq`#B1wS4*Dkn;ZwG?Oy z10;=f6UF?WrDhTrJ5{^1oMjR$unwCYNye>+?sEgPBRg8#6$p`Yi%Rt!k6fk`7`n!^(?g) z^sjSiqt&z&a;W`;`Z3|BIBXmh&H$afIK>~_7O>*J%3ESe8{idlV&94ZXC=wfIsJH_ zumZWBLbzn8=IV2Jppu^XjV@OkyidURGsP1P)Y zV+;_7bjX7FYz6~Qvv^dJ)G)!#DzTA1kyIX4({xXye!RC{>MR+(wP}1VZqxtG znC@a=fE3|O%tq^QEsvK`!5~1qbwQ(3>yRIQ2z`BzLAMunRg=Sik|gmsGd9v|38F^`LaD!p1R1U zbwR$GC)hotJpCk<+@m&5^Dz7`bvS{4)QKYhZ*{itKy}QLrl=IUx?Z}HbYs}}Vw z=kMI;y*p)w?R)01txj?WG-u@X+wzpQz=s5YG=2rKd*DihFHqPa+lZVOg?Q zkij|w)C-yN=*XwNMZF{`f~KuMq9Yy-BG9ISr{Pxx7aHKfrDn9`Fj7-nQR2!76;hb> za&!E-eueZ(H=2i`h27aMN1ArkMqA|P0mB22lTK0zy$#|ZCkhoV_AznDy0Td}*SkRv zN&6$f{Rc+F!Suz|&~CKzPi2id%#-31_~cXy>>#Y+42Aee0ms*%qSZAl>@Kbn7|e9aL%iP1qvHlZoJA(?Hxkmkh6N&j-ksD9CfDxbXmOXWGS{xEKsNaQcJ| zz@Bo{{fyjv7m3>v?B-%lSIE_~0}#zi-nVY|dsHJ;5c;SvtI>9?i?BXBP#fgFrmv_+ zO7`xkh}zVF-E@>xWT>3w+j;=*`W0xA>NAHYk{a5Qz#9H#a~%#nyoM(_;qwa#XGhT8 z)q?j+bqI!1rI}9y?1`uZmku5;Ta*DtZ`F)sLj*6qb$$6rCX#Zeu~HY`L*w{V>_e$O z=apGQ+DOmk!W5&o*1lOplAY5lNA0CWwy2-$U5lyQb-_#3m>;s+)TaDTdAkyWi7hD3 zEAwqs$SL<7G9oj&Q$i57wUQg-h8YY2D)1u9k%>?G*2pv2_kb)8@82=CL)nd97X_rL zzus;}+cP5kj`p{Kbqc?GaHf}&qe6x#rJyLeJz3L|CtzxcIjZUE8CDclCP6qNj0!3J z3$9K0ntQ!pd0yWM7h=o*rO$G82lSt9kxsRbR6u|&s9J$Pf4b-X)q?7anX$@$UGOn; z1J*;#@E~*Ey@Q8|DhH;~EFy`l*aTh4!mUV-_!KNHz|BxIFF)C|II+7PC`rypDz^P_ zXBc;-3;yi4XN6MV&%azUCHfJzWim<)!v_-mUkUkwC=wnsOln-g+9-X3 z4184b1Wt55KEawM{yZLv@i~=!uwc#>pwNl5T;B?#_O+Ipa3SWljhZ`FW{_>N2^4R| z^IBLEg<)oLKCX4Mkl_^iLQvK|Mo4DlgGUD-FFme8|_@%o;&2# zbcKUP;8IzGUO))XS&)wXXeqo(9&2HBo2hjV8vOlRcl@({0Ivrq|GlXBq1p{t+3w@_ zOBgq=9)!Bu3SBP#_MwZ?NDVJowmcJ0Hx|5fadju{y9sUv&w_hLu=4Q<9rbRvqkdhp zZ2R1iv$MU8#UZ4N+xxOHCW8+pEY7FJL@N(2TC7ecw1vD8Q>3Bz?F1t?lR*TbIgnMe z7}yU8-QZX!I)+mejI&`_~!PS z)=PO&<|SV%QTg@ue{`Eo7A9>U1va|wq6GoL`1dL4YH4O?#`M>b<*yEB+VTz?oY=iT zHIO?GmtHp9B0I$|*REDd5m4JiT85PT`s(3 z+7q-Qo*H1&tVdESIUkS6f2V*RBYo!g=`&EiS-uD(1pOWEB=`2DeWdJ(K)h3m_%wFa z;vMupvVyw{_JT;hBze_Bvv0Fnr`HZw2ZQAaBh@}z*WY>shoVc9(#{Y@(kBLfIMsn- zMu>iw5F?8i1f94-R$|?;N$-jL8}p_h?EA{rJj@0RJbH=S6&Q%iJ7EG*@2)jHehchI z%TP{|6kR5g2Df+0v&ygOvTj-IwXkBli8lf-W}&b_FbHQ7s_*JNuT3&6lG0=e=wkGR za&wPEf;o)B$TFJCXKNnV_i8VXk5gGzR+X9TkT?2ut5<3ZT~vE>ttH}g&*+c7RSVM6 z@n9qDkcqBSG0t03NhzhN3QgN*uDBPJncAVHxeAN4To-t1X!4&$7pd#zEs8emGA(g& zGR+0#KkmGm?2D}^Ep-FmdVEkZTF!(PiBXvg56xL*WgDB7=j)1=q_W+eNMp;HFii`g ziIi8;E}FMs(bu4jar04{DQZ8#60-V`3%A1!3@0vS&)lCRYx-}%Ll@e8#TU{tj$P^f z`h2jFHak!y$)x}J07)?Z{(Nw!1`=ow>gm(0wWQcw%t=O3nWoc~uX6>(jzjXzb)u%7BFgQsq?uUu z{Sp594eE1b(&Kj2n)BC+c z;y23-Skc&N4$)7i2F!YY_f+8fVP#QX#!xL&^~2O_HS*f;zH4jVZC1y11J6jr zeIz-5L)XDyH*@rCYQ1RQlK(J@sW5=9&-#0Ev}Oc88#W@C#0ZsUdlw^ou^a|n%TT&a z<8TpizV3D&!&h2^@`ujTH}uq0L@bVnpOU;p=sHUgE6bC|Aq9o^Usd)~le;@;mzGwj zN+hoCtSXcuuoa}@WDe534u4%4oT0=N56b1d9A+q_O3}zS;aX8Op`sp^Gs{Ch^JmXG zM{77|6QXp^36E)|)%%vXw-%K%SESATY%Z+nrv5${=uo~Dxx$6%x*rtO+Ol2FNpCom zZx?e&AnE%E)=(`q}gFmHVcIrcNb{p;^(_+Qtk?Dz4<;cxz-h_V1L4jdC z-^X4CJ*;ya_gkIbFX(^fV!8gjt7X6sJSbrHiU#~`;^yM&V5ezk%VgzhX7|^}UQKiZ z+#oYL$WLGKiNuLg-f;9qWn?Op0=Qb~m+w%C-HFA!(W z(k_m0-d7R;qM!H2Lifla7a_vX*|o@)Di)GjZtWhBBnseIv=bBP2f8enOAzY8U>1%Q z2&XmSuy5mz*v)}xl_P;swi>D4lr8MIl1#@|6n*P{>IB$|C@+k)P~1jWH4M316d`r( za9O6#!OQFaLzlqh(Q*$^4;4@s;Xic!-5vHn>i%jC8#CJg%+Habc6$^^nk_5MET{`K zpHRWpMI1@0;%8gKOVB!HrM7zuRlsprw+TLey4d+4RkaIK#?6 z*{2Y7r7>mms@0vMt6Ygxzj%%Ippz=(O=4XQFNHLN(zIdrWU&j~qD0S(BPY zepi=QldI@b7kpcN1N-NIwsgtK?*RoH1BGM%L--%bip~y>E`N<`PJDxX5Hq^?m)^m< z{Rx(Q2ut*EDG(Z)Wf?sJ4}S_hJ=cZ5e7GqcDKQMv2N}XTTxSTT0lteCE7Uo#j zuTN#u)!FU#^|bO7lv)`2oKT3H0WViRA=|Zw5jEQ*;U9?Ikr(6-hQIi?S-jaB%O;_J z-KUcN`X8&b__?qM8(>W)0+`+XXU$>nW@l{X46Mrh)iz#p%YL65yJx3NC_zHEB_fF( zg1xy=NL?>Rf~@5pgc7^{Ja3$ZdGlKK%4CMFI!CZPl1&cPeJTdcZ-?jI2k;8{>-8om zaT_rL-G%cyNT+N^l>S(Ddgb8#XWA*{{N-L8F?%80h*i{T0%d`R8byh*M*w41J&(V)X8^PU}9a3|O`)ri<-kx?083$cY( zsmd>UW#xoBxLa_`R@^dCcj~SSrwXswjr;^x(urXcf?T(8DB(n@xDQFGNyx6DIDa|1 zqF%2w;H0u#z(S_hZz(CAF@52DFA`NC7A_k(O~OX#Kx52GH;Wlw9>^oh#m#fRk}MC& zMIn6^s=(Q$;J@?jA;aIB10R-m?dV;Rb0^%EFtYsvelQgWuDm@*~*I!RF#XJ~a zwg4M~kUNx;oSU&%5k2aBJfl)H4LQcZrx&FWfq)I`_d4JX zTuX}kv%{=$IOX5;qpXrOMim#qbR)v2+`Kyi=EkKIb7JC}TXw`c7w-<9!Wp@@8|!!L z9)%}NBT$qL7BM5azX9B?x*wuZSHD|~FC2dwcTqN+#Eire2H?T>NJ|=1&E5%Bru6Nq zrq%XJd#pYT!rJuA?OpfW$mxs4^xTN-Ko96?=#3tRc#AVZ+2>&Je(yo+9f&|?cL#&- zH$9ivZq6S`MJAu6eY^kR_x^#{OcY@p&Ye`D&Jok_f_dwc{|Uf)DrWU!4#rlI*MOlK z3CwmwoW4*VY#v`tXDJk}`+Sda`k^pqg86x8hWD;TkLx!~FBGLg&vA_t)Ugu##i>xH z&*vSSuG3RK~i0^nQ|;fXBnzLxcuZ z)Ytv#p?B-ra7O%J;rNP047m&v=exHv9bXC`EC&l?dUS)A1NoeFx=-8vA*0&t|=my}o zn_I=Oiopp6-!8Y--+Hs}w_Ij4#|jOG=I&6vVVU8<%{+u3ntP}0TWTG-t7I-Q zI9)+b+d2mKKy1J);U^25mW;JKZ9AlQKG8=9vX6(dr|H09@!(_l2U+iRI-S8Vqa!I0 zZGO~|%>ZXX5K2hTak37)gf@^H&@Y$7hmPtGd(gcvG0v z*f{`n&Y4jIS1z9MZ6tZ>X{L1w`__n)9=d8&Bg+f-@zZQo{B3$DD2{6#6|Vqk80I;WsI4};y>VWp z708d)F~+oEWBjyYsArbKn|5Uj!{9i|{(CDC!yD=#A@2_M366sZk^g_qX=CpULD`ch;#ZJ5#3h=m*aAo>u)=_1lbnx-tRZl%Bb5>k>@Q^(nrfdduso z#git1HN8ilxL3s--LlF!ARTJEMM) z#akzwk(}|`BWnJ-(lUi}S{(@?tD>Tj^wJgQ`4_P} z9O64N_44G`_pg8ZcfzGd?o#RhhhJ)Q14=jl`;`8pZXf&ny?;)&G}#}Ve`K|Im%;Xi zNrB4u>QwnPHJhJE?fN+FVC#9iE3K1C!q>jwU3cEEB164p>(uF53u~heW!Yu@yLl)1 zUe3L&e;;S*@!wL-6W-qZyW#f9w~y@Dg}2Xs{mkykH(>4kUUlzk>G%DOu#04lMYc(Svl$ToON%kc7?xuqjpri5qM9rk!{A>g&(pm#=oEJTbcGbCs?p< z70YDX7xN6yKH*~V>GC$}Y*Oj)ZAxdm@P0v+OMHpeeRH+X4u{nAS!Vp^o)^h3yzQxA z!*$h$H8VM*`Q~*h$FaPa^|Y_UccbzA#C;4C_WZ1TwZ4RVp6~KS7rQIsUYaw-+!N^i zcUQ7E?q1VJf2KElF25bNZT+#Afm{4iuzXO1!Oa7gZ&sX7cH{pbq{hx)a4NE4Yn_5& zb!yJrO*isIZ}OR~OPKfK!J|2$OD+m0Ed4K+mwiEDyL5BsJGNx5Zq1?|!3gEUk~3e( zNp$c0v`XP$VroR+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(671z&_JFVr|gUiBo|s)KkDQH&C|& z1{#233=GlEz`@|uyps5k%7WD5SWxQ>-GE9pZ-*a1rT2j2$lNg9K)QkP7|;kv8z0=X zN7vZV#vPmqRB{ohQ4mGrbD#*k?n%xs0*^$aYyWclw)ktH_8b-l1_2c9^*|B0_QZk$ zY_9&c_HEleU{x2UjBfc1U_gLp4uD3K<^uhWO?zI0w2%?d^3y=8WKb+$$^+F7@j0>~ zSVN(AwU~9cJ_AEsC@TX$ib;ZeP?L&FDsxi7)0OC9fPSDPOn(F8Nm~@nXva&Un}a@2 ziZI8j7-kOABnrBA^obXQc8zkVcC=|2bQ91gA`m7-RX|NZnU+A;k3MRQ(Eqjysvms} z8Qlo<{x`yiXN_2U}x_c09&^g-7NIJBf_lh&B$h<_9W3wLGNlIOgYyA p4HcA*7rK7*_8>xkW(QIhLv0-fc(Vd?5GYp(G9&`CM|2;E2LR}AKnef= literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerInNetworkQueryTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerInNetworkQueryTransformer.scala deleted file mode 100644 index 4514dc2c4..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerInNetworkQueryTransformer.scala +++ /dev/null @@ -1,63 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.query_transformer - -import com.twitter.conversions.DurationOps._ -import com.twitter.core_workflows.user_model.{thriftscala => um} -import com.twitter.home_mixer.model.HomeFeatures.UserStateFeature -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam -import com.twitter.home_mixer.product.scored_tweets.query_transformer.TimelineRankerInNetworkQueryTransformer._ -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineQueryTransformer -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.quality_factor.HasQualityFactorStatus -import com.twitter.timelineranker.{thriftscala => t} -import com.twitter.timelines.common.model.TweetKindOption -import com.twitter.timelines.model.candidate.CandidateTweetSourceId - -object TimelineRankerInNetworkQueryTransformer { - private val DefaultSinceDuration = 24.hours - private val ExpandedSinceDuration = 48.hours - private val MaxTweetsToFetch = 600 - - private val tweetKindOptions: TweetKindOption.ValueSet = TweetKindOption( - includeReplies = true, - includeRetweets = true, - includeOriginalTweetsAndQuotes = true, - includeExtendedReplies = true - ) - - private val UserStatesForExtendedSinceDuration: Set[um.UserState] = Set( - um.UserState.Light, - um.UserState.MediumNonTweeter, - um.UserState.MediumTweeter, - um.UserState.NearZero, - um.UserState.New, - um.UserState.VeryLight - ) -} - -case class TimelineRankerInNetworkQueryTransformer[ - Query <: PipelineQuery with HasQualityFactorStatus with HasDeviceContext -]( - override val candidatePipelineIdentifier: CandidatePipelineIdentifier, - override val maxTweetsToFetch: Int = MaxTweetsToFetch) - extends CandidatePipelineQueryTransformer[Query, t.RecapQuery] - with TimelineRankerQueryTransformer[Query] { - - override val candidateTweetSourceId = CandidateTweetSourceId.RecycledTweet - override val options = tweetKindOptions - - override def getTensorflowModel(query: Query): Option[String] = { - Some(query.params(ScoredTweetsParam.EarlybirdTensorflowModel.InNetworkParam)) - } - - override def transform(input: Query): t.RecapQuery = { - val userState = input.features.get.getOrElse(UserStateFeature, None) - - val sinceDuration = - if (userState.exists(UserStatesForExtendedSinceDuration.contains)) ExpandedSinceDuration - else DefaultSinceDuration - - buildTimelineRankerQuery(input, sinceDuration).toThriftRecapQuery - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerQueryTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerQueryTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..a3ef66bc1b32f0a34d718bcb36f68118e88cc803 GIT binary patch literal 38217 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

hQqsH8|L@1XkeQ0B z&A(N+vwL*1Sv_I={w;FN{*ZoJf51D1)5_ZllBTj~98|^G365Ih_N!o>VqFvW;@nwW zCweB?l5p|8myL8-pDOHA;1oQ3W+^0rt@GFG@_<__^78oy)6Q0={Wotl3H#M%lmnq@j;Fg zhWr=;8uh*!!$H|j9<2gwmss$|8qS+>#<12Op*FH#g!O+4mPvMTSjRR#BO$aTRF8cUP9bb|>2meV7u zpNWG?kL_pP(^FVSZ2Vg$dt#KrSe=Y1rQnda_wHwhjrEOZhv)jY^rSn6VFrrm)eAiX zdzgeW&v9CUDf9g^W+>0>E2pI%{ZY}F_~28}(8T4o5Z>UYuh?*-@Zk~q-wt2CCYUYd z1?beSOEGnKcqJIE8mU6GldIotbCo*#)-RwwPIkhfC_16tJ~_#`?;#=hQ=;fXo4?9r z!-0aE2rSnUWo2QrqmohAzhr|Eh*F(I!6y{Gja0Ca3qGUA;P{7<_sGH<-S1po^R%QF z%dIoBw&3GO3VaKXivX~jhUbb;-KD027HTsXbNl9Y{5VKp8vxiJ0E598Z#?=m!3X2- z@Xb1d3J}yR%s+#VGQl{q_zxPqlK7s0693uw%ceaPjExqz@c5=#4aGkU49HD^xR)RRNUg%d!Iq!6vyabOZ`}gyIcX~b0Go`Voo9d(v79*oB?2yi zV_ysRCMm4f1v_s6yHZ@$xuWEE{J)X^DzfG*P>N*t#A^Y7qpc7CqCXE3Uo1GP)$2!Si;+p3ZVoWbSM ImH6%MUo+Hr`Tzg` literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerQueryTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerQueryTransformer.scala deleted file mode 100644 index e187a0aa0..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerQueryTransformer.scala +++ /dev/null @@ -1,108 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.query_transformer - -import com.twitter.home_mixer.model.HomeFeatures.RealGraphInNetworkScoresFeature -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.home_mixer.product.scored_tweets.query_transformer.TimelineRankerQueryTransformer._ -import com.twitter.home_mixer.util.CachedScoredTweetsHelper -import com.twitter.home_mixer.util.earlybird.EarlybirdRequestUtil -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.quality_factor.HasQualityFactorStatus -import com.twitter.timelineranker.{model => tlr} -import com.twitter.timelines.common.model.TweetKindOption -import com.twitter.timelines.earlybird.common.options.EarlybirdOptions -import com.twitter.timelines.earlybird.common.options.EarlybirdScoringModelConfig -import com.twitter.timelines.earlybird.common.utils.SearchOperator -import com.twitter.timelines.model.UserId -import com.twitter.timelines.model.candidate.CandidateTweetSourceId -import com.twitter.timelines.util.SnowflakeSortIndexHelper -import com.twitter.util.Duration -import com.twitter.util.Time - -object TimelineRankerQueryTransformer { - - /** - * Specifies the maximum number of excluded tweet ids to include in the search index query. - * Earlybird's named multi term disjunction map feature supports up to 1500 tweet ids. - */ - private val EarlybirdMaxExcludedTweets = 1500 - - /** - * Maximum number of query hits each earlybird shard is allowed to accumulate before - * early-terminating the query and reducing the hits to MaxNumEarlybirdResults. - */ - private val EarlybirdMaxHits = 1000 - - /** - * Maximum number of results TLR should retrieve from each earlybird shard. - */ - private val EarlybirdMaxResults = 300 -} - -trait TimelineRankerQueryTransformer[ - Query <: PipelineQuery with HasQualityFactorStatus with HasDeviceContext] { - def maxTweetsToFetch: Int - def options: TweetKindOption.ValueSet = TweetKindOption.Default - def candidateTweetSourceId: CandidateTweetSourceId.Value - def utegLikedByTweetsOptions(query: Query): Option[tlr.UtegLikedByTweetsOptions] = None - def seedAuthorIds(query: Query): Option[Seq[Long]] = None - def candidatePipelineIdentifier: CandidatePipelineIdentifier - def earlybirdModels: Seq[EarlybirdScoringModelConfig] = - EarlybirdRequestUtil.EarlybirdScoringModels.UnifiedEngagementProd - def getTensorflowModel(query: Query): Option[String] = None - - def buildTimelineRankerQuery(query: Query, sinceDuration: Duration): tlr.RecapQuery = { - val sinceTime: Time = sinceDuration.ago - val untilTime: Time = Time.now - - val fromTweetIdExclusive = SnowflakeSortIndexHelper.timestampToFakeId(sinceTime) - val toTweetIdExclusive = SnowflakeSortIndexHelper.timestampToFakeId(untilTime) - val range = tlr.TweetIdRange(Some(fromTweetIdExclusive), Some(toTweetIdExclusive)) - - val excludedTweetIds = query.features.map { featureMap => - CachedScoredTweetsHelper.tweetImpressionsAndCachedScoredTweetsInRange( - featureMap, - candidatePipelineIdentifier, - EarlybirdMaxExcludedTweets, - sinceTime, - untilTime) - } - - val maxCount = - (query.getQualityFactorCurrentValue(candidatePipelineIdentifier) * maxTweetsToFetch).toInt - - val authorScoreMap = query.features - .map(_.getOrElse(RealGraphInNetworkScoresFeature, Map.empty[UserId, Double])) - .getOrElse(Map.empty) - - val deviceContext = - query.deviceContext.map(_.toTimelineServiceDeviceContext(query.clientContext)) - - val tensorflowModel = getTensorflowModel(query) - - val earlyBirdOptions = EarlybirdOptions( - maxNumHitsPerShard = EarlybirdMaxHits, - maxNumResultsPerShard = EarlybirdMaxResults, - models = earlybirdModels, - authorScoreMap = authorScoreMap, - skipVeryRecentTweets = true, - tensorflowModel = tensorflowModel - ) - - tlr.RecapQuery( - userId = query.getRequiredUserId, - maxCount = Some(maxCount), - range = Some(range), - options = options, - searchOperator = SearchOperator.Exclude, - earlybirdOptions = Some(earlyBirdOptions), - deviceContext = deviceContext, - authorIds = seedAuthorIds(query), - excludedTweetIds = excludedTweetIds, - utegLikedByTweetsOptions = utegLikedByTweetsOptions(query), - searchClientSubId = None, - candidateTweetSourceId = Some(candidateTweetSourceId), - hydratesContentFeatures = Some(false) - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerUtegQueryTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerUtegQueryTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..7ec09faee31a821ecaa7e70ccf977367ddff62ff GIT binary patch literal 37635 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerUtegQueryTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerUtegQueryTransformer.scala deleted file mode 100644 index ea051f331..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/TimelineRankerUtegQueryTransformer.scala +++ /dev/null @@ -1,59 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.query_transformer - -import com.twitter.conversions.DurationOps._ -import com.twitter.home_mixer.model.HomeFeatures.RealGraphInNetworkScoresFeature -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam -import com.twitter.home_mixer.product.scored_tweets.query_transformer.TimelineRankerUtegQueryTransformer._ -import com.twitter.home_mixer.util.earlybird.EarlybirdRequestUtil -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineQueryTransformer -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.quality_factor.HasQualityFactorStatus -import com.twitter.timelineranker.{model => tlr} -import com.twitter.timelineranker.{thriftscala => t} -import com.twitter.timelines.common.model.TweetKindOption -import com.twitter.timelines.earlybird.common.options.EarlybirdScoringModelConfig -import com.twitter.timelines.model.UserId -import com.twitter.timelines.model.candidate.CandidateTweetSourceId - -object TimelineRankerUtegQueryTransformer { - private val SinceDuration = 24.hours - private val MaxTweetsToFetch = 300 - private val MaxUtegCandidates = 800 - - private val tweetKindOptions = - TweetKindOption(includeOriginalTweetsAndQuotes = true, includeReplies = true) - - def utegEarlybirdModels: Seq[EarlybirdScoringModelConfig] = - EarlybirdRequestUtil.EarlybirdScoringModels.UnifiedEngagementRectweet -} - -case class TimelineRankerUtegQueryTransformer[ - Query <: PipelineQuery with HasQualityFactorStatus with HasDeviceContext -]( - override val candidatePipelineIdentifier: CandidatePipelineIdentifier, - override val maxTweetsToFetch: Int = MaxTweetsToFetch) - extends CandidatePipelineQueryTransformer[Query, t.UtegLikedByTweetsQuery] - with TimelineRankerQueryTransformer[Query] { - - override val candidateTweetSourceId = CandidateTweetSourceId.RecommendedTweet - override val options = tweetKindOptions - override val earlybirdModels = utegEarlybirdModels - override def getTensorflowModel(query: Query): Option[String] = { - Some(query.params(ScoredTweetsParam.EarlybirdTensorflowModel.UtegParam)) - } - - override def utegLikedByTweetsOptions(input: Query): Option[tlr.UtegLikedByTweetsOptions] = Some( - tlr.UtegLikedByTweetsOptions( - utegCount = MaxUtegCandidates, - isInNetwork = false, - weightedFollowings = input.features - .map(_.getOrElse(RealGraphInNetworkScoresFeature, Map.empty[UserId, Double])) - .getOrElse(Map.empty) - ) - ) - - override def transform(input: Query): t.UtegLikedByTweetsQuery = - buildTimelineRankerQuery(input, SinceDuration).toThriftUtegLikedByTweetsQuery -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/BUILD.bazel deleted file mode 100644 index a337a328b..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/BUILD.bazel +++ /dev/null @@ -1,23 +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/product/scored_tweets/feature_hydrator", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util/earlybird", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/feature_hydrator/query/social_graph", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/transformer", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "src/thrift/com/twitter/search:earlybird-scala", - "timelines:util", - "timelines/src/main/scala/com/twitter/timelines/clients/relevance_search", - "timelines/src/main/scala/com/twitter/timelines/common/model", - "timelines/src/main/scala/com/twitter/timelines/earlybird/common/utils", - "timelines/src/main/scala/com/twitter/timelines/model/candidate", - "timelines/src/main/scala/com/twitter/timelines/model/types", - "timelines/src/main/scala/com/twitter/timelines/util/stats", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..40184839deac9e7bbcce71459b124198440233f9 GIT binary patch literal 37008 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 a7DH_v26(dqa}X$32{I%Cvqx7ihz9^BfzxUL literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdFrsQueryTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdFrsQueryTransformer.scala deleted file mode 100644 index 9b2ac341e..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdFrsQueryTransformer.scala +++ /dev/null @@ -1,41 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.query_transformer.earlybird - -import com.twitter.conversions.DurationOps._ -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.FrsSeedUserIdsFeature -import com.twitter.home_mixer.product.scored_tweets.query_transformer.earlybird.EarlybirdFrsQueryTransformer._ -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineQueryTransformer -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.quality_factor.HasQualityFactorStatus -import com.twitter.search.earlybird.{thriftscala => eb} -import com.twitter.timelines.common.model.TweetKindOption - -object EarlybirdFrsQueryTransformer { - private val SinceDuration = 24.hours - private val MaxTweetsToFetch = 100 - private val TensorflowModel = Some("timelines_rectweet_replica") - - private val TweetKindOptions: TweetKindOption.ValueSet = - TweetKindOption(includeOriginalTweetsAndQuotes = true) -} - -case class EarlybirdFrsQueryTransformer[ - Query <: PipelineQuery with HasQualityFactorStatus with HasDeviceContext -]( - candidatePipelineIdentifier: CandidatePipelineIdentifier, - override val clientId: Option[String]) - extends CandidatePipelineQueryTransformer[Query, eb.EarlybirdRequest] - with EarlybirdQueryTransformer[Query] { - - override val tweetKindOptions: TweetKindOption.ValueSet = TweetKindOptions - override val maxTweetsToFetch: Int = MaxTweetsToFetch - override val tensorflowModel: Option[String] = TensorflowModel - - override def transform(query: Query): eb.EarlybirdRequest = { - val seedUserIds = query.features - .flatMap(_.getOrElse(FrsSeedUserIdsFeature, None)) - .getOrElse(Seq.empty).toSet - buildEarlybirdQuery(query, SinceDuration, seedUserIds) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdInNetworkQueryTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdInNetworkQueryTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..bc5448bbfd2bcf24672efd20f3c3fdb15a06eecc GIT binary patch literal 37649 zcmagEWmsIvwm*!!dvJGmcL?t8PS8ezL*v2Sg1c*Qg1bWq?iM5v-2LB~nRCv}x%a;B zm*$~rt)Hy5dspqFfnNl|`7;M*RAZh}8T zb4Dc$hB+ZC{mzegwO**px0zaBLh{7WFiX3T9J186aJ_)})QV?MDuGOPQD&EDZV;xf zHOu$iG&eZwZe2gWF-GW_c%EKRip~RAEKPNs76!>sD4d$m7<71T;S5iH2ZfV{+R+Hj zF2jetF%|ch34agr2Z;cwoR=kLYOQR$OoXq2yq_aX&NZb!nKUL2xPEb;WN2`))^x64 z?JY*}96|)3egEOm!|XAx&2a=%Umks}uD5|<8~Wn}U>8DNH+u+~qy6S6kaxVQ#qgm+ zPd8S>&*mst2H*Qm0wwFXCy0)wfy^)&CWE~ruG%-`uK(_it~icT_+csB=x%OS(P2U} zU|Z_O2|g7&;rhcrADYq9h)^Ji;i$RV58|aC(Uk&UVeM7BUM7mKaLxgSE|c=Y#SWdv!MHE*jg7*Wgm& zI|9i(HFiRD?K7foC{RQ#sqeV0v`B>+HZTYE=^9RF#A?JPjp-d^P|8BelhCgbKhkQu z`7zA`U;xqz&0LYC)onlQJtFT#nm@{z1c)BRJE5zmD_OAN@)n`UI%8f-$R13`R>Zeu z;e35;SNWh{dBJ=bETOD!zA}My{5P&Ke*8ueeSb=7AX7^qPh*}GM@nz2pv=)3xK(b3&6>h#T?*b`THWzP8?V2 zXGN2`^Oc%Y)QY%5gOie_2S19GlfepHYP;p+QnVk>;hx;wEppJyV{j+l6d1m85?<$N zYJoHlO$;RoOE?R(h(y%IeqA-gS$oQnqUWnl3F$lQd7QnZw&ph<>xojuM?$E}ft1Z; zGgMdz=cgE`=i;3EG)0!(s#cPJD6WpKxco^=G?Dfz1v2R#7TwRlK;nobio^!=@|F@} zuq^bleDH|W0aJx3BdFP>O88)xZF?wp{2D#wox=@%HvH9QVo)XC|OwrGqyuCk(aJTX8SevGt%6;s7a3|bJIkyyvCOU!DS8zYxX zfNEpg0s1|JWAlAtxrq>H5O``Fds-B;f^Ag#pou;HP%xt6ypGUR8#%ncI(b0u3RMAJ zj;%F_Zs=@0Jytyr!vy~^U0bDQ%!jhNd@!dLN!+CsMkS`Ln(WBofQfy5Dz1QfuI)Q7>@vXNF6rds#sF8pczBVLsxKjRz#}hzJnd)KVJ3^(5H5d3 zr}Uee5tjNgURNo%!(2rsR5L_FnM(9zMnb?~PIsz(a3Ha$XQ-qfgPqHTkM2&j9SUp% z-viJNww}y( zKU;P*d9AssK6_%;Fxy@C=2&btZ!$*4QX@x9_2Q}W)AyRhv|4Ia8RtWg5`>MG(fQ?ae26W+%y_Eq)Oy5W7!|d%@DLviKN^ZQpwuqJQBCbWZP9zb zv|o^S!9@NpxJS&mA{^hof~-cRMfMrVW@zpl9JMW7PwymXqHI&V z>G_9-v$p8ZJMC4mtVYgCTNm}jC{iWAm|??N=I|v-?GlJ6a7OhJ)zGXi%28ir;Ty-T zw6!vQFeSZzr^i9WAH5MoHN?_AAA`2wT!NG{;J$RSuvhh`M$&mXOj z0$?tvz`0Hcq(YmygRTN9ocOoK8VD7}-dnB#5!A21?dtu`X;a6Nn|q5s4|<(sQPU$6 zrG0UKJT~nJ%MB8)I9Wj5(-DY(nU5=i&A*z5ihPphz*qb3#m>nhgYlw`9u0kBxwdKY z9=A*u>%#$L!O=V0%bc&Gw4#MGLtYX$bkX1Dl#5td+2*g_Y%txYE?ZnLaH8iA1q7bF zO4o+Vk2?ZeBK0vl*;Cwv7@^U;ki@Wh!-bh~a$C#x`Nq||uVB#PD!Jj4W9 zhK?X{r#%Iz_~wV-xju{7TM?|B?WWXyo-CEmTZXZ0?*E zyLC#Dq9MtSK=5^^uRXdt@U5a>2}Kx^r+VWN-RFulvblZF7uA{AMM6zt)ZtOd0Y&wFSFHCNodpAM|@ zJ%&5Svz@HtCNpF!5-3G>(M{bWeja$tNwD6&sbz=aH>UxrJm5<_&zHVm*{gr`y-=~C z?f*VPvl@y=^x4Vb`ZmrE@@X(U-{3GiyB(lF{|UKlUVtT`INdhx<3WdHGK{Z*T8V_1&!k&bmpqeK<0m#F$7Z z%zufj`Q%_U>|Jz3sKi9?pP)U5&VZG{hVMTB|<0)Vp5=)a~@rwZ*=n(kqF#5__Ba>lTa> zJAu1*+I)kJcnpnlLA=ors93Y1DwY_6)~IR6Jq;++*)%LS=c9K! z`Nd>S>t$z^-ImCDhHLMZQiE1dA3D^RrFj!W3N9*>owI{)H}@8V{x7gb2v&{rgc2ot zfzOHtF&M^BT6bBH{T%luHeBaKZ?Y!OyK+5K z3&r;k{GH{WwT`L85r|>|12fWu21ETfjm-ao8gw5QFtKOM~eylD>$+dcAnsTX{8c>B5$$^u*=F-k2x zpYA^hOWWHXUp;QAd>KE!Z1h^Q=P4B-sp{?NRQ|*l9$o)-ZPTFV^EAIY?(GpN^5&!i z=tsY6-@V$u@qBkuIr72yF06F1AJ`;J+;0tB&KdU6b#z}e{iI}?mo|A+Cvqy1{fZ;3 z;PU=LWqUX*_}-Xh^$8@(W7B`*1a*A)*FFkra>f4`q4nTI*_WsTxliWb=1uU-RoS&_C;XxsiCZQcEN5civoQLEQv? zmLl<$$vGi=8>oHgHtVe&pQlc3c>bst21L)G!vEL~-+8`)-<~D{^or7G_Z2w7B&&^x zzpg`tE)F}z;GYg_Kn<&{5qYUI_R|&d;|*o$XpgfD#r1!AJ?OXchkLnRfBBeU@LUI6 z?${I*s`fZL4NK!W&EZi#e)BUr0}9pTIxfCp4s@kPx2|-bC>^ZE0e0?xynWH@md+vQ z`l>I@{XqBF!|i>?Mn&^_zq;?vbAZTKelhsg9!^MoYbNVu#8QaYO`wI4u>)8Cc~=hE zv=Vi@43$ldq)(H?tV(!5(l4COH+&Z8=H7KZd}1?5gJ7ib5D_%10W8>}NXeybmE5C2 zAXWhl^)iU4)&W5O?K8d%*uHx+yq}O+f)#dDT6MF8z^5@g1gyzObx^h$%yb|BsQ zKKQM}ux4TU>16iN>CX9OSoZcxdn*5Pl11grmb55asBhtR43TveQoN$*3E+~%rbX;sJumG&7Ze0h zYi~N1zJX7lnsb zsOn(LECg4zzsPNQDaZe;7s>egv~JTWP;)j=v>aK-#<3~8q~oxYgjU22DF>&Pi9iL_ zdm!mdc9c{Y!q}v%CLX`?k&X<`dIPJ+81AYh04u~xT@+!ZgN_u@VWTR$PzFwof&nAQ zDX}GhH0y_WgG~rV*L$P=vj`YcHK>Q2)gfkJ8N(zdj`y*8kgcb_I{YUDbR8ZwK zXSQUX|3z@7N&y-{_(Mf%2ed{0|B(0}sCe(o8l0dsP}JXrxf6i&sG)(pVm1C?B1L5S zFNsW~a5P?saDS+tOY&$!>-Zh@@1Y`BiN-1S_AX4L9DYf?dD1RoEjPcj2XKE~e?5|g z_LLqu1gXF@n&kMh)@IMHP5(Ab{UrxiLP?#uedqS&;c@#{#%LjC{nY2P!S$ybw>Cq^ zK_9W_{>2IR{0~c>SNiuuv$?g~p0z*cg_RHX_D2i0?_)Ma3|np_Nn#y$n3qLU3}Vl? z67b)ioRB1#yrxai7}v^)vNi|TNN-Pp?n_x7$b+k0%>Ki{-iSofX`^HD&hz{AYOf|Xj%&q6d3La=WiG?#oS$-1shFLE=u@w1}1^+Bb z3~kDixn+xbuN@2Hh2zCs@ds4U{S!{n-*@D3boX)g70tFMePF}cE%V;tsYU$pF!!8F#px~Q_Gq6B2goee#roGSvzuoG22G8!( zD{=6|>K>fZdk&z==NalWhVqy(%z0hrxt75jO2pYDMsQ^_i|WTLhGlERJp&1ftZ{hi z{WM28N zp68)221|b?<~;fY%lGK1G9=G9j54(;4Y!r=9I(a1ya+H*=yq=3=ArO=E}>lHJd-l7 z!Hr?-{IG`1;u3RCZjJV`-+732w6iZk!lU}WknaRn z$Y{PcV>iWgB`k{V+wz!xzVK{BrhIxOMPm=%VY--;?WCoc=)-=W%uf5e&(!DqN`K_+ zo(dLk%C8Rs$}6_D1nz%2XJXBgv}~S{zrAM6wNHCIUJqZsUJea|?qz&JYJ*Xu-aha@z6qcR3x}r!a zj#H24-ln0*L=$}N&^XOeYm*NKe5;v%ddBST_EinI;L>~6lzeC;eLx00Vb|d>+$6#@ z%OTs7y<0lU2qdUXmCu-E<|>V`P-^$s4-x-$b(GT~G^Nc}=O(E3u8tT5%ys(s`Dc7D z^o4$5$@HjNaW^@kuSZT%0YKNhDK~|>U~K$8ly8bSe8MH6$}q%oGj-Kse;y{udd-#> zg(fJ7xj>+$HK|9Fss%%Dzz{_nw@ndck%x_6C600J*~OK!grkx=RYUUJPiMN(EMssv z;%KFX3$SsFi1+h|UB_l9C~q%bIqU7qGETRrve6ucSefs!rc>&6SpXLy%mSLh7;Oe3 zyVj3~C|l`~N1{!|YXt;+{dA%?^x`hJopA!L#j;v@Y^-Wafq=Y?fxWmgPjse15)I{- zdQ_oJk(YNZ5>q08>%KNsm-)gH!&`R3vCFY#`$NT!%fy~|3B*WG>r7P3BHrTXt~all@Y9AO#R&SaB@Ij)WlJ9U+-{qE|JFaf z*}TfNdUlq$n4#I9g7E3>{`GNz5VuMmHH($Ed&!ftPScdD5J5?Uvf=|j?@~qGvDTpS z#a))YB4zE*yf9S`?=8vUhe7Yc{*14;bC@cjtI_nlGYMq{3x{Z0gRPF5jC~i}?JZ_A zYzu=o^Hy%XkgHNAn&ZCSUbaeA21bs8dINK6^6AvoI7({<^WQ)I2rsAlWPa%V;M~Ul zEB&T2?J$Kr?kf;1w2Zy6cL|J;j`ZuXC*bTuRvq&O!KeOlZGttAXcptJ^9|Ew$kH7m z%pv9<69V?u8qTFkyzSHv7teFp#w?PZVjC!#9OX**s0KBZlGg~|>TtGFobIX^e!S2C zv5OZxu2kuca&D`+=SNXGu4b6MinD9Aib)b`M|Tp&%;pkTc(ZBieh5T>)(#`)$Rqa_ z8gpCa`BgRQErv-rDa%{ZeK$AV>0Q$51LxM>bV((5rs5pqHldui)scO1S%z4-YF_dB zoiaqNDu27wqLVeX)i#-C*LIWk5}svQJr@JpQMN>?VWJkwS7{zu4kfusUNQFFB19{D z>xT3qq0-{pEb?X76=)yZ*6k?8c$`tMJFm)`#AB7j0UaGqvlV5xgRSZ+iq_rzBRpL^ zgt#6ubJP*Ede|S$_GcfLIGS0g()P%sdutfMs1z9xA9WUEiymOxyYiktsM#I9qr||M zmX%j?ZzJ=WVw7GcW2&ioG+Asa?Gam7@7Y+gQ^dPjE+@J>jJe~>d8ifcvwhSgk@2c5<4P=={>A%hwNEz=eT90lTQI zBCc~8R<&GJ+4;7lU!%p@l51te)}kD`WAAb^O1}TH1L6DRgf9Px%mja|qMfqzfBfzYdA&W!+&J*qxiah@?Dw3X2TWQ`#)701wxs3z67mI$ z%B=u{Giy!mIT}+bY&?Uxx0Z(mmt$3%q-M9Mki&|;`&ai=T6-yKW_QiwJEL6=;Co)d zHzGWA;cZ^K!Ist?f=wzIE;d%jlE(+9mv5z$+nxw9KGPou5r0nIeuucHs^m;wTUv(J z8corx&WX=~aL;sbI8Bg$&{l0T$Z3DoKYf&tCPBqz5-LI-Wjl74)jG-1+%-WyJL>9# zDIgBwoHPG?8`fQodXN%@y>E?=Xk44`ms^W@YTIr^e0fg&d^KxDfZ2I?XM021^*NiW z(C%O*ipaoHw*27b^<4XG9x~Kwb1KnAiB7Ve@Y|5^xuk0q%pscQIx&@8uesgq z7u`KKvEAT0;eF{~WVcfKF}!D;V{y-68u^Swaq@ZU8S{C}dm>0e&VO(Vl=RBp+8WOg zR0Lto5ZILpLw0`Q`DGWoF?2dtkNXSC!UMij@!;y=!bJ~T*Ny<5yvYlQ zdbrL6OZd)oNF{^KJ81oXc`1P5Vy?$w2Ce9YPf)d=9G(ZnbYu+S9;><3_u z=Rz+-8w~O_EFL1OgJ34HB>*)Mhm$Sqg8}M3?R&*2c`YV_ZbV8YZrku3E;`}>{;3Oy zjR5Xp#1Zmq=~Sv~D_RK4yjH>B87WDea0U(^_~I^1lS0)P=8X-knR}}3-;W4(-%ZOSy{qp_ z7iH$6MSsV!c!laVx2f`;ij*0a7PS}X!7m+5sGT`EEK_`TYMlDEPO>pAekEC0B@xXg z;F$Uo_vMG)^`q;x^gfODu=>%Z?^UBLR(ZJDWb|SF6xpQR?y|dfh1G|Y1XWSLyGINt z#-Xy9aR{3V?z_#Gi1&r@>U*to>h%tpvUA$F!H0MJj$bhyA3;B>OpQ_~Svl04b3ka{y#^`m%5u!5WKbHGds?)6azKYi2pj+tpg*WeqpfDc5Do ztf3O_z;8{w(t|<>UDUyWdbW0!0ukiV);@t}#_y+yk>k56Y}(>{3pFcBzf8|-KT_n* z4jdfOLR_v)mqrDg-(G1zF)n4TOd~`i&_f`^F}y3DW6q5vrhd=U0#_#QS*a;>^h;7n zN|fIxu#ZeYl52M8yw#i9Pm;1#O5Trk=CxWm>LRe)K~@M`9?UIt{M9I*`nMVE>8=u?%CmZdEXCTi7&0<2s!H3dXTRkYs%?~L@HoshN zu)#+UI4|1xBLg}bGG?Vj?{z0ZMRWu&ZNRU5A9@3YMWpRME1b=wD1{nan7N6ml60Hf&L(dv2o-MY$@wqEtd^{?I_W8gaty^jJ|MC3+d7 zRh}~>tZl9=ddVl`TN6v3$Djh$K?qck5)C0IB{F3Cw>bo&CPk^9SX`lr7)M8Rm9%rM zN^iJO8f@@Yy8pA9v?EYCXP&{wBR_+pGu!@`=CMWwh}7hA16W9M(v-J}aN=NuyM5C- zYMhwQEzh`8-W;hm#jZ13+;2aeyCQss-CFtDh@?_(sE1H=$;<@R3{+7=(tQ3wPiWJX zMEhcvNBTNi`Rd&Ec==H0k7zpQ*NI3)OH2^+-pHAv4P{6>_?{-LcIu7_u_%M?k*g6d zZcX3#POGMqEVVaJLQ_*L1k#f&9GDKC)wO^`1)#Ozx|rxou0v7&l$2=UCCJaaS&LWd0+#q^j&&e zd?CTs;eZLg$de%tO5t+EonHOto!(-?e97)C!2F6e14cQ}AwejhEi>y97mbtn}d|$z1l^CTrA(IH?Ofra;E2*OB zatO!G+0L)bBL=bRx7Umqsk4*6wWbJoMQyS7(&2<$!InU>htv^JIhpf)RiDEY6(;leCE9~VNg6>a`(b~pgaZHa*=)G&r!VWig#@kxLZA$|+Y{tSVB;HPcp#BEDO0$P zg0>Ell$Ah&E-u{2&FzG{-^qUvS2;V%p-Qw@ZL4(@_G*ClR>0EkqEH{bnZ4V0;n(YT0<+ZUG+zgU{8Ryh909h@WZVd2mZrATVq7`tp3uIOVqWuG{Q97$9WZh{kEHeXU$YWH6@$X zuu2-tTMGQDy`MF2Y+upBKm!^~;OB}FpFd6@_lLbne`ZJ05em^ zxMCdqrutlkY=5qpg*kpdz!$^u&btHSph~Lg_q;oS1=_)!^4(Zg!zC@4{0lAEPSzje zOjNQ83oy;*G*c0lzB^e%=}1CG5v~gbdcWt}k=estk4k+kr*yrXf{TGpkj_efjHf1A zaI>W^3g+_Cq+Ue0;#;#{ds0p5M%n(MgnNW^syz2Jh0l7AjUe@rjo?2D^NIF}+(ff5 zC;wFF{y!C7W?h9%CTv!5d#mP)os_+E8FeW$fV~{Z|IRcrTT}FoW6w)tP@)&5w_-s9 zR@dI_S)y(;J2qjH==TbJ_^`R&&G^<03;^X*&Kav; zb#uf1N~?R#3b_>H3d+wQ6_MUPC@caPx)squ(^*H?{m9)EFRYSoz<(?}@gJ1>{tdKd9X;#zE8q+<#Jkr^1Xv`9G*Hx(47o zB65v4eB0i4n!q1bSM*{y&gL*O273G=(+TQmrffeJ!HlBt4A(}HuN!dEA-C9e>`&x2 zFP*L%5bfOU#rVC;E`HbIGl%pS`K{Xsh+G}^5Aqf^PRuCg|ATzSM0V>THf?jw3Eekxd_~A6di#1fCRcECzqs?cvjnQN z=!sDWCGuws;7jt5-%_3!{R*GfY@xqmXLj|`g-7##Jfn5R#w?hg>PeG=GLf4{|EhLV zC#rFM#y75;qOU^bP89Z~!l~<8p`!zyO!0y6H{x}3K4fTA$6!>LOB0MD$4yNV_)zYT z>kNIQw$ygOT~qb!9}4WJ5ji%J(@^%-75fAhpZA}b#YFB9v1$TYj?hz}-skrbwBvHz5lVP!jsW=;60>3n+G0CGe zTU1&R`?X`6v-(9?F=Mvz5nGZIS#oyF$5QvGvp&4UEuaLRvppgAY2_#n5<=+Zl*$TC zF^Q}D;#;{=2KBo;$yv?<8;E8O&8wJM&Y$HKh0FkcMY~Qw_9^S-;Biry7R zW#a@&vnyx2<$Q{j#$uAQqMX$oX%)pA@+lwmU_WGta!B?By`}Oq_PKjse_gElmq)$3 zlF`AxfnE8`TKr-1Cuj9d*U;D5#+84Wl-ED%EROioWLU~?le~z(O?Eo`|C!`fwCkR3 z-{-6bf=ptT*u3%E=d=*&cahs`tWw|EcYjon&YRmp7{o4P!B0&Tyk@dv6e>QC_L!$HC!_$*nVy&!lm zwGIY*paHPpper(jbIAg|XRZ5SLIX&qt%IRkLMd_hLA#DE$Z$e1@qln}Q>a!_*<@0d zG8$g7>Klu&1c(W9I0n{Ed+r?AoYu6a2pkoFCNhgtdz{q;M8^~DcBmOkgNY!CEBC1W zL>;V~0_5*y5^5xna~3ijd>a~s*6|z7Q>+?RFYMws8jI5{%;XS<_R{#u0Ag87#V6cW zhx2+*@C}%_b8)g?2e)Qy+rJhX(@jx(5z*+-I=~Vjdl1psNISrADI;)yK;J;K&~okm zWHk!#LfVGDZ86L_n8fKbTA(%(?bPJz=s6iq9z;9`Dum!hD&7Z;+E3-fqj3BZt9}Jj z6Lqi!cOf+-1#L4t!I@<+SVjZ3z zbMXtikx{cPzF&1DZ2iQIKyXs%-yg8`pbwa4AULCp`%6$`Ue^|M@yRIB5F%?FSx1i% z7VD+7@RL4EYFg7*Ao!Km{5gb2m^Thfk4G7%5$&l*<`k^C(o#F9cqbL0;+??3js)7b zLjALN4!H(@6|b(-zU%YkQWEQ53K9Ad_l^m-#|daAdmwF1)M@g{J!#>*%Ly?cH0fcX zw-U$L#7HHbG-L-`DG@BmOatX;OxuVyi8*!A*c#ls>6bnB_y>ek#A)^qxi3ZNf{;hi+<%;&1lZV67o zerA1h_mKB%7r1CgITxV$jC8Q(*DU&phLyHVNcpBN9w<0p*oS`}9?P)mTxz?PB+tGutgm@W#hQ3MBRT_gHewM#9nE6C86-mC1XZ+;AHOH4rF9#ln=pO&r@Un*v{(gP$sG;JO!Wj~Y`V4b&~OZ7C_ zt$*Ct-cb0a2B4OisD+#WusdbXInFAC@T=^DiWl+#kA!FfgeVO9oO|AyI8p1emc!bO zgOAzV`^+c;w}h>Xwn`6%iTHzv|}%TW)wHq}x&W<8^CeL1TGsvpTqp*?yVN|3p;SdRa`U?or6wodK5E!c+sVfg5lL4i^zz)}jZZ1v-xj}?xRvqWt`H>Lv3&Du#R`DYofDtxnzkq2dC63|=d zEj{I7a>Ro2$_l!5Xu}d^!3w3K`2_ACy44(>$zPg+q{4|&st)0^7tAYj7bK{J<m0YilVlLz5vFCPe0LGFR2@XodbIU`8uL;X)aaGDu=a)2o zakxFIx=~CjaZqg9W>0$5u7w@#+Cq0H@RSCFnex3=amML z^cCd@IMEV7YMjq5J}IVOdhb4KoO3j7h2=or+(6LZ=i_H0085la#)v*&^A9BYR=RO- zb_S7D#8qNH)8C#}2Xb}w(ZHD_4l2Q9gl2L`ffIWL_Q-b6E1+4P*qeU$4 z)0x&IUrhMx? zv%#sIk z{iS@%`sliFtsn3s#@BuQ^B_^#)}q+vkvGWC@H_&rMyGeWIEVx!O%YTQ^NtOZUY2v; zuq$Mk<5pMt`=8j?8s`$9=YlWh+?Jk)i-U59{?*L?wKndB4`xHUv|~Fcp!((k+&Z^F z9c70W0eIbCf{wz_YdjR-p6+M|gmzx!rS}=J6EIBwKwf|m(Aj!7Ai@VLOu}AmFe(;o zuoz`Y=Nz7nnfb{e$SS^?RkT!6(+~kq8MREm;O@E!b$Yy%3$DO|79eEWvp`uR*2Fn% zut8{Z6fp*=iER&b0;>Yw`*bujqo@f{rqZnmFSa&%cPt@%+2z{;gm(zqg6d_P8lgf{ zBJGGGU32->W68o!injrS)UvM1Y6-X^C*2Sa;53PQ6}>1)UPfe%tyF;KH4?1<3O3w3 ztcgi@hDnGk+#9>a+k3&>=e$@?IKB@B)_Z|7rS1fJ<3E5b?zHCVa}68IQ#@hR<7{9_ z-*d4Om8Y{y;1d-0{!5b0U}q3fGtl%yWucQYkpiFxL)Vo zlNl1;jbwHo@L}haaO@2*!ZqsjKj{xR|DrE7w-(%j2ASXAZUwYQfw%7ua{hNZ z9pv!t{mV5DDj{_M1b%l1(8CK7E6O-t7EwnKRwgkyMVgW+->LZYtgSO~RK1v6KDF3m zBM-ZR{(be9n0$%%`RC$E6;*tH*NlAnm=~4vC?yxJ%@|-h7Mb74TB{o`S4>y=fPMS= zaD%XSGh(GNOGppf>LdfMB3QJ_!+Ac8cd26O_pesj=ij2ek0A|?l6v>dq-&XYh9L3M zoE?LIHaq0MQX&_NQ7U(sVZOmB1v8&NhhacaeYxa)#O_cPHMD7ob%I`Og9h)2FRJB| zQ6n{2i%s>~Dc)F0#QO}7#JHHi&QS&di;0KR(+4F@MO?yxdIiB?at5HHmR6`LRG84? zjbdw8hjnJtWKLCgbd+l~s7Z_AGBMdP=huadNtmRG3T1JrJ#npH_9XV~I?Q1@&Tc1e?}oZCLhxW;KmJwI%<{6TYKb&!cx=nBFCvAkfgN0le0mIO zi~R2$g%EM_y$wl!fvE;nwpmWBs!E{B{xo(CoWPsy2@UgajNZDskTBF*B}rW0baYwo zviRCLU_gvXDbQDg(XLAT$66675q0&4lGMW3QO2R)YsaS?3yiac^U5zuHk*_Li-&o1 ztMgjQ0n_%kAN$t6x9iMBr?~PYiwTAr9xS%2N=_N$6Ix)Un|NqqO@>Vw7@%BMB_CHMKa@KH3LB0dO@p+I)W63LEeQHn z8>7l#o>~Kr5pX&=2xw9&Q~7?xgp9rAw*g0g4N1?r*_`3@D z#$IrqI7^;5Vm84e3^s(FJ?c_vGOPB;A_}$(k49HSa2|vhv|(Nlc7ofs!Tgb4X!;p! z^L_OKJhq&BZfQP*?=hcPsF7$WPBZ2mGX2ujK<1a@k_jA|f2%-5{ZmC~&lQnUrK(nq zty^`_fifSmL3&Fh3ihkplHdiI_%l7$yQL7Mv5fC?i$Z&3EESpYl9p#^aPi5Cjynt( zyCl8sF!thUnLB$BQqwdw-DF|sh5K`(K66m)lY2BdD?aLnS7je!NT`DkwZFZAbz*(% z0o#cY&lkP18aXsP$|Qp)K;tgMBq(#hwM8YG0NtLZ9o1%aeO2B#>_X7&J+Ks{2pbUb z@&m)9B;Xq^1Sxm>jFzaCK+mXBMJn~U>@iqdK4kE8XliAcbY&+vwy1RXg%1|OI9+E- zq@j_4&+OfMl;>4JdN{sO}O4W$2XAcx;TbN&;Z zK$-kk>jgNv==E~TC_#JN_&*Q?D?#@bXBK-*I?#JRay8mz_;hK6^X&K#EI7KkNUY>r zgr+d8BM~J%k)l6*U`YpZ5H)xdvica{#bDuk>U2;*+KCVuP6w}HCy0+qk8r950758> zL}l`oit?H@%Y;CA=%tTje>yNhrI|{8X~J{mh@6oDRbo)TROKn6)0>#NDjZAhR;(le z!k2`S3|bt)jU2iuTl@r+7q>nOa_}~RPX@i|j>}HO94(E2EXcSMnC6yCUVadm##7|< zuy{f8hWgKQ`zBsNvwU1&V6L?=VEF$$x36vU@q?6=m8JQ|KacSH8KxCV*PlE+U^g8N zD(9qvk&TY~O<_O`8IA8=q~G2PS60p$X4E7e$SE(z8wC;O&tt5ie#Q8#B%>o4VPX~@QQEKy-s zZ*DNbvX^(Zem1+evD~%eZZ4OzR!{XyH2#hvG~G);FP|4~n=7|3#(oAuwYUBy4i9No zK!5+YWp$$mb5)@|JF{A z)je02{>+28TJQ2t>e{h01u#caY4(r`la>N#fCu_MskHeM)h{a z-InKS+vXxeAulcL4EWr!VUJ6an3)ZG~eBLQJ?nYy5bsnz*SN_gM*W0mD?b!xXmGl5?@jb5ozovf)())Cb*fGs7s< z8XQ{Hb8^>3W6!L4;C7#uk@N0>?!hEox$8ZlprOMp&=4MIh~xG~#7Bqlwd-M928pY? z=5~5~<;FqgOIFTpdb=^s>fpi2&dpEeJ!qbiql}01TjyzyS&5*`*SbwdwOf7jac4Mt zDVAF0sC8RyK#UnLP*HbdeY2%N@%b* z!8ffhRvj>`{v`ddo)m8a+01v+@1@j*esV zG|zPANokAqsiq|(&jE}3J+ZXoigC14HIsQ8U#@=0nH4H(gv1!6<@~%(Px4Vcqe-Nd z9}cTbg9;)ZrOp@Vs!^u(H@(-cm2CKy`_?n|j+R@T^+XhOGxoQq=H?7^nC9 zTYee>>|t~jMCtulC$STz@$T;(hr%%Gq_-5{btu*#c&pGI!6)x^Ar``$1H9!2^ufZ! z`j`Ux@wah$OkXr0h3J<8SysQ2rk9ca;BK1s+!mwA1H;6$oC18AotJ7@HO_l;98$ z7}r0v{v~Mz;)n?y01AT#h1vZT)&p=v++vk#`i-*=!He|$H_qP!{^q$(x)FL#pL_!p zh5-uuZ4JfFrBe10<@V|__9=9aY)_y1xmGr*0}SXp=g%a<)G~epIeg57r8PZGZ<4x$ zd~MS3;4*wC8=xOV$mUZSH(fcoU0fytK#I28GkEZS3Z`|#@UxSSWs#hj;pLQPy z$73huGi?{XZ6Es0EPhQ&WxsZKJhsjC5q)0#F`LTUzA1c7I!j?eM`9Tw);v~BM?yv4MF&w_Y(cb56n=xeNV0}tVM3@ zlPDAZ+-x*}34czuiPy!F2%LdiMgOG*L?bE0@#~8@$e4UCv~z&>8gZQ0tqE3;DG{T8 zlRlzlF2;f#dy#H*oZD{*%ToKe68}J!?)>W^OSaqj;$6DqErKoALRHkFl=ZCYDb5)r5ex>unL9rOgQ z{Xh=u7J8|L+5ff>tq$|iA$>0jIRulVLh4?C(x2Ev>TbgyupAsBv?nTVfi)-Wp@nc% zE>0!?8}TUoSz)CE%UbMB1gvIQgar}ZKV3Pde6sW@6kd7iSs@|10a_0t{Q4Rz#-DlQ zbFcNbcrelM+9aUIfhSwR@Y=TigOd@D-VVwBX^Aa8M)kHwe$;)p-N);>Z8OIxzSwb4 z#4aVFo{z#VpFljl`tW3$`$TQMI%oEN2D2IRmEzO6VUs+!LiZ$LE4KpcMP1+i-A#*( zgKHQHrUVn_or&8F(n;8bt|2GgWy@4?g_9S)lYKRNw)Kpii7SjUGArPV8J^P=*Ow95 z-zY*tL2ZvPj^il%V8qKXiY}8ewaU!UkM7ce0&W&PdHR8)e2bk5je|cH z@$O5%PP|KZ7j+(_mu=Sif_fF+rG?7&E+cobUZfSVxR}A$6tS{HnGoFoi4pnm52|C z;)UOH7;Q#!?4&kmE0nH=#g^%t)x_1PVfb#52CZhowR`|qYbjOLAoT(Hls4f%tf zvDs$dCcc=v$}i9>q~;%7uiYW4_yfjq&sQliJS4Io{qTO|bAsna;<~>06cFdL?;yEm z%OTa_?8yoYNb6zs@;8mq9#l~ty3==6Lq-VU*L0rM=@j6eC!XGQt8ubDxL3uW{kmB* z=uK%%a&jsVl{)RuFr~P@J?bbOesR_sd%XDyE=zuuoKStNB3iV^;EXSjgV@$#bJ?_F zN^X6UKPj3rUD9d8mDaRk-oJ5w-(cjloz1{h`P0rd=5Q=Fbtm-`{d06NI%EJ`=pkJJ~6pvoi=D zwXf$ZsD01pM@qZ2Vq>%~<~ego5mTJ%AqHA1Z&@oZ|k;_BDWdO&QM|Z@09Ta6y@}GVVlwU-<6HdywEBk1- zKV?g*a88pywdmqQ){8VFR)et9@37aq>`M5&G5^#0BD*Es@~4iLfh20RN=r zRCPakd3Qkl{+RZgJVIo!`BPkBf+dXr^5*S+|DM28C`(75?^X1jV&0&)qk{EIH}6)~ zq{6`E*}Ydg!LwJp-XmBd_v8!mP{t|?|M5E$Nn;ohkND#$R(zrH5|RsB#(|*2=G%+o z&+*Z%AERx!i9dyrKOcC?MvXHwLs4YNkP^d$Nqr%rIP^<<07ninHANO3X(GT@b~2Iu z?GNvjh*yVy{k$LdoDrQ8x+q0bnt9vsqYMhuv%yWrRHYuN8(X8wi6u!r-tbvsSY$Xh zqIL)DvNf}z_E!GHL>)GSH8)zRES!oQzjh5b6%J(Ty)BFU5+#|Dy!`=j7;;|)SO-Ys zRY#knm@~D{S1WbaetB40{B=gnYZ}K&9s4G`B@!GX;+AlrKT(;!moSbXd0sC)>hF{o zgqw|ak1Q;RhMtq3y;qX>o&Qc&-J(S@B1xwlU*#{6VF=*d?ev+GPZl@%|zF>zPHmn zE2#J|)S724bO6vjBw0*zVI)Ru?M)^+G}x0T1x`*pm8X2BFp6ldB*j@66@9z1=`vc+ z7)sZDjyyTf5^it4m!8EpS?EfomXsoiT}^ngWm42v?1+O2S-reEhlU(3QbT249XM&b zW1hzW>PM!rO*XT<_cKX__$jnitbNB-b?pxOCMKh}Tlw)49RQCe5`{|c!28Q43$jDp3^WI)jgqnl>05zW)7_E1hOy0_^bZccf90q9xB>Ge<;(UK_@0Z!O!ezafBMCPW;Q zO&DO~jx>C}T=#Y^VX}_6FA;>bm)h&xXXEA5M$AGAK7K;tG+2gP&8+^~?b*X!i!cY- zm9#BrNJ-y&*qR`N*hk}bb-T;xahW}*2HAH4c?1309NIewmc}>t1(a?`VW(|A78V@q zy=C+Ihm?X2bW@6-gAPj$1KrJ@NBbH^yZ7Bm>GHkMuGEKa96ll9@w%qxB^7a}qv2?B z--aQw&zjB00MRKS1p3a=#=2C0%}>MYm{hgogX<7h()8Ny`)hdfJWbCJbQqJtVt*MC zI8ECkrAtJ*!ej?)zy20xnAMWiDjt_Xt_ZlQjBrVYm;po8<;VP6jX$}{MF zNZ|fn2cOzF*WnbiUF=C#bCIMAI9KHge6QvBa$fYt88qogXd6E{w;=t5x<=qOX;ze} z=dFv<8t4Xv+880)%+$L-=Zfm8ORK8{j>I-_B$TeFqtipCCEJT5baykLE%hGkdxIrY za_ejkFG6f)YwYUTb!9cV=c>>aZT?C#vRw$Vowzaei2paaHA**k5EyL`;w#TvlPW-M zp{zQBKAo55!FbUyWe#z9g()Qgi{T)p^#UdBE`4tIXFbi&dg?Ha|9XS2INy`*YDMkCGN=7F(w0d~mB-acc;-!6}}_hBi2p7F0+@t6I7| z-$k_|+2_#Kl?**MYt24y6ViM?v}vugC4l-X)H`)XKwIsVYr82BxO6Od9p zm%VDuvuZ;`EFS3ZPb(l%DgOEA)v6^Dv!2#y?elxpri|8n&h5V*SjiYWE|)~UySiJ; zd0GSaPALx$Xj>0xC(29JknXt;Qcss->bhI2d0MA|hs^l5bhCpLni`aOS|_h>H*VvI zReW`~UZ2E~A7Z#AX~4GJHZ3J+7#q~Ke&}rG+rCS;2U6Ut9yixmjTh+NgTGpeWawh2 z?Pi|>6*&>y*v9djXJJz5Zk{-N)U=N#asJZPd}$hel8l+_6Jk=Gn(ZkWfn;ATWnb;r z>P?~#r08ya2YcXJ6ll-2$M;z9$$nbe9>KY9j(e`970RFq9-i9%>c_^iadN5~SM7C{ z>F2~gZV{gMl*L;@97dIsxy4s|oQzNz%N&{ZXwHi_23xP6by{y3h}*w^rw;paY!I5k zA}@@j!s=#SsYPCnpSsX}`AE_mdp#Po%jL$aB2XVDw%jy4SMoW{UxzKwj6|29&VNc& z(avXou-z}1fIO}iPacjr6Ro&iyB%A5xzZLoeI!PUJtH8x4jPcW7kc?&M6E4I=QXuf zkkzN#sZt`8V+2}<4}#lAu`^Jd?45HCICD)}&L+AtXB2Uz6sh2?@3Pm0f=ESNDxIMB zj(fKK`FKUmq(t+Wsca}(X|o0Z#e;dL2N;9(dDs3J17e<739>3*&&t&t3z(}Emvt6(4zo!dtfU)Gy42!cT-0l}|x zq(4&$1L>QChi86dixA;7!E_lXyaI&%cSvN=e}}wSGY5urz5FXA&r`@!z4^aFW!<&u63rk(1?N< zSU`p3d7eusasky=l-gZed=-We%)`i7qzbJEJG2df0de{*RKqK}dm94N@bX0%Vk8LW zS7i6(ltcWA>2a&%Z`4NZB9C%p|2EM6;lM=@VF(zMwR~8IS*$HuwW|zO91>*KeCPEA z8m7BiTNo4<6S(_en9KBmw0`&Hx6Q&ph*}8`J47Hzw~_l{h`~OKK7kUj>=r&GRqrjxkwcA*tV?D2O1i|pI z1an)XXs`w|2WqGF!=Pxqj^%+r)sSbyp@3jz_!F1q@XXWAP@42+OaRY@{~nrUEeMeI zN1|1Hk{b^Z2!3G*iV&Fn+ohk?maa;aGScgCAN8<;b9Z`Pf)S=azWl zdR%RP2F&OGJYWEPl3$~Dj*m}wz`AeR<|{BO;L>yc+HrbK;!g_!-H;5AjF8}FY~5Xw6QRK}FlG0f0tB;3r^_~t~ zj%RCM`ztvYDhZ(*`@4#qilKV-#YE2Z3D%Be(kG3YYf_#xadQd*}e5BcW#+vG; z*m~!%M7F!!S>S78;}GKe7wtzDM>j90H-koZIz|aQ4DrOsKj}SDdHdXZqUia4AB;&` z&3%(Z((7f```{yhK1eW90USY*H=og_C$8Tm!%N%zl71@c^3jaEdD(m9+<%;u46o`-SB3@akr`6Q8c%@dExHznVR07l5>Bn_Igvya<2l62c&+1tKI3+3tG*6 zs-r!AH2>n}{x;(N=FgieFMTf4mW-RUR8ngKFq>3op{n1bT~EAwF{K~42wmL?TV)g= z$I&;@(lE==w}{HOUnGJNS3jYW+0k(=fvU|Ny!cz#>Q2w<58xF{qj}RHvG;jm~QEl&m7W&PJ?qIV>x(XKk%O@9jk;Rdt@0&bnfegH!sr{V(xFFEW*NiAI0a$ zT|S9j@3$uWFkhaa*ef>kia5TJJ1Y@BmSZJ77s(IjY<_)9z}R~P;tgG-=AuS3ve479 zPBXHN%(V)~4|u!Ey1xNkOUvv|&%Alr`1w*@>tQ?4V(6=A8rl7xu+VL)Cm;r@@BX$v zX#w{O5ZK>l5_m_;NmVYVKc1!X4G}$%<%mb+avU8rrRo2o=N$3qlV1Nn_1ODj%aFDp zTwIW8oj%^1-WE!3r#|lQ9e(0|9&A9MmRGm>sx;%aD>M*D_DIxz>m|akDMJN1@Cl?s zvsw|n8YS$6$ou!fiZ``iQefwidKRgq3}zO_Ci-VgsTE03^=Jkkd=M3UBTs>ugl*r_ z-@I8xA2cf$m+4ENbV_X9 z=_))h&%1y;J%y4=l(7sBZ-P^RtzeL3F`}-&o?lf9KTqd{Ez0@_4b zj8T?2Lx`=>`S}8*h=+LZ6yGw;>^MvYdHNg_iUnaFo{CAD?SNMPS|Nop)B-4?;4h4S zi8vP&Vf!Nj$m;(sB6>))QKnn(Zvo7Cu=DV=T?A$ug)HaD)0e^2e`vWe_~QGiP?F(w zlOoJd;W+|xj4yqHCBzw^kmBKHJ!uwh)L(&o{=|o3BhD}kUM&)jD(xA4B7X&&BF+fk zM=QX_{#%UG|5c2II@@o{=1S`HbUh&@3fA9RTD<2P1P$Cbm=#*NeYv#O+2GyNTH4s( zxnKN@S*V*4b!%i(X&JUQ+#9!lEO6I*X;k~jbw0ekP3{Y1ULiG_I7-=DrZau4+cl5n zL;*$@?&Z&dr}X(RpV9~W&mET|a?23RhH&Xc43(VfL+Uy4L#xakaJB={z1AxfRnYYB zHbg|OxdjE`!K4Vah$=l^YIj@l38}p6M-nXNtzlt`0i37_$qJi{1Y)*3B6>|85 znIZ1*$(2j~n}c$gvSBaUHKQ21y2AEAaEao!FnaZ7!#=Wt-prGbhmZ#@C=OLE$>QF%`J^~%5~iR< z(4DyB0P_0!(4E9peisg*RQ8=(s^O%vUIdO!URUrZxx%hs9ISTJVe-7LtgFDgfIAK_ zHU&MglEJOnlxQ+4M!z}uqsKxjJm%+oYucmbpOWWEtsP;~Id@7b3ZO^yIu0dgO^G<*|-ktxg<9&Ry zfraG%LBh2_Gs}1Q@kJp;N$=ZVR(wwTW5tuwzagH=fL46|e^@bMco;l<2z3(Lka%b1 zP3AE%dAp7?ylT~B2;cg}2gI#9?u{j#?t)cPCyPCbA_ z@>n&&f+q)u&mPpu3Sju=v5Q?J9cZIy(l>-`Y>RW|ru2c!GHWdnO`!IM{ynaTlig@+egVOQ$K1hPnB$^A>`&2rj>9H&fE3%nn zgIh!+o`_SxM1oZjUa;U`_?(izI9+=_dQ!s$YV=y1P?5i6A*99|mTRLaPV!Py+Ievx zVt&YNM-}_JH!uBi6B9hLH5buRg2v$e9lYs`c^Esgwd9>#q%*!qgXUy{HQ8i{#vjyr zaXR{1^rnUjqd%xs{u=*69mYv6I{yo`J|w<>A%pKB8^c-)3o48q57|npYOhRfS3!-| zPXoL@q(~`%Yn8bOF_5lZJRLfWJqv~&-FgUhLR*NolVK$c0ec81j9trbIaZNVyGoH7 zI-p#S=M>o*i^iWFU8RG5g-zf;Touhn^Q#)c>!FMgq@oEOYm6l!i8Y;~!Nh=KP_$@P z!jgsS1JvAft59%R{wQh!sU$44YtblF8iP~rc9|nyVe09vFL_cg9nQcA0X0H^4$?xk z=As$mPD0-&S`n-wE(cKFj<;er|1cS6m%b3H+7q?#n8C>>(Nmk7sEK4Z5`h8+kH#=~ zG+vs~GO9>L7!a;;-CR=e>;&7$1&J+fkCZeRSnstGt z)U2AKQ%FTOgaZgliC{N6qO8tK*2T0Q3V}C57{a0NJ0C5}q+cmRLmE+G#CHi}kJ4)` z*>?KhWO2}}-+OewsHyu)*Ah{`v)Sopo@Ev6AuRaXsGfM=aD5Hrf@Uf=i0NW3PgOpg z9v{Luszz743%Pt-3F_vr_=5D@Ea9v>JW#<<&GC)yVbgn5Ejh^rR&^KrX#^!;LZ)aK<4=Jj_1XM@2=SRR4M9}# zfV5nB_&mbIqe4?Av7S;49hMGG zNlY^`FXE+A%8$nEMnoJP{TQpPAYO$z%KRXG_DjD_Uc{gIi$-l#WL#M+!jmd5VtrDw z%xHJ!Br#!1#_o}XN(4Q5YFt5#JP=hyaXbf2m8_0R65W(OfaZMG6rm!m9|>DkCCxZ5 zLR@Ls11qGF`zJ)BKMimuaIMhDj{YK#PTf!+NMpuWNX>=$CsXUaRAmfMg49u&l1eU8 zW~NeBmK^>kY7y)|QHc;k$O)I~DAEvA{$+tq9ngaKPZ)nJnC^^7d?tEWi`*^qL`m{g zR~*h->WrX)GTl~Hsi*u|Q_vwc{}rA5FTMwme~`C2Bkr8xRpuotxNw6D!`?!mtpnBt z(b@SEcvP!qL{m#6(9%x@(Hm3e5A8Fd0v*RmPSt^wfwkZ%DN}bK<-`Js|3R4q?4Ojm z(q_$U^oBDGI26R9W69*vx%tiWe?^!s@UV);7#VXjNDyXaU{E%_+D_J~zps#&(fA%H zb*VIY2%%0a^I@4oJ6%cATRBB39zxC^5}Mm1l%5|7MStO33*Il}V$RO?GG zh&05Q!;#$F)GxYe3&uo7;~cTBdEck@EB$seh4gXj1gefNGv=y>Fewdo{rNIC8BJ#% z1e6GuP(VhBhW3=@HT?{4V#)>CifAc`aw(c}FpteEsX~Qxp+m*V)c?t}f%+30V=BMq znx93F2|qZpEl>R0jO02+RCd~1JyZ}b4Cf0U4GgES;6?opggvO;_*yi4(ZU4IDcfYb z%W(l|nr(+fM~~-_+#i+TjlqhS(Lsav5eTLu8j@Ub4ioojh~nV2CW?-5Q9>lk)q)pF z>9&yHQ>9F3=el&ZwG6=vEUlj51qaSV)wDj7XSt&WD~@gH$2kz~>4a=MjN+jp#(}|> z{@8UKAcFt(><5V&^TnfIiX6|5g@JMJ=KdR)ZT<6KG2_R#@}~|FVWCk09t&f@g$6nG z!zP$<+!!s*T!#vd;vc0Ua6qMGDnO+G1%B{22cCHPZAn;jGAh7e$+xw4>$_FM`gBI8kG zJ`XeVVhx=${&9*y#J{H(x7#2orGscUY2g5zTnCzrymQAC&({rlaxkXO>J-LbuSZaH{vHX^$5^QMZ zzv6v!0h)^$o&y<`2 zw0LM4rie9gs$e&m*%2YUyUwjJevs8L{xs&^r30iG!Ph;dA?#b|Awp!|Jhp&efuOgc zRES$~Z^ZbOWqkWcyXIj6O|mt|f%ARFzjqJ?Vk;KHn9Nap`?8wNXGq@tegz_MiM@i} zLN78$`~pUK-(0)3;WJMCVbZ=8CIAd1@OL1-@RXTbXcHY_;Cn-PhX^}xd~bjc^jFvA zVqAJ&APy7o%O!p{fN0Nv5@Iqk4Hi&eDug5E2g*53v7LdO4N)Gp5@i=zT{&*ofO0|!ahxVNqZ>XOM&jIM! ze@P+r|1}8nw_}2@`IWcOlo`X%N$w}XJRhnMe>;XHRMTa^k=rQ1fPZ^mMiUL=jByJ+ zrRjA{_lMY;pYk6`O!$RB*-EFiA53r(D7--<|J35`|0^)|KT76*i2#dUQh8jnH$cGx zBCq{0PUx|JmTA33+sxDLS4*heZc2Fg)@dqYM%ZcLDO*RbQ< zN9tqWM>3mY1Om3L`8-=TZ!`uXo~?HdS{`u?y2o*E0kVkYQw}ZEV_dK?I{n(lYx3wNF}^Fc1;7FL)BI&{%rKOC$Ch86zqdF zOY`+diQA-X2#9N^+07%4I*`zI8F1Lt^&Ec{mkfMB>AL?S@RH&v_29=s;A>gDGzt9- zV9he)n*O#H{%!OYuhm4%Z*h~c)Z@Ip=i)XH6yW?d`xppQ`Uj@;Zx~%b>9f)#{-6KT z&N{Y4hA51g7ntlI&2Kxdi<-V97 zunbwW30|C1R>1rho%QgoHT;;hAKo5S*;oMQ(ClNyOSw^2AErLb>zc()D2!dUua-o6 zY#Xd`5ddeY{CnKe^t>_dKT;5U7pD{<5&r{}-EXlUE29R%HT~w4v9&jp3H53K6scR< zjz9-QTM!(uY%wQ7&pu8#&*B8I3Yh}9rX4aeT{AqSQ~Q9#;7i*Xd2d}VqoGY{!Lp8h zxToVUW}z=NpgzMpWOQDzwfaMHP3z)Fa!o(M7nLn~Yd{Nhh;4edts!vhd6%`u8U)%gve@dXrnLoG+^*urygW>>`0$+%M^RvU_#L+z;V?9D=B7pAjX%3k5abul;L_f0QF z4`&ElzJ7n&69DKP{T4+cWAK9UrpkCf@Fs#Q_UV?TX8iejzn0(E z0#4H6o3Ri_L-0pMMO`}SPQr?&h!awK13A=`B-N8tlz&1}0z-12r8=R?7ckLOn!9(x z3Um8AfgOp$+ndo)9@MjbUHgH+YE3M}-JZpv%1sS#Y1qw8Xs5_+3GS=_I3!w~cv^rG zbfKl3r%Hpkgb<|*F%5J=9cjFcdh?*Vh|kMP%g;($!lF|KP)Q>Qb5rYBWH~8OvBr@i z=-GLsDgxk=Kb)#NgI7$GKF2?i0}sdfSr4+@*u#lo`21t5!~RYrRap*<(oYK7RFt}k z0P%VELyVo)8mchJqeG|fDn~_3MZw?Rz1zf&iV&uRxZ?wLcp;(xSaC%5K+3sW&Sw$p z#DWBz<3A)xCSaq*6_k|fWl8hOs$in?9P%A;{KIhRYEZ(ckXdm2fj41*hx<7g&k__a zMZCt~yVuU7IhY`Juxqh#0#xYeJX#!o&adFTRqnMEJc!Y|uX9>#0RwRuPtW&z80-NY zOwiGSh)&fujJ6=6t>R3%v(SdjnG)QC4MLm6|143Q4O$ zPD*WaTt`I;TBH&!=Zbl}2S;Cl*QcwD9emOgG34`4TgO`*zX{nr?_%BWzte#DN+*FiKan_WD5}!ck zbLIz;2E(#hqlfEk6aZ$04ruj|3@fBU+{_}})YLUvKuSv*!GBW{6~#kV2Z*|0V;_kY zeS-xaJg6w&lmPowPb3`b z9EtwN87EZee9SuM{06KPgb69UDRb5qrvXngDoR^wN`Y#(-#G1u4&fc5336F*;X!I7 z{*zWx<;uouqRE{+F7UU4CGot@>zQ9zzpZ-P<$Tq255YU?kt$I42D$1nJ5#t{iEj~N z+I6Jy5Tj6P4cIOtQw^R~doUD8(I19m#(;wEIaa_TbKz+@hwV=Okv`;aUby+u4-RG-H!_pqG~A1Iu0$Ee536BOf=@eh|`3mk^J^Vb9cg_?Zu z>tKlYe-ZH5Z9GgOf#v%b0g59iZglK%N49J)Ffn;qveIDlvG~Qz1refBqEcybA%JVp zda8zJ?G$!cZqc)bCkxI$^OxrBl;MI^G=fu*rdV%#!dvCm<`L9ozUTlW`2$ z{iOL{q$=)_{IUYFXs{ufqbM^ zGlN*&_@dM2))K>%u;*VCx(pPxVXp$ij3>c8A^DPE2p=v)T#M-5Z07@-d93KeBfMb6CoS6 zM5n};p8Ke4p|zlQokJ6)swtmM!=-|OF`rtB$74uQr5>?y)FP{^g zDFU1oCrM@Z;eNsl;Cu?^l%|}k%jSkkeC9JUpNIO&*7mvDH1^Loh51+!Uh9*47N&{* zs*p4?uJ;kM^P_@BR!#OKnZ~27r}mKmF~pvN#iY$U>axYe3k^`C+6nRK7UBR+DPn*x zt6$fnGSjOoXXzTEfjA_C?i@Mwy#%Jy=(rk1BN8MA@vfE$4Ri@4a;O?6d%|^NJ#~_2 zNoXyNV{@^aes4y!7ybPt2xp?!nulw-JPh*s{$ec)>K&SgeDH(VA3F8^V!$#87=~u* zEY&0l^&Pgq81QV4yhMmhn#MQejm(-o2~1G$)kH$Xu#}|Knk10`mcbj9;h7Q}pVGxz z=7C5i$k2lcv*sGk!%!IIxA8CEA$h7}(JF>rry;|0cykcX#KTnEm?kKUy{x3W)3Xf`fpZ!2VZ*GiOs5 z7fU2+3*1queI5>y^>vHb;U*(*i0T0gABgKai z8d?hCSB9vNLM)e?W6yOfBv(37-1NC~>fk ziGtUaOuIPW^}C7N9szDY(CZJTF0KZ5qnv&!sn=qh6rI2)rI2Fci0x4bsAG7yK)XSJrdCa|!uf}b;1T%o37UH(HfIPtl%pJH@1lD2{6{YFgs zLN#!gBWJn{V`;2Emx%D?evjBGng1dD+QP*4&yqX;^AWJ+y*S`G59kh*c z7i;`tAn?HP6BYn#(n047a?@P|PIHi}vl(pxXZH?3BsXc_s?GONl|)|fqujJw%cVBl z>g+&ufa{vBybdYJtGzsOQyX^EK|+DPVwQL70l4dzzge=^44zPOa7!F>=$G|%81&E@ zuE@CeFC^?80XG+Op08EG=!zAl-u192BI2CdxICs`Z;a}v(fKLC3oVAnKj~Q^PiNf>FU; zN7oEyHF#d+lcfB5yBTRq5BELV-v-txeDA>-Urvq+=pz*aBW3qwOp2d?sU^mUhKomN zVQ8s1!LSf2q|`6CR-tRI^**I}Jx3gfEx(sui`5;_e{Qcl)jCoJ0k)uO0sj1HzWY}T zs;{O-%Kvr2N6+U^LeJ|iyQ_QjcI*p<17N9dOE2o(%3Of*KuC0x?gMv-0x&Aqf=v>52K+mdyhCQ|J>#FvYIXQ~OyMQ{VKvcS4h-2T86FK7vNu zCMCx%x|OlhBy7!Y07myIJDX+D0*4`;kAg+?5V{j;A0e0E#kXIDoA1n6R74D0uk z4cj}&e>(P?JI~n|*sb+990&;Nza29JHYZjwG_v`tW$RW-zuk8xypbQ@BB)Zcq-_$L z(NJhcLYgKKalJr3OR5s?HZ=Kh#{ zHu`vY!`Ev4O4mRkN<-83qYuY{ZUCIQ$or6&@TGe)#F#qz8CfFW^G-U-(Pj&y)}k3z zn_5bHb|u9pZ?7uXO&4ACDA>UY3ZsE&EV%JHj#Q^Z7CHfnTT>#9D0ck0u=DgtkhTVA zT#v9w7!jN}brMOeJ)Z8JWHOeRfJ)}*TbPx?GR?bWF4Ca)!^&_BIv=kuGlUOGg>?KNK-Jo)!}<-8pG6I~YGNxKJn^zO|3 z(cIRnKh>MdZzl^M{yKX{fhrYVHG#|I!5g<_d6y#4qPMGJ;BeTVa?hWlJX%$^Zx0E^ zI9>na=v(-V>uYKc#YL&7T#b0ex7+{GtTsuAq-_M)leCit1O)xxr=*L8sjVsFUq|M@ zI-F_A*>7-Q_54&v?l@d}*>H{M5W8HvS}8$5Z54@a64kb$QY1Pf>p{43?DI3+svCs6 zY#FSp7W{O%@RnhR--39mk43#6L8a()JS_K}9D0=Gna{gdU+HG~B9s91cbKE>+mqIj zk_Q6OP6^`E=vA{<;QR0j&Mw#sBH5C}RWtRz^=hqd8(b|6rU#5<+iY!L%Ml!k4s~)H zeJF9SDEQ%IJBld*+Fg9K3}PU3!U}1zRr@BL2l8)>oBYu4D_iq08!+%_#jaOiAkOau z@q|6QR&;pHup7;T*@=?08A$3}UdhkOzotsNWU$ski)_c=@I9FXLkGYhoQNsEt8u?J zN;6AHk;bEm(iO9wxntd{zC1ooW?EWSWUxWr=+&-XsV;O`y#SP zRVQa&xM7=NfrFi4#xM7A=hp8dQ^ts4QUFb;w32$!v;~W{25p3shtfn|^9h!K#hXm14X%GEVJU0+{v=7mZv!5> z!1f!Spr%pGO3%0FgN@YL{z?f(y)Q3E%Lk*i1aCSJy|8bNsPD(W8Q*>eY@RXzp&^3xDTZiYeRqvmD&XH3Jc^t1-Vp^r_paB z$7vwX2glqea~ULbJ{5sv2zU&t?7x;J_80R*T)=n89XHYrYh(5(qi()v2$vj9328g> z#4(CgTF9?j18GgdlG>1ay#;GuBZFP@cj#59vZD#|OcXrEVc0CXAdyS9B`Ji9iI0U) zaCSk;CwT>rV*ju)%v1zOfbsR^fjia{L%UN=oo22j#^hj3Fo;Mup00eG%P(>mlxwOL zG3gLiYJ(-oz_jZN_tUFanq`F&CAw%pHv8o;T|PyUTCNetlClvM z^{|Xd4)U2VYt|`B-6@LzrDINLR5P{Cr`WBfu#BlZb?#?VL3J0^_kjTWvaN^}P7Ig* zz`&N~?J^EJgTXx8=tF!7pGUBELiK8tg!-KpoBoA)t4qkypYe9TU7ZU`!K-bwQmmh{ zYCbPOMMcVuZG~~^B)2f!B9v5coKKKfHmh1LYb|Ld|5S}U9Y@}?U=wa(68A8oX?A5Z zrs;GcLEdo924^Ds+yY+gdalUBlQs#i>H6Mh;$J??qRM!443^^a!@kUUPgoKRa|RAT z+q*65vK|$7B=6OqcQ@}aAzs;_dxigm8MQ&R`tuRjVs|Z6Cee zs4F{1y^q^tST*Q@IL7p0cf~xR7Gky#&YLR62S5haPaOnMAaO zJv_BYr!iB!$oi^&RTP-ojSB=wh{e%bn$=6&R*^q{kXR{YC1)kBU%pa2$A|_i-?dE6&OA(mR}y3oJcmT%`scsa<5>A?g?VEs;3&q zXu6~ymD89Z?vODWP(r1X#+Xo%!4qVQ88L>m=(o$KHqC?Orl=n;k{jOydD9@K-dJ7^ z-@N9I>lGj58`SZB?4{GeI>mCm)$0C&{%00%otDfxnGion7p0HEeAd zEnQ4)|N7Xgj;erjS zhZ$oDLM;f)+@T!dv^os-ZOj3yDd2O(a6qJudWsiCGaHTs4&mA(7+dT!!;MgqN_#Z!=ZGDj{+k_}$=gUee zlKoB{9vnH&&DVVGl8IUzn`p(E&OwV_t_#2PTeX{5+=hz^kzltomD*R2(<9TVrV*t~ z261aJ80WY)TpO9sWp=zTJogfJQYzz#linNJ6k!p-Zr3|zbOqvfSo@7J(lm9V8gqp{ zrq#1W^dDodNzNj_tI4U#mUpTNysf^0{c}K@J7wkefP#&H!m<7#{EuV>Cwm9yzeY7X zuHG(?2~F&4&%oXOICCC^1zMOS2(|UHv@X88AGrmHqtSk8XkU2NbdGP@=+2l7q=b9(dtDg21K$uf}`~5 z+tbZ1^Qjh6NjpwYsG~tW-0^II={}d8NDP`S2Gk^DM=Xje-7XoQF<8h0mM55%sB3$h1; zUwqrlUTh7e6VSizQ%HXOk5yXSTxhs8uqG1@%I&38i>M6zLPbJuORMeTdHeW%@kG=QU z+21G|3y`QZwWU-VJl`pA*S<@pN7?X3bA}B(r0i?lB-I|;PL)rq)8dhO%?>ZP;qRKL zhwm~=D-W{<+dwN<<`urOaKIhhEx2YWY#FOLcGZSahL!I|e1a?PK(`J?uH85kccf6* zhosOTU{hC^zZ_Xnt5fWER9?!-In1PJ3h=6mHg0)|z zqvihg>uI`(8~y7RU_$_MheCp5Gv+G1TTQ3p^DCnI-u&6hg4-~ky+HvYaiA`L+}6e zqBzX&zhU)W3*3QgL4JRBm^lWg^qX#kMWWiU{33{USm>0CXNTX+sDyk@R7_*bmPq^J z-QGheJ?C~~{chd8;Dm7)ilW{;dN}7dfXhYaLnQL*ceBxj!%w45iu#l2;TQscT=;G& z2_wqcJHd+N-d&Z{njR_l)rSFC>+ZR|>+Ty_J<;gy8{r-3eqD9lk;7mwF-9o6Y;>OQ z-Jg5W6{ zpX9{hadGz$p+Ob&bbh+)-num3?FsPc(y=CHzuS2p*tFNy&Q_3^P@)<8X7 zk3OLsul8L})d?ZcF%5R%to6Y=TN~tKLs=P!uugFYuTy^HZ-0FH=ZsY_wqo852?7#C z1OkEyoUwq7yZ@S|fGaQH^=W5lX~SUUU}}D)X6^7<6^*~si<8=R8kve74SJxHrLTxy zm==t~@_R`VM-hFkV~A9u+~*7m!>@}efb94ekjGFy?~i&k6_+eWh4}y;B{4w>Xyi|5 zSR*7>x9ogq`rx;lTSc%6LGk)Cms{&^Jz4i#&a>QJCw2v+1^Rr(wFEQE+D6^?E`xt)?gO!69tV+Mp_*;PJ)jL7~gXOFm6;#{>mj{Jq<+R!2732=6?ue>*$r+qHz))Tvg}-{x@W792DAeRq;*HQVEf^FMKZ z<1&@!vvJzk`;GgjMEnvRvH9B5XRXTpXtCBVd#O~raQLoMvL`lATrcc=PRlfXT`dMZPX+8RZbG@fk|5g1qW1p@}z&E95 zZri#9({p`_FR0$~x@z&HNnlOy(I@UzF-Ny-H=c05`DhO}3x}hu-Cco}(+N!KQ<_)} zd6cU5JZNW#V)??A@zJ>4f%z8ObxRT8Rj6H6sb%(adsp+U3kg^-0{l5=P ze!gy&>@K}@#d-ck><)+cj!eBg`Stzl-~OF&>5;os`v2jV+T4KB&Hp~7|ESx?K7a3@ zlPyj52j?GIE#76Yy}KpFL>9T_p8WIZ`nF^ zy4J$ls6$zHS^sX{NxqkJFYDjOS$h1pRP%(lH~((9ee&%iJ9gpivtK{6d-4rfd%suR zyIT5ve`ERjE7I$yRk6L^%D~us)ZmuE!GIiz>=`L5JdPNrNEY#?wrReQwEb{z(sl23 zNBK{GkbM8@LH5dBz>BXIMy_-SvXW`Jdi~A+8#zX8PlSG(?%vk$?&%Jv^vj~JyACXw zy-NGa(^sc7`=2kL-L%iC=GMAfrSGIe6jWADdOc^|8>?O6FW;ygRc{2|Q*30Lv3B8y ztc&sQC;L{Wea;CMtXsu0+4jXe!?RDgSbVy?jXIlDI((bb*)F_aP~{R|qIKU~?X$xn zHGP&Dzq#i{vI}o}D%fycwPDRn&S<`Qoyu`6FJ?XM>+s!ZJU?+C!-PFQD_^ZI;hyKa ze9^`3iny2NOfmNadjH*(?2WtE^wFQ`4WG+zhizMb>}B8y?F3wPUw=0!U;?N%jIQXP}nZr-1&|z znX6l~s7EkD`LN{77jhEaJ3p;b_?MU((f7fs_SA$cCL(VnxO5H|>O8ENmymge`2~B@ zllI=zx|ew4pIqvXpE_}S+TmwYIH$e6t30RuobQ?S!nfO(q^0%BOtsDYG-b~2W#{%( zUwhMZsCv!OZIdn;Rach!zI~+nqw22Q!RYs&*H3xk5nO!w)wOoHx+fR6zLu-5dAw}- zyt-#MpUbCy#(UT`7-rP`G{e1%G&vV7fuZ}pcoGG0C&DYA`J6LP?)=#t zv~=QBU<>sWaLf(V?SO#>pcn%~v@>upI5n>%KBTfBwKx{kIzu<0Qq9}p2TK^X9AU61ZosS(fAxF0oYLKg|ag6qnH%H2Q{gm+MQ2pp*$mm9(_rDQFs5W8kjiVcY-qA%E@E64ZY~5aTv(WpF2(!L5qdNxC zlSDTKy{m;Vg|`(NDkvQ um} -import com.twitter.home_mixer.model.HomeFeatures.UserStateFeature -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.home_mixer.product.scored_tweets.query_transformer.earlybird.EarlybirdInNetworkQueryTransformer._ -import com.twitter.product_mixer.component_library.feature_hydrator.query.social_graph.SGSFollowedUsersFeature -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineQueryTransformer -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.quality_factor.HasQualityFactorStatus -import com.twitter.search.earlybird.{thriftscala => eb} -import com.twitter.timelines.common.model.TweetKindOption - -object EarlybirdInNetworkQueryTransformer { - private val DefaultSinceDuration = 24.hours - private val ExpandedSinceDuration = 48.hours - private val MaxTweetsToFetch = 600 - private val TensorflowModel = Some("timelines_recap_replica") - - private val TweetKindOptions: TweetKindOption.ValueSet = TweetKindOption( - includeReplies = true, - includeRetweets = true, - includeOriginalTweetsAndQuotes = true, - includeExtendedReplies = true - ) - - private val UserStatesForExtendedSinceDuration: Set[um.UserState] = Set( - um.UserState.Light, - um.UserState.MediumNonTweeter, - um.UserState.MediumTweeter, - um.UserState.NearZero, - um.UserState.New, - um.UserState.VeryLight - ) -} - -case class EarlybirdInNetworkQueryTransformer[ - Query <: PipelineQuery with HasQualityFactorStatus with HasDeviceContext -]( - candidatePipelineIdentifier: CandidatePipelineIdentifier, - override val clientId: Option[String]) - extends CandidatePipelineQueryTransformer[Query, eb.EarlybirdRequest] - with EarlybirdQueryTransformer[Query] { - - override val tweetKindOptions: TweetKindOption.ValueSet = TweetKindOptions - override val maxTweetsToFetch: Int = MaxTweetsToFetch - override val tensorflowModel: Option[String] = TensorflowModel - - override def transform(query: Query): eb.EarlybirdRequest = { - - val userState = query.features.get.getOrElse(UserStateFeature, None) - - val sinceDuration = - if (userState.exists(UserStatesForExtendedSinceDuration.contains)) ExpandedSinceDuration - else DefaultSinceDuration - - val followedUserIds = - query.features - .map( - _.getOrElse( - SGSFollowedUsersFeature, - Seq.empty)).toSeq.flatten.toSet + query.getRequiredUserId - - buildEarlybirdQuery(query, sinceDuration, followedUserIds) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdQueryTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdQueryTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..043082f6ef17c8a423886b70d4e932a8d7cd4d09 GIT binary patch literal 37689 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdQueryTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdQueryTransformer.scala deleted file mode 100644 index 0e51c54ea..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/query_transformer/earlybird/EarlybirdQueryTransformer.scala +++ /dev/null @@ -1,70 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.query_transformer.earlybird - -import com.twitter.home_mixer.model.HomeFeatures.RealGraphInNetworkScoresFeature -import com.twitter.home_mixer.model.request.HasDeviceContext -import com.twitter.home_mixer.util.CachedScoredTweetsHelper -import com.twitter.home_mixer.util.earlybird.EarlybirdRequestUtil -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.quality_factor.HasQualityFactorStatus -import com.twitter.search.earlybird.{thriftscala => eb} -import com.twitter.timelines.clients.relevance_search.SearchClient.TweetTypes -import com.twitter.timelines.common.model.TweetKindOption -import com.twitter.timelines.util.SnowflakeSortIndexHelper -import com.twitter.util.Duration -import com.twitter.util.Time - -trait EarlybirdQueryTransformer[ - Query <: PipelineQuery with HasQualityFactorStatus with HasDeviceContext] { - - def candidatePipelineIdentifier: CandidatePipelineIdentifier - def clientId: Option[String] = None - def maxTweetsToFetch: Int = 100 - def tweetKindOptions: TweetKindOption.ValueSet - def tensorflowModel: Option[String] = None - - private val EarlybirdMaxExcludedTweets = 1500 - - def buildEarlybirdQuery( - query: Query, - sinceDuration: Duration, - followedUserIds: Set[Long] = Set.empty - ): eb.EarlybirdRequest = { - val sinceTime: Time = sinceDuration.ago - val untilTime: Time = Time.now - - val fromTweetIdExclusive = SnowflakeSortIndexHelper.timestampToFakeId(sinceTime) - val toTweetIdExclusive = SnowflakeSortIndexHelper.timestampToFakeId(untilTime) - - val excludedTweetIds = query.features.map { featureMap => - CachedScoredTweetsHelper.tweetImpressionsAndCachedScoredTweetsInRange( - featureMap, - candidatePipelineIdentifier, - EarlybirdMaxExcludedTweets, - sinceTime, - untilTime) - } - - val maxCount = - (query.getQualityFactorCurrentValue(candidatePipelineIdentifier) * maxTweetsToFetch).toInt - - val authorScoreMap = query.features - .map(_.getOrElse(RealGraphInNetworkScoresFeature, Map.empty[Long, Double])) - .getOrElse(Map.empty) - - EarlybirdRequestUtil.getTweetsRequest( - userId = Some(query.getRequiredUserId), - clientId = clientId, - skipVeryRecentTweets = true, - followedUserIds = followedUserIds, - retweetsMutedUserIds = Set.empty, - beforeTweetIdExclusive = Some(toTweetIdExclusive), - afterTweetIdExclusive = Some(fromTweetIdExclusive), - excludedTweetIds = excludedTweetIds.map(_.toSet), - maxCount = maxCount, - tweetTypes = TweetTypes.fromTweetKindOption(tweetKindOptions), - authorScoreMap = Some(authorScoreMap), - tensorflowModel = tensorflowModel - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/BUILD.bazel deleted file mode 100644 index 30774b91f..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/BUILD.bazel +++ /dev/null @@ -1,16 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - dependencies = [ - "explore/explore-ranker/thrift/src/main/thrift:thrift-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/util/tweetypie/content", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/transformer", - "src/thrift/com/twitter/timelineranker:thrift-scala", - "topic-social-proof/server/src/main/thrift:thrift-scala", - "tweet-mixer/thrift/src/main/thrift:thrift-scala", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..96097b6794b4601b435810017d38dbeeea6aa018 GIT binary patch literal 36916 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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/product/scored_tweets/response_transformer/CachedScoredTweetsResponseFeatureTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/CachedScoredTweetsResponseFeatureTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..8762cf430c5ab9cd45ada697e6cb04ad4ed5b1c9 GIT binary patch literal 37842 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/CachedScoredTweetsResponseFeatureTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/CachedScoredTweetsResponseFeatureTransformer.scala deleted file mode 100644 index 0fbe7a438..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/CachedScoredTweetsResponseFeatureTransformer.scala +++ /dev/null @@ -1,119 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.response_transformer - -import com.twitter.home_mixer.marshaller.timelines.TopicContextFunctionalityTypeUnmarshaller -import com.twitter.home_mixer.model.HomeFeatures.AncestorsFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIsBlueVerifiedFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIsCreatorFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIsGoldVerifiedFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIsGrayVerifiedFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIsLegacyVerifiedFeature -import com.twitter.home_mixer.model.HomeFeatures.CachedCandidatePipelineIdentifierFeature -import com.twitter.home_mixer.model.HomeFeatures.DirectedAtUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.ExclusiveConversationAuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.InNetworkFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.IsReadFromCacheFeature -import com.twitter.home_mixer.model.HomeFeatures.IsRetweetFeature -import com.twitter.home_mixer.model.HomeFeatures.LastScoredTimestampMsFeature -import com.twitter.home_mixer.model.HomeFeatures.PerspectiveFilteredLikedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.QuotedTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.QuotedUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.SGSValidFollowedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.SGSValidLikedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.ScoreFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.StreamToKafkaFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -import com.twitter.home_mixer.model.HomeFeatures.TopicContextFunctionalityTypeFeature -import com.twitter.home_mixer.model.HomeFeatures.TopicIdSocialContextFeature -import com.twitter.home_mixer.model.HomeFeatures.TweetUrlsFeature -import com.twitter.home_mixer.model.HomeFeatures.WeightedModelScoreFeature -import com.twitter.home_mixer.{thriftscala => hmt} -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 - -object CachedScoredTweetsResponseFeatureTransformer - extends CandidateFeatureTransformer[hmt.ScoredTweet] { - - override val identifier: TransformerIdentifier = - TransformerIdentifier("CachedScoredTweetsResponse") - - override val features: Set[Feature[_, _]] = Set( - AncestorsFeature, - AuthorIdFeature, - AuthorIsBlueVerifiedFeature, - AuthorIsCreatorFeature, - AuthorIsGoldVerifiedFeature, - AuthorIsGrayVerifiedFeature, - AuthorIsLegacyVerifiedFeature, - CachedCandidatePipelineIdentifierFeature, - DirectedAtUserIdFeature, - ExclusiveConversationAuthorIdFeature, - InNetworkFeature, - InReplyToTweetIdFeature, - InReplyToUserIdFeature, - IsReadFromCacheFeature, - IsRetweetFeature, - LastScoredTimestampMsFeature, - PerspectiveFilteredLikedByUserIdsFeature, - QuotedTweetIdFeature, - QuotedUserIdFeature, - SGSValidFollowedByUserIdsFeature, - SGSValidLikedByUserIdsFeature, - ScoreFeature, - SourceTweetIdFeature, - SourceUserIdFeature, - StreamToKafkaFeature, - SuggestTypeFeature, - TopicContextFunctionalityTypeFeature, - TopicIdSocialContextFeature, - TweetUrlsFeature, - WeightedModelScoreFeature - ) - - override def transform(candidate: hmt.ScoredTweet): FeatureMap = - FeatureMapBuilder() - .add(AncestorsFeature, candidate.ancestors.getOrElse(Seq.empty)) - .add(AuthorIdFeature, Some(candidate.authorId)) - .add(AuthorIsBlueVerifiedFeature, candidate.authorMetadata.exists(_.blueVerified)) - .add(AuthorIsGoldVerifiedFeature, candidate.authorMetadata.exists(_.goldVerified)) - .add(AuthorIsGrayVerifiedFeature, candidate.authorMetadata.exists(_.grayVerified)) - .add(AuthorIsLegacyVerifiedFeature, candidate.authorMetadata.exists(_.legacyVerified)) - .add(AuthorIsCreatorFeature, candidate.authorMetadata.exists(_.creator)) - .add(CachedCandidatePipelineIdentifierFeature, candidate.candidatePipelineIdentifier) - .add(DirectedAtUserIdFeature, candidate.directedAtUserId) - .add(ExclusiveConversationAuthorIdFeature, candidate.exclusiveConversationAuthorId) - .add(InNetworkFeature, candidate.inNetwork.getOrElse(true)) - .add(InReplyToTweetIdFeature, candidate.inReplyToTweetId) - .add(InReplyToUserIdFeature, candidate.inReplyToUserId) - .add(IsReadFromCacheFeature, true) - .add(IsRetweetFeature, candidate.sourceTweetId.isDefined) - .add(LastScoredTimestampMsFeature, candidate.lastScoredTimestampMs) - .add( - PerspectiveFilteredLikedByUserIdsFeature, - candidate.perspectiveFilteredLikedByUserIds.getOrElse(Seq.empty)) - .add(QuotedTweetIdFeature, candidate.quotedTweetId) - .add(QuotedUserIdFeature, candidate.quotedUserId) - .add(ScoreFeature, candidate.score) - .add(SGSValidLikedByUserIdsFeature, candidate.sgsValidLikedByUserIds.getOrElse(Seq.empty)) - .add( - SGSValidFollowedByUserIdsFeature, - candidate.sgsValidFollowedByUserIds.getOrElse(Seq.empty)) - .add(SourceTweetIdFeature, candidate.sourceTweetId) - .add(SourceUserIdFeature, candidate.sourceUserId) - .add(StreamToKafkaFeature, false) - .add(SuggestTypeFeature, candidate.suggestType) - .add( - TopicContextFunctionalityTypeFeature, - candidate.topicFunctionalityType.map(TopicContextFunctionalityTypeUnmarshaller(_))) - .add(TopicIdSocialContextFeature, candidate.topicId) - .add(TweetUrlsFeature, candidate.tweetUrls.getOrElse(Seq.empty)) - .add(WeightedModelScoreFeature, candidate.score) - .build() -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsBackfillResponseFeatureTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsBackfillResponseFeatureTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..f464c0388c98d8ee2d7c4673636aa7fabdb43de2 GIT binary patch literal 37134 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 ZG1S&!fHx~J2Z3^xAVVTBdra>E@c{iURmK1S literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsBackfillResponseFeatureTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsBackfillResponseFeatureTransformer.scala deleted file mode 100644 index 806c0d11d..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsBackfillResponseFeatureTransformer.scala +++ /dev/null @@ -1,30 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.response_transformer - -import com.twitter.home_mixer.model.HomeFeatures.CandidateSourceIdFeature -import com.twitter.home_mixer.model.HomeFeatures.FromInNetworkSourceFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -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.suggests.logging.candidate_tweet_source_id.{thriftscala => cts} -import com.twitter.timelineservice.suggests.{thriftscala => st} - -object ScoredTweetsBackfillResponseFeatureTransformer extends CandidateFeatureTransformer[Long] { - - override val identifier: TransformerIdentifier = - TransformerIdentifier("ScoredTweetsBackfillResponse") - - override val features: Set[Feature[_, _]] = Set( - CandidateSourceIdFeature, - FromInNetworkSourceFeature, - SuggestTypeFeature - ) - - override def transform(candidate: Long): FeatureMap = FeatureMapBuilder() - .add(CandidateSourceIdFeature, Some(cts.CandidateTweetSourceId.BackfillOrganicTweet)) - .add(FromInNetworkSourceFeature, true) - .add(SuggestTypeFeature, Some(st.SuggestType.RankedOrganicTweet)) - .build() -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsFrsResponseFeatureTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsFrsResponseFeatureTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..817bfbf40e951d0e82ad2a081b99b81aef9eac39 GIT binary patch literal 37137 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 tlr} -import com.twitter.timelineservice.suggests.logging.candidate_tweet_source_id.{thriftscala => cts} -import com.twitter.timelineservice.suggests.{thriftscala => st} - -object ScoredTweetsFrsResponseFeatureTransformer - extends CandidateFeatureTransformer[tlr.CandidateTweet] { - - override val identifier: TransformerIdentifier = TransformerIdentifier("ScoredTweetsFrsResponse") - - override val features: Set[Feature[_, _]] = TimelineRankerResponseTransformer.features - - override def transform(candidate: tlr.CandidateTweet): FeatureMap = { - val baseFeatures = TimelineRankerResponseTransformer.transform(candidate) - - val features = FeatureMapBuilder() - .add(CandidateSourceIdFeature, Some(cts.CandidateTweetSourceId.FrsTweet)) - .add(SuggestTypeFeature, Some(st.SuggestType.FrsTweet)) - .build() - - baseFeatures ++ features - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsInNetworkResponseFeatureTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsInNetworkResponseFeatureTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..eb9cb2c3e15d5d3a127c830b08d2117132e82111 GIT binary patch literal 37178 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 WVSqO)Fb9Ehl^{bRFnb*C0r3D}yJ^(` literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsInNetworkResponseFeatureTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsInNetworkResponseFeatureTransformer.scala deleted file mode 100644 index d7d23bc98..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsInNetworkResponseFeatureTransformer.scala +++ /dev/null @@ -1,34 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.response_transformer - -import com.twitter.home_mixer.model.HomeFeatures.CandidateSourceIdFeature -import com.twitter.home_mixer.model.HomeFeatures.FromInNetworkSourceFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -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.timelineranker.{thriftscala => tlr} -import com.twitter.timelineservice.suggests.logging.candidate_tweet_source_id.{thriftscala => cts} -import com.twitter.timelineservice.suggests.{thriftscala => st} - -object ScoredTweetsInNetworkResponseFeatureTransformer - extends CandidateFeatureTransformer[tlr.CandidateTweet] { - - override val identifier: TransformerIdentifier = - TransformerIdentifier("ScoredTweetsInNetworkResponse") - - override val features: Set[Feature[_, _]] = TimelineRankerResponseTransformer.features - - override def transform(candidate: tlr.CandidateTweet): FeatureMap = { - val baseFeatures = TimelineRankerResponseTransformer.transform(candidate) - - val features = FeatureMapBuilder() - .add(CandidateSourceIdFeature, Some(cts.CandidateTweetSourceId.RecycledTweet)) - .add(FromInNetworkSourceFeature, true) - .add(SuggestTypeFeature, Some(st.SuggestType.RankedTimelineTweet)) - .build() - - baseFeatures ++ features - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsListsResponseFeatureTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsListsResponseFeatureTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..23b64deb782d34f9b0060d7bf135b08a493fc637 GIT binary patch literal 37248 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%0A5-vQGU`u>Ar5 z&l#(5e8r*%5(Ffe1Ox;dIAZ}DcmFj_0asqY>(k!I%9hF6(ahpX-Nq4J4MVWYo14~d z28D(Z1A4HFt-qM@Gd&oW)%Vh5u42YIr%>r6dGt&wqc4l8fSiOEkjF3qpN|F%Ro84M z#rZ%!WpQCiXcTx1oKZ6CTTTHC1Mu6;tzuZk-~@wjms{&^z1jC$F0;JeC-#M7g$6@& zcWB9nw4S4AFrc z4de#&i)J#YtHqrD z979;b#SgJuQscn!ndH@~?({pp6lOIJP5`}gX4Jryi)VZrX`XtTX`RBpHPYlb4Q62A z>6a`^W&-2!3uGASv+d!pQAMmM5p~>9KU^ycyg-eSYPP6Tc}=>9t{TlxyKdl(*nWgZhUD?7gI*xMu-b%#u zhB`>dyMuj#<0M8B_}mcl1pkaRMgqkr zvSW$XNK^|uIhQ%g?=s6ghk+>7F(ZePUb-XAZS3*0K_k)d5HKQyf?FuTQ-)yF$$^lp z2xMN}yI~;O5D##cx9nep!M{VT@?rp6p+`0b2|3oG7ZC^@cTH2sPyw2Oyfsk3jrI18djha)$+F5{yC3SF1N*dk&+QQnXLs@oN z|8Cw%zL#?^>)*#&di=Lk^MtoI|8BT_^6eu#cH!-_Uq7>Z@(oyfzgOM6TKau|WBK|k z((9*HvAy2Pz}S4$;FiI`fEh4eE;e} z_R3wri?0?&u5<{pl4-em{muUyIYw4l`Zv@^`Y-F3UcHxJti}CL#`&OoX z&IuN*Tg5Wj_QgEIvro8Ke7d}iI-68Fe4EnQF1%k*Cd=v%?`ZeU=%&x#vZ) z3vYWW*l=C7Va-g=Xuf%!%5f|&WTk zG4}*||J{}Bjl0+M(VyuJpUZEDZCiirW#AUS6f7UqU~u!m<(n1flim0~2&u927o3W0 z*jlGxSe=^lcGHb~(VKi`>k{U@c<^XW=#q=V2}}RW1N`Hn4_t6Q_EM=(P9 zu;k1aauVG;Kdn;umzWyS_ra?6)PyT0B5x$PbPgBlJgk_Pka>pr1$)wy_TJOFmw4l! zTaN_u==Y!3PkG`ITzvY~wRX9>Cl|NAmaDFLylnZrx@R|^&#PZp zeEQn-xVqHatJm-SdF{6Ky~^#`&)4E0=W2f6 z{r)$--lG2DqxJh^fBo&Z|G%iz@Br@=yNuWyEN!YS%2iR~hs}Z;Cw_QbRC>5e>}Blg zw*K?clP4wK+)!EleFEptbH&Q9jySKJDV+Yz*UH~JSZnvzL%041r!u#yzOv$bDU)ZR zoZj-Y;Hej1$p-#qO>9yb3mUN!|BXAo9kLJbW@Hj!1`UsMFtE=wk60VDbmCNC3-uIm z%nj7-fPn^}7z0DJGjK3CHLoN-q_QBjI2P18LpPvO&D-GzQ0YD3I5Ia(H;`^%JO(rZ z(#8ij?a?)Mv~dS#0+n0@Y7|7#_#7w#uX~d7i@+n%=-R*BzAgS5s6B^;fk6O8dp%GD zu064!0Gq4t&+$In1621=8r||4z<>bH8~}|d%?0`$oA$g0X(1z^<)?v0$e>sr3=9LX zc8JfB4Z#`;y{pBnyY(3u;zC&&_)$#S&jU57xTG>C6+B&u9tP+KO2YIvFqYe(Xhu6; z65Sm1c~XQqFA8DiAWfp6Ye%1WL1@2L3e}D_4TEk1`a}f61dej32`JMN==#w|jS>21 zS3>opk0GNQf!_Z{7%`;*Yi}Ig0Q8P7!hoDcWCO5ud(q88?>i#QN^L?m3$-VSZVGx= u3t>u4Gc;6CI$r4d(c6Ov{o?INSq!yx7~stc%t4@BCCHEn%pRP*ARYikv66fM literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsListsResponseFeatureTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsListsResponseFeatureTransformer.scala deleted file mode 100644 index 6a48e84c8..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsListsResponseFeatureTransformer.scala +++ /dev/null @@ -1,45 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.response_transformer - -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.CandidateSourceIdFeature -import com.twitter.home_mixer.model.HomeFeatures.FromInNetworkSourceFeature -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.home_mixer.model.HomeFeatures.SuggestTypeFeature -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} -import com.twitter.timelineservice.suggests.{thriftscala => st} -import com.twitter.timelineservice.suggests.logging.candidate_tweet_source_id.{thriftscala => cts} - -object ScoredTweetsListsResponseFeatureTransformer extends CandidateFeatureTransformer[t.Tweet] { - - override val identifier: TransformerIdentifier = - TransformerIdentifier("ScoredTweetsListsResponse") - - override val features: Set[Feature[_, _]] = Set( - AuthorIdFeature, - CandidateSourceIdFeature, - FromInNetworkSourceFeature, - IsRetweetFeature, - SuggestTypeFeature, - SourceTweetIdFeature, - SourceUserIdFeature, - ) - - override def transform(candidate: t.Tweet): FeatureMap = { - FeatureMapBuilder() - .add(AuthorIdFeature, candidate.userId) - .add(CandidateSourceIdFeature, Some(cts.CandidateTweetSourceId.ListTweet)) - .add(FromInNetworkSourceFeature, false) - .add(IsRetweetFeature, candidate.sourceStatusId.isDefined) - .add(SuggestTypeFeature, Some(st.SuggestType.RankedListTweet)) - .add(SourceTweetIdFeature, candidate.sourceStatusId) - .add(SourceUserIdFeature, candidate.sourceUserId) - .build() - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsPopularVideosResponseFeatureTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsPopularVideosResponseFeatureTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..c5bb44aed9aa71497ec2284951ee658ee891eb71 GIT binary patch literal 37291 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

ajn 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsPopularVideosResponseFeatureTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsPopularVideosResponseFeatureTransformer.scala deleted file mode 100644 index 6657e6f5c..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsPopularVideosResponseFeatureTransformer.scala +++ /dev/null @@ -1,46 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.response_transformer - -import com.twitter.explore_ranker.{thriftscala => ert} -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.CandidateSourceIdFeature -import com.twitter.home_mixer.model.HomeFeatures.FromInNetworkSourceFeature -import com.twitter.home_mixer.model.HomeFeatures.HasVideoFeature -import com.twitter.home_mixer.model.HomeFeatures.IsRandomTweetFeature -import com.twitter.home_mixer.model.HomeFeatures.StreamToKafkaFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -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.suggests.logging.candidate_tweet_source_id.{thriftscala => cts} -import com.twitter.timelineservice.suggests.{thriftscala => st} - -object ScoredTweetsPopularVideosResponseFeatureTransformer - extends CandidateFeatureTransformer[ert.ExploreTweetRecommendation] { - - override val identifier: TransformerIdentifier = - TransformerIdentifier("ScoredTweetsPopularVideosResponse") - - override val features: Set[Feature[_, _]] = Set( - AuthorIdFeature, - CandidateSourceIdFeature, - FromInNetworkSourceFeature, - HasVideoFeature, - IsRandomTweetFeature, - StreamToKafkaFeature, - SuggestTypeFeature - ) - - override def transform(candidate: ert.ExploreTweetRecommendation): FeatureMap = { - FeatureMapBuilder() - .add(AuthorIdFeature, candidate.authorId) - .add(CandidateSourceIdFeature, Some(cts.CandidateTweetSourceId.MediaTweet)) - .add(FromInNetworkSourceFeature, false) - .add(HasVideoFeature, candidate.mediaType.contains(ert.MediaType.Video)) - .add(IsRandomTweetFeature, false) - .add(StreamToKafkaFeature, true) - .add(SuggestTypeFeature, Some(st.SuggestType.MediaTweet)) - .build() - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsTweetMixerResponseFeatureTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsTweetMixerResponseFeatureTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..6334fc6fea096dd273237bef46daba9dc4c54cf2 GIT binary patch literal 37402 zcmagFWmsIvwm*!!dvJGmcL*f7I|L2dxYKxWx8UyX5Zv8@y9EgZcmH>0=A1Kg?!E8( zW%E!~>nCgNuByGeTInMs6c!j57#tXEDvwsBN?}|QI2hO{3>X+Ds8v@2VCQUR=WM9v zVQ=Q7&+Kk%)0iZ$xGIYFia5pzAZ#%B; zH;np)OI@T^rA;g*d4z+H=gr|rg52jOCrEdhPg23BUD8m9)?c*W>;3}eY5x=S3f?`E zf7PALb4Ssh%W6QLi5z1xo$gB#Q2}~a+@~k6N5tatcap+A&x^(Ddm^KEf2C`;;V;q(w6ob8&JFQn%aEHM<>1Zo;<&j;i#_GoR=T{N^AuE8b4 zxBHX1tL+47+oVO@P@ssKQQvW!Ymf>vY+w%P($$~Nh*gP88q(X!pp*oaCZJyti&1XOfLI)+t6kwv{2(WizF#$N5{l3XF


G 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 tmt} -import com.twitter.home_mixer.model.HomeFeatures._ -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.suggests.logging.candidate_tweet_source_id.{thriftscala => cts} -import com.twitter.timelineservice.suggests.{thriftscala => st} -import com.twitter.tsp.{thriftscala => tsp} - -object ScoredTweetsTweetMixerResponseFeatureTransformer - extends CandidateFeatureTransformer[tmt.TweetResult] { - - override val identifier: TransformerIdentifier = - TransformerIdentifier("ScoredTweetsTweetMixerResponse") - - override val features: Set[Feature[_, _]] = Set( - CandidateSourceIdFeature, - FromInNetworkSourceFeature, - IsRandomTweetFeature, - StreamToKafkaFeature, - SuggestTypeFeature, - TSPMetricTagFeature - ) - - override def transform(candidate: tmt.TweetResult): FeatureMap = { - val tweetMixerMetricTags = candidate.metricTags.getOrElse(Seq.empty) - val tspMetricTag = tweetMixerMetricTags - .map(TweetMixerMetricTagToTspMetricTag) - .filter(_.nonEmpty).map(_.get).toSet - - FeatureMapBuilder() - .add(CandidateSourceIdFeature, Some(cts.CandidateTweetSourceId.Simcluster)) - .add(FromInNetworkSourceFeature, false) - .add(IsRandomTweetFeature, false) - .add(StreamToKafkaFeature, true) - .add(SuggestTypeFeature, Some(st.SuggestType.ScTweet)) - .add(TSPMetricTagFeature, tspMetricTag) - .build() - } - - private def TweetMixerMetricTagToTspMetricTag( - tweetMixerMetricTag: tmt.MetricTag - ): Option[tsp.MetricTag] = tweetMixerMetricTag match { - case tmt.MetricTag.TweetFavorite => Some(tsp.MetricTag.TweetFavorite) - case tmt.MetricTag.Retweet => Some(tsp.MetricTag.Retweet) - case _ => None - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsUtegResponseFeatureTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsUtegResponseFeatureTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..959283e6abc17946fae3d44624c685626a2b1c6e GIT binary patch literal 37150 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsUtegResponseFeatureTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsUtegResponseFeatureTransformer.scala deleted file mode 100644 index e7bd61b2b..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/ScoredTweetsUtegResponseFeatureTransformer.scala +++ /dev/null @@ -1,31 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.response_transformer - -import com.twitter.home_mixer.model.HomeFeatures.CandidateSourceIdFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -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.timelineranker.{thriftscala => tlr} -import com.twitter.timelineservice.suggests.logging.candidate_tweet_source_id.{thriftscala => cts} -import com.twitter.timelineservice.suggests.{thriftscala => st} - -object ScoredTweetsUtegResponseFeatureTransformer - extends CandidateFeatureTransformer[tlr.CandidateTweet] { - - override val identifier: TransformerIdentifier = TransformerIdentifier("ScoredTweetsUtegResponse") - - override val features: Set[Feature[_, _]] = TimelineRankerResponseTransformer.features - - override def transform(candidate: tlr.CandidateTweet): FeatureMap = { - val baseFeatures = TimelineRankerResponseTransformer.transform(candidate) - - val features = FeatureMapBuilder() - .add(CandidateSourceIdFeature, Some(cts.CandidateTweetSourceId.RecommendedTweet)) - .add(SuggestTypeFeature, Some(st.SuggestType.ActivityTweet)) - .build() - - baseFeatures ++ features - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/TimelineRankerResponseTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/TimelineRankerResponseTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..f7d375fe5ff328e90f3df921d7a5b6fc49f27d19 GIT binary patch literal 37656 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 Iun)uo0BK}TCjbBd literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/TimelineRankerResponseTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/TimelineRankerResponseTransformer.scala deleted file mode 100644 index a261b2fc2..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/TimelineRankerResponseTransformer.scala +++ /dev/null @@ -1,91 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.response_transformer - -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.CandidateSourceIdFeature -import com.twitter.home_mixer.model.HomeFeatures.DirectedAtUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.EarlybirdFeature -import com.twitter.home_mixer.model.HomeFeatures.EarlybirdScoreFeature -import com.twitter.home_mixer.model.HomeFeatures.ExclusiveConversationAuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.FromInNetworkSourceFeature -import com.twitter.home_mixer.model.HomeFeatures.HasImageFeature -import com.twitter.home_mixer.model.HomeFeatures.HasVideoFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.IsRandomTweetFeature -import com.twitter.home_mixer.model.HomeFeatures.IsRetweetFeature -import com.twitter.home_mixer.model.HomeFeatures.MentionScreenNameFeature -import com.twitter.home_mixer.model.HomeFeatures.MentionUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.QuotedTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.QuotedUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.StreamToKafkaFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -import com.twitter.home_mixer.model.HomeFeatures.TweetUrlsFeature -import com.twitter.home_mixer.util.tweetypie.content.TweetMediaFeaturesExtractor -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.timelineranker.{thriftscala => tlr} - -object TimelineRankerResponseTransformer { - - val features: Set[Feature[_, _]] = Set( - AuthorIdFeature, - CandidateSourceIdFeature, - DirectedAtUserIdFeature, - EarlybirdFeature, - EarlybirdScoreFeature, - ExclusiveConversationAuthorIdFeature, - FromInNetworkSourceFeature, - HasImageFeature, - HasVideoFeature, - InReplyToTweetIdFeature, - InReplyToUserIdFeature, - IsRandomTweetFeature, - IsRetweetFeature, - MentionScreenNameFeature, - MentionUserIdFeature, - StreamToKafkaFeature, - QuotedTweetIdFeature, - QuotedUserIdFeature, - SourceTweetIdFeature, - SourceUserIdFeature, - SuggestTypeFeature, - TweetUrlsFeature - ) - - def transform(candidate: tlr.CandidateTweet): FeatureMap = { - val tweet = candidate.tweet - val quotedTweet = tweet.filter(_.quotedTweet.exists(_.tweetId != 0)).flatMap(_.quotedTweet) - val mentions = tweet.flatMap(_.mentions).getOrElse(Seq.empty) - val coreData = tweet.flatMap(_.coreData) - val share = coreData.flatMap(_.share) - val reply = coreData.flatMap(_.reply) - - FeatureMapBuilder() - .add(AuthorIdFeature, coreData.map(_.userId)) - .add(DirectedAtUserIdFeature, coreData.flatMap(_.directedAtUser.map(_.userId))) - .add(EarlybirdFeature, candidate.features) - .add(EarlybirdScoreFeature, candidate.features.map(_.earlybirdScore)) - .add( - ExclusiveConversationAuthorIdFeature, - tweet.flatMap(_.exclusiveTweetControl.map(_.conversationAuthorId))) - .add(FromInNetworkSourceFeature, false) - .add(HasImageFeature, tweet.exists(TweetMediaFeaturesExtractor.hasImage)) - .add(HasVideoFeature, tweet.exists(TweetMediaFeaturesExtractor.hasVideo)) - .add(InReplyToTweetIdFeature, reply.flatMap(_.inReplyToStatusId)) - .add(InReplyToUserIdFeature, reply.map(_.inReplyToUserId)) - .add(IsRandomTweetFeature, candidate.features.exists(_.isRandomTweet.getOrElse(false))) - .add(IsRetweetFeature, share.isDefined) - .add(MentionScreenNameFeature, mentions.map(_.screenName)) - .add(MentionUserIdFeature, mentions.flatMap(_.userId)) - .add(StreamToKafkaFeature, true) - .add(QuotedTweetIdFeature, quotedTweet.map(_.tweetId)) - .add(QuotedUserIdFeature, quotedTweet.map(_.userId)) - .add(SourceTweetIdFeature, share.map(_.sourceStatusId)) - .add(SourceUserIdFeature, share.map(_.sourceUserId)) - .add(TweetUrlsFeature, candidate.features.flatMap(_.urlsList).getOrElse(Seq.empty)) - .build() - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/BUILD.bazel deleted file mode 100644 index 81cf19e9b..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/BUILD.bazel +++ /dev/null @@ -1,13 +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/util/earlybird", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util/tweetypie/content", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/transformer", - "src/thrift/com/twitter/search:earlybird-scala", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..5cbf1c8cec14216cad1eb0cb0431594dfd7b5548 GIT binary patch literal 36876 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 MkO<5kQ@cSt05{auDgXcg literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/EarlybirdResponseTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/EarlybirdResponseTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..2dd5c333a36a310f2abe8d8ed86f520e9c3612bc GIT binary patch literal 37658 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 eb} - -object EarlybirdResponseTransformer { - - val features: Set[Feature[_, _]] = Set( - AuthorIdFeature, - CandidateSourceIdFeature, - DirectedAtUserIdFeature, - EarlybirdScoreFeature, - EarlybirdSearchResultFeature, - ExclusiveConversationAuthorIdFeature, - FromInNetworkSourceFeature, - HasImageFeature, - HasVideoFeature, - InReplyToTweetIdFeature, - InReplyToUserIdFeature, - IsRandomTweetFeature, - IsRetweetFeature, - MentionScreenNameFeature, - MentionUserIdFeature, - StreamToKafkaFeature, - QuotedTweetIdFeature, - QuotedUserIdFeature, - SourceTweetIdFeature, - SourceUserIdFeature, - SuggestTypeFeature, - TweetUrlsFeature - ) - - def transform(candidate: eb.ThriftSearchResult): FeatureMap = { - val tweet = candidate.tweetypieTweet - val quotedTweet = tweet.flatMap(_.quotedTweet) - val mentions = tweet.flatMap(_.mentions).getOrElse(Seq.empty) - val coreData = tweet.flatMap(_.coreData) - val share = coreData.flatMap(_.share) - val reply = coreData.flatMap(_.reply) - FeatureMapBuilder() - .add(AuthorIdFeature, coreData.map(_.userId)) - .add(DirectedAtUserIdFeature, coreData.flatMap(_.directedAtUser.map(_.userId))) - .add(EarlybirdSearchResultFeature, Some(candidate)) - .add(EarlybirdScoreFeature, candidate.metadata.flatMap(_.score)) - .add( - ExclusiveConversationAuthorIdFeature, - tweet.flatMap(_.exclusiveTweetControl.map(_.conversationAuthorId))) - .add(FromInNetworkSourceFeature, false) - .add(HasImageFeature, tweet.exists(TweetMediaFeaturesExtractor.hasImage)) - .add(HasVideoFeature, tweet.exists(TweetMediaFeaturesExtractor.hasVideo)) - .add(InReplyToTweetIdFeature, reply.flatMap(_.inReplyToStatusId)) - .add(InReplyToUserIdFeature, reply.map(_.inReplyToUserId)) - .add(IsRandomTweetFeature, candidate.tweetFeatures.exists(_.isRandomTweet.getOrElse(false))) - .add(IsRetweetFeature, share.isDefined) - .add(MentionScreenNameFeature, mentions.map(_.screenName)) - .add(MentionUserIdFeature, mentions.flatMap(_.userId)) - .add(StreamToKafkaFeature, true) - .add(QuotedTweetIdFeature, quotedTweet.map(_.tweetId)) - .add(QuotedUserIdFeature, quotedTweet.map(_.userId)) - .add(SourceTweetIdFeature, share.map(_.sourceStatusId)) - .add(SourceUserIdFeature, share.map(_.sourceUserId)) - .add( - TweetUrlsFeature, - candidate.metadata.flatMap(_.tweetUrls.map(_.map(_.originalUrl))).getOrElse(Seq.empty)) - .build() - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/ScoredTweetsEarlybirdFrsResponseFeatureTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/ScoredTweetsEarlybirdFrsResponseFeatureTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..0e7145d01d90d0c2eb16a0c30577bfe019664dba GIT binary patch literal 37153 zcmagFWmsIvwm*!!dvJGmcL)S`m!Lr#2@Z`1cMInCgNuByGeT3HSf3JVMj3=Rx7l}Ec$wJ1`G@n)T$=|u>Wjs|Jg|0 z!@=CyfZ5&7wlPUTX;l>M%h?NdGK(;&mjo(y*^UFP17jS%WOe!tug((7i9E!^-2{J_ z#*A_Z40BvY>YWeqYMoG*cN4Xqgye~VL55a7Ib^YS{(2tssRhrTR2-S?qRcMQ+#pO% zONRHmX>M@V-I{)WBaGlP@f_WNB<%;VXqw6xO$?HuU^rEwG3e0h{289y4hjc#)x!~* zU4~D4W6G{C6TWWb4-$S-Suab>)S8(#=?HE9ykEnN&o!jK7&pWZIM=#PGSoX+YB<)d z_7`)BZ>36})>S z|EfEg=gy)%m(_qgQ+dW@I=z=9q5|~pxQ|a>kBG(P?<9qLpBIbQ_e93-$n&1C6b!+X z|4~H`YB|w+Q1vz-z`zhee~p~XZJk+|e_t!(CqF>4q4}K&ON~$!+c#-Q7AzY|{!}Os z?)f@#T4WEDDO&03RFO2$#_1(KINLR~SV+$&SYjx$4b(ExnGeWa?A6|+yJ%=PT7yf5 z@9-ycSKkTJu}zD(p+FHer@rI1&?FUR*uWgrqpLri5vvlHG@`eYK`99;O+dd!{7kFm z;=?oxfB{I$H*tj*SGNAJbql{2Y5FW<>?e8{>wvD7s%XZB%UggV>xg+RA$u?#T^8G# zfz$TbuKY=_{DS#spoEf|p*!U@%wz|~0Iy|(VDU`L?)!ZvN{UG>&nXL+jX)J&hiT$t z*4mUa-Nu+DAGpyOJ?^uACMfg^qM8-xHlG0{2pyClGk~eG6Trcl#T4LV{`)4+j2~C* zXGN2`^Ol-Z&Xr#XY&XTVSV~!{AE1DKLEHAiU1g z*bHeJ93M;)5_jfr7LKTc{km#`v-XrFMbB566x4Ut^Ei7+ZOLys))S$EkAzT@1u2`( zW+1;1%1<#+$Hh7KWr{4bMYSmRr??ur!txhQ(RkW63S`nfEV^I*{={Jk6!G=wrOide zU>WEox!_^R10Ut5454P1%Hac@wr!zY@vC%|c7AT?vEi>aA+LU}X?rxiWb*|Q=^_Um zzaKPK-On(mt$|@DJaK)1MnVPW5LHQ4b!*XN-wHo*c5>XDc7-%3M`{j1LP>s?J9AP} zAsUbix2EU10T?K(9iE%pSz~gh@)P-N*1}PP`O-AbOOx^un6aLVGVCT~83Lb~cz1na z#g?8Zi&ZR^0VUfe^PRD4GVf=-@7w#=cT0o}_dFL+c!!oKhIF%T60gsFmjwT;%k}Ci z?h&XiwoqVTXn(KEM+b*L%A!7Qzsic%@x%aS@HyNHR!jviK43v?Mq(YmCO)HiZjAgx z98@dY4$$Wz6r1l0%T1U-y}(n$*wdnz1#E-jCk^cJhrAJG$906p>hR(H)yV^LXQ(ph zQf$pZbOT4D>9NXr7$*47sancaV_xL-CKDILunx{j4AY-iP((Kxyo%Zt9lXCin~O>v zyVl+hoF^$aE^T~OVO0t*hkU92RPIqSEyVSH_vTP1ISCm>8sg&%2h_MnxfShls5Gtu zDFK^t=lR4ZC~HKo&o^~uztD3m?euU3XDLLFh#4I&XOZp)5PsmA7Ho+EzuibXlxLpO zu7cr)HyqWIs@0WhgjBUBCFBOPI zk-J5KdK3^}dd88YUy*>-C5laGO2zc89Rpk)^Y9`iR9-@AgNI-Kc-qgb!AumjB3y1m zr}UYc5tgbQuPOhq!(2foR5e6HnN0L#LPEe`N_VPta3Ha$YoMqXg`LfXkM2sf9Sm#* z-viJ zNfMsa+N2Z+$-vd{vQ>&p8CaDSDO7sj*^$oj%tCw)pZ;(~@HT&QO!ChgV~{paiwSg7 zm|_3zbN8k|Aj5(PhTR8Fxt+pR2@6xRrLmQ^$h;^{y9$IBN-Af4 z0Ul&uoL|=kCJxaJ*2<)A>afl~@ZRrPpQ?ym1{LCi2djHrMc!)`xa{*qlcUSk)L|+X zD4Ueokz>4h@cF@q=L61@t>Q<;`}by&u&vbr{a$YpyEXYSU*#WCcTVsaoK@ zb%j6dU_5w+3%Nl?U{R*wri;3d)l1hMdtaTX*H^4L@T>!q$)|O#y?Ly8eo06mV)Vv* zE3<82Oj|*opzV7Hr7Yf&&Weoz%SH+jmET8E32s&_`b~<>V*f}Jr=KTae*)({f)9m0h0LVFb;%<|e~tvVbToNCD#&PEAzQInPci$n108L8QNgOc6Vr1osR^ zahU^V%UDe$E_h0VaUL>*4*N5i_7o1_gNl1Re5p}9C3@oE?Pd*|nf3u`05benr*JNU zFntVHiSmSXs3nXET2zUmYxlU?m%b8tT{603YbCiaw@Rk^QSejNNJb8>l&r549`dPz zq-lawQmOqH1tl}zf(up*qZ@_*46(bn#}2e|xL@SLWb72dDYBh-^&y;Rk5A!~12QD? zxUZHrT__*a83IfrpN%A5U`={`y>_ZR`b@Ie2Y(>IH~K!G16U-~Zn!jqj0fFPhxxtpu&HVzNP*Ed&q=i-iYXk71x5#zVKyI!>2j|Hn#qVwcdi)`u4nbJrSB~J?> z91=kKAVb|Rt=!|`MCi2v>tkSpMD+^L4@g$sImns2Op8#;S$FFn#0t458lHE1t=>q8 zo>Bifx7hm;V6cN0opI3oLI_%P{+L_-+%o-rhWT^*lqjYY$cp#n>=mIeI0383KH}YR z9(6mtbakP3u=Gm&t;F7@-ntp1#E$>&9k)+5jos|zt=htd03JibhXCG42vn@uU}bX* zK}*z>qn>&h4KbTaQh5HFUhd8%L2-qdliH+D6$c*@6`m1lTd4->5GWgS?L}L$tD*{i zN~^_xspHXw(2<;p|N1c`JL|J&JNd=Uiv?3KNw;o^6bbgi znhdpV$jf4m2r*u&x-_*Qo8WhoHoVr?Gl>J9itwMkU?D_yg(Hgzcle03ZB)j!-X96| zoqxsfC#A8&ab79W+&5m6<6XI)sfOZv2>j0S&s;~9;|N5sfPoomK!c(FE7#7SJ#5XL zf6wBeM}veN={le8?!0`X=O1>lL14pE_F(a@gde>+vue*c6gXy&zkS2~6mw$aOGPG1 zqM@px`JpVnPM|LfN11LFge{N*Lvx5M@fXhag7{&Kp`)8CEU)v9-<`BXf4desg9 zzTkNaJnWyk>z-yMufEv7oTiH`4g+2vV%{E}7SE!KMVgOx4elS-FWOV)+n)|*f8Df) zgzO%AywnN4+P$@H1hW8FNDPyU&!_tjLQ?j&$5)S<%U{NiE*m`7Y<2aq6ZcyJm$Qbw zbnIOhKYmgCn3FPjSR-;OlKF}wEbsLGLV0^QB=FvdW%UUp%5Bqk;{aXKClfFYQYV6sGj0_8ojfyltPoI6ZP3-?grP!25s<>%JUh+L?V4o&I#5 zbaUyRM#M9I9RYM=@_ga*q_|2b-=%Z$=<--u6Oj~;@eO8q?ON+|_m8f5deYhUx} z($_oddbyE!v`|eU?swc=XF=Trew8BemdQFHdmE^J=r-xC9-pU9u7Ccl8v;a6qr(5( z4&Qmcf#04Y0`!PbZ}%2B!6d5=i@mNvg)R&^#o(U~sYeZ|t`d2vG4jz7@!<_->1dBJ z561OlVGeX9 zN4BhVpC}%z#sGHif4tS|c1vdwbhYV8b3f2M_HcXNu~E^y-mmVv@*E)Ym0k?KwTBW? z-5 zhrp*VYNI^aeCZHm6d_5jo_3pA(~VVS?+a-jPFSi$nYX{`|5dZ;Q-x)!V{P)BvUsrP z=v;wQQ1Tdqe%|`D`0+}e&Uzr#@;>mb!=P$m`srl$(c#YVWmxw1O625BI73Cc(O`b= zynp}d>ep$%a|S0va4TV=-hLhrXkGW0T#&eHZg4GNP4@ETrH~5I(ag*BDuod{!rm`5>brQ-YzI$Wb1|xQE3+ zCdah+0WMy#t-Hc^laS?JbF5<+YoVfpEj=Gx#r7h*`K1*9t8O^s>(jbbr$E)&K*4f& z4I9U%?2@+KP6Ap1H{=I6)pP_ZsNMrfN3z3&{2<0g9aZtzmCtl!aF!cbJw|X>MSfU8 z9%`ZpD;;#Ch;|zlnfWqssuT;}ZYuunMS zL7}9eaddx#>VnXMLAd`2{gVo+l;+Hu%>BOz&QvHsEeL<8NbZ0(%l#h`{{t24d0B-M zkOCU@cVVssAU&#RAg@>rKbS}nnf^;66Db^x2O``bs^=2i8qqp_kNS60fwM%zlxuqz zrePMpr0zUv7qO;`&)EaGua2)S$wGTl&j$o4{}h_U*pike_pVLfR!qGmJ7+>k?YVu& z_T}Mm+gHX&A!fbg=d;1}ryG}61N%WQvFHB93D?|DOYT>C_d~PU)!XjXzvhLN4)*p( z^S1A!Hbo4YZzM^g?RS`$MU(WS&$#07-<}+hB$zy=jnNp_N{KQy2iHh%Pl2vW8E(jf zt6j{#!`U)+M^5nvt;Yl5fa)Fpsu;9VTOV4%zN-f(#zV(r>wO^f$-*&g2Zd{o8|&e)!>TztLV&RP;EQ42Sm zLu(dpnABE@D973&wU!ca+O6v-CR<;7*W-p%Zt2zgos!lz4o}=yx(A|@?{X5qUsCgS ze|A&*G=(yX6M9tE;0_5jOs|2nU23$D9`N!ya9*TzFwVa5nK-ONb}U`>!+84Eb9@;O zG@Zo4nSv}o348slhmBa0+{uD(h9rg-WzpQSS)Ip@nbE@0Vz&4LDro+MQ}Fd3c^ut+ zoP9;J?nxckaCAw(w|i<<`@t;o+|`NjK|p?RXlKt?jvMDaixUryrLf1UHlab69V1Zi z&CL;*rx8TM;%3#JZ;an=@jQcP^W~K|aAI{2PVqelQ2FZ&bqYgi)EMTx4)a{|;0-0> zYyu;=l8IU6V+O;rrNN%Q1VzR;JavETuya)hLo1S&6T1HBep`IhuMbVRRc0>zNm!W! z+x%gHzbK>q64qqWn}kh|4mr}Vd{@tN&=&)xzY=pEeu3qCbXOjdV;n}A+LVUd%60VH z;$dC{=*xFIwr}%L_&gU;E^?kpnO5OOv2}i0LuPS`Iw!Y8d)e>&iFLTMFG0ei@;;yM z3!*{`GiUGTTv;CdPZcqUbPiSEfzHTi-d1Bbg>*$M3hmo+m_FX{Y(yXVbc+hc9y~*I zFelqdi!srMeZH8S_IIDD&G{7n$l5&>EZme^9|V+^ZEFhL|8h*nnk8x8JR^U5O`B_< zc6+=YzI?qL8uV;`ar6M*y(YaaoIK9{dOmbu{n+u^B9eK_@;p5Z?fD9Zx}5IOA`E4; z+1{Kod_(r28u!FyycU#Sa_a1iBBd}+J)V7=f+7=1(AJ@Tnx)z*7YO)PHUIRC+1>4} z;&;KN`>Y}P&_Mct40yt>!C|<~*Q1x96F$$RT^wIOL*k0%hz5Jr-QPsk3azbyntb#m%j%j0d5_R6#_5)gGO@(WD1bn?zqBr!yE|;Bg0SL{_0?jIComn7^6*!*8nu3g7NeDNT(U?kaI zB%=3*(h+;6OXPEg*q6fw$SS4ZdYJcLIo9mA8Az zowG*cBUe6xqB>>SCw|_gvYI2!L8Xhk3|j@t>R&k_Djc3$lEV*!p85T0ZMSon%E7CV z^t>~1C3y=!(KH8J>@^tsF1Xv9O=j2@25;sqTzVl_rHnPky*)jw6)W@&?FDrQ=2YcU zsVi|5*YxMVfBq3#O7+F`r{{xXEB|roO?k@CB=VRxAXsn-dqeLM7$F^L+mSoq>{CV! z^9I3}{&6jWHMd9>qmc8BkIRt7J4Bd6%s(asY%SFtixqj>sUI$$=dg`fBs;}6P|`U{ z74cE^t0*O}5x&*nY$Z9|RWST`p#fqSF1TH(&>d#oR&vjeqI6u%FnbhcR%;fL#8r>( z#EqHE#jo&Y($@SC2m`GhhRorIuFW*2)=KlMs?=KylWKzpWtyDZjoXWOmSuIF^sPtP z;;Dv-nkiqUd1N^hKTPt9vF{cjTG(3Frxpkm7v5%&FFUV5ds(+^M<~SNjC$O8lvl+c zDaQ|JYjc{cD7hSLRaQ{6?Cu}p>EI#6^pKgNj-b`S{%Ep2`@F=_#6p#_M;_T*#Rx{F zz<~Iuy%=5a0NdV`^ZZHG=I1*~418%>IaSwIGOsB{>18ses)|SB#m3?uv30ecjU^ie zyqo1xqPw3_cYIlIWhiz+cow}Dh4y*;sTPEFeF6mm-6}2?IP8GMHK_Qr+KROIUq&?A zM~&kduS(Lc#3Jd>O!bAZJtY`u^h=q*(pqOLeL07-?E%X33CJ_EY!ff5XgO@0^>~pm zDDOE^Zc!8`Z;SfXn;p%$Rz|GNN})UUE;l3O z`Y$^WzE4i*@Q>KPPa!3{X<(t_CP^)F3=`#vNLS5cm`R0_%9N}g7{+GRh`0Cd^>|d- zyQ9ZrLjJ*TIstmpx!Ha;_`LQmAHohr_0v_;B~d2I%pTXqOGsbIL+SnZ1*9~@r36;E!v zBSd*ke;!2qHFf(P;-0FUGjVNc8Cr8RNux3=HVeWv-OlbbPVPZVrBy$x{Z;SuQ9_yo z6_-h<0C|+{$W>PJBuiu082Rk5s}ClRIDm7`^y_U%cO~jUQUvzCB|f52b*@i#HRh>x zyCL!AIra0^tOWsP=g&Lq8`7??nN;~U2P+Xo`sT8w2QRPZT4(c+!4{iS@lJ|#lI?`w zhJ?>0ohx8|vRP2;V&1PH#kWa~`2{UCq_0AEfZMs^#!8h$G0Kfh;(gj#Hr#sR`xKwe z@f5kPj9n1Ap{=)t_cN*!Q_=aF+r@U#)qNA&1+Ej`n+`^HE2$sDbJj5$_Z+5y&rlR6 zm#2;~m&ddxj3ns%2e&{`uk5Y0(F{RZ0M-nFO|dX!XD!dMP4vdl>0BM|F_f7be5b;} z)x)PTFJ%XaYQp4i>Cw&|empso7Z7!DopI*yovDzD`kQys@(w1JRkt{uAL(V#JF%yi zEb@46{a4fSn^m^thdEp!+LC_o`)yD|E~e^qz(UiUk9~yi{KY$r=nlC;$U++NjX(#4 z&9*gw*byf3F#wasxv}~uvW8grPdmyl8`9KyJYKwxMb01`{{xg99!p_8M*WSz08ID2 znxKu(8M~ky0bJA@8N~r+I^uwRKg{uL=w)dALB9IMpU7$;m`Q92Kvme!$>#MzKQ*uR zy+V|nW@AAYBE=$?ZTJo+ZE*nq)CI(bANMfg2>G>iGS#&O5-+^q=EWre{gtyt_U{xG z%n%%G4a<+ZoX-ut+Gey^b_@N{Dbqq?#cf*;9=^6W%O73zDL2Gp@6NU2)5!`eAXy)XcLy4I+uG$Ri zh@wx_m07A&H1Tix2&~W#HBLhE-8h(H7u6!FnDaI=H0qfw9wR;Jwt^wDlvyUpJX_Q| zOHyn@%ml3Fo~rxz!vbA*Q*ub}>iSYenYn1u-*GHnp}Nd%D!->9Wrn3i?FG8=O9v8a zrB4pa6rP_T*;T8|;!{$bim1=sBL)=XP)XD{gjE^$-R4W!`}|n7y_Pw(I=gh)IW644 zpLhKBZJ73tx*SAPqZINv_A8I6QoscT5sAuqjcdKAjl2y&Qn=e30GXY>B$P(5$}CdV zSDXIhSHkr*lPu=#O3m?-`Wxz`>yl;GUOg;8Ya4TcF!D%CFaI;6 z_fy2kv0Y_WtufyD8fC?`)AL%76xp)_2Zyu}mn+l75q{^lSL#rVOBpNE2$2Z%5C}00 z?+WLbv%`t0-}5xXmB_i5YX}`4ODal<@_YIBkqLoYYn2i; z=+mn_R5|EnREJV$ggC@Q#X?bsnmd1eVtZ$WPc6_PPiQ&%Zj8#FQYU|vxbDVOqE10`GmZyqRDd@l%YBZf$~zKLFA-F z22B4phd|V*Ak`C%D>M;hZ;!5=a;{nK2^UO*4ZceEe`b?*1S;#yJ@9DcS3qQX>;Fi7sALo2J5vgd238LN` zI#RTv3~2@4(}Yw{-BBSHq|rTcHNeHJ=^5Q=R&|mk_vT1wXov+ty0e7>Q^7O37Lcd_ zv{qaf6Mcy_C`w-v;>|q7x%gTcRY{WrMpTEcmW_LbDllwz{AB#)iO~4`Mj^>z1~h*_ zqZ|D~Fv=aVrC~n`0Bbe%uZNYsOKpwKC)oNqV2m&FWWa-xzZ`a_TlaOR_ec;2QUsW( zEl)KC4G@|8lstCF)!f{i!^DEP^L9Dv%HA6<~3`KwL6)cE2h*WV> zConZQNu?917^SN@U>nWY z2J_F{8DW56#I;|=xierAmNV359lsT!g<^g4PXObK#iRu{5oMG%M63N;Rf88k;Ywc5 zj20`PL+-UN^EZtYvRM;mYU4@7Xw%RXx5C-qRPIavR;fnP08-fx`&%UxcM5d%nq1y6V+DK9s0&zOHa3eRj6Rtid|3O^k>?nmQ(pt5y z)Ry0?0^VByi@OVgy>w^xZv8`u3bV3$>Qsz%dMLhs+e*VqT%+U>J77m{te(dFM3hRH6@i zIgtCEX=Jvl;2p=Fhx(vIFG_FOf;y~@t;w@Q&1PnF+$PcQ75eAH=6W~dTf0a{cCZSb ztbPcZmFpVgEX(6)bjbu6sK#mk0Vo`f({pO0%#`}<^1 z+oYoSVC!xSK@9}Ps#AR!?iA($ zR4p}>i;--Y5jcVa3?Wq7CcKR3bq>uRWz%bCEwxQ@HfD@LTk(1!FEy)M>!%v18_juR z_~vyBoa7!aI}FC&V5(N2L8^AcHklzGV=qSk$FSeja(_@`fT&^Re($~~S~nJula2qN zb~PIZQ44VYN&TG)GXmxRpuXrDfbR&)HrnuRecx#ee^^=8i(x;T#mMOIc1)%n(9uNM zek6h!LE#>%g(6oo;Gj)zwr$@Z&uv;fT{9rsx!a5JdzW4KuGwo2=`ZqImk|)T8tfnB z&1{^Q5zPMw`HZpb)E9}J z-@ws^kV*8`_H*n*-p&2u&ezT&sN#YrMs1YvUr~VC#37%h95MP8KF!&DUxm)h%EJq{ zru|q(%d(AGFkO|CMtLP77q|XZt;SANqq?+jTsH-6LZuEAw#CB9>zcu%1MW<*{_r>A zHFI8MXjDgFRG3Q>j3P&kjS~1!u8->seWcdZHo)DFYMDRe*-yi=tR$zQY%R<731~ij zSJQZJu;CEC05rmwl+}GfAWwtIv%)s|T6*_|ENuZijr!Y~81U4l+!PA#`nugMT8vX+ z;dw}+nBOYRYz&yPOK1Wrro>1d6jOXS=0*3gt#(lCz?ml^rQ%g&T57pLAhA zrHOJ#_5{2o^E39jdS16JR{YDO?p@L7;NQTmyk^b*F!_tK@}_I3ZMI?MUnb@B4m%6O z{xlhq^xGsa;%}3kcK?4Sc@=EBr`z{AD}f-Bm_=4^{I*#wM8x^H*!Tj`=^xFh9SK2i zllmQyZ zEDr5478ej5Pqf>?CM@;Ff+Wt|qk0oHurBhDzn4j<5r58E$WZWYXb@V*Z!~wYN?6^H zi{EH04!1CqLmXO5<0}J*CCz1Da9ixo>)gRNU}Db2$&L?hP1v@N7aCGOqV^)9(V=yK z#XRH6(2P#0@}jQt00o*gDV!rU?kn zDC7DP(2&!$1zmVDN;HJX8bj96V~E9iDJ}e@$C8}V*aif@(wsksa0~IoVd-%z!8D{j zbxWUuHC0?{2PN;M43xYRIM@+?+ZL#QCeJQg|F7iLblP@(om@&_{YxQ2KjPjI;r2KI z&14UxwXqsaPN_RBoM$N^280GZEc90V7@HWWq=UNbfXa!tj~{Lnpk4g~c+IL1}uNyo76b@^b_4BJq)Eai399iM8NFLpKGPjx~ zx0&UfUbsBy%VBs2^%~Q;%ClR7Q?Oqd-(20~eA)#r+ELC0XucvHtobyFexYHdEfG?> zsfh&&&gb{xpNB>>tU4B3uVp!O;xtV)_uh8&AS@wXhMu8sQgjtZp@*L3E)AwXQA~xC zuj3g#*>TPBWz&BEk3n>eeQdPnzbd~MSL$?xXX{2`?H)Adbl^p|7E8_U$;pwXpYIoc zEK-j_ut^~2ud>xjEOYegd)ECF@Ezg`k-F=^t4~RGVj9drZlXFunsh(J6n8w`%lV>V zgZ#>-TP&XcN==Gx%W=EVf8{q113=8Yv^j@-e-V72Cv*CMV#?5!VC)$R2D-7Ogc#@h zOrEE@HYDPVqxqADdekcJ{-U=)IrrC1+8@AU1ezndu!mGI`>+R>Z*T+8%EuTtXy;3X z%oe(UxQE8gL&eO8(mbs5mUF3|Mw|7|`&t|F-&6tAG85I1699IH%sKm6`5=DfeNgg( z9^jD>je!vP0bjGvTjD3Goz}8gyK(R_n|hxaMc|gO6&KVnt~kKfFs_dB&_f@#S-azK z?`@5z<&T)yyKmEz%Q!?d5+R6jk4bO-q{3NH1t5Zw068(8I*o&vLX=BEdxeRI)i7P{ zsXZdxeW>#B=~;3(Y5hQp%iid#(G`=$>hi$>jM{cF<-R3Y3)TLj6b0IqL~R7m)k_bK z(vjWil}+ahXP>Z$)Ni7$>1x-?^r`1D0&l%TW9*1Jdw%ZOPVCY7?@~=?dmgLea#S{tJgJD*vL&@7b(I-9kDPUi(^6`ERqv1?h|PjJB)1n-h_%!ZN`RLM>6 zf)pDac>Abfzi{uJ%gpJ9Lk$eXHWNyiWQE|Pn+Nzyp#Y01z%td2em$1iOU@Ft0$rH$ zG&ZXzrR1JvxGL~XHbx$lj7UIlp|^CEhRG50O3TaW)}alGlmyEZ3+Cgvf9Odd)u&?_KV~z1bN+QWjH={Y-y*T9!R23oY^iUH$yXv$r}5lhvj7 z>9^o#H0ql*K4*~Nfd2>%$S#Ez`BQN3Z^7rk1y>Oqxwx`DXdc;ic|nV)lV~yACy|WW zmXnOi{{`&cTb&db^DkiKw$EnKxRXO**w5EDK((Td4PFuKXL+Xk+yhacPCo=-$xso9 zXf~#dz{=H3=pVpQ0|>yBgqhN<_s}B9YEanEc-3w%9bN|KT@PYP&?1rC7Rzdd^=zWh zB0im)iFDOGQ=nEgMBq<8Wh0gxkn7sgEz85}{I!0-k0@`~^{<0OC0mPPn}?ntKg06~ zz$)$D>B0aKkTeBQN=!R8jC)zmy+f{$VUAjy>Fe4Putm~&Zr9xe>X9{N`? z|JU5O=0BJW>Cletpn&q5190iw0#%e9S_I&6e+fDYL$CgjhkLrCz!p?5+tdgZnj&dO1nHX7agR9*J1O1<3{vyD3adHbikx&q+>g^Z z=2i5fC~+B)HM(3Ln%7XUt_^IscUS|H@C=g>SGYHNi?{cJxzBO2j&OV*3as}6XG+Zh z^u~VxS=?dG-Rl}Qnx}BWu*Xr~oWAE`$3GsL7e!b;e#5_G?EeOERQe5Y81@H%!<}2eF4S;4-0(>carDxrJAXxn zqCN z&I}MaL-=jEBiamyU|RCy^1$^v?w-t$@NOisdw~x-CY6E>M^wfmIuNc=r~XNQ!1)(_ zv8kot7BtBG{&owXJp#Oae~|OP!|5Q0ckf@WaZm}V{UGqWJAiH;kXR8$v9gHTg0M32 ziAmCwOt}t)r)RC5@uO;m+;Yi74} znu@rH1N91m!T1b7MJ+8~kuN`?%NxPgt_JJKroo)7W^ezYMZYQ~ip$t|$CO_OGAeG8 zCL)-{srtmZZrPpKz3aRZgCW7vd~m2pP!r}1@S$P?N|PG2UM7v^DL1HuC0R|31%#bF zbTGFJPAFDHYU{viFT2|^G2Y_iS-eS_m}C6nDqhn!Heg;HAH!#5t!2-w@E;m`p7Cb4 z1aO)ugxb}yvwV%RJeFFj(4*3%o*oN-vGb@v+SpIle#g!*ep59jFN%_wwD&k`0n?~c zifgA0#(;^Jq@6ldVT*Oi?%K(;s$An-Ay4WWmgJI{6!m;DVv&tHVw*2pAy3}9pO~JG z!JKkrZjOxiRXbI2LDbYd>uA+E4yFC1zApH{gX2Pv$#*@wrhiy3DF+_- zGxM}DR1S7f?+7_J$Yt-(3FF_pfX33}_>d_!JRNBzq#^;NA)O`XltnHgSk;@9-XH&> zVg*s*MgFE@jTki9s-5OB1=(c(>cL9lX=^glrtxSfo0WtuAaSMru0xEomfcJ<`RFk@ z)lZ+6Vcf-a3W?vO(6HennO9BOdn(N$HioOt9^|D2ul24C8ZIS=Iq7Whu-nT)iFEEv$%r<=xtEdpDusw}l11Iog zdqTtf8>6R=4kQeEsyH*Fo(y9~Z|4j2$)LK5`VV5GAm|B+@`QdmvhPf2QF>UzKK60tP6RRnEm# z&JE@cgTjWRM^h&)A@%LCK?{Js)xxOIpQl!bV+5Q|4gwk#OO(GKG9hDc`E0<^UqjM! zZnl>Ll*uCTe93Fi>Rn4>+jEiBX>Ap#OGK5$a7(rxyLd3BH0;EoeQ}V4xFJn9tTUB! z3yM|o>3az1(ba##s(H$X)Nvg z+@jDP8B1AutfcuF8eD9mg8dEy#x6;3JB+P(O8U+ogw!-mRX174dH(*~sMj16`{W)? z){2+f&#RJ8Q6$uXKefKSfpubi>jB$|63-RAu^9PjaF|X8Pk_cWGy$5P zrtMW{b-b0|IBbH@Y~8Trr3mX0@pAn`q$J?$F9a!f`wW+;6+zFaQU%I&xa?6_TV7=F zbZDw2m~whKy$tmoj{q~SIY%By2$lX^9Vs(+}J-51j|8lizACICLQR# zAGs>+GJL8u!g*$F5EdNWTsT(ZEka`m)}e@^u1LWjKCq#v~@uINs-L*R? zAZrAIhb{QyCf1)?&!iUm1M8YM!YIP~I2vOgUdqtZ+zzBJ-FbA->x zfHEUF;n~m6c@8T3v%!_flmg#>59uv z#2hJ&fGo(kwNy6)uZ0lV>VP$?@JjBIq=X9@#i$Z&l3BK7uOxV(JMAgwC?@B@7_ z=oG(bwjahwjLb;T3GgeO=)2ff4(DN%(EC^4S9g!DC!f~!O75e(O{6#O`+fUX;F4g~ zLiVQb)tS*QfM#>;E^V(x*GND zEc+I8w11;>RY;J@2&cWfvx2xOeSLrS6@Z$a;+C$It%*ABX2i2P>^5c0%lq8Dc(VVo zb(LypKjP*rV*RDGH3iwoh9x58>dgfvQ1z@U23=TzlQUc+WCDEKqIl$h(CX*AO<&;%-j{xbmjaIrm9AO0zuxY96h219$+{ ziwm08l`k!?PF4&$Fp?|$Q7X4HuGTzP+g2B8@;NCXXTax<4O?82>;!=ip3lruKVE#_ z7S|2x1cmI0`}T?lSFeC6#C(LSuXRF10>u0zf^RO*0vi=~?d{c@Os=Tq^VOp-RF&No z7!o2A3+?khP8O|8CzkE=hZnD6r+j^DpfgH|s{D8r>{eo0|et zlcf(;*FUaIULL%iT3>HBN$T!W`L5a69$ta9FSq^2D}8ro?CTDX6pJch{#u%woj8y7 zcWv(4MD}JER^9RoO=kCM<k0nlUlsH&0L7 z4}CYYhmH?#S;(yKe*}`){R#A(N|~zTP=@@`k$R2 z%MY$;+9PWv2ms|rOhl+y@+2s)Z}scjt@&f}LQJ^7s(g4V8o8+&_E`yV0mD?*!xYw* zl5^2Yb5mbSGT~JO)COH|(?cj!>+M?9va;7jqt7gP;C7#uk#p{Wu7M<7+3P*Qpr)T& zpe8&}6UXh1h?h3uYuCfJ3=&s&)$R27%8i{&ZAR8@YP%86>fpi2&do38J!qby!?cI< zTgPd)S&4x3*P2ax)muH&aYr~?DVA!bh;?f%K$HnDP(f#7eY3fISl25*{-tuLk7YU{ zWN&sKbX2hO$>m|#uq-Z{$BiVKumsox@3~hze^C5l&=*4D!T3l8*=zozc;4O!kozOI zh0y`I$_Qc|AMs6FxN5_2N@%b*&O4@H6N87$>nrAxwq`2AgRKuK+=YYlao>Yxs~6;KE138*6$ z)KMed0`2f`2*L%pX0Vquf^Mpv--G@Y{dugXY9cVVXT_LPy&NMU|j#u`j?~?h(jiH0B9IIXqe4k!+HSrh+C{ujlXf$ zA$XC#|Hk?IfWLXJk#2yV(<9#i4Z{Ep`)v)y#;IKP5#{#kGWscak8Dqm`ng&*p#u!) zJ?G0L!qhx|137%egrzw>O>dmMgM4jV|KK!yC+nvdK*;7*9y47&xm{Qy0ziti*))DT zcs>o;+shp5yTgnmkQH$s2X46Xx;~!rw|c)F*nB^$NX~a{$t7*}ur!gL<7bM?bww@WQM8b<-q#`RSbwN@-NmxR#Ku66e4psl(n)XJz7Ct);LAw z*b*%JawS8N@!lt--cmTjx#qJVk8t=b;jug6EW~^@Oj$L032@V&pPi&+&Bmsjlvpd! zy#jq;w<~bz3@x-%?6Ded$LD*L7TjCghbu|w0k|x63imwp-h?g+cU$3r`QR^N+mh0s z@V<$A=pyfxO4BMmq3ne{C@-|(*+{)eKvWG%u%lr6r>aGlju+pCAgN6}D91;YA#_MM zo@%I4yfW zJU_=s38(J?uXJB#cgO0U8$=Ab3FXU}pIesCcvuLT>`?)?bDXKs8W&wk!|q$HK(B|E zwJejkLdX9{*joU{v1DDsVrFJ$X12g$YB4i2OSZ^jW@ct)W@ctt%q)v-$%1XaH{a~M z`FHn^4poODy3al5WM$UPtj@ZFqV_2X^#WA(`9u=w)rTk3yeI1G)j6~GGuX|LuT=2o zMokL5irtgMt-Olt7j=F6cQ-Avj&5P7*pe*Rccx!vkWa!c^o+O}E?cIGE1bOuogJz< zvu$SVP2FHrP}l*V%n6*Qcs`BD{YDiL32J+UaT-V62P0jEQF5J(sa0Wxesq@!6#8P> zwt|aqzH_g#k!KJ%DzMn8*f{uOk>I}c>%_ZEcTwj-N={Fb3(ky5@BPf`R}U`+pIsz( z+yPjOi=}!G9f4f;=v#YTq>(|VhELnBx-VjYtrhpPwk|Rs=lE7^hV9F&)Lfoo_~Wtp z7DIhdeZl%u^@)9f>U5cvszgFaR4>Aw!)SA|V`ue2Yj68bACZ##G&F}MMQP*5Dfb^2 zYsu-6(|Wg-2JD8QUwP>KOAnF<7H^xXop{$&15)gZP2>WB`@kC4+@ORmj~JI@YH%ge z9cfKTj||T2Nq0R>>6gz*s7o>oUT!Dz>O_|B*wTC8xMF>Y&=%M`X+L>QY0U13uJgLu zcMIYS+j3Yseq;jLkOxHu1^AO<{piF*X0-dhHHL)gLg9f4)kM;@SFmY}{-BEb(4DcX8ZttJu%`2@ zPPYL6Jn{6dTb-NZ!M!T}?AOhjVQ)%flCyJxnDl9Xh8flM?NLYR@QaJ~*yGJta5>7W z*DRk5NyCKp1X9Hh1m+smdEGfJD2{7JEt>5@)cp0uVFi~f!K`vzm@?QABN%AfXb zF^6NZsXM9ggww7T%bTC{jW#iA&Xh`zh^jNbmlAQ>g{(f5ZD_~7d%K$z7l}02)XJ-&S>RiuP(E6UwkCb+4$HwSf%zG?6Sih;GLGrqu9icUL zG)=gfE~FSd799KSu|9hmnhmU0!%nDaMVpBwNkH;pqdl|xVL2-m)w+}3R+MQ$^n zouR?*->DD=D9IaKV-tUEcjMr7e0Tcpf5zTp|7E;IXvS70Spz9_-O=T-_`r6o<4$>$ z(7h`a&>*VsQGOBaPCO~=uHvK9{**1H$~{f_)S^cSSufgjirl+D}y{ym|m zP_~Xf->c|5rMy9JCqn%ht?>+FOMaQw`V<_S|UYvTzzo!rC?bR5*~S z_qHs`OVng$%Jv7OVaR<|;5tAWzXrw})ts3_zIv&P&dbBn;;%DWezQ1s+SoU_Ez#f@ z(Ju)H1{0O(dkN!+Qs?zDqyEl`LHOAi7ul?$iND(}J+!*xuqwOes!Ip4Okc(gojp4n zV$RDaAjF$Ae%{Gz;Sbo!9(gHO`hTm=R0+PkP;>ouz3}+Vv~HV=er~Xxf8TGpo9t@& zo_O9m;3EZhld;{yXfC$4^}U_$Sy9!8sn#NEp#y;FA;o5v3nMvV=U_U~p~;y%DRgq; zsWRm=g;hj%B_+YetmNC3&5+T0##FlQbL7c=mT-IXz4R=;$x=@`wWJhT{A$9BBa^DW zVn+f@#QNpcB{bx4krpcR>cCmY9s4{EP(Lz_Yr2``y`M=gB1om9Y7?}2RAF_TRiad# zyv&FD{Rmm?>a}EHhW4AO(PhsMGoPuAa^JF6FS=2!ryPrtrMefeUHD&a8CZU=BO`AC zlh3>IU^!DU>MeZ)1h>9+Jy5`zX6Uj(>I@-PYT96M`1*HvHwLZ51lZx*@5rNMMN6K& z=1xe6y|&EN-r9Cwe?tI&Oo%ilmoUJ=8)@`>x$f;!!eSF~Um^_aAidYQ&%rOCgOr6F zeEfvWZMY1#npyp|+p~wa7I6-;D`{KUh?=qYur)yzsgLf<)$J~`$7S}MI%MAoge{Q6s1VOC34tN2_8c_QGdI>wfF zH#G$iAg<-De9%L@RN{||@UN$rT)wT+du#^?l} zETi1SH>|Tm80bFZtc?LaP0Bz^D@EfZcA&f76$fTBb3rZ;;b#fio+0;UX1$QxCa)K_ zqu1rOTp$UK{N#)HR`;GQ@ipQmzVn!MVT$orL)_*dFK~pGXpuJVx8r3Wj9_xA+Al7W zd)u0PKyK00yW6Jhv0oOtafi2E1x$WGt>ytfHZ#ZjewqWcddoVwv#tia{k=qywCtAt zlA7Y^@R!t|C97S0QG?PPMt9cCUoozuiwA{wx1%67Gi|vR0Ug}ej{EZ9Pxg*(ioZ{` z-TQ3?fByfo18_v%=YHLE=4|7}LI(HuI)HEEUWZf4c6A_I%|(_e;9iw4@V%B7$a&Ep zXVPLIqi=+FX+i!8b&bet+N>m7&tDg%J91PODJDY zD^zavOqB9wY5X*4uv&?d{$<~q+MgTSF3{N3-=5=8%7G^RbD6UvnP`8|cUbAY&HdM% zN2iBuOSTtR=&j|M&sC8v`uvq<6#EcTdkGWT z5&v)UYt&!dL11)1NUuC^O{)O4g>o8*1`J+W2jfM<)H$T(6=u{#Y(|6BHVf4ByNtQr z==xgd`sv;&mV~@{_%m$s-KPWmjSKvP1T3ydO;^RBIE>(;%Q}^Eec6vIGz|`^UN-lJ z!1*o)>dnfji%Fz{kSLqOB;XUpQ%LJdQLB2Njvy{=S2I-?=X232pRzW07DuM%d~mCI zacc;#;VFUTh7LH3HdIJOt9rVEz(utZ1$t;}N_W+*>dyY+Y@FDBg9@_8#9lS$SvBTO z%4{{9Lp7{}ykKZ+48j)T2}r5F>t40iS+x-o4j=UQrxlQ>6#xA5YPAx{Sx*~`_W8YP zGiDnBm-b%|>=eu$mrJ7G-P~>DJ#Bz{r&NXqbZiE65*4It$oJd_X{XDv_1taLJ#Es! zLuUM2x;a4#%?!&tZIaiw8@KVqE55qhtWV-83^Co3HQ-upo0SqZj1B78Jaje-Y~Q6j z04eTOk6UQ2#tU`tAzUp*GIep%cXLjGik=8>Y~%UOv$3dlH%}ZsYB@xcxqRwszBG$I zNyg6g2{Els&GwXvKz68>cBuAi^(Hd_QgpYugFSF73UuJv6L>6ucbJxOKy>MwLtFC$deDo3_Gn)~97 z$()RD)sl&cp8^q?YC<`O0uzFcn>XDb@r>+d2K9cmuUXKRtb9o7>h%|;t ztu~F$m3>b0*I^5^A~7Xt^Pdt`b@DkM?Dh*LAdjmhl80l?#42vrZpYSMu5?6BA4xG{ z&xlB_g9fDTMP7aw)9MH_culPpWcBHFs+Nf47=zXkg5dX2?FtXDAPS=su+n?+O7dW31HqC0Y(^#g9srH z$Y;c^eIw09Dx@GFqUjd=2Q(dP6RXwJL{|V75SXRUE_g>Q>V93*eIUa2LSt^B zFm$pJ=AsZ7l;WslWBMTp1tCcoX3u9G2rx`UG!Yp(zfj2P^w8@{EA*_w`m!3nXhV*C zsbC@#o7=~bSk|9141z%+10k$)Vmwm~1L>PXKwy33h!EvA#daMhz5;~(XGj##{|R}q zW&sT8cKKIGzNe6-dW(OB%z{E86AtS`lJCn=o+u^-bFrqi!Nl31eT+sCiBw5r7Big1 z7(uW%f+80)yd@7rTI)=4r4s`&w1f)D^E{VS;sL6yD7C+~{Q4O}I1ejhktVbr?9eU* z2E_TdNDaT(?rjK6!^@}75FdMunzfEXRC|4K1hIBXMhqJ&(YN4qw}0F+o`(k-rV7zimCKL_YFZlTw3 zgsTK6Qw?P{94ZJ-hCgXp z4&OY(47F)*#su(e_|K+U)`kFSeLZ7GYPlNgVpBoH7NcL;=>>#4!G`{w)qOo3V8Hg zzIL2mlljv_KsO{Kpb+Fe`xwT()9+jNzLKl>ytSo3I`tdHg+Wc=C&D34WG05APv|86 zeiEJ_8UQ&C2Bj1DG3Y<&m)nm@{7#Sbdvtg(b#`M~XCU-GWy7mc!I_VvtBIqhjib9u zY9cgP7N+ce_r}1VkNAf{IypWj8jD)eXw>Cv)DrDjD_Qs=ezGcKdusbL$=j&zal>d7 zX20ATo%WgN=jh_>@#^EDT>Ym5*W=mR*ZxZGg-T-R#{RA%=VGW{{qd|R^;%O!<4TPN z>Z7em?I2&|j~>(yeIFT)p0TF7DURMb9MSDAcQ%BY*f_-a{zZq8#nH{n>CK?gosLoB z4kH3_N_hPz8gHL_PgH&1?}IUEtGRDd$ojpk`X2&B&<6>|s(>RX%H}ir^u+bMWCR)8 zUouZcT|QcoH!pjS-20D{3gIKz=~yZ0$Jlr#ryJfZc<#2fJ4zPTH!r+hK2y`%Q}XU_ z)n0E(S?*PU@qpA%aJ4&K`a!F?Pj&Rij~1W4xWA3Kzxng$D#)D6wk6{yEtS-o0?a2h z*l6na=+_hPUd$K=E<#s#!d97uDDezTwKdH%3@oGa9TrJoBs5NFWOsDkN}y_U2QU5> zwz|`^`UBX5>9lSdB=;UOSAk3yiJpeK-m7GhYIksIeeo2`MZy`b)a(_NGkX$v(-{rM z^M*odO%*0CQk!9FiS>QS^?P5FEWP8cjMA-q@>xTAFzN74WUU4-90vX!rDK(NWRD^v ziNSrn@aARuLfrjrlD0L6}cZP@EN;c|}~`C|#6^AIou)o{JQQ zb2h)eC1CA60`Z0}QghLwnb{Z_*r%B}M&?>S#}9bB$+^D)T}#XCPS3n~+4%WVUF%^t z&|>7PWER=|p0LnurY|H8YT*91K4}T}3lP}fW*T@$&rMSQ2& zG^OePqURjx2wuPcpL!g8ab?L{5HBt$v`-)J&29^&wo@PX_YUECp9dQdX%#fAzbems z*%cWGq)7~C5xSfwTX$2 zExjTIsu9iPLkOZuXzVF8ld$bu`kOzi=!0(M;xc^+Ubm#zO1_2Vy?teJsXq@C$FfO( z&*iO|M?G1t>01s622Gx@JRy38}Qrn>=KkI zlC<^qS2qyl>^R4V7!EOZmm$h9^G6Wy^bkuZ3>?Y~rygwyEfTB(ttYlHbChY4j7OJX zY!kmv6+^J|Q~GJ2IRY)sPwrMhrQALb%=0gxOi!Vvl4LA{Bbee9;3^s>S&nEJtmjwN zBFr;*;fk^U!FXvOh-B>}!fXh(G-sA0%@E;eba}o2DdHpDJ0-LVGd~WKMVUSagP|4z&b|DEJHGUn0(hMLGV60J8dji-;Z)Yn1KQ|62fS9_%~f* znnVq}H`o>0xqZ3xHre3a)7mqF|f2}7$a9PzdTF}>C+lvFVc?lwe4uX%-q5x}I0wMi;HUTSw+35jXFE?1X5Ki;>a zr@x9de~JUkJ)(p3J#0>L+ZAzy$Ig&&gm>dn_~xh*rsCPZZ%a&pP0@;)=YLGcMsV%Z zVoM?71{x%BYJVEygux1~--4ze9a{wOsDy7nrezk#)KJ_W2rg0D{)}0@*|3kIs6X>0 z;vwRJ4~j=qOSZUoZ80f1HcXkY zskI|aCg)CBRT1=vQP&dhh|#oehLN5K^ytWzI0-xHkBU1wHp0JEcz_0(>)VD6N~^xU z-@Ph+QT~?>mAn(6j(3;;(eXaM*}z8j{~+O3pq1r2{P?1nqOAYzFDuZ~{#fy({67#+ zWk4&?{~uP27##)=A3~jkHYDCzdsBE!Ox~{J4X;}F7$LNN@&Wl$9rwnNX+4)QWz8!S z)nsSa4$;{=v-JbRU~2u1bEh7_C3UQpV9A$*C*S~TZ4EGb^Vr3$kqNX_GVL2eF|ort z`=b1T&o*l#8BL`AhT{?IQ`&iPAX0wFZATU7x;H=LauW*ziVY9RQiA5-{T+hYj71nH zijCBre54DZXoJ>df(^xFh~^*EdI<)`TFj<~3*$eiRsNd)LLJ6SE;|1UwLT=ie<4HQ zAsfp^8wVG1$*9WM7(W^qmXZxe538a#^(7r{pP?r)=@R4`d!H7+e%QkV8tio=VnP4z2SihrfRNl z3=f;$qw2{?uCQ8#9b(a>&zA}7?&99B<{{Nig$aU4KMyky7JRc3Z8mdS=ib3->x64E z@+7&Ww9qk{SiEpy843O*drhhsysWBh)S`&M3@lER(o6XvuCIVZB&iuDqO3OuUCJ0r z$dp3KD8`=(Pa56gfCTB8It@`w>43akW%xY8)T2U5DIP(U)eBdiu-2U*O4gZ}Z#gng zRSyBvMLD@g6=5RDTB)8|921rSPFY+lGB4t#QreHs{6A4q4; zTu94<{U=lFy;NfkP=?f1osv#2QemZ0QIQ({Cu$MwKT%1LLMVxs>ZsBXRsUsyZXM8q zczCQo7EE_WBtDZotVQmYd7>tHYA6k7EpvhFpr`(XkW?n7o1(`M)B}7Wml3VvJ3A znIws`GO(zdUhO99G~QPz%jkR$l)F@$JVekYmIZJupq;Oz7_FV7lnx>14~Z=t5KGSw zMWR1(uLbWHZ7Aso+hf^ND5>|Q7epFi&EZLHZWn~_?lipoxVtA`50hv9w^po8K5 zEPPS_191;(H@+5wP^>V4d&(}^{&HMMhHl$2(aGaEB=<)pcw?~AWpvQseFUP}h^7=z zoa4lO8j=Kft*Md|T$Bjea<%Y8IP$58?_q&P6x(jU7{10)E)p8X)vVm^8FOH&fqvoSI6-Q0fzv#Wpp zD`x!oR{qo>5-c1fuSI?t!?~>O+g^VlbX-H$r>62UIe7X>%PDcOUf_Se+Z5x#q+duL6Yp)Hs011 zG&uVcw&%je2g8ee&rwy=iH5#Pc)&kM<@`VaswY(%GFeBp3(N#1)lp14HQrI|dup7c zSVn4s;}9Z@3{Msm$)0OLL}WZ#4EiuDKhDrO^B<>}L><~pfb^yOgBD$G#0ptr)^gYq zku^#7)>I@TRR{K{4(`y9gmyHb&EX5z@L@v>@6tuJo)OTHD6;NMY5y$bu18Lk_2E!B z@4+-NCBsYReM{Hn0h^vY8bIYD$$$@?1)<0SsA{k)4TKM@#g=ZqK?2R1F*`;4Iz_q% zLL2AkiIn4r1$?^tEHp!$<7K&nbS8XgYSg4G&#QMX2{z#V@33U$qFV77e}&~sKPdl^ z%s}Vk&nlIqjA^M?;anm7n=M!wG9$GzlFnAR34tybREj6N%+tCc2wk#X1FhKf|LZfq z`+y~0gD8faprL<|iNcnZGHht(zv6Hhfz$<%(<{{!vi_QgYD$|>Zxz-3R%H7eXo(ZXHplm&!9(HAiL~ z#HY`9*GPL}^QmjPk!d<2G_tQilvlg3r=XnJDQNN0r`3l{X~NAftk7-@xmJMi?F|?P z+!cEnoY6`_nyT5|oQH8$qUR@&*~UKmo{U3$@}mxXATDjR%R@p|#gDP>Hb*F3|8Ac8 z*>CS5<}{9c&e2Em;iZ9$3@MCSF&IQXU6pKpLcOU8HXG+chMm)4EOT-#DP4E|(*%1+fyUwjJL6Frj!8F$1r32&` z;nzLoA>3Q&Az~EYJdS{0fuOgcG)P-#BIf%APPzju&?Vk;KH zSS(O|`?8uXX2{?8Me>;XF zQqyI~mD?!9M0k5&Mi&j^f^`c$rR8 zZcPJ&W7SqD;cWD`C$Ch;6x@R~D~t6<$=jrC2#9Ov+07%aI*`zIS#a3Y^&Edy*9<~H z>AL?SuuE~3dI;hm3bZU+{(&j|8%7UM`m8)j_~&~%S;tl=5QVfZ+wJRnK|p9+fD7>#W9GY1q|Sl*$?xHN z9ADS0h<>Y#X5asx!9D>>c`xP%tU?xTgBPb%6tVwBXFYstjWA~Ihqp&nHV(igH2YZT zQht=(ho#Tzx@K_`3Tv0+s};!}#|C>`1i(c){~o_IJ#UQnj}%1T#VI97q<;ft_gn7A z%Bn-~Ousp2Z0!wYLcJOSMe3EdBQgNd7K8_^S}aH~vyT(bv$z55B4z-dX~&FAw+s)N z)IK0Fgwl3q{#)0}XlOHfu&iSr-s$*@S?EhmD0BqJjLr*=R)0vIX+1nCp6MrqqOwJA zO=zKRLODu!+6@aq1J|!TGFv7yB|BU*CQLUci~3F~abv0m>5zcigr(pntx^EZ;k2>b zruV&BwTmmO%YsU)en0Foer;8eq;kyTmv%C4XKfR>ya2jE?X|ZD;>8~`MEomo1OU>d zIcABcI==x7fq-Ifs0As`0=0&tAX7W{$--f3Es^F4I|MH7?21?hS$A5bY9mn#s2z=+ zy;*47!gO{kxhq1rF4iW(zUigt;f&8#uiu~cgaGIXm4kv3yi}+r6q|h{vB#7>hdvHT2=ACJY3BQjvyx>~XGEIi(=GlBJ;}n---% zOIJr50Zaj?p_+pn)I}NnwT*MN_oup_)3WEWJ;SY#7OUc=fgyR%Qk~Hh3RvhWE!;a{KlA!KgB^(>IGEE>AJnsdUHgH^ZbK@<+n&Xx#!HJ} zWz@|}Y_G&?1@58|adh?*Uh|kMP%g;($ z!eLMW(8wTu=B3rO%yL$yVUHt6)VKFYRRX{ze>hin2CtYUp~pW_0uRUeSr2l&xWkEI zgo0zM!~V`>RauVAGEa&+G}L-Z0Ev0`L#&!>Z$>73TEd!;)<{CPxSSoigu!iuAxKJ`v{Fe< z{1+!KcF!h1UK(oWI2-ChNqCU?ocTfI!LV%h=;1nBMSyvsBSt+W(+ar=FRLgoEp3f9 zkkXQ7@ZXfg#0XF{0AjAVxJP0|-(Z0U4;tz>Wxzho6B(DrcyBoHEYalM(@(n0Z&3tv z6l6iXj}h0weriM``6mmk^jkTh*K%I25gs6s0Gg|Jp+CLZ;`ZTx2aOnyZLbX z{EGeQulo+IY?PlBjIbz6TZt2pg2e>Ecx9r-i=y)POHV>XjuYk2EzE?Z_!i|wmN1Fi zxR3Y@%2K!Hf`-GS0!555tG&;0i-K6!puCWOy_U@|4pqTwRoH0a}2d$`Vr4^%GrW3*%C z2}*G)gojJ91&%}A`D?;}LM;J=bugs+zX*8jHXbIC!3z9~0M!u`FDCA|6Gyfen7D!* zMQO0bSo~t73Uo>GZk**# zMkc$S3j=@5>P~7gA;5J?(%LWU{adGJ6=`v(>{5FfJX1z*TwG)WRmSz^3^fATmGfIy z>eT!^2zyFC|0^*wA#kjm(PjK6amhPlcclz@ZqroxSxW#WvJ)svU#Brp9PF9=ApiF zw4qm<#s2xFumC&aYkhLh!ZgWWDwTo0f@q+TRg*nQX7L#7seNQX4DqL6aT$w_ zx@>WYLPNBuc47jCg*ZS{ia6lY>euzC%=GHYS%!vaAP(7}J6BG9FOk_aCcb9Th$NX| zyqi@*149CtJesEI-sifpo;sjkIb4q2~5!F)j~$X zvXY|Ko+Oh5E`v9!Ah0AhKBbGd%ma~3QJ@DCW-T;bhM};^Z{uM!P4)Kk86u0M1R$`q z+E5r8m>HD$#sjYy*lq^vC^8BDO{j=J%U$KElYB}S4V)pCD zf0ghn6p}FL1qT5+f&GtyS1x9*u2%LIf9P> zfmwerb#XPg8|C~{S)&%~ zr04`8DTNXz5PK+HAudAD@ink;bqyP*lfK?5_}FMJ>tza&pE@4PGcTCx#W4$#d9gD( zE&~JMSaizVJv!=zijw$pkx=9W5+_rMKZ^$>GX7!{4ITy`GK$v|Nfrts`)V5=ovAU5gpFn)2t<@3bhc$#gX44yeFcRIvS*ggi}dH*08Z=_)(Ul1 zoAMuG!HLh6{Zyl?k@O90?>FKy7ixjKTshMvg!Kg9$@@6~1BVm|5aX^+aInmQTHao8 z;WY_o%Xb)T(FvF5rcm76dv}AF6Q(F+}%3> z(cGkc>o(s$3y30iJ7y@;c-sulDlDO&!=xM@dD-idp`x2jH$> z!Dgvma|B|k!7T~wp^R9g0cD7@LfFDADJ-GOJG=?!H`@Wb)G5Hw#a+b9&{h zxwOa<^>w{#HkG^1f2kbxMRA+ll>aGjS8Oo81;uq`zKsSs`DKTk*o^*^2!wsD_{O+? z8dH!OywGxZ9A4iVWjgB~kjd%wJGy2ttHJXkpDg9q+s#N@dbsb={x)!(!uKAW`Q_xO zfH6`jFj8($*0lHum|9|uXu5iY7KWBe5DklSa7~k79v{{CoZ3D} zD0>S~;6zrYZ-rU&T0=v$5PjQ9!xJMjz&_CkiofDW9FNF_fBk@^dQ9(B0$t=*QD&!#jrAVnuM#>4Z!L?<>asmTHrEb@KLmkp4_+% zc6j!aM96OILw9pRM1(FT#j<%n*|58V{HJ5TdGlOMfYm#H!-0UH{f}ejz+$zkM#i>( zmGIn3>9_yRLNM~vi@Xo{iC?-W zLriF+pHUV%}d^WMxe-KidCanu_J^F6&w#Y@(xWpFV_2UWW^smx#%oO%{elvDY7h; zP)sTUZ)GwKrBf>zP9tKXGRi>Ls`_W>=34i@KweFiJ7@$fmDcO|2lJi<>e!EzAgJWB z6;!pFT6d!(+`o0jJ?s1Pxq}Mai<%#*-GG(uK7PN1ar5j(tgR{62So&lx^D+uK+iM83GaFCAqz_)x;; zdRk1da_6SQ?qEh=$Q?FC9*oKop(>Sv8A>{eVFE)XLh)Q$S^J4nV3}<%J%?mD)(iLD_}zu|qq(iuV5&D)&|VH9{B`z@3Qan^Y673dgFkM|>Mlj7 zMSoY-(DAT8HHBdSZmtHp9B09t`*REDd5Ybvi zW1GZuY-yB8&M0~iuble)jJE0q;VxSS>#Bv}FBjf2>MohY8TXV;p6pc!_fc`!RsiarBbgU2iRS>@MMX_qX{ zT4<5o_#2@oi*V=w7=$w^^>=mN*G3suNon$U3^9fRxw*$dp=>4*6dBFsvo&{|d$pIx z$H`19tBMQ`$Q%9I)ho4yPU^k6mSS=GXN*Um$^~iZIIv+3$OPBPXy+}d#N?6`g~shO zSG)_V4DFDT9EC+X?hAZ1boo!Bi!^oe7KIyj8J2js8RmlWA9tRO_C;1ymbw9N-QH-J z&1b@kBxo!JhvuxZvJFkj^R{q+k6!H@e; zYVkHis8H!m5U;R6{!@@kMFl#8CQ7^p%6xF_eG1n>VwY1m?Tcb=RfFzheUmmzqJt?$1&D3e; zT4GEN)&!HNOylXwx4HZx$3gj~T2a%E&&qAEWEt4@ec^uk_3Crv(qncso1ewMluoS> zj0Pi=u##as5Da;c{$k3srrSzrb`mkQi!Uz~P3!Xtj@yV^pfF9mcGEkB9QHKYkq;2u z_hM5aSt}{f6s$O@^Gt~ee%}x4h>h25_`Ee}vPuwTZ9V|!f~nLUA~z0GF!ZH@)Z8=k z{Og*Kdhfkyr|gDp@*AKfesxFit&eXjq{+yrq4f90XW@=YH(HmQ(D@~2&LD@sc=^I8$ z3KBNw!%s;*Vho+7@Rj9>ouf3IvxrbT=0rxdQtNz*zqAyV zv6QFI{cI|z?xOiV5a3X@6|usN<+>jj*wVaR#>HSbm}eJ#NGR#^2-Z%lQH`2Vztdvd zzc6oo2|4;R-u}0nOF=1kwXJrF%~Mtl`T|r`r2N=c7>{mp3)3xPNd?#W1Z8Ejn$@!Q zl6LY>waC+Pls!w1&n+wx9>#RdZX70bovvgk8*bU)EEMQ1;Kgp|N_>22li*rz?|r8J z<+E&R%s0niDLy|O%3St7OMzj}zyaucx5Zr7qr#39y!!L*<{c*_DjW2!2){FxHe_vF zKiF|s5{^l7Qk%f&=mT&dDtMY0CxT?nI^lI~f2MaWrl}^WgEXYkf`fd1yAcxoT|UB_ zO1(d8D|@IWce%@IsL5rt#}?EwJhlB{zbdoro(BWJW}7G%JoWvv77a_9Mc5N6Zkh46 zs(phWzXM>sqjJv$jEl2sb!D&ZqqiGvW#_0|Q6=9eA#~SsUX9KPMMsFyPGNs4SFy-b zu2l^mQvAA?=op+vH&5`;1CBkDgubwcuNL_3x};Q0N_@}qo>94 z%OlehsfM*VRvSCs72ME0VO(~NRFfDj*Yu-uI&-8Q3T8uUsC4oeQyK~cqHJ+v=8zVH zc7@cYd9d6RjpId1lbaxKI;7MatIOe=*W7Xa;)8s{I{uHnbOu=GSf009y!Pq0rJyFd^};igf9$ZQ5l6A zH6N}<`sF)RLRUhO@yB*p@2>k-$I)Xu`FAj44n9DuxU`ESoY$2EfcWSAvG6@g@I|l) zbXEjRW)PI7G-d48(gNTbI|hof9VpOI9l!o>Y)be zBKn7}zpKOkTisu!VWVg3f%!QK)NZ!|X_IAznFUS0<`Wv&`e#Sd%DCBRzV^u^Ely4J5-jJSMK9NdpZcxa zO)YQ3#YD((+gVB-s>c~o7}U~8QYM3VHJMCu+#0TpE#@*i-WQ&GNjs@k2qehwjcki> zh+wztoie%t2|H~3#+d1vI?+scLLbxWIU@Rxao40~QQp<%)#S=M)rH+~?`CIg<_uhw`MV1Fmi;~tPWMi!aJ+L1V>YWu)1Ef1bOp42o+AU8JK%LSZQHEpLsg;BG zpQ)!*mp_$Z*U`{s=GuIPtv>eNV`qP(ZY)5e(bbmHX!3ohzFqq+l^$iwAI%*$@Q|{v zd6QIoXg5_ptwB#f?ln8S@P%;KR3m(sRYql)J=hjnr82MZm5mGT;BLV!OL5CY-KncK zj5@4*Hv%56xC7HB7^QaOP{N5yaUYUOlZZn@asF~-MZHd`-$`XTpOsv#&r(u4ed@yb z{&Qr$SeR_Y6e&BA1FbO|{VY~kSpcsrHxKXmN|HPzH>LDdhyquqg5S=}L%N?ACjl%o zt#5iD%{YCn1;h+wjAaCzlQgWuDg!<5w_i`wMZB0_w*VVLkULb8T$?dh;oa)G73i-> z8hi6+D+^zS1sn_ukWiu}6>LTzby3vfmAguFr7rZFsoSKA{pw#kio3bLDooZNnbI;0 z%VKVbu(cFivZrac#LO|q|APNcdgm;qm|loYMUy$RNFgtUo8{S;uJDaJHZB{HL-IO<+fNoin=r1?$#34<5jFDrWU!4#r-dTaT$40nB!ToxV~XY#v`tWhxY`dw-91 z`k^pqg7s-#+2*2^2RK$Gw=z*7)K)}b}LxKiX)Ytv#u6OI&e77gWr^mpanEh_= zd0^XKTbE~IVOWEUwbUoTepv(cbUpfndc4|qJyj=y$iOn#g}2s+;9_H#j|*jOD9S#? z8@x{ak-z-`|IZPtU~I*r8xjO0hy(-#8#rPC3wQrDOaW(J!2W4(WM#`_?Pz9krEcSh zu7)Al>BUWJH;qEWhygv&$<|lI_?aGz%j$bc5?2vpty73}qC9#AmC@J56hL-r zfcHl|hN^3plj3{;pR%~HBs2;<2F?hX^)06Wh5`8P=2j7`VoXo11t+#Q-1EDHj-nY+kCQ_rM*bB!ZUrOYKJmn+C=Yx}?+hz*z}!bCyilCgG& zZM*aiJVR6f$5;qQstz1BF9D`sp!Hsd(-{m42C@S2=0`30G;kCIp@Q@nBX7r#Zw0vl z{i>M+>S{5kKgSRnfAK>shtxP=Y&vPRvMcS5FPT}5gA+jSoDtc7<>C?7N}8*lYFewX zZ;doDMuQm;aQZdVl9|AG>;f4^`fPjXTVx?CN_Z_d)DPG4d{0ngr0Ol|6ke0A!K(%} z^4u_QU(FW9-=>E`;&|4PaSD)zp&r8t+G?}g8|Rf;0Rrglqs$vN#!oATdS=OdsaLiz zjE*B5zqb-Fy`T=_bMIiE;5dnq1U}bCKfyoa7!)yJ<w3ahQp(vIZX8LVCvD9vw62+{PEt}%? zM){Q1!$_d`M0PCE5`k)AC+9Lp`CVq2=P&@JDth=((o=W1sg*r$HgGr!9s)*$P;d(+ zXwndjIw=5>6@kpNYc~``8{z@Z@|OLpF!*<m4$1=(UT3Y+7maMLcNv~z3RzL3n&g&C?==pdv#uE%E$d0y?q z_5SWlJgLbb>|nAW%~5cM79KzvN?uI7*jasg9}|lrT5$W=d-!Ij=+^jtXYtFY2RgU= zbv!6Qs6Th85<7yW)h|JbeA|Z-nU*&25U=Alr9XI9a49&!RipY8v1S(FZb==~oSaIR z|4n>HiHTIJEc8(Yv6Ccjq$5}L1^^W%!^~e!zbX?`v+xrCH{|C z|F5-6__ZmXP#4W0pn=0I-&y(S2_e)$+TR({^tLU9HX`;LcdLSZ)bca*=WzpAN2bRoUrG4e; zt5cf&&zH|`+UHbrYu&BVchVsWDk~?wp0nK_--_wpSX`_J zl*zMDPH*{H@YIX1WCQ=QCN`;z1&vsV|Hd8P4%r8IGct)VgNDaB7}#f;N30E6I&mtn zg?b7&<_79^z(4~~jDaEA88{f6npYAZQdy8%91Cilp&L-C=I!tUsPrCi9GM%Y8%Q@W z9s?QyY2$;N_UIZr+PH%=fl4j{H436=d=310`Yl8yF>Q zP&A_*FNtmr`aCJZoX$d+IY^Tz=-SaIUJ%;LOQG7)reV-cK%a;}n6R=8Y68l%1iF6o zQDcODn@XsD^f6>~BhdTb2qR1zu=d8$4M6YcA`IYdL^c3hw-? eb} -import com.twitter.timelineservice.suggests.logging.candidate_tweet_source_id.{thriftscala => cts} -import com.twitter.timelineservice.suggests.{thriftscala => st} - -object ScoredTweetsEarlybirdFrsResponseFeatureTransformer - extends CandidateFeatureTransformer[eb.ThriftSearchResult] { - - override val identifier: TransformerIdentifier = - TransformerIdentifier("ScoredTweetsEarlybirdFrsResponse") - - override val features: Set[Feature[_, _]] = EarlybirdResponseTransformer.features - - override def transform(candidate: eb.ThriftSearchResult): FeatureMap = { - - val baseFeatures = EarlybirdResponseTransformer.transform(candidate) - - val features = FeatureMapBuilder() - .add(CandidateSourceIdFeature, Some(cts.CandidateTweetSourceId.FrsTweet)) - .add(SuggestTypeFeature, Some(st.SuggestType.FrsTweet)) - .build() - - baseFeatures ++ features - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/ScoredTweetsEarlybirdInNetworkResponseFeatureTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/ScoredTweetsEarlybirdInNetworkResponseFeatureTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..bf6f79194afbd8035b6e58e80888e9da6b174c49 GIT binary patch literal 37163 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 NWJm;Nk1ahQ9sqV^a^3&{ literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/ScoredTweetsEarlybirdInNetworkResponseFeatureTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/ScoredTweetsEarlybirdInNetworkResponseFeatureTransformer.scala deleted file mode 100644 index 6b6a9d003..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/response_transformer/earlybird/ScoredTweetsEarlybirdInNetworkResponseFeatureTransformer.scala +++ /dev/null @@ -1,32 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.response_transformer.earlybird - -import com.twitter.home_mixer.model.HomeFeatures.CandidateSourceIdFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -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.search.earlybird.{thriftscala => eb} -import com.twitter.timelineservice.suggests.logging.candidate_tweet_source_id.{thriftscala => cts} -import com.twitter.timelineservice.suggests.{thriftscala => st} - -object ScoredTweetsEarlybirdInNetworkResponseFeatureTransformer - extends CandidateFeatureTransformer[eb.ThriftSearchResult] { - override val identifier: TransformerIdentifier = - TransformerIdentifier("ScoredTweetsEarlybirdInNetworkResponse") - - override val features: Set[Feature[_, _]] = EarlybirdResponseTransformer.features - - override def transform(candidate: eb.ThriftSearchResult): FeatureMap = { - - val baseFeatures = EarlybirdResponseTransformer.transform(candidate) - - val features = FeatureMapBuilder() - .add(CandidateSourceIdFeature, Some(cts.CandidateTweetSourceId.RecycledTweet)) - .add(SuggestTypeFeature, Some(st.SuggestType.RecycledTweet)) - .build() - - baseFeatures ++ features - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/BUILD.bazel deleted file mode 100644 index 91ff12ee1..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/BUILD.bazel +++ /dev/null @@ -1,20 +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/functional_component/scorer", - "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/module", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model", - "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/core/src/main/scala/com/twitter/product_mixer/core/feature/featuremap/datarecord", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util", - "src/scala/com/twitter/timelines/prediction/features/recap", - "timelineservice/common:model", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..ed9232f139d7ee753a745a98e12a900442b11291 GIT binary patch literal 36929 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 IuRN-v9sr literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/DiversityDiscountProvider.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/DiversityDiscountProvider.scala deleted file mode 100644 index 62dea8748..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/DiversityDiscountProvider.scala +++ /dev/null @@ -1,63 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.scorer - -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.ScoreFeature -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.core.model.common.CandidateWithFeatures - -trait DiversityDiscountProvider { - - /** - * Fetch the ID of the entity to diversify - */ - def entityId(candidate: CandidateWithFeatures[TweetCandidate]): Option[Long] - - /** - * Compute discount factor for each candidate based on position (zero-based) - * relative to other candidates associated with the same entity - */ - def discount(position: Int): Double - - /** - * Return candidate IDs sorted by score in descending order - */ - def sort(candidates: Seq[CandidateWithFeatures[TweetCandidate]]): Seq[Long] = candidates - .map { candidate => - (candidate.candidate.id, candidate.features.getOrElse(ScoreFeature, None).getOrElse(0.0)) - } - .sortBy(_._2)(Ordering.Double.reverse) - .map(_._1) - - /** - * Group by the specified entity ID (e.g. authors, likers, followers) - * Sort each group by score in descending order - * Determine the discount factor based on the position of each candidate - */ - def apply( - candidates: Seq[CandidateWithFeatures[TweetCandidate]] - ): Map[Long, Double] = candidates - .groupBy(entityId) - .flatMap { - case (entityIdOpt, entityCandidates) => - val sortedCandidateIds = sort(entityCandidates) - - if (entityIdOpt.isDefined) { - sortedCandidateIds.zipWithIndex.map { - case (candidateId, index) => - candidateId -> discount(index) - } - } else sortedCandidateIds.map(_ -> 1.0) - } -} - -object AuthorDiversityDiscountProvider extends DiversityDiscountProvider { - private val Decay = 0.5 - private val Floor = 0.25 - - override def entityId(candidate: CandidateWithFeatures[TweetCandidate]): Option[Long] = - candidate.features.getOrElse(AuthorIdFeature, None) - - // Provides an exponential decay based discount by position (with a floor) - override def discount(position: Int): Double = - (1 - Floor) * Math.pow(Decay, position) + Floor -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/HeuristicScorer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/HeuristicScorer.docx new file mode 100644 index 0000000000000000000000000000000000000000..2a130121f48ddda42ef5aeb2900cfa026608a2a4 GIT binary patch literal 37325 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 YsI9{QZ&qLq0_7?}hD2cY2 - val score = candidate.features.getOrElse(ScoreFeature, None) - val scaleFactor = rescorers.map(_(query, candidate)).product - val updatedScore = score.map(_ * scaleFactor) - FeatureMapBuilder().add(ScoreFeature, updatedScore).build() - } - - Stitch.value(updatedScores) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/NaviModelScorer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/NaviModelScorer.docx new file mode 100644 index 0000000000000000000000000000000000000000..323b74ba427a7067d093f0f3a18c24d2c05cd20a GIT binary patch literal 38886 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 - val predictionResponses = - modelClient.getPredictions(records, commonRecord, modelId = Some(ModelId)) - - predictionResponses.map { responses => - failuresStat.add(responses.count(_.isThrow)) - responsesStat.add(responses.size) - - if (responses.size == candidates.size) { - val predictedScoreFeatureMaps = responses.map { - case Return(dataRecord) => resultDataRecordExtractor.fromDataRecord(dataRecord) - case _ => resultDataRecordExtractor.fromDataRecord(new DataRecord()) - } - - // Add Data Record to candidate Feature Map for logging in later stages - predictedScoreFeatureMaps.zip(records).map { - case (predictedScoreFeatureMap, candidateRecord) => - val weightedModelScore = computeWeightedModelScore(query, predictedScoreFeatureMap) - scoreStat.add((weightedModelScore * StatsReadabilityMultiplier).toFloat) - - predictedScoreFeatureMap + - (CandidateFeaturesDataRecordFeature, candidateRecord) + - (CommonFeaturesDataRecordFeature, commonRecord.getOrElse(new DataRecord())) + - (ScoreFeature, Some(weightedModelScore)) + - (WeightedModelScoreFeature, Some(weightedModelScore)) - } - } else { - invalidResponsesCounter.incr() - throw PipelineFailure(IllegalStateFailure, "Result size mismatched candidates size") - } - } - } - - Stitch.callFuture(scoreFeatureMaps) - } - - /** - * Compute the weighted sum of predicted scores of all engagements - * Convert negative score to positive, if needed - */ - private def computeWeightedModelScore( - query: PipelineQuery, - features: FeatureMap - ): Double = { - val weightedScoreAndModelWeightSeq = PredictedScoreFeatures.toSeq.map { predictedScoreFeature => - val predictedScoreOpt = predictedScoreFeature.extractScore(features) - - predictedScoreOpt match { - case Some(predictedScore) => - scopedStatsReceiver - .stat(predictedScoreFeature.statName, PredictedScoreStatName) - .add((predictedScore * StatsReadabilityMultiplier).toFloat) - case None => - scopedStatsReceiver.counter(predictedScoreFeature.statName, MissingScoreStatName).incr() - } - - val weight = query.params(predictedScoreFeature.modelWeightParam) - val weightedScore = predictedScoreOpt.getOrElse(0.0) * weight - (weightedScore, weight) - } - - val (weightedScores, modelWeights) = weightedScoreAndModelWeightSeq.unzip - val combinedScoreSum = weightedScores.sum - - val positiveModelWeightsSum = modelWeights.filter(_ > 0.0).sum - val negativeModelWeightsSum = modelWeights.filter(_ < 0).sum.abs - val modelWeightsSum = positiveModelWeightsSum + negativeModelWeightsSum - - val weightedScoresSum = - if (modelWeightsSum == 0) combinedScoreSum.max(0.0) - else if (combinedScoreSum < 0) - (combinedScoreSum + negativeModelWeightsSum) / modelWeightsSum * Epsilon - else combinedScoreSum + Epsilon - - weightedScoresSum - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/PredictedScoreFeature.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/PredictedScoreFeature.docx new file mode 100644 index 0000000000000000000000000000000000000000..a3dca3ae657e83086188aed9fd5888e333ef70a0 GIT binary patch literal 38099 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/PredictedScoreFeature.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/PredictedScoreFeature.scala deleted file mode 100644 index f24223a99..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/PredictedScoreFeature.scala +++ /dev/null @@ -1,166 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.scorer - -import com.twitter.dal.personal_data.{thriftjava => pd} -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam.Scoring.ModelWeights -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -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.featuremap.FeatureMap -import com.twitter.timelines.configapi.FSBoundedParam -import com.twitter.timelines.prediction.features.recap.RecapFeatures - -sealed trait PredictedScoreFeature - extends DataRecordOptionalFeature[TweetCandidate, Double] - with DoubleDataRecordCompatible { - - override val personalDataTypes: Set[pd.PersonalDataType] = Set.empty - def statName: String - def modelWeightParam: FSBoundedParam[Double] - def extractScore: FeatureMap => Option[Double] = _.getOrElse(this, None) -} - -object PredictedFavoriteScoreFeature extends PredictedScoreFeature { - override val featureName: String = RecapFeatures.PREDICTED_IS_FAVORITED.getFeatureName - override val statName = "fav" - override val modelWeightParam = ModelWeights.FavParam -} - -object PredictedReplyScoreFeature extends PredictedScoreFeature { - override val featureName: String = RecapFeatures.PREDICTED_IS_REPLIED.getFeatureName - override val statName = "reply" - override val modelWeightParam = ModelWeights.ReplyParam -} - -object PredictedRetweetScoreFeature extends PredictedScoreFeature { - override val featureName: String = RecapFeatures.PREDICTED_IS_RETWEETED.getFeatureName - override val statName = "retweet" - override val modelWeightParam = ModelWeights.RetweetParam -} - -object PredictedReplyEngagedByAuthorScoreFeature extends PredictedScoreFeature { - override val featureName: String = - RecapFeatures.PREDICTED_IS_REPLIED_REPLY_ENGAGED_BY_AUTHOR.getFeatureName - override val statName = "reply_engaged_by_author" - override val modelWeightParam = ModelWeights.ReplyEngagedByAuthorParam -} - -object PredictedGoodClickConvoDescFavoritedOrRepliedScoreFeature extends PredictedScoreFeature { - override val featureName: String = RecapFeatures.PREDICTED_IS_GOOD_CLICKED_V1.getFeatureName - override val statName = "good_click_convo_desc_favorited_or_replied" - override val modelWeightParam = ModelWeights.GoodClickParam - - override def extractScore: FeatureMap => Option[Double] = { featureMap => - val goodClickV1Opt = featureMap.getOrElse(this, None) - val goodClickV2Opt = featureMap.getOrElse(PredictedGoodClickConvoDescUamGt2ScoreFeature, None) - - (goodClickV1Opt, goodClickV2Opt) match { - case (Some(v1Score), Some(v2Score)) => Some(Math.max(v1Score, v2Score)) - case _ => goodClickV1Opt.orElse(goodClickV2Opt) - } - } -} - -object PredictedGoodClickConvoDescUamGt2ScoreFeature extends PredictedScoreFeature { - override val featureName: String = RecapFeatures.PREDICTED_IS_GOOD_CLICKED_V2.getFeatureName - override val statName = "good_click_convo_desc_uam_gt_2" - override val modelWeightParam = ModelWeights.GoodClickV2Param -} - -object PredictedGoodProfileClickScoreFeature extends PredictedScoreFeature { - override val featureName: String = - RecapFeatures.PREDICTED_IS_PROFILE_CLICKED_AND_PROFILE_ENGAGED.getFeatureName - override val statName = "good_profile_click" - override val modelWeightParam = ModelWeights.GoodProfileClickParam -} - -object PredictedVideoPlayback50ScoreFeature extends PredictedScoreFeature { - override val featureName: String = RecapFeatures.PREDICTED_IS_VIDEO_PLAYBACK_50.getFeatureName - override val statName = "video_playback_50" - override val modelWeightParam = ModelWeights.VideoPlayback50Param -} - -object PredictedTweetDetailDwellScoreFeature extends PredictedScoreFeature { - override val featureName: String = - RecapFeatures.PREDICTED_IS_TWEET_DETAIL_DWELLED_15_SEC.getFeatureName - override val statName = "tweet_detail_dwell" - override val modelWeightParam = ModelWeights.TweetDetailDwellParam -} - -object PredictedProfileDwelledScoreFeature extends PredictedScoreFeature { - override val featureName: String = - RecapFeatures.PREDICTED_IS_PROFILE_DWELLED_20_SEC.getFeatureName - override val statName = "profile_dwell" - override val modelWeightParam = ModelWeights.ProfileDwelledParam -} - -object PredictedBookmarkScoreFeature extends PredictedScoreFeature { - override val featureName: String = RecapFeatures.PREDICTED_IS_BOOKMARKED.getFeatureName - override val statName = "bookmark" - override val modelWeightParam = ModelWeights.BookmarkParam -} - -object PredictedShareScoreFeature extends PredictedScoreFeature { - override val featureName: String = - RecapFeatures.PREDICTED_IS_SHARED.getFeatureName - override val statName = "share" - override val modelWeightParam = ModelWeights.ShareParam -} - -object PredictedShareMenuClickScoreFeature extends PredictedScoreFeature { - override val featureName: String = - RecapFeatures.PREDICTED_IS_SHARE_MENU_CLICKED.getFeatureName - override val statName = "share_menu_click" - override val modelWeightParam = ModelWeights.ShareMenuClickParam -} - -// Negative Engagements -object PredictedNegativeFeedbackV2ScoreFeature extends PredictedScoreFeature { - override val featureName: String = - RecapFeatures.PREDICTED_IS_NEGATIVE_FEEDBACK_V2.getFeatureName - override val statName = "negative_feedback_v2" - override val modelWeightParam = ModelWeights.NegativeFeedbackV2Param -} - -object PredictedReportedScoreFeature extends PredictedScoreFeature { - override val featureName: String = - RecapFeatures.PREDICTED_IS_REPORT_TWEET_CLICKED.getFeatureName - override val statName = "reported" - override val modelWeightParam = ModelWeights.ReportParam -} - -object PredictedStrongNegativeFeedbackScoreFeature extends PredictedScoreFeature { - override val featureName: String = - RecapFeatures.PREDICTED_IS_STRONG_NEGATIVE_FEEDBACK.getFeatureName - override val statName = "strong_negative_feedback" - override val modelWeightParam = ModelWeights.StrongNegativeFeedbackParam -} - -object PredictedWeakNegativeFeedbackScoreFeature extends PredictedScoreFeature { - override val featureName: String = - RecapFeatures.PREDICTED_IS_WEAK_NEGATIVE_FEEDBACK.getFeatureName - override val statName = "weak_negative_feedback" - override val modelWeightParam = ModelWeights.WeakNegativeFeedbackParam -} - -object PredictedScoreFeature { - val PredictedScoreFeatures: Set[PredictedScoreFeature] = Set( - PredictedFavoriteScoreFeature, - PredictedReplyScoreFeature, - PredictedRetweetScoreFeature, - PredictedReplyEngagedByAuthorScoreFeature, - PredictedGoodClickConvoDescFavoritedOrRepliedScoreFeature, - PredictedGoodClickConvoDescUamGt2ScoreFeature, - PredictedGoodProfileClickScoreFeature, - PredictedVideoPlayback50ScoreFeature, - PredictedTweetDetailDwellScoreFeature, - PredictedProfileDwelledScoreFeature, - PredictedBookmarkScoreFeature, - PredictedShareScoreFeature, - PredictedShareMenuClickScoreFeature, - // Negative Engagements - PredictedNegativeFeedbackV2ScoreFeature, - PredictedReportedScoreFeature, - PredictedStrongNegativeFeedbackScoreFeature, - PredictedWeakNegativeFeedbackScoreFeature, - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/RescoringFactorProvider.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/RescoringFactorProvider.docx new file mode 100644 index 0000000000000000000000000000000000000000..c6cd72a0c9c3b3f9879059b51e5f08a10649fc71 GIT binary patch literal 38050 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 utF=oZMedBsKH~+|L*v0+y7kgob@qSCrXTtM literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/RescoringFactorProvider.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/RescoringFactorProvider.scala deleted file mode 100644 index d9538b66d..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer/RescoringFactorProvider.scala +++ /dev/null @@ -1,180 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.scorer - -import com.twitter.home_mixer.functional_component.scorer.FeedbackFatigueScorer -import com.twitter.home_mixer.model.HomeFeatures -import com.twitter.home_mixer.model.HomeFeatures.AuthorIsBlueVerifiedFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIsCreatorFeature -import com.twitter.home_mixer.model.HomeFeatures.FeedbackHistoryFeature -import com.twitter.home_mixer.model.HomeFeatures.InNetworkFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToTweetIdFeature -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam.BlueVerifiedAuthorInNetworkMultiplierParam -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam.BlueVerifiedAuthorOutOfNetworkMultiplierParam -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam.CreatorInNetworkMultiplierParam -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam.CreatorOutOfNetworkMultiplierParam -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam.OutOfNetworkScaleFactorParam -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.common.CandidateWithFeatures -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.timelineservice.{thriftscala => tls} - -trait RescoringFactorProvider { - - def selector(candidate: CandidateWithFeatures[TweetCandidate]): Boolean - - def factor( - query: PipelineQuery, - candidate: CandidateWithFeatures[TweetCandidate] - ): Double - - def apply( - query: PipelineQuery, - candidate: CandidateWithFeatures[TweetCandidate], - ): Double = if (selector(candidate)) factor(query, candidate) else 1.0 -} - -/** - * Re-scoring multiplier to apply to authors who are eligible subscription content creators - */ -object RescoreCreators extends RescoringFactorProvider { - - def selector(candidate: CandidateWithFeatures[TweetCandidate]): Boolean = - candidate.features.getOrElse(AuthorIsCreatorFeature, false) && - CandidatesUtil.isOriginalTweet(candidate) - - def factor( - query: PipelineQuery, - candidate: CandidateWithFeatures[TweetCandidate] - ): Double = - if (candidate.features.getOrElse(InNetworkFeature, false)) - query.params(CreatorInNetworkMultiplierParam) - else query.params(CreatorOutOfNetworkMultiplierParam) -} - -/** - * Re-scoring multiplier to apply to authors who are verified by Twitter Blue - */ -object RescoreBlueVerified extends RescoringFactorProvider { - - def selector(candidate: CandidateWithFeatures[TweetCandidate]): Boolean = - candidate.features.getOrElse(AuthorIsBlueVerifiedFeature, false) && - CandidatesUtil.isOriginalTweet(candidate) - - def factor( - query: PipelineQuery, - candidate: CandidateWithFeatures[TweetCandidate] - ): Double = - if (candidate.features.getOrElse(InNetworkFeature, false)) - query.params(BlueVerifiedAuthorInNetworkMultiplierParam) - else query.params(BlueVerifiedAuthorOutOfNetworkMultiplierParam) -} - -/** - * Re-scoring multiplier to apply to out-of-network tweets - */ -object RescoreOutOfNetwork extends RescoringFactorProvider { - - def selector(candidate: CandidateWithFeatures[TweetCandidate]): Boolean = - !candidate.features.getOrElse(InNetworkFeature, false) - - def factor( - query: PipelineQuery, - candidate: CandidateWithFeatures[TweetCandidate] - ): Double = query.params(OutOfNetworkScaleFactorParam) -} - -/** - * Re-scoring multiplier to apply to reply candidates - */ -object RescoreReplies extends RescoringFactorProvider { - - private val ScaleFactor = 0.75 - - def selector(candidate: CandidateWithFeatures[TweetCandidate]): Boolean = - candidate.features.getOrElse(InReplyToTweetIdFeature, None).isDefined - - def factor( - query: PipelineQuery, - candidate: CandidateWithFeatures[TweetCandidate] - ): Double = ScaleFactor -} - -/** - * Re-scoring multiplier to calibrate multi-tasks learning model prediction - */ -object RescoreMTLNormalization extends RescoringFactorProvider { - - private val ScaleFactor = 1.0 - - def selector(candidate: CandidateWithFeatures[TweetCandidate]): Boolean = { - candidate.features.contains(HomeFeatures.FocalTweetAuthorIdFeature) - } - - def factor( - query: PipelineQuery, - candidate: CandidateWithFeatures[TweetCandidate] - ): Double = ScaleFactor -} - -/** - * Re-scoring multiplier to apply to multiple tweets from the same author - */ -case class RescoreAuthorDiversity(diversityDiscounts: Map[Long, Double]) - extends RescoringFactorProvider { - - def selector(candidate: CandidateWithFeatures[TweetCandidate]): Boolean = - diversityDiscounts.contains(candidate.candidate.id) - - def factor( - query: PipelineQuery, - candidate: CandidateWithFeatures[TweetCandidate] - ): Double = diversityDiscounts(candidate.candidate.id) -} - -case class RescoreFeedbackFatigue(query: PipelineQuery) extends RescoringFactorProvider { - - def selector(candidate: CandidateWithFeatures[TweetCandidate]): Boolean = true - - private val feedbackEntriesByEngagementType = - query.features - .getOrElse(FeatureMap.empty).getOrElse(FeedbackHistoryFeature, Seq.empty) - .filter { entry => - val timeSinceFeedback = query.queryTime.minus(entry.timestamp) - timeSinceFeedback < FeedbackFatigueScorer.DurationForFiltering + FeedbackFatigueScorer.DurationForDiscounting && - entry.feedbackType == tls.FeedbackType.SeeFewer - }.groupBy(_.engagementType) - - private val authorsToDiscount = - FeedbackFatigueScorer.getUserDiscounts( - query.queryTime, - feedbackEntriesByEngagementType.getOrElse(tls.FeedbackEngagementType.Tweet, Seq.empty)) - - private val likersToDiscount = - FeedbackFatigueScorer.getUserDiscounts( - query.queryTime, - feedbackEntriesByEngagementType.getOrElse(tls.FeedbackEngagementType.Like, Seq.empty)) - - private val followersToDiscount = - FeedbackFatigueScorer.getUserDiscounts( - query.queryTime, - feedbackEntriesByEngagementType.getOrElse(tls.FeedbackEngagementType.Follow, Seq.empty)) - - private val retweetersToDiscount = - FeedbackFatigueScorer.getUserDiscounts( - query.queryTime, - feedbackEntriesByEngagementType.getOrElse(tls.FeedbackEngagementType.Retweet, Seq.empty)) - - def factor( - query: PipelineQuery, - candidate: CandidateWithFeatures[TweetCandidate] - ): Double = { - FeedbackFatigueScorer.getScoreMultiplier( - candidate, - authorsToDiscount, - likersToDiscount, - followersToDiscount, - retweetersToDiscount - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/BUILD.bazel deleted file mode 100644 index a7fccd8ff..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/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/feature_hydrator", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/scorer", - "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/module", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/candidate_pipeline", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/offline_aggregates", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/real_time_aggregates", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util", - "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/selector", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/featuremap/datarecord", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..4330a5e84457aa76a846ab5cea2a286a57c1f599 GIT binary patch literal 36988 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/ScoredTweetsHeuristicScoringPipelineConfig.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/ScoredTweetsHeuristicScoringPipelineConfig.docx new file mode 100644 index 0000000000000000000000000000000000000000..4ff998e38f95965932fc55a5fa60053957499ea7 GIT binary patch literal 37004 zcmagEWmp}_wm*z(a1HM6?hb+A?(Vvg;IQ!k!9BRUySsY`?iM5v-2J~ZGv}O{bMJlM zFU><$t)HybRbAb?lw={HFu}mU;K1NgxwR@)3geQ%!NA5~z`!s-t-9g>hfn4XpA6MJ z9nD?znLO<68k6J|S4B`ipS@ruGYgS;i=$wb?KsjnGQ{CYRHxtYXfH9J$U!{ZP4I=Q z&nSh$FvVr0-uV)()(Lj`G*Rh_OPuKIXK3b=K^FVuujetHT5#`4#*xY_O79ZR4Z_s4 zWca+F<^pHgt?B18L=QO=%h3r;(s}@krml?9Kqnpwfm0D2gAS|CpW)8!Aa_(#IU1qf zrMKD}Q*wKm@N*}75cikNdRbzk(#W(;M`#P+`5JC?t}gZ2s3Cs9rPghdzTVkV-KlQ1 zw-DK52oZq#{fB)Ill!iCY2>x4&IY>*^9=9>e5&he@Sy;X;f zcC?zW^-+*Cp4Xi?a>j8_AT4!0seU3%8e2z9rBCo(|J@yJVGM=P!%~>R-Q29a{e-&z z2+C(pb>Ui-cF~yRQFdPLH>V?UGT)n=VBKY22?gH{2}41e0FeRj`wQf!ePieq-1~O{ zRd>?Qoke@DtATl@atz6|x-UtD1!&!I#!udlh{fgaC4_pP7mL^Tgvaj4@}4l|4ZxKC zQAJNGS&@5C^)?{Dzz{)y4V}&HT$q`DUn}D$KSHvi`kx6&j!+gmG^tAzEE`B1$`=Ur ze4RKgasWyft#oxNOXzE1_YxhP?V4IFr03%=(HGeTX_{!y2j(vJYHiY9G_)J8!6n0Y z1dw{D?F4JvrA6G3Ba4_*-EmoHkOT3FBH^=3qLyEVeZR zyX~=E$x65Ug6S|wTv64)gW?)yvIBj9$Ff17c&26d!#*Pg`J|@Tl!fa?kg}iSG|?}X z+LSY$#+W5vxX~G1uCsq8DC{$$sx{~~p8+KZ4U`}=fT@x*z|n=-6yR+B`zFtfA6MvS zL6yAok(`s)2){ywla!$YKl<`f8Z%(2^_GKE-fldLYjSh9z+NYZ-i>IJfB4E#Xq~&U z8PYT)K7=?l?kvFU3!*mG>#7O%+EbP!9dBh)aNk+a2+KDn+@6VybBJ%bztw;%VB*kx2G1X@3R;5QQg@$Je8kHWv|r zWuTShf`=y$7|Tr=K+P_d!v{HU+d;YERp}`19B$~c;;l9zt$wO$do;ad^#c;>AO-*W zFleN*pJ7f@1H(pe;`RXj4h5WDL^)N(y+wm<>&uCYv(x6Z8>D{uyXMe$$jR?>XHH5g zL;`c+)^y!A00V`!!*g>xYm6?G{=%QkTG(qaUYf>vs8fuA8SA;o!|sBXq41fBch?uz ztm%m|n8l(QP%>@O-x<0l^A79%-afp(Um~Et=e~f#J+eeLpq+IWe|_$|#Q$equ2)xa zjzM*?g8~CX{d--E9UcEDi`uxuDhq1I6Frpvr!Us9qRP1OfeWHD;_G-d@fpo?V`LxW zpjugXfW8l5SiGN^Z^HTO`JWobo)$$dU>g*y)Un1N@IhEV9wyUDU4N==1H_TtxDh zTkZY8d6H7&(#BV17R4{+kT2C%<(?(ef}9_AZ;rH+laP?5AdFwwp~gMSt!b9Sq;TX( z@L7#I&nK*)Y!JOa-PD==M9Z@70XBfr?vGqwcXia4weVQfNEDu!R}7~tv`H_y9-%1cNs@GqA?p7t|qFcL+q36|T? zD14`8gd}UnYsx?FFjbHWRt-^8BojWF5aZLE(w=G_9EdOK=qu<(VP$jTp}A3RhX7l_ z_W;z;iME2cN*~;Gc8Kq+@Lo`vF6>zkwjNvs5s%zqcz`YS@I)ym@OCewk>f-GEq0qJ zNkWsFn-u(^893_Rc8YN+1FJH^g^C|KJJOk-nTgKf(;u$z-{xg}>hReUEtGx+1ip-0odcZ&69SI43(eNT z2`${av^)wf%+dHntTU5t@6bduenlQ9qMP2G^NWL+{_Ss<7f<8yo``uISOPz9f=Uk1 zq9s3iW?ch)gqMYnJXc7v$f$T^ykzsd&p!AOE;`XUs-rsyC~fgoQ7Sz5;l2;e9fGEf zL;m_};$Z93V2AfT?hHXo{HU+TIW6kDQHP5fFxL`Yyqis_= zU0q04Plr+^_9W?~#JVZ`9ZG00J%Pu8V~v|cT-uv9_>ec^T^WokEs^rDna<-+f&~|HCi;{VS zX|#Vxmz{0zl|!W1220`*nrv0Fn(~JeI9(3A{t%nFPo}?8{K*i*oLIP4a~N>|-H(Z6 zsei_)#m2?Zfeg!jUql!cS?b4d;=Woptj`WKN{jU^~NM9J@|rSJj%HP|AP6iLC# z3KbPjJ7uXmq9ohoLmcM~iDIdtwJBtj3}4&Y&Z>@VCFh)*DFujzwdwBV=p-9+mjX&H z^Q_TyNW8&&u!biiXIjN9oRJAN_8>*1*_7pol**dHW61%1TPN zTV&_R?fBFDrL&d()UWtM*P`03_mhV7`ClFsm*@cOf(A13itmo78r{t*w#fqN<>??o zeMFz*V2Pcrw<>JU7E-4jew=rAmct*fJ)I>zdo0F7b$HN(eL#`&K5mJuu688+YH(RW z)a9}v__lz1zWF>#bix)56B=)5slUY`UFZ`cwGw|TzPG8nZpI+K6R>;7<(o}yKRbD=y0F2IOW*J@kS7uX z1#>n;$sAq45+&uhr(RlJ)V7iYp0B2tt8+;}On&C1Hp!~u;A5ivGeT`ENNuU(4cCU z=8g2pIVp{H&JMoa+?x^jy}%kESTxKNh!^bzJj?4vp&LSJ++{%av)>z8kL_A4n1V^T zcZ;WpvlZ54sBS}E7PCi)@=(^LsRrAIyq~n?vALc}9Pmb5 zJg)iSSg`N>D|!G4wLP}WN{Pn4(V8sJ%Job&6z@aOcjkZQI;tF-KY|$y%s?F)4CPy>R_e|rd zc=GhB9RPg6_2GZmKlRW#%}QQ}`*)9ygc2j2~Y%c&^!T7Yh?t z^!9Wre&!8}tb4n*uGjH?nqM9Fa{nUy=BNeeN4sm^z1qL=cz;qpVr6(2TD;f~Y!o8u zw*)R{4SQ=lxGfrgRxr*9=u$GCq9r zxbDmI?L}B@Qt(7`1GI^=_vVxGBLWIh_)+-{z9HVW&t9A!yN~bM)IZ>UM1u8L4mRz~ zK8a3$I#0T}^hhJ*9>0zNIx~8`@OqJ7C6w>dx_WkbuB-`5h{gDYFu!)Kb+tEFj3*7U z`q{Uy`F82)o^`$4h(B7Wq!9HxZLTw;Yy!VZ68lJJoshl_R6lf^^j440Qzh3wf6@sB zqNP#deQJmAJm0`;PZ0)sMyR#>@Sk9iR)@!4*PuWbhMuDHO^4Q_gjQDxztkA|Y76`F zgfMrs$C!uU_`SRy^jrAByjsbB9`_uaS;5P3^4 z2H)Dl2&isNWIPR+^KrZJH4xHv;Of5aenc`ZN7*hxVO1gSQztg55E_v14Wso5n+3YM zbzKjiSPxPo7^ppj2hOSi^R~#7vT0f*_NWnvlt4|r^uo$D0MLK?3@-yV@89(AC#08P zg&Y)CUCklz=!)7XPBvdU1Q>*gldGrQXV!FLRoMDMn}-vYDv{?MZu)=LZ2DGVnrhpa zJf|!k>^ZqqU>B4;#-N?IJ}nwwsnOaDq*~qwy>;kUElfY1%sx8aIlT)-b%Bg(j32@NsF>cI5@7@N zEzFkwOHG+1j|f^ExCD`L0b5tkOMA}+Iex_2o0hpxz*BZfBtSEUIn%l$w)soQq86VU z&eO^3`A>WL45Fd$Xg*k^w{YJ@eFzO{WFia6c@l)qEXvhK)+CTIB3`AZEe`=-p2miv&q1WKsh0|_V6qlElmhDL1_vDlSQw4`vB8<;(Y za92hCn8BW^A_yxTv?Pf38x@)P(r_x|^yq<(@y-4u89(&-W8zQ?vO3B`wkQGM+B~DW zBB%q?9nd3;Vwc#lfw3LX1v$Svtw5dF|LTO=rT~D8{x!a;5s#7yirEu!q)%o8 z;$PS&9Pyw~63{r>KSFgtXdxine}w)?1yxFYW<%=nUj%2$}re70J}{pK49;%J8*re%>Nz34N}IJ~zf$9Lk4p3_FC3~Qx?8JmM^B)6wP zx1|hsq`}oLCcoiqY5Qa6_=DD81785uI{{TOsHJwkGy;8B56%onPVZOFH~AN4?YY~T zQ;rYfu&2j=m~tcPZLrF_5t(%c<>GA;D(r{b#CMt&@9nZayzTiak0G3~K3}=|`M968 zBv7CfZn%WiEZi`vt`bs=wMA+!C1AJP)R9lNzV@!i4JqH!sr5T2t!*5gc&u~}L?_?n zB!0i7;_3e6u4*-fJc=E5T-M+L2{lZoj=f!KxR4(B@;Y!{qddfiSUtMZg6O4&rg;M`vbExH@2ma=c*Qg zewRH1P~gqo37DrIOwH_W-JWlR*KYAVgKPWwl_+Rpbq`MA13OUZ>kL&2eQDGf#=JJu zT=U=!1>$T11Gu7zS>FzSGY7W$!h?QNMEfVKNvAgnnI0dpr(gN4p68$~21$J-;yC&Y%lqh|G$hL~j6Ag| z1-F&!vn42<|g-jE}~fEIFmH3!ii$-v|2-Ac8)qHvqXK_?>xjj+SwN; z=2rfY&-)oszJ-aS_fxJ6x1Lo+3?i*#6?l*f5~`2&*i9jA5wm>zwk(FP4?HWOF|STh z!PtXWs5ZuAJ4rDH+OY3ulhgk0Gu1iY;vZSNrvinWvg?C@(z0z0{`;R!>6o*`&6{Ur zZ?9={?bGg$*Ta{umqUYI?JrKAz`NI^w}q3(*`Loxjx5Fw<*Zdk@#&LYNuH$t+GLYZ&mY8 z&lug^KFaOkOqHpNC1XT(jXprVb2b%HwZtN$63hY)01^&_~w9X_ZG_ zSW-=gg;{CN@1L_VuoqL}fyOvUtfu% zWU%mbFL`j(s2g+UBPgg*lv(ldES1$9YYZx0+-2CwQ&j)V2~}qI+L9Q481%~TPiwoK z!%zxYjilq5i7UxlI7HPLY;jO$=)2%*Z#J1>T^PKXw{Y!+T$MCZANTR{v{9(gGjI^l z8JJU%O{J>DR#?-U|NiMmSSjUa(?hQZr&hjSsW;^*he>2HZ9uS)61IlkB`^Y7lD14bukx=l*d`{5AJTX2a0)4dZ3V;vGVaA*LS_{C1XVPQ?m5?NkpJ&vRIY%o3fV z8_4PGr3!c`dQ}t>*9hNgu(y&N?<(kjyifzN3K!h3lxdH$ZY#OwN0B?OW|%w+GpjWU ziQ}qAcjCrO=Hgd)GHGgl@P~t*9R^Haj@+85O>GqCS5>IC=qKSM&2LHeU0t=OcS$M_ zoLYKQB^2Bk3$qMc1+(5(NA|^J=%YVY@`%;#lptzU_}L~GoUEy=wn{g-v>UY-aWBj0 zIP2Mrvc^*m6E;)4N^#4uD}0>f5oOygK(w&4tWPZvEH1pwAX|1>f%dj(*^ZEp#UAy% z^DM85KURt#(9+^CSy6O7*s81`Z`s{H!qvt_i0L6UMHxY@gZ&xf!_RVVZ64df=9V4&O-dL}Ru+e%#|Ouk zZ^e__9tct1)1L+re@@+ghq$LK=SW;zT87pbO;WGSip_#>OSiW_jgx)QRBqMFYJb%| zeH51>M!{heEI=A%J$94PILT7qH9|T&>gt2ZBMRi0GyQrS+FglqkQ9NnZ;6L!Se@&e zU5#;S({4a?c~13wHEV&7(Rp}hb3@YgHIp*m_FyG~P|sYZ^x)<7T=Q%mGQ?tYD&ARv zR-&EY+mO(?gi8g?A*%(I4#xe;yZAQAG5_GDhV)hF4sd%noLI?{CHgc`G?WR1+kBOOJNx@aN8%ynv{K>x?sp?@WbM(A&I|l5;e%th&YSG^UeA z>%^K~vdH7U4OmUfZ&u!t8)kQdXiNIR=f6P(xtOZm0SiriK4uKx`IBcD(F1aYfSDxX z8@@IOn{{gdu_IjAI1q!{rLp=DNnP~Ip*_Xt4JoQTZf_o^A{P)&zyWd&x22FSgWg6^ zAcn_YP4LF2j9pNU0Iq6{3}OH?Z85;UKgM`A^fI*GAaDKRA(AQxW)e#rP!)bS*}OjJ zuj<{tSBRX`Y$V`Hs8Hm(4d3CcB?jP|x`5d5=Nd*FA-k4Jro6Uz#{)00d2xwPcjaP{ z{X0bkGx!Hv!_vfSyTp=4I(zVo_r9*5KB%kkKi$~FsH|*-;ze>GKRZ)UhWTBl0rjf7 ze1v{&_Q{RrP^NyO&1iAvk_RNE$ZuQtmleOP?oQ6@Be+O^y~E9ziOdb5m)VxA)1Kvm z6kYm~MSH;;F@~fHH(Pcq_^sU{q1OKg?Lp$$~Ruo(FqbBhT~~9!YkZ z@l&jp<`@_#mT(+}a0ipkm9H#Ho)sz8xC+kMlm(S=Th7~+Cko{oAb8~ZQ_sn|gb^{R zU$q(35k{Y=DKS^4XyD!S;aj5}sh@=AyR$RKE~-XUG39M!sMj-EJVtuaZiPT(DKSry zdbOx^mZaE)n(Zu2GlLw>C4UdxJ+fW$^u5=Jdh zWfrO8r$uM{m0*3%B#UXgQe(WN{)Q^)x@4IpMBEMdt&vA+P!OSuDkwn5#@3uaoGjAP zJK)Ul!xRxxY*(3eYm866dRcMp^t|RHdG_qU!4VC_<;rw%g#Y>Nl^PVoQpUqm z1VRk``@%V<>@P%AAGn+0N@P9C)di1!NhnB)@OcOHk@5>4>PY01kw6|M=u3327 zS|vsF`*bUhln;6t)S%QDAdYZRFp<@u=FVTASl?S?`>bGtkGjP-CD4wvbe%<2kz1lf z%Nfo$z)5$_(9O>-9URd^#7|rAxVU11dxl~Zfn4>&m%?e)@DeIe{D;l>%YU))y8eH% z(TsQma9>a_#?>EK6<6EnKv8U3B^_D+a=F0*A3fl>XyyCj-%+17D=BiXJqb#p19)*g zUipWR8z@XdO}AO0Oh$Q0l%V|dO$?=ka}B#djosQ#5a9`YiLrnZj}n?v|I^v9S%LPs zwJsFJs?3T)5sB$TJ;`eL376wzS&^j3Wt2u~){u~y8PP)<@L zn2dx_pYh-35C|LPC3~WA1Sg^#9MF_f&Na%t;6kXez*lMi&ur3+KxLhI1Ran342(=~ z{a=d5^2J}cDw_+yOq`XXxJ`&110&S!lhRS;$aHRg#+mfyK)ES;o!;zrYjy5|@D+Az zrLEzeQmMWULct{yBUBSmN#&jT^A9=#>#hWv7n2;4*U|DL`oVW z{HPBGPUNk~Lz+SN)S=Z=ca(?)X|#`=4RA4Qx`uZeRh^{Cy*c9Q>Y~Ar9;{)&RPc2o9JFNfdh)P3FQJr=-* z6b5E$$&unS1zz|}SU1?_%9Enf<|IskIg@8sTy|Wdv;&!MG{w`ITw-AZFe6ngIh3MNDx zM5-8xGnguz#JjM;5kxZVSuAYvxMc;i1!xFoSa$Q6Uq|c_q#w9@X2J&#y?0Di8KkP& zVH?d@2lLN77+`>4M73YVxH4c8mNQgmoxT;JhGBjSNC4xF#h?K<5n+%rK&|~+RfGFw z!i}t+2{o2qo6LJ(`fnP^%hPm}ixzWbe*0b){O!9pR7=ju_r#3#oWPBX;7{L@qaaAo zg|)_)^?P90;HQv5C9@`s)W(yD(Wap(F8Q;+soavDk zSoY1taqJNSq`_UEAV&fk-XOyQ2u(>C!?ffywcbfu@W*N6z>VD8PPqA={0DKBqoWk6 zNORSuQcG^H3V3e;EbcA{@z$ByyA22>EX>O4sZ%!6?jisFZ7U5kagBmo^neYiv3{~$ zW{6egtPEb*ZRxtTgfG1dSIuLjqO_!ouEK>%JbIzYZm>aC6O-OmF9Dc#PBjCN(U9&& z2mj`J{r(ej-s;Qg0-Bx*-$fDoxtM~JVf7c&$t|dp6{?gxq#DK>n56-(aC`LCUpgP- zwe8FeFidvRwT7s>tTRTx?Iz(`GL}(J$z;^8k_7P-1KTwBGv*EL%9`n^L5&GKmWwL! z17`L{<5oKvprENggLwXDP}1ZcQ4(_~6L6>jdclQER~PS7CSWg$=J zcYiw)TbRpHvA6k@wx?rIAy#n?ICr zjgU;0W}hbUTJEvpCqJ^{|3_gi;Xa|ONCw8_p9i1V#lu7nWY!dy3h>r9x;e)pVWA%#H zf8?rEx*7NC^D=;=^#_E-hO{F|u0&=E^`k-FM8n7ktRnhkYtPRiCFX3D;W2FAs!a8v zdytz4Qnu7kEJm_oL|_XH(1%iLneZ^6)j2jB%cR%NT56f(Y|I#ew&L}I-m2EOHcvHB zHyZOs@XhNM*vUQK_UH_~A(X8^{Zy@nZBheXhFCN&TG?BLeyVpuXrDfbR&;Hr()O{m^Lye^go4i|#O+#lR5Y{)<#A zu%n5h{a6?yg4`oa6Ir%qz)_3LY}=tfp3Ag&x@JJ6bGH}$_b$8eeY5x6yT8b9T}MFV zs<3~MH?wkJL@@mybtjdF^FuI~M-nvI<(hIMJ*IByEt1WO&s?TUqx*EK>$2Rs;K z1K@AOYUaF2Q7MnXC^42M7=(`-8^!UU+#c8I`$%l4Y=OJRs+m9J*iOT@3Un z@u{u8tEzv{-*Ei005n9Ol+k%XAWMVEv&J&~T6*`HG;IMqjq2N)DDc#_+!PA#`nugc zT9iY6;dw~Bn9n-RYz;$xHmnGKX-aL9TVb}KxGcJ@W1FM$MMyqvw&4*=f&)oncFfyc z`>3-ntjN{B2%e)oF8gWaCGpk&N+8H2Mv?U!pIuf9AyGaK79M|ey0JNx z69MRpa$Wf9-p=yL0eH(AH6!G;WKsjBG?tc*G*jq2{eH98Anw?$*;U2IO+#bn2M?gl zH)UQ3@m}p2)LGpLUR^jyI0Ww{Gt?IZucem3Aa_&%CLDBGnou@rfY+>LA54fp@w8~1M04C-i25t=1LL!q$!dyblBU*W578(aJVG2jj(rL$)1)J59(io1d z1W-p}c5IKaxPa(*qS+2HVXik4Aa>yz)t#t;b(Mqs{g{Lr3E-H83IQwcndQ*#ICtCzA}JV(p>f#r^Wuf&I5b{Cgxm>^w+_y3G4Q+g@#mPlwL$s zTGS4(ILIDER92D>FdT|-oFC9P(9ATPyFXbB{5{`oL*F**XB|vp_Zciu8HjYMb9VHc z3?~jEo&)8AalXjk2aeiJ<-#Mg{}Qcy1yd2Rw*hx1(I)|IGd#eVq|up25Rc#ul#UT* zj61-taQhJDnA2geNG%&F#{VNOO7yol+~9Mu3)_)VlP%s~HN>p_L=8Z266oI-*gDV! zrU?knAno=N*pSn;1zmVDN;rhb5<}Y2V}QwWDJArz%bc9j*aif@(wIMoa1ZsuX6|t> z!7!jXbx)syHC0$@2PN;M43xYRIM|T@yB4T_CeJ=w@2}+5blP=&om@&_`AZ=}KjPjo z!S*;l^<)pEjgcyKPN@eCoL4CUI)pkMEc90V7^^6Wgrl0wfbxltuRl%{pk3`Fc+LBM z_k6=%O9F+$;wFT5!FL0JVWWK`a)J&uvtN+ry>D;!g;jo z$y})XzM(T;r1PyO}X!J2QA$Y*L6 zni4_9o0?dlz?$TiT z6ZzB^vUOa;CwtC0-fX&$;4z49v5$=od{^c7Vv3zk@T}d)EZu`f9F9C_HlnH7Jvlj2 zbo2dUk40)R2(}4id{uUuiDgdSea|{pf!`sn5UIKjy!#YoCZ@q0Whbg5q)7HdO>xH4 zyM16F?X&;vxxOPh1Z_7}nTxihB^$fpe4@W-B^V4xdY zN{Fz(&*XWjX+a{+IGI1Gt3|Ei>@WK8mvepHr1=5-g+P5w8~%_A<`Dki`VDU2S?L%0 z4eI$)A(Mp;Anu`Y^GG4{p)?QkyyaZ7r_px()4t}0+&2{fmGne4}sgRxX%N zX&;ol;0O43h(WL6UIKN14{-nZQPyrxO1w6L z`|70!Tk+Wb^vbsLg`-bMSn@Yf*L1a8W%|_f7`~705mFZ@2mTMxyQRmDWOE^G!U3Y9 zNW)ei?A%^23p&-flikNXl3f!0MTn1J1e*lbo}?pIc7u2 z@+xGecfkscjy!!-u%Eg1&ZXyczCaBO#5NO%n`DLJp_vB;NFoD^$-y#JkAFUvIY`VB zwgO!l^VB!1CnaT{r8z6`Og2Uy6b*?%U!k{j6o<(W^GeIhXxE|jixdUQ6bk0!xPE9? zvU?=fHU>(D5g}I`!e=g+mS-=BQwn`VRoglC2(M0JclspyxDP9c^?+J*y*7%mjGM!j z-L(N2OI*Z1C>F~u4H3E~D5=I#Dn*%JQv1d3`l#$mKB>S?zG;&=>0Z4SdbDc;-F+#( zVs|6HQnK}dHV^?w$b8@EjG4ydvH6@+97x<(kj3vvgAb{8KD+oNpL*%F`>b}(-nbQ- z1$lD=L3f{vmyQ4|QV<>^{Cdqd5bsm&%C*@UNL&_Ej`d7;ds>z~DFZG15l!v<*sHfX z3WLS9_vyFbXH=@2HC`8x;K2U~4$Llv7XDLk?{C59zXey}AG^A-K4=`6Ycub^cmE;762?+xpi*!ji2;(aj?- zke}gs1Yng`?{r}xF-V#`C?%#H8%Dj%=RToVNHE7OE_C-lv98t5#lOx4UCg;IJr5TK zW)JlS}Zh$iq3^(ew}LyvRxI zGhoA~pZ1f^?pE@7gmUvtx|7PG)QkT!kpGAEEOaDvtFP@Y$c0Gv4pxl0ZS?L~TDnT-T@1Lj@xx-yG7;EIf7 zL(HGUDCSk07=Yo&BOZ|Hk!L|!l1`V&z!F3VkaOTng>}(E`G}+d#mOAfemUHKH42E zn!k&`VM+ehUPFPJ$Dm&H_qTq@XeUyh4XpnLa8mpYa1{Orfa9He;4ai~JKXR|4^i~e zrUzd|hJs^V%LoqD*aJb=mopw)Vh

6!pbR2DfHYqA6&Y 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 - pipelineScope.contains(candidate) && !candidate.features.getOrElse(InNetworkFeature, true)) - - val filteredCandidates = selectedCandidates - .groupBy { candidate => - ( - candidate.features.getOrElse(AuthorIdFeature, None), - candidate.features.getOrElse(SuggestTypeFeature, None) - ) - } - .values.map(_.maxBy(_.features.getOrElse(ScoreFeature, None))) - .toSeq - - val updatedCandidates = otherCandidates ++ filteredCandidates - SelectorResult(remainingCandidates = updatedCandidates, result = result) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/BUILD.bazel deleted file mode 100644 index 2147ee217..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/BUILD.bazel +++ /dev/null @@ -1,33 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "finagle/finagle-mysql/src/main/scala", - "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/param", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/feature_hydrator/adapters/non_ml_features", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/param", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scorer", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/service", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "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/feature/featuremap/datarecord", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/marshaller/response/urt", - "servo/repo/src/main/scala", - "servo/util/src/main/scala", - "src/scala/com/twitter/timelines/prediction/common/adapters", - "src/thrift/com/twitter/timelines/suggests/common:data_record_metadata-scala", - "src/thrift/com/twitter/timelines/suggests/common:poly_data_record-java", - "src/thrift/com/twitter/timelines/timeline_logging:thrift-scala", - "timelines/ml:pldr-client", - "timelines/ml:pldr-conversion", - "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/util/stats", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..0a9913013efadd7b702a4b1ffa7d37b41d2214bd GIT binary patch literal 37153 zcmagFWmsIvwm*z(a1HM6?hb+A?h-U;Bf+8Z;BLX)-QC?oaCZp=cmH>0=A1Kg?!E8( zW%E!~>nCgNuByGeT1gfX3KI+r3=Rw~g)8ud60;DAr#K2$>9#$MJwq&>L{-`ikM<(-i5$ek-8f&U z`m|Co3{z}+%AGgSO08h0S0k0KxWtLRe!6BJ8Dx=H-dZlxsX6zaWGt!7g7gmI>;O!4 zbGq02DK2o9o$5Y5L-e3Cv1}dxM6Cy~DC&x64RqqcAUGAlQRtAWylL*7c5-_)m7`(m z9s19Eqe?C><36rr58}R(nJR2mu9X$Y-;Jl{f%&ef&98r8@3JJq;M(APOys5{iI z^b{bw4I%a3$%1?`>ytOKd4XAU7VHQ(&`vyWFa=s&mX zXh*4eTOI{S<9XbPBc~sC`_od_k?JSFq_VX~S9k^9_1)dk7DQ7BJuHS8+|AC&+m5UI z4x@bKR2QyMX%mf38e!+k(ivfL+3c>^$| ze^k+(N>=0^RK0ZwFfc^WUqeST8z*L_-`9$`iI0%1sJ>@HlEaimc8%&1`AY^8hw}MC z-QUJf3+;f?h0C2C$`blo*gZrCXFDe5^J#hbi}Zyy0h-3zbN)FCJz5*I7xit1t8hv1 z?S7lg#Nv~{P`qLpG2hIF>l$i;yr@o3kGUuZO) zy%}c!FaRmJM$WLJik4j)*RXrx#xK%Fz9L64_Gqdp3Z|?$Jo(5n4j9+sG6z#pr7ac`WJ$il&=)KI}76kWXlOOqx5d2Ppg4PZ9lM zsYyQ5X^39*h8vmI^J!3m&_D??1(+x~0_>fbO#qH&zi;x4xG{x3 z7F5YQFUeVXjnFGpI7t~g@T0Jg(wKgWEw>z;@-}0cToW5R`L;UQ^e#jj{6kmvLTlU& zO^_x*aY4kvv1fj!VTjsTuPesbt52Ddbi5UbfxTzlk29B47JMe7-Qmi3?+~gpA!X87 z_2uS6_{jTfIXPy(PLgIcs}$xOim9T>FMZVziKA&HMG`*2;C6>p^xY2{0G>!Zmfs}GP+2PyE^ zhXEs%{d6;$Y8W3n_(wTjt(1BE|B_V@0x<&At$}hnLa5l z7xB-5Th(=02lN-z49(7NuQEDO`U-zBZDy~=cxfEtp-%n;Okc}E9˜!_u{xVyfv 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 YogG@5tpR4x@~o1AxB=7S7J2#Ce{Yb<=Kufz literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/CachedScoredTweetsSideEffect.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/CachedScoredTweetsSideEffect.scala deleted file mode 100644 index 3d66ff54a..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/CachedScoredTweetsSideEffect.scala +++ /dev/null @@ -1,134 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.side_effect - -import com.twitter.home_mixer.model.HomeFeatures.AncestorsFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIsBlueVerifiedFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIsCreatorFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIsGoldVerifiedFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIsGrayVerifiedFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIsLegacyVerifiedFeature -import com.twitter.home_mixer.model.HomeFeatures.CachedCandidatePipelineIdentifierFeature -import com.twitter.home_mixer.model.HomeFeatures.DirectedAtUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.ExclusiveConversationAuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.InNetworkFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.LastScoredTimestampMsFeature -import com.twitter.home_mixer.model.HomeFeatures.PerspectiveFilteredLikedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.QuotedTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.QuotedUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.SGSValidFollowedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.SGSValidLikedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.ScoreFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -import com.twitter.home_mixer.model.HomeFeatures.TopicContextFunctionalityTypeFeature -import com.twitter.home_mixer.model.HomeFeatures.TopicIdSocialContextFeature -import com.twitter.home_mixer.model.HomeFeatures.TweetUrlsFeature -import com.twitter.home_mixer.model.HomeFeatures.WeightedModelScoreFeature -import com.twitter.home_mixer.product.scored_tweets.model.ScoredTweetsResponse -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam.CachedScoredTweets -import com.twitter.home_mixer.service.HomeMixerAlertConfig -import com.twitter.home_mixer.{thriftscala => hmt} -import com.twitter.product_mixer.core.functional_component.marshaller.response.urt.metadata.TopicContextFunctionalityTypeMarshaller -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.pipeline.PipelineQuery -import com.twitter.servo.cache.TtlCache -import com.twitter.stitch.Stitch -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class CachedScoredTweetsSideEffect @Inject() ( - scoredTweetsCache: TtlCache[Long, hmt.ScoredTweetsResponse]) - extends PipelineResultSideEffect[PipelineQuery, ScoredTweetsResponse] { - - override val identifier: SideEffectIdentifier = SideEffectIdentifier("CachedScoredTweets") - - private val MaxTweetsToCache = 1000 - - def buildCachedScoredTweets( - query: PipelineQuery, - candidates: Seq[CandidateWithDetails] - ): hmt.ScoredTweetsResponse = { - val tweets = candidates.map { candidate => - val sgsValidLikedByUserIds = - candidate.features.getOrElse(SGSValidLikedByUserIdsFeature, Seq.empty) - val sgsValidFollowedByUserIds = - candidate.features.getOrElse(SGSValidFollowedByUserIdsFeature, Seq.empty) - val perspectiveFilteredLikedByUserIds = - candidate.features.getOrElse(PerspectiveFilteredLikedByUserIdsFeature, Seq.empty) - val ancestors = candidate.features.getOrElse(AncestorsFeature, Seq.empty) - - hmt.ScoredTweet( - tweetId = candidate.candidateIdLong, - authorId = candidate.features.get(AuthorIdFeature).get, - // Cache the model score instead of the final score because rescoring is per-request - score = candidate.features.getOrElse(WeightedModelScoreFeature, None), - suggestType = candidate.features.getOrElse(SuggestTypeFeature, None), - sourceTweetId = candidate.features.getOrElse(SourceTweetIdFeature, None), - sourceUserId = candidate.features.getOrElse(SourceUserIdFeature, None), - quotedTweetId = candidate.features.getOrElse(QuotedTweetIdFeature, None), - quotedUserId = candidate.features.getOrElse(QuotedUserIdFeature, None), - inReplyToTweetId = candidate.features.getOrElse(InReplyToTweetIdFeature, None), - inReplyToUserId = candidate.features.getOrElse(InReplyToUserIdFeature, None), - directedAtUserId = candidate.features.getOrElse(DirectedAtUserIdFeature, None), - inNetwork = Some(candidate.features.getOrElse(InNetworkFeature, true)), - sgsValidLikedByUserIds = Some(sgsValidLikedByUserIds), - sgsValidFollowedByUserIds = Some(sgsValidFollowedByUserIds), - topicId = candidate.features.getOrElse(TopicIdSocialContextFeature, None), - topicFunctionalityType = candidate.features - .getOrElse(TopicContextFunctionalityTypeFeature, None).map( - TopicContextFunctionalityTypeMarshaller(_)), - ancestors = if (ancestors.nonEmpty) Some(ancestors) else None, - isReadFromCache = Some(true), - streamToKafka = Some(false), - exclusiveConversationAuthorId = candidate.features - .getOrElse(ExclusiveConversationAuthorIdFeature, None), - authorMetadata = Some( - hmt.AuthorMetadata( - blueVerified = candidate.features.getOrElse(AuthorIsBlueVerifiedFeature, false), - goldVerified = candidate.features.getOrElse(AuthorIsGoldVerifiedFeature, false), - grayVerified = candidate.features.getOrElse(AuthorIsGrayVerifiedFeature, false), - legacyVerified = candidate.features.getOrElse(AuthorIsLegacyVerifiedFeature, false), - creator = candidate.features.getOrElse(AuthorIsCreatorFeature, false) - )), - lastScoredTimestampMs = candidate.features - .getOrElse(LastScoredTimestampMsFeature, Some(query.queryTime.inMilliseconds)), - candidatePipelineIdentifier = candidate.features - .getOrElse(CachedCandidatePipelineIdentifierFeature, Some(candidate.source.name)), - tweetUrls = Some(candidate.features.getOrElse(TweetUrlsFeature, Seq.empty)), - perspectiveFilteredLikedByUserIds = Some(perspectiveFilteredLikedByUserIds) - ) - } - - hmt.ScoredTweetsResponse(tweets) - } - - final override def apply( - inputs: PipelineResultSideEffect.Inputs[PipelineQuery, ScoredTweetsResponse] - ): Stitch[Unit] = { - val candidates = - (inputs.selectedCandidates ++ inputs.remainingCandidates ++ inputs.droppedCandidates) - .filter(_.features.getOrElse(ScoreFeature, None).exists(_ > 0.0)) - - val truncatedCandidates = - if (candidates.size > MaxTweetsToCache) - candidates - .sortBy(-_.features.getOrElse(ScoreFeature, None).getOrElse(0.0)).take(MaxTweetsToCache) - else candidates - - if (truncatedCandidates.nonEmpty) { - val ttl = inputs.query.params(CachedScoredTweets.TTLParam) - val scoredTweets = buildCachedScoredTweets(inputs.query, truncatedCandidates) - Stitch.callFuture(scoredTweetsCache.set(inputs.query.getRequiredUserId, scoredTweets, ttl)) - } else Stitch.Unit - } - - override val alerts = Seq( - HomeMixerAlertConfig.BusinessHours.defaultSuccessRateAlert(99.4) - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeScoredCandidatesSideEffect.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeScoredCandidatesSideEffect.docx new file mode 100644 index 0000000000000000000000000000000000000000..2fd4bc049d7eed1524bd45fb65a7167b2354c72b GIT binary patch literal 38248 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeScoredCandidatesSideEffect.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeScoredCandidatesSideEffect.scala deleted file mode 100644 index ef7e3b41a..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeScoredCandidatesSideEffect.scala +++ /dev/null @@ -1,126 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.side_effect - -import com.twitter.finagle.tracing.Trace -import com.twitter.home_mixer.model.HomeFeatures.AncestorsFeature -import com.twitter.home_mixer.model.HomeFeatures.AuthorIdFeature -import com.twitter.home_mixer.model.HomeFeatures.DirectedAtUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.EarlybirdScoreFeature -import com.twitter.home_mixer.model.HomeFeatures.FavoritedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.FollowedByUserIdsFeature -import com.twitter.home_mixer.model.HomeFeatures.FromInNetworkSourceFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.InReplyToUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.QuotedTweetIdFeature -import com.twitter.home_mixer.model.HomeFeatures.QuotedUserIdFeature -import com.twitter.home_mixer.model.HomeFeatures.RequestJoinIdFeature -import com.twitter.home_mixer.model.HomeFeatures.ScoreFeature -import com.twitter.home_mixer.model.HomeFeatures.SuggestTypeFeature -import com.twitter.home_mixer.param.HomeMixerFlagName.ScribeScoredCandidatesFlag -import com.twitter.home_mixer.product.scored_tweets.model.ScoredTweetsQuery -import com.twitter.home_mixer.product.scored_tweets.model.ScoredTweetsResponse -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam.EnableScribeScoredCandidatesParam -import com.twitter.inject.annotations.Flag -import com.twitter.logpipeline.client.common.EventPublisher -import com.twitter.product_mixer.component_library.side_effect.ScribeLogEventSideEffect -import com.twitter.product_mixer.core.feature.Feature -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.CandidatePipelines -import com.twitter.product_mixer.core.model.common.presentation.CandidateWithDetails -import com.twitter.timelines.timeline_logging.{thriftscala => t} -import javax.inject.Inject -import javax.inject.Singleton -import com.twitter.util.logging.Logging - -/** - * Side effect that logs scored candidates from scoring pipelines - */ -@Singleton -class ScribeScoredCandidatesSideEffect @Inject() ( - @Flag(ScribeScoredCandidatesFlag) enableScribeScoredCandidates: Boolean, - eventBusPublisher: EventPublisher[t.ScoredCandidate]) - extends ScribeLogEventSideEffect[ - t.ScoredCandidate, - ScoredTweetsQuery, - ScoredTweetsResponse - ] - with PipelineResultSideEffect.Conditionally[ - ScoredTweetsQuery, - ScoredTweetsResponse - ] - with Logging { - - override val identifier: SideEffectIdentifier = - SideEffectIdentifier("ScribeScoredCandidates") - - override def onlyIf( - query: ScoredTweetsQuery, - selectedCandidates: Seq[CandidateWithDetails], - remainingCandidates: Seq[CandidateWithDetails], - droppedCandidates: Seq[CandidateWithDetails], - response: ScoredTweetsResponse - ): Boolean = enableScribeScoredCandidates && query.params(EnableScribeScoredCandidatesParam) - - /** - * Build the log events from query, selections and response - * - * @param query PipelineQuery - * @param selectedCandidates Result after Selectors are executed - * @param remainingCandidates Candidates which were not selected - * @param droppedCandidates Candidates dropped during selection - * @param response Result after Unmarshalling - * - * @return LogEvent in thrift - */ - override def buildLogEvents( - query: ScoredTweetsQuery, - selectedCandidates: Seq[CandidateWithDetails], - remainingCandidates: Seq[CandidateWithDetails], - droppedCandidates: Seq[CandidateWithDetails], - response: ScoredTweetsResponse - ): Seq[t.ScoredCandidate] = { - val returned = (selectedCandidates ++ remainingCandidates).map(toThrift(_, query, false)) - val dropped = droppedCandidates.map(toThrift(_, query, true)) - returned ++ dropped - } - - private def toThrift( - candidate: CandidateWithDetails, - query: ScoredTweetsQuery, - isDropped: Boolean - ): t.ScoredCandidate = { - t.ScoredCandidate( - tweetId = candidate.candidateIdLong, - viewerId = query.getOptionalUserId, - authorId = candidate.features.getOrElse(AuthorIdFeature, None), - traceId = Some(Trace.id.traceId.toLong), - requestJoinId = query.features.flatMap(_.getOrElse(RequestJoinIdFeature, None)), - score = candidate.features.getOrElse(ScoreFeature, None), - suggestType = candidate.features.getOrElse(SuggestTypeFeature, None).map(_.name), - isInNetwork = candidate.features.getTry(FromInNetworkSourceFeature).toOption, - inReplyToTweetId = candidate.features.getOrElse(InReplyToTweetIdFeature, None), - inReplyToUserId = candidate.features.getOrElse(InReplyToUserIdFeature, None), - quotedTweetId = candidate.features.getOrElse(QuotedTweetIdFeature, None), - quotedUserId = candidate.features.getOrElse(QuotedUserIdFeature, None), - directedAtUserId = candidate.features.getOrElse(DirectedAtUserIdFeature, None), - favoritedByUserIds = convertSeqFeature(candidate, FavoritedByUserIdsFeature), - followedByUserIds = convertSeqFeature(candidate, FollowedByUserIdsFeature), - ancestors = convertSeqFeature(candidate, AncestorsFeature), - requestTimeMs = Some(query.queryTime.inMilliseconds), - candidatePipelineIdentifier = - candidate.features.getTry(CandidatePipelines).toOption.map(_.head.name), - earlybirdScore = candidate.features.getOrElse(EarlybirdScoreFeature, None), - isDropped = Some(isDropped) - ) - } - - private def convertSeqFeature[T]( - candidateWithDetails: CandidateWithDetails, - feature: Feature[_, Seq[T]] - ): Option[Seq[T]] = - Option( - candidateWithDetails.features - .getOrElse(feature, Seq.empty)).filter(_.nonEmpty) - - override val logPipelinePublisher: EventPublisher[t.ScoredCandidate] = eventBusPublisher -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeServedCommonFeaturesAndCandidateFeaturesSideEffect.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeServedCommonFeaturesAndCandidateFeaturesSideEffect.docx new file mode 100644 index 0000000000000000000000000000000000000000..6f976c737d4242a2a0a087de0e1f63b03afb0ccf GIT binary patch literal 39444 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeServedCommonFeaturesAndCandidateFeaturesSideEffect.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeServedCommonFeaturesAndCandidateFeaturesSideEffect.scala deleted file mode 100644 index c93adee27..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/side_effect/ScribeServedCommonFeaturesAndCandidateFeaturesSideEffect.scala +++ /dev/null @@ -1,225 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.side_effect - -import com.twitter.conversions.DurationOps._ -import com.twitter.finagle.mysql.Client -import com.twitter.finagle.mysql.Transactions -import com.twitter.finagle.stats.StatsReceiver -import com.twitter.finagle.util.DefaultTimer -import com.twitter.home_mixer.model.HomeFeatures.ServedRequestIdFeature -import com.twitter.home_mixer.model.HomeFeatures.SourceTweetIdFeature -import com.twitter.home_mixer.param.HomeMixerFlagName.DataRecordMetadataStoreConfigsYmlFlag -import com.twitter.home_mixer.param.HomeMixerFlagName.ScribeServedCommonFeaturesAndCandidateFeaturesFlag -import com.twitter.home_mixer.param.HomeMixerInjectionNames.CandidateFeaturesScribeEventPublisher -import com.twitter.home_mixer.param.HomeMixerInjectionNames.CommonFeaturesScribeEventPublisher -import com.twitter.home_mixer.param.HomeMixerInjectionNames.MinimumFeaturesScribeEventPublisher -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.adapters.non_ml_features.NonMLCandidateFeatures -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.adapters.non_ml_features.NonMLCandidateFeaturesAdapter -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.adapters.non_ml_features.NonMLCommonFeatures -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.adapters.non_ml_features.NonMLCommonFeaturesAdapter -import com.twitter.home_mixer.product.scored_tweets.model.ScoredTweetsQuery -import com.twitter.home_mixer.product.scored_tweets.model.ScoredTweetsResponse -import com.twitter.home_mixer.product.scored_tweets.scorer.CandidateFeaturesDataRecordFeature -import com.twitter.home_mixer.product.scored_tweets.scorer.CommonFeaturesDataRecordFeature -import com.twitter.home_mixer.product.scored_tweets.scorer.PredictedScoreFeature.PredictedScoreFeatures -import com.twitter.home_mixer.util.CandidatesUtil.getOriginalAuthorId -import com.twitter.inject.annotations.Flag -import com.twitter.logpipeline.client.common.EventPublisher -import com.twitter.ml.api.DataRecordMerger -import com.twitter.product_mixer.core.feature.featuremap.datarecord.DataRecordConverter -import com.twitter.product_mixer.core.feature.featuremap.datarecord.SpecificFeatures -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.stitch.Stitch -import com.twitter.timelines.ml.cont_train.common.domain.non_scalding.CandidateAndCommonFeaturesStreamingUtils -import com.twitter.timelines.ml.pldr.client.MysqlClientUtils -import com.twitter.timelines.ml.pldr.client.VersionedMetadataCacheClient -import com.twitter.timelines.ml.pldr.conversion.VersionIdAndFeatures -import com.twitter.timelines.suggests.common.data_record_metadata.{thriftscala => drmd} -import com.twitter.timelines.suggests.common.poly_data_record.{thriftjava => pldr} -import com.twitter.timelines.util.stats.OptionObserver -import com.twitter.util.Time -import com.twitter.util.Try -import com.twitter.util.logging.Logging -import javax.inject.Inject -import javax.inject.Named -import javax.inject.Singleton -import scala.collection.JavaConverters._ - -/** - * (1) Scribe common features sent to prediction service + some other features as PLDR format into logs - * (2) Scribe candidate features sent to prediction service + some other features as PLDR format into another logs - */ -@Singleton -class ScribeServedCommonFeaturesAndCandidateFeaturesSideEffect @Inject() ( - @Flag(DataRecordMetadataStoreConfigsYmlFlag) dataRecordMetadataStoreConfigsYml: String, - @Flag(ScribeServedCommonFeaturesAndCandidateFeaturesFlag) enableScribeServedCommonFeaturesAndCandidateFeatures: Boolean, - @Named(CommonFeaturesScribeEventPublisher) commonFeaturesScribeEventPublisher: EventPublisher[ - pldr.PolyDataRecord - ], - @Named(CandidateFeaturesScribeEventPublisher) candidateFeaturesScribeEventPublisher: EventPublisher[ - pldr.PolyDataRecord - ], - @Named(MinimumFeaturesScribeEventPublisher) minimumFeaturesScribeEventPublisher: EventPublisher[ - pldr.PolyDataRecord - ], - statsReceiver: StatsReceiver, -) extends PipelineResultSideEffect[ScoredTweetsQuery, ScoredTweetsResponse] - with PipelineResultSideEffect.Conditionally[ScoredTweetsQuery, ScoredTweetsResponse] - with Logging { - - override val identifier: SideEffectIdentifier = - SideEffectIdentifier("ScribeServedCommonFeaturesAndCandidateFeatures") - - private val drMerger = new DataRecordMerger - private val postScoringCandidateFeatures = SpecificFeatures(PredictedScoreFeatures) - private val postScoringCandidateFeaturesDataRecordAdapter = - new DataRecordConverter(postScoringCandidateFeatures) - - private val scopedStatsReceiver = statsReceiver.scope(getClass.getSimpleName) - private val metadataFetchFailedCounter = scopedStatsReceiver.counter("metadataFetchFailed") - private val commonFeaturesScribeCounter = scopedStatsReceiver.counter("commonFeaturesScribe") - private val commonFeaturesPLDROptionObserver = - OptionObserver(scopedStatsReceiver.scope("commonFeaturesPLDR")) - private val candidateFeaturesScribeCounter = - scopedStatsReceiver.counter("candidateFeaturesScribe") - private val candidateFeaturesPLDROptionObserver = - OptionObserver(scopedStatsReceiver.scope("candidateFeaturesPLDR")) - private val minimumFeaturesPLDROptionObserver = - OptionObserver(scopedStatsReceiver.scope("minimumFeaturesPLDR")) - private val minimumFeaturesScribeCounter = - scopedStatsReceiver.counter("minimumFeaturesScribe") - - lazy private val dataRecordMetadataStoreClient: Option[Client with Transactions] = - Try { - MysqlClientUtils.mysqlClientProvider( - MysqlClientUtils.parseConfigFromYaml(dataRecordMetadataStoreConfigsYml)) - }.onFailure { e => info(s"Error building MySQL client: $e") }.toOption - - lazy private val versionedMetadataCacheClientOpt: Option[ - VersionedMetadataCacheClient[Map[drmd.FeaturesCategory, Option[VersionIdAndFeatures]]] - ] = - dataRecordMetadataStoreClient.map { mysqlClient => - new VersionedMetadataCacheClient[Map[drmd.FeaturesCategory, Option[VersionIdAndFeatures]]]( - maximumSize = 1, - expireDurationOpt = None, - mysqlClient = mysqlClient, - transform = CandidateAndCommonFeaturesStreamingUtils.metadataTransformer, - statsReceiver = statsReceiver - ) - } - - versionedMetadataCacheClientOpt.foreach { versionedMetadataCacheClient => - versionedMetadataCacheClient - .metadataFetchTimerTask( - CandidateAndCommonFeaturesStreamingUtils.metadataFetchKey, - metadataFetchTimer = DefaultTimer, - metadataFetchInterval = 90.seconds, - metadataFetchFailedCounter = metadataFetchFailedCounter - ) - } - - override def onlyIf( - query: ScoredTweetsQuery, - selectedCandidates: Seq[CandidateWithDetails], - remainingCandidates: Seq[CandidateWithDetails], - droppedCandidates: Seq[CandidateWithDetails], - response: ScoredTweetsResponse - ): Boolean = enableScribeServedCommonFeaturesAndCandidateFeatures - - override def apply( - inputs: PipelineResultSideEffect.Inputs[ScoredTweetsQuery, ScoredTweetsResponse] - ): Stitch[Unit] = { - Stitch.value { - val servedTimestamp: Long = Time.now.inMilliseconds - val nonMLCommonFeatures = NonMLCommonFeatures( - userId = inputs.query.getRequiredUserId, - predictionRequestId = - inputs.query.features.flatMap(_.getOrElse(ServedRequestIdFeature, None)), - servedTimestamp = servedTimestamp - ) - val nonMLCommonFeaturesDataRecord = - NonMLCommonFeaturesAdapter.adaptToDataRecords(nonMLCommonFeatures).asScala.head - - /** - * Steps of scribing common features - * (1) fetch common features as data record - * (2) extract additional feature as data record, e.g. predictionRequestId which is used as join key in downstream jobs - * (3) merge two data records above and convert the merged data record to pldr - * (4) publish pldr - */ - val commonFeaturesDataRecordOpt = - inputs.selectedCandidates.headOption.map(_.features.get(CommonFeaturesDataRecordFeature)) - val commonFeaturesPLDROpt = commonFeaturesDataRecordOpt.flatMap { commonFeaturesDataRecord => - drMerger.merge(commonFeaturesDataRecord, nonMLCommonFeaturesDataRecord) - - CandidateAndCommonFeaturesStreamingUtils.commonFeaturesToPolyDataRecord( - versionedMetadataCacheClientOpt = versionedMetadataCacheClientOpt, - commonFeatures = commonFeaturesDataRecord, - valueFormat = pldr.PolyDataRecord._Fields.LITE_COMPACT_DATA_RECORD - ) - } - - commonFeaturesPLDROptionObserver(commonFeaturesPLDROpt).foreach { pldr => - commonFeaturesScribeEventPublisher.publish(pldr) - commonFeaturesScribeCounter.incr() - } - - /** - * steps of scribing candidate features - * (1) fetch candidate features as data record - * (2) extract additional features (mostly non ML features including predicted scores, predictionRequestId, userId, tweetId) - * (3) merge data records and convert the merged data record into pldr - * (4) publish pldr - */ - inputs.selectedCandidates.foreach { candidate => - val candidateFeaturesDataRecord = candidate.features.get(CandidateFeaturesDataRecordFeature) - - /** - * extract predicted scores as data record and merge it into original data record - */ - val postScoringCandidateFeaturesDataRecord = - postScoringCandidateFeaturesDataRecordAdapter.toDataRecord(candidate.features) - drMerger.merge(candidateFeaturesDataRecord, postScoringCandidateFeaturesDataRecord) - - /** - * extract non ML common features as data record and merge it into original data record - */ - drMerger.merge(candidateFeaturesDataRecord, nonMLCommonFeaturesDataRecord) - - /** - * extract non ML candidate features as data record and merge it into original data record - */ - val nonMLCandidateFeatures = NonMLCandidateFeatures( - tweetId = candidate.candidateIdLong, - sourceTweetId = candidate.features.getOrElse(SourceTweetIdFeature, None), - originalAuthorId = getOriginalAuthorId(candidate.features) - ) - val nonMLCandidateFeaturesDataRecord = - NonMLCandidateFeaturesAdapter.adaptToDataRecords(nonMLCandidateFeatures).asScala.head - drMerger.merge(candidateFeaturesDataRecord, nonMLCandidateFeaturesDataRecord) - - val candidateFeaturesPLDROpt = - CandidateAndCommonFeaturesStreamingUtils.candidateFeaturesToPolyDataRecord( - versionedMetadataCacheClientOpt = versionedMetadataCacheClientOpt, - candidateFeatures = candidateFeaturesDataRecord, - valueFormat = pldr.PolyDataRecord._Fields.LITE_COMPACT_DATA_RECORD - ) - - candidateFeaturesPLDROptionObserver(candidateFeaturesPLDROpt).foreach { pldr => - candidateFeaturesScribeEventPublisher.publish(pldr) - candidateFeaturesScribeCounter.incr() - } - - // scribe minimum features which are used to join labels from client events. - val minimumFeaturesPLDROpt = candidateFeaturesPLDROpt - .map(CandidateAndCommonFeaturesStreamingUtils.extractMinimumFeaturesFromPldr) - .map(pldr.PolyDataRecord.dataRecord) - minimumFeaturesPLDROptionObserver(minimumFeaturesPLDROpt).foreach { pldr => - minimumFeaturesScribeEventPublisher.publish(pldr) - minimumFeaturesScribeCounter.incr() - } - } - } - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/BUILD.bazel deleted file mode 100644 index c1b5032db..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/BUILD.bazel +++ /dev/null @@ -1,82 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/javax/inject:javax.inject", - "ads-injection/lib/src/main/scala/com/twitter/goldfinch/api", - "finagle/finagle-memcached/src/main/scala", - "finatra/inject/inject-core/src/main/scala", - "finatra/inject/inject-core/src/main/scala/com/twitter/inject", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/candidate_pipeline", - "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", - "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/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/selector", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/functional_component/side_effect", - "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/product/following/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/model", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/service", - "home-mixer/server/src/main/scala/com/twitter/home_mixer/util", - "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/feature_hydrator/candidate/param_gated", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/feature_hydrator/query/async", - "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/feature_hydrator/query/param_gated", - "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/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/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/premarshaller/urt", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/selector", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/side_effect", - "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/configapi", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/decorator", - "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/model/common/presentation", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/marshalling/request", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/marshalling/response/urt", - "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/candidate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer", - "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", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice", - "src/java/com/twitter/search/common/schema/base", - "src/java/com/twitter/search/common/schema/earlybird", - "src/java/com/twitter/search/common/util/lang", - "src/java/com/twitter/search/queryparser/query:core-query-nodes", - "src/java/com/twitter/search/queryparser/query/search:search-query-nodes", - "src/thrift/com/twitter/search:earlybird-scala", - "src/thrift/com/twitter/search/common:constants-java", - "src/thrift/com/twitter/tweetypie:service-scala", - "stitch/stitch-gizmoduck", - "stitch/stitch-tweetypie", - "stringcenter/client", - "stringcenter/client/src/main/java", - "timelinemixer/common/src/main/scala/com/twitter/timelinemixer/clients/manhattan", - "timelinemixer/server/src/main/scala/com/twitter/timelinemixer/injection/model/candidate", - "timelinemixer/server/src/main/scala/com/twitter/timelinemixer/injection/store/persistence", - "timelines/src/main/scala/com/twitter/timelines/clients/relevance_search", - "timelines/src/main/scala/com/twitter/timelines/injection/scribe", - ], - exports = [ - "home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param", - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/decorator/urt", - "src/thrift/com/twitter/timelines/render:thrift-scala", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..df24109acf1aee32e2079aa9a0ae34aa8d513cea GIT binary patch literal 37585 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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/product/subscribed/SubscribedEarlybirdCandidatePipelineConfig.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdCandidatePipelineConfig.docx new file mode 100644 index 0000000000000000000000000000000000000000..134725c98cb54889971d5598a78b58a84995a867 GIT binary patch literal 37478 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

N+pM2;Fp1q~ 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%0A}iOo!mNF*r6F2~xoxB2iIo{-pKJofU-7&akwj&j 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

Xx~!?)s8j|gKh%)L t} -import com.twitter.spam.rtf.thriftscala.SafetyLevel.TimelineHomeSubscribed -import com.twitter.stitch.tweetypie.{TweetyPie => TweetypieStitchClient} -import com.twitter.tweetypie.thriftscala.TweetVisibilityPolicy - -class SubscribedEarlybirdCandidatePipelineConfig @Inject() ( - earlybirdCandidateSource: EarlybirdCandidateSource, - tweetyPieStitchClient: TweetypieStitchClient, - subscribedEarlybirdQueryTransformer: SubscribedEarlybirdQueryTransformer) - extends CandidatePipelineConfig[ - SubscribedQuery, - t.EarlybirdRequest, - t.ThriftSearchResult, - TweetCandidate - ] { - override val identifier: CandidatePipelineIdentifier = - CandidatePipelineIdentifier("SubscribedEarlybird") - - override val candidateSource: BaseCandidateSource[t.EarlybirdRequest, t.ThriftSearchResult] = - earlybirdCandidateSource - - override val gates: Seq[Gate[SubscribedQuery]] = Seq( - NonEmptySeqFeatureGate(SGSSubscribedUsersFeature) - ) - - override def filters: Seq[Filter[SubscribedQuery, TweetCandidate]] = Seq( - new TweetVisibilityFilter( - tweetyPieStitchClient, - TweetVisibilityPolicy.UserVisible, - TimelineHomeSubscribed - ) - ) - - override val queryTransformer: CandidatePipelineQueryTransformer[ - SubscribedQuery, - t.EarlybirdRequest - ] = subscribedEarlybirdQueryTransformer - - override val featuresFromCandidateSourceTransformers: Seq[ - CandidateFeatureTransformer[t.ThriftSearchResult] - ] = Seq(SubscribedEarlybirdResponseFeatureTransformer) - - override val resultTransformer: CandidatePipelineResultsTransformer[ - t.ThriftSearchResult, - TweetCandidate - ] = { sourceResult => TweetCandidate(id = sourceResult.id) } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdQueryTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdQueryTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..e2d61afbdb0e339310bd9c7b53aa890f15c875e7 GIT binary patch literal 37804 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 t} -import com.twitter.search.queryparser.query.Conjunction -import com.twitter.search.queryparser.query.search.SearchOperator -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -case class SubscribedEarlybirdQueryTransformer @Inject() (clientId: ClientId) - extends CandidatePipelineQueryTransformer[SubscribedQuery, t.EarlybirdRequest] { - - override def transform(query: SubscribedQuery): t.EarlybirdRequest = { - val subscribedUserIds = - query.features.map(_.get(SGSSubscribedUsersFeature)).getOrElse(Seq.empty) - - val subscribedUsersQuery = new SearchOperator.Builder() - .setType(SearchOperator.Type.FILTER) - .addOperand(EarlybirdFieldConstant.EXCLUSIVE_FILTER_TERM) - .build() - - val searchQuery = query.pipelineCursor - .map { cursor => - val sinceIdQuery = - (id: Long) => new SearchOperator(SearchOperator.Type.SINCE_ID, id.toString) - val maxIdQuery = // max ID is inclusive, so subtract 1 - (id: Long) => new SearchOperator(SearchOperator.Type.MAX_ID, (id - 1).toString) - - (cursor.cursorType, cursor.id, cursor.gapBoundaryId) match { - case (Some(TopCursor), Some(sinceId), _) => - new Conjunction(sinceIdQuery(sinceId), subscribedUsersQuery) - case (Some(BottomCursor), Some(maxId), _) => - new Conjunction(maxIdQuery(maxId), subscribedUsersQuery) - case (Some(GapCursor), Some(maxId), Some(sinceId)) => - new Conjunction(sinceIdQuery(sinceId), maxIdQuery(maxId), subscribedUsersQuery) - case (Some(GapCursor), _, _) => - throw PipelineFailure(MalformedCursor, "Invalid cursor " + cursor.toString) - case _ => subscribedUsersQuery - } - }.getOrElse(subscribedUsersQuery) - - t.EarlybirdRequest( - searchQuery = t.ThriftSearchQuery( - serializedQuery = Some(searchQuery.serialize), - fromUserIDFilter64 = Some(subscribedUserIds), - numResults = query.requestedMaxResults.getOrElse(query.params(ServerMaxResultsParam)), - rankingMode = t.ThriftSearchRankingMode.Recency, - ), - getOlderResults = Some(true), // needed for archive access to older tweets - clientRequestID = Some(s"${Trace.id.traceId}"), - numResultsToReturnAtRoot = Some(query.params(ServerMaxResultsParam)), - clientId = Some(clientId.name), - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdResponseFeatureTransformer.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdResponseFeatureTransformer.docx new file mode 100644 index 0000000000000000000000000000000000000000..ab4a0526f01f94a8212770241c42a01770b0ca58 GIT binary patch literal 37176 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdResponseFeatureTransformer.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdResponseFeatureTransformer.scala deleted file mode 100644 index a8136102c..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedEarlybirdResponseFeatureTransformer.scala +++ /dev/null @@ -1,38 +0,0 @@ -package com.twitter.home_mixer.product.subscribed - -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.search.earlybird.{thriftscala => t} - -object SubscribedEarlybirdResponseFeatureTransformer - extends CandidateFeatureTransformer[t.ThriftSearchResult] { - - override val identifier: TransformerIdentifier = - TransformerIdentifier("SubscribedEarlybirdResponse") - - override val features: Set[Feature[_, _]] = Set( - AuthorIdFeature, - InReplyToTweetIdFeature, - IsRetweetFeature, - SourceTweetIdFeature, - SourceUserIdFeature, - ) - - override def transform(candidate: t.ThriftSearchResult): FeatureMap = FeatureMapBuilder() - .add(AuthorIdFeature, candidate.tweetypieTweet.flatMap(_.coreData.map(_.userId))) - .add( - InReplyToTweetIdFeature, - candidate.tweetypieTweet.flatMap(_.coreData.flatMap(_.reply.flatMap(_.inReplyToStatusId)))) - .add(IsRetweetFeature, candidate.metadata.exists(_.isRetweet.contains(true))) - .add(SourceTweetIdFeature, candidate.sourceTweetypieTweet.map(_.id)) - .add(SourceUserIdFeature, candidate.sourceTweetypieTweet.flatMap(_.coreData.map(_.userId))) - .build() -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedMixerPipelineConfig.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedMixerPipelineConfig.docx new file mode 100644 index 0000000000000000000000000000000000000000..3e04859ca014786e2e8e43fa5c9cdbf933d98b43 GIT binary patch literal 39301 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 yvQSE`U6$LizrC_Ycv0dh ca} -import com.twitter.home_mixer.candidate_pipeline.ConversationServiceCandidatePipelineConfigBuilder -import com.twitter.home_mixer.candidate_pipeline.EditedTweetsCandidatePipelineConfig -import com.twitter.home_mixer.candidate_pipeline.NewTweetsPillCandidatePipelineConfig -import com.twitter.home_mixer.functional_component.decorator.HomeConversationServiceCandidateDecorator -import com.twitter.home_mixer.functional_component.decorator.urt.builder.HomeFeedbackActionInfoBuilder -import com.twitter.home_mixer.functional_component.feature_hydrator._ -import com.twitter.home_mixer.functional_component.selector.UpdateHomeClientEventDetails -import com.twitter.home_mixer.functional_component.selector.UpdateNewTweetsPillDecoration -import com.twitter.home_mixer.functional_component.side_effect._ -import com.twitter.home_mixer.model.GapIncludeInstruction -import com.twitter.home_mixer.param.HomeGlobalParams.MaxNumberReplaceInstructionsParam -import com.twitter.home_mixer.param.HomeMixerFlagName.ScribeClientEventsFlag -import com.twitter.home_mixer.product.following.model.HomeMixerExternalStrings -import com.twitter.home_mixer.product.subscribed.model.SubscribedQuery -import com.twitter.home_mixer.product.subscribed.param.SubscribedParam.ServerMaxResultsParam -import com.twitter.home_mixer.util.CandidatesUtil -import com.twitter.inject.annotations.Flag -import com.twitter.logpipeline.client.common.EventPublisher -import com.twitter.product_mixer.component_library.feature_hydrator.query.async.AsyncQueryFeatureHydrator -import com.twitter.product_mixer.component_library.feature_hydrator.query.impressed_tweets.ImpressedTweetsQueryFeatureHydrator -import com.twitter.product_mixer.component_library.feature_hydrator.query.social_graph.SGSFollowedUsersQueryFeatureHydrator -import com.twitter.product_mixer.component_library.feature_hydrator.query.social_graph.SGSSubscribedUsersQueryFeatureHydrator -import com.twitter.product_mixer.component_library.gate.NonEmptyCandidatesGate -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.component_library.premarshaller.urt.UrtDomainMarshaller -import com.twitter.product_mixer.component_library.premarshaller.urt.builder.AddEntriesWithReplaceAndShowAlertInstructionBuilder -import com.twitter.product_mixer.component_library.premarshaller.urt.builder.OrderedBottomCursorBuilder -import com.twitter.product_mixer.component_library.premarshaller.urt.builder.OrderedGapCursorBuilder -import com.twitter.product_mixer.component_library.premarshaller.urt.builder.OrderedTopCursorBuilder -import com.twitter.product_mixer.component_library.premarshaller.urt.builder.ReplaceAllEntries -import com.twitter.product_mixer.component_library.premarshaller.urt.builder.ReplaceEntryInstructionBuilder -import com.twitter.product_mixer.component_library.premarshaller.urt.builder.ShowAlertInstructionBuilder -import com.twitter.product_mixer.component_library.premarshaller.urt.builder.StaticTimelineScribeConfigBuilder -import com.twitter.product_mixer.component_library.premarshaller.urt.builder.UrtMetadataBuilder -import com.twitter.product_mixer.component_library.selector.DropMaxCandidates -import com.twitter.product_mixer.component_library.selector.InsertAppendResults -import com.twitter.product_mixer.component_library.selector.SelectConditionally -import com.twitter.product_mixer.component_library.selector.UpdateSortCandidates -import com.twitter.product_mixer.core.functional_component.common.SpecificPipeline -import com.twitter.product_mixer.core.functional_component.common.SpecificPipelines -import com.twitter.product_mixer.core.functional_component.feature_hydrator.QueryFeatureHydrator -import com.twitter.product_mixer.core.functional_component.marshaller.TransportMarshaller -import com.twitter.product_mixer.core.functional_component.marshaller.response.urt.UrtTransportMarshaller -import com.twitter.product_mixer.core.functional_component.premarshaller.DomainMarshaller -import com.twitter.product_mixer.core.functional_component.selector.Selector -import com.twitter.product_mixer.core.functional_component.side_effect.PipelineResultSideEffect -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.MixerPipelineIdentifier -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.TimelineScribeConfig -import com.twitter.product_mixer.core.model.marshalling.response.urt.item.tweet.TweetItem -import com.twitter.product_mixer.core.pipeline.FailOpenPolicy -import com.twitter.product_mixer.core.pipeline.candidate.CandidatePipelineConfig -import com.twitter.product_mixer.core.pipeline.candidate.DependentCandidatePipelineConfig -import com.twitter.product_mixer.core.pipeline.mixer.MixerPipelineConfig -import com.twitter.product_mixer.core.product.guice.scope.ProductScoped -import com.twitter.stringcenter.client.StringCenter -import com.twitter.timelines.render.{thriftscala => urt} -import javax.inject.Inject -import javax.inject.Provider -import javax.inject.Singleton - -@Singleton -class SubscribedMixerPipelineConfig @Inject() ( - subscribedEarlybirdCandidatePipelineConfig: SubscribedEarlybirdCandidatePipelineConfig, - conversationServiceCandidatePipelineConfigBuilder: ConversationServiceCandidatePipelineConfigBuilder[ - SubscribedQuery - ], - homeFeedbackActionInfoBuilder: HomeFeedbackActionInfoBuilder, - editedTweetsCandidatePipelineConfig: EditedTweetsCandidatePipelineConfig, - newTweetsPillCandidatePipelineConfig: NewTweetsPillCandidatePipelineConfig[SubscribedQuery], - dismissInfoQueryFeatureHydrator: DismissInfoQueryFeatureHydrator, - gizmoduckUserQueryFeatureHydrator: GizmoduckUserQueryFeatureHydrator, - requestQueryFeatureHydrator: RequestQueryFeatureHydrator[SubscribedQuery], - sgsFollowedUsersQueryFeatureHydrator: SGSFollowedUsersQueryFeatureHydrator, - sgsSubscribedUsersQueryFeatureHydrator: SGSSubscribedUsersQueryFeatureHydrator, - manhattanTweetImpressionsQueryFeatureHydrator: TweetImpressionsQueryFeatureHydrator[ - SubscribedQuery - ], - memcacheTweetImpressionsQueryFeatureHydrator: ImpressedTweetsQueryFeatureHydrator, - publishClientSentImpressionsEventBusSideEffect: PublishClientSentImpressionsEventBusSideEffect, - publishClientSentImpressionsManhattanSideEffect: PublishClientSentImpressionsManhattanSideEffect, - homeTimelineServedCandidatesSideEffect: HomeScribeServedCandidatesSideEffect, - clientEventsScribeEventPublisher: EventPublisher[ca.LogEvent], - externalStrings: HomeMixerExternalStrings, - @ProductScoped stringCenterProvider: Provider[StringCenter], - urtTransportMarshaller: UrtTransportMarshaller, - @Flag(ScribeClientEventsFlag) enableScribeClientEvents: Boolean) - extends MixerPipelineConfig[SubscribedQuery, Timeline, urt.TimelineResponse] { - - override val identifier: MixerPipelineIdentifier = MixerPipelineIdentifier("Subscribed") - - private val dependentCandidatesStep = MixerPipelineConfig.dependentCandidatePipelinesStep - private val resultSelectorsStep = MixerPipelineConfig.resultSelectorsStep - - override val fetchQueryFeatures: Seq[QueryFeatureHydrator[SubscribedQuery]] = Seq( - requestQueryFeatureHydrator, - sgsFollowedUsersQueryFeatureHydrator, - sgsSubscribedUsersQueryFeatureHydrator, - AsyncQueryFeatureHydrator(dependentCandidatesStep, dismissInfoQueryFeatureHydrator), - AsyncQueryFeatureHydrator(dependentCandidatesStep, gizmoduckUserQueryFeatureHydrator), - AsyncQueryFeatureHydrator(resultSelectorsStep, manhattanTweetImpressionsQueryFeatureHydrator), - AsyncQueryFeatureHydrator(resultSelectorsStep, memcacheTweetImpressionsQueryFeatureHydrator) - ) - - private val earlybirdCandidatePipelineScope = - SpecificPipeline(subscribedEarlybirdCandidatePipelineConfig.identifier) - - private val conversationServiceCandidatePipelineConfig = - conversationServiceCandidatePipelineConfigBuilder.build( - Seq(NonEmptyCandidatesGate(earlybirdCandidatePipelineScope)), - HomeConversationServiceCandidateDecorator(homeFeedbackActionInfoBuilder) - ) - - override val candidatePipelines: Seq[CandidatePipelineConfig[SubscribedQuery, _, _, _]] = - Seq(subscribedEarlybirdCandidatePipelineConfig) - - override val dependentCandidatePipelines: Seq[ - DependentCandidatePipelineConfig[SubscribedQuery, _, _, _] - ] = Seq( - conversationServiceCandidatePipelineConfig, - editedTweetsCandidatePipelineConfig, - newTweetsPillCandidatePipelineConfig - ) - - override val failOpenPolicies: Map[CandidatePipelineIdentifier, FailOpenPolicy] = Map( - editedTweetsCandidatePipelineConfig.identifier -> FailOpenPolicy.Always, - newTweetsPillCandidatePipelineConfig.identifier -> FailOpenPolicy.Always, - ) - - override val resultSelectors: Seq[Selector[SubscribedQuery]] = Seq( - UpdateSortCandidates( - ordering = CandidatesUtil.reverseChronTweetsOrdering, - candidatePipeline = conversationServiceCandidatePipelineConfig.identifier - ), - DropMaxCandidates( - candidatePipeline = editedTweetsCandidatePipelineConfig.identifier, - maxSelectionsParam = MaxNumberReplaceInstructionsParam - ), - DropMaxCandidates( - candidatePipeline = conversationServiceCandidatePipelineConfig.identifier, - maxSelectionsParam = ServerMaxResultsParam - ), - InsertAppendResults(candidatePipeline = conversationServiceCandidatePipelineConfig.identifier), - // This selector must come after the tweets are inserted into the results - UpdateNewTweetsPillDecoration( - pipelineScope = SpecificPipelines( - conversationServiceCandidatePipelineConfig.identifier, - newTweetsPillCandidatePipelineConfig.identifier - ), - stringCenter = stringCenterProvider.get(), - seeNewTweetsString = externalStrings.seeNewTweetsString, - tweetedString = externalStrings.tweetedString - ), - InsertAppendResults(candidatePipeline = editedTweetsCandidatePipelineConfig.identifier), - SelectConditionally( - selector = - InsertAppendResults(candidatePipeline = newTweetsPillCandidatePipelineConfig.identifier), - includeSelector = (_, _, results) => CandidatesUtil.containsType[TweetCandidate](results) - ), - UpdateHomeClientEventDetails( - candidatePipelines = Set(conversationServiceCandidatePipelineConfig.identifier) - ), - ) - - private val homeScribeClientEventSideEffect = HomeScribeClientEventSideEffect( - enableScribeClientEvents = enableScribeClientEvents, - logPipelinePublisher = clientEventsScribeEventPublisher, - injectedTweetsCandidatePipelineIdentifiers = - Seq(conversationServiceCandidatePipelineConfig.identifier), - ) - - override val resultSideEffects: Seq[PipelineResultSideEffect[SubscribedQuery, Timeline]] = Seq( - homeScribeClientEventSideEffect, - homeTimelineServedCandidatesSideEffect, - publishClientSentImpressionsEventBusSideEffect, - publishClientSentImpressionsManhattanSideEffect - ) - - override val domainMarshaller: DomainMarshaller[SubscribedQuery, Timeline] = { - val instructionBuilders = Seq( - ReplaceEntryInstructionBuilder(ReplaceAllEntries), - AddEntriesWithReplaceAndShowAlertInstructionBuilder(), - ShowAlertInstructionBuilder(), - ) - - val idSelector: PartialFunction[UniversalNoun[_], Long] = { - // exclude ads while determining tweet cursor values - case item: TweetItem if item.promotedMetadata.isEmpty => item.id - case module: TimelineModule - if module.items.headOption.exists(_.item.isInstanceOf[TweetItem]) => - module.items.last.item match { case item: TweetItem => item.id } - } - - val topCursorBuilder = OrderedTopCursorBuilder(idSelector) - val bottomCursorBuilder = - OrderedBottomCursorBuilder(idSelector, GapIncludeInstruction.inverse()) - val gapCursorBuilder = OrderedGapCursorBuilder(idSelector, GapIncludeInstruction) - - val metadataBuilder = UrtMetadataBuilder( - title = None, - scribeConfigBuilder = Some( - StaticTimelineScribeConfigBuilder( - TimelineScribeConfig(page = Some("subscribed"), section = None, entityToken = None))) - ) - - UrtDomainMarshaller( - instructionBuilders = instructionBuilders, - metadataBuilder = Some(metadataBuilder), - cursorBuilders = Seq(topCursorBuilder, bottomCursorBuilder, gapCursorBuilder) - ) - } - - override val transportMarshaller: TransportMarshaller[Timeline, urt.TimelineResponse] = - urtTransportMarshaller -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedProductPipelineConfig.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/SubscribedProductPipelineConfig.docx new file mode 100644 index 0000000000000000000000000000000000000000..eafb106a033b800bdaf0e84ed1f243131605d644 GIT binary patch literal 38343 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 urt} -import com.twitter.timelines.util.RequestCursorSerializer -import com.twitter.util.Time -import com.twitter.util.Try -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class SubscribedProductPipelineConfig @Inject() ( - subscribedMixerPipelineConfig: SubscribedMixerPipelineConfig, - subscribedParamConfig: param.SubscribedParamConfig) - extends ProductPipelineConfig[HomeMixerRequest, SubscribedQuery, urt.TimelineResponse] { - - override val identifier: ProductPipelineIdentifier = ProductPipelineIdentifier("Subscribed") - - override val product: Product = SubscribedProduct - override val paramConfig: ProductParamConfig = subscribedParamConfig - - override def pipelineQueryTransformer( - request: HomeMixerRequest, - params: Params - ): SubscribedQuery = { - val context = request.productContext match { - case Some(context: SubscribedProductContext) => context - case _ => throw PipelineFailure(BadRequest, "SubscribedProductContext not found") - } - - val debugOptions = request.debugParams.flatMap(_.debugOptions) - - /** - * Unlike other clients, newly created tweets on Android have the sort index set to the current - * time instead of the top sort index + 1, so these tweets get stuck at the top of the timeline - * if subsequent timeline responses use the sort index from the previous response instead of - * the current time. - */ - val pipelineCursor = request.serializedRequestCursor.flatMap { cursor => - Try(UrtCursorSerializer.deserializeOrderedCursor(cursor)) - .getOrElse(ChronologicalCursorUnmarshaller(RequestCursorSerializer.deserialize(cursor))) - .map { - case UrtOrderedCursor(_, id, Some(GapCursor), gapBoundaryId) - if id.isEmpty || gapBoundaryId.isEmpty => - throw PipelineFailure(MalformedCursor, "Gap Cursor bounds not defined") - case topCursor @ UrtOrderedCursor(_, _, Some(TopCursor), _) => - val queryTime = debugOptions.flatMap(_.requestTimeOverride).getOrElse(Time.now) - topCursor.copy(initialSortIndex = SortIndexBuilder.timeToId(queryTime)) - case cursor => cursor - } - } - - SubscribedQuery( - params = params, - clientContext = request.clientContext, - features = None, - pipelineCursor = pipelineCursor, - requestedMaxResults = Some(params(ServerMaxResultsParam)), - debugOptions = debugOptions, - deviceContext = context.deviceContext, - seenTweetIds = context.seenTweetIds - ) - } - - override val pipelines: Seq[PipelineConfig] = Seq(subscribedMixerPipelineConfig) - - override def pipelineSelector( - query: SubscribedQuery - ): ComponentIdentifier = subscribedMixerPipelineConfig.identifier - - override val alerts: Seq[Alert] = Seq( - SuccessRateAlert( - notificationGroup = DefaultNotificationGroup, - warnPredicate = TriggerIfBelow(99.9, 20, 30), - criticalPredicate = TriggerIfBelow(99.9, 30, 30), - ), - LatencyAlert( - notificationGroup = DefaultNotificationGroup, - percentile = P99, - warnPredicate = TriggerIfLatencyAbove(1100.millis, 15, 30), - criticalPredicate = TriggerIfLatencyAbove(1200.millis, 15, 30) - ), - ThroughputAlert( - notificationGroup = DefaultNotificationGroup, - warnPredicate = TriggerIfAbove(18000), - criticalPredicate = TriggerIfAbove(20000) - ) - ) - - override val debugAccessPolicies: Set[AccessPolicy] = DefaultHomeMixerAccessPolicy -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/model/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/model/BUILD.bazel deleted file mode 100644 index b821a8f8d..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/model/BUILD.bazel +++ /dev/null @@ -1,20 +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/product/subscribed/param", - "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/pipeline/candidate/flexible_injection_pipeline", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "stringcenter/client", - "stringcenter/client/src/main/java", - ], - exports = [ - "product-mixer/component-library/src/main/scala/com/twitter/product_mixer/component_library/model/cursor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/model/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/model/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..6da0329ba64d875e645c9f6fa0f060903db6d206 GIT binary patch literal 36934 zcmagEWmp}_wm*z(a1HM6?hb+A?ruRh5*#)j+yex6cbAR36N0-1NFccTe`jXSIWy

|2fEge4^ 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 Y)Yf5uH!Cm)fpV1~Ln1JHobLwl08#4y5C8xG literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/model/SubscribedQuery.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/model/SubscribedQuery.docx new file mode 100644 index 0000000000000000000000000000000000000000..011227875b9da7c59d3909682cf01dec042ff509 GIT binary patch literal 37088 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/HomeMixerAlertConfig.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/HomeMixerAlertConfig.scala deleted file mode 100644 index 597fd4d36..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/HomeMixerAlertConfig.scala +++ /dev/null @@ -1,66 +0,0 @@ -package com.twitter.home_mixer.service - -import com.twitter.conversions.DurationOps._ -import com.twitter.product_mixer.core.functional_component.common.alert.Destination -import com.twitter.product_mixer.core.functional_component.common.alert.EmptyResponseRateAlert -import com.twitter.product_mixer.core.functional_component.common.alert.LatencyAlert -import com.twitter.product_mixer.core.functional_component.common.alert.NotificationGroup -import com.twitter.product_mixer.core.functional_component.common.alert.P99 -import com.twitter.product_mixer.core.functional_component.common.alert.Percentile -import com.twitter.product_mixer.core.functional_component.common.alert.SuccessRateAlert -import com.twitter.product_mixer.core.functional_component.common.alert.predicate.TriggerIfAbove -import com.twitter.product_mixer.core.functional_component.common.alert.predicate.TriggerIfBelow -import com.twitter.product_mixer.core.functional_component.common.alert.predicate.TriggerIfLatencyAbove -import com.twitter.util.Duration - -/** - * Notifications (email, pagerduty, etc) can be specific per-alert but it is common for multiple - * products to share notification configuration. - */ -object HomeMixerAlertConfig { - val DefaultNotificationGroup: NotificationGroup = NotificationGroup( - warn = Destination(emails = Seq("")), - critical = Destination(emails = Seq("")) - ) - - object BusinessHours { - val DefaultNotificationGroup: NotificationGroup = NotificationGroup( - warn = Destination(emails = Seq("")), - critical = Destination(emails = - Seq("")) - ) - - def defaultEmptyResponseRateAlert(warnThreshold: Double = 50, criticalThreshold: Double = 80) = - EmptyResponseRateAlert( - notificationGroup = DefaultNotificationGroup, - warnPredicate = TriggerIfAbove(warnThreshold), - criticalPredicate = TriggerIfAbove(criticalThreshold) - ) - - def defaultSuccessRateAlert( - threshold: Double = 99.5, - warnDatapointsPastThreshold: Int = 20, - criticalDatapointsPastThreshold: Int = 30, - duration: Int = 30 - ) = SuccessRateAlert( - notificationGroup = DefaultNotificationGroup, - warnPredicate = TriggerIfBelow(threshold, warnDatapointsPastThreshold, duration), - criticalPredicate = TriggerIfBelow(threshold, criticalDatapointsPastThreshold, duration), - ) - - def defaultLatencyAlert( - latencyThreshold: Duration = 200.millis, - warningDatapointsPastThreshold: Int = 15, - criticalDatapointsPastThreshold: Int = 30, - duration: Int = 30, - percentile: Percentile = P99 - ): LatencyAlert = LatencyAlert( - notificationGroup = DefaultNotificationGroup, - percentile = percentile, - warnPredicate = - TriggerIfLatencyAbove(latencyThreshold, warningDatapointsPastThreshold, duration), - criticalPredicate = - TriggerIfLatencyAbove(latencyThreshold, criticalDatapointsPastThreshold, duration) - ) - } -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/ScoredTweetsService.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/ScoredTweetsService.docx new file mode 100644 index 0000000000000000000000000000000000000000..5194c08e99f5241aa448f35f1b944b74eb15e2ad GIT binary patch literal 37029 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%0Dyt%CJnzvHT6HDR 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 W7~stc%t4@BCCHEn%pQ6@ARYif#~Kj; literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/ScoredTweetsService.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/ScoredTweetsService.scala deleted file mode 100644 index 158e5ee45..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/ScoredTweetsService.scala +++ /dev/null @@ -1,24 +0,0 @@ -package com.twitter.home_mixer.service - -import com.twitter.home_mixer.{thriftscala => t} -import com.twitter.product_mixer.core.model.marshalling.request.Request -import com.twitter.product_mixer.core.pipeline.product.ProductPipelineRequest -import com.twitter.product_mixer.core.product.registry.ProductPipelineRegistry -import com.twitter.stitch.Stitch -import com.twitter.timelines.configapi.Params -import javax.inject.Inject -import javax.inject.Singleton -import scala.reflect.runtime.universe._ - -@Singleton -class ScoredTweetsService @Inject() (productPipelineRegistry: ProductPipelineRegistry) { - - def getScoredTweetsResponse[RequestType <: Request]( - request: RequestType, - params: Params - )( - implicit requestTypeTag: TypeTag[RequestType] - ): Stitch[t.ScoredTweetsResponse] = productPipelineRegistry - .getProductPipeline[RequestType, t.ScoredTweetsResponse](request.product) - .process(ProductPipelineRequest(request, params)) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/store/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/store/BUILD.bazel deleted file mode 100644 index c4855d9e7..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/store/BUILD.bazel +++ /dev/null @@ -1,13 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/com/twitter/bijection:scrooge", - "3rdparty/jvm/com/twitter/storehaus:core", - "src/thrift/com/twitter/wtf/candidate:wtf-candidate-scala", - "stitch/stitch-core", - "storage/clients/manhattan/client/src/main/scala", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/store/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/store/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..f5ee9965e3c68a82627d6ef083ba236a0be19ad0 GIT binary patch literal 36863 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

VlSskQj<9M)|zfGP8(bfJz8nz1Z*55 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�~7+HsY>G> z!5i3~#KX72ynDtMEDje=ub1F&VJ9dma@h^k35{hkq*Hh-HPA=ZzBa!X=*#7trK}5m zu(9+Ol?j=nW`p!_)+o4L3xg0K60L14unmIu_XT;A!t07L7CuSE$F8%Na?&ci*~2pF6e$RD;?4lpts+PWx1i zFkzQ-+>LL;_w>|$bt?Sm3r=E*_Rt!un$;HOI8gc-@fizSH)=~B;RC0si&C>H!eXvt zlcO5tkX&xs8tk*_hjCUOs_N>KAFKMYp;`tZZts@hX1oMn}0eJ5m^+~6dhf}c+tO;gD)B6XG@TyX|T)~;k*EyuGmoVG;n$Fv5`ru7c zW$G%dRg@J;5zvcWdu<2Bo!O|wDio%3&PT&tFE*whL3K~xfAEudzG(0E(I3fZW``NZ{#{ZnY z?EMKa*g@;sIA{tZ1g&d-OkaQQ%Kkoy{kcQ?BBmU~iud{K6`?OA5v#~P^4+gI>UMhR z>O!9o>6L_AiM>tzbu&hZoq*jtZr^MgyV=QG^@R-qJcb6jK;9?_RIJ$$6>|(hOVpI( zo_ZNgF`G(Kc>bDR?#?AaamAUF+N4hv2XbE&pAl+XsRrs0C>wL_MO(3}q6-eC)e}C~ z@#sP5O3oyF{Sca+<>J*&elc0qa@kp7vn8^g=G?obRIe4-hYnS{G;d-^!9``Vb9V6U z=H86Z?*-Nf!J=WFP@-rr;91ci8p9Y$>n;PbpX1)dYHZhH!4yo=y;~whg1xXNLwy_a zvX~=MjF+k|O+DBqg#z^S zk+>sW=iA+#mv8+1!!9luYA@Fx3-NC7T^krQF8J5bpJtU%HH<)>Tz@V%lPqSgXfwpPq7F|MQ=~1@@KxVsJgdn zt9m`}r}@=!FZT$MHwPU+Kl)w!?$!Q{$GemAkx#~Vp~Z{+z(!%>eoNqT*08s(z1!l4 z&q^P1QYMdTL{3FAUvY#LoZerkY!8P9-5ay4K7mBJZ~ASVppFlpJg)oletQuSpA

m#`3`clt*attA6QoCx?uOo^&QB`EFPFBai=_9Z} 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∋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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParam.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParam.docx new file mode 100644 index 0000000000000000000000000000000000000000..4b6818b42f2490f3d132328dd708e090305fe85f GIT binary patch literal 36859 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParam.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParam.scala deleted file mode 100644 index 9e4ade43a..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParam.scala +++ /dev/null @@ -1,15 +0,0 @@ -package com.twitter.home_mixer.product.subscribed.param - -import com.twitter.timelines.configapi.FSBoundedParam - -object SubscribedParam { - val SupportedClientFSName = "subscribed_supported_client" - - object ServerMaxResultsParam - extends FSBoundedParam[Int]( - name = "subscribed_server_max_results", - default = 100, - min = 1, - max = 500 - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParamConfig.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParamConfig.docx new file mode 100644 index 0000000000000000000000000000000000000000..9b13f70b2ce84b33725f5d05467ec69f16c16c8f GIT binary patch literal 36925 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParamConfig.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParamConfig.scala deleted file mode 100644 index 58ce7ec35..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/subscribed/param/SubscribedParamConfig.scala +++ /dev/null @@ -1,18 +0,0 @@ -package com.twitter.home_mixer.product.subscribed.param - -import com.twitter.home_mixer.param.decider.DeciderKey -import com.twitter.home_mixer.product.subscribed.param.SubscribedParam._ -import com.twitter.product_mixer.core.product.ProductParamConfig -import com.twitter.servo.decider.DeciderKeyName -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class SubscribedParamConfig @Inject() () extends ProductParamConfig { - override val enabledDeciderKey: DeciderKeyName = DeciderKey.EnableSubscribedProduct - override val supportedClientFSName: String = SupportedClientFSName - - override val boundedIntFSOverrides = Seq( - ServerMaxResultsParam - ) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/BUILD.bazel deleted file mode 100644 index c0211ff72..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/BUILD.bazel +++ /dev/null @@ -1,15 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/javax/inject:javax.inject", - "configapi/configapi-core", - "home-mixer/thrift/src/main/thrift:thrift-scala", - "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", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/registry", - "stitch/stitch-core", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..dca80f30eeefb959390b6ce698d08013de2e34f9 GIT binary patch literal 36881 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/HomeMixerAccessPolicy.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/service/HomeMixerAccessPolicy.docx new file mode 100644 index 0000000000000000000000000000000000000000..3e0518778069b2c791dfa8e302f34ff6e1ea988b GIT binary patch literal 36898 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

=*}TDrosvqyh9fHD5giHEs8au= zKj8R_zSz`KU<(>#et)|K&>jKazCXzE-{G{7!@Kt{*VrfoRQ?cn-5o%8Pe{xN!&n(a zEdf~R_{1bB3dUT=!qcZhkxCEexiDVE z^2OiVEHcl(MS2}W>K!HY?wLqcGjb0>;-)w`1pREX&wZspDiozq>@dN2gHs4%I)4sD zhoG#zGV{#(MiAj5p zvlcLo+NC)5T43}TxJg>6Qx$fYmuzmGjH^mDE){YlZsAF;iAhn<7b6zgC?j_HG8J-U zo%@OD>F7);$L8ipxL>tW6&6HH&9jbIUE+}2PwMMJ4m{Z}bQvwpkKPq6p?@7V+R6+F z?Ne^If3sBj~HQ?W!0nrzihbDM%}vVHYrA@;H}8EI30G?2+k!r~Xd(t6(^%2CT^ zrjdO7n4IdbM?*jE>NfR`&!o_x!I;#$rtAZyMiDFhRc8;m;N`ePdU z`k_<1iK-Dc{BNN0NLTaj?H2`)@1@-t%>#@~%t3_&pd=rA3VExt*^1e@qAZNyKiJic zx2c<$UshBskz@>yZTa?vCy~~(fh&+rk3nsb{k@_P!j3+-!Kp7Wm7vTveH5*z;IFVd zja~!C_hNlQ#rPYem$o(}43$Pv0_Qg^ZI-(X-gb5v5Mx3T^wnUbivr)VMtD+qP2Hgc zl@L~hVaWID@hOKq!%U%^(u<#;=*guc~8uh5&PQiEdvoK6k`8Wl>Ez8^6nVQu+t zz|mbp(s69ImjjeYBXRx6YR~H3N@Ck{->K2q$y1exD2d{fY&~{yqfe>Zi$VKgzZ2ww zG~KYtRLU(VR>7m|!KXu0JA_rU>XK2|%;{UoW+Diua&Ht5Swk|<5z9p(7ljT)NE3l( zKBvmabOwo_Q^WNHw-koH(l`!Apo|jwt^~fZ7nCE$oFj&qiT?>(zBh;DS`_nGW;) zQt-R6wC{6^f_tRQW$CdJ=4YsIv5E2yJM`$g#J%k>c48^%J9`k4)6`Ynq@m~e`*Wk- zb5LxPd(>Gg-l~UJC00?yR6&QD-`>DFF~9YI?L>*?iriR?9O@sXlfvVpa+P4xI$YZuPc>xRPw{eSpvi$}1{5Ua4ln8gb zPb~P;ONbTPARv{$fUtf8>HZtY{x{H^-$W-+I``Fb0gg6uz0^EHzz!$&4+Md7(Awg} zY==P$`tC=jLbD8?Dur;K85@iVM?3cgGw~LoF%xE zn0Ovq9psR0E_^oF?@WK~Nl8@gwP<4vbK!rxITp zab4KI%t(VWF{oRt^c3FdMZ{DQhWYVUv?vb3hnRvCS`5LJ47xE>>;x1Svpx%Q@HT-* z3ccxu!$!yyDTRO}z_1gL;+joXdJvGpUEuhzctQMz^3QYoMxKGQyqsWQF4Zt#c>g@N zuW9|sO47o@-1O6*NBDj9Q}U(iPM#jH8jl7Qvy#C`N5_4q&>@Bl#&<7LZ|{Z5%jfjd zs^X76(lvul@rz{pqmRT$j|86pztW1lk8Ndl8AcAffAxFy@a%f>ZC$VAI=t8(--3?zZ*;B-3NRXCw|93|5H+Q*@6WyhP|{P}(-pHdP{!R2xmSnXr;K=b zp1T)M_KjOtDTnqWZq6dsUrJk3kPK~^BSNpV)_^mhpQn&v zM`_!wM}F}e@0-cEOTut=aC&HS%AS{BOQ-wlo{MvT`pv2Jjn@hH@1qN;NlOzDx}M`*WHT`%+tgC)ecTPTexuz;p5C64y1r9A8PG$-=yO-y91!c z@oG1K8&JKtpkY(_((>wTO|K0jvBDRnd^_W2!+o`FeUT=YlM;FceD2t=!y(R2;Q#3L z%q02a#qVu#UB6C1(1ECLuXu3v3YbE~OR)M{CrHRo#78Xf=K9RPQE}JaUcJfahEhIX zJ^Dgf*&lE?k<)0nw9n86|V8ex*U^ZYDxI*qPqFh1UBGF{*}p~-aU>xm5BD; z(RS#&%6x1 zI)j4#XP3wFgKO&c$XaoHK>0BvAqu7(G4ktM{rYxm{+OH~BhJq%U+#)VF3N^|7JMAQ zFs02fxs9d7T(sic)Yp~)doGfQr`-KS-woO_^K5OG)b zdQS+b>2M3wgbQk7zr7Lm)*^WAdf1kJ$Jt$VJ3YQ~V=rBsk#(EeZiu})cyO|F^OI>0 zn!D&I?cw~^Y1(~OJTU#WX466CR@Zdg3C>QExmqz|-9{4-Wx@lL*WOs)Y%U+x@y?Hb zsT}HKo{k9Jo81Q;73_R+eHb<Ag%W!*JW@jTn*S)C zcQ6Fx{>W`%a73yygjmNzeA5!D+Ax?B9PEwrN$HDL1q`d!CLkkB_eUm1ISPbVn@|w? zWKqAT$KUpd53fUO-UwTx!(wVOyx-r^a%h_7o=!h0ZnivCH)r5JV0ODFl5$uvjC8DI zG;QV0)(t+hKtTx?AA>ZXpV#V1JgQ?b`eNaW%_3c|gosO_RSR7)%DDcf^V+qN3EzC* za>mxte2cvvkBnx*_V(1YyqI7XD%N)I)M;4dKF%+czy$3*c~Sroq*zmkphdo<3tfR` zR|m0x>8=Zul~}Fv7Y%&T?7{1mVlaww{II{}tH#e3N?S&l+K+h>Jz*T{_Q7E&6um}j zOAcO(d<}x90?h$@@?INaA*{*YOLjmPEL60Q(Z3&W8@tCi$`Ntve5|wy3|UnT)Iqxf z>L57*b;N=?YNT4A9sdnMumIN#_L7F*O}X=X(7&R85Av9_2PY^h`Hj->8~zWJzYq93 z%Kxqcm$Mn#@oU}+1drT|12_SUbu$=pP%sFL^B-FOlC%PG#E1p}4TA>_v;AvW55NI& zi$${WH_kc)&%5uxasEEwZ=P$U8ldNN$u>a4&_Tm~TSK;WE|+;kzP-APehS$m-P5Id zu9ivY00a8W`7sJJHjm#x4j(gOYD`bl871!^T^rRuI1k^+`0EA|uzHurOqWk?7nTSE z-bLDO8oeDnpN8)3WsddTVMOA~2z!hJH{5vK9#8pNecldizaQD&a#jxSaw8VIkE7tc z-g`X2oj7~{d|Auv!V<`A-+21TR0Z4AZuTXsis;==tFY_tF%nVa+~)G0fr225+2-U8 zepC5NOoUm*Yb#Ud_RVFC@6XYL`N#2xAIsOz*0qy*&V*rCA*!vXJQ-6yXsORP=B++2 zysh2tA*RBW3*-8?TQ~iqG2@Eq_TPOse)vz#x+kV^o;u#_+h+qM9%j#`Q}|og#7@b_ z))p%_Q+!w3?iB}{D}RoD2k5$h-d|VKh^G8j)1pmJV?0kUh`+yVJu_4Ze<_BAB3|MD zg>`m@6Dq&s#j}n(%lrNy(o85j6H~!VC@a&<`*=q^Jvr3=^P?r$h+;OZ zOQ6pZX{`5!8E&vS33EV$A+mKg_IC%)0{y61wdWHJ=2yg}%%Z{PG}}g_y5~DXT^+0d5BHu@RT7 z+1i$q5NQT^RGVJ8$g zAM#mrTSCeT_nVlf4$@w!6pi8&@?Q9Z(n1@qt>lY1MAe`;8!}cvs%muUc=2uMJJpE? zrTC~agbs11a}D7cA^Bdl3yx4s`J39J_I}s-D+RZm6Jeo)ob>0HUA|0DL&e^%-2{Qx z+7TpI=VhOV=jRwnq4YiAmCnoT?pWP(gRlV?fm|8WbIbA>H!}gF0}9}Fjw3Z%{h~{8 z*kh{|=>5>LmSqxG=+rOnkQ`qtK;@82B$ZnE<6x5aKx4TwYx-&mrxE&@3h~IeL6KLf zbDX%DSBd?&rf28!yh+y4H4F{s0}IZjncEb~LD;drF*n1nrisEbXKzAhKqY6U?UaL= zE1W7SyMmwvf%629;E>!Cny6@S%MF~pZZdNS|@9`}* zuT)oa4F4ZtZvh-fvn>gWnVFfH*raDJHd-2Yhq z>fy!UvxDT0+YgIzzEJ0(E0E(JeQU3WG(6x`|7pur??oK2x#WJ@+DYc)9M^))uyv7{ zlEYI3e>6JVY^V>aFIab?F}^2Il_tAXnLr4M>P6Un5N%F&3)5_l9U!X_4(G)fZY)ED-WH2$$nD*{B2{E6Yq*zK(c+2iF_b%A6UbR8-orYFx=QM_Nf&^Rm)nWlT9L&&wzO_It{7h;v^n+;+D~4S zn$z22tGurEU4l6M_iJX|%oYtsJh0Dh^?3uHF_44u05>D>AG`Kk)+$-Zwf8DGY_9QnXIy>i!%bfJ3n^9fe9=4YZy}0O% zKHhuDTMrv)hy=YuAqqI5Bn-EW)D(o*NF zNM6^|L$rqW#&I{(xyKOq`L>Soqqk?gee-Um60X7@=KM|8X9j$WjbqFUWzgf>!Zq(E zx3!yzkz35Cr)aQycdCQ|$_fTo*u-Dk+&Fk0-<{U{PuaWezl=2t{jgO{(nJbfb#!?w z+P58Tzf&0@bni?7)QjnRl$}Sr6HmywtNQ4+J!MI&aZgb`HGd|AtP^Xz^rWak{;UV~ zt>#%1#@R!SP2^i^5D$n`mQ=jw2I7ta5yF#>bLIWW#oa#b`(x^F$_TN6CivKbcq=*~ zl#ScHzFncGP`377-^=Jb<=g>pCncMgF8_DAqaAgCq0dftnDPLECwotGgi$+)e* zE``GOtpB2CrdEgCg{xKR%$BGbXY?#JBsLTiQL_zp(UMVLbE|l4stFsyo)fK78cst= zShIqk0tYhr-kM2yfttij+4g`m1i7aMtOKO-Yhuh$&6qjlX_UC=zC0|<|2n1RH;ZMb zjd_#b6bt??_9cGbV7wx2H+~FJ`m9cN#NRm~2tNzsJd0H<;dkqWhjv#iRz>GbRmlLB z>C2d*vu8*B_p`Eb2#H3`pLYt{`2BWrhh8cb{@uUE2;S~)mUWCwF59cq}j}JV5Ela98AaC zwK$U|gpQ9rRVRHWu?p!fr6t*zm3=$27}8r#nMziD4n4U~<8N=)N>1Y%EkDbo6qg`N zT#kEjWKh+WZ%cxSSiiiwgoYf<(?Vrj?mO$cW1qzW>V~IqO*b;V_cF*u1gUh@Y=V{# z%dL(wihNSVmNM^DJyhKq2^8C74qJiB>o5N9Ae6Sstos2O_>TH@u9dg;Dg-tI7aTx88? zK=vL(-ax-Lh4u`9r3%b^0%aIf+HReVfd$8TZ{E1NmQm7!ZcO%b)MLwLVz}A$Xj{Q* z^S(PSS-cn7k@@%>OGu1#w5siSK||W%WHgf0yKaQyvts+vPjW&Gfw_ISzADpK{nO~` zdx}QV{#6J&d0I`^{S|^muD0g~CXDGok-wZ6oVHz|$^{ZbL6W15UtcpT%yRK^C7j2)Sh3kXUc#HH`O~D{YAH(Qmwii0UrtP$KtpF=Ted?92b#>!Mb7plqP+p% zA?5d0_g{A&9UgMcSzcVBI~xJ5DfeJ&^;RrNEz{Zjh%p&0G0Ue{6;+g;%Oacfc}qMUKWAkFoKIM>Q>12W<4&^ z)H|ej+1wif*Si>~H%lijCXtFlVr&i*fKL=pAuUUVEgHSLg1EGuO;nwn&xOl;DmvVm z92uUo!7b)REg`&yCj^%3y5KB2P$A_l8fl6G=T*uS=%FpiU6r?L+k5lVvEqC6s>mMW zyH%X0RhT!)(^YT|Rj>{Uf}t(n5jGKzK}z&pcdN8dtBjCv_@LLGmO!GC{qxSM)QhF2 zJ#8@BW_PR1m~8}H+I~H-Q!uw*EQqbSx!Wjs+5q=XsSfq)+VtxtD9Tim@464rPL*MQ zcDK>+v`GaI`QhK(#R*biW?1TJleD_ku!Sd4{?*-PbplUukm;7J9@lEitc0k3bU@eU zp`%G)>n_a!NO8An%tC89PN-`a;c_98sgskwi*piG>{xhx3(s$sjYX}iY5d?(+aa3F z3Y)JTi77>!_mrTfo5%TJx0gQ-c~m8tH1z#cy!>|Mc68u>gj2yZ9TD?BK<{EulhkJCX{=Sm*IZJLAv`Z<&XIkhBmVw2MKI zZ=v+Tkb}fslgn zbAVpq7I+Pne{LAJL4`@1X|uJ$#Ccxk3WDKd3+A;!)nX534b)BTgF)4L9nA%Qs;10> zLj}P}_a`mQ=9^{sL2cTTJ`Ow^{`=4@>Og?BJ(4UFlHGWSK?sUMP=&zk-7fr;ojJsQ zg}B9KnrokY#j-Lm{u0T-j7f&VP15S_i1$DF$cjN2Q@Jwf>Oe}qHzAS+e3v)sM)Cio zio@O-j2ngGKNN$&XLzkMSB3)WmxqgEd}c);sn65;XTW^^&jSV^B>OdT=k)k=2dw+1 zZoC4s0v>&ruk9ySWd8IJ(Dg|OC`CYPJKqPVNm1v32=zx z842O&f@Os`Mr_J`gluX{BpI`eUK zHga^ga&&b{kB0`!!Ia+b+!*-t5nmgmk>g{cv8X4GL|wc_Ezpj(kcH3VC#f;ErL;Yh zyp8A`)sIAB_Q|i%>70s*Mi*s`RUHlH=s)ed9!=N0_Em7tRS-ir^mP_G7eV#tk7Z73 z)R-z6S7_E#A8tCOYqU!su4SY{s&UuqY*6(4}{}3R8-j6p{0~|t8Hl5O^ zC9K{hA;{YPl6@-d^wEyIdD(sB-g}%-3?If$!%9v&!p1W>S@&kabGNP8R<^LddExE! znVj01RB(T*@_JLwbgu-A1*Cj}tJ&_<4_eN7s--`AwD|PJ{cYI&&7VIg) zp}58rU_PPAMpL&-znXCOV#e5i9=g08w#+OTL?Fi!#_sd-Ezx2@+^ z3{{geaQ=_5GKV63%d`Zm*=0 z(H+m5#%M5>I~Y=9syKe0(gagOtnW*%-}9Pi=^bZflxF3V#~RX&Nr!hVXEku{(Esl! z?aRc&yAv?%eZ-2 z|M^l?<6+m|Y~-tK7TNV4Ki6fZFC+nK;QqEcVF~vO5ZKph8hA&~O;e^|FqWzI4GA-l z?T}CHVhj^Bx$*y^=M3o(Ucc`@^*H$A%8@rCo}W|boIKu}-4;l1r9AHK9>DWH57Z;l zDr#DPRr&E{N2EWH;*q57)=NxKTaE^_A0DJ!yGj|n3N`GQ#QXRDk~ghiVqnLiW+u6` z9Cjww1|~YT%#t*yW;BxzA&45Gv8T|F_$}X(-~5?{A9PFS7ikOddc{3f3e7C?{I(Cz1Jj0oxhM)I~7uA6j3SdRn$I=Z-Pyf1zxY_v^CpR46l=$SUx-5a*9=XmS9 zw5og*Iv(EMCia9fE|D8don#!W(pWxL?VCokqW~jw_ll>%lLmqpPiX^vXHJU|Ii-l^ zgZPYMMk>yAA$8n@p_LYncw2#(UaRHGY8VE0>tbS8yu!i=U^2uyBo!VnH9IYY#I#-) z%Zr{L?_1GRU&Wg~#e(G=(n0zjG$p$2h&aMyr%O7*yYVP~b5spe_3YcTC8ofpXhF^O zKcZtJxbkVXr4Vrg4U#;uKM8TdU_z_%UIGD~1;DsA-#7b|axVpeU` z@1ZE^|9BGd5b?kV#iOYqo8P^%n2%=3L$-2`>F`7`- zkHE9d?F@!jDCi8v!)Y@cqRj2gybQbxxZ?ujP|}wu9@v~tj;5et_M1UCd@P_LV13TB zp+8*wDSejM(jF$8eW#+P1bWD*XNh;nXj=P&k)8kn$3Bm-j&W@G)i@gLMmf31I^4&fygp8Z9w z3yJHSOBZ;^!m`o9fePa!K(Uso+%47EQPQCI(*myxDO3sIS!OLn3S?-LOoI;N%!FaY zv>8Mj*A=1fU|I@8#2v&7L$yymx>8q@n3ATSG$o&SC#K z<1{mW7je$lR{hxfhUaS_4>U`e;rC9~vJ};Wsj)$0o;HL79ovZ}FBiy;CtuvjrlFO`Sb-h2{~#3q=C z(w=N|X=5lMQwn9H@BUPHGUyijBuLNHsfgmr`{ZS+LuV1D9_7-?aR_RxUbqT`HSPpa za?Zqji;=l%pAj%!RFb;Y5XKX&mFuV_FkuVHrs1N%?PJgL*>w)#WqhFnS#(J>T?n7o1(dA}me z=J?pfzZ;wIGD#6RHYQ8T~meTp|t8}V0dWfKnFACsTKs#SbGg>=GDIY-2 z9uQkNAeNjRh(v$lUJ2eSTvyf=w#TxkP}b;8%a1g|n!%Ia*f1!(X${6k!QdXYsea$1 z^(*;yGl~3h>kO(%C^zb+fjA)xc7=YClZ2r+3j#`lPb?&-LPvkX_L_D|Fh1#uVokD; zNWBnEJ&?=cl~}GuKG&}1Z07%DR!}Wtqv*( zABOuyfDVRRRQSB^8gUnDC$0vAP`n_Xd(tk+{$fl>mTt>2!O7z}BDd_4kE(H@?=7h?7HShM8=_gM;~J4#~D0h{^Jyrm_w@xkiN8k(7ely zcmd1zm29>IWG#~26;-K7wf0iQbNGT4eAv)}yEHNFX9P4Pip)Dx+CPQd z)yVPEUK|SNU6@9uBzURZZ)tiwU{e!^{is|d>F}Y`AQYJZHBENq{_y^ln39b*NT69i z%uW!$PLl3|(8fA?B4s;b0Uu;O4b2eicv0pclK~%^5;Y;m^Xi>Lf(^L;CoEZ+n06e- z->`gX`(@Wj40JyJtkQ`pn3kW*oy&!PvjwX_rl(Xy(%A|(BGBc4O7moudRpfPp-a_i zq7|9`e|_e6@3+LO7sHSjH1rQLQQWjrfep?0S6qdLBbE1(3=Gn}^hC zB?=5yO_AyQacQ$%)iR#gd>UGAWLl004eU!0WmPWh$tcHmirReisdXWfT5z*-OSJ2Q zuH_(nyZwd%cST+Xr?k?Lrs{S#XJK3w=y~yEwlUAX$72wm{HOyTh)Wvma*>eL@V{Gk znIn{}u9>HZ`t3e^KZzxuarBXTc&R5NLki;|+4Bn%Yav6*!yl$BTS0XJ;TN0i6Sh__ zUC+vC2;(C;oB5mq=Yr)FibbX7yNC4hGda5-BMw@QC1M4fCin}?^sorQUB_maAjoo< zU@B|R!ankM;n!W2LEKyDL1Gl&T#kTWfuOgcG)SAVZ={43r2>1%I~HL=jq=q;fwR3P zzqgTuV#?>jSS(O|do!CXevrNU{R%|nk$45Yg`Q`P_yvsezOiy^D`1jxZQ8aOCIk#5 z^iLpx@Z=x2(58B#!1spo4-&WI`Q8-JOlp4SVP1HiBMlSs%OQO?glJ2L5@9j62&R+< ziTnk=hn(8*WlH-Gw_4DWFd>q6Lq17VUy!01Vo~@3$6+SDLFW$O-_@wTEG9l>Bg6v! zzr?tB{QmsspLfp`{Sw0oO|b0OEB!Pq8vP6W7w#T1V?qV+Hi&G5ug9xExh#2qCXl|% zQa113cw9Ref4q<%q1i*u#aJUH80=#qa0Ghx-=vWH{~Cb#$1&m8yoy_B>hz)KMEB!h zz7KVXe;mURsqQr7%4rZ{BD}pXrHh7f!McT>)b=`J_(N>PPxX%^7QzCcY?YIm4;DBn zRQ{mh|J35`|0^)&-%4hGi2;jVGPyj{H$cHcVy}HL&X_TOmT*1ae2CPGP>ueK2CvQZ zA33+s_>REQ*h4Nh0m@N=dqY7wYKT{K*Rto{L+<6=LpGme1_HLO_&i%Rtv3WBovwBa zSRL{VxX1Et0y0SzlMgI4zq{gMb@;hwW|##I_y%h?8@$&|BNm${wNl3a;4^4SL*Trm zDvp2fv@LCmgY2~=VGAOsf+DaXY=~f;Ci;ET=&m;xtCM_VHu_LQC}C&WfD8u;ih;AH z0&k7D%kt!`oGTn42wCE<4mwb3P}|F5jU%bu^Xoxnt9DpOuqXDb8{-bmfO7Mo^3&cJ zi=k#^NCko>Zgo9_W94Qj;dJ!3C$AL8WZeA~D~r`fsoTUX2#71^>5W6KT9D8-IdIsN z)ogz?*K|Ta$*TW6@RH&x@ess86lk8mFbzcquxFa{OnqAk|2A?<&|)g#H^0GL;&Im2 zeSRAV3UK+Fbp(Vd`2$n(56ovk$+OA?;h+E0%{;O~fheGL*=k$e4FW>r0$hl{7&G66 zB6alFO{|6Qa(rE}BKoa5l6C)o2Kxjk;XR-2w+flJ4W6G=Rl@!koz?Ko6~gZ;*WMnL zSvUZf(5xfn3xyGOAC_LLtLpg;D6AchuT~_x9P8|{5dasNynFnTwA@kNKT;5V=O>jR zk^T*o)n~aEBc}nuGxg@2zPUS?0rhGK6#2QN4UqweHYeO~)oek6nROI@mdOoZ7cm3y zOgW}!xTSl@rt|`dA(XT+^WVB&L_?d=gJmB1@J_{@PeWg5L7^i!rgxlkwD?2vOnt_a z=9zjzC@h`#)`Ax5B9y0ur(L%YG;saeExT#*qj;O^hY8co@w~p1YV4?*K^i3BHhv+v zQM&{{b1-Erzu|pvR^{T#>N2O=qTdI*h+k7#D5diK@k<*Sx3i83Ty6l}fX>R>1M&Rz z4|Y=hCo1(H`JUoXTEy$z#-M_SJ%nN#G^x<695xiuUh#vPu2|OI- zWj@IB;tnN*5ekkj5BWQjRc1Oe%RVXT(ola^21w4jA7E{_RMUh(9v(QasT~%w6b65L z_imLqEJU0X;f)K_>1+J7ZEIx?_R>OZ&lNjRcIGyDkUxlIjgkJ@EjH@>5xm|y>8qwCC!o>T(T{{ zlmgR5Nn~KU$mR*dfqYnKFfM~J>@&HweBYFtn+Zcty%8DzX#s0oMl%uJ;$nLE0tUAM zh9EIv!b&wM;a{A%*gYHlcxkAeV{NDlq~Jkjvu6j82g0)0qlap3l>p`iju>^2OiSb< zysTopw6xVaKuQZ*!T(Sa7bif`1c6qq6f4z5T6{Eb&V1#)&+6tV2WGp5K#!C}*UKG`TUY{jJpQonL_sWZCg8G#|72%=?{zx2SXo)LEw$<)AU92~`*%A<3qVogXgzg9d%fY8Th} z;DO2of0TB#EM7TQmGEF8Cf{+eD{n;@P@pYRfIo$l7I+*4Jl3r2lA0w&In@vA`qQ6vm)-S0~{ybE*W|xXE^6_ zQ=m&ycVjGfva(rqTp0MHR(I0#@d2)rQr3Q%@83E+D@lt&e`A~G`_;U zSO^oGHjav?fObCI!Vew`SP37MO>yOQ@Uj{4ABBL^qC}ajUVM1$0Pd$?ZdvM?+ALnE zgl7R`i&?0z9Ifb8W-))hDJ;N__*$3LJvT-2w?fjuyxL33DToFdSvk?2XcmXDn$k-K z#E^IjmXNh*ug#K>EHFfiY9l6Kn2QB8CQAT5Eq`5&%1EoKm}aPt2I7znxN~LK^$?j& zVd85Q4oi_4#<^L=*E7VEDWGYY?uyoqcGpUuCSo)2?_$QDn|U{E~~9 zWGo2B954$aPD@Y6bw9gYV*6^u!IB&n!9r^&$mfUqt^NISUy##~(K-#(6NT#V(7Uxs zqbMPqwxu_`Efx+Uz^071?pGN%I^e;jYPjeiLQ6+U^3n(mQiSbdWAwRpiR@A@ikGp8 z!`UuNhHlwLNA%}D;{&ggZbA`*4N^ZBDm5O?5lQf>idiT3yFnLe>m%UHHD=xZDoWyuc|wt6NSq91{!AW_$hh+jGXKa#)rGc2wQ zF7?L}3RtfwuL#Y}E#c`%Atr5>amBvf3M17wOG$5ihvmZxGO2SY?TN>11+!L|?up4$ zL|cCXkc6vNSwSjRkF|Yb8Lb`8^a;dQ-drA5d00W{Wj4Lh2P4rtn3j$#2@F68J5PJg z3E;#|W-ZrHvnjh44^DWl=%X50j-;<=d%uy8Jy#Fh;mV#WCafb^Bk$t?^dC^fLyWmP z!ND>IYI}RZg;&R)F5Y3VMaN&9nL=@M@7@i_WaLP z%cuD_AAq}l1)HRM%n^vC2R0?K2Y=aIg+ULl;ERoU|3b#y7W(39!S}T?7*o02%)1Wu zSWJ>z7oU$k(g3r&VoItmoR7h}wsa^RS*6`rxr6_qestpdL$N;BrCD9dP}jxW1e2Hc zo>_Q;ozp94^@T;In6K+yld1ew-b=-ZFN)j5hQdz;yCQ?JO(?EQ^DQ*Ui7(sa#Afs- zL?G-dMK{KEQ<#F(;02aLWAOUcC{vmDfDBHr-_g|rnf0FMd1T4I-fo6l)53iZ_qKp_ z3g3Hh=9lBce8x!Sz)1OBIn$yiU}}jqtmWzvS`bBN2Boo= zd$C|jd>y)JGE4)*4-<`*egT(wxn8JW4*7y48WufBW?aTrFLR6nd{punZd5J-;ffZ) zEIz978MS?oP}U|O--)bL-wLz(wVH-#F8a2GhUdF%Kl^wCDE^Yim53B7q;)66#hyYQ8U89OqC&SX{Ng}Rx7XYj4gp z!AHq5dSd-H*x}hv3L&et7v0SX5fQqG6wBuQc-`&}@;@E>&713D0&JA|8x8~n?Y|r| z2lj622D*IzcVgdfcUO+uZLT z{I)SHm$fn-4|cJhm-LeqpaC$ru42;Qq`V)~&&D4QZ-hE6Um5DD#Odf-uY2(v8T!Fl z3%w8ciC?-VLQH6*pHZX&(6`f24>y{bb>_`!S~Zf}vMQ+Hy}c^kHe5erM!^o0QyKS1 z` zUL3dc3|m(lHDZtuPGr+HS3VkHIkdq)xx`_`lg<+_wJ~RZj!>a@;fFX4lV~0aILbi9 zMnfjsTOS^^H_+1f@gtp!*Sz@MXBdi1wn#0C6+1$>K+*AFJ@>$*<9xLbM^56wlZ(!h z)SM%|iXzie8O5YL@K!d%P$s2<;UwaFRC+1sN@d>UFOZj$We%DF3ng`*{eyW= z19k0(ixE_F*zzk|Os%`n5$@kQW1sc?`P@MT?#0Xx)NjB_b{^L*VB9>r5NoQ-^tc6D z2hNKlG(BP2b4)zkSn*ROG@Nwq#&{S#^6nkMN=L_ZH9Fl6d-cpR?X!nYPj}bn2awNi z?@LCQ4L+2yxt`|Zt=zfku-lo@=W>Qjkq2V8;*8u(`Voa^K$gv-VLu>HKDDrR@Z?ij zsf(N!MTgCeW>H(#GFWEW%gi8Ij`qN<8Na)*el)fA7)d_{(GKP}&h=U(Yw4s_2Vcf+<%OM3q$1jl= zS+{L4c%b~oy2%S&TiTq3S%*QuC~~_5195pLiX-mcv1TA>f?aPK$V!l=Pe<0|@k)AD z{WV$ADTlKXT4*=+M(D{R9NG^C;Y>=srosE#Aj>KxLmr1A&X6xZ^Ee=s#Uz3vtF?H# z;*N8#{_^-Zkzr+3p3VVzqhGUpsXo_1y*txfBtid-@#s@ACnFOJHpBrL?>Z6fyeXZK zRGh5XuyyK+cTSbA6H=V5I8VoYj<1fc@JVc*rdGkCVBId=5)U`sTu|ZT&a=V3(2B}Z zFW{}q8x6DRRCt~QjV1rUoK;S)zENeireHxj^NSPN_flpo(|l-Rm8F#P#!Xm^6=-9; zT+~L&YIs;8Hg5`%R=B>w_=U`=`{P6{zjXxYe7kQ1!rI2)m%6__@2{s!_f<$S>wkJV zT-+b2A$rq;=z)E6LVG{@&HV23Li_9d`Kv>=cN55HLhrWk%SDSpkDecj%;0%V&fD$Y z>bZm9$9*WZL@OdxsLTe4S6Cqb3CM+#BAr1aC0;#c9ysn&K@3I*(n zzhjS5r9EAcXM*q%9@9qQIhjI|9a#a~_qZ4cB^OuZJhE5tD9#UCqYPz$6qrD7F1S-2 zDYQGyfaV9a@hLfdlGkJxM0}72bVy5k)Dy^_&>DczY;ePsc8Z+cFqjoeK zq7q+9CYK0Cf)R>Y$uJ%W20ciBF=bfOZN@h_iJ02Om6eF4_Id@!uE)+%m?m7geLjI4 z@-*632oT)!VpAnqDbCjtEI+RGO#UAHz8BUW6Q@-#x;bF7Ob}&l-Vf)3soWJJKL(RO z_@$iG+%x0s>xz&@&%J4f+`4Vj8=yIEd0X(Umv1wq(a5O2;l*B z;I<^2|FqYdha&&Al|^X@W2J1xwW;TF#Fg)T$L6ftw65zqzLDscp~T#EJqJI%^x@Nq z)q+_|frCiqe1G~L>$Suvt#AT%93(KwA!@DG4km;`c})7IfmECN!2*(8y{#O^Z*&Hw z5A7#!7|F><*qjePrTB<3bQi*x7RQf*^YZV%sqQ5wcDB(iEG$tMNnYMrl_`hgC`!l3 z?x%Vl{JJzaMU5`(m(O}RNK;Ifrd4Rbv!ZT5LpvyCQGk3F$eebL(sa%wLT#TB8PQIu z^(p$&Tu{nVmNN6RF~6#lX01QKp>#81i5tsxFEFsVX{(fr!EhkgF8Y8_%I6WRjaah^ zHNI}U*|u+P*7^c+tZERr6^bWLs?CUhOHWGL%yS>P-b=*{3oZfDATe5n)Q z+HUW?rv7EqZ0gK6M_|c5*AAsFyQ0!y*gxO^^gUbRuB%aDhl*Z(xp%XU5;Z{TQ)$6LMBi?N z#D13z^QKVmP20*HsLNmMuo`M{8SSzKH4ja0eb_I{F1qK!z^~XQ$OliZiE7iZq*{bM zq2iVrZ>ibW`|&#fR@*CfUBI|FE0>pcTR(cb(3Z9j%al~}eBwiQJZIJEoKSRy80{4I zCUcYuJ>^@}@gXIydWep|Y4mah4?N)5Gf3zQy7_95Prgs`qZp|BRZ?N=Hp~$rBNavK zXjd(4Sx5f7CbL!=KFM!*P9{UO;r+R7TbUI^MjzG`Lb`zP{H;@3)uh-5RUgnbI3dj$ z`)roV2Z~563(GwV1CZW3HWr8#3(p=5w9}9kKrUlnl!A%z)OL=tK(ZR#79sb`5)&gU z%r|wd$eRu+<;Ln_=;k$NOuuM9&#;#NV>gWf);Wgft>*JD z=>N>cvi6l&BwxN4b~HK_Q`_(J24t+1XQ_pgp4M|KMDV8k4JfEEcE7e_d+OGyCn&-)|c zdz9ewU=irdY7|RV3n^{4R(D8JMR07ou`!H&Jyxs*2#p{x3&%3Vld3S-w^2u&#sKv4 zp@2wR&15gCCJsC)<|8Z0o>gBBLL4R37p7_`9;3@D#_UbX;F?yr3{&Tz#nu0zOK|*f zu?wh&8mNotKXm=m9roYq{WVFA}J@=4yP^%J1 zlHVKI7UB@WZq+%ZcLox++xU$#(=~RWnec=@rq*#p^c~@@NKd1@YbdD8mvv|ey)D0i z{pWx-b;v910tFibh2#8(@IR9OHl_bNs#&ph_JJ%I5?{Of@Ak%6b0I7-!lXfHZ5Cxe z6T16R+LEt}N0+~QDe!TcjC`$jy;|fa5IPL9H>{kYqn@RrfKjX9&kM=y?BV1fALXm& z6SRWlZ40CvA>(oVvh6fdH4nvvL~%!Sm^O8Lve9WV*-S2N&+Q3yIG~R|mL)XR>$)9@ zMYqX>mT2OHLsj{?Q_g1;mi!tExU1CpRh`=@-Aq~Z++}WtZT0FzE>(lWZtt^pj-qlC zV~-OmNh9Fp(mQyo`XIb&YbfjksWal7;=%Bjz!s|)M}5gS^soD5vS0sWl@>b_8g2uu z$%F&5yMM1a?A`2)&76T%nZFIcwKnbdcyPM5ON8Sj^_s#HI3PG0^My4&M@y17-Gfl! z)Sl&xva)Pk$z7UE(N|^(l}513qkWl(M)%$3efI{uLjHQa35?%D3deBax(d`S*%o6s zlAB!GfB%_sLUr*|1$Gq;?Z-^3udvm}?t9GiZ`AcUNHn^d5*jVOHR{`yHR-e{TmES7 zu>ObSJ*}I>nghGZvMEh^0&=hEp}8-FJEof9JFK#*L+rt}(5e-=1+Q#eaQk<2ZkbA( zCK^tiHDT0YWjhh@a7FEyHo+)0>j#ofR7!i0R9ZwFno6@5!%G^q%6(3%i+QZ%>b;gy zGHH|N&iA5`dE#Mm5tF3sL=LpZZ1mGuVWk1Qa@;(;XG@6+kld6qmm!K=9g2S2KOWNj zyf_J9nQ48~0%^wRYb+psKz_H3fOC?8by#Mg=l%BUX{wMH^Xn#HT?lfUN{Vaa`(=2S zhF&@PE0X5!?CH|nmmvWM!+a!^XemXTVMsj`^*EKzk{s!C{U+*G=_0?n*Y=_=?yrgy zb%&<33`265>mqE;`4{Y|I?dl_7~_7yuaVw4ODm-nU{ld#{FtXukjBmQ>`hbr#vK!z zg=EN?7+FR|XPSm^$FL|$uA{)D97Rik*$4lkJS6D9Zv9>Z+<|LJd4GD4F$$;hn_-wu zs>-PBJcxcsX)Ld;E5!Gi zfjuGX-QIKGwymZ%*TllG8W(G!SAhMZ8tUn4jVBjXRQ3uC5tXd5Rf1e5D;wOj0J4m{dbxIuDpQPr@fJtEt9pQ znZ>1sjU&1`hG2&mH?7?i3JoI$bbkk1Zy}>7Js6kOT5%#*A!ChGh)jY4dODTS*ZE{X zR@@87W2k`lM;(TmYo?RZYyh8%gs>De3OokRFq!o&rvQcl`0d7KA*@nRoWYNa&DFQ= z%==B3X~yU5!*tV zqmg1-qqt{{G(Jj$84z&tHN%pbz&RF|NW)N%p?Dqj>8!P3FpK%Nd8L)EbQ_{=rZh5K%ZHn+h z(KXx02}c{^YS6`g&~aK+tHLDmE&kfrs=Ww1?0tj=Pr|g8H%6f-k{n|CZ9TrwW||zu ztehp6?Da?CgLxwKABwc8hxA9P`cYUR2J$&agX znS-8}dvHC!dlQbU(+S&|EJ(8zouP&Mkp`3I6VA7npWa8sqlo6*K6W3z*(td-yx&>; z^67@o>3SUt3J~hc8LYsLU}^D-S0>-`p+u&o4LrbWzfJB7o)%mPj(63pIzgN z2Q?+7(B*y8>9-cNeqY@%*|OcTe!op;LSCb^M{f!I?YBO5xhDvX-jZ>CBzW-T?BIA! z*;Rpm9pnGCW&yt@*%Ru#2?R87h-HnXPstX?Ce^f5dXU`|*BQ|)g!TmY)6G`=vRw5L z^2819_1TV1Sv#=tRi1X4unHeR(BksN$BHdm$N}1K&W>iktHV}Ni+RlRh~C1Ca{7hC zvvJy(G>NU43d^Hk^viS4N>I=Sh&C?62A!>hMpJKL8mQ{H-*0ToJ2?`$O z_qM92KIISzpH8w_rw-sC+s!ZJU?+C!-PFQD_^ZI;hyKae9^`3iny2N zOfmNadjH*(?2WtE^wFQ`4WG+zhizMb>}B8y?F3wPUw=0!U;?N%jIQXP}nZr-1&|znX6l~s7EkD z`LN{77jhEaJ3p;b_?MU((f7fs_SA$cCL(VnxO5H|>O8ENmymge`2~B@llI=zx|ew4 zpIqvXpE_}S+TmwYIH$e6t30RuobQ?S!nfO(q^0%BOtsDYG-b~2W#{%(UwhMZsCv!O zZIdn;Rach!zI~+nqw22Q!RYs&*H3xk5nO!w)wOoHx+fR6zLu-5dAw}-yt-#MpUbCy#(UT`7-rP`G{e1%G&vV7fuZ}pcoGG0C&DYA`J6LP?)=#tv~=QBU<>sW zaLf(V?SO#>pcn%~v@>upI5n>%KBTfBwKx{kIzu<0Qq9}p2TK^X9AU61ZosS(fAxF0^OHH34N>0$o4) zs4+tS@(QSa^f6>~BhdTb2qPBMW9^Nj8-U)?MHo=gfNTJ^ZZEo7=zT|oS%r_`Y9UPNXo7|cO2-RbKYDu*pqj4JBwr$%s8#HNbpWXZZ^LfsB-!Cgy=3L{4 zG1guaYsyQ3L!g6zfWUyjq;jZNDi+2jf`WjIL4kmv0b8|10JcshwoZD=?sg`QI`nQf z){TiWa_fS~-!I-Uk{I}jJVlT&%J%Fi?Pz0hM61*9I5k!n&ZNPf9wxZMRA%Kvpy*>W zQXjkt*6aAXyqd_hL`2VYbTZWPNx+M}@;CG7&rLZF#A1mhmnHV`7Y3nfS~9#oPqTwE z?$`8l>!Ai;2vi3WibS8-on3&Y$JT?f7D+tavg)u}@=uFedNv zHsR|^@+9IXmi4wmPp+D2l@8bD&zTaYf2kt=UB4l2z_He4lBV9lOvS!#y|)n2Z3rHK zJonS4hu(EujpYQYt~ByiNplO;GWh2iz$%EmX8ssFOYOs!C+BosmBze7QzKg0+u|fp z0>|S)1To{ZCxD8go>(UVDvi10N2OQLL;u4ARpAd({->2t-G_yF8Jh_ezY(PGY$^h^ zitR!_l15p$I6mx8L`b~va)Pv0xkP2XJ4E&PDE$QoJRh$RUk(i**RUTy`Byziyml5H zIIjof8A;P7QE9y;;uoNF#~QqNKEoH6e-`EMeO)fzJP;UrAjx|{m(c~0|F0^#lS>Ic z0;{(L1_A;P{Hy0+V(rL4|L0m6H~9^m3EA(0Uu=Y|*tSVUv|v?N^jM~Vzb9qlyvWu^ zqG+wFQ$bWm9kZ9<=wjcZ+k#Zv!R?w!@#;O?fX! z!#XYE?hB%z3HbxNsVWga%@*3A7FGTEtWcG(s2;VA1Y${0X*|j;yc4CGvp3y5016;3 z-NY7NT-o~5+BN)9pvg%>-%s!)#tua(Ro0jZi?aYx(jM(rMDl1lx-6zO1GDY9UEW-) z{EGfKP()5i*NyZRYO(`$fYYpjw|KT?|LY+g>6b}0k112>ojJ3%ZnvFkJ zykSOXwb(EIJ3*n};gu|akNGSxK`6ik83T;u9RPNY3`PJ4lRpo6X56@JKO?f(gO}KX zjB3~oGK`ocHRwtBHwkqAmDYP!HW};jEcVIm{Q?`!92ysbZJyy9JN`|M#%6G%;J9GI zkk|`<<8XKljQ4dz%#D{UF>0>L#Gt;5p6B^%ax-qDv7QJ8oKJ8yS>TfCOghp_q1;~v z>eyHpzE2TnwkQ_m9t$g>$gF->6^x^7`+`7pfKK(x-=82X{!3gvN@;Tu0Z0Z)NiJwu z(tv^VlrF^lN;zzx!>%=i3r>}$+}`n)78A~T6T-SvP2024HIuIoz9vG@@2`XUiia5{ zlr>PycxNt8ke`r1Sp*eQ6vFrkj&%yGi!}rY z2=af{#lX()ud*nQ+paSrcf8O*=s1O2Knp2g#|112&5CT|)Wl^pFN~3Vi-l-q+Vk;# z3dP|1&TtpTQ_u6#F!r)6WD4CNYp#MZ{**T&Z@&rGSRFomxITGA;s{X&S&E@Lh@xY! zH$7Il2t^0$l&U6QHRefDZ#Z#90Bz?eM>FlThA6nz;91lzYv(odY9c81+okq#;4)FZ zab+t-fl)5J9Q>`?yxhHHnvd=4{@sa2QX&GPIGDj33&gm4xdr8Fs5q7k5iXN{=jDVs zgeAPE(_NkMFO(cJ8!ar}`7eT}1hjV7^Pe6E;C^Bm73>K5%-o6Fm1mw)u7hBOH=NcJ zDbW}{rK0)Pjsb3db8vo&ue=6V2Mxde`Er<9gO(s@fw$U*Lh3y=%P&?t zUQ_;UkG_JKuWE>bGztI3kPw%~i0WMJ=tyK)Q%6=S3L~2h2gQYKH`u2Y^Z-BsnPA0- zE&tU;bC2-B9On(0{>p~wXy?h95B|gziqog19+n{a4A%N>G;*B4zr}hxIgx)-ZJU%Q zBm+yu(^@Vzd0<^qpiu5>XGc22D+9qLZ2Hp;?#JTYZ^Hk6FoMdE{chkuKoEWZ{=vEe z9E=%&zglM-;NbM<$vDf@0<3dl`fWd`A^WUwMku??*%p;ovdnWQ>Nk=hKiqw8{UZAh^Da;r;6UaMO93L$w>gTwU*K-td5Y zMQf@ASXgau<@ddFL4pnA!{wRylG(|H;wg~*dbT;ykjiEsMuGBk2iEaWD|1Nw+qQLM z5F0r?=65N&DG1ze{f4#?2q6n3m7n)rPD{L35Tm`OXh|T@mj}1dBg7Lj$HNZ}4Qcp! zEt|LdxbEV3Rl`!`cw4xPHwIBi;U6PmOe`nZXG%!OK+ip0`Dij=O<3ocgota&CO; zwV$IM_AO!m^D8YgZ2%wysZ~}YD|_Fd-A_~*a}-SsdCp{rbUX@h-%_SgwJ~e!?Ag0I zp!ZYUb-eOulg!JHv?h2ES1AMK}oFq#C&9cqUGN}a3u{Rr;}};I>?{lmZXTa@|jWx zdTk?qC`O-a*O)O&q&O}TH*j+&!mnk5Jo*ZSJ|mF32rH`LqpmHjLU%c^RghenGR{?`%L>LgY*618K;7R}Wo^x=JRb>45XJeq_mMPmoC))%yv6Io z)!>o1?=9`I0p`vpQu6?lchn{5<^ACD@8f85+vGvh<$YI7!?qrhBrVtL5akF3j*PNp zXeM?;QPXbU1WGO88KrVkB~GwMar|5Sm1Kg&FYpu7E6kAaJjR)_am#9PvQu3TpB=i0 z+WZ7CP=e1mG>l+FYJ)0BD24FyaLVk*Qa@m~87#{zbF!eti@h#h2I{LrQ#k7!3UKun zr3tebI@35cy1l`_(%(crL_4|wQ1phz9oTkHUIy|+EOq!thf?Uv%4n=icHTh9h35vw zY7xWhpgdHr5=$iO)$JY|{E#2#X)VvYm80bhx@0p^okiKzEEQKVq8)PkG;MgM{?Xn0?o@dgeY2+^1rNhc zm{A_dJ2#o)VarZM&0)c!jP?vTg(!WBdN~Rss$Pu<2kX|mn6D9aWrEfdEa-*mFDa5~ zJB)9$rUkQ-l)>3Y#Kw6D^rD)p*KZnrbOQdmO$CB{8&o35IrsJa+`WO^J6vw{S#Vt2 zHa=A=f%V+Uzl5RUJ>fb7)ZNi61oNp+tHBGdclLfEm@lgmvo-+S;BfqK`&QrgW8;}x z@!?(k<7-N&jdZ^AR?F-#6Ul^3zD8&-d-)JaN5f5K7=hdVnH4Rrb%19L`k7s|xrx>B zX*kva=(qNKZxP?$-ye?g>nqd@l^CZ=WsrHJFry(3`#H4TP;;V}aHeRRSJhW@tbSAe zrl^+5o-du#Dr4q5r0ZKx-hz?!4&XLlY?VIpA*mT0)MlYvPF;b^lQXWjL++|Y{ywFv z%8^^tCb3hA&>8sph|_LW>GA^D4k&xeRm(Zuv`cS2JFg~fKA4hFBBh5{)e5O&NJMj`=R(_tOiE{WgD)JrD>Zg?|EwlG;$K~4Ul)8cli?|m`F=d? zP%-xnLV` zI>P%F=}fdNkg|a2P=Qs=bNs!F__Gs6B`Nov(`JK{B{kM?lIVPEi@PdYrWO{|vi4a! z7fb3};HPzY#|vGls@4bIij+f4f-os1m@^Ls{6;Igye?SjHhp7vVk_D&o!%V-_FcDE zRY~zyL5lg2v3^2}qPm;3zkA!iMt8t;^G9GK9aN?0idM<|3|XAoW{za{CFO@tMIe3*l2U<=rDY;!mubbQ+m>sl1vjT zbfw;|rC2wV&hY*=Q2DcMt4)lK1uaI<098M!<_Xn%b`(JPU{V`N^XvYojN#FmO5&;{xOEx>oZa@cfKj+1bvoRo?XtjPkJh;A=z=!_`d_u!Gj;zfl#9+pD1XwA7-DW0{>cKz{j_uPS^*Y@+o@TJB3wGCJAcfUyQ;xZr_ z=||v)!YbjNZ%BK+?EdBPv5ZzBUjLQAcAq_s^d)S$L(XLH9Y=@&Wa{j!I=w8Y3bU*I zdCczICQ~mvXj*o3!0(XA(ZcyzQK(`CdrU_N?I_XmIf!H%Qyo8Tl`VY=9YqV!gVTK% zWg!C_h>%@hlugZ7xqFHa@c*76+xp?6G6R=R zWW@e{@ebD)9FJaP8}a#f9(g;pcy*yyu=rZsy~x3~)}}G7$e#cH1G{%Nh0Xlrz0%Sa z4>nE1w*byaFeLQ(V0jZ%UNfZR)1G<>6(OriB3SO4UiQuvUSXNpv)V-Silc7{GOuv8 ztz-jraHNg7wt}q~RZ#`U;!1Jf>o_#QG(>0PQVc?}vz$EINv~|T1{2ul zk1WR9|t{t7+txX*NT8rrD#P5mMd3Sf`|Z?+vl_L5p%tV zkmBWjpGJOyelwrdtYJ?LTbE^n@3ICt$&)8F0_Osm@0k434qvb2cZWj)AN3g4Ux1=q zw|%$Hkj974o;STYXWj&aC;86Qwt)L1HlEz#z63t}q`u_7gCFqs?ekaXr>^7smi15A z-w>ePR)dT>v(KW_UoI2xuHDk`ImT}zd>rUJ-ncxz+{BmfQ#reLxvy;qhzkGk4Q6=n z+URO;t{6`oWb(CX-|+6z*1G6=yAydfRZJ%6x8L4mK-%_65hL`H$T}nb7^r^gHtek) zUnEbee|6Ff@j*!=!*Obd?Y!K=X-^jLagR`L_u@H2Bd!jMxvfEhEDSkE<(>|yM+&K~ z5_qf8^VSgX<_u=&X#ZgnjOF|Ge$;R33-fln`R0_S{aWL*+Of^cSLu3j9+J#)p2Z<| z`r)m6;lo#zZM*z|Hqez6*|OGsCVRC01F-k_^P^U?TRaQ5t4&Ls{fX+ihu!0WiHzd? zasAMR;|QLs^lI>94fYVie3JaK5_Q~7%l9)}|B6>gpM<5Su>ZK7-r~v@~JEVOZ zu>Aa?^Ee@~0?ltLyY6fPhC^M{MtZjW*1=0FK$uiL?K-=m8KcPD7t%Z&zfy^~XnWWH zt7hA~3f)M<((pBT`RKsju>!N8yl|KZKeuk(J#3|5-pR=h&BsE__bw=#l^8%mWx_|=(%M>5|_ z!ezPi=Hv)Vh?!6;n(&%3F-}30SWr;{g97HRp11a%t1q|_8z1T>Uj8rHC6NHN9}Jlm z9Wl+}!OQC0E?6&T@0Y)9Xfgn%zEwF!LpRvXPLy3U*QT-LF2}BD9;{I3Y-&7E#6c?7nZvTVeLg5Rr1@12u zNga^Jx&KSzzoBA0uB$Kul7V;qr!W^>pdLkJpjY&UpL9gc;xF(oZc zZe82Ht!P>+Hja3r>I;YV?W@D%*6*~DeDqpLuNQ-xFL%zZI<|wJLa+VH6E3;tD{ePh zk3;j>)w^!hzZUuBjt&k-^L8Jjwgq&W??efsZTIL`1rxQSFW6#nK3?oTiO{)E>m$={ zl;US>4{i|MpZmD1WVj*>u6NP<4rfc)oI1oEwf-Im2UPF*SN%XPwf3gu?Ynt$pgpnw zymqUcU`HncvxAFlR3c`88^46YXK`T98RrmwTuR^Q(V0w>lFU}V3t_{gWs zk|)!YMvb8@YS1q<58jc&&&Sh(${8A0K4;LZn&}*9i+sr#hb8ZC9d@khplSW2=76F- zde{~h_3K+xZk4ffezxWM_^d^3z(-W5T8{hTI9F*li@e~5qlkd=6 z&u;QVQnbT}Q`_P&JGu6LI~?@O0Bz}R`}SRqFW#?3q|2-qVn$V1QB0lY8wd;zQI{lU z$Zv<8$LJ?}ha!X=3SaZNzQfD3(6jbB&Y_Wo{o-rs$pwBTL*Gi(2xw{Tl(a}ZEkwyVnX z_{%;WeV(v+`-0@-J#C?V+V%N%`1<{NXwakm&EDPT;XUzV>Fjy_*XxNLqd~`ei$LZ* z!|U`gq{ll5(rUVU3qOS3c6)R3@E!4!V(bf>{zg!K$+@E=qL|D$`FQqyGNMEzZd-@) zd6r_UR3KocYVqY2t-ISx!S9Mq^HoLkse$MT0q}xRgGqB22i5cq!J7E<%1N3(Zh4Ya z+B`j5ag?!ayX#?)@b8aZN$|W} zvkLM68b*!TiR5`>&AzRQ1NCPmYj$b0Ri-RJk2ffJt}0) zsG0*hh-z4^GKk9@Ox*H6Xg6LR99fH4%E^Tc_~YzfPFd zErtSe4r1goK5ADnyWQk;7rqFUc%7=)CGD2@vEe~2A#0COrol6-{(OqC6d!rU-~h{4$7NeCsiww2uQcKD%h?(@_)+49LN`dLEcaH2#J4T*_PJSPN&s-% z*Q(&Km|vuG&x|*AJ+^9nEYoov*E2IltF83o_XL_(n(Xt`#Q-M_q+F9HrmP;uJHg^&G($%xlGOYAkf?O{ZjVOQL%u`#I zffxlxY?5WXx@ny}8Ct^KWqfKc2o0fEsst`autO;ffTUddy}L>Ojl%;MchL#IhSm?B zDDi3aiAqWMdz|derVV{=%HU5?yq-+)1Jk;hq9>mByZUo8{nOh`>ul>67jesJD*cIY z-#;GTpO^5kDx{Dy7&*IF+*oT=4A}DFWR*$F%(*#N%4$wk2j#9FGOT4ttAFK$D6n|! zhz>sudgS+~wcRhE$p^1TQghD6mgFrRBdZR!*s9R>U9q<}8_qH<4c;x9I`@LFi|MP3 zdwIB9%2sIW+VW}+EGSB)l2>BNZfGygIsFVRCHro4?D1sZ%Kba_t~~iTk>p344@htc zb3^Y62p$zt+o>Di!aSpfehc?||F|0NhHE5)UdZK^!76z19zNO-{m%&=Ycpm0Vp-01 z@~5lU1q?j~(N3W)#B`QYSsWzoDpJu~xS1NvokY8b3Ywp96h0V*ORhHxR3};YmF$b7 zh#fbx^zMb3)vASrvDKq{v15h{aci8Jlr=wj!hmCkE`9ikOEZO$rQG7WBKZ!@B#fBJ zJ<*}Fv&Qs3QRR_+OK+;EtP5RXmR>7g*2ntDp|B)P^tVb*;kvyNc-0DDtE7Un4aN0V zi6+N({q`b`RY^?;ZOc)nII>~a2!qa?VFPl@(uF_76|6HL&4+^bi{%jUd-S|7^0p za9Uw$VjxRCAc^d)q6Hz7p@Dx^Uyd$#f^P51c{NwGI{r+GiX$#5rRdU1>^Vg%zDi72 zRq?F9+*sTrw5imywPGcMeYaYQ|8N}jz?Jn;hG@fwZQ5&EXq(5KYKm9a$5Rl{t>A2m z$qZQDfQY-Otw{U&eMF^wR6maPrX=k~D3bcZNShDCLxhGxyOa(jt#!WAmvuPX79hVE zk1#vWH1W2MoWsOgj~xkx_?0F3F12-{@?6!+8-vGzhDI8rprq_a=PI;9se+vSeNn%1 zv%Lx1+K8obDP+gN^>&0*|8)o4+~kA?_lWJ+WFq3b1_mm2!qg)BFhP!pbj3WH*;ELz zOwsCrVGKrlk^P(&z)<-zJcDaxj8=Z>j~)KRQx8CT(v>9=w!}$sH_V6LFk*u6GVPj<#Qgt*@r7|lf3(O_m#^yX$ z>PbzZRXeNwUF-Z=M4S)_i;k}VVU+3AMN;)FOJ!dl;o_vL4=Rr!fOWwrl4jDQ9XtFuawf09>R>u!O<+4y!DY3#AH=2Y z49%+UF*^;YB~UssrdLe!IPU$|)AE}YcBF?{T)^5Ae{%b6k%KR%YIHzDQe2K1z;^!P z9ENuTU&CV{ikQLG0Ae%k48V7U2^a*RQ8+eMA0wy;g&*6He%}%&&*Sjqv@dc5;`kpS z=5UztYtd?N1qPtG9n=JEIc4kva|Cc!Zlo0k7;6Xv4*k%^vmsX@wFkNCmyZ#YfH0F7 zB7mx}0tJi7KPTfn5fWm@Knv>Q`3$w!S~Pr~~IHk@A3@F&mj1 zOe47~R;Mw~4lcA3o<()V6)}dO1T$ZD&o|R<0XK3~iXnwnYco~0stV>U-i&@J3@S&N ze2C1aU8dV0)g)4v33qaEmnNC7>z4nS{6uF0y6W^6Ph005BZ$ zlec*1U*RSH2w(VD`0=0cKmy^;GH>=<+d1%S56icCv4!+{%O+>BYy}3$4*4FmlR_?0 zq~tQJySTF$>*4?p_s*!f60EJ2Q2A<0U)0WYT>p+NO>$?HyTgh!o2OZ`1u0Ml^vfU* z3&h#}!V|GhV;<7=(i~k~xf0fsV2&V?h4Qs!v5O-48fU%*%d)@{4zoq;@&x{TT{yQ~ zKZ*q@$4~-#m76x*I{fG}WqF3`WL2EIK3ofw6P2@&d{-8_m}RAiD*C*w43&C1)8|MJ zs-0l4EO~}WVviQ(&XQ#75Mv&Tg_r97!>~Y?{p1{?hq}I0L3%byl+P^7H%QJ4+wxz@ zi0Gjyk$Qbxxy1wV)Y2!1B?>Rj^^!g|3Ad(&Z$$GeL?W4ZY?FRrz5Ud@eRjMRKcr9_ zRyw)%x@nL^FAX)Ej6BYrBA&F`Uv*I{Gc`|)RS@)kct(Yw9V&?$2eT++f7pHt`c>KU^+lFTQtjU5uHTp$5$9C;GRm^8eMnI%;QRP-EYAbIGkQnZ| z06<`-E(xXJtul^O^i`)eNWt6OFwCOgtyCQ^slOvnye(N}3>Il5DS;@FHD~;Fum3=K}TKUn&PQO zTDmTxs=k;ZMN8`~Ho!=9%~CJUuN^VB4gSv;H6#-rK!lKz{` zApC!@aXJ5gvQdt>`Ey)REXUR#nHN`EYC@21n#& z)R+V&(H6A09;f_k@Ers?zM9KCeLx0 zzW?Q7*tkIB(n1S@bX{^ywus2+sh(&(?2O&+xvWS`@H$GhG;4@o%}7r0nv2h?Dw-sR zMjoOA&qrEJFo=W*Ux)5r=HT!fWyE@-vG^vUY;95GlP^`vJz#<T9D&HX za0@&g`4teE-uizj9%HzlKvgz7fPpY8S#B2}^9K}vw^wpUl^y-1$pu^Dhb`H*&~19N z%f0!fBU}pf&RSc;C;3txO}K(vn>e_#4MI2HKe544eo_ZjIFG!<$W@~`?v7x2+pjy>QoYb2mqM{-c z1n$NZ>XQnZ(Y5r63_xkYb~VwLP=hG5}3uL+9=t6UjkWU8F_DG&#uui2mjJ<)c_n4+{rG_>DI z>N7_ws$){QmKi#+CUO8#f)V``IyeGPf;o?YDH6LXYrF&r<^auN^5gdjO9b&(j-J`D z!DG)oBPCk#Y8L25W2V9U3pZLQ9}t4t6k+xZsQA?krFr|ABIHo?8UJ_?t{5~*P(wjl zab4uvl&Tu+@Cg@^dV1s-9t{%DLy7;;_@z8eQ=w=%SMrbVRlYyIdqdQv?Y+;8nJ)2M z*zx}MEj9{-1YVeGyqV?#LI<6K2jz{M&{7-EB1W5rrr2dJ{zK)V_#c%@gbhHI{m_3@ zLV(t$7!J4o@?tzR7QwQC^Opd1egPlxZ}=m{I7 z970FT2#xiV?UF-GiWg z>|r*j>%TR>#c5cZ=%N|!rK=B7bXjDK&g>^*o6(h#O-W|duM-7w7W=fR9cC=*S(i1_ zPyid_In9<8;|7dv^vBKjGJru-e+O~?@1VrV1G>Az>jADXN7SP~R4Ek*)|WCFXycCq zTv05aJvva2D#RN9^t<31BOfiuJ&a}4UsHley-|YfW&G7nM`bZ4yxE)-NmpTxIA+YZ zZe&v$5te@`VILuyD$PDmL|PXTc1#$-fo4{BMQV88;!5vD+2w z9tycaXClKulXOtC0L1TE7mVJOP4$OsEeb@3C6)=kLj)%} z*RVl50WsRen?G|ED_snFb+~9jQTqKuV}jce#MUA+`TJ48@1mh3dDr2+vNaYL5E62> z%5Z3R?-i%|P~Ews zOZ}OBPqc0=AtdSlMeSld4y5K`|C@S_3@rlj|3Q7#H2~WYmaVtt)%vwlANHiOtQXaG zK8u#t-}N`KdO$}LY5S=FTErK(P&GuUngKg?660Ol{y27{;^~?J!Os0&)IYQA!q3f~ z3!nZ$e(yX2Bv*p|i@ceM6)l4P|3N;hFS+v+oxHu_@DK7neaR<9wMRI$W(D-QKBqb8 zW2M$uhE6@*?N0wzzQ+cZHn>dukGA8nZ+Ul*%X=xEMG(aWFSP22;lH8)wFyJsD>*{c zYh0@H`MxrpnUyD3u1$wAv}R>n^B|fEXN}Tw_|C5V>uQaiNP2Z?Gi-MSZG5G6U#yGy zlQva@M+e;KV*Fw6gliT&iIK@pLCDZnCTImt8yiJ%AY7g|Y5IsP$*p|$4U{r}N;98_ zWm$+$Ls*-Y9pX}$&nc;V)!DKOU-HpIos`skgCj|U%Co@GODTQ$PMo#`nnpgeA>?yz zRc-_Ub9>wF8ZE>sv-CP7Qp|0UX1swWGap(6yE3Ib$ss#mP+S(>*0IZ4`Nl7kHsA1! zAcoM+tR2E+(Im9>18fBj5cP72)wa+T!QFc-?jw?IAcClZ|B~z{^Bswq1 zTG^3YR=6dVXs!uuo+ij5+7s}R#7*1h;&I!yT=7qjnh!;zgZ}|`<2i5qm&sqOm3Li3 zZSxIl|1>G3b<$ZF_P5E9#6KoE;s2QIwE6!t$th#iJ>7oDTImBciB@Fs!EK$@f=`f- zg@MBpoo--4ZjT4tQLYPHKiFG6I|6Olpr8Z46-#VDm%vchl%Nk;q&aN%7{ngCH@>O( zwykI2@Z{!WIitV@Ceo`hi#)G2!KDQQ4g=@8VvPI-=dsc<80d-&K!<@WOXJTb_V<`K z>w^mRBb+u1glrBb#pDLgI(EQA@j!(ALO~56T8JbQh!{#JIE5lS z+-$4`wZ7e|@h;)d6(+oFIdI?m9 z5%?2WUHMbES%VIc8|*%KX@+#@8)CCY((!+bixT=H4m;>l_{wTz)NqIEcMTy^KS6^J zC=ukJ3v?au0@dULN-N>=7SNE>wF6mrHi|z4&-jD5qemB=@mie!MT;RRxv|X$^hR~@ z63jKk1Cyc0wFFI<^4v9j3ff3^r5%{Ovoc`v&S0QN{HovoZEi7(=`xNvr5D+@rHzLhvTQeVyu;_V*4S>L8?6Q1)H;mfA zsFNZt92Ur<+Du|sGGjM3ThI!Z27VldwNtJ!TBy9Z$2|x6l`-SuD&^hIbJdP`$wQIy z>1e~dN$@)bBV`Gn++9tK5AR}rAI@cHG|jqwvE@dVT_a*H$ zqF4&0X7}Xeh*K~23qKbr|A4cKC*iKLR!bw-J>3IPS#*iu4(IX9c63O?8}z8iE4+9EXHn39JHq1S6Ts>6%5%WCDa=h zkPXzE(>#>Wr(MSGSgc2D{b}h_I_B>C^rSKt0hI(W0<7OecYjl1E-3=wfk^ zgiprL{X%(zhK=4ZUG1Sh!ry(OVDR!PI-Iz9q{e2em!fw=XS%+6bOfceTTFUr2GT-y zxGeSs`9`ERg5&0`2UG6U=KRL0^NqESUqI{+QP*^}OJ(}h>lm(=)(JuvFb955ko%>l zb|eeI%mV&GLI}gJ-WG zmdO?@#K0a=$YSp#^n3`-hw+45 zbh|N%wu+s@oZYnr7)w~jJt`K?E)C|t#Ve`Ck}pMCTv7hb;{2@O{AE&><;%8Z=A>)& zM##y&C1m%t$eQ(?$XdzHSE>LwAAE+#MhEmXdbjP@oZWn1^50DeECOk74E6C3)7S8 zsdbkpq<}J^8qH%O;iz>v;i&XKfZckl69a$z6Ii~@$v7HoatH+D_4dw3si0^%!!1u4_wo%ua6eH~IlTqr6-; zQwH%%c9w;X@3j+v&(qw=sG3waT?`6333b{dmI&E>Je*A@Tt9&Vv zvJiN+;JorWTo{l&^v`1cUvuM<|719%K{>XE2+VH|z`1h=SW#w30f77CHSj15wenLQ z*7=^AUvTGDPHLYnGcL{aPlP2X9`&8i0|H#o{DjPv+M_~&+RG6pRQ92%XzAaz159Ho z83l_)RdnF6<&a9W@*Zv*k*3Fs*h&CL4_n0s+6Jc*b zeQMrRU^D^TkPvMN`?2c(co)1XN?3(wj4qdk#;q1Ml z@3UX7!y7+@0O`HLoKms_?)VQN2-|JAdEP=ta}-YK_SkEiQ1@Kz`Nu(WBJxYe?YL#{ zv|K(hLkz=4yP`z%bn!H-$lTkg%2IIZ)(idF>lcf*C+6J3_@4mwa(@6$!u|rVdvFcd zhZt^$89wVFh+f%td`s>0+iw|D_S+xq$A+`R z^Fjviz2fh+-`%SChXSp@*#Ue3@)W7MESpPv^Y-Gl}0|_*LxZ46~j{t2y9Ay2U;Z)$m`;Tw8m`Hf!eqcD= z9X_t^;OG&0F_Q4=ywDPH35nvQbh&ng=NGM=aidCw>{3aEu3I@6Wz=6QcZ8&hJT6lT zC*>7zd>zwrsiWTHFC%0f*tVm5QqhUM&o)||IoYDRN(ZdlH;3!_J(}Rl^%#PBnARt0 zuw+0Y<)1Edp*)IZis#x)GcRW%Jx;;3PvUzI48^PIIEKKnlkIH-e>K_UzLO#p3X#fn z7@~c^$Oh71zJ{QJk=0&vK4Ww!2gGR%~?CFCLCnG3gLAn8>(Z2wYk&8=L$Kf4Mt8UhGwD&mJrXQk)CaAyIiZ`_Nb?BGJ z$8Z=KYnd}E{D;O~XT6xs0IbF`p*D5Q3@K4&zr|K6w8&J+r^mwIY}_k8Z5<}5e`cl` zzpEOP7DP-)Jb0crg=*9&#j;Tcp+Un=R8O6%utvXTcIl*Bm#=ZGkS1~oOLR_1jC#Eq zG0jFAvCfyQkS6IoOh`{hrB6OJF+spiQBRd!5;QW&I$d{+MQlH-uM0kMXSvd%Gc!5) zRJ4McGOWLo=^xfh#DWd_N>ZeUfGw$p%^@-cCP`AN=*t4eWE17B$6U|L$55h{kd=rM* zk$S4&Z&aF7N}BqibL)w!5oX*OV0k2}xegACg2oTh9`qLh`i3UJLIRMIPTl!Em6)xB zt(}pUMsT03>&Dwu3{9>pDprUxhR1fi`@#~5>zP4iNv6jjc1ZrSqF@4cUiU$%Z%~!M z%r<=!s;JrZJu5xe@^LD(RQOOZ{aY9MrBTODPY?A-l=b6u3dd0 zGSQJEL5Me4=V-ZIL3B#{KyA2LYe)&mz^0trH^nH zw{hGSJsh?S7rS`cA;^`1JZ1(dX2$EQW&kV%8VotIbWBr;nI~xR7e8CU-t?DzeM+Bl zXW`(usx*rd5J0JvNBN#k#CO`ascGL8fu01BDpdQE#Q1|5YQ-F zB0qORhk&u;y#+&k3r@|t-ChomCyvDSC8@orcPWW!&;6uKX)QxuA}B9}RkHKk#eq7d zVj~Rci}{I<9o%TkGE+XcpjZ)yx(AmUMfn(7*}O|qb~~qUC7T{EjNG+RBzObCBu6+G z>5C9#09=|NB*P_nMy3N$1hq1@JE)le%X|mK3}xvtq9zx}Ffj=-wtF3auYV$&2= z-NYf6`G*Umo(mAnlLr)8Yo1ESHznp#gyez8YBL`oo#-BO+O z$m}I(xFt4NmPq&$z}M5Xt>V0fm;48dRS>eZE4s88UOhZ^u78M_2yFcoFX?`t?h3gq zaE&TfAYX^Y9EHB)NeoMctXP6ZRdR-DiA437|76UM*>xdH6#Sg6@uh$f_-)*@pX6{! zB|lae94W%p+KCZ&dIi2h0|=z}4E-|QKVdjO%;c`%!~;_hoM>sM^CtiYYag@5s=jsDEP|A($)Sm9Ce5mrS%KoDtxphT{0K~9rO2_G;HrTCfn zZwLBF6jKRrjo6MX;jF`<`}*zy^IU8o zAdb~gAUOYhZePv9$z06T)Wpc??<4%)I?4Isb!RV67>y@`a#=|r#G~WhQ>b7=y5sv- zsrQfk<>d=HX;pD2->92`r}zc4{ZL1KNQ?xX`J_+@evWBnaU4breSG(QcXRK0@owF$ zWIuh_{`A5Acxc<|v%*`ol)deHbD_5npxE9xyN|fr-*d0m?fN*JJ~&VRc)Iv_em`|> zf6Ja8-_*H&xjS#Ku131J$i4?2?ceHL=i{Z*!))*FtRQGg-#nau2Oy;T#?OyH4qIa=vyipB);su9FQNM%-OQY`&GYCL`!sF+_yid^ke|N?t!$dRy$@N3&Ot zJ3Cy@o4(YoQ25#kP;{^OxO={_TiiI;>UnGPRp0v-**qni`uO^OH0k)dTJEopdlz&+ z(YN|v`1rc>>vfd2-Mi%%e{g*mjyuK=X9uN+G$$W;__lPqt{*r$^rzpQTikh^ajY)I z#mgOuQxkID)adDjWUb|dtPd{#^sPd;-gw`?`pPgp%u{V^&$)vg+YmO+;ATqu{@XVt8?YH3l$yyCU_&EAY!9YW|QSA_h-jI%lW z?Y7xDf@ZPKU`_lTiTAnY~c)j~Y1FN@QNqC$%t8cYm zaJlig@Oj>yUbr{Pf3>w$ZPGd;lr2<^ypmRQl_LxCjW4z>e784lSw1&uTOjga;=+}j z;wwOB@_wpbHGzjL8(Mg6OTS;&8By+{&)nSPo}4Ios=V8~)qj2Rv~PKP*u<~>mBM+) z$oTZ;RrC7LclNXQ*Co@s?KAO`{10DMmCX*cXX{_Bu4=f}hSz3YQj3j-kBVheWhg9@ z%Y5(GRZWiLXg0s4-{`dKTw>T$@F-zVwp)IU5It-+qm!c3@V(Z%J=S`@RLjb=ck!vo z!oU3<(rGN4U{hb)+>|XU^2bl4FT+=fiW=%>Jk)UBI-j=1U|G8= zAEw5B-dl;)q-Q>)wCSL&4ji8E+#l2JgR>W&q&{6e*iE_23HqhIRc~4=JZKt>*+E$f z(^tuct(&XbMCfyPNvm(HZ#I<;X?WztzE%wO(ocm2@6R0o9u@5P?esLHT^f_c?t&kQ zQ|#3Z?Y>{Ma9H&Etv49ojpmsYw8v<#Xu(>?CTB0FnZ_2bQU_!m>(jd$Z{>#eaAs)+TpA-F{16-kHCk9u>yAIErO^#F z{*J~VRwwrfgG8+cynKXq{axd&^JfNh(_`}`Q+v|`+IlQJl0MV>@5Ys-IK$wtt&esc zI+ZSC+`Msg;2sm_`5^wX)detW#LJrC8B2*L5YbtgZ z>CQ)?f9?HI$aTUB7^krK1Eu~0{twE37Whw;|Ct2_YZJI_a_&zM4yhSyU>pduCLnnK z000>4Ke+x)=_kkuEs_nO7&M@m#oxucZLB|SF$gz&;H-miz|MZ){AYpx&|EE24?eF+ zv;ioF3@G*?4c@}OO#B)C;r1r-ci=wZz9!jAm3Uk`keBDYH!UA+)7U-e&?zm7%G4B< zZsHEyoo?Ne{m?IQA5A|TMvt$Y-S@+ni{SnJjM3g-pTn`m`CP}m zHk>(}pD(ytJl_v3W=||0SSyBh**_Jzj3J=EJ-R+Yo!fgHzpiC;qVi<4ZTvo_tAuQ9 zGYrkF#Dm>w;d9zOg~JP<-(1<(mifY9xH)l;-B|V-6=qoe)~1M{GZ%ssF#=M!O}bK9P1c!oS28dRQP6irF)dFS%Oid?`sO% z`kWSSWt?};`FIbr(_UV8xiZ{zWP3Vy<9Oa`hT)v-S3I9yUZR9~)Aqe?HD2d-M{8f| z`Lx+^q)O>tnpZB_>2YYS5o{jjSyCdEuRCRjT(?@hJf51@GWBB$?D_<)6Ju+5$gFel zL{cjD4ktJdRaPo8r*0?F8^B-4KAq^*%W}$fjNvzN$}yi-ckkR>HA>n#g&?7eGN9iW zI!_`ThMa!WW2ZT594{!f_rSHcsbI~pn6x%@f>K0emic0gV?WOEWl-ujl7K)!^F5T^ z2+|G+;R2Mr<5*;sA|vFztAszFvuX1pCbseBt>S97j{gwPT$@~7-{l<6ZIR39n?y%` z+iqfJXS@T(q(Rs1 z*W>1PA}{-xCUlyOv-G4aj)G4I!!wP#+Q8bpHAgC=J3JLB5{u<=xZp@0xSe|u#zY79 zDt+dj)@@z_g}2GbHuZAi`uF3mm#51KDPa@eu1$5Ab%9+tsCnrRymzDey ztqTmK`~ma8>Xw}#_|Eoe7a}V$MN(`j4GH&kj;#r|+zqK0P6)^gQ+1xN$Fi#h7H*hQ zI$_wNyz!7{ncFD8c#Nw~Z3?b%I$C$|V)WkrH0q=`sng?tesZeK>2r_DF#bOJ#l%T= zmR2q)XZK?H242ZmW(50Wi5$&MG~?a}=Q4*KG%F0->DeonFo$&$!6`!;p&Dyjimz8f z8>5T2ewccdZ&+t4zH{xfM4v51kpUeyv zwQEF0YM#!x&EA>6svv`NIv(#M*R|GtToL+{)u;`+%;>s+AYyRi#xG&hX9B#c)7{YaJPm-w>)OIU5jc~;ulXO+|(rkIi5L05GAbn{3 zh6`RJSby$LQibqM3*>v%lPZ+Gn-Y`2_vQc&AiE6FSobx!EonU12Mzo3+o7|YUCOun zao)P;~mza1D-WZ7LLI}7-?vF5H@(kt?99dF#`EA!;pY48)46R=dHDky9 z`il5@*Ig=ngpm<~ELD=25Gq9c3jx`lPx2ioVvvy$qR?PH9;Twbq110*SdTcIYTS#b zo#?03h{WJIaiXHM>)Oj=2z2*aXDuV88iWo^wQ_r=c-0uaC(!}HfvC``O^~yuwA!j` z*+WBB=pg2-2!-Mw6r{LS%h*XUK;v)C>7-{!3G}2bcklz?J4%3YfMjk}lxebQBbywR zA_vXqyZO1tV@htLXlBZ&SE+Tuz(_&o*j=5`vXt%E5je4v8i^ra`?vt?43yIhM!~q> z&1Y`v9nolI?b8)SeQ1WyBf9qPZMBgnC8J=%^{T&aq}8!|tt9t76v}+RSEMNho}DT? ze!rN#f1+El%=&zyvypS#W4e{#X!;g+($woE26L6V(MfA8w7mYah3ZL8$&0SaBz?A3 z2GvcB$tVj-bkNGiaI{s8HDQeJ@X%dx+-n>ypXyvpgo$3>yFG&@wdt6yXvJ&ao&7lW z`s!!VaZJ7GH}RyxA_U>{Q4f|hvYOIO5fB0M=NE_IpuIUth_v%vdrepLlW3Wm!3j*m zwRF#&G-3f>GEF6mfTjIXvxD?P`HF-EF3g|%2twyCg|m~C-wpN7Ixmg9##c+ci<>;C zhSVQ2O$z6$pFy@hJvybL`MeAczWR+lZApV2M^a}NnhcqVde504Dc`^{IFDPFAHaw-qYEN zr$ZrwMd)oIKeUbbcH0gMH;*QKIzr&V0|LA50?blcg-eHfCubGhG=9wsHP>i?6wTnw}IW5Tg zL?2r%rc64Tt8KTIWwaL0o5P}oTY)X{_ixd-`0xiS>h5P0gl%?uLkZohdVm*xS-$rY z9N~kZZtkzHi1$?f(z}REQc2jo2x2Bqsp`1BfHlchcYjBPGVCkxl@x?gx5`&IgQv+$ zu(j~%X=H?2DqJe(a_r*>g(+_xUf5bw}zQ?d`@ee9_+RrXB$%f1Q^m|&%)~++m`qjaBJB1!{&L3`YyVd z4FMjYu#FJ{&FrrS3tlLJ#AH>@4x-x|YFq$r5#(DNhRjjUvmKZN8;(2%mk>+YGVg0? zBi+A@Wz@Th+t}03`#O9*1mV@K=Kn}dw6*yo^;h9iJ6Cw0IE&tmIlT+YMMOa#|JFu0 z*jkz;+nh`*`-Sa}H0Xo1t&`mE!wuISOWt4q|LkN~!fvx%*6dlE+0hU{eLZ$RHM6h4 z$Y(g(5G`dPNaV6FN#}ZBNb_VqYmd;W(-2YDeR60-_yutR$7$FgFImG~9j?*a0SvJ^ zNU)ZseS5+Y-d>$tT?VL$4M0sOTujK8t#^(Vai**OGN?6M3>Sa2Zc6IOifZAhYwu~v zv?*di7XP)t+M0m3)8{=P|JLmKc;nXQCfS(b!4|x==GUBb3-Ytpj3J?EDw7*7Dy=DM z>G-0og4BIUV4XT=u>sLKh|pTZfO63HyYw=-vnvpkCJ^Dd`?X=YOjVwgDx40Dhx+bF z{s4Ix;;_0QTVo{6TooY~luOwt`kz1(%P+6|Bbu`raMcR(r73#+odhi%r zkUt+5fx;7gb51Ih3q_~gEl^r!wkwS2EqEMS9`Be*=v&X`1%EoZT1dNF0On394)khT z^lHY*idPbEyY^8|l%RiewNP=lNCpj>^lj{51)3`ppAVyJXQl379S0UXy+qb{I?7pr&Q%XX6{XC1h*Q$cVZF23$sGkh zs1QjQh&&c5yU_-tlArO!tGebYh+%()SMeFkDQpE(` zxeNmk)cjWmtbGO*pZ1AvAbxAUVW(gyD#=h|K`<0jVI-nq?V#A)pm-Fcr{h*wC^|ff z&{WMwM55|%pR0>XznO(}r`I}bfDbyC(h&(w@1Te*Xpid#Kp_$V;a1zx9xH_abx*^> zGTyU<3bGrbJC5L=%Y^)ANJQX&g*;t00fclq`xBDuA!xqFHuO-I)rb z1%x0D=9Ctw7^{@`5r_g|iplgsx>G2Fu-1AI#6r5)#QyNhZHbOlLO{Bv5JB1QC!+Ek z0JWt>))%HOU%~jZ(NgCqf@?tbtb(9`?0*YXatm!;2SL?7fB6bF7y$Jc)-g728?$J1 z&?NR7xlS|Rtpw4x8MtS_e-7v?7!=ZS4z%qQ#yYjid8#rN5h8Pr!^$ib!%dYH6q2JM z%xxglSxRqm5ABBsG+u_&z#dDnGJ#M)uoK;gin4ti=|XW~73JDQ-B+XT#V7&ZVi3B`nV5nxUB_H|$Cs1so0kSv3n9U_dSR1WUL?S8jq} zykEh{f}nP;=YL5|@1wtfU1QSCwvNA`nd#^|hq2J35+Sk^G`rej{Wl*8K`?zXM>HMm>BveW;i0+9L*mU=Jh{U zm<%q_(Tfg&7{!i*fg4SW`|){HGw$~T|0rHB&_N(D70+d#Z=X+A4-)_Pfxe`v z)d|hs;M>Gik2+aJ;@hn&9bYc|OPv&AY*b_h<@llSvzPFB z%HbxWA9L6VO0+FWEl&imLs|#5L*b}BQp;2t$AVuY3Nl724*IjSA9fuNrm9|g%GhVi z@FDAZ+VkxTAiA_i(#KV*4CVC8RBOri*T*yhyb<0zk>0hvBv?9!>#N6Ex~4G%H`-m9 zU@N1d;bMB`YzF6s*3Kr@0){qQhwxkVaD+)eX+KbSdfmDsX?y?di%ee1dKE*^?qbw_ z=fQ*Ajn!9@*@qx)IHpdCTe(Sqm9Tu2c*t+}QV+X&-o9twxgV4LF^HammY8yYj%9GP z>dAoRYFV`@Z(@G+%-QZWKCv+_?fP2b@hYG0S}rr!9naFL#!##EE2c0(Sg-VU?kb@t7(TMa?$#O5Dw}5pC~j@X}_;5LG>Xrj}D7L{(Pb>0iQ@HanLt0cS9k`cnm zCPtMvmaMVB51MmjYdM9q&REVATAh*X{-7#D+0oOa2B<20ZEs@ju9tXI&loek6f>_J z#-L7ADy&0Ev%XWC-hW4FUBVySCP|H_ab3x~dY(8Hc6}XU`ubJ-z2F3~-7BvB?b?tR z>dONJYw22cKHGOv2L=555{&q#eA$7_HJ8^|wC#HUUjJ!Q7IFkV6DpZcIr2C!iy-%D^eYJ3uva04T3X{%T0=@nu_XI819)i5;k`%zbpMXl$E95~dkU|a# zJb&*ldQ$qt`?u|@rW1=vqNk&+p?*deUlapYjiB?w1yaJ*cjudo-S95@&7GeAPPKS? zmNNfItFX&Vx{=|nWpQl2CmR^Uv|fAL;kAK7B|)nGdnOPHMK-@Q?&nh5V>y-P0IkFh zSbNMpreUL3t?dB}-6#p@uMBnQg^1$>$tx`{PCyD7(YAMyEJDl<{iGqr_duX2L8cHW z7^JCoof;zQ1ZcVH4@@D(h!X^<_YQ&R20mX(`=MvXwUfWH_?sFZ-Yfx&IeqP&;hsgD z7)MGXNL>JhHN?url+%qj9aPm>$tkabouTo-6k`6scy8$pW9-I5tqn9ark5g26=11z zcsd2j=OWxb!ZiyqJ_wOSoHzl7V1k>0rC^X?*`=1fkV_;FHU)^t{e$thh!cK6mJbmC zR{y(*h<>3u$qwzm1Tbbp&%jc*;~B5!F`XbzoCQ*T&~m2p#`RGmC&B3;hMO73u>-U* zzI5{!5~c!!i~KO|Og43ZfObr1Xkz~4eD*P5qHKWw zRw0R^cVxcK7-^w!@cpj!CwBY{!wh=MmBGm9D8YF9<3fz0IA>L_A!1fb*s)+3;Cl1-~ zwu&K&?mat}_$25gO-R|k2UJWr7ha8)Bmz#r0U}4%M?rQdjG)?$$l4K6`7&;0pIQzm z>4i~M)v}56mXWXbH>5VCBhhkY~w+DWb&T9|E!e}uXAkA)1Kli`!yI})ik<%6~>|38o zj3A+)_nC&>zt5w=Ygj!=ON|G-zi){j zj~@S_;)aR|_b(N0zyZeEmLYxON-u9WFLKTbf9p`pJ_P7^bNH8zw~@74CZhj^gj241 zy7$2Svs|Kr_V+(ld`|wb;z8kG5D&!wD?a}(Rt)Ox1rF>%90u3M-I#llxQ&iouV4)< znRn{JHhu8|a;}JerAafNP8~PrlnAf4vT6Zq>zZ7@M9~>vd1c+Kkzo@%P>wa_%EaQa z0X8?6(R+2Ni&eJdRH%K_Kx=~X75q4s z81v!%X<9^5AVXNwp=ePp`jJO91*qHT7DM1L`>{e;HGCGLaLC-5G^pM zd|6SIT4@(q`2NjR-ef4JybiPmLLW{%0^hFEKn$Ev-97?D7$62ogK9A(;cJbbiu1Q} zBy6S+MfE^s_<7ciYIzF7Fp3?H(}ar*on1AB52{52sc1pK`f!i|8pswLRQ;Uss5=CU z{N;otGUV4IO_&Xrh9j&Jrvl~MLZ)t$SUE)6D$}EtVXXRs5P;wjXu9_X^Al(mN)inE zrAhEy{a8T~y3z}y)?us@2%!B~@K6mTi?;J@P81etUje2GDyS-_pJFI9C?{&=QPA{b z$pj>Zvg+@XS7axAL$~M;g4KuX$D-{%87fYrT`WdH7*wLibqrw**KR7@u>Zegu~01D zI=_8UQT3ImBA|R@vHq5JoSwT4H|uSweCT<_;o{E$$xxyj+0Iy!q_{UR(vP-ZfvR#7 zboRO!(7{{!1>vbd)ZyDeZz){`+jp9~HP0cHgm_12^}JT02*Rhc*cDe{&llsM3cI{m zUie>osj#!&>2VfonN8Dgpp@18m8sdHY+~x4QR*2yFrjI2J{o)VN+_I+N=)Q}aDWzA zv>>U6!d-NCE`dON15{{nSLSCieF#275_!EyUotH5&nCMB@K5B)a62VcAOGU{M_u5;~P&N8`=qYsiIBp=n?ggw?~cL!ZmU zeW;AD1VvC$4={>zW0V-fO?FeJzVujThkjhYs8p5&M-+ua-6^s|SH{GO^|vMu<6_4p zt?!8_1W^;lN92S_{gIXAM>0{ANvbKtP>pE)s7|Jg;7XHw5HOXMk`1y$MHB|yFoNnh ze}UEcQUR_6PNixY5np6cDQj!|sf_9KC^^tST54Tq%JhB;;95%K;tBbRj1-EBVgvs~ z&4>OcDgk^DDgJylSu&i`-xg?911yO7g!W;yl>nY|Q~{I$W5MI%My>$Lak--ZMVScXpOiV0r;IJN2U2y} zE$bPWA*MzOXL`?&Pn^Yw}y8S(C`Cbf@Ho>7h+yiLI^a zR>hSZc2a>GlK{E+e3q4fqBR2qOn{BgC#gV1 zeZ=&Va*Q)N?uckkFdt7oA3@%i&EgSXszf~7s$_5E`(RW{`H6)-iC2Bu$F$Rs7ZlNo zE9P}lY=ta5Bl)!kA^;nT{h5afiv279Y0V|vHpEs;6$-9UUM%~#Rf6@|2%iMihHadk z+fz{1Wf^E)p!``xK;LaBoYA0~7)P}2=xs8*2xyg|yd6xq0MSAP|EWTX75L92aYO3q zcC8H!JG%!|OWHwglT+K^wM1ILPqPAkamZTXww!u#ZnZ z;K-3*+=(n$Kzk^uSJpG9oGqRpDz6TEti7ewbI}GS(kW${Qffz&&Q&Ua1 zDq+cgC=G%EC?!z>D3y`p1&y}lilN;QgEm2tmDteGzegv*5#vb8VP9hm4gk#uP~vo* zrHLZs7V6mpMHAzAm_H>*ux%b`ZV%|2`UTy2YT&V3EA%rd+EyqvDb}_h4oZR}9fDxnF*h_U208Nc03$a>{|Wtv zQ*?qh%?1GaV!i=$4p%~X43W#3OmPTm1l!AsqG3wC+hn^p$nbods*uK?@|LlogY#}u z1l6Blk>N?wZwx6v269)zMvJ>KNbI+v>gf_biDrLK(c%D^7~AhfVk1cX6g&k)k}jj9 z$}Hdeqjx!~XzdjoVAiD35uD37;WiLuw5>aQrY#yEN5~W;O|kvL7O#M6`mNNyl>awVpaOVmQdt<4C4W6E zRTi)qM@F%`d2YaG(Hd3c0>l5W&)lxPrdYLtC{nz-z5xcZ>t+hj!D)ZT1xlWX(my1{ ziNxVRDX}R`nLDRoTc6{+IpUn)A@ekBfEW0r;2xX}hdCiQ9k8ZAZ6xGav(FClnn%sr ztZJm?HXxn{E}yr)Po7dFO=H#&mbx30GSg8h?vBo-qUJ=TW(!-#ya-lO;lP}TcxWZ7 z&PAPE6Ev;{Gc&tLx!Uho3dFVDtLt}D;GuI&DF$w+Y;|=K!dCVdE_X1ni3s zx&Ix0QJqybJc1H-q=E}vZ8Ci89Tm&c6-;!V)(CmWI$dtTy;GcgbX7-}QKuR)%E`w48 zIzvqj3gFzdt%vXeErswVGj`4IB1H1PY%BC*UPJcdBYJ1E_&xdqUk6jbuSdTU;+7Tj z>>zBJgz(i%RUY`ybQ}EMgy)MYoeg0yLGtcSZ!no8dh>bohvN`_0ltQuV+?%+M0s0V zzP98sNV+s^Sr6d@1mgQE5YLaq$!kbMt*?Nx!QB1$tytbyc@*QS-#F;!pJoX|_zpUlKe$x`7lrTwlu8iyrUU3ZEM{{4iO05u^5KQl5XBBcHp)*zoc}kD$x{cO;$05|x!#q*{&EaMpt4<;Evt@?4)^-Dm?{Fw0qq)cT;1b<=7ZR>kK%_U z2HZS=Y=xt$cLo?yB<_I0e`@jcee{p|x00DhLBODwcs9q>6+keb;7bpbJ!;fP7q08O z7oKtflHNyca9T`#$hn5ZwguG24nm;;K#m;DD&dKPway>@c%`k+Y@eggHJWo>CY?|=anDpW(h(D_&Brx8&B(vcJ5aq*=dET6uFyE4 znKX8iOQ#_Pmi3&hF!s*fvbZG%yxWw3DS(&^0>=WkE|hT!@Ap-`tJZ9^M&gyx@Ld(I zu$5^Y0t_%P3dT=`Pv&sj3=j75+5CRI;6=X5z^rSF``>~&9`hgiDSRSRrM$5`} z000_O#sS}1pZ+EozOA=r?B|bd7MEo+yx)pL8Mps4*cX{1&eNG*v!FT4z`1cnIrP8j zto&GC#*JLQ^mHrFz>skW&Nz@ilOAIBV(2!zsGM7aK-*$*F(cS!S!Iq6m2nWyxy3F@ z$sXqXkOJpDH!cqj|8Jm-9@CvDNfj`TiC6p7_3i#Nh!NvV|N~{}97H+al8qi%G&S~2z zMh`3Lq=3s@$Ib`Vs~5>o>`mxPt$E%WRX8{@I?O6IY4<=cU{{sriz-CkJGT(A+iMuW zWCN1TXe__p;m=)8;&Cs+;K&fpPt%J$RQvRz@c0#YLd=S><|^0j2N+tpj^z!Is|z%Y zTEVihXOu?KNV-zOSLg|vKy0dRZcjmC=A|&3NuA@uv@_P@c2CSl45WTFd-?gW%_pP1 z|62%wgw6xXlOpwP*OLIIz^g-wlK$7rzP;TI9m9Ktr`3xJig3)ysJ^gWKy5dMQfzPF z7e#TH`%e1`#Um1;b4dzPq6tCj;}jL-L78zGa)^ci8x=uXUk&{%jh*q1r{s(oboU=- z@HCt7>KL=VyxzQPx%#sZ2iYmZ0+kuElNvxF)(a%bK zv;{62#ea@@AO$QAa?%yq^y@F2EV%uf+`x`C-LA$sIBKRtb-3lsyvy;2QrfMl=c? zAtI-sP$Na0U0e!LV?JHU^0#ZN;8 zu!39&kKiFgMr2cC`Ler!c9pwUk#WICY`situ=w>xqdh#`ZlkgKu`xhK@Wb0zSkhYo z2{nl@WKBWpF{X)f_SFgyL+$8d)E3|@5^tZwFmF^+l$5C#rpv`I1=uSzPjl?&%V`jc zV!f>0&?U?e>zp$!Jr@I-iy{bs<|30j6br(BzRsvP%AnWy#?oy=c6K@xHThat?3a18 zQE}Dy&n9P6gJ)2fbx=6*absqR32}dOVqf0olIC)1jn4)!*TUk&}G4w>MeEYK3-0M6_S{o5IPWXK%! zYKNR!j6}Fmah!1z=0^KocM=M6D@t-cKvo#6mOa}atwOQV=`cS6RET`X%*9I-4VHxx z+PEBHulWmOxE)r~zA%4Z^0dx$QFjf(+3yt3RrLfq?=(J^yIqWF6kyo0qjD1_Q)u$r zC?-)3oRWW%c?8@dX~}3-BBgfnV)c5A`sJ(j2C1NzlO6~=CrMd`;g^U;2S$5tpv;M= z_}Ax~h=3F;;>Rt_*!Y-6g*k>0k?ZL9m{igtr-t0xz4%-?lwq^&uhDb7Xcxeo;D0^~ zMksqqpqvpq0hzTrz`9lxY|(Se(Ebct-ucEOX5Tm?X*dgt2Y~H0ni2QvqZ*L-WrRhT z)X{T)@J~{F9x>a-wBNfUbHE;^94?8Kk5h=;bCg^+hwuHlG__vvU>7gx{1}+Q+ktDZcCVxnk-Xi#< z`=wK1f^#ki$Ydy)?rq3f5)^IIgz6{#WylKb2cHB0!XHBl6F~ud#Fx?nn4NhdQl^)M z>@@)O#MvQE4Q~%)Uup<&N%Urf;YLCtqlOIyd)VwoY%bQ%aa`2gC;jbvn|nE7L9pa} zOYtYV)UN30uv)Uzi?vB|SfX?L*Y>3GnHeDF#2oGye0p5Kwbn9JDrBBUfhQ&F{+p@B ztoB7FRk*UcYzBole>WQJ7^{V??6FKM7iRuDhY7T>m%_S`{3>Y4w9sU}%yB`yct$t& zCv-pdhd_1-^6BafPKdZC9(|J;2p5*-&lN^dA5RMNFvGpnBy`SB5d0Y-siR-%CS>JB z1`aD9>x?&wL0L)aCIVmxKLiR(n6y@B2#e(DB8Ru&;MDB2mCFc%33FLtNcMig4o$0Lc&$vM+YZ zM9pCU0!{$F*LumE)&P#r$6C#e4hGu(T2h;c0X z3&vo`rN&#FOX z-To&BO6O*gZu7P=bfcZrF6A*v^@cQ=CEz6iK(*h2tnS!jVRK|RiC05M5{;A3&rolk zCc8Qv`iErc)8U-6;S%(DVd(v4fP^Tisn~93mWnK2^jH`YLqZuSb$PjbFu%9Ho$vCp z>e8C00J|fS?eBXwH>ecE{h(~>{?QT*1LkK@!ddfJ!v0z2&Y@zkU@ufnLr&ye4;fs5 z>1=KIsd|yaoDnp!V$wK4nuU*EQHpZ4uF_D6j{D5G_-Avt0*BxjY4Y5F#ExMx zr)$Wcps>NiIo;tUA;2=u=OV~(QuawBq`@r|n12g}u1V~#Pv&L^j?vEK*JnEjOWZX^ z_nMEiYm>ewI{VTrEcY+=M&t6BFUv3U&CV`jX^6rlte3Dwzh3jh*EWiZZA3zIp#>P! z*c5lgqBet=OHXx0<;WthKFARKP^>Tmm#rLW`NA+6KF(A)SBn~g_UU+76>Dypbdj7ao02P6;AZ+QjFHn`|6RLJ z7%~`Rwpw2h>u*A_8UmagjHz?kJ2qtmv*LHmo4xOqiDdcTON=Ts9IJkqAMYyna$L}q zR3pTDw3LLcX+p2riptTJPI0f_0cQR3Hi&f@!{Uqet&5=dKU!RbK=v)<7Q$im+>9b1{eMpmvr`h}QhzqA{;79!Nz{Xw{c*r8-Q^N?^{s%=fnM6+Aw+lFsW@x!-5Au(-Lh^&CxA5FStkqZ$JPU zT>KHHN#KHGrCVV}+YSqC-RHT>bZHa#pVKRkH1-vN04b;%0e>GU#s8$Baxv0Z{Erhp zV!Fq?j{z2F+M}~~FII8aFr4vgEE5K9Tf9Icf-MdyV*_9^)Wq{IW_31$NrE%BU>`Swf@Dm&R{^M?4B!RrQt6j0ny5ooDrF!ATB`P!x6&+uPEBKnE+OPFfK z4-o;cN*=)s&&I)BR>PUWM$$haw+`UTSeMDQBP!N5L#=$Nq`;evxNf50h?MAM9<2k$ zUUa(<5JjS$7@dh~T+5|Bf;^N5k#8S5vYCQ1@=m#V!#9k-6XOWt!K<^XSFmfRSsXr! z$5ii-LF+hTWibnwWz(bak~57MTfGjndGZm3&1mla>|_TA2U$RfX7P5oYIOttPse_9 zW;+-Fa!~&Uq_#!=mt)3&loybH`Ya0cFG!qNv~J%@m~lwMKf4Ib(`umBf~eGO|ye z9_3DJj^9wjq5De7^m`*PU`DFhlI-`GX!yvkjR@4jS#hUBPEx{vnrj`f-9o~k1hJx3 ziNr9rxjHrzNSGr1$`~USMy=dKR+WbJXoUIWnKX^%4~7`_EwGQyF&MGLa)gR4jG3Q8 z6{sD!!Hz?O8wdOj(vZ-R5r}qH2Zyb7)Kn%XQ`tC;3*Wp3A&4Xjl)@R&L;3S$ZTD8Q z_YB%jS9&lch40+is7wisSyC%V(oN+N4NCp5CDL@olgen0LLn zWt486IdFWuy*k&2aC&`PG(@lSE|1RkFc)j)%1(veO87tBxnHwVV|hUPAv@vbah zYbn?tFH<*U$l^cBN3j{)xTDw2ZW8$#wYQXXZTET-Z+R0HhsvvWY`{V2Cu%PDzyFwY zdP(XeJ1ugTt`sT#e*Ir5xZ?$gng=0(fZC{lfKdN+NIIGtSsBs)Su*~~aHb(`v&x3i z2}riwx;Ov4>J-{4e71bPSO|yQBp6jMq-jYZPjF1q33qPS?W4C|-3N2l*jHV_|LJV@ zHPsro5&lRAgK{O5Lf-yhK>8;sY2aSCNH#maLLimTF z^9B$9w}C~hEs$q;l6led2Fe|arK)euFjY|KZct*)Q&ruK`!GmalnKqW!Gv8xpnGF2 zfW(C;H!%^C@cxjoi^K)yEo(Gxh`-UUa)N&@uFpWNLcyXGIGuw4IlSS;;CF7B)8I5f zuQv2$#EDU-BB*kBBs?iTju*8{Vk`&eTaCQpx-;+x_kw`g6O#W_;e4r+U=$T6jzJNk z$(5SE@8ip$6F`(uTR2{J#kf^|zP}$!GczkqWdXm^u39=*o^2!Fo^C7%^D$JCfqhdeBR{kvgMR1OyTG}LU)hg8# z3p3T2SNi?Nz0Nw{jLcNa@3q4d8MWb$hA z7ZP7#G3m5^9U5gBQXeZDsh+g*6Eq%^Cy78aOizF8eEP)gVZ55pDlBBK)ps0zb^XZ2 z&hJmVt4UKmWuo-jU!M0Dc899)UbVowpkM8f-wuA$zj-}VKAt|g*kpP(01d}=Z+btU zHR*I|`5=n-pH^kPUhk}&+VH;L29pan!$Aa#uK{_4_;Vitoyo~k>C}^A)sp6bqVJG6 z_Tf7m34+u4-3OHQTu2f63j4s%;@W17=xc^FGrAR1Hk{V}5F1JiYTkFp(hpOZ%_(07 zYKq4YUzL8j25DI)fnN5t?UF0ErV4P6<3GTnTgyKsl1{K9%7clFi2{>za74%wW}e7bfp+SN?VSL%tRZd6O^bsTKqnplW*H6U0)?=*!oqW8JZ{+ z-MagSk9Lj9G_m-w6~)?DVdtXpMVz5P*g{4klslY$H^N7{G;^x;*akZRL#vpQBEjTt zkHF~F=vflOxC^ImN8khQdYjUIygMFDiUiArxoW(nht=+hk%4bJA+1p{YPDb2`wW(F z!p)6)VH{B9JA$M}pmO`2O9_qL(@tEL`Bb`Y4cjDFEfZd48e^6=d0)G^)`RNx^lFQK zuYTokEpwuDxC)+`XWQ=I6k+n6^7!c{%YA8PQd~q^E>U)A=)M$s;eFe-KI1f{>9~rm z_tkkIK6_Qm#z!l4@OW$`Z^o2oFN{9dm%7XRXMDKY4;*F;co2~Ra<%3*I@o+ERO*Jl zWQ*GVJc4YkjV#*lR650Xtw*mYiHY#&taraex$sdm=YK3Nj2;B$ zUnDOOIlnP0k^g}qD;6cOo9w>#c&>Ad6p`O6mGQinBAX~iDP4zUMqY=EyjRR14gSQF zK4l-SYM+jW)H*FNq@GmmRp8v1SIkh7H2teSx1ycmXRn`4@p|YYJDTH;zkg%HMlldc(-1XSa8jT z`m}5rClxsU^Q$@qL$XQ80}^Jj{)Uoutq-@2%t~w7wgU(oYx&aRcJq5z2lC?PeuTRPdOR7X5B0v0(?P)hI+;PhI!bpOCoc*!K2)|r$izo3(jAgmgN}%MARV-L4@%@>%$1z&8yAOBSaB|525<9YGOH#TM5;Tc?3Yj( z!*7z%>yksH5JwtPkig<)2199x`sF1&5<61J6@oISfJly%15+vf{1YO!JvLweeIul6%hknp=)g+)4FsQs zOQuO!+`$&c<6J}r|JUsS|1DzRX`ldPdL^Q%qKT-wQ?n~Lp)4pm)yN3St`;NOJeW!V zh>2|p+)+gc^y{!KM!nzX(gD9POVvaVvIZ6`QThWj(ykS66i!mL~Wd+1}Z) zotP|pTPF}S+SOBwFq{DAKVRg1=`n9HG`;>IBtV4O!cb&WF+z(-qnu2TI2OREMrV-e zRC}RsGM(1?Hv7~?*ha31BSL(uXPJ+I2fa~am)h=++iKx6OixwchHStQe4kvy654Zs zxhyt?_@*MQELGB`!uPuL3i8hiZD^B{-UbNP2MEXbhwu-{a`ra14u5JjBf7@gp8-YK zrL*^DXM`~u%oHU=42aTVLE;;(s}HFq@v2Zn>6?c%7puXLOQqw*0yhrdet@-Z`7{;z z3>gWOQW3S0xv(88~N)Kj{z=hokeR-B86G1RXrd4c>mr#P!iyyUBPX zv6wZxJH&pUHugvc-$b|LW*8dPIvsMnfgJ`}`L}jSuVHB7OEkc&Qu`NWcDqy~`LCxA zv(ro~7e|uGDlAqz-_)~YguKJIhn|w$=|1voFnX}m z7L7ta-X;<~{#P$8dOG-r1z=3(2cUKL?>>jMla;=a{r_p}yrY`P+Bh7L9t<5t5Ot9t zO?t~p5s@NN6e)sqFf{2%hZtHYq4z3?x_~C|t%0R3#kfcZ6{H1$NDCbVGzj0w>LNMj zkI9*P=J(v(JLlec%gMYzROXv?*KIcLKBaiFapI|3isl_$Y?>^M?28gL6HBzF0B!>W zJz2R>)Gj4Cwye8k-!1yAK=qF}nd|KLJJB5B6H0p_`n$9{yQ>kY1V}8WkNk3k#nXu^ zVl%p3gVTH4S#!|E?VF6l?Cd>#e}$_#?@#U}^^(~}2WZ(vuum_T!A6AE-j8VKB)I*K zRzS6GW=@%{relfsy2`puMfn7Rd+`JJPk(SQjr|~X%?K|O-F`hZ`) z;kdntR|6I$gev(MF*>MTVY$k!VnCVDn= z5W#YMj1t1(IT06Li(=t4J+z5VaZFx1j2=T`qDrAVTivBfT>j(wqpGwMP%Zhf#HH9q zlRM=cyAadK{`tXy`}j*9HYE^Nw3dPEE807(#wj-&o)&47tZ+hqX+K6(?bbbRRPZXZC;(&C!Vqc9yzz}t!ahJL3^zj^x1POPjti9ah3{Xh9)|wb>qx)FFK%BJ84cWH$-`Yr+y7*4ButIK(1q= z(Ut{DY0aTs;IASrF(1uwwy*yAQT0!1Dsur@O7Q+eH^oNBEM7 zt0#vsr%HXWg7Cd=)(hgC^sV*M&86b%qSW%vBTv%hOU1EX(K=~*9Jx?i|2LWX1u0)Z zpJFbB>{oH#^3C@$>_@_GURBegX9aVfeD#~ln%pH$>tkzU~U7;t&>MN_9c4&$jP9Lgh$X5F>j#BJ) zz#2@sKswqla3PU%{&`Lke0J?576zSp!pqS3M^db@SOvNj-?HK$Dm%#YaiL5l`-Zlq z{}~Gup+dsVstw5wMAfUOT;h`rXl-Hw@u}vx(Ki0%wB)fFHt#!yukhoEx zn;HC7a4Wk>oX>FUw;9dqI5zmb>pp#gBiG(35|OOW(0HO&&>j4X8kywY2z&yVhT-yQ zm2uX{P8({WbR?}5^KU^7A7Vh}G@DFLYcl?7$42OelsJJ>sBuA#_f-qf70j3$ri#38 zBDJ}t(n1<$lbNKmIFr>SQ$7<_q?0%w;gY*}vPs(JMHs*PXM03YHn++xm@_{Or{up3 zTAE_|o7|i>i^)A*cM*QB(7>BstrhYz<4qcAVrXlxT_b^iz;AzYGxVOJ-=BNy@SU(G z`l80&*O5romZFyxC*mY)5UDo=2w{RO!om^6Q*~>ZEm6HHZ=+IuO`p#l$Mot4I0;4K zGO|R9L(N-VR9yCk$LtAi1ed+F+>0zDg6!m3bdXAbr(u@jm3wV032sT#m zt|UG1$G+voW(Luba3HD(yyS>vi=o>|*KCJBv|q|N@OU40j252bQC=ma4(Vd>ES;-7 zD+?c7%j$r_SH-u>)NaD~BHs-y?!R}FjwZ5`u%OC$zhri(>#Wk1am5aXpxX>Y- zH2X9U*`yvaf*J8!=Dl_Hd|4_fAF~LnGo4?A;)Nanb&92xot_u3y7XJGr0E6T-EcEv z3oEBdQ=Ti7>LxPLT#wV0jzykF=^^2CeJc-xG^~9^CKR9>YOPQSnrt$-@HRb1^+z_u zkRak&4x(#k1o!0vC2xD%jC&>3{D% zxP~F}7@NYm4^#QZrTrW>kN5fAUHi_~@J7Tg)7dk{3wtN9nF+M<4 zKc+{o3(GMYQ+oFXq>;rVr2uH zPSiH?>0B6$;SVGB<4F9$A=6Ku7KY6X&lZLk`*aRwS%o={R$v=H503s$2&{3P#U!Z^ zHeM4#$*Nx$JKL;3@hJs8+YXqR_vi^Bk8gj4hbx9pPGSGH{PHzPb-%<<2rRt3QkKI3-_nB_ z=o*RC<61}djU10f2`<1O^L*}#0`SPso*%D4d@EU=An8syJ$&%X!@dk^t5wxdmx`M6 z*thUF1Bf9ZZ1$sLASbnq4C;@>` zU9}zHQUVZ12LDh4-w3K#0ODU8|G>1T6r!TRM$W(`{eY0|h;SBY`S00d@8NwAiKdiq zj*gxn0dhAQ5Qz1NJRE5GPj2h!`Kwg zvP%P)c8CF literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/ScoredTweetsModelScoringPipelineConfig.scala b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/ScoredTweetsModelScoringPipelineConfig.scala deleted file mode 100644 index ab1b49a83..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/scoring_pipeline/ScoredTweetsModelScoringPipelineConfig.scala +++ /dev/null @@ -1,223 +0,0 @@ -package com.twitter.home_mixer.product.scored_tweets.scoring_pipeline - -import com.twitter.home_mixer.functional_component.feature_hydrator._ -import com.twitter.home_mixer.model.HomeFeatures.EarlybirdScoreFeature -import com.twitter.home_mixer.product.scored_tweets.candidate_pipeline.CachedScoredTweetsCandidatePipelineConfig -import com.twitter.home_mixer.product.scored_tweets.candidate_pipeline.ScoredTweetsBackfillCandidatePipelineConfig -import com.twitter.home_mixer.product.scored_tweets.candidate_pipeline.ScoredTweetsFrsCandidatePipelineConfig -import com.twitter.home_mixer.product.scored_tweets.candidate_pipeline.ScoredTweetsInNetworkCandidatePipelineConfig -import com.twitter.home_mixer.product.scored_tweets.candidate_pipeline.ScoredTweetsListsCandidatePipelineConfig -import com.twitter.home_mixer.product.scored_tweets.candidate_pipeline.ScoredTweetsPopularVideosCandidatePipelineConfig -import com.twitter.home_mixer.product.scored_tweets.candidate_pipeline.ScoredTweetsTweetMixerCandidatePipelineConfig -import com.twitter.home_mixer.product.scored_tweets.candidate_pipeline.ScoredTweetsUtegCandidatePipelineConfig -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.AncestorFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.AuthorFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.AuthorIsCreatorFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.EarlybirdFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.GizmoduckAuthorFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.GraphTwoHopFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.MetricCenterUserCountingFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.RealGraphViewerAuthorFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.RealGraphViewerRelatedUsersFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.RealTimeInteractionGraphEdgeFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.SimClustersEngagementSimilarityFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.SimClustersUserTweetScoresHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.TSPInferredTopicFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.TweetMetaDataFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.TweetTimeFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.TweetypieContentFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.TwhinAuthorFollowFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.UtegFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.offline_aggregates.Phase1EdgeAggregateFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.offline_aggregates.Phase2EdgeAggregateFeatureHydrator -import com.twitter.home_mixer.product.scored_tweets.feature_hydrator.real_time_aggregates._ -import com.twitter.home_mixer.product.scored_tweets.model.ScoredTweetsQuery -import com.twitter.home_mixer.product.scored_tweets.param.ScoredTweetsParam.QualityFactor -import com.twitter.home_mixer.product.scored_tweets.scorer.NaviModelScorer -import com.twitter.home_mixer.util.CandidatesUtil -import com.twitter.product_mixer.component_library.gate.NonEmptyCandidatesGate -import com.twitter.product_mixer.component_library.model.candidate.TweetCandidate -import com.twitter.product_mixer.component_library.selector.DropMaxCandidates -import com.twitter.product_mixer.component_library.selector.InsertAppendResults -import com.twitter.product_mixer.component_library.selector.UpdateSortCandidates -import com.twitter.product_mixer.core.functional_component.common.AllExceptPipelines -import com.twitter.product_mixer.core.functional_component.common.SpecificPipeline -import com.twitter.product_mixer.core.functional_component.common.SpecificPipelines -import com.twitter.product_mixer.core.functional_component.feature_hydrator.BaseCandidateFeatureHydrator -import com.twitter.product_mixer.core.functional_component.gate.BaseGate -import com.twitter.product_mixer.core.functional_component.scorer.Scorer -import com.twitter.product_mixer.core.functional_component.selector.Selector -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.ScoringPipelineIdentifier -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.pipeline_failure.PipelineFailure -import com.twitter.product_mixer.core.pipeline.pipeline_failure.UnexpectedCandidateResult -import com.twitter.product_mixer.core.pipeline.scoring.ScoringPipelineConfig -import com.twitter.timelines.configapi.Param - -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class ScoredTweetsModelScoringPipelineConfig @Inject() ( - // candidate sources - scoredTweetsInNetworkCandidatePipelineConfig: ScoredTweetsInNetworkCandidatePipelineConfig, - scoredTweetsUtegCandidatePipelineConfig: ScoredTweetsUtegCandidatePipelineConfig, - scoredTweetsTweetMixerCandidatePipelineConfig: ScoredTweetsTweetMixerCandidatePipelineConfig, - scoredTweetsFrsCandidatePipelineConfig: ScoredTweetsFrsCandidatePipelineConfig, - scoredTweetsListsCandidatePipelineConfig: ScoredTweetsListsCandidatePipelineConfig, - scoredTweetsPopularVideosCandidatePipelineConfig: ScoredTweetsPopularVideosCandidatePipelineConfig, - scoredTweetsBackfillCandidatePipelineConfig: ScoredTweetsBackfillCandidatePipelineConfig, - // feature hydrators - ancestorFeatureHydrator: AncestorFeatureHydrator, - authorFeatureHydrator: AuthorFeatureHydrator, - authorIsCreatorFeatureHydrator: AuthorIsCreatorFeatureHydrator, - earlybirdFeatureHydrator: EarlybirdFeatureHydrator, - gizmoduckAuthorSafetyFeatureHydrator: GizmoduckAuthorFeatureHydrator, - graphTwoHopFeatureHydrator: GraphTwoHopFeatureHydrator, - metricCenterUserCountingFeatureHydrator: MetricCenterUserCountingFeatureHydrator, - perspectiveFilteredSocialContextFeatureHydrator: PerspectiveFilteredSocialContextFeatureHydrator, - realGraphViewerAuthorFeatureHydrator: RealGraphViewerAuthorFeatureHydrator, - realGraphViewerRelatedUsersFeatureHydrator: RealGraphViewerRelatedUsersFeatureHydrator, - realTimeInteractionGraphEdgeFeatureHydrator: RealTimeInteractionGraphEdgeFeatureHydrator, - sgsValidSocialContextFeatureHydrator: SGSValidSocialContextFeatureHydrator, - simClustersEngagementSimilarityFeatureHydrator: SimClustersEngagementSimilarityFeatureHydrator, - simClustersUserTweetScoresHydrator: SimClustersUserTweetScoresHydrator, - tspInferredTopicFeatureHydrator: TSPInferredTopicFeatureHydrator, - tweetypieContentFeatureHydrator: TweetypieContentFeatureHydrator, - twhinAuthorFollowFeatureHydrator: TwhinAuthorFollowFeatureHydrator, - utegFeatureHydrator: UtegFeatureHydrator, - // real time aggregate feature hydrators - engagementsReceivedByAuthorRealTimeAggregateFeatureHydrator: EngagementsReceivedByAuthorRealTimeAggregateFeatureHydrator, - topicCountryEngagementRealTimeAggregateFeatureHydrator: TopicCountryEngagementRealTimeAggregateFeatureHydrator, - topicEngagementRealTimeAggregateFeatureHydrator: TopicEngagementRealTimeAggregateFeatureHydrator, - tweetCountryEngagementRealTimeAggregateFeatureHydrator: TweetCountryEngagementRealTimeAggregateFeatureHydrator, - tweetEngagementRealTimeAggregateFeatureHydrator: TweetEngagementRealTimeAggregateFeatureHydrator, - twitterListEngagementRealTimeAggregateFeatureHydrator: TwitterListEngagementRealTimeAggregateFeatureHydrator, - userAuthorEngagementRealTimeAggregateFeatureHydrator: UserAuthorEngagementRealTimeAggregateFeatureHydrator, - // offline aggregate feature hydrators - phase1EdgeAggregateFeatureHydrator: Phase1EdgeAggregateFeatureHydrator, - phase2EdgeAggregateFeatureHydrator: Phase2EdgeAggregateFeatureHydrator, - // model - naviModelScorer: NaviModelScorer) - extends ScoringPipelineConfig[ScoredTweetsQuery, TweetCandidate] { - - override val identifier: ScoringPipelineIdentifier = - ScoringPipelineIdentifier("ScoredTweetsModel") - - private val nonCachedScoringPipelineScope = AllExceptPipelines( - pipelinesToExclude = Set(CachedScoredTweetsCandidatePipelineConfig.Identifier) - ) - - override val gates: Seq[BaseGate[ScoredTweetsQuery]] = Seq( - NonEmptyCandidatesGate(nonCachedScoringPipelineScope) - ) - - private val earlybirdScorePipelineScope = Set( - scoredTweetsInNetworkCandidatePipelineConfig.identifier, - scoredTweetsUtegCandidatePipelineConfig.identifier, - scoredTweetsFrsCandidatePipelineConfig.identifier - ) - - private val earlybirdScoreOrdering: Ordering[CandidateWithDetails] = - Ordering.by[CandidateWithDetails, Double] { - case ItemCandidateWithDetails(_, _, features) => - -features.getOrElse(EarlybirdScoreFeature, None).getOrElse(0.0) - case _ => throw PipelineFailure(UnexpectedCandidateResult, "Invalid candidate type") - } - - private def qualityFactorDropMaxCandidates( - pipelineIdentifier: CandidatePipelineIdentifier, - qualityFactorParam: Param[Int] - ): DropMaxCandidates[ScoredTweetsQuery] = { - new DropMaxCandidates( - pipelineScope = SpecificPipelines(pipelineIdentifier), - maxSelector = (query, _, _) => - (query.getQualityFactorCurrentValue(identifier) * - query.params(qualityFactorParam)).toInt - ) - } - - override val selectors: Seq[Selector[ScoredTweetsQuery]] = Seq( - UpdateSortCandidates(SpecificPipelines(earlybirdScorePipelineScope), earlybirdScoreOrdering), - UpdateSortCandidates( - SpecificPipeline(scoredTweetsBackfillCandidatePipelineConfig.identifier), - CandidatesUtil.reverseChronTweetsOrdering - ), - qualityFactorDropMaxCandidates( - scoredTweetsInNetworkCandidatePipelineConfig.identifier, - QualityFactor.InNetworkMaxTweetsToScoreParam - ), - qualityFactorDropMaxCandidates( - scoredTweetsUtegCandidatePipelineConfig.identifier, - QualityFactor.UtegMaxTweetsToScoreParam - ), - qualityFactorDropMaxCandidates( - scoredTweetsFrsCandidatePipelineConfig.identifier, - QualityFactor.FrsMaxTweetsToScoreParam - ), - qualityFactorDropMaxCandidates( - scoredTweetsTweetMixerCandidatePipelineConfig.identifier, - QualityFactor.TweetMixerMaxTweetsToScoreParam - ), - qualityFactorDropMaxCandidates( - scoredTweetsListsCandidatePipelineConfig.identifier, - QualityFactor.ListsMaxTweetsToScoreParam - ), - qualityFactorDropMaxCandidates( - scoredTweetsPopularVideosCandidatePipelineConfig.identifier, - QualityFactor.PopularVideosMaxTweetsToScoreParam - ), - qualityFactorDropMaxCandidates( - scoredTweetsBackfillCandidatePipelineConfig.identifier, - QualityFactor.BackfillMaxTweetsToScoreParam - ), - // Select candidates for Heavy Ranker Feature Hydration and Scoring - InsertAppendResults(nonCachedScoringPipelineScope) - ) - - override val preScoringFeatureHydrationPhase1: Seq[ - BaseCandidateFeatureHydrator[ScoredTweetsQuery, TweetCandidate, _] - ] = Seq( - TweetMetaDataFeatureHydrator, - ancestorFeatureHydrator, - authorFeatureHydrator, - authorIsCreatorFeatureHydrator, - earlybirdFeatureHydrator, - gizmoduckAuthorSafetyFeatureHydrator, - graphTwoHopFeatureHydrator, - metricCenterUserCountingFeatureHydrator, - realTimeInteractionGraphEdgeFeatureHydrator, - realGraphViewerAuthorFeatureHydrator, - simClustersEngagementSimilarityFeatureHydrator, - simClustersUserTweetScoresHydrator, - InNetworkFeatureHydrator, - tspInferredTopicFeatureHydrator, - tweetypieContentFeatureHydrator, - twhinAuthorFollowFeatureHydrator, - utegFeatureHydrator, - // real time aggregates - engagementsReceivedByAuthorRealTimeAggregateFeatureHydrator, - tweetCountryEngagementRealTimeAggregateFeatureHydrator, - tweetEngagementRealTimeAggregateFeatureHydrator, - twitterListEngagementRealTimeAggregateFeatureHydrator, - userAuthorEngagementRealTimeAggregateFeatureHydrator, - // offline aggregates - phase1EdgeAggregateFeatureHydrator - ) - - override val preScoringFeatureHydrationPhase2: Seq[ - BaseCandidateFeatureHydrator[ScoredTweetsQuery, TweetCandidate, _] - ] = Seq( - perspectiveFilteredSocialContextFeatureHydrator, - phase2EdgeAggregateFeatureHydrator, - realGraphViewerRelatedUsersFeatureHydrator, - sgsValidSocialContextFeatureHydrator, - TweetTimeFeatureHydrator, - topicCountryEngagementRealTimeAggregateFeatureHydrator, - topicEngagementRealTimeAggregateFeatureHydrator - ) - - override val scorers: Seq[Scorer[ScoredTweetsQuery, TweetCandidate]] = Seq(naviModelScorer) -} diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/selector/BUILD.bazel b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/selector/BUILD.bazel deleted file mode 100644 index c5dbb187f..000000000 --- a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/selector/BUILD.bazel +++ /dev/null @@ -1,12 +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/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/presentation", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - ], -) diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/selector/BUILD.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/selector/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..2e7401cf5fcb5bebb4159660077791936d508067 GIT binary patch literal 36852 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 literal 0 HcmV?d00001 diff --git a/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/selector/KeepBestOutOfNetworkCandidatePerAuthorPerSuggestType.docx b/home-mixer/server/src/main/scala/com/twitter/home_mixer/product/scored_tweets/selector/KeepBestOutOfNetworkCandidatePerAuthorPerSuggestType.docx new file mode 100644 index 0000000000000000000000000000000000000000..c2821d97283650fb3a2f9c887ebfdc4b15d22601 GIT binary patch literal 37223 zcmagFWmsIvwm*!!dvJGmcL*f7I|L2dNN{L8xLa^{cX#&?+$~6Oclmc_=A1Kg?!E8( zW%E!~>nCgNuByGeTInMs6c!j57#tW}3XfKWNX+Ds8v@2VE4t$?u((C zyS7yK(+d z^=YMG80OgYlsj+Ym0F=ruSRNJ3CRydDytQ2BQ*)kOsaP`E1(_Y9*#Vg9 z=5()jQ{3RJJJo&sh8RI-;@LX>iCPa}Q8X3N8W<#lL2xQUqtGE$dDA>O?G*NEDu=@~ zI}D$9N0nS&#(iALA0&LGGG7*%sWmdJ(-2zyc)x`jovTZKHL8#6cdBujV5oDnPQ8$<-4{rG9y&Fng+$#Do%TM}`ts!(ZJ#zq=srhCnkbShG!SK0V zM>|T*+ww3#2H)dO0ww*Z+nW`xLpz5tdfPo=`{u(-(**LK<|GrklO?-f4L-RcomKvrivTIbA%wIB)Jdn>9 z?*2A@T4)E9DO~RCP?pr!!s#L2Kie@epHIspSY#-)3D7jwp7YOH=+WAsyQpt7T!l-5 zZ}%f}Q`-*Iwn+`Yp+FHeqrT%d*B}*USjQaDrK>xg7ONDOG^DqcK`9O_iATRi{6eeg z?9DU-fB{I$HFAX&RkZxHaSgi{Y5XE%wtMJA-g{nRT|Th zj??V@6W}+RVpVy*ZuxPq@=lvcNCB=lM$E3OQdVsQz{S@&r zYfbW*PDAvfH{8gyF8A3#6BP0lQPmQ3n@@uhgbqrODZoU@5n%7cVghh9`+bvV#EmKR zv7$-cc}dO6YlL2*!AZ%|gCB-{kiqg>Y`Nv+lD8Sl};4MWt%eqAxfS$)csqUWnf4D3DYew?|aw%|7z?G9JQM?$F1gp^HV z)0dkM;iu@Y<>H+EI!Tt%tWubBAg+oozw}i@G>*2F0-1Cdi|&`7A8}|rMO+Md+BDh)iCUYCoT`rNT}c(qRJ^MuFV?kn_(wTjt(1BE|B_VNKL^=C`s>frca8? zMg4Q&R&`z00sRFvL$kBnt4vN*z9L^tn>ng6UmC}FX_7wy)7NrPhFpa#g5fg~?yfH^ z+0qhZv5Lgfp=4WSelT`UDcvbX=EENWwRE39bkPYh7{U&1V5#gy^l{O84{CD!n(vND$Q@R4SVL&23LDy6nb;?Hf+~eB z!PXc+*LN_S8m*XvVS@jXqN!9l>PcQ_Jbpn8Ywx7UF!f~_MRdL1v#?FU-s}6bnW)sU zOU-@%d7@Io;`%pbR>iO~$d{_mW$wjOLR{~6ZVt7R5|L4)AwIouK#jSVS<)_rNaM@UY9DPkR~FmA32iHj1&y{VTE}1&Z%G+S6E`S%}Z!(;lt}-sWzON&b0bbS;S*Ie~79 z6udt_u&w|{Qx?#t*4Y-cIQ_meCbaccSGlpg&#IK}$l3(JR}jBQ5Vfbkd>H+L-$<4r zY|0){U1f`{t3v6XY+Lx&q4~OqnqB>gEdf@yH7P1;s-soY0A*co_g#wb54rPf0sD4l zaN@9#3(AAniwif;u8;LOg1IT1XkRR{+W^uVL~<`Ofl?@|Xp)=DS);56`GYbW&d%S& z6&m8}l;D|+cLK>>r3mZLR!fv(+jfxKYpD|9#H{sBV=m$6GVqykk8*Z7ZBhj?o1(o3 z_wjh%!NU`h42tj08fjATO6cP_60lKm9s8S&k2B8Oqj13U2W+kf0Qs1WQQu%7i}fKZ6V?H8b-YWdOZc!V>VA+#sYmM(OGcrVz8G>G!7891^4a{Xwml-T;{`jeL?lQ1 zdkY%g@##T#h6n?TIi;nWEGFr251Xnv5-kljU;6$rLfSAXz4*?75^c!j1Qr;ixCBfN z`e<(ohMM~K4asir?({Iuu>z&NF5Z1||M3TCX-lvk0En&zyPl?I+riP z$o}5!G0Xn3GWYV%)dN`T@c2wkDMX1&Vn46A#;&r_R+C7IY;?C$(yyW&s+7P82m3+i zojZux~2!1q{~^3v@uhIk~{Ykoh)uFlxc*vH;Ph=AwMvy*4` zlF<(w=*Wnz`dLD>VP{qGdWw{6okgenQz*0R@no-^>+_mm-NLvI&HOFGTRqV@Z=EQU z6TRoYTZe~0-;*r{i+A$ewp}XKDUAgbPV1W)J$-)Uz?|Hd3i{Y&7Ql#B#fL_nEYBu2 zrhNB+M-A`tZVUB1`7U8;(P(Zc?J)RAk4Wq&^;9Vm|EPT;5)_|Rp;OMnnp$bV0kSJ9 z!OlAc`ieHszMkr5hmX`2K07m(-`^b{AG^DlhMkby)|_ZS0`pvmC@7cjV5&Z_Cgqz? zOO;Ch3*~pBt~g&r^SH!V<(3 z16c9Cp1mUU2E}6)+J(P6&ZTanm#!-C3X)!qyOr48&|NcSl-Ty$x#RZEqOqNsxK*8B z7rfLH9#=0pCgng-1U2w*Nen3gwnW6hwS6H zH?kbvF`qX9lXUHpNS0tPs7_big1ju^2p8j}s!df5v<`YVVa;oGJ)O|+p#cBI6Ba^b zM>wL0aGQ@v%UXF%^Zk)f@A)?jKT;Z79H-@CjXk5)kG#v*(^XJ>4*@?|{+a8@G8}<$ z7BDaab!afuf92Zgi@S}P)9rP`25p0CJ=0B(he-nh47PSM`q0# zhdjs3@%QhzpQBF21KJ6m+mG@gnkPOsVkz!y9(frq_QH=WbWq?H%Dm(w(ng(1M}L-gCj)52L)kx0|g zj{g0_+C^LPT-($B%&(ia;NYD@_m^71SKGJN^&l4DGKoP_(fL&0esJ>c*4WBXQ`yVd z(Ph2+str$(2uXQQcZcFvzL1F8w`Ec4V^r$dGmgM5fPsdI?-GQ?N4nz`K5h`fx?tN)II}mh_`Js7pF(AV>?!L z4|pGtVcnJjO**npqSBtu6K^ivQi*uRuET+jOdcZ6z;99{UNV^{WN-ad4_(GR zRbzA1Np;U(bb^8CsZ{u1+Tc6R*YVquMS$+%YHeNuCzxbap)uFhsL%z$rx^TG!F8y? zRh1$y)rQ{MBHp|~EbVR4WKQ$8K(qJ2ons z*ZY+{7oL4YzLJZ9x3&;M>RV%3cLSC@yepr#%M5#?$C=)XP2 zmwu~vZ~FJ+GK;Xnb_y%bW)S%Fg{_n)8!zpGj3OjSRa36ht2!|%?7hKFL-C6hD06l< zeZQ(VyeqLxw5^PvlNa`P9h}N>@{1p%(a&3+7Cv36(OLDUSlkD^wd+^TPd%N?Jlfwm zybQ_SUWuHX38yPdH|WpJp7-rtUHv-kb4urA2x=iL(2RWR+jA==PQRj64?tY{zI#vQ zb563LnAVgWZUyx{#F`Sl+6g?JPlK4|TduR7cTlWP8LHO#MmYJ8|Q&w>VKr@;p z!?Hc5DJ*C~i{AzJ>E!kNmn}m&@!$`1FKn_~xF2F(M257o5d{>y@xo{3W$MGLlFw>n z(H~@#Wr{IW5;)2N8F#T5$UZVHe1MBnXzeQZ*&t-O*BEUd!kRB{XG_ZiSGKvxYI-Tb z|E3eh`1-VF*&$GQ)}Ox=R?Wt-A-kw$yB&{~&kgwjP9+V23aV#c(t+$SJ};25L0d&U zX88*p8JxvBR<|MCRiQ6dpu4Il!g4zuDWdIqc}AWLoC*a4hQEDWlP_udPkn*tShW1i z_OhT&Dgd}P?})A_n!+UxT3~!T^e~h7B~FZgOgnUb_V3QmpiZ2BbwX`X0>H)o8eiFf zPsI$y;*L1nE4vQyFYFV}I8Z1lXdK-ip*kS6AQ0|9LjREB6IsMf-_|bPz%Bz zDw5ivO>_Q-#Q#9WcwAQE_$Px#{au&~0Z5Mu8ptbF{ZA%RM5h0e$V3W91hs%;uFbLWo&6>G^D6?dit3Mc;0~Q|!5KVcaF>^P=08 z?)~6QR@IhU)vq~W#r@sAk=(8O$PE$wrW;9;D7$UuCDBB^s57ou{I@52Bnc+>DI+w- z)e@rgje%9t+f$&+V!A8xz)B~x&rp_(?U7^Le#>!x7@%s~uQD2~#KxOeu=nc0k@3*s z-SYW{!2FCYPa8|}(S9t>)YwlG9z?x$HhC9f(~f`~{0$<7y-=&T4wItY9kz$JU2o-4 zgfq71D`y`s*R$q$O4NdNr;zIT8z$8iBFfR$2+hTKoHnakiiwujp0(IP z^}`dl<*xpyq`T~dAD7g;U0+;PKTo2J;Dj8N*1JJM4biLPY?TPr_a|<8CdM`0-@kCtVUlld^Dj$+Xse+thIW zXdz4d0TncV!pZx14L^?TJkGqLS#_uMuRA!W-P=Ajss3aZdG72$_#hxRFu1+z^N}0p zJ&Pj`j)k!MiWZ@Mr!6B;@Xgf$n5!O0!{Tb$mS=?DX8t^lXZ`h+IADBb7f#_l2TzK74l~<@CNzR=ApoElLn=prZd za?Q-o1!$WzWF=DPj*i_2@l6tkj624b>j#=`B(0e4&B4T5tXlD+(D?f^=L$46$9Jn! zHDT!V>!WDmw#cI_@UZbKMKi8GJ34U|a+FagsY#xDYfaS~rw%NI9xgX=0oIQY@qQh$ zYgrEZXYa-+roYuJ;dHqv8q89N6?+}2+b3-m`*IP&%%kaz(xxJ^Yy5l&w~`)yB-)U_ zmP5eTO(A+iFX(jM9wXpdD6XQ%#;PzA@XcQD-;FMILuVQwQB!=WMHSi*d3o0)F)0GL z?rl+aoXacJzhx&Jy&PS#IgoF^jO+eB%BZIreLRk7pO}lktl6M>5K@FzoDzOCYZtB7 zp%Qrmwfpf$wY;~~;7I8p|B=WN4dXOH636*RC@yyihmxg}l2Y8X8sZ!;b?rz$pNu0r zj{X>BCp_{6!rCeQTzN*4tpy@_FDPxXXSxJFCy2d|*Z^6@v|D$xzAMK&KK{Z(VQt-L zfk^2ot?>$3#9REVwZ>H=e%c_UNI_4w`2Hz_49P>!+byFX-}|OE8dtbh&d%Z%Qq}ts z5x&0Nzdp_r;+B6zO=sopT6E*AR{zA6hoGQFS^Alucd@kkNMk_p;x64rp0es!cCa#s z$EM`a!+=L#Uux^^ET&S>N(4RcbZl|%`~jNAK(n1XWA6obTa)oL+x)=IoVjxkj(EP@fzk+vSW0nR?BS2M2@eC-?4Bv^HgU@;6nU;nfOS+q@rImrBTT)@Uc&7nwv zw~hMY;&~R^kVUdXY#k+yqeKB8Rj-m#@*3fLHO^+D{arc3&legXcEP;sl``F7=4}P{ z+z3kh)ikqvK}MBE0ZDAt$ad_g@od~OZw77kPk~U-+F`&PcIeVXV`8N^x1vJ5$uI#Y zWp+!t=j^OKwL@C5@6g*qDyBJZU+{Zd8|72BV zrA4OEsm-XZkY`C&$5GE}ge{J0h^UG3RhmbZL*c^&uNeDIKBBpeMO{k1P*K5cI{A{* zGPI{v^H#Wg49ugTzm^uK@v@@x{$@ovMf1+yA)YoKLUcEo3FK0p5?OtEBmdCqUDj~W%h`i&=d@Dt<6~Z&`F)y&oZlV&R~ZF_?}nrjR+52c#GG1ps9JA zV1o*Vi;dN;@bSU^<$KY@mK#E(=hT-0#9x!QKOpX@$~Y5N7nh(lMiSL4GGj6!T+(c9 zPh&qmXezhpWwyQQo<2%Qlc3@<3FRY?upPO`YMf-M?-(JU9d`D@@C4rH?InZFC%(^dSsYIhYf9MpA?sSYn|KG29heGE*WAuF3odRO*v@br@LqH< zvYUy07#=eYQMl(Y^?U}RI5|AEj5$0e-Jv9b=Rdgx3VUR4tqi9LO8v2>39O5RAvG(u1gWiEXwP>EpbL+Q~n%AVfDL2I70@0fIlizop8gd~;yB!vq=6v)M ze8(@|Aw)OGWkMFx@b3iLAZ)hHe#G`rkx%}ZG)@gw2gvGTVF$L9U)QCnb9p>@9SWU5 zIDY#m**q4)x{P}30sfe7yVZf~U($C#IRZGVH86?;Otr-Ud%l=sS&AfUl}&+in3$c9W5yGm%1}^A>!&qn0>;fARui-Isd^ahUvCI*IDq z9ElfRaO2{Vfd0zKJnMIg@}~**H-}_MR(D9GjC6M47w)~Czr0sh5qP?>g;81F491V( zM0s|kqzdu5Oaohg8dP<#&)uFNdv-Lx(VxC z99)q$c@IrUuhgLaW1~cE2EyU)O{#33fm_}?>O=i;*vg}8?3)j_;osYqkcN*+g5+_P z0ibXkByZ`CKf;Uu3ZMOV_`&b+0AlfuQg7~SyC0C39#$_iQnP7wR*lY5S;{QX?MmI4 zhXs6+sL7?cH*qI1Hbwp(?j4aoigDK$LzJqld@wrF2>jYJb*P=uZ}!SlZ6BsBWC=b2Jr-v&z3DONSzfbRXYpKT9pPA^H|K;lqCq~ z86ddj_|nXNbP6G6R=;XBs3nRzQBz{6O4h)?=_Rm4KU6;n&U58pidj$%uVl_$Pgk#F zGJlNlpxX?B$W&sPAoFNe>nKjP2{sk5oPDb5+Y1eF*-6eOy{qj_5oPA0MSsV!aE0nT zyP@=+ij*0a7PSZH$}b&2sF^k~BvWv9YMAu4MzTI7ekGY#E)l^dV3+g@_vNR~^`q0Z z^d61okm}*3*HyhNR!NBQM8rYPB-w=Z&XS8}srl!`SY=V~yGINt#=+vqF$l|2?z@eb z(D!*Us=Ljzs=m1DN?|Bc@c?KDkRpU(NtqP5?;<_8^#OvZE)*uNN;P(bz=>Z{x zPU-+Z9V=@yfl%@Y3s1i@!}pWK$T6LzmMzgw>m?HqIna^J zBPWG6jPDVpiTDhn@{b^KYaBYwOz9}KM34D54;1CUcocSIalyBWE|k!#jhqe#Sy<_d z;b=jY5`O#=Q@dv6Yi*Gd)$i4Wq}=z4insiFV*cb@*lPgKnU(h%{Yhgfp1rrBDO%(l#)a;?Ff~{55uJIzWUc@Wr15 zm3WoVmHM8}hD`Id&nsIPBe^gmsfIor9Jbx*%?>jn;q4L z*mYWy%kAfLCxmaXo6D{BNJ=I8Itclf%uG;?KqVC<_2-}TgqEH0v@gclq^~1ouMRDb zmk-rGh@WP?I}oX8i3uX#8#qw3pbTmT+|vYCP2N!<=BLs*s&XFfWqsxw;1al;Pp9S9E9c7=4Bgt6E z!1$HCE@Qa7Dkg<*fz@-{EK3`SuN6E>fl+z`GM?arQ7X|=8C5u4CgGR~+xeAA=m1vj z)~W#`b-IEd_c9hlEJTVpsUw&woFr1nz%U{?&I~q=MC_7+={z)qBP@qm^zk7_IN5ui z?&;8h1J7*}RYvJ54%h}$wt>7eH%1sB7;()vaqe`O_@#8!8HewMXdzhN{o=v+VlZjJ zjYS!y4bW=7RaWDLjk}Q7F{8x@Xp?*H$^1~G&oLce|Y1Z&ATc%PWE zofEon6aML2Y6Jucy0BGyv;FW78Tb-3pk&&JnbL3)KGHZi$t{2OH1g_dB#P->d8|o(7WCz()&Pw4$To$ieiuuzz@zmUg%S(zo>C2s{C8FjVZ3gN;YGN@s z>%{|8 *YvKlg77~tQXuit$^$z6Flok!PG;lC*4I2TuNFsuqQnb?FnS*A|TMXqML zfm!V54zo>JE8vDGR4how5Gl=(p1|?4HGTrQ5_Va~0VeJ2=`c{r?b1t8b zIdI?qa96~v{Hf68e=598zY3m+ z-6-ewP|guMDSqcT;#jN)d)c4!gK2oCGXEXNuDjZRL=Q?&>AV`OwvF+#MD<2SRO|-P z?-lysVPma}@vTjyJu65VPgXA&&C+F+afan_q~YLZ{~&T)u`;S?cK2b=GB3j1x|W5t zsA$Q6%YzVR^2>3}XGkI^ey` zIU#$!6rXYHR%Nmm!;QkspQ^c-y$>MW9-4``xN?{`r{we z7$9ockH2@{<1Op+$Vo0@^5dXY&#Oc45x4l(M0)J-EXf&Zn|aH7sqWo7U?hYTjyaAxhm`*o zzx;qbP;H52=`b|d=Gy05UMEuiBStB>{le9CSlNf zFLxTi9l*{89LocZnwKZ_(lWN9K zIrh`gOiRfrC>x8?Jp!7~KUCG<>#y5~%>xZFCS-M95Xe(uaxJk9zm?p5B}<(LPo@68 zDh52YE;E6GyS{F7jS}OOpMM^dDB`zFHC@G&p9v|1Uz}8%;8B>#FDi{{ZQtUocoCLQ zovDAsmgGd1oEh~r(?0B|4JmZ?ErjQ6i_LmkKFo%M5PCVKGDnk-=jyunUZRjn{q9b3 zhBMa^qLD-WDsqPNS4n9eGk{;-x&x4L%30w8jV=#4U4Oamm*jCKnrlgvZ3!{a^>e?o zkw45&RI$sG0bg>)bOIpwr8K@!c2H=VGxBq)?}^-;*AAz=N9kel7=gmf^4U%apM062 znB}v1G8dbYz%==NR^yJO=Pa zZ%wbtKWrF&a(r+DT76gMgOKRao<^I|9p}@9gM>ryTr@>{LGV~?9tdzn17N{Hm!=A5 zk@%gaT%_1O?HVJEu2RQAqIpxJuLKQ+$ftEsieJ{Y`^k} zm$xr&B%n?019X|U)InNtB02B^ur`7YT zapWp??MJeLA(33VwIps;3vN@3S=}%>(3ivT_G;B8vlVBz1gBuX(!aa7e)Mh=xM)K; z7ohouw7=@zDEgI#m9|(&@uoTkC^(nbi+>&x#jxT~WVM=U-+|LO+0=8}-i@$`co}kr zzCqDh6p0>kma{mJ_CzrmM!tq;_+-m9%a=v}0X!PfCFZfgj{mCcUR<%m0iLZ3g|%zI zh|``I-AXJat2;YentrZN{IO6i8o@fAoWIgWGojSMv-er&v;Pl>D@5wfea~J++3_hb z`;X&Q;nJjg!6vw4X`W6O_3PwU)?H$8{8y?{bej%a1%AuFc^Cj18|Ugfx&$=Zd3kJ;Gs%qRl4h^;WM zigCpOwu*6el#3qnu*KRHi+gWlG$nV$#NKtAmQ>0iqMiUjjC)La^CuO~yb1sjlmy7} zsgx-k#AKoz3fe17JgoYuDi5t;;jTmFPfyR1Ly2qqnp}2<-wdyq%vYB7_hD4GiYWIi zz?!M{7NjW9t|V&0d9Gf%aTJeiPp_;yUO0P&MWlWcbxu{eRHRKlj}mz49wK*wa^U*_ zy;E{zPd*#OF5)L9hCEaj9CVFaMT|YKp!Y>@>2ynd=Qi-6;X7k{ydk9)8} z*biuh*Q+C#OL*DrS)J>E(S!wp{UY(Kk|5!0!s04ir4rP+MYUrN=SO8{iU|b{iVdrb z3D>IC;KLm&=&nnNWt$s`<>Jlvbp8lHB9{9GN32w4w~goQB7c(J{7eCRS^`M5^O=Pw z`IJkKooBUkj)u+POvsxX2>SaR{4@k$p@PUL(YI^<{y48PXYP#-f0EMZGVEvi+tbpl z30Y{759n&=M;<*@k(jK`Jx{*{Kci9KtnxX51pEI-uzywww8)==dwvT(|1G$Z;K>G;vO%tEN;WMHuk%*>06!zW zT-Lq~5EXAOh;1Btfcy;2Apk42dZr5eNkG!%K`Ak5UpMMuIrj>_LWVhNcA~%kg?+7d zF7a(P;9}N!@p-7gKWp$`#r$7$=k+=VgY&!;bwFWAt{(?U-kUW zV=7ohizL0$t52vT))gg+Ny42ytR!8oRB!n+Jy_$gVw*H$?J#3T1RA>sM?ct=Wj>p|*EbOFs z>o7=7Ys#!IcQ!3!P-`^p`IaiOu{ovLR{gVs7>CU z3+7&jg<8U~Jt(lA3!F(+d(a#Ieq?d`RX5LT*eITYaf5CLJu~|5i*3I+XkHXyxwuWY ztj*^02X?3-_$XKOD1lCa`bGI$TMY#oUV}QZ-|zaRq8!M0*RlT_z(Mghz+vbg0QPsT z{yR`ZZE!;;-NaFg8*cpN=?eDk<^d597W|o^1c95)7q_T!I5ht5}1NT=6$l-?99s**;&$W)3!ELC+yLPSZ2r)*v+;w z!GJ3d7NPWTo&)1iBwzHS)jZ?;dxXakq~2kC&#tj_6%)@OBwn(EUBItK+niTQ4OWsH9c4bk0%cdxM=!F(&@b;MeDlQonQoYrvB=_xt^~E^6 zZ}3Qr3$g4R#SpNVcsSj?P|{Syg&e3?5DZ3V04i!}x$-=@aUI@pwl-B*2R3!)Bvm`R z56ya&$&p+}M%yO*+K`d46ExvLERIztPPI#J#BQDE6&MWh7G?v3g@PI|XMhjo<4_vZ zp!G6wBv+|kIW*C7eAGYm?4g~xd0KD z!q_N2D{BpVM!DbM=<~D}y9I#LR6fMEmYwBWq{Xq+V!1Ar2KCfv*o&=uInw%GlGZzR zhOwK($#NU4OLmtIrWK`Xr*b(`m(WD#gv7|_ zi(&ID)M1-E*>XAZj=hAmGz{kCBQrB(yl+}53iF~SW|>DTPO&I$Cv~+!`|cbUx=a>k zhe(Bs7~h7BHZ%M}dq_F(z@M3?jG(fy1AB(axj`;_4#tgs?*bZ1j^lzS+3>Wb6_E-B zkOs9Eost*0h+tK2l6!vsi;5LQg%|OgiZy(|c(Z1T#{^`P{hK>0iHD8xaI5;Gfox_X zwt&Qy*1L8w&Kh=8jijT;q!eF0T81%amq{dk;{t>FPh_6erSGXU3fUO0I=Yb;D?QeNLI%Vu0TFD3bjf8_liP@*n8auro6yZ zfHK?oL9D!7pxov(Y89NogY5|o^KXnE+S-sX)Eb5HT;H{{S?|*M+Bjf9jPZ%kR|64F z3j9YJp^2f@wFi>a!r0-4K|iX-Chc+!Gla8CE($jq6a))~c(g0Bn@RvvHn(4TSAVo= z%|;|T@g#@|2I=oFv?)tY>g{R{wNeKLLdR-LqK6D-OWf?+qz#ZhVvnnFzxHsmBYx{8 znI>o$v%?C5FD1Y$nsN+uWucDwjvDjb>%ERYJQOAzHJV&ZW3h!NcoBuKooG+mQ=Snm zu*_LJD6TTqvKS0dBCC{xtCSPO9SVgFM~|jPT1@KGZH?v+eXEI4t~W=m2FD0EofrT# zC=@IGIAlV`-t=CFqrZlv=iF#311OP2;Q5f(oYlD$$F$`jsnOcVQx}UWiQyJ+K6dh8 zOsd<8L;K($32{T3tXpL$<>VKs;L~>#(4(szz^Z-jlvUWs?p@4cCJd!^ZIB3BMK;S8 z&q1XSgZ4*A6@_Lwr%ums1c{(m!*d6>5P`nZI0{6diWL5#1iro-kS)%VEsmH$@Cbtq zVQquDSd_r3IlO>^?Z~6n85)ocAqK6V?T;PnyrnmHs1uZO2HSXFF%OUZ!6mCG2g2)! zPb|nlGzg~=^A4GQak4+H=BRKShvwfZ5K;eB5!8J}q)?`;QEBB|;lHoQhpd;<6o!KR z>bxj;K_>o8kM(Xb5NR~^$Lxa8E*VQ{T8yOG85&$ng1p@}1I7+XPaBMlcyikIE`-z+ zO=TBZ@Oj?e?1<+q6#K+3P3E$v>cLg<=SULjfCJ6%Z(to*-@C!KBgJz>Z_I}e^bga> z;0e&Ui!lj`ZE>woiN-tW8fccsewdVobW?6C5j4y8FBbQ(>IWGX>J1$1H7%d{)qR;MEX+!tJtyPBhtg1D!za~%6w6o9EJSsM)hJLP#k*E zBiWx0j8JJN6J8qdoH)X!Wk8u2&@EDW3hnS9W-brG`fw{&7z^P=LP-WKj^IoV-H;)E z0*Z@Xn*lj^8^Qf1cadwEXf}%G}({kK;I_NI1E)7~D=-X33% zT-#oidh<{ zW3GlgD?_f6M!dYwT?;3BpITO^2KT~m&cfGTN?MYU4Xs(igRkD4VFF|?@2tEncW$G& ztHzuiFK5i3Y8PpI>_lj~7J=@bFWi<_&NYVKdO}sVK83aq$>u;GpSMPRA6KiLl`-%9 zt_S88zcZkZyRcz-CCQ2x_~7x(EcNrn=WSt4zgAGlj<|QXXkg_Em`uz^xbj*nL?l4WPa^o{{4B6u ze%IDkwZY_qS~gcT@oS{*huqIn+;6W1|D-(eAF*O^e9R^un@BZobjFDwZ4x%IjO*+Ez>6sGJZJ?ypL3 zp7I86s`@=v0$jilmDLc1m4)PNl;Z5p3Y9wBX4TBBHPNUu3m&+g zrzPaZ-h*8e6`xm8nV3yiI8{ z#90~GKiR(d#k>p6Q+SyAaDMAB?17F7c04&h3>lQhX7RX^L=hGPyWu@{i{|!=Ui5o| zN!%G9sUUmIeiqHy83J;C<}@?fBUc(itl=ZRX$e=Z8%zof^u&54_eQA#hE!|fQ4ps3 zA`&9)1w*ThDT%x?Y2GmqY`MjS)}lA9hpf_LGdCLE?`><@HBRwNrJWQtS)8hyG4kxQ zxZD#<+btVL*jF%_wD4u=2A-LtqJ~P0LYmFZX>}(Y)-oD}nS0}~%G4<#;!$eVK$nj& zt-a~Ib}nbYH{Ca%v9~wf;;hA?pc}KlJvA;Z#G3|-x86H+7*@KD2?)nCLwin~>>Q7r00m!sR%Ld;{i>HUK?UQq|w*oW4|s~uvjmXZy){^PWPusd&JH2 z(UL|m6je1)2i-ELgY*Q{5d-R|mTrc&|2G8TJX{mlODaJZ)%Nc}|BC)S$Zf(FoUpL? zH%k3)_&-qoKH%>t|GNr2t|n;vZ@J45ymHfa;Dj)iO<*Vifgmuhe`x(n(lW#$6FLAi z3?4Mh`mbT#06WA@R;h;HIBO8RNI!n#{C&XRJXcHCL(l4xuY-nRfQJ3HhGOklCi{qT zdvzK06tqjWt4sY{B^%!k2K1WsVG?0#8oPlUI%2}on3|$DO4>%gHmZAY9J-VB)%7Q2 z^DK*=Dx26UC>8-AMObebz3o4r2Jh}>jP~APMi9t~xQzkVU3gs{Px)KC-uA7399rLU zRSfO$AQrifq2j*YyFI|2IC}niSyoCSoRVfZd(4@!rZZSa~bXZYh-`!aqQve()F`t&4ivKQOH%0YRf5a z`lJ_n%JYp`i`NTZOP6bqiAcr#nEvhNP2WiLm|~jk5AXG#zLPVq3CUci_BVUBSwP8$ znX{>6ftFSAQ;N~mg^G=2@0Hej#et@ZUn4&Nx=x_y*OgS_NuQO}D3jA@_tOiKA1|BF zjFlo`MX*pL%L2#PXJ@#<^4lJ~Yj`t!@Ae~1g|jlS6ikIPGfX{?W+f1eTuOV6KSR|~ zKxf#e>T96(sBQL3+qH=5smVUjGp-6x49b9K2obFWpMUY20Y=-dIjc^8Ht_r5K z3cVP(;m6NTQoL$yT}Dc*8Q@lq-oMisuy}?R(joR(1-I?}BT^IYt@Xo|By>MqrW%D? zE_zRVCxx4hu>V}pSFtTg>CbrI#ocv~cT1#c6`xRcLm!mpTk))=UL+tY2PD{0u>De0 zqe{k#ZiA6j#~+m9B1;k4B^=H*M5cx1d(oae3-T((a{g!i-4o?mwO zGu#aodpdXiA7O6++}5&n37eUjnVC6;m`P@4X0{Vk%*@Qp%*@Qpj+xmpCw2^@-22{} z@4kO#{!;0vR3)vw*6MRwyZfknCknjRk0H7_uX{hgzQ&3RW*+(6YricXOfD6G@p^9C%rTBHb{Z75Pf4g3pt8>=l1Q&U zJelS_QD3jlnZ2LEZialNf)XG(X_0kw3q!@0WWl~O{W61m z5_X|y#LaNoGF4pR>_zD8P|cZbGh=V+2BU()4)|nF;5^0iX+-Wfs)$HX+arwAIO;wa z=`xIx>tsx=3M=%ZyG)?a7t6L4TzvDLdzFnmgTPUN#ZJY>!5@nR_oZJa-etOrIuBBE zdXijlW=wkTXI8&@crp0wBDv!Zz+zl1)qCg&VxVF)}N|R>+f?nuyQUhDVqa_` z7YJMj*0|;dC3JbjxExc1E0OLuE~Ad`?1Ll40<2JDFD}vV6yu-UG)K z>q~^Tz}`vw$!khuc1Lub*VVpT5NF{2yIBvjMWYc9?6X@#{-9@Uw)wY-PZn+p3yg}X z`3Ki)cSx%KfN}iuRcb5`$?Qizf*<+Z;JK0bZZAFsr1_jX$Zpy4$aQ#oazX<#`Z&FU zO=I*2Rn&*>j9t}`5h8>&oo98r1^DNQr+3}z+#C zsIG61I!cFMT(rj?Z@z-dQC=k{R3EE~740#(5DMiWwRPBDHm#UZ+MMK1ilt1KblUQy zHLY0mZ`|KE7&~ugGqF_uw0Da+9E(leNrfkzcC}dE{G@NRiBWT=RC+{Io$Tx#}y`6(Fvh!-tPDB2|b0fb@cgOMc*mq4SG8%+Prl0Z)Hs?4qTqyd$kiid$sF7 zf+g}!zMu?ctg;Cnzq61vhLP||Jf7mj7n&>~yK-b42s>`Ry*T|GAKm&f+J>L_^D_$i zfu~&5I4dg@Rfa4%DNLC3ClabdzqAK%ln^sB6tR&eB3u<`Q@P*%2wsTV zz=p8rMk|+v(@+xDuHmP`flR%(Wl>(DCNopEKOhZ5?yCal0n+$2Fy^S{%pCI7OI>tc z9+nn=oze1}#j(@IzR7Kg2FHkgNjNZ=s7&8W7)O*kua_D1cTNn#&&IgOW))5R-FE4r z)g6ab*)>;PI*4WZGH&SX+1U_tUOoXK-lXyKPF@Rtz)tqaOS#hjTXm*N@a2V?>$mHL z$7iN>+g$W>gYEqLe#_ltSIhUr^VR_$DY%=A?H)#Rv9+!5?R3wIsyz(ijMg)z(siFBPwumX+nevD zXYoyzdeW&SrO4t}6J8vdRP_}*5?~_MFRw14A%}~!P?=W;&N}Yc=W&4gk!f7h%`ETz zOmY!HDjijupw*)atK+N^rRwBmKHTp|$YNKoB?~jO-%O1zdw!VtOl_3=mbH4(jcPsR zSd=W)y@2h)|8mQ~@_QW_c?+0)-jxT-nTkaX3NJ-oGubC6w0+rmcFjJ=1g39?9i zbYHG+cbPpdv**+y`%WNlpkJFqdk4YN1m-@0G7Ks1w9UuDg5$imY+nD6R@8-VO7U~l zWy@h=xY_e)U&CtmzB?&hz8Be*{?Lm9?!a)ouH|`2L)z(NG@9JEVT9tdX8SQfa!L$= zxpTC!F5O@A)95-TRXzFOI)t4(y|(-Q8o?q@%ku*h#&odQUse=O%dSZI5{aQO+0n+Y zzl9ZMwPdx5&vlR|0-Sw_GFq@eR za)AgxOUU*Nxi>TGh1@oIy|^8{F1O_ZNpR#RU&Ob%_iTx;5jXLj$E*uejK3PBV)Hf4|fve1n?yzMGr@&jr$5Ad;>Io|iv z9H7-(*2$f9HQ4R%C5ohFxAd3P6i0`@r2Z^f?c$3Xl;$wHvu6H^aUESeD7?EJ1+kfF z%e4sT;J$X;mj{2ccXU(yeX{M|Z!7ro|DPRzBl14?>!vej8#fj*xWCr{d>i*VoKm){ z1KDaWvP=Q@s(gX(wY)&ii~cy176Tc5BfLus@=vI1L|)ToCE0rZx+v{|ZcwO=5t7YJ z{rhvCsII!Sx=LV6Yy(?D`FdKRa;s;els8M`r%8j=N|f|3`_|O{+}L)3#;*SM9EVa4 zH0htqoE^zT`-8s2O7Cs%zwSIbJ!D(5y|_YmHv`&I@4>z|Sg|Cx&gSqV#%8w0uAW_2 zR#SSeifqy6uQa3BhmhJ!n9z>+f0JLM{^AY-qXR;E<#}sb1*k2Q(?B#}@X|UMFB+!K zAuX>kqb6cA8l<*apr+qt%eq5nxa7gvCxig|4tKl4~VIAZJLtA4Iwh&K1O7&g$s5iZlmsLlLj6#H`>>6WYk z*J|6Wl&E2BP{-z>vsqyKF5Ll0aj$yZLUT1aa|%@SM0jHx&u^ZM zMYX$m;_y++A)3tPQ&;n)S@cOVcCJr|X?1G0r&I*8L$$O+wO^|@nE{ZZyUiW!fm>0a z1J9noV*$Lww2T9yOWz#tTuUpIVG{xZt;5xijb)SM)Gs`>*I8!hiG94HeD5iXx5RkN zswZ=cuMT(_p|VyvvhC5_7jH~_jabDF;nTc8z*DM_3El&Gqc&-q}tUoZiATrH72 z9CIdCal3Xqw)S$RBXaskiV=H8L~P9VE!C&9ypa%t!inLTZ!RQ_LZ1?l=ik3y0?lDuv zNUYL!4FF02^Ueq`!cZJU2zfw0BX;c@X)aPB1pyIdXBom+oI^aI=~$ast)3>j0zeKZ5w;f^a|?x`lZ`MJg}|T`MnQ9nF-y8x0>mx^m zD7PuL>p1ZhAnbpJL;?MG$cr@#U`V&ize4gog)G%u{3~P@6bhMeSRaynUykxbF)5gf zHLVRM&IavcG>S;1N*c46;Vi}og1r$GxtQTCc_7kSXNoJG7>J=IR7jrZxug;gP;Eu2 z{k7%S&k(|SSQ(2nq4i*gb|Ekz&c8)!_{DZ_Ltq+SK7EE534-|***!Vs7{6k6+$!}O ztx>1Qqa4M*4YYqaa1rD)1Ptn0KCI&`&KAA;RfZZK847#8%lZNx%U!J<463Us+!O%q^^jR`zWv$g?;d}zb=ve(%iqXPho0t#eoVEEXAd2LWN*@IaFb<+A_ zP&Hr2^1z>JD6`>EL2xqsNy~Eh<{4(FO?xvYfM>)1Y?@_l2$1$il2t;o8xK(k!Osv> zAu#*5OFw1ij<8=LZgH6wI;LK+tPG65L~<}=lA&;uw7EOt{Wl*OQ3zuyS0){8NQw7m zMACp5IinsF|4%A7>}|ogQ7Hbyu?T#IKeQLhQ9%9jadC{#tq3IadD{Lon9u*Y!2pD0 zzeewz9-r=j^S)`DufVK;N8jaZ$LTehKRpC=LoxyiLEf{EVca|YzIE>_xr)zQTMDF8 zzfoKm)C7Ja9O6V~VmSJQPU7z;;R&JvkmF!bI)NX9{)2wG{iww6^hm!)hX+$Pz4 zLhn;Hyc!jp`8c|oIC|PRy1S$%LW5;t%I4E*_se;A~b<71++s3na?UA{&w(T=r} zg)ibKt1`Bywm*}+jp`mZj7DMh%dOFApNW2sF3ujWJ|4=|e>!kIo~?cDujF2+B!+J6 z?<#UGhU(QH&ze%NHB~gO)M%hS+M3i3@ThWYpR>#=$*q6-R^Q{L#T<3 zLyYfVbQoD2-MpOM3>w|(7$xp7A`qv9*MFk%_PO^&)%X2A7?ZY|`zD2~-^;51AwUFu zkYKC|ID(>VKBG@hT)#_3kg@$G^HkL3qZN7cviHcn|2U}-K7yT&m6Cppjc0PY;mv~Q zZd<#fWMO^t!rSFDHN8D0@BUWp^`?~NUIiErNc{v?yVIo~w3_==M}Pci@#%~E+lc#{ zKYy-*%(-k^GJeuhNv$csd{TprrhbopJ@M|vjB(&1baf|em05@q&%jh$(>%k#GAiF; zkpxCUtGfXY9zAw3c?`x8!cf6HRx|L5pYe)|! z9o~to)!>E0z<;82tP+pxQDh`BxUU!9yi8w+yT6UHeg3TfQGAZl<&)U;erqZS^XUnS zvtl!^i0d1ri!$+JIZo1Zk-~7!=GV6bti4Ad-q1yAE?P7*8zTezG&9G@T!c7P`&!g~UM(+~3wGE#ZCv0{h!c1Mld$ zY0Bjd#-YatkAp9+EO`s!#RY}->EpfGZK2e5 z>f`?2Aw2K%U;`qpf`;{1<(V(LA_IXGk0kB4UZR3pvNWIr@E{dh)k@&is9`50-oFo4 zylMTC0y~d1vdE=mv9qu?G10N5SEN8SqM3XMK~xEiJ%wfxwtY)~^Jf)((5+ltrZ2(k zmh@W5x3IjouS_oW=Yir_HtFxVyfyQvC(AW`%K^cl$rF|*M6Yl>Q&evY(oN|`aK=4k z8#8;;-5bU+jFo}?%+iQmf-*&tw%-2g2BMrD=lBrAA;#`9L>XrO2m+oSVhM$TLz&^! zqb;FDf>ogP#1>|bGEI{4=n{-=;`gay2zGu-KkYL|pr!fA-72V*+vkCK{soljDb!Sw zjAd{HQ@jFPMZ+Y^5en_&ley? ze58A)gjQkZ$6>N4)90X2Y>4v+G%PY42lNWpiYe5gmOv2&e_{Mf#JR92#~%?uR{w7i z(L-X5vfcWB3t-KIokyVWA~N47WIIQhz6_@QL+cBZFQK0*H3dO8IpX{jffF#t_|zv{ zLYe^zDG_eolVSlu&1xU{&WE?R$$g>BE96E~Cus+(be4~G`{uEnD8T5#y~0`Wl!4&o zQ~F^4xzln)ZW*Ha5I&=*k+O4rNIf@UXqAN{-gY3S*LsDLDu%(`hN$Q@udpxzm^86A zNu|e2?QSa}F|F6->ayp@`*!s7SFz?#abUSebdbJ>%}H*%B98Fb84`~0ZafO#996