From f3c5ff35cbed6b20ec151e9c1ab6751bd6726420 Mon Sep 17 00:00:00 2001 From: Ari Archer Date: Tue, 23 Jan 2024 19:12:27 +0200 Subject: [PATCH] [docx] split commit for file 3200 Signed-off-by: Ari Archer --- .../pipeline/PipelineCursorSerializer.docx | Bin 0 -> 37592 bytes .../pipeline/PipelineCursorSerializer.scala | 57 - .../core/pipeline/PipelineQuery.docx | Bin 0 -> 37251 bytes .../core/pipeline/PipelineQuery.scala | 32 - .../core/pipeline/PipelineResult.docx | Bin 0 -> 37605 bytes .../core/pipeline/PipelineResult.scala | 59 - .../core/pipeline/candidate/BUILD | 77 -- .../core/pipeline/candidate/BUILD.docx | Bin 0 -> 37252 bytes .../pipeline/candidate/CandidatePipeline.docx | Bin 0 -> 37139 bytes .../candidate/CandidatePipeline.scala | 30 - .../candidate/CandidatePipelineBuilder.docx | Bin 0 -> 41574 bytes .../candidate/CandidatePipelineBuilder.scala | 735 ----------- .../CandidatePipelineBuilderFactory.docx | Bin 0 -> 37206 bytes .../CandidatePipelineBuilderFactory.scala | 56 - .../candidate/CandidatePipelineConfig.docx | Bin 0 -> 39811 bytes .../candidate/CandidatePipelineConfig.scala | 264 ---- .../candidate/CandidatePipelineResult.docx | Bin 0 -> 37533 bytes .../candidate/CandidatePipelineResult.scala | 93 -- .../PassthroughCandidatePipelineConfig.docx | Bin 0 -> 37286 bytes .../PassthroughCandidatePipelineConfig.scala | 47 - .../StaticCandidatePipelineConfig.docx | Bin 0 -> 37314 bytes .../StaticCandidatePipelineConfig.scala | 51 - .../product_mixer/core/pipeline/mixer/BUILD | 62 - .../core/pipeline/mixer/BUILD.docx | Bin 0 -> 37166 bytes .../core/pipeline/mixer/MixerPipeline.docx | Bin 0 -> 37083 bytes .../core/pipeline/mixer/MixerPipeline.scala | 24 - .../pipeline/mixer/MixerPipelineBuilder.docx | Bin 0 -> 40767 bytes .../pipeline/mixer/MixerPipelineBuilder.scala | 582 --------- .../mixer/MixerPipelineBuilderFactory.docx | Bin 0 -> 37235 bytes .../mixer/MixerPipelineBuilderFactory.scala | 49 - .../pipeline/mixer/MixerPipelineConfig.docx | Bin 0 -> 38945 bytes .../pipeline/mixer/MixerPipelineConfig.scala | 175 --- .../pipeline/mixer/MixerPipelineResult.docx | Bin 0 -> 37632 bytes .../pipeline/mixer/MixerPipelineResult.scala | 70 -- .../core/pipeline/pipeline_failure/BUILD | 14 - .../core/pipeline/pipeline_failure/BUILD.docx | Bin 0 -> 36848 bytes .../pipeline_failure/PipelineFailure.docx | Bin 0 -> 37538 bytes .../pipeline_failure/PipelineFailure.scala | 49 - .../PipelineFailureCategory.docx | Bin 0 -> 38787 bytes .../PipelineFailureCategory.scala | 190 --- .../PipelineFailureClassifier.docx | Bin 0 -> 36909 bytes .../PipelineFailureClassifier.scala | 13 - .../PipelineFailureSerializer.docx | Bin 0 -> 37457 bytes .../PipelineFailureSerializer.scala | 67 - .../product_mixer/core/pipeline/product/BUILD | 51 - .../core/pipeline/product/BUILD.docx | Bin 0 -> 37111 bytes .../pipeline/product/ProductPipeline.docx | Bin 0 -> 37122 bytes .../pipeline/product/ProductPipeline.scala | 28 - .../product/ProductPipelineBuilder.docx | Bin 0 -> 40530 bytes .../product/ProductPipelineBuilder.scala | 385 ------ .../ProductPipelineBuilderFactory.docx | Bin 0 -> 37097 bytes .../ProductPipelineBuilderFactory.scala | 39 - .../product/ProductPipelineConfig.docx | Bin 0 -> 38260 bytes .../product/ProductPipelineConfig.scala | 107 -- .../product/ProductPipelineRequest.docx | Bin 0 -> 36734 bytes .../product/ProductPipelineRequest.scala | 5 - .../product/ProductPipelineResult.docx | Bin 0 -> 37205 bytes .../product/ProductPipelineResult.scala | 62 - .../core/pipeline/recommendation/BUILD | 62 - .../core/pipeline/recommendation/BUILD.docx | Bin 0 -> 37166 bytes .../RecommendationPipeline.docx | Bin 0 -> 37145 bytes .../RecommendationPipeline.scala | 29 - .../RecommendationPipelineBuilder.docx | Bin 0 -> 43771 bytes .../RecommendationPipelineBuilder.scala | 1076 ----------------- .../RecommendationPipelineBuilderFactory.docx | Bin 0 -> 37405 bytes ...RecommendationPipelineBuilderFactory.scala | 67 - .../RecommendationPipelineConfig.docx | Bin 0 -> 40133 bytes .../RecommendationPipelineConfig.scala | 262 ---- .../RecommendationPipelineResult.docx | Bin 0 -> 37561 bytes .../RecommendationPipelineResult.scala | 84 -- .../product_mixer/core/pipeline/scoring/BUILD | 36 - .../core/pipeline/scoring/BUILD.docx | Bin 0 -> 37020 bytes .../scoring/NewScoringPipelineBuilder.docx | Bin 0 -> 38969 bytes .../scoring/NewScoringPipelineBuilder.scala | 202 ---- .../pipeline/scoring/ScoringPipeline.docx | Bin 0 -> 37239 bytes .../pipeline/scoring/ScoringPipeline.scala | 32 - .../scoring/ScoringPipelineBuilder.docx | Bin 0 -> 39874 bytes .../scoring/ScoringPipelineBuilder.scala | 367 ------ .../ScoringPipelineBuilderFactory.docx | Bin 0 -> 37030 bytes .../ScoringPipelineBuilderFactory.scala | 30 - .../scoring/ScoringPipelineConfig.docx | Bin 0 -> 38664 bytes .../scoring/ScoringPipelineConfig.scala | 131 -- .../scoring/ScoringPipelineResult.docx | Bin 0 -> 37337 bytes .../scoring/ScoringPipelineResult.scala | 51 - .../product_mixer/core/pipeline/state/BUILD | 33 - .../core/pipeline/state/BUILD.docx | Bin 0 -> 36960 bytes .../pipeline/state/HasAsyncFeatureMap.docx | Bin 0 -> 36782 bytes .../pipeline/state/HasAsyncFeatureMap.scala | 9 - .../core/pipeline/state/HasCandidates.docx | Bin 0 -> 36792 bytes .../core/pipeline/state/HasCandidates.scala | 8 - .../state/HasCandidatesWithDetails.docx | Bin 0 -> 36833 bytes .../state/HasCandidatesWithDetails.scala | 11 - .../state/HasCandidatesWithFeatures.docx | Bin 0 -> 36815 bytes .../state/HasCandidatesWithFeatures.scala | 9 - .../pipeline/state/HasExecutorResults.docx | Bin 0 -> 36896 bytes .../pipeline/state/HasExecutorResults.scala | 13 - .../core/pipeline/state/HasParams.docx | Bin 0 -> 36738 bytes .../core/pipeline/state/HasParams.scala | 7 - .../core/pipeline/state/HasQuery.docx | Bin 0 -> 36765 bytes .../core/pipeline/state/HasQuery.scala | 8 - .../core/pipeline/state/HasRequest.docx | Bin 0 -> 36758 bytes .../core/pipeline/state/HasRequest.scala | 7 - .../core/pipeline/state/HasResult.docx | Bin 0 -> 36849 bytes .../core/pipeline/state/HasResult.scala | 10 - .../product_mixer/core/pipeline/step/BUILD | 17 - .../core/pipeline/step/BUILD.docx | Bin 0 -> 36836 bytes .../core/pipeline/step/Step.docx | Bin 0 -> 37486 bytes .../core/pipeline/step/Step.scala | 52 - .../AsyncFeatureMapStep.docx | Bin 0 -> 37533 bytes .../AsyncFeatureMapStep.scala | 70 -- .../step/async_feature_map/BUILD.bazel | 36 - .../step/async_feature_map/BUILD.docx | Bin 0 -> 36973 bytes .../step/candidate_feature_hydrator/BUILD | 36 - .../candidate_feature_hydrator/BUILD.docx | Bin 0 -> 37007 bytes .../CandidateFeatureHydratorStep.docx | Bin 0 -> 37533 bytes .../CandidateFeatureHydratorStep.scala | 71 -- .../step/candidate_source/BUILD.bazel | 36 - .../pipeline/step/candidate_source/BUILD.docx | Bin 0 -> 37002 bytes .../candidate_source/CandidateSourceStep.docx | Bin 0 -> 37552 bytes .../CandidateSourceStep.scala | 84 -- .../core/pipeline/step/decorator/BUILD.bazel | 36 - .../core/pipeline/step/decorator/BUILD.docx | Bin 0 -> 37004 bytes .../step/decorator/DecoratorStep.docx | Bin 0 -> 37393 bytes .../step/decorator/DecoratorStep.scala | 63 - .../step/domain_marshaller/BUILD.bazel | 30 - .../step/domain_marshaller/BUILD.docx | Bin 0 -> 36961 bytes .../DomainMarshallerStep.docx | Bin 0 -> 37439 bytes .../DomainMarshallerStep.scala | 54 - .../core/pipeline/step/filter/BUILD.bazel | 36 - .../core/pipeline/step/filter/BUILD.docx | Bin 0 -> 36999 bytes .../core/pipeline/step/filter/FilterStep.docx | Bin 0 -> 37487 bytes .../pipeline/step/filter/FilterStep.scala | 64 - .../core/pipeline/step/gate/BUILD | 36 - .../core/pipeline/step/gate/BUILD.docx | Bin 0 -> 36997 bytes .../core/pipeline/step/gate/GateStep.docx | Bin 0 -> 37399 bytes .../core/pipeline/step/gate/GateStep.scala | 43 - .../pipeline/step/group_results/BUILD.bazel | 29 - .../pipeline/step/group_results/BUILD.docx | Bin 0 -> 36965 bytes .../step/group_results/GroupResultsStep.docx | Bin 0 -> 37471 bytes .../step/group_results/GroupResultsStep.scala | 67 - .../step/pipeline_executor/BUILD.bazel | 32 - .../step/pipeline_executor/BUILD.docx | Bin 0 -> 36949 bytes .../PipelineExecutorStep.docx | Bin 0 -> 37658 bytes .../PipelineExecutorStep.scala | 81 -- .../pipeline/step/pipeline_selector/BUILD | 26 - .../step/pipeline_selector/BUILD.docx | Bin 0 -> 36912 bytes .../PipelineSelectorStep.docx | Bin 0 -> 37276 bytes .../PipelineSelectorStep.scala | 43 - .../pipeline/step/quality_factor/BUILD.bazel | 31 - .../pipeline/step/quality_factor/BUILD.docx | Bin 0 -> 36937 bytes .../quality_factor/QualityFactorStep.docx | Bin 0 -> 37628 bytes .../quality_factor/QualityFactorStep.scala | 72 -- .../step/query_feature_hydrator/BUILD.bazel | 36 - .../step/query_feature_hydrator/BUILD.docx | Bin 0 -> 37013 bytes .../QueryFeatureHydratorStep.docx | Bin 0 -> 37510 bytes .../QueryFeatureHydratorStep.scala | 59 - .../step/query_transformer/BUILD.bazel | 29 - .../step/query_transformer/BUILD.docx | Bin 0 -> 36930 bytes .../QueryTransformerStep.docx | Bin 0 -> 37351 bytes .../QueryTransformerStep.scala | 52 - .../core/pipeline/step/scorer/BUILD | 36 - .../core/pipeline/step/scorer/BUILD.docx | Bin 0 -> 37009 bytes .../core/pipeline/step/scorer/ScorerStep.docx | Bin 0 -> 37508 bytes .../pipeline/step/scorer/ScorerStep.scala | 69 -- .../core/pipeline/step/selector/BUILD | 36 - .../core/pipeline/step/selector/BUILD.docx | Bin 0 -> 37000 bytes .../pipeline/step/selector/SelectorStep.docx | Bin 0 -> 37411 bytes .../pipeline/step/selector/SelectorStep.scala | 53 - .../pipeline/step/side_effect/BUILD.bazel | 32 - .../core/pipeline/step/side_effect/BUILD.docx | Bin 0 -> 36988 bytes .../step/side_effect/SideEffectStep.docx | Bin 0 -> 37833 bytes .../step/side_effect/SideEffectStep.scala | 102 -- .../step/transport_marshaller/BUILD.bazel | 31 - .../step/transport_marshaller/BUILD.docx | Bin 0 -> 36967 bytes .../TransportMarshallerStep.docx | Bin 0 -> 37630 bytes .../TransportMarshallerStep.scala | 76 -- .../twitter/product_mixer/core/product/BUILD | 21 - .../product_mixer/core/product/BUILD.docx | Bin 0 -> 36895 bytes .../core/product/ProductParamConfig.docx | Bin 0 -> 37308 bytes .../core/product/ProductParamConfig.scala | 36 - .../product/ProductParamConfigBuilder.docx | Bin 0 -> 36995 bytes .../product/ProductParamConfigBuilder.scala | 21 - .../product_mixer/core/product/guice/BUILD | 18 - .../core/product/guice/BUILD.docx | Bin 0 -> 36916 bytes .../core/product/guice/ProductScope.docx | Bin 0 -> 36887 bytes .../core/product/guice/ProductScope.scala | 10 - .../product/guice/ProductScopeModule.docx | Bin 0 -> 37047 bytes .../product/guice/ProductScopeModule.scala | 27 - .../core/product/guice/SimpleScope.docx | Bin 0 -> 37664 bytes .../core/product/guice/SimpleScope.scala | 68 -- .../product_mixer/core/product/registry/BUILD | 26 - .../core/product/registry/BUILD.docx | Bin 0 -> 36948 bytes .../registry/ProductParamRegistry.docx | Bin 0 -> 36992 bytes .../registry/ProductParamRegistry.scala | 26 - .../registry/ProductPipelineRegistry.docx | Bin 0 -> 39129 bytes .../registry/ProductPipelineRegistry.scala | 189 --- .../ProductPipelineRegistryConfig.docx | Bin 0 -> 36803 bytes .../ProductPipelineRegistryConfig.scala | 9 - .../product_mixer/core/quality_factor/BUILD | 18 - .../core/quality_factor/BUILD.docx | Bin 0 -> 36922 bytes .../core/quality_factor/Bounds.docx | Bin 0 -> 37151 bytes .../core/quality_factor/Bounds.scala | 33 - .../LinearLatencyQualityFactor.docx | Bin 0 -> 37104 bytes .../LinearLatencyQualityFactor.scala | 34 - .../LinearLatencyQualityFactorObserver.docx | Bin 0 -> 36924 bytes .../LinearLatencyQualityFactorObserver.scala | 18 - .../core/quality_factor/QualityFactor.docx | Bin 0 -> 37451 bytes .../core/quality_factor/QualityFactor.scala | 33 - .../quality_factor/QualityFactorConfig.docx | Bin 0 -> 39072 bytes .../quality_factor/QualityFactorConfig.scala | 120 -- .../quality_factor/QualityFactorObserver.docx | Bin 0 -> 36945 bytes .../QualityFactorObserver.scala | 18 - .../quality_factor/QualityFactorStatus.docx | Bin 0 -> 37381 bytes .../quality_factor/QualityFactorStatus.scala | 60 - .../QueriesPerSecondBasedQualityFactor.docx | Bin 0 -> 37488 bytes .../QueriesPerSecondBasedQualityFactor.scala | 51 - ...esPerSecondBasedQualityFactorObserver.docx | Bin 0 -> 36985 bytes ...sPerSecondBasedQualityFactorObserver.scala | 21 - .../core/quality_factor/QueryRateCounter.docx | Bin 0 -> 36975 bytes .../quality_factor/QueryRateCounter.scala | 21 - .../twitter/product_mixer/core/service/BUILD | 32 - .../product_mixer/core/service/BUILD.docx | Bin 0 -> 36960 bytes .../product_mixer/core/service/Executor.docx | Bin 0 -> 44259 bytes .../product_mixer/core/service/Executor.scala | 700 ----------- .../core/service/ExecutorObserver.docx | Bin 0 -> 38360 bytes .../core/service/ExecutorObserver.scala | 146 --- .../core/service/ExecutorResult.docx | Bin 0 -> 36676 bytes .../core/service/ExecutorResult.scala | 3 - .../AsyncFeatureMapExecutor.docx | Bin 0 -> 37441 bytes .../AsyncFeatureMapExecutor.scala | 58 - .../service/async_feature_map_executor/BUILD | 19 - .../async_feature_map_executor/BUILD.docx | Bin 0 -> 36884 bytes .../candidate_decorator_executor/BUILD | 22 - .../candidate_decorator_executor/BUILD.docx | Bin 0 -> 36918 bytes .../CandidateDecoratorExecutor.docx | Bin 0 -> 37222 bytes .../CandidateDecoratorExecutor.scala | 38 - .../CandidateDecoratorExecutorResult.docx | Bin 0 -> 36766 bytes .../CandidateDecoratorExecutorResult.scala | 6 - .../candidate_feature_hydrator_executor/BUILD | 25 - .../BUILD.docx | Bin 0 -> 36942 bytes .../CandidateFeatureHydratorExecutor.docx | Bin 0 -> 39614 bytes .../CandidateFeatureHydratorExecutor.scala | 277 ----- ...andidateFeatureHydratorExecutorResult.docx | Bin 0 -> 36953 bytes ...ndidateFeatureHydratorExecutorResult.scala | 20 - .../BUILD | 22 - .../BUILD.docx | Bin 0 -> 36912 bytes .../CandidateFeatureTransformerExecutor.docx | Bin 0 -> 38079 bytes .../CandidateFeatureTransformerExecutor.scala | 93 -- ...idateFeatureTransformerExecutorResult.docx | Bin 0 -> 36820 bytes ...dateFeatureTransformerExecutorResult.scala | 8 - .../service/candidate_pipeline_executor/BUILD | 27 - .../candidate_pipeline_executor/BUILD.docx | Bin 0 -> 36940 bytes .../CandidatePipelineExecutor.docx | Bin 0 -> 37866 bytes .../CandidatePipelineExecutor.scala | 82 -- .../CandidatePipelineExecutorResult.docx | Bin 0 -> 36791 bytes .../CandidatePipelineExecutorResult.scala | 8 - .../service/candidate_source_executor/BUILD | 35 - .../candidate_source_executor/BUILD.docx | Bin 0 -> 37014 bytes .../CandidateSourceExecutor.docx | Bin 0 -> 38601 bytes .../CandidateSourceExecutor.scala | 173 --- .../CandidateSourceExecutorResult.docx | Bin 0 -> 36845 bytes .../CandidateSourceExecutorResult.scala | 10 - .../core/service/component_registry/BUILD | 16 - .../service/component_registry/BUILD.docx | Bin 0 -> 36869 bytes .../component_registry/ComponentRegistry.docx | Bin 0 -> 39803 bytes .../ComponentRegistry.scala | 182 --- .../RegisteredComponent.docx | Bin 0 -> 36885 bytes .../RegisteredComponent.scala | 15 - .../debug_query/AuthorizationService.docx | Bin 0 -> 37805 bytes .../debug_query/AuthorizationService.scala | 82 -- .../core/service/debug_query/BUILD | 20 - .../core/service/debug_query/BUILD.docx | Bin 0 -> 36963 bytes .../DebugQueryNotSupportedService.docx | Bin 0 -> 37398 bytes .../DebugQueryNotSupportedService.scala | 43 - .../debug_query/DebugQueryService.docx | Bin 0 -> 38483 bytes .../debug_query/DebugQueryService.scala | 109 -- .../debug_query/ParamsSerializerModule.docx | Bin 0 -> 37036 bytes .../debug_query/ParamsSerializerModule.scala | 35 - .../service/domain_marshaller_executor/BUILD | 23 - .../domain_marshaller_executor/BUILD.docx | Bin 0 -> 36923 bytes .../DomainMarshallerExecutor.docx | Bin 0 -> 37351 bytes .../DomainMarshallerExecutor.scala | 44 - .../service/feature_hydrator_observer/BUILD | 21 - .../feature_hydrator_observer/BUILD.docx | Bin 0 -> 36905 bytes .../FeatureHydratorObserver.docx | Bin 0 -> 38376 bytes .../FeatureHydratorObserver.scala | 136 --- .../core/service/filter_executor/BUILD | 24 - .../core/service/filter_executor/BUILD.docx | Bin 0 -> 36924 bytes .../filter_executor/FilterExecutor.docx | Bin 0 -> 38845 bytes .../filter_executor/FilterExecutor.scala | 172 --- .../filter_executor/FilterExecutorResult.docx | Bin 0 -> 36900 bytes .../FilterExecutorResult.scala | 18 - .../core/service/gate_executor/BUILD | 25 - .../core/service/gate_executor/BUILD.docx | Bin 0 -> 36939 bytes .../gate_executor/ExecutedGateResult.docx | Bin 0 -> 36762 bytes .../gate_executor/ExecutedGateResult.scala | 6 - .../service/gate_executor/GateExecutor.docx | Bin 0 -> 38258 bytes .../service/gate_executor/GateExecutor.scala | 107 -- .../gate_executor/GateExecutorResult.docx | Bin 0 -> 36760 bytes .../gate_executor/GateExecutorResult.scala | 7 - .../gate_executor/StoppedGateException.docx | Bin 0 -> 37111 bytes .../gate_executor/StoppedGateException.scala | 29 - .../core/service/group_results_executor/BUILD | 35 - .../service/group_results_executor/BUILD.docx | Bin 0 -> 37014 bytes .../GroupResultsExecutor.docx | Bin 0 -> 38092 bytes .../GroupResultsExecutor.scala | 122 -- .../AllowListedPipelineExecutionLogger.docx | Bin 0 -> 39525 bytes .../AllowListedPipelineExecutionLogger.scala | 183 --- .../service/pipeline_execution_logger/BUILD | 33 - .../pipeline_execution_logger/BUILD.docx | Bin 0 -> 36989 bytes .../PipelineExecutionLogger.docx | Bin 0 -> 36773 bytes .../PipelineExecutionLogger.scala | 7 - .../core/service/pipeline_executor/BUILD | 25 - .../core/service/pipeline_executor/BUILD.docx | Bin 0 -> 36915 bytes .../pipeline_executor/PipelineExecutor.docx | Bin 0 -> 37862 bytes .../pipeline_executor/PipelineExecutor.scala | 66 - .../PipelineExecutorResult.docx | Bin 0 -> 36768 bytes .../PipelineExecutorResult.scala | 8 - .../BUILD | 24 - .../BUILD.docx | Bin 0 -> 36924 bytes .../PipelineResultSideEffectExecutor.docx | Bin 0 -> 37838 bytes .../PipelineResultSideEffectExecutor.scala | 91 -- .../service/pipeline_selector_executor/BUILD | 26 - .../pipeline_selector_executor/BUILD.docx | Bin 0 -> 36930 bytes .../PipelineSelectorExecutor.docx | Bin 0 -> 37443 bytes .../PipelineSelectorExecutor.scala | 48 - .../PipelineSelectorExecutorResult.docx | Bin 0 -> 36748 bytes .../PipelineSelectorExecutorResult.scala | 5 - .../service/quality_factor_executor/BUILD | 23 - .../quality_factor_executor/BUILD.docx | Bin 0 -> 36908 bytes .../QualityFactorExecutorResult.docx | Bin 0 -> 36822 bytes .../QualityFactorExecutorResult.scala | 10 - ...vidualFeatureHydratorResultSerializer.docx | Bin 0 -> 37067 bytes ...idualFeatureHydratorResultSerializer.scala | 24 - .../query_feature_hydrator_executor/BUILD | 28 - .../BUILD.docx | Bin 0 -> 36975 bytes .../QueryFeatureHydratorExecutor.docx | Bin 0 -> 38986 bytes .../QueryFeatureHydratorExecutor.scala | 217 ---- .../service/scoring_pipeline_executor/BUILD | 24 - .../scoring_pipeline_executor/BUILD.docx | Bin 0 -> 36914 bytes .../ScoringPipelineExecutor.docx | Bin 0 -> 39012 bytes .../ScoringPipelineExecutor.scala | 172 --- .../ScoringPipelineExecutorResult.docx | Bin 0 -> 36847 bytes .../ScoringPipelineExecutorResult.scala | 9 - .../core/service/selector_executor/BUILD | 26 - .../core/service/selector_executor/BUILD.docx | Bin 0 -> 36944 bytes .../selector_executor/SelectorExecutor.docx | Bin 0 -> 38113 bytes .../selector_executor/SelectorExecutor.scala | 105 -- .../SelectorExecutorResult.docx | Bin 0 -> 36847 bytes .../SelectorExecutorResult.scala | 12 - .../product_mixer/core/service/slice/BUILD | 22 - .../core/service/slice/BUILD.docx | Bin 0 -> 36947 bytes .../core/service/slice/SliceService.docx | Bin 0 -> 37079 bytes .../core/service/slice/SliceService.scala | 29 - .../core/service/transformer_executor/BUILD | 17 - .../service/transformer_executor/BUILD.docx | Bin 0 -> 36874 bytes .../PerCandidateTransformerExecutor.docx | Bin 0 -> 37169 bytes .../PerCandidateTransformerExecutor.scala | 35 - .../TransformerExecutor.docx | Bin 0 -> 36970 bytes .../TransformerExecutor.scala | 22 - .../transport_marshaller_executor/BUILD | 23 - .../transport_marshaller_executor/BUILD.docx | Bin 0 -> 36922 bytes .../TransportMarshallerExecutor.docx | Bin 0 -> 37274 bytes .../TransportMarshallerExecutor.scala | 40 - .../product_mixer/core/service/urp/BUILD | 18 - .../product_mixer/core/service/urp/BUILD.docx | Bin 0 -> 36929 bytes .../core/service/urp/UrpService.docx | Bin 0 -> 37042 bytes .../core/service/urp/UrpService.scala | 26 - .../product_mixer/core/service/urt/BUILD | 20 - .../product_mixer/core/service/urt/BUILD.docx | Bin 0 -> 36964 bytes .../core/service/urt/UrtService.docx | Bin 0 -> 37544 bytes .../core/service/urt/UrtService.scala | 60 - .../com/twitter/product_mixer/core/util/BUILD | 24 - .../product_mixer/core/util/BUILD.docx | Bin 0 -> 36897 bytes .../product_mixer/core/util/FuturePools.docx | Bin 0 -> 37881 bytes .../product_mixer/core/util/FuturePools.scala | 101 -- .../core/util/OffloadFuturePools.docx | Bin 0 -> 37216 bytes .../core/util/OffloadFuturePools.scala | 59 - .../core/util/SortIndexBuilder.docx | Bin 0 -> 36918 bytes .../core/util/SortIndexBuilder.scala | 17 - .../shared_library/http_client/BUILD | 22 - .../shared_library/http_client/BUILD.docx | Bin 0 -> 36839 bytes .../http_client/FinagleHttpClientBuilder.docx | Bin 0 -> 37184 bytes .../FinagleHttpClientBuilder.scala | 57 - .../FinagleHttpClientWithProxyBuilder.docx | Bin 0 -> 37444 bytes .../FinagleHttpClientWithProxyBuilder.scala | 97 -- .../http_client/HttpHostPort.docx | Bin 0 -> 36757 bytes .../http_client/HttpHostPort.scala | 5 - .../shared_library/manhattan_client/BUILD | 24 - .../manhattan_client/BUILD.docx | Bin 0 -> 36914 bytes .../ManhattanClientBuilder.docx | Bin 0 -> 37736 bytes .../ManhattanClientBuilder.scala | 116 -- .../shared_library/memcached_client/BUILD | 18 - .../memcached_client/BUILD.docx | Bin 0 -> 36830 bytes .../MemcachedClientBuilder.docx | Bin 0 -> 38040 bytes .../MemcachedClientBuilder.scala | 117 -- .../shared_library/observer/BUILD | 19 - .../shared_library/observer/BUILD.docx | Bin 0 -> 36824 bytes .../shared_library/observer/Observer.docx | Bin 0 -> 38411 bytes .../shared_library/observer/Observer.scala | 203 ---- 400 files changed, 14083 deletions(-) create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/PipelineCursorSerializer.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/PipelineCursorSerializer.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/PipelineQuery.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/PipelineQuery.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/PipelineResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/PipelineResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipeline.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipeline.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineBuilder.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineBuilder.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineBuilderFactory.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineBuilderFactory.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineConfig.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineConfig.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineResult.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/PassthroughCandidatePipelineConfig.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/PassthroughCandidatePipelineConfig.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/StaticCandidatePipelineConfig.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/StaticCandidatePipelineConfig.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipeline.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipeline.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineBuilder.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineBuilder.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineBuilderFactory.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineBuilderFactory.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineConfig.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineConfig.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailure.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailure.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureCategory.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureCategory.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureClassifier.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureClassifier.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureSerializer.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureSerializer.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipeline.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipeline.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineBuilder.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineBuilder.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineBuilderFactory.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineBuilderFactory.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineConfig.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineConfig.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineRequest.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineRequest.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipeline.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipeline.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineBuilder.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineBuilder.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineBuilderFactory.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineBuilderFactory.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineConfig.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineConfig.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/NewScoringPipelineBuilder.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/NewScoringPipelineBuilder.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipeline.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipeline.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineBuilder.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineBuilder.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineBuilderFactory.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineBuilderFactory.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineConfig.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineConfig.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasAsyncFeatureMap.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasAsyncFeatureMap.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidates.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidates.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidatesWithDetails.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidatesWithDetails.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidatesWithFeatures.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidatesWithFeatures.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasExecutorResults.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasExecutorResults.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasParams.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasParams.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasQuery.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasQuery.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasRequest.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasRequest.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/Step.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/Step.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/AsyncFeatureMapStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/AsyncFeatureMapStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/BUILD.bazel create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/BUILD.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator/CandidateFeatureHydratorStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator/CandidateFeatureHydratorStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_source/BUILD.bazel create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_source/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_source/CandidateSourceStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_source/CandidateSourceStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/decorator/BUILD.bazel create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/decorator/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/decorator/DecoratorStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/decorator/DecoratorStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/domain_marshaller/BUILD.bazel create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/domain_marshaller/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/domain_marshaller/DomainMarshallerStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/domain_marshaller/DomainMarshallerStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/filter/BUILD.bazel create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/filter/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/filter/FilterStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/filter/FilterStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/gate/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/gate/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/gate/GateStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/gate/GateStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/group_results/BUILD.bazel create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/group_results/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/group_results/GroupResultsStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/group_results/GroupResultsStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/pipeline_executor/BUILD.bazel create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/pipeline_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/pipeline_executor/PipelineExecutorStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/pipeline_executor/PipelineExecutorStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/pipeline_selector/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/pipeline_selector/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/pipeline_selector/PipelineSelectorStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/pipeline_selector/PipelineSelectorStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/quality_factor/BUILD.bazel create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/quality_factor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/quality_factor/QualityFactorStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/quality_factor/QualityFactorStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/query_feature_hydrator/BUILD.bazel create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/query_feature_hydrator/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/query_feature_hydrator/QueryFeatureHydratorStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/query_feature_hydrator/QueryFeatureHydratorStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/query_transformer/BUILD.bazel create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/query_transformer/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/query_transformer/QueryTransformerStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/query_transformer/QueryTransformerStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/scorer/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/scorer/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/scorer/ScorerStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/scorer/ScorerStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/selector/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/selector/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/selector/SelectorStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/selector/SelectorStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/side_effect/BUILD.bazel create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/side_effect/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/side_effect/SideEffectStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/side_effect/SideEffectStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/transport_marshaller/BUILD.bazel create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/transport_marshaller/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/transport_marshaller/TransportMarshallerStep.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/transport_marshaller/TransportMarshallerStep.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/ProductParamConfig.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/ProductParamConfig.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/ProductParamConfigBuilder.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/ProductParamConfigBuilder.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice/ProductScope.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice/ProductScope.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice/ProductScopeModule.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice/ProductScopeModule.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice/SimpleScope.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice/SimpleScope.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/registry/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/registry/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/registry/ProductParamRegistry.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/registry/ProductParamRegistry.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/registry/ProductPipelineRegistry.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/registry/ProductPipelineRegistry.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/registry/ProductPipelineRegistryConfig.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/registry/ProductPipelineRegistryConfig.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/Bounds.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/Bounds.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/LinearLatencyQualityFactor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/LinearLatencyQualityFactor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/LinearLatencyQualityFactorObserver.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/LinearLatencyQualityFactorObserver.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QualityFactor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QualityFactor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QualityFactorConfig.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QualityFactorConfig.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QualityFactorObserver.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QualityFactorObserver.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QualityFactorStatus.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QualityFactorStatus.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QueriesPerSecondBasedQualityFactor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QueriesPerSecondBasedQualityFactor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QueriesPerSecondBasedQualityFactorObserver.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QueriesPerSecondBasedQualityFactorObserver.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QueryRateCounter.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor/QueryRateCounter.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/Executor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/Executor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/ExecutorObserver.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/ExecutorObserver.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/ExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/ExecutorResult.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/async_feature_map_executor/AsyncFeatureMapExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/async_feature_map_executor/AsyncFeatureMapExecutor.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/async_feature_map_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/async_feature_map_executor/BUILD.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_decorator_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_decorator_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_decorator_executor/CandidateDecoratorExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_decorator_executor/CandidateDecoratorExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_decorator_executor/CandidateDecoratorExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_decorator_executor/CandidateDecoratorExecutorResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_hydrator_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_hydrator_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_hydrator_executor/CandidateFeatureHydratorExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_hydrator_executor/CandidateFeatureHydratorExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_hydrator_executor/CandidateFeatureHydratorExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_hydrator_executor/CandidateFeatureHydratorExecutorResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_transformer_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_transformer_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_transformer_executor/CandidateFeatureTransformerExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_transformer_executor/CandidateFeatureTransformerExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_transformer_executor/CandidateFeatureTransformerExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_transformer_executor/CandidateFeatureTransformerExecutorResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_pipeline_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_pipeline_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_pipeline_executor/CandidatePipelineExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_pipeline_executor/CandidatePipelineExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_pipeline_executor/CandidatePipelineExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_pipeline_executor/CandidatePipelineExecutorResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_source_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_source_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_source_executor/CandidateSourceExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_source_executor/CandidateSourceExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_source_executor/CandidateSourceExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_source_executor/CandidateSourceExecutorResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/component_registry/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/component_registry/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/component_registry/ComponentRegistry.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/component_registry/ComponentRegistry.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/component_registry/RegisteredComponent.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/component_registry/RegisteredComponent.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/debug_query/AuthorizationService.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/debug_query/AuthorizationService.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/debug_query/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/debug_query/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/debug_query/DebugQueryNotSupportedService.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/debug_query/DebugQueryNotSupportedService.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/debug_query/DebugQueryService.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/debug_query/DebugQueryService.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/debug_query/ParamsSerializerModule.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/debug_query/ParamsSerializerModule.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/domain_marshaller_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/domain_marshaller_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/domain_marshaller_executor/DomainMarshallerExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/domain_marshaller_executor/DomainMarshallerExecutor.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/feature_hydrator_observer/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/feature_hydrator_observer/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/feature_hydrator_observer/FeatureHydratorObserver.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/feature_hydrator_observer/FeatureHydratorObserver.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/filter_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/filter_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/filter_executor/FilterExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/filter_executor/FilterExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/filter_executor/FilterExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/filter_executor/FilterExecutorResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor/ExecutedGateResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor/ExecutedGateResult.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor/GateExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor/GateExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor/GateExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor/GateExecutorResult.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor/StoppedGateException.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor/StoppedGateException.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/group_results_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/group_results_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/group_results_executor/GroupResultsExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/group_results_executor/GroupResultsExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_execution_logger/AllowListedPipelineExecutionLogger.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_execution_logger/AllowListedPipelineExecutionLogger.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_execution_logger/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_execution_logger/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_execution_logger/PipelineExecutionLogger.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_execution_logger/PipelineExecutionLogger.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_executor/PipelineExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_executor/PipelineExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_executor/PipelineExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_executor/PipelineExecutorResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_result_side_effect_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_result_side_effect_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_result_side_effect_executor/PipelineResultSideEffectExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_result_side_effect_executor/PipelineResultSideEffectExecutor.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_selector_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_selector_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_selector_executor/PipelineSelectorExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_selector_executor/PipelineSelectorExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_selector_executor/PipelineSelectorExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_selector_executor/PipelineSelectorExecutorResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/quality_factor_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/quality_factor_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/quality_factor_executor/QualityFactorExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/quality_factor_executor/QualityFactorExecutorResult.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/query_feature_hydrator_executor/AsyncIndividualFeatureHydratorResultSerializer.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/query_feature_hydrator_executor/AsyncIndividualFeatureHydratorResultSerializer.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/query_feature_hydrator_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/query_feature_hydrator_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/query_feature_hydrator_executor/QueryFeatureHydratorExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/query_feature_hydrator_executor/QueryFeatureHydratorExecutor.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/scoring_pipeline_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/scoring_pipeline_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/scoring_pipeline_executor/ScoringPipelineExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/scoring_pipeline_executor/ScoringPipelineExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/scoring_pipeline_executor/ScoringPipelineExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/scoring_pipeline_executor/ScoringPipelineExecutorResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/selector_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/selector_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/selector_executor/SelectorExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/selector_executor/SelectorExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/selector_executor/SelectorExecutorResult.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/selector_executor/SelectorExecutorResult.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/slice/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/slice/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/slice/SliceService.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/slice/SliceService.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/transformer_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/transformer_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/transformer_executor/PerCandidateTransformerExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/transformer_executor/PerCandidateTransformerExecutor.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/transformer_executor/TransformerExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/transformer_executor/TransformerExecutor.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/transport_marshaller_executor/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/transport_marshaller_executor/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/transport_marshaller_executor/TransportMarshallerExecutor.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/transport_marshaller_executor/TransportMarshallerExecutor.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/urp/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/urp/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/urp/UrpService.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/urp/UrpService.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/urt/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/urt/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/urt/UrtService.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/urt/UrtService.scala delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util/BUILD create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util/BUILD.docx create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util/FuturePools.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util/FuturePools.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util/OffloadFuturePools.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util/OffloadFuturePools.scala create mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util/SortIndexBuilder.docx delete mode 100644 product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util/SortIndexBuilder.scala delete mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/http_client/BUILD create mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/http_client/BUILD.docx create mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/http_client/FinagleHttpClientBuilder.docx delete mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/http_client/FinagleHttpClientBuilder.scala create mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/http_client/FinagleHttpClientWithProxyBuilder.docx delete mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/http_client/FinagleHttpClientWithProxyBuilder.scala create mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/http_client/HttpHostPort.docx delete mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/http_client/HttpHostPort.scala delete mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/manhattan_client/BUILD create mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/manhattan_client/BUILD.docx create mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/manhattan_client/ManhattanClientBuilder.docx delete mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/manhattan_client/ManhattanClientBuilder.scala delete mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/memcached_client/BUILD create mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/memcached_client/BUILD.docx create mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/memcached_client/MemcachedClientBuilder.docx delete mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/memcached_client/MemcachedClientBuilder.scala delete mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/observer/BUILD create mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/observer/BUILD.docx create mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/observer/Observer.docx delete mode 100644 product-mixer/shared-library/src/main/scala/com/twitter/product_mixer/shared_library/observer/Observer.scala diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/PipelineCursorSerializer.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/PipelineCursorSerializer.docx new file mode 100644 index 0000000000000000000000000000000000000000..c1d311b86e40416947994af1716e9b76c4461673 GIT binary patch literal 37592 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 Some(thriftCursor) - case Throw(_) => None - } - - // Add type annotation to help out the compiler since the type is lost due to the _ match - val defaultDeserializePf: PartialFunction[Option[Thrift], Option[Cursor]] = { - case _ => - // This case is the result of the client submitting a cursor we do not expect - throw PipelineFailure(MalformedCursor, s"Unknown request cursor: $cursorString") - } - - (deserializePf orElse defaultDeserializePf)(thriftCursor) - } -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/PipelineQuery.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/PipelineQuery.docx new file mode 100644 index 0000000000000000000000000000000000000000..8bbe273b5ce824ed5ffa8984e3436135fd83d0e8 GIT binary patch literal 37251 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 - - /** Set a query time val that is constant for the duration of the query lifecycle */ - val queryTime: Time = self.debugOptions.flatMap(_.requestTimeOverride).getOrElse(Time.now) - - /** The requested max results is specified, or not specified, by the thrift client */ - def requestedMaxResults: Option[Int] - - /** Retrieves the max results with a default Param, if not specified by the thrift client */ - def maxResults(defaultRequestedMaxResultParam: Param[Int]): Int = - requestedMaxResults.getOrElse(params(defaultRequestedMaxResultParam)) - - /** Optional [[FeatureMap]], this may be updated later using [[withFeatureMap]] */ - def features: Option[FeatureMap] - - /** - * Since Query-Level features can be hydrated later, we need this method to update the PipelineQuery - * usually this will be implemented via `copy(features = Some(features))` - */ - def withFeatureMap(features: FeatureMap): PipelineQuery -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/PipelineResult.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/PipelineResult.docx new file mode 100644 index 0000000000000000000000000000000000000000..8ed8faa1abce24c3b9c17f696dfe195b55b0739a GIT binary patch literal 37605 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 H^?`T*K*> - Throw(failure) - case (_: Some[ResultType], _) => - Return(this) - // Pipelines should always finish with either a result or a failure - case _ => Throw(PipelineFailure(ExecutionFailed, "Pipeline did not execute")) - } - - final def toResultTry: Try[ResultType] = { - // `.get` is safe here because `toTry` guarantees a value in the `Return` case - toTry.map(_.result.get) - } -} - -object PipelineResult { - - /** - * Track number of candidates returned by a Pipeline. Cursors are excluded from this - * count and modules are counted as the sum of their candidates. - * - * @note this is a somewhat subjective measure of 'size' and it is spread across pipeline - * definitions as well as selectors. - */ - def resultSize(results: Seq[CandidateWithDetails]): Int = results.map { - case module: ModuleCandidateWithDetails => resultSize(module.candidates) - case ItemCandidateWithDetails(_: CursorCandidate, _, _) => 0 - case _ => 1 - }.sum -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/BUILD b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/BUILD deleted file mode 100644 index 642e7c74f..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/BUILD +++ /dev/null @@ -1,77 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - platform = "java8", - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/javax/inject:javax.inject", - "configapi/configapi-core", - "configapi/configapi-decider", - "finatra/inject/inject-core/src/main/scala", - "finatra/inject/inject-core/src/main/scala/com/twitter/inject", - "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/feature", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/featurestorev1", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/candidate_source", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/common/alert", - "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/feature_hydrator", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/filter", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/gate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/marshaller", - "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/gate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/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/pipeline", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/async_feature_map_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_decorator_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_hydrator_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_source_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/filter_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/group_results_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/query_feature_hydrator_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util", - "stitch/stitch-core", - "util/util-core:scala", - ], - exports = [ - "3rdparty/jvm/javax/inject:javax.inject", - "configapi/configapi-core", - "configapi/configapi-decider", - "finatra/inject/inject-core/src/main/scala", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/candidate_source", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/common/alert", - "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/feature_hydrator", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/filter", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/gate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/marshaller", - "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/gate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/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/pipeline", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/async_feature_map_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_decorator_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_hydrator_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_source_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/filter_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/group_results_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/query_feature_hydrator_executor", - "stitch/stitch-core", - ], -) diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/BUILD.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..60e0362b81d2ea2ac33ab3589e04b4a7b0bd2f73 GIT binary patch literal 37252 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%0A&T8(f|Me literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipeline.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipeline.docx new file mode 100644 index 0000000000000000000000000000000000000000..604721b66bb1200d62c0c9a526898bb802b032ec GIT binary patch literal 37139 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineBuilder.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineBuilder.scala deleted file mode 100644 index 2d3df3440..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineBuilder.scala +++ /dev/null @@ -1,735 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.candidate - -import com.twitter.finagle.stats.StatsReceiver -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.feature.featuremap.asyncfeaturemap.AsyncFeatureMap -import com.twitter.product_mixer.core.functional_component.common.alert.Alert -import com.twitter.product_mixer.core.functional_component.decorator.CandidateDecorator -import com.twitter.product_mixer.core.functional_component.feature_hydrator.BaseQueryFeatureHydrator -import com.twitter.product_mixer.core.functional_component.transformer.BaseCandidatePipelineQueryTransformer -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineResultsTransformer -import com.twitter.product_mixer.core.gate.ParamGate -import com.twitter.product_mixer.core.gate.ParamGate.EnabledGateSuffix -import com.twitter.product_mixer.core.gate.ParamGate.SupportedClientGateSuffix -import com.twitter.product_mixer.core.model.common.CandidateWithFeatures -import com.twitter.product_mixer.core.model.common.Component -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.ComponentIdentifierStack -import com.twitter.product_mixer.core.model.common.identifier.PipelineStepIdentifier -import com.twitter.product_mixer.core.model.common.presentation.CandidateWithDetails -import com.twitter.product_mixer.core.pipeline.InvalidStepStateException -import com.twitter.product_mixer.core.pipeline.PipelineBuilder -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.pipeline_failure.ClosedGate -import com.twitter.product_mixer.core.pipeline.pipeline_failure.PipelineFailureClassifier -import com.twitter.product_mixer.core.service.Executor -import com.twitter.product_mixer.core.service.async_feature_map_executor.AsyncFeatureMapExecutor -import com.twitter.product_mixer.core.service.async_feature_map_executor.AsyncFeatureMapExecutorResults -import com.twitter.product_mixer.core.service.candidate_decorator_executor.CandidateDecoratorExecutor -import com.twitter.product_mixer.core.service.candidate_decorator_executor.CandidateDecoratorExecutorResult -import com.twitter.product_mixer.core.service.candidate_feature_hydrator_executor.CandidateFeatureHydratorExecutor -import com.twitter.product_mixer.core.service.candidate_feature_hydrator_executor.CandidateFeatureHydratorExecutorResult -import com.twitter.product_mixer.core.service.candidate_source_executor.CandidateSourceExecutor -import com.twitter.product_mixer.core.service.candidate_source_executor.CandidateSourceExecutorResult -import com.twitter.product_mixer.core.service.candidate_source_executor.FetchedCandidateWithFeatures -import com.twitter.product_mixer.core.service.filter_executor.FilterExecutor -import com.twitter.product_mixer.core.service.filter_executor.FilterExecutorResult -import com.twitter.product_mixer.core.service.gate_executor.GateExecutor -import com.twitter.product_mixer.core.service.gate_executor.GateExecutorResult -import com.twitter.product_mixer.core.service.gate_executor.StoppedGateException -import com.twitter.product_mixer.core.service.group_results_executor.GroupResultsExecutor -import com.twitter.product_mixer.core.service.group_results_executor.GroupResultsExecutorInput -import com.twitter.product_mixer.core.service.group_results_executor.GroupResultsExecutorResult -import com.twitter.product_mixer.core.service.query_feature_hydrator_executor.QueryFeatureHydratorExecutor -import com.twitter.stitch.Arrow -import com.twitter.util.logging.Logging -import javax.inject.Inject - -class CandidatePipelineBuilder[ - Query <: PipelineQuery, - CandidateSourceQuery, - CandidateSourceResult, - Result <: UniversalNoun[Any]] @Inject() ( - queryFeatureHydratorExecutor: QueryFeatureHydratorExecutor, - asyncFeatureMapExecutor: AsyncFeatureMapExecutor, - candidateDecoratorExecutor: CandidateDecoratorExecutor, - candidateFeatureHydratorExecutor: CandidateFeatureHydratorExecutor, - candidateSourceExecutor: CandidateSourceExecutor, - groupResultsExecutor: GroupResultsExecutor, - filterExecutor: FilterExecutor, - gateExecutor: GateExecutor, - override val statsReceiver: StatsReceiver) - extends PipelineBuilder[CandidatePipeline.Inputs[Query]] - with Logging { - - override type UnderlyingResultType = Seq[CandidateWithDetails] - override type PipelineResultType = IntermediateCandidatePipelineResult[Result] - - def build( - parentComponentIdentifierStack: ComponentIdentifierStack, - config: BaseCandidatePipelineConfig[ - Query, - CandidateSourceQuery, - CandidateSourceResult, - Result - ] - ): CandidatePipeline[Query] = { - - val pipelineIdentifier = config.identifier - val candidateSourceIdentifier = config.candidateSource.identifier - - val context = Executor.Context( - PipelineFailureClassifier( - config.failureClassifier.orElse(StoppedGateException.classifier(ClosedGate))), - parentComponentIdentifierStack.push(pipelineIdentifier) - ) - - val enabledGateOpt = config.enabledDeciderParam.map { deciderParam => - ParamGate(pipelineIdentifier + EnabledGateSuffix, deciderParam) - } - val supportedClientGateOpt = config.supportedClientParam.map { param => - ParamGate(pipelineIdentifier + SupportedClientGateSuffix, param) - } - - /** - * Evaluate enabled decider gate first since if it's off, there is no reason to proceed - * Next evaluate supported client feature switch gate, followed by customer configured gates - */ - val allGates = enabledGateOpt.toSeq ++ supportedClientGateOpt.toSeq ++ config.gates - - // Dynamically replace the identifier of both transformers if config used the inline constructor - // which sets a default identifier. We need to do this to ensure uniqueness of identifiers. - val queryTransformer = BaseCandidatePipelineQueryTransformer.copyWithUpdatedIdentifier( - config.queryTransformer, - pipelineIdentifier) - - val resultsTransformer = CandidatePipelineResultsTransformer.copyWithUpdatedIdentifier( - config.resultTransformer, - pipelineIdentifier) - - val decorator = config.decorator.map(decorator => - CandidateDecorator.copyWithUpdatedIdentifier(decorator, pipelineIdentifier)) - - val GatesStep = new Step[Query, GateExecutorResult] { - override def identifier: PipelineStepIdentifier = CandidatePipelineConfig.gatesStep - - override def executorArrow: Arrow[Query, GateExecutorResult] = { - gateExecutor.arrow(allGates, context) - } - - override def inputAdaptor( - query: CandidatePipeline.Inputs[Query], - previousResult: IntermediateCandidatePipelineResult[Result] - ): Query = - query.query - - override def resultUpdater( - previousPipelineResult: IntermediateCandidatePipelineResult[Result], - executorResult: GateExecutorResult - ): IntermediateCandidatePipelineResult[Result] = - previousPipelineResult.copy(underlyingResult = - previousPipelineResult.underlyingResult.copy(gateResult = Some(executorResult))) - } - - def queryFeatureHydrationStep( - queryFeatureHydrators: Seq[BaseQueryFeatureHydrator[Query, _]], - stepIdentifier: PipelineStepIdentifier, - updater: ResultUpdater[CandidatePipelineResult, QueryFeatureHydratorExecutor.Result] - ): Step[Query, QueryFeatureHydratorExecutor.Result] = - new Step[Query, QueryFeatureHydratorExecutor.Result] { - override def identifier: PipelineStepIdentifier = stepIdentifier - - override def executorArrow: Arrow[Query, QueryFeatureHydratorExecutor.Result] = - queryFeatureHydratorExecutor.arrow( - queryFeatureHydrators, - CandidatePipelineConfig.stepsAsyncFeatureHydrationCanBeCompletedBy, - context) - - override def inputAdaptor( - query: CandidatePipeline.Inputs[Query], - previousResult: IntermediateCandidatePipelineResult[Result] - ): Query = query.query - - override def resultUpdater( - previousPipelineResult: IntermediateCandidatePipelineResult[Result], - executorResult: QueryFeatureHydratorExecutor.Result - ): IntermediateCandidatePipelineResult[Result] = - previousPipelineResult.copy( - underlyingResult = updater(previousPipelineResult.underlyingResult, executorResult)) - - override def queryUpdater( - query: CandidatePipeline.Inputs[Query], - executorResult: QueryFeatureHydratorExecutor.Result - ): CandidatePipeline.Inputs[Query] = - CandidatePipeline.Inputs( - query.query - .withFeatureMap( - query.query.features.getOrElse( - FeatureMap.empty) ++ executorResult.featureMap).asInstanceOf[Query], - query.existingCandidates) - } - - def asyncFeaturesStep( - stepToHydrateFor: PipelineStepIdentifier, - context: Executor.Context - ): Step[AsyncFeatureMap, AsyncFeatureMapExecutorResults] = - new Step[AsyncFeatureMap, AsyncFeatureMapExecutorResults] { - override def identifier: PipelineStepIdentifier = - CandidatePipelineConfig.asyncFeaturesStep(stepToHydrateFor) - - override def executorArrow: Arrow[AsyncFeatureMap, AsyncFeatureMapExecutorResults] = - asyncFeatureMapExecutor.arrow(stepToHydrateFor, identifier, context) - - override def inputAdaptor( - query: CandidatePipeline.Inputs[Query], - previousResult: IntermediateCandidatePipelineResult[Result] - ): AsyncFeatureMap = - previousResult.underlyingResult.mergedAsyncQueryFeatures - .getOrElse( - throw InvalidStepStateException(identifier, "MergedAsyncQueryFeatures") - ) - - override def resultUpdater( - previousPipelineResult: IntermediateCandidatePipelineResult[Result], - executorResult: AsyncFeatureMapExecutorResults - ): IntermediateCandidatePipelineResult[Result] = - previousPipelineResult.copy( - underlyingResult = - previousPipelineResult.underlyingResult.copy(asyncFeatureHydrationResults = - previousPipelineResult.underlyingResult.asyncFeatureHydrationResults match { - case Some(existingResults) => Some(existingResults ++ executorResult) - case None => Some(executorResult) - })) - - override def queryUpdater( - query: CandidatePipeline.Inputs[Query], - executorResult: AsyncFeatureMapExecutorResults - ): CandidatePipeline.Inputs[Query] = - if (executorResult.featureMapsByStep - .getOrElse(stepToHydrateFor, FeatureMap.empty).isEmpty) { - query - } else { - val updatedQuery = query.query - .withFeatureMap( - query.query.features - .getOrElse(FeatureMap.empty) ++ executorResult.featureMapsByStep( - stepToHydrateFor)).asInstanceOf[Query] - CandidatePipeline.Inputs(updatedQuery, query.existingCandidates) - } - } - - val CandidateSourceStep = - new Step[Query, CandidateSourceExecutorResult[Result]] { - override def identifier: PipelineStepIdentifier = - CandidatePipelineConfig.candidateSourceStep - - override def executorArrow: Arrow[ - Query, - CandidateSourceExecutorResult[Result] - ] = - candidateSourceExecutor - .arrow( - config.candidateSource, - queryTransformer, - resultsTransformer, - config.featuresFromCandidateSourceTransformers, - context - ) - - override def inputAdaptor( - query: CandidatePipeline.Inputs[Query], - previousResult: IntermediateCandidatePipelineResult[Result] - ): Query = - query.query - - override def resultUpdater( - previousPipelineResult: IntermediateCandidatePipelineResult[Result], - executorResult: CandidateSourceExecutorResult[Result] - ): IntermediateCandidatePipelineResult[Result] = - previousPipelineResult.copy(underlyingResult = - previousPipelineResult.underlyingResult.copy( - candidateSourceResult = - Some(executorResult.asInstanceOf[CandidateSourceExecutorResult[UniversalNoun[Any]]]) - )) - - override def queryUpdater( - query: CandidatePipeline.Inputs[Query], - executorResult: CandidateSourceExecutorResult[Result] - ): CandidatePipeline.Inputs[Query] = { - val updatedFeatureMap = - query.query.features - .getOrElse(FeatureMap.empty) ++ executorResult.candidateSourceFeatureMap - val updatedQuery = query.query - .withFeatureMap(updatedFeatureMap).asInstanceOf[Query] - CandidatePipeline.Inputs(updatedQuery, query.existingCandidates) - } - } - - val PreFilterFeatureHydrationPhase1Step = - new Step[ - CandidateFeatureHydratorExecutor.Inputs[Query, Result], - CandidateFeatureHydratorExecutorResult[Result] - ] { - override def identifier: PipelineStepIdentifier = - CandidatePipelineConfig.preFilterFeatureHydrationPhase1Step - - override def executorArrow: Arrow[ - CandidateFeatureHydratorExecutor.Inputs[Query, Result], - CandidateFeatureHydratorExecutorResult[Result] - ] = - candidateFeatureHydratorExecutor.arrow(config.preFilterFeatureHydrationPhase1, context) - - override def inputAdaptor( - query: CandidatePipeline.Inputs[Query], - previousResult: IntermediateCandidatePipelineResult[Result] - ): CandidateFeatureHydratorExecutor.Inputs[Query, Result] = { - val candidateSourceExecutorResult = - previousResult.underlyingResult.candidateSourceResult.getOrElse { - throw InvalidStepStateException(identifier, "CandidateSourceResult") - } - CandidateFeatureHydratorExecutor.Inputs( - query.query, - candidateSourceExecutorResult.candidates - .asInstanceOf[Seq[CandidateWithFeatures[Result]]]) - } - - override def resultUpdater( - previousPipelineResult: IntermediateCandidatePipelineResult[Result], - executorResult: CandidateFeatureHydratorExecutorResult[Result] - ): IntermediateCandidatePipelineResult[Result] = { - val candidateSourceExecutorResult = - previousPipelineResult.underlyingResult.candidateSourceResult.getOrElse { - throw InvalidStepStateException(identifier, "CandidateSourceResult") - } - - val featureMapsFromPreFilter = executorResult.results.map { result => - result.candidate -> result.features - }.toMap - - val mergedFeatureMaps = candidateSourceExecutorResult.candidates.map { candidate => - val candidateFeatureMap = candidate.features - val preFilterFeatureMap = - featureMapsFromPreFilter.getOrElse( - candidate.candidate.asInstanceOf[Result], - FeatureMap.empty) - - candidate.candidate.asInstanceOf[Result] -> (candidateFeatureMap ++ preFilterFeatureMap) - }.toMap - - previousPipelineResult.copy( - underlyingResult = previousPipelineResult.underlyingResult.copy( - preFilterHydrationResult = Some( - executorResult - .asInstanceOf[CandidateFeatureHydratorExecutorResult[UniversalNoun[Any]]]) - ), - featureMaps = Some(mergedFeatureMaps) - ) - } - } - - val PreFilterFeatureHydrationPhase2Step = - new Step[ - CandidateFeatureHydratorExecutor.Inputs[Query, Result], - CandidateFeatureHydratorExecutorResult[Result] - ] { - override def identifier: PipelineStepIdentifier = - CandidatePipelineConfig.preFilterFeatureHydrationPhase2Step - - override def executorArrow: Arrow[ - CandidateFeatureHydratorExecutor.Inputs[Query, Result], - CandidateFeatureHydratorExecutorResult[Result] - ] = - candidateFeatureHydratorExecutor.arrow(config.preFilterFeatureHydrationPhase2, context) - - override def inputAdaptor( - query: CandidatePipeline.Inputs[Query], - previousResult: IntermediateCandidatePipelineResult[Result] - ): CandidateFeatureHydratorExecutor.Inputs[Query, Result] = { - val candidates = previousResult.underlyingResult.preFilterHydrationResult.getOrElse { - throw InvalidStepStateException(identifier, "PreFilterHydrationResult") - }.results - CandidateFeatureHydratorExecutor.Inputs( - query.query, - candidates.asInstanceOf[Seq[CandidateWithFeatures[Result]]] - ) - } - - override def resultUpdater( - previousPipelineResult: IntermediateCandidatePipelineResult[Result], - executorResult: CandidateFeatureHydratorExecutorResult[Result] - ): IntermediateCandidatePipelineResult[Result] = { - - val featureMapsFromPreFilterPhase2 = executorResult.results.map { result => - result.candidate -> result.features - }.toMap - - val mergedFeatureMaps = previousPipelineResult.featureMaps - .getOrElse(throw InvalidStepStateException(identifier, "FeatureMaps")) - .map { - case (candidate, featureMap) => - val preFilterPhase2FeatureMap = - featureMapsFromPreFilterPhase2.getOrElse(candidate, FeatureMap.empty) - - candidate -> (featureMap ++ preFilterPhase2FeatureMap) - } - - previousPipelineResult.copy( - underlyingResult = previousPipelineResult.underlyingResult.copy( - preFilterHydrationResultPhase2 = Some( - executorResult - .asInstanceOf[CandidateFeatureHydratorExecutorResult[UniversalNoun[Any]]]) - ), - featureMaps = Some(mergedFeatureMaps) - ) - } - } - - val FiltersStep = - new Step[(Query, Seq[CandidateWithFeatures[Result]]), FilterExecutorResult[Result]] { - override def identifier: PipelineStepIdentifier = CandidatePipelineConfig.filtersStep - - override def executorArrow: Arrow[ - (Query, Seq[CandidateWithFeatures[Result]]), - FilterExecutorResult[ - Result - ] - ] = - filterExecutor.arrow(config.filters, context) - - override def inputAdaptor( - query: CandidatePipeline.Inputs[Query], - previousResult: IntermediateCandidatePipelineResult[Result] - ): (Query, Seq[CandidateWithFeatures[Result]]) = { - val candidates = - previousResult.underlyingResult.candidateSourceResult - .getOrElse { - throw InvalidStepStateException(identifier, "CandidateSourceResult") - }.candidates.map(_.candidate).asInstanceOf[Seq[Result]] - - val featureMaps = previousResult.featureMaps - .getOrElse(throw InvalidStepStateException(identifier, "FeatureMaps")) - - ( - query.query, - candidates.map(candidate => - CandidateWithFeaturesImpl( - candidate, - featureMaps.getOrElse(candidate, FeatureMap.empty)))) - } - - override def resultUpdater( - previousPipelineResult: IntermediateCandidatePipelineResult[Result], - executorResult: FilterExecutorResult[Result] - ): IntermediateCandidatePipelineResult[Result] = - previousPipelineResult.copy(underlyingResult = - previousPipelineResult.underlyingResult.copy( - filterResult = - Some(executorResult.asInstanceOf[FilterExecutorResult[UniversalNoun[Any]]]) - )) - } - - val PostFilterFeatureHydrationStep = - new Step[ - CandidateFeatureHydratorExecutor.Inputs[Query, Result], - CandidateFeatureHydratorExecutorResult[Result] - ] { - override def identifier: PipelineStepIdentifier = - CandidatePipelineConfig.postFilterFeatureHydrationStep - - override def executorArrow: Arrow[ - CandidateFeatureHydratorExecutor.Inputs[Query, Result], - CandidateFeatureHydratorExecutorResult[Result] - ] = - candidateFeatureHydratorExecutor.arrow(config.postFilterFeatureHydration, context) - - override def inputAdaptor( - query: CandidatePipeline.Inputs[Query], - previousResult: IntermediateCandidatePipelineResult[Result] - ): CandidateFeatureHydratorExecutor.Inputs[Query, Result] = { - val filterResult = previousResult.underlyingResult.filterResult - .getOrElse( - throw InvalidStepStateException(identifier, "FilterResult") - ).result.asInstanceOf[Seq[Result]] - - val featureMaps = previousResult.featureMaps.getOrElse( - throw InvalidStepStateException(identifier, "FeatureMaps") - ) - - val filteredCandidates = filterResult.map { candidate => - CandidateWithFeaturesImpl(candidate, featureMaps.getOrElse(candidate, FeatureMap.empty)) - } - CandidateFeatureHydratorExecutor.Inputs(query.query, filteredCandidates) - } - - override def resultUpdater( - previousPipelineResult: IntermediateCandidatePipelineResult[Result], - executorResult: CandidateFeatureHydratorExecutorResult[Result] - ): IntermediateCandidatePipelineResult[Result] = { - val filterResult = previousPipelineResult.underlyingResult.filterResult - .getOrElse( - throw InvalidStepStateException(identifier, "FilterResult") - ).result.asInstanceOf[Seq[Result]] - - val featureMaps = previousPipelineResult.featureMaps.getOrElse( - throw InvalidStepStateException(identifier, "FeatureMaps") - ) - - val postFilterFeatureMaps = executorResult.results.map { result => - result.candidate -> result.features - }.toMap - - val mergedFeatureMaps = filterResult.map { candidate => - candidate -> - (featureMaps - .getOrElse(candidate, FeatureMap.empty) ++ postFilterFeatureMaps.getOrElse( - candidate, - FeatureMap.empty)) - }.toMap - - previousPipelineResult.copy( - underlyingResult = previousPipelineResult.underlyingResult.copy( - postFilterHydrationResult = Some( - executorResult - .asInstanceOf[CandidateFeatureHydratorExecutorResult[UniversalNoun[Any]]]) - ), - featureMaps = Some(mergedFeatureMaps) - ) - } - } - - val ScorersStep = - new Step[ - CandidateFeatureHydratorExecutor.Inputs[Query, Result], - CandidateFeatureHydratorExecutorResult[Result] - ] { - override def identifier: PipelineStepIdentifier = CandidatePipelineConfig.scorersStep - - override def executorArrow: Arrow[ - CandidateFeatureHydratorExecutor.Inputs[Query, Result], - CandidateFeatureHydratorExecutorResult[Result] - ] = - candidateFeatureHydratorExecutor.arrow(config.scorers, context) - - override def inputAdaptor( - query: CandidatePipeline.Inputs[Query], - previousResult: IntermediateCandidatePipelineResult[Result] - ): CandidateFeatureHydratorExecutor.Inputs[Query, Result] = { - val filterResult = previousResult.underlyingResult.filterResult - .getOrElse( - throw InvalidStepStateException(identifier, "FilterResult") - ).result.asInstanceOf[Seq[Result]] - - val featureMaps = previousResult.featureMaps.getOrElse( - throw InvalidStepStateException(identifier, "FeatureMaps") - ) - - val filteredCandidates = filterResult.map { candidate => - CandidateWithFeaturesImpl(candidate, featureMaps.getOrElse(candidate, FeatureMap.empty)) - } - CandidateFeatureHydratorExecutor.Inputs(query.query, filteredCandidates) - } - - override def resultUpdater( - previousPipelineResult: IntermediateCandidatePipelineResult[Result], - executorResult: CandidateFeatureHydratorExecutorResult[Result] - ): IntermediateCandidatePipelineResult[Result] = { - val filterResult = previousPipelineResult.underlyingResult.filterResult - .getOrElse( - throw InvalidStepStateException(identifier, "FilterResult") - ).result.asInstanceOf[Seq[Result]] - - val featureMaps = previousPipelineResult.featureMaps.getOrElse( - throw InvalidStepStateException(identifier, "FeatureMaps") - ) - - val scoringFeatureMaps = executorResult.results.map { result => - result.candidate -> result.features - }.toMap - - val mergedFeatureMaps = filterResult.map { candidate => - candidate -> - (featureMaps - .getOrElse(candidate, FeatureMap.empty) ++ scoringFeatureMaps.getOrElse( - candidate, - FeatureMap.empty)) - }.toMap - - previousPipelineResult.copy( - underlyingResult = previousPipelineResult.underlyingResult.copy( - scorersResult = Some( - executorResult - .asInstanceOf[CandidateFeatureHydratorExecutorResult[UniversalNoun[Any]]]) - ), - featureMaps = Some(mergedFeatureMaps) - ) - } - } - - val DecorationStep = - new Step[(Query, Seq[CandidateWithFeatures[Result]]), CandidateDecoratorExecutorResult] { - override def identifier: PipelineStepIdentifier = CandidatePipelineConfig.decoratorStep - - override def executorArrow: Arrow[ - (Query, Seq[CandidateWithFeatures[Result]]), - CandidateDecoratorExecutorResult - ] = - candidateDecoratorExecutor.arrow(decorator, context) - - override def inputAdaptor( - query: CandidatePipeline.Inputs[Query], - previousResult: IntermediateCandidatePipelineResult[Result] - ): (Query, Seq[CandidateWithFeatures[Result]]) = { - val keptCandidates = previousResult.underlyingResult.filterResult - .getOrElse { - throw InvalidStepStateException(identifier, "FilterResult") - }.result.asInstanceOf[Seq[Result]] - - val featureMaps = previousResult.featureMaps.getOrElse { - throw InvalidStepStateException(identifier, "FeatureMaps") - } - - ( - query.query, - keptCandidates.map(candidate => - CandidateWithFeaturesImpl( - candidate, - featureMaps.getOrElse(candidate, FeatureMap.empty)))) - } - - override def resultUpdater( - previousPipelineResult: IntermediateCandidatePipelineResult[Result], - executorResult: CandidateDecoratorExecutorResult - ): IntermediateCandidatePipelineResult[Result] = - previousPipelineResult.copy(underlyingResult = - previousPipelineResult.underlyingResult.copy( - candidateDecoratorResult = Some(executorResult) - )) - } - - /** - * ResultStep is a synchronous step that basically takes the outputs from the other steps, groups modules, - * and puts things into the final result object - */ - val ResultStep = new Step[GroupResultsExecutorInput[Result], GroupResultsExecutorResult] { - override def identifier: PipelineStepIdentifier = CandidatePipelineConfig.resultStep - - override def executorArrow: Arrow[ - GroupResultsExecutorInput[Result], - GroupResultsExecutorResult - ] = groupResultsExecutor.arrow(pipelineIdentifier, candidateSourceIdentifier, context) - - override def inputAdaptor( - query: CandidatePipeline.Inputs[Query], - previousResult: IntermediateCandidatePipelineResult[Result] - ): GroupResultsExecutorInput[Result] = { - - val underlying = previousResult.underlyingResult - - val keptCandidates = underlying.filterResult - .getOrElse( - throw InvalidStepStateException(identifier, "FilterResult") - ).result.asInstanceOf[Seq[Result]] - - val decorations = underlying.candidateDecoratorResult - .getOrElse( - throw InvalidStepStateException(identifier, "DecorationResult") - ).result.map(decoration => decoration.candidate -> decoration.presentation).toMap - - val combinedFeatureMaps: Map[Result, FeatureMap] = previousResult.featureMaps.getOrElse( - throw InvalidStepStateException(identifier, "FeatureMaps")) - - val filteredCandidates = keptCandidates.map { candidate => - val updatedMap = combinedFeatureMaps - .get(candidate).getOrElse(FeatureMap.empty) - FetchedCandidateWithFeatures(candidate, updatedMap) - } - - GroupResultsExecutorInput( - candidates = filteredCandidates, - decorations = decorations - ) - } - - override def resultUpdater( - previousPipelineResult: IntermediateCandidatePipelineResult[Result], - executorResult: GroupResultsExecutorResult - ): IntermediateCandidatePipelineResult[Result] = - previousPipelineResult.copy(underlyingResult = previousPipelineResult.underlyingResult - .copy(result = Some(executorResult.candidatesWithDetails))) - } - - val builtSteps = Seq( - GatesStep, - queryFeatureHydrationStep( - config.queryFeatureHydration, - CandidatePipelineConfig.fetchQueryFeaturesStep, - (pipelineResult, executorResult) => - pipelineResult.copy(queryFeatures = Some(executorResult)) - ), - queryFeatureHydrationStep( - config.queryFeatureHydrationPhase2, - CandidatePipelineConfig.fetchQueryFeaturesPhase2Step, - (pipelineResult, executorResult) => - pipelineResult.copy( - queryFeaturesPhase2 = Some(executorResult), - mergedAsyncQueryFeatures = Some( - pipelineResult.queryFeatures - .getOrElse( - throw InvalidStepStateException( - CandidatePipelineConfig.fetchQueryFeaturesPhase2Step, - "QueryFeatures") - ).asyncFeatureMap ++ executorResult.asyncFeatureMap) - ) - ), - asyncFeaturesStep(CandidatePipelineConfig.candidateSourceStep, context), - CandidateSourceStep, - asyncFeaturesStep(CandidatePipelineConfig.preFilterFeatureHydrationPhase1Step, context), - PreFilterFeatureHydrationPhase1Step, - asyncFeaturesStep(CandidatePipelineConfig.preFilterFeatureHydrationPhase2Step, context), - PreFilterFeatureHydrationPhase2Step, - asyncFeaturesStep(CandidatePipelineConfig.filtersStep, context), - FiltersStep, - asyncFeaturesStep(CandidatePipelineConfig.postFilterFeatureHydrationStep, context), - PostFilterFeatureHydrationStep, - asyncFeaturesStep(CandidatePipelineConfig.scorersStep, context), - ScorersStep, - asyncFeaturesStep(CandidatePipelineConfig.decoratorStep, context), - DecorationStep, - ResultStep - ) - - /** The main execution logic for this Candidate Pipeline. */ - val finalArrow: Arrow[CandidatePipeline.Inputs[Query], CandidatePipelineResult] = - buildCombinedArrowFromSteps( - steps = builtSteps, - context = context, - initialEmptyResult = - IntermediateCandidatePipelineResult.empty[Result](config.candidateSource.identifier), - stepsInOrderFromConfig = CandidatePipelineConfig.stepsInOrder - ).map(_.underlyingResult) - - val configFromBuilder = config - new CandidatePipeline[Query] { - override private[core] val config: BaseCandidatePipelineConfig[Query, _, _, _] = - configFromBuilder - override val arrow: Arrow[CandidatePipeline.Inputs[Query], CandidatePipelineResult] = - finalArrow - override val identifier: CandidatePipelineIdentifier = pipelineIdentifier - override val alerts: Seq[Alert] = config.alerts - override val children: Seq[Component] = - allGates ++ - config.queryFeatureHydration ++ - Seq(queryTransformer, config.candidateSource, resultsTransformer) ++ - config.featuresFromCandidateSourceTransformers ++ - decorator.toSeq ++ - config.preFilterFeatureHydrationPhase1 ++ - config.filters ++ - config.postFilterFeatureHydration ++ - config.scorers - } - } - - private case class CandidateWithFeaturesImpl(candidate: Result, features: FeatureMap) - extends CandidateWithFeatures[Result] -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineBuilderFactory.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineBuilderFactory.docx new file mode 100644 index 0000000000000000000000000000000000000000..e3cc99eae46487185cd9a5dfa3408759d7abb1ec GIT binary patch literal 37206 zcmagFWmsIvwm*!!dvJGmcL)S`m!Lr#2@Z`1cMI}t)Hy5yQ=o?YGpY{C@e5AFgUQ_R37b0)xx+Wa4@hj7%(tQP^+E$S+r}gXr8QBsFJ~{<$t=R8UJ|I-WxEcv4vca5lGW)qygJJ)C-M*vcN6?! z8nenFFwAiosdqlaYjr|h-c8hc5|Sqd1{qrUQgLLmOEP;z^Mf!o zEg9bLrn$jc_iFn2jWB}G#B+25lC&SdqG>8)G%-kqg5gw!#-Ky1^JjT-J188~RgXq! z_830xk14ypO!&HyKS=mVWxXsjQ)_10q$9NX^L`C8KG%@`V%!iv;9ToE$x!cPso_|+ z)?0|;K7gX6^@Mme!lSK+f@+Cc~!= zU7cukAFHE48GO$>36zZEo&Y+UdNPAVm^Ai|m`d-UyZ*a7y22Pr;fLi=!@K!81-l6i zzY)|gTpA*^s_kMi$)g;6Ja3Li668KNIYD|We3FVj9g;>uwEm(4UiTL$PX`~NSMlzV z{HyL{o;!>7UDg8fOywDq>GWQbhziiV<32ulJt7vDzmpX1eO@Zw*cTbQBhP!nQZNKl z{znx(sO3cOLDk!Y00Tn={WWqjw{>P={(Y^CpZoyHhURxBEHy$^Y~Q3IS+HU#`9q;V zxaaG{X^}lprf9XRQ$^B18>g4}@NCc2Vlh3RV40!FHc-n%XCWYWsaJc8?xLaHXdNyY zzQdo)U41u5$2KkEh5|*@ocfO2LX%XOVH0yukFNf7R;)@~(um$p2BjpZGy(k@@iVQK zix1Nr00tl}-^3MOT-o~F)-C*Ar0KJav7hKstOL4Qs-hViE^h&ftRv>NgzVvTbXja` z22R^!yYeT!@(bo4ff7n;hVGQtFq0h^1H6_Eg2l5fd+!gJC@ChjJf|#NHUm|B9j1wY zvDT)X={CkJ`@oIP>T#d_GeMzW5Y?ZhEviMiKg8A06;{4zipJBnQ6Q76-E}5sDnF6WW-S~wm@iG^yfi5vff*aQD8p_-mLc$&iFel* zR&42svRK7p8BnrqGT#`xCi8yO`@X$@eYZ@=aL;oAg?D6$Vn{dVCh_{*cS-Qix?HcV z;U0tPVhaTZhW7Wmd~|U5qb%y<_G_$Y9Zw8U2A{*NV8vAM;sX}NW+gW8YvMDS=f}uD z#6h*P?E-xsLb3V2u-t?R)C)W{j6E%hS->_Ze$v1mf5;nAcHBT{tPUSOSerZ~cZMp1 zF2&XyL^p6WnjWiMfMJ6FoT{Z*<4iW zmuv0)z$qJPvssZ(?VSD_im1Kl9P~8q#-`Oa6pZFlv~lRgi7No zkP@&Ncb-ptg0e>R`g~Jo_7gqF(oPRoaE?Osn3&Pwat`T!0O32XX~DKAaOOtZp*-`H zb`1RIRR5EA%qzB(_^yY&eIH3-U#RHgfbEMUwSLK<_nrwzmJeV{FT9eW^e! zirg&<)T4m-@-vPk{i+14E>UbkQ!1u!?HJ(d7Y{E|Lggi-HhB2u_osu*8q7pdE5emF zbV{G8Sz)Q#@tX1vyUZ12LRCXFl*vR-CL{z5rgW!ThldhNx(14RQP|mB_~@=wJHfzK z@O=OcbfS$Ap7MKF-CdHqPxvor%olcShuaS>LWoChFucH)dU)cL6L{N~(a3RP{}$V= zlqBIvtu0D{kPKW6FI%O!lz}x_kwT^SogL{c&n(2}@aYd%1aAvBzexUhW32bZLz#eX z3PaLAKd^29Co>k%r`E*|v^f2~Gfs53oOij=fM-UzJGuH6_-mAODQ*7kHmctQ^+UdF z&P^ickJPD{$O+4SnNfVZt9pi%kFa8vJRlwmWU?v*h*WB}V>nzKu!YTLd>Dix`RoFCj+HTuB;94WlNv&Su~b0SD!+3d(5c7Y$nwz^RcRY zB$8U251vAm7Tr1|bO8I~2%HP9ILv9-($%FZJ#_8||2DaaLv5E2Es}!BOuYs4S?-&B z^Y4s4KBvdY(7}GBH4ETUH;1D5E|E+OX%WuVZpt<%7r0>5I{}+1@6P@;m zozQZ`=z7Bxnp|xi#gSZfa;wjYHbozsiCLxK8h1N&t9Q*1 zhI_6HDI5$`M*6TD@L)fXbr*!qhE|TQlv`6;Z=&kfHFzbj#$(@*ZC715@{J3B4fW)U zNJR}Pnm4>=tMpB2>C1?`1#d8NBHA1EuJ~>{9-jYT+{MTgTHahHT=GHYK};=YwO0Vn zE8%e9R3@0ETL|vyhh&j!*1_-K@3FvP-?MyOROip(9tq8&{)KKWDRWf7Sje_FPlonR z$B&CknIAS0`WG&pTQ*w}=|sG`OlL2T8R2_27gF26X2prCWQ;M=v9sYil|39pD)O9K zoiRy=Lr9)6>}X%?cYv6F>!cy`o#x0fbFWA2BWYizNkk9>#GVp`yXq7EGq~FP|%(ZiDf#K2Z*R$kiY%sasHb7XeBC{%emo z)9hMbQFZi8Ij*v`qDfc49tvTGs)Ox0)#^L)Ymbon`%fthK9+IVn_1L8^RXg!PGnJ| zGw&zE>aeAwj&F_NYq4F^;j5&r)r=G58mNq)KI!2#kCLyCR0yw5G-w_gjpwnR=}s1D zYIFzOf7+9F3VLlQ;maWlFM0i>0!<%4{>Z&3^7v`5=;K_`kL@+1w$E{wj;NrxvQZM z>W{6B*MP{lU~AUt(~p%_!m+&siYHAApsm!};=3l-=PAqOZ@FvU^N7B8TNTG6 z_t`M}`*|)}n`RVyrk0$Gdp`mUcF;;S4w{q*K`YfC6VjjitiMl7f9|;w#gqbB@xGkBBJ>3(U=`U% zy!(|$-A*rEUFaPwy&8WjvA?CaVa6!2>%Vu$?UPMoH#d2!wzw&P$I$R0fHx8X6>Bb7 z*&IXA5;f(xr(Q-w%%+kQp1-D-yK`AkTw(U4HtAEv;fF+pXN1~Ts)0HL%EnxK(N^rL zsDdBTYVlv{cyu9jBxmElehkUZ`s~?Gelc0qa@kp7vn{fb=G?ojSg#q-hYnS{ykKlV z!9``fdv-W;b8klI`vPl-V9~HZC{eWU|E!=Ng<%Axd6xm%&v9>THMVE5XbL9j)-91D z!CqLCp|%5gSgvg$7WHI3`ACb0=%DC41 zW1+tDuNeNMGc>!@-Zfe04RNhY**p;sH>F&gF#m*}fgNXFwy8==7J<4W9mP@U(OmT`bakyk~I#uyN6zve5o?IQR3W zJtSoB$m69>@YU|EZ8Mk!xJqJ}Tzo#=e;AUozcape++6-Letg;Bv2M##EJ9Mz+taD^ zg)cO+?(N#DUf1hsVQt*gEnMWyK^xGIe%HQtb#UYU?xcL=lhIvB@lrpqQJA>j61b8z z?4@Jxy7cjj;>Vnn$)g&PQ<2P99ASB<_ZP}L!y$q9Ml5SjAW?2xzMChgp?&9>=ZG6wV{sHd;GOYVbkZEW3Np$+t zdD6|Ldm0hX_;m!(iOKVY&y(URp?r_d#iPq(bzMYKJjOSe<+W?QtG&5mJZX^4*RFlt zr%PY&tn1}Q;?Y7ig}C2wYl8)K3;0!v#9JoogzRmg`k~vTw|abmI=TM&vu+3wJ&g+g zb31(J`6hmQiU`mnLcQHv-~^MbIxP0O1{Jz6tV=}kJnA0iIBDnSNC=A1MjXP&)6>IiQPc*Y)s; z)gTRmq54Buz??cTZ<``1o3=%Ap9X{Ri%4#2Ht#8i9x_GyC^czUL%MO6koh5!O&Mp*9TR zHDyw~qUdqplEfbi*t>dO+Iuc22qMe zKqkku^Z_njv8}tpcZ-naUURHt7;CYjgDpKDT*dYxyZNOQ|Eq2|dA-wgy};?N4RI?98$sQ}=)SYkXBBJ{2<*iwELJpX?^Yzpzg@ z<3XXMpmB76gzAFOfp`^s+8u;n#}#b2+mX}KrIM=s7UUBHp~4V68{4g>v>s) z6OaNL^><;e1Ry=CXdtgx4d0na5t;r=A`>YbjRzv!AFAgQ+#1n3evkThQ-QNY!<1`# z7p7qrzohO0X&14ki_h5uxUY_{F3DnhQqKnjDgP9j#MqLSCiku_-&Rb$Wjkj=N$vRq z$M%)saobnMNFipuO^6>2REV^D}W+hwNCo>WA_4?dSM1 z9%wp=#WMw2eiHWjIS(7LB)OAC-wa6%Ey|+#6|*{zT{EM_M9=-Qsx`&*sZ3ap1(-KAhrv4xsYaS?Uyq(x@@a1s&%3=D{0E z#JL1Ua3vG7%Et_b6-$GCeF=(;ad_(f)?w$W4u)1FEhlvS(Sx@5sGlF2a;wZ-`jfCS z2X^?w0)J9Q`z5T)q&Eqh9v^X}U-_<`=b$eIN`EEhJo*C5_vo%XB*!?6GPNZQx1H1_;n|2j^63^8j6HaU z=wME^lNMv55Bq#EIqmO0Q=9iG{+_jWDplqeU3X zXsf+BW%!2dK{f7)%XmE~zvR@}8AVEAoO(R_HU&i{lAx_a{WMFpRW1-PQ?>B)jM?4o zt>SmVrTeTQ`OrZ6fDCxTuEAlriHB+WfNV?lZuuz9pP)QhE^UsPt2oL`vEA(;Nc`8; zQC5f0lonf!i=gVe8e$YM=jr3;pRv8r7kc?c)1#_|-Q?G>EvGMz0 zzA56+38%OUgCO&*KyCuhzgj&kZ`b;)xd?db-Sw853Iqt#|Ez~(U`-p?a;ZL6Vxoc&m(jJMhqoNjj| z!+8p^67ORThvc0SKQ2O;MKt{}+B8IV&F>Ep*3u)7L|Y2i@(B2PsYGw+g1`!OZ%=uCqo>Pjzls6tyJFYlTqrbGbOeXS}^3;9I`x9o&tmt!lo zKNLDH<9lYt81>a+eobIHB<10+YBg&82rWh{NsTz3w~tZpRE@fU+L!xQqu?VoG+H*q ze=M>>!#GQj%yBLU#pNO4Sh{jjT85imOPuSip%dlrn|W-{F%YZbj7PpiST}8ur@%Xyv5JnXj(Vs zrwvAm67*tA7??K9lsxjf-7)?)(?7k{w8ph|b{4;srqQ2-@a66P^>L99w?YmzgO#^? z*`2dS<0Dr-f}%QQ*(ZM9<+7S%%|WG$y9`?e%IcpvAu1f6+mgc%gP!^QX>GUjn99Lx zk@UQ?aV2?+KhQJ>TkJI$`!2ZKn@wif76)$@EL?ga*QAU!#=Si~tQ9Nt4ebSW2j*4f zQmHF(6xa0^zJ2~4T1xfB^oQqzV=Mo!)SL2@A4%jfZ9uT#6847PWiUcI(zauFz}csa z8s<%cFa6_M1nX{*EJh*cn;%yoi+71IhnT-l2-sSxI~FVQwo^Y`JkMhru}F4`ZK9-e zlq%w*>Q_-pUL(xZ;A|&3+*L4qf1v?l7cRP8sn8u|-BxlhjG}a0%`$rwW>#w!lEhVy z?#7Lo%*U_tX42Mt7YGBb9fr)|N3P8@rq)UeYpT@S43ltD=C`B=E-pILd!&_zjxD{Z zl8UZOg;_?eLRoKXBM0KL4ACDddBy8?OAs|Hd~K2oPS#b|T4kD?+l||ccvfU}o%F3o z+2W~&iJB>2rFmpI6hBPzim~q%AX?a3)~6N-6&K!SkgqteLVH=a>_jNU;*5ISd6ZYh zA1lWXXlrwttSY%2ZdX=NwCo)m;pyNZ#PpDvqK=@|!G3SDJ^Q@O(ZoWPvQHk_Tg3=Q zrNDsrsJ#?j@BrK1mGk^b)#k@LN(_8ySvghLRx+{mply4jP(!Ck(i1h<7v#j)jTY?9BW!6ReJ^b z92WH5zq+SV+KW-syQ?1G8SZfa-}4H-5#gZ=@9^3THn;2&Y*E2*v9a10Jw7e(lHQmncG*0e8OQlsmtNm5)^ie{Z z1QnM_r~rAC?buaT^CU}S&lvgasH+bqk2rvH-t_BjNOvXbVNwM4fh9hoQFX3Qb~Way zb-N+)l@OpubEW&HixSbMEd5krH3!C=UQhAkiiyPQ}IrUbdv3a zGeg4XlFk({KiDj&busT(k>cB=#{7bo8`9UHJHYK+abu-Qq8Q~yChc?@b3IyPedJ;W_6Rje8E$z-K6m zlgm@bn9F0@6Gjqr{+(N(s8{yZ+Gv)bEC6ekz@}Ijva^=wmreBM(CK^~?k^}aH~3D4 z!>fl+V_wP*5Y>dqGwIRJ9ezAHlNS(maGi1H@SUlUiuzl3(((=_mQ}Ynoge9C&^xiG zmo4&mZvEHN@|#t*<%c<3A=;9@^ZRX5LoTK2bihK>oR58k@BGO-jOY%zO2|SQF+-pO z!e-kZKaD1fVMH$7J)ypr4vo z`+gxxPP4I~3z1@x%MN^pleRd3f9e8a(~o-?afJL@I+^O)0*M!1aO>idfd0zaBKvoW z3T6oow})j&*7r!HjCJ?nm+pOBKEKyc6?nR_gHc`G4#AJ)M0s|iqzd)DOatmyb$JW_ z+Uk=Z&7n&DOqbE(#H|2GN>SLc@GC2RS=*ajFhFpY`Fe+!F&mj1%pkiXRi`t@4Jo!9 zo<(=T7cqvc1~*rBD>Tz?g)nkhiYoqb(4!!wh9Y$hjI_*Q6ZlsYDyXIP5eo$ZE=97 zM`zTx65P$@P~~cCUyROl0{@OIU1}Hfn}dopyN6lJc{y+vtn(mGE0o#(!Xv3pGXcuA z(i}rWr4r7gV4fiI`SR5zsk0*G8W*8?>$1QS9?J#W@Up2^Lm4=#3 zM*hg1BAc|?TXEGYv-p%0ry}Ze_lN<-I8+if4q;WseYf=z_C7yWZNFt+t*0)F_2~j{WLmsuXZhK}4c*LE~C4YBO&WkQDAV4?t$8FA1d)tTKyK z_0^{T_?2*D-6V^7r&4pgr2d9F>AGZvHCVzGIMc{0Jt&0GMIGp`Yi(mL5Jnzp>E(ZB z^nQvMIkv0Jsx`(tU!$zJc6veUks^C;;P8kR;&OGmIKuDz_DUU!aXDjk8X*#a9s(hT z;a%Z8b9Oi}^?ROXxDq+{at)!QUy_PaqWoU|ePjY6KXfJY$w{G&5_&~xB0qts0wPJ= zn}$!bQaj76&}0A214a2S9>qObT=1RZ3uW{gW9OqG7FPNaI9iaU#BV>v)UR3j+FGSV z4f^ydk5mqO8P%cG86l4FP_a06k}3Fn%&0h)WYogl&!_>zx;%Dl?x%KcAg!)66K=T>@9 zlxwo9ibbTR5A~#LVJF-Uk7Y$tqL)#crCCG5TBb^(mwZCrRng=*49ZX)gg|*I(I9eC zA_Jy>n?oRKRFLY4#ub`~vbRT9PC3^s_k;_k!3JNW`#-ZuI|7w;<{o%F@-rYZz4d=7 z9&5OtNL4mBfQ2M0MQMi!Ck95i+dHMB%7OXZ{ERE<&7NvY>^i;K_4d=bGs0Kc?bWsh zB;`^AU4(*5W+td6pt35G#`AZ2LaVL>+82`?($~@QSI5@J%ZD0Y#EKjH;x`0VAqIS1ZQ7LKPS`yM8kM@_(Q<{W2=&_c0h{1d?VVlipKO+*=`4bf`9R@LBzPq>oT zGo!@{=#YCI$ox$sMR}U8O3_lT>~G&ILce|YhG@$>`ka`tofEop6aML2Y7_(sy0F#w zuzd>%9sC?TsBG4Rnc8>~G1@dV#jSAmHeDQmNt@nI6F$AinP|O zE4AhKtAO_wz~b(LU@zU-{agPKqQb1Ko;np{ogRvBGuvrciR+X+Vu$R=jrEi5vO{dD zXJzmruFKc0CH(1Kc)4tb zVw&uxYY)+MS!ImQ>?Pq@GL=zH$!65Akp}V>1KYF?G8T+%%bFQzK#d8!mP@Mf17>!{ zP|Ep#|H`_@kYPN>+Xmrpc6MD$Lw_H)ALjNysqFc`;A-cYixF zd#LkKv6uOjj)y~FApzrmkC0B4 zW}hbUS?;qDBtNnd{6}Ff(E*W*Xa?rwp9)?7r^3sOtB}dKtqN{Wm0Yotl6Ov{P9^%V zmjk)qm`3KR3f^(-d#Dde^rG~ZEvm!n*qS^`)NEx&$88b)UZHVWCyF@ z$?AuoS-Gw=&apg>HvYId{1G*wR25x3zyEMxl^Eh?l3CDw_)L&Qf0m+(Q`0kQhU8{czP zD_uYK8t^fKqxbuV#s;?|ORYv`3iqQ!-bBO53a%k~XX`A?BPZr;mfo@m`%L{2vT zgWA<>97HX^{U`M|D$EF!|AYFXYXH6@EZb<)yY+piG5k?wSuckDToxmvzuPY|?SPIZ z%JyRs%m@niP%RX>ngIuGal#EfA6Kgef|Ww#%qQ?}Nf{vz))mVHpwx<}AzR>At#_xT&_54F}fmQEwXtxo?| zq5B4oHiS%~x3(W+AM$SQmv+B)7C{vkJTYpcg#U~J)Fux3Ea!;PukvZm<@+jhW>y|u zxHTQbGFp~x&VlKwoHWWS5xKbauW2=Qq8inu&2Zfmv%d(Q3hO)IRJ0PI> z^i56Uy}_nK_#)5QN3PgwV?=l?9qY0$2CNOsQfT^}9RCInF#Qh$aq=tEf57pQUB_ z%m97`n@&LHDQBfCG`a%hY{TWIf3oM9Xr2{OjupgY_xHoDCjM}LQKfD#27Jjmvq^y9 z=dy$%*&(4>&Ztjmekbw^-g}%1o@GZR;{=Lxt7m(qdqwZbN=-}VLuDs^V{xJEIv+|~EsBNxc^f&tjwjlkU=x;lV?h#U?oqvo8dw*3$luE()QCUl9Aqf?4m1d@<2RbSSS74( z$i;6o7KdAy$srD{Cel0enenjm>M59CN z0E>g{K}2IC?Eu5248#2neFM!x%eD8D)zHraX$ShY*&yq15~t5_k=jtSQ-iCc=VUl> z5b+!+AA}pOa33&gJCzHM!tqP2@)b-~)Xo~*iPV4;w9Rk_XO_WW89_XPH&i}GnEluR zc7@l6D9@4(dqrm1NICu=aZzHw#o+~=i(lA`jGAoo{i-2h>nCmif|El3zQERjE-+0% za7G!|mw<+xu5IYTlTo4}MAjIxjvhlS)=O#OCq0(rl*Tq7_?70uIfPq?Ck{)GTM4Ei z?WtS(6s)P@ayuw_CuN}Ioxs74_}jKX{WE!X+4_Gaucp(s>+9rl0_$H25&9ALj|q3i z31}vJAgztnXmU#3Y2iFe2{9lv=wYF^SH0ibYLyR4sIO`_JZ>*UA^heh(}Hj=s3 zEV<1r=k>znL0=BTJE+%~&R3q@5}bnl%$RX?lk;g8xM)W?7ohoybhz%*B>IJhm9|7k z>82(YD7cW{hkqU#&9LTJY`vc4(23JD)!cjA(Sxvzco}+zzD3bh9EBcwmb*Nd{zNeq zPQHO>^km01&zDXA0XzoLHTJR5p8u-+URZF*mJ(u| zZ?k!x>e`TqvySFZ8tPGNxCcw#0_EIaw`jiue<9Eu(}g{xg4u^XxXi!}JS+dgxIsH# zE@ZaQ1;jlxZXGFRK9uHRowuAz^)%XSd_K_Hl%G)rP|HkILrwtL9Wv+b=j4OC|Z)#1x`j3fe17JgkQ4 zYESJE;qD`qk5A8%!$}*5T3q%y;pkdKt3PLF5)jHhCEyz z5`2wYO^m&$sQ+1i<#b15?>6Y6afY!Y>g@TsXD6{o=f6ueo$dKc6_=y3dE|LjL`L+l z{5imu8XOm~cVE8voZI=#S%hY(G|<_s4|F;&LaWf!`iou5+J1ry#vpi?oMSeWte{G6 zdKaYF=)l`Y4f}dJDa+t29iGm{(d}Mz;ZNP^2VSrdY5L$NgQWlEXc* zwlP2|lo+Mr2YlwDX?gad1eNdyH1*wM_ps_D4#&@8j|Z?q*bit$*XyI0D|k8V*iadL@f7>PFQKo?px0}#Q`LJ1z7?Pv;>gq=W|O>3aOW#d(Z0U9F5x{S&%n3 z5cK!C_~{71B1MrgqOaHd1M%MFF5Fw40VHKH<=D^kx2I*Xpuh!_x=`q{#$Sr!Lf@g+k@t@ZI>6ch&qWD!+jFT zsBJmPsQh2R?!DDXfieFAR&M)j7L7YO1cv>5eFIc0>e%EJ!G4x!y3ain_389O0G13D zfr#c}$_T7n&4m5|95sLdOi7q6-F^=(f~*FG{ft-b_R`^HaNhMGrUWe#$!)QsR#?v_ z3N7N(xs^y)%`*jRRYL^+;8QkY$pN{pE#0;}y3Swk2Yiq6cHQ_oNK~@DB(`x0?wu|SAOT5J0HwsVW7D{o<=i{u3K{0O#hL#8C-$}axy0A`z>9g8<>%qTfb5}v z74v`1jcfjc$&e21*e(hvzc~Px&TUXd*`Y-M9`~1^qcHU94|%w!yIOw1ofkQ&eTM7= z4Ab9{7hwdnx8Dtj@WBd`uvhAjiUsN~MVQk$hNfbsf6))Hh^=H5Etb?UK)_Q%Ez!%n zyKY3C9xvvC%QK?|2z~5Xq^uHaUNHALF4Yl^A3%ZiUf@ir zIe^~y4th;+%!$$KIP8jw$>YLN|TO{eIUk741mIyNUhZ0FFw(0gl4{0C2c-3)q7iZigE_=^>6@-g4)! z$WV0Xun3HVu;kAQBM91Vxw!p-N(lIn+Ud8~GN$ggH`tGd;6Uh&2HATd-0QfrS@D+w zy};Q4B4-G{ZFfYQ;Sfwqeq0{7UdO$YSrXpOM0PLmVaKFWu;GZxcti)nb?VeV=?^*o zqAxbJ6x@aenLpTR0klVew;v30{&zSX4Z%>xoE!YEc2QCkpJ zCO$DqnvyBkq44yqwKINHt&m$TxzKGh2fK{^edV^8T#@Jb*TP9<6?|Xkv|ReA7v=K^ zMJKMUC}1iUna|03iwiGTR9ESMZTrS>y|8B!V!07ZP!HSMBm=GjSfuj9c`l4+u|n~; zHjB*jnMluLNd2RP-hC74Y9^i`NW2tB`@o+~cDb*V$c18*N*yMcZ*Yo%%;(P`7!Xvo zm%NYI9V(&*R?X24&`Yh*;2p6A)m$>Fr26a8$sW6fo6GTdU*VA$m*UttN+4h{@o;+j zpromYi#SlPAQ+6#094e{@)h~=6S}++Z0%~Wj%*st$!hlYA6oRQQlhwwjdxA?bs(eS zCTSvqS)8g*oanbwqRoGau>UBi-G5|g5yFGeh~QAcd^Wh>;#I}Z}m z(=nJ+j?K-H@xE%ODlUqenr9uaIme;2pVZd{A9`?H=rLKEA0ZVjV|*Pp-p=$7>m}vD z1Ak_oHipW<4(c5t=LWg#{V`$udl%4H`YS$UiVaUkS_!F00BJ~P**Rs2iwIWrCZ+fL zzo=M2RCtlUsaPWhO}1;Nc}zhz*}ruRVGBrHX}{|b654LsVZ5k%# zmlYMuq#46w+dh3^No4ix;ELqaV^G`Vf3GNnh=ccSQ0fazB`C8^AH*su1S)J#qu0R+ zJlUSmF#pErsiOl4L#WZfa2s_{5Okc5Bzovjj>OHOZTcYTBld(k_iHaVJL1~h5iDyIvgY5baD{Ts92)>?T85(d)sFdj{X{w zo^z|c9H2}ViRVjRdsgpS65F1Oq)uzAKwToLEQVXM{n*8WF{NQA4(*GBB*YDAx@n!M zoLf+=icjA|K##8e16KW0m#pGePTz7iGhrCDTcbqqIEwEt&t@ZY$qP| zuCTxy2r+1boB-@NmmU3uBi-QCGuWp4%0+nW53bq8xe(sRd}6_dqQN*#n0LtZ%TojC zwZ}yhI5huOfr$F2ir}6rBE@nQ%_?h`%78;9K4ksW=5Q43SC?hM3o`L%daQTLK}ch1 z-{zNu_Q_bv(qkpf&(Ppv6BX=t88G%pdfQ=a#Z%IE_aUUFX{x%(LeBFK=10Beq1Y$) zX|h(m)P7u*e2OBW4*a1t^9I(5HPZvO8zr7AdSfy2!{8{L44wduy9AS<#17XQm1qJq zJx$xI&gpn7zj4?Eq1n1&$x9K|BjV-yhe%1l*Ix)y?)4ciQ!9d=QKbr$>u}klu(rL( z;OWp*OEBq5PH?PI>F)C%%!F~e&J;<5AG38R3Rpqkja&4SA1rF*$B9FtM!4C2W+j+j zMy${Q0jd54g#8;x@83Xnzk%j`Cpv*Lxv!RsaCDIyrREWWwz#o>APAO&<`zd5TTD98 zdp~kj+7ElIV;k#>h zP(a#<5E)Ddu4BiEk4lels`>$fC<{boauo}5nlws;Kym2Bk7R#3Fh-@BN_=U=bLI%2 zl>ud9P_J0|DXi0zn7JYp>%*;BQ5=Lf2_+e{ID!i~bYrIY2`DaRV-DotZ33SRddn4; zorpP78Ub05ao0b^C7ZnT&_9Kzz~N!(g5(YLpXc_CJp$(VxWK@it6{+K|9Ng-%j)wd zDGLj8)6ah%;rB5}$(OD>d3wNZJQ`HWN(Lhv9ru~SfEY3y-@8b?y%#PopEpRWia+{5 z-wZm%FPiO#F%ly)5_AImN+|7HPWHQ2O@9wN1Zc5)cn0p1Frl+{2D`jh2l8EscxCZ*ItCC zdl~5A^}=m+sw^^kYWM!^?hqH@O87^TO0Q&=zd^s^*;mpdI%eJl(yZv z=NG^6y_t+VCk$r?rH3@9?0fpQbh@qWJ3IBK-<(?Ac%JaAEXF4&9ZJ)a@Ltsz8HHr6 z=7g*bE`9f{LcUyo-Me_tGCeF%ZSTmtjThGtHqPR1PX@U1rqMa~NjgrmJp^hVuXO`> z0M$#2n%0#sEw4^i3_389tNc+ax3jL+JXbqb7isc2DIsUT=Z;NVT$1brfe)U~%u?T9 zeBYKf4C(}h?1}sKiwD=PfGNa$gln&LLPP?@{3L>JF3$p+6?g6J)mu!isO1aQqc2pI z-4z%TA`^@43qDR3t;;8t?F-~y?EFM>(;|hq?7j~*YnCXm<--dv?HM;4Mxz?tELmGy z0#lQv4^`LSuS{MZyq#KKZ?{P5?o#=#+1MUlfweEU{l8ZG?#|dZ93Cl_RKonVG`Bi& z9_{bi+_j19%`U9E_?(4jtYm^i_x<#~=P+p&gjhf0QxpmgJwv>vC14)uu%1Jb1V#aTt zo^~GkZsv|0AKtQ(kA2UQW0v;b2uKdzN(VzG*F1f_bL3!!&WQ6xh?A>-=4I&D85ZpS@OW`J*^<;+yh+$NxHH(dV)bs zKejG9PYJDJ*ytlQLfBb>Ft!;{^cpUnHvJVi%o z59haz({6JT0qL(bTlT8AdZy!!aJEt`)k+Z?)>?ol6JDT#&gRBebNR5YSAP6U^YKQb}OK`^Y^gp$ZRi{>2z z!H#=;SRH!vX6QOSHgl8F{lTubebY40boxngv*oFVIU~;@i|akHwEe14q(dc>X)9m0 zUeK8ZDr%U-7^L~af_6{hQ5~akxP=c6t4zHzA|9o7Ep){w)5e?bYu9QfeDi(F8GA?b zEzU+f3c3mV+f&oZQi55Cc-y^Wr%{#LxPWj1Gql&_NdZKlQcWR(HpQ|YbOpL?9mFD* zn;uY3a;?fwEZ{|}2ftUE(KyQC{lT`6x&V6!T^UhoKh{a~#K&0I_x3{}7&X${^6=Ue z>kzyZ==R`~_c{=Zp-q0Caszr`A!2<@e*O46I6WVu91yq9$4Z;PP}I~x9dxUp4$>1) zM=YqLM!E&s;olI1i*U_gFKGnbRJ*?i{VV$SAooc-aKfUJ-zW{g;r~GS`+&cr{O>C8 zxSF9IzUHk$@XF8HgA>A7HG`o927$o1{-O0RNvjY?Oy~g6FnG`~o4{+wQNEM z7|?s(mq~=FdHe=)_?QVxb9$QIIC&TO+PMC~Y4}doPcMLw&8s|Sx_ok{utWra6lt?% z{C4L+xS$I|zG16|Uh|AtFGI8Ym*2=!2q7bXu*5nOAQ~66w zgjvOFD|6@0&1H{{0Q>l0Kx1=PXwqb1mgQZ}q}fcG+4 ztk;DZUXVE{i+_U=id8nwH+!xEgQ!^7Cn&38Kx~nJu@xxBU6pNlMmjY|2TA zwF2EM&O}&gYEXh51=~MWExL5P_%;MdZQ?;WKB^3% zL&EV~Q)E_Hp;!HaGXzWFrnacP-(}%S(RKGkMEEc#{rP2&KhwiVskdt{LGZP91lh%D z#rxs;IYvr2eII!B{|I{vpt!cJTNrnDcX#(7!L4z3cZUQE?(XjH?(XhRaCd?y5ae~v zx%a+%zW=@VR~MV2su^>PvG!g)*WA7K)P7q$m}q!y64K`)kgH&NZCn4r%}l^(kL>WY z#E~AOcH5&c>b~3V@+B9pOR27KxLm#B#~ZycrwjX2#ys4Mqip9q`GVz(}R1uM&wnrGJanyY<(q$MW*U6Y#6;|j+cbPz; zFP3d9xcKHf_bMBC27#jji=B#%gFhAt?n}Q;yvuYKbsnVT^d!09%$W4v&#Zp+@M7@U zMRLa-fW^32s`t5S?2hO< zud98xAkM)3ce5U5i$)_J*k`wf{6WvyZ1ZmupDf%I78n&%^AE1q?vPad0ps}RtJGK? zlG%@b1V8e*!E+<=-CleONb@;&klnK7k?ZjGBSZ*m zI?w8K3-HeqPw%?bxj7!(tK!do-K-h*rZgrwI~RyapY~^%QC;62b(9XjxM+_(-h2g@ zqr6H^s6JK|E81gnAr#6%YU{AQY+5m+v^mM26ib;d>9plZYg)1B-?+bTFm~R~W@4%Q zY3~+uI2N0_lL}8b?P{^S`AOes6Qkx#sq~1bI^%mO5vN_q>O;iyIFC8r~>lX_t0vjLyZp$HIg4n>rdKuj|Z#SJ8|)f3x+u0pD`dIP+3D^u&&E?Yqfs-BwcM zHuKpT8tnd^3Soefyumd#@z-`Y4qnH1r|^=5h##@ADY*msqkV4lTT^@@MY{xq8 zlt&5OyHWuSqWT`?7t!v-ld|qAK057B*;1<9)09swdW4YmqD@zx6t&2Dx?taGpEY2d zJyh95zO@DMfH-AKCU|Zl?#dG(JZU>u-H%@09nii%rv0Xj5FKoWk1I^Dq7y>dyxs5L z6M70|>*({nioR3I8}xQkw0Y^~-^!X)9JoBY_i874_G;IE1WV+dd_ft?SY;DDerF+T z3?t!_cs#|4FEm*~cIC)85O&;rdvW?XKDzZ|v<*M;=Vui315dfAaaL9+stj3jQkXF5 zPb5@_erXTjC?RHMC}JZ`M7S!>rgFdi5xf!!>Iko&_v4;3qEkW_rO8S&ZySD;L1B9~ ze9<*itw-+0)vR)6OVWrpdX^j(9gdBt-2uC7&1|T>RX8!#fDK{KjaDuTr=cXQUBgd> z1DSen%c8tQO=hNSe?S_B+*bwG0n+$2Fy^S{%pCI7OI>tc9+nn=oze1}#j(@IzR7Kg z2FHkgNjNZ=s7&8W7)O*kua_D1cTNn#&&IgOW))5R-FE4r)g6ab*)>;PI*4WZGH&SX z+1U_tUOoXK-lXyKPF@Rtz)tqaOS#hjTXm*N@a2V?>$mHL$7iN>+g$W>gYEqLe#_lt zSIhUr^VR_$DY%=A?H)#Rv9+!5?R3wIsyz(ijMg)z(siFBPwumX+nevDXYoyzdeW&SrO4t}6J8vd zRP_}*5?~_MFRw14A%}~!P?=W;&N}Yc=W&4gk!f7h%`ETzOmY!HDjijupw*)atK+N^ zrRwBmKHTp|$YNKoB?~jO-%O1zdw!VtOl_3=mbH4(jcPsRSd=W)y@2h)|8mQ~@_QW_ zc?+0)-jxT-nTkaX3NJ-oGubC6w0+rmcFjJ=1g39?9ibYHG+cbPpdv**+y`%WNl zpkJFqdk4YN1m-@0G7Ks1w9UuDg5$imY+nD6R@8-VO7U~lWy@h=xY_e)U&CtmzB?&h zz8Be*{?LmfBt|-3*YdoiA?=Wvs-Aps z9l}nYUfX?tjbM?d<@tdLV>(#uFDnYCWmlwpiNsKt>}ccH-@*#BTC!Tj=Q_v}0aw*A zw!FKkDS!ZREpO$69^$1Ee_VurJ-y`eZI#|@qp-Sw_GFq@eRa)AgxOUU*Nxi>TGh1@oI zy|^8{F1O_ZNpR#RU&Ob%_iTx;5jXLj$E*uejK3PBV)Hf4|fve1n?yzMGr@&jr$5Ad;>Io|iv9H7-(*2$f9HQ4R%C5ohF zxAd3P6i0`@r2Z^f?c$3Xl;$wHvu6H^aUESeD7?EJ1+kfF%e4sT;J$X;mj{2ccXU(y zeX{M|Z!7ro|DPRzBl14?>!vej8#fj*xWCr{d>i*VoKm){1KDaWvP=Q@s(gX(wY)&i zi~cy176Tc5BfLus@=vI1L|)ToCE0rZx+v{|ZcwO=5t7YJ{rhvCsII!Sx=P?kYy(F^ z`FdKRa;s;els8M`r%8j=N|f|3`_|O{+}L)3#;*SM9EVa4H0htqoE^zT`-8s2O7Cs% zzwSIbJ!D(5y|_YmHv`&I@4>z|Sg|Cx&gSqV#%8w0uAW_2R#SSeifqy6uQa3BhmhJ! zn9z>+f0JLM{^AY-qXR;E<#}sb1*k2Q(?B#}@X|UMFB+!KAuX>kqb6cA8l<*apr+qt z%eq5nxa7gvC zxig|4tKl4~VIAZJLtA4Iwh&K1O7&g$s5iZlmsL zlLj6#H`>>6WYk*J|6Wl&E2BP{-z>vsqyK zF5Ll0aj$yZLUT1aa|%@SM0jHx&u^ZMMYX$m;_y++A)3tPQ&;n) zS@cOVcCJr|X?1G0r&I*8L$$O+wO^|@nE{ZZyUiW!fm>0a1J9noV*$Lww2T9yOWz#t zTuUpIVG{xZt;5xijb)SM)Gs`>*I8!hiG94HeD5iXx5RkNswZ=cuMT(_p|VyvvhC5_ z7jH~_jabDF;nTc8z*DM_3El&Gqc&-q}tUoZiATrH729CIdCal3Xqw)S$RBXask ziV=H8L~P9VE!C&9ypa%t!inLTZ!RQ_LZ1?l=ik3y0?lDuvNUYL!4FF02^Ueq`!cZJU z2zfw0BX;c@X)aPB1pyIdXBom+oI^aI=~$ast)3>j0zeKZ5w;f^ za|?x`lZ`MJg}|T`MnQ9nF-y8x0>mx^mD7PuL>p1ZhAnd6k za28_(!QKdpT+Hy6JP>KEGsTro48+h9DkRVITvCY#sJ5ci{@U{EX9(dutc*pP(0Z^# zyAT)<=ieeV{9?PeAutUupFTs31i}1@?4F!*j9)Q3Zk76t)~HkDQI6u@2HHOyxCrtY z0tR(0AJ%aeXNz9_DnkvA423=4WqpB;<*wEa2G!LR?migiGJPPepYe|e3_hlFpkAv9 zfM6I9gy}vM6@@{bEV0DM>MGCkqnIz$VjvLK`MlB2IP}8X=3yWtt;B~Nq7dZUDE%;` zVCbR{`Yf5VvexRca6SQIbgcd>#c1KMP0WcBa(N!@+7JU!VvR|+xWZu|q+t9Upx3yC zUc(i7jT1JgFzIvcwpN%p&#PQPFnnymyf&zs?7^&oI%)kdsG6^1dEieql-Y2oAUGNR zq-8mL^9(c8ro9;xz_a1Mhh|wD0;K(sWR;NY#zPcB@G}He2+aQN(odPWBkWg*TU@4v zj;U8HD+A*%ksQpJWGLJuZSIbE|C5i5D14%xH!h=Rs<6IJZ*ml%;*0+U;sk0U!!+Uk56~Nx^LR%D=;hI z(RcaUae7VWPY(gzkc@yrkoW9k823)UZ{7P!uHy67mICS2Zxj~>HG!W9hd7a$7>+)n zllc2dc!FpEkE4ddciJ=?&yNaBPp?dYlv!>K*O%;tR zH5#aowkEZMe33tTP(Sp2WH@@pn(C%FdgpLNx4Ycg5NcxM5aat79Yz*MH!r6*gGP5c zMu|I&2*fGj^`B_GeeOL`^?kn&#-y$0zDXhL_p<7L2oOOZBp9m#j-V);&*;+=*YA=M zWNd%QJQa2MXhq(<>^*YtKTaxyk6@=`rKBHYa-h zyT4U?y(wk6R{_QYQa{1f?sVw~t>!+}(H}oreEQ=4Hsb!~&!4Lxb1vJKjGwerQfmq@ zpVVNZso$etPrQ3EV;r~$UEK*=Wfr2uGceWGG|w=wjLLUdB!Q98IH8f<(RC|ZOPS5HO;1x`#b<-fZ_n5f~WV%T7G}QH8C5u$MgH!8^r(iA;&Tyq>uc(~alfawK zXfU2P6jE!dFmaLE3{y+2?@O-V`l`v&CD?}*ZMhrz}rpE{SD|^T4r~8=FQ8-&zI_2 z54(XDBVQ%6$nN)qg>Ex_A#qRx_qX*)OSoTv!2UMVz&m)BT4(Mm#CnYEDh)YJV=FBwGwzWYS;;h_wR!hZ(6^kz|JF$EOIGX>@2KJ zOmuAN6)8}SXeJ**5LH5BPobHFZQs)0{8>dGbSoE^=}YjsCB0ViEiCWtE0at8d7wC! zP5OH-Z_PaF$#PBKazHR>@`U9H(JLI!6xG{;bW^$!oN*7?#?0Py_l9u{V`X4JvovCt zpiGgZt+&6rfhcFkIX=X2h_Sm2QHGg6f`F%oSVCdoP-ZywXiI33U=?URv4xqVOp|0h zx&&jJ_FN10S(E7sUOX#OcO+nC2jyOL>-~`MuKJ^KgkY<2FN`#yDq*;EU{R-ss zCq5JhX@*hoYLP@#Y0u~rx(E;vH#ZA z=0DdYYT&)WuF%fy%cZx;2JfEM*1`SG`{HN9M%#>}S0k57&$PAS-nji^fw$gEv)V_# z^Wp7na$hL(3c1nLN!r0Go#kWQzIiMs3NX5GuW%MTWgvL@ls?#h?z9|{TZU*pgwH5y zr0iTDQqN5oT4mvgw;hP-wO*m5ieYfKAu4*!D=drvCQYnOQt9zhyW2`gOzU;Iy6pM! zz8yXNRjm0_99ZrV9i;DJbCTPxh$B39hJ+)$8;`;_N0l%Y&;ET|VhU`ER@6NIV>&j1 zYo8Wd3K2KZAc<4^(-0>NR&f0mH2vt^t>Tqe&J02t3=o zu3&ii!meOEoOZKe%Dk?utH8T}J1#H|MSby-!L8YpXbKu;zd3}X$3hwc*5`a1`lIEa zQs+sn9bqy#cgm`Ypht|lmUu^urgbxn^hBUXN4CUC*hzm>+|jWS{;k3TG{{`vHf&H@ z_4WPkRq>1RzjUbNod9*byZl?n`}k%98`=MZgj<1DmhbT6i(-nh{C zA)d;BR-pestQavm3?4p&Itgt^ytDSE@R*pqUB??e!JiWR1K{ft%(=?dM0 z+UfT`NP_YthAYndR63H`u^bFLin&z7mxx9JQRje(1nVM#VBx{=Ic0wdhW32Sq=pN$ z=(RYJB7dnuNX<7Kw?;F(Ik77Qb%%@Epz zjtG4x(@Gd3?hsxWr?%g6tP;0Ql@cvm2C{OHXfo$&*Iua0XTgs4*gRkT#kP58V)N66QY1if|QaIe_|hycM_khv_({%!NqR zo|vV_3|>B&zWUrmO(dtWC=@VwG?w9`$gv2?J#3qy5Cmhy zAw0&u^U<Bk}i6~0~Jiw zT;CWTHoZsHlapLwwF*1LqDh}G6V~0uyGdN;leT!{7LqjR55s2RoSRT5rG+4oG7K2@KNX%dy2Swr(ld1$qL|VFdAZ8)d4#D)g_Ke}f-0*Qt~_C_J3*AJGcn(C zWS*)X0;Y>{a*ry)M3S{qJ+(L{ECZafxK?Cd#7m{LAD#J)s01eFF-}=Qyeeyy#XR%L3gx zpat>pSbr>-?u=qm6_fHWz6X$h zkheM`?pzR5=cOum@PiA(-a?>l0@j5wIRz8=)T(C0QcEK+(ocmk8&l^G9WtQ;oyN&d zHGq_XwcsgfGj|~6!~)6xL75EfpOkshX3cH&hcgVh6vd-sDHJey1ugP_MVKw{v5UnR zoA5G85@%&#Q8&HXP1b3=uTYlJ`5q{DsWy3tpiL|b;8;LAUr8}qJ4Y!ULe3u&TR0$= zo*#-tf8t&X-Y?ov(h;`DvZqi|?@KR;G{Tz0liJ)gD7tA2#zw*593B}{dO~j z{Bi3HszE3_=BAD~DFb$mewmw$p*s%(N`g-;B&$qEf6Dfnenv1c<%(iWvXn%<6iq#t z$KjP!p-R5cq3Uer|76xc3(vuvDyX&QXW3&a2##XM7ymXRwN4e4o%U7_6@(AN{USgI z!~I$KqW%Zs9@K7pEe4@jVFLG*U9$b;(x&utUAo)aM&Jcj*3SsS17~9D+US&7 z?r6bEV_ODsjwE}!A={3l1ZYTcV6de>cAW-D5Pm)TL88Tc^5~bQB(P^=V&1#C{|07P z|NK|X`0=g$sY4`KXf%Mw!WeL&K}q|t31$*EMo%}_p^B&UM`;KgP$`8fP$@uB5IoM2 zFP?E*3f2NcL1tUq_z|0eK#C_dpL>%vGzh#1NQu{dfgzTZU#$NS97~GlY3YI_*|BZB ztt)77_9tx5g^dq}7x|u}s-_bSeUj%pW}2}-J?n09KsquBS< zI7hLJ)C9*NL>L*KEGUva*Mf-1c(fSwVOD;ep>yUxPBDo(w3z_uOZf*ay4;8rvc#`@)up&<$FXh5687p~#Mh8EtXi)uY1pdnFY-I>z}$O5QpuqzFO53I$OZoWYR&6+VgMf^HN zx(7lV=je%)OBhL!9Gfxr1~jd}wOaq%6;?cPRm86VmsaN4#A^e*ySQ#=SwK9^IlhMb_Ge~^j7mX$JWXy(7-f}~By8lO-S#1QaclslB9FJ94bZ7uTNo$^i# zPE&li&HzR{v@A=+8aPex7ns=*5rVtUtuR55)iA*{*50K9 z?2x1lshTXAosgq39i`^dW%VM0xEHOGPTeI~zmkc46@ z7Q$F8P<{Kdnk{C?-u-?BBJzm8g5E+evPS#@MtR>{yR{WCN&R8kz7-|}3?%e-Ac63d znOkU6-Os@HhVl;)ci{Qn6w*v-=Xla-b$-5z+1gbAc@f`7I_(8`JCfyJ1N0XKMR2)(6j%NLhk=-5aw^kgkSS3Z=tC(hM$w%PlEYA)FA$L z3`eA<%aAL#QHY7~_P&fR8pZ|d7J5p{>zLsWu{A%HKayAo3xTqgPisF|;3QG`gGTNPv7QLkNcxG>af`vq1`(d0hWB)ASdcXM)sTHFd{TU5jo7q2dZlUoV zfupgHTw(&0qX_qgf^^)Npx~})&%KY_$GMMeKE(_KY+LhrwrbvJ3`9Cx?;Nx`;u&<0 z*UuuBm?yVUCd}{|G^ZnQUQv}KJb2oc zwZ}vDS(2~?kyAkt*bp{Gu+9?wzG-sTU5L|8xiK4is3jD)vus3$0|mvv`K}Cajkw41 zaPYmSY}Yy$6}2mq1F5AL3z7wL`bkV?yDQ)F3q4)%aGF3{y2-FMpZ~9 zf(C9)1A}ALRw&_Y^tUIkRL2zDgEcFQ^+(Cuq-+R?YvzUgem<4Q~EcI9-#DDd6MwY|LJ5MTcJP{(zY8 xe=??RC}2kIxk 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%0D9~HLi`~wZ`1sN$!L{7p`%L}I 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineConfig.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineConfig.scala deleted file mode 100644 index bbdcb2d50..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineConfig.scala +++ /dev/null @@ -1,264 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.candidate - -import com.twitter.product_mixer.core.functional_component.candidate_source.BaseCandidateSource -import com.twitter.product_mixer.core.functional_component.common.alert.Alert -import com.twitter.product_mixer.core.functional_component.decorator.CandidateDecorator -import com.twitter.product_mixer.core.functional_component.feature_hydrator.BaseCandidateFeatureHydrator -import com.twitter.product_mixer.core.functional_component.feature_hydrator.BaseQueryFeatureHydrator -import com.twitter.product_mixer.core.functional_component.filter.Filter -import com.twitter.product_mixer.core.functional_component.gate.BaseGate -import com.twitter.product_mixer.core.functional_component.gate.Gate -import com.twitter.product_mixer.core.functional_component.scorer.Scorer -import com.twitter.product_mixer.core.functional_component.transformer.CandidateFeatureTransformer -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineQueryTransformer -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineResultsTransformer -import com.twitter.product_mixer.core.functional_component.transformer._ -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.ComponentIdentifierStack -import com.twitter.product_mixer.core.model.common.identifier.PipelineStepIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineConfig -import com.twitter.product_mixer.core.pipeline.PipelineConfigCompanion -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.pipeline_failure.PipelineFailure -import com.twitter.timelines.configapi.FSParam -import com.twitter.timelines.configapi.decider.DeciderParam - -sealed trait BaseCandidatePipelineConfig[ - -Query <: PipelineQuery, - CandidateSourceQuery, - CandidateSourceResult, - Result <: UniversalNoun[Any]] - extends PipelineConfig { - - val identifier: CandidatePipelineIdentifier - - /** - * A candidate pipeline can fetch query-level features for use within the candidate source. It's - * generally recommended to set a hydrator in the parent recos or mixer pipeline if multiple - * candidate pipelines share the same feature but if a specific query feature hydrator is used - * by one pipeline and you don't want to block the others, you could explicitly set it here. - * If a feature is hydrated both in the parent pipeline or here, this one takes priority. - */ - def queryFeatureHydration: Seq[BaseQueryFeatureHydrator[Query, _]] = Seq.empty - - /** - * For query-level features that are dependent on query-level features from [[queryFeatureHydration]] - */ - def queryFeatureHydrationPhase2: Seq[BaseQueryFeatureHydrator[Query, _]] = Seq.empty - - /** - * When these Params are defined, they will automatically be added as Gates in the pipeline - * by the CandidatePipelineBuilder - * - * The enabled decider param can to be used to quickly disable a Candidate Pipeline via Decider - */ - val enabledDeciderParam: Option[DeciderParam[Boolean]] = None - - /** - * This supported client feature switch param can be used with a Feature Switch to control the - * rollout of a new Candidate Pipeline from dogfood to experiment to production - */ - val supportedClientParam: Option[FSParam[Boolean]] = None - - /** [[Gate]]s that are applied sequentially, the pipeline will only run if all the Gates are open */ - def gates: Seq[BaseGate[Query]] = Seq.empty - - /** - * A pair of transforms to adapt the underlying candidate source to the pipeline's query and result types - * Complex use cases such as those that need access to features should construct their own transformer, but - * for simple use cases, you can pass in an anonymous function. - * @example - * {{{ override val queryTransformer: CandidatePipelineQueryTransformer[Query, CandidateSourceQuery] = { query => - * query.toExampleThrift - * } - * }}} - */ - def queryTransformer: BaseCandidatePipelineQueryTransformer[ - Query, - CandidateSourceQuery - ] - - /** Source for Candidates for this Pipeline */ - def candidateSource: BaseCandidateSource[CandidateSourceQuery, CandidateSourceResult] - - /** - * [[CandidateFeatureTransformer]] allow you to define [[com.twitter.product_mixer.core.feature.Feature]] extraction logic from your [[CandidateSource]] results. - * If your candidate sources return [[com.twitter.product_mixer.core.feature.Feature]]s alongside the candidate that might be useful later on, - * add transformers for constructing feature maps. - * - * @note If multiple transformers extract the same feature, the last one takes priority and is kept. - */ - def featuresFromCandidateSourceTransformers: Seq[ - CandidateFeatureTransformer[CandidateSourceResult] - ] = Seq.empty - - /** - * a result Transformer may throw PipelineFailure for candidates that are malformed and - * should be removed. This should be exceptional behavior, and not a replacement for adding a Filter. - * Complex use cases such as those that need access to features should construct their own transformer, but - * for simple use cases, you can pass in an anonymous function. - * @example - * {{{ override val queryTransformer: CandidatePipelineResultsTransformer[CandidateSourceResult, Result] = { sourceResult => - * ExampleCandidate(sourceResult.id) - * } - * }}} - * - */ - val resultTransformer: CandidatePipelineResultsTransformer[CandidateSourceResult, Result] - - /** - * Before filters are run, you can fetch features for each candidate. - * - * Uses Stitch, so you're encouraged to use a working Stitch Adaptor to batch between candidates. - * - * The existing features (from the candidate source) are passed in as an input. You are not expected - * to put them into the resulting feature map yourself - they will be merged for you by the platform. - * - * This API is likely to change when Product Mixer does managed feature hydration - */ - val preFilterFeatureHydrationPhase1: Seq[BaseCandidateFeatureHydrator[Query, Result, _]] = - Seq.empty - - /** - * A second phase of feature hydration that can be run before filtering and after the first phase - * of [[preFilterFeatureHydrationPhase1]]. You are not expected to put them into the resulting - * feature map yourself - they will be merged for you by the platform. - */ - val preFilterFeatureHydrationPhase2: Seq[BaseCandidateFeatureHydrator[Query, Result, _]] = - Seq.empty - - /** A list of filters to apply. Filters will be applied in sequential order. */ - def filters: Seq[Filter[Query, Result]] = Seq.empty - - /** - * After filters are run, you can fetch features for each candidate. - * - * Uses Stitch, so you're encouraged to use a working Stitch Adaptor to batch between candidates. - * - * The existing features (from the candidate source) & pre-filtering are passed in as an input. - * You are not expected to put them into the resulting feature map yourself - - * they will be merged for you by the platform. - * - * This API is likely to change when Product Mixer does managed feature hydration - */ - val postFilterFeatureHydration: Seq[BaseCandidateFeatureHydrator[Query, Result, _]] = Seq.empty - - /** - * Decorators allow for adding Presentations to candidates. While the Presentation can contain any - * arbitrary data, Decorators are often used to add a UrtItemPresentation for URT item support, or - * a UrtModulePresentation for grouping the candidates in a URT module. - */ - val decorator: Option[CandidateDecorator[Query, Result]] = None - - /** - * A candidate pipeline can define a partial function to rescue failures here. They will be treated as failures - * from a monitoring standpoint, and cancellation exceptions will always be propagated (they cannot be caught here). - */ - def failureClassifier: PartialFunction[Throwable, PipelineFailure] = PartialFunction.empty - - /** - * Scorers for candidates. Scorers are executed in parallel. Order does not matter. - */ - def scorers: Seq[Scorer[Query, Result]] = Seq.empty - - /** - * Alerts can be used to indicate the pipeline's service level objectives. Alerts and - * dashboards will be automatically created based on this information. - */ - val alerts: Seq[Alert] = Seq.empty - - /** - * This method is used by the product mixer framework to build the pipeline. - */ - private[core] final def build( - parentComponentIdentifierStack: ComponentIdentifierStack, - factory: CandidatePipelineBuilderFactory - ): CandidatePipeline[Query] = { - factory.get.build(parentComponentIdentifierStack, this) - } -} - -trait CandidatePipelineConfig[ - -Query <: PipelineQuery, - CandidateSourceQuery, - CandidateSourceResult, - Result <: UniversalNoun[Any]] - extends BaseCandidatePipelineConfig[ - Query, - CandidateSourceQuery, - CandidateSourceResult, - Result - ] { - override val gates: Seq[Gate[Query]] = Seq.empty - - override val queryTransformer: CandidatePipelineQueryTransformer[ - Query, - CandidateSourceQuery - ] -} - -trait DependentCandidatePipelineConfig[ - -Query <: PipelineQuery, - CandidateSourceQuery, - CandidateSourceResult, - Result <: UniversalNoun[Any]] - extends BaseCandidatePipelineConfig[ - Query, - CandidateSourceQuery, - CandidateSourceResult, - Result - ] - -/** - * Contains [[PipelineStepIdentifier]]s for the Steps that are available for all [[BaseCandidatePipelineConfig]]s - */ -object CandidatePipelineConfig extends PipelineConfigCompanion { - val gatesStep: PipelineStepIdentifier = PipelineStepIdentifier("Gates") - val fetchQueryFeaturesStep: PipelineStepIdentifier = PipelineStepIdentifier("FetchQueryFeatures") - val fetchQueryFeaturesPhase2Step: PipelineStepIdentifier = PipelineStepIdentifier( - "FetchQueryFeaturesPhase2") - val candidateSourceStep: PipelineStepIdentifier = PipelineStepIdentifier("CandidateSource") - val preFilterFeatureHydrationPhase1Step: PipelineStepIdentifier = - PipelineStepIdentifier("PreFilterFeatureHydration") - val preFilterFeatureHydrationPhase2Step: PipelineStepIdentifier = - PipelineStepIdentifier("PreFilterFeatureHydrationPhase2") - val filtersStep: PipelineStepIdentifier = PipelineStepIdentifier("Filters") - val postFilterFeatureHydrationStep: PipelineStepIdentifier = - PipelineStepIdentifier("PostFilterFeatureHydration") - val scorersStep: PipelineStepIdentifier = PipelineStepIdentifier("Scorer") - val decoratorStep: PipelineStepIdentifier = PipelineStepIdentifier("Decorator") - val resultStep: PipelineStepIdentifier = PipelineStepIdentifier("Result") - - /** All the steps which are executed by a [[CandidatePipeline]] in the order in which they are run */ - override val stepsInOrder: Seq[PipelineStepIdentifier] = Seq( - gatesStep, - fetchQueryFeaturesStep, - fetchQueryFeaturesPhase2Step, - asyncFeaturesStep(candidateSourceStep), - candidateSourceStep, - asyncFeaturesStep(preFilterFeatureHydrationPhase1Step), - preFilterFeatureHydrationPhase1Step, - asyncFeaturesStep(preFilterFeatureHydrationPhase2Step), - preFilterFeatureHydrationPhase2Step, - asyncFeaturesStep(filtersStep), - filtersStep, - asyncFeaturesStep(postFilterFeatureHydrationStep), - postFilterFeatureHydrationStep, - asyncFeaturesStep(scorersStep), - scorersStep, - asyncFeaturesStep(decoratorStep), - decoratorStep, - resultStep - ) - - override val stepsAsyncFeatureHydrationCanBeCompletedBy: Set[PipelineStepIdentifier] = Set( - candidateSourceStep, - preFilterFeatureHydrationPhase1Step, - preFilterFeatureHydrationPhase2Step, - filtersStep, - postFilterFeatureHydrationStep, - scorersStep, - decoratorStep - ) -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineResult.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineResult.docx new file mode 100644 index 0000000000000000000000000000000000000000..bf69d88131d227943be146058a028dbd496f66ac GIT binary patch literal 37533 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineResult.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineResult.scala deleted file mode 100644 index 7729cbcf8..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/CandidatePipelineResult.scala +++ /dev/null @@ -1,93 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.candidate - -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.feature.featuremap.asyncfeaturemap.AsyncFeatureMap -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.model.common.identifier.CandidateSourceIdentifier -import com.twitter.product_mixer.core.model.common.presentation.CandidateWithDetails -import com.twitter.product_mixer.core.pipeline.PipelineResult -import com.twitter.product_mixer.core.pipeline.pipeline_failure.PipelineFailure -import com.twitter.product_mixer.core.service.async_feature_map_executor.AsyncFeatureMapExecutorResults -import com.twitter.product_mixer.core.service.candidate_decorator_executor.CandidateDecoratorExecutorResult -import com.twitter.product_mixer.core.service.candidate_feature_hydrator_executor.CandidateFeatureHydratorExecutorResult -import com.twitter.product_mixer.core.service.candidate_source_executor.CandidateSourceExecutorResult -import com.twitter.product_mixer.core.service.filter_executor.FilterExecutorResult -import com.twitter.product_mixer.core.service.gate_executor.GateExecutorResult -import com.twitter.product_mixer.core.service.query_feature_hydrator_executor.QueryFeatureHydratorExecutor - -case class CandidatePipelineResult( - candidateSourceIdentifier: CandidateSourceIdentifier, - gateResult: Option[GateExecutorResult], - queryFeatures: Option[QueryFeatureHydratorExecutor.Result], - queryFeaturesPhase2: Option[QueryFeatureHydratorExecutor.Result], - mergedAsyncQueryFeatures: Option[AsyncFeatureMap], - candidateSourceResult: Option[CandidateSourceExecutorResult[UniversalNoun[Any]]], - preFilterHydrationResult: Option[CandidateFeatureHydratorExecutorResult[UniversalNoun[Any]]], - preFilterHydrationResultPhase2: Option[ - CandidateFeatureHydratorExecutorResult[UniversalNoun[Any]] - ], - filterResult: Option[FilterExecutorResult[UniversalNoun[Any]]], - postFilterHydrationResult: Option[CandidateFeatureHydratorExecutorResult[UniversalNoun[Any]]], - candidateDecoratorResult: Option[CandidateDecoratorExecutorResult], - scorersResult: Option[CandidateFeatureHydratorExecutorResult[UniversalNoun[Any]]], - asyncFeatureHydrationResults: Option[AsyncFeatureMapExecutorResults], - failure: Option[PipelineFailure], - result: Option[Seq[CandidateWithDetails]]) - extends PipelineResult[Seq[CandidateWithDetails]] { - - override def withFailure(failure: PipelineFailure): CandidatePipelineResult = - copy(failure = Some(failure)) - - override def withResult( - result: Seq[CandidateWithDetails] - ): CandidatePipelineResult = copy(result = Some(result)) - - override val resultSize: Int = result.map(PipelineResult.resultSize).getOrElse(0) -} - -private[candidate] object IntermediateCandidatePipelineResult { - def empty[Candidate <: UniversalNoun[Any]]( - candidateSourceIdentifier: CandidateSourceIdentifier - ): IntermediateCandidatePipelineResult[Candidate] = { - IntermediateCandidatePipelineResult( - CandidatePipelineResult( - candidateSourceIdentifier = candidateSourceIdentifier, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None - ), - None - ) - } -} - -private[candidate] case class IntermediateCandidatePipelineResult[Candidate <: UniversalNoun[Any]]( - underlyingResult: CandidatePipelineResult, - featureMaps: Option[Map[Candidate, FeatureMap]]) - extends PipelineResult[Seq[CandidateWithDetails]] { - override val failure: Option[PipelineFailure] = underlyingResult.failure - override val result: Option[Seq[CandidateWithDetails]] = underlyingResult.result - - override def withFailure( - failure: PipelineFailure - ): IntermediateCandidatePipelineResult[Candidate] = - copy(underlyingResult = underlyingResult.withFailure(failure)) - - override def withResult( - result: Seq[CandidateWithDetails] - ): IntermediateCandidatePipelineResult[Candidate] = - copy(underlyingResult = underlyingResult.withResult(result)) - - override def resultSize(): Int = underlyingResult.resultSize -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/PassthroughCandidatePipelineConfig.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate/PassthroughCandidatePipelineConfig.docx new file mode 100644 index 0000000000000000000000000000000000000000..1824303f197056a3ea96fc21308519bd11bb5316 GIT binary patch literal 37286 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

eJ;Y43YJSY{X7jplBz8)cwrqRH|Uxs>BK9 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 z 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 Unit - - override val resultTransformer: CandidatePipelineResultsTransformer[Unit, Candidate] = _ => - candidate -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/BUILD b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/BUILD deleted file mode 100644 index bbda52b47..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/BUILD +++ /dev/null @@ -1,62 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - platform = "java8", - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/javax/inject:javax.inject", - "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/feature/featurestorev1", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/candidate_source", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/common/alert", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/feature_hydrator", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/filter", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/marshaller", - "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/functional_component/selector", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/side_effect", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/marshalling/request", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/async_feature_map_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_pipeline_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/domain_marshaller_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_result_side_effect_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/quality_factor_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/query_feature_hydrator_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/selector_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/transport_marshaller_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util", - "stitch/stitch-core", - ], - exports = [ - "3rdparty/jvm/javax/inject:javax.inject", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/candidate_source", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/common/alert", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/feature_hydrator", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/filter", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/marshaller", - "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/functional_component/selector", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/side_effect", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/marshalling/request", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/candidate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_pipeline_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/domain_marshaller_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_result_side_effect_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/quality_factor_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/query_feature_hydrator_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/selector_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/transport_marshaller_executor", - "stitch/stitch-core", - ], -) diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/BUILD.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..700ab4025195e7304b8bc0853ffb0115956610a7 GIT binary patch literal 37166 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 H?*Z`u==5nX literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipeline.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipeline.docx new file mode 100644 index 0000000000000000000000000000000000000000..cbbe04997ef4af596612451693d0ba6e52461de1 GIT binary patch literal 37083 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 Y?@(I}8#RM|O=&WKC2D%~KmYaXe-+MbVE_OC literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineBuilder.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineBuilder.scala deleted file mode 100644 index 4cdb44552..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineBuilder.scala +++ /dev/null @@ -1,582 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.mixer - -import com.twitter.finagle.stats.StatsReceiver -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.feature.featuremap.asyncfeaturemap.AsyncFeatureMap -import com.twitter.product_mixer.core.functional_component.common.alert.Alert -import com.twitter.product_mixer.core.functional_component.feature_hydrator.QueryFeatureHydrator -import com.twitter.product_mixer.core.functional_component.gate.Gate -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.functional_component.marshaller.TransportMarshaller -import com.twitter.product_mixer.core.model.common.Component -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.ComponentIdentifier -import com.twitter.product_mixer.core.model.common.identifier.ComponentIdentifierStack -import com.twitter.product_mixer.core.model.common.identifier.MixerPipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.PipelineStepIdentifier -import com.twitter.product_mixer.core.model.marshalling.HasMarshalling -import com.twitter.product_mixer.core.pipeline.FailOpenPolicy -import com.twitter.product_mixer.core.pipeline.InvalidStepStateException -import com.twitter.product_mixer.core.pipeline.PipelineBuilder -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.candidate.CandidatePipeline -import com.twitter.product_mixer.core.pipeline.candidate.CandidatePipelineBuilderFactory -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.pipeline_failure.PipelineFailureClassifier -import com.twitter.product_mixer.core.pipeline.pipeline_failure.ProductDisabled -import com.twitter.product_mixer.core.quality_factor.HasQualityFactorStatus -import com.twitter.product_mixer.core.quality_factor.QualityFactorObserver -import com.twitter.product_mixer.core.quality_factor.QualityFactorStatus -import com.twitter.product_mixer.core.service.Executor -import com.twitter.product_mixer.core.service.async_feature_map_executor.AsyncFeatureMapExecutor -import com.twitter.product_mixer.core.service.async_feature_map_executor.AsyncFeatureMapExecutorResults -import com.twitter.product_mixer.core.service.candidate_pipeline_executor.CandidatePipelineExecutor -import com.twitter.product_mixer.core.service.candidate_pipeline_executor.CandidatePipelineExecutorResult -import com.twitter.product_mixer.core.service.domain_marshaller_executor.DomainMarshallerExecutor -import com.twitter.product_mixer.core.service.gate_executor.GateExecutor -import com.twitter.product_mixer.core.service.gate_executor.GateExecutorResult -import com.twitter.product_mixer.core.service.gate_executor.StoppedGateException -import com.twitter.product_mixer.core.service.pipeline_result_side_effect_executor.PipelineResultSideEffectExecutor -import com.twitter.product_mixer.core.service.quality_factor_executor.QualityFactorExecutorResult -import com.twitter.product_mixer.core.service.query_feature_hydrator_executor.QueryFeatureHydratorExecutor -import com.twitter.product_mixer.core.service.selector_executor.SelectorExecutor -import com.twitter.product_mixer.core.service.selector_executor.SelectorExecutorResult -import com.twitter.product_mixer.core.service.transport_marshaller_executor.TransportMarshallerExecutor -import com.twitter.stitch.Arrow -import com.twitter.util.logging.Logging - -/** - * MixerPipelineBuilder builds [[MixerPipeline]]s from [[MixerPipelineConfig]]s. - * - * You should inject a [[MixerPipelineBuilderFactory]] and call `.get` to build these. - * - * @see [[MixerPipelineConfig]] for the description of the type parameters - */ -class MixerPipelineBuilder[Query <: PipelineQuery, DomainResultType <: HasMarshalling, Result]( - candidatePipelineExecutor: CandidatePipelineExecutor, - gateExecutor: GateExecutor, - selectorExecutor: SelectorExecutor, - queryFeatureHydratorExecutor: QueryFeatureHydratorExecutor, - asyncFeatureMapExecutor: AsyncFeatureMapExecutor, - domainMarshallerExecutor: DomainMarshallerExecutor, - transportMarshallerExecutor: TransportMarshallerExecutor, - pipelineResultSideEffectExecutor: PipelineResultSideEffectExecutor, - candidatePipelineBuilderFactory: CandidatePipelineBuilderFactory, - override val statsReceiver: StatsReceiver) - extends PipelineBuilder[Query] - with Logging { - - override type UnderlyingResultType = Result - override type PipelineResultType = MixerPipelineResult[Result] - - def qualityFactorStep( - qualityFactorStatus: QualityFactorStatus - ): Step[Query, QualityFactorExecutorResult] = - new Step[Query, QualityFactorExecutorResult] { - override def identifier: PipelineStepIdentifier = MixerPipelineConfig.qualityFactorStep - - override def executorArrow: Arrow[Query, QualityFactorExecutorResult] = - Arrow - .map[Query, QualityFactorExecutorResult] { _ => - QualityFactorExecutorResult( - pipelineQualityFactors = - qualityFactorStatus.qualityFactorByPipeline.mapValues(_.currentValue) - ) - } - - override def inputAdaptor( - query: Query, - previousResult: MixerPipelineResult[Result] - ): Query = query - - override def resultUpdater( - previousPipelineResult: MixerPipelineResult[Result], - executorResult: QualityFactorExecutorResult - ): MixerPipelineResult[Result] = - previousPipelineResult.copy(qualityFactorResult = Some(executorResult)) - - override def queryUpdater( - query: Query, - executorResult: QualityFactorExecutorResult - ): Query = { - query match { - case queryWithQualityFactor: HasQualityFactorStatus => - queryWithQualityFactor - .withQualityFactorStatus( - queryWithQualityFactor.qualityFactorStatus.getOrElse(QualityFactorStatus.empty) ++ - qualityFactorStatus - ).asInstanceOf[Query] - case _ => - query - } - } - } - - def gatesStep( - gates: Seq[Gate[Query]], - context: Executor.Context - ): Step[Query, GateExecutorResult] = new Step[Query, GateExecutorResult] { - override def identifier: PipelineStepIdentifier = MixerPipelineConfig.gatesStep - - override def executorArrow: Arrow[Query, GateExecutorResult] = - gateExecutor.arrow(gates, context) - - override def inputAdaptor(query: Query, previousResult: MixerPipelineResult[Result]): Query = - query - - override def resultUpdater( - previousPipelineResult: MixerPipelineResult[Result], - executorResult: GateExecutorResult - ): MixerPipelineResult[Result] = - previousPipelineResult.copy(gateResult = Some(executorResult)) - } - - def fetchQueryFeaturesStep( - queryFeatureHydrators: Seq[QueryFeatureHydrator[Query]], - stepIdentifier: PipelineStepIdentifier, - updater: ResultUpdater[MixerPipelineResult[Result], QueryFeatureHydratorExecutor.Result], - context: Executor.Context - ): Step[Query, QueryFeatureHydratorExecutor.Result] = - new Step[Query, QueryFeatureHydratorExecutor.Result] { - override def identifier: PipelineStepIdentifier = stepIdentifier - - override def executorArrow: Arrow[Query, QueryFeatureHydratorExecutor.Result] = - queryFeatureHydratorExecutor.arrow( - queryFeatureHydrators, - MixerPipelineConfig.stepsAsyncFeatureHydrationCanBeCompletedBy, - context) - - override def inputAdaptor( - query: Query, - previousResult: MixerPipelineResult[Result] - ): Query = query - - override def resultUpdater( - previousPipelineResult: MixerPipelineResult[Result], - executorResult: QueryFeatureHydratorExecutor.Result - ): MixerPipelineResult[Result] = - updater(previousPipelineResult, executorResult) - - override def queryUpdater( - query: Query, - executorResult: QueryFeatureHydratorExecutor.Result - ): Query = - query - .withFeatureMap( - query.features - .getOrElse(FeatureMap.empty) ++ executorResult.featureMap).asInstanceOf[Query] - } - - def asyncFeaturesStep( - stepToHydrateFor: PipelineStepIdentifier, - context: Executor.Context - ): Step[AsyncFeatureMap, AsyncFeatureMapExecutorResults] = - new Step[AsyncFeatureMap, AsyncFeatureMapExecutorResults] { - override def identifier: PipelineStepIdentifier = - MixerPipelineConfig.asyncFeaturesStep(stepToHydrateFor) - - override def executorArrow: Arrow[AsyncFeatureMap, AsyncFeatureMapExecutorResults] = - asyncFeatureMapExecutor.arrow( - stepToHydrateFor, - identifier, - context - ) - - override def inputAdaptor( - query: Query, - previousResult: MixerPipelineResult[Result] - ): AsyncFeatureMap = - previousResult.mergedAsyncQueryFeatures - .getOrElse( - throw InvalidStepStateException(identifier, "MergedAsyncQueryFeatures") - ) - - override def resultUpdater( - previousPipelineResult: MixerPipelineResult[Result], - executorResult: AsyncFeatureMapExecutorResults - ): MixerPipelineResult[Result] = previousPipelineResult.copy( - asyncFeatureHydrationResults = previousPipelineResult.asyncFeatureHydrationResults match { - case Some(existingResults) => Some(existingResults ++ executorResult) - case None => Some(executorResult) - }) - - override def queryUpdater( - query: Query, - executorResult: AsyncFeatureMapExecutorResults - ): Query = - if (executorResult.featureMapsByStep - .getOrElse(stepToHydrateFor, FeatureMap.empty).isEmpty) { - query - } else { - query - .withFeatureMap( - query.features - .getOrElse(FeatureMap.empty) ++ executorResult.featureMapsByStep( - stepToHydrateFor)).asInstanceOf[Query] - } - } - - def candidatePipelinesStep( - candidatePipelines: Seq[CandidatePipeline[Query]], - defaultFailOpenPolicy: FailOpenPolicy, - failOpenPolicies: Map[CandidatePipelineIdentifier, FailOpenPolicy], - qualityFactorObserverByPipeline: Map[ComponentIdentifier, QualityFactorObserver], - context: Executor.Context - ): Step[CandidatePipeline.Inputs[Query], CandidatePipelineExecutorResult] = - new Step[CandidatePipeline.Inputs[Query], CandidatePipelineExecutorResult] { - override def identifier: PipelineStepIdentifier = MixerPipelineConfig.candidatePipelinesStep - - override def executorArrow: Arrow[CandidatePipeline.Inputs[ - Query - ], CandidatePipelineExecutorResult] = - candidatePipelineExecutor - .arrow( - candidatePipelines, - defaultFailOpenPolicy, - failOpenPolicies, - qualityFactorObserverByPipeline, - context - ) - - override def inputAdaptor( - query: Query, - previousResult: MixerPipelineResult[Result] - ): CandidatePipeline.Inputs[Query] = CandidatePipeline.Inputs[Query](query, Seq.empty) - - override def resultUpdater( - previousPipelineResult: MixerPipelineResult[Result], - executorResult: CandidatePipelineExecutorResult - ): MixerPipelineResult[Result] = - previousPipelineResult.copy(candidatePipelineResults = Some(executorResult)) - - override def queryUpdater( - query: Query, - executorResult: CandidatePipelineExecutorResult - ): Query = { - val updatedFeatureMap = query.features - .getOrElse(FeatureMap.empty) ++ executorResult.queryFeatureMap - query - .withFeatureMap(updatedFeatureMap).asInstanceOf[Query] - } - } - - def dependentCandidatePipelinesStep( - candidatePipelines: Seq[CandidatePipeline[Query]], - defaultFailOpenPolicy: FailOpenPolicy, - failOpenPolicies: Map[CandidatePipelineIdentifier, FailOpenPolicy], - qualityFactorObserverByPipeline: Map[ComponentIdentifier, QualityFactorObserver], - context: Executor.Context - ): Step[CandidatePipeline.Inputs[Query], CandidatePipelineExecutorResult] = - new Step[CandidatePipeline.Inputs[Query], CandidatePipelineExecutorResult] { - override def identifier: PipelineStepIdentifier = - MixerPipelineConfig.dependentCandidatePipelinesStep - - override def executorArrow: Arrow[CandidatePipeline.Inputs[ - Query - ], CandidatePipelineExecutorResult] = - candidatePipelineExecutor - .arrow( - candidatePipelines, - defaultFailOpenPolicy, - failOpenPolicies, - qualityFactorObserverByPipeline, - context - ) - - override def inputAdaptor( - query: Query, - previousResult: MixerPipelineResult[Result] - ): CandidatePipeline.Inputs[Query] = { - val previousCandidates = previousResult.candidatePipelineResults - .getOrElse { - throw InvalidStepStateException(identifier, "Candidates") - }.candidatePipelineResults.flatMap(_.result.getOrElse(Seq.empty)) - CandidatePipeline.Inputs[Query](query, previousCandidates) - } - - override def resultUpdater( - previousPipelineResult: MixerPipelineResult[Result], - executorResult: CandidatePipelineExecutorResult - ): MixerPipelineResult[Result] = - previousPipelineResult.copy(dependentCandidatePipelineResults = Some(executorResult)) - - override def queryUpdater( - query: Query, - executorResult: CandidatePipelineExecutorResult - ): Query = { - val updatedFeatureMap = query.features - .getOrElse(FeatureMap.empty) ++ executorResult.queryFeatureMap - query - .withFeatureMap(updatedFeatureMap).asInstanceOf[Query] - } - } - - def resultSelectorsStep( - selectors: Seq[Selector[Query]], - context: Executor.Context - ): Step[SelectorExecutor.Inputs[Query], SelectorExecutorResult] = - new Step[SelectorExecutor.Inputs[Query], SelectorExecutorResult] { - override def identifier: PipelineStepIdentifier = MixerPipelineConfig.resultSelectorsStep - - override def executorArrow: Arrow[SelectorExecutor.Inputs[Query], SelectorExecutorResult] = - selectorExecutor.arrow(selectors, context) - - override def inputAdaptor( - query: Query, - previousResult: MixerPipelineResult[Result] - ): SelectorExecutor.Inputs[Query] = { - val candidates = previousResult.candidatePipelineResults - .getOrElse { - throw InvalidStepStateException(identifier, "Candidates") - }.candidatePipelineResults.flatMap(_.result.getOrElse(Seq.empty)) - - val dependentCandidates = - previousResult.dependentCandidatePipelineResults - .getOrElse { - throw InvalidStepStateException(identifier, "DependentCandidates") - }.candidatePipelineResults.flatMap(_.result.getOrElse(Seq.empty)) - - SelectorExecutor.Inputs( - query = query, - candidatesWithDetails = candidates ++ dependentCandidates - ) - } - - override def resultUpdater( - previousPipelineResult: MixerPipelineResult[Result], - executorResult: SelectorExecutorResult - ): MixerPipelineResult[Result] = - previousPipelineResult.copy(resultSelectorResults = Some(executorResult)) - } - - def domainMarshallingStep( - domainMarshaller: DomainMarshaller[Query, DomainResultType], - context: Executor.Context - ): Step[DomainMarshallerExecutor.Inputs[Query], DomainMarshallerExecutor.Result[ - DomainResultType - ]] = - new Step[DomainMarshallerExecutor.Inputs[Query], DomainMarshallerExecutor.Result[ - DomainResultType - ]] { - override def identifier: PipelineStepIdentifier = MixerPipelineConfig.domainMarshallerStep - - override def executorArrow: Arrow[ - DomainMarshallerExecutor.Inputs[Query], - DomainMarshallerExecutor.Result[DomainResultType] - ] = - domainMarshallerExecutor.arrow(domainMarshaller, context) - - override def inputAdaptor( - query: Query, - previousResult: MixerPipelineResult[Result] - ): DomainMarshallerExecutor.Inputs[Query] = { - val selectorResults = previousResult.resultSelectorResults.getOrElse { - throw InvalidStepStateException(identifier, "SelectorResults") - } - - DomainMarshallerExecutor.Inputs( - query = query, - candidatesWithDetails = selectorResults.selectedCandidates - ) - } - - override def resultUpdater( - previousPipelineResult: MixerPipelineResult[Result], - executorResult: DomainMarshallerExecutor.Result[DomainResultType] - ): MixerPipelineResult[Result] = previousPipelineResult.copy( - domainMarshallerResults = Some(executorResult) - ) - } - - def resultSideEffectsStep( - sideEffects: Seq[PipelineResultSideEffect[Query, DomainResultType]], - context: Executor.Context - ): Step[ - PipelineResultSideEffect.Inputs[Query, DomainResultType], - PipelineResultSideEffectExecutor.Result - ] = new Step[ - PipelineResultSideEffect.Inputs[Query, DomainResultType], - PipelineResultSideEffectExecutor.Result - ] { - override def identifier: PipelineStepIdentifier = MixerPipelineConfig.resultSideEffectsStep - - override def executorArrow: Arrow[ - PipelineResultSideEffect.Inputs[Query, DomainResultType], - PipelineResultSideEffectExecutor.Result - ] = pipelineResultSideEffectExecutor.arrow(sideEffects, context) - - override def inputAdaptor( - query: Query, - previousResult: MixerPipelineResult[Result] - ): PipelineResultSideEffect.Inputs[Query, DomainResultType] = { - - val selectorResults = previousResult.resultSelectorResults.getOrElse { - throw InvalidStepStateException(identifier, "SelectorResults") - } - - val domainMarshallerResults = previousResult.domainMarshallerResults.getOrElse { - throw InvalidStepStateException(identifier, "DomainMarshallerResults") - } - - PipelineResultSideEffect.Inputs[Query, DomainResultType]( - query = query, - selectedCandidates = selectorResults.selectedCandidates, - remainingCandidates = selectorResults.remainingCandidates, - droppedCandidates = selectorResults.droppedCandidates, - response = domainMarshallerResults.result.asInstanceOf[DomainResultType] - ) - } - - override def resultUpdater( - previousPipelineResult: MixerPipelineResult[Result], - executorResult: PipelineResultSideEffectExecutor.Result - ): MixerPipelineResult[Result] = - previousPipelineResult.copy(resultSideEffectResults = Some(executorResult)) - } - - def transportMarshallingStep( - transportMarshaller: TransportMarshaller[DomainResultType, Result], - context: Executor.Context - ): Step[ - TransportMarshallerExecutor.Inputs[DomainResultType], - TransportMarshallerExecutor.Result[Result] - ] = new Step[TransportMarshallerExecutor.Inputs[ - DomainResultType - ], TransportMarshallerExecutor.Result[Result]] { - override def identifier: PipelineStepIdentifier = MixerPipelineConfig.transportMarshallerStep - - override def executorArrow: Arrow[TransportMarshallerExecutor.Inputs[ - DomainResultType - ], TransportMarshallerExecutor.Result[Result]] = - transportMarshallerExecutor.arrow(transportMarshaller, context) - - override def inputAdaptor( - query: Query, - previousResult: MixerPipelineResult[Result] - ): TransportMarshallerExecutor.Inputs[DomainResultType] = { - val domainMarshallingResults = previousResult.domainMarshallerResults.getOrElse { - throw InvalidStepStateException(identifier, "DomainMarshallerResults") - } - - // Since the PipelineResult just uses HasMarshalling - val domainResult = domainMarshallingResults.result.asInstanceOf[DomainResultType] - - TransportMarshallerExecutor.Inputs(domainResult) - } - - override def resultUpdater( - previousPipelineResult: MixerPipelineResult[Result], - executorResult: TransportMarshallerExecutor.Result[Result] - ): MixerPipelineResult[Result] = previousPipelineResult.copy( - transportMarshallerResults = Some(executorResult), - result = Some(executorResult.result) - ) - } - - def build( - parentComponentIdentifierStack: ComponentIdentifierStack, - config: MixerPipelineConfig[Query, DomainResultType, Result] - ): MixerPipeline[Query, Result] = { - - val pipelineIdentifier = config.identifier - - val context = Executor.Context( - PipelineFailureClassifier( - config.failureClassifier.orElse(StoppedGateException.classifier(ProductDisabled))), - parentComponentIdentifierStack.push(pipelineIdentifier) - ) - - val qualityFactorStatus: QualityFactorStatus = - QualityFactorStatus.build(config.qualityFactorConfigs) - - val qualityFactorObserverByPipeline = - qualityFactorStatus.qualityFactorByPipeline.mapValues { qualityFactor => - qualityFactor.buildObserver() - } - - buildGaugesForQualityFactor(pipelineIdentifier, qualityFactorStatus, statsReceiver) - - val candidatePipelines: Seq[CandidatePipeline[Query]] = config.candidatePipelines.map { - pipelineConfig: CandidatePipelineConfig[Query, _, _, _] => - pipelineConfig.build(context.componentStack, candidatePipelineBuilderFactory) - } - - val dependentCandidatePipelines: Seq[CandidatePipeline[Query]] = - config.dependentCandidatePipelines.map { - pipelineConfig: DependentCandidatePipelineConfig[Query, _, _, _] => - pipelineConfig.build(context.componentStack, candidatePipelineBuilderFactory) - } - - val builtSteps = Seq( - qualityFactorStep(qualityFactorStatus), - gatesStep(config.gates, context), - fetchQueryFeaturesStep( - config.fetchQueryFeatures, - MixerPipelineConfig.fetchQueryFeaturesStep, - (previousPipelineResult, executorResult) => - previousPipelineResult.copy(queryFeatures = Some(executorResult)), - context - ), - fetchQueryFeaturesStep( - config.fetchQueryFeaturesPhase2, - MixerPipelineConfig.fetchQueryFeaturesPhase2Step, - (previousPipelineResult, executorResult) => - previousPipelineResult.copy( - queryFeaturesPhase2 = Some(executorResult), - mergedAsyncQueryFeatures = Some( - previousPipelineResult.queryFeatures - .getOrElse(throw InvalidStepStateException( - MixerPipelineConfig.fetchQueryFeaturesPhase2Step, - "QueryFeatures")) - .asyncFeatureMap ++ executorResult.asyncFeatureMap) - ), - context - ), - asyncFeaturesStep(MixerPipelineConfig.candidatePipelinesStep, context), - candidatePipelinesStep( - candidatePipelines, - config.defaultFailOpenPolicy, - config.failOpenPolicies, - qualityFactorObserverByPipeline, - context), - asyncFeaturesStep(MixerPipelineConfig.dependentCandidatePipelinesStep, context), - dependentCandidatePipelinesStep( - dependentCandidatePipelines, - config.defaultFailOpenPolicy, - config.failOpenPolicies, - qualityFactorObserverByPipeline, - context), - asyncFeaturesStep(MixerPipelineConfig.resultSelectorsStep, context), - resultSelectorsStep(config.resultSelectors, context), - domainMarshallingStep(config.domainMarshaller, context), - asyncFeaturesStep(MixerPipelineConfig.resultSideEffectsStep, context), - resultSideEffectsStep(config.resultSideEffects, context), - transportMarshallingStep(config.transportMarshaller, context) - ) - - val finalArrow = buildCombinedArrowFromSteps( - steps = builtSteps, - context = context, - initialEmptyResult = MixerPipelineResult.empty, - stepsInOrderFromConfig = MixerPipelineConfig.stepsInOrder - ) - - val configFromBuilder = config - new MixerPipeline[Query, Result] { - override private[core] val config: MixerPipelineConfig[Query, _, Result] = configFromBuilder - override val arrow: Arrow[Query, MixerPipelineResult[Result]] = finalArrow - override val identifier: MixerPipelineIdentifier = pipelineIdentifier - override val alerts: Seq[Alert] = config.alerts - override val children: Seq[Component] = - config.gates ++ - config.fetchQueryFeatures ++ - candidatePipelines ++ - dependentCandidatePipelines ++ - config.resultSideEffects ++ - Seq(config.domainMarshaller, config.transportMarshaller) - } - } -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineBuilderFactory.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineBuilderFactory.docx new file mode 100644 index 0000000000000000000000000000000000000000..3787212e9cfa89ffb5680033dc212610068f23db GIT binary patch literal 37235 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineConfig.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineConfig.scala deleted file mode 100644 index 238533143..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineConfig.scala +++ /dev/null @@ -1,175 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.mixer - -import com.twitter.product_mixer.core.functional_component.common.alert.Alert -import com.twitter.product_mixer.core.functional_component.feature_hydrator.QueryFeatureHydrator -import com.twitter.product_mixer.core.functional_component.gate.Gate -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.functional_component.marshaller.TransportMarshaller -import com.twitter.product_mixer.core.model.common.identifier.CandidatePipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.ComponentIdentifierStack -import com.twitter.product_mixer.core.model.common.identifier.MixerPipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.PipelineStepIdentifier -import com.twitter.product_mixer.core.model.marshalling.HasMarshalling -import com.twitter.product_mixer.core.pipeline.FailOpenPolicy -import com.twitter.product_mixer.core.pipeline.PipelineConfig -import com.twitter.product_mixer.core.pipeline.PipelineConfigCompanion -import com.twitter.product_mixer.core.pipeline.PipelineQuery -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.pipeline_failure.ClosedGate -import com.twitter.product_mixer.core.pipeline.pipeline_failure.PipelineFailure -import com.twitter.product_mixer.core.quality_factor.QualityFactorConfig - -/** - * This is the configuration necessary to generate a Mixer Pipeline. Product code should create a - * MixerPipelineConfig, and then use a MixerPipelineBuilder to get the final MixerPipeline which can - * process requests. - * - * @tparam Query - The domain model for the query or request - * @tparam UnmarshalledResultType - The result type of the pipeline, but before marshalling to a wire protocol like URT - * @tparam Result - The final result that will be served to users - */ -trait MixerPipelineConfig[Query <: PipelineQuery, UnmarshalledResultType <: HasMarshalling, Result] - extends PipelineConfig { - - override val identifier: MixerPipelineIdentifier - - /** - * Mixer Pipeline Gates will be executed before any other step (including retrieval from candidate - * pipelines). They're executed sequentially, and any "Stop" result will prevent pipeline execution. - */ - def gates: Seq[Gate[Query]] = Seq.empty - - /** - * A mixer pipeline can fetch query-level features before candidate pipelines are executed. - */ - def fetchQueryFeatures: Seq[QueryFeatureHydrator[Query]] = Seq.empty - - /** - * For query-level features that are dependent on query-level features from [[fetchQueryFeatures]] - */ - def fetchQueryFeaturesPhase2: Seq[QueryFeatureHydrator[Query]] = Seq.empty - - /** - * Candidate pipelines retrieve candidates for possible inclusion in the result - */ - def candidatePipelines: Seq[CandidatePipelineConfig[Query, _, _, _]] - - /** - * Dependent candidate pipelines to retrieve candidates that depend on the result of [[candidatePipelines]] - * [[DependentCandidatePipelineConfig]] have access to the list of previously retrieved & decorated - * candidates for use in constructing the query object. - */ - def dependentCandidatePipelines: Seq[DependentCandidatePipelineConfig[Query, _, _, _]] = Seq.empty - - /** - * [[defaultFailOpenPolicy]] is the [[FailOpenPolicy]] that will be applied to any candidate - * pipeline that isn't in the [[failOpenPolicies]] map. By default Candidate Pipelines will fail - * open for Closed Gates only. - */ - def defaultFailOpenPolicy: FailOpenPolicy = FailOpenPolicy(Set(ClosedGate)) - - /** - * [[failOpenPolicies]] associates [[FailOpenPolicy]]s to specific candidate pipelines using - * [[CandidatePipelineIdentifier]]. - * - * @note these [[FailOpenPolicy]]s override the [[defaultFailOpenPolicy]] for a mapped - * Candidate Pipeline. - */ - def failOpenPolicies: Map[CandidatePipelineIdentifier, FailOpenPolicy] = Map.empty - - /** - ** [[qualityFactorConfigs]] associates [[QualityFactorConfig]]s to specific candidate pipelines - * using [[CandidatePipelineIdentifier]]. - */ - def qualityFactorConfigs: Map[CandidatePipelineIdentifier, QualityFactorConfig] = - Map.empty - - /** - * Selectors are executed in sequential order to combine the candidates into a result - */ - def resultSelectors: Seq[Selector[Query]] - - /** - * Mixer result side effects that are executed after selection and domain marshalling - */ - def resultSideEffects: Seq[PipelineResultSideEffect[Query, UnmarshalledResultType]] = Seq() - - /** - * Domain marshaller transforms the selections into the model expected by the marshaller - */ - def domainMarshaller: DomainMarshaller[Query, UnmarshalledResultType] - - /** - * Transport marshaller transforms the model into our line-level API like URT or JSON - */ - def transportMarshaller: TransportMarshaller[UnmarshalledResultType, Result] - - /** - * A pipeline can define a partial function to rescue failures here. They will be treated as failures - * from a monitoring standpoint, and cancellation exceptions will always be propagated (they cannot be caught here). - */ - def failureClassifier: PartialFunction[Throwable, PipelineFailure] = PartialFunction.empty - - /** - * Alert can be used to indicate the pipeline's service level objectives. Alerts and - * dashboards will be automatically created based on this information. - */ - val alerts: Seq[Alert] = Seq.empty - - /** - * This method is used by the product mixer framework to build the pipeline. - */ - private[core] final def build( - parentComponentIdentifierStack: ComponentIdentifierStack, - builder: MixerPipelineBuilderFactory - ): MixerPipeline[Query, Result] = - builder.get.build(parentComponentIdentifierStack, this) -} - -object MixerPipelineConfig extends PipelineConfigCompanion { - val qualityFactorStep: PipelineStepIdentifier = PipelineStepIdentifier("QualityFactor") - val gatesStep: PipelineStepIdentifier = PipelineStepIdentifier("Gates") - val fetchQueryFeaturesStep: PipelineStepIdentifier = PipelineStepIdentifier("FetchQueryFeatures") - val fetchQueryFeaturesPhase2Step: PipelineStepIdentifier = - PipelineStepIdentifier("FetchQueryFeaturesPhase2") - val candidatePipelinesStep: PipelineStepIdentifier = PipelineStepIdentifier("CandidatePipelines") - val dependentCandidatePipelinesStep: PipelineStepIdentifier = - PipelineStepIdentifier("DependentCandidatePipelines") - val resultSelectorsStep: PipelineStepIdentifier = PipelineStepIdentifier("ResultSelectors") - val domainMarshallerStep: PipelineStepIdentifier = PipelineStepIdentifier("DomainMarshaller") - val resultSideEffectsStep: PipelineStepIdentifier = PipelineStepIdentifier("ResultSideEffects") - val transportMarshallerStep: PipelineStepIdentifier = PipelineStepIdentifier( - "TransportMarshaller") - - /** All the Steps which are executed by a [[MixerPipeline]] in the order in which they are run */ - override val stepsInOrder: Seq[PipelineStepIdentifier] = Seq( - qualityFactorStep, - gatesStep, - fetchQueryFeaturesStep, - fetchQueryFeaturesPhase2Step, - asyncFeaturesStep(candidatePipelinesStep), - candidatePipelinesStep, - asyncFeaturesStep(dependentCandidatePipelinesStep), - dependentCandidatePipelinesStep, - asyncFeaturesStep(resultSelectorsStep), - resultSelectorsStep, - domainMarshallerStep, - asyncFeaturesStep(resultSideEffectsStep), - resultSideEffectsStep, - transportMarshallerStep - ) - - /** - * All the Steps which an [[com.twitter.product_mixer.core.functional_component.feature_hydrator.AsyncHydrator AsyncHydrator]] - * can be configured to [[com.twitter.product_mixer.core.functional_component.feature_hydrator.AsyncHydrator.hydrateBefore hydrateBefore]] - */ - override val stepsAsyncFeatureHydrationCanBeCompletedBy: Set[PipelineStepIdentifier] = Set( - candidatePipelinesStep, - dependentCandidatePipelinesStep, - resultSelectorsStep, - resultSideEffectsStep - ) -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineResult.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineResult.docx new file mode 100644 index 0000000000000000000000000000000000000000..f18e7dfb4a143cf0f391490c3c656d5e758233a3 GIT binary patch literal 37632 zcmagFWmsIvwm*!!dvJGmcL)S`m!Lr#2@Z`1cMIX+DXjD%EVE@_N{Fa>!!u{IxvhQwyFwsW>v(1(_Y9*#VfE zmJIKAQ{3RJJ2id$Mi{|o;yJnjN!kx!(KMAYniwR5!EmZVqtKz%`O`eP?Gz5`sz<{# zI}D%pMwMM(#(mw$A0+&wvR)RMsWmfg(h|`+&FnU&#c>2vR~mV(rn`<|9lU!2unD5BnK^{a(t5KO$T?ooWcbvs zs}rs6V|5fLgYS7Kfs%3D9Y9A@PiBw^lg8d2Q|TRa*LQbER~SPn{ID2mcsDzvU^lMe zH;np)OGBhqwM{H0d4z+H=gsj*g52jOCrEFJPg2pRUD8O1)?c*W>;3}eY5ybiGTuFs zf7PALb4Ssh%Su3=sXSvco!(0lQ2}~a+{Y)cN5tatcap+A&kMzCdm^KEK=F{^D78#0c1GP+a<^pmTdbBs_E*jd5R^gK2 z+x^Mh)whFmY||ocC{RSrsqeTgG)aXS)-eb4=;}|W#j3<5jp*%UP)dSI6VR^_KhtWt z_%O`?U;xtcO(AnP|u8=e2AQES_%JdB4v@Nim`2Icedt9;o8$Fh%@} zwKnBUw=rhX2X16qkNfPO1q%IwsAdJa&8I;HLI)Md3}CA41aNR>F$Fl8|GvpH


H zSka{JyrpIpG{dgY;G|^f!H>c}$YA*|w%&4bDcFu>aZhaQ6xiwJFt`$L2n=002(R%p zHba^Q#|M*y#GUz@g(K=BHJadFOmnIy|>Q7y_n6jwu6So)$V8c+L;0-1CVi|(htKXF(BMSMMaX>$=V zSO$7YE_hgS|3~>rL#Ua>a`-@}En6s8{3>0g?Zb6FHvE+)ZJ2`Glxk4J0BQ=L0p(MY{ojxh4 z5DmzMTh()22lN-#4$aPPuQEAP`H6fsYvHKDd}$ivrAhe+%vj4s8FCY{41v!~yt}@z zVoOhy#VQudfRgV|ql3dAZBZYyUtvXSe`0_#_#AEpE2e@MA22UAEwP4Q6Q9vMJ4*f` z4yu)H8|d>8ip}?h6dF0Ox7VO0t*hkU92RPIqSCB*f9=jKQ!ISCm>8sg&%2h^BHxfShFs5Gtu zDFK^t$NBgtC~HKo&o^~uKhbk6?euU3XDCFEi5VR(XOQmu5q5D+3pPc8-*2QH$}>-C zSHN(?8;&p>0gl*DO7sj(Vouo%tCw)pZ;(~@HThzi{zg-hIv3>J`!k6 z8mIm957rIfWX1yet97vhEl$7hj1yfwwH010;D%A|h+Gb&B82Vo1m{oIhVQ~Pg@sT3 ztnbL^YQve}Wff)IZoAIn%muU{s2qDCS+p1Om9nEJrFLIJo_NI}i;z?D4D6t8=uHA- zMy0w8UJizSzP8b`;~<7p&}p~vn-o3fUJX5cjQ9}WFRu-S5oCpoZKWk{qfxHOL21Uu zEjAvOEPZP$YNnsiK}=J@otQR{aunsMtE!7(fyC$*FaVbRftop4DFMec9vAiK#!dMk zFP1GvhMqd7p2j7TN!^9S;&4UsBv3w>scQ?pnS!QVC-hwdLl{n_{2ifHW@nm~R9tM=De2y7j+k_dtis9?KcYL;=V}p&}`Y${1rU}kXAx3>PR0TXbKG3dg%HHU~ksHkeW2}L9 zgbKP1oLbC?DNmPB%{Y|Oyq}cESYiSjMqDG_j}vGioGz^fpu~Ul1Z)0YF2^&I!b~fl zvc?gwU24g7pf-Ox!jT^GfmC%1OK+a(6Jt%*t`A@C%qJey~k8#sn#b6=aG~MN`v5Pjn4KlwV%%{C?)TqrFpFKbAIkoRkK0DK;0X z=mfQ83vI5aq4k~dAiBf;U^4ttHr%dOC_7@+0x4A#Y$Ixk7`TZv-=f6sN$iqDA6hYf z9;pV-JgEbZSEvp~VrYF6${zKi=s3Yg)9(Rl-$qL|=l}$V_CF9FZ*&jKot}-DYGW6? zs7#!y05GHNZw%NyYeB7CnBIc6L4gYS-{8dDPz;fpzWx->x6*#JBlF-uw<$Fqw(UCFzL)P_&$wAH!r3XE7sWSC<0j)C=>&V1kMj7I) z69dKVKGW?$?3{+v=n9u+keKgVqqNoHt2!3f*6~F2zU>U2 z(4jYrqYMyVuLs;osj?k7=*x}+7?W*0>Up@A4B9AM~+s;D|6Ah&|ndDgsMorhxF5YXp_q~G1gyTd2^ znD5KC$WMJGmcC)}6+5djup%TRoLd`48};oBbecfr9kM54z-}PnS}*E#7irj`7j0xG zUZ9vyKSX|4g!H{#NM_)!paF9ZXfk8nL>PxI+4cb5!e+&hw2K76LPJ3K6S^5nnV9?d zomf^>!=dk{8o?V%?Ul$smkxVB0t|N0o?;BNryvCFDgIbG{@fA&eF6D%cbq7u6v&GA zl1amGSo3!S|bcGeX}NSVIJhhB-osqCNj-1^p-tBPh+g49Gr?dtJ^`3vl@F%6Q!*O0N(cCv)mE&E$p00-CdkFl&^3PgFmE#CRuz-OX zYCwab{;Sr`pFM2No&Q**4Ga>trR#jUy7Kako_FnHgTRI+?ZM(*2|s#uWYwN=C~(aD z`u-jFQ_P8xFBO?6iH53%=7+NQI)UCS9A&yat;_^<^Ou)w-*($Gpb<%Q`pfAWPhS^u zXRF?s=2P*+=~Wv5_=4vx@UVaCu6vr5yz*lIa+)r(Fa&sghS~!a?7HK}-F}QzN zyJ$<9YkNAF`FYb860&pT@lq%FYWMbSJ(vZ!Ok$W^d_L885R$UDHMVlxT>dh4eA(c! zYRgkBLQ>Jw-J$e_FEq05?b@nd*XwC+Wz5qpT;$C`8_IrDN~9@bQb{$DEXjqZ*M@k<3>dVR@(b7s^{hA%XWsEGthSQEnT) z>nEsVLnn`GKD^&wM8qeAPPEoR9~|tw_@#Y`fx?u&)V>36h_`Js7pKQ=V>{OM4|pGt zVcnO4OgpkqqSK$wlWs2E(};M+t|Nd>Or9@%o)lLJZ6z^_sy-ZEJyWN-b|4_zib)njwi z$@R~lbwhyYX;k>1+u%FS*YVp@M1UR<>TTWvCzxc_VX@aWsL+KWrx^TGA@!&s)m0)d zHAX%ZkKcxLFYF;Y3>KQ$8K)VJ2ons*ZY-y zSDphzzS4_RS_84?~uGyeo251lr)gQtFX4HXsn-odev@Mc*Gzi4XprIZH5tSMM=(l~wmwxMa zZwB|{GK;Xn_KGVm<`DSwMc*h-HeT8V8AV8vtEb$iS9N1m*?U8phY}VmQReJ#`hM1I z_*7w;>R6jRrz{-oIXYM16qG#1pr5xsEquIEr?c))wY(2}Yd5HxpL#l(d33mQd>N9x zy%IS&6V6bPZZw#iJ@4DUy83zA=bXXG5Zp>ws1^0rx9?s?oN+~~5s0|-eea&i_nc%w zDZM!*!W!y(s0~ASO_>z0D0&>YB=N@r_Rj8?w(biGf{4{OZF6t`r|gnQfL07krd4}v zb9nHAHoq(G)5+`kPdkPT;=v#2-q>Wfa6iPniHvAvBMT{b6NJw!$~A^pC7;#FVm`>I z$dq8HCUTSqG45e8kjXJEe1MBr{MJ?ByFtiuuQ}R2gf(B$&X%4Ju3~$U-TYFD|5Z1f z@%3rVszadatiNC>yoQZqLv~TyZaV?3fE)4yoN77(6;#iGq$Al;LVgfqqmHV0?DA(i zGC0e1tZpN?t0F(FAP+TBgynWRQbfD;ip+c&I8_P;i~xuDWH)oimz(Kr(%X; z@jx8zm0gGU7xoEfJSdeE6i4?*sxAmE7=-(e)IX`9N@>ol$=v^o;7o-AG=lJlisW`^ zv)un7@jp_0%wVaN!PYcOv5aGN!>ZpPGU_LpR)&WUmagvlKHlz?hgo3{wXwxu_Y}{?wuRH zt(ba?cFu&7+OzwPZA(LAwy%tlLd<%}&u0T`Pd6^D2KED9V$XdG%f6fUj9qjFo3i6-espK-^v^EuU`) z%+J{Iw6UZdAH?BIjqRH9AnLEPDYz1wbp+<(ZxAW&hgrvWm=^Etusyu(`KXK{oUuJ$ zx%hg!owX!Tq86?@ht|yBFsZE&QI39#)LKlyX|t}Qm}q_NS&JJ~xusX{b4prWKRR(= z?&^4`b<@&+%nE&~y^>X9}|XB<%Gw9yVf0awqe?8Il-Ultr^kW_2FhW=8YJ3)$ii zsG#R3oPw|S@Z-qNr@+Ag!mb7u#_2Lbtk!Re2GYO2~N+xENj~NV0mIizJ5)>I@@YH>+L(Wz046R67PU!k0``_ZD zetu}mtuk}zOTx=TDir)p7?z4vELj&mpGT;fj28ZD$9;WF7vMt%W#iKNTg7Rd!v>9fu z;wUr4Hn;sC@n2U*S?xlTT5L5gf~xOoh*7|tr;eY0#`Zv8=;aqpji?rOkrR5mWfkNB zbW9twlc@7X$L@pqCW%AGo#HACg3LFPSIqY3U=l1>t$9&s0s@%x1e#kCx;3bpF?9P4 zP_%Gc6;Kv<*!Y!W7+0U2oH>g)%BhppCC`1dry5Ms2A0B(mYcZ%>&J+AKabe8tp)>f z_F|PX-fEX{y4;lvXDP%=ypJ^;lDA6yxCmk9(ey`Y(-7G;cON3GrH3DhHWaSq5%Bd= ziQdo)J6*QN2)GtXs_C(@D$ND_a@PCzVoKc6nFdJIm0s#lg*HT9-Ze{1iU6*ATUDIq z@{0^^*$GE4N0)3571}T3yT6Yz>Z`^48pm`<%EMpQYScOmEk-LzjX0jQk5TVXjk;5_!xwAXsn-dqdA6 z7$F_$w_|s}*{6&e=5>NEePdb#t8S4jMj_|xAD1ADw}~(ZnRmwpY%SFtixqj>s2?t# zXR(b~Bs;{`QPMd|74cE^t0*O}5x&>pY$iF}RWR(n&;YRu=iRPU=#H{(E4k-JP};Ai znLP?Kt2GNr;;Kis<3>$pA#?bVYcq|hwbI;*D)lDA1e}!lE$P0C zi_X*zY2|@qOHZn#qAOEjmQkxv*4xVPzPKzy^oL4b@w)92M9m6co8*F%Rn?VNnI`8p z4->p%>^lXB7Pgl4sRcsCg|`{xOU}#CUe+yJ z5el(5BOZ4i`A9s-on0ThyoC>}bxl zJZx=N3f;bUxe+1PciE2cV`5x~f7t$g3Mtu50}CBDNotW}m?%#~x@sQ7bSjioret;h z5H_nuyuEji$D_*L9X%cs@-DyWIOvnk&DOKQ=hb)l5Oyf4pRSrfuV2%_A1i1l&3zw# zI6_`;O)xj~KXxn+`3Cwt=jH$tRuZuw>4eQ``D%k|v8Y_~FgP<-KRicbDu#@uG51vS zu;6m6XpvOy6y$SQ(0BdnnoMacMosUkdVFWN!vTEHEBHo)hc3LuYctT?vQ4l-1;fS0 zYG3sD;PCRjcw);PAGQuX?AC64E57xJ*I?$RljWuCkgZSsFXW$Y)2Ly)b#i0i3g@UvERYDp3!TBCz)@ z@ez%xbA7U_F;A`A42dt#sh_WAEC?_=4)3gQNISn~QsvtmEJqOOo6D9Syu6-koy|c8 zTWn0mJ1Nphwh?|G6h4=9u7EjYv!K?+ykAC&|0Xr+7qr-rz5?A2Zs&>{D^(K3C^tNT z_i1~{aPx`pQ+zhZQ{-k1P7Z#G9;@zBvQt@d+-bQJ}#f%Yp4o5-PpmXE^mh5M{=S(J5f@F z`d+31^{YC)g@0}I%8%qwrGBQ%XmR3J03@X-Y+3k~6~CMTMW;lyWoo$MOK5GDZ3T=-e!d`d{Bxlhg)kmS+=AJ;UnFQbuJFBM4PgY zCZu0x*dW&=QJ0Buw0Dyxn{Viz|Bm{|U>vsU_!|4>!)?U(wk4$D3v|13H|9|xpCoEZ z8SYK|Nvv&gfTu@C)Q=L}^~F%-YHMGNj&uV5_AFg$7xbI`iZr{2Y0FtTa2BldAWtil z>Au1vsSYy%%9YX_Lqnw!&ZA(SAoAJrCn5Q6989qbY7te;dFvS(^-LCzk)Cv$ z!4O%>EE8m&E$SU5DYhYI0#>t6)qVS6fv!6#Iiz=Wy{V$iT(s!#I2Nu@U1m3w-&2t? z!_uPm0Nwbd0|~X#Cx&DS&rXe!-_}Uhr^K%$^D87G*#zv9f8xIE>RvxOUrX=PXbq_y zU3yk9g1-= zV|fZ85`i89A%@{y;Vg4@I5G8mo@TfbIrnl6p`%}tic+HdUjDsg0wRaHlKJGM&_)S8 zqBN18KvV&dB<@W^r&*~TWmf31|K@?B{1=bnjw~+tR`G>0dX2I3(I5*eeF+>b$Wr2u zpJM9QtbE^Er9=&S^(v244tf~Xq0|{6j_^>iP}HGj&tIR|-dW*zFXMoZxW+dn&<(eA zo<&trSfWPD8_hMq$#hQB&&@0z95Fz|Pg!j{yI_HPgkTndT=l`1!fDs=5h+sshwWqd zf3fko{C~314!isFT+l4U)gOE+uC~^NqTKkDbY%6*`34(&^7p|vP*_A-t~0`!ObSw{f%)khn92#~nzjL&JGC7k!V~zCkAlj)%IL~{ zPiI4B1v=+edQg-rvdfA^q^1w`q$^=3+zyXrMN*=dQJSS$gTh*-N}`v1Lf%!;Q>W;=08jrHKM^{cc*DUvh3#P#aU!nUyt4TWym38JG zcs%?wATqu6e`y|TxSvQ>HaCEUBr8Q}iwGwMM!3s6rM=35`P}@BE9uRiYD4Tgz1j8l z)44OkSJ=(vZw*Mwr3ShP1((cBP)$H(RV0n)U3x;R&IH;QlN{35k@8o^*2l|-8ehbZ zvpyY&RJ6ndQSS{MDOynmwF2*HLaHb4s1OU%=pMNm;9^$wjP5k6I>?fHawIe~#DXB* z*+PM-;2E9sNK^n?E3S+2-ozRdr7sEbW**{Pe65VCq{#ups)JWc#yvt67&hB}GXC;J zXncMnkmNA^n!C{GMn4gZa))hc*pCCiT21}yVWsaA+OII zuBeVpQfUQs}@iB00_sHjYHxlA_r>G=vi@hk4AeBaR5N_dMOxVFQO= z+oo!a($yTWjb>~E`DgBoFhDTk+OOi=888V;8EP|*-;2;fvA+8!fbqp*(t?|aGD;hw z)qbt2!3!UEC9h{jixtoz_u7~Fn?{QAG+mXVggKT;p}fJ_oaWUR3m8ssqBOOtr7~n z_N&QI>rZdieKQGMI|P3jaF-{@VgH6V$WVVGQ&Of-ZFwziBqmqHb3tyouT%kNbI?=67ET?N5jy3>2N{vkw#Sy|n6D#kk96hFRireP(nQu2r$ zup>9tPqfJnvZGF=$p-(9ZXeMZS!c{!a&*H`7gDB?I5S9CP04mX|HggRNKPRT>AVY-1??B@=% z!&v#H`ypP(*4z-&WIJ7ZkfzfrW90iz5}qYf8P%k0M*RwDAa617o7R5DoRMu=GXo81 zFoD-{K{dYL%+7f1({=_ZY4Xn`-v61DG_l8Yvwzvo7v_v{@SEyu1+wkALI&p8eLr6m z$2-q* zsS{!ShZ62#(#g{7(c~0D9k0=Cvp+Zz?}F~q3i!tc$sk(G7+~?!R@J% zD|S-y&S}J{L?8CDKlcaI@Jv;~JB~dM^#O?nh_6%i~Dn;myHe)VNYrbn)!o!@gC1q=ii#3u|%lk|CET zA>uwA|5B3Qrm}vmYm#i~ZpUS5C{pA)F()|+aMBhQ;BZEu$ zpv{0-{o=LVT-8d~k39x_jNs^f{-LqKZOBr~k(t7M=#V$jFtUOxh~C*cbF;{aIqPNk zj9a&=lf4-36y^a`Ej5%2k!+X|ID-8QAynEXyo~5|4$U8B(`#oewM}x?r;R~d@p>UI zHLF|ery8gm%{gQE<~0kPds#c&us&>N`nIRuz4@Td|u;0{je^6t9sA1)P z@4m-d*XNOwjsKu_H5&s_3vmBQ{eucK0_FdpzUb_SZx72hTK8^!-(d`YR9V)8VLy|_ z$ms9(i%dJ9y@|5zSOhbI!aY~9cW$QCwx+*7)@=8Q5Zhb3SjUA{)b!p$ZZVJ8$l{!$^77Hh@ zX$FtCe;^zI8;+B|p~_4idV;Hgcy zDHPoGb(>qX7^lMg^PogAzg3#qDyG6rXc7G4r1}Jp;!HttS@gH|EzZgpVTH7rhDU5k zPGrfMQ7?0yqmH`JA{W0Rc+R%C?5E|U97qVEms2VWG=&7Nu8Z%bifPpE?j&b8^Q<76 zI5e)JW;lPAmgO@8_!VqA0GX$pm9Eg}3Xszcm+St?o@b(YRzx{g5EEUy2c1p);r^mZ zU0w|Mk~3x#0Kv~?2}QDlLerd4pVItJB4?W6XlTX4tPuEXY6(Ly#BUO@h^|McSR!ue*?SnnlbysagFDdry9ytKM32ri+Kk>fpB@|}9D>)P8QKei=VHr1pc@(h3l6$0O*os(-*d*Y z7be(`WXduSx;dB=x{6=GOxP_S*X%DBD+G~{${LKmKl5Dg--#*npl8)C6uN((>fu_UK7eglGEY0jNP zxP^G)uynhXU>ee%x}{ITnkp`~fr@uh1}feO9PF^aZ41;ti)WXu|5x#9I&3??PAn#{ z{-qG14{`69aBGZ!W}+L?+E|Syr_`Mm&a;#d144ry7J4&&lue9O(m`FeU**Kx#}79O z(5C(Yyyjh>TfR|`C81(raT5Yk&|QB(=t%FdypVm(OgQqK*9{&33Wv4R`uWu)Y8AUq zj;wG=kj~;&qJdbRve41SF;>CaGEBYdv4pi5f%|IL(kARC_0Oy z&_mC17YEXxC?><$TewPJU(6B^J+rr6xtU>9|$szxa0?jd9*h4Cqeb|G` zcews%z(mbs5mUF4@Mw_+I`&#Sr-&FzBGUL^d;{bMt z%vt*x`5=DfeNgd&9^jD>je!vP0bjGvTjIy7omR70yKwL^n|huZMc@{(73bA3t~kI} zF|LmD&_f@#Si9nI?`@5zqzC})3fAI(%OL*m%Y(fqbnwhm8F9N7`3fp%6&_)7OMRP zDGIbJiP{LBtCwyZrDMC(E1QlN&R$^=sozAMQ`N4O>66c+1m1c_$eo}X_&q@HlpZ^f z&jz!L_=|}l50!@mU*lF2W6vwsU;_WY%a z%Td`p{Jbn8Bl=hU9AHZgj*Hm4E?<1k?R;h|LbFsF=xkQ|JDlgCRcLDc#ja&-KfwiK z5WGvyF&j))P$f6L3sP)!;O(V`{ldL>E;Fke4%Ocu+e|27k`;oFZXVz-g#s+50LxT6 z{`pvDFF8Zh3Up!0)7YqFNZz5a~&|6xIl1FES_B&EPPE^QjM!ziaNKb{)@xqQN@K~LXm@F!#Z=qt$H=& zXvZ45>r!Ib_C{j4Wb-{;00NMR<-XAgD~;KG<2k1|fTXt|OTdAa08;&YX5mR8_0n_a zS^b=&aWfFe4P!v zm~~lv9x4pT9{g7`|JT~M=0BJW>d=mEqk!t0190is1a*`hS_I&6e+fDYL$CgjhkLrM zk(1hM$WFj8wTnCtBcQ$cu3v-?R+xmnQh!7&P=6u9oX#;c6*K*det<=6C97z$ zq=o?ko)T(_Uf$hxBkI&xF&A8(87)BQWA{8|l~^O^kp4QM)lt|eqz1Mv&;hIheDBNA z^t6HoM2T{j2E5qn$lbAo@MWiWGZ5Y`U=yl`ZE~0jO_8)cf^^mCSGPF}J1O2e3{vx& z3adHbikx&^+>g^Z=2i5fC~*mqHM(3Ln%7XU?i<)p&yWTt;Ta|&u5eHECU4ILbFbq< z9pTtM6j;v%&ZL?H=#76rvbe*lyVo^rG*98UVYj2cIequVwtqY{FN&~y{HA;MX3O~l zJJb+-v>SS~K&L>%qQb46rXmfmVZGSzcl}b)j%2*+*#8aSsPr4)DC`dahdZ}`9jKu; zxS^A7;^@TzZB>NPWKZzL-=jFBiamwU|RCy^1$^t?wm}M@UADadw~x*CY6E>MO4Nk zIuNc>r~XNQ!1)(_v8kotCN#+W{#Fa1Edso4e}MD9)9E0GcJ5!UaZm}V{UGqW+JSB! zkXR8$v9gHTg0M32iAmCwOt}t)r)RAl@gr)5+;Yi3IyPf0WR(XChtA#4`wqm*Qw2__N6__mvX4P>fQk-30Ru zPBD=A{5b>zf~xkC_Yu2YMbyBmIobhwp%oguJ+`2lOGcGce>FPUW4myDF&^(LJQCwV z96Lt|1S}>VPIoVqG!=0X2kI3BgYg-FidtH}B42)7mp6i~O%2wOO@ldE&EEb)i+)u~ z6qm8_wkf|3WK`S)O++w@Q}u~+-I6=8d*^v221A0S`M_Y2peD>2;6ueYlqNN3y-XU( zQ*KZROR^dt4G24XXlHI27+0)_)YgI3UUIi(V!Xx2vv`vTiSdvR(Qq=RsuthfN zux-9xj8c4SM5~Ac~MjItm75uIFz=N`nuo)4~`2xCQI`pq@qQP zuS3S0nf_rtq#StQ&&*TCP&wE^J;UVOAeTLd?0U{!BYdUpRs#R{Uri~LQ+8Zlt9Sv$pJ3bM)m)q|D9)7E78o5rJ|Y*rGsfW(#d zyLK_oT6Qzd$4MaLC@*iu4 zC56@09ZFIQV@DVT|EM0Dw9hlj6wWEVDB5UL6f7L#(W%U7E(J{4-hS>~{n4g98=2(H zlPD$_Y;ds9rXo41zo#|yjXEd@I!;FtJ#;Wf;^x3MeSq{4dt9CSwTGJ>@oO*1G(qE- zJytk;83A7Llv9u!3w7*w)Y$Ld?{x#;?@<=kNIFeq#|dNg&?5>nr88?*rETP=(V{W)rNI7Yzf!~mdCu|)aD z5fd`@rq4PY{WT;#=SEvOK$$EO&zHRRtlqUGwk;P)oz_-?x zbO1t{C^XACbw;KWNCdq)o(H(42=tZaaS#Gkl<*H_@b$gG9C4N$al}l5M;L4f8(Y-H z;zU-h;RO_ICm!|Au)rJ$F=&IF0PHxIE&aJ8-Qd(S*rxl+d3fv(uGz)85Z=dpV!?)@ z!8lErcgXaMll|$n$3^2fH2+qCi2A3B;O;9T#c~zRDr=X@fCD8yWc}3Ua1`uUmqoz~ zGVy16tapn+NTX>#W*3C^$XLqKVfs=CNR z&hz(YN4#dC*eCXAvX;Hn4zEf+MUhYk9%_Am1M9&0-VL@LC7vsKV=;VaaFk94Pk_c< zf=N(fhii>WG!A+^P1&o?=y)r?ao7Z**}7rLOA*#1;^q2>NJ+rgUkFm}^cpTwD}p|w zN);&A;j%|zZF-Tx)1j%BVA7SG;8>&5-RD1;3FCC0DUt?1X6sNCu!6oDx9B6^pV!Eb z6Nf~NaI^i)N-(vESfK*~QvC}E`!|r@zk%$21I_x5cK~H_UoGe1=pxrj%_9VDaby2L z5G)5hTO3(zG3h|>{m4~mm*7*S5zaGXgRtP}X2Y=(ZxI?pu#Q9&bwvvP@PQ@m&p}l0 zme1;?j~9i7@2=fW0cj&bWH1%DiXA6DB0bEh>IVp-ED)8+RV>J9(kKxE<)IfplKttx z7?ox+@ud;ZnIn8!22_awy<+93untdR=890P54U1PaS+}llw{E22rlH%jhW&npuCv1 z8IXgwaeOl94Od)tBIZbG1Y|+RZT}RPZ1U0r{}i4Ahlhm=k~h?Up4&I}2$=ed0?tIwaLEG*1TKmU1z-^U;&U%Kw(=>fa(Xh10|8H{XX%x4ko#?yRRu1POl+gQE-&c2!&L^MNwMy>e zyA7l_?)!cFR^Xyw)qM7b@70;n4uEE3_2f34t?eay zYHZEm^6BQZt-2cZ>@52hbhLlHV?{`i$q1*dtD}OrDSd5!<`saNp5m6Sl&y(6=4QmR zGUPUC%**@SwQ#ckv2}%Na6jVaEMo1Yv^53U$c7~%nARZjr{^Ym@$a9i1PcIr#NIkmd+JmFcIk55oK zkftZ$y{a)X3dvf|30WCf*!8VKzFd9Xxp>bqH6&1N@5sA}7uOIr#^P>I2DtL3(K+`? zI!?1a0BRnubOCq()eG~Q)|D?UuTEABIxv#U{81{m)2`M$S6fyWY4SNKA!oqn_H|oa zlI#S551!A=p#OOEeOp*Fs1p>jC+^)V9$2{orV#THuDsR>5eX3UlL)@KJPWK>+_kk; zZ!o!{md{m>yiiqkRbWVnjL)~t`8Zj$E}mGn&5?Vt^ApKUi4@|p`##jHSfap|56!)_ zW!$V8jc9bSWNmB+Oiq+OR9)|0nY=uBJGH*vZjjX7rSe^~u|2#3YhP~rel7Rjow2Vu zJW?#Eg!yY}Zgk*0+TVS1*Cw(zyRhn#pKmg|S1X??$Ksq^6nVR-ZvH%u19(z+Wj3sL zi{nWprb9Z~YP}mFzujuVrNU(td1>&tuk(JcQBrL0646#dd3_o(YAT=L)>+-yP%17C zBuQo|C((?F8M}FU+Ir}{nK^QNc*{yY_B~6ES=f0aAlZK_9SE6N@$~i1k%JXFBhD8g zPOko$m!V&0SkU+E{8)Z)P16=xD?tD#KV~9A#gZpMd3~#2+iJ}pl^0^d{aNM1Q_;vx z)v(V>fD0I+vL2$awv?QWR+^psT9OH`BA_C9g14h9V!Zi0sJKtmk2HzHozgs+_sTQW#oT~)VJW6L*oGPN05x2bJLI4c7O zC)+nanfIW1ijLAA&Tk#3+-4*K(qC&f>{V~|OvfDIY^7MLl_J)xwE$5jyg&t=^|g)W z@*!QX{P>s3!CscBh>*RReb7Orw}sIGxylG)4IlAMTexc7a8hWXC(b*iH(Cuaq*j}Nf-uz=nHc3D z7*=gUN#vbH^NxXF%RN4<4!wCjbd?^Pxyk5$e_PwWX^Lkm{iL|r@>Ii|k>`NL^`2PT ze%UC}p_0k8l`mT_=*$8YHB4d@(tK`CyF2lyj?p;W!Uu;{rd}Blk5ao9x?+TB?M?T! zb2$^f`M%|hy}kJsXDuED-Gu$^scC5;!7N1l+r49lQI*@6fN%mcwAaK*0YsouO(B9d z#iAZ`1-fk=#5|Up9#BqlrOHn%;6o;+shp7y~B(okQH$s1FpOBx;~!rw|c)F*!(!Mx#g-H+TlSg zb{j**eZ6;ofID&W`uVb&*@-Qf*|z@ller4Esm&}rtBM$DyH&(x=NOqda&}{B&rnf_ z)of$phM=kZB__hG;kA!QA86!|u}cvsLYcz7tXCRj^v?DR0K4H+t&x zjd`p03twxOTk!uQ>>Z#h+qQ1uSQXp0?FuT^j&0khsAAi;ZQHg}v7L&mk_z6gbMC$G zp6`F}{cX3bw6wOEHTRff?YV}rVD-wR?$hq$;CSq$e5UQfx9vl}nZ>V3sT|i1 zkH@yTKBCWyKW0<;+Bd&klTB={R_~;K+vxZuKipby+#t}b!&nhWJ=8B-=vRdnTxq#$5Esk9q0BN!m`vp zuEf7o9YJ26jQ=x;l6;&`JbI4>aAuX4*CiZ1t9U(z|~x_l3C+rJVN zILXU=eLLXI_RyE_?>R{1f3F`yaCKVuetvz86%)uj^10V~TRfO(cx@8Y*` z|G~wC&tQjS|Fp!O9;15OBR}fC+wSA_+_srx6kqH(C}NkAP|r_kmrp33UVV5n&2yr* zUY#?0KZDf_`AYfe+^|WWN1=O?sFg>7?V_%4|L&$m#=$iV1xtb%>(0b&2I(a1Lf4Rs z{<3ANxWdVcz{$RvBink$&cqc)8JP|6*$m%liu?13>~9od;h?rh7{_sxeK3+`7)6)K zm|A5P=tpe8jXeFpQU1kFg~q`ji}?4YUnkzByNfyxQgV8doUvz& zd+%pfzj}Dl`|KjR;|#!}Uo6#oX!GZ~N8j4%AdU<=HhkW8(RmRCY^}JTwRMsDIK{VO z(QjX7rRH)Me>xtUZ!ypV)f1>cRh!u7uTGav?@kAC<+^0~lsBk^2cdd2c-3|dj*=t=nkr= z4&52Lsv#qU32Hje>U0Y5&J$1Xy4ASYAKa_r&wkyk8T6(!COJ73h)SLIXP8o6-yU_8 z4!<~SjXmCc1(&6`N=~RgRuL`QV{|4E%t37Hu(@nnF{Q9R$)6NWnJ($H;ZAE>G4J2F zzi%*d+RkQVuKa1|8gn=no4S+wiD25re0lS;p5Z2X&6#595n*-4_fkR*+mO|VvJI`+ zcW-yo;sOzQERE&t!j#TNs|li73!e!-<(=#lwCoJRNA2tR3L4+@`H|8tt=Jgti+PWQ z2dg(VR7f6|vm?~Tj;0A$lZD3+_r>7g;LI<88g0St8;zc<)(3_rE=(r z9iiHHI#?XK)R4)2cN{mSDxgx zNV+;;-)f)LVVpcvScSi}1#yEoW=kY^ZX)c;5yC%dIaS?{Ufvzhyg#P>ric(3Z2lBi zm|#gOh`f2b-@hmL6w2Ds=X(`>r&IvtUgFO$$Y=+ivQgtK zEKrmgGGrt$VN#!oDG&Y99>9@9OihtRN16z6l$}gufBVCGCF0i+TtDx}J!eFxgf2>v zmS)~I{3wIM@@#O^F;%HY>c-Kia$-$Vk2idl7#10hji}uLyKK#DsJ)dxF;RyNVattH zDhsEkAgEo#ON9fOdT-03xI{^2qG*3W9ERLi0oDQ1_|(zoDCbP=^VLe7wO<~V7Jr@5 z@R`Q3(Zs&VZixiPh`1#j=ucFp?rx@^w8{%!>sI@ zt1cbHGHn=dQ#ttZLe=Hl^}^#b##-~Ng$@9Qha{_ME{w#8 zt-Z-ahXzOTq~OVkr}C7~6lM|am83W;lcH}|Hho6x8Dr_X&ygqBS;Fnj_tLZYCJSAu z)RIypv8xF$_Dst9iXCwf%xj>%@0_kJdsumGjD zignQHQHAAkR*7PD@-i>Z_ah|HtJji+8Jce zc0c`c&A{|~9T|BGn0(%q1Iw9;QETbL$G`Qp?STTWG((s5Q)dV;Q_}{6!`Huma;4Wy zOn@D}{f;zBTD0WZYvzcE&}+j~?X6||^*03Y%Y=wyvIzt1JduXam+RinCCt_l_a#EG z_ELMD`|N!D+K5?5!N*TXTn5W4O&Hr5t};gm*o?A zgZ=Kdf`}SkGkPcZWEsUKo;-pF4!=enG3Rk@IOmP z_YAl;GwTIiH+j6c9K0^KWdn(^XL<_fZ zy&W(6pa+vt*19=M>}_lC0=Y#~?QWZ}#kwtY;|y=R@EiYtTFnD|Y-W!4{WJq;_Lg;W zWnB$+`+JEXYT7RSB{jvt{x7LNOIEvhqXwne4ezX&zM@}87Y_>UZbw0EX4-Hr0y?;^ z9roqGpX?l56@H&=yZ74&{QUoC2Vjr9&;7dT#L>oui3INNb?~W;YaLE8+r^%AH5W;` zfNNE*!1r2?Kj%enoKcgWl&sA~islV(MkdcL|St$}V(sErZg%}l-fbMC0F zy0p4V;7Du(M?&d(TE23tXQGrROZ}&DgXKz;)Gxc%)c)MqcK*h${`MUEQg&3SpUWH_ z$%OlZzQc;|ZSKGBJUTsOTC%-3Lw7d=+EVYqzBgDhC%4Y#@FB!zw#KfWT~}69c&-X> z(dDl+Bin_L*ohm{jQD?(TcdJw2Z7NBA-VFrHK_vB7Rst4=+k>?9*h?aQ{|A9SC~=} zvKkIjSuar0?K0$cqv>g)>7{$8SP<~!;mxqhb)OFKH7@WC;xoG-HeD5iVl#k?ENfTF z_GLe=P&e48dRgBa0N11Qf+DQ;lYr0UPa&-VJS?rmf^TDlV#jPPc2B-KI8`|K^T2LVst!nA={1?@VCQXVr#?*u2o+pH@JkQvCDJ zt5r)RW<9OZ+voSHO_{9uo!fssu#q!$TrP=xcXhXx^Rx!;ol+hi(6%1XPL!9bA=`5w zq?sE-|_G&Lymv`${%ZrsKdtN7|}y*`O6Kg4)T+JIxZZCXm$ zFgB=d{m|LWzkQc(52UzPJ#MbC8ZX$r2YioH@`O-A{BpEB$C&Z*WHQQ4%0?EEw%D&pK)tgiwNYUN;4)(ycDA1mJkN>gY zll`=`J%V%J9M4=!E0jSKJUos4)sKy3B5e%N&{ZXs(MlMq96+by{y3h}*w^rw;paZV;KlA}@@j!s=#SsYPCnpSsY0{z%dr zdp#Po%jLnZB2*tHvD`E~SMoW{UxzKwjKq+j$$v^z(az_1u-z}1fIO}iPacjr6Ro&i zyB%A5xzZLseI!ATJtHK(4jPcW7k>F+M58T4?=`hnkkzN#sZt`GV+2}90D{*?xie6l z?45HCICD)}&L+MxXA*Ix5~<*;@3Pm0f=ESNDxF~Pj(fKK`FKUctVH{msca}(X|o0Z z#fN!k02rbx48n&zAe|Ap^o=wZDU*PJh_Epap)bxM98h&t3z(}Emvt6(G*o!dtjU)Gy42!cT-1tF+&WH?g^1L>QChi7?Yj}YN9!EzZV zx&nm#cSvN=e}}wSGY5urz5FXA?^DQ9z4^aFW!+%u63rk(29Z>SU`p3d7eusas$;?l-gZeeEk9; zl!uwINF7=ac4!*{1LE{sxQ0)3_cjEk;pOueh>;+eUy(l-!A=> zo;$*Ng}B9GT*N)R`Qhz!K=!Rr?Wc<8mAA`7ex_ztOS2AUvx3&~W$9}`OFsKQ< zL^y@!v3GY#PJ{-_z?9wZ-st=D68+FmC&R-)WmZiZjk8;20zzi24rBmuDea`j-t8M z%?nSL&(!qxl$`rpwbz?smU|UoJRtQmT;2Y50Os=(6i3BoUJ>Uv z3TGvv$8zkX=OX#xoXxLq37C72K)j)g)LhhPCRPS|wrM8zk-63{@dMtjvhHs{*U~b( z(=%^gHh#WT*Lv6vv>5s-nnrfNCoFWE>IsU0>bt+KPg=nJ0tEKAnFQX^aZ#7c>5pfr zd_%+tWIf_lxg5s;O=>CAA_6svgbgLja;eVB{${ld$bu`kODS=!16U;xc{dlTJymrCba1 zd;7}dQhy#OwndZPp7UEXw_37n)3+QDbm}}IIRdl_hcgAWwjiC9Zg?l0L)J0VH=Vs< zY=c;7*e}eDSS83)#A)m8udX0U*>MgJG3=sj&O;PoW{)7?=^++S=-3n)jy+o9n#7m| znoq1@X2{dT8IR7vSjK*zD~4d_r}Wakum@V0o!qU0O1gd-nCDwSo}NNUCC*p|hd043 zz)>(rvKUdLx zW_BDVgFJl>3dM>r4^Pc3&3-^9f31*06>0$#QScYWzeJo1iLn0>0c7?677;xp+9=bl z_qPC+JlJ`7x-LSqjY8IQHjLmLY@7$WpgD> zdb*yl5+&PjEiJxt4Z;SV8>|Yg+`e2o>um7uX)SG>?>sMl#;i2Wh`KehsdS868}5zU zKNfiEy)>$QuO&q1{Ez_Al*6o_da-smE3-|J8!BhGImrv<~{pXI$ z5xHduWb-svw@ZL|3SjFKr_pC`0+&{MM>}5 zUsj-{{juUn>E94fWk4&?{vTG17#;=>A3~jkHYDCzd6RogOx~{J4zF7E7{a%H_5pFL zj(elew3^G9vf`1BYO=L$hv@8`+4_O5KehhGu~QG=lsr~Vu;9(X<+lg5vH}>sdFhT_q&HHX#v>b|(D@wA! z6tADrs3KmWc~Ck2-UmrgnnZWOexFK5G(DDuVM8{PY;cQc#20Z2m`JcH!VeZ244+f- z7pHH}$4F|pK#g9D6E5n#Z6vnN;@wOM9dGl?Wp2d_vT|*ZeoTE_} zab&?TU|0{KPG}3$buzAmA>a(*hH+^5EypTyX;&%IKnIlT@tz`EW7GO`V5oF3tgs9I zhpVFbXns{Acs-O6f>bn-V~w#SB#EX|G?*Ar42l-*N?7uj`T#XI-6|A3)<24xKq`p} z?OHSnmB!$dyItl;R+xKw>r0;0ONTQsLqLrXpo6qft+{E3c#<&oiC2WGNXh|Jx8toi z%|A@WIixRytM)`KJZ5n7N%hp`CTb!%j6|S-!J{z^9*vi#F|AdknT;w^5qXDjL!=Gl zmM82YIi``ohj0;Ln#orjmN;Fhtuwy>O%qX4SIxS>R%%vF(J7>+AHoF$r9^NT9Z^;1 zCF^2Y4~4)RAq?R%^qr5EWiqUkp(Bl`FcG+faYX60mTWuyZ?d@P*6%&KpVid;rE7_4 z-r4PRGtaUL_7E0)ZB$RZZ@9k(azith8^m<6l&2~mPLB^^9#vzg-GyAftps%oRD4Ey zZkBM?9UiD)tmgbi|FG#js+OGO0;^frAsS8ce3`KBF6RAe7E_`o^DqN`!8a?> zdNZeW?j4+_PN*g$Pl8iY6AitI*$W4j0sl|3*QA2Z!=l1UC4vCVz~V$Gyp$f|`U;4J zlbT^7%6fCqB#od1O~@4uWBe&`rO?a|h!LNu(hx)y56H@uhtDHSJSrp=6`jK!{Rnm;}BE*%3J+MO>d457P`qKhu0@n(S z?C8((7&Hy_fwX2!g*4n)e=@b+OI4--B}g5WDXHWlWfp2>Wy#@xq87pa6O|Y-go0?P zjxr5F!Tw2^J8jm?MsGO7fKx#%I+k1>gGazT z|5t?R0xz3rjFB-9qXbb_1}0V0tL4f=ENmIb6xjP5q*qwqPt|bgmKW zn)iJgztV3vQ%E1TPN3=pGGnf42$Rxa*Jziy$>=)sAfUu}M1nF(v~;Jeujyy_6H_k8 zR>Vt5R7=rRgL&*;Nfjz&3mqy>rv6W+4K$zFnNkHb*ZeGcOa#D@ZF%G0W+c}sqq5W9 z>Y;-0V7OlRX<@j&2wl|wK-h!Yjju%~5G_pLnzBu{yBrskrrmZ(bo6)*$^B6Y-WaTS z867luAAw*xq9Ms0=P+@fhA0kRYoh1~7bQ%(TrG5=lx_?8JypttZmvsbTgwony75^v=fdeWf zR{<&oCg8pr{;5QvV;bK7Xc~pxG&JhlJJT4AA(~_ zaz8Cy5GOmdjkk3L4bJ|A?YXe_LH8otb5PN6q^7G98t@NNK0lC$>PeM?Ox9NE0y9QV zbr97`jdu|Jo*L&Mnvt5|FoXaj&7B2ByysF75gCsfgEq{`cj+RU&+w>-yZ;>ec0qqdoWFm$)6ROYA9)Tl`r?pN&H*2sGWJYRbB(0556FhA$s3doGnWt4j z5Sm22I%=`W|JP?e_W=vs1`%{w0R#UaWBDyhCD_o+f5in!n~pU)p}>#9=SDBLFG*j# zqUPLMQaBi1@=}*$I+&4s^c*%RS2nA zxOGI8UMfd#*&La15T8EZT_fd*#jB>_N~+-i-^jKCQC{uLmV$g@E3e5*msTG#r2#j; zutKvj`+YG*R{kvJ}7r(uSnA142IR_t!hnEIYQp7NB;(fm`kycW~e7q5g@--A^5I&Kq zejzK>vW@KA#xP#u^EusAIA=`9P)te{-+jcFpD8&5=<(1p%n@tg)WL2rvm?Uzcb!{d z0wAkl0%sS&s0-be^4%lP+^cFn^Cn`CQ_ z1LymUfA1g)##StZF`J|K_GLAj&yc?R{R%|j7JCJ~g&?Y)xfbR|E8zSn!^}Q*io>JH4W?Fh)APE!n%O!a?fN0Nv5@t3s z52la=iTnk=kCfKvHm&)GTODX=m>}`H0k1fUFG%qm(U(ty4kL^@Lr$H*ziUu@nT>tQ zM~V3Te~EB%`~CUPKkuF^{w0DPnrJbgQ}%h}OY|@BUpV_n42hM%+aS^rz8*!W#pB#X|Ko-1DD^&49{P6@{Gonkdp?hP67xG_QAUBixRAE}RHAIWTr2?*G>=JRaXywMnl zc(&d-XnDjv=pM(j1;`?iPdT(uk8#1l?DTWb$}|le^bOW*(SNU>MJO>#Zlg$;;ni5~=09`lovVxCZd0A#7ZD(GODeqA546}Gr$@2>}??Ya>`f!?^Ut_-`>gNiLf zickCF%m(UJA(imzI5iFQ4pm#B1hdiKp1e{WQg9B|EX~&+C2o_lAt0`uW;c&G>p()= zWx!!m*K_<;Trvm%rR)BSz)Om=)I$Ipfxl(((j*iOz?NmkJ^gJh{M+a)eyfR?-{K}y zsmFPH&&6#ZD8Tt^_AwBq^bbtw-!Qs>(r2YffUM#6TCR3tbp||I_u$EYXmWC zKfFDvvatcqq1nfZmvWyUoDCE*f-eXA^^@(`S*CG>3L&3f21Jz zE>0;zBK`*`yWe6zRz?kid-}~OV{30H6YA9fC{nky9f2N*wjeZM*0@Jz>F%tBvkK%v1qWOQDzxB5eJ zPwV1Ja!)_O7nLn~Yd{Nj6Ub70qS-JP(0BRTBfVujQ?kQ3W6XGSvZ&{%95<$-pAHGQ zO;`$U(kul~A5I&|ZhGIFRy(_}I4>x->h;4e>s6sEIT%3cw`b+I%N^i3~C4`+O_eEt5kCkW6x`Ynn?&gcc> zO`Y+6;7try?9(kv!}Rm@$jR}Jk@=(A+xArrT`c~5!br?9sG$#AC1D`=v$7Q2V~9h#lS-KkP2w)081=Sp6uO`CauVs|0wLjJUoR&S0Z(T$3$7qXiOXw@jWkb%HX>wqBSy1)QYCH)A1=hTxBiin?^toxUiV zB2Gx{4dl>JkycMqQ~e1^1q{h^mgY$$O>)HPX{l z)SCzOMSNaXT7Fj25;naufLa>i3lEKsMV6BiHCr4Rf}Wj6sv-a``NOHYGkC=`2`&DK z0(dyi&w7yM!5K~rBM=x{9rkx3t;%v>l73Rqrl!(W1c=YOA7bvb)=-B*9vwP;S2-$T zE(-qk?%gJKRD>`k%o87|!v_id$BHBJ2QseRa(;_gCsrij9RDFnIsqFkuArn;FH4qJ zRs|EC=aBD+>mP-@SGw&A|k5fL)7?6QV*# z=h5N%bA1Kxt#YrW|~I-u7> zGOmyb^RS5U(9qOq0VyqM1piG*R1_as9U$t0gL5QW^bHnx@Svu8Qv&Q$Kap~(kN1WH z&k_xuJ-wvM{1yd3M?n_E`xsFj?B_;Q;(xNhOilzkb0qp7XPi)>^Reoj^Bb^J5GJJX zr_9+}oCZ9}si|yfs06Fse&e`dW)CB8+NdDoHFLyS_XHDJ4pTs3%B@fq+7 zc#EVxyG@0H&eey*=U41cf1P(|CByuzVE9EDno8_|6ih}4hAU%L9%SXeU%KMLvK+{N zZeb=Q#kVLeGKY!Z#(l(RP?Wkh7c?9u6)2#OS?+y_TNJ>&2IYbL>$Pl(ey9S@6TKgl z)1VJ(U`x#zx3~ry$h_-YWHxT8%M(M-Q(QI->ZH|%eApD*j3NXO6KB=LDhL;vp++0G z+{1A?e4up38>1O3Pf(0gCOBM*EpQm>&R-J(6l(IruY)1p|3$!KxA8EE6qf&A1SpT7 zcrb9r9oe(Jz{KQb$xDOH$Kn?=7et6liA$x$g#oTXj|UD)2~wfW`5M9i2}7L(QNL%& z>4e1&l}=43>3DOj!zKrkF-xNRoPex|b{ylc%*HX~_mk#-k*c^y^2-XyqQ!yaSr!Il zt5_UvE7%a1?$JjWrT%TmI{Y6#$v}j^3@J$g2lA0x%?x65_ivq^RV2lsGE41cpBOWG-m6dmCD{Y3!eG3iGoeyw)f8EKC#sRUv6)TJIy_5I_ZuteWgeGL1)H zPwgWGVu(Eji%FYz)Mbl_7aE{OwG-jfFT??wQp5nCSHG@DWu{kG&eAtT193pBAkg@ zYaXuU@-oWn`-`l(^8U3Ym!s~SO#xYhG$M}d`cHy(C)tz^$Tzci+lS<* zpQI9d)JCc92LGiFC*Y4d5#;}^&ITT+jvJ=i@9iApKVT+@FV68UrGEq2Vd6mFuSdzX z|Cf0TnX^`@;hW35#uRlX;+sRch57uJ zZg~jFMgnk50rMcDG<39__w%czHm`>4%qd|J%rpi9ynZ;}I^M4i1UL*BtkOX}ktvUk zyxW@9iW9?WTKmG=@5ooutEXjiSZzWh93c;Io=PAsOkMjYTop~A&JCJtU#GVS7e*Y752djz=sz^Ff% zy0{wLjdJ>_q+W}8Qgi~JltO_Wh&7Zh9~U9u@ETaSx`u__NmuU}d~7(E^)iLPM-`9h znHNm?;*bT&wAdLPmw^s{EHY*09v$^UNkMeENFaOyiJhs)m&FYd8Go^f`UwUPGK$9& zQ3eVk`)Vc$g*I9$2f5>mcqy!|utSlvjLPavM+*6N7T!y0@algW)97_rXbtYlb@>m`;Kb+3e#+6+NV*2r_ZuZx_@S23PJ7HchEMbUF`9TfxrXDPuKwLNe7+J$W3<< zxXnSX&SrE4T-`eWk=&$xt2W<9RZ@AOk8;y$EtlGGtFr^u0q$%1@;am>ulDlDO>Njs z2MGm+idnv`2jH$>fo92GGk7A&!7XvDpSOd&PD|8>^U_<@l?`VgDRmercJe(mj7`Qol<09@nbxNccV8|{ zGJ0w5n}#RaI=*t$T$*Qz_`2LRo5)`0zf_L;BD+p*%KenHE!H33g5ta~+eU?)blV{# zGNn5u1Yuh%zA>tw#t@(aFSHmQ|D2(b ze;Zh*@Vy6TdO0~NV2D%mmrEu@KSH;RN2p==V4^WIF5!}{Hj4BrAYTx_ghdaL8kMs)NSz=9AC)|g6P1Tg zu%>}OkB4G(PGuJ)n7suka3n3$v&5)*t)V7dh`w#5=8lmbV4G+J#ar>X7M4I^n4XxA zZP_efIE6k@1XJu9J++^OG4)NqdnYnUdXVG};U{dgZBlaVqF)(1O~TRa24Hrda+dunBz-PDhp}9IDAV3$BU|PSQY}npG{?oDFJbBK>z~-#K;Xpu8 z|LvF=uotn4p^?pB9a^_i`t80m!qL=Q;5M!F?XJm;0w4HR6qs`KZ{-dZFp`d%WE{$>gjt z0hKJ#%M-SqVH+xAhV)`WNvzstipQhON7i_!SJ*7LlKG-#)@E$a5lVEn@(za^d56ZG7wi4lGGY&& zoU|4sX6zZ&TbPx?GR?bWF4Ca)!^&_BIv= zkuGlUOGlaXKNPVzpB57=-MMJ7I+)NFa)(Wj2IIEl4PA`~5QOGHR!yT}KOm4lx3Y9{ z7f@QN3SSgQhb@d{Q(4r}TV&fw%^_Nh^}>BOdUs~|Xm0D(pX$vOu#<%kf1SOfM3oA! zn!scB;EUU`yh{;m(c4uqa5(Hwxfe)L9<8d|w}%8{ny&wG^eueG^)guOrLfZAj(pH#o6-eySsP94@_VxJGn{ zU9MfNlpvtCio`aFYTHmN5}%RxAY3{2`5A824Z>Zv4AxZ(eY#wD%djJ8K|IyRrdf}m zR&+WZmitZtJxcn_@7=4fbhCUBN(lNp%u)93N$W_-1A%y_1o3I~s@W^>eRu_T7wiR* zd`aS}nP%U5wN|$ct`-K%14goKwzjY32o6PuCb^9vl%!V_{BW`z#gq{JE9%p*lVFhw&QOEp3Fj_17HwNBvjwkcwQT&StO*$;?YIv3uNaW2L-bkg^{H- zme1DQvF}x19v>$&EiEfD*dcH9YFDpR7dol-=30uy=$_FZeJU5Eq~gGa*&!2LCZnCU zBomWMQsf)A&s=aXC^NJ|N^;~EX}K=&RMF%_!J@B0 z8{y`mG*Q%if+b}2CKqml>mN#3%9_4ENz(A!fQK%y{e~~3X%w^4^X>UyBXzdFQi4hE z^UKll!Dubvn+`-T?3*L%`|)q4cb^xUUl-3`?Q^`FLB;*pVL#f2t5THV(HbK0?0{KosE*0cy^_wVg8z}O@vG&Pb28oD8;vkx7l& zQg40{b1R)%!5>`^o6z|s z&b^@>aaR9XukRl6d_OGB%Ssulq$_`zc&O2wxReC?UTve5V*Qj=gSG$_6)88i6~?WT+`@Q^P*TBp zK0#60tZKQewWO8&Q#JB*9C^=z{Ywk8xQ7vKvn#tXZKn$<@`h_RI5Rm~3wW{Xxgsxb z+9bH9>wBMxfB7t{D$~s|Sc=aN`!eUfFOpzbGjIU9-fdBr^{B8Td9VJwyLpER@yZ6> zD}wKgr43md*AKQ_l>}oF98|_I+Ij$Nhzjl|hKV2<)6P#iHb2w57SmLc)Ib{2Xuv_f zyxjizYR5 znt9k03Qn2Pwu)VYAD=y7y`yr^8H|&oYIS9=?W4CFb!F$MTtPYCCn0p#b6%C!5m{T1 z!B&2MDp#S%Q?^wV4^r&9m+%;zS|?B7&;yPwlbEishqo5#G-iqqSzpz!iV{n^ae)vC zu{c^wvwCUUD)Q$KQY(d#(}Kq56jBsxo}W85RoOwLbYaaQBuntm-?}7~jZ1t`^Z?yM zlad^9&!%a-pa?|Luw3&n0LlFmBmOv%@SLGQTQzBZq;j@p37A+h`p^2;NW6Um0PITmYMo)w(XJs})6^;F{+O_%hea#}OQ9dafEDyVd_7!zu8 zc*1NkBc_lR{dW1(rg^a36!qgp3gep~Z(79E8_Ub#o7dcNz2bv>gF3#Cy>xn5r&#W{ zTHRmJ|IEd5{CHPOfggBK!0Z(b_}kdk*~Q*g!`6n$(#6#FuaCXzsCu{oW^|CBK4Rku z<0ZUd=!;6oR4DmyHBv9%p%S_hii|$C!+Lk!zdDQ_+seIz5wY_ETE(QC9pJpK!~sM< z?~jGNS9jx8yA*L~FpuoX~V7;B)o4X>&ha<(XfYun&5O`L+3*Z+qu zfr+E#ZlE42pf19H==!@m?0?k#)fzT>wjP+DBSYyVM$?kP|P$6?(j`1t8;>x)#`CQKPSUsh6)?04$$;K+GyzUFI}Ox)twL?_OC z4qEhbUHG}*s@=rmHe6Jg6sMiJ)V_M00hwMkjW}g8h)09bILEc&+Q@t^v*Uf?xtFAq zN*Q0A?B39(2%8XgyWTOQE0CbW+HZ`Bwy6`%^G=we@c2JZI9S@Iw((8DA_ zXsnl|bqU=4C~U|!M58O-z2tZ~j7PuLxLhyu;R_xG*%?&L(NfJ*lEbJ}^5utQb@g(v zla2A#@CsN$^0Wt1jFNJ@xa~NORxd&^B9h+`9;Hv;o^E!TPqmOq+HrY89S!Q?jb{r^ z_qpsuV$yCgq9z$TVpCS>cFFjR!IJ&J1nw$zdR66e%rI5_a^bu%$GU!fDwC$hZo99m znJcf@%+TwILfiy+x$+L)t~m^^-X0G7K~EBf1xQrd+EQu_-tSbmYu_c) zqip!1xxxk>QuZ}&l4=iar^=_*>F~+CW``Ht2zE`>!*^Mvm514aZJ?Da^9o;CIpGfO z7F@Fwwv5#ryK2Lz!pe6eKEV}tU|0tu*KQn&J5nm_LsDuGva2i1UyiJ()hYHnDlg}= zkg4`rNJynmT{zu;iOd%blZlujVI#DsF=C~g#SAM8;F00t<~d(Ul7r-;kh%(y=j@dC z+nISt_w(Ywhh?JiO%J3Vr>ixGn1PJ3h=6mHg0)|zr{nqd>uI`(2jlA&U_%gchf;!b zGv+G1TTQ0|?G;gdZ~km$!EKn|-k<;xIa)&AdIVAjSv6j%t29^gLa&*sO|sap{+ZR|>+Ty_J<;gyn=d=i{krP9BZt9WVoXqW*%-XvyU}|3!;#tDz~K8#&gHb4@`h88 z$!BTb?tl2ce;_syg&T!&Czh*mMAyGy-g@VK0W6{pX9{h@$mK#p+Ob&bbh+)-num3 z?FsVg(z7LIzuS2p*tFNyGZ-0FH=ZsY_wqo852?7#C3<81$oUwq7yZ@S|fGaQH^=W5l zX~SscU}}D)X6=BciZ0OU#YJN~jZDpe4n5Gx+E>Kzg$|6<@_R`VXAwiKV~A9u99jmY z;n&3!Kz95K$YUtK_eVXtic6NG!h8U)l9-SLH1a2O>=9C{TMmA7eem1Ots+>3pm_b6 z%dPddo~-*V=UE=F6T5=Z0{y|cJ5(=NW_WN@cj1Soo=Lmr8VBx5=}Qbw7m(A|_JKVR zYcLD=iGs!@BdrdbcB!3D^icuqV7>=luCzPeWF}R14gj4~Mr8k$ zvqxMjNv>L|Nv-_872?DgHAXDNpPCVZo@3nUn+v+bd8k%cVC;k8^)KU~W5Jwc5S ztGB39c#OLSuNqXza>KlRHChyYn;Z&?;aWw;$wL~1dJHFMsm^Y1oL6cF@T0Yl{;%oZ z&QAJvEg?2_s@3$jIUKqL$4q|Tog`Y#_ITp_Pn_SlOy&7(oHq7;%rV94>W@43HoWP0df+QN^Hk9+pCkd5 zrEW*{erKJ!vNL5`kAC1>?`hS4Rlm*Hrz;ciP3f82wl2Z+T%Y0#s<*tZT0ChISkrs- ziF;Md(JkAJC!B9S+QZGl;V5f&SD@u|0+afbCRRfprK&v-+8Lr)zHnuHG%j~wzQuOk zQUrJvYFAZinf=_})jaD0!!4vQw|IydPOjPWd;*uzbdd>81`~fiu`}uyS-f?^8Oa&1 zJ)-8XD=kwvr`3@VvMQQq+Si*C=Nzee`-p4*?*o&cubU;iOD|nh`hE-}~oeOOyS<`A1fZcNuJNm=vgduTGU; zQ?vPr)UJ=y4z`}RyV5$TBz)})-gW2wDl*htwoaX{wXinoP?lZRzngcG@8#Uf`uA~` z9{(-XJmKxlzZ-6!eEZ0bU3mNK*U#*pd;`|r?^XA%mVV#gSib&>^!jO4Y_GR6Fg71G zxMgrKAV(s5M#>70BgQF`MZBqPnlB`6Kir#i-Fw|p{?i{M-@kg0y>b`u;;V&`D;7+by2B~`vgqrs150MF(!TQa)hW&X=gVg|?Q^QRweD8w zJLwPwm6elT&sq1zYFGHnH)==K8-e!}8`);8UHBpEV*LBbzLja8bAkoyR=P~)pDu5s&L))(-==i73-1?Hxx|-f-8WbJ>~Kg;pJm2x?s<{y!rPt-He6S2STmC| znr~jGavaNxSx@^qd^Z};Pu#~aVb9OXSL;i-=lL#Qbg{c4?xi_X%sqkLe|IH&%1*ak#w$>>aR;T8?-E<>g z^d_I#x`cTz9z2>8y5yp8!qWe8dD#~fwo5m6zGF+~>eejk5sXkiEIIRqoJ9A|PpcIE zC8kF7eXy!MHQ|bh$QubRox_DX4=d&+WS(Ju!JhP_z4x^4CEoZam-^$UPTZb$_}LWB zX>ac;&uKsBduF}x?e-;UX}vO2Z8JYjnX`M@xjog_-ZUMmUUPKYq)SHCm8HIKAF2MR zx+`}u`u*qiQ=WJP7oUE0tzE9}$;GX&<*I8QFIzsZ?%B=f^XeBCpT0Idt}gZV>h*hn zUb}65uX20#^L71p_dcJzSNq%k@0-(ynpca|3ldV4wjg#=sEm z3>*wj%`1rysVqn>js>;O&<&_m^LF?FRC*6Mj?4|y4Wt_wj{%Kz?HNBJfBwy7n)(Z;QVMYR_R|U=TpjUJn$3YfmgFz~<`Irsl;w zKrf%sK(~AbP!v3K05qaB7wC6v+VdKug^Ylfp9WebgJSt*9;kMR&yfwm8VbFu#jLya z85rV1SsD0IOtR;Lnp9j;nUe~hu0#(5^aCYf`WqO(+oEVjJ6;mq9Q1ioggF_-FmsS5 zQP8!cPrM+shm}LMqfNu0n}9wMfiR(?0%`)vv;?|-^igAke&93(Bs$T@kkO4m?|&nV z5NX2N8%H+)y`zgT;0=la*t)&wW}){T5oSGYMt2ONCy8zfdRGf!%AXc!sGxMb(DkFY g2NC+GcOYdk)Yf5uH!Cm)fpV1~Ln1JHboPOG08wg6wEzGB literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineResult.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineResult.scala deleted file mode 100644 index 1ddf00bd4..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/mixer/MixerPipelineResult.scala +++ /dev/null @@ -1,70 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.mixer - -import com.twitter.product_mixer.core.feature.featuremap.asyncfeaturemap.AsyncFeatureMap -import com.twitter.product_mixer.core.model.marshalling.HasMarshalling -import com.twitter.product_mixer.core.pipeline.PipelineResult -import com.twitter.product_mixer.core.pipeline.pipeline_failure.PipelineFailure -import com.twitter.product_mixer.core.service.async_feature_map_executor.AsyncFeatureMapExecutorResults -import com.twitter.product_mixer.core.service.candidate_pipeline_executor.CandidatePipelineExecutorResult -import com.twitter.product_mixer.core.service.domain_marshaller_executor.DomainMarshallerExecutor -import com.twitter.product_mixer.core.service.gate_executor.GateExecutorResult -import com.twitter.product_mixer.core.service.pipeline_result_side_effect_executor.PipelineResultSideEffectExecutor -import com.twitter.product_mixer.core.service.quality_factor_executor.QualityFactorExecutorResult -import com.twitter.product_mixer.core.service.query_feature_hydrator_executor.QueryFeatureHydratorExecutor -import com.twitter.product_mixer.core.service.selector_executor.SelectorExecutorResult -import com.twitter.product_mixer.core.service.transport_marshaller_executor.TransportMarshallerExecutor - -/** - * A [[MixerPipelineResult]] includes both the user-visible [[PipelineResult]] and all the - * Execution details possible - intermediate results, what components did, etc. - */ -case class MixerPipelineResult[Result]( - qualityFactorResult: Option[QualityFactorExecutorResult], - gateResult: Option[GateExecutorResult], - queryFeatures: Option[QueryFeatureHydratorExecutor.Result], - queryFeaturesPhase2: Option[QueryFeatureHydratorExecutor.Result], - mergedAsyncQueryFeatures: Option[AsyncFeatureMap], - candidatePipelineResults: Option[CandidatePipelineExecutorResult], - dependentCandidatePipelineResults: Option[CandidatePipelineExecutorResult], - resultSelectorResults: Option[SelectorExecutorResult], - domainMarshallerResults: Option[DomainMarshallerExecutor.Result[HasMarshalling]], - resultSideEffectResults: Option[PipelineResultSideEffectExecutor.Result], - asyncFeatureHydrationResults: Option[AsyncFeatureMapExecutorResults], - transportMarshallerResults: Option[TransportMarshallerExecutor.Result[Result]], - failure: Option[PipelineFailure], - result: Option[Result]) - extends PipelineResult[Result] { - - override def withFailure(failure: PipelineFailure): PipelineResult[Result] = - copy(failure = Some(failure)) - - override def withResult(result: Result): PipelineResult[Result] = copy(result = Some(result)) - - /** - * resultSize is calculated based on the selector results rather than the marshalled results. The - * structure of the marshalled format is unknown, making operating on selector results more - * convenient. This will implicitly excluded cursors built during marshalling but cursors don't - * contribute to the result size anyway. - */ - override val resultSize: Int = - resultSelectorResults.map(_.selectedCandidates).map(PipelineResult.resultSize).getOrElse(0) -} - -object MixerPipelineResult { - def empty[A]: MixerPipelineResult[A] = MixerPipelineResult( - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None - ) -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/BUILD b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/BUILD deleted file mode 100644 index 68dfa5b8f..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/BUILD +++ /dev/null @@ -1,14 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - platform = "java8", - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common/identifier", - "util/util-jackson/src/main/scala/com/twitter/util/jackson", - ], - exports = [ - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common/identifier", - ], -) diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/BUILD.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..085ce90fef4125256c2d0d70ae74f26c9a0ea4d5 GIT binary patch literal 36848 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailure.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailure.docx new file mode 100644 index 0000000000000000000000000000000000000000..9adfda191408f089cec8960fee26f5b663699337 GIT binary patch literal 37538 zcmagEWmsIvwm*!!dvJGmcL)S`m!Lr#cNz~6+=IKjLvVKs?iM5v-2LB~nRCv}x%a;B zm*$~rt)Hy5dspqX`r2POEO;Z`8i9s?L0;ei83LRFRKf{yTPT`=gdNfS4 z%kXJ$RN3ui+|Ql-LBd}u>t%_VS~Jro9pPI5@7HkSa}DXw#trfP&b4k64E0Wy8jf|V zJ%uP9gNOjM??3Fincc^O`yiS{((+;CtOkpky3(2h!2hlNlt!q_MZhRQd$p_1)dk6~<5sKP-hA-p$P_*o|xW z52JqO(h#XtZ4--09^v5Qd2>9HAosn=3D#TYlT`F=moyTh4G``3zP~_u+W!c>f_IM; zP<1Es+)=dWx*C{gD$kfqr}vUXRDj+U_wmX55wW=ZouqKj^J4M(p2+AOdEOJ2f+3jl zKf35iEhl;p>fQzf7#JexuaT3vtuqVr@6XEki4Tx$X#QuyQo~fm_Dvd+1N~+YwrLSJ6eyzR)OXw#nxw)E8<+!nboHk*VpZajM)YF$Fl8|GvmG


H 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailure.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailure.scala deleted file mode 100644 index eef0db9b4..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailure.scala +++ /dev/null @@ -1,49 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.pipeline_failure - -import com.fasterxml.jackson.databind.annotation.JsonSerialize -import com.twitter.product_mixer.core.model.common.identifier.ComponentIdentifierStack -import scala.util.control.NoStackTrace - -/** - * Pipeline Failures represent pipeline requests that were not able to complete. - * - * A pipeline result will always define either a result or a failure. - * - * The reason field should not be displayed to end-users, and is free to change over time. - * It should always be free of private user data such that we can log it. - * - * The pipeline can classify it's own failures into categories (timeouts, invalid arguments, - * rate limited, etc) such that the caller can choose how to handle it. - * - * @note [[componentStack]] should only be set by the product mixer framework, - * it should **NOT** be set when making a [[PipelineFailure]] - */ -@JsonSerialize(using = classOf[PipelineFailureSerializer]) -case class PipelineFailure( - category: PipelineFailureCategory, - reason: String, - underlying: Option[Throwable] = None, - componentStack: Option[ComponentIdentifierStack] = None) - extends Exception( - "PipelineFailure(" + - s"category = $category, " + - s"reason = $reason, " + - s"underlying = $underlying, " + - s"componentStack = $componentStack)", - underlying.orNull - ) { - override def toString: String = getMessage - - /** Returns an updated copy of this [[PipelineFailure]] with the same exception stacktrace */ - def copy( - category: PipelineFailureCategory = this.category, - reason: String = this.reason, - underlying: Option[Throwable] = this.underlying, - componentStack: Option[ComponentIdentifierStack] = this.componentStack - ): PipelineFailure = { - val newPipelineFailure = - new PipelineFailure(category, reason, underlying, componentStack) with NoStackTrace - newPipelineFailure.setStackTrace(this.getStackTrace) - newPipelineFailure - } -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureCategory.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureCategory.docx new file mode 100644 index 0000000000000000000000000000000000000000..bd9cc74c461b3cbbe331fc8b71606699cc561fad GIT binary patch literal 38787 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%0DkXaUofDq(8SX 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureClassifier.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureClassifier.scala deleted file mode 100644 index 449542ba9..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureClassifier.scala +++ /dev/null @@ -1,13 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.pipeline_failure - -/** Represents a way to classify a given [[Throwable]] to a [[PipelineFailure]] */ -case class PipelineFailureClassifier( - classifier: PartialFunction[Throwable, PipelineFailure]) - extends PartialFunction[Throwable, PipelineFailure] { - override def isDefinedAt(throwable: Throwable): Boolean = classifier.isDefinedAt(throwable) - override def apply(throwable: Throwable): PipelineFailure = classifier.apply(throwable) -} - -private[core] object PipelineFailureClassifier { - val Empty: PipelineFailureClassifier = PipelineFailureClassifier(PartialFunction.empty) -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureSerializer.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureSerializer.docx new file mode 100644 index 0000000000000000000000000000000000000000..3ff0d0dce6662d609b6e4761731ef23d190bf4ef GIT binary patch literal 37457 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 DW|axj literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureSerializer.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureSerializer.scala deleted file mode 100644 index 9e4607b4c..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure/PipelineFailureSerializer.scala +++ /dev/null @@ -1,67 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.pipeline_failure - -import com.fasterxml.jackson.core.JsonGenerator -import com.fasterxml.jackson.databind.JsonSerializer -import com.fasterxml.jackson.databind.SerializerProvider -import com.twitter.product_mixer.core.model.common.identifier.ComponentIdentifierStack - -private[pipeline_failure] class PipelineFailureSerializer() - extends JsonSerializer[PipelineFailure] { - - private sealed trait BaseSerializableException - - private case class SerializableException( - `class`: String, - message: String, - stackTrace: Seq[String], - cause: Option[BaseSerializableException]) - extends BaseSerializableException - - private case class SerializablePipelineFailure( - category: String, - reason: String, - underlying: Option[BaseSerializableException], - componentStack: Option[ComponentIdentifierStack], - stackTrace: Seq[String]) - extends BaseSerializableException - - private def serializeStackTrace(stackTrace: Array[StackTraceElement]): Seq[String] = - stackTrace.map(stackTraceElement => "at " + stackTraceElement.toString) - - private def mkSerializableException( - t: Throwable, - recursionDepth: Int = 0 - ): Option[BaseSerializableException] = { - t match { - case _ if recursionDepth > 4 => - // in the unfortunate case of a super deep chain of exceptions, stop if we get too deep - None - case pipelineFailure: PipelineFailure => - Some( - SerializablePipelineFailure( - category = - pipelineFailure.category.categoryName + "/" + pipelineFailure.category.failureName, - reason = pipelineFailure.reason, - underlying = - pipelineFailure.underlying.flatMap(mkSerializableException(_, recursionDepth + 1)), - componentStack = pipelineFailure.componentStack, - stackTrace = serializeStackTrace(pipelineFailure.getStackTrace) - )) - case t => - Some( - SerializableException( - `class` = t.getClass.getName, - message = t.getMessage, - stackTrace = serializeStackTrace(t.getStackTrace), - cause = Option(t.getCause).flatMap(mkSerializableException(_, recursionDepth + 1)) - ) - ) - } - } - - override def serialize( - pipelineFailure: PipelineFailure, - gen: JsonGenerator, - serializers: SerializerProvider - ): Unit = serializers.defaultSerializeValue(mkSerializableException(pipelineFailure), gen) -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/BUILD b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/BUILD deleted file mode 100644 index 6a1c78097..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/BUILD +++ /dev/null @@ -1,51 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - platform = "java8", - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/javax/inject:javax.inject", - "configapi/configapi-core", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/common/access_policy", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/common/alert", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/gate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common/identifier", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/marshalling/request", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "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/pipeline_failure", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_execution_logger", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_selector_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/quality_factor_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util", - "stitch/stitch-core", - "stringcenter/client/src/main/scala/com/twitter/stringcenter/client", - "stringcenter/client/src/main/scala/com/twitter/stringcenter/client/stitch", - ], - exports = [ - "3rdparty/jvm/javax/inject:javax.inject", - "configapi/configapi-core", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/common/access_policy", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/common/alert", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/gate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common/identifier", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/marshalling/request", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/quality_factor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_execution_logger", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/pipeline_selector_executor", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/quality_factor_executor", - "stitch/stitch-core", - ], -) diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/BUILD.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..afa5f4615be251b817c9ead7ca79c0543b0757ca GIT binary patch literal 37111 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 sjYHg90 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 Sa}X$32{I%CvqyIihz9_5hgm)V literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipeline.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipeline.scala deleted file mode 100644 index 407379234..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipeline.scala +++ /dev/null @@ -1,28 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.product - -import com.twitter.product_mixer.core.functional_component.common.access_policy.WithDebugAccessPolicies -import com.twitter.product_mixer.core.model.common.identifier.ProductPipelineIdentifier -import com.twitter.product_mixer.core.model.marshalling.request.Request -import com.twitter.product_mixer.core.pipeline.Pipeline -import com.twitter.stitch.Arrow - -/** - * A Product Pipeline - * - * This is an abstract class, as we only construct these via the [[ProductPipelineBuilder]]. - * - * A [[ProductPipeline]] is capable of processing a [[Request]] and returning a response. - * - * @tparam RequestType the domain model for the query or request - * @tparam ResponseType the final marshalled result type - */ -abstract class ProductPipeline[RequestType <: Request, ResponseType] private[product] - extends Pipeline[ProductPipelineRequest[RequestType], ResponseType] - with WithDebugAccessPolicies { - override private[core] val config: ProductPipelineConfig[RequestType, _, ResponseType] - override val arrow: Arrow[ - ProductPipelineRequest[RequestType], - ProductPipelineResult[ResponseType] - ] - override val identifier: ProductPipelineIdentifier -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineBuilder.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..d2867967fa54814406f98a5430466d94547f4b49 GIT binary patch literal 40530 zcmagEb9^P;)-4>fV|JW$Y_nr@Y}@MC+_7!jwr#6p+a23C{XFNq2k*V#_fPHLUaRI9 zV~$x>Yt`IaRss|Z6$l6j3MepzO|?S4ASMAA2xt@n2ngkKR723(%E8FWK}XTm#>ifa z*2U7IAwf!Jl@BrS;teg4j)%Zq5CN@p$A;X7ItELqD(#M4ZHewo66EP&oHImeMm7k7 zHYPpg!4q$_mb=rVkyJxa=uAs1T_ukQw8$fGJ(u>}m~CG;hEQx#bQgDS0HV4%-Q(*N zD=__Tbswh=a=?W^wz_YE>Jv~TSw)mGGX7uylsxw+cyLwT3|mh7HycIylVP%5D%1T@ zS*N#gFK41BL2u#AwkpL=p2mEd^^o%*{$!jw^W&BLuQ2 z@z%(<@kb?&FmbSb*q#UydERCFYbn>2Q<#@b$YtUctW{=z*_bK7R43d=P!@ zDBO2k_02Vqq)w#JcuT;|N9u~vdvSk;Eh_se#MAS-ShT*+JNiJB`+_Q^4J7*?Rdgkl z;CuY6-UbK|5bWotj-8Q(Jss_zV@2$QI4A?6_XUseFiDYBqmoemvbNBXR6b94^7wh7 z6+pCbrL#j$NJ|yH2k-D=*T8roEf0H%s?fquMPF^+H)pX&b(7+%zD;KhDiONfhtNfF z$6w7NHSF#iJf9Ki1FNwz0T0y%%76w%-T4fErGStQrKKo*v42S%(k-k5xr(DF&8#(q zwTNUROK4F=%btaE=p%2VgQ%`I-$}F$l0u5KAp-_`KD?MM%B`T-;Z$U4bW1vV>vNl| zsYclq?UA3LjDofc@h!weJ90m}N&WYtndaRe2QxyUnO$E5q{5rrQ- zgy*D`Lv9eEgvBU)uFoe+2ESN3xKN*=l}c1fUf*O zx)FIb1S8Iw(-Zg?1YjmUxfFTlW@W~$&@+2G+s!E_P_42rO+jDa6TjxnoE4Yz`Q|{a zX*g|I_ZQR*&CTts(b$uC^EwzdGgYI!HIA{9CFudu*K^>9oViVcpflnhZm-N3(&EKX zi}=&Q#9BpvQFl({9@Tk${CNMmghTbnb_IrcVgj#CG3zY&{@Qzu{hxKYU0uaE{j7@x z7!VNRzt=_2#^$fGD2`dJ(j&INP=RSVgqlI}%VEa)F7VF?u47flrZ>%v5{buvwJ_`e zJfDKmI0EVJLb&R!nSV(8iu}hh=ToVH&DJhYnUJ4vFl+O2JFeln0Qs zY;~qaE9N0+pdC_FWGhGAiR$#nukavk>}9B?99H1@HtO9A+oWwgreBTtgnv8LJoaBE z$Tlo(B+JpugqDH6RhgE#7Ef`r{MfxaQA@sSGI2RSpjY7uB_-H6qZmSg??sNVWq2Ex`NMWZ>~X zxiMvbIH~X8KbT^@A<|x1G8}F_Ida3EI76@ln(LtPlFpzl-bTX5@O+vrHj@%~CR8?w zxq{L$l-w<3Vv_n-#dr&3esr{_(Y?~)T|%cl-C%#r-~Gn_&kJMU%iCT1^G@aM`}>A< zwze~*`@Cx%Ek75hKUce-kp{TH$sdnbv8e&-i>cOynE}ZcK z$-$SG-n7|aG-*_qbZFLu$e~|e1{?XH4A@-RUF?Us>`TN|gH&-2w~y+U`wioOlkh3~;^@DvdO8P_C3j)YoeX<%ul z9|l->Z2uagjeUu-S~!|&Zu8Dk@@eaSxD%8sj+{CPwlBQYBtmsNu4xQZhG(Mq0?rFY%qFeI73Iqhzb$3>6yxAQOgeaSx zKN9CV@R`HpE6F?Q$tm1W*5>zGOr4hP?X7g+x(nVX+pgxq&b_$)JKD9cB;GwSVSM7F zxWx-H+^*>0SzE&f>6~KG)AYe+065s#Qua#N4(0imtgG-qY$52~T3;uu{&VVlX=1_c z=8|+jf5=RE)JgwqDuUCJsKY|weYU<1G*AZ|0y>mefCM*|=GQ7YyG77FA6enNT_1ENF0jdcE~|;_h85qtRMlL zznC6~pR{|^xw9)KOqsTOj2JVWbV={K10SeB5^OZDMYNVLa)ij)zdU-y`VM}~eT@}M z-BOt2g$LCQr$rPVFVdqW8sZ3ZQuLB_K%ycaY>P4+7dS$hv6Dm* zi#xaR=^{C>!qjJ*I5rXwaM(D}ahHVwJx5KSq`!2;*x?VO^30Bl!F$)?Jb84*H@e2 z>#ZKU_()Af<@i|%rE96UO_$gCorI^%H|u)Uj{VEMQ5mB*);M<3X~LCydQu)t!yz+a zvVC9%?1xS?Nv(BT#hypj+*$bzFFNtYBtoaK1c?1aukwKw`10nZKyYoDjhy*Z5IL8G zbxrpR-a7_LF|#;`(s`aIThtr$Tl>hfw{xI}oX+&|_m(iaK*~U+Bv7X_P^@x&^J^ge>97+DaYw~E z%`CT6%&m^U_%#lWA3rYn5#EZO@#?-!GS_gc?y9>8ER!_%dps9uLX4LCxB_OoBOWE~ z@2~v=P!2fLc)oMiZ_`F!c;2GWNhU!_b{F5x?c8?R1@6$1j8>0$#DYDl* z5b4{C zi=xR71I;M(%~UZMhvN1jbHoa)o9-xsO1#@X4AagWx5;p+dMViV*y&4k&0QGG4lrbv z!coion4AjO_Ad*Cb8PDMqS;&%C10)BpQu0MNEv1rCEM47_pK7GGbxIG?TFWU=>omChC z&`T=3&JCCRs7{yiU39KJ$Y_S4j0kydfxy^|w|2^Y@@*Tb(nZVyVt$Xqeo3}s9QXH7 z+zI2Z6PNZv^+_LYAXDe+0jW5ISz)$Cizl3Nw3VM3aBNs_o&ve#jabxsrm=d2Kxa1j z0x=bHK}v9NAS}c%?*d1bnBT{a$Zn73O<48TjxN-6{BAi=*OWn=Ek$RY$zYV3)ttNb z(hu3T2_m?ErfS(-ab}j;V`?;RB56gne%5NC=xGhBEbAV|jwg}WmjHQi3e-oKQXLFm z*1y737XMNhD`!qy#zA$URVxzu#jZG{J;jnoj`e$;Ui(}-p&GkTn>T}Hwbp8t+O9LR zYN?4uS6W>SiaX|_Srbcf=fs9mWuLU9=%m%Rt**R>YT!_~D)BqY01Pc(B5LNhQ9Dc1 zq0(S(tpkwYibq~HusTbZ0~d-zg0hpPz%j#(f@1^x=lP1`5{lDq}e8h$v{ajN1D5$ zWA)T=miCf9GyV)_X&p$*fW6DrE1EF)5%oAs(m{t%u)8_OavYaicP~~&l|ew*X})SJs#Gg z(ywvQ9k1RkOet;*7RnAOXfXp^sdatRF2z9yE9Z=>J{!v4D|NFnYwlTcZO)_&R{#`b z^IWt$Un$ii?JD2g;V>L9kB-EW^JMrVH~iVlA=saBHy#;%vDX7w-LRI5gIK~PF*eCZ zv=B0_Lk)D3nr1W@D3m-;LC2scp4M1z5?!@-XN`={bI=|~rFiP8ikHC13r$sQF7{{?rMHR`du5w)}8~ZjNMc1%{}Y;X5ZHt$#B6u zxMp_v3v|(<&R+RqfYW~N`K%Nz&Wr1E-dCIRXOblqStTPh8-bOU{T1DJ@p@y+ChAr; zb81F~MZ|m3`3=mYqyu2({#KKdA~M=7^unWTK$&rC0dw_=MCA=v!uwjTD-9g&eO1@_ z($oa$SFbyVRg0|%@&3@@o;=rgwJIEa39d0|Z>{*&G<}bx9 zMPIfmel^QBE#D0%Y^;SQDz)6vApRU1WF>#!WWGO`Ys>B&NcTWfu>k%lI6@_`oDO(p zYD=i7Z5$6ityrq3!(WqmTK0EbM;=NMQqv=OOa3|%i_`kC}f3V75a5?)Mz|?^>^*JlnpL}W)ml^4PVnX z2W|MK-IIs4^;LPmrXtvLl)02!A80!*ZCS0A`Ac57I?F`8c3q#tf%Z*|Alt)m#S{%C=<$>TTL+`s$7m;A!7~Om))%&SpXHXbO8qyEd1KsZC7rg~@ey7|TWLt~Enhhwvx;V4_^(dVwVc%a zS+h&C_*3SFbH~J&*!8<`w`piwrF^wU0pAej9=Mfaukyx@I!T&ctsg(_B~vfbS;8tR z%h!IhFgMMdLpU^Sulv}zC!n}63%`%~V?INWK$|!6q(Eqj63x9cOtT$TC>72kS@rc& zSYe?s*??&E=&yy4Y>($P)#^QqjPvF(h}drh&?9w(5U0qi_>KtlgRsRZ(lHV#pa)t2 zvt`hQB*Bc>++a>%+Ei7koYH?;+gqSluW8l`_B8@LN9?9!Fm}E?y0EflYBV;xOEH#-+t;*MVpQ;f#*dsu{0vQ2{_U7vhI?@_WKi^-FjnmZ2>`|fW0sgvgj8k`nWB!14ayZRE6=BQ+Le4nQ@+((4P_2%+ z#ADTJR|#STk|PAUg<9TGLt`VyCCXJO^s?ycXQZALbALR%dfTnYlT+W)GuaAy`rLyp zrskd?&;VwDtlouu`ir1ejyE7!zWQuxTdg9@Qg z?0&_`nz;isw#qoU#H)()VswHRq;@@lzNR3DqZ0NC&6E#`|=-s1G zqP5sUYcS<&8dG%sc>LHk_s#7zMv0J_nq7{OZ@2z@bM%?yNyHaF zOeFEAd06!?tDRzxV0j8%V+T{+%inBMk&tJCsUB)eEv?O3+o(>iOu`W+l8WDj|Htt5Rg)>sUyxWv*VNW*6e%)$W3n90hzCH1$}Ci z^Lok|Lju4ibr9X|b7ontblz9h7F)S&>?6B2mzP)kA_P)!cMs`L5_gbzavaSv?+E|d zjIr{@MrQo%(v5v~>2N-~bbmEt{_ZjVdrRi;eses(j2}H_;Ke&kZ$KPsp;g$|-?^l1 zlp<9H9swdNvG;=en;Pqe)Pg%cyAQ0MS!9;86ZZ-W8(f%F_2Rzl;UEa8vjMV3$lpy6 zl1{tpM3wk|RuDjQR`;-WEPWS{nmMaUFfBh6kC%Fdsc9kUuZ1CQ$g$#UL92|&KN3-h z4XkBT2T>E6iA~lE%F1+bYa_avsBFIODF3;|yPj&_vn5@p?Awb3RQP*sA*LcAINXWTMFiDWHpgLV) z8}zz}DU6?;q&8K-|7XD0iJ$D|w=?nmZqm>W?vNn7yFB4VI6EA;sz2q%RDPUt_g*F= z`w);>qT8<&D<9~tNwBZn&QyVMJo){i`%kYU%FwyO=zxHwe_4`xQ$J5K=MPw0g)9J3(SzyzU8891hZD+25ce>nt+ut+TDEd@Nyr!OOC3&9hTeYyG3KuRUSa%h9@xZJ>M zOX3B%hAFmraGjwLR)s|0RwIBH1f3&uP6gE=1XWe?zE$gZs_}ZV2hg>*MHvNPc)h(J z_8EIYz1^I}^j3SGvxm z4_BkCcOLgXYSg<#GO;^bHAGmSD4x4n-5wZ7$lf1U51iNzVL3{!20q$?aY*m=#ay-N z@-Vxwm0?nMplXwM#o_eI5VngE807JLmGJe;dHRJsgDE_MX912*owq}0W&>m}+KNvh zzO#ye+^ug3S>(+^`(!Y9vY$geRJ?N4)}P-FsNed{zkX;vj*Biq@>of)IvRmsQ5Lom zpKZRif2ZcfPpq19o>^0mmS^k@Y8r}Ls(_!jy6Zcx-t??QHBd9xe@$9E+_$waN6#;Q zjzYR@d0EuEQKT^MPceD)`)JpyT$p+}n|-!{=sR#J#Y?{-SMq~hp5A{X@w&uclu2t!3Nr_r4*p3MT3ss4&W98O zEQF_*&)C`h*4BOX4LfY@L)FN`=OwE++*&1yF2k%nx+yeZQI*pP~TC7#$`&wYeKJzgi+$6a-zk^^6^Y%{?z-ZRD=>Vi{enR z(yd+PUYj^{kIJL%L#PYo?F?yoz;YH>Sxs*xSjp<4)bB6rW*uCW7ybFmq16mbn_^3< zmOF8X`K+MgQ1WRoBw#&hk|0DEoDzFl=3v)u3|01}M`}R2k^OuUmc5uU-|0VHXP|wkvw?FH*6o!UB4v@H;TE@5rsV_^@M&qi3n^q`) zcS`?;tz+7w9IZ}EYQXmoXInt7 zl0O-pvsqi7E>@fI>kQ`4z;`^q@zs4O=^so0+2k40B&w2#QIvT#+PS8IJ7U<`IBH-S zeZz|9bgE?&t$j_wZ|P&uq%Rxh)W7X3t$@t98nAvvC1WCtavhu|kSMWD8FY`wSGXcw(D zCA&V~S=hdLz7`TMGG7QARANLhbeOKe(b+{@5}6>r9dsO_p6nb5; zK^pQ5)Iaa*x=@(&EZWQ5J^x;?DX~6aT~fNO%=LI|n}#}z-?Vu_^zoiL*EZ$+d^>dg zemywg*7j!W3V3)=_*gi5o;`j&v7y&%e{bf^xTkxa8UlBF2SQj*b8Y4U)7flmN*cN& ze3FlOVbNXl&nrH+w}%&&8Y3Ocx=(@^4aaV6S3J*@Z;|k`p01pKc}3~!@{sesVo`rp z5_+m9c!INjL90fmx{HNq6o<1Q{JM0K>VsXDD3Ll#%Tg3!DBb3K;4kp|<|MP7ds2m= z+VQ*m*J?a?Ap5D)*W>6O@GFhH!l@DYf-WK)59iGMTx&IhhO7kA+|jYe0FFt#;BmW{ zaxH(O&BRs1gL#NJlQna8crssK+FY)t=D2Ppk|t#Jel2(vj20>QMK%Ub*(mC@S37&= zLZ&j(L`9)XPt~b<{nUZwkdu`r7VC{uSj^)SMpd&x-|YQpne>mEW%Mo=8SS}m{KX!p zN;Zkx#ojD95DSQ!qvWZujLLgYVdf&k&$ydXw~{be8Y#FRNClmaJ7d@^i^WxxXs8uN zT;ACm{rgeHE=V*3_=+-bwFumsyl-Ed1Sff|Z+lzh?B??dweA^lMz2SgEsmtxuVcHX zN2xUxqJEE~*d*j)t*A7p90eC47N>-r&RIn%cF0HEf$dBDs+RH;9vmqhbtRf;NUDg;Zf6w;))QNQXQ`lgT2SfT5nv_cvIuVyaSK0!-k? zJM&|8_&`96DpI_HU7&WS7*@I5>t|yA*_!-ni)f>Ln{Hbn+p?Itou>H+LoCSK&`iSd;YguLNscdY&sw%Vo zij3poRz>-@=G}u6Of^iHsBS_7gki*5$h}633x_49MmmzDeWLK5N@^eyDJs}!)y2sC zC&;$W>{nCypGRMbk+DR?B;=i12;C>CMV1L^D$AdB7aNMY`PUV?HcF8#!qcd7Bu7Sl~)Rd?G2pm>w8_|uWz9~+< z;SZ<0Fwo>ia}%T@(=4F@N^O~~@M0dyva*()kAs_;Wf*^3Ma*VkuEPw6fd9dibeGaH zUU9DM;fcm&M@1!xmS0>N)v*jIS0X24dtcb6*ko(OvNCLLSOVU@f4vzd(RbYr^J`*U zjdR%QM-lv~9KW`-46Zzqpj43=oeAQUW@&jIBk`mn*P@x(_O5aMEGUAHfI-8Z4>!Va z>LjLomZ`L>3wLqS*$a`2=gT~2kbEE1Re^Ar5QcVOf(5HnmE)OJg>r7*rj2)fN&0#- zYmAN3ar9t*N6?v^L6Z0La3u^^(@3o3@a_FlYI_SOrBX>1nLOZd7hT7K|` zs>T-PQA7udwEZosqs5|=%O;v5R0p&N1%%jELLai*tZgL5B}6@kHXnKpTP<}Cn?ZL7 zzW?POD_3EU*uA;V40fq6>J0YJA|B9=8n)j*BR2-m=V~#2gBdzQcSs%HJeiKV%i4fc z;UrF{McTJ}vt>_Qfz(2E#27($q<~6mZa#=e+UT29-lKQuQHmmUpiM0q=d#`VtfuBQ z$!$pvF*$*>ChT!~Z;*m6rl_?;f|Fg2>OprLvk$?#fUe-s5rj=+t9@cKZ1uyohw$q8 zqLA4)R2{)7@rNE+5(jRGkmj zsMtU)U~Q--V13|?GL{9t46ZrAQMY&mr|=0gfhK5O8FDnyv_9ai;NG@h0H58Y``r;& zy3lbOy4_Ayz?yUN3S`5ZbqIEt=vE|=t7~k^8++rdKNjWBU>|M`iQ=#A z;tT7l??W#>dOAA%P?G0*xwC|jU)c)63TK9YwIe18_PS05XjXQ5@ciEFl^n??NpYY^ zZ?n`H&%Ukc5nxZ(&Kg;Ri< zExqTSZZm@!J}g0#z^JjDEL~Ox@f2x7y%YeJAx}C$#JaGcwe{Xs%N3rUX9190XP@xxI`n-~%;xH#8I z{8-1|m=d@V$}1NPXW+6*JjQt2Q@?$-zZE$kQyEe?x%RlJ7eg%x)}IJJ%9$jb__@36 zq*7{Znh+z$=lSrA3`RXz95DuBR?7OY`4;jcFIr*0c}}6$GEHnw1;g*?fzzrL#p+p| z33qbjn`E}t%5#b^U_pvkuwq{6RwH5~cf&d%)OpStj*+rBnCyF{VYs}PDy3dB&ia~u zChc~G@>p@*9cjXC@iKjYpc7!afn8*P8>W-g&qv+-rx8~OQMie_&xOv9Nj$jd&Qi0M zD33g)(xRHFd6nmHS+o6zC*&a4D^o>b-k0|`ieS`B=_^w(;V_gSFi})r3+8CELh(p{ zur)yyOSqINai9Dak{0IUboc2cz3B30|!pA6E`Qx-#!f2I`w>zH5hmY$=vMVL>kSEJ%Y?y!ei z5loR9|h*NB19K~>R=S4*2Hxq)>7OWiyASuk}Peg#LMe{$&!QeJX z33o?gaF0h=Ss}?LT`HHkK?RVZ0k2a0KiwoB2Ftu~@jD$p_6<*K`M(s8KGd7HGKAdSO#U@3 z4Ok;UR{o39>mDVJS!W#in|?OI`$*ZlZOilZQ?(bY-kfI#ED1RtcEk^D+ixxKgDQTH zWI>}dBSnZvksUV)WJmBL3%I{K(k2OAh`Nx9I*_O?W4OF3I)!7A-hIa?OYI9sD{!PV zwa6xD9JaV_D(-R_Nf<>Y&X@ti<&8ne0BY^_nl?3Qy0j1L3MxnpNQwY~9gqT)(3jwW zVOS#cSu}LPm}P0h1#l2MNG7AG-zQ9Agg@B2XF>*!+;Mrt(1Kk4gpn`cIX8kbhKy0oNq!549Y7&>t8IVpziXhypvl zfDZfAe}D%2;2IFn1glD_sD2SP=893nfEvELA9wOR`xoLWb9)I`p~|Xxg{tI!CE(E* zP}G$l;I2NifA157TacOAT`Q-n*8T0*^j0cr{2DPE{~;q>L)}E1*dT-aMJY6|)6#8A zF=tvQrlQMmc}a06Ww|}6VB|uh#X!A;3M!SOW*i{(l61yeOj)!G8FnCVXXXVB!| zLG1rKC}Cos=I-FSpCiN``S1@_aygvErBph~*keCO1k+cycI3ly;f6o+PS}QshjTIy zqv>_m;9ZyG{du% z`Cpm#T@?oed*FLY7Zf4YEc9Omt2Z+uV>WUBtk6eKo9kWFA8owtSpjmGVwypSW=?C= zvvkiR4M%r}M-k&Pm61hr`%edEdEv%CYw75Vik7um+;AW!9e&rG_w|aMw+csaK-S)A ze?HhJXdq^+;R7=-=shbM>kd|$

Un&EvfW@lLd^q5Zdfqcw}x_j2Sbob-CMIH-Y< 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 - - override type UnderlyingResultType = Response - override type PipelineResultType = ProductPipelineResult[Response] - - /** - * Query Transformer Step is implemented inline instead of using an executor. - * - * It's a simple, synchronous step that executes the query transformer. - * - * Since the output of the transformer is used in multiple other steps (Gate, Pipeline Execution), - * we've promoted the transformer to a step so that it's outputs can be reused easily. - */ - def pipelineQueryTransformerStep( - queryTransformer: (TRequest, Params) => Query, - context: Executor.Context - ): Step[ProductPipelineRequest[TRequest], Query] = - new Step[ProductPipelineRequest[TRequest], Query] { - - override def identifier: PipelineStepIdentifier = - ProductPipelineConfig.pipelineQueryTransformerStep - - override def executorArrow: Arrow[ProductPipelineRequest[TRequest], Query] = { - wrapWithErrorHandling(context, identifier)( - Arrow.map[ProductPipelineRequest[TRequest], Query] { - case ProductPipelineRequest(request, params) => queryTransformer(request, params) - } - ) - } - - override def inputAdaptor( - query: ProductPipelineRequest[TRequest], - previousResult: ProductPipelineResult[Response] - ): ProductPipelineRequest[TRequest] = query - - override def resultUpdater( - previousPipelineResult: ProductPipelineResult[Response], - executorResult: Query - ): ProductPipelineResult[Response] = - previousPipelineResult.copy(transformedQuery = Some(executorResult)) - } - - def qualityFactorStep( - qualityFactorStatus: QualityFactorStatus - ): Step[Query, QualityFactorExecutorResult] = { - new Step[Query, QualityFactorExecutorResult] { - override def identifier: PipelineStepIdentifier = ProductPipelineConfig.qualityFactorStep - - override def executorArrow: Arrow[Query, QualityFactorExecutorResult] = - Arrow - .map[Query, QualityFactorExecutorResult] { _ => - QualityFactorExecutorResult( - pipelineQualityFactors = - qualityFactorStatus.qualityFactorByPipeline.mapValues(_.currentValue) - ) - } - - override def inputAdaptor( - query: ProductPipelineRequest[TRequest], - previousResult: ProductPipelineResult[Response] - ): Query = previousResult.transformedQuery - .getOrElse { - throw InvalidStepStateException(identifier, "TransformedQuery") - }.asInstanceOf[Query] - - override def resultUpdater( - previousPipelineResult: ProductPipelineResult[Response], - executorResult: QualityFactorExecutorResult - ): ProductPipelineResult[Response] = { - previousPipelineResult.copy( - transformedQuery = previousPipelineResult.transformedQuery.map { - case queryWithQualityFactor: HasQualityFactorStatus => - queryWithQualityFactor - .withQualityFactorStatus(qualityFactorStatus).asInstanceOf[Query] - case query => - query - }, - qualityFactorResult = Some(executorResult) - ) - } - } - } - - def gatesStep( - gates: Seq[Gate[Query]], - context: Executor.Context - ): Step[Query, GateExecutorResult] = new Step[Query, GateExecutorResult] { - override def identifier: PipelineStepIdentifier = ProductPipelineConfig.gatesStep - - override def executorArrow: Arrow[Query, GateExecutorResult] = { - gateExecutor.arrow(gates, context) - } - - override def inputAdaptor( - query: ProductPipelineRequest[TRequest], - previousResult: ProductPipelineResult[Response] - ): Query = previousResult.transformedQuery - .getOrElse { - throw InvalidStepStateException(identifier, "TransformedQuery") - }.asInstanceOf[Query] - - override def resultUpdater( - previousPipelineResult: ProductPipelineResult[Response], - executorResult: GateExecutorResult - ): ProductPipelineResult[Response] = - previousPipelineResult.copy(gateResult = Some(executorResult)) - } - - def pipelineSelectorStep( - pipelineByIdentifer: Map[ComponentIdentifier, Pipeline[Query, Response]], - pipelineSelector: Query => ComponentIdentifier, - context: Executor.Context - ): Step[Query, PipelineSelectorExecutorResult] = - new Step[Query, PipelineSelectorExecutorResult] { - override def identifier: PipelineStepIdentifier = ProductPipelineConfig.pipelineSelectorStep - - override def executorArrow: Arrow[ - Query, - PipelineSelectorExecutorResult - ] = pipelineSelectorExecutor.arrow(pipelineByIdentifer, pipelineSelector, context) - - override def inputAdaptor( - query: ProductPipelineRequest[TRequest], - previousResult: ProductPipelineResult[Response] - ): Query = - previousResult.transformedQuery - .getOrElse(throw InvalidStepStateException(identifier, "TransformedQuery")).asInstanceOf[ - Query] - - override def resultUpdater( - previousPipelineResult: ProductPipelineResult[Response], - executorResult: PipelineSelectorExecutorResult - ): ProductPipelineResult[Response] = - previousPipelineResult.copy(pipelineSelectorResult = Some(executorResult)) - } - - def pipelineExecutionStep( - pipelineByIdentifier: Map[ComponentIdentifier, Pipeline[Query, Response]], - qualityFactorObserverByPipeline: Map[ComponentIdentifier, QualityFactorObserver], - context: Executor.Context - ): Step[PipelineExecutorRequest[Query], PipelineExecutorResult[Response]] = - new Step[PipelineExecutorRequest[Query], PipelineExecutorResult[Response]] { - override def identifier: PipelineStepIdentifier = ProductPipelineConfig.pipelineExecutionStep - - override def executorArrow: Arrow[ - PipelineExecutorRequest[Query], - PipelineExecutorResult[Response] - ] = { - pipelineExecutor.arrow(pipelineByIdentifier, qualityFactorObserverByPipeline, context) - } - - override def inputAdaptor( - request: ProductPipelineRequest[TRequest], - previousResult: ProductPipelineResult[Response] - ): PipelineExecutorRequest[Query] = { - val query = previousResult.transformedQuery - .getOrElse { - throw InvalidStepStateException(identifier, "TransformedQuery") - }.asInstanceOf[Query] - - val pipelineIdentifier = previousResult.pipelineSelectorResult - .map(_.pipelineIdentifier).getOrElse { - throw InvalidStepStateException(identifier, "PipelineSelectorResult") - } - - PipelineExecutorRequest(query, pipelineIdentifier) - } - - override def resultUpdater( - previousPipelineResult: ProductPipelineResult[Response], - executorResult: PipelineExecutorResult[Response] - ): ProductPipelineResult[Response] = { - - val mixerPipelineResult = executorResult.pipelineResult match { - case mixerPipelineResult: MixerPipelineResult[Response] @unchecked => - Some(mixerPipelineResult) - case _ => - None - } - - val recommendationPipelineResult = executorResult.pipelineResult match { - case recommendationPipelineResult: RecommendationPipelineResult[ - _, - Response - ] @unchecked => - Some(recommendationPipelineResult) - case _ => - None - } - - previousPipelineResult.copy( - mixerPipelineResult = mixerPipelineResult, - recommendationPipelineResult = recommendationPipelineResult, - traceId = Trace.idOption.map(_.traceId.toString()), - result = executorResult.pipelineResult.result - ) - } - } - - def build( - parentComponentIdentifierStack: ComponentIdentifierStack, - config: ProductPipelineConfig[TRequest, Query, Response] - ): ProductPipeline[TRequest, Response] = { - - val pipelineIdentifier = config.identifier - - val context = Executor.Context( - PipelineFailureClassifier( - config.failureClassifier.orElse(StoppedGateException.classifier(ProductDisabled))), - parentComponentIdentifierStack.push(pipelineIdentifier) - ) - - val denyLoggedOutUsersGate = if (config.denyLoggedOutUsers) { - Some(DenyLoggedOutUsersGate(pipelineIdentifier)) - } else { - None - } - val enabledGate: ParamGate = - ParamGate(pipelineIdentifier + EnabledGateSuffix, config.paramConfig.EnabledDeciderParam) - val supportedClientGate = - ParamGate( - pipelineIdentifier + SupportedClientGateSuffix, - config.paramConfig.SupportedClientParam) - - /** - * Evaluate enabled decider gate first since if it's off, there is no reason to proceed - * Next evaluate supported client feature switch gate, followed by customer configured gates - */ - val allGates = - denyLoggedOutUsersGate.toSeq ++: enabledGate +: supportedClientGate +: config.gates - - val childPipelines: Seq[Pipeline[Query, Response]] = - config.pipelines.map { - case mixerConfig: MixerPipelineConfig[Query, _, Response] => - mixerConfig.build(context.componentStack, mixerPipelineBuilderFactory) - case recommendationConfig: RecommendationPipelineConfig[Query, _, _, Response] => - recommendationConfig.build(context.componentStack, recommendationPipelineBuilderFactory) - case other => - throw new IllegalArgumentException( - s"Product Pipelines only support Mixer and Recommendation pipelines, not $other") - } - - val pipelineByIdentifier: Map[ComponentIdentifier, Pipeline[Query, Response]] = - childPipelines.map { pipeline => - (pipeline.identifier, pipeline) - }.toMap - - val qualityFactorStatus: QualityFactorStatus = - QualityFactorStatus.build(config.qualityFactorConfigs) - - val qualityFactorObserverByPipeline = qualityFactorStatus.qualityFactorByPipeline.mapValues { - qualityFactor => - qualityFactor.buildObserver() - } - - buildGaugesForQualityFactor(pipelineIdentifier, qualityFactorStatus, statsReceiver) - - /** - * Initialize MDC with access logging with everything we have at request time. We can put - * more stuff into MDC later down the pipeline, but at risk of exceptions/errors preventing - * them from being added - */ - val mdcInitArrow = - Arrow.map[ProductPipelineRequest[TRequest], ProductPipelineRequest[TRequest]] { request => - val serviceIdentifier = ServiceIdentifier.fromCertificate(Transport.peerCertificate) - MDC.put("product", config.product.identifier.name) - MDC.put("serviceIdentifier", ServiceIdentifier.asString(serviceIdentifier)) - request - } - - val builtSteps = Seq( - pipelineQueryTransformerStep(config.pipelineQueryTransformer, context), - qualityFactorStep(qualityFactorStatus), - gatesStep(allGates, context), - pipelineSelectorStep(pipelineByIdentifier, config.pipelineSelector, context), - pipelineExecutionStep(pipelineByIdentifier, qualityFactorObserverByPipeline, context) - ) - - val underlying: Arrow[ProductPipelineRequest[TRequest], ProductPipelineResult[Response]] = - buildCombinedArrowFromSteps( - steps = builtSteps, - context = context, - initialEmptyResult = ProductPipelineResult.empty, - stepsInOrderFromConfig = ProductPipelineConfig.stepsInOrder - ) - - /** - * Unlike other components and pipelines, [[ProductPipeline]] must be observed in the - * [[ProductPipelineBuilder]] directly because the resulting [[ProductPipeline.arrow]] - * is run directly without an executor so must contain all stats. - */ - val observed = - wrapProductPipelineWithExecutorBookkeeping[ - ProductPipelineRequest[TRequest], - ProductPipelineResult[Response] - ](context, pipelineIdentifier)(underlying) - - val finalArrow: Arrow[ProductPipelineRequest[TRequest], ProductPipelineResult[Response]] = - Arrow - .letWithArg[ - ProductPipelineRequest[TRequest], - ProductPipelineResult[Response], - StringCenterRequestContext](StringCenterRequestContextLetter)(request => - StringCenterRequestContext( - request.request.clientContext.languageCode, - request.request.clientContext.countryCode - ))( - mdcInitArrow - .andThen(observed) - .onSuccess(result => result.transformedQuery.map(pipelineExecutionLogger(_, result)))) - - val configFromBuilder = config - new ProductPipeline[TRequest, Response] { - override private[core] val config: ProductPipelineConfig[TRequest, _, Response] = - configFromBuilder - override val arrow: Arrow[ProductPipelineRequest[TRequest], ProductPipelineResult[Response]] = - finalArrow - override val identifier: ProductPipelineIdentifier = pipelineIdentifier - override val alerts: Seq[Alert] = config.alerts - override val debugAccessPolicies: Set[AccessPolicy] = config.debugAccessPolicies - override val children: Seq[Component] = allGates ++ childPipelines - } - } -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineBuilderFactory.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineBuilderFactory.docx new file mode 100644 index 0000000000000000000000000000000000000000..ef64f1f746fe8bb654148557558ea88f420054d4 GIT binary patch literal 37097 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%0A(wv~FI4(V-Up1oKrZdG)_p^SRM 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineBuilderFactory.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineBuilderFactory.scala deleted file mode 100644 index 9e609ed92..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineBuilderFactory.scala +++ /dev/null @@ -1,39 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.product - -import com.twitter.finagle.stats.StatsReceiver -import com.twitter.product_mixer.core.model.marshalling.request.Request -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.mixer.MixerPipelineBuilderFactory -import com.twitter.product_mixer.core.pipeline.recommendation.RecommendationPipelineBuilderFactory -import com.twitter.product_mixer.core.service.gate_executor.GateExecutor -import com.twitter.product_mixer.core.service.pipeline_execution_logger.PipelineExecutionLogger -import com.twitter.product_mixer.core.service.pipeline_executor.PipelineExecutor -import com.twitter.product_mixer.core.service.pipeline_selector_executor.PipelineSelectorExecutor -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class ProductPipelineBuilderFactory @Inject() ( - gateExecutor: GateExecutor, - pipelineSelectorExecutor: PipelineSelectorExecutor, - pipelineExecutor: PipelineExecutor, - mixerPipelineBuilderFactory: MixerPipelineBuilderFactory, - recommendationPipelineBuilderFactory: RecommendationPipelineBuilderFactory, - statsReceiver: StatsReceiver, - pipelineExecutionLogger: PipelineExecutionLogger) { - def get[ - TRequest <: Request, - Query <: PipelineQuery, - Response - ]: ProductPipelineBuilder[TRequest, Query, Response] = { - new ProductPipelineBuilder[TRequest, Query, Response]( - gateExecutor, - pipelineSelectorExecutor, - pipelineExecutor, - mixerPipelineBuilderFactory, - recommendationPipelineBuilderFactory, - statsReceiver, - pipelineExecutionLogger - ) - } -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineConfig.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/product/ProductPipelineConfig.docx new file mode 100644 index 0000000000000000000000000000000000000000..d13d45b1e0eb2ec6a5336368c0f31f481bbbb16c GIT binary patch literal 38260 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 - QualityFactorExecutorResult( - pipelineQualityFactors = - qualityFactorStatus.qualityFactorByPipeline.mapValues(_.currentValue) - ) - } - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): Query = query - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: QualityFactorExecutorResult - ): RecommendationPipelineResult[Candidate, Result] = - previousPipelineResult.copy(qualityFactorResult = Some(executorResult)) - - override def queryUpdater( - query: Query, - executorResult: QualityFactorExecutorResult - ): Query = { - query match { - case queryWithQualityFactor: HasQualityFactorStatus => - queryWithQualityFactor - .withQualityFactorStatus( - queryWithQualityFactor.qualityFactorStatus.getOrElse(QualityFactorStatus.empty) ++ - qualityFactorStatus - ).asInstanceOf[Query] - case _ => - query - } - } - } - - def gatesStep( - gates: Seq[Gate[Query]], - context: Executor.Context - ): Step[Query, GateExecutorResult] = new Step[Query, GateExecutorResult] { - override def identifier: PipelineStepIdentifier = RecommendationPipelineConfig.gatesStep - - override def executorArrow: Arrow[Query, GateExecutorResult] = - gateExecutor.arrow(gates, context) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): Query = - query - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: GateExecutorResult - ): RecommendationPipelineResult[Candidate, Result] = - previousPipelineResult.copy(gateResult = Some(executorResult)) - } - - def fetchQueryFeaturesStep( - queryFeatureHydrators: Seq[BaseQueryFeatureHydrator[Query, _]], - stepIdentifier: PipelineStepIdentifier, - updater: ResultUpdater[ - RecommendationPipelineResult[Candidate, Result], - QueryFeatureHydratorExecutor.Result - ], - context: Executor.Context - ): Step[Query, QueryFeatureHydratorExecutor.Result] = - new Step[Query, QueryFeatureHydratorExecutor.Result] { - override def identifier: PipelineStepIdentifier = stepIdentifier - - override def executorArrow: Arrow[Query, QueryFeatureHydratorExecutor.Result] = - queryFeatureHydratorExecutor.arrow( - queryFeatureHydrators, - RecommendationPipelineConfig.stepsAsyncFeatureHydrationCanBeCompletedBy, - context) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): Query = query - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: QueryFeatureHydratorExecutor.Result - ): RecommendationPipelineResult[Candidate, Result] = - updater(previousPipelineResult, executorResult) - - override def queryUpdater( - query: Query, - executorResult: QueryFeatureHydratorExecutor.Result - ): Query = - query - .withFeatureMap( - query.features - .getOrElse(FeatureMap.empty) ++ executorResult.featureMap).asInstanceOf[Query] - } - - def asyncFeaturesStep( - stepToHydrateFor: PipelineStepIdentifier, - context: Executor.Context - ): Step[AsyncFeatureMap, AsyncFeatureMapExecutorResults] = - new Step[AsyncFeatureMap, AsyncFeatureMapExecutorResults] { - override def identifier: PipelineStepIdentifier = - RecommendationPipelineConfig.asyncFeaturesStep(stepToHydrateFor) - - override def executorArrow: Arrow[AsyncFeatureMap, AsyncFeatureMapExecutorResults] = - asyncFeatureMapExecutor.arrow( - stepToHydrateFor, - identifier, - context - ) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): AsyncFeatureMap = - previousResult.mergedAsyncQueryFeatures - .getOrElse( - throw InvalidStepStateException(identifier, "MergedAsyncQueryFeatures") - ) - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: AsyncFeatureMapExecutorResults - ): RecommendationPipelineResult[Candidate, Result] = - previousPipelineResult.copy( - asyncFeatureHydrationResults = previousPipelineResult.asyncFeatureHydrationResults match { - case Some(existingResults) => Some(existingResults ++ executorResult) - case None => Some(executorResult) - }) - - override def queryUpdater( - query: Query, - executorResult: AsyncFeatureMapExecutorResults - ): Query = - if (executorResult.featureMapsByStep - .getOrElse(stepToHydrateFor, FeatureMap.empty).isEmpty) { - query - } else { - query - .withFeatureMap( - query.features - .getOrElse(FeatureMap.empty) ++ executorResult.featureMapsByStep( - stepToHydrateFor)).asInstanceOf[Query] - } - } - - def candidatePipelinesStep( - candidatePipelines: Seq[CandidatePipeline[Query]], - defaultFailOpenPolicy: FailOpenPolicy, - failOpenPolicies: Map[CandidatePipelineIdentifier, FailOpenPolicy], - qualityFactorObserverByPipeline: Map[ComponentIdentifier, QualityFactorObserver], - context: Executor.Context - ): Step[CandidatePipeline.Inputs[Query], CandidatePipelineExecutorResult] = - new Step[CandidatePipeline.Inputs[Query], CandidatePipelineExecutorResult] { - override def identifier: PipelineStepIdentifier = - RecommendationPipelineConfig.candidatePipelinesStep - - override def executorArrow: Arrow[CandidatePipeline.Inputs[ - Query - ], CandidatePipelineExecutorResult] = - candidatePipelineExecutor - .arrow( - candidatePipelines, - defaultFailOpenPolicy, - failOpenPolicies, - qualityFactorObserverByPipeline, - context - ) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): CandidatePipeline.Inputs[ - Query - ] = CandidatePipeline.Inputs(query, Seq.empty) - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: CandidatePipelineExecutorResult - ): RecommendationPipelineResult[Candidate, Result] = - previousPipelineResult.copy(candidatePipelineResults = Some(executorResult)) - - override def queryUpdater( - query: Query, - executorResult: CandidatePipelineExecutorResult - ): Query = { - val updatedFeatureMap = query.features - .getOrElse(FeatureMap.empty) ++ executorResult.queryFeatureMap - query - .withFeatureMap(updatedFeatureMap).asInstanceOf[Query] - } - } - - def dependentCandidatePipelinesStep( - candidatePipelines: Seq[CandidatePipeline[Query]], - defaultFailOpenPolicy: FailOpenPolicy, - failOpenPolicies: Map[CandidatePipelineIdentifier, FailOpenPolicy], - qualityFactorObserverByPipeline: Map[ComponentIdentifier, QualityFactorObserver], - context: Executor.Context - ): Step[CandidatePipeline.Inputs[Query], CandidatePipelineExecutorResult] = - new Step[CandidatePipeline.Inputs[Query], CandidatePipelineExecutorResult] { - override def identifier: PipelineStepIdentifier = - RecommendationPipelineConfig.dependentCandidatePipelinesStep - - override def executorArrow: Arrow[CandidatePipeline.Inputs[ - Query - ], CandidatePipelineExecutorResult] = - candidatePipelineExecutor - .arrow( - candidatePipelines, - defaultFailOpenPolicy, - failOpenPolicies, - qualityFactorObserverByPipeline, - context - ) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): CandidatePipeline.Inputs[ - Query - ] = { - val previousCandidates = previousResult.candidatePipelineResults - .getOrElse { - throw InvalidStepStateException(identifier, "Candidates") - }.candidatePipelineResults.flatMap(_.result.getOrElse(Seq.empty)) - - CandidatePipeline.Inputs(query, previousCandidates) - } - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: CandidatePipelineExecutorResult - ): RecommendationPipelineResult[Candidate, Result] = - previousPipelineResult.copy(dependentCandidatePipelineResults = Some(executorResult)) - - override def queryUpdater( - query: Query, - executorResult: CandidatePipelineExecutorResult - ): Query = { - val updatedFeatureMap = query.features - .getOrElse(FeatureMap.empty) ++ executorResult.queryFeatureMap - query - .withFeatureMap(updatedFeatureMap).asInstanceOf[Query] - } - } - - abstract class FilterStep( - filters: Seq[Filter[Query, Candidate]], - context: Executor.Context, - override val identifier: PipelineStepIdentifier) - extends Step[ - (Query, Seq[CandidateWithFeatures[Candidate]]), - FilterExecutorResult[Candidate] - ] { - - def itemCandidates( - previousResult: RecommendationPipelineResult[Candidate, Result] - ): Seq[CandidateWithDetails] - - override def executorArrow: Arrow[ - (Query, Seq[CandidateWithFeatures[Candidate]]), - FilterExecutorResult[Candidate] - ] = - filterExecutor.arrow(filters, context) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): (Query, Seq[CandidateWithFeatures[Candidate]]) = { - - val extractedItemCandidates = itemCandidates(previousResult).collect { - case itemCandidate: ItemCandidateWithDetails => itemCandidate - } - - (query, extractedItemCandidates.asInstanceOf[Seq[CandidateWithFeatures[Candidate]]]) - } - } - - def postCandidatePipelinesSelectorStep( - selectors: Seq[Selector[Query]], - context: Executor.Context - ): Step[SelectorExecutor.Inputs[Query], SelectorExecutorResult] = - new Step[SelectorExecutor.Inputs[Query], SelectorExecutorResult] { - override def identifier: PipelineStepIdentifier = - RecommendationPipelineConfig.postCandidatePipelinesSelectorsStep - - override def executorArrow: Arrow[SelectorExecutor.Inputs[ - Query - ], SelectorExecutorResult] = - selectorExecutor.arrow(selectors, context) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): SelectorExecutor.Inputs[Query] = { - val candidatePipelineResults = previousResult.candidatePipelineResults - .getOrElse { - throw InvalidStepStateException(identifier, "CandidatePipelineResults") - }.candidatePipelineResults.flatMap(_.result.getOrElse(Seq.empty)) - val dependentCandidatePipelineResults = previousResult.dependentCandidatePipelineResults - .getOrElse { - throw InvalidStepStateException(identifier, "DependentCandidatePipelineResults") - }.candidatePipelineResults.flatMap(_.result.getOrElse(Seq.empty)) - - SelectorExecutor.Inputs( - query = query, - candidatesWithDetails = candidatePipelineResults ++ dependentCandidatePipelineResults - ) - } - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: SelectorExecutorResult - ): RecommendationPipelineResult[Candidate, Result] = - previousPipelineResult.copy(postCandidatePipelinesSelectorResults = Some(executorResult)) - } - - def postCandidatePipelinesFeatureHydrationStep( - hydrators: Seq[BaseCandidateFeatureHydrator[Query, Candidate, _]], - context: Executor.Context - ): Step[ - CandidateFeatureHydratorExecutor.Inputs[Query, Candidate], - CandidateFeatureHydratorExecutorResult[Candidate] - ] = new Step[ - CandidateFeatureHydratorExecutor.Inputs[Query, Candidate], - CandidateFeatureHydratorExecutorResult[Candidate] - ] { - override def identifier: PipelineStepIdentifier = - RecommendationPipelineConfig.postCandidatePipelinesFeatureHydrationStep - - override def executorArrow: Arrow[ - CandidateFeatureHydratorExecutor.Inputs[Query, Candidate], - CandidateFeatureHydratorExecutorResult[Candidate] - ] = - candidateFeatureHydratorExecutor.arrow(hydrators, context) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): CandidateFeatureHydratorExecutor.Inputs[Query, Candidate] = { - val selectedCandidatesResult = - previousResult.postCandidatePipelinesSelectorResults.getOrElse { - throw InvalidStepStateException(identifier, "PostCandidatePipelinesSelectorResults") - }.selectedCandidates - - CandidateFeatureHydratorExecutor.Inputs( - query, - selectedCandidatesResult.asInstanceOf[Seq[CandidateWithFeatures[Candidate]]]) - } - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: CandidateFeatureHydratorExecutorResult[Candidate] - ): RecommendationPipelineResult[Candidate, Result] = previousPipelineResult.copy( - postCandidatePipelinesFeatureHydrationResults = Some(executorResult) - ) - } - - def globalFiltersStep( - filters: Seq[Filter[Query, Candidate]], - context: Executor.Context - ): Step[(Query, Seq[CandidateWithFeatures[Candidate]]), FilterExecutorResult[Candidate]] = - new FilterStep(filters, context, RecommendationPipelineConfig.globalFiltersStep) { - override def itemCandidates( - previousResult: RecommendationPipelineResult[Candidate, Result] - ): Seq[CandidateWithDetails] = { - val candidates = previousResult.postCandidatePipelinesSelectorResults - .getOrElse { - throw InvalidStepStateException(identifier, "PostCandidatePipelineSelectorResults") - }.selectedCandidates.collect { - case itemCandidate: ItemCandidateWithDetails => itemCandidate - } - - val featureMaps = previousResult.postCandidatePipelinesFeatureHydrationResults - .getOrElse { - throw InvalidStepStateException( - identifier, - "PostCandidatePipelineFeatureHydrationResults") - }.results.map(_.features) - // If no hydrators were run, this list would be empty. Otherwise, order and cardinality is - // always ensured to match. - if (featureMaps.isEmpty) { - candidates - } else { - candidates.zip(featureMaps).map { - case (candidate, featureMap) => - candidate.copy(features = candidate.features ++ featureMap) - } - } - } - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: FilterExecutorResult[Candidate] - ): RecommendationPipelineResult[Candidate, Result] = previousPipelineResult.copy( - globalFilterResults = Some(executorResult) - ) - } - - def scoringPipelinesStep( - scoringPipelines: Seq[ScoringPipeline[Query, Candidate]], - context: Executor.Context, - defaultFailOpenPolicy: FailOpenPolicy, - failOpenPolicies: Map[ScoringPipelineIdentifier, FailOpenPolicy], - qualityFactorObserverByPipeline: Map[ComponentIdentifier, QualityFactorObserver] - ): Step[ScoringPipelineExecutor.Inputs[Query], ScoringPipelineExecutorResult[ - Candidate - ]] = - new Step[ScoringPipelineExecutor.Inputs[Query], ScoringPipelineExecutorResult[ - Candidate - ]] { - override def identifier: PipelineStepIdentifier = - RecommendationPipelineConfig.scoringPipelinesStep - - override def executorArrow: Arrow[ - ScoringPipelineExecutor.Inputs[Query], - ScoringPipelineExecutorResult[Candidate] - ] = scoringPipelineExecutor.arrow( - scoringPipelines, - context, - defaultFailOpenPolicy, - failOpenPolicies, - qualityFactorObserverByPipeline - ) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): ScoringPipelineExecutor.Inputs[Query] = { - val selectedCandidates = - previousResult.postCandidatePipelinesSelectorResults.getOrElse { - throw InvalidStepStateException(identifier, "PostCandidatePipelinesSelectorResults") - }.selectedCandidates - - val itemCandidates = selectedCandidates.collect { - case itemCandidate: ItemCandidateWithDetails => itemCandidate - } - - val featureMaps = previousResult.postCandidatePipelinesFeatureHydrationResults - .getOrElse { - throw InvalidStepStateException( - identifier, - "PostCandidatePipelineFeatureHydrationResults") - }.results.map(_.features) - // If no hydrators were run, this list would be empty. Otherwise, order and cardinality is - // always ensured to match. - val updatedCandidates = if (featureMaps.isEmpty) { - itemCandidates - } else { - itemCandidates.zip(featureMaps).map { - case (candidate, featureMap) => - candidate.copy(features = candidate.features ++ featureMap) - } - } - - // Filter the original list of candidates to keep only the ones that were kept from - // filtering - val filterResults: Set[Candidate] = previousResult.globalFilterResults - .getOrElse { - throw InvalidStepStateException(identifier, "FilterResults") - }.result.toSet - - val filteredItemCandidates = updatedCandidates.filter { itemCandidate => - filterResults.contains(itemCandidate.candidate.asInstanceOf[Candidate]) - } - - ScoringPipelineExecutor.Inputs( - query, - filteredItemCandidates - ) - } - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: ScoringPipelineExecutorResult[Candidate] - ): RecommendationPipelineResult[Candidate, Result] = previousPipelineResult - .copy(scoringPipelineResults = Some(executorResult)) - } - - def resultSelectorsStep( - selectors: Seq[Selector[Query]], - context: Executor.Context - ): Step[SelectorExecutor.Inputs[Query], SelectorExecutorResult] = - new Step[SelectorExecutor.Inputs[Query], SelectorExecutorResult] { - override def identifier: PipelineStepIdentifier = - RecommendationPipelineConfig.resultSelectorsStep - - override def executorArrow: Arrow[SelectorExecutor.Inputs[ - Query - ], SelectorExecutorResult] = - selectorExecutor.arrow(selectors, context) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): SelectorExecutor.Inputs[Query] = { - - /** - * See [[ScoringPipelineExecutor]], scoringPipelineResults contains the fully re-merged - * and updated FeatureMap so there's no need to do any recomposition. Scoring Pipeline Results - * has only candidates that were kept in previous filtering, with their final merged feature - * map. - */ - val scorerResults = previousResult.scoringPipelineResults.getOrElse { - throw InvalidStepStateException(identifier, "Scores") - } - - SelectorExecutor.Inputs( - query = query, - candidatesWithDetails = scorerResults.result - ) - } - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: SelectorExecutorResult - ): RecommendationPipelineResult[Candidate, Result] = - previousPipelineResult.copy(resultSelectorResults = Some(executorResult)) - } - - def postSelectionFiltersStep( - filters: Seq[Filter[Query, Candidate]], - context: Executor.Context - ): Step[(Query, Seq[CandidateWithFeatures[Candidate]]), FilterExecutorResult[Candidate]] = - new FilterStep(filters, context, RecommendationPipelineConfig.postSelectionFiltersStep) { - - override def itemCandidates( - previousResult: RecommendationPipelineResult[Candidate, Result] - ): Seq[CandidateWithDetails] = { - previousResult.resultSelectorResults.getOrElse { - throw InvalidStepStateException(identifier, "Candidates") - }.selectedCandidates - } - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: FilterExecutorResult[Candidate] - ): RecommendationPipelineResult[Candidate, Result] = { - previousPipelineResult.copy(postSelectionFilterResults = Some(executorResult)) - } - } - - def decoratorStep( - decorator: Option[CandidateDecorator[Query, Candidate]], - context: Executor.Context - ): Step[(Query, Seq[CandidateWithFeatures[Candidate]]), CandidateDecoratorExecutorResult] = - new Step[(Query, Seq[CandidateWithFeatures[Candidate]]), CandidateDecoratorExecutorResult] { - override def identifier: PipelineStepIdentifier = RecommendationPipelineConfig.decoratorStep - - override lazy val executorArrow: Arrow[ - (Query, Seq[CandidateWithFeatures[Candidate]]), - CandidateDecoratorExecutorResult - ] = - candidateDecoratorExecutor.arrow(decorator, context) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): (Query, Seq[CandidateWithFeatures[Candidate]]) = { - - val selectorResults = previousResult.resultSelectorResults - .getOrElse { - throw InvalidStepStateException(identifier, "SelectorResults") - }.selectedCandidates - .collect { case candidate: ItemCandidateWithDetails => candidate } - - val filterResults = previousResult.postSelectionFilterResults - .getOrElse { - throw InvalidStepStateException(identifier, "PostSelectionFilterResults") - }.result.toSet - - val itemCandidateWithDetailsPostFiltering = - selectorResults - .filter(candidateWithDetails => - filterResults.contains( - candidateWithDetails.candidate - .asInstanceOf[Candidate])) - .asInstanceOf[Seq[CandidateWithFeatures[Candidate]]] - - (query, itemCandidateWithDetailsPostFiltering) - } - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: CandidateDecoratorExecutorResult - ): RecommendationPipelineResult[Candidate, Result] = - previousPipelineResult.copy( - candidateDecoratorResult = Some(executorResult) - ) - } - - def domainMarshallingStep( - domainMarshaller: DomainMarshaller[Query, DomainResultType], - context: Executor.Context - ): Step[DomainMarshallerExecutor.Inputs[Query], DomainMarshallerExecutor.Result[ - DomainResultType - ]] = - new Step[DomainMarshallerExecutor.Inputs[Query], DomainMarshallerExecutor.Result[ - DomainResultType - ]] { - override def identifier: PipelineStepIdentifier = - RecommendationPipelineConfig.domainMarshallerStep - - override def executorArrow: Arrow[ - DomainMarshallerExecutor.Inputs[Query], - DomainMarshallerExecutor.Result[DomainResultType] - ] = - domainMarshallerExecutor.arrow(domainMarshaller, context) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): DomainMarshallerExecutor.Inputs[Query] = { - val selectorResults = previousResult.resultSelectorResults.getOrElse { - throw InvalidStepStateException(identifier, "SelectorResults") - } - - val filterResults = previousResult.postSelectionFilterResults - .getOrElse { - throw InvalidStepStateException(identifier, "PostSelectionFilterResults") - }.result.toSet - - val filteredResults = selectorResults.selectedCandidates.collect { - case candidate: ItemCandidateWithDetails - if filterResults.contains(candidate.candidate.asInstanceOf[Candidate]) => - candidate - } - - val decoratorResults = previousResult.candidateDecoratorResult - .getOrElse(throw InvalidStepStateException(identifier, "DecoratorStep")).result.map { - decoration => - decoration.candidate -> decoration.presentation - }.toMap - - val finalResults = filteredResults.map { itemWithDetails => - decoratorResults.get(itemWithDetails.candidate) match { - case Some(presentation: ItemPresentation) => - if (itemWithDetails.presentation.isDefined) { - throw PipelineFailure( - category = MisconfiguredDecorator, - reason = "Item Candidate already decorated", - componentStack = Some(context.componentStack)) - } else { - itemWithDetails.copy(presentation = Some(presentation)) - } - case Some(_) => - throw PipelineFailure( - category = MisconfiguredDecorator, - reason = "Item Candidate got back a non ItemPresentation from decorator", - componentStack = Some(context.componentStack)) - case None => itemWithDetails - } - } - DomainMarshallerExecutor.Inputs( - query = query, - candidatesWithDetails = finalResults - ) - } - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: DomainMarshallerExecutor.Result[DomainResultType] - ): RecommendationPipelineResult[Candidate, Result] = previousPipelineResult.copy( - domainMarshallerResults = Some(executorResult) - ) - } - - def resultSideEffectsStep( - sideEffects: Seq[PipelineResultSideEffect[Query, DomainResultType]], - context: Executor.Context - ): Step[ - PipelineResultSideEffect.Inputs[Query, DomainResultType], - PipelineResultSideEffectExecutor.Result - ] = new Step[ - PipelineResultSideEffect.Inputs[Query, DomainResultType], - PipelineResultSideEffectExecutor.Result - ] { - override def identifier: PipelineStepIdentifier = - RecommendationPipelineConfig.resultSideEffectsStep - - override def executorArrow: Arrow[ - PipelineResultSideEffect.Inputs[Query, DomainResultType], - PipelineResultSideEffectExecutor.Result - ] = pipelineResultSideEffectExecutor.arrow(sideEffects, context) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): PipelineResultSideEffect.Inputs[Query, DomainResultType] = { - - // Re-apply decorations to the selected results - val resultSelectorResults = { - val decoratorResults = previousResult.candidateDecoratorResult - .getOrElse(throw InvalidStepStateException(identifier, "DecoratorStep")).result.map { - decoration => - decoration.candidate -> decoration.presentation - }.toMap - - val previousSelectorResults = previousResult.resultSelectorResults.getOrElse { - throw InvalidStepStateException(identifier, "SelectorResults") - } - - val filterResults = previousResult.postSelectionFilterResults - .getOrElse { - throw InvalidStepStateException(identifier, "PostSelectionFilterResults") - }.result.toSet - - val filteredSelectorResults = previousSelectorResults.selectedCandidates.collect { - case candidate: ItemCandidateWithDetails - if filterResults.contains(candidate.candidate.asInstanceOf[Candidate]) => - candidate - } - - val decoratedSelectedResults = filteredSelectorResults.map { - case itemWithDetails: ItemCandidateWithDetails => - decoratorResults.get(itemWithDetails.candidate) match { - case Some(presentation: ItemPresentation) => - if (itemWithDetails.presentation.isDefined) { - throw PipelineFailure( - category = MisconfiguredDecorator, - reason = "Item Candidate already decorated", - componentStack = Some(context.componentStack)) - } else { - itemWithDetails.copy(presentation = Some(presentation)) - } - case Some(_) => - throw PipelineFailure( - category = MisconfiguredDecorator, - reason = "Item Candidate got back a non ItemPresentation from decorator", - componentStack = Some(context.componentStack)) - case None => itemWithDetails - } - case item => - // This branch should be impossible to hit since we do a .collect on ItemCandidateWithDetails - // as part of executing the candidate pipelines. - throw PipelineFailure( - category = IllegalStateFailure, - reason = - s"Only ItemCandidateWithDetails expected in pipeline, found: ${item.toString}", - componentStack = Some(context.componentStack) - ) - } - - previousSelectorResults.copy(selectedCandidates = decoratedSelectedResults) - } - - val domainMarshallerResults = previousResult.domainMarshallerResults.getOrElse { - throw InvalidStepStateException(identifier, "DomainMarshallerResults") - } - - PipelineResultSideEffect.Inputs[Query, DomainResultType]( - query = query, - selectedCandidates = resultSelectorResults.selectedCandidates, - remainingCandidates = resultSelectorResults.remainingCandidates, - droppedCandidates = resultSelectorResults.droppedCandidates, - response = domainMarshallerResults.result.asInstanceOf[DomainResultType] - ) - } - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: PipelineResultSideEffectExecutor.Result - ): RecommendationPipelineResult[Candidate, Result] = - previousPipelineResult.copy(resultSideEffectResults = Some(executorResult)) - } - - def transportMarshallingStep( - transportMarshaller: TransportMarshaller[DomainResultType, Result], - context: Executor.Context - ): Step[ - TransportMarshallerExecutor.Inputs[DomainResultType], - TransportMarshallerExecutor.Result[Result] - ] = new Step[TransportMarshallerExecutor.Inputs[ - DomainResultType - ], TransportMarshallerExecutor.Result[Result]] { - override def identifier: PipelineStepIdentifier = - RecommendationPipelineConfig.transportMarshallerStep - - override def executorArrow: Arrow[TransportMarshallerExecutor.Inputs[ - DomainResultType - ], TransportMarshallerExecutor.Result[Result]] = - transportMarshallerExecutor.arrow(transportMarshaller, context) - - override def inputAdaptor( - query: Query, - previousResult: RecommendationPipelineResult[Candidate, Result] - ): TransportMarshallerExecutor.Inputs[DomainResultType] = { - val domainMarshallingResults = previousResult.domainMarshallerResults.getOrElse { - throw InvalidStepStateException(identifier, "DomainMarshallerResults") - } - - // Since the PipelineResult just uses HasMarshalling - val domainResult = domainMarshallingResults.result.asInstanceOf[DomainResultType] - - TransportMarshallerExecutor.Inputs(domainResult) - } - - override def resultUpdater( - previousPipelineResult: RecommendationPipelineResult[Candidate, Result], - executorResult: TransportMarshallerExecutor.Result[Result] - ): RecommendationPipelineResult[Candidate, Result] = previousPipelineResult.copy( - transportMarshallerResults = Some(executorResult), - result = Some(executorResult.result) - ) - } - - def build( - parentComponentIdentifierStack: ComponentIdentifierStack, - config: RecommendationPipelineConfig[ - Query, - Candidate, - DomainResultType, - Result - ] - ): RecommendationPipeline[Query, Candidate, Result] = { - val pipelineIdentifier = config.identifier - - val context = Executor.Context( - PipelineFailureClassifier( - config.failureClassifier.orElse(StoppedGateException.classifier(ProductDisabled))), - parentComponentIdentifierStack.push(pipelineIdentifier) - ) - - val decorator = config.decorator.map(decorator => - CandidateDecorator.copyWithUpdatedIdentifier(decorator, pipelineIdentifier)) - - val qualityFactorStatus: QualityFactorStatus = - QualityFactorStatus.build(config.qualityFactorConfigs) - - val qualityFactorObserverByPipeline = - qualityFactorStatus.qualityFactorByPipeline.mapValues { qualityFactor => - qualityFactor.buildObserver() - } - - buildGaugesForQualityFactor(pipelineIdentifier, qualityFactorStatus, statsReceiver) - - val candidatePipelines: Seq[CandidatePipeline[Query]] = config.candidatePipelines.map { - pipelineConfig: CandidatePipelineConfig[Query, _, _, _] => - pipelineConfig.build(context.componentStack, candidatePipelineBuilderFactory) - } - - val dependentCandidatePipelines: Seq[CandidatePipeline[Query]] = - config.dependentCandidatePipelines.map { - pipelineConfig: DependentCandidatePipelineConfig[Query, _, _, _] => - pipelineConfig.build(context.componentStack, candidatePipelineBuilderFactory) - } - - val scoringPipelines: Seq[ScoringPipeline[Query, Candidate]] = config.scoringPipelines.map { - pipelineConfig: ScoringPipelineConfig[Query, Candidate] => - pipelineConfig.build(context.componentStack, scoringPipelineBuilderFactory) - } - - val builtSteps = Seq( - qualityFactorStep(qualityFactorStatus), - gatesStep(config.gates, context), - fetchQueryFeaturesStep( - config.fetchQueryFeatures, - RecommendationPipelineConfig.fetchQueryFeaturesStep, - (previousPipelineResult, executorResult) => - previousPipelineResult.copy(queryFeatures = Some(executorResult)), - context - ), - fetchQueryFeaturesStep( - config.fetchQueryFeaturesPhase2, - RecommendationPipelineConfig.fetchQueryFeaturesPhase2Step, - (previousPipelineResult, executorResult) => - previousPipelineResult.copy( - queryFeaturesPhase2 = Some(executorResult), - mergedAsyncQueryFeatures = Some( - previousPipelineResult.queryFeatures - .getOrElse(throw InvalidStepStateException( - RecommendationPipelineConfig.fetchQueryFeaturesPhase2Step, - "QueryFeatures")) - .asyncFeatureMap ++ executorResult.asyncFeatureMap) - ), - context - ), - asyncFeaturesStep(RecommendationPipelineConfig.candidatePipelinesStep, context), - candidatePipelinesStep( - candidatePipelines, - config.defaultFailOpenPolicy, - config.candidatePipelineFailOpenPolicies, - qualityFactorObserverByPipeline, - context), - asyncFeaturesStep(RecommendationPipelineConfig.dependentCandidatePipelinesStep, context), - dependentCandidatePipelinesStep( - dependentCandidatePipelines, - config.defaultFailOpenPolicy, - config.candidatePipelineFailOpenPolicies, - qualityFactorObserverByPipeline, - context), - asyncFeaturesStep(RecommendationPipelineConfig.postCandidatePipelinesSelectorsStep, context), - postCandidatePipelinesSelectorStep(config.postCandidatePipelinesSelectors, context), - asyncFeaturesStep( - RecommendationPipelineConfig.postCandidatePipelinesFeatureHydrationStep, - context), - postCandidatePipelinesFeatureHydrationStep( - config.postCandidatePipelinesFeatureHydration, - context), - asyncFeaturesStep(RecommendationPipelineConfig.globalFiltersStep, context), - globalFiltersStep(config.globalFilters, context), - asyncFeaturesStep(RecommendationPipelineConfig.scoringPipelinesStep, context), - scoringPipelinesStep( - scoringPipelines, - context, - config.defaultFailOpenPolicy, - config.scoringPipelineFailOpenPolicies, - qualityFactorObserverByPipeline - ), - asyncFeaturesStep(RecommendationPipelineConfig.resultSelectorsStep, context), - resultSelectorsStep(config.resultSelectors, context), - asyncFeaturesStep(RecommendationPipelineConfig.postSelectionFiltersStep, context), - postSelectionFiltersStep(config.postSelectionFilters, context), - asyncFeaturesStep(RecommendationPipelineConfig.decoratorStep, context), - decoratorStep(decorator, context), - domainMarshallingStep(config.domainMarshaller, context), - asyncFeaturesStep(RecommendationPipelineConfig.resultSideEffectsStep, context), - resultSideEffectsStep(config.resultSideEffects, context), - transportMarshallingStep(config.transportMarshaller, context) - ) - - val finalArrow = buildCombinedArrowFromSteps( - steps = builtSteps, - context = context, - initialEmptyResult = RecommendationPipelineResult.empty, - stepsInOrderFromConfig = RecommendationPipelineConfig.stepsInOrder - ) - - val configFromBuilder = config - new RecommendationPipeline[Query, Candidate, Result] { - override private[core] val config: RecommendationPipelineConfig[ - Query, - Candidate, - _, - Result - ] = - configFromBuilder - override val arrow: Arrow[Query, RecommendationPipelineResult[Candidate, Result]] = - finalArrow - override val identifier: RecommendationPipelineIdentifier = pipelineIdentifier - override val alerts: Seq[Alert] = config.alerts - override val children: Seq[Component] = - config.gates ++ - config.fetchQueryFeatures ++ - candidatePipelines ++ - dependentCandidatePipelines ++ - config.postCandidatePipelinesFeatureHydration ++ - config.globalFilters ++ - scoringPipelines ++ - config.postSelectionFilters ++ - config.resultSideEffects ++ - decorator.toSeq ++ - Seq(config.domainMarshaller, config.transportMarshaller) - } - } -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineBuilderFactory.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineBuilderFactory.docx new file mode 100644 index 0000000000000000000000000000000000000000..004f1fadba6949bb96d7981e4d6e24f9fe4019a4 GIT binary patch literal 37405 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 z z10`Yl8yH1wQ8c3+FNtmr`aCJZoYo?kIY^Tz=-SaIUJ%-g%b?oPreV-cK%a;}n6R`Q zY68l%1iF6oQDcODiz=vo^f6>~BhdTb2qO#|vG&H%4M6YcA`IYcLN)+fw-?DYEUwvCQ$+qP}nwr$(!bZpyp=cJ!!?|0)p=llNDy4IXE#*I-` zbJkc(Rst9V82|tP0w6ezRkcdKC@u*Q0AL&p008N0R723l+R@0`QAg3u*2qDN#?{KQ zDM?CZjSoKf>H{U2mIvQM@Ec0`t}VGORUD>JO~wP8+A{5hB+$##BuALitZWDvO3n1NI z?Er@kV$hX9uDXAc>I*{P zeXCv?mkAZdQ?UB7$a@9#O+@pc{Re<=1JlF%UhxQzl9X6CD+v{@XbT-n74r0^PF@yUdy5vY zc6Z4MX{n<2;T~P>85l2S6ksh=7F!0W=&LRG=PmWAZc*GccId1_Btv%k5x6Su2C7-6 zM?4V0@fndmu^21k^H6Rg4QWs`T+Z@W3kd0aw-SXb4J=DQxQBKmS8?*9p0fe75s_?W z4lk){+qZNHf97p=6xH?RJB_tPP)L(Dq(@^bgcGwvx)&5Xnu#utZOcS$f9;Sp)u_0k zISvq%QP6fJz6YD?L>y!@Y2+%IZQc8ENKH&MrQ$wq?6esm=VLpAdrnuEa;4rBv+M;i zHmkvM^`8cX216^DeO>0WUj`w38DwZp*K@V{i25BF~DSkRG6e7k=^-o|jS% zyMu=i7W)o(8ZIu1?6=(Z$iysVIg!mWwY67hrJhUajJw4-a%ao4!P?XUY!DP5gclNb zp-{sA(@iJu>CSOQUe143C#F)lzRLTMggSn{Br z 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 kM`0$An{QUPRkli` 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 KJhU=?Ui}Zs5L?y& literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineConfig.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineConfig.scala deleted file mode 100644 index 1e2fa59c2..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineConfig.scala +++ /dev/null @@ -1,262 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.recommendation - -import com.twitter.product_mixer.component_library.selector.InsertAppendResults -import com.twitter.product_mixer.core.functional_component.common.AllPipelines -import com.twitter.product_mixer.core.functional_component.common.alert.Alert -import com.twitter.product_mixer.core.functional_component.decorator.CandidateDecorator -import com.twitter.product_mixer.core.functional_component.feature_hydrator.BaseCandidateFeatureHydrator -import com.twitter.product_mixer.core.functional_component.feature_hydrator.BaseQueryFeatureHydrator -import com.twitter.product_mixer.core.functional_component.filter.Filter -import com.twitter.product_mixer.core.functional_component.gate.Gate -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.functional_component.marshaller.TransportMarshaller -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.ComponentIdentifier -import com.twitter.product_mixer.core.model.common.identifier.ComponentIdentifierStack -import com.twitter.product_mixer.core.model.common.identifier.RecommendationPipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.ScoringPipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.PipelineStepIdentifier -import com.twitter.product_mixer.core.model.marshalling.HasMarshalling -import com.twitter.product_mixer.core.pipeline.FailOpenPolicy -import com.twitter.product_mixer.core.pipeline.PipelineConfig -import com.twitter.product_mixer.core.pipeline.PipelineConfigCompanion -import com.twitter.product_mixer.core.pipeline.PipelineQuery -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.pipeline_failure.ClosedGate -import com.twitter.product_mixer.core.pipeline.pipeline_failure.PipelineFailure -import com.twitter.product_mixer.core.pipeline.scoring.ScoringPipelineConfig -import com.twitter.product_mixer.core.quality_factor.QualityFactorConfig - -/** - * This is the configuration necessary to generate a Recommendation Pipeline. Product code should create a - * RecommendationPipelineConfig, and then use a RecommendationPipelineBuilder to get the final RecommendationPipeline which can - * process requests. - * - * @tparam Query - The domain model for the query or request - * @tparam Candidate - The type of the candidates that the Candidate Pipelines are generating - * @tparam UnmarshalledResultType - The result type of the pipeline, but before marshalling to a wire protocol like URT - * @tparam Result - The final result that will be served to users - */ -trait RecommendationPipelineConfig[ - Query <: PipelineQuery, - Candidate <: UniversalNoun[Any], - UnmarshalledResultType <: HasMarshalling, - Result] - extends PipelineConfig { - - override val identifier: RecommendationPipelineIdentifier - - /** - * Recommendation Pipeline Gates will be executed before any other step (including retrieval from candidate - * pipelines). They're executed sequentially, and any "Stop" result will prevent pipeline execution. - */ - def gates: Seq[Gate[Query]] = Seq.empty - - /** - * A recommendation pipeline can fetch query-level features before candidate pipelines are executed. - */ - def fetchQueryFeatures: Seq[BaseQueryFeatureHydrator[Query, _]] = Seq.empty - - /** - * Candidate pipelines retrieve candidates for possible inclusion in the result - */ - def fetchQueryFeaturesPhase2: Seq[BaseQueryFeatureHydrator[Query, _]] = Seq.empty - - /** - * What candidate pipelines should this Recommendations Pipeline get candidate from? - */ - def candidatePipelines: Seq[CandidatePipelineConfig[Query, _, _, _]] - - /** - * Dependent candidate pipelines to retrieve candidates that depend on the result of [[candidatePipelines]] - * [[DependentCandidatePipelineConfig]] have access to the list of previously retrieved & decorated - * candidates for use in constructing the query object. - */ - def dependentCandidatePipelines: Seq[DependentCandidatePipelineConfig[Query, _, _, _]] = Seq.empty - - /** - * Takes final ranked list of candidates & apply any business logic (e.g, deduplicating and merging - * candidates before scoring). - */ - def postCandidatePipelinesSelectors: Seq[Selector[Query]] = Seq(InsertAppendResults(AllPipelines)) - - /** - * After selectors are run, you can fetch features for each candidate. - * The existing features from previous hydrations are passed in as inputs. You are not expected to - * put them into the resulting feature map yourself - they will be merged for you by the platform. - */ - def postCandidatePipelinesFeatureHydration: Seq[ - BaseCandidateFeatureHydrator[Query, Candidate, _] - ] = - Seq.empty - - /** - * Global filters to run on all candidates. - */ - def globalFilters: Seq[Filter[Query, Candidate]] = Seq.empty - - /** - * By default, a Recommendation Pipeline will fail closed - if any candidate or scoring - * pipeline fails to return a result, then the Recommendation Pipeline will not return a result. - * You can adjust this default policy, or provide specific policies to specific pipelines. - * Those specific policies will take priority. - * - * FailOpenPolicy.All will always fail open (the RecommendationPipeline will continue without that pipeline) - * FailOpenPolicy.Never will always fail closed (the RecommendationPipeline will fail if that pipeline fails) - * - * There's a default policy, and a specific Map of policies that takes precedence. - */ - def defaultFailOpenPolicy: FailOpenPolicy = FailOpenPolicy(Set(ClosedGate)) - def candidatePipelineFailOpenPolicies: Map[CandidatePipelineIdentifier, FailOpenPolicy] = - Map.empty - def scoringPipelineFailOpenPolicies: Map[ScoringPipelineIdentifier, FailOpenPolicy] = Map.empty - - /** - ** [[qualityFactorConfigs]] associates [[QualityFactorConfig]]s to specific candidate pipelines - * using [[ComponentIdentifier]]. - */ - def qualityFactorConfigs: Map[ComponentIdentifier, QualityFactorConfig] = - Map.empty - - /** - * Scoring pipelines for scoring candidates. - * @note These do not drop or re-order candidates, you should do those in the sub-sequent selectors - * step based off of the scores on candidates set in those [[ScoringPipeline]]s. - */ - def scoringPipelines: Seq[ScoringPipelineConfig[Query, Candidate]] - - /** - * Takes final ranked list of candidates & apply any business logic (e.g, capping number - * of ad accounts or pacing ad accounts). - */ - def resultSelectors: Seq[Selector[Query]] - - /** - * Takes the final selected list of candidates and applies a final list of filters. - * Useful for doing very expensive filtering at the end of your pipeline. - */ - def postSelectionFilters: Seq[Filter[Query, Candidate]] = Seq.empty - - /** - * Decorators allow for adding Presentations to candidates. While the Presentation can contain any - * arbitrary data, Decorators are often used to add a UrtItemPresentation for URT item support. Most - * customers will prefer to set a decorator in their respective candidate pipeline, however, a final - * global one is available for those that do global decoration as late possible to avoid unnecessary hydrations. - * @note This decorator can only return an ItemPresentation. - * @note This decorator cannot decorate an already decorated candidate from the prior decorator - * step in candidate pipelines. - */ - def decorator: Option[CandidateDecorator[Query, Candidate]] = None - - /** - * Domain marshaller transforms the selections into the model expected by the marshaller - */ - def domainMarshaller: DomainMarshaller[Query, UnmarshalledResultType] - - /** - * Mixer result side effects that are executed after selection and domain marshalling - */ - def resultSideEffects: Seq[PipelineResultSideEffect[Query, UnmarshalledResultType]] = Seq() - - /** - * Transport marshaller transforms the model into our line-level API like URT or JSON - */ - def transportMarshaller: TransportMarshaller[UnmarshalledResultType, Result] - - /** - * A pipeline can define a partial function to rescue failures here. They will be treated as failures - * from a monitoring standpoint, and cancellation exceptions will always be propagated (they cannot be caught here). - */ - def failureClassifier: PartialFunction[Throwable, PipelineFailure] = PartialFunction.empty - - /** - * Alerts can be used to indicate the pipeline's service level objectives. Alerts and - * dashboards will be automatically created based on this information. - */ - val alerts: Seq[Alert] = Seq.empty - - /** - * This method is used by the product mixer framework to build the pipeline. - */ - private[core] final def build( - parentComponentIdentifierStack: ComponentIdentifierStack, - builder: RecommendationPipelineBuilderFactory - ): RecommendationPipeline[Query, Candidate, Result] = - builder.get.build(parentComponentIdentifierStack, this) -} - -object RecommendationPipelineConfig extends PipelineConfigCompanion { - val qualityFactorStep: PipelineStepIdentifier = PipelineStepIdentifier("QualityFactor") - val gatesStep: PipelineStepIdentifier = PipelineStepIdentifier("Gates") - val fetchQueryFeaturesStep: PipelineStepIdentifier = PipelineStepIdentifier("FetchQueryFeatures") - val fetchQueryFeaturesPhase2Step: PipelineStepIdentifier = PipelineStepIdentifier( - "FetchQueryFeaturesPhase2") - val candidatePipelinesStep: PipelineStepIdentifier = PipelineStepIdentifier("CandidatePipelines") - val dependentCandidatePipelinesStep: PipelineStepIdentifier = - PipelineStepIdentifier("DependentCandidatePipelines") - val postCandidatePipelinesSelectorsStep: PipelineStepIdentifier = - PipelineStepIdentifier("PostCandidatePipelinesSelectors") - val postCandidatePipelinesFeatureHydrationStep: PipelineStepIdentifier = - PipelineStepIdentifier("PostCandidatePipelinesFeatureHydration") - val globalFiltersStep: PipelineStepIdentifier = PipelineStepIdentifier("GlobalFilters") - val scoringPipelinesStep: PipelineStepIdentifier = PipelineStepIdentifier("ScoringPipelines") - val resultSelectorsStep: PipelineStepIdentifier = PipelineStepIdentifier("ResultSelectors") - val postSelectionFiltersStep: PipelineStepIdentifier = PipelineStepIdentifier( - "PostSelectionFilters") - val decoratorStep: PipelineStepIdentifier = PipelineStepIdentifier("Decorator") - val domainMarshallerStep: PipelineStepIdentifier = PipelineStepIdentifier("DomainMarshaller") - val resultSideEffectsStep: PipelineStepIdentifier = PipelineStepIdentifier("ResultSideEffects") - val transportMarshallerStep: PipelineStepIdentifier = PipelineStepIdentifier( - "TransportMarshaller") - - /** All the Steps which are executed by a [[RecommendationPipeline]] in the order in which they are run */ - override val stepsInOrder: Seq[PipelineStepIdentifier] = Seq( - qualityFactorStep, - gatesStep, - fetchQueryFeaturesStep, - fetchQueryFeaturesPhase2Step, - asyncFeaturesStep(candidatePipelinesStep), - candidatePipelinesStep, - asyncFeaturesStep(dependentCandidatePipelinesStep), - dependentCandidatePipelinesStep, - asyncFeaturesStep(postCandidatePipelinesSelectorsStep), - postCandidatePipelinesSelectorsStep, - asyncFeaturesStep(postCandidatePipelinesFeatureHydrationStep), - postCandidatePipelinesFeatureHydrationStep, - asyncFeaturesStep(globalFiltersStep), - globalFiltersStep, - asyncFeaturesStep(scoringPipelinesStep), - scoringPipelinesStep, - asyncFeaturesStep(resultSelectorsStep), - resultSelectorsStep, - asyncFeaturesStep(postSelectionFiltersStep), - postSelectionFiltersStep, - asyncFeaturesStep(decoratorStep), - decoratorStep, - domainMarshallerStep, - asyncFeaturesStep(resultSideEffectsStep), - resultSideEffectsStep, - transportMarshallerStep - ) - - /** - * All the Steps which an [[com.twitter.product_mixer.core.functional_component.feature_hydrator.AsyncHydrator AsyncHydrator]] - * can be configured to [[com.twitter.product_mixer.core.functional_component.feature_hydrator.AsyncHydrator.hydrateBefore hydrateBefore]] - */ - override val stepsAsyncFeatureHydrationCanBeCompletedBy: Set[PipelineStepIdentifier] = Set( - candidatePipelinesStep, - dependentCandidatePipelinesStep, - postCandidatePipelinesSelectorsStep, - postCandidatePipelinesFeatureHydrationStep, - globalFiltersStep, - scoringPipelinesStep, - resultSelectorsStep, - postSelectionFiltersStep, - decoratorStep, - resultSideEffectsStep, - ) -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineResult.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineResult.docx new file mode 100644 index 0000000000000000000000000000000000000000..cbe7da59f531be390e705e38339f5dbd709ad3c5 GIT binary patch literal 37561 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 J52rp54*-EpJLCWW literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineResult.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineResult.scala deleted file mode 100644 index 9e75c8db3..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineResult.scala +++ /dev/null @@ -1,84 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.recommendation - -import com.twitter.product_mixer.core.feature.featuremap.asyncfeaturemap.AsyncFeatureMap -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.model.marshalling.HasMarshalling -import com.twitter.product_mixer.core.pipeline.PipelineResult -import com.twitter.product_mixer.core.pipeline.pipeline_failure.PipelineFailure -import com.twitter.product_mixer.core.service.async_feature_map_executor.AsyncFeatureMapExecutorResults -import com.twitter.product_mixer.core.service.candidate_decorator_executor.CandidateDecoratorExecutorResult -import com.twitter.product_mixer.core.service.candidate_feature_hydrator_executor.CandidateFeatureHydratorExecutorResult -import com.twitter.product_mixer.core.service.candidate_pipeline_executor.CandidatePipelineExecutorResult -import com.twitter.product_mixer.core.service.domain_marshaller_executor.DomainMarshallerExecutor -import com.twitter.product_mixer.core.service.filter_executor.FilterExecutorResult -import com.twitter.product_mixer.core.service.gate_executor.GateExecutorResult -import com.twitter.product_mixer.core.service.pipeline_result_side_effect_executor.PipelineResultSideEffectExecutor -import com.twitter.product_mixer.core.service.quality_factor_executor.QualityFactorExecutorResult -import com.twitter.product_mixer.core.service.query_feature_hydrator_executor.QueryFeatureHydratorExecutor -import com.twitter.product_mixer.core.service.scoring_pipeline_executor.ScoringPipelineExecutorResult -import com.twitter.product_mixer.core.service.selector_executor.SelectorExecutorResult -import com.twitter.product_mixer.core.service.transport_marshaller_executor.TransportMarshallerExecutor - -case class RecommendationPipelineResult[Candidate <: UniversalNoun[Any], ResultType]( - qualityFactorResult: Option[QualityFactorExecutorResult], - gateResult: Option[GateExecutorResult], - queryFeatures: Option[QueryFeatureHydratorExecutor.Result], - queryFeaturesPhase2: Option[QueryFeatureHydratorExecutor.Result], - mergedAsyncQueryFeatures: Option[AsyncFeatureMap], - candidatePipelineResults: Option[CandidatePipelineExecutorResult], - dependentCandidatePipelineResults: Option[CandidatePipelineExecutorResult], - postCandidatePipelinesSelectorResults: Option[SelectorExecutorResult], - postCandidatePipelinesFeatureHydrationResults: Option[ - CandidateFeatureHydratorExecutorResult[Candidate] - ], - globalFilterResults: Option[FilterExecutorResult[Candidate]], - scoringPipelineResults: Option[ScoringPipelineExecutorResult[Candidate]], - resultSelectorResults: Option[SelectorExecutorResult], - postSelectionFilterResults: Option[FilterExecutorResult[Candidate]], - candidateDecoratorResult: Option[CandidateDecoratorExecutorResult], - domainMarshallerResults: Option[DomainMarshallerExecutor.Result[HasMarshalling]], - resultSideEffectResults: Option[PipelineResultSideEffectExecutor.Result], - asyncFeatureHydrationResults: Option[AsyncFeatureMapExecutorResults], - transportMarshallerResults: Option[TransportMarshallerExecutor.Result[ResultType]], - failure: Option[PipelineFailure], - result: Option[ResultType]) - extends PipelineResult[ResultType] { - override val resultSize: Int = result match { - case Some(seqResult @ Seq(_)) => seqResult.length - case Some(_) => 1 - case None => 0 - } - - override def withFailure( - failure: PipelineFailure - ): RecommendationPipelineResult[Candidate, ResultType] = - copy(failure = Some(failure)) - override def withResult(result: ResultType): RecommendationPipelineResult[Candidate, ResultType] = - copy(result = Some(result)) -} - -object RecommendationPipelineResult { - def empty[A <: UniversalNoun[Any], B]: RecommendationPipelineResult[A, B] = - RecommendationPipelineResult( - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None, - None - ) -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/BUILD b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/BUILD deleted file mode 100644 index 43c431a64..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/BUILD +++ /dev/null @@ -1,36 +0,0 @@ -scala_library( - sources = ["*.scala"], - compiler_option_sets = ["fatal_warnings"], - platform = "java8", - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/javax/inject:javax.inject", - "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/selector:insert_append_results", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/gate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/scorer", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/selector", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/util", - "stitch/stitch-core", - "util/util-core:scala", - ], - exports = [ - "3rdparty/jvm/javax/inject:javax.inject", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/pipeline_failure", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/gate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/scorer", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/selector", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/product/guice", - "stitch/stitch-core", - ], -) diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/BUILD.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..6a6af16b559e57c72e28a7ff5dd6719ef37b48ee GIT binary patch literal 37020 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

uFuohj3n^%i(O%JlwT?~B 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 bGR1aAhZZKRzzq5}tN1{!!1QR#`u6Q#Y#-}+ literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/NewScoringPipelineBuilder.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/NewScoringPipelineBuilder.scala deleted file mode 100644 index 9b3bf2a26..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/NewScoringPipelineBuilder.scala +++ /dev/null @@ -1,202 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.scoring - -import com.twitter.product_mixer.core.functional_component.common.alert.Alert -import com.twitter.product_mixer.core.functional_component.decorator.Decoration -import com.twitter.product_mixer.core.functional_component.scorer.ScoredCandidateResult -import com.twitter.product_mixer.core.gate.ParamGate -import com.twitter.product_mixer.core.gate.ParamGate._ -import com.twitter.product_mixer.core.model.common.CandidateWithFeatures -import com.twitter.product_mixer.core.model.common.Component -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.model.common.identifier.ComponentIdentifierStack -import com.twitter.product_mixer.core.model.common.identifier.PipelineStepIdentifier -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.NewPipelineBuilder -import com.twitter.product_mixer.core.pipeline.NewPipelineArrowBuilder -import com.twitter.product_mixer.core.pipeline.NewPipelineResult -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.pipeline_failure.ClosedGate -import com.twitter.product_mixer.core.pipeline.pipeline_failure.PipelineFailureClassifier -import com.twitter.product_mixer.core.pipeline.state.HasCandidatesWithDetails -import com.twitter.product_mixer.core.pipeline.state.HasCandidatesWithFeatures -import com.twitter.product_mixer.core.pipeline.state.HasExecutorResults -import com.twitter.product_mixer.core.pipeline.state.HasQuery -import com.twitter.product_mixer.core.pipeline.state.HasResult -import com.twitter.product_mixer.core.pipeline.step.candidate_feature_hydrator.CandidateFeatureHydratorStep -import com.twitter.product_mixer.core.pipeline.step.gate.GateStep -import com.twitter.product_mixer.core.pipeline.step.scorer.ScorerStep -import com.twitter.product_mixer.core.pipeline.step.selector.SelectorStep -import com.twitter.product_mixer.core.service.Executor -import com.twitter.product_mixer.core.service.ExecutorResult -import com.twitter.product_mixer.core.service.candidate_feature_hydrator_executor.CandidateFeatureHydratorExecutorResult -import com.twitter.product_mixer.core.service.gate_executor.GateExecutorResult -import com.twitter.product_mixer.core.service.gate_executor.StoppedGateException -import com.twitter.product_mixer.core.service.selector_executor.SelectorExecutorResult -import com.twitter.stitch.Arrow -import javax.inject.Inject -import scala.collection.immutable.ListMap - -/** - * NewScoringPipelineBuilder builds [[ScoringPipeline]]s from [[ScoringPipelineConfig]]s. - * New because it's meant to eventually replace [[ScoringPipelineBuilder]] - * You should inject a [[ScoringPipelineBuilderFactory]] and call `.get` to build these. - * - * @see [[ScoringPipelineConfig]] for the description of the type parameters - * @tparam Query the type of query these accept. - * @tparam Candidate the domain model for the candidate being scored - */ -class NewScoringPipelineBuilder[Query <: PipelineQuery, Candidate <: UniversalNoun[Any]] @Inject() ( - selectionStep: SelectorStep[Query, ScoringPipelineState[Query, Candidate]], - gateStep: GateStep[Query, ScoringPipelineState[Query, Candidate]], - candidateFeatureHydrationStep: CandidateFeatureHydratorStep[ - Query, - Candidate, - ScoringPipelineState[Query, Candidate] - ], - scorerStep: ScorerStep[Query, Candidate, ScoringPipelineState[Query, Candidate]]) - extends NewPipelineBuilder[ScoringPipelineConfig[Query, Candidate], Seq[ - CandidateWithFeatures[Candidate] - ], ScoringPipelineState[Query, Candidate], ScoringPipeline[Query, Candidate]] { - - override def build( - parentComponentIdentifierStack: ComponentIdentifierStack, - arrowBuilder: NewPipelineArrowBuilder[ArrowResult, ArrowState], - scoringPipelineConfig: ScoringPipelineConfig[Query, Candidate] - ): ScoringPipeline[Query, Candidate] = { - val pipelineIdentifier = scoringPipelineConfig.identifier - - val context = Executor.Context( - PipelineFailureClassifier( - scoringPipelineConfig.failureClassifier.orElse( - StoppedGateException.classifier(ClosedGate))), - parentComponentIdentifierStack.push(pipelineIdentifier) - ) - - val enabledGateOpt = scoringPipelineConfig.enabledDeciderParam.map { deciderParam => - ParamGate(pipelineIdentifier + EnabledGateSuffix, deciderParam) - } - val supportedClientGateOpt = scoringPipelineConfig.supportedClientParam.map { param => - ParamGate(pipelineIdentifier + SupportedClientGateSuffix, param) - } - - /** - * Evaluate enabled decider gate first since if it's off, there is no reason to proceed - * Next evaluate supported client feature switch gate, followed by customer configured gates - */ - val allGates = - enabledGateOpt.toSeq ++ supportedClientGateOpt.toSeq ++ scoringPipelineConfig.gates - - val underlyingArrow = arrowBuilder - .add(ScoringPipelineConfig.gatesStep, gateStep, allGates) - .add(ScoringPipelineConfig.selectorsStep, selectionStep, scoringPipelineConfig.selectors) - .add( - ScoringPipelineConfig.preScoringFeatureHydrationPhase1Step, - candidateFeatureHydrationStep, - scoringPipelineConfig.preScoringFeatureHydrationPhase1) - .add( - ScoringPipelineConfig.preScoringFeatureHydrationPhase2Step, - candidateFeatureHydrationStep, - scoringPipelineConfig.preScoringFeatureHydrationPhase2) - .add(ScoringPipelineConfig.scorersStep, scorerStep, scoringPipelineConfig.scorers).buildArrow( - context) - - val finalArrow = Arrow - .map { inputs: ScoringPipeline.Inputs[Query] => - ScoringPipelineState[Query, Candidate](inputs.query, inputs.candidates, ListMap.empty) - }.andThen(underlyingArrow).map { pipelineResult => - ScoringPipelineResult( - gateResults = pipelineResult.executorResultsByPipelineStep - .get(ScoringPipelineConfig.gatesStep) - .map(_.asInstanceOf[GateExecutorResult]), - selectorResults = pipelineResult.executorResultsByPipelineStep - .get(ScoringPipelineConfig.selectorsStep) - .map(_.asInstanceOf[SelectorExecutorResult]), - preScoringHydrationPhase1Result = pipelineResult.executorResultsByPipelineStep - .get(ScoringPipelineConfig.preScoringFeatureHydrationPhase1Step) - .map(_.asInstanceOf[CandidateFeatureHydratorExecutorResult[Candidate]]), - preScoringHydrationPhase2Result = pipelineResult.executorResultsByPipelineStep - .get(ScoringPipelineConfig.preScoringFeatureHydrationPhase2Step) - .map(_.asInstanceOf[CandidateFeatureHydratorExecutorResult[Candidate]]), - scorerResults = pipelineResult.executorResultsByPipelineStep - .get(ScoringPipelineConfig.scorersStep) - .map(_.asInstanceOf[CandidateFeatureHydratorExecutorResult[Candidate]]), - failure = pipelineResult match { - case failure: NewPipelineResult.Failure => - Some(failure.failure) - case _ => None - }, - result = pipelineResult match { - case result: NewPipelineResult.Success[Seq[CandidateWithFeatures[Candidate]]] => - Some(result.result.map { candidateWithFeatures => - ScoredCandidateResult( - candidateWithFeatures.candidate, - candidateWithFeatures.features) - }) - case _ => None - } - ) - } - - new ScoringPipeline[Query, Candidate] { - override val arrow: Arrow[ScoringPipeline.Inputs[Query], ScoringPipelineResult[Candidate]] = - finalArrow - - override val identifier: ScoringPipelineIdentifier = scoringPipelineConfig.identifier - - override val alerts: Seq[Alert] = scoringPipelineConfig.alerts - - override val children: Seq[Component] = - allGates ++ scoringPipelineConfig.preScoringFeatureHydrationPhase1 ++ scoringPipelineConfig.preScoringFeatureHydrationPhase2 ++ scoringPipelineConfig.scorers - - override private[core] val config = scoringPipelineConfig - } - } -} - -case class ScoringPipelineState[Query <: PipelineQuery, Candidate <: UniversalNoun[Any]]( - override val query: Query, - candidates: Seq[ItemCandidateWithDetails], - override val executorResultsByPipelineStep: ListMap[PipelineStepIdentifier, ExecutorResult]) - extends HasQuery[Query, ScoringPipelineState[Query, Candidate]] - with HasCandidatesWithDetails[ScoringPipelineState[Query, Candidate]] - with HasCandidatesWithFeatures[Candidate, ScoringPipelineState[Query, Candidate]] - with HasExecutorResults[ScoringPipelineState[Query, Candidate]] - with HasResult[Seq[CandidateWithFeatures[Candidate]]] { - - override val candidatesWithDetails: Seq[CandidateWithDetails] = candidates - - override val candidatesWithFeatures: Seq[CandidateWithFeatures[Candidate]] = - candidates.asInstanceOf[Seq[CandidateWithFeatures[Candidate]]] - - override val buildResult: Seq[CandidateWithFeatures[Candidate]] = candidatesWithFeatures - - override def updateCandidatesWithDetails( - newCandidates: Seq[CandidateWithDetails] - ): ScoringPipelineState[Query, Candidate] = { - this.copy(candidates = newCandidates.asInstanceOf[Seq[ItemCandidateWithDetails]]) - } - - override def updateQuery(newQuery: Query): ScoringPipelineState[Query, Candidate] = - this.copy(query = newQuery) - - override def updateDecorations( - decoration: Seq[Decoration] - ): ScoringPipelineState[Query, Candidate] = ??? - - override def updateCandidatesWithFeatures( - newCandidates: Seq[CandidateWithFeatures[Candidate]] - ): ScoringPipelineState[Query, Candidate] = { - val updatedCandidates = candidates.zip(newCandidates).map { - case (itemCandidateWithDetails, newCandidate) => - itemCandidateWithDetails.copy(features = - itemCandidateWithDetails.features ++ newCandidate.features) - } - this.copy(query, updatedCandidates) - } - - override private[pipeline] def setExecutorResults( - newMap: ListMap[PipelineStepIdentifier, ExecutorResult] - ) = this.copy(executorResultsByPipelineStep = newMap) -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipeline.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipeline.docx new file mode 100644 index 0000000000000000000000000000000000000000..e005d94c8255a6fcae961e740261561e7bc36b30 GIT binary patch literal 37239 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 oP(kT-#>v>mNmt3;&e&0#&du7Y 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%0Abyp)r4XUbS#sgsncY;~roy|_^gU#FE!{7uqo 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 I(|`W@9~OS2VgLXD literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineBuilder.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineBuilder.scala deleted file mode 100644 index d597fa9a5..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineBuilder.scala +++ /dev/null @@ -1,367 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.scoring - -import com.twitter.finagle.stats.StatsReceiver -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.functional_component.common.alert.Alert -import com.twitter.product_mixer.core.functional_component.scorer.ScoredCandidateResult -import com.twitter.product_mixer.core.gate.ParamGate -import com.twitter.product_mixer.core.gate.ParamGate.EnabledGateSuffix -import com.twitter.product_mixer.core.gate.ParamGate.SupportedClientGateSuffix -import com.twitter.product_mixer.core.model.common.CandidateWithFeatures -import com.twitter.product_mixer.core.model.common.Component -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.model.common.identifier.ComponentIdentifierStack -import com.twitter.product_mixer.core.model.common.identifier.ScoringPipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.PipelineStepIdentifier -import com.twitter.product_mixer.core.model.common.presentation.ItemCandidateWithDetails -import com.twitter.product_mixer.core.pipeline.InvalidStepStateException -import com.twitter.product_mixer.core.pipeline.PipelineBuilder -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.pipeline_failure.ClosedGate -import com.twitter.product_mixer.core.pipeline.pipeline_failure.PipelineFailureClassifier -import com.twitter.product_mixer.core.pipeline.scoring.ScoringPipeline.Inputs -import com.twitter.product_mixer.core.service.Executor -import com.twitter.product_mixer.core.service.candidate_feature_hydrator_executor.CandidateFeatureHydratorExecutor -import com.twitter.product_mixer.core.service.candidate_feature_hydrator_executor.CandidateFeatureHydratorExecutorResult -import com.twitter.product_mixer.core.service.gate_executor.GateExecutor -import com.twitter.product_mixer.core.service.gate_executor.GateExecutorResult -import com.twitter.product_mixer.core.service.gate_executor.StoppedGateException -import com.twitter.product_mixer.core.service.selector_executor.SelectorExecutor -import com.twitter.product_mixer.core.service.selector_executor.SelectorExecutorResult -import com.twitter.stitch.Arrow -import javax.inject.Inject - -/** - * ScoringPipelineBuilder builds [[ScoringPipeline]]s from [[ScoringPipelineConfig]]s. - * - * You should inject a [[ScoringPipelineBuilderFactory]] and call `.get` to build these. - * - * @see [[ScoringPipelineConfig]] for the description of the type parameters - * @tparam Query the type of query these accept. - * @tparam Candidate the domain model for the candidate being scored - */ -class ScoringPipelineBuilder[Query <: PipelineQuery, Candidate <: UniversalNoun[Any]] @Inject() ( - gateExecutor: GateExecutor, - selectorExecutor: SelectorExecutor, - candidateFeatureHydratorExecutor: CandidateFeatureHydratorExecutor, - override val statsReceiver: StatsReceiver) - extends PipelineBuilder[Inputs[Query]] { - - override type UnderlyingResultType = Seq[ScoredCandidateResult[Candidate]] - override type PipelineResultType = ScoringPipelineResult[Candidate] - - def build( - parentComponentIdentifierStack: ComponentIdentifierStack, - config: ScoringPipelineConfig[Query, Candidate] - ): ScoringPipeline[Query, Candidate] = { - - val pipelineIdentifier = config.identifier - - val context = Executor.Context( - PipelineFailureClassifier( - config.failureClassifier.orElse(StoppedGateException.classifier(ClosedGate))), - parentComponentIdentifierStack.push(pipelineIdentifier) - ) - - val enabledGateOpt = config.enabledDeciderParam.map { deciderParam => - ParamGate(pipelineIdentifier + EnabledGateSuffix, deciderParam) - } - val supportedClientGateOpt = config.supportedClientParam.map { param => - ParamGate(pipelineIdentifier + SupportedClientGateSuffix, param) - } - - /** - * Evaluate enabled decider gate first since if it's off, there is no reason to proceed - * Next evaluate supported client feature switch gate, followed by customer configured gates - */ - val allGates = enabledGateOpt.toSeq ++ supportedClientGateOpt.toSeq ++ config.gates - - val GatesStep = new Step[Query, GateExecutorResult] { - override def identifier: PipelineStepIdentifier = ScoringPipelineConfig.gatesStep - - override lazy val executorArrow: Arrow[Query, GateExecutorResult] = - gateExecutor.arrow(allGates, context) - - override def inputAdaptor( - query: ScoringPipeline.Inputs[Query], - previousResult: ScoringPipelineResult[Candidate] - ): Query = { - query.query - } - - override def resultUpdater( - previousPipelineResult: ScoringPipelineResult[Candidate], - executorResult: GateExecutorResult - ): ScoringPipelineResult[Candidate] = - previousPipelineResult.copy(gateResults = Some(executorResult)) - } - - val SelectorsStep = new Step[SelectorExecutor.Inputs[Query], SelectorExecutorResult] { - override def identifier: PipelineStepIdentifier = ScoringPipelineConfig.selectorsStep - - override def executorArrow: Arrow[SelectorExecutor.Inputs[Query], SelectorExecutorResult] = - selectorExecutor.arrow(config.selectors, context) - - override def inputAdaptor( - query: ScoringPipeline.Inputs[Query], - previousResult: ScoringPipelineResult[Candidate] - ): SelectorExecutor.Inputs[Query] = SelectorExecutor.Inputs(query.query, query.candidates) - - override def resultUpdater( - previousPipelineResult: ScoringPipelineResult[Candidate], - executorResult: SelectorExecutorResult - ): ScoringPipelineResult[Candidate] = - previousPipelineResult.copy(selectorResults = Some(executorResult)) - } - - val PreScoringFeatureHydrationPhase1Step = - new Step[ - CandidateFeatureHydratorExecutor.Inputs[Query, Candidate], - CandidateFeatureHydratorExecutorResult[Candidate] - ] { - override def identifier: PipelineStepIdentifier = - ScoringPipelineConfig.preScoringFeatureHydrationPhase1Step - - override def executorArrow: Arrow[ - CandidateFeatureHydratorExecutor.Inputs[Query, Candidate], - CandidateFeatureHydratorExecutorResult[Candidate] - ] = - candidateFeatureHydratorExecutor.arrow(config.preScoringFeatureHydrationPhase1, context) - - override def inputAdaptor( - query: ScoringPipeline.Inputs[Query], - previousResult: ScoringPipelineResult[Candidate] - ): CandidateFeatureHydratorExecutor.Inputs[Query, Candidate] = { - val selectedCandidatesResult = previousResult.selectorResults.getOrElse { - throw InvalidStepStateException(identifier, "SelectorResults") - }.selectedCandidates - - CandidateFeatureHydratorExecutor.Inputs( - query.query, - selectedCandidatesResult.asInstanceOf[Seq[CandidateWithFeatures[Candidate]]]) - } - - override def resultUpdater( - previousPipelineResult: ScoringPipelineResult[Candidate], - executorResult: CandidateFeatureHydratorExecutorResult[Candidate] - ): ScoringPipelineResult[Candidate] = previousPipelineResult.copy( - preScoringHydrationPhase1Result = Some(executorResult) - ) - } - - val PreScoringFeatureHydrationPhase2Step = - new Step[ - CandidateFeatureHydratorExecutor.Inputs[Query, Candidate], - CandidateFeatureHydratorExecutorResult[Candidate] - ] { - override def identifier: PipelineStepIdentifier = - ScoringPipelineConfig.preScoringFeatureHydrationPhase2Step - - override def executorArrow: Arrow[ - CandidateFeatureHydratorExecutor.Inputs[Query, Candidate], - CandidateFeatureHydratorExecutorResult[Candidate] - ] = - candidateFeatureHydratorExecutor.arrow(config.preScoringFeatureHydrationPhase2, context) - - override def inputAdaptor( - query: ScoringPipeline.Inputs[Query], - previousResult: ScoringPipelineResult[Candidate] - ): CandidateFeatureHydratorExecutor.Inputs[Query, Candidate] = { - val preScoringHydrationPhase1FeatureMaps: Seq[FeatureMap] = - previousResult.preScoringHydrationPhase1Result - .getOrElse( - throw InvalidStepStateException(identifier, "PreScoringHydrationPhase1Result")) - .results.map(_.features) - - val itemCandidates = previousResult.selectorResults - .getOrElse(throw InvalidStepStateException(identifier, "SelectionResults")) - .selectedCandidates.collect { - case itemCandidate: ItemCandidateWithDetails => itemCandidate - } - // If there is no feature hydration (empty results), no need to attempt merging. - val candidates = if (preScoringHydrationPhase1FeatureMaps.isEmpty) { - itemCandidates - } else { - itemCandidates.zip(preScoringHydrationPhase1FeatureMaps).map { - case (itemCandidate, featureMap) => - itemCandidate.copy(features = itemCandidate.features ++ featureMap) - } - } - - CandidateFeatureHydratorExecutor.Inputs( - query.query, - candidates.asInstanceOf[Seq[CandidateWithFeatures[Candidate]]]) - } - - override def resultUpdater( - previousPipelineResult: ScoringPipelineResult[Candidate], - executorResult: CandidateFeatureHydratorExecutorResult[Candidate] - ): ScoringPipelineResult[Candidate] = previousPipelineResult.copy( - preScoringHydrationPhase2Result = Some(executorResult) - ) - } - - def getMergedPreScoringFeatureMap( - stepIdentifier: PipelineStepIdentifier, - previousResult: ScoringPipelineResult[Candidate] - ): Seq[FeatureMap] = { - val preScoringHydrationPhase1FeatureMaps: Seq[FeatureMap] = - previousResult.preScoringHydrationPhase1Result - .getOrElse( - throw InvalidStepStateException( - stepIdentifier, - "PreScoringHydrationPhase1Result")).results.map(_.features) - - val preScoringHydrationPhase2FeatureMaps: Seq[FeatureMap] = - previousResult.preScoringHydrationPhase2Result - .getOrElse( - throw InvalidStepStateException( - stepIdentifier, - "PreScoringHydrationPhase2Result")).results.map(_.features) - /* - * If either pre-scoring hydration phase feature map is empty, no need to merge them, - * we can just take all non-empty ones. - */ - if (preScoringHydrationPhase1FeatureMaps.isEmpty) { - preScoringHydrationPhase2FeatureMaps - } else if (preScoringHydrationPhase2FeatureMaps.isEmpty) { - preScoringHydrationPhase1FeatureMaps - } else { - // No need to check the size in both, since the inputs to both hydration phases are the - // same and each phase ensures the number of candidates and ordering matches the input. - preScoringHydrationPhase1FeatureMaps.zip(preScoringHydrationPhase2FeatureMaps).map { - case (preScoringHydrationPhase1FeatureMap, preScoringHydrationPhasesFeatureMap) => - preScoringHydrationPhase1FeatureMap ++ preScoringHydrationPhasesFeatureMap - } - } - } - - val ScorersStep = - new Step[ - CandidateFeatureHydratorExecutor.Inputs[Query, Candidate], - CandidateFeatureHydratorExecutorResult[Candidate] - ] { - override def identifier: PipelineStepIdentifier = ScoringPipelineConfig.scorersStep - - override def inputAdaptor( - query: ScoringPipeline.Inputs[Query], - previousResult: ScoringPipelineResult[Candidate] - ): CandidateFeatureHydratorExecutor.Inputs[Query, Candidate] = { - - val mergedPreScoringFeatureHydrationFeatures: Seq[FeatureMap] = - getMergedPreScoringFeatureMap(ScoringPipelineConfig.scorersStep, previousResult) - - val itemCandidates = previousResult.selectorResults - .getOrElse(throw InvalidStepStateException(identifier, "SelectionResults")) - .selectedCandidates.collect { - case itemCandidate: ItemCandidateWithDetails => itemCandidate - } - - // If there was no pre-scoring features hydration, no need to re-merge feature maps - // and construct a new item candidate - val updatedCandidates = if (mergedPreScoringFeatureHydrationFeatures.isEmpty) { - itemCandidates - } else { - itemCandidates.zip(mergedPreScoringFeatureHydrationFeatures).map { - case (itemCandidate, preScoringFeatureMap) => - itemCandidate.copy(features = itemCandidate.features ++ preScoringFeatureMap) - } - } - CandidateFeatureHydratorExecutor.Inputs( - query.query, - updatedCandidates.asInstanceOf[Seq[CandidateWithFeatures[Candidate]]]) - } - - override lazy val executorArrow: Arrow[ - CandidateFeatureHydratorExecutor.Inputs[Query, Candidate], - CandidateFeatureHydratorExecutorResult[ - Candidate - ] - ] = candidateFeatureHydratorExecutor.arrow(config.scorers.toSeq, context) - - override def resultUpdater( - previousPipelineResult: ScoringPipelineResult[Candidate], - executorResult: CandidateFeatureHydratorExecutorResult[Candidate] - ): ScoringPipelineResult[Candidate] = - previousPipelineResult.copy(scorerResults = Some(executorResult)) - } - - val ResultStep = - new Step[Seq[CandidateWithFeatures[UniversalNoun[Any]]], Seq[ - CandidateWithFeatures[UniversalNoun[Any]] - ]] { - override def identifier: PipelineStepIdentifier = ScoringPipelineConfig.resultStep - - override def executorArrow: Arrow[Seq[CandidateWithFeatures[UniversalNoun[Any]]], Seq[ - CandidateWithFeatures[UniversalNoun[Any]] - ]] = Arrow.identity - - override def inputAdaptor( - query: Inputs[Query], - previousResult: ScoringPipelineResult[Candidate] - ): Seq[CandidateWithFeatures[UniversalNoun[Any]]] = previousResult.selectorResults - .getOrElse(throw InvalidStepStateException(identifier, "SelectionResults")) - .selectedCandidates.collect { - case itemCandidate: ItemCandidateWithDetails => itemCandidate - } - - override def resultUpdater( - previousPipelineResult: ScoringPipelineResult[Candidate], - executorResult: Seq[CandidateWithFeatures[UniversalNoun[Any]]] - ): ScoringPipelineResult[Candidate] = { - val scorerResults: Seq[FeatureMap] = previousPipelineResult.scorerResults - .getOrElse(throw InvalidStepStateException(identifier, "ScorerResult")).results.map( - _.features) - - val mergedPreScoringFeatureHydrationFeatureMaps: Seq[FeatureMap] = - getMergedPreScoringFeatureMap(ScoringPipelineConfig.resultStep, previousPipelineResult) - - val itemCandidates = executorResult.asInstanceOf[Seq[ItemCandidateWithDetails]] - val finalFeatureMap = if (mergedPreScoringFeatureHydrationFeatureMaps.isEmpty) { - scorerResults - } else { - scorerResults - .zip(mergedPreScoringFeatureHydrationFeatureMaps).map { - case (preScoringFeatureMap, scoringFeatureMap) => - preScoringFeatureMap ++ scoringFeatureMap - } - } - - val finalResults = itemCandidates.zip(finalFeatureMap).map { - case (itemCandidate, featureMap) => - ScoredCandidateResult(itemCandidate.candidate.asInstanceOf[Candidate], featureMap) - } - previousPipelineResult.withResult(finalResults) - } - } - - val builtSteps = Seq( - GatesStep, - SelectorsStep, - PreScoringFeatureHydrationPhase1Step, - PreScoringFeatureHydrationPhase2Step, - ScorersStep, - ResultStep - ) - - /** The main execution logic for this Candidate Pipeline. */ - val finalArrow: Arrow[ScoringPipeline.Inputs[Query], ScoringPipelineResult[Candidate]] = - buildCombinedArrowFromSteps( - steps = builtSteps, - context = context, - initialEmptyResult = ScoringPipelineResult.empty, - stepsInOrderFromConfig = ScoringPipelineConfig.stepsInOrder - ) - - val configFromBuilder = config - new ScoringPipeline[Query, Candidate] { - override private[core] val config: ScoringPipelineConfig[Query, Candidate] = configFromBuilder - override val arrow: Arrow[ScoringPipeline.Inputs[Query], ScoringPipelineResult[Candidate]] = - finalArrow - override val identifier: ScoringPipelineIdentifier = pipelineIdentifier - override val alerts: Seq[Alert] = config.alerts - override val children: Seq[Component] = - allGates ++ config.preScoringFeatureHydrationPhase1 ++ config.preScoringFeatureHydrationPhase2 ++ config.scorers - } - } -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineBuilderFactory.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineBuilderFactory.docx new file mode 100644 index 0000000000000000000000000000000000000000..d8409268e376a77d4415c2884d0b37db1cc33cc1 GIT binary patch literal 37030 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

1i2fHvB89PF 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 bq%4NoIt=h;1?C`7t`cNO1ZEHY9uN-zWTrr4 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineBuilderFactory.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineBuilderFactory.scala deleted file mode 100644 index 5b65d0738..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineBuilderFactory.scala +++ /dev/null @@ -1,30 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.scoring - -import com.twitter.finagle.stats.StatsReceiver -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.service.candidate_feature_hydrator_executor.CandidateFeatureHydratorExecutor -import com.twitter.product_mixer.core.service.gate_executor.GateExecutor -import com.twitter.product_mixer.core.service.selector_executor.SelectorExecutor -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class ScoringPipelineBuilderFactory @Inject() ( - gateExecutor: GateExecutor, - selectorExecutor: SelectorExecutor, - candidateFeatureHydratorExecutor: CandidateFeatureHydratorExecutor, - statsReceiver: StatsReceiver) { - - def get[ - Query <: PipelineQuery, - Candidate <: UniversalNoun[Any] - ]: ScoringPipelineBuilder[Query, Candidate] = { - new ScoringPipelineBuilder[Query, Candidate]( - gateExecutor, - selectorExecutor, - candidateFeatureHydratorExecutor, - statsReceiver - ) - } -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineConfig.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineConfig.docx new file mode 100644 index 0000000000000000000000000000000000000000..3c2fbac5d601e62133bebce59ecdc9b14e7ca7ae GIT binary patch literal 38664 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%0A#P90nhr5_72vTs+Jb?rVfUde?Imq!fRl98BlmL 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineConfig.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineConfig.scala deleted file mode 100644 index d2b87e01b..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineConfig.scala +++ /dev/null @@ -1,131 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.scoring - -import com.twitter.product_mixer.component_library.selector.InsertAppendResults -import com.twitter.product_mixer.core.functional_component.common.AllPipelines -import com.twitter.product_mixer.core.functional_component.common.alert.Alert -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.UniversalNoun -import com.twitter.product_mixer.core.model.common.identifier.ComponentIdentifierStack -import com.twitter.product_mixer.core.model.common.identifier.ScoringPipelineIdentifier -import com.twitter.product_mixer.core.model.common.identifier.PipelineStepIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineConfig -import com.twitter.product_mixer.core.pipeline.PipelineConfigCompanion -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.pipeline_failure.PipelineFailure -import com.twitter.timelines.configapi.FSParam -import com.twitter.timelines.configapi.decider.DeciderParam - -/** - * This is the configuration necessary to generate a Scoring Pipeline. Product code should create a - * ScoringPipelineConfig, and then use a ScoringPipelineBuilder to get the final ScoringPipeline which can - * process requests. - * - * @tparam Query - The domain model for the query or request - * @tparam Candidate the domain model for the candidate being scored - */ -trait ScoringPipelineConfig[-Query <: PipelineQuery, Candidate <: UniversalNoun[Any]] - extends PipelineConfig { - - override val identifier: ScoringPipelineIdentifier - - /** - * When these Params are defined, they will automatically be added as Gates in the pipeline - * by the CandidatePipelineBuilder - * - * The enabled decider param can to be used to quickly disable a Candidate Pipeline via Decider - */ - val enabledDeciderParam: Option[DeciderParam[Boolean]] = None - - /** - * This supported client feature switch param can be used with a Feature Switch to control the - * rollout of a new Candidate Pipeline from dogfood to experiment to production - */ - val supportedClientParam: Option[FSParam[Boolean]] = None - - /** [[BaseGate]]s that are applied sequentially, the pipeline will only run if all the Gates are open */ - def gates: Seq[BaseGate[Query]] = Seq.empty - - /** - * Logic for selecting which candidates to score. Note, this doesn't drop the candidates from - * the final result, just whether to score it in this pipeline or not. - */ - def selectors: Seq[Selector[Query]] - - /** - * After selectors are run, you can fetch features for each candidate. - * The existing features from previous hydrations are passed in as inputs. You are not expected to - * put them into the resulting feature map yourself - they will be merged for you by the platform. - */ - def preScoringFeatureHydrationPhase1: Seq[BaseCandidateFeatureHydrator[Query, Candidate, _]] = - Seq.empty - - /** - * A second phase of feature hydration that can be run after selection and after the first phase - * of pre-scoring feature hydration. You are not expected to put them into the resulting - * feature map yourself - they will be merged for you by the platform. - */ - def preScoringFeatureHydrationPhase2: Seq[BaseCandidateFeatureHydrator[Query, Candidate, _]] = - Seq.empty - - /** - * Ranker Function for candidates. Scorers are executed in parallel. - * Note: Order does not matter, this could be a Set if Set was covariant over it's type. - */ - def scorers: Seq[Scorer[Query, Candidate]] - - /** - * A pipeline can define a partial function to rescue failures here. They will be treated as failures - * from a monitoring standpoint, and cancellation exceptions will always be propagated (they cannot be caught here). - */ - def failureClassifier: PartialFunction[Throwable, PipelineFailure] = PartialFunction.empty - - /** - * Alerts can be used to indicate the pipeline's service level objectives. Alerts and - * dashboards will be automatically created based on this information. - */ - val alerts: Seq[Alert] = Seq.empty - - /** - * This method is used by the product mixer framework to build the pipeline. - */ - private[core] final def build( - parentComponentIdentifierStack: ComponentIdentifierStack, - builder: ScoringPipelineBuilderFactory - ): ScoringPipeline[Query, Candidate] = - builder.get.build(parentComponentIdentifierStack, this) -} - -object ScoringPipelineConfig extends PipelineConfigCompanion { - def apply[Query <: PipelineQuery, Candidate <: UniversalNoun[Any]]( - scorer: Scorer[Query, Candidate] - ): ScoringPipelineConfig[Query, Candidate] = new ScoringPipelineConfig[Query, Candidate] { - override val identifier: ScoringPipelineIdentifier = ScoringPipelineIdentifier( - s"ScoreAll${scorer.identifier.name}") - - override val selectors: Seq[Selector[Query]] = Seq(InsertAppendResults(AllPipelines)) - - override val scorers: Seq[Scorer[Query, Candidate]] = Seq(scorer) - } - - val gatesStep: PipelineStepIdentifier = PipelineStepIdentifier("Gates") - val selectorsStep: PipelineStepIdentifier = PipelineStepIdentifier("Selectors") - val preScoringFeatureHydrationPhase1Step: PipelineStepIdentifier = - PipelineStepIdentifier("PreScoringFeatureHydrationPhase1") - val preScoringFeatureHydrationPhase2Step: PipelineStepIdentifier = - PipelineStepIdentifier("PreScoringFeatureHydrationPhase2") - val scorersStep: PipelineStepIdentifier = PipelineStepIdentifier("Scorers") - val resultStep: PipelineStepIdentifier = PipelineStepIdentifier("Result") - - /** All the Steps which are executed by a [[ScoringPipeline]] in the order in which they are run */ - override val stepsInOrder: Seq[PipelineStepIdentifier] = Seq( - gatesStep, - selectorsStep, - preScoringFeatureHydrationPhase1Step, - preScoringFeatureHydrationPhase2Step, - scorersStep, - resultStep - ) -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineResult.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/scoring/ScoringPipelineResult.docx new file mode 100644 index 0000000000000000000000000000000000000000..fd7a4b84d719f2ae028a4e61355ef864bb1b4355 GIT binary patch literal 37337 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

pqfc#6G&N#X?Vpd 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasExecutorResults.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasExecutorResults.scala deleted file mode 100644 index c22dbe11c..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasExecutorResults.scala +++ /dev/null @@ -1,13 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.state - -import com.twitter.product_mixer.core.model.common.identifier.PipelineStepIdentifier -import com.twitter.product_mixer.core.service.ExecutorResult -import scala.collection.immutable.ListMap - -trait HasExecutorResults[State] { - // We use a list map to maintain the insertion order - val executorResultsByPipelineStep: ListMap[PipelineStepIdentifier, ExecutorResult] - private[pipeline] def setExecutorResults( - newMap: ListMap[PipelineStepIdentifier, ExecutorResult] - ): State -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasParams.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasParams.docx new file mode 100644 index 0000000000000000000000000000000000000000..e2fe9f6127ffad19d718be45b7006b31068ce85c GIT binary patch literal 36738 zcmagFWmufawl<7wa1AcO-Q6V++}$l`<4)rNfYy1_l{g`4rH_zWHl;%qNySds6Y_vI{ah#Ipl% zH7yywZ>P8+S$Ass_>C|_PsMX|gOarGA!2AMV>K~J2SX85g+^h+tMjLMa@#2#)m0CN zX?7Ss?u{zDKacx+P~1xdNM$`QGE-}2+NLA51@eB4Fh0|e{$$*c(C<>~KEY7$Y^C8; zx6)IH>N$uEK>xmL-_7hXrp0jxS63Q!rKY=%X%o7846qHMu9^7(ou&2aAdqvkqRH^F zT~{YY-Ou_kScbs+RsuESs5^*`rk>p33tSp|du*j|$Zg;4EnQ*kJK_7qaKqc#83p@s zjeudaPh1)zwW=Vo*yIroKAu;nLkSAM>zok1B|b?-zjjF@A=*IEexJK@)W>}j*k$~? zH-S~RGEW^vdu}U1d1msA$#id0d!81G*Y-q4Zz=K~u@wv< zl>bphFKRi_J8<>Zp&%fT!9R_hE$m!an14Sj6DB@Dv!Mr^3QG-B6+1L(NER#^O8!tN z5bpjuep2KBlqp*7>`;+3(8lc{IXK-hvz$-QCtPGGvJ2KS)tL**UFgx?pgV5>8Lc8D zBen;Ud#Z1T=-8!2UQ?oqT2S9|TWXRCGpu6`=+V`mOp8^COB&JJ%b=EolqOJ2$oP%GxU6S1vk--+0Sd$AXq%zvh#kQ=^f>SmiMHk+j_8yzvC3i zFV@5iz3rz?m4U0bwH2;jOgY&Xtio5!lB}LCynH17{+WjzdL2bovHrgGjLhuHuCJS0N zoy|agKAfMjzmAJ@_R}PJW{YZ3?hkP_427jnnxYA`ZImcvd)Rb80|QAS5-AhvF-n_@ zNFXvWN^&71lKV~MCk#-56G@-1x*0epCU9kBBiFHvz ze!U+sR^89Apsj&pCpvb&hkb(v$swwes_N0A$-epd*u~jtW6B-cp!`j9*c;U3x4F~D zB^9DUxd^Lz?(2a5!rGzP+3i&(7pedeSMwH*8m#B0F9Z8F~(J16pf)ce1_e|ft|#Bj%R4ugMag=$DQ<00|#)O$hr&$?W# ztl%Ai>tY830fGMax|ldR{!te7F^3ga^!7&v7z5YO*6?B~_z6MtV$%|91T_g6&9kEv zAL3zJ*|vdx_u)8vpIELV1nLDI8%7@O<(6hCU@RfSdQb2;>L^~Z9rk|`ms_dC~zI>|{WsM1g-&m1sgUgg%bOX1RZ z3S@+A#vNzlA7N~eeO#~W%zt9!SlR303C>W89+5CQUd+6?>qpwfGb`8>1%A7hb}Y|4 zpJ-;P6#Za}i*;Q*DI; zTOs!VG_YT6h47W%yX$U~-hL!_MrS^^XFJ%ucN0QB^nl|9w$vk%q#PsKJ�pA(~8fXXli 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


|OHXN!SIQ#a5M-}4ts3*whQ5gw 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 bMap8Rt-}CsR$vYSRz?otZi3%$$4g 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 KVD?b!2JrxEu%XES literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasQuery.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasQuery.scala deleted file mode 100644 index 89e9bd94e..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasQuery.scala +++ /dev/null @@ -1,8 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.state - -import com.twitter.product_mixer.core.pipeline.PipelineQuery - -trait HasQuery[Query <: PipelineQuery, T] { - def query: Query - def updateQuery(query: Query): T -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasRequest.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasRequest.docx new file mode 100644 index 0000000000000000000000000000000000000000..ccde225fda50222635d6f7756d103b1ab4a9f971 GIT binary patch literal 36758 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 z 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasRequest.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasRequest.scala deleted file mode 100644 index 9058f0561..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasRequest.scala +++ /dev/null @@ -1,7 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.state - -import com.twitter.product_mixer.core.model.marshalling.request.Request - -trait HasRequest[TRequest <: Request] { - def request: TRequest -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasResult.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasResult.docx new file mode 100644 index 0000000000000000000000000000000000000000..b12f7de0e099ce6d9ab72cfae31233a9aade9ec1 GIT binary patch literal 36849 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 oDkvQL5&!@I literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasResult.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasResult.scala deleted file mode 100644 index 0c5f0dfef..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasResult.scala +++ /dev/null @@ -1,10 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.state - -/** - * Defines how to build a result from a pipeline state. Pipeline States should extend this and - * implement [[buildResult]] which computes the final result from their current state. - * @tparam Result Type of result - */ -trait HasResult[+Result] { - def buildResult(): Result -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/BUILD b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/BUILD deleted file mode 100644 index cbd8c036d..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/BUILD +++ /dev/null @@ -1,17 +0,0 @@ -scala_library( - sources = [ - "*.scala", - ], - compiler_option_sets = ["fatal_warnings"], - platform = "java8", - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "stitch/stitch-core", - ], - exports = [ - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "stitch/stitch-core", - ], -) diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/BUILD.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..97a20f9a359436a9260b3ec8ba8ced6663e178dd GIT binary patch literal 36836 zcmagEWmp}_wm*!!dvJGmcL?t8PSA}z8xIiNgS)#!aCZp7-2x;K-2J~ZGv}O{bMJlM zFU><$t)HybT~*z?ROBI{u)x5;;K0Jud337PiW5@6!NA60z`!s;t@;uGM>k7HH)9QN zCrejDW-kZ(<`hNcHBq#WXD`^PEW)I|5~$b}yH2!Dj0yOXwV5}(y2~sl3J?!>ll+mI zvnt^*%n4cPcmBj{4MN?1E!6rFk|&0SS=xoIV3YF~ZKo^YnsKbRNKBX{zJ2Fi3{O;M9c1p(APwXL<5FDV#Lajz($r z7(VQet9ZOj26&P`NCZmdyeut||S|q$zRGwccZjq0z-!)45@- zuNcK^7!iQ>?Yl!Sv*(01#}Q0JdGxiq-X?}^*!L5FT_|h2q$2jgG2{??=MiE4osm}@$Qj= zYVKs7yGr)m*MbYo6&O?L^j}hliqLx!OrLxo5lbuINecHpFO_cWi;Ulq7d&Ap8iA?& zql(_t@}l>k>TN=Rfgyta8oOB9yRtCviA{A!X#2nJ6YdoD5s}YwprgxA*DGM!6Lcd0Iqt$lz zXPN`R0HhUKxIUFuw|}?y{B$qU;wEDfD0&p{gsz^hWWk2ZTZAI(jCm~~dpHwY5#OGL z^X0Ka<%53Z1@n&(31xL7FUo6}sZNYRUh5{o(%H7X_XkXr6jRzh(^l@AA*umRGsM4G z>(kEkn&X!J;l^h5xzGNYpoou%>NcR;d=``-bWnmU0Ol$#04G-#bAXHG@0&b3aYAW; z6;0~SPikIKEAk2rPD+*@{OFUM3|7!``z!q!k=Te{-daKo zmW5uH4<4C1XsR%61U0u@2_NFJV-MwlU!$kI`(sm|4S%f#dCjfv%cJ=vTL6$q4>|PL z`ymsxgDgwhIv94s6ORXIBvfz?QPp%c&o(Xg?N2AJF3wvs9*~BWNUh;WD5>xAXHUwi zM1%9;*7ZF$0fWW$BlGjS>rAdxfg)}eZ5(x&FD(5l_V>D&IywDO7L5tVHCD9FCk7}(w@)^(VybwF!HZ(E5*zq+iCL}lvpbY`%{yH<1F30#8ljPfKD}uuV!IG_fZh3Px3&HxQa@KaCu$O&yZELRCPQ zV`~ke8#)`$j8`wfFu}W}Ypc|Z`;s@BO`O7F56A+Gm(H%GduDaa_&5T-92P!ryjHnb}d(zuGG z1Z*Z<=aV0xY!Q9kZW=6pqUTvV=;I2`QHUNBGdf+)A>9ume8)8}+7<=p{^|1j(?NC}X0oUa;mQ|u zO8@CuVX69wx=OiS<|;CwnqeBsRH7#{5&{Nux>N1LLy09lLnZwf>|8E77NtOV7OtkRy>dd@;F_#RvGV(_&P%iI=!MDV&Or}r zFY=!ctS7+5f(7){x;uatr{8zRiMBjojTNc;OdGG;f*^HNsezN@==y8H5DH{)vjDP0 z-sq=ltyC!4*v!{Q)rKoP7%Uq|)MZwZD%^()3cA_LhavN^5Uz!fvI)1lV)KY)r0nM8 z%D!8tHBWO!CX6`m4%EIjwdR+2viZ6i(WFyq%7!6>iG428qC`ft(+rL$gJ!CKmmK}U z=KDBG1Y?3hHC}#MD!;@4ZLFWNjcgg4$tgw@7q=;*_W0gcIfa%DQ!GW($w8DoPiZw( z@F<3Id3)0`*RNkuQ;r}@`cs+SS$pi&Q44%_$Jf%MWReaT8Td&lN~)XY$H17IF?YRj`#rsVW7m@mUyS)N{3}iax#eFUJYqfU zUM;OZn#AH}F>x(swmNS3&~1!%6V7^P;f2AYX=LD6EOBN*pX2G;IMK+2oMo>%E8hdR zg%CyDY>(czp4UinDBXzDYv18~)FbJ33S&Bm!nXtW9S9|wQ&I6SWCEMp5i;7d8ByiZ z;xNN~r#ZbQU^we|qMOBIYPd@??nxr8)Pch2B_jp1gnC;V3$2k{MUEqk5T`*w&Lt&{ zX*`l3!a9mgq0eDw+LdBNCfahKU?j~eO5WufjZPS% zp&(%_1&yxg+aA_q8Tx&2HW9e^=12^|NJ(Vm~6Ibr*a|XJT zKGxbQl9q#r?=V(tguL%WkVVvZGAvOt;rTsvl?P@iZ6W6+2Rt+7kyqb*r+^Uud^{Wj z2{70}^X3F--XsLgn}0kWf3Es}e@On^0VInlhp^&(JbOjx4@<%-ag2KRtAM(LUb?o} zFHCwh@m6AgOMkQ;SmQvi>lNiLW-8Uht-E=Nvf?vBeLK})0|I4pzN2V6c1=vt4{7zpj}1I} z5W14HiJwiwb93B$I>;}kYT7Qls_eE!HZolMwv`&Sg8R{->X#Qx3@Ny%Om@!>zuw$i z5C*)!8X;IUEf7kS><2w78pL22LuuV*K@M=-o7jx+SuL7_NqY83q)D(B*JY{iKwg$| zM2YcIHDsuV+J(KFvg5VAo=qO~QG$2#g@q8=6OJw=+~p(Eu~VJUet#^~fBqRGh?K?w z$91(#>%e4Po_F?94#mzUgtPWv;UF-dIZ%jpKsKo4?vyZ)KhQ|Z*{RR;k0g6AjjaB%9S zcbb#B_Tu<*nklk00(gChdwY0VI*Tn8X+7REynooZ=tx`WcsiW>dD9UdzIWvP(jfTi z@b+ahj0Lz#Vw75XJ~MC_p0>X;v3A^A`7&{Q+2p-$&r>QwQq|YnrTmdEBD&%2+NM#@ z_i15m!pHNI$eWW6U;zEDWAEzV#_Qcl<>&|FyYSMb0bsK*@qjgOC1=D}*U@9i^rMn# zUfR@Aoye(3_A8FCg3J30m7S6Bkb7g6wI`4$&#i#X6V!>3lgABz-mfnr;!{E=+MA%w zk%KS4bO13>m@L`0S<^4n)tO!guR{?>gVa??@8? zdPiw=_z9d~lGR4WU)P~R7l)r>@Xv%dqK4Pjh`iJp`|FDM^McEnkR;Rd|C9u8Oq zz`a~=ytri;Jl6qNI=2Lcsy)w6!_#<9b9j`G-~5fvfI>C7j!SQtgWajoZL2*eN{4H4 zfZhA=Z}oaT(m4d(U-YH9ALt%?xqa@~sAyjA*A6^*4iWjvFNWSaA_%E(&1AieSPJoa z2(%C~cHtU6@5v#XR-*2dp|Yuw^lOrsRS6GD`bW_DMa%)+J-V+)PHcu~5R5b)B7^5N zfCbwWDY>+5lKV6W#44bsJ_ZrhIsoXu1ICv@+jnn<_meWqu)>Z?Ywng1`1B=TC{MOt zIt3X;NK$KOJZIPS;?>yu!&^s^ma9<~9B&4G)@}LMV43UMnmwm29qv23R^b$tJ;tG* zw?8eJUTM(T4yIe*hrD$f)-29Eoy-kRyhAiUYZ|Hv5 zWVdkN#QcbiX=S5}DR`5F&#WpnN7p5vHOS)RWK?C!Fw~McDnl9fu^7nYnU>_>5|zI6 zR0V7ivfOKpcaC5!R&}yv7J{qVU*xvFl;eNa`^5PAv|-aFP;)j|wDPHrjblr8S;t{F z39X15QVvcn6M+h?o-)l(AV?O+0?pjgAb?dK0VH81AYh5G&MMT@+!pla3V8 zVY4c`PzFwof&nAgDX}$>H0!&eKwJV^QBG%N*ftdaT$guDUldL05(h0bsS|pXN&FHg zJ~+M;x+w2==Lb+H&c8aLb|?YhVt`3XALy!teqe+f0Yisf9-U?{P)L(XRC6v^eKXC3?8JVzuWsDYL z)=zyt8`^lfac?(t9P$-=9$1?6$p5hHb)|nlJeOO$<5l}}L0I{4|6r_O=RRgj#IW^7 zk|fq~mw81r#US>KD*^xQ$q7k<$$Q2Gjd8u4C~IqIo%Hq;=&_vTi9EE{%^Wb2E8}qN zl6ctuYw#1Gb~mUd4z1kYpH{H{>cNHa$obvs`If-qoC8k>OWN^a0?y3DcXJ*@gH1L? z4`Pe1kbL|tBBg^!+r%#O()~TQhqrxy)p3L~w&yGN06)*Owj@f_;!W3xy2TqN^)({O z@h{QZ%SkvLwha_h?XP_s3B#(l^cn*$DeId@Ctj;PgR!Z1dCA`{sd;u;qm1E1 z99J}XK|+ntYvSyb8!u)Czq}5fmna`juy48%M|R4NXR66fWNtqvR`5X6Ni3cz%JP%2 zH_mz6iKWP&ECysrVrWyA%&%B9c<)*mFCH)Dia(%&=1(}q0Kd`4vAxH+S2Ww+^ubMM z_sn~Tr&jgv%p%X-T?ldl3PZ!Y`vLOYIPY0pcyO$Rz1MUI4Z9r}fr4+I&cFiAP#P9b zn~p*g{0^(T@fpJ%Dl7|LVDF&A{1=UazvC=ut97{QgzEUF)~ z7*?ze_YEW{vL@iE2iiwmYdRU)k+faV4aN?>B*y%dYss&%a34s)${yU|j|}-q85@|i zE|b|JY<_&ik$DxccAkg66e9hZnDgi(EZ?J-%CJ1+2+H)9G~9N+bKo`)^Af;7p~tyn zhlj%dxrB0w^GwRT1~-PS>%%%Si%ZNoxi#9$LDvtgqum1u5+2p}g?t|o72B9O``q$n zc?>>O#Uau;)qsb%BBS})jNcT~m9Qvw?8syK`@ypjneyqC6pcUlgzI8Xb&!@~qL280 zG&>#WIa8naFa4ggcPd!CCBHEQD6iPj61e~AoQX9@(zD?v_WxUnVnl^Gn_Mn#V z#AUJ`T3B}K>WU(zI6*y;dz*$L6HV}?Q{yy8tzA9@@U>>)=^3-9$4@ozf=lmNQ}UsS z^Z^<0gk6WjaFYnrB8O~G_HOwoBZ#0fRX$^mnX5F$LaD>^AXNO<)lp8T(6lyNox7mg zyElJB{O4c#XaPNex5l+1pr<1=G+wOg7Jy_FurNxh)I`(D#K9A zt<*J(g9Vr*>vdaR6q?{*<^qA%wxnK7s#XlWK|>U6+;&BjB_1|@l{m)rXBSt_5{^ph zR1L{ z9*WCb!nu6qq`U$*vz|ELPg6H0C?NaTkz+7k)fJC?iLhbDut1TKWM_$p-VaJw?3pf^ z&lTc89vdL5oO$bQIdJ82$H!lCB&@3+ClDh&qcd48i+GElyV0_4!cQB96eH-%mNYnH zlr4GWd%I)u?d!nIR?8aK+Sys+QikS03c|;?``5=sLfk5O)GSuso@Fo2I!#lqLIfoZ z%8C#Cyvr4J$67Ctwq!G&L)%- zjAk(oKi@Q6fh^r6!W?G)J}F>tt>Ij%#M?praPd5kZOkIsCANu@$x*I^k7`guDS3_X zwGL-H#p$k!;rj~>5W9HM^GcQODCf4CdtnTv^J7>_gNedk?SlX$F>IH;q;X|}5D zez;v-MbWl*aD=CehY;6GW{x_F)&Tpx#s17~nWKe;Ds7)Uy03;2j7pIK@lj_fw&(%2 zqdV{UgPPrsca#|T(z5bu9_?hl(~Qz9WK1b;xGc8Yj6E9FFYKVt6q za^5OX9E9+!`mBl_3;5Hm2pjqZih_Go-K}ug0ZZ#piD&gy8Sg)iYIcm7Br;x=Wn76x z)1R3e2x0q3Fwhv3Gl6Ba&s7I-j^sK5R2GtuXXn@^U)Ip_*f<;UqG3?pbEMs*w@+4| zYWewN3%D>aC}0Svxp_&8nH`=-21{sJeegkH>`ko!@*C z^rmyO^K9t0{;m+h0Y&Y@Rm&9T&rI;gD%xqwfX8pnkk>m?%uR!jU8^GjA^y+#dBCK# zWGqNJVM|)R`p|kTD)#~m&a8F0=V(l&@QDoOzFHm@T#hwulA67uLJlkXo?kuFX&t4g znLRa+?~L|1fbV$)--z(gg?D)EhFaTp3AU(UxY$@7OCBGbUcQ!2?RX)?_|CWuA^x1c z{RVMQRmqvWzPtjhHI|}TofDq};gRX!aGD_hpsm_&kkj$1fBGmPO@fNcBvgbv#&+x> zt96p2xo3iWcGTSuQ$QTdIdA^?HoT`A^)Mw0`@k9>(YQ9>Kerb1)V9Nj`0||k`D)IJ z0JH1Io$U>2_vdV?Lc7D&C?W$(+494e*K_T&1;{X~t?5J;B|6Ct!mq=^=aQ~fFhAI= zsP!=KSCJCGNR0=EE;nVaL3e^Xc;LoMmBld1k51uz*j+K&e&YL(n9K1Ly`h3#6tStJ zzm4}JrVCTa^_tt=e#ygY3)>y83*L_oMs_=80K;d_ITrUErisr;6epjjfia)Qyf>00 z^!z)wKuMqMt*!AaK}9guEP-9AFl1Lf&o8^!&EeDe2Hamz7M}23iicMZAI5!EoFHlm zQ@>`$x^@QgNe#J_uG;hO3g7jUcLdQ3a+Q#UH0mpXE(n`#dl0cRQp7YE zlg72V_6M@2*ry*3lpi;xsS9{~d7VpKK{!E&D0w{A!upH`n<2rNUi)>Sn{HWqpd10* zHJTa40T#OAfP+BHiCpLvXoDfX#-$&~>L8dYYzaV3yPlVzryGL9sc8YcnGn0SA{?K zwc|I)OCQ^pIjQ-~M%xy5sa#bS=uVYh%%fsHNz}9o+?&Lcc>B^|AMdW1Z)Lcf%MmKI zwgDJjnFK+dIeOIY=r;#d84eG#*7NeTo`GGX^@~#oY%$iqUj2ehyPc&3mYSXmv zZ~6&r(2q1v!V5h)nBtezqiUE7HnTJvnXDe8edxBsAaYb#rpSESG`h;t?87YtZ04V8 z2M!`bJoeJ^Nbef@(?yxNXwlzsEM1|x&u^)`ry^yBrA6%ndh$z$5Nc;mjmQ+Aof@aU zZIEovh+jz-R!Ky&2{@+y#C`d$cm3#kEqy?vJ)(Ye>37v6i&Y+BHWmFNf0}H{Zg0gy zyTa;2N`k7W|J@@76ytDN%mjo@1^3<7OXT~)c=i3ZdG!W|OxbyD+>jr4{ElBR9Ut{L zh^EIV6!IKbAJe6Pi;5x=)eD-}`Z1dYn}C#0p7Q`?cKWgi8o?TiXte+xdehH@8|!8{ z%sbUu6J?Dz)G60xE39D>9>A~7ywXEL2;I~nL3*}!mI9IF(bm2}XU6ZRiIL;GD{R{1 z{0cQIO6zA9v>z#Q=LQdtXdy0FXG)_2&u_0Zpct34R%Z~R5$GWh;uzi)&ok$KBBp-N z(+XE6?^UTObo5J7NlKL8H>jUXK;(y>WFa{zv~g0OC{6SS5LIwAiC4?WX-;}qg$;WA zzj>f2|HY%UCyNWdQ+lC-UT5NZG|a+EUj|1DvXuPoroUu=Bt|DSBMqh3Kg7c@%=jfWpf zYi;$QD7QYO9NGMGy}Mg*_bgWC3>$r1xlhLcxfYk<@>N3C@dmvk2&FN zCPgXKkiyI@OqHZ_E&E`tz4|T?;R$@1sh|q43cAX`)7gkck?y&TJ{0Ae?5a`;srf@A z>00Cox6@-qiInJNj8=Khu&}ndvgjqBkY7zKc^-obR3{-&K}s}~oRr9r>EGrMh?*6p zdSh{gCSx2O(N)sUwJLq!!f3F;*XaJwY|@TG<(zqi9FP7Cj?QfVUy8^2DNv*)mm9!B zl9Q&qLxd9tBi!Sc)>-4kd~SKhmGb6DwIz0)+3Ioo;oKGBGwk;2mnI~Yazj0YqDy8b zs1~4#8j|MocX~pb?j+h5vpmw*vC3EH_Q%VIx&TDedH*g%Dq3QKnD<7`6zwR(+9CHe z;kDCuRER|xbdOw3aB=JU#&=pZU1X_!c@mnMVxf>;Y!Se8@T~4dBq{){4cEnFe{vm) z^2ek^3vY2QzIH}6($wHlwc)E3lRlv;47=SxnIHusG`_$wNOG7#t?$t2#y=5^^GEGz z*pGw3+RcL+VWscV+v5ufwtozo;EOyN@}Ly1MBeE&eBSLl7Q}%R0cPtckP$EkU-(Vh zG}+}VlA+P%B~635kiO3aAMA~FO2d(4EMZ{$NZyz|T2&jL&bP$syK9-Ni^TT@JXVQO zdJ8g%K+YtCXr+=WiY|w6!kq2=$~z5C4<@Ag*zCmP3_juh~}XDD2k&@2!BP zJw;)@db9htLE%KjIXS%zswTR<6yLsXXJ93-Q}T!%vLiP)PIbr*v#Fg`z>9b+U$>X> zXLjRhc#T$-mvz%uxl&8SF1FYYHOXsZF}NEf0W;32X92QWGCdgJU)`_YxuF!Sy__zh z8>sPLlyIDjD>)n2elnlhhB{fLPAfpJW4eJ^9^{U6z*zgGCzq&eZ)t>SwwtLlOw(XmdF8wD ztj0@PF!>i+u-&Xb+L@?i6&7Jy%xR`0E&X=0hSQORj3QkZ3-o^XcObJzxE_`IT2AYF zJB1Vjogkf+{%B84wBTk-UlPparAfVrbj7!3zxJY<){V0LLkagN>2!JSX$qh9J{v*m zBOAeg6y_5h5V?zHVNU(2(Bpq9yv(`^pGw%O;`UL^7dt6?=Q8F}W&nFRnE#Dwbgri8 z9ml@6#*joGN?*mI2CS~V*|S95R(5Q{7SZn&`p3i8Mi1j#he&5`m@1yEK{%R?$2#L2 z%i~z{kDJ3EF_X$Qv8D6-4+l1d(N=a1EUcxaD@I&CgfP=?zv@p1`ejeQNX78MHryD2 zCiW>Nm{|bI$DA`(|LT^;gVi=w(t|SFWS=#V$DFtUPch<>@c3-idyd7BmZj61h#)BPA;6qdnMZFQ7O(QKGe zID&%=;Z!xLChYOk*Y z24i0sRXflyU8iY>%!rS%4`aYI@;9~oAJiBiYFPQ-yYI>N%|+x?lRv0EEG9tI0^EO6 zf1|>TLis%;iH%PxM`>N}707x}IGD2QAg_7Cz_Hcrea=Kq6y z)kip@DN zJ=K$D1!W?4&w(}V<}Os@hK#RVH$`8B%AF|eONCQ6w8F*)y_n*I;BUn1=6%V~sE)y? zFqbD8MUI=BCGep<9yb{JNo}d^fP1Fu+20k|Pa|_|Bxj)Ptt$=)Xg+*X*L-id>GWw4 zXpAu>tM`IHo&i%}gKhk|{O%)J#v*tI_1ASV;Hh1uITYOWb%$rH7^mXm^RPrIzfFe4 zI;P@WL<#)zw8j*V(p*t#MeLW(9nR_(Va1HOrblc^PGrfsabHW_qppUC68FFoc+QT5 z+^5x}JV*$kms2V$G{q#Yo{O*LN*UDe?j+|p3v3`-I5e+f<~V_!aHC0NJOU z)gI93ijcESmzzPUK4+o@Hbi+g5K}$h54&6VKLv>@_xLj4OU_wL0R-JDl1gNUg=RTp zK4b)*C@lExaVq*$9F&?UnN>RvL>*&WUnXccxVoZ_1~9(1ZPuA<7}y8~m2a z&)DzbbNywh>R%r9?n=gn{swmCJ7@8S$)B9nH{HWu=9*UjWl~=MsH-^gPm|#(zfJNY z{x;d=@c(C$SJAF#rsIIK8VE9pSz`0XZ=cgfL|llAjV}Agg1U`aaAR^Wo+v5;03h(s>%l;(Wg6$Hm5(y zrw<1Shv2(xf%bynv)ncm;)w>pf`hKe5Y8nF@|m;lhY1TLnXwLmZVjWv;Ro$Hwjm=3 z!Ndb2z)hjrNM(~rS;}a5#j0;C!V@4S&EXhWyX?7hU~}5inj>*k0Gh}wP91Sp7Z9CK zv^!yDER80DB(B_J`jd6A?h25Lw7`nJ_D=Wq(A-)NEANVH3ntF!lHBzXw&9H>ck_mf7 zX5CCV@gH$9V!y@Vg`SIF*o}^vZS(!ABVijLZUTanLjS(NHh?ZLEkJNa8IPCXro8TL z=;D(xqG3eVII_-OBP`ZSY2hb*mejQ7FF^1st%Y+4&u||cmR`>?Oe5M;&&+99bEV}D zQ1VVHK*>9SgB=aBZ-e@0@*Hvv{z_h5mwor=spTZrzZ4=2AnqR%?o1HSO!Y$AnyAy{ zm3z^``IHl4Kxop#LT@LIvx$*PI%&ubs-F1y2ja#6IyB_K>)s7`78>_i6Dk##wjdyd z-VFvvjP;Ky2szfxeL`OFy}<)O;jnhwKEIm9tYbIGlNFDM6wqy?a;sZ&TUgKQe^LPb zI1KNkQD;71eRfN53idPWtB0q&e}}+D2g>^&F=zoR;a&w3w%zd>9fQg)x`yKcTf##Sl@*y3}G4jFvE8O6-$}fx?wDaX+W-C2F!b9`c zky7?Uc>&gW+qqP4v)zW z*)J?2^_!@Brq-i6bNYFlz)$}Oxf_&&zz68P@?$6R`7m~oATcrIk;?F}Yus95>_sI5 zH-nYa9nHPl(1+%)jGZxO&(FO($-TP&U8UY9M!F(&#NLbqJQPj3AWtuxP-mu z^2Pt$!GF#wB1g4}&Tf6M%XJZ2m8L#O>{{0T16&ve!MoHvi{Vs7HFER2P^D%k-hOJ> zkKFs`GV^+$pauuyTL~r1a>DV^ErWxkP=KWrVA<-&KOZX`CFh9Rf$mHNnp?F~Qu5C- zTvhmHo1+iP#w4Jx(A#>-Bjkt$<&_n58_>hhX)~0YcyNNv>zzShMpp{&&k72Ih<+0~>Zvw`Xmk16^#dFKU zgs%z9YH?M{Q5TjqesQ=zs=8B5DREG2*=A39)~<&i?b$;2TuQ9k-$<;MZNH}rMgS7A z+&8;mWiWefJ?E7Mlk^wm2sqIaKx&-NEj=lwU;6AlYn*d5Z-?hV-rPXY-{<3JA^=O2 zM8=6eU-J(p`c=AfZ*>KeRK!(cKhxiyR^(2}LW{_uYn&hZ^wq{-vby&@{TBR;Mt!r+ z=L!-W{2#%=x#iFze+usVE%^Mm;2MHscMrA)tz-LcUuY2x5^aY26p}IfN|G^!zkt2^ zYEweu{spY^#myoXcWM|6`}z6?s9w^!$t!~WtiW`ie<ijPV$6~Ua$R4(ZGCiIxIO^*9^>b+@p*`-Y&OS>XJi2ZSfkT7QyfeJ zlBNhsiFxOyNgvC(U-%U=%yFA5{rykuYmIY>&+{P{^X|*fBgMhF!~ZJg|C$?*!UwZq zUE1+o6i|Ni0PbDepo+3XivYauFF{9P=rtY+a8Gx&1H-y5^3wZ_*a;YBz9TQf2?dscDFSr;J*rUvPKbj5;$>$^}S^>a}EHC&k-@L2BJlWwiuck&|wU2XdOky^3CxB(ET{ z##Smo^BM^@d;uHj8_~ohJi{c!74D1O=Iy&+?sr~lAe=aW0_(fLnO1iKeeoYe7I#|r z^1X(QUB1-r0>1h4N8ROMG;m=-1f@dZaaTqhZ=#8^+b;q=oV;NR=jo4QljBC zY83nZtzRnEnT&T6`@aF4m45>qMg9Tcbmtko2Q|_GH*(TT9J{>b#b1@Bu5)EO^ zpA$(Cy4`kh`va8_AeY`1xYstW5x6%rfQR5j=!XW`cOl&8yt7&LmjeBe*+C*#h`?>EPYYtDF-vGK+u9TZt|C~p%ENg+j8Caz>9;Rd+2>!QeU2dw zj*|NJ&7^CYc!nYI(wrSbezrK|zfvL>i%}|fnqj`dDTOefKZj#LP}N`ZK4N#OiW=Iq z#yUYSwL^n<#uwFc$*7SUtjDH$?-p+^C*pmEM`Bz`VCN`FtM-rXnukK)r%s zFgXKIQA;aS6)H^X@kX(AsKYw5X)>p(J37j>8Puf3aG99wn)B;I#w1M9M1`@q)SkFD ztauT7b)Q#bFeF)94h@$GYQdZV_5&~!8GfZ<2vYoF<|1Q z=%i0q*<)R@dvr0asnoevDUf^r%(t%MJ(X4o8^cvsFYd+?gx@Ow24ng#@6c9(xP>s5e| zE+h=KR!I`qR~=o}yDYvA4j2$)QVR6dP_(NO|FKqNN@QKb4@qia>?q@~Z?zNCjs?cq z!g=KvC0or(g2f{|y488D<$xLcTetr8Zyh@G(J8Jx$zpCpEZV`?%Q=KlhW&5;RXZVts>}W9wcWe5lNaY>?ji2?hJreOd5=O#GQ1>)moF(s;(V`6Z!!GM0+W zcuC7MG`RR=MaNwRj6IUR4j6m!w9MUo2&oyGnjW(7^TLDqG2eM8_NjfEoK;`-A6I1` zVo0b%erSJv1M9;2+6%TDBc3mMV>SB2@FH4X> zaoB~T*?VFsND($7;^ha0OG&^tUICn{5FzL!p zaBNZO?h79*gmJphlt{xKb9E_-SV6yyTMdvOENT`eh(n@AdD^?N63i?kR_TI()cyj( z{tcx6Zy<-?K=T2UT|k-qSL;PMy6BB^%P2v6-1t8b1S>&vi!+NoCLQRzAGsRs3VgaW z!g+RlC>9*u{3opBTZHCttRoR6J&~e6d|*ijaS%0n7P9&p;Kg9!d+BsiK-!5A8P0^P zV<(7@Nsn@>1p-1Ti$rDem5TCOG|PlQapl%5}you%LA94h&fss0a=i7 zHz>_Lm%RKiD2=Dc>0#-DhK(lnF4AxBg)1xP4Kr#IkL2iEL8tgda|1C( z<77rdPk^84MBl}?bGVM6MBKjyyn1wY8{cXSuhaqy3v* zYeIrd#yA~4T~)*_nHvXluK?7{G|x=sTrJcIPh+075zlE8Uf$=PrIQ2G_BE>EgQ%Oc zsEwEM_B3Q;JC>;Mt2cL;5ZTK+TYsCq+gR?}33r#vIjg6JWtsp-5t^Q5pttV}x6PG% zy|KT6Q0;9%iNiyh6)+&+t;I0F({^ud!oR5Jfw?{C3>e@oY}{G?<<_gP^o{S$Y{E5Z zBsVlOyftm#C!np%b8X+%WgzqB)aJ(LglA*|7B5FKz?C13?zw-;afbaNQ0sWD2fzcUU0T$#t$t~H zb+KX4g^^t4k5Rpy^|0l++OfIFP{>OQKLb8@ZrbCL2)?;L3v5>1b#&BjF?pa?F4T^_P*wL-VMvHfE_N*V zyI8d^pICP+ko&Up6Uonr6yvf7Jk+gOqrg^Y;6flPnAE^Tz|hZ zdwKA4X@9-lB5Alw=euTOdw2!bzuXS|TJ66(W8ZLkq*zjo4AR!x>cV++y!+y%L*!_2 zVbi0q*kW<7UO7{V#W}q!@^(?%>Nbf3cv5_2Hfr=t;7KQ@Lps`NzZ)aJ-D$(6!etbB zY4W~r@O!RPR_g2#(NRWueHt-tshr~0UEkVLE-eiqNoA=d(TaDSb2C&(-B=S zK>(;cW+FnxQXoNjeQVsw-B)yz%Rbihi03mBoY9igzbmYk1Oo}d0) zmJP2epg!brn;A}_*67fto|C&F8hd8V1Go3If}D2`^avs8&fVw@12z5F1~uVa%ig(>siD)`kvGc5i+%??dyH9A!M5-#X8D&PfDk zzSeCys@>|FPdLNbOR>}{M{U?@17gg0fr`4D8(XcFBYM7ti7(Z|{VX$4;rnw3pre9a zPwo#RMimLUJf0-6gk`{9c%S{!g~QSp!~Sp*Z^lO|$Ue*Or3;S6fc)?IZH!LHHO3Gd z_=s;h!Zn*l(?Uai34Uq)vFd;k_4*_fgqeZpBEKA(cMJqOUWt(n=&hR( z>-5;nEyni;yE=|7GdweyC#9{{r<#_GJcleE_r%hUtH#kz)lBB?e7X9eXI7}FkrLyO zmJ16yy~#%nj3%F~{Bc-i8dVVSD0S+gtHzi%-t=C(SF_<;@7vDUJ6msYHWE?L&Dh_b zT2_{lEW*XV+&gy}*LY3{2q!T^`%aw{L4+vR6(i_SEbBv8q1!h=EMj@;1LY;xY68WA zU$lGi`=l97Vw~O|Z2M~nu!qxC5Ty@boy1O>#(TVX91h2*lipT<*P&R4;H^S;1fROs zg;t_laz~8~?HH~pX+&&*KZvjJ5*8p|Ut%5p8Pe2{)wSv855cE*({vPzN=--39rX0WtOUizuH2sGE1Lf}n{*Lm$tH9%Gg?9Q}unNJe zFzX0T2xHRO)8G4h{UF2(%#s`;?JJ~?}U_v(E%D9=zsh#375dc!O-ImGQ;qz(u{(km& z{~cyDfvkwv1aQ-X*W>Y&zuoWc(C*uj-7Q!3$Q}=3spkYL?(4nR1Kf#=@6VU@>~3tq z?2gT+pUgF|Egcr0a%zZ?cH2eV_l}W?qvy9)_KlQ;SS_}uZU|Z`U*e)Hs$ScfyLN6a zk=w&UE?<~TPBP5y|BOwwIpQ; zYBEN#$;J8R$W>$*6Yuc^Wm5`>F9|BuMpjm)5ELTwGLp5iCOuw7UeP>7<=7Ui_;@8l zk@em`ywO@X%eBr;kVp8_9N{l7!a0bAT9}Gj^fKU95I;Lf*}9!wB`L9Xh*uT*;9hsg z@)=r0m)K)1+^+w(7;U(>FLGCs(1UO}8Wdgy=zU4u6khhi!3$v@#daj6Kj3{8_trz+ zFPElOenQ!gd{9~Zf@df7A^}k|B*Bh?9h9yfTRu^G8;+zt`Jj>*Q-RPa;e4(oGApdu zr*Xjw*!42+SYT-5{jJ% zBpg!{>jkMD^NFR?tG^#k@f~WdROifGP2)C0KT{(fnKmi&sdP<{wDPHN9M|>kUY@te zJGn=ox;HZ~YU@gUEzdY)L~yP{rE%bF zj_|6~bNp4VtEgiyHK#k-6>r+S=W2S%)7zI3xQ*iVt{)!jc)s3SUoh7z=EBhcWq823 zL1@#>;89X(W6|qpTPHctC7~6Uar0MJS}t!f;=$-_i-{4qk#PMFt?^yK>U6oqsw5(4 zbYG(G?=e>72QFFzwtkKsK(Ugm&lrFv6JNw2fx<&^ZODZ`5o#vCT#p1kxyrF$v; za~DnjkFd7@j$>PzgvHFv%*<>t!-!cHGovlCn3q_x-#3 z$AmgU5i?ntdAiTksh-nS?ZmsP7La0JY$6{B+y~aU>INlramct7Q-dp+?nrA&dT4NJ zPrBo2O22eQLS2$!@O(3wS0}P`%a+~)#}(^Kgf`FKN&CrbN^@pgY>n5|zFQDy;O>W6 z53@z15fAK>TSNY!XKc3lw~0>{Zi@4aN~!t#SF5*3YW{$6{IeBmEDx#d2S0+J`P|^S zk@#-UJ_V%toZHB5*$T*Yc)RjK1G4%!y@E|+^!ruR2kwkr)sPV)gf*R~b$SK(XNf1b z-5T5+_wH5kr@yaP4SQ1>lboFk#AQzUGt8*2ZVo$2ho4<^#vZP}g3D80CMQ%Msficu zGPw{6v=TC~KOqX=p@}xB_TlBBr-8C3HZ)G#FRQ|Gei#ZsJP2Em~ zC!BV*SlalcZ?u6?bE;f=NK~Eiqm+o#E@b7tY+Wbz-P_%)xIj!1TWcx1Fr~B6dV;vt z(r1ESbvru+Jv)QwLHBB|g4XwJZlttJCpJd+e9mM3-ug`g4U*UO^boDFqiMp;bp9d4 zeWAUx;^^%OZ{NH}sg$eeyE%We^_cDTz^=FibK{KQ|PDCqm1@=@cgtWZ=La^$2iVKSdcs1E$n?!i$) z%*;^4N1BLmRh>=cU;Gig5((-Eub%eeo-(3SLKkGnN;7X7ewIODdp3O0GgGTa?#9)s za%M}?j5m6c8WtOlji}uQyJ*d9sJ&4DM9rbrk48qUGIL~GkOMGd&@X+p#!>a6>tu7tJGJPI5boT6Qh&d~tfRJd? z{B^6KjXz)~cj%>3>Hn=dQ#JVFT;28C)%?Q~)0%BA`kBF2{$0Q2PO_`zd*WH^fR8lX zb;ec?qq+F%=8tx|CnYr>rdo@v`3?Z4hcug6E{xQOorCE_hZbk@q|ouPr|Oi?6jl-4 zrL-g)v$AhjHbX}1DO2g1&!H#xX~NC*kJ8ilCdfclYXT+@v#@4ZZN5kV?lHJhN7!wRdTtPmVxE>Ix_MWF!{8j0G2Zq zqtVhwKyc%0*8>GyX@)Ktq<$yFN=+LK4qy8L@5Z2=m;gI`^8k9<%$Am~@@(BYRypcvv7i-=wB`h`(cO}BG4l=u)dmQ`%x=2~b!AFnC+=feV zE1A__yFGh&YY}H5yOOqqji?!W4_XuCkoxGpT;A+3dt7ACYC!fKLtaC_Hiz~Of~5(} zegb6}Qrd2ti-iTpd2iXc`YEHN2i=t7=cvb)!^CjC>(Rc7)$V1a*c^MZ!7)5&Nwxo_PF#b?#_V}Rs@7y@(qaD7dtzvh?GRZOZz^8Qr_J9&C-_uUnO zMV_|j2PTZ^V6nfP7@W3Uk;(-ULt(O`jbDEYE6hsCN)?~$AWsBbRma%U&W4r%0>qVq zl@EG|mumb`5&qTmqRY1xdaw1u-YdjoU6%PymY=#@jt)CpN@5!L%^02FlVy|}_=a_M z2m{@xoV78)2O=40Yo}-)#}0JYyW+rXWX{V6BK#^L+co6g$gCG~+u-%$cJ#W~k`E-o zQJ8#|*zDf5CB8!3z;_(Mjj)cn9v|{CE&qOJ2 zmgX;$2CL;Lncw!Usr|XJ?E;Nm{p~ppr5tE7zm_;Vl8N>PeTS9b+uVQOdUSfowPbs7 zh3;$ww58sG{b;aaNp79V;YWizxy{fFH^js0yq|aY&MzIeewU;!Z9r6FBuuA>K z9Rx-fg!Iz$#nWn)Z)ywA25V+pOK)qf* zaWRQh6cS@|m;`*HcnoP>E^5{2(-p*}?P{j#;(RJv;ZxD!&f>`QoC|I>FK!LtH9R4( zT-OC>(SZu7Xw^tp6gaO|ra%vEP3f+>QQO{In28hLYfwe@nAol6JgvsOPMN8ObEt-O zP!J4ljX~H%JO(M%cipYlKCL!F!r_Dd@wf~UmExa&R;^wlHREZ6(LT3ZZN_XP;L`s4 zo}GfZ<6=?lhnu^Nf~O5|@09BBfUeDeZla=04f(G7AnkNH_Gfn+4Nsdi@R0BRE!~_T zg=U6jo;JyATa8AN|nK*f%Q*SGNe=Ga)&x|=5s9<&{z$y`2lHD8!TA17ny`h=KP zr)GOfM<6>?%Q#f~wR)2o04ciL+`{g=6$Lu*>e~NGD%MT!c%*dWrm*E$1BG7p0aR5jK{2YJiGAffR_;}XO$z@9?gCJ#$@O9t4`-F z18M8!C3V=BYn|8}7G-`U74~!1rAFk%_=zjSr;jB4vDd>v`&?dvDk9BcQmYN4GZmkc z{59AD?MO^1+Wf~vHQjv9d%L}Y3CN>r$>iafQ}K$M)tj-^=Sy9YlLu0a*i#~stDpht zJCWy~#>K1zCNcJJm`=a*RRi2tn}ssI~`+lf84!0Hz2lzjemz{$vZ&BKWU3m8SK6)uKnY;p839HZN`nX?_sFNju6-lT zMXIDAAY$w+Ll_IQi2F1hs}n2L(?pj577&<4Q5U>J77f3y={^u)d!aG6P#8M72y-zA z3`z-9vN8RTgo2PH46~=x4g?q`BASQ{-QOr=b)V7eN-I8Fh4p1Me9?g%`BK3|CO*4| zA-SYKWf%m5LIy%u=frrb76#Hci-5rTz!4$FZHnzWPJ9Un`=23EK>r=`eANON((U4} zkbI9Ji}e=&3Yi6kLM9y6hosP#qcTxU3g%)>YlDfiPWupzA`+>Z#w>0)gE4|&Zv;gy zZg@i;h_u?7;z}nDVrU5!lIM9QrOX3VTTyC%W%*SULO2gAV}T~L9_+v_1O~+UMWlvb zeCH+vrs4UMD8xt*%>afwX?cKOQjnn9hQFtt0?~VL%Y3`%qLB z2YIr@6C?53_yuDCf(o)hk=lS@pFJ);TC!gSA1@qut9}M zpKZ6b!o+!6;R=G`V+-cBLDgapW)0L$>xV(rdL7FHf2^U*hC>Cx$?zvF%i)`2_)cxw zn=t`A8~*3eEa^aiv_Fun5RzSch(QR7LQsXk?AlAS%oeucQfWt#7pdd0FbF#ZzB z!Hh|U!cEfV?uhr_d}PHSjHz6ibafyl-;7c_z%Y-@EQKp znJ-5H^~=Y_F+Q^*kksdC`!irZ|K|Y%5R&~Ky>)tcyam>M(>7j#Spko}%h!&RD>8q2 z2mq+0Vq5+Vj zU{E@NpM(B`e!2aq#P9S-FQdbQsWa=-x&xtiDeGR1iq3o-T}>Q4Z5-WQ(i5S2yxT zM5Bwd$E%Nqa`hkgU5{pJU;8V$=PQY!8~eM8oQt7)^~bZOG-^$ij4L%8s1G+Mb%K16 zKYCC<^nGMGdd8aSrZ{?Mam2Q|+}RLnV&f3w`xhKW7DhKNrZ<8{w>w6OJB$bzJW=(1e+nH*BkT9F>VF6jLGLFRs{sz7D4S2|(-YTjlM!TXf6G1=b@^yV zUO(?XaPK`#Du$0>r(>n0A7SH}oUD7Z;JMq@ZYx_@UqAD9`Aki3O)0p)ReQZDXSr7a z#sgA6!PRbe=?AUkKGxA6Jy?AD;{G<`{^rl0t0;RW*OrW*v{+JW3NWA4WTUCyrC&?D zeKunpI1gRf4qIUsqQo;W)zLD~FtCiucUT~Sk<>hx-voE)vdgscx^NlG&5Mo6cx3o;MUyYpOVL zp4tpkORVopuHXBbWa%AmWt48^lg}E`gGq;XEN3-%?lAD5C><-rBfAtCNeu35h1bv1 z=MwI3qimw0`X9w-C|y2@UGF!hf-s*Rp*Slx@`|{=QM#xQKa}GnJryYq=WKj^OTgNF z0OAdur{7PY!=!5 zo-p5SrY|G`YT*91Hfag>8xYvvW*T@)&rMUVU@)Gg_6-R$knNC9?P44gG^OePqUQ|h z5MICkpL!g8aplNc5YNvkbWR@b%x(&$w^ASWb`Rirp9UKcX%#iCzp8xyvLiAONbx|@ ze&Z!3s4YhWIsgw+pkY^o2jG=!0(g{33l3UazFrN}+}2y?uFdu|E$K$FfO(*X6C5M01s622Gx@0wH>Z}=FIY>86q5wE>GtmMSP^YCxljE=0{<2DAQ-4P;7{E2sA9R9Q*W& zS4t_=p_V`q1%F}uOT?M57{?zGKvw^65z#~9jdI=ke+yvEgPlX5?;ulP{s48Z`w$H#y?m6oC^k$N1DITtb=w3MmJr#P_O zLpn&`gXSc+9T7)(>Eol1Du|)unO8E98T4o7MO{J}Y;1cC6QOxR%hCLJ|{qK(=9wHw2pm;R3 zWDC1j7L$@_N!Y@cLAR1l11M{2L$^|w`CWL#GTFBpsYa8k`Vn}xd0oNq3WZ(4csT85 z!<2blS(kyg0k>RW97_5UC4-wYDbW-(%zm>7hYy7`1guZ_HuQ%}zogHST06pIb8c1C zlt2#|^(^rY8BOcHGtv`*9v<2fCt)Z3QE^MhM)8MW8<+gGJ8D*w`< zns*G;@$T|(9q;2C4Qyop4-#$#+F8EC56?;|D*E64vI0Hrj}?z9|Au%h16qOp|FB}j z=pcCb0O~ljA@SDQo5Eva@@5Thc*VNM2%+_p56GA5xHpDO>)DJcYhKx?COf-!h|b>c zn?ErOrqPVO99@I`RdmsralNhcz z?^EeWW=HZc>?r2a4PPP}3B;TOCK9ZR2!e$N!)I0eB^lcDF_Rk3(V|!5M2h^S3n8`M zaNHWr@RAps($0zlk@7=sI;uF=y!jcInphA}YqFxE=Q9NEv$1S+aG=6C z2~ezMs&>mXc9b;e{j|XALyA-acve`8kOCRnCDWn9IJ00FF>Qv>CUiyUJDHZl5OIg_ z!Z>yOmSUB;b*q$Vp##eG`A$%5aOnIwG1WR4mpO#~!&TX0G{345ydKIJQ6`$$sm4Sa zl2qF{8cYHx233b{IV@SUK0xEk=PFcuwm*uRKq`p~?OU`8RmR{{yIp5Vmsxsx>q{Or zONTSCLO_iXp@VeLYUKJ-*}Rlj&>B zPSiwl8jC>zgGXZ-KA0>{W7(+5vKUvSBJmC3g~%EzEKS%)a!w^mDR%VbMHY~Fi5f6~zOm#rnCedn#!PA<2K~tZ8@l0u;LT)Q?r!I=iz}0rfRNl4EGz}qZ-Lc zuCUsL9pcfXPZtSm?h@Xw<{{Nig$aU4zYa1G=6$mgZ8maRXWzkT>x64E@}#(=wb3z} zSiEpy843O*drfK>ysT<$)MALh3@lEJ(o5w&uCIVZB&iuDqO3OuUD_B*$dp3aD8`=( zPX^s$p9JZNIt@`=d7r#ob@(j8)T2ULIUYfc)eBdFu-2U*O3s;>Zz(cQ?K1+Vi%N2j z8p1@9wQ@bR1STv4oQi~YWM0H`rHmh)`L&oNCgu@NSwXxSYm~))`pl<(+q{TB^B0}Q zirBcSM1&_zUc}m@beZwa_v6HbDLMNGG8!?=3#sIpr z88gI+w0>k;M&4f#jsA4NnZT_=D?9p=A|`D^eIT7Vb0IAc_Mc3x z_d=aHKm}4yZAvD&NR^dFRaJWUpQuH!|3oE03ZW!ktfNXpRQs0&dUZex;^DFWSTNlg zk@!S%zZ$ty=82l*si{1iwb&U!2W7UUu2xU|tEQksV(u#@#D6p{&uDUJz-7HH#;`v0+ej-4=|Eg26pvQ}ez@>sR{idJ6gD#u-$TP;Sgk z194Io>iFz@bdN7Z}E2%<_e7-}? z+06gZtbrDugE>`Dd)3df$5ap;#f~rj?Ys0ERaAD`TRl_|J`DG>038gssPK9HPsClQ zo%mV|Lh-@`?kT%u`-^cQS-LI9L?@4@klde@;Eln`7tuk3cM*tYBU;itagGyrX-Jab zwWi8Wa8V*;OVz^XD(QBRKT>5(>1Vt2wsefZ3#_c45QGO##Wi%$DYM+sf|bWM4dNV0 zcJ)HG97hSzkmA5#OMmV-4Ui!Ge)5Avi}~cyFGERS&&I^Odwur}%&z|FubA=UoB2}* zNU+do0FU`G;6j6v_I?A*ByNnJZni@WPx+715ICSx3N@fofRZ41oFiX6#coC2iulqbhEGfTu{{c9bG|%JWIZ3i(+jv`7(BRB3*q(D6 z9}F+@T}L%7CmQ-H;Q{|3)w6v?sGd|A$Yfo$E-(|6R7Y{0)ObhnAE|MU;u)z4jzfqr zvOHN(B)hH!5s~p|G3djr{5V5r%zvC>5_4!X0n(TD4_a`!7B6IpS%*aN-i2vmN`{xp z`lEoO2yL9BCsK|h z7VrV#Gtdliju+()GMVt9sZo=1Jg?rlB-ntvzr&K1i)qJW{1uijeZTx?G6S8DKdW?- z3Z~`f3g-&p7q(y($c)s=NIF~LCIq@%P-&j*GEeJ*AatpEO|)Xu|F6&d?gN&14PqGb zf`Mw}Ma9iwUa7rr; zX{v5_eHO-5iJqT8W*htDdpr*D$&Whlp18EpE)NM=4L`=Z+Z>^E?T2})sNe2=%t;*i ztfP*?M+vV;CRF+3e?3I2SCZ zP%J7n-#w(~Unw~Q81c|@ED@{VG{IkBW=2E^ZaX)_1VL891k+f17x$54gkN`6hH!77 zhlo*p^Ed*22ZG*&(jaZdy^#`DmI>@3?^uKhHObc;1A)1HHf+@f#TBePi{;R=_0nr)m3Um=G|K(BFXs!c)HAK%44`0^b|T zKSbPt=X+g9Go|^Nhk5a7o-|CzFPHS)5TZQ;N`%GOBA8MdB=R@-9&%damuc-k-0DC} z!-PoQ4f!NdeL;$6iACWD9Y>h-hMYTr|JR`UvY7akj}i;`{}$uo@%!`1KkuF`{w;7hCZ4lWAUyoOT3R&`jEFgWC;&JU@{P9A5lx7b( z590?Z!B9U7fg{kf{~?9k|Mwuw-;N2t=2zZ8Q)di6CAl95^L?m8{OuTyNKKa^S8k&a z6XDHW8C^7t3)T(vl(yFq!yjU+eyV>Yu@DvlWviUjez3qvq4Ecf{8Nj!|L?%q|0tRJ zEe0%l$>j0OTmuCQiM{s2IAg~CS;F;x^C40%Mm72~8oV|$f8^Xi<2wRJV-LB+1Sm%d z?hOU$s4+p&UCW+(54n$X57~T*83@?6>homPyxtgybh_3#Xm!Xl=pM(r3CJQhyEZ$}|fc^bOW-F?g?^K`b#(Zlg^2&S%h^j=*_IRg!S;XPEQm*vq}IZrr15VF)? z9dxkFpstU_8b?yQ_xHWZR^5n@U~k-4H^v>BLFJYq<;T5o7DLUdkV*ti+?oak$EwXx z!kOrAk6x*cDY*NqRu*dyQa4H25D-_+GaH9obs(Yba^SG3YdQXEt{H@Y(l!4D;3dUX z>LG}ODA2NSVH%1KV9zq=nf|sK{%!Pzpw(2uZ()PE)Z?tZ=lmuR6yWkT`v?eA`Uj@; zZr0$hl{7&G67B6SYbPyPts<@ma4Mf9RN zntk_w2Kxjk_NKT;5V7p9aUk^Tde-EX-UE2ja$GyUeA zvAH{x3H53S6#2Qd9gzWuHZMG2)nY+{nSGRSmcN2m|s^1U0gkM`#B&8Db@THxM+gZm1E-!#?P-pe+o_OKscOw2}I069a;w-b|W1Zgs zhCo2EH`Kf|XMuXdVUVev`()uTwYEs}gdGAGcXmZAgPc1pQnito1=P0Y_U;TcZecpR zmHZ_kTo-E-Vc+y(^l*l#)$5PPT_J$};fpvj1(O$yH%-R-zBdV6u}`-=E%UF}LuaR3 zCYFzCZ@X6w42k%&31bPTpoTsiwSMwr98%62mr^7t#yzNb$fFRz}^t#P-U( zR^Tp5fCG}1iN|>;VOM(UIhr(x3kY$B5VJsMw2{V}s5cLq^Z2~1wEV23MH~iI0F5l7 zC@-y^WtOuF4SO6pqQ1RHsxkmB`NO%oGkDo72|fOi5_mYu&$^fA#T`xzBNQB48TNN3 ztIBd@mVH#xrJ??;43M02Kfu~|lrQWX5{-MdZVun2KVgf~7=j~^2H zj}?a$_vG9=&6f7nP#!C}*UKG{8U!NsK#qif>U_U$PNtai9jy8@(5l(_jEE-rcjCzQ0+Udbrzj1!7>i%X zoEIZ0B`KAa6alyeJ?uNGB*=s|=WB@oq>S_u#QmP6rxO-B)H=1DW#cWd51JfF$E=9& zassj<+Hp<3vY5nB+)Y~iMXKTs*)J;~iw+l(cS!`0t!8#}*F5}yQ&E#{!UaHbXT-)tfx-;Gzp`nacnkr!|%1I+J8l zz%qEFDgsMl<72u+%N!8N6a{)PVa7tsWf%&p{3aeo%k=YJK0{=Yv;YK_b{h&q12cmP z-+1691Kagr9YrR=e+U)vXSu6Bc9Ku&fqXNMx4Tb%{6!|UOJkhsZumdc;RgIsCx-IB z)!8Bd)$zb|`@NlE{s+wT;MpbKwe)Wwdn{b&yR|5V_J5ONW4OKbP0W7%_^&Q>g+h`B zz2G1q$FTpSXOoMWtE-j0#b5iZnl(0^fAC=RY?m6g?V7{3ILYtRo>J6pDNxx09})o4 z@D0T7o;v{{UvZm!Jz_k?JnixV^Y-a`Z;#8+s3LO~;+H(cWMe@%=72d6aawvhuDiLF zQrlM}4wjU#2o_pHK|Vj+ZyoQK`+}T?jMnL(o+wm@hu&??8pVm>w5@&N?Qw7r0XF5l z^}oxx(E;}^)g#3R5n4J*l9xtkkRogs8)Hv(%Vd{&QM`=J9L{#xGIT38I-)=HP^s~7j!1&nRLr`#-wnD++a3U4eqz?|Pn};5?nF8NQqio%Ixad!NJ^o^ z3B(>sSB#4gbbJjgTv^4&>7=iB3O+KL&3c|fNU8v{7My z5s%oAJ>2|WkQY43I9Jq^=OQ6{-x4=qJ>I2H`H}L)pJ8crXn7!xP{4Xsc~xkBei=_k z3Nd-JoGb3_Mi{A~MM`=r29^&i$fVw(tTzF(4a{0$rZ+ZU5pDeuKoYK6Z3U@VGv5A* zWvp%_%O?^%J`H-Hm6g|$LM&8GaPcyQuV zWk1#EN+f*)+xxYI?74d24p+`}31L0K5AuEvz`y}T0>rqh6C5maptiRcTzE~w>C!C* zTXe$3nJE-E_wMbWOlGb{cN<~?ga0ao7ZhgA1KEQLuP+o_e3%;*a!I;VwX5RI%$6}J)y7+wTkp`GOmD5u7 z;d~6%b!EdD$SNJi%ANf84P%or_a*vVmuB^;!`&D2lT2RPduHK@c22LHH5V3HV!p1o z&8G5K`OlT3z9?>!8w$S^?1~M>H=(#L&9~4XC%^CrHA_-?rj0<6ux)h%+JS%1&oo(fsyjN za;C+Pz|<0JM9bA9v@o<(l4w{24N~SeT&u_x&sv|#oW2tt#HQbKujR@%=s&ktp6DE^ zf&g1kwE+MA^b`H71=UwGW7Yq0!AH;bTMx1zfXsUJ3>+k=?wdxjiYBn(5OyYsv>-bY zP_i}yH$zQ7|6`f5Xjt?RnQ=K=gUm4s@KMR*xKViogsWNvbNHynXVmsVLfM;u0w=OE zeJjkG*BTn4`RJQg8lD*00rrVTQ2b?&D-kJF#_5T<*p`g~#uMmcWiaKg(G!Om7&G7W z+jnBqq(b)no$>9_yE zLNN04TLevNmaJ`JGX^T%NJ!Hp622D*Izb)Qdivi@Xo`iJ!YCLriF+pHQR% z(6`f34>wwvbr#HN+B8zyvn#3Ky}hd3He5erM!^nNP#F(ITdWqviX9 zD3e;ra1s#{l~D$|TGjuZZnkyz3*_Zgxr1iFVrl(n|6tzJKwbNh5(L#;wt}iwQ|oSY zguAz{xF>yoK6g-oJ2CSE^=q)worfP6Fm9gRh_yB4dfWnSgXbj?nx3%ixh5WNtoUgX z8csU5<2;NW`FDLMvZ*cW7%a2x zWoD5q$9my@7{9x)el)lB8cg-(3fjvfgul+*QlZI&S54rvc<{$w8(D!jnI=t zICKCE!kLu%hX(I!qb#eG40$|;I75N_?8Bf?Hj@a7tk%-$syoh|`t!rXWTur>MFt1t zwSMi&rTTm)_3ms-u>}1S#)D7gyo^j7*f0lVg6m|o^QLrSa!HC}nmPrG!gae0OFY~Rb3uiVThB)OA}cCOy@0oFZ#2y2Q{e>?G?sz` zb5=RIh9;G{+QLQYtS?SvF=fnHrUlT%D$A+oO`EV7tI)=Hd8kd4HSn-RY~BwkJaT-qP4C3@3?=!JcALVG`Y zVSe{{ru}{X^wlB9yBTCGv2WY=`J&aJSI-YcX6U>&_w8nH?c71|<1Un1q74x$RAvLj zD=d)z1mr?Vk&Cv-?3Mz%APLBGg0^mk7=Xm zoJ=9vj;s(aCO#HI$;A~ppX?Ppiu1$PC{r0A1t!p!2kul)3hhoab&|Q77?XoF!6YWz zc(VL$HowSmP@$<-%(O#Pr45!W1KYkY+)uw=W0qWI%#LP5RN_nN)H1o<`dW0fKv8Y^o%yB?Vf7 z6~}d+DKWwCdtn{1@mdX{n}a4R1X0%J18^>w%H1LI<1ht7Un)q=Ju}a~t_o@N-kEmF zt=lHQ0b1f$wgun%_%=hDjEoveU)Dv1J1X61U9Lmt7P)qZwk6s8XS{xRDDwZbvM4KM ztdgz#Y3jKWapim0xjE-HqwBhkZzTFSp?1uQjB2OW`4oR?DJ)|tPo4eMR8ZYT z^J5^up=>i^nH$S>FEFsBd8>?z!Ei9oF8Y8_%I5*BomjIPHKBgH#kPNb&iVp!^jEz7 ziH6S_`UGL&_o zpAKa%yQ0!y*x%s*^u1f+u4_?Yhl*bPdAD(q|t(dh`wD5iM^DM@TOAl&DhEvsLNmM zuo`M{8SSzKwG2;feb}$aF1hEyz^~dS$_G#V5Y?t(NwWxhM8z#L-cqw~@Z)y?taViG zx`1(UR;?`Wwte(=qb+YAmMf{|`y_06hys!53tsy?85Xi}Op?#V2T4-}DD7M6Ps1|Yq6 zY%CBb7M?Q{Xs017fLzYLBn1=esqGwPfn+tbEkf>>Eha`*RABVDP=0Y}dMw?rI?HNf z$GeOhx+{#!u9<2QqwSi0SWah-v`xWmNDY-v9%D*Ffk2ckVay!TV$iOb+B652o1%HN zKxuLvm1ATR{Qxk^gna496!F5Qs5UJ6fk@J z)A!!Q&BfKhPRq`g*~-<-?ys-C>Zp3S0Tv99Up^A!3F9SvVHgW4DAcI=a5XZ|KcEu2 z5{isJw!(UM+`l@G9@#0pgAsG^0a_(wTpZ!NE+qlPzwVBN?@)rzgGHdTYEUdyEu^&F z+T0;Y6~VFT#>X-C^;oeMAvA)(EF8-bPpZRU-^LtqngY-(h65sPHB-E(nmO>Kn2)R| zd)It52yv89pP6c)c#JNq8FMx%gKOL1GEJR>me&4Dm*B+VQa4Z!HBcAPKXm=w9ri!! z{%Q>yJyQ?N&rzUux)n*AEGx_`X!5ll(ZJS39Z4(WW?I6E(L3a%w|WXx!ExEP2tR(g z*!dz?wuw;1&Xtu^B>SB>-aB!fS*-fnCzG@|HPK75oPicSUlo4pw{ADJya^WDVEy5v!-KuxW=n5q4 zu<;vXrfcd%GvNt+NUP_F=s&_;m7YO)*HBQGFYnY4dRuw>ua3CQo$?C1K*7d9;W+;g z{zvj(&EEeS)$F)>`#=^9iLX5aw|nEPc@UNuVbUP9HcPUf3EllDZOPZgqbuIM6!T8MkMY&;30gt&wg*y)PO zUVvgkqPQhGOrO3v+32#EY9W`l=k|m;9Ms1j&lZ~QbKQ=_qT6IbOEPi7p{n}aCFe5+ zOa2oJxU1CpRh`=@!%SK9++}{2ZSCqrE=_~OZtt^puA*`?W3Lk`NfY4t(mQyo<{-R! zYdGu!sVm}~;@iZ^zXYAvfux;N{gEf4YvW-WWs^j-G9~`_HK5@X3oH> z%%ALTT5HpOj|ZoFyHq${Qm;8YkpqIGsX$ocbF?IR^Bo8kPTg7V7%R)hmE5JtG<{XJ zP+0`KJldDZXmsCg-gj@nE9CFj>%fF9q;L!uuB$-Z(rqz@Be|*N{r6v~CsY@|RAAT8 z(7w;M`3hTo?7qj&yr8bnL!!~umeOeP{h+>C{UMzmWy>GU9X4>EvZr;ORC{1IRX(jr zPeAT9Gd%x=aK}_Le1}z5b(lTa7FxA3uke+P3vT~*-YrXM(?r9mt2T@}tb8W|9eXRw= zcgPsa2skGhSceq`dfsopAE%3WF~4pC)`cLqsie3zVlKnGHS{XbUy(F-=T4XBzYGgF z7#1L*L`x~!j6mw4sK={xmF7yH>o-%kNf-OozjhRNbAMHwtUolRWf+#jTo++$DY#%y z(`kvBWsLs~|AX|_Sz0N*5Sxl7^ZNpYf;4WHXJ5MFH}2TDY$QX@q{wnAI@5H7TZSc3 zavcRG|-oSXHv+co!sW9DHfs(Op);hYx$kE`B?SmfnPv+=p(FXK+C z`s3)~7$Sdsgl-urW9pe(;fmzm9ktY&9vSzQ`vF*+?%Ca|?rV8{@#yYr(QWAd&zhe{ z4uZWTn4#>mG5LOUqxbZOqi}oyL+CR-Q_yM38%{x?n4x>S`|11sfz(7CZXCvwSgyet zUH^=AL=LzI^n+D@Y>Xh>jVCu zUqJ<9%NE^`ARs{`ARySl84K9B`>$yVxbgyCpY}#pwoKNJW)_zkHje1(7=oQ%+_ZMn zC^U>1&;y-peMO9-^k7_8KT49giWqC1LSzyZ&@-rvzAmHyvg4mY9zq4YKk6~mT(g{% z<^uRsB!s1)QQ$FfM#!vhI0Y~az;8A-i(r+4;tjrEY_7faWZiAL%i`+N$OxicsIPz4=USM*$f}FIr5A1^2fLS6;6f`ax>vY(*%WT6lLaZnbkQs0rbupk^Pr09&xRtxf-dawTgSzNE2f;m;nJN zUo$P435>_ikzr&`w}!q&7P6v**K$MsbS=;K1T{vg-lR_9HR&3>Y)~i94fFQZYEgPI zJrI(>vyO~YgftBG7*5bppV?YJtJDqu#DJAcpPEr&cf(UHXj6vv=nO49fHai6ka)hm^7uX`9z`_o_OW~a%}&X!@%`4~w@(jrZujeWP=HW>?ocIm z1WT)5f-?D*4<#}!ZQuc3$4yFq@QmPMaDuC5^$B9l48YxzI;c50l`j9A&VaR`_50d} z$(HSw_4`c*6Y>vAd-T@87r*uK%RND8^w!MtBf*15X9vfhl--s1KV$vB)-K}Lrg%b~ zH-mr%4zv7V=~uGFu}L#6lOAF>#dStB3!y#1{dB#Rup(D8j68Xb`}1taro02#_$pt! zTv&yVAZTgj;$zj8E#v_0g|oB8@9MBk)M5eiJfg2Cvx0u{@N9xM_P8`NphwjEN6inn zD||H)it>c>teOkH4$adGs$pt>V4q^PPnOmB*Vc0eKNA%^%H&%Cdh$4{b%oDSC@q+abk{%S2GiR@iGJV2jn>}^xKRYVKoWlu zZfXAA4FZonuS%@q$FkP9u;xBvB8hyBMg@)RIHB#=>_fupWoCQXuL1b?;OVWxT7=8t10vAc^9EGYyK8TxsLWC39ep^BEZe*qvbItedf9=$S zD<&duB)D`A7wSB$n3s@whWQ11(v$Yy)4G><|6Q-#b`q_trzV{s*Trx2nFf;(IBRXQ7WPpH%vE>ZeTnHGy>Ab2RH4}HFmUd2WJA6Tm)(qMA7&h zC<3p0lJkqeBhl#Ezudkp{u-z~hlPPb07ZK}Pz0_$v7i8(tF`PDFMj}9bAT7!@)^K@ z0M8r%jVR3p`W>70yas6@BcSD{fmX?&SiT)N)d~SVN(AwU~9cJ_AEsC@TX$ zib=}A&;*-QTvC~n3ZAY+4+HcAC1Ls-7;jslXhu6;65Sm1c~XQqJ_RsykS0;kwWCkG zAhcVRK((Vy!=RghJ`sU1A*U2-0?M=mx_gyXU|?e~U|^V_Q9TKO!zXixPe$sV zj^-`~%pUf3jY$ehtDx8;|nyB?8Bu@+sGPLr^A&Y(T*YlW9EqL~&;>ctdWp;_?24QMi zGJM`mbAz+)*7WlmVT7EC=ja9|X+MBP(^ST2Vvr1lz^Mw2L5Ef6&+z1SP&lfq9*xlK zGFa`8DZ9N)__>omNcc--y(}?PYi8P}BeVtZehoK1*O2~f+z>zDQtLL!Q15K1;Z(QU zTZrN@ga|^`o=aRgIW8hNdzyMbX7vUdWo4W_P{{Q;S!_2wXubG)j_VAY|k z6RqxReH0{v?{z1El5yMSON+RnKoK>kzT>vgBo$`Zz#P=0t3RC)s}h$qqPLepDG4r3K)*)(M62cM z%QOps0Z7X?aeXPSY~8bS|8g(V^hw6pU-T%}5nU}+(Tok3w*W=f3G-S)_Ha77EVeZR zr|q#_*-Eecg84^~gp!(}2jw-)WCz9ouVsT^@l4C^`vWFQib*Z6DGS$)AQeByY2sh3 zwJB%1jWJ8UaHBJN+-LtRP}pZgHEYmiJ_9NcI;cQq08?dWfTIhGDZttM_eGu=Kd#u% ziY9gEBQ>X>8GeNZCnZY{e)Q#o3|7EW>n$gjg57u)_vGeofxT`HgB$Ut!0?r$@H$Up zGo)!qddG%9G+oS0vn;(!!7diOX z`$1#XgA8-p8W?uM6SoIwBvfz?QI%9x_ZCg|tuH4o&Q6=tZjc7$NX?;0D9P_~XHH5g zL<4i-*7V#q00V`!!*g>xYfLUw{vw~uS~zMjUz)~wX;MA{GuCrahTVlML*X+M@2)Sb z+0qkbv5Lhqpk&)*zB6`B=KZMmdwc)-Zi$fLp63Dz@5mCxkZ#sp;`O=jlHi|xxn5nx zJqGo~4hjqm?eBg0=;-)IThzxLR$0+Ho*1AEK7Fx<6;r{B4_pwNkyyvCiO*=B8zcV^ z2i3~91N40e!{+-b4e{}X18Ur}+?sYdOd3~# zlz`2+^L)Yz$_CN<(@mY(PxKs1dp%siSqjl(Vn)ZyS)}^`ggso-f-OcBHdBvk;%dr$1Z~yv^VIBKhZqacY_N%L^I| zjF{xlFRVMj*^CABt#!2rEl$6$jC~yywOwvB;92#zz1&>+Fw7jjqxdxgzLxD=HJIq1 zko}*q^rBst;uYiBtc%||8Aj_cd1>D}R$b#!C!1T}Sl_Jz_RZdI6tZ${$+7qC)`)Il z4J5S(OvfyCPai__D?6E0@$2y{Gvb`w71i%<_S#?ABR$pkf~}!&z9Pt>M+uZJkRw50 z7g7$FWzWhu4`Qyzco3gc=Ay%YVBR(MW+hxojuj;T(CZBQ)xdPVbYlP6X~CKB;o#P| z2KFv-p8J%1Cy>?St7EDua$%|$d31+32*O1VB*B6#9 zL8^A*K9%Q-75e%M_J-prmj>d!mWMQ&@sHzp8wE3xISSV}nc%BvcD#j1A3v$a)xg?61=Cw$N7^tR z$`okFd9enSRh2@S6z8bO6l>=b8li_EfG5}pH;2DP;b`v=)|e=K3r!@I6~>md#&XHe zpgm+8U4ZCSyY#OQo?=WM;ZAai`rsKiX!Rks=R+KxN)ewRd6+r}dSn_77L0XT^)P_= znhi6g>1(O|&sI{DCiwc{V*5|IvjUz`yaq*DWK9aNsP9^TmBEKA4=DxXaapOzpmYGw!GIxhOeh+Wo$77dQC!)na+FM=Zvf2QFvA))T*^iKd-wh z{%8}l&9Y$=Eg~Gywj!_|UWE?Fp!}}c5GhD0jl@V|ce;$QOwI(R+x`UHRb94UDP+$E z1`}=0*wpX3xgYgPHXnzDs^f`*71LwOK@UJdi1mLiwa-vA1I(k9kLB2exTFti^?vxJ z&}%|o-x`M%({7M6olAG86C)c~Ba7eufGn4Trct)rheJ*yED}7P^|;V5i1zM%TaV5l zti;D@gRL)%SZZ|MU07Za?{ImJC_JN?nen@g44V+wv83L+8Nt~KeX@*er0=utooFp@ zV=8#+8)})oiw&vZD86azo!yfrXj^62d)j`Z=#8S_Sy}62D*e&enH;V}@&1M0gsBQ) z#}XAD_l~efQ+_L@_;YtLlyifMpc*?F>lbk+D4pIgCuWFvM4|U;b~bcM7zwJ15XA$u zD!#lw^CdXy3`St6J6;0XN*L&&81;*SHIzFdyMM_Sk3Bl=D(=6ATtyn+R@Ppxbq(sq zFX)#mj>;9xP3pC>Oi{0{R*k<6nhNN6g;sDav=0+eOgLG-0KM1%Sch^(S&Sjq=Eo6F znj`Et3+;XE_I+)vzyqefDG!*OgzjvGDJ-ZTl6~6n(7!&dy+evdkrp{2boE&b=gbV6 zF>Y|#5|}oQKUrTULVkaXi^C@HgqfARJLTx@?QSex^zGFNbtQn{oPqn;iaE#6{eBET zzh0fE8BF7Ay$sQ=u5{{43S z=Uy~XOeu&J@AKI!LSIM%R*^%*yI*3=JOwc_SfEv1UV*%`pTmQB#h4>SZ*pvib^!1N&qv_l;M7C+G%I=a#o^^NU1V_>@cIz*_VBcL z7F{gTe7tLL|FC}1o-*J5bU6F-rad%t_sH|5PVm+Kt!*QO1-L?Dm|T25-G3OGvcEmP zdfZ(8GJbs7;JIeUQ!GMK(c9Ch^qDU#vhMBLx?b1&X?}Iw%l(VUo1-?MAN{U<_v+xr zQ7sN=&YkL$j?-(Ez-CxuS5HbC2SdvAVeKVqOTr60B5;2Yv?`|QQ( zvHSS0P5lGj2V_`}#dy*no1cCAns1lB-dWenjl`pcY6@|`)8;x0>L&236p4>a)(P3$ zK=nhnNpJP|JauyY^C#UZwO0AdyIJquHVb+VZVhR+{^X)%cnH`=NjO0$EKiArTf`w zXbR717LU^Lo3G&+P^c=~Vet)fpes4DWu^N>@o+T;uyeonR;$}Bokh^qrYFt)K=;_g z?RCdSMe};Udf>)$h{#uZG5FRVMo4{YBI{|$l8@I-pox&S16TKT_XG0Ba@6e-R5n$T zJ`EC+3gH1s-!M9#uvwt1Ti5mQiS-~2f}#3Dc;Ku$FmH<@DVw%Ma-Rl)SQ#|b%OIjs z0|5PZ!1yv?^X|>yenMsmR@gyt)zusVpT4M#@?`U+Ly%E~B)NLpeP&HJR+YUkw0SsT zsS;)0;ims*&8BY^mZ^@7$#cr$;l7hg1x`W9V+{Iv>(k=LD|I@XfmF-;ptlZ#s)gyN zli5edJExan+1o3TlQZEA73oHU`MLA{gR85br~NJ&oD3nYgoRpBZ~X@zWyBd*v>HK( z%is3zsr=4K7M0SQQzC4jzJ=K`e5omu;uS@Y1D7QJSis)Z^U~gPK|v6)_NHy_6Y!K> z5(&_XVac@ah;9B7vZ&4PhWm8#dj8X%A%l46JGu`x*)806F&`o$TG_}#3f=_aGmCPK zku}L@b+VWbGAc497^;aJ<-v^mSPW!xOp71j;uYJvEBrPIS?)E*I)GfL6c_`2kKf9f1m}_fXP_>?k2W zn6XhuRXld(6CD|xb~X zO=4_GOOr>}re70J3gXSAal4yq==4H_&{pd5UIQ+LKMc#iy11Ya2%=9xL4g(aCo?iQg}&dAmQkt65EANBJ?Q*M=+Ykv|}=D;?8c+gMEX#a#Yne--M)8iwK^eeyB^BnZWAnC8f zoJXHw`5rx#hvXQCQKmMf;kI&}{I__R7XkY6-A?V>JQTjqMU;!2XHuqBxKV7KR%^&C z&Qa&&mS`^roj#rjOJrKc2h`K z#G=r?Er;pr1J6eEkx#d%VC=ywR0ngiowOJeec1Q2$!UN0ncAFh@m|*MsbJxz-1;D( zv}{{b;QpsmI@T;n^X3`(+iTif`?UMx_3-8E<7T*XmlitX+P!Q#KJj?SAlanCBq1L&AGW+zeSjg8-j@J$hiO*qF@7zCSdCa;SYV^x|9_~&d4?8lUNpfe4Us4KnHp$ct^yu53c zm=Xb8_qD1x&*v8z+_DpnU5+i={ZQz*jPLn2#;C6r^J@arF)0s!MXOQkM_4ghNovIL zoI{Lyr)ty<)V|#J8UG4A8#X`@)7Z|ESXJ20mzmr7lUqqwF&|NYZmSSi(K(;r?BPObdEQg6yrek75{ zv;o0FO4u8Em%s?=NZXD*0B2SiHOw0XpZmwP2-e&qS&Tx@H$E;y7Vi*Y4l(ad2-sPw zI~6PPwo^Y`JkMbpu}F4`ZJ?xclq%w*>Q_-pUL$;~!P!c3ysKc?d!Yeh7cRJ8sn8u| z-BxnXkD_#3%`kfwW>#w!lEhVy?!=9m%*C(pX42N|350{z4nyWIM{dnDrZ!6RtE$vn z43ltD=C`B=uC6-MyQGzePA$Eul8SCjg;_?eLRoLCBM0KL4ACDddBy8?N)R2rFmpI6hBPzim~q&AX?a2)~6N-6&K!S zkT1KeKzrM?Y)2@>;*5IUd6rkjA1lWXXlrwttSGr2ZdF!LwCo-n;pyNZ#PpDvqK=@| z!R|HLoqby3XkwvC*(Z!EZfA(Dq0R3XFXmd49a_sl$+GniON$=A75+%X9fm&?1GZAn9gNbl~NTY zr`w`_^=2n?u9XoRvr_1e{mab=x&F%zgzu9RI{YIJ?^8(0ZW>tVxJgoroWezUBGOg! z7-mwTq%tL|2Zpg(HR2t7dOaUi_V4KNn2`7QO(#H4Iyc+T2B4P#`4ILfs#aG`lbk=( z!5=GVr_B8xzdJ!*Z%;Be3_NzO4EqK7KIi5D6IK(kAnAn7Y58h{Yq6+Y^DsCw);>H( zVk(A?r!n_d^RVD@tZI=|?H1&7SkQO>>YhqzFGfx8u6lfDxXS^2&nx&wgoiG?&1*Z@ z+_FQkNd?2j#_CY?_~7{Rt$1?V10l+L`qLod&#Bw*5cgE&oQZ2o%g~ymNg9<|u~`sq z>Gt-gadHn@Dy{li?XP;Lj}p=(sJKi*1<0dp$8NHkCs`W1#>i(!U41Zl#DSc1reAME zyDL!-lOnJWEb$SIs&jp_t1(Y)+6{>> lUW-SOXJAd5S+>myC&7{h=JzR+((l?ha zJ$!jR*E*Yr46)dpig#9|lWZsaHY9v5=~4mngUy0k7xR7vDZWi=%s+UkA$=9P1Ki#X zH&&`7icxN463=R9*>LNL&niBf<0*1o8M`2CLtAeP??+T8rlQL=x2xTvo5v=$D_keM z4;_r`R#HEP*Q`@C?m0{YpP?vDE>9g}E{|zXI7#sN9=AYIuk5Xj(F{RZAl3|lZLu(9 zXD!b!+vts<)44j_Ur=W5@SO^WR}WTW-pY;;)r864(xY8E{CRRFFCgmRI^)dYJ5wPQ z^*8UN*BD2CSy#H>+&P4|BLdv?cBF`)^P~E~e^qz(UiU zk9~yi{K-3v=mEJx$U++NjX(#4&9*gw*by%BF%Xl+rLp=4vWD1~ANG`=H>9cac)WR? zid;ZA0f#6#JeI9+y!Une^j!0KrA( z>m6RkOk{2dgY33coz5&bq}bAzEV>K6h%sa}xY@E>p>OTh2qTB3*mAhF_ETlcnh?Iy z%~ygyR$+ne zQ0~DzD&&(yO)0~@i9d<8D-QJX?2P(eg1fO4rd(~~htZi%5YUmOOYMq&b5N0H|1e`Y zCkM`gbsp?xjWW|;cqG+nCP2Abnqz3FRKj@_!V^qBSH7|+bylQY<0>>~Qx;UhV>xeE zo+zAeh~SayPctXy5=P9dan)v6M-+XcuFO)MqKSXgM_`S9q;V3O@6N##yQmgX#hka1 zp;6Cd@fhhvw-o}BrOYx(=GCI!S(0KGY9?Sk_f*|~5FX^Vo03C%SJ#&+%FIQJ{*Ghu z3e|OPQ~5m=DKjiBYA?{8Upk0TD}8cUrts|4DEV!jWMf+VN;1DfB9cwOA^9in%bxD_ zqsz7Q0gcwM+R>%YRf8;6X_(1m2M+_*&p^~U^2>7b@u79b6U7TKkoP)+Atj+bvcNpMk(ZT99AAvrGN_xA`+GJ8rOPJ z8+jXmq%ZDs0AzOhk}w*cVU>Tjr%u1l6#LnPdQ-x_(P z2Za#2sDlD@ZEVd2!pS2oy#vmS-cJ!D$99!jx5oJ7Ym^n&PS0ySQe@8#93Ig^T&_$P zNBE!LUa3PdE@iAtBSa$5LmdhEY>peX;vqqr-J3%*@^p^RQ*>~b{3 z!b)EPM+>r)`2DAt`ZX(GTdS0)L7!gbk;-8&qdJs2Bg7FNDi(@5)ZF>&6Wcp$9G?{& z@KLw;rUbf?maem?Dhf-~XnCXg1~{3n8T$FzrNbizi1=yi9T!(DaL-W8B9Njpex=@sxR!K+Jzg%vx!AB1{FIxG( z_;=K&%}R;h>r8@*=m1_^k6->i^iAY6DOc3?n(21fIWk@UNo+h+<>W&JrAdT*ks{t-%P0#2~v#OIU zxi?2bLqjYW(t|AwmGoZN#jc)W4!65UkZSpdMEGF10l_pJ409fHA(v zlK~G({&M)8Zr#_N-eW-=ND*MBwmcaDbKr%~gmr^$t^yevT~5Ljm^117Z191eXvY*B zNyZ`u#?R#SnIjd|v8jBEtlm53**ZvkZQ#+0jMAHs2?QUE(}-4P%Eez{hKmr(F zEG8|ui72DAAzJO%sv5j66K>@7%xJL!I^^C5GJn%ZQJ$u&QnZ*W``h=j&~M+pq1y6J zz9(jE=Y($Dgn#;$8U;auKG@g7;PGw;#N5Oo5};}-zwEe z8bB)hVSlTH0vx|}@>X9?7tr-p`7eq%&czj-jH_jos6MWBq76amxVmt-}CLr>|riP#op#qI-ZU}g+ND0C&fR;ljF^}*-{q;vw3Nf zFT!2$E!nRQjRC2{mO5Qn-I+y6fUJm4bXBwHUDtO1S@2Ng0(TmbswxABHV`uU#QL~vD z9k)sJdxie-u({sN_|`7cksYFfC#xTdX6?4dILq=l+W6z<@JG~yQdM;E-2TIXb$+CU zZ5<11aq+Stmlq+-)Tdvyr~Q4hr)^SEe6V#lhM*h!BooXG0OfPm8LMw)Q~kk8iwfyM ziA|#45b=@0C4BH!V61-e`d+STrQ63|13pG@^!|Xb*pPN)sg=k~;eK?;n`jtW!Bs?` zY@PWz zIU6&^psjelkhhxkt<6&n)Q#r6F?{p71x|90w><`9ZwOT@&>&U2VVlg5kFgh{|6}-X zYPmnCF+kL?a=&-q6RjHy$jQckP`jCpgQx|#|D^s-g&BeJe^6g^4ZwGVXB%z!w7%~& zhCiw->&0-G&0=H>aQ{W79oW%C*?ug78A0I@riCI`GvKIAZno{vAJ1)CJY6#&+PT|{ z@q3qD_^#P|4(TuQTh|c~xf<*r`F;wWnUzNu?o9`=jFx2^vtYU^Cynw-M6T}rt6Ghns77^Z-?(lH z+Js6SDeQ`clh-vvMh85YVgulB#B1if$ni%lZw%im7?)tjjJz9)YVc~g5qL|-0&1?-*VK%G?erZa5l1Fj2ptvl$tz(F09DazX+bQJudrcEmG`XK zA0~ftR^D_CwaqrH{L7@A-ce^^_@5?2lYX1zMf`2D)BgX@B(H*P_jLOKXC)A160^wq zjo&V-g@`yG7aLz7I{l+LwG$!ejdET1>i*91$su^l8VwWVwNz3AmJGJGt_*YNJi|e= z*C5{5t=Uz@hfSl8&JP|yn{O(75E8vQGibAV6MTAbkZ=gzOJ-;<2wqDqgF)_S04zA@ zvNYjrvH-7H%RZP8f0Aj-An4{0N*sRBu44-_j1WxRKMedMR12wWA}LD=4X;?`jag_M z#Dpmv18b)pcNT0`OG;xnjxs<4nZ>a^#^M5^JZvRtc*cdhr{L#qkzqa)?7~X?$e>v81`|Gj5Chd7TIN229Mk zIN7hmTNAeJUkeSXA5nV|(df`Rz~Uf#5YgC3JHT)$!*TbZZ=hLdxpsfD8v1)8ZA0HS z8)O|$;`A9VP#cPNYH)S*oD3%pBAx@~gK@to+y{=@P36L)aQqUhd<9b#wYLFxCN&@h zZ8JQ;nPo6oMi7tS4V8}(Wvad^S!;up3fqb6H? zziLR>`iUEW;H1#MKVa)XA23Zoa7G!om%xUct}W=olTo4}MAjIxjvhlS)=O#OCq0(r zl*Tq7_?71TIfQ$t7Y<90dkLl??WueE6s)P@Qah-4CuN}Goxs741lYAe{j+%X+4_GK zucp(k>+9rF0_$H25&9ALj|sQO31}vJAZ?7*XmUzDXyLp{2{9lv=wYF^;>Xy;NF^QB zWd~GFe0=?JqX6ydAHZwg^}FXA^;!}t78W-lAO+tI1cr_FjmQf*)XaWCp7*}N13=-h zcG*0?nnbN(*U6C;4vXZ`ttWGqq{B7eCehC{th6OUN;fsJK*9O^KK%2rXogj%Vw<%r$4;E4spj6>jvj<1 z#LKWV^i7Jc;wbd6v)rY@^e2j`FXZcZMo;!!b9~wKAHZV}-C`db9r&-x@5Plmo#5HJ zQCPbNjX528(QU+1vwL!Kr0M7T#UG2*V-Rc;$oZ@6v=Ymly!)PYtpdM8Tp?0-9eVdE z$xcjzIm%5`M@W+%gqq@xr+d3xG;EMx*>;P?^Ixe+(QP?x7Y3~S=3xMcnU^-_kRL39 zAMj*OA5u&ix)F>$L%~2dwv-U#e4oklQrCt=oN+RL(om0D#XVT`5h&;Wx=FhS{DnYs zOc(x;3g!_0;Q9@2;92<>#tqu}QX#X2E+Foqaq~zq^Pw~k>%8S$s;AL*{nLTghWs~G z0JY3SHRJ?<-7#~{VOBnvU-}Rhi%sGINWz^yD%Q5sgF$V%%S(H-A#$ET{qy zK}CR^m`K};darJ%jS#KUTsuJ+O%5$--x`S|oKIh?e9sKw=A^wsE!$zpZ+@DN6A zyO{F860C*lU{Q(!?Mk9Hg6Ha`2S@4H{`AVW^M$idSVZbKQP*^}TV?vx^B94T-Vt&a zs0RKI(7UC_j^uM8>>>eTV#vegp&{3})x_8fiu#}Qmru7fc5j0p8ox1iM4df9_iQKj z==^u9rn9|%sp4`}Hjg~7h{%ZkRX<1AQiJ0n_U_9U-*bE4S&OhNl?FQ7wSi8T1!xtT z+5oX@SvxDZ5DbEM$vI|2$qK6Ergy=LjgGv1)Ucnq_s?bKbiY6i48%4QN|?p53(p7)x9vI4l;=E)5aBCM>DORW3!HUsC_Y;rgiJN-?R( zL9uC*Iq6=#7J9U61KoWov0`^4u~M@2o-PmpNW^mA=!})d?6LWrQyfUrSCA#(NJ{{z zem=YSq>y^)wfn4o&e6CPngw}t13`bEi=U1FEK(F1Bl>#HKM?Oz?#jK{8AwtVQ;z*i ze|uV%Jt+$<@&R4_{Mf6vItr83wfE__;Ab@In>9Wckl?`o2oB6Hg%Q-mG2ADSjM|lxjLQE7?9p4D6cqC>VCA+?X3@BlLtxm?*Ec}5 zqK*w-5$tDqru*DOQQuB~1YpTf5r}9uri{Sa%}nSYz)=GTz?6iU(yjN1l+R`n{qwD;& ze!yOokK6j!L86kaMX}8zFOZ+%c?4jUcJFjyAPGpC0;nXW9UI2IEayI$__08@VvhS z9fhG+f5^i<-O=(7>Ac8E?K5O2V3^)RUVstM-g-A6!Uro%!d|IADi)-_7-3H56qbsa z{#ifJBDRuMv{+KZ00B=4wL~xP?z$0mdc2qmF3*e>AoQ_kfwD@hk#ksogV6dYd<;?p z+YaamRsp{M`DkWFK?9;hxmyEXY;E-JSVH)+%cmI#Zy&e?)yp}; z1HkdlJ#ZIlxE*fzq=z_qY14zhB16%!!y+gW!jeBLoFI6s<>K}SDk0!QYN!8h%b2?V z?qEM2f+L|18f5Q%JSheI(f`EhyRdYyJpW=ME964|}M zhnnfSycX-cMC$HLRI*3S4*wL)&W zaz$R}UkfLdRq*{>(sJpeUX;%x6rH&?qkyScWWFbBEv~#=QC+12cJ1rK^}=3Fh~-8s z!98rNlMJ{DV3EoX=eaOm#R|pW+blBAzeRc-L+T$T^zNHTS2OVpLE@!2IRyP|vd?{` zL@pGgRO&Fne1lUAVm^Nk#ekryz2tqw?obgmux^fagkEfg2JeV1sOFMUCDmVxPWId> z+*pdo`wEZ5xEROIQ33&riHFnE2PI8KT*QHT1;Jo^2B4yrmaoW{pU~xvU~5-{bz;+C zPF8bp_|T$Xl@i5eY`kO2uLBtsH%Su_!s1+g;!?NlLG00WUWvhwU}-)$R3xYga|ZZO zF#)AX4O%agM)Q;#RKk<2C&mK9&mKCMTLvc-D)2VoMp^!nTB^{a(xjdq`|@J%S%I{1 zkgWZVonic@YD``fB{6CLan=H+QKuBwUK@-76E8_Sb*jP+>yq8AlWA4C#-&1@)Ga*8 zH8Cmb`C`N(8+F7kU$#P?yz?M2JspEN<=EUD8Skrhs^WsEsd?7%s!JS7`$>IW$e}04 zg&vco`4Ljl62{kI;Qf>W5D4CaOl*3BG~aBU8<{e^3-WzMpnyJP$B7F$XmgfSP>l zDeSGrZYyr*in=gD@L*Rr-lkzDn(4fAh|UOGCEFw~kw30&W_by)8*_}V#OK#U1V z&{u0duIPQS;1-^^`uXx%y*qwzs_8V&KH=p;qf$&h6aMWn>u}vkG-r&U){tlwO z=}-B_w7_y#@sRkcH0u&DK&h;9F0OKJ2zNLXHXJ>gI%x^1Uym(XAoQ&kMuq-7wK^Ol z;B;~j(5P6V{QZat8GFlj1CIV0lAd$3y&RxS7K!IaUVB#WRubEui=<9#r$AjIsw{?E zvh~=-gE6IHFAnX8gCxWaX}V#PshnF-tcp+HLqLzN{sUIss!LXJGpBDUo0%}2+PzUC zWDVIoM?4pmLJT?(Ax#vT<(xVr(-|a!ULDU9+)@PkO7l1vfhtP)yE6F3eo&4$OO7~V zCcz^NHiWGm>QZqctJcUO3br$kdRKT*4ulxAK~5lcoa?s!{E==*>KSa)edPi?_6N7@ z;#>%yV?MDEL(veNCd@lz`lYFX^xEU12^^Y#t3X8kQ${r(%!3#3+XL_u6OTkEEY2W7-h4#r<%F<&c&Ck%_ViOe{b{H^rNqXC1?8H;j zclIHqrfI6W$wJTb59UU_=b+dp_i3_Lyw!eOl~_fQPzU|c`t}CaiS?}qY$r-QSMjwLTeSdWO88xSfb0bhS1 zNV(f*xJ0c8dPbEhP_DyekHXsWCWEI#Q!T-yD>=cjL8ZITe=rlq={i#+4SCGgp(tPl z{WfmVPkykVksl`xi5lT<_lcEYdI_;Y2Lz=07ZCPuAiaMB+5ZNb^PA`d%H+OUF2K=6 zu9uoe2-@Ms{(&G^4!XBEvDjhKf!_O(tI{sRr%EH7XT}C&!O_iq!AiVEXbieC@ zDfq(&mUI9IQN4RUtG7O06c)aRb_WHdtq769bkG`hocO5p2&bw)Aegd1R3=xkAg4*A zLMm!geFEcWrN(|~1D?f#IdJ!{MgkgQS6)TE^@FAfjgBC|{ zC5LXz6h8sw#jMYQ9K227lR0rP4;)&7OM+Dk*_(b>XGXgKn$5M7+lZUp9nX5huD65f{nPZf zhqJfG*JJngm+a~Bb%V>No748{YSgo{>|4;${*BI6Awec1oc8X{3gV{p^@G`00BU-Q zd%9A#ChEAm5zp$d`;;*+?{oL!$-&3gRjQ$bh?}#B^_SAt6l5b?mWa@+H&>V-*~>c{ zU+dl5XzuE9SLe%Fi>JCJ8b1dSn(if_r}qoD^_6R_k*~f`^{ro#{X>cc(9iF!$-vLu zW_NYmx1jrhxi#Pn=;tYH)KS`Y>ycml#`k72?vgN^9h@H8oU-rb*V5^}y6@uLpMG;{ zedBe)v%CJ+Bv<&ORBmV7Y5+V}|?eo6Q7OhJsmhJQ8-t7EDa?>J(xa@up zHLI2=u;s(^FYOsO>qes*-7Hy~n*vjlr4Lotdsike4?fPVueX~db$6+J*KBMLufW=u z+x}lGeRpT<>yD2Uiz?v(TAG`kIFAl@Z64Z04rUkD-SP`fX7_64)8$y4Q%fRm7uC(5 zCU5{x3a`wD_3m*zsl;?hN87D;qvW^SEx1&;j3O@$p7(V=&oxSl9o-_@N+_>S!$wWz zliWIMo103-#X%&=EafDcF)`yePfyzqeK)g5P7iNc$;W58wldE2S zJ~?u*LTAMJBE-qnKl3v5>kJF}pIsiy53gz3BWooH0OiL_M5tKuBq*pdZ$p&whIAw19!$L)=Xw>IHx*Tc395?6QC?ezG{jlE25 zM%Ha=yAjUn;Ni*6%}?fiXr7{@w1@Lsr)l?DiNN&NnoS4QTRqcpCpbGPmTIMlbsH@} zlnF0TL1$xqv$=d&*E>J{rE;i`WjZ2sfA#=$RIu~O^4c zSo~tp7fRyE_(%oWYra=J?_dPT-OFuZbVRN)f>_5#eA5=L+Ay3F8tjepN$HDL0}QLx zCZHfp_eUm1ISPhXn@|$@WYN51AlUYZ53fUS-UwTx$7XIaxm}#e2cRlkAiN({`ScQ`oW;Bj+e1EXzt1iGEN>@gd z+K+V-J@GNt?Y+ZLC`OI+mOQ*R#To=}1-b+H5WLRgc(m)w9JSg2SZlYc+{HcrpS zC`ZJt^Rdz8~zWJzX$vs<$qU!$JGq&_%&|@f>(aV0h|!Vx)}^5C>R9B^$)FoNm_w8 zVnPRi!r(z+wtt2702~mvSfv_&je_Bd6&mbmrrgNmWTk5B5gN~-wvNoL-+SH$NKItBMD?hJjQ_=ZoF=fr~IuxZ-=(u zk8E$bDu;J@5R2W%QE^}IJs#jroV|a(tYvm#3ud-&JpE*@f^BLy`;t{fjI`4#;<|f` zOdL74xx8EIeA0SRQ?hZVOH_l%G|kqa~b3NbM$cjar|L#`TE(qc2eJ&DC{ak zt@V^QW6B3T_4&rU)#rt;wc9v*$#?+zo)gtIfT6wQRQGR?e?=Ohq}-O74@ zSwYoPKpi|k{y)Or0lKnn>lTh}+qPXn#oDoL8x>V-+qP}nsaO@;skkbs;O#o+-uv$P z{`cPBcFRgjYdd}P-sf6#k2%(!YgmAcE961D1p2Iz#(UqI;sl$KFb6anAX(*ME!cAw z>&3*o|Aw$CbBHeuDAPbxP#_ohMCze0ZDm1n@f~qp?HZYVSD-TVUWzXKQ@$h z4Y@7f1Kjtogal9WvtHj0_;NfA6b5<^k_6rx#u43|*L|K}U*p6DvyOc4wci#GCL3Ry zh4i@ys<{BrII1P!~rzSQCP}vs{ zNo3RX_a+!3rEG4WWl~O zb^nHZ5`Lj)#LaNoI$cuf>`mzGP{WyH^UdDW4Mqip9q`GVzCND~i{ybj2#ayC)ZnQjkmnI|Yp;tmI^@*&Y1>uzMGUaD z;&ImAP3G&I(1y*heVLt>$5R4-JU-uQs1K?y*l?;oxi3(YA+u7QL%Fm~5KMv4&DcAeGh7UG{Lo!<4Rb8|d+R41JMx>+;qOKnPab}kf? zJ{`z3qq@F5>MR?1anT-sy!iqyM|qW!SaYl@R=mgLLMW7r)ZS@(*}P&#X>(FAC6+o< z+GWd=-n?QluyKFiXzaY5!^Bec)7~xia6B$;Ck>u(#?@kZ^OL^OCPwX-kDrzw`Og zvTp6TSe=V`&xHr;H+3{fUe~iDw5HDHNjKAl$54;Oj;_k%w`aTq^IpX=uHtXz{4Lh! z27JrS6U<8$(33mDb?+v(^;^kN+stQYXt4WtDujVb@&?z~#9unxICvf3oxTU0vG>}$ zPqYesvsFpaKnh!Tba^Z}upRHbQywGq=uQJPit2k-T*P<~Psw_y`08{#JdUVh&Eq&QPd&p>4JT&d)9z)_EcpP`Pv@L1LBk;ndr5NxGPVD@TBcreLr@2cR>68 znEsnGQgo;VKE5c?icSb+^LBq=Pv|L(t+U_nD&|fpf5^v4(dMOxe=B=Raq#l&-n)b7 z*}Fsk5iE&!>IG#ubCpf-_??BUDV&5);_(zGp~z$j*_9*nK-h8f?ZxTm#Msu4v3C5V zpPy0C54_}}Cs(}dr$7iN>+dTAhgYAO*0n6PKSIhUL^R_`>DY%==?OsN6v9+!59dyr%s=iEh7TF7( z08CFQHnTh!$x%B8)5%Uv&Xg&klM^qMY2RtAV!A6S2{vXWzwR7{%(gS8vUT4hFYdF% z+neuYX9>-gdeUj7Wys=JlinOzR1K9o5?~_MFRw0Pp@)mKP+3<8&N?30=kb7s(HUIR z&1|3jEOHS+Djiju;MJo_tK;larJ9swKHTp|$YNKor3>F^znU6d_Wm&Qo!+SMD{u3r z8`FBqwJ2Sxe*xQt|K*m6<^MW5`W86#yekiuI~}Xu+D|}m>u1*s1zc%{EgPhLBg9He z9}0!mbu19+wRM62;i3qk;df`2RV47jGiyo zeOyXeY$ESVg<&0}_qz5u_yu&3vXMiMpOCo?m*G~kYQFS%_43vs&Ovr3ZwnhyGxi;} zCCVc8)45;W?lOB`=FF)>_MbrBK)<$x^$mfg3(S22Wf)f6X`hdS1;=@B-Ms!Gt*8s# zoa*nW%a+T;aI@#xv4+**b9YjngqXMp552 z;)xE+LKn*q9WFmXhrma&Kle2)S+YdUHE^UvA3JQry@+r1?Aa1uBW~h5k6Ra|8h)8$`2n?>5BS*3 zn&|&&4$$f=@8ZtB8tMt~7DdvsTl!0Cs-weSQh%1NcJoCKNpl$8Su=mZxQ;0q65id8 zhSPNsEOE&hNx{8sOfhZ^Lo(rwb1o5d{Qk5dGqnVvB~$G4)QlG@DCBNxFR)Q zm4Mis%` zxU}6ZRNb7<#jAYE+T7V3SzhxYZRRCyp}dBt1eO~*;4Ioup_Ogw843ayHA)odVQr~B z)wilU`-`*jV*8CM$expXHJoQPm^Z1jHE<3!unzKqVQsMpTZkthW%{mrHCksiMo2h( z(BGd{K%!Fv3eIcPN+oB#Y%n_J_iD_TZ3J98em$^LFn3-qiGFwUu#xw&0q&hr85z{E z8PrKqkgg@)^BAI?sle9ruu=E2Ne2)87SP(m2~uQcSng$$vcBE4jVE6D#lvQO3Qu8} z>6WY!*J|6WjHq#ZNXO=(t3_b@F2eyxaj#~=LUT1isAmu1YAK4To0GnWa~f3iM0jHx z&wrkcMYX48^6*j1A%@K5Q+LaySufXhq<&sezW3C{ zTVgzB)swl!R|mYzFj=cy*^U_Qi#H}a@1OPBZ<$EjzkjEV_;GCzo5P|kjHbcrWnZaB zT~3_3GJN_-)*pX88nVyhC8#FS7$LRVG&)!IJuO&=E!2v_l%y?qN>bG+;C!&#FPwxt zu8~L?i9Hjmyj{B;UwgUI5jlM%#fUp2BDoG8l)4vr`C&|}Bh27Ey;hjruh*qoDw1mq zT2Baq-%qtOSd!wCdk#2rOJ2?)xw2pub)y!obMa!a0 z_n4((Bvxg+1^^|1d1nL|VJHqEggzjj5xe$}wiK(7f`Ev!vkYS_&LJMqbgoUV*31xH z0a!p_mOi`S9kHnUchB^L2-^#dyM@8f$wr!sLSRseqmqs5hb9(=CS#aApLHU@FcHy2 zX6pPxA*|AvkLFeZgkg%9Cfc`A`_e2$BrMl9Iff!msh30#mODgdI z)mE0-Ut50p3?ZD4mAOb0)&O>B7YYO7{9B}!Uu^d_6sGaz(`Sg$V3=P~JyX+;2`gsD zZBoC{nskaiD^LR3K?g>H7C}Bkz@V-bz&g(2Y|*P8sqAN-= zlRf~0s`)ye5B^k3nFEIkf|D6QTAs@{&+v`fv@dfKcsBg^&@5|1fOI^PtP+ylc#1*@ zeukh5h1tJd`YAJag#8L}i_5goIsJ-dWnk6V%d3z3B>zu&zv2;d|BVUR(NkBP>jmOK`H`5L`M zJKjbXv523d%GiA>}Pw(fPHihH4o z7`kboyV$t|s!x9+ds@BDRMEIfqmlY(Yf3xV5BZ}P^+VrRhNE}9xqh0XZw^OvyW4{e zp*AiaF=1fQVRUh9^Kxc0cxl{qdv4CwGsx zQIEF({yYVlbJ_M3{N$z5I#Yo8lm;73!yf&5(%p+0Q4A7vk)bofvL8pd8UD7 zbb-Sn35|3v9rB_7?Q$V_JNSTDMHnYj@6cpGE;{8|5_vym)>IJY z(-RbDxhdyhc8;fu69v>0YKMh5m7W{%Ohw$BNJ zK5lXzZ$Q`5vwAYJZeBKizSPut+6}fE`6-!2^}Hu8^qA=jiGvz=ysb}J!u>MnANZ#p2R~d{@>ax)3kvPi$9uEe zBB|}P$NjxSc;4rsMnqZ#4eKw;-`saa27@RbNjh%5MFq8FX+Q_zK`OOsl)!6H!%s+j zejlv((E29_bscGBlS|2BXJc(*qGL<1NP%j^F!>UKs1h1`34Kf4_AC3%pI!Vxw{mfr zu>`MM+Gi!-%JSZ^GPN|24~k>itiR{-*21HnBG>#i7X*VQUs#?Hz0&baQN2A_H?;@B z8TXKF-0V$vZv@9MP6qZfOA~e}$}~y(ddI69h;mN6<3lWm7`w|bWw`kx2zW-QB@_k@ zWu{ZFwuBZ5R-x7tTevyO3`yprO9-}!|EJ1f*!gMw^v@hYmgXmStDsVDp9kmp7f@!V zQPW5=m%$NC@d|Mj4U;WLH4N4Zs_PKu8N6}D*#BU>bPPtZ_7h9)Z4_$b6%S?Hpz1GKBUIEq5kALVs0i3W6ST#QA9gCt!~8 zsb9F1G!qn3BEq~k-O`=*3y{yB_)r|AnMNV2#S+nFy<<<5uVB-pnGyRKg}AtXi*f$H zim}w-_-)lvMVpbKFQQDv{##p{|6G%(k@p6>Qai6dkKQH+yk|yR2lqSgi@ymQZ3~iK zty~&C)7FMZ)Ao-A-Ue^Y8ejRYhqt$>eW9!?DUOaeOqlQMBG4wB~I;6L!B^K!S!3w^kd?R0iIRx9mllH z;+PtW+k+vcO52|?Yc?DAQ55yRJ&AaVc;bWN(bSPG?p<3 zNnRCn;}J{e+^MG-O{wTd;@ReRhrr7hb%)^LbeN4$=67db1>FVSae;9t>Wh~SZOx{} zP|z^@&mkN=7SRx}J{Q=~A1(isI!|uv4428hQ&v?3Jz~_g#5-a%t^dYIPXu~&WJ{ck zo%~0|9UU9t-zq#ogU$7A!-u3*U*GRu72TEpr9&nE1gPWP<=;BqCpH_|$o?NB+zPd_ z{YD;N6jPP;zy4(fdiozLo|OL$@l+190{#DC#i-F?$jBkoNmygjowW~z=j7DwI^M{t zb*~XZ+b3TT_nP=OhAiv3%xP<0ndoLayAFu1zHeJUFbt;G-#B*~09;bXYKfM7xp)E& zpw`v^qc_i8+*+9+TP4%}VH6WPyfb&@4}7*+8_5_V^*0=sP|5Z2_zS>~Fe`n&!|{2) zjf>VpF$yIqR+y6YGg>vID|An4r{DV^iON$Lt~l@08AxWwaxm;D=2DIBkxc}m&ViGO z*2M%N!b1^r$^jA#9R--ljTdM!Yw;q*0a8Vfnr}F6O=fs0OU>!$B|%69p|_pYoa;XP zjLXd|2q-o@Buj~!L-%(GX5TErIZh%7a;0>Y0%7Hwq zti?z{3>^{~(BYifFpQWs!)TK_BJ^EME8&Q^!+7DG+WyONO58ftO0>{{75aRqC^k5B z0i2ksos26SLjU2aWHDAy-2~nMWsE2tL+n&*A_YmRoqGpgP;v)N2%_8M-IF%mPInouD-oA#?Cyla^Osr5)V?^j+Z8RGmx?$dA%zcs- z;cC(f0QK!e8*a-F(+N(Q3z6zQF-y;Hcm-to>T{E|QJlu2P{80ZScZ=#OEXwDsxmCb zm1#(P!+4=GhVsjk_EDTO$l$|xNH8rFD~?NCZZtMopMj={Dr=}^U*IUWsHN%_(J&0- z0fJK_IgO8~Yw}a{ux*Az5sVRs@fiEh$I7!9SIRMvM^%{#UBfw}_1j9fo&PskJPe!n zUcFE18UZqOB((1w_Ig=o*@b(E3x2k0Cq6ekUxIj`St<-;yICvJR1Rk*hOv%nFxBru zFW**zdju;#AwRcBy6BAzRx;IaePwvq^cho6Np^+RD(V!AA$`6~T=x+7c{LBMaVkm_ zMEZG{iLl_8on*6_+cx(OPFpWro0%`kC8dRq(ahqF3(H9GC)sOO#o%RCWuq2F1ZH6I zqLkjs5ApqlBqGTzFp=ebx#&{HP(r2@N=C5(RCvq|IA->>Z_s?D&mn|H2IP1Q&Q!|yWdWd5~pSD zAIWG$F;k`|6vZin&{UNsaxv5>>S?4f%@_me&S%XKE7J#%an)4QP4Xiplt(;qLYsJh zLNo=?0cQfYO3j>@PYRf{jSWF`=FCO3JlKCSwZ2O==0IggUDavnlwuWD8Wk0(k$<8V z!~PSM1Syn~c&VN$9Z~gP7UxGs#zDVWHoR{c#Z ztt=8F<5U>4DQ*7HAqy(VX@cxj14tQI3!auX^8iv#DwO;ml*z#UNtq{o*4$QqB-4;f zQ9LG&LIIOk(4yd1q}c)=yI8ET2``f*adsvab@Qv;RK3Rg3S~K+-+^+sYO|*Z+T^kT zjs>*yl@z13bF|VS{*1yXBdj?*sm)D; z;+ysmY!nRcQJdQLeOmvruQ$`kAGgk+8icarZt93rGGN!}mw71|y7M5QB>2QavdVPy zr);koX9Sbet|-M45R#$Wc1&{e zd=Aa~Q3c)s7zZviC}|%y!A#=E>FMS= zRq>SmC=G=JDy2{bDg`JCg2y}ZB`|JF!CGJ_$ZTsHKVnl5Nb#fZ)pVkvuNEE*2v#{iP=M-9 zlZH&uQSAmZK}mBI(@slp6#JeQ?Mb~5x-26?t#$8J9;7II${AIRX+>O5bt)oq`7#bFexxwa`3A5`B`afE>Qy>d3jbycQHIP+tBRtt6>dhL z%LA3-$tm};E(}JOY|ua}G5!Dg%?FA6%M5ti&r#UTZ_DRr@S))R6eFHNFwmcUSau&xHF=2!JEqTW@4@lN8Dgv8jtEWcD-abmF6^l&Cw2;2 zeDvuJq0^dh^9w7q8^f-ZAbfj+hJkk_-Ues1Qjn%n(XqCkX7+xt$WN7%GSS|r+xO{dx$-aC!cflm3(+dzT&P*D_Bd$1-{kiWl2BabLO6>Bs$YM0i^VsxcmH2Oh&_NOlMucSHHg0*!x5?NHss1{5@I5}y)UPWfpNjQg`U>(K4$nsY|UTg zk0chtBA{&L)4C59I7w9g;L(3-@d@}96!#w`^S?xaMK9@mp4l6qU?I`h0T^e@xIas{ zzOTMSY9**fe@27XX7-PqTWEYo;Are4mzn_OD8jv=ARRX)DtKtxbMGVfbM7OXPcs7n z+t+-bty(skf{@PEyN0Zec!oUUdA9)Bqzb8rmKw3HxL95O9@$xDK|_8aTCE1}4YP=) z<|*xziQo7PS~3tguc%5BAG~bKI}#xKElJpd$*G_SYzUhoS!aoU-!yyZF2rl6-k6O) z)Deo?SvDcVfr4V-d{>6IM%-h0a#qS04itne3s3_cDmSR_XR*eS(CYj3puAl_DkRt! z|HX}Qmu5(*by(?Xe}ctOqdK$-K?Aq8k-@QgD~xb9=IfJpnqw;N!J3uD`lIA+at;K< zwe#%e5m!A(Scfb)Y}$HmfU0XIA)stMU=espag})r;vfpNE?%03p##{n&3R_Nu0?zu zyCrBd7587Vs~TayD+4#!G@{t5qlh8)~twrtBmE`|DVA=0m^tU<_E1p7i~ipr&ScO z|3zm#Vrz{scI}6cXLSw^z$Gl_Sm{!JjNO-|-|D({aT5w_m*a~S$sWfBdwe9oMY`Y~ zzbqqvocE6uM8CypB}kV_)8xgo|0|OHC+r z1jo#-3y!t`NS+xzJSm=;CxqhiMITLQp&mjxN_g503qb?dFTFBbCf`bTxW1V%-JC4y zJE_Evs~TiL0&WwRLYlS805pd)#&VlJ_hvONuB*$)y0y^v5)Q@WZcf$ zCUE(IbVJ%}Zx6(aKfV$1ufP!iNSEfAC7$a22QdT!OMIXfq&N%J8jpfa?L4N6MyRz! zS|;rfxVUpF;}~Q;Xpw4+L@l6pGc~c*sbKQ2;sU}n+f}8mSRRSKU=+if7%lQ z=pX$SL#ANzhVh}vd_V9Zfh+Otk)vh)`FiB+bjQTzxklxbg6v9`hLUVXl>RJ39c>ga4WNc<33gByWem_Z&ePtX?s-nnnaB2u zutH+kLDIrm7!>pq+$=O+fI8047#FF{QTV0}5^ldtkv@HbI?KLZlr;^Uq$M`vAdZF+ zj*5%Bbu*klE14lpO79Kk(o&PvOwmyP2}unM$$OUOjHXb?LRV$s(FOaNH^3R}NDRTj zoR0dSf&I(c4@7nwQW4&cY%VokS_CVj9$sR5C0;9V7e&A!$?D|O0+g^TJ@q_II>aS} z7(=L8kTcq7({1#dC(T7des+36cJdMqg9?B~2Jtg5t*&LZvoZ~PJUODiy=R&d050Xj zxuz>*#Vi>;;fWG>I4;P3kmJQ2NeU+v9A6y?a3-tHc4U@$Qq-ZL)>8sV%zGSS?X=a> zghL)3I)7I^DrPAT`TFkDE`C&uI4#1P5Twfw3H`^4BZ>!d?%fIj%Q$B?WZ)eCAw@O` z8zZ5ptlS_+o?l)K6O->);Di?tj?Ykw8cu`4h8F<52?IRb&%t<=qVgyaG=gjuA$3uCZmd z0}*SJV9A?>He$_^!lP!~zUgUsj74i#@v*99w)yV>;tfebdOxDCw zy7*iXZiPz|_+8esKCypY^|8~56*2g05!Cu;fh~egAHQY^(!`?u+rm=W#BC-9|3jNZbvz6j%z^`28c_r zX<-*e2!EqNpRn4)bv}Hca={;`9j{1KidP{#T#74n9PTMt69yD%2_US4A>IE)z;n0h zFqsTi;9mr&j-YrkaVMNOa=gLB733(&LM+A;7PA&aNy?JBVJ!uk zA^=Gv-9$0}XQ`RQ#ZJ{OEoYeo3+%&YN78XC;``jd?8pvWlP@eLu@v`H7JredyhrxW z4$P**h2&ip0pzG!9&Rhzl9cT+L>j04ZOA&pA3iBSgue_aO$7(?kzUOTW_K5e$(UOc zbJhlq6K{_+J(4q=bEPTJCCR%9mOB}loCYoo{Bf&0sl~)V*J(*>|Lpg#U0&6sC1J8l z9p&&$nSJr`QH@lY*PGv{5y-Bb-@4PL=jTD#Qw#WCiJ1w3bFFQpT=)`$vOq@Oqn@Sq zg8p?bU9_5(LJp0ea6cBp6sL`&!Wp2G54ZS(#{yQ|S9wcJX#>1sPV8GT;H)HBI;S5W z9y^fxDTG^wdagc)7b@vlz}R9Q>I+9ZdW~7!pKl5aup_=Ur1UP#ko;94X<}aQC*>4G z1C6Sl>Pl!uI2GDDHsHZw=QUOY8?t74B>w0HUx+R%OGG_T4}R1Q)IMvxB=q8 zvpMP#F)De6(1<@Od-fzKQKL@_841fuiduV$OcGcIZ&E>ENosn^5O19aBAKE<4<*i8 zXu6C*VO88Fz-XH4?H4da6-x;~U}?3ZFf=kVDDzDOT`{oT4AoO)5&VZxF@Ls)%2OBl zv@Xb3^8~wxl&7C$l6y49XEr4Bdnk2+D5|EY5riU*s39e;- z1KDHYLf@}P%Xj>n6dS|conKPU>;G&@QzRr|&<73zasvBb-NRhWTwSf~E&keP)uO)T z{GA7*cc;v-ea{@W)k*Gv_Kc!_Tb{}m_>cgQ#;+iD58R0e1qwUl8<7*K=IK|Ln0L?L z`g&c4#}t^e5#93iQ#Axa1xbEjy%WPkbI9O7{BUxw-1^N7OzjnS~9SCw7 zGFoSVdZADq9r?7ksFx%~(6;qQbi~6!1lm;aHvFpKMh85&)QpxKMrvv+N?aMCL5i?l zZjL|KuaI5oM)NYZa5&rLNYky_Xn+2B!1%!Hq?1&_V1qQsg-VTwb4(Jlu58xL{cg}h z+WrV||AEWaGQ(2=9>!kPuAvu*2CkT5uLm@s=(D5~>Xmt%6r;EP9DdgB_ zF8gH~k)JvN%PT*G>cue|l6kQ!CO#7b;aGIq+#@FXg^H5+a*3(xpiC%8yj{0EXqY;g!L7LILYFr8S|2g%vz)NyL<`3aR49;g1Tl8g19Q2!d#tq0()U%?isK63)`XTM;T!DR?SE@MDQ_K*O!lEA}e%WjK9uTn zU70ncjr3eDOfh+D?VCj;**U#()?Qj#Dbo)O`9w7(6kQ~2G3Gryc16*5LC1x3m2$(oit0aHt?QB7CRu%fUs38E1ZG)U=R zaBU*jJnQ|+^ZHJB5L^B)eU_^`p#R)nd8&P+0s?G7)e8Li)7kc~7F1u%j8*>Yf{&RS zupVMT0Gadd9Xw1_IWUc8{hY{#L)eup(u(XzK*`zy+zd7I@{?VQ3#aRWiu8=MV%raI zhG|#2;Lm=0HYoM|{L3X%;vZpKCZjYk{4gUr)AY9WVn8!yoKBu-17RuQI6grWW>sw*gzShzZEyUcm(eT8|46;u)f#R=t zUW-VgGR{oS$F*)2GM+-8D1j+;kDWTq!kGDG+`SW%lJG>xzDw0yGc?*Hu&soRs%t_SyL3;f+wc?F&OA zl^7je`;UG+M}|Rg)?%MSe&Uy&sZbNzm}eBpK=hpq)T7N-X6;3Dns)Wnj+`ngcpvX- zw@p_)%xKu5N-E>Q7#z5Xdag9*LpBB>s#`M>&1g=-x$yIhD3JC>7ktm~C>T+^cnvZs zoISptofHbT*uW~*nB_@3uka1kaU%wC;bb-)bEV@kmLnVd(<>ZSJgEY)avO8@=SXFG z7k-GdaPiiWz~d}bY&2xD{f*Iadjn1NZ{ISxc+E@SeMh0lWJ*+{S+OI9ixeCWH}Vfn zx-QlSaAd_FytwErNzFMjYbdfUl~7D7gKlNA45ibm7)~Q&qch7v*Qy7;(ap8(xkFw} zS2$<{E|oRt1%&XP1?kw2mLjO+u@zRgnOgUtBiz4r$3N=_@Ogj=+>4qYs@;Hen^P zw$B|oJKNh>974Xhy)PSMHuzA&=6YI8wDRDl!|r58U&tFVMIMUZPB3ya8AKGG16ehT zf&G9$`P9bR#ZyRSr6zJw5)-~KowuRjtWgWqIwda#gjjN%jzyws8xSg)zI;9AoX4_Rb{NYe%}ESjCrQv$I;h_Z*H$? zy;K)vUh=gPm0xfFM<>{15wiACU=!*tIuH=df1i@BmS%Ql%zqtO|LSn2E$^_wh12^} z1EuqD>1D$$vQzwW?P{eI5v@%$u31dSmPU!>jG`Cu%BkPqXsdn*?y_~LzD5}Sa^Wr0 zp0E|^)BuNeJ(5Pr`FKSBJ0_@d7;H}%srK2r{?;QnR9)JXcE&K$J~8masSZ># zB8-&eNgVK!h8FiPC6z(8Eyi4ur=cdZ!+T3|O? zhH{dm=rfTuc)U}dRenvEb<5(cg%#UPyb*e_2!{=VK{%6Ae^=*yZIWS?lqOHW5MwBm zn|mA*%3%^gkA!&hU1;}}Kv>H-cBS|0 z^T9^i>_C+yv;L=-qveCKI-)mSh(6diC$#tD-^}m6FSNfdp1(Nc`m}(IC-v|6y7BdnE}U<1uX(Uy#YC*pU^%#U{i-D7v^J7m&SzM{|DI z8f7T~B*6sw^TC}ONTEGwrcblhl45hQCYeNKnod`~&J`3p4#_vyiJEqPR&IwS%fzXLceLuW2EGNrczI++yqSFuzMw`xmVWtmo*{vzI)Ry*$vy2H$ZE`>W<)BKi^hpvyo9_+3$_d z!ktxav@SPc^GjTN!#fge0khuUJr($WSXq>pF;>e|{V?@fjlA}|@7kJoo7HjMz&HBr zK9Zcjq3htUn>l(mwO%xDDR3CYTo^##XZ<}nS~G%x9R~?aVuV_=y^9H5;o_z#~1+r(I zqcxnfiBLP|M8>qz>U~SxTZ_tBD$?eDHW$`((|jKcbSU47T;axY-46l=OWB>mb&sK}~GfX|)|#n76)!9Q&DI|J%)_unfG$Ry)<^DZ3VZ0V+C5etavO zM>nOF=@zlHlIwhuvZ_VRYFT?pJLRWZ)aeAuo+ZcURu&0QW4abM4imaAS2C0hw;XU5 z3iMX+61Q_DKECuRa4om@e$#-8SvEE1n`5w4-yaU;E_G(2pOp)Mq8_9Y1=yL=MOS##nIEkrsq^LR2$x(JGRw1!DRH|Euo}K2+v=; zrBqBxeNpuRJ;PH{obk_Q>3pDw#4@nl^DqFZ{S#w>c+rU5;UGJ883E)9_GL+!I4>>d zXbU8(;T;ij{~S?Kvf@Icr^SlPBhwS9#IX6&?87#LdOk!A{f8mf6bH%Ske|Nd6NwY0eBl_2$|%&R1#q>}FW;dOyAz9zKeogBc0Im0jvd>{zk?BT@B!My zrCl81yssnx#6Rzkh3`>9E0;-HT-7c@6*pgATAAX1>iFQqb#Afd zXP-jS>eNgx!Ez2-{Bm9NX~4R})bch$OoR-#gQd)&W`YrgK`osmbt;%wlgT94t?}B} zVlJ!mec`!}w2NAWK!W_<$hH`V2zI-{DYH9>u+zqWoSCk<3(bTl>@mH8BXZyvcTH** z1#@58;0#D>^$ky8Jb&Iq?nlK`a>JUwQ}c z_9s~LAuKV%r9fzHmSyw^J^U$c$v4DeD&M{3`8Z9+zSO#2FY^-!9R=GPR?pE<&r?yr zs8;b8gl2d5adME4^VRYRT0!!51W}HW@wmG0IE~dTLNOsx+z}mR%-o)Cc3Vuhl1tfh zdqEuy>Elo22+j1n?nGhHZ84!Gn>gW6RqJ)j`i{er|G)z7Ds_HU<95n4Q~G@2vM|TC zetjyNuFhe%ucwu#pwzpqq2*Z)|h#m|LB*Z^xX5y0&3KWh$qH#=i9XJA$4Pj)w>xn;l4gVVE9CY&Il+Y*t) z0m0E+D6Fm*BSGGB4?=}gf1Wqa%CdPadu1|1U!5aV9?33;<~|jJ?zhAH?gMy*{PlVh zl(>x)f#Je+9i&sXBg$|rJH2x7{xj{A>hh;D>^d6Sx4CvdVXKe5_qf^Ls2dBAXmoXD zG@5+hsc+Z5OJzjc^2cz84?d*sYu+T+9okJ-%xKUPkbBRLEVvWynrcMsvdXB8u!q<} zt5oF|y|Qt^9o#LrWh-u(s5^Dng;R%D>_)=Fm2_g-grL-I97;G*Degm3X%ca0D9&Gw zuBg{54LGSR7qF76^;=3xXG~u>-+zuO5DS-$oF-)_a-cP4qo2hJFAwCE<>ui%UrCmS zZN_v^2xnPOhd zFI#{OA;=vnNv_S`Q1m*6sJgE!) z7V37X690zR&XOMPFA7r)N2at4BeIwqB5bXNm+a}6@^Tb@ZNnwA1{0RBa3L@;2(`n?Xg z1J{!B{_HSo98UQ+!zi0%jZwu#F#U+gDG%R{pt*4=<(!zf=9V3a&c(Zfr$|Qb?Z*1u zx<}y&^9U4GgGJ0p?r#8(tL}$r)Yb16;|s^1#$8kmCovo(jKc1gRnL|b9>i4H*)%7F+De*cc2IKH1tLfL%hYAq3m-o`M&p{_YOp$aJYjZ z^qZc`Yd7bQq@qyF(!JgP@O%G2Y9@{_4(Ca#Q0I(kc)_~$$%hB9or+n#n1iubptIOoPH?GnP7d|nc=%@(c}IN(+fpq&~sel1a+*$ad9e~ z>GNp^x9he=&EgfN7D=u)G)6CnH>v;Y^zSuH0}lgw}NEDURLv6lJ;*e`3Lp03B9P>)ypuczxp z5E)p8y7AWf5nOBx3vi*V4Mo|fc|+EzKMJ-#;Qu*e6^^f1^gx1u1e1V(U;}3?VB_w; zrYYdc3wV9n8(G;hSv#6pT&deQqN`yDc6oEt+RdQQFk(OtcCqyrGk&HAQ+*Zai2aIDZ^XzmWp81$vj+1xbC$xdwfPT?T26eTV)1PAqOSt$UmP=|JI6jlSTGgF?$Ctva z#=!}ocg~C&xN`A~ZzIi9PcyAk*tbTS9H+qy3_SgkWywrnJbr-;BYn0#{57hG6(ypM z8|sH^MS&NnF;dMIbtz$Ei6|JvNHzYIU>e}o24!L*h$ zMxiK?7-9NtJ-O6jni|cllp~w!{YLqe-pfd!_(XOr(HeVb`AN%~he@?bE*&m#LWVLvg!S;qpfy(#l zRQWYEo1aMS`Z(=i>v_8?t&>W^*S_FgciyieL%n6|)ahCaYoiWj*=7B^c_;Z^&b_RE zA7|#svt%VgUZ z^9;{E;bQUW@;2&hQt9w*N@u(9enFK>e2Lb5bG6S7ht%|0X8h)!7s)QX?WthHb=8J7 zGdZLA=5;E^vAme|w6DW=qw)O2eGC)!{H%PnzJz<8@A5?#yDQ>enlr`R6X^YSSF$(m zUeiZ^rZ;>pza6%1{jryUTl`Y6d{BeI%>$QjR-8|EJufT&VM~VqQY#8Ri%4Nl)5)PwQUdjel~fKYr@O?P-Uf zP2rsO_O9}r_H({x)(hWmUy_#AD>KzL^V5_$yO*8YQ+@4C)1m4$N4HJ7WK>;Q>ihPQ z>W`|satEW|e_lW3iAQkp=~vg<Hyi@ElVsEgtskSIrMTs9a3vQhF;c-#v;V!Y4v8&tq&qq(5lz4MP zW%c(7oIlSME5AD8ymF>+`Zr%IfA3(e-CGac`X8Li+^YJ@itnXNo`rIH%g=(RUVJ4R z_?I=YNo6c(#7g`(?)Y}dKERuiNrV|RJkG(;KGQs6ZP3z*Q-LkiQ@}AdP`3jH8h~O9 z4AIWO!Qj-qlK7Cyg4E(zQ0olcfJ!xQhaW(t_kiQb+%Vlhx`FW+&rEA~s*{sPw|oXLAiy&RKqE?XfquuPJ+DDp$OvfpX`odyD3&|&K(#}Bj%*0lQ0QGP zX5FpNzz`S8%D|6e(pp}qNyR0VIjP|3O7t*5KTr~;zkxB;7DY4K@sjA~pwE*c%(+$s zGY4rB1zkJ(#0x_Ekus=uv}qW06VN9j5GH&phnj#gErG5debgACzq1OeAAJlN-3avl zH^PXfMy$PYbOX>kx(EZJnve~^*6l?%3%&1%Fe|tj*(}taB)Tc+T`hzuSuM~|LFss* j>ql=7BJ{I%AZ0Ps)?t7*D=-Iva+M%MA~1V=?*;Jy0zn2d literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/Step.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/Step.scala deleted file mode 100644 index 99aa9ae87..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/Step.scala +++ /dev/null @@ -1,52 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.step - -import com.twitter.product_mixer.core.service.Executor -import com.twitter.product_mixer.core.service.ExecutorResult -import com.twitter.stitch.Arrow - -/** - * A Step within a Pipeline, a Step is a unitary phase within an entire chain that makes up a pipeline. - * @tparam State The request domain model. - * @tparam ExecutorConfig The configs that should be passed into the executor at build time. - * @tparam ExecutorInput The input type that an executor takes at request time. - * @tparam ExResult The result that a step's executor will return. - * @tparam OutputState The final/updated state a step would output, this is typically taking the ExResult - * and mutating/transforming the State. - */ -trait Step[State, -Config, ExecutorInput, ExResult <: ExecutorResult] { - - /** - * Adapt the state into the expected input for the Step's Arrow. - * - * @param state State object passed into the Step. - * @param config The config object used to build the executor arrow or input. - * @return ExecutorInput that is used in the arrow of the underlying executor. - */ - def adaptInput(state: State, config: Config): ExecutorInput - - /** - * The actual arrow to be executed for the step, taking in the adapted input from [[adaptInput]] - * and returning the expected result. - * @param config Runtime configurations to configure the arrow with. - * @param context Context of Executor. - */ - def arrow( - config: Config, - context: Executor.Context - ): Arrow[ExecutorInput, ExResult] - - /** - * Whether the step is considered a noop/empty based off of input being passed in. Empty - * steps are skipped when being executed. - */ - def isEmpty(config: Config): Boolean - - /** - * Update the passed in state based off of the result from [[arrow]] - * @param state State object passed into the Step. - * @param executorResult Executor result returned from [[arrow]] - * @param config The config object used to build the executor arrow or input. - * @return Updated state object passed. - */ - def updateState(state: State, executorResult: ExResult, config: Config): State -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/AsyncFeatureMapStep.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/AsyncFeatureMapStep.docx new file mode 100644 index 0000000000000000000000000000000000000000..8cbe487b6a8edd0c535652c3c4d5548066a4843b GIT binary patch literal 37533 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/AsyncFeatureMapStep.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/AsyncFeatureMapStep.scala deleted file mode 100644 index 9f0c787bb..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/AsyncFeatureMapStep.scala +++ /dev/null @@ -1,70 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.step.async_feature_map - -import com.twitter.product_mixer.core.feature.featuremap.FeatureMap -import com.twitter.product_mixer.core.feature.featuremap.asyncfeaturemap.AsyncFeatureMap -import com.twitter.product_mixer.core.model.common.identifier.PipelineStepIdentifier -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.state.HasAsyncFeatureMap -import com.twitter.product_mixer.core.pipeline.state.HasQuery -import com.twitter.product_mixer.core.pipeline.step.Step -import com.twitter.product_mixer.core.service.Executor -import com.twitter.product_mixer.core.service.async_feature_map_executor.AsyncFeatureMapExecutor -import com.twitter.product_mixer.core.service.async_feature_map_executor.AsyncFeatureMapExecutorResults -import com.twitter.stitch.Arrow -import javax.inject.Inject - -/** - * Async Feature Hydrator Step, it takes an existing asyn feature map and executes any hydration - * needed before the next step. The state object is responsible for keeping the updated query - * with the updated feature map. - * - * @param asyncFeatureMapExecutor Async feature map executor - * - * @tparam Query Type of PipelineQuery domain model - * @tparam State The pipeline state domain model. - */ -case class AsyncFeatureMapStep[ - Query <: PipelineQuery, - State <: HasQuery[Query, State] with HasAsyncFeatureMap[State]] @Inject() ( - asyncFeatureMapExecutor: AsyncFeatureMapExecutor) - extends Step[ - State, - AsyncFeatureMapStepConfig, - AsyncFeatureMap, - AsyncFeatureMapExecutorResults - ] { - override def isEmpty(config: AsyncFeatureMapStepConfig): Boolean = false - - override def adaptInput( - state: State, - config: AsyncFeatureMapStepConfig - ): AsyncFeatureMap = state.asyncFeatureMap - - override def arrow( - config: AsyncFeatureMapStepConfig, - context: Executor.Context - ): Arrow[AsyncFeatureMap, AsyncFeatureMapExecutorResults] = - asyncFeatureMapExecutor.arrow(config.stepToHydrateFor, config.currentStep, context) - - override def updateState( - state: State, - executorResult: AsyncFeatureMapExecutorResults, - config: AsyncFeatureMapStepConfig - ): State = { - val hydratedFeatureMap = - executorResult.featureMapsByStep.getOrElse(config.stepToHydrateFor, FeatureMap.empty) - if (hydratedFeatureMap.isEmpty) { - state - } else { - val updatedFeatureMap = state.query.features - .getOrElse(FeatureMap.empty) ++ hydratedFeatureMap - state.updateQuery( - state.query - .withFeatureMap(updatedFeatureMap).asInstanceOf[Query]) - } - } -} - -case class AsyncFeatureMapStepConfig( - stepToHydrateFor: PipelineStepIdentifier, - currentStep: PipelineStepIdentifier) diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/BUILD.bazel b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/BUILD.bazel deleted file mode 100644 index 144fc73d8..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/BUILD.bazel +++ /dev/null @@ -1,36 +0,0 @@ -scala_library( - sources = [ - "*.scala", - ], - compiler_option_sets = ["fatal_warnings"], - platform = "java8", - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/javax/inject:javax.inject", - "finatra/inject/inject-core/src/main/scala", - "finatra/inject/inject-core/src/main/scala/com/twitter/inject", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/featuremap", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/featuremap/asyncfeaturemap", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline:query", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/async_feature_map_executor", - "stitch/stitch-core", - ], - exports = [ - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/featuremap", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/featuremap/asyncfeaturemap", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline:query", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/async_feature_map_executor", - "stitch/stitch-core", - ], -) diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/BUILD.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/async_feature_map/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..4b80d398519ba467ed7c39f6032fa1a73f2bec9c GIT binary patch literal 36973 zcmagFWmsIvwm*!!dvJGmcL)S`cMIA`aA-V0a0n3G-QC?i1b2r7cb9)>X3jY?=id9i zUp5a_wSKbJ-nFZ%tCi&-p|HTfz~I0_Q+Tv1R14w~!NI^rVZgvJL9Kcc0EbT&4xfzF zJsmAv446Ia?HUpllvYI1KA*i{C$R{VdP|^Umu@@KIx@!LOID@b@ainGoXA5w+>P^x zYfLML!Z63Br`-7xuha^4`ZQAONl2a;7^G|EkwX^wdl&o8ks%-Kp;5H^K-x6VKKSOw@h=i>9fF(ZnDb41rS>8ifw4%A4lNX{T^hS3Ml2 z*&LRGVbS2{vhEmmHD#BOs$z=n}*OD!22!S_*_H!vvGZVze|nV1Vf#(m4;L8 zN>2fb#~>mA?Z>WtH?#Yg7RMn>ZAs*{n(jJ=O~~#Ez&4n=dgdo&rq-K-K=#p!Cd0>e zU7cukU+cpl8GNrh36%7s?m#-4Ix>T=FsbbAF%>?+cYSwvbOkY#!VimKhIg|w3ijg~ z{==xBximy-RNKU2l14cAc;1{2CCGhmvV--O_#_p5+a-;JXahw1z3(qjp7u?km+|hA z0xIuho;wQnTvq~f&Ey%A==5F^iSp6A;!K{r9}$bn-bo7gJTDZj?TL)uk>@^PDHwt& z|D%eY)N-Qtpz5tdfPo=`{u()3*txJU|GrklPkex6L-RiqmKvria%j|$%wIB;{Hc&H z-2H9*w9o-4Q@GsOp(1IZjnhMXaJFM+IiHqCu*gto7o=sXGZ&b%(4)OUcTwMFvOzw$|oqT)UYz8;t4S}I6N8vS| zh9*d}koXXi(73Yz^Dl@x*sm+5IIB;YQuKTkiNU>R-H$Vu)K>gvqumiI_(%xVnUJz+ zYzFf4Vf+;RwOpLDpC`#OnpF#Peu}H1D=dB16pg2Cr9dX#!=n2Y5I`KBKoMVuUeZ)Z z43>^woC6-7)Ndj`X$Up5SOy>Dyk!UFhF__xwEc5kj}3pN5qafPb?c+qC7U0RNEbQy z`2B#f>VCQfZ8Z!#;fdP=G!iN}hp0-5s(Z60`{tJu7iXu9DK|)iGNh(ZB$T9gInyV_ z<)VQ(aI1Q5>wx}(nxWa*?NufhDu0nr=FJ?{m@kcEyfn!s!1T2olp%K^t5EoiuXooM z)@*5CWwDCH(xGHqWqvSrPUQZq^Lu;$`fibs;hyIL3h&Sg#gJ~sUE=k*_mbeBb-7+y z!94=i#SRJ#4DIiAF>!SKqb%xU4lAr^?N1C)2A{rI!-}ck#RtxdO-rodSI4I}&5n|P zh=Xcj+XnhRgkkf2X1NI$s1taqAAMR7vxKcz{HTFF_K-WQ?6ii^Q1xYKe`Vr;+y$x> zx&&Ku0NudJXlk@#4u%Q-Q;L>y<)}A#o$2@mF|4DD62sJ|Wfal%dhfzEMMt0S&laLm z$8I(E{pX3w4U6mFR9Kb1ltI2!eJt}Vo)Y4EzjJe_laz>zA`M~k!T~krS!PYU6ef+U zKuW-7+;Kks5y}S9`_oOW`7iWrD|n}C=zW<06o{}S=s@sPO;6mbtM9^ zC~~(bP>%xQi_bWc^ve>kxMMPX-g;iJ1zZG`|^ z!1n+&&|htZ@RZ-X>28zUeZ+r3W4^FwJJ@`16+%38hv5Y_*TEAfpTOI_j6{wR2Q=Gl zBqs__Xl+mmgr?(ac-tw(CHJq$iWDfl?`ThBd1fI#hfjOBB6yp-IVSn%jS*V)n&t@! z26lx1=L72wa5iTFJ+-d(pqJC{JL5!04zRoR^mHVUzx!T=)O9`<9Q?M&XTs-dA~rql_~|aK6ltC?Qkngo!r(OR zW_*eKum=0%&e+bx8ZB$mXk^ldOY{0Y%WL38pD(7>mpSZYZc!-fZRt8n#_~Bfvd`G< zxt99yFr&q*(J7^2qb@zX)>!7|_zL73Gue1NFcU(`Erry_oAj>ux>8G(0#UgFgorIe z_be0zE&T)fVp2>fCL#Fe4f8x}+5Fs>8X5s6B0cAS3MG4P zRpquy^Xz#ngy{EcZr13fw+)Nw14_vc=Cgv&dL*5!MM+845@Op+tR_>OoP`F-h~Gcm zi!WSP9u(sv1}<^#EPFmd+pJd!$!XbZCtnk=+=bNa`oiJ}?Xvd`p*oe=vi0SQgCD(& zwURrq@JJ5hPTC#A?znxwdiA1iiJgTw8Fxn>B<5x7_OT#KZtew8Na$BKMpY+4w&+(^ zqnUHDm-fS)ypmKY@(aaJ@-=XslR2$5V9!AoC=@S!;AZ8aPrUd6ukisTuo@>dS^V<; zEVa)~`73=TT4a$~ck3K&4(q4hIP>Z!PLonO$2p3Bd`!uDPA#p>O><`h=~ah1INv=%cQh z65NU9%MrZs$TiAJ`2*uPYB45?c?Hm*R@>=bbf2nP-m za<3oLG#$zEroA`tU;cRS@btvO_pH!x5BtyO)WM$sgB>)1kAWs|LeK>M$8-AU^5gGM z>z_-JuVP9;tazW#UJ-gj60iy#BHkV6Qn%4dR~7h#NH53VO6+aut(h}QYzOSzaraLT~5VNfyh3BvC;qF)z6jzu&sY(1; ze(>R|!ZSim3srwD0%b#vgJ=tOWmNu8X|?#zwLH2II+D}z-%LWYGCz5>kzY(yHeYs> z+ir@irMmQND%NQR_M$`8EY2AlP;gNhZ=W4}zqvOj^m~CdM6j%%Ba|rI3wT!0kHRp5 z(!5KD?BlpMwjSNFoHqlLbnlW#mS8WaPFLH4ye#5~5aXq)O;roF4S6?V%WHEz{k7jq z5&n}mEQH98aAXnTHXo6;t;(3z`y-*=^KTddq%`(8F3ZK5`^Kwsyvx_qRZx5nK|fgj znd_)B9DxWHFfc<6XfV`&<=W+wr=5k%A2XtXLBh6lt#4OXZl2Neu6=AU*wCZ{SiBpd ziFZe4%^8OR$IS8f@3{lnTtTk>4n)4|NIo3_xpETUr@56eFZVAZZ;sl4KJ>e`ovZyD zk9Q|!!yk?ALW>sqfDOXLeOADw%pq?b2e$>2&x$75$rFdwBBvr5uQuOZ!g3wb8 z{;AM9)X=I*k(X*CUmX!&-Vm1dwit^LT)&ssgFZ_?xR>j-mrtqs&(*-C_6vistoxW#5hG0FkfcV&JVUjF9@)RMyjwB@eHQKocQ#8?N@-&Ie?ZGSsbNR5n$T zUJVk{a^ZeS-!M9#uoyeq3e|R@gyt#nl1=pT4k_@?_(sU64_PB&ll3eR@?lR+YUsv}q_| zu>xhz;im6b^@eXHmYI%?>2vbJ!Jd;#IZl4@V+{Iv%hQ6%l{%eGe~Q(8&|AAf<^0ss z$;_kUozu&Z?Cq7v$(eAvigbg)-0XSZ{?*m5(>|AUPKJ;c!UCuPo8aDn*8Y3cznk)1BD!{{B%j?+Y-A!AV>uy z(|nCBZf^AG-0*9`)LXQ7A(Ygf-FIqR8XB{EWsDSJ)=PRm8(4d~acwbh81NQ*?pqjl z%lWwIaiw=ZIFnVipp5j#GvU$k|f$;n|VnzQ9t^OD-Qqd$q`9{ z$#cpWjd8VvD1BpKmGt%$=(d>djy$l^$?P|jC1Zc&9DmSq-2VkowH;6ygH~eaODouW z_2A5S==5&+d_!P<#-68*CHd$e4rgj?*Ng{If1ORijo7>+ChCceY0Xm5w@ z;cd@XWfb9z?fJ^p&&U0&Ie`+jVBICGdj5t&o&L*P$JGGFoG+YnpZrgGb~vd?CDETq>sT<_q7bURJJp; zAZayPZW#z+17(3n$c?%J1#mC?V&A0G6JGTJ|3RVJ-b*zD+#Bkjs> zSIDB!wk3z@>jTe5WWuLgm_Pd96{>?d(MDQ?i9Y1}+4Qup>r8Fdw`ezW=Txv@LvC#V zP*S?3DRBSGDGh6eq-o=f{OvV$wr$G&@p|a;^>T2)tL??f6L|NU_%?s?IP>fI(2>=o z{k2&n_Ii|iOYC3IIsBB#RWx5VT^h#>oyrh zCX%4FUHvpuwM8xn@V#>G=^3-D%SXlkf=l;VL-L`X^Z^<0gk6opa1#&H_yO6D?A_vF zY5+l5l3eNxGgncRxni69ez5rQ)nR74(4-bywX2}&yJ}(-Fqf&L=U=fs&=-1ng;OJ{ z1zqHXKJJ+5=3IfM z=7eqyswNEGeghOO+!h6t1s*nj)sX>=efK>gIjjO(aX^#yPpc}m+{@-M;Z0iVvff#9TRi$m$e$SeufpH6{kcT z%{s)Wcc@0)K<&x>s8;Zm8XPGdBAgrA-$W>q@*;*i?_kq$8d#3x!=K`@WhYgTbO1t&6=(}>hNUYn9b4+CC#eW|UtvzW>uE0OfP({aVQ^FPrv2bvu;7<(_c+nP+L+2#js<}6)% zAXlV}HO73rJZ%)q^$i^ab^B*kYd=YD+J4J)DgZ1&UZ!KsD+IOV1+`DY?| zOe+v9q?oJ!NZyWW)#q%t-5sPGp*g8rYM~Nans(vM<1_NmZw77ku0S~G-C@Z5<_@(Zbg-P zlVJi*%Ho!E-_=!TYKOGqz^S<>MN-j?sUXv+MJV%aWq4m)mLd8>1+RGRb}^!6xu0!P z{>iH9N{dXROPg_9AK0p5>t0{9RlvJhDj~Z28Fj~(`BsWzFN9~=V_D#k%b#LNSlcU* zAK0bhYKg-RSXhOMKdUKEegAn_qiw`Ep7E+U^-3&~{>)5Y2-{17fkwZC2`sf`roxYN zD9Zt$JePnxJ;OHsvVxY)##x6K34`*UBl#w!WxV24)5jNEz?p$T9y`CdG^S$-R;5Hm z$?3MRPrb>>f@^u$#=Hc&eeZH3Lay(!9pT5sxDNlY!~0}XvYUDqI&PAbLZ@(1o`^Kn zT!!fsD5(s|s{SEtR*iTEpB~RgmAyN9JSOB_ezS4VC!L$EXM<0x@A4q*QB*%(HBNB; zN&|l^r=7I$d;H-9dA&8kT;KoLu{`7#$qz&xvdB_t*i3!o#74#@I9~K8xbD5@D{J_ zKvVNJ!3Gr!7aOZX;p2nj%lD#*Ef0h!@2O7%h`%Ope?Z(*m2rMuU0j0J97)uu$c)W| za7(kdKaG=n&{Ap9&un|uJAIUpCPBqz63Ry&VLNh@)jY}6*fB;vJM8R*$t4ctoHhG) z8`@QYdXN}_y>Eq&XjGNsn^lE*YSU&&e0fg&d^KZ9fZ6f$&gO=+^IHa0p6$VM1d+al zY{|jP>$%q19At>)#$>#+BAsL#;rBt|b4izSn4fHx)Vi4W%SiF9QltLCi}h(M(Cy&% zZn&{h#ZioM!xMNPx0ehzpZGq;XK_45t|?>ZhplVtZQ}im>cCWVx#o7YTX6H(z;=b} zfcK$;k=;z}!|kcOgKHudQDD08FwK19|C=JA#Ca^6M zhU}=}Ikt^nA3U9{#XW{HcZcs#IJkQFIO?tJ2vJ3t^gS)wrQM$=d*TA37Oo@C0=^>! zQc-{7PFmj4)T;6pr^AF^2E7A&YSA*6=Qdy^HLpo!Q+|lU4Wc!1m*0P#8gd~;ryUlW z=6uuyzT+3~5TXa- zIu*KrZ~_icvU#k8^%(Wng90%<_Ns%|Kc(-0as+TyZ(tM$nCplG_Wd!(vY?ls^#}Os z7JeeDfnX-EB>;BwBh{NR9 z(n(a;mPowtf*Ti?1oT%fmRY}3ls`>yusI|{vbsYeWvsggzi{vC`suxfs=(8YJ&fw| zW+;9nC(5%kB~_T;Whzj=veQTSc%xT-B%3Pb6J2_B9&mrS|~zKBs|HMp75TcPi5)(FD~pp91C8vDu8B~1ul z=_agmad0Kt#(uFc+X)Dakf8R4V2?4B-hTpDkNnkUA?=u67lgwJ8lM=CPWy zEBh*(XNcgD<4-dy=MqNDtZ~(9SW6UrqOQzRm8^+>(@S8DeyDL0n&-~J6uY1nQOTUU zo~}{HWce8BMYkCOk*UlwLFU!0-cg)v7iunGJ^NJEw;vwlwv(JqdRN<6+6)7_;Eou+YonJbLP%CX>NT%TI)F|m~jbwdF{7N#fTq2T9z#-`u?#r(3 z^`pzR^gfN&klNv;&sDuFR!NxYMC8w$NwNvsoh3J|Qp=BtaVny|caIoQjDy8dV-VJ* z+;CS z6-D@;-(IOhF)pSrPa#Ai&_f`^FuW_6WzPCSO#Pmx39eYqqfA5S@K{n&N|fI_pqETQ zP2@)qRbV8EN8`|GW=cn?HG1s7d7vo&#iO_*iwnM0bfJu1ZR~P5 z$ihlr3`YyH^!3LtG4*R!zSb5gQG;H+ibIuy9!7O2bw-FoJX97Y;>V0H$EmFS|7XIV1thwa9*_V zfAMdxOP!Gtz1NulCD8%As1CpEeaHBW$U7+SpO$UhZ z1isirP?=X5UAgb+Y{)!c=iFKkigHDES+S7R?4gcyCH#cj@v*c}O7t>Hvm|p+Sj$XF z^pa1=r!ty6n?V_>oe(H5B^pdlN@T$FZ*vGl4GL1-(YQk6Q4S91%E{-NWnOS0G}z!P zbpK~IX@{XQ&pd*ThJOV{rnUSp#bf>AFH)Js4PYV3Ojg<=!ij+q?(#`)uXJQSw>aZU zd~=}M5W7xma=ZO_?t<_Qc5}J49!a^xKo=qZl9>sr5vZ(+r188K2vP5L@g z_UhE~c==H6hiEeE+kr?$OH2^;-q4An1!Yhx=$F+Y{=k*gjqW>wGVPP4Lu zEU713LPJ9=7}A3+4449*-Z_s%1)#O&x)|^MT8*OgIU(NMQ=E&hg;A9>DR5YI@M_7p zN2nabcH3VjK%NMV&wm7x9Hw7$7aHB@7lKjFupJHiQ6N~0SwJ1E^j%6zY#zbp&wgWk zktYKll)RoSJRt72357FfNvEwXfw_*%iE6&a;BAQK2a7^e~~l~F~|WfG2=v7KL; zg%4oWZmk+JQl~2ha4%y)#6hHplRAT`!AT;84Gbfa7EWB`02fErp72;#R1!3&Nh&D=D`R91S78bCeED>ldzPoHskcY5G@Srdq4sh zUo0jqxTz?kv>{r}x5{d~FXL|Hb;zHC1N!v;Qu3@Dp7Vx}~lM2s{JPI4=p{Y~Y*^lz1F zB=sPbeXze(LV?$OGaYLA<-@vfE`e*05Fi8Y`UE)~Q2z!Q7C>Z1$`qz8uceJ7WhoG+ zg9|r&b35+ld-5N|70&h&s6wq3n+k3Dy-MJ{C9tR~Kg3&idha$Ml&Byxv%6NsSf`uf z$M?-ttgow-JYomz$PIN9ZL))Gs%NF}B5sS9kHC`M#5gXT?-XH7T23w?Z1kTLf&? z+E1S|vMX(3paC@|@LDaX#`l}s8;^b5P6q`|{u#vkKZ6n{_Ly$=FZ=nzT`&%QQ++E( zwmVly#~i!w=ZoTa=hcpJP%hQ*yWfq#9PMCM>25T=?vfTv?u8a?JN=J#CMsF^d6-5s zn#phrpY8O)6eJt7B*SEK$9Y z5goTd^!p9{^I>DHi}9^Zq&+J{1y5E#6wTUgm2rmUairnr&B4#8aiz-WqS?KNee1kP zOWRr&)}o>%LoP2un8{DaHK%>OvZt+5QGBqqH-?~zeS!&Q8i4XS^NiKEqOop&xmksD zzu4xh-yrd!!6kg~W?-y-(b{f~YK5Cgj{zSeIC@_|SZqievea^9hHxJ`UB5+U$j8`&(Pt9= zn_BJ-({2$a8o&E6b;aNuOJ}vJ% zjNuO}N_#LIW-=KW1Kf|vv;*54Dcg=jFe4~D!n9E2s{0+a$<4PM`r^6Gil(ajMLTwS zFn+JH3*I$(&m#Rre(O36B3Fa`gS?526ElMO{~(_>mfd`aPTp8`{)@cVSoT3x>mEU? zNd@ai@24NIKh;{|SUQXhH#!1ZgzoD(S`jjc-dcZ-e#pJKU)cWEQ3zF(|HP<`^5s_) zpyunK?_#zX{W72COrD=YM@Gfrg?rUXZ2 z{8ph7M+&faHHKbN8){qN zj)_{vt~~o`c&4@F6qKD+={^C?#~*4M?+w-+zsv)TFeYSmUl7PsVREgpjlPxKeI`qt z2T!H`zA6ShwJkG)g1f$MbB`9|RG5Drlqll2PBmY}RG0}XgkPLgpWsoP$uBC6Zf)P< ztauStNS&#F#FpelmYf;&w$M53s0}N0^)H0yY>Uf!T0YE%gb;c;rLsg*NZ{(a_+Fxz zO8xFma)vY48lsUy<0@)~^H)h}9y5Sn!L|dCamrcY292%&IbDCb9+2d9CYozalx+<$ z(Y1Tf*~tGTKvb#An*m>P#(V-G_^C9ZP-Hb@fd;P%<|bz z374FDtqbM<@~C@PI5O}zuq*Ew z^FK`f;;gvo9BiGbU;dX#IlaS?t$&2{gWQYC#pGjT?+pej$ea;FX$RuW= z^&7ukW-}3S9xgV%Ky;dk1+^0)Xh*p=d}VKY>Er;sd6k9<@>(jf9!myWTUUlTbdF)a z$!h>_^w#{U{KJNkiSvU8(B``eAB04Y&NSML-Z-Bg93&iq_o6x43xd~T^FWY08UPCp zx-?Zdi!8uv#;O-4#Gho!DhRqMgc64zwCdP|3?l>+_YVU%fodj|{YuJGOv5Wyabq4D z2Qh92$H3ZQ$DIkA*__-Ej-w3FKxT1li?O_bXn&&J3NdA=GZrLq;U3W&uZDG%hy4AT zgc=UuoPi7j-+~6Awf{!*5UYUI4ZZk{#^QJjGcm}awK%rik67GP`Wd&`{=C)$d>tm{ zT%7Fq;MSCF>v+CC#RRnn5seP59V`yA8xf6-v>gnWG8}go`UaYXmTTu1tD(Oq(iZe> zlR@Ue1WvEvJhh={hXz-B_sP)L0mO5ld@$}8h5Nt}yU84Q6pmxDidQgIQF|M3XHo-F z&@#gVoLL5gWf<`g-cb1nVcMh}>hI zJFX^S>m#lQf|El3zQERkE-;Nia7G!om%#e$&Q0iolM$jpMAjIx_HIKg)=O#OCq0&= zKq=Qx8M$ykSthB{KN;lQ9K*71ZUi|a0XoeN1BAeAr#}1sv$)=v$_HKkl z#LKWV^bLy6qA2vRvz*0&v?q$mFXU@@Mo;!!vwT_fAHZV}-C`db9Qd!w?!}cloZ#8I zP*}SLj5!^7(QU+1vbwXgrRnGT#2*XQV-Rc;$oVVnw7!-)dG|i+ehmBpafL|TdEniv zBs)F@<|sE_6(LQ!A8Lj>mgenpQNK=pW!ohd&wr&RMYrj+RS>ZJn}-1)W>M0VO}@VX zzR!~}bwDv`=teO53_|FiNj#tqu}Vga+IE+FoqVdGFS%93~s=L8-=}Arn0<_RdG2gnued3MPx+(%AX@_iNR4Jd)MWQ@43D2jAdA+Nysywezfg&e5!qDi>Q-mG2ADTjM$ZtjL825?9o$|7!>m_VCB|N=FzwlgJ9Ut*Ec}5 z!uEAu5$tDqru&=&QQr=K1Yq%CA&6)urj)?i&0Odoz)}4Oz~qGKlFj$fBFJh`*w1)X z?l0}$2Irj*VoJ~=k=&L`Y6W#{qR=9~9UEWis(2y%pG$n34Z4_hU3?xY2+SJ%S26$B+_>dEm=5aDj&7rX@|z8C?brlWlpR_G;CX)u zItoLt{*a4%x~=6O(s7ZU(rd_0z%aFoJP#wFz4@+Rgb!AjguOz4L@Y>uA;N;rDJ%su z?X!NMWo!kjXpy9b0Ro;9YO!AK-E{-%)L0Q0T&_7SK**$fp0ZM`fpbWIozVI)d=ydx z+YaamRt~=R`EYt#K?9;#xl03HY<1-BNJ99s)29gtZy&e`)x$P9OogUM+8#l=>U`X7 z!NN|8w+@5Uw5Gyp0k|S3T^IM~G>&-{y(s*;gvc6QCJ)VPC|KJHHq58QzoYJ(d(=_Za|-0{O@o&$f2G4munnU zLTY~q{H}JOyC)=8gi)+4qP8HcO#IhGX-cLX$AZ(dmX7!lwE}LrqyqQ#Z0u6{_Z6FB za)n;!-wGy_Rq*{>Qgi5|UX;%x6rH&?qJSw_WWFb>&91y$QJp3Ic5Q1zb;4eah-F4B z!QE^t6AZWtV3EoX=Q%K5MG8efS}ilqzejo6 zpQQbconh>za#UUvJ(|7n=Zj&>EYxAUJlS%2@{awlX=xbD$ww9z$avqhQxxY#%`7sHR$Ssx+D__fLk>JS zF7%kJEDn(h7cssK8E<9;g!hng;DJ9gPZ>jHV+Z#PlXHVy_WT?-{=EulC^?P~on*t) zkyb(~6hIo(S#(KW;39%my-Dub{TCH0hzc+AHx+Bdfazw<6ptCmCi^!}RuV5e)8ST) zM?=}nL~H?xEA4mfVw^SX=9)=Ik4Y*1`m_vVu5Ob^{H6tl^(JKA)ur#LGz-}nt~$Dr z7Za2lv8@iYQ$&w37>;Ne>IP5k#w&-}3BH5MBU8nDn(4fAh|UOGCEFw~lb30&W`by)Ax`Pw*OK#U2A z&{qSIE{gm|n&FAz)wMq*sfDp4j6!}?jZHe_8f6G)ms}KXG$;xd4DskxWH*%nrtEG% z^{)PC)1Hk?bm93bCKzIHu+XL=IjO&=HPlKS91I<&BZ(e1m@RR0V3#&P`iMQQ&i&fM z&5ro3mt>ltVax&R3w$X7UeT0uusaKN?03}I?>_H!1L2`C;i%E%V;hUDyupho{2fGl z(w_2+X@O;~;vw;ssn*3{fD&2d99-p`5bkg&Y&d!}b<$!|ziwN!KGWMqLIvo8qBt7RwTNyx^EE3O;yymRVtvI$V2T7gQPJy~uR9OtS zc=NH72V+vhUL4vF2T6z<(rn!(LpdkENEM&Hn}8l&{U@yY$4*(rjqKjVEM~%RYWD_- zkX2-hZ1Ega3Nh$Fgj7*zmUHU#3}=uCdUZTca4Qk$E6t-|1ga?EAIjkCdqLUaEZO3S z83d0o*bugMsEb8kS+#~2P_UhO)H}n2vLVEv4YC8V<6O7&=MHs4QqEu-?T7>b7AG-BQ%(=Sf;r_~%4j^oh$TLmKOpDIGSuZR@OR5UAXTq^<(l=zVK zQ<}b@V86O93SN+jKhtBqTMR}TP5m*uAhbuuQkoVkX>o=I7yDJgVVePChoq+s#!fsr zZF>(wYKo?^i!Ag!Z+~{gdlrg)Vvi`_>o-emA}XsX4Sbj2q)HmG#>c@O5oIGtyTq#=)4Iu!Y= zpzp>l`^fj_HS*%bAyFgT?LM&*Of4do>wth%{{q7P4W##PAp74yvwq_pK$)CZt9dxO z$h8uS2thmC*gp^i%RqCB6N?=t9cbT=T$OeSK1CYgJR>$33yyB~3)a_LgoaS8LlH$? zk^Db=U`YpX5Y@Tov3l#{MPcE4Xtz^9+KLbvOa-lC$BByNmrJ4Nt(tzi}@nu>Dl!*boBIT#>4liQn@-VCqw_=5H5I!W7WYFRW zuH?`S8R93PxR|vWkb}2zd@|?_H(Yii=16G-WI@L5fMnM!@{)sqWS)G-hlLB0H`ITg z+c)+MoZ;gF19Pc@0R#P<>CfLt{CRF)%lgwtDN9QWvrm5>;rBI2&XcY^d3wNZI2=&Q zOadbt8S|aQfEY9!+qp=&y%#Pkn>9$Sj6eK9-vm0vFPi0#F&rZ^9DD-&Mko3%wuQrG z2qo*^>cZcJO- zpLqqKrX{lGa;~yrMV0H`6hfgrTh9w9uyHJukoJ4)>Kk z7w5jTn^Wr>uM?i7`S=8-18I5^-m7XOqtMLd?9i2ggbz z5-GrC_j{;bu|k0@8=8A*OTSq&8qw%t$=uiwn4BnisJ!02GJSdQac+6N-5{yGOX0g_ zV|#c7*1X*I9WVFZow2VuK2j{Gga>G8Zgk*0I^4B-XcIY@Us!j^&o`RitCdZaVR23_ zio9J^HGLY#0X!+ZG8@*p$MK{P(;*#hwcL%6-)=SIQsFX+ywrQ%*ZMqHD=D^jiD)aK zygm&XHI_|q>#S~UC>0e2ktDH{k!Z%mjNLpvZ9Vkf%p5vByk#aG`JE-jEbP1yknF#e z41`Xsc=`Ec%fSkr5$A~zCsqB*P1mnA%} zW6L-8GBxR$w<&E#I4c7OC)+o_nD?N03J+5s&TpNj+-D>L(_X7L98_=h%*LGH?4($# zlp@w_v;a}2yg&t=^|g(rvLRjXy!e-j!CscBh|s;6eb7Fucl?lE^2M<{bmUmPdSeEqc>>*eX3XbEDDy{TN*(B2a#`4B-$)ddLJ6pMP$<>+>`5c62>dO$hJl}dlHz!$A<{2pmW<0!}X`r5r9>%xSSQirCb4es9R@=&s--vO;k7ANA$ZHt9l$5-w=fJa7|z@sRUhA+rJ0> zEBf~!j|qEl!ouR;DD}VL|3LZsfWM>s?<(-PnxGxOT1{rHXZ_W^(NTrFJ>J*!8)4jP65 z8ur^7imh{*>?6wU)n)Wk$R63A9`$pTY(hI2&}Y_;`h^hzUz`YKq=CX&d?4 zxbDGu=uXyOFOZPUyDVm^Y+|dRSOkC+X}e+kcJO=}y0@1x+Ixo?NgylYF$P?B<8^yH zg*Jr9DGMAy)H^i5r5(vX__$^YYgg=8mnK%NXBZBL{PjV-LGa*U#29 z6Z+0XVOJq)EvLNclRoGv&o>q=J}-PNUG5=fA{Fyv2Dh6xeIqerN@?~#eAjpVCuiKh zCUc!S-t60F0VN-1&Zd$DT2{qRDMnWpDmIdRS6c6t2AV2uuA~xA`mLl! zo1MmZo?ejrc-eertQ7fD1Pev7EO3l{c7_|OuE|mMiuCusp>a8U;I@5#L}|gj zwSKsggzksSRHyLBMej-Ir0}p44x9`5EVd;n{SoiGxTh}iUWqiV(i6&F_=EC%E1s>? ziv&dFfCM`Vc0h_+bjeuJZ77o3_=9qMR4GEcgwwgE$h5FRkNO2?D3-!aO<`M~>)e&1 z+xCfw@IiLk^UDr@hNqEIPv=g8;A_n=va9ow&%^U`jFfQN9`H){WoBoz_PJifkeg7x zl=-=N>5PYkkjViRa68MH60LF3sWjxV*#h)_XkN`UjVo~KlW<6iuMwnn$RUqzWn#65@ex^n|G^tnOQ|=feY2s7nII8a6zC3S~b94O=dui@AiFy!r zWMIO>c-%N%Q0nYWS9w=HDiu3*50e0b45`XYJi&zAg!E*bLj3*=cz^CGf}N^Q}e(pay~sry7&{0yP=3E7eJakf`2- zy@xRtWXCQVLpDARUA`iv_vvVk%}O#RkJBDMF4j^qqGt4Otqj?XK)>+N1(Y463@+X_ z*EsX8sRgDwl$go~0r!D5t+_)9T^=zm$JXLXW;oHBkscYIIgsvpnb9wwlTept8ou04 z<=2ZW-?3%%!g0m<5uq)xchP?Gp4Ob*5nJbVbLbJo8NB~)-pg#+WXuEm?A}-~H(Y(4edVPM=`&IQ>C2^`Qr2cMW8u2w`p4S-oB%{&~{rU5^Gg$Ad?8!r8BzHKV@N zreqhFLUEbXflPC%>)WHwvXK{8o$<$;FW~Z&S1E}#$7NTI5LH(PiN^;qoasyu#s#yha+RVw2u z{$|17VsmcDx7<9zyi@@_xg%WnZhBk4l^nIre0GKgyML!j7^tjZc#Tc`rNf7bRNL388G>?hot^mdv0|SS4-6-(GWHTD5T(x>WXA$rl7jJb zFfMXf#gcxvUwUfy#A8);&()L-VVS*57`b?LHO8J-OhQOBYyP}b(8eFMmpk%SsS5a7 zlcgGRd7OJYaZO~U5?k01)m(fCeZR>jn-LsOK zFH@am_ChBB(^HzwJP$@{)ZWo-vQvvQWlHGe#7lMBcN(jh?n+vcjak{RJBJ~&?To2x z-S^0g`z-PH=6l&$LbH{=Oj>Cfvc%P-H%As#L*a%c0LhQ3+uJO^a|MD9G_+>(*arwkS z4&Er^=gV~;*HRYS$oo=ZSVx(?u6+)E0bQhQ@-^%VlD?+4JmJ!|L$4J1JYf7ul8h(2pl1Mmk>C_PV4Y?Q%9AOX=S* zM)6&<`xqoSC5FJxynk#cYy%1)k9*K>c3V41J&^??avHdGQICkCf& zU#xP8#88ytWa~fB$_leux?0WWHpCMNSKT?jyt}C-fBaCh^T#SD`v*h}9 zmEL=!sP7u_M3-fui{*zdmy_e}wvw0zehWqy_*6ONCcaUxt+W(x8;LKa1^FqB({3??1--sH}PG@ zZHiJ&z8K-Q1bc%cw8n_EbH5!g`(lKUQ`LQTmD=0Z;sbJvq2Ap#V~_j1(1Sa&?IvLQ z18OxN@UfXS(f`u|pxsyA#hraM)Dz$>hNNx3^q16BC&#~}{w!VX=8GPZ;V{0lVg7<~ z9aAzSyt^F@v6*GZwFv0szINJI0Dp3Da##9&vh6WoC;0RKpB;cB>OSwwrVD2~Hx@E@ zfcF7>JNG)Aa*mrL*=ioLY$5lmLZRQaf;VF!3qpG3b!%1)s4J4! zL^NdZ);^dh9-+=9t*A7oCSo%lqPAV2rr%}E>p?frMmNatNwp&6&By=7rqFXb$ltWU zKSaRdhSYpj0*b>3F1D;&CEuU(xI)wDnC5MJZv=Z(ss8{b#p!!ukxwraA$L5dCiBkS(LPe@*15ISZ(Nnv*zmC<U8GFV4n`?>DLBjNBte}7s5iB1hDIImGJm74Xk#psydt1)M`6>#nN^}tTS+8{_ zxOYl*WKh?3P&Y|Yrj~rqV~BR90$bn1R>R9S9X#|~Kx+>tNRhcwxtDFq`gYScouvKgqQ>zdUE7DQ7J==%3`Zcvy_yM2tMk86Y20v2Uq zG!0fi`${9~a^lpD;nPR5!T9UZkV76XK{b))2&wg^@wtlcX~8;dp>`Ce6m7v%lA3M- z=Y#!z;Uwg7jbzG5?3sAw?b_}5+RK%$$mt^~M%)<@$#w9c^u5T-4-;BlVFvH%wZiOv z{Vugqkz5nddO{HVeyW|pk`$lZbHJH<@^TKzl_j&7JGEFPe?zyUJ`_Y6(o)$Zqfh*^ z{m;iMS{4<$$1GK2@hZDD04M>>J0rjtLum*h^a1&d*sXuGrC5~|1VoITWf)^|4)K7d zb8T|9W`^hrzyboZBKfJ<|^&>>xDm9tJ}v7il2|fk7#ON;Yl~nphZ`jA8zK z)`okkAMXzy{sg6g6!d~FIzCg!v zS7#4{>ShLa9|CikF_=EU_{ReVU$Z$-@6|*=2n-0qOh1aM;t)@^cv4hNwb%Jk>}P6m z5D1$B-WV4gdf{!0a1fF<;=@ic2=Z-|0T@y+bTJ46maJJh8;v+P-#~FX)_|1~vM1tPuaO6>{p0eT&9K2=~pakLzB-@9L$(xDBL9N9!_}w%|})Y z!i36=NmmC_^1TI-G%!})xECehlPV5-dkAhcO29}Q0-w3bzt^?hqkg>)V;jt_^L#7}}loXkp!K%dl2`u!w4Ni+y@90E!w@M9=o$UkoYmH3?= z>G#;kP}=OqjP79Aed>mHlcEbBM|U$vZ#zd%xAbIKh#XA${qBun03Y!W!whnKOf(kt z*XSkM@iwxEMf?;s#*Va(XOg!uz2nBQXv_imH9DO$G0~WkoQay_;XH$<1GnSZ zy4Qg!?u9C1=%#`0VwV!AK7)zuX^lEFC6g-6M(U%jDV<oJ(Z#XN%bCsKv7OE_;!a}%2}*c_CmJ8$doNT2zwbk_>8p8f z(#QsVtOg$fM9>F`CTf5qD9V;I`i!LYyA%XjyI-?q19p2QR`_cfwbhg(&e1 z&2+RZG7YVw3mg|oU?eq9XykVE+)JVA@`f({7Ph+6yZQro1=DHYG)nC~W~~C5E)qQr zcfVK5A=T~R)cN5lT8Kn2T&X)Ksbuvg@@6m^PUH`V)|n|zUZl0a)Dau_ksI{ACR_O= zSQ}?p`xdZ<_F~fEoyb`aT{sT@Cralk@#r2!W-^1vdeP0x%!P!<+ZdausKH0cIZC&0 zQuq6q6vdO?(!aQK-bcUR5fEs$dtxs9O z{Q?9Hw3`Lp(R0&OC>Ty;t9?bn3}QRtQ@fnN1Wj%JzvwwfI)XPC_@^F6KU_KTR>X@7 z3Z2u(d-K~O>Fu<~{k=nY-sho4L|R2nn=dNgKJSVQ22nhcbliH232MvHfDXcgRBG2K zgV&&jpOEE4930|+X&sw3C<-KENYH1)J6vwLBV9)ifg-0VrzWHk|2nJ2QumT}^rPG;` zMtiVcY7c@7?jhT_`J3L}2#!&lEUYL?6Lu-eG)ek;$E!PtN>04fLoA0lyX!DzxWyv~ zct)rd6b24urgN{3q&5jwq4pD7xCP1#N#>(#2)3#Jr^;d2`Duf6QH~%hi<7%mP-%D3 z!Fm1#l$mMNG?L6^a0D~FLR=-IWUEn4!}WsdI)r%!Z(MQqKNv3^gHf#gM3{{sRu;_i zq?sZdO|H)uAjN#7d#8lf;TFf?aws$Bpipdx^9VF7vK$BWiq}f1)L~XY5ruzY{7b~S zuo%Z55kOY|ZxJ!W;!Scr27e1+&4-;wpzkKK*eGHTE|)`myZ_KyYL25+qzUxluRx3{T%p{y(9CNpOlN9zohk9CKZ@!V*@ z*uuTyS;(}Z;N?@s(7?I#a%5gPqQx*iqnNRZOG9V_H(^+{r4!zE5T^HfrLr1^;oXLq z*fp=PFanqiu?|U<=S$sg8zC{R_vPxc*T?&I%*+?@mQV3uc}H}Reupi|?z zPVnwLieH^n!&SWo_U(u%uqoP5^8=3Q*a)tDTkR-B+(CmSPaRG}oiSL!4O-C*V&aMc zo>lN2$F$56n3_u4gCV8L+oG5?n~nP@N(SGaL_9@2@j>xu>c|%Nt}Uk|(UP%+t%C0) zod;3Y*N5+aG*Xqf%y5RM*;Xb4!J3vB6+mVZj0C%1Km%jVvxs40OSG3r_29Wk2Ke`BO4 z0zEpiBTmLn{-ffKj*akd6`r8M76x|VLo#Zw?{}|CpH=>)LpA>dsN>!B-#XqWHXGT< z{vRaV3$?TTMjl_3QdJDT{$&Mv`X4KvRQ?U|R1UNP{r_RbsPSRQ$RX58SYy(ijSq$A zA=a(arYu9S~i8-?n~W7*4Ohaqct#xTKHO z6Rr4i@dO+}ZEOI>Z=SojwX#8W%4Yq;D5my!XP;F*@Y!Z0t zY$6bI37kx{DJBRJ9*US#36NyyD8Ni^yg-Xtix(*lkS>DMdc$#VGRI3c^2}i^o#tY}v@n4Qp=GLuNriBiy zFyK2yvBjYa;KWqxWL)78`VUuS%dvv$Ch!I*6GWL9V&_^@X-HCSml!Y!pcqsgx|Q%0 z(S|^c&-&G<_-ua^HG@oLyh*a;1TX}xNDE~f4!h&CRlI>=0+uS=iZM|@9X1)}cv^F|MGmAGaEF;06WUpBbgO^o} zjam#5n1RKMQF^O9#P=7Hh$OebM3(pEqDz}V37JtS8^;Dv;mM#|9*`hCQ>P<}D<6eRv3lbw5Y~ARM9aAl^DRf^tLYz^O=R zN99MpRLS_$S=@+8VqzZSlouwbu|``SWXygVu*;A9Gk?)(tcp#jN<@0mS_(tKWhs+CFZ|iQvSvF0P+v=R#)VmD}vg*bR`ddNKyD(D70`W}`=2!cvdd>G0%5plt1C?&I zW=|2c$z=f?OK6uXX+|5DXyrr5`9oq$N5r!8Ly?$I+-o8G#T&}H!VXvt6v`U?8HG{C zSaW#No12EkH|-(VC>Y$Mwzcp3wEksZZ>EtyZe2h%3FXG!H4vv{!LHFS^HMPM=0QM7 z@QH=wROskW*bzcoMwf1>O{*d>IowbRUUmKB^_n6Yn&6pN=F6UT3E43>Pgzwp=58p^{+_ z`8`d>jDD_LZ(GM0ywKX_89{jPOk6_;oif`4Ekt>I%P`)FWKS=2+i8pd4JjTBw(Q5Q z^B@VruV;TqwAfFc12U8Z4s1-!dpGxA!R#BJ|B9I~u~jgAhy)9b2Jl=M2QD-yX&*Mh zOykGt>E=4s@Ra{34TS?LrBDMZ1t#U#F6rg4;+GHN%K4{U67jpDLNplj{NlS1N|DG1_B%Ya;=roK7Bg>NwMY88s7#Wp-7K=W@ z%8xUA&iuzICNal$Qy_imfZ#>f8}TBR*tJ}?BxEg;y){*-D7C>os)IW;B%vKmXbbqF zHGJ5xqPq++?PmluB#P`iGul6e-1Vr*@_rl&mpzzfrWAOo{I3~$JYX|ZM}w$bB$@DG zvmg}N05wf^<-v%-wYaj)H%Opa-^@=Dzf6V|FK84HY^u0rtpXdC^{==f z=`(RACzJ%S1UwiOj-?rkS2SE(i@bNIyfXq+K4vXQBJe6+Vfl!-Gh%bWn=16?;%*H` z++c4-^qlRQ=6aqZGDVQeMO#PI8D$C#)-6$)2MHPTJ+(4k*nApV?qpg{2uNAR_hKEwq`QDDb^u{KLeZcz!oUG}D^;Jj_ea z3#8#f{&}SDMi3pDP$DcQmLZhVAW^@-_mR_^KF?_X;Z_e?7A{2cZp0^v>IYIXM=T0I z(?qqrq!C`$x_#G`j++t{J+vIS_mTTK z_mM58nSp@qYrfCcEgMZiNN4L^L)J$;Lmu(GTYzj*#neM9%~&^FtS*0#>@4%3A-@pq zR>Sv(S;SI{ly=I*Z+wO=83>$LRHcazUUuaj36T9(By7RtR8R!AgiVpGvqZmdnmzOu z;&oDQ%*P+<2qo;Tnvmf@K{0T?tH9eJ?y)?%DCY|Y3PP3zsDlob8`k%;*x*QN_x*ZM z*{&ZI66}lr;?B5BGo;))to*b;!D6IY9a@E;iCf#q;8eX8MmQVu^~pQUDHZo%&DwJP zQR+512Lj^SWp?w3s~#k*Lk=7^Z9O+Y%`KA%6Kp42dzUF z?Lro(Rh6*+MQ1%?YmG2=?T3$Nbq)@|H7w^?`BGtw-It}``nq;;6AEjW)fI zd?dhCrr;jGEF*uM_m31rzr|@~NTmM&>}m>o*AdiEcZ-L*|dHjF@&-XX8v2Z%NS^Lda&$cU*4I7 zi&^MPEhuyZr_8PkjBNZWEV6nzhRSG>0=L@|!;Q<~6QvtgZ{HZ3Y9d%lLKG#ZoG< zkDoipxLtHi;qn9NhIH269*7rzd?Vstfg=ErF3mAZKGpjVVh9A5_&_a4a~7&M9tE4( zdrTFLP-}~{Oxh!GapzRVG01t)BGnj+Swih-?(EG%;}&JGTgzV&!gaGY6ZX$6#f)T% zTEBjO+7kj89Q_tYreN}h@uA6lKky-eEAj1-r)B>6dgS7K$Hekc<75A-fgzD_K4~K1 z9NgHCqn0=r@<~+&?y=XUM)j0}>`IP?l59qd{wzZSZ4@vKpoVG*cGM7K4A3#j)7hWy zc}~xn$M%Y_Mq=1O(#BaB6!a6^EHqhwI?m4+7pcur{H6mE?yyXeK7E2Z%f4QeH4U7k zB{$S5gtsG`OP!Y%!P>Zom)Jp>*Baba32;cVI{CB!CG18| zJx`MkaS0*L5NaOef;QT88~x@GWv&wc+p<$0FM>KHo zOj8EHrF^*5bcL*#C!;4kQ34Og1=$bsytpGt;e>+Yt0Ms}WYyVD%(72Px-``K$^glE zk3+1TwpyBS$fHA-?`lWIEX5&T-+kI8j*1bdMR*f}^!Op6|5$NE@j%YKTOnW-=fZ{z zoZ~;F$tGcAB$ZTD8sy3I%d25x@|_Bt@dCo}8ER3(X;9ek0)RJRfQS1z7_U-P9%X{2 zkh|BeQtXWdLLyaQjF#AS0jU@yt3Hc(0pxOeyo^hF5H>FXg~=Q4$%LF0y&Sa3CKQ8&1k#jQUP*uim%h=V!yv zQ*TBkep%@Y}y=0slv@GQ~d-7`qOENE2%bQWeqypI#t!+vT)Bl#x_tdu06Ge_e8 zamED=x&XW0wV)9v6>(CAVA_(s)n(9&f`;0jmRhLh^KZP4L#K#N@kE7exQJj4vVbWY znF>|YHSv@#J~xD0;nD|a-X9CE*CdxR1k^~w}#`hZ;ZTAV4}uOzgJucf`DnA2$0dJ9XXh8KCzLtzuk|9fGhZM_Yvxn2N;& z!FXk=&Wob@_e)<=M4l7n&n?Wv8=$yfOR1xs8UPM)ovZ@r!G)K`gs|#TFCR`n<6Wyd~u$pe{P?D2L5) zEvUi(2}w3>?7|4)Z#3u=)_b@vhYwV)_~W$W6^Y96s)UD2afMF9Jq2sRfFf-Hgmo~a z`@aZy?lv7Jlfer7ivZOT6fY+3gfmBuH<*N?JVjZE<#@tk)`A#G8A+L}qzJ%0`0>C= zB~d1t#&yvrhh95t)MZ6!OBvOR`KleE7LSx5N8Ck2S`mm#I8;6Oeyt69P9 zp9Nwv=GMerbb#Z;+ap7dTZJNPF6OjfeQnF-1<&>F)`3>TFS;h`~7Q| zS2bx#nA}oFIXqKlUwnL2BUR@0<~M2tvMZOj?zHLoc@Xy00{&NGW6(faGgsRt*)(@L*pmhkA*PBY3rnT2I%C&E&kxKgq84B*%DXY0I!%6|5gk* zD@m5g>Boo14&;6c;g+SItIy$uN_rMBv7Cqc!qJXiV;=YCo5BL@h_4MPy$drWe^p4D znAiJBIR()`qpGKRlg$$_*3r9bJ0n6Y`st7DeO-~sTt@A)6 zGZg5d#92!%*AXbJirWMjEi?W70*0t!X#ofLQ=k1Nmx^VE>Tv^pi|#kH#d;!{~pg!wvkSP7LLLtFuD@s^fv_@qatV{12Gf z;frg6TiM@04p_L*_v_IL9sef9#&CD%mz4AR@n7xmii9K$`+&`(PGJ8>^C(wyH#chs z%fI$nwPn4>j*dh&bp;F`F9Fv5s ztC)9lzZ>?Dwm$+s|G;cGn7+6g+KqPksiIkjby9qSkeo`16NEjSp%@=2==2&?w7Q0k z(?#Fl9CBZ$1X{*BiTRd`8_Gs%{VSdOI<9u;* zzN>`nLu>q?%|y2W zyIi?5rGyOx-^m9!0E34Vi4YTR&Tz2ILE1jva1phMXUlgOY%z(K=Vnmc+!d#tq0()U%?jXJ_`h5>7gx2?BQRw*Wu8^YxrUl zKEIH0cZ5E>S@M0U4#8BeH1}zMJrR@S*2U*zk21vUt(uW)h~Q(esV^VNL{{lEQSRb@ zXdIu4eJC~Hx-xG_8|k@Rm}2tQ-Zzg(vUh&vti80%7V~qvYcZ3*E_kUL^Fwi;+Enng}VFpu>8obDAWCGs624yDu9+1W9{X3?1 zD7(??qJS***W1l#dq#xc(f&5DPT_YC&irz6RLB^m926zLCudgj1WYZlMz!2L!-~Sn zB#A~u&>&@g!L^B8^Q`x)%o{l4L2UWI^jWR$fc|rP<*Ck*DhRLzRV(o4Ph-=+T2Os4 zH&Oi`7ktdzfXxsK0?3?q@8Dsg>Va7_t7sw{4q;caNGq}v0VQh-a5L1*%TIP~E}X6h zD$+C3ifuo<8KzyCfxkPycUr{Wt^Fuk89m5WITmFQ3g})9y@iMg)#TbxO*oyOMZ~%2^An}vTs&# z?q*mSKTXEf?g3!+oN{tl2QP3LGx#c5#Y}D7hB!X^OCjX6_oKTzBO*eVkYd@spKRFQ zLH^UR-@N&*roc{^zu`bY(Ejb11+ej}nz4!9U+plrQU@Hqvk;8__!>!*mMv?S)PjLZ zHyYYJg@o@7f=*D6wUKZo+_CWc8^2u~%T>Kh*Moh$*A@LV1!y1)uA7)NI4SSP?6b+o z!yBPa+ZTpLDseix_8Ix z9XVB0@IKzv?wfA*l5UP`x~R<4u)D9-@avX@miF=`;J19$(E=^vtmaI z7b!X&ZsZ@Dc3rFw;K)flcyZBLky>zM)=*?yDWjNH2HnbL8OfwoF`P!mMrW3Tu2m0w zqnm5n`wV$CUE!!1xK!4l9}vQO7NqMiT8f~W$5vR~W@giaj&T3h9sg_)z~=!fa4%+Y zsD1-hw)^<~62{%D2eGcULXTUZedwYzQqv2TJ|-Zi0u=v*6wdtbBYz zSEJkgs9(=K+aY)4>}+piaR~Y1_P%V4+3-Udo9k&Y(b|KX4!e^XeIake40$MiJHgo9 zbP!Q^4rJ9l2KEC21D$`vQy%6?P{eI5v@%uu322yjz*c}jG`Cu%DLa)c&mO0?y_~L zzD5}Sa^Wr0fv^?n)DVYuJ(5P*<#Gs*W{?;QnR6W|1cE&K$ zK5_8FsSZ?gB8-&eNgVK!h8FiPC7z(8Ezi4ur= zcWoF5T3|O?hH{dm=`)cvdAw7eRew#Fb<5$bg%#URyb*e_2!{=VLAa1of7jrBZIWe` zk|9sP5N9ZqpL-k<%3%^gk=0s0Tl2uVSAThYoXWDcuFT|syfLU-y;5K3qTZWpEs>yq z#(4CtT9A>62OHslOmv%yaoLhiN-0fMY}!6^!@Ho$)Cn!kRa~UwzQ9*USNJ5hNK>z1 zS+rrFX@!TIX(6caap%?KP;5`L#~=Yx&3*?}r4W`j>JN6QCebwqD^5Ph(3&S>w)znR~CUub__Jb!V_^=Sba zPwLGBM_M3s%9}9J4R2@lET?U`XpE2^OAT#5^1?HT zQduadUIS@M#*x`jc)bPdSfhYl3vlXFs&=3Y_DT{y#$(znz93Ubu_r5ni%p1wP;zxc zE+BgakLLWaGtN>5NP!9T=Yu;pkV1RVOrK`0CB^1qO)`neHl40~ohvAI8d7Mk6Eo`+ zRcVJM%fxo*kMK8W(3m5a8Mmj|6qWc~HoZbH7J^X9N`~=3FziYCiz&;7ZY#0HS;Wjf zp`uJIz27?|ej|Q?!Yt|9UH=qv#LIX`Ay9DNn@yEut+Y@}u=1qdD>XLceLuW2EW<)BKi^hp zv$1hw+3yWe;m#^|TGyMf`6aHs;T=h~fLZVFo{IcGtS!sS7^`KgewcZ!Mqc~fcWuqP z&+58u;2Vp69!bvM&~x63MGO>k8!v97X9k*@JYi!(Ug1XQ(m7gYr2qhZ%~g(zFUqc-GWSXlRG! zEDDg%0@<@J(V8yVM5vu}B4gTV^}Z#aTZ_tBD$?eDHW$`((|jKcbS&SBT;axY+YbtA zZP_m8VlW!Yw~sj_l=6K9>mb&wK}~GfX|)?zn76rv9Q&Ez@Y~(BunfG$PAAp&DZ3VZ z0V+C5VSFo`M=zz7=@zlHlIwhuvZ_VhdRb>lC*`Ml)aeAuo)w2^D~qJ330;djhbdi` z8yU)mdk#1Y1$rxZiTk-SA7A%`sT2?+?dv*F8~bFzjz|0Q$ad zakus8@FPX6}q?g&6G>_owreioN99)bSxDuKS3N!D;mJ1rI&p*t1CJi+cI$ zkWXW$`B4nj{i~_4b(gH&#WpBr9?PhNO z*T-H>bOYQV3kJwfUx|stiBi6Bj71d`YSaR_TA7#cP>J1%#U>xy;eERvU!2B{?G@g^ zh&lKGZ4xrBPH^5=k^thL_s7EbC?OXiBGB2jC|0VLQrhnA9+0Gp;MjB%6Bq}2tXNAB z8o^+eP8Eo!HQ}&t<4!ouf#{VZfl+pvsoqpA9C%X9$JUg6>wX%9I7+B5Otnxv##c3r zxm%PWb?tCjW-h_Y>;KglR&erYxd*6+8mNotAG-eT4*MT5^C20}3_)3di|}@IR9O>N@||sOH2sI0Ug^ zNPOuXyxX5(&4;kU2$u$-wOy9gC-m^Av?JdTkEwk3R^a0_9s5%2cD>9`AaoS$U{pOv zM?FtP0i#yMUl5wz-N(s6KF(Lm2Wx3KDzNKlXy4}A{e-PQ_TJ-Wf1_?J zK%&vrmC4U9ZsSnWnM!FNl1ht+ zLsMz~a&$$bUU|S-b-93*T)p2)N+x6a!sT8xsz5wkE^?Zboyd{agpGa{E4)0ASB{&9 z_k1N;0g{_i<|)RrQf;4WnSAT}$SMIp@93&&odE7s2!+BBwljJAxJ_rId5x5?WjKB)S*xj-DbJ zxwjkZck3R7C(I*IR1KCfBe}l;JZ^d)Vo_JWTTCvTewuVqHJrqZ#1aMIBlO5fnNZK( z30J1{?W(2K_R4syJ`BRz_RQ^F_uR-Eh{yEYi0(iS=xgea9)@^JFhe=yVDf$MLGK-i zK;ifdhR|(+9&C&Z`Ez@C)z?%;J`*HKrWZ)#~&i;K0?FTj3T3-xq8_Jn%8 z+J8M=FM`OxGSrQ?){o$7YgB*>Wn(19KFu4lPW@4^{Q>{a8LM!7#j*zy1SFUQ1Oyv6 zV*wj?|20hkS6;yD)4|x*Q!-117p)(Kr5L$J%6o7R2?g@zFWda#SFznD>!9*oQS zducLPF=L%`s7#UqdM1_em&H^-PQnYwW0-)?M+1hMTeh>(d?25Sgs>De3OokRD4ESI zrvQc_`0eIaF|1N>g5kHzt@XFw?E5X(SzhlGhr+Q!!=br5G;dfI1aNZ?k%#8qDTkI? zC!Q+VOH3{|kkht~!95ULFe`+~!loq?old(BnH_kB=s=F~P>wWRIBZ@5O#dL8y-w#d z7#0jyzfGcfSRZWRSype9H)Thyt%rrkqVjq2oi;XZy^txCVm4uvG}Y@*^7A&tU3M-p|^ zXSX-btF!|J&^yMMH*8IwR*dw`Q~1)Z>|hw3Mmc_OC1QF*9VF!4!9Kxp5+ezSHpD!^ zKjRn{GhpS>r)5^!-}2N5+Lqvjp=)+d5{@?|)S-)gqvN!!RfS3BTmH4VU4I#V)c*(# zo`Pv3Z-PQmB00kJ+h%g9!z?wLSvf~8)%%U|DZQ7GKSh6(|)zV(xb&m48>@v?` zAWC)2$f1;%-biyBd;DzBNHjbIj0mCN7E17x5g2uHAS5dSnOFC27>EwU1Dw?@`xjyG z?@+6}7{FGjkzVGXg>qu55Nee*dGHs5rLkC(e7aBK;n>nJ;zd~!o(~1t;xLL@;-_)b zFQj$yYTZARe4`6DQmfQONPS#S$R75(+K21=-Jf()n@QNoWJ#K<=mIS~h%}tCm~^qT z`t&|79!<31{;~J))n3WH>HW^~mv1k0UeD`9aG=mY-f$ImBukrrqB8lmFC{W9ZO|cJ z=WXgh$gJQ}NTQo&%_(B-EWpExI=CezjjrIU&Y+E;&HMVM>9*ar&HHU86Y_UT2lTd} z-~JmDSNnp{=xtdS$AX7XE{;w=D0`~#f5ZiRsawLYOZ9@fXaNBY8e#d)GN5FKW1DVP zERxz|iWwsPH+-%(Gdm;xdFs!=22|8LIZoAaW6=G z_p|4Dof~|vLfQY?qKn-XaWBo8V(tm_{<|yL8+Whiqd(IdK9}DP+qVAL%fKyuDOf(J z!QkeB%Qq{|C%f@~5K?33FE|z1u(eLXusSv8?WP;~qBr@>)+Nk)@!-*%&?Ogz6PEs$ z%ger?uwA;j^Br3t1MBYen=^QT9 zc~~(oA@dCL3-+WZ?Y*aUFY(4dxzry&b>jB4!_TI0PJ4S-c~1K|-!tolZ?`W=OY4=H zYMc3K%ADQH&h4qb_NM7j^_rvGCS5YBt}OL^`$+Xi)m^!R(eFR6pYp^bxcKy|YwdD% zPcCkKEmvLhc-iuKbpRen;yZ8Czz1rXQ zf8U%w9RF3uvTDuuiu*6~&(-|C`~7cvy+!@QN9*^;{`%W*|9?@b;Q`($b{VlZSlU!u zl&hk|51R!yPWQYOzrIlbj)!Ba23k`4UJn%JZ=7Bpfd{u_6EJ7gc=&B!Fe z3>qHiU}&Fd9BOnP7V0VBm>a0u0Rs&{F$RWcXW(FPYFT@5+M{diXyXpf1S+`*)F_Ce@i|ZgUiT#D7lB8j z(Y1fMeOvrBPM;kPX1r z?L{{Wz3+%HE2t6KEYzMPx+&;gErcnVP0&z5>3E^*M{f@z^s}@fWiiy&VSqO)Fb9Eh Ol^{bRFnfIK2Jrx`bs&2H literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator/BUILD b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator/BUILD deleted file mode 100644 index a15f0c954..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator/BUILD +++ /dev/null @@ -1,36 +0,0 @@ -scala_library( - sources = [ - "*.scala", - ], - compiler_option_sets = ["fatal_warnings"], - platform = "java8", - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/javax/inject:javax.inject", - "finatra/inject/inject-core/src/main/scala", - "finatra/inject/inject-core/src/main/scala/com/twitter/inject", - "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/feature", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/featuremap", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/feature_hydrator", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline:query", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_hydrator_executor", - "stitch/stitch-core", - ], - exports = [ - "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/feature", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/featuremap", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/feature_hydrator", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline:query", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_feature_hydrator_executor", - "stitch/stitch-core", - ], -) diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator/BUILD.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..50a95a39d76483124a5d7cdab938b08fdee4565a GIT binary patch literal 37007 zcmagEWmp~Awl<2pdvJGmcL)S`cMH0Z;IQxj!9BRUySsY`?iM5v-2GeW?!9;SKIh!~ zr+Aoij912}nl-CdDa%1ZVS#~x!GVRQ@@QA87RDukgMp2~fPrCxM)f2B4xcO>J{hTd zI$F3GFnieBH6|%2t%{<3K6}AVW)UX!mO#ZW+i|3IWQ@a?tWLk-)mdUWk%xG=o8S-E zm{AUeVUEj4z4IkrtrP0r2POEO;Z`8i9s?H0;ei81|3$NKf{yTLE)&bdNe|_ z%kXh;Oxf*a!q1)jLBd}u>t%_VS~Jr&9ic6N_iMQExrX#-%lImfG-3?Dmm zb)waMt&f6a@V)LNP%@5t0_kY#$qW)<(%3s?bt* zM^Ha=X^7OSwu{9ik8<$wyg407ko(@`1nVvHNhAfTo6`*&=nLK$vA{LjwlN9cKUMybU6B)ZB&wIjBFa%Tn zM;AS* z^L661$N?x*w9?h7B59zF(@T7Cwrgg&ke*Ml#86}xq-ClzADFw?tG!8g(a>(R2A2%q z5kTglz7wotmlknDfg)-_eaCI7Nh-{+fjOv0SARMqRwXWJL~k#HQW9L6fPRhmiB`+i zmuVIN1CW+);`<+4{rI{mZ>b(-U1X^C(LUJ*@Nlmve?!P zoVLey<&S#h7tDu25=v@@9+cNGlN}fXyjBf@#WO9t@AsJ~DJHeNrYv1If>it*r-^^D z)~1~4HpVRZ!i~=8ai9IOKw+N|)vQ6M`3$H)=%50b1I(120gf&#W&mf4-zRxy{J3I2 zE1J}ukJOxkX808voRlm*_|caSGFSmit+$+93U=dJ+>@KT1@^i*3~t1m0>f91!s|SZ z&5&jx@gXFkac2SMUl4V$Usp|W)}FGY==my>g8R;T9%nD9t@zExdLmTtkq~OKAZ63p z4CEKW_$dbJxH#uNPmyJ|s21fOimRb3EPvJ%ji+s+KqlS8qWc*TKpdVx5nqp9+FV2o zmVsW93m%?4U?M+d2sOJ@4j<&aZ3pFsU!|+GbGV_$hQHc`y!xr8?a}O#%@0VViyZvx z{h+bxeuf2Y4GcTsiQ5A-5-K={s7k7;dy6Lf)|V3(XQ$0+H%NnWq~=g0l;n50Gbbe# zqJg<^YkF=QfPuo=;kmh;H6|A-f00k-EgUtNFHPgTG$|&)jP+cUVRs>`Q25NmyXy;U zw)8|AVcG4c;_ zP_1k`K;MTjY`)JdH{k;H0#6NNPm5xfunmeIHL%AY@;k6FtYuUJqArmO}KHn9=ca7U_Nf;Rmi+!ImiS+l{nidFCnY zDj4pUhU0otwYpNRu*;~E*lumH;T%3L$QKFP$kFc*p}P+Qh`_$ zxmy&dM*;DrXBTVP|vUqq|XUhX7l_ z_W(4|iMB#`%J1EDcS!C&;=iCVU)Zx9Y(2ONAs)HI@B&-v;fYgD;O$;UBgcsYTI@Dc zl7uIcBHdBvk;%dr$1Z~yv^VIBKhZuu^8=#oel{G z#z*ky1?vuQHfI4{wXXJ{o73+z<3wjOW`!3G*xe1W7jpa)2X-mnd*-vSU84pGeP!Fp z>`$zB!(r_~ORLT07%*1421PYe!^fTHg81(h;w4QFfbFj56|TO8QdMt<^vnv9e= zqz}EK?~<0m)u>c-sPSkT0}~_rOb%`Fv37@Y+63rv=b)JMOK&9@=#I9S#l)G&l{>GU)1t+-$(w#OsY;E#VXkQG!0QG8m^()_^oq#*=D_}FA>>5Ua@bj%9P{+)K)B|3# zU3#@BwSPo#Uws#xUgsLfjQvd~AoAO;P%}jkopf>P2d%2P*9)*J57SP5-EZV5mIyoo zsT=V(U;UO!O&W4!$t*=pZrTZ&fjFElM$w0i(UC<+@HShY`vYNTiC-hjz$SkVcKSt^ z4Zj46z--iQP3MHs&3a=_v>Rf_v8qXS)Q3$Y#X=zVpNgeq z*L0b~W0f+NM|fZqc1MnnQ_aOy5gRl%aSpw=2EeXTLo#;Yx+9UCYF8HebWwhMn(C8` z)f_3olAAl`rrl5|?6ldvWsa}>cq!k2_)wru#{$=nSS?e!_ZG_4-ub)+mXYaX!@$c> zWuT+#OWeRPsz24sS--)Ni7eaIM^LKah?Cqvpr2G2ZzZOUIEhH+dEK~E!_P1_pbaE` zS_N-&|IV?~2LFBZD(LGumDPN>VnJpEv#nZ{m`!MU9+ z=K<&5$o|bpztxB3%KeVIuH`bbGS;Qls(|#}cD2Ec02v}~;tSa3BPZ6Z;L0F;z`e~C zSE}9Xbs7-%pI5SjKLG|iXo(*OE%Ah)CH{{q`Ogi?->>ICH!F!^N!J)KT{O39zT?ie?nfR|Jq1joVyxPexCaYR5J1cCrMAp+>dbbqoH3R$5p=y`r zjSVQcsEl{c4!+&on-luIz#1Z0Hp~-B6zv5(E9ggI7(r>?WkB|G+#6eu?OHCFfl0b| zOQcA!7uIB`Z9`rbb3};oQq`rY1>1(ao3!P%xt>WJ@KS{T|J&wytiRQlXnjG)S^-MJs-$T%MmVeedsvJikf&~oBPy-qa^4dHTDNyIS?mG@ptm zPp{emz!y9pfrtH558czO#3W;HI@%eQBL1@a}_W0^?bNS2o@nwVOnjKHE2uVe6 zPp8snzOcx;w`=QqUGJy))p0NPFCuS_+JJuayY}6y{Tq*WC*>m_jqXB=7yE&Y!o>Yn zz~!uAZyg7>MU&5pCOIjSM>Qg+BAKr^!t&1VFO;{3Lxb*(SXQ4vqTDzAHcn8-hff~Y zeR;pVh=@-LooH=<_Hp*!{L+5JKw(NhYQMoZ#M}1Si_>HG@m-tx2fPo+upZ07W}Vq5 z(dkd;NjH}sX+%8Z*AYNxCa)JhFN&*#@?APt&o0lEH4#bi7{3sf*RHj$_U4N5q(L@6 z`}Q^8E`7bTu9q8$M@!Wd;(n*ibr#f3;8!UUADOHZvbTZihi=o}>hXE%!bD6HKz|@Yw4bROrIcQw;v;(0bI+>MD_!8Y5pF5ntXA zmX7uqix6DDm)C=SOFy`m>-CpUY5LDKz~zojL7__bv(wNNp3^KIrQNLbZntz6L06leH1`ADV-L629UB$R>;3A!8_xkEU+Kl* zTYDHG^{uI_ry)x|UN?azLfQ^o-Phd@$R_2e+a;)Msw90HB&HR@1CqXBbUtCTKv%b} z>){jYK^g=@^@s4lS#@CE7DZAvZHwd{4Fa(;XsDM#M5P7*`fs1{Wx(d$o5B5r%o41y zgW{^I1q42QQ5)sS=1YelqX8F#~N5?y-mtoo4E0L2k;S3e& zMuYje^Zxy-tDmR+E*YE*A+3akT2XKP`yOS)8CSF#L5R!W_U@_t&Pf)P(wkEvY@oh{ z*)n{oDU;$AMUMlQBsM8v@9KGJ@428Lh**2mw(tpf$}WinXvMH(T6e@Ye+gOC=6Az= zI(a?+Y0r>BJoFvi2b=5`?z@-|krAzIWFZA_g7BGTxyHzvmNJ*i%guVWoqP6w!X8A~RnGPL+ZIBhWFv*`GAyhk-y$99ltEM|sE=6#!g^cT`Ul zP4N;3EjXbAdW1>*5+^n=wgb8#=lA4C&?L^kCZV<|0pMbP#aA`rQ!zuacp{GU$!b@A>Yr3lr8H+YWFG%TaHc{58bSC&MREtUdG7y^_#dcP zugfZ&z!Xr_--Wpmfb^)MfxKch{9qzQWcn|OOr&r$o``UNsGdu3Z$#_(9rf>_0vCyf zDYy16Ov5aGN!@wUE@Dkr-?ImBKOH|^l7;r9o(~980Vyf6fal z9qjFo=560cZHgE)-$;@~JM1toizewupK-2CCyVPhQJ@Dmq;JirbV4Qv96LENl>{z<$hw=2S z=lC)nXgZ07GX+_G688F8Pg}7hxswII3`qE;7H1wDD`C%7Z9;=C zdq$w(o4XS*Pa~Ly#of9+-x$B$@_7c&_VX)o(8TH9pz_xl>J*03s4>iW9p<^_ z!5d1%*#t&#B~$at#|(yLD}z0K35twycd zldv)ew)w+@eo{vJC#=b&Hwl{^A918#`K_Mkpf3hVe_#T;x2HGONOkV(a|4hRos|bxv-D_Ojo3h;_8HFG0ei z@;;yMGonHZGiUFoTv;Cdj}KGtJ5g>*$M3hmo+n7%&nY(yq}xBzMoA``@7H7=6s8PWbK{`7H-O|4+2WdwlxLre>$aO&5|^4o{_)3 zrp>iayFXqJU%p-r4SKb|IC%o^UX$JyP9A4}J|8)|?Z1D>#Ja2RglVVXW5+mXFnI!X&5C{LD4n`P!Ijxtwlci#^d z|8;eg)gd&c#a81gsQRvk7zNB_`uO>0Y%lbMUVhQ^sA^$1IiZhxRzV&>$E-0si8^m= z{62(lia2b-Ij+JW*kUtz)qH;*Cc$dWh8Kk7@=;XjA0nU9-fL2;jP}RmFKezsTU0op9`O zY}xKmq2n^X=i3;gzFN$$2~5YNJp2`{MyQg>1pkWN?F8P{Ot9n zHDi9-5TqzUZ?=SiX~Rs(Bk$X7WXwcr$P5+6%cVWvnsoeXc8YDF zq;r%i;-l(UQA%DTe5=9PN^-obVEFMu1H>*|aKBQaJIcDPA0F<_AJb-)+{86 zs~+8n8#A4YU*XN9t@$Ak4!U<3GJiR8Yo;-?QJP;>rQTwggp;zkCEa&*)tTNUtvqmQ z=}nbXbYm*aGHMmddRraY7nfy-{!qy)Ubj<%s9E7>n_O_Rrn=fH)8x`_++M`9EUW9R zZ!^jkPc=-`O!+F!Bg>)qVUkyjeYXJ7($1 zyej@!IetJ}o6~ef$@O5XvVx*zcmD`a2M-~phs+Fh1g#GCN0Z&zrzMUi7OIpz^2pvQ zMldP`2E<40#pr?u*!HfR=Z~tkhwmsc@TFztRNY$1yr&qYm&ur_Djtm&8;g6y*4278 zmTVR9Zk9`l?hd2w__E&0Q0#^9EPE{r9rE~7EeY%T1PTJXRa`A`*a3@cQ1NHA6>0B3 zk7%@y8pktUm84yXMbe*{=?h_dNifjpmokB+wa!-haSmrY0F>twkY{GuCSF$2a@aWQ z@giYR-gBhfq_$2}o@)B|VhcDkFvw#Ul$6DEF2kynswg?#7WJz)J6Uk8jM$i$LU-(4 zZbr!UUv?mTpPbO)A8~k}LP~biz(U7Ol3L^xF3J;;uA0X%lL{r3DOo)*jLoVM@8Hwx z`KYpYM~}yZ{Da?Y0`#PFv;A!FY3*G;gguJt$E&7E&Y$Vvj}^327JiT4oglBbCz%@t z9y?ct{epa-b8~vSa3O3wMeRV z3-UQE>AQb*Po=aMqo#LPJ-##CbmXwA_ijmoUpEC{!Bd;8Nkxd$zkR{gB@SH06m z3272kTqdCcK+ZX{ueYJym8b_v5!m}y_=rZ;xxU%e zn5Q=FhQycW)X!J5mIRochj%tNq+MS#sq$?PRw9V>Eo4g%US7|&&gLOQEH|g(ofYXM z+X=r737<>4RKOgvSyJm_-mf6Vw@Hop2QM|GuR?c#+q>b$N|i)0%8g9oecV|#+lBT94%5JA zD2kKIQ^%OgW7ZQ+5`6xHTcD^{_SVK|hM+7EYlgtKSQxUimgkpk^v2NXTpjK&D06rC zPKAT3hmT|4%8n4#gvsC1qg^`ud2%K%AnM>c<1FAiQy~@gH}9n79ZjvOZgDzI=w;A5 zv8R_T^LTCpR@3sERkq}ZIou%Hl78^}Z%{)nrs{OSLerd&nZS4c9JQ6yzwbx7gQsFt9m1&IKW&-9I)??Ii3x@46Q%NSHF0OtOkOa#FhY5g&$5fuMhgG zdAIKsqU1Ci3%U|17P)T2cQ|W{1Nf&dAU6EDhY?4}uceczt}T&x;RQD@E(z$bTr9JH zm#AQd;9zT5hGcD*M9Nrq4}S69*Y(qT4OM}s8+#blm90?xNKTYzXG*FtzsoeBepQ!` z@UP82`OzGz)K7F7EzaBufTR?KZA<^M;+NIk$$0|=7n!ejco{R1xgiX)+fsEpv)qtk zOJB0+F8CtGkk#O3%Wj3fwOb>M9F$_q;nvzul`U&R_)0fpor{Aj(WdO93F(&^Hpn$e z)MX+Z?cJow<{NtCzoR}fn1HQ1zQ(@!a2xTheHm%wxHLooR|Nn{$3gOy?))RYzIONydFf^IGAlKgUT@RnDwVCm0^On9gLzcQCyAO;hI`B$Za)fXDdn!_9SX$IxpgX^G z5TRE3|Pu!Ouy4Q~`*V6kmTEl8bmp)ewvRI{I zrjwC}xl?45w!6!2T4k0Wlj2lFeeWJIpcscrqQ)Vt%ee10U&7z#$ExkM%&FDcr_0W1 z;RYSv@jJ9(Iy~xf5KWCz$mck$Jf=zk7ZgM!D(5w>^`bWNHULRq+~)wu?DQpJG=f#; zk*a>$^d?^k*Vjz5n71o6$4lyOsFSWsmRUn2+<@O2d8G%15W1*?0(5O`Ed;{JBdxpx z&Wzqq5hKTTm07pO_~dJp71vJBYdunA&kh_M(L!9VOczJ^pWj}oLoqI8tV|f2|HY%YD~k)hU3{U8USsTXG{nM6Ujj!9vXuD!riy zl&C?UUgeR>K`)~^lsY5C5gsZQiaONX`RfzgJ8K-D6&&zUxA>+6x{;Qyv#2TxE7WLt zqxl9nnXVc7`Prp|BL;~0Y3m&qS1fSPP|PBbtA6-WIPDrfB1Ovou$g@MFE&2c|4%mB z5sv_#3!25a`h$1^1%K)a;?2bT#~h+wrliNJ{iFO0zU;NLb5EN%WFW$fqirJcmIUs)G8NsKKDRjIN_umk+7!D^Z+5%=c7zcwEWen_3`qd#t+eC&bJehik6rl z>b;>8MJvjXR?t07X!X<`6=Fde-6K~6T+EuD(Vb>hCs}fDj)aDWSTLjqTNp4EJfmv? zi3&h#&2=%+mso?M^f@8k+*6#3ua!}iG&yiYb?9o@xL2qG!*<7CCP1DDjn97+k{o70 z^9MA#(N6@U+z~q(_TxaXRDL9ghMGTCe$?G#mDym~s`4(Bd zcPz4XkoelbqZJvYHz5-UJ{YGFEtgY8&}9*ho3Wi=nS~Ex)orgCGE!$K25_%nLBv6% zijz8nsliDig$<4%lH<%`<4D9UE1EArLpZ~7Sj7A~;)o!7&(kv#K6vQ8W2VL^UCja8 zXwEj6f9Amm0|Xsvqq7+)+VEx4&DqqHGf?boUrye|`O zv~e-up6t(@0UCrmIr4m@E6+_p;D$-@T#Q@=m@d=4|JLZrp@_`j#36L4po! zHNI@$1H%SCg$yd2H({nWobXEw81GBxNZOr-KVOa&tT3=6muV#8u9YQm7)W zRhvp}`MoOOy(O@?yCB3{cV_Q4Ae5*uE32nY#aO3@;`_I)G_1rmN*=KTcI3wT$#&Tx zHr2B-coDay>(&zf^e#MgkCBSfk}moR7ix*rW*tN zo9p$vPbhh-FQ*IW`l|dFMI7hiicUt=U(6=ApiWk(Q}U2&m~LQ}2DroRF;;)+eu&qx zvoORo-AUITqUo~E82z@JglEN6Ml~gyQNKzW#9It()7sCNH?k{hW}pELCh%GTnP z+Z&I6+{pkXP5qg~`#+PCCij?b_Adwc!d);9ep7v|K(;$q$iN)GAK;7Pc<0rDaZn-E z_OzwpiY$xN7aV9ER`30CJGn%Pz3!j~gp;ROx!*G{{Jl)^( z?a1t5E=R@Q7E?N&jzNV$M@T2dKgN^e&AHi97X`C;efY4s-p%;dF4B=5 zqJk%@ABtw}w#GQi@;KUfcyn+VHK9}$T|Bq!dhIsY{=zB2s8ERSM6zk zpX_OyR1_a<-Hjn=VV`7znE{}D&N^fDt!%2_UujVx-7m38^cx~RGPr~f-U^J>FJAwV zt6J%1(rduS2#($#5EdKKjx4njnJL_l4tWy|BP+Oy=##B8KZl%{vr&f6xP7ZS)ra9h zVG&5xQbV~I$%Yw$BRIeiN~LYe%ZOg**lZ%3UOQ{0ZJM(&V+`7g*9&>8S>M_`)j-{7 z&KtuwuUq0I_juc5F!qK}wE_)NwHvm{4EY#)G5Srye^bl-L5%^ThL!uh`<`gsSU^rT z{)5`hd>lkA!2KuncPh*Xl>dYJqH6%YBRtz^!>9Fqr!o9dWmzwV!)z8KV}ScFGVQ>Q zCd&3>5zGh*k1#D1xtak-ZF2K%hyHkOv*PKR0nyIgUX0(n?80}=-g8KQk>9$GfXLNg z{~&K>;bvz* ztI&M|M;k&W(OcW$*oVBE`^BBFokdW^1y79HC|`a?0csP6e3x>>=vVkOXY>6OIx{Pe zF5H{;V;QZ=HfF(eRZbe^m55y3`&YFZJ5i15(!O!s6toGII#Spb3n#B@hKvq)FvSMI z--y@Dd6S`09fMI}E=@3s95*&f;6u4Rt~2zJ+ECj9cTLnXf5@|+hG$tzPD9yQmF*MI zeEhDa@!nv=@yi0x2xC%K_XUAG4JOYT+vscQ-Dk421@JWLZ);+}Q`>SgD7fqEcK2v8 zPKAZ%A&Fvs>ooHWXahvZwsBH z&bqK7SN|e-&i1(MrG_Im%Ie(Ux zK{JnWvnUZqVookTVUJ8v)5)XQFx5L^;+FlifcKx|;aE1c)kido$om&YDjG z1V5D}6v++=&2UD2O!GgHpZD42RPZW0Dj6qGoLxEFE#*@vHxiSa73Hk#NGU7akW2cg z3;QumltZ#7@GY62vCqxxx^1!IUmkVuibeq3w2t3s9%7ZS zx}g`p(O4XBVJ3$-w3fzK1`tb{%Rb|_*q_&VfN#LWoQsqFI=D4u+y1rCkZOY3i-<;t z)&Uj=*@KA2M%n>}OBs&)1NsJkv!6Z(f;R3axXr~5ON6*P{ z;vnKVP(B#!Y!q!jR00bw6{(XS0107(R zfZ&WWZZCliIbB=Og(ss#Lx`*~WF0+*Sge=Q!cTfE$tjI(K=3Qg`Ev;OP%j*o9`_PV zL)ugK^eI>~#ie#o@lMJ>#XEt69SN{&f%<3h?6dX%Dqc;eUDwyir3BW$6e9E^?i~|u zj}y>L_CVSgtI_0?deFjol@ek=Xwbt#Z^e(XiIGY=s>=?jocQ?q<3<76)jxpOyz6(* zH|n(_R4goRLO=?>8wd;=?HiF7a;Ta8f;{hig9m`ZVePVcel?9+!>*GfD;yTdqgzkr zR}SR|H+MPTc7cm_lyd=^uSf@LzD=T^X;^7X zgp_V-Vu6D5`F;53VbKh$PQ^BBS&p4JO;gRiw;eqQONf_YXXu+0UByx8VQ0BZgXvEc zQ(wr}@r<7Ax#sw?=|6zSAiBjqHahTMmEVgibvnVbb)&F$4;phi@}k>_rDpf!wXOU4snG@-F4vIrzATu4dy5}Q5_*ox*uwWJD%?C za?!9ser4M&7SDgBCPla9v|Sjm@|%YNAZAh8oI}392)@sgIekDeW#~pQ_6!9B-Plq> zjPrda&r4k!5^=`K;z>h2Y87{X(MO=1`|Bp{58y8Znq#`~hg2|!@CVm#a0AcEzc6ml z&X)?AEp-8L4~?5gikT0kd06Ky=Tbe5w(FnvwKn9xsRF2FCaNJP0PK#La}Kle!Tiem zpyCBTz#}0V10nJQzh0N& zmxqR2<5m-6FDUAN(qBH^*4VuberWv0*b#O1{M@sh*rW5`t(wmE`lX7?QQ185ydoka z`d9rNVM`5;i`cs_UwqH)eP=DhvQ!%AY}W=lT^68KXlet*u4U~$!i8WEyi3k8A4*nG zB{#bZR%~?S?W2bM%)NImGpG9nYG5F?nNY$sD-<8yA}~M-1z1c0mZ^69^Rdi9a+atS z=*pC*u~|JSCHE}DRe^81G4h~fL;`vXy``%(OpcgWT3$xC4sB4RBv__cFdxVLL#L9% zBeAwIP%4ZVrQ#4ibHS`UdqILq_yd~y&ap>$brOfuC$YzUSRw2Ow4&>^QOsq$9QN$4 z4Zv99BEdnicy?)s@HJscHLh|g>im-WFAmp76<3N$MGlHho6Je~>b20LT^s1`ONkY` z8;O;Yt@m_+2tXp1`$lK1G-i*@=bYj|lD>j00Y_Q_NcHpC#V3W-ORwE$^>dEKtgUH^z12~e ztggLJzXd;|QQxfbxqt)*{zq_Nb}6*TpMraT3qJoXxQgJ|)s5{z^VqJ-8(Ku2M2q1* ziDcBSoMcq~FJO<}>ZG8Ue*r7EeKL>6og4zge!ji|sugu?@QPqR%QM~Q9*FvO`Xc~K zhKfK$voU1^)^6rP{{W5}KmevB%#?1uhZaFrgTj8st9F0s@HRN_dJt2B7K!AxTvjWr zXA^}M@$KA9q^stc0*$I60uT9=jaYI(u4_xTtd6ep*ZKiJqI}%ezYY?WY%Pjy9(jTM z49_C~tF(Kk3j;|&(iA`?G3(ec?qxam3B5vwIc{;GzyFDSt$r@?buQ>)&UNW|xG*q# z=wHqJUu)x*|6n?#Lp!#E0;+Egz_oJ=)KPY55rF6YCFoNadi94q+|wN`|B%j$oYX!; zb^?a!AIJ+Z0@_>e21NK^g-O^e^+&~m^cN#6=$yh*G1EWm2U^BfvWgZ=eD3b*!}iZr~2^(r4 z_$x9L9Xl+8A|b5!v%(32w^}Z44^asLA5uI0cU#8P{dWiZ@emvdeb69#FNAxYwl^yN zQlJ+!GeG15;lJg9XgeH=X~mDr1J~=cdon}9yOGH54L2W>$h*&>-{s+bw|h2=Mm(LC*h9r-K~cy??pJK_#U2hrsXd0J?iZVnrCm$|7nD z!pg)aCP`B=ljl1D4}=HRJxjpX9yB6#mOP)XOn&IDQgVY(X`bj4G-AT6D7KPT|H8GE@R^zGkzV& zsJKa*h!7U%>Jyi`We;MHuJcL^h6F2%!J#5SO_(#lhl&X(O={5nGHEnVxj`j7$$DZe zF#PPHgSlmJLa`!JTL)Hq*~5;B@fIJ?@=emz0^=uF@tVG|0rTSc7(Od&Eqi7~z|h$9 zj1RjNfYV$d%)XAD9H>__MR0;8~e%H@7Ni}Z>q-RMNtxy_8w;~ zVH$NxaqYFi7%=gYv{R=l?65A`-8z|8m1|roz*6)j`X`6G#(9Qvy!j{B(AjIb%=4+vYTrr zA3r9i`s>p&jJvu`A@Q3Q8a9}adDoP^r_wB9W4P+V^3jkHFjHZJ6F_&5rPN1y74v* zQ;W-riY3yF;jt~>zVIZndUkL{^64?CE%Lv26hg$&=QcR?1*Q^I*`^O-6%_&%cBj#6 z-~?W5PiUBbWAxI|frO#fEK1<|rme$zm%-Q00Rv)8NP@l^jC4`tKh_LS3a_a9T3YfOL{nWSiyez3nvEO{&>juI@VZu?P$;UR8Sb2jNQ}{cG_NG7O8`A>IUByGd_-winW zYe;&|&GvGDGFc>^A9?Lry<16adoGeXt(^jOiKwy|ZpqeT7Z1jihP^nn9}bcbH>BBy zO{Q{gL9r@6eGdUWy80ok`o}I=#m$_)rEF%xaBBBPiI6p9iyZM>R0=WZK!h|=XqI#8 zj7(>c2zqrqPjD*{=qt_RU<9ft;qS`e8+$=H;w(Ahh?xYBFxU{bcBo6miL6>9izwL6 zJnCKHK{*g&&;~hy*m17g`twJ+A*pAuP4|@x@Yo;RvWs&ee2)3VLJUPiaGEghkm;AE z2GVPfizaYr{;dKL^-mQcJy%4ELv?4&)=UL^`3)b zpWLI#TJcspyejz^MM52PsP*j)tP|^757>D z1Za7hc2J$w@lk%`unk7DbH|dGBCJQm%MA#Xl7O$j5TxAgGhCup1U;il6)4x?vPWTU zd6U7@p{bT&(v_Ux*r3wg=RcSW<8+-Vl7>8H>rfQ1f_@vf>?hw}(8!MyheVBVxBJ9O zFujCWp#uU^{R;^DH;~@Hf$V<+&G}7q0%dYvtrpazLZr|85aF&k?49uk(1`Pk7-|cHz zfBGn8X=!2h>CaF2eGO9brRz?f9gs!N^9(eWx%Wh78AdFH&#sh0Dw54AQFN zk3P^hgTCSy&GyF_iIEuzJ^_BE6MYxk%HcAM5_bRU_v+!<_2k>SUderYw~6$|eZTL} z3S1JbTFBn?yE-%41<-7+o!my;?CyBh8+N_zPw$zGQw%^?yMkgN?+ffeFdPVr?{spWox32yBqPW4!cho^YT7- zFP`k1w60PO?MK|4MXbM+wx%E(*|J20UcI@(1j%0B+4x%T-bQm*kGncw&RRazEz$Tn zh|qK|0X@B6xUH{TYmI#Mg{p7;itHa!EP;N0Z%qb%?l!xt z>c@-U+v2)GouH5dao=9?;OZ4Hg_w_U^|eljNPw81MDWe^Szx2$uD!i_lgSOWe7<`0 zg{rc<0z*P%VxfKB*V(dl>BOpip4^+ApGa<6q!5?g@1bVZ3I(=&c>bk5<7VAxRHK_E zYjaazYO?g9>iWl(>C1zUbL;EvCQ030D&I95+rulc_T{$!*Gk{r8T-29BgLXhcz~AX zW+%?0!(E$)Hj#t*g>|?5LX-KuTKRN27U$HG$lFDA^QQ?Mz>~r&vthk^98W4S9n#Tu z>)j~%?RE<;6)vO5OM~ZqozHWPl43`(j7NQ~4yf&f4atQgLw*Nis`0iDpd9 z_|4PP_Cw#z?2*&MTUPS1-&u0Z;_e#($^KjEVCdwkm!D6L9IVh8alQy~a`n%=4E;L8 zg8pZh$MS<~n)b+A2?9X*F%uCgmOKf{>s$T$c5D8aybu%a&njP@ibig#hJ987T);4u z%`kHs(%jV7l1z9N0kuK5+w@Qh)q49DwXE!Q(daWP9=P47W#pWDpj!}0SN3{O z2x#bV3p9iW8sfOU5%Jb0eC>MJmOH;ASsgq$*}3`2ya&xw zbd>gRe(N;tJ}VKJ{#vu?pn9ukHtqyxC&f~&6tQlj1&A``1uE!ltZz1#59@m8$G=n# z^|4GxgznAmgFY4Pd~$slHY|(F=5Z&9CM*H=zJF^>5IcEQ?HDON2y&4T`|hE{-*odwUP>qU>+*ocJI__ROLP{Ae_Jq?LB!?01>2AQ;48Vv7`rGfo@j^ zv4G{S2b7ast@0NOe9`K`@0DgWj&gjzzvZhgz#d9hMwHr*brL;c66^NfVJH-%MtVyg zUYlYKg0}+Q0etda2VxQ^E>EY*}sE4Chfrqi%Nc@H2jAD1Lf}le@FS> zRp4tB*qAdZ;O0iZB=P?+ssVLbo`#4T2- z#@{&W5WGm=f8+c;;BTI5q#K~;^vE|rVHlvW-_}rUoy%n(QEsm;qn|?d$oBN8pQ~jP zI>3NFbAC)BOwHprki*AJSenz*^v20M$k)d856;7Pvi^F3glyjBG1KLf+l3_}0HjFU zP2;zN=hM)=z09$`JIqJ|SrLzM;D#Ho+v6#JtIykk?e`+l)-z+3$d_VRD3TR{U)X17 zxS-Gd?T?~jV3Mke>R#Ku66e9C5l(n`ZJzhax z);LAw*b*%Jd?iDX@!mJI-by&brRI|$kMNgS!e1VQvk>#uFlE)~CBV%9es+?QHCx+q zQev$jj|%jG-L9aeGqkWyvBzq-9pCR!T5xY|AFd>!2jH^QDLnGfdlR}SJnV!6=R-b= zZA(gj#QP@hsf)Zb&gp@cbMjC7iwoywZJ{-5slYZV)l#CX_E@er{Pl<6$9WazF*#&T*zjYg}|G4SQ_0 z0=*wv*0N0F3Z42T9FpT}1*si!iKSC3e;iEm9cV6BW=&sB;Wk1)QzIUkG$`>YcaD=Z z^C@#2*YxaMo;S%kx`v_SzGua~Gg)fcQg(HP$os7jMvs!Sk+MD-%`jv;yzhpnDfBv?y%87SHEg;#x$V5I6xDTvh#SKd6;*fFi zdo`|Pnj@_#>7l`?J?W08DgELZ33YM0!OQJLZmr1T9a~yA99N7l5!xJk2kj@XNzLhP zu~lAI`z}G8{`)nvZf1)HBOcgixB9#R&zLOpZ{wdV+!W^+l~VHduU77m)cgTs_-D)1 zSRPVYkA4K#dEDSRk@#*eKKZ11oZHB5SqjLtc)RjK{j&NvJ%Wv+^!t_62kwlWRge)P zgw-9VwR-vZX9*{FT^igR5AKz5r@wAi411Cr5}lp%#br+V(#@!@ZV%f_hF)BBMjvm! zg3D80CdF4BsficvGPw{6Wh1q=+g>y-nNivt=S_$wPZf9A@}xE{S@f;n-`5*EZ)GvD zRQ$Ae`+hJQld_!xPdMdjvAFR`-)IA)`c%2(kfgY}yR8YHjl z=^D*(8`+QqR`O(`m-oAOaQVCb#4|Dz|>oWts#l|t_g)->zZQ+`CliS+O z#K=cfBPeNB@omSUOn%{KBq?~htA88m1Nx3Uzb8* zd)9x^GgGTW?!wiobY@G`j5B(c8WJ0diKy8IyJ*R%uent`Hr0d;Vb6(HDGjHgB&=D% zPk{rOd~eO9yg*H2rfhpa8iL$Y1J(gj`86?SsAkL@@-#|ZbYC78=6{{i@|(r7)5g5X zZ;Azf7yA;wZ!lhwwi`c&D1BBZJL2!05QLwFah}C0mhijv!b7_&7OSFjrmAEB%k*W; z(Al%2{`*~jh3HfQi@BEB`(Lk zI5Mc}%C{xKM66$4T|z?+=4qiaF87^v-LcPN0d>PuxTYJK-g_D3B7#)9YBoX3hvimB znZ?RgNsD~AYlq0oB2$xm-&{qc+rh$KV@4KFVwz(?ZE$XOULqi z9UguQn0Ve%0Lz~IuF>2}Kyd48*9`?+X@)Kur2HVnN=Y3E4qsh^cVo~_h=(1zT|*ur zD_rpGF?T{j?6GC8^478Y`WpiHWkRG;`S^Yg-bkb8i&bxzViuc-`(j~O2btZDJq~^W zU8GFp;G-vGZo@^m<&3JYU7p>%HHb5iorzn*M%0Ww2QBe(NWFAlE^l|3Jub3lG$4DA zA#b2xn?idAz)}TfK7ld}Ds8vU#=wH(yf<%LUCSuxK{qD*IqI=xGcnxkdbF)zwRzti zmn`0k?8tn4jwK{UI$G8Cyr3cNa55T6>RmTN@maC`=qEWLhQQoDTwj&xtNv+p^*u!+ zY5yvOojk3k>;4MCB3Ik<0~5w{pvYfN3{KmwP~`%Np&-f8#;>oL6=u13xsuOyfF}a3 zvVC-MXG2Q>0pd!*$_G8fOEvDO5dUgw!R6aBz1Mm{&lTdaF3Vg8%e5|-qr=XYl9&d5 z6GjL4L@DJ4zG1B$LVwpOXU%uuvzrXGwUafEWBR-5TybDFGUnt15q=hv?HY1#WYh_{ zZSZ<=J9=Gg$p@0)C``OaY*1;5(067bF{hHN`_mkt-Ba4Zoq0LXJUTq&nzOvPLU%R-T2t=9*6OWTl3J#-`4M9>T4I(@uPUl2J(oo`>GPJFQ0zlU z?IlfUhyA}PtWbY(2Z7NAA-(jxHLV2H6v%5L8ZdZi?~fG@QD>8um77r$u^A0e+sskZ z?=a?cq3dg->!*1qTN3i-;{RY%=sM}=Z80#bE>&Thy(P@6CE#qN#UC z@v^x$1g>{6P;Zt_TudSrg~Zq#CIFu(o&0JDaFFIiCxc`BZecGdVIm zXM4NnLx*LA^Jbf7}YTQt%X1Q#|F#&@eY zPpdF*lBcWS9I9X)6a+(Cz9VcR9)pzVyY5zLpH>+m;qXDPJuQJmCHv={RjC(CO?%p4 zw9W2TnK9c4xU~IxV5eYizgQ4kb91**@U#K$ol+g@*R|=_O;D7nCf{`*pq(ni{_Jj} z;c1f!9`eJ#xr-B|z|64J(XIqWr77&FTc6;vmy4Sv{`RmRSi={pf(M%|l0% zz}8)w1CZiw)tH6Wa-2}tF2dzPBvU6ReHZ5>sMxXa`WBwwEE|hjSJU{xqqajdnaiin zrVF#^<0R}HpAgfklq^r_2xNyU8HXyr7H={GAVqhZJJ@}J#MVT8;f&H9$sS$ZGcH+wL=_65p^!0GSK8Kf} zl1Oui)M~@%OvUFUZxuFQI}%fhHt#7xO*fD8!EP^q9P+42GHK}hsd)MA%I)aN%cZW! z$s;L7%qbDcRZze5y~xY8F|DpJgV*FrerE6I4z*&DY-7+`LJ<63s_p)wB=77qz^Pl} zViw7z1+$nNwOBcSU8lomD2NoKg_3bb@7QO%pO2TcEGl%58LCF&6}Bq?Py(2DMt~89 z(f~rp1M(@cYwvJVp(-f|h!{J|AjbR*;yz9L%J_2C6wxJs1q5b6)CKR5MZ>Risux7q zUTD-U6oyVN!dwgjgHi&OY*araK0hQ8!|eIA9RY@kh$bRk_ZJFT?Pv7blJd`1VZE94 zUvwaczmzkPiO=j|NG|G68V13jkbw}^Ix(KAg@N?WARw?lazu!6n_|0;5nlqr{%1%O z(0_+KU$Fp&bi4Q~B;QlWLY>9GLS{mtkO_zNA}RD{tBe_L{h(xNU zGK(8dV+IXafR8ao(NS5vtAV3>=v{?tCkKOQjnn9hKD zEyn|bVL%Y3dQnsr2Y52Y6C$fBJ?MgQ~?I%o?bh+6RNG^*Wjh{!~qw1&0cP zlkQJin$0)M@Ppd4Cw&}vHvG?_S=505X?rADCM3J@5Q7jDg`f(7*}Gl%DLZqB{R(l5 z%QV+M`HE#_VEiSLgBgFPjAzBeI~27H${>PGSZq>97d z8jKr-;y)CFz-M@^GgpQJ>X(O$V|->sAgRyO`e(p={?7vjASC-Wa_98;bO)^arf$3f zvjQG{m#^(7S7iS55YY8W2q*-(&pw8+@AP}tJ+I`dK5wnbkWPI@v0+f-_z7@`;~5Fz z=;OKxzn_H1iTXi~fGp@-C$D=oC_3|TbT)Ey zw{moKN{@#I%fXc1@7x&p^ATSgq> zY`2dPw;K^iP{Qj!(RlmZd!p+5t_^%oUCw!vM%M3P)&CG6g5HleRs$SDQ8t~@rzNc3 zB_YV#{*rwv?DWx&ym{Gu zGjRU5u;uOUQM#xQKbGMn zJ{KwuWp8|ai^tl11mX>zr{thTGqW)=uum~_49~QP#`Sx<$-BP+T}#dAO3S!;S^xP` zRpVjT-)!WoY!=z|9zWM*rY|G`YT*91I$;U-3lP}XY8rS)&rMUNU@(@c_6-R$knNC9 z?P3fQG`aErqUQ|h5MICUpL!g8aplOH5zo&lbWR@c&29^%w^APWb`Rirp9ks@X%#iC zzpDKBvLn(TNbyM0cIzc3s4YhW+7Ay>u3e=JUWFQVOyd1}f61HHFEOy=P&1QUS`IrC zYXcJ-X`{hGA@xDOr2yLtkPIMR_&Wcv!ehbbN7m;!IK7p7f)#eeP>RK5jmxZ=7ac* zVn!;?bs=@!grSudj(A&vm|m;p%4!$}ck5zeSG>Z)2w*bAIwTbyFEu+Ygv7L77t4#D zAMabyQ(wiKKE;CN9MVDh9yBGo?T9$SW2Z|x!n^S(esfd}Q}yiIvn8g$rf5OU^*^Fx zBe?Quwxtkp0}YZqu|ElM!e9m0Z${IPjwu9qRKT|#(K1V5YAS8@2Nx@EiDFi5)bF7v z>Hl~V@euLA2gReQA)DX5vY3!WOT-qo47!ta>PJ~!9lVpe%mdU!)NHLmF)sMil z&Fu_^S19NV#=~hd8=}nZ%)AV|3%KI~<51F)VD6 z$f&)(-@Ph*QTdk+)!bvCj(3-T>v$jAsAnVle~@s?*Ut1EdVEnzR?+|Vmlf!#f2?>? z`8UKV&2{?dSTLX;VJa%xaWdm)MO?wAX zOziMZzo>lRvrXGbMH6Yf;kblIt&YZ?1Fl1@^!W}(XMNYtn-9b(l%-i=idIi))sZgI zJ*b_2?}5atOklX;yicYfnH|Z)u%nnu*MEs~CuBnTEB2%k~$mt<(m!%VC{ zM~hyG6)E(WE`Zc}!*Odc!%JFdOg$?KM9K@fZLj29_2y?>Y-B+|vEd1l63eWyRtqY0k zn@bmX$ilMG!GQ|nBtWs2soX8q*iq7;_tOHe3n^3y;8|uZL<(eRlT3pSvNK$R*XfO$&7*rj)rLZK?x&VzYpDR)E+5RYM1gRh{uy58XP#J|& z?Q)$VU1I6(sVjccEE!723IR1ngbva{v*Do|H zRPKsfdi=o4Bh%NI8Ly7yG!}yb29L%vd^A~@!m?45Wic*KLE;<43z0QcSRA*HAWtiviyjk}PGx22#i!SYYY&rMP;pNIO( znX0(HF+6N|k7y(%y25G~w2McRK3~MIx=VP!nuk<56~qf7{X9rVnDfm{u-V9NnRy4N ztrf0L&z0hm)<(x@Wbwj@})k@Up70QHvo0Gq6}ON-vd%*xq~+k;EpLh|->H zbZKKKAyW!vqwoGycrxe~`y@!u)TxN#%KPMHszYZHrXJT~v~~)ey!Lt(EJjB`{$b;8Y~EBXc8ODrEfV%x}abF)@#DO7r8?SfecV z)22W5+2%(4nZM{Xmc_PF$U0`O`9Q>r}iP^s;i}%jLS_nG0xnu>WLgJs0ZC0V{U<63QV1pSLM>G)qT0VK z(5nSn5C@O-$AYPjh=ga7hn2{kQcu)GPfg{a%!Q5!Iw-R(b+tO`pVj&860=`1DgWZT z5BUdqvm@fp1wn0Ax||0;xFGB;1llHGRTz^~FrH7n@`rdzNd!jPi7;kE%Itwd22`Na z7}<#?kTS3qJSk)54y2rrFZExP$-w?enJ0DH+*W@m-H=O3B07db5tCQYBJWp(*&H9c z_;+IyUM4Bx%yca3##g(ETFv(*%2GPteU(nNMh_9R@kId~3uxy{X+~@3DCGml*#lw= z2gH)I1Ci)Y+$+I*h3m??!uDA96v`UCY59>xSTlIi8yg0NH?6_gC>Y$sHr4NYw0R^^+j{diH}v`~JzJPll4fo{fol_vZc^ zm|flTUoqpxHuEMAkYJ(F03LIrz=Z}S?ZXC`N$e;+-Aub0p7I~1A#gyY6ly@F03|{2 zSVz7%#w}@B3k*fsEgj=WYzhKto|HW94c5>g@IoLZUiUeM7*c-mz5{S9X`ZKrbCM*- z*0I*kpn>V1u-)f2J{Vr)yN+sFPBiqD!u|e1s%QI(P~9mqkV(2~onR&?DURYgDRGYC zYbmjg;^`^zj)RCWvOJkkB)hKp5s`6d-_eIy`Edr%nEyD%B<9d+0;DhPA2jcBBVNGr zeI=VM0a=S=cSThyQmucNYX1%mNoZRW+8n-M1s^uF;4V!}`xyZZi6ZmPl=e>{cQtan zv=@iMc^9UUDG6RG_gk7C57^YiVLvJtNjiM!Gzdi|Kuwcfxj(#rC8lKK4H9V953>`* zual&^AhfZLo=Dk_SionQPeU`rI$o4H$Yj8WrbJE1@w|HHkYEGu{|-x5CZ-*S@mE;B zwEeQ{BnCPke^%*46->*|<<8~8zuAISAk$MSBI#^}8xiPoK&5%INQs#JF(tuw0v?PqhvKyPOB$}tdEUDd z-YEepZ__3u5qK5P&|E~^DY2QL4HbGbao4&-Zm_okdd^l&Gd+(XnF2`Vg3Uwfv=Rjd ztER~G{kXK*u4)-iY(5PwH!>|pga-B{h_Wgd_GFY}J4J0i`qa9RNiDe9xh2~5LDzB+ zzTJMqfV(0ugHu{*NKJ-pPDks*cgknH(|iM5a+<>3!gmaU+=fbfe=_6b|7m#$~! zG=%YyoXvbrfpfuf3dN#Q^W8&w`I(&Ej}Zqg#}csuP80kEW_nnJ;I3mcOb}!_OfZ$T zXJH@tyYTC-${_A7^dK>cZ!Sl`uRze-P#UDo*f&zbic*0+sxL^<46!Kufa5Te-k@^_@b79=UltRevJqkd|6gKU zJbr)v^Uu3yihhaVgeF+_>y>^Q7LEP|{tI^xnK7XPcpF4E!q?+fpj?)`KNCpbWhtBY zuXtQL7=OHwAEDVp&c#?GB^c~uA#enG_CKVM`~Mn%`P(t!*Sv~bXzKK#=S278V7?D^ zh`$}f5vlGpun*ik~!M&j%9W}%&x@*~U?;-bc?jf5`G6MlySA3qWn${Zvkxo}T2CNQw z2HazLHvyTXipd9-n%`Y#X`xP80pUX>`|{i`7ZKF&llTA(XJQY(Rzs1;xNwQ-QZe z++}%kR?Za;5QHr8R|g#^HK^@nvBr_q?)mkgvQ;}QB-j)C)s1n7W0gkij~FcqttC;76inV^Yq3cS1m|rn;bZ7%4)X1 znrk{Cpk&p59(YM{m3Ro^APO|kUzmoX1K2aod8WRtgnt{kC1^2~@SERYF7Y^P>ps5? z1O>Q!%{l_Yl>C7y`5WdlpyXL)g7DA(>1G~Tp+FSSx@@(r?gjy&aRDyGUyPaWLXkT9 z>n7I1cR9YUSP}hJ9m%@?KZAV&l<=O<_FIL_+Xl~1sw!dsi_U8J<_h8Wm1}R0$}Aj! zOK8@S@`b_(yAMmR)m8QU1{Br~$5$(oU5<73*a(1&Ox`_yNm}kG?;k0MzVnmHkVyXl z%IdS+i;>fS;F)@JPT$-e%z%0|1d9Az(uT+YM4J=tw`#T^!OS{}Kg;9>u#1=hc%~fF zGu+ZWWK(*9#1Kl_nE7vAFQTE%=)p3Ne0Zng&ZnU-w4l%t9Me0_Ia>T7d8R(&N%KrS zArzL*duu@pbrH%_!qcu>2pYJ4?Uvm%`BA*h^}~ee=6GJ;Ni}v<%^(dDa2vl6+^Agw zpgEW_mf!HcH>+}SWp$ZTZPD+8UBs`cER<6D{`jShjN4hq1THs#Za`<{?SXjy`UesJ z5*z`5bYX^B@~PIZA44FZ$Qx=-nloR${xHbY&V8a_h+12uY1|Hhi#w}4hC$Aq7OBce z%mQj#b9;9h8n+;g-AewF5U!K8k+64aA$llX)arHZX;%oKfB0J*nS#j+#+xSneczh| zuE?iLo|gIN>!GvL9TUq(mABoi28Kl3*|@QUQ&4>`j#_+w@F!InxW{hiD%BGTvP(G{ zO0p?2`qMNGv|+#`fEubP$U#Gl(O<_nM`v%c>p3-R7TYu23W;GGNgHRbU(i=@Bj0!q z>L@pDRHQmf@rMpbnEfI}>f|x%H2Z2n#w2i(mfVPeI2=ScEG+EQOLG=gHbWYh+3nA! zr6#MIprQT~k{TG2_cX;BO);N^uEN5-16GvR-x=&s9Kpeyj(We2{p-p#BD)Q#2ya^^ zmpU&kf|XGhFR{HcuNAn965xPjdHiV(O4ya2dX^>?;sQdPA;c`u8Ev@XHtNlT<~%Mp zGc_+WaRG-x6+k14D9TH#XPN1&Lc<IhykOGJ-*q68j}@-iRf zd2xpl!UzRNmxuhF$tp7)nPs1pbZMwRD+45F-4C#~TdHZoAP*0m*VGORSqg){y?eJx z92O!@itxq->hVKD|FPnb;(?rdr%b>y#+eNnILCiTla0ehODd_T)X9_QmR7<<=Q`#& z;rWN*GgPC7(V(#5`2%ml01x*wFrLMzJjw(O!FR76i8C-koM2ZHV?=1s(Yf?^{@h=| zdn(;)sQ8egcV1_7I0E`(v7VmqcdWc`L$agQ{*te=_$||&rGnEpTgPc`bXLt?^m2}9Z@Lo6Wn38764KCT1UrK@L zq9igfU1alw;XpntG#Hn`81|XmTE1_}&CP_Nr{0K+|FnQLE~A-o07HC{YiHj4UXadAtad8jD3%|hv4<0nsZz_O2nkOE z1r42(b`K#q?3T&b^ai=?Ha}ImUy5rMVcBt_^N^rYX$jaWrBDx^R(=Nj0^TBN%W74l zq<8b-^!XL@(_il$TE!?YGZk8rsot z#m=w52D0q<7MhP)edhhnz*|&01nR8QigM5x(}XGvkdS24#?B8H{y~F2X0?m!eDFZ! zfmX*p;^;3@FeRKv)Gsy8nxS$46 zQnJesVVv@}A*%>~_#^=l{xYOE863z*W;r8>{fj_!+RTc$vkq{ac)Miik(}Y2%T0kU zN!^XH+{wyj)p23qk6PVH&&LP2PD)w(Wxjvw@T?>)3YA-ED}`rD?}?3#tfxx9+W0|@ zKz8Z;)|oOnI}5^|oX7u4%uEQJYi%Rs!xk7+1k!RIKU?a|>0f2jMX75mX3_Wx_hKPT zaN0O3o&wtWa0@?pEMO&kR5rzx*TKtX#D5e5PKy#{vU>61u>-iDg1Kd>XKJ%}p%R`2 zj4fuNzH+ppSDD59`KGV{JK}3yQuo{x$zK(c2IkdXQcgiM(8$V(?nJXVjMbE0G9ZS; zQ?P`rMSE?Qgk*ssT2vb`0mED@pfOnj@M-z$YE(vARmC(zeKZhyRL`GYzh-! zt8iF~%rMT)D!!f}o=gEv%XC+?cC@=z`ZN)vxnXoBX2b8znEt%4j|}lt+(!FgC5Mkm z(ZFA#c}}xk`#=C;0QW<$&R+sp1_8s;PMM~eAfvs*^_Kvi&5;*~k%?1;M*NYP)5n4F znmyXcNLW_V)H)MnQou5JgDL_`Lc>#VbSSkF$G7diqHwwM%21 z;%@jq)ZqsFQ74A-zt!0y0M+rpbosrVVg3iq^x(xM&b8!kAbTua==;?ug|>f_Vq>_w z^G(Ql{rInjc?Cj}20g&`Qpd3WqrH@inX9Xny~SVqteP}7o!59Uy0=RVTX)T2o1NtM zX-_F?w-l&sfe#4)ss9FI_rM*Gkf*p!z8*1_Y@T{~fqD1*qo>S;iInb}Nij-z+7)^&OTEE6AkIp|mF+vlYx*VY(+KPZ4eX z2|yCAT4e>PSUuMEiDk5QIMXK(UwLzRSmj{_p_ke8Mjwns?_gRwvLrA7A?!TuIVXS< zJDIgyL(Qh_T0A)6xuTD1WI2+)p6&fcLiSueaEB{I4VN z9H{N>1s7f&f4X>w!4@5Vab^m|&Aod!Ad`_}(bb9=Pazm=8hK!y?$&k6*RR_0o2W^M zHyzR4rjDd@CJ{lyo*$4YnU~{GcH<7(%DjU!cHSSj?*xwnz?pE=`-IYX7lGFlU34G_yo+_P@=eN-n?6#ghPtI~0;3AaAoSMTS!VkoOcPV{Oki`>wK-EfprVl1EL z-+Tb>`W0-F?lDIomLAxY#2)-*a}@?XxPmV>=KTv9cU$O-s|DZJ%3w_8ax?Eb*kdtC zZe4sn_DBQF?usd?x^O-Q>)O(xbYzuwW91J1hx*Zp?+?ZLT$g5bDMMWsa}!Kn+Iwc< z33g7eoYfZ=nPR@KcTJ}9S9vcLBfcnZ6B`OY73_)(#x|k2F3q>lASb?TlM|cKpAdnt zuN2)F*G*vxQiB&*4voR6-UBi?y?#em4`kMRp68Jz|9ZO_ZcPjKJ>1&@)+v1N z!I@u<5Azu#l>;N?cjZiro`9((*07eVM`%H4i6qgG2pXi!FSr(wE1uO}m05i!Jcv!d zmmbUIZP0&iuRPH?R0RRHplSyG{AqpqR|~4IX2z=j9ZbSK>(TY>h3>?SKT*_ zVik>N!y)WQ6lq3wB%ow%0&a$ydilw&&4ttPKt*~=TDIkjH^sCgllN!8JsXt9Uhc($ zDe-marpYi33_naXR{8~8;^lgwemUd|l4w};AenI)TfNLN3h+_MW4KYd1cWPE1he?4 z#%I*_K|)!ZfP5#iQhh7T>ep%-qPghX78;)Kvi(=cYfX?O3$ril;IJRt%^4R(zxPMr)(qbG^D+Fbywt`klUtDre9BL*KO z%jk*q+hB)hKPiN))?RcsCqzW(B2p}y_v3ZDJIH@J_M11?#RS+Z^EVs_2-?3LGY7VY zRWmZS{i|W-W^$kX8VkYj^|uI`luTLMgeDABy5W$<2_$?k5OjiCto67{;kLQoKlp89 zST1X2Iv(s|Jum4eDL?~Ya9zcu!AW^Prk{;J9^MFbTD~&WQ;E~jwO;q)IWqKvvleFgC`fAC8;?_ zdKE>cr80_1dEl*VhM`PK1;a_i_o(zz(3Q%*A9OPP-tdgR?Zf|ZVr>1uSk9ro&(W!h&Cou2Nl&krD<-`1{rQL)D{AYGn*1?GXn*m}o;aBf_|giWvutom!R zq*D%OCA83P?2XWqML4t{48oa|dQF4(wLz9uN`^cRL!2RBe&%sND2qu1MOJI^bj2O# zUj60qaU#RYsyv+o@}f74MuXT_>bCTXCL_`y5{#UE!11JWZ{FMZvmVx+NZNy1Agj$DL<`eW4YVrCz{W zmp2+_)2Z-02^vfOfjO(3Tz#X;Y)!#}bmkW)vhStLSf=^V#41ZE=Z%}N7%R}mc)6&J zl-2OCL~Py^BCT+JgYgTQQ}@S-T7K&Y(D`=X2!yqbzb|!vd){A9neMBQV%Goka=5rZ zQbY8n2hjuj=7jcs^qcwJ=Y{sy`SVwYZ0{zJ(S+V@-=5U;R6{u7W3B}F=eMoPST$~rrpLr*;8NR_#~$`z27L>!rQh1XlKwiOE46@SMb zrAm9cAkPHhBRr;!!gDf(Bs;PKxbJZ>5K1nt$a!S1;8C0(wniDs04Xqm-du2}I#OtN zn#q%lm4xrvSmR7$vJEFo-)8a(9S0N|Ys5_3MO9j1$ojJ_Wk&62Hbf=9 zluRxWj07VTvyx#v5Da>d{$k3orrV5fauPAMiz_P;OYQXvj$MzPqcBala{GJ&Ipk@y ztq>r%=f$QzVvL_cNTZQaeaY{2QQ`IqH(HmQ(Afp9-N9{1 zHveg_H4jDpYb%S=62?l|ifdEP<%lca`;N_7w`pD1b$lbyFGGpB>v|4;dg;Tb6RQQY zmI4Qn%=!NGJ=SZ9QCi^y>^MkZl0(#5tsP7Vh4Ps6O#`Vm^@9Z@xq4eUjNj-CN*~%! z-Y}Ark+3-*eoFBXW9Tk~FD;HA1?T18e^cE{PV8)>TUc14E|R>wvno>#$5E7yk=;-A zJot5KaEcmT*e{>;a*(E&EKRG>fM-SBfQEKZ%Ax@IERZ?v9Hr@;Nrc)yBQm0$QtMOn zrMaM#r7UIUXJdXt0}BbJJES7lYwIu3hv2p_I=fSR1is6>5Cl zcC&5Y+^qElOZ`6b|0wmQi+Pnp%|b5K!{3Zt80JbFpZOt*-|dulod_t zR*O0dI!Qm(BTvRqb}czXn^`11jOm)(I85j|T**+@-Lk-0DA1e1i`>qX`S?;Nz_s1p zdrkezrrFe)Z;rr{eXbo!U3NvK!LWb80qA?S#9ddT!VVR^`f~4P9mgdr>OWr+t}&I= zXRcp8*l|}7j!JP-o51Mm18^Y9c^VnVgXGLQ;Pq^OrghGzswHZG)Th#dgNVM}2#NhJ z8|F=+-kY|SJ5ZOu*kLu);xgK03u+#k-1@LzmR)qug@IqOO^^?sTocu%VM(bB&3NhL#?oH+> z6?)3IsN+LQT=ftgfz#;a3LbdCv1gFb7j*O0AfJ4nSk0DTH(Z;rUyqw5mz552`+(Yj8rEGxpgm zl@An=SQeIh76u@_cWf*WD;AzT7-**IM8@elu%dVMX@?G0C?XZl_9BG?^*^nA4jr_YQ4Fv*GmV_~L zNV7qkVoKvISWdF$(LANeO^`PoQp%0h#n8=b&X|7Dex6}1|Hp0`1FUll&s)vsU;ouW zHQSGGxdixu2L;St(Sg5B++188?6mA`nXO#S?Ed=LtBR_F>u13L`ROAu7C%PT7sgx)SE zz15ws3XaRRMfma4#m*PGqE&<{X127rJjw6G@xh7f%womYK8d8+sgYiiBCO zZ6OX3>{gvqdS@VEyN%x{GhJf`nh8(nV`?2oMBfqaiu5$fyM}_gd|8Kv(A)AG*guo& zrVe?9U7%oNpm3aj2>&DbufFtujcQhGoqZq+hQ!zI{=2;~)?5fnj4){sTAM}L&xG!N zl(yvS;?d>rUJ87iCL>>~U9T4T34{)V>^}23HV$p3f zp(UC);ZRk6?v(Qxg(bhn0`4kxepTmoN;gv$J$IR#VOzaAkxSL!u-p5roujDS#MtA6 zO40~;x%3X+sy+y>+8PS`K6 zo;%-*M&^l!$wf?(vJ*Mb8ne+)V}+Fl@XB%X@SZItDnN2m%3Ovha&;*BZU1;k^Yh{) zfMurjO$($Mqpz`m_yPIdG6K#?2G(Jjfu8rR#K6y12h8PShQm z(lQLmVXlj?HRoTjr|L9+pJ9yq1;0jm=Pa$1R)9@KlksDoLO~ig)3Y~C@f&wcY!;Fs zXJTX-6`g4s!X3k+D7lUTlX4U-1!f=oi}H}5|GM>i4R8mpCFT9;LB=SY%5R2YHmNG3 zvhyJNA(0avzHLEs<6_DgaS5$WI}+XVcLxuVwCvmU)w@;q{A1=JD5^S(=%MW203KJp z53$J0-%ZBnjz5h%sOpZRhrSc}<0Ev*NEuU4-wBr|_3WsnRCmj`FF*9d+H}qAUUl8b z>x)Ns-H2{O_kGs()CL9>8`YZuMdg#$J|Fhp83;%yxsFzEbUP99>RkDCVzv zuSGjuE6$i;ecGPlyKDN){TrqmiprqtsLBcINSWjOL^$31(>89$ZIimiD@-+#e050l z=PcfY-fxq?S1=9SHNCe9zwsTHfB*8)4X+@HfRDe61P!XBulLja^Q~*s-L4SdX9o6! ztap3QecQI0+FTP0!)jctg)A7aPMoTqtWp zG4@H`;8p66ysZ!Tf6iF>qe~WDkRTvIBp@Kzz!?kJxcjeZ3b^tDUZ3_xR<=ymj%F5@ z8a9sT>KK9@Ufi^HQz$fy7|{J4Y`ukyqV!-~R%^wHT!oA^P9ZW03h3!nMqlTX0a|Fn}x7SL2(8@E;d)+x-;)L zU8Z@xj_vbD@(l)N?$EqoSrEX@+(jN5yC>|MsvUVMWG^teTtQA++WL1vY``oL#`7B% zjCI;=+hn%k8KMF>MngDKbm6dh2{8Qvt#{jJQsaQpsl?@q&eS`;BxZFEP5`}gdSu_Fi$`n=X^uvU zX^rBZHPZMf4Q4>V$=3`^W&-2Ub7UBq)2+d8kp-+M;WgY)*RExGo}k7^Rh!hwye6Fk zm-Xu8Ibq(uTFpwoO%H@5@T?9_UxLYrxF6ti-c zT(Z|2$i+^w5Enr`}Lw3w!Kz;7}Ai1dIrw z;3i7YgdrGpVgMv70-0y$PAG^D!~>k=E&Eqt@HMDqUJPI>)CfP3ErK@v2biD7_p)(anA>WY%v%GO|g@>sprxl(E5FK!(_{L%liE`oe6o3(jL7f@VDRk*yWxeGJq|gz{m@ znJ?rdx_5qBrSLB?HKOl>Rqd$>S4>3SNO0*KF4TEgF)tzW4D$>2q$lmYr*$v!#y`2# zA3t^C_O!##rf^Psdslf*`#Ik;>xFN(FG)-5m6>Xr`Dx0W-OJAHslN86=}`5WquVB3 zGODgD^?mzD^+(lRxr5Q~Kd+zi#3Q))^s8&_a&=EGZhb9RUGsR^@_BX7Za$w^zp(i9 zwdrwnskc|J-~030ZR>lL+q0jq>$ki2`Q*LY-}ZmsoIV`?RmQSv&G(A?FZ0jU{J#7B zZ+g8&{liD=_s9PF+i(AWQK{hp-YIq&u{T)SR9lp*qQnoI1vgIo@VKb-aF^K2*wtoYLKg|ag6qnLCK7@A;{ic2bUQo+-e=wX0qFx_0!57lihwB~a~X(=g~Jpie{~Ob{=Fnt(Dbfvz8Y)EJ?E zRRvT(`WQ005$OGIgb|DDvG&H%4M6YcA`GZ*KsEqdw-?1L6SytROki literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator/CandidateFeatureHydratorStep.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_feature_hydrator/CandidateFeatureHydratorStep.docx new file mode 100644 index 0000000000000000000000000000000000000000..4465877347a9f25c47154769de3c4d6bad605e3c GIT binary patch literal 37533 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 CKrd4O literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_source/CandidateSourceStep.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_source/CandidateSourceStep.scala deleted file mode 100644 index 359ff64cd..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/candidate_source/CandidateSourceStep.scala +++ /dev/null @@ -1,84 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.step.candidate_source - -import com.twitter.product_mixer.core.functional_component.candidate_source.BaseCandidateSource -import com.twitter.product_mixer.core.functional_component.transformer.BaseCandidatePipelineQueryTransformer -import com.twitter.product_mixer.core.functional_component.transformer.CandidateFeatureTransformer -import com.twitter.product_mixer.core.functional_component.transformer.CandidatePipelineResultsTransformer -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.state.HasCandidatesWithFeatures -import com.twitter.product_mixer.core.pipeline.state.HasQuery -import com.twitter.product_mixer.core.pipeline.step.Step -import com.twitter.product_mixer.core.service.Executor -import com.twitter.product_mixer.core.service.candidate_source_executor.CandidateSourceExecutor -import com.twitter.product_mixer.core.service.candidate_source_executor.CandidateSourceExecutorResult -import com.twitter.stitch.Arrow -import javax.inject.Inject - -/** - * A candidate source step, which takes the query and gets csandidates from the candidate source. - * - * @param candidateSourceExecutor Candidate Source Executor - * @tparam Query Type of PipelineQuery domain model - * @tparam Candidate Type of Candidates to filter - * @tparam State The pipeline state domain model. - */ -case class CandidateSourceStep[ - Query <: PipelineQuery, - CandidateSourceQuery, - CandidateSourceResult, - Candidate <: UniversalNoun[Any], - State <: HasQuery[Query, State] with HasCandidatesWithFeatures[Candidate, State]] @Inject() ( - candidateSourceExecutor: CandidateSourceExecutor) - extends Step[ - State, - CandidateSourceConfig[Query, CandidateSourceQuery, CandidateSourceResult, Candidate], - Query, - CandidateSourceExecutorResult[ - Candidate - ] - ] { - override def isEmpty( - config: CandidateSourceConfig[Query, CandidateSourceQuery, CandidateSourceResult, Candidate] - ): Boolean = false - - override def adaptInput( - state: State, - config: CandidateSourceConfig[Query, CandidateSourceQuery, CandidateSourceResult, Candidate] - ): Query = state.query - - override def arrow( - config: CandidateSourceConfig[Query, CandidateSourceQuery, CandidateSourceResult, Candidate], - context: Executor.Context - ): Arrow[Query, CandidateSourceExecutorResult[Candidate]] = candidateSourceExecutor.arrow( - config.candidateSource, - config.queryTransformer, - config.resultTransformer, - config.resultFeaturesTransformers, - context - ) - - override def updateState( - state: State, - executorResult: CandidateSourceExecutorResult[Candidate], - config: CandidateSourceConfig[Query, CandidateSourceQuery, CandidateSourceResult, Candidate] - ): State = state - .updateQuery( - state.query - .withFeatureMap(executorResult.candidateSourceFeatureMap).asInstanceOf[ - Query]).updateCandidatesWithFeatures(executorResult.candidates) -} - -case class CandidateSourceConfig[ - Query <: PipelineQuery, - CandidateSourceQuery, - CandidateSourceResult, - Candidate <: UniversalNoun[Any] -]( - candidateSource: BaseCandidateSource[CandidateSourceQuery, CandidateSourceResult], - queryTransformer: BaseCandidatePipelineQueryTransformer[ - Query, - CandidateSourceQuery - ], - resultTransformer: CandidatePipelineResultsTransformer[CandidateSourceResult, Candidate], - resultFeaturesTransformers: Seq[CandidateFeatureTransformer[CandidateSourceResult]]) diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/decorator/BUILD.bazel b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/decorator/BUILD.bazel deleted file mode 100644 index 88d9b3be9..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/decorator/BUILD.bazel +++ /dev/null @@ -1,36 +0,0 @@ -scala_library( - sources = [ - "*.scala", - ], - compiler_option_sets = ["fatal_warnings"], - platform = "java8", - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/javax/inject:javax.inject", - "finatra/inject/inject-core/src/main/scala", - "finatra/inject/inject-core/src/main/scala/com/twitter/inject", - "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/feature", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/featuremap", - "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/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline:query", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_decorator_executor", - "stitch/stitch-core", - ], - exports = [ - "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/feature", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/featuremap", - "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/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline:query", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/candidate_decorator_executor", - "stitch/stitch-core", - ], -) diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/decorator/BUILD.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/decorator/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..36872cc9f9ca8f39b05c1210d83dd3d8e0e05883 GIT binary patch literal 37004 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 tFr}jj8Y(CqFLeFr?LmZo0=A1Kg?!E8( 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 AsQ>@~ literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/domain_marshaller/DomainMarshallerStep.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/domain_marshaller/DomainMarshallerStep.docx new file mode 100644 index 0000000000000000000000000000000000000000..5624325c7f6e45bf2e53ab65d7df5f464dfe7b94 GIT binary patch literal 37439 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%0D!s$y(S+@t8mHN6ZSui@uhk2WPgp%YzN!Hi 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/filter/FilterStep.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/filter/FilterStep.scala deleted file mode 100644 index f8d9770e1..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/filter/FilterStep.scala +++ /dev/null @@ -1,64 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.step.filter - -import com.twitter.product_mixer.core.functional_component.filter.Filter -import com.twitter.product_mixer.core.model.common.CandidateWithFeatures -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.product_mixer.core.pipeline.state.HasCandidatesWithFeatures -import com.twitter.product_mixer.core.pipeline.state.HasQuery -import com.twitter.product_mixer.core.pipeline.step.Step -import com.twitter.product_mixer.core.service.Executor -import com.twitter.product_mixer.core.service.filter_executor.FilterExecutor -import com.twitter.product_mixer.core.service.filter_executor.FilterExecutorResult -import com.twitter.stitch.Arrow -import javax.inject.Inject - -/** - * A candidate filter step, it takes the input list of candidates and the given filter and applies - * the filters on the candidates in sequence, returning the final kept candidates list to State. - * - * @param filterExecutor Filter Executor - * @tparam Query Type of PipelineQuery domain model - * @tparam Candidate Type of Candidates to filter - * @tparam State The pipeline state domain model. - */ -case class FilterStep[ - Query <: PipelineQuery, - Candidate <: UniversalNoun[Any], - State <: HasQuery[Query, State] with HasCandidatesWithFeatures[ - Candidate, - State - ]] @Inject() (filterExecutor: FilterExecutor) - extends Step[State, Seq[ - Filter[Query, Candidate] - ], (Query, Seq[CandidateWithFeatures[Candidate]]), FilterExecutorResult[Candidate]] { - - override def isEmpty(config: Seq[Filter[Query, Candidate]]): Boolean = config.isEmpty - - override def adaptInput( - state: State, - config: Seq[Filter[Query, Candidate]] - ): (Query, Seq[CandidateWithFeatures[Candidate]]) = - (state.query, state.candidatesWithFeatures) - - override def arrow( - config: Seq[Filter[Query, Candidate]], - context: Executor.Context - ): Arrow[(Query, Seq[CandidateWithFeatures[Candidate]]), FilterExecutorResult[Candidate]] = - filterExecutor.arrow(config, context) - - override def updateState( - state: State, - executorResult: FilterExecutorResult[Candidate], - config: Seq[Filter[Query, Candidate]] - ): State = { - val keptCandidates = executorResult.result - val candidatesMap = state.candidatesWithFeatures.map { candidatesWithFeatures => - candidatesWithFeatures.candidate -> candidatesWithFeatures - }.toMap - val newCandidates = keptCandidates.flatMap { candidate => - candidatesMap.get(candidate) - } - state.updateCandidatesWithFeatures(newCandidates) - } -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/gate/BUILD b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/gate/BUILD deleted file mode 100644 index 5ea9ee1bb..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/gate/BUILD +++ /dev/null @@ -1,36 +0,0 @@ -scala_library( - sources = [ - "*.scala", - ], - compiler_option_sets = ["fatal_warnings"], - platform = "java8", - strict_deps = True, - tags = ["bazel-compatible"], - dependencies = [ - "3rdparty/jvm/javax/inject:javax.inject", - "finatra/inject/inject-core/src/main/scala", - "finatra/inject/inject-core/src/main/scala/com/twitter/inject", - "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/feature", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/featuremap", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/gate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline:query", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor", - "stitch/stitch-core", - ], - exports = [ - "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/feature", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/feature/featuremap", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/functional_component/gate", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/common", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline:query", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service", - "product-mixer/core/src/main/scala/com/twitter/product_mixer/core/service/gate_executor", - "stitch/stitch-core", - ], -) diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/gate/BUILD.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/step/gate/BUILD.docx new file mode 100644 index 0000000000000000000000000000000000000000..84d1ee9a3a151b783e487c84c719507a73652b31 GIT binary patch literal 36997 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 bk+K+S>oCBZ6_|rSSz3@G5tu#9yFokvs(Y_v literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasAsyncFeatureMap.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasAsyncFeatureMap.scala deleted file mode 100644 index 9ff0ed803..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasAsyncFeatureMap.scala +++ /dev/null @@ -1,9 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.state - -import com.twitter.product_mixer.core.feature.featuremap.asyncfeaturemap.AsyncFeatureMap - -trait HasAsyncFeatureMap[State] { - def asyncFeatureMap: AsyncFeatureMap - - private[core] def addAsyncFeatureMap(newFeatureMap: AsyncFeatureMap): State -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidates.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidates.docx new file mode 100644 index 0000000000000000000000000000000000000000..239e3cfe52a8bf853ddc96e745c01eb18b972991 GIT binary patch literal 36792 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidates.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidates.scala deleted file mode 100644 index 85f2937c7..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidates.scala +++ /dev/null @@ -1,8 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.state - -import com.twitter.product_mixer.core.model.common.UniversalNoun - -trait HasCandidates[Candidate <: UniversalNoun[Any], T] { - def candidates: Seq[Candidate] - def updateCandidates(newCandidates: Seq[Candidate]): T -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidatesWithDetails.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/state/HasCandidatesWithDetails.docx new file mode 100644 index 0000000000000000000000000000000000000000..57229f2f2d8856c4b401c5136e315744341f891f GIT binary patch literal 36833 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 xe=Z$ptf2kIw(gzs{EU9}>5Q60^` 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 *YvKlg77~tPsuHQMMioQo?s7*>5Xnb?Fn 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 literal 0 HcmV?d00001 diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipeline.scala b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipeline.scala deleted file mode 100644 index fe379c9b9..000000000 --- a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipeline.scala +++ /dev/null @@ -1,29 +0,0 @@ -package com.twitter.product_mixer.core.pipeline.recommendation - -import com.twitter.product_mixer.core.model.common.UniversalNoun -import com.twitter.product_mixer.core.model.common.identifier.RecommendationPipelineIdentifier -import com.twitter.product_mixer.core.pipeline.Pipeline -import com.twitter.product_mixer.core.pipeline.PipelineQuery -import com.twitter.stitch.Arrow - -/** - * A Recommendation Pipeline - * - * This is an abstract class, as we only construct these via the [[RecommendationPipelineBuilder]]. - * - * A [[RecommendationPipeline]] is capable of processing requests (queries) and returning responses (results) - * in the correct format to directly send to users. - * - * @tparam Query the domain model for the query or request - * @tparam Candidate the type of the candidates - * @tparam Result the final marshalled result type - */ -abstract class RecommendationPipeline[ - Query <: PipelineQuery, - Candidate <: UniversalNoun[Any], - Result] - extends Pipeline[Query, Result] { - override private[core] val config: RecommendationPipelineConfig[Query, Candidate, _, Result] - override val arrow: Arrow[Query, RecommendationPipelineResult[Candidate, Result]] - override val identifier: RecommendationPipelineIdentifier -} diff --git a/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineBuilder.docx b/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/pipeline/recommendation/RecommendationPipelineBuilder.docx new file mode 100644 index 0000000000000000000000000000000000000000..02f0f9dfbffe020511808e55e4edfb6773540047 GIT binary patch literal 43771 zcmaI+19UD;^DYj@+_7zY$4+)^+qP}n$&PK?wr$(C_0RLZKc4fQZ>@Xvy{5XWuB)ng zrhBGZRst9V82|tP0w6e*Rkc#SFfI`g0ALIZ008Mnsv%%w?Pz4}sH5m+YviCs>uP1$ zm?$N)&IccS{fUx9$Aj-70EbexXG?BN9fv7co&LzCwnBF)3H16r!4al3D;okv8<&y# z?1j5t$KB=GM5-Ymc&Vk8p^{GsT@nMZqN%z7vkMn~W^?~a&C&%o#Y=Vyw-7-F8+l~C>Hg?TBf2_@eVxL{@_-dg!~ z{+OguMt0V3yE6eoug9D~ja7C*X|E1J9d2?zz5$PyTiEv_J*|yf)KW$5#XY{>H!xmG&&OJ!DzXev(N|ma&t2|S-KMy0XxG_*NP_I}BXCvR3skdA zi+Ci0M9Sx<2a0dzKI-du3u^-*wO1{2i$Yhrw7+gdFBCsG2Nbv2+G4$)!*ZqJcVQ zriI`sg3K2AqTG`|3J6lG!ODE`^$4ZSMYsSN2qn3IVMzme zl2h6s^DE_$0rtC=AkLUo>N0yLTN(_Q>rF80jx}v>26qfT-Z<(offpi!y7EUEM&vbM zzp*c!UqOGt0W$K*rOLasDF5CGzjUy-+n#m?)++zi9P$e`2_tv*vZR8~KNn&{!+FbQ zps;p$VPS8B#(~6_*U_+ru?Fe0X`GELSt)Z`d=~RV*U&e zu{O~;>aNMWlX{wuKpS)Ot006-M z&%Ef_+WspoisRPn^za?;R3KW8;b!3ca_I5?OZ>9}o0v868O;l0gyL}^tqgnKUaz4j z?7?)8VVw1x?+s(`%lyXR4brAcDC4hrBeHgzP>t2$!$<3r$Ak_bWuT=f%7X}6b~@8z zm5X3BkdCP;vQ=Xqg!TFpx47W84l-2Jj%%=dTMZsX?b5cMGap8LLKn`pF9SD;vW+WS zDRT5O;pM=e)u!ccCDYu@BKwbLYDtMOu);ukpNt^mZslg=tD(YZQutU5x}7%@rXc3f z9*&Q7hNlQQCRQ3~T=PVH=eX3ick{nq2A~em3<`Gmyk{PTZOb#S$kzeT!W+)(@fGSy zRYLEgE@Qh@`G<4ZnSnnA$RkJRh!V~9Y|$G<>PtCeVI`hmLEbq3tbCvf zQmzSrtK-BbG^HZ>)Q;KQU$CzAXNJAnhCu8!HOnJZJ6=;R zzDHX@z+E*&Mx2E6u8)UBWk7MIa(pbXtga=k5rvY?jEUe(vK!>x3V3Kk2Kv{68(mh! zS$z-h*%b2=p7z#?;dtlOi5vRN1&qzRr5+MD`4ZCdb2M@s*RRELJ2{bOQe~T%Gb95| z$-`16E_q;GjJHrmq_ZQP?t>2Z1~UEi9_xGY@dEFEPYmVmXw?TYZm&0b&f}aD)l?tt+)Tm; z=7)2=Yh(MQX7$VC>+UYx!!xX_byM!(9B-|%bx2Mldj!!lxo0FKc;PRg5!DQoHzAc|&lMt#0h<2gZ zC?))bb?VrWF&78U*^$1?4XLK6xY9n6n`o{wBi*pe~=LVz)a+Ms#1j44aC*Y-`>lL z8y++u;LR`5d^i*FY?J0W!~6%*e=cOVrIemBKEDw>*mA1AtjRewGEDeS0&flfybr(X z+$tz2&~X1AvSz9Fp4u2-N9gWyLCUAstPABjy;ixfAzC?#8*W&Dpd^nj0y|KM5Z|Ph#=(St0c583)a)=qSKkUto)4mf?{bEul{?aUQ~1h_QuRsQ zchtj}!Z%FLzQGHwl{BT}xIXa-wj-X9D=<6@Uck-VPYFV~9%ua(K*TnHt59@^j1C%mf;8yUu}lkOmdGlG22#Dd~YZ4X)FXp#KaEW6&e^on#jGq$E0X*1@Pl3Jp^gRnxYoj`O6(Qkf*?p z75)Yz-tVci&p17xTg&v0mcvf%#3r?1Yhad*UT*@W$UxF6ElTmpm&&^pTOql>rBs3A zJf(%8`3>nd3#MiZd|>}~p3e&ydA7Bo5SltMHRxRW3<(Gu+ZiAkEe|XN(UBK$Y-p(2 z;>r>(@zACzIISt26Ss?6S7I6L@n2KbrwCUO(csq-cHNt@o>IM6TOr#rI#GDqu1D&;55RF}bt#NX{+yk0@ z!E{rUnf1wlocao=Q-we_Qdk=(3O~pO*)PP29mYSS9Qww^MKl zE{(IQF#li-XN=Sis!yS>OaWbxD7e7bW*m0@ULB;x2QT7E7=HQo2ES9=b|AuK%Iywb z-4-cH65Cu}F=aQI!m2{C^YTWap>=GcHSX1S{2Hhb^(|ROIRUZt@#`I|5>C-Zt7rI= zSr8&!D^M1ROp>nc$qC8h== zYOc8-CtNZ`WwyBfM1ife{RGGNR>J=%(K-JjNk-Tm0Ev@J8?8u|R^cJd@`oFVB{L*EPwsL)I0>Q58!+dvbi{oe(s3``EHZIU`_IFA=*Tz}1^MeVcN9K+-}Z0J zW5fcmR!{o&nY9P0SSh)#E`(1#@;#k3ZcpQ93qd19T5?$mS?;#(89QcVCnP$ChDoIX zl5C0g_37HJT9Iq52_D@1b9Z(yX~*DMQLAVrpPCgZ5iwD;P;TQrHU#0O7VkrFVsen2^9Yp)ovQSeb0Iz73bgOT zUV-tKFcmTM)^7lg13X!kO>IBWyqN-*F}w-a@|S0Y1w#>FhFn2=2E8s zkl(e1SE{+n#IFqrx$9BO$ZdvhP z?5M@lJk2DK>CR{v*yk)gV<%?_TlP!B`JfBT#KqI_OMhMw1Zw0Ka!QjWHRU{iHAw}p zv`pS@3-W4=rt7I)oljE_XJPptoh(G;|MJNPc4iRfv>D*U)KFrZH5TKHV#jhcT32!x z*=S@R^M25popNf&Dv{WR$NZCsQO~DHW(*5Pu2rfe+&=cRrvO<;k}>h zp>C5D46GkNAh!jxhvSY*J!99=-wQTBsWKpRr@RG~IDV>V!7Xp<-prZgJHUC%WyA#foo41G~AOUU`Y93{;X1Xr2oV$EQ>(SDdy8Eo?; z)~9)wXm2vK`VPfD^QgWXGj1omFag0pjv)l5mw|uk7LWGYup`i5OJ*eb@4(@+6 z%#dd!w2O88IRra?rMM|)ex+U8Mc_r4IW*^~LH|h1qa>Msg~&TPQpmK@ckY04lJkf9 zRT!%Hnr|(uHz`2E80Jo8XL9dG3a}b9j29Bk0U=T;88KNtl$e?c7nSC=8ChY~&ZD~p zFH8sD?4~Eaoo1cFvg2D2F`qknj{w53=MaD!jy$%i5KCy$322`n`b+!AwsC!?W;583 z$vlS&M|7%6_!wSnAa_nKMaSz*8J|aMMGzgj(ekxVUVq6eODXM6bW_ps@knfT7yHm7 zm#N_05<{$+T)JT2GYS65C>gt{NaNGY`3uE!&-pPTT-h&4UavVLGq@^5(PvSxv1uy^&gE9@sqm6ZmV(StfeYpIkp~AC zchIuit0pyG##b?Poz`6PAn=vh=`$xSObr_HE@l-zYK?pVxi&JISA}G_i|2Y&n9VsK zY7H-aur|rjD@cWJd6Jj4%%r=p#3Bj+1*CQfa`odsHww8=qwqU@kXNIZ+FW`j13D>r zj$=DzO)Ch+R{2u?zI^ifK*p>*3%j};?zkhf1?)o1`-y6UJlJpRJZyZ$2FQa-bC{bu z$oY=AmkKbD5KzGJx#_OBZzoVh+PFtKaI470tbn-!9vN?JLW*e%Duv$gw=igOIopQh zj;tMaXdt_xvSzR35rb;m(N9gQyS?!)e%ybT+sTZrgN6WPjw-XpUb#gLPp=rteX(uI zfw`Xw8Hjm%aYn=v;X%ygTtQlaY8;U&o@DyWzEirxkIbxlhf0h}h&2IA#+1`GyA9`8 z#1!-Uf7QjdSp-?t+ZfLcM9kx-0pQZ*HKov@RdrjyakmzRq?3Q%>PEB7LNsZ@X`^W! zx1B$Y+mlr)mB1_hf{^GUxC@SBOMa~}?@szB?GnQ9Y<-O_wk04{Rkl(HLa<82vNas9l{NT~1rvsT_cB+KUqZ;0px(EV+!;)w0 zB2ezkT4b$qqLXu_WXd*a?G?Yt^1J+Oj9`$bU?l|kJyw5tU+Zq3{_K4%O|o-Yg!a=L zkM>jBr;Y$LCK$ORQx5!5jL=QYi>#=MA%#AK+|!gRY22o?`pw_Ye~(-LofQ9l7{m>!|VVwrBg4JIY9SOBm=$!jULF=XP*DQSH$^1&F0aY7;00=TN~>~x!Dj?ckW6la*f|%BbSgt_`ZM?)6YD(Q;vif+Q=0&^ z7g?HEm1lBCoA$T$4sKipi(hr$nTg&GY%hByRr78Il{iy9Gcdn4&3|p$W(nD#L2*>^ z@Zzqta9|CO9R^yOs=&T4!n`j!$vHP~S64|4UTJcJ_OSla*eu2N9j(0jOCeNl((EQI zS2`zrRmLrtw2r7|z4JwCyH$KX!(AgSa99{XZBbWG zd(nL*I03+KwlxK+#EAkV5k!_|3n+l!qrf5)J#eyYvfB9|JF%&gN?csI-e#P=&5yP@ zh?bQLW4k5(7eMwRF&qd0<9f8s{?NWRSAM{w2P=sJYXK%b;Lf3i)NlC*Rkvc@!@>8w zdtMsE&EmQAgCivbN1Eodjw_-burYHVQ_El0+hBXx3=M-LCw_Z+Ox{d{bB8ZamaS;oL1f?5SW(J9Ud1x< zH8125nAEg+>vhl34`!$Ethz07;fDg<-Ai)5c$pzh6k-(u9ue(?`gmlP=oHVZf0&}( zgPjSvEZ^A-+aqjDZE5e?>^x;p4vNS59W9p`ms<iC2XDlBAJ9QH4u8QCQ&+Pk#lzBWB@;IOWyF*IRLGI!KKZ(A1uWePq6>|q zE`g8yz|COu)mkU1c>aAsMtz5v$)k^GauU8;96{*r$FX*^xl(S2G~=gw!qbBLEt#Ge zjqRU_q3$!#14Tof%iL@Zjl-_K1Zz;Tf=St=T((k26XX)pt_hr|T8hza{>L(>%ly5p z{7w?N@x6JU;pum%S3~*GfH1yOXL*eysv7qWB~>Nd63K~r8gfTTC3NDR1hc-bbWKGQ zrhAVl+{qz^W%;4H5!q9lOq1nBO-}5%v_{>}M;Q@`q}`Ebo9c&&J##99M&;NTeSsf}UvRym92ogp_0mTeBnS|l%ybD! zLgy;}Zn_to0XZti*P77x>E}jQckhSevBr+ow~ZJFrZ=2@#9bdVbjx)oazf`r-*4b3 zImFWTjx=#zb!f*=Z$*{6CS-QYS2t=gTXm)n)l_?u#7LHj5(~w!X-7bA)S-P>iBscT zwK9~|Wp#&bN{7*c_^q5hlO-dS85$4g>zn&=tG#~)p9mDg0wuy& z576ssf^R*Vzy{R3!2qihbBOsf*iQa?cgkvwQS}E=HSk&c!5UnBRk&HC%x&XX@RB1N z`*5ZuY|+6GQA%9w9EU6&L$mfa?wsu-VgUz#$hT3Fcv4?8ooE3ge@dgk9RG$;uh!k` zF+%i}B0sA$qx6cDbgQi+0vZGj-qV71o%z1~My4!I&dx5~b=AglH~2UAMQS?*OwSGq zN~kh7hH4u0+$xy{BojyH4WnxPs|pVe$lstPp0GCusxBS?kRX})LdU9d#C00r(47j9 zUH*(A1otYfjckideZN&mbB;BE2g~br+rZ@u_pYQ)5c>`bx?k|G(`wi1kRk@Rjxnb7 zx)Y8AqE!I7Bn*76jD`X2s{dSEUz*_^yn};~r6!zOD?nG`J~LA|szqw0>b|0Cd^A#N z0m!zkb7>`tlvb?BNy>bbwNskD)6gDPtx8DUb!D~d#nMP?#$3DX7(4WZwhg7PjV>jz z;2@M8n#&4M<|Vc#ee;hz^rL(;d3BO=6*4=-!y)LkQzFe+6{YS+zmL&6xJXdVaPrU?BWc~otV0(7nqvugsQf!##hP+lq+blfa zE3D9#&E~u+#WMGbS)~!{TquOqSjg(MW#xty#!v+r3@-xXIR3)KUVtF+XcJ~S}+8I$#j=Q;gR(2caqN?p0Hj^yPO<_r@g7VmKH&cBHE9vL8 ze=+n#hduQXPv zW1RI=ru($UgT$5I2EyAs1rJ)$i@hte58rQ;Pxb3?e$XO#9`Z>iPUzrs?kJj%&+$n@ zN}W%3X$=gQ@Vl7bPv!+#j zxI-w5zY@Lx8O=*Dy7cqCl9Oo^>+YR{^mkq~zEX{NkrM|relXyz6xQ_$@6Npk06yw3 zd&p2J7`|$aW*)}$dnU}HaK+F|4;%^fUG@TY8Gto0W=vY7;0JJ$9I@J?rKS9;yN!)i z+eHh?y%WX~eT+g~OQ0qiL;3}cm4m)C9fh}j{FHcV=Y$&4NWbBSn+Rg_RUREI2Gy2~ z1Z36=jSu&1=>g6#&0E12nLn1EwAY;LXj(YsU^$;TYI=9iHn1noH$aZNnn>0BC#T}~ z?ciGpww1tf!Z^-ZZ!f|#U;4JW#P%`h=;m;K#didkQku?9ohDlh`1<$ZL)G=bY){2o z-qxyaZ8VE-^j^qc=JFyvnLQ8~B|0{=2l<=^Dod&q*jVMRLfG^TBrfA8F=wd<^|E+s zcvO~Lz0KLjgcHMb%_Z^9BjD(W>i=$U!ZdYa-gz?*q$N0u1c)YD>XrszmO>fBP62GW zYjSE0t7>I{2#hQv2aspG3l6*dQ%b{aQ}qCJDTYa5>^AyM_0+DoM8^{#xGz;oS_7~)9I6t$$KY^9* z>$p83bFZ@gZ>QVK-p!zkO*rfHY4S_^w%7OGY6Q;K#leTm+v()&RQ>UEH?N_J^y&5Y zC-CPdpC+G2Ojr6Kq}TVmiO)VOH0gZBTf(2oJ+()d(BZjag^M}gJJVyE>DS9)y9_ZO z=_8D9Mw_V!fj`@moW5H9+fN49I5^9zouxYL&?opV4fmT7{hEA#Fh7=m3W_&6Cn`rw z%46DJy#KpuZ0(DM`1|KL!T8T{0_>mT1plfU|NAh^|EwMV`(VspewhGz^x*3+sJ@^C zjo(V^dmlx7s74v6w|25>*)i>}$&zVVU)fS^ma zK(fH^!kP?)UEsT7#t42klDag7K#L%ZNeedfhuOaa?$VHs9^gQ{`#h1w*n8|asuptN zDkA6HeK#qHe)wcos19o-%162z5^QS^v(+H%uK{y(|2x)E<*1wybN~R_N}vF6{~2os zM>k6&hkw`SwG#G(>%6+V^YV2*4y9@n$twGzT1BGzus$j+DXMX)BVRG$%nh+>*vkopX29u4Q?Bjti`-|6}>&3 zGQsSjk#*k>X7%bG?~Ci>?k?fH-?pkY{Rq$P`}aqWt{9i)Bc?jfA;ru6-i0TczDSx>|KX?};*F3- zg6Y@}*?F^t*`Cbn?G~Zf?#X$HL{J?T`%nW1S{QPL$T1yK4;NBh^;0^~@lxaUVhf_{ zXpb=pLi73jI_@|2f%tsb{B%sy{HXC>?bznxu5`J+3Q1Z(id~nrprg~#!`k#+k>b}*%yb=D~H=Hfn$)z>r=whuizOF^a`c$44wCOa_)K< zzBC&ogVI)f4fCH@^v>HMO3Ws25j-S=!j=6I^-}T5)!6)89Z`P{m}7ivy-bL%fb&>O zuR9q5VNw>g5npb9c5qSi;w4p2yUcE=$IAci3uzusSgC|vw0`VAt=aafLN-t{*Z)Xf zK0dT_s6Z_!d5b}~X?>V&g-I0~Ey7EBM{j^V!~WON14%@vUm)>Gz&p5^19nLzijR5!)Odw5-bEjP`!{ zb#rP(m4Q1nhv11q@B}f(?}?*BE*4ox#FoHwZCtK2vLX1PNDw0~DkoZkDF2tSJdpYj znTkMyW?38}Ub?Nj!e<+s?nQa5V;FgUyAH zHN1v_aa(Lf)oL#RzJLW-96~-FiUg$hSkR8(EFnLTx=~I3Pwbi_1p$P~7IKdc#C?%3 za-f?6AJke01wORZRz+sMD1IUl6MN$W-VebD$@xM*Q zy5Ciy`X~R4`k%y{v3~f-!~gh-+;BjH4^8ubP^7_!AajF;_!sMi1eZqmj(~CyIOOtEYwofaP#)_2# zwxH_5kzM=h@VMm{btE^fM$*Ui;O6_IQ>&Kspa=g)|MG-$uIY;Fy~fMXe0KG&YxU_O zkIeDm(P-Z8OVl>6R`a7EUbOWd?J8fQX7n|49On1C?Jofuw`pB?>WxyIjP1b<{HH5# z=amc>n8EcfTA$%;QLA(N_~X`#fpDAZJ-@0L_)<$Ra<0DnS9|I+JB+oPZO)~6E7o?p z7y|7_)df3!+nO=??W%SF{o>Xk9#K{PnYYK z1Y)?tEr-yWrAHctbsXZcwn&wg1k`r(I-<$euinkLA-N|?#eVz5jjgjw*R}3}=%nYI zzjJq_Y~7A73Z_%Aqo|?hWeu*tAj6bOsJo>)OX>cfUjsKqGRNb;w;XZ9I>g4(<;BO- zcRu3FSV1WSmae75IPiYg&%0UhCrVr{`D6$pst^|~tQyw2?HTGUoiAtqd4>CVenLq3 zc#gb{?!V1{!JGG_4s6*urN3CcH!B>_@_ux6LWy%q4i4=d`be;#iqP4!qMGoyt*c^d zby-n+bA7wmdFLqwlF_-Cwdd<%wi|!UqFV%i;RZ~sA3{irFnY_T%#tQkl}3#rEvnHj zG!H%!L(eBr1Ip+dR=#CWt(s^ZY6=i#j6;(4w+=g0bx^hbQn5$S96f4_k2)1^%B?bV z>Q6+@9N6Uu3pgc?_D$FjO>g2cI6q@dzxP?c$w62S5Kh5mItvD8e{+=`lAs=jo!S?7BZ+pi(=?B-GHI9kGdf=f&V<}JV8F&I}*TS zl@rNl4~CX%p=IiI%oStRG_8n%rm(F73~+#f_cR-OETkx+lWO0UK=Sg0WWdp5S1&3U zdvy;{Lz-;IFGfNb_6pX&>hHc*Snw)7$lAZ+D%_UX9JDDd+g0X#Ikihip2ut6z9#(s zN?T~3c6oakzWcfx8gy^}v~%-*{!08_x_p~I{W!Cw*X#Id;mv%a`hAWG^SxzO|4I~o2O+ijxv;PcR33D zb8&x`)xkZb!cgPHC67^q3k%>deg1J8+Y5TDkzX`DDqq-5i0$c;Rgh<+X3&_ONSZe` z{u0DKg&R6yA6KCjXtbTQZg{i^mSD1B&IU{7?@yb@+1!%QqeRk-s6Lm^w$y_p6sATh&No6~m($)j z7V~mRH6;pir4grZ&ep(TOo=N3%^;ql%x4`O_cre*Mzg>augybWtDOB}ev#JGZ|t$V zu~o|xsgAq&o|!RfO@)|?2_)OZJj^wfMwOG$V)&BOi1P*O7{yNcs7H`PiMbjnFQK8) zvLTLh-c>T{S*#?+8wn6*HvzlS)yvW{wDelsTu&vnC_kUfb8E(dSUCrD!e#8bX{|gd zYP{WL97<0RHU1BZzw8b`M-nJDVlwGZZbtq0_Rs7bMQ1!}8Zn$v!qch~m159OnAw|6 z8@e3iLBFE7JQxxNrnNH#&pe)Xb?0XKr?;Ednb)tcSvOxzq<1 za)MlTQ)}W7@m{f=Yfj^sWG4Q{cCqyV_iv zX4KGbVFmY(t6*)oMAGSm+-&Ks0vGS$APvzTOmJG7DB2ZEv$d1H-hM2g=+Fsv@^8VW zGnPtY!f93!3qC;2)S&Jp+CEoM9ek2`qZBT=+{;m%Wj$50ERMo<+|Saw6=qf|7vjZL zkM6~d=`X~uv1O9i9B_vHtR334;b+dxWCrFki|g{FJ5-YpLPk&cM@~*^)BE_9$965f zse;nZG=*6@t=w7P>mx^h#HgahE7|_k?Ug_)SNK>Y6_H7>Ny<485euIuA0@b8v$GDiJvv%CQke_dOVCK5cN z)IO>kPkmpKcF!M4d2OJ{jp8mqMW$Iw1CZ7_U+Kd%oNa9*yO;noJI^rjxelMhz*LVO z2?i^|nEaU9I#GG0?CFKVX-`EZiBeEf7Sp*3E>|iiWA{|luh?v7#Jo0QZdeN1ad@{K zA<=)=0W~){p~f*{Es~5+@Yp~{!Gf1sWEaNA8j&uaM>U%YB9tjuJuv)JqKLQl>~(vS zJA9@@r-3=(Fqrsx(|O$e&~n_s$Op25l{dX_nq)dn2Yjm_pEB}!o3jIc*qx+p7Jl!wTau_68ui6k8|o<`eS%}R&HxUPa%wO^3W zXiV9C(LI&iUJRGsUG;{cz0c?^!p8NDgO0$n%Vsgy+_HzYO#;TuKyO|2_Ge3^mk)r6;ydNQK>R3HVeo(-OB1JPU2NXu2nOu{Y&HOO+XkA z4vmJp0A`fo+*wTdGD~S+7v}n`s}C#>*Pm&@Amu5fyAtj=F#_et1QS}PI@c?^8tKZs zT^slAhV_EC(C7L*KHIhh)zgP3NW#q#C}BgdAn$|8?Xj;Z9ddo z);j83R)d}}yuh0S7S5txu_tq#S*$XDVjkemTGk7T=&hlvg*vng5JMNpPO0Pj zSJN>MSzDlL?4+6WXon78)||;(pgM@oI3vi;RA6b%?Pp<0TYZzNC)7?oN>PMPl<5`Y zJk}?_^|btExgE)2MrWY5!~+iBEmGj+RJ9IpP_mmbJ;=^ewqa;j;5BSI{D>JWwIACI zI|I-iVZ3_&NMsI;)h94Y{NX27#KBv_qUrw*vf;Tn}pk zw;VI}e_~|gq}WLP$Hq|YkIj)U(s(xLDyZfld;RhWjKYtZNfZH_s<4yE=FLH01&{W_ zLfD*UT`nga=_03H$PRneKQ|?#`=b?@{Mt?kW+W5rhdnV#sLx%Rw`NtBC(p%p zpX6u`Nvb17MvFa*lucr?)UL5_S@Gxk{^X(-l!Iu>GkV5sWNr|Z*sf5W+B^#||4Mik z#Vvcp7>okMeAyHCOuHG>$Z;u(1X``tRN1OBke6^X^35MW8S>;Kcy7%y?FNY^fx1kn zv%|+Uv3zaUd<@bvtqJg|^9Phi@u!HH_SIh_=cPeXXmU0`>ZrfGgggJGUh*I63;(5l z@{f7|?w`&wFO~=EIp8~Y^Uryqh4gy!CMTh6IXch|*&d{`LUuv8mu12C+-FFvVam+lSRw&zdZTcP_DVYWD61wp}4e4_ifsB zIMJ7ivUJtS%9xLRSY`-kN|zz|E{rs>%L)-yw0T<@O7%3xZ;|d4J3&BMvUHOK?k$R) zCCQc{hMZ;#@74WBVFAwj$vODXb$zLPw9MoP7>vvJa83)`vLYn-wBY1$z1}Vy!U5PS z>662vh1XX)N#C1zTho8;1@kKeA{jWXlTOh-57Zyt93F&^$W(?E&h9+#8^n-HL-i*k zPjaUSCN1_?omI+=O%vnf_`IIq5J9MiN}|Sr%*t4vw?D%~@?#YaTNV`RtkT66RL}xW zo;j@BkgVU-8F8jYi6nEZ*WOZvyqBbS1u7Sn9yFr1^0sUe!(A3^V184UgpzSp8Ai(c zs8Z^sU~g{dXVLCfDvy`cKawUsl&sPR2{?PtG_nZ~azk~I2KcF)TNrVM5k{JL_+9IW zOyR=Bc9og6#(3r{l@-@cFRHu|WzP>BpOFLItxXq4_})C-D}qq3WUNg?MM6;mLB&vE z6fV$ahvSlpur@=KNVt|Oai3iXN(=FEc=+`ZaPpq03+5BzgX$#o@{vWF{y_Oh;<+{r zUuC6smYE^M{ud4i@qgk-?~9=U?iSz5BGl+QoDI>@Qfnubk>pH56$OJB0QfILN zLbPj^a&dm;_>2lDe%fr$!3i1AEd;6P$E$wGQV7)=b{uKq|3=db|3A>!o&Nu#k&n3g zvEGs`$JHO37FV0AgAi|Y)IT!4_5Vlm z=)-+^tFl>a=dg^QQsNH;c4Y|lP6f>9TKYv| zLvF@=JJI*I2396GA>PpK4>Nl!wLE^3|A_q1{i<#+cLk!wp0B8%Bn~{g?R`h9%#n)f*i`mqdXGJ$ zY_(tPZGh3z)WX}q30UH~X*jFpBoP!@*y9EaH}?i%gUEHe8`{*Q8Pa|%Ysf%xK&gN5 z?Ew@Z1b>ANjzANl&ZD3T#H~sjE`b8sgEJb%T%0jR5Qwn$%!Un~c4ik5T5{_%U2`yao1LsTX0yebA1(CClJpN65v zi($?`bkH$qP}Z;sDYfx3Vzg;!ibd-Bf3Q3f{)eRkUc(Q|e(---f&kX0=nuD^deR>m z3ZPj*`H2ELy#tTr5S`AVn(c z=9Q|FhgIG$#@@x<1wkI_vxiT9AvlFuSv_@fx@tW{b2B?>$bUD8S^1BD!!*`Uwu=oh z$X}O1@;a|Pw3cwBccCk~j#QMEbWv6~kP1XEHCYZeNT?uFIcX+%r`?dw+K4HOb|V7L zI6YuE!se}iUM(SL%5&TnG2Z-oUt2o!L)BH=!vbnG(yWU&jw%EB05iN3W&9{j{acCc|5i$zJfwL%x*K2*b3i=)2P&lk#_~og18MwafIW&4!@UFXxI(D$ zpMGa7L-^wbndh;L`a5y}iBEEXy^Md!X-LE*m%y3~$fm-KJohq&Qh#x4hdC_essGd8 z4)Z(I;jGxhXiCk^HlWbk7T8YuU-G1QLl%bAWv*;CvZUKE2TYUS53VFrY7yrDV!|?l zKUJE2mB?;#$bgmf#(?$T40CagaGdxukS71l(E0ync$aY>G8wmB!Qw8L%YRvdVLxhL zq6vOCkUK{+GGA4I!FcGVI4IBy+grAz2(D(S{~=Jbof#dsjq}e6ee$}!*-ic3&fAe4 zB!@1h83J$Syg@xr_cq#i@_2j_H6c?KUA%DkdSsR#X>3tPM_*jLs?F?<4L0R?QG3obIVrgaAyxZ@wIS-g3W zD_`lX*Q>=&4T#Y17aAMX4kNS{naR_S0Q?vYCdRc6?U}8%xB&AvXR8d8diP0wst?hX z$jG0hrG|Jpk^w0Km1}@1ghW-JjT)iOwpmXsy>{M2RX=BIR`+KsUeE2JVD@DGUIX%| zyr>J=ylIS@)Z<}=NZlJm((0|1s@kwipv_L*i`cIh_7Akgzn~F+pur{n*?mv6ZY{wi z>HZ7a*>L;^nv><<&~qe65wQOc=-aLV$d0gVoh{E+kxpI6v&ynwMCcG-m(%^nNC{sa8UY2*i7 z0sLR!%?wOP5w!mg@L654o!98(?G5|?0PoWkdzDvtfl_IfL!Rq%oC7~mXpN)m)Y0DV z^lRmQX<%%F%Eb9@I~fztdwf~mOX(~EDK2=YR)q~ejk2lzJLI*J!%w-!t~{UbBh{H% zd3Nj4bQDW%Qnob@pe}dWC@F*E7Q}9wyL)g8?ry=|-Q6L$yL)gC?gZx__TJ~*bH4vdO;uM-_v**qnV!|FS5FI++L2oo z3ns0r295N)GQ{}7-ig-Cdyt|~oPbcEFOSm;oisLz;Xyb*t<&|ASWsGe?;0p&?#Zy8 zhh>?IPeE9jl^x(yeVbKM`J%I77ryANhc+Rl`3gst29;-ysh3jvCzv#C5j2f*dQHUp z+_KyV0_OI%%_T~NU3T$hP^_5OJk59wU3MarZVU9W2MAsg0<^ylI zpRin)2OXaHobiM$|M#-^BB?=v8TQC;X})JN3!b~|vhHQaC1d!2xnCE%r986bdLrU; z!t9mp$z_EbUlYG+LVrsWW)tuBe^272?{#*+{kc@}FOQmkibe+h1MJ3Q&iF5rN9>h% zor6E;8h-uD53NO@<_XnB<24Fxg@K|1!xfYuPo`cEDcg4K#^fWd6=;mDNH> zl#h*x#}}1uU_xn6031=S3tQdaSvfldZCRsY0Kfg5*nlC4sjex>7_vZj(Cj{dGkR}) zQz5;nXW;PY>TNNtzyl`MqcMXrr!~%_1p^KP=do;z@(Sm^+%gd0f?|sS16h_Pm`&>E zK4;bo7351iWflP09P|l`7uf6A0uLns5%moPHGpU#kxC$8Dxu;Qsk}1|i3J-sf}vyX zu;R>u&T2_+48xMQRY7F3Yl}9$0&9P!-VQQks@LZycH|t<8n1zNk^%qtnS>bjW1j;L z1>J@OqP2gZxr$UmYld8XpfTCqLrn~_sV$HF>W43BE(^wPvA(Qx1>Jy(z7!=rJ-jz$ z**;xtNHsw2fk&Z1X$Oe~?}kTVA!!G}{uGA22YCm{M9r~##H{Pj2$IDyrx zyGW@k+@ZqJ-hDQdFaUq)Efa_xF8km=Vl|lyi^O&+Quzj=C~R#3>Oi7H0_4v!da@toEWv-A-) zc!QEaek`EtfD5Q5Z%}$k=U4xRoX#!C!m|;=L3rk9()Mm$4CZSI!DlU|q~yk*-k>+C z3zuLnA?{dA-7Y2Qy42?`>66e#faNw|cxPq6@XlbMhyAQtApSc%>ul|R!mH`9>P(qf zj%WTyAzUB){t3bM7(UfRH@Jnq5>-yAD>aOJDFGUo3N19`R@^9y2#L6zvQ)pqnWvX8 zcBE~avNUK7Zl6oOUXK|8ps=_J4k7SQzkldR@34%3P0d_5;)2H=jx7WhbEn12n_=V{ zX5ClP!XcqNn)M`3B{NQAvw5v>8Q{fXSUcq!qxs5J#TIK>b{$wvlg&N%?cH$8@YkUisGH=S z#gV9?7rDy=>Cfbo;biMLde7Dz^E}zK(xB1s&M{AoHoQ0G52A7%_OL8nNX%UW`s{Yx zs1_or+1)ug60{3_qEAK2(QuaWWV}^YY6)fb9=$J`-~4C6Zr~|94?TM2q{gQ}?7ogy zM@WzygcxCurF%GDHEfXGSaylT@!lwXrrEOJF7*5L!9!;&Vp7_iLw2wPdcc)Abx1y` z>x@780s#ft*iu4-H9M2%uB;9YKVxt5tfCybihZ!;$yd&qvPr$?eF{f)LKF6w3StxX z=rj$}{~~{ic87AgT*zpuX&d|4xOoi7d@RkwxNN!n+}&uo{{290LuOjhmQr%O8hqTA z)h=`1W=X=e?r$orMMYb9Ujx} z@X3U^YS=}u1ueN8O8V1I!5dSX5jk>xm$W- zM>ZeCD&!|3f;dzj5_F4QO@z4!(EhHya=xvydms4NI8EOkdGYeny`9jl@jpv7mF<42 zh|N~nJpA%YNK*Kp{Oq7hbxw*{yRKioF0H-hOhdC28fYxn`a2vKAr+`<{X}l1tiHhn zq2c2u zIyrhOvk{*oZ1r|x$Wz&@p7{LrMUtZe&v0Y-QBIE-I10U`DK|t0pI2I5Mzap7QzXY< z1}IpF<=oS#WOGfZZS?;fN`zGL8#Z&%s62a7j6zTvMS17MHLN<3&HlT{(*d*q<|9hc z?b-KCeA6Ox!limG zeZ zyD!R@Y>itXS>ShfV6+dpchypVQYKcTdq^Z6u_`AXk@*MMwWm5UAo^dx@;|>DM`2G4f?&Sf-gzq(wQq0>VZO*P zJmek%WJ!b&SmGL zh#aKQ4^Gn+rNVj^VMrmbj?Dy`YOYD(S|xbz-#qeqOgTW;wWV8T$G7=weYSg%p3dtj z1B4}8OCp=c?m$073vk|5>OE71{=`6OvcO1;+Bfujm@Yj-ZV;hPS{!K~jxcYPFU3;k z1Fq(smS2Vn{j&%ERm}fwHqQBvhJzZ^qdQ2zd~bS~D?bT()r<>YCT!i9N-@@$|;(-<yk$p&egTVYaY!qAt)5_Zpqylt5 z_;_YURt2m?zDosGWNqZniJ0JZr)RS_thN6ZL=Vg4Fa-*Lq&7CMTna9p?BUfYDW`)bE84w4&5P$q86HG8Y& z@{tu{2sX+EHHxp3uVGpC-dYtv#jRT}@-f!`Im(`tdjs=-0@%xa033(?1z`8b#eWxK zs10W5teYrmdDE4*A_HL8ZW{0d%#1fH3_ozIZheFWJc(J))dhB=4W{9~r5?DPzhwKweL53nK zyi^eyg_ip?X30Cirqaroe8N)d@Om zS&$#{kC(Yn?!~gjvp-EUFQnp&4T9q&+uH;jHCgAreL^f0`6SnF zi2e=(2w=Q?2|)v+sJ-TX!faO%)-i96vV&Y|g#>MnDX8X&ml@aOj$mn1g0^Q-VN6o8v5{`k zu1b#N(AVEF;?)3;jGds02x4-mK69*FaV2u?ysSi{i#IbF7%bvfg}Shnt{8_PX#Or8<}LCtUAUbwVl=11s%GvU1>3xnH(b& zEu*Cj>2GEFh4qlI;efs{PU%DBUIF@6Pg!g8m$)aQRB zI&vk5@CWG}F10C$PipV04gI7H41|o;5JwFi%n`dgv`QZ!dBPl5=6vhnWQ9-ZC7!`= z9J9d)hb_a$DV}l&bYY^5nMRJ8_WYvh4-0_~Ly002(^O*S0a{G%Ya`r~{+zE*?OpC9 z8WdNRW?lkfTPh`=i!GlU#2E&G2}6sbOj1JP(`||34|%VKR-wH>sSHDJdp+XyI; zpFL(k#N6`QfT6twr)A%4E4P&={ej~{R(nzJToTiki=a$xB}-W%EH8pxvh~!-g*K^T zEeh#_g&@EQZnR;MDW6+VtcXY3jZcfJ{2N;NTc;FYGpBbsn~@-l(xp)>XbsUMM>H3i zTm;e|E=?Gc>5?)d(*Y=gRvE_))JzESM)f2Rjv`WURvvU?KOjexDMu7O6aNVc6U@>I zdAT@&S#5X;3Dbc~xic&v2TTM~C&wQ%)@fUN;aD>$^#Z!-p>h!xQ`$MZI2X+GghwPu zS2zf(3H=Wu?eb)QdhJQkI2P5vRlpx$AhSy+8mCA`R26D ze?=<#LW_aB9EdQQHaov0uusZVmL4N+a)AO9lOSueLx;9Y+|veSC7PVRvk&%pimIxM zG~_b>V1C479)fjZpDOE@htltxl5dg3lmWlhrr$w2Fs8dfb|OV{h3`yfv#6{X#yA!PZ~#f7E%Ak#eLKN<^SbzT5Sf}XN9$P1W(*Tzlz$PN}& z@?%B8kt1BJzBA)bEyGu60D%<$0mA$M()u@$^#{J%Hi=RmU zcA$?;HJR|*h~vl>J|hWCVnC}{{yD6}ortj_6hr!6q$n25llT)Uq$r#d8DwLo=oxUo z==C|EgZFVfQpinbY*s?X9};kg{Pa71$xhj1rH6jWTm^QIOIO72$p1ZWU*FAtj)wyT z#IYI*1nu8|MuC`)Wqof-&6R#bdvKW>du}YF&mEuaiv-pLxebI)aC5Hpgyi;g|absH99EXrXAKrZ4T-`dKy;|2R zIZys?VqQ=KVG~)y`8wU zy=G61t?OJr-<`KrS0i6sWZwg)_HT5o3h*=NVYPL2R1h_#uOH04*&?SWyQIryt0IrN z=y9zMxlHPFbH8*gogEmou2KvhMBH6OtiP7FCL`)uGDU>kygNY!NL~N2@G{@MkK(Kz zb8@(zGkvaGrt+~7qUu`qcJp}UG{14G)$`I8sJ{0pvVKf9_4e_3Z_@E`vDjT5^D5|i zWNh`j@b+;N)N3#OdGDHE{Lb@kIOZ5XlpUBJ(ww~S?$grYvbyi+(3gI9Zhq%}#I>7<5MQ;8J@*z)Y(v->ldBD>?Tsgu z#-&%{Nt)H6x9Z7imo1lV_0poMMdfSDn}a!>29)?O-bjV}8D|Twn{D%}G?|>_kPGjZ z_6;j+;_P@nY4;aK;QeDh?@Q}Cb^HQ0M7{gP1FJXQ$wWK^t8aAzgnUH2#Qg70FMJyn zf7;rrHyNCf%NMFgUMVWOD$vA)#uwWbyc|qhm(R@F7RWqUc?rKx2^C_q`aIUGnjt}# z4=ud5W!$anji_`nWo>TqO-__PR^9I17`{GwI<&ssZxYx2N#(g^VR?M>u6@1lJN?!B z=Ynz^bS9L-g<16znnZ+jK2c`0gMm`Shmly zZ;ZP2F0ovxL^KG;+pT{_$nLjWuqm+Vg+WdQIgMoEmGJ zn{vg)0mMm6<;1Gd(PMYd&)bi^cXP+~kMCJYCq5TR(M!AU_{0bAr2`=otL{FYIbWd# zE{O7lh?1(0@-npRbPM`k9G}V$Z>idT)QaKTmY*;XB4fx9BfY)XuWz^JkID!zU>{X^ zaaA;OQZyVe<73+nQCJL-TbPN@N6F1krj%sDD)1={I0OG7k6f|dxh~6K6%KF}+x?x8hdRMq=i{~{0!LTX{nXg6J8Q|>jI8_A zHa)D>fy1+%yCcSZNUoyew8zVP`ze<>G5_?pnoS$Udo80edl;+FOx1D`>lSLZk%rvf zvKkxfo6Y4znjZOaua$$nOj8jd`*R1tse&EPPLD&nWwF^@F2qp;CEnez?)$|HhsCct zy&=SI^iLGvJtlj_3pRSTxqG=S^md3Igvaq1uop4-7uODveg~cpcFAtCNNxc@b zVuWG+UGuH;S0-%pL(2tgd-FZkdK?m}A?y2d)5=o3afs;82m21aDwi=n!FWbUkBPGa zumHK5LO6BuWi7}GRI56$MGO}$@2}#kRlXwruWH?RJreZ#k#=7Ww!D=2SVL&a2vhqo z&Z5Q*Vw}I&42Gc9NNmZ#s*|sQaaW+)fKEJUfGvhL`MQ7Y*8&L<>1FWk!`sH{Hi)!? z-?|(vZ3013QU-3I`32lSat7QG1Kdy}(E@4rZwP`#m}ZdIH2f}#osUNU+WVuC>x4BZ zK~c#EO2Y^IUnu|C;6G9R_bPBWnj!5{@_vDF%goq-5L=`OY1+9et{h` zpxOeP!2+9E{?n}6)&_oy`E%n3&N>)3!t4jme>V6J&ovSakn>t(8^C60z-AxTkSra_ zrJj)PZ?2=BgZ4@HwJ2YzrQ+K`yglcA7=##_$L_#~P8cv$r>1E2lXehq_3IxUhW<$T zYWWkec$7y^l}~IJmI&D*{IJ~Ae?NRV582<(9PRys{sUi1$aTzn!72LK^Zn3r z_So{CqjCs%hheeH7&7+TgX<&AnS;mC>sn?fCVytz#`6(l6?9XZad=i05yDQZkkjr7 zBGHfe&6Ry!fB>`c=ENO-Q~7IjgmJ}ND`Us@-F39r(a7P#)7azQ%I%AJ?S!@iVdzbe zQtLT)#-t}|>dT!;tLH0EYnMxqkx=F0n9lvyUEfIbm|VK`tk=e#@8q0ILNdp>-Q9t8 zwzv4>+{IKfU+bFaIr-??Qsri{*Xqv)xq;@&qmfx#El1$_>uMU&q|a(vl+k&#+xZpo z?CaJGeU(snF*F46FTPXEiwo=!*&TQ8b(}dK+`}Kng4vlE0AsykulEC5az|UF-3mG zYKU@j)5MlJE)^y6hEE?Kj*EGHpS3vjJK?cePTSiV3B?GSmYhS~9&jZ}kq|0#VV4%rWr zrA+RchuRb0N$zST=)VvYEV3;w@eOBM)J+p{zf^)+?ip!6>`{L4CywRkS23`v0Wnr2 zOutm6sM4|G`w#@B@kjZ%$TGNgG5bqZp&3Eh9_1_c5DeM7+M>2Tr-d7U^Uj%&;9*Ys z%j+(0rkkEzPv>qt|6A=aqLagl=i|#u^k>2JeeWC1*SX!%x|aqaT}}d-GRBvdl?yH= z0tOpo+xvO;)F_p!PPrl1tyXW3$CkA$!`MRmJ~5l5xLSTnn_MD^)XKfX37$jMmCCHC zn@Q|O$QMfZV}k}c9{G+j;$|Lswv(Ffo$Je{uXawMsMueav9FDtCy@_BPjn2p=uex* z3(Fil2pw!IIWjFLZH%2@lu+0J0;U8GFbdztqN)+j4Drvk$=CN?%n{rayNtd`cNDbkCS`RdIO0qib=^!Z zxwv`Idv77R;`YK~oXpp{Y4K;fMqb%yBMtW1*9mNV*M1TQtS`DAwX~CYJH$3)({G$+ zBxiFM!XFIJH0kSt>I&BWRvq2puS}I*tcWLsMD-x-+>10NJ8)3#v+%TO^A;((NkOx1 zke4#N8+W}pSx!uin9#ZUrpKla>cUOySG=3pJ9pJkY0tB)?4M*)Xe1K=ybr8?*$GPM zbe~}%stQ*k)sDuPbYJhthIGr_m~P>igsLb_@9AnRr$%Jqnl-f(jx*Ya2yK?FjYhy@ zTy1JoY=!5$O@|;(@69ihPA0Q@18&$yr@Gue_vlPhuTcRrC%IV$`Q+T)^W|$KWk0|O z{_zqOmfM%iJ70o}TrTkJ2z;j}?>y36j!k5zOj+a_ylokwUTIyNF2ROjy4?z@Jy(YI zO2}{#!m75T8tpv%PVq@pQtkJS1}QXb@0+{$*N}bo2RQu zVV;;Aw)#S5eo|Y##VB$0H}6qCrOnJF^vpD(JFWAXG8&)bnZe?A&FCntlNqm! zG)SKBNBd~?KO07!jA!qHUFTZc$_`#1@per+<%>BBCQbPoEsphg7aB&G=1ZYRH-)R; zjIL_d6CyU4j*ie^cdnHP{S{>O&asJITAkQ=?B48u`5m!!+BlCi2~AolC8{BXtk^l; z74BLM|GZWlB6Mv}2Goh^x|N$ z=2iWu2IJtS%qrs5637i=pZO)ueGPF-mI&cq)1l&K==6G*=It)!nIc@QuMs{bKhB(1 z2xaYRr)OK}K7{pWx6fJRwL(sxr@g%8QwQIA#+ZEX>CufxE77AztL`0GJkQt@N`KlC ztKh*KGg*Bo39rQ6Z=BeCqj}`->}k8gc5AOs_J2l()-Q%y@ZOgatn?UY+`~UKG;BntK?uT^X!M<5l>JcH(^OzQy6f!48R-ArS zcToa`?Ox}sZK7O@+<~iJ;lP@p7HjbMWk75oI=p%l?6f((uKG&u&{z#Nm@PX}u_TO| zg0OlSKN${W{H-N};uJNJiK6uuX#jFZ88{A*!l#BYO*w61o2y#vsP%L^KlgA%!)Fr1 zMic!ivo01CCFUHrt2bJnx*a!yD0y5fJ>=&QABdlcagxa*7XRFG>ZZ{VgH_%>U0K|R zW&AXv@8I567j;}Z3h}u??a#HW27a&g*L@GgazC%ibfuuv6P52?=d*W@j4M{z=*M~+ zxi>xEwi3U8dy7AA?)8?0yG+~YWH1$9UjNlf`zWvM%~)-gG5ZsM=_bi)k`41^(Aw5` z^rt#U;+W9kp}W$!_c&Go?U|$mE0cmxdnSEa^ATh5iub-d*HPTn<*(wS*oJR9QprWd z$e+(fJ=oJJYs)qzz(g#bUK~S$_vUDz($97sv|O=|V*s^-6S&4}8J;`o|QlM@m{ui?02)!Lg9Mw_4=Y;5KXe6l}M)!8qe#e1XOP`eqK=@Ncwyn># zmR>95w8rDXW#@6aArnA?BRlr=dA(!XiufFH4c}qdB0tH{MIW~@&;uNyDN>|`>-Av4 z8zYFEvfA14%l3vkFHl<~)z*eFTeS0R2kyYecYdP_sHGgh`&#-)_a9S$MpsE2SH@Xi zho6TSl7{vCUsjXsZ2z+Qr)a62_eY-;yTP>ulMBXqWMQB1*2WKrwR9`aIlxb@bGsc` z@Ov9OC;8{Y4c8tk!9V|RbpZB=n{1ag2aXmlEM#y$k6ri{t`#_i%-BBa9mKWOViLj!npapw1C_j2jic*7DW-(CqC1g<2gXSxeWwIp+S+UXxN& z4y?omuo8;r6LRJ2oukD(8ESuw>dY5^NIlpzC--DWxANDw_q1l&7PF&C{aN7nnMkzL z=QE)2*5dkb?bhb@wJFnsGh}Pcza{ww>{p#Rb7J#U79V1CdUN#B(Rq0#h5M4oI$iE! zBZ^Hhsf~mY&7hx`>@t*0zO8D3GiyQxmo=-V%JH96Dttl@X-?{>xKiHSnVX6c->FkV zb{pNUD%l{rU#VhYIzO2>r@b6%e~Eimj`b< zA#IE3*gefN-P8=F-++KXV|#Y7x?q%;?95$#o?(I>-_0Y&`<66!MU2O!d^kP#VvCm+ z^3^=+YilIe$t$C^$DbO_*EFP!=jY@BAI?=`Q&^PQ!DLvSj5F1U(~;lb=>^^sbcbK| z`)sm#2r7uw21w1<42~7Of9I~i=4nJ=exb>|k5|^p<+!!p$s2_{sFX+?h&mE4yIQ^) zUVb{$68U{ciV=N8L~ zl{QBmQVX_c9Sj5F@GMfrC%$zR3{&?cAPO-U2=frpF*a@&yJ&LIEcuL9uT|hyisIJ- z+A|O^2OMz4N;P+J& znQ*8eIB9;QC0V>P^pjM^U1_7hPs4wfWW`w zj;6U-bF)`DXW^62H+QJr51^B~PtRX!VBNB&~YX%Q^6} zw>PkNwy<}!OOA#FeT6Bx*}By8<0Zb(OC`t0L}OM-82WMg@?)N6xS1?$4nI+up*6Yn zk>qtq`=D;<2WF4VGOgy3m}q2S=1Ap1f41&D@F_P_)h|8eT(jlG(Dgm-1rCK!UAiL~ zP)q?XIi{Rnaksu|0FPgL6Y` zrxR;|Lz_Q`h<_Roe5Qccy{Go{zHvv@_4(Bom9mumDv7My#iIMpPXxUiXQ&L=hoWda zqDzfmxlTlowtA4hFKGAHh`4;(zT?`t8|`daDns*vGY0T}U57J#eXY}XB3%D%6mJGe6waCUtibba;X%a)Tq{@Rj= zpD}gR70@Mo*F(VXBFBeaLmYUJ|}}#+nn*W z{Wr_cCE~&DPiYDCt}FSMPZKAfU0;V-MMZVr3y)FSz2n>8u8aj?1n!|Y%GPoUIK3zw z6^ZXkaS|R2_$Zh}biBpQc9`f2eFoKYeO(#*2KN96=xH$yxTfQxE|t|A$x!w} z!VF;D=T$x(!30fe_&@kLM%sth?fGv%wm!ID$(s;QPCjY=zPmBG%9q?ozT4T}gXekd zt3#xbQ?qbUoOIq2=?(aFN78!bAttEtl^V1c9;8g8QUSaYHT00g^LcmClg2k8plx3* zgIw|}b_UiOCOWp%q9mwVB%?PWh%%v}yU=9ZhEMS`Uq-<@?c&L4>O8!5QJ1-F6Z2c^ z;@Eso4k*sI2HkDP*G6vDM41M!ED#Lp9AQ~P^fJ36dDWIc?W7I_2i!f@VUt(w?ExJ9 zXlYnc=6dWRlyQ=jmDU$05XHzB25E@ln68J zO!?+a;{w$4!4Jhwnr0BRR3P!AxO3>9;stD+G%aigBM%q%Z!-@6M>F5l*q_ZC%V|Ub`(%QUmQv*|1|!8;~2wQzs&Joy^2(ljFJRLLaMF|Mz=)^A+Q z^3-~$S9;5~-M+q#?FglxA=ew*OWB&IGQY3bG!AF|01VCE$Q=cZ>j|FTr}p(6+b@J? zmmr$<<1>gEC_2;z*K!etRG8V}Z3JL?tduDzW9VJ4iiw@`2n!>CNfB$3l)F7uZ#5GV z(|DXNEx5nGZA4DEh&KwvfMxH~Li+4ACOB=0*ui6`N!YP~x}E?_hfj7I57rG~LMP0)SgNeCq)X(`QUI`HkM7B83f6 z%*wU89Ta)p$$Jqu5jT8LJnCw)x$SeaF$uH;Y~gQ#*An)snD+9(12U`y1XqgK^Cy1050Q{=OA)0(QcOi)&g|!oOX( zfd-oDT7~vWDZjj3zsNf){^LU_=Md=Q&GBD8-bU8ySjqk`BAoIxGJFQ^p5&7hb-n(I z0zKs;ihIR>LEM)Bqd@<^L@{Wv7c{U3br@0?e{JFU$!&D(Y6Wj#$)eK$p;^Ei#JMu& zl|J2KI&Iv7NBT#DwRI~*Ti4|J1%}@E$}7iaEr3(zm>`4|=&m=RDcxk={Z z)cbC(5lkk{LOD<@C9h>890|qhG{)jAKaB;ef1uV%&@)tHHq@OMexO$PssDpIfR|Ws z{1<9%aBR_Y$6 zs$e#hTTu^Q3uTBX6-jJgWh4nns^Jg`_8DjfRg-oxG*PtHU)5Qs0u`V2!%+iBIdQ&C zlX|}5Fq~4y_i55a=FYC#qI+;1 z9c;_~U<5hlq3iK8?^xTzfnn$f+>jS zYba9?mH&xAy9O9REIign1QTuH@sA|8%Mn{8?x+dwY6=4x^KId@P$nBH%C%H~s`7q* zo^ipX_)G6DMj94X!;AG;joRBHMG39Xu421#gPRE2=mI~E8MMQhB!h*+ z4~0F*nLT1NTg2kyJ&{NOuH~Sef>i}AVH+%)PYSBtsd*6wSkritYioK1mn}iqC>UIW zmQ`;%G`_`Nm*dFqR}P?RgkOi9R1wFd!Oqc7vlB72XFxzn@QH=KD$>&ZW_?LLA{ZV2 zj$%PFpFlMqN!6Fb?vYTYOg{Tl*}=r`-lUEOo}DRKP-EHmTc@!gIEpoI?CYfD3gwT? zl-F9QKztakCw^KOE>Yo=+6%;OsIAy)3_|hzIIeN)M4QtQA!*tTyLfxI$KdRXa`5^f zh11BuzMF7FlRcPd$=DWWDAwTCyJ@okiU|pjOnJ^wKp^k!1K&4 z9ub6lkHl3q(J3-q(Sj6)*Y#rTNVc_uH|&N8(2!!lV2dxd?0ZQN9v*!m(V_(0dZZ`_ zY*-nYwl8nIz^rQ@|Kf}tS!~R4d$(@|bwZ;+>2wnh`#N#?kA5F?9-m?de zCCPn1e?pRI*D})59@sba2e$LX(i_8reA`Z0-JY7RLb%s2Q0aJA4yrR*3NlekxgE?1 zCD~3~Gdb2y{8w^}op@SuoLxU6j5K!!6v_7Yyzq!vv?%le7CxN*W2TR!7{zQ`jDYeb z{Q~D4FU9kjqn5K+T zRw||ui}4pNZ|ZL8MIt?|w;zjSf+FTOoic|q;b+z$MaZ<|@(5Zh;RXcSY*0z=%o2Bt zyg>9XwQ6XE#{d7E`CNOy;nj&@$O!8D1sch%n=8VGr2oSUk}?r(ct}AIMZk?wYFm^# zcSg;*KF4$Yn`eTb($lyRNd#WeJtPMacS3ABa7~fUMEra0J{Q<)J{?Dknu)gCfK)!D zLjL+bRcf&;y?J9q+HP#>Oh=WJJ2tPXx)YhY9YQ_ZB1CDWBU=*6p|zX_FI`G)@VGkM z%)xegEr154|HANl0TA>&xR%&T{nJI5Ml~N1wwH2mxQJfLr3?dg~k{ zWM%v)iw;wS;+0>f$)dj7w^6@i$fxbRzuZ36k&z*Va+B=%hKecxnK{>mJ_3{D;73^O$-LU7%- z9x4d36e^g)(lx(}93}j+t=Nxy1>H}K;*-Pf{}2Fr6+(@)9`i~{SYE=vgS=%HD%2oT zbr3MqZS=f}BotjX8_H~k>eHRkXf{dq=KBzU$o=^R^a^^8CHw)%^0u~oWyNold|}+W z9x4PR68f8nKP+kT3ffp(6xcR|ub=oQp3h}I^|+c2H`Dy%ENQ5aZ#L-C)yFO=jy$~be)lCU)B#a~074*1<#{vC^uw`GR4@=C1`9Rx>zpLMw z;l7~q1rGkV7f-*3farfanRyTc4th!Da8F$V4GW3A^uRb^Mt_{bb$NLcsT86bd{l$S za_Ym*6*Rsbuo^qaMMgk7@^G&xNC)+Ca<1w&Tsz3!96QLS<4i!nmSyip^TyTs0HmXp zwm$QH?mpKTo^?P5sa(?DH?^qmxL9qzt{Lej0ewC}8clj{wNr>irim>Sag)4yjj0G6 zXOu;8x9(OYt+9~Z-$+;k$tj@-ED7twS*D1dFB@F7XJa&zE=`7Ss|i0_f2&7^0|mvv z`K1VNfw;|l@1T$)>@Nse?56_SSE5(b&1``qq0#kltGH1!C?wbw+)UR;A zGs3K|RuNo|poUvjM{ifL9zr-3>2>dsY?p+)yKHW@a`)vbArk`P++k{MpR)!er1dK} zZ1PH$pYr!KLO}6~-yHBO#aZkoh=a)AG|xF=p6($=^8)1hAUfhKi|TM_AjXtTn-=1pcKn3)H0#~EAzHW3p5 z_k>+qx>K5)baFRP7(#I?6W`VM(@1C&I_1=V`%$nzoNu}d=7ROnoX5Ajx1^nuYf-j0uch0S3Tn?H>a5?_8eVWU!x5RT7 zlSF)ra0CF-`DrGJ`x@U~41WJYPpDZ*jy#pR{Xk=D*RlKoDh-jwQELQFuFSG%`me4u zNRA}Io7+>+xcRAU<}zo5aP2G&gxwSKkppR><}bhQw}k+@`_JOYpBO!0JgL*( zc0Ebp3cWjIXqf)I>^s8B%mY(ch~7qsr363 z+1XcW3bF|?x}#K8v_Zf)fC{QH&{kE9!B5jLTXSc;<1r<32HQQ%9EpAtNdsrLSI|dr zEzfWk>L4d|SfnabZc-B@)MnvR%J?Db6x&LE`Z(|)EwL62vEPrdUr^Alo$4T}V1hI% zwcVRVLq%3OMoslWNd=_jIZAdwlgneKEjM#*gB9iRa{${HN3b=erP{4!b6LJXWV0j{ z;c3m_RNk#KKpU*T`tj;U zeG;3Kk&>H{Fpop81fZ5i6y>4O{+8jONX-^Qj;L$nmaG7POMG{zYzta6NkEUirvNSv zax-pacyI^eLkR_kmj?VC$SN}In56IJwWz6d6aW%4u6tOU%~jN)ko$WMzm)e2m6V;ptCas+v;!+L@EHFtNj3@_DIu?@SSv%GQ&IsF znPZo0kLMSPPhW)^N{zyb=Lft916@2YUErsPG6+8S+RU6eoub{ARQVc3!P3-m^%Fb2KHHtP5I;>XOD6662T#L4E~;LAfzr3sWYuO9TbByn*96g7bOcU;_k@d7Vc;KGfX>Qxc2Lw!%isW#FT2KieTJ~ zt;wO+{S!5nH4T+erSmgh>z-ZMPw_a}47jjBRWiRZ3#n2iqh;~LHs0?DSHeZHe2y#W z0&HGOo;F!78m_?v`<+sGYMvlxou)_fH;b`NBFtO%v~Hg%6`TDxNMW&|P3eWfYK@lV2HgkU%`QsF^S`un9LAtJ+p@^J|> zE+Mu_agI4u;wt7nHjSd#sWGo^FCkAJW7vFKG-gf^>l~B^@~_u|3C5l>I8WqGU{;+T zsJ=BdXUyC(Yyk6?Pl4%(xeiYhJx^iD0H}jz3(8(YbR()T;Ijm)26kSU@FX?*i1{|I z!`>~WBmOYWaA}-Ej1uAAd~}{&e@E`JFd$!pA7KRy>E(x31qPR{|KPmhvLD+ z9kFN6^Z@%TC-bQ|$ZR-vE`3&vq?n{wT0#Wi6nM95rx+&{(wM6*0{CK}9VhPlC^-=~ z_fxq|!$CUM?Eh=)DuCixn(*Q7?(PuW3GObz-Q6KU13`iwF2NpJXt@FNGAPK!NKcH=hy0`BDg& zHn||_rU!mb{2g*ksBVaEWfov9$(#+doyp5*)$(8y4cVT_&LjkRjLO&rW$A6OT= zDY%6(A)+cqI+HBpu@_UjDZw04m!VSf)~z*JQqu2DFr!<@h?%G3ljt^I46DXB1bu2c-Ylb>&WcQM=8$S$9 z#;ye3n=$S8^iZPgN!sgz7IFlhsTjYJYMjvsb%!!@g1nn+eG*nz$SvtKDN*Qn%{DTHETjGbyG^xfZFp~v3 zTwlV3wT^o~ENv%0`=@F6qDNnZ_h2JycYDiF-{ z(ztA+8Z`j;Tg5wGBwt=p%52b^rFxnCpL7I4Kc$mE|1F&ZGFUo3_>RE)Z#e&wS%7Zc z<2{Q1B67kdfIDA|R%-dDQXI@@X90;>KOO;pF1UIxB5m9S1pw?I000>OF1WJv@UV5V z{`VD;uSZl!pe<{45PzZjM=UjPv$-;#Xf;F8E#b6APK`QG0nX=m_z*$wL>_ zE!%k?j5{crzbn5y#;N@}x_{XBCED#uUAr20r(g#;DTM|<81G}6N?fF{%a7pq^9y+R zZA`VUq1&dDnYW`Tf^_k?KDnW^w=S75tTS!ExO8mfZHZAUFJSa7Ee+Yh42jqd41R{1 zU?v|RDt>u?50OPsbv15|>sSLeKwj9ii5S{={N4IN>bDyYwO zmy*9|jO(=}6Un>`RX&LlbYxduRveqnPSA9!{j>_cepR z@MMn_k<=0|QT1>s_kySspocwN5fNB}b^Ux1BdQYiKA&N80222Af8&)c!CERmD6Y1bU^U6WEp^s&^kQqQA0!fx-Y zW-s3nb7>7)l5b0C)QUdBii?aYOWB0r>IHb!uW*BGmlZOZY~QLh-p6bEqj0#73q%sb ze%ELO>mn~btOZ_GgyN``S^Cu?>_|xS>JtfYMj7LDmXFEQMhGz5)s*z7qp7!=skI4S z)D4ZqTof7c99q_<_IDgik393$-L#BIbaef}U3FlcDG}gt)?lG{ly_S`7=Z3MvZ8dQ z;)xge6@&X7f;~8CuvI(YeaJ)reSXYFNPYsz2em6!Ed{urP!k= zT?-%_d-g>x@8^1Z4p^&DIyHBZ*)!}B3Y}-`L2{DMz%OrKdR_Sr-7$U^n5Y$y_}yu zKoHG&ABo9eu#A10ifvrUXW50@QG--#AKZ1GfVT`tJ9{9rNV<^adn-ix!LeT5wViox zXg7&Kw?i4XW0#xDHe{N|l=-!)4RB=nG}QSfPzE`xxf{#V6$J&ZkOJ5KVQ1O#4CYUb z-SOwTn?nKscZdK0=06&j79w`N9{`?0Au)?^Rqt z%ef%)w*AE(d<3M;PkO6p7-HFWc`;8Xbw6S>rK=H1Ac==2hZg^HeW#>u9Q zmoSH;rOw(xv&FTBZ$kO^g7uvSijXyOIPxo+EbKb4kk9Yi<8F-J2zWsVol97OG*2Ll zzkFXhfcNz2K&h@OHQ*I$?%OYl)b>H(%rW=&WG8wjrRA!3Hq6K3op6G2Sx3{r8(}%WydR{!pYW%2%$8$N8VC%)ph}X)BHJ#IMfz}td7H{fl-isnS z37EG8B0NH)KW}1h1c*{Rx z-1A3jC+&W*k5ZL%ng1!#pRZ(+7-jPSECA5P2ms*x^GbTySUOs={`zMBmElZJ$$6Ov zzw=5Py%jWjyX+a+Ds`}MI9G&%*(4ELFRAZ9uSUK{-HCGO+8t=RTGNMk(AZZ~DT;J3 zeV^_`(ulfijL)zbNw4O%-LJGn12;%{Bjnd*tbX!&Ka3ROF5Fe|{!(vC-5Z5`y$JPk z@UX!*_@RG}@C)QED)p?)VFSaa{d~1yGh#J7o;SQ~^F(!b;}#-@0Yh>#OBh9$Bot_* z1;dgQ`z#))fEo;!Fh^Br*RsOwjeduFk{7l#w>kyC43CUm=y?bUaDO0;C+qxT$4uOS zu-wp>l_<-Uj;77$n|z~jJzCtZfWHt{;5d9w;=?8y)(Z*kMnSiv#sA}jJiCk>RXnyN zbH3u__db!VXJY8`I-mCzyztL8Z@+&Z$*{F8OXq?)F{++F)SPak+n8)Dlw!KU{{Fgr zT23wwvY!hk!D9sIwkn<$G~nVQtTYaGy3^?`=`G$_yj#K9MGt(sPL!`Whwc_sfpy zHiQJ}R>De;XFeaC3T$a@41(@E{4jAE_C#mMG1>A#R_qE2b@l2~)$eCzGhez=#+0z) zTI9o#sn4bE*RLXAFTj}*=3>;-R3Rada`;h;H6!+XOqk6aJKsst30y{o%XjoA7S%P2 znd|hw`MR7s(NiwNYV`be>+{#aYSMcH=q`kNSImd)JJyHSw+z?&H?N$t{Tcv6iQVe~ zw+BteT?T>Zav%4rbM8+!7x$foAJ4<+q?%D+!{k-~zTv@wyMO~#6-MKF8p1l7JSe