From 17d439957190d8df6d741d36b221c984659d4054 Mon Sep 17 00:00:00 2001 From: Agata Firlejczyk Date: Fri, 25 Oct 2019 14:55:14 +0200 Subject: [PATCH 1/2] Add new command to run Magento indexer for one entity. #100. --- CHANGELOG.MD | 14 +- .../Command/SingleEntityIndexCommand.php | 179 ++++++++++++++++++ src/module-vsbridge-indexer-core/etc/di.xml | 1 + 3 files changed, 191 insertions(+), 3 deletions(-) create mode 100644 src/module-vsbridge-indexer-core/Console/Command/SingleEntityIndexCommand.php diff --git a/CHANGELOG.MD b/CHANGELOG.MD index dd653bc3..501d6ac0 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -2,19 +2,27 @@ ## Unreleased -## [1.5.2] +### Added +- Add new command `vsbridge:index` to run indexer for one product, cms block, etc. +`bin/magento vsbridge:index vsbridge_product_indexer default 1` +vsbridge_product_indexer -> indexer code +default -> store code +1 -> entity id (in this particular example - product id) +Useful for testing. + +## [1.5.2] (2019.10.24) ### Fixes - Run `vsbridge:reindex` command only if all indices has valid status. -## [1.5.1] +## [1.5.1] (2019.10.23) ### Fixes - Fix Notice: Undefined index: value in ConfigurableData.php on line 254 ([#139](https://github.com/DivanteLtd/magento2-vsbridge-indexer/issues/139)) - Switch indices when all types will be reindex ([#138](https://github.com/DivanteLtd/magento2-vsbridge-indexer/pull/138)) - Change method name `AbstractEavAttributes:canReindex` to '`AbstractEavAttributes:canIndexAttribute` -## [1.5.0] +## [1.5.0] (2019.10.18) ### Changed/Improved - Change method `AbstractEavAttributes:canReindex` to public ([#136](https://github.com/DivanteLtd/magento2-vsbridge-indexer/pull/136)) diff --git a/src/module-vsbridge-indexer-core/Console/Command/SingleEntityIndexCommand.php b/src/module-vsbridge-indexer-core/Console/Command/SingleEntityIndexCommand.php new file mode 100644 index 00000000..8bf76586 --- /dev/null +++ b/src/module-vsbridge-indexer-core/Console/Command/SingleEntityIndexCommand.php @@ -0,0 +1,179 @@ + + * @copyright 2019 Divante Sp. z o.o. + * @license See LICENSE_DIVANTE.txt for license details. + */ + +namespace Divante\VsbridgeIndexerCore\Console\Command; + +use Divante\VsbridgeIndexerCore\Indexer\StoreManager; +use Magento\Framework\App\ObjectManagerFactory; +use Magento\Framework\Indexer\IndexerInterface; +use Magento\Indexer\Console\Command\AbstractIndexerCommand; +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\OutputInterface; +use Magento\Store\Model\StoreManagerInterface as StoreManagerInterface; +use Symfony\Component\Console\Input\InputArgument; + +/** + * Class SingleEntityIndexCommand + */ +class SingleEntityIndexCommand extends AbstractIndexerCommand +{ + const INPUT_STORE = 'store'; + + const INPUT_INDEXER_CODE = 'index'; + + const INPUT_ENTITY_ID = 'id'; + + /** + * @var StoreManager + */ + private $indexerStoreManager; + + /** + * @var StoreManagerInterface + */ + private $storeManager; + + /** + * @var array + */ + private $excludeIndices = []; + + /** + * RebuildEsIndexCommand constructor. + * + * @param ObjectManagerFactory $objectManagerFactory + * @param array $excludeIndices + */ + public function __construct( + ObjectManagerFactory $objectManagerFactory, + array $excludeIndices = [] + ) { + $this->excludeIndices = $excludeIndices; + parent::__construct($objectManagerFactory); + } + + /** + * @inheritdoc + */ + protected function configure() + { + $this->setName('vsbridge:index') + ->setDescription( + 'Update single entity in ES (product, category, attribute, etc..). Useful tool for testing new data.' + ); + + $this->setDefinition($this->getInputList()); + + parent::configure(); + } + + /** + * Get list of options and arguments for the command + * + * @return array + */ + private function getInputList() + { + return [ + new InputArgument( + self::INPUT_INDEXER_CODE, + InputArgument::REQUIRED , + 'Indexer code' + ), + new InputArgument( + self::INPUT_STORE, + InputArgument::REQUIRED , + 'Store ID or Store Code' + ), + new InputArgument( + self::INPUT_ENTITY_ID, + InputArgument::REQUIRED , + 'Entity id' + ), + ]; + } + + /** + * @inheritdoc + */ + protected function execute(InputInterface $input, OutputInterface $output) + { + $this->initObjectManager(); + $output->setDecorated(true); + + $storeId = $input->getArgument(self::INPUT_STORE); + $index = $input->getArgument(self::INPUT_INDEXER_CODE); + $id = $input->getArgument(self::INPUT_ENTITY_ID); + + $store = $this->getStoreManager()->getStore($storeId); + $this->getIndexerStoreManager()->setLoadedStores([$store]); + $indexer = $this->getIndex($index); + + if ($indexer) { + $message = "\nIndex: " . $indexer->getTitle() . + "\nStore: " . $store->getName() . + "\nID: " . $id; + $output->writeln("Indexing... $message"); + $indexer->reindexRow($id); + } else { + $output->writeln("Index with code: $index hasn't been found. "); + } + } + + /** + * @return IndexerInterface + */ + private function getIndex($code) + { + /** @var IndexerInterface[] */ + $indexers = $this->getAllIndexers(); + $vsbridgeIndexers = []; + + foreach ($indexers as $indexer) { + $indexId = $indexer->getId(); + + if ($code === $indexId) { + return $indexer; + } + } + + return null; + } + + /** + * @return StoreManagerInterface + */ + private function getStoreManager() + { + if (null === $this->storeManager) { + $this->storeManager = $this->getObjectManager()->get(StoreManagerInterface::class); + } + + return $this->storeManager; + } + + /** + * @return StoreManager + */ + private function getIndexerStoreManager() + { + if (null === $this->indexerStoreManager) { + $this->indexerStoreManager = $this->getObjectManager()->get(StoreManager::class); + } + + return $this->indexerStoreManager; + } + + /** + * Initiliaze object manager + */ + private function initObjectManager() + { + $this->getObjectManager(); + } +} diff --git a/src/module-vsbridge-indexer-core/etc/di.xml b/src/module-vsbridge-indexer-core/etc/di.xml index 8f3dd332..c6850c0a 100644 --- a/src/module-vsbridge-indexer-core/etc/di.xml +++ b/src/module-vsbridge-indexer-core/etc/di.xml @@ -63,6 +63,7 @@ + Divante\VsbridgeIndexerCore\Console\Command\SingleEntityIndexCommand Divante\VsbridgeIndexerCore\Console\Command\RebuildEsIndexCommand From 0d7f299f06ba5da5cc7a5d4354c247b886ebd840 Mon Sep 17 00:00:00 2001 From: Agata Firlejczyk Date: Thu, 7 Nov 2019 12:05:23 +0100 Subject: [PATCH 2/2] Add support for visual swatches #15. --- CHANGELOG.MD | 57 +++++++++++ README.md | 4 +- composer.json | 2 +- docs/images/config-catalog.png | Bin 91778 -> 98982 bytes .../Data/CatalogConfigurationInterface.php | 5 + .../Index/Mapping/Attribute.php | 18 +++- .../Index/Mapping/Product.php | 9 +- .../Model/Attribute/LoadOptions.php | 90 ++++++++++++++---- .../Attribute/OptionCollectionToArray.php | 8 +- .../GetConfigurableOptions.php | 24 ++++- .../DataProvider/Product/ConfigurableData.php | 8 +- .../Product/AttributeDataProvider.php | 31 ++++++ .../Model/Settings.php | 8 ++ .../etc/adminhtml/system.xml | 4 + .../etc/config.xml | 1 + .../Index/Mapping/GeneralMapping.php | 13 +++ 16 files changed, 250 insertions(+), 32 deletions(-) diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 501d6ac0..30829102 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -2,7 +2,64 @@ ## Unreleased +## [1.6.0] (2019.11.07) + ### Added +- Add support for Visual Swatches. ([#15](https://github.com/DivanteLtd/magento2-vsbridge-indexer/issues/15)) +Attribute options +```json +"options": [ + { + "swatch": { + "type": 1, + "value": "#ffd500" + }, + "value": "60", + "label": "Yellow", + "sort_order": 12 + }, + { + "swatch": { + "type": 3, + "value": null + }, + "value": "105", + "label": "purple", + "sort_order": 13 + }, + { + "swatch": { + "type": 2, + "value": "/4/2/4245592.png" + }, + "value": "106", + "label": "File", + "sort_order": 14 + } +] +``` + +Product configurable option values +```json +"values": [ + { + "value_index": "50", + "label": "blue defaul", + "swatch": { + "type": 1, + "value": "#1857f7" + } + }, + { + "value_index": "49", + "label": "Black", + "swatch": { + "type": 1, + "value": "#000000" + } + } + ] +``` - Add new command `vsbridge:index` to run indexer for one product, cms block, etc. `bin/magento vsbridge:index vsbridge_product_indexer default 1` vsbridge_product_indexer -> indexer code diff --git a/README.md b/README.md index 541ad12d..72c90abc 100644 --- a/README.md +++ b/README.md @@ -185,7 +185,9 @@ Go to the new ‘Indexer’ section (Stores → Configuration → Vuestorefront Sync Tier Prices → by default this option is disabled. Used to sync products tier prices. - Types of products to index → by default all product will be exported to ElasticSearch. This option allows for selecting certain product types that should be exported. + Types of products to index → by default all product will be exported to ElasticSearch. This option allows for selecting certain product types that should be exported. + + Add swatches to `product.configurable_options` → by default No. Use to export information about swatches directly for a product type. ![](docs/images/config-catalog.png) diff --git a/composer.json b/composer.json index 0881846b..eab330b2 100644 --- a/composer.json +++ b/composer.json @@ -6,7 +6,7 @@ "name": "Agata", "email": "afirlejczyk@divante.pl" }], - "version": "1.5.2", + "version": "1.6.0", "keywords": [ "magento", "magento2", diff --git a/docs/images/config-catalog.png b/docs/images/config-catalog.png index 9638ac4d2f4c8b49dbed7cb547a9e526a62e2b40..7013d70c08d4a3a1a680a19ec8a62c8fc7b72434 100644 GIT binary patch literal 98982 zcmeFZWmKG5(=HsKafcwmgA?2x0trr#Ai;tLcWvBV10)335P}7_;O-Wj#-(u@f?N03 z$;>?OGc)J+x7Jzb{Rg-0UA3!fS6x@_j#5*R!^R-Pc=YHIwu1c2*N+|n5Fb54qD4c2 zUpZ$r!G83J=8?inDNRqq!(}5YGu?d16(p?9Wyh2fWh3fp_wXcYJrV2z+7K~Z zxj}>*X??7yXUbb%@4GrKUnn)Khq4dW+YJYl8hF(C2m9|<*IpUs)Lo{`I#$$OwqNfA zKz9OUInm{xBNDt11klqU{Pib_^qLVf8fm1r_EU!cx%%e=_6W!bHfaBNgPtY`fj|w9 z>-op>e8qo#?=j#j_WxlN`R7s{kF@HepZ#axzviHZmn-nEfeA=y;6o#6E<7vw@5%o0 zj#S{{-$eL*)i@CF7=Wc_Ui$Ul)3wD!gq~8v)NlWF3jw{wJP3Y!#YMPI^e>hCH8Z%P z9>L{D`PW_oa1m`} z2u_94K2^*gv9F)7J49^sJdi-b$!F|sx^ens!#OOql?YqTK9uWUUGor{9=hl^EfvKQ z6w7~@8Ku+{*C(aQGKMMycQD|9`4TKz72ScU-2Llg{^B(q{lg4w4U#*+Qx*;uFJUA< z#eYVMZ^~=lA%S`+Crf6A0v#^4!Pct)vlQYP#k3z5$U6n@`N<@Q!2(J>$842*4@q{{ z1g#dyw~N7#LJa2nEjfWtsB##0T}}Aq6hA20IV|WHB=EXV1|bxAlRoZ}pb`LkC1Myu z>@7y0h50^-0S$kC2zGZeAJrmH`G>Cu%@H;B(d4QK@O5vFzO`$hK4m)=UBW-o=LuQ# z2-}aB8aC}-cUc$u!7YG+Z$SmFQVtkP)^+6zBFg9<>s$+Dys!y-1FrNrb5vpaR?vN{ zij9~)-O%v$kkpv6S6E`U=IDj^-osT|zlcqZ8%!v4<~SE353>jwki#A1?c8bVX%cym zEmv;(kvk)vQs8%~A#S59&6}{`HuAH#z}oJdB164EkGBKdQI%k+Rw}Rvv!H5MXV(yb z!T3-MWSb1~CaaC>7D!htE7zT3-Q>tp-K%8^ZPFJj<3vb(KpIaCuatl6{38^%&>_x| z05mlK7TRBRmc+ahdw_j>ZUuM@qzh|W5KpgRX2NwQvD1V)(GS}%11HXg)>%-5bPZGq z`FIgr0bN}@oIo7=Q2iA-dQ%NlsUCEx=QZi(!W5R9TI2NL>-wJE&Qv!PsNFjUG8?#b zW%fs=Rah@<8!S`X!=lDr>2H@8S8)-S*jnW`Bu9IgljCJ|ycT%FI$UD*p_k(Es1mgAyqe*m&PmWry4q4)Z@peErx>6k zRJI#RoyrZT=G`ThilnHr*SrzU38IyCL!a{#7CiZ5uN2}_i$GCFB!JWxhnB?GHkPTU z%};}~)#q8>EBf}%9y3oFeU4H|?Nx5QS?bV^MY zvI^4v{^G*u*tBWeoVz-5)gHnt*{<^RCpzvK%Ge%5O0Yv&+$(}fb3=j5C7%>VK9nM_ zc{1>M41da}v%{ryu=;$=D23#DW)FW?u~Y{!SQCfy>}*P?9Hp?XNNm;4IL)&sCbUB1 z)0g!Tje1$gPZ^%BE&1f5X+&36{rO`?1-Yf8UK*t;7UDJ@rxm}R*Tz^e>V>bF)!f+$ zelnwYT7IJ!QTtnTSIITEn;AdfS0V?z7L7w_{@S zXNR=Eh<`O2y?$IG4c*1A3Ta5jR&X9go&5rNXU!BH7&pD1DN-cFqKTCA0dkl09870gl6ZMSl@>k;?{*-nC zH4T^Lh=tUA(y`1*#BN^9k(@CT4T2@_w2%cj*~JA;$pY*y;;VNLL)ZF;?H0Z$fb&ze zCP%_3(kP5uQ#3;Iq zy}~dX8xkt;{qAs=;=AH*s_gDh7RpbPkgoG2??JjAMkXb1@}${P0H4vfethU}FOV4&|pa41J!zS+$URP72%A)VRl(^FFn3(`O zp_n4mNmk=^?#(Qr*vRGrrdei8SrP8gbiA&Lmrcj4mn=YyffDPamOsD_RHX4C@)i5Z zM`x%Ub9RI_B=MiSdVB{z3c^I0MI*Jrms;C+7a$Kecl4R%Y8g zT)9ft7D%EG*$DQdrq*Go!F$(K8#5|CdT!4&yU&;w_sWCo&3=IFS6pFG3{6y>%Z^_6-a+%-<^ta_0Ui?eCT>egPAstj zWx%l(DdEcD} z>eGHUN6p1EC~kYWGiRZ~?a>E91gdWrv#m{5Ykau*CSN#s6E-f!(e0)F9?m;(_0|?c z0+HT^c#n1*PT_zKW6$-O#=dIU)>dYoUuBorknxj+3;*aClXom?wpIgKcbqU^z6fZ1 zE-r|@j~$ZI>tRRkQ-BZ-k$8%KIq^2Sqoq!jk>H(|YvkU$_}$K=yMEx(ihsy*O4#}& zU4Ovg@~c?ykiKtw7G^z*Fa%#F?^F=)D>4+~gTb8k!1yPeZeNf!m&N4!&<;^aU+otP zVPYDc4z>2oDFj^YJ+fE^4*SG^Z=J8&UH)g(nqYMb2@a%|?R6t2`aEuinDIN^;2t^r z^rY)35l3?3(~W#@alhSns?+ArkQ3AJx->$PEX2PqHBEWp* zM7}zEk`c(*)$&90;A8v-DqK&q5@l4{zt!pIif>t4Qh^O0HKMS*OVBG~mZ>cPHc21ifBQE7G{>b|~W`IPWOSATj zwRxe(DyUcFB`odkP19LM&CwT=Z$-x2q1%`aV?q1!|5d2}`V%Vh~Jv2}+;!(m-gN$QU94{% zx3?m^yu2Zpxk-OM`%P+X6$%O%o|sU(Yd`RPm@#@Ff}P;PxF*_>9|H_5F{j&pd;OXo z9BVYdZ1(sA%|zmW2P-fi94izo;&7w?9nDWt;E%L0SRKj!;lvYkzn?+<&odpb@U6(E z;}~De;+MSGwe;XXoA9tT9)?WMkQ&b{ z?Q~Idff)9d$&)6L8ri3@jtjD4B6lFd~3}V}2eBnkQlO zV)&mUn8Kql2iW~1L>tfP`rZ#nx^Gn*Zv#ha;yg9FsK=1IdgiSuj=7j|| zvnO?%*|6Z*bY!TxkVPBE^5@GqVQX^dWr(}BlrItEOX zZWNe^^@RQsUMk}Qp(0HuSUL9JJ8`Ng zKy$@zLbk%}HAs9(ARN7!Afqm-tCKOiN8o&o;BES-1YMGMJOXFd!zv|ed?e9XjP|NW zWn&DHJf6X@c8-Qi&QkeQcd$Fz01FhI(8N!UYxr46&%R=65$?zF*%GXOY`l$`a0LuE zz3nZ6>m{tDo&|15;T>KfkG_5h0pvJLlDThYWijlYt#LU<3Sz#L@RnZ@=sfRX26uSP z=hapzbl)L|?QX4aiaO${acX$#<{OlokYd+ka25+)inKAIBJ_DAN*BK@v@t%^o*!{E zNrS`7o`>>y#weuJH3qFd%*wm5WX$U~`OilzIK~?K27X{BLGjNnh1ZM6zbZ@8k?+0L ztJ3emL_wG_Ga0xE4t$fM-j`KbXYO=&=Dwlfqw#qE9f<_k`G&ZmXnB4yVrF9ojKUy- zDXlkhVm3PT!yBWWUv7XcL2wY0cb>T)ovrLNT3=ZiH5FTh*E--qPM8_ZGfqR3`p*o{ z;5D4=Vp#vSW`=?I?U7c-hd_X#TrTLzw+nb#JSjTNSNu^xzVNl3-SGq&l_hr~{Vp5c z?Jlo?98;rhJQKtVy9qHgL87Pvl(ym~z9I7i=xgrFtIy1os_&`d?iOsFKprt_e0Jk1 zAg79pSdxYuJZxU(z`26XBv3z4wq<>RjcD^Z1nB8~9)%u;mW+$3Tq}n_x<%_M#u4b+ zHKuls#5!YJZ;0#)^%mozsx=yE#HeE({8Fx30awWtvu z*SmP9RDO8?vFD1@8FSVym1={s7E?p(<}yvLkK3$5@KfB&V=HW`mbEDNG|`08>l|~C z2Ghu!8a7{tj&^)tTHFN$_lnPu?+e_azG~kMo)&l)f)QemN zZl2zUE>b1Vq*TFH(F&1;2}-I@jMri$miq&mo@S!G-C;yS$Ky9|m&T%n?N&W}Q@vqG z2PzEAqB`)kZj@w$t}PetKE@<35PvZ}+~e!&Ti1>oVqg_Lj`Iq8*CW5F|5F;?5fh$= z95tz5NMLJqv*!n;%B$M;F*8DJi}n!$D%;m8?077VXt!BdAd1Fi4q27&3WiFAjc1QH z9g;30?~D!ogyRDou#f!|82K(2r8-tNkupH&U~smEt0ZmKiAj;dQ=Z=L;AY2G$`XCE z6qy4u*183xiWQ8~Pm!y*RkJ5aBQoO;@524vR|L_lPzhLTkHt52tqv#102d>Oz-Zvj zTi^Y`Q#Y!3`u`nJU` z?<>q7i3(-YEMLw@%^dni0MKIHoAL#s^isaK~JV@wXb+LWS(8>bOZU)F_|d5I2jvZp5hLUJ2SQ z`4RLwB9%_bnjGV(+7gP%bF4opc^xSU-m?gqY?BHU{+X+BISWVKN1LmTw{)Ww8M+nkA>Wjp6$~^j(j>l>v%__(i)B^i6v>A^_H-VsBb=v0deZ%1~g%|Yx zuF^2uc(i#;#F1skqTrEoO=tFBumGPDw*_%qK7Z9ffeh|t9%I}-vDWa*J8LxXF!Re3 zndlCV_+FCF-!Tz2F51&5H z__+LFkF%Q2m=e#mFo3V?sod7ejoHwmGy-}p#&M?$;fSAGQgMYrH59SW*f+&=RM*S< z8mVuhha8Hq8c0Z-x2coe#pzt_;vSs|WoWuO=c@|N+qhktyWZ(~KkhTTOv~VRNg%mq zYjAvSI#zh^R*dl;Y5nMYq{^y7^;rWz zAvgSvs)M~{9Z=PJgEdM}C5q{5-iR9qDE>l%Cc%D0-C*t(ykHfp1}Q-2bOvXV0@yT9 zyobtCeCek;A1d>V@QfvRc$(GoO|jOUd{Qr)?o?Qtde;AweNcbyFb@d~xPm|_VdJoe zfGn$@)KEDXH|(bobl5fHKgoB;$jC^Oe43at(fokQ|4K?)My{pk#@ca)vpRs(*71r8GwWWpv!S@FKD4iq|&kFcP28YH>z!b~QFnF~+)NhBfh*DH#EY@x=CK_`V8aRW6bW8&o#T z+QfQeBeB-wAFSUVq9Blu$!!rx;Am~HIP2TRW(uKhn92xoqotN|wI5sZlI9;OC1QAl zCs1G`?l+;is@gU}Zqh32=ZA_08iMJQ{co{^n&vzA{)B#lsK3IM@hEvS;94+Y{w4tC zrfhM(3fIML`vZgsU{E>AjMhk#y21h9Z`W=CC7%&_%ND6lX`L&-nzZ7X9Gl?JkqDb6 zSG4CtL7X{K!bGMf=BN-7&d9bfo=h@8>H%)52A{O~J&Wth?nIhgO1+o!Z}phK3o&dX z7c|6Q$1J0$-*#*qh1ewgnHrL_oQOzuz~;W5ZLNxJG(*}zoS-{M`?%?KdpC3wwkEwj z6ZuFD&nb_wK=4=b)Myx_$I;cbDHc8&)oqbC^Y!)elP=-ANT&5cpo5h+JLNkI^BC>n z;Im`Gq@xS!Z%}t_JT8Ug*LLAf<|&%bI-DS;LEzwoAc8CZPsSxoK$d=AF+29UxvvvS ze}W)En}`*JfK+`}*c7a@W(!u^zTW;&0kwtJM8WR6rZEuVsYm1F?(aT_Z*M!kzJB(m zm>leeB#QItAT$iI;z52~EYPBS#G){0X1#AYpst&@!8uJZlM;~1N}3Xh+|`2d<$9@l zBuo0L7y;z$>x$jgOPZaX<;Zl;b{NW>nqW5lpQ)H3R*(Zy$?sR8bNtY&Rln|t0A7W) zl>k>3b7TZ~{W0To{`5DV0k;ct9#7i+3~1Osb^B&Wj&H}^&clH43UGzy5mxl%Biu9W zRL^O2M6Q7_OPwcr8@eM?+3_YH2-!jfPQUzcn!s`->0Bj7e3A}e;kJaTP|jI@J`IAZ7@G%)f4V>1UB66i6W zA+`{c$c-N^SE0b&x5rn56neIL0j3HiBv1zz><7a za^F3kn)YNz?v4)8!3xg_$yPbykM$&IEdIU0|8n*Jk_`tHApi<~Q@sS$htk#_Y3)GIY5jE3A`0-H!UCs_`-@RZrs=Nozcl~PA4SbK|l3I)c>*|Ug@F%Mi+2BNE;vurCNm*4mAYa69(K2a|GO8>W2rM zR-{p>Wx8 zhChLh=zngF=Q-a|whK8Z;-hhog$? zR=R|15z|SU#D9X$!GRf5D8DT5`$Xa|l({kJmzp84d!N_sH%QG8+>Bx5 zt`pVkn~{DY==9lj2c*RJ?8->P4h`IEYgh*TyBi6PA~+JRKXx zt|V`e1MbeK&-@>7Kl`60oOGf={9qE2-W6j$l6RsKv(tg(^Neotf4clI9FcC!1Znvy zN_A*`waNJH@LY&lG{*GTEYxjA=9_b{0o7pM``SC^&KEJLR4ixk=+}P*X;t-kXfLRM zv~P;WLyvsgKo8kh;j5B-i@8??s~L0z4nH=L0=O>9f`3T|k0Rd;;o6=d&jI3MAdayX zUj5=LNace>V6|J=XdgMO1U0@FR>zkVgSp*3v12ycr#JO!J!3Y-K zmD9GqG4%_8qU0{D00-^FTWf+y*O9;gVl8+E)Bl2-o~?hkRiDABUs~YM`&I ztLtr8^}kEG{IdL~JoHXe0RP*m93BY?|0$e|6@zy{fJ%75@Mza%$;OMWpI6#s`J z{+lj1nf(PB^4lEA|GDM;4)ecf;`9KY$+vbKH^A?I|GQl>sDTkKW4XGm+`n%fkicE| z!9AA_KJb5!^vjd^e^EkldZK^Y|6hW@ZyB`1tNDWpB+8(Fz9hd^4!00b+v&x`KW-VH z0Mcc%Qp^Dd6S$ubM@24X(dcFy-cp6=)dlr}J%{fcOsDmAWXm!&!vtI7IlX;J{9reF zUA+g8>CHwp(U$AB@i$)t?>Gt!`+0a=OhtWae0;j~o7MbU*8N~>g1}4uT~t*k8Dvd7 zCz;B{vfqO)83b7fck7u2=k~9-zITt_6MND2=y>jEiysbt{Ujy4LQ{#S2>(i=AimnO z|F#F>4fO8+#LGJnj`$%&m-d+MC@-Bs-Gks~oI7mdooKV-poCI~U(aEB#%p#GvpORB z{Thu|$Wf%~Kc4o3M4uJNvo$LBuJ?dX2(e%N{Qm0v9@U6`V{nbV=k)wxg2mkznq{yj zifMwYYZT-OL!?-^BKokS_Hc8OShydBFLrS+`5?5Ph77LX8Ke@e3e-zH|3Z|r8g`)v z8j~rhdpXiDG+#px&2YcXDa9+A?Qg1g8g;ZuQINrCG<~{60@W)?Qu^pTa!V?@Su>t`M!wfx05wWIY+6rT_k&h&%*bQv3+Bm@IxmWUv7m)1bi8ru<;|p%@c7 z-HmZ`Fzj#iZI$y%*xRe{tS&wB~seC;cImLGj(sEqlHOOuLOf zUJJi+nl-Vzec)qRj-C-ENlw#j+eUrw*@P3;U7?%?k@1_h102NoS)=j~W|nRkK$xLw zgXSlAe*EqQ<_8OnmrUgbjv!%6$l`89H{o zr)>tSul_-< z3B;ZK>Dl3}pUBU!Sv`tk&=bgg?iyk`JvfxwesqA(H!{dX{eiRhCa&!xUkhXTGoQA= z4!$UhRVq%YZ+;YQq6U!8(1yJZD>3O@zua(j_t_gI>x~mDOb;4$aD;V`d3dL}q+Nxm z3dMV;b+M9fcANja!NATyN|=ji8q{Oyb)k67QRLwxWjFA4FIj}ar_FXktr|i$ z$V0Q}nWA0-(d-5_{+V%zGE2%w$OxfcTVE@61uDNYo_K$^&o!jguUgN5m;L)6T=jLt zsbtBKwc`(m#lRNj@)Ab*(IE;D=R1p5WvF%N$M6U*h|uN=OJ5n&Tw0ai{k0FO4(T=p zLk#NpO1Y?6hBW%p5zjO;5t-1kw&DVtc}Bv7=8-8K;>Z#FQcLpD^CH8sBu-81g}0tx z#D(-gkE7Z9iVTkG=lo})-<4icH5|9kHLy6OeAU#~$s|PGS!A(qc^I^ado7__g%PiS zo1*-_r2*c7^>Fn>=SXF#LA+5`PrN`U-HrsKb_w;U)H=H~Jh}K-*v4*WAblroCcIS~ zX8yP#z(w-@;7!1+OA2L#qa@nyDoQ-O(cz{}Do?X}<9u!9?e@CI$#rDl5dhk+y|G7A z;Q0M0)!ud>t~H%OU&8z0V9tYr&z9k580}0rc2R$e#|8a+pSk%I$_C31(z{;3mmLeo ztswq`>r1OJ*v;;Z`GPHK>xIwO;%u45%F<_p@*maTPdvqi7Uz;wyd2_Q6hDX?8&dlo z**@QKAG@_`uTyj`cwUSm5J6rsZg=-kp+35ZTtQgmCwG20x8jqv?~|?1Y+f3Bdl?*< z+_r;N5+)Yrg53@7*cPZ@(B^UpMe=Id6VfQcdLtr=);Pj%l^ZbDqP-5!YKU_r*nYGet?3&?{fNBbWDLF9f8`g{VI_Ir_w@!bbuQR8YAfzR0{>dsmz8 zI$tf`3@*}r9u-iF<*5T(h_4@nzcAl`5>X7&ugC_?(A~N4{a_0<+Q1sy`0~=GE?P3J zW6rf`ex4)AD5hrd*f2A; zQ@*SPqF=0yHl;$6Pycl5S365nJHEG#N5n(6sw}VQ71FxhRqQswl)WMgCltkby5Lp; zj~MdLMk&s0l<*L|)rIN1jmC3OZ8|+vYhXb$O%9lrM}2X~W{w85tR!8)3vww!T4C!? z(-%m^9^c^l+4D)MkxC{l$L%m8r2oJ%)5a~jrQ-QWW{H}3F*XGbV#yv&UQ4pEQ_{L# zP{pi3u}aSXWg3~HZXp*L10{Ebqu=6~Q_x!X zr^b;>af5;ru@GlYDc>QSaId(xeJ7mtVH^#{Xn)JW$5kj*{nd-rO(fC$CuUAXk!{UZ#-K>W#!7{DH2eBPUpkMmZrZ848 z&Blm)T%Vdx>Bv^MmvZa4F-*2QnrW?b<%*1``)%`p`^EV-UqPx;KV2P}NDOr~JLsXJRw-&&#~SW<$TuVXgB zRPZ7yLtjvY=Xb{6NE^f}TGy>B?TY**rxzDDuc8n=oQ%y}y7mqk{PumCSR08m&co#% z3IcADiZ&AGX`z|t2;S4`=aV__o{<>4OQH!G$k!BHy75Wzs6FNRXemNcAa2u2(civL zlXk-EvgoY2aZURwe*rBk3K!J#FdWPH8gPh8IW<-m%HzDsQ~%OCK;$Lpi(3Lo)!>Wu zzBG#?8slhw%kP%Z`#lXLMnX{`axE;!d{El1POYeZq3&!!mYEfC!IIbU#xSR>mq<-t zPYpoAH8f;Fco98WnABymsMk$|D6SAIuc}}>Lb`{d#Ct-4ugC!)`0zOy`tY>6^#HLJ zW|+;?Od{(B3IvLeY2Iwnbev1HR511qV5NbqHvvU#9 zp6h)pvn2{bwt4vG!OKe~j2wQp2L1jTbb~asn?X|5dz|o*`t1ZDD9a0AAy`sETcmzGvX=#B_ZY^#qVP-KWojm`A3xAP-D+{-{aw+^fy=U0mR^ zV&hajW|^&te41AK%X6IK1>*b^re(G5t$P1PXvZOzdvM^?Vqm%DyI^5EiFiMl*ik4G ze!g6AAY)VI6P~R|Ag8=z^-(Rz-#mM1cxx>J#^Uz&+o40|=120#g5la)?UAilfXxR1so|<}oQY1U8DhZOJq3 zXPf9WF~CAP-s@#F9kR5?Pst6#oxY0~HMycm5dS2ms6Wmsv z6C9|5>R!HQ+@2~Mw;Xj{)!Y&x;%YhlUlV*NeETL6aImb%GpXadvDJa zbl{6>w!C5?t%!%UW6$z%R~EUYEGE7;rXJ$aKD=GZmjZj&(}^qsuS&xBUoQ~ErKI6# zvFPp$rWLS{s2zS5FpOIpRDQoq{jq9JSVDq7w<*iSOL&Ir_&5Wb=YSh2_6!w4_Ng=% zuL>J+hsl;F#iDT+#iaAQhq&aBUxs-G$0evFRqw_XDw1`tLx0|P3STpVRCdI6?e)d& zS0}BRQ0iT-T5&KILuC0C=zZ=TqM^wQyw)3k8S+C2zXoX(*TsL=Q zE+*;?Ygh|bqkODRmJ4g8SvzS`TWogl5lnb1sH#WT(UL;RVF`pW85YE+Y}N{xik^yY zT>FoD9GOiyqNvFo?91ahEndacy?jQ-q*2F>k4BKWlEE{FZb4FFQk@9peE_+;fyodo zDKh*=TGW44qaQTLlYbSeK|rb8G)&i>Ldd{|t+{F2N4iq&jI*a2Z2g$A{XC(1>R+_q z`Zlc&O61l0&>{YKN>NA}G{c?0BIayXEMDscLoEydoN+jP#;2{?vaXPt@aeA?|44Hg ztsa4$;gg;lP+g-UwfA9Ds65$?56udUrn-H)?Jdjq!Sq_Y-_zrBtYyZR(>Ddj!!0Ae3two)6Q>N0C@MWq+sYS68UEJOwf zC2uXj8xcKsmK_zfpDB=f9<@9D>>H;jYaaFS*VL?f;rg9BG4*x%8jq{0}yOX|Af9}HSRHoTop zz-AJV3mPfYiSoz)(%L5lsg0RhY<$v}S|E1`a!iI3o-MGgB9!R{*D{U@wbOJBMsG+D z5Tv4NdFd2UAbXz{VvOa|;SDwTjDLRydA7J_BVS|vBFe6IAGg2bJ(unt@`fmuPLkpvJCxzsM5#9*FA@*ii zMn{L7DG_5WS0Op?c%pxdYv}{)t1b;%0{L~{B>KjNdA%C+7jod2mjDDayX2Eq%YtoV ziG?S^PIv$vme3-dv$AA9M>>H9_z?y5bVJ8g7FO8@JI~iWVshF>JQz&W{l!v&UTg_f zeOKYl>8{E<%$_;;j;noq%(6&jLInL0z-()e8=8*k()8|CBX0%zhuD-&K>jP*;sIy@ z1#YVCJ7U@o;re`xIq${z9(UXE$%U)W@vx=3r@+Z+Q9b{f0O4NOxlXQ4{{&Pq5q_HY zS!-!G1@4iTV$Qs&krrKz^_$n!`jK@36CSgnspze=^Hj%6jz$R5AHA}B#g-?@U!{-c znT_r_$^ASR5j{8!Kf-xu?jNuicC#t|{wirjpKk57)blI+#LcWa%2*lK-dl@i`)zRr zf;)FNC&M~XuD!Q*T9}<~=ks*KBRE&e*7c%T%ejv+@fL;qBOhgWU5O>kW!f0W|KJ|~ zn1(i5SfGKFdo_Ioc}_n( z8Qz)9l+- zQO7dnsK1Q>cM3DQx4K8R#l?8#Y*VGiOF~`>4%p_%VG_pV#bg^wPkB#v7!I+t_yw7J)j?0x zDn9tCgXd*VnCM-3`qW}QT76M**5rc3_FdtE9Z&6*pQS$&o2IVaT!7`XfyJIr^nPj_ znw2VU#8^juX$4k@#p>DgqI2VyKovH5U*^TETX<*Rvw&NQ<$5?|SX}P+hrPz(e3Pp8uSq@OHNk!qy>hWXAy`L|DCY*@Q98SF7 z4-st#BL;69=QOWGP*Gd8ts1o0$Meq-CP|^rxP=br5tWWA4s%uBn$aU=2|xOEoXa`p zBxbX_a%)MIF-FsTCw zkdtDk#(qJ+l9;I;r!-e7uBi!rbXGGNX0E7>>XEKvfD@avXQZG5RIYI z8>uIU+N~l{3!|JMR4^nYu%p9NQulY^Ue! z}4s~6ym z?eX9gPmvHG`;tq#y2krhFVXK7hD<37UD3Unp+Cqhd?jQ@0z9GT)>45@`Mxj#Cm|hM zhaxXh-2;Qd$EDPpX` zD}DH3zoEg>Cc6T&?0DW;Cu7acjGaGKC5M}~L$b^3p!;w)g#b4Sd@yhKf|Ok_@tn51 z$e>^>Ad5@oCf=$#E9yk3HN?F~x>cg*-L-2M_*1{|@%Nl_@i}=wq@5o8ESc3T)?p`8 z&tg=@lMcp8rq_T`E(e>i$(Qj31p*>e`1#~oWd#COd>#C%hlv&BWN^4SLox}Di@&lz z`h$OU$P84kn4%yv*_x+INGEj<0l)v4cxl#&(=L*80BeXL`H^dgdJyRzfWUZmJpJ%W za`2(qaCv4XfsMyAZPSX(9jj(@Rm0+JRWAkq_VGn%^%ZZk=b$R=WwQ6O@qqVr<0A0m z?HDU$L9a%ob*9}v{$snfnjl+jY-Y>i#pxy=NDfm;HS4IgsOEuiQMTQ$4tC`9kR$h# z)_u0(!KLRy?5<_RXOU|3sVq*`yR16a+i$0p?a5=p0|Nu6a&FmPG+D0uClYtlrmJS6 zw{8CJ_G1YF(MJkN4-u5La-(*Z(#MnYi1CnD%L4)s=YPJ zb-KS(X8l^&UvFXDIZJ32*mDX=!K_uh^>0t@Uv4vuI}9+Ys~Aj+y0l8ToUi^qd9^q{ zwRUF+;&id|h8$qRSHbVaU&kj-`j8iaKTFO&(;llZ4KOET$P|bFczN~4Enu^`^@f~p zh+bMjv=4V__e#`BNO;;q{sB(6VxDlm-vsXIBGJg}a3R?)o4E0@u7jB|d2iN2Hx ziF~%FM$r{zmXOt|7IY47_|=77o@^WO2M-eDik8}Kv+2x3R3L8I5=D8n>;*0wK|Vn_ z(^3RPIREM`Ofe>P027J2+Bsj@(laD>~Hf~_lzL;wh&ZA zh@p>9>tZwX=Vdl0Que&>lJ@qJ0+DA5!c>cQjwCCz{4Vo*cd4DDmP-`DW$q_! zfw1+o-q-WF+vpp6y3g7Tm1`z{;vGKpyV5)<#47%tF)=R?m6Vmc>K-qLYH04ID!jWQ zu;|m4>3MwaBYP{XhO)&TRvA%N@qEd(u>*2Gg|Rr7AlBC-9xV5!uk0^&2lm1raVTw- zVa^STGvMW}$4vzIivOF->R3a6+~rwq=yJ*uZuNRpjNae`FJPnJnL+8N(JC$_{Or6* z6hT^xF@Mg@=20-Hc^4GN(^O3~zQr%bkk{asIvx)D+|iSi(^~g~z22Ge?HoZurpBo| z2qaK!g|5n1X#@_T{1kQf#`z1C)VrV|)9{6IWMajd&t};wMXd{7DXrq!w4R;F;5fTT zWAp4w%w1 zX^`el&^#9Y8wx=#qru&qy*p%i+C#7Fywa9bF|g`gW%QCY8rk?2Z^U{_f@Y3;{6HbL zp9R%-p%ZDZxMrBu%7VL(dPS`v5*U>V<(kH>J`sAu;h+Qa9}+LiQwwdbxSLkfc$jyh zjgO}=E?iQ4^Av}VyLgX;iB0)zk+o^n7300`ImlHUcU(vHqI~n@>rA@$PI+c3G;E=s z`tEo}6ki&3^UU2h)3Og2B6Oi_H;PCZQ!$PxZ2ZHuGN2%{;N9uklLM-Rs#kdchjC{m zc$>dRjWQBB&dxhg8f)P9yIL(FX!k8&$irq$dOe|zk~3{7d&?QsVFBSalaIrN21DKZ zuC&-6(QIn^$^?}kqfk?-dVYlV<)-5hd<&O{pTNKLdo6mT|3x}9Y>{?wPz;lWX>fNE zFr2G5pus%HWrt(nFoj#4_h{QVC6av1g}>hQ-5C*?Hn~TsS7<@wLo#YstzMMfOn8OQ z27f8CKuLT^y)J9gvh!N=jF45q4mRQ!fyM{B6z#m{b?zD)3q?4_a&(qAa(OI0+I`eMbar@zZ zV=zW)NAlAy#nu?o3e9pp+HX}!mFjrlDM;a&bqcSvg(QH5YyRNY7O)X-18@ywvT_XG zJXC14%7|RtmwaMrAu~6v?UHQ^?WOGL-+xjt9B)uDa$uYn)D6066V`rHZjaGRys7am zWYQEYtXl`ksR_9%0J|{2dw7He|NQZi74skmImczA4JZa1Bb{=+kCsJ6m9j5~;wX8~ zj+MI3tEqI=>S+VU_g9JWK!|s`u&R%e}ZNuz`mzzgz^;p7#o z{h{Sj{_aGZE1!Bs^(|!+U*-odA9d7cFjZmXU65{u;kjnil=U-;21&8Ma>`S*67RB- zP-Zrx;}VT3OnR#2La2nika0M1Oy@wN^EUpq2Rpu-zH=(2r7JnE(FVrY2Guup&+N{| zPc#xUpoIfv>=SV|#@Ppji(@J zl_T`}tjebGG?j5SUcu~AiJ&d9TZ1qbPWteK2UNXfDzppln#JqnOomDNI6hvqN&!DS zaCjGvMbu#pkl33i&61#awHbE?r&qe5C}M_8lW23Z2v=$g8VwGbj>;74C?ZGA1SPGL z-_UB~E8@hC07{J&4TEQ%D7INylgrAWcyVYC2HWJ>hrgs`bTN|8TfdNLU;K`?^YNWh zHGQeUw`Xr|@Ui|s_TDNiuB-_g4H7iCJB>?lcW4L}B)A4ma3{FCyE_DeySqzpclY4# z_BWHsd~?n}x99F$@oZN2-fNeydaJ50W3O6wQ&%rivu_?pFL)WiF6!AoHOY658*)xL z7DUb$qKN06BE72{P1BZ#8G{=~X+`PN3Pql;Ky5ziaMq-VdBU`04s*tM5Mpk>mkO3D zpG;Es|MYGHf-(R<2d0#u!fG)jjG~5=b|n&e5k_0uamWpC)B4^19n3lbyw?vrRSmJV zQyqaNlK648#?3y1l&(oi^gYFo7{%#MR0(66gt6h{R3d6C7v*W?r;M>(CD^jUd;*=a zVqpbZxjC+#?&1Y{J(HBcd}?G0dF!f;I^n9`_1J*G(FKkbYfZyKiTGKz`0pR*YDoI8 z;6|XWl^Z(;`gwUsk|Q=m^3a~- zeU$?ink97EyBBg4B4(@JJ^Sqk_RPCyI%Qua;)m)}mDRWD*dyW{qt9(LR{#z1ea@8L zecWA3kMB$5uJeTW8>M=iyMt#3teqkbt7xvL*MWjm&=+2w<2UN=A?v)%2RDCm}~k+4(&Byu+MnbDl}_{KjS0RO#iAWbP(5{rDH>yF`X+>P9?-b zOvrFLYG$n>1n3-l9xk)dz~hlUfr@YgQd-(^bHBs~0-_HTQA5n;Cv%!i_nIDE&!HaZ zf$ey{bkeY30Afhrb_~F$VCD?&&hg?bCk0B%gx(!4B7myeJ}7S*H~oa$)J;7E1aeWsD@KRMN6!}#VTKt{bX?s$1yk&tdQFbim`N>$ll}cns8hKmlsUbSvL96D1dRWKu_7LS?u9apKAMGOWccNb z(Juix{5m-R8kxnyuRw-uU^J5W+u3rmN?(J4?t~E4L#5=E_pq`tQor~YOyb3h41HKC zkjwj}a+|#5p0UY#A#9=~cE1HBmi+_*#xZBPqj>fd-(2L^&=Rb1qLC?n&Wb!70+7Rq zh6ffpSw7yJ-kGh!qAnmsN<+(hcfL2v*$#TI%&nJEc|&mxiUM*Tj2`-malE6ri|$kn zmkXj`p$bZ41Eye%ZunL)ba@WK95^Hl)ib_H%s;P71%E4N)B8*~nYU6isfu+_ywmtJ zNmWqOt;!QO#=h=sAp$wokYHbKR~cXA;ztcVaSJC@+XxgSnoD2xnxECN?P7NQd9 z=UZWthgYx8Ct^?Zh$ZDNVm}Vq3JWufQDmH1NmacNag{K!UzFf%RW939rHj103TU~3 z2Rj;8uVN6Xks7M=apCZ5Q|ZG#KUEHTn6u#rn7aj1YV{Z#Xl0HUFRJ$E!d|9VXW*eQ z`b)?@h)D?aCtdFKb77!9(;3u_qJb}@gb*x`1aZ}H_Z^e@3H9VSV5SzJeEM>{LWiGr zA~ou4g@7LO32%y}RaYT}3#b{v#X=i%wi8BeNx2Z&b7rNEdf%blc`i~Ao|15<)2>n z`@J!x7Nz14BSGmd#ZV17OcPgSs;`P;n*D^5=>ol|`KAa{O z9x@f}cz$Hd#)VklZ-d?8tivAAhK;|DVqfv#iR{wh=aO`593hO?*9;cRT-Qv83r?a; zHc~VEnEQEmNQ0}e?6o)pHZ0G(oT=W-9X zSIx6gAThM}GjNR}P>GLi61hAEWSPY(cY4r3hCUKFBCrz~6fv19m6lc%GTJbh)_yD%VvthUTw@PR&xxC$2|oIq`s&tLQD=+G z3-i|2nFx#(cHSL^N3gFo+yp-?x4IJ06AloD_hE9v!DQ)kU1b!k-Xy$;+lOX8ykNQb zBP{T#f@fxETD~ZV?BgFK;L*wxNuPGf%JHPjKMurq*KKe0J6WQCx@m2YT_a=5ywUZ* zN0VKpmRFeXjwW-FcPf=yy1~wqL?{n6)&J>8nFP*|gsZb;lW6&E?jD{m3N;S$xkRmY z5-iyV*e(>@p6s`!VYQdnFJaRMWX0=C#@Q}vG3#T*o@rA-1`ieY&bP;VdiA;G+0UK?}4hk`6DPk&!O)Bk~FtDHr@W)s%;v}ozxD%Q7TBghpti#-zo(XLKy~w92#KS?$eH z2LcvH+zL*s;^zBPt@+(zBfC|z7=iBB$05$u@EZC_Ek{7=|CqO{QSQB=Ne6TD&^EB(8 z$#AwkPnkfm4}b$hIgEqsC{f#3A(1eTllm#MEdpbdcEMxS&rXC6KB89S{1GQzcZsLX z-~65u75wqAA!f-reXW9R#C|Hs>F_@5JB^}r5IV=XZu*^r9JSoJ6BjrMWHUa)UF~n- zX-0y)U%}0s_}L|r?j-R8A|HQ4N0Tx>XgutB#*VQr=Ca>UUolsmb(cfjA-qlY1##c^ zWT&cK@aIdtbeW&8Ku`%Dzt$)UVxgXylQ0Y;p|g*MQ8e^WI1Q{C8S246HHIlODS)WszG98YDET5Mr$rS-NLcreTw>cz^KeHaF3 zwhp~p4ImAhjO?{{R_Xk`c!DkM<>tYo+{NYv z6W&}!{@yt%%)>g&4m8GC&y)-FpELHhqn?yuYluY7eDtXMjMu$(f%BmZjzi@w5@p&X z*flQ>DrLp2IsScOjcGA*=FWEDo$C%ax#N}ZWzhn1Mu`SD3K(<_xT$LNvSK3BL2Q)# zr|zQ8hS6e#rRe{O z_I*hWYb1-X&RMwPU8vDts14!Lz(NH#P$Cmvqj#a>p`~%_6pcVWJ(^qfvU!X)x47Ic zE)gwJYQehRk~_cgpb5R+;j9@d2n5Kv+5!l zwWeZAImpW+Zb-A*(L} z6Kq*{f8K0$vrCd4Q_fqeReT?xN)ur@n`|CJG%blH!>84^8QO@TfEk+lS=RRxUpXY1-fQ=^xkt)IGvm7?X5F#nS-t#2D$p|T#h5=Gr%+-pewSQ~DE30{_gske zpEp~us<(^@tp1Q~D`4pBd3-y1U(m#DBDJYeP?&n}hQ?lm(^9GnZytH7albpuSqd7E zc*;Fmp(7u}Swg*|j7kRH!Up{=&P(%_qM!hJiwDrRf4Nduy5mj>{Y(NBv_dM%mbii$ z3gZr&$B2gY;HfnF&Q&5O{ULBGyj)cZ1XzV8Oovfj^lD06%y5zy5o$?R)8l(>I~9aRGHzBlLiGai(mC*y$~ zv_gPVc$}vSv?cF{?yp%bt#OQ8W@D8b)~xdxPC8RC*bVfu-3?8>abvl8#%#E%Pu8da z%J_XBx>Vm;zi@g7qs_l6K}DhqbFY*ZLCCVx^XBT#hy^C74eIwromO zdTpOYCRvXiWP)%8(RU}eWVQROj+x1|ImwBEo{m1httO0D7UVZv1ca)uxSI(2%VBoZ zqE_Pk-%HuXzOhVBqM0X+)aG*-Rlk?IVQ2UHN@1chYh*-`>!NL(|6KAlIiGJ@bZ}~P z-B&Ez%Yr{|RrEnKRl2SMO>|V&6!M$C@~CO{g~MR=HmeD6UTWR}d?d#81Kv8`{=x+| z^O~XI0?U0_##!I>jsL^`sf!?y&q%_hD1>=?xO#S0>(cH^j1~5ET9!Mvy_CMXynALr zsdPq==U&Uc*^3fuk8m;Go=nuRm*!mv;xWmrF#@h6KJJF==1w)YS6dSiqgK&eYqbJX zOWE3z?=xf0YVdr+MZ@N3vT<^2U5>q*#Bh;UMHpd>zfD#Dj5I;Xc;^&PKp6Yt4fg)5 z{>*mJjErJR?}nZ6LAR;{&N~nVp|g}T%0Ig`kHQL+$?TVJa-CyQTkK_`4iQnra_?QeAXM*F~bUusUeMm==#=cMcYV(3jw3R>8~FVa0#p?d z@T0}salW1`<{@AIBJJ;coZ`X+BA?=B4$%3%(i^x|h&EQBB6&!JFK4M{?bI@~IP~iZ zHKl?R;{gsV52LR+&6&H`dAKLo12e@GY;+3n!_v@d6u(lXSjWciG?6COdi?+nOvFh? z;7ePfu65&?v%%uYW3DLIYWJ~2T60yiR=+~Z*`{8mc^OjP+e_ypy$T=#&xIBPeM&Rg zVWCUHrR?9tZC9cM(Nn1|^3Q+hGdz_k;<&qaD)ss3qZhn?T7avxbk8`a7TU%|4thVW zs&hJ4j&zZ7+JjvtIX^AGIO-A6{9x zfrw}2W=2Pf0scx(kW~WpX`mz*agkJwEhkd)9Wj{R!E~4ex(-c02biF~JaLaNlcirX zd1!MB(!Czs0U4Lo*>9@B$9qUtmdW@<;lT=9o@?y}Dn8h7RFb(J`6J4M&4}ZA`?&s# zXI65c7*aDfRg>~>C875cja%9z7+?#-q}vZb*df{ul%axzWIxK81k2@tbcTnleQ}8^ zmd99Fbdc|06aNyVsx1l{yaEd~KYpajGykShd3P=?XAFaU3TtZ^5ks8MysWH7R(wGJ`BkAba-K_vH<5rRZlemc4gEre42>-M~RM zpW81#;(J^7e4r;NZv#5GIDJ`tVSf}^K>zDzAW?rt1&R7oO-ZQKZ=U<3=0~1VR{W^+ zRphR$3;9zE;OoXG#+ld=HG+o%wp}05H$s^MadhF{g1l`oK028Ly{Xfh{KZv7Fj8k_ z*q*(!80XR?S_gllfl6ke+f9SBjs;RNz3q3rN{0t**IA?)CVmY}J12wq$Hwhg3|OXU z--a8w*5_z>-ZuQh-P350#yU#qoZJ021&*_@zwp1D*m#I_8PsK_?1TbcOX5NSkVbK2 z>#8_0`j{T9LOO*aW=?4kDG;+IN_w?vw!Z(kPEcnB;)-K%;K%K|n`-l_Oco#g!hs3_ zu}+qpqa@tBD{Kvna&;loPFLQKQ`0hdRL)gj5ZHwI|E1}Psh~_qOjWcc9N6oI+8;y& zEys-15^LW%5oDB(k4Z_%I=tj&v#BTM(jDb{2J!2cG94pLPNtdowA}Da)=nTTtkzxD zma&b!pG=!Ym6-zEMgQ}%#E|bmLKR5*-?mHi)pm*Y#%KM0^k0_ZuY}BBCI}fI==!g# zzq$LmMK%(U3bQfSzEk=yi}{+^f%w-8{?FEyqJW`*mqt~5&HvA3kkcai--rLL8DXyq z85T+>{97UaBGkWj3$m2|x`O=Yn_i|OAVD|%Vun-rFN*xL4BAXL^#872ssHzFG)Z4o zkyL;1(?3e{?`H-g6Z8M?!~de~8ZHV*^l@=C{AvEV*T0qpeczn@`#%3$nhgX|ZT9CJ zv*N#Y@xNsd3z7bJ^)KSp|Nkuf|C)v7;G-D=yD65fDER*nzMYNybTZ>PwxOZHl-n7^ z@`YqADEe2H*SA92J22J|_jpLNz@ewk2Ao$7_!1Uw9UI@szDf9ZozlI@btwbi+ zygL|<*=u8_zLq>3Z_DQ-_ijhKeQ37wQN5)eQH1%uxtN`etQUh`56|k#J{65>d zK-26Y#+xET;U(9(FMAT{`KWL*u7zD)tUaO2L8gFi$*~?Itj2dKTE~};n+~Q^`GgwQ z3og4aElN=GXh)!?gqg!z<`oWiv< ze};E;M&Wb;6wJmqyt6==EJ067Jcwf_D%-a})AkSoWZG>K(wd;ZHRtWIR!G&M++RE}OGEs}XlX6?g()xK3u&`fMhD{nY$(vn_B2dw>| zqrv)Ppd7!x=E9geKQ?*6fRzQGll#6YQ6^4s6Rj!GuboS@bve6Ft%h*NQ?!ZbPdG3# zpp~(VB#&q@^jQV+P)PI z>ljFdTVnOZE^PWBdP@3YlWl!bh42|rP}aDAq9O`x{k-!$if!Bdq6zBftf*4SDov>v zW+<;_j3`k8G%00rVUbM`rk*j~%U5iu!EWGk_D&&6qKAB?siA0`4_+o9-pV+FK|~lx z>YGZfJ39?c(@bjA+mc(gP7g+10J|GP{E_V6b44!YL=e0?I54e{PCuJ`B9Vp?x3eegyw5%Ks4!a)9thv`H(w0 z*R>S#co7mod3SW%;$lI_t0dsyP;sap)8e#Z`UB%eSNQn}pMCJx{bZb?7kfX4Of8Ju?Z0NeepUrsYu+ zZq^3m$g6U!R@r`=lyBTNjj-S*^W{-AI(9DBY7zP9H^z;Gk@qzCvMJH?4d?#CZ^RY#H-+y+PLYji)s{K~PqG*6AYb+`biQ@X7+H@KPzhuIjU z_1&SySxR#*(Hj&Kl2|i1vrFBs19rGL=ruxo&iPl>o6XE9KmCAPxOjp|(8!iIXVOn0 zO%!KNWV4NYcRC-wtr$5)OJ?CeZ_B%8JTO|VOuX^n9sGoehbOl)y7evyBuWBuHZ6Zg zg&C91+>A%cRtuS>?onS3Ej+ zah&>nLHUk`K&O!ul9%76qA`Uc)7}~co)0&nA03^j4lubogv`ktmnld?sjYBr^cKN^ z`ODH(&NqK(MAk3Q>HINQz4>B`*G5@zSkk-O^sy%<7ulhs;Ub%~I#id{ZH2Gep5FcI zz_5vdkEfdmN=U0yw%Po0{`Cwvmq+U*9na>Be*z}>NXnogR%kiVZ?ZRZNFF=jbNjYzxdXRt@gbyzHoZgP?}y`?Rhe{2l!)y8BwG|ax*7+#Q# zsYX3pbGr`DwOTr@Lf7m(sKmkBu@AQ(2$&sQQfw0L3mB#1CsH;lYN{AwddP22%Wis4 zAzjQbz0T2T_Hjs{A9YUKz`9BsW(;v4mIedS6nEha@X)iH7@r;)u|Or_>MEx}+=AEj zRoO+wE}CQ5C(rmX9<`#aL3VuKpo4F+f0FNeWu5HgL!i8CYZX)env){QcxgHG5A2JZ zLCP0)v&lKarjes%e9D?JZW7_Ds=Z$vWEn ztR?*y6D)|bGHX03nimA=2Eu7*cOyHgpnwO;*baxkA7#%UPqSRKeIEHJ0SjDfA-C7S zI$&=)FK1dt(Okq$+p4}?ntvx%$6ac`Xb7LB#?N!1gw@XrE;@S`G+NMQe3}$8pDNgP z=VJzZs2bkL6bvT^NjtYYJ(AN|I}V^7S-Q2m^ne1iiPi{P;^@;h4h7tMlMNzlk)LadBQvtg@Eq2wIx0xbeSCY#^YmN_^D zzQaULXq)yUDX_g~zCZ3y7)CD%;(bVT)8hds@K(xA3)o??L>T)h^0LGKkd81AG@=1f z4FQ+b$GbvnJ?D#a0xe4|TJB}yF7@#I{b>v`&kc6R%vdRZ{l~7&Y z9??zQuAGGt;J{1iQUGMe!=tH}=~+9SH4>;g$yij04Y{mD|7qLi#e*HWZSrV1topFlU)clAX zJNvwgswRAW6HpMkzgR%By`a@5rs=_g@QA*G=rJ_)>GE4mLWY)f1-`qKdGD}ypWkv} z#mgFRu7S;LZOH)y6(Mlm(4I?RbbPzc zo`o+CXw#9^Sd#;cG^@!&XkAfCmSTbbX0cV=Yx2OZ7yxW9TKJw$o_}uZ0^A7GP>z9& zcUZedv!U#(PV2qo{&B^4b0f9n9<9Ik$uEv*gW#PI(R7^_K&Mqm%kSvGVoB@)pYChe z=|xO{<>r-_u+0=t3Umo6b{)|F?tdW-bv*?P`|y95l-DIX5`?C_l%aNL#-!XAHl)FhX7ARc21A6W?ySytI5$I^%lR&t2t9-Z)zt|o8`PERzJWv%HGMJ?RmL`TI z{N$K$=9m_$Z)CfQE&~O;(Nx`1L?%yJq<`MsJY$dC*YnzSzO!;It5v19B8rl0=gN25 zH)5NCfcMr7u5B9u9!!*Vf}&(`(M-(XAsCI_M%N=*;&R6msEdHL~YZBgDxf4Dl`jfG5 z@5^l#Lzcf=D=q-8wr$_n5k`d#$KdNm|%?Kd`xO)Lyel)>aq4KkDS^tlaOMiBYzL*L%MVU znaKBqoAYzz>lN=ZPDp1bK%_v)`OUMG7@{POu?v{y zrH~(j#?Jjgg%!S@YnV0hVeQxKQRxl_Ag?_j5N`wV$DhCIdn(AR50?8WlQ*@FD4#`c zjy&b!Ybh(Mz}myBD=9#dMBH6(!4uh%MiZkLWpM97bIr`iqa(?-w)fSce&J48cn%Ym zHSrwin>`nCHC0S4I?RO-C3I>-eiLTn-BiKAWMP@S-kZk58DhGXwz&1Z%4qss)K7}h zreQpU5mC6S#uEwOH`O!+;=X;Nq!deSG?C|O zBcY#{9mtP0rY*aE6YB9VqZ2dRIA~V z9KDCCEP2>DbnV_(M1^JULlnw3{nC9qSi&mH^A>%yK83plp-hgoS9e4IgobwJo$2(O zCegTOSoVg2l{@V5E0Wd1MXBKmbUW+%)-J`3Z4&U-qi3=Xf!rt+N?=%V&YKV==M2MQ4W_a z<7&#UB^66&*>)2FFnKsnxJLrMIfU#Ek9_wI!cp=3XYaY*ssY;I1?tl`IAOIJw~g~M?Nikxi5PZc)59DLv8oC zw|rrF-e7pv(-VA6%JmC8Zwge_*K?k+oh)K~fT@=X*~bmbg~Ftrr1UFs#v2>Qm1cdf znnx$R8dPG6uuzw1@QY5Xpba<7KYX6q$`YdyZ>a-Ux(el!Ve-C2n+!kZm!k%UO!a1& z>~YBVQnE;c=X`BG>L5(IHdQwV^pi>Zt)w)yNDVbBMw!m~Y3Z#~4xt$W!6O_pW)}L$ z0TtG&WoVAkl-yf%k$L7+ZDV7@lZMAk)&dJnHeIdpb?qA)?9)^|m_gIcIfNf%_jQe? z$=0_C-n+d$SYzJl8(h`zZr)2-z(p{}evsH5yfYPUWB7K@%D0?h`XX=Z1b!m_Tr!i5 zaxe|)kob$1!7?Vug6I09aLC)jK+kPqWqXLj020Ngq?o#-cW_`~z|idgJIy+XdOEsv zEEaSPz{KAAI7``ze#1Y|q(esg2fsIL=PzdhylcN+o-S};SYFN|?jBx_JwTaJ@?~LP z&jiS8E%#+dw|TJVqxa($#;#Wu_ovJ$OI#Pvw>QxpUy%kl_g=iCue5f*yj0>jY9G(a zWX)AxV=0)$>b+lO*gPyDIBR`(XBRHKbKd=}4-U+alRnNHy#V#+7np@CS(q`@^>`RZtfV z+Rd_|tRJ_=a&c~7bIdcUhFgNA5<@pk8OC@q;-NBHi9y&x6i(j+1pD`k>`By>ZK1Z( z)Dz`?^&iM5t-^L2$3L zlZ}mFfiKjcqIOWN`ZGTcRF4eH@0Nf;@0Souf8Q2aEs{`b@jI3CmA{Fri1{YcO8SSm zxG0WF0Ku$#&{SXo&{SZLVM-4^+0$ze7l1Pey8z8n?TZTe4X&&$Q!qv$kI|vy@{k}i zS15fpYU3}DqI6~H3;TTKJVOtiCO;)Mkk0=wFz0|5_XjQaZU2E%{|+E%NAYm$vEFuH zmT(*KJlxjsX%z$-0oH)wq*#Afyub0<6u20^5!lERNXPZrc^fA1gmY-0E07qwb~E*S z2|@I;qpLcbmv{D1bk~XM-*Hhyapy4k>|1=%#HeBF~z0-47fYdPE>D?$lF82!7 z>S5*Gu=d$a+igEKA;R-%3LpRNBC-dc48yOME~J+sOBRIJ;lS3-HyV;2&t62ie2>c; zOSG^Mp!z$L1Z|R9$Bc=kGH#&Y!*tTTV`_;ce9?~&Rct;EY(m9PE5dhwlCH?$!heOi zOTgf_S_B&6vVT!qC9>VYwdRhE=xKTPaXOLoZk7S^5ntH*_Sn?@X*%MT_YyY71hy*^ z5d)kasBJkmHdOY65rVastoaXT3tthfeN~ay{0RJB&}+tI4Gt9>89e-@TcwTmjDYBT z;{mFV$h}+EqqcqYZl9H8EkNL+Z`G|wz+;tgE@l7POobvRL)2&ASQU=2=Ps*&su%?n>4<$YDr|K~1# zVSz>w-_N>UWskzTF~0>pvaBtA=VDY~y(?zw4NpyrwnFl=2GD~KfdTgsaDjyH;T$0A zv9yNN_Ke_hzm?$2e}~e1%i_}Z9K1LB65gi#aua~%dYVN;c*^JTI4oe*eEQM-IorYn zl&M!4JE(D21J$(zt62Pn{eY0cXjBs2Z3jQ563fj_dAx`E=zal5Rbl5_o*HEhvk=UA`hE@wzLON ztkv1u9a)c^hm(lA3yxLBtB^KBU3Fhihh?9fmp{8`{3||g{Wmsb^%nMB4%Fi*rTa|^ zAMPX(QxCeWz)Nhy9ug<$2T(9UBZ8e^FjzDB`#gqD7dPL!-(8FY+c&0WA9sp~Znt(b zbTXbJ1&*HL{Xz9Qw7-xi$p3^?SQMbg_>F(Q_X7c=-0}@se+hyc2_rG2>kV7mT~`Dw z-E-^;$D4FGFng1>2R4uLfZNBiSX8Saffsh+qcV?v2KV!pDBMpE^91}E3LX#PFm%e+ ze`*2BJf3*?H6KCqf_G*QpUZzTc$7}SJ`b(z(7y)-cl=J#p&$N0%^+6vLBE1xwUOz6 zNq;G^mpfps$H9a6Vo|{6aXl6UMJNcY?}lXPz1WT(KzQVzT?x2;IPxJnTSr>G*Z>U- zKAX&7{1N=t;QIDhjL6FM5sV0*!|^Oe`?OBrg^7s$S$wDN1(Hbmq9X+9ZX6nc|8{=$ ztRM$UQz#>n{A==cHes3@7KjXKYAm%AFf*pJi!vsZ2%EYj*mf6k7JhUHpw3* z1K0FkMGCua);bOZ-S`wPDZEnsG#%A({MKLK`3$dBq3k~8J}~2PnsUhPl1Aga4nh)C zO49XN{qItl18I;^EYkOQg(K;5D1X1gsXq*_$8)M>>)j4Q4aM;PY?ew`yR65(!p_c4 zse0Xtss|_qqo4l+@Xvn!U4CGh@d}l$LQVV==KrD3U#8A7^mX}N4eKA9@$c^f*N$Gx zuZ|W4ok67gziS27!d|UhSXR9Me=G{ZG`qbbT5fpaNdLXe^t#M6H4*t=RR&&lvLKSw zSwif2{pT`=C}^3(UmX_}{Pl&rZc;o&v%w}O<6->^vZo_Jh~ixCFq*5!oQk3gMegdt z71rVPN9}87&AwI5S=?%=NmWt6EFP=+q|}$r1i}E#Fvznf(-d7;T3HXE>1ZUCwV1kl$ZBonW=741qP1`y0t@VR>PY~b=oVqPux(H zH?E{0rEnxo{DJaYF6-qXCFOQl*imUMr0Bx32MCkC2l2>8-_qZYvF`~x^L?ap6=5Z6 zNqjT*cD^o3fEcZ8EeLuP1>jt4wFeaRaV3-bN-gaAjLLx)W5YMwv66}0j*Y1v2b|X9 z4Fna{u3Yh+rKUM9kfbBXTCNVUhYmOC=%^EL-BNf}S$#-zZi};UyG}XyIzB}(~ zx}?SB>g1T^vMP<1hUOdxmt=D7c?%bG7ejGnld5Azq;UyL?J*i5NFB_e)v+aAiD!E? zH2>Ohmt&#~+$-)Vi9U@nDnUN`HY)&cp8)?rP9M+`DhdbogDSl_0XPwm1cEkvy98tX zaK@6^Xk56iVIv*UJMTsqfCd!68xj9^?1uki3Tb5Qi#|_h+ zO&cBTn-q+zE{|_T1#XI1EA$+`$@n;fpiIBVEQ}Xd2duG7b;t0Y&5riWS?Uvvf+@CQ z_LMV5-tE(kgSR%3B;^JGCsdTI2yB%!$%6hq+fUT-oM!6Qj!(A+vKjGxHhk9WxZAF1 zO{;e2p4w$w1;e*Vb$e3-4{NEy3|Q2J^Dw@eidr+Jov z!=Ag)tA79@G(oP?9=+RAKjpIDJ?q0yH1ZY#q%~dO3P`nR-eL!gI(B*x> zSz-w|#Gp-lULGxXeF3xO-!)d0Zjov=I8f_S)ZikyDH=+o#iz@WxZ^q4zySzmBO}P2 z-Es{jiGT6t`!0m;G49>6pl8g{;d)~z1lw34e2A|XkpTy$QMH%@v76r?1~Kpe!f5EE z5INje%^toz^9m@m5%rL4<5D#x+5m!A04QLFzMj|%KJQU5h{vvJBrAxiO})*g?vCN3 z&sA-8LFQi*J5BTNqvpwbFHk9l95LofSDfT}i6|`Q)0dd^kuJ6HQ=7QOrnAWa!5X3h z3bk;84K1}!i7;3Cz6)i~>IIksrRYKH{S{<)myikN_!-IM?j@8Tdj4DCNn->IhoHfa6-bO7$5`IiGqv{+t2{+mWlNl6)Q5N1(GJEJ3T^W|Mh*1?a+zTg4 zF-MfO4DS*OURywcuWOkzlIN-1KyWI*0)d>Itpr$2)E<kB&ee)zD8!O-=>GzN|ijh=EKkYKuYt93$3&u|DOz1hlPIzaO{e}!MEV+fp+!1HB z0w&=^FmKdoy7$r#;`9j5dwr}QECotNnZAvPPG`Z*@DuR5Gh{X_h)$AnmN+UCUeqZ zony@2#ct;u7d)s0;WXT@eFCAlgw$%Ov%pQlhA!et1~S6Vzu`^|1Tm9&e@QjT=0$)C zAi4hW#v-IQ%6J7Pi)dtd(AsHth)*N?QJxkJ$y`@0s8XjWM#JOhIM7>(e5WAn3j5jX z3fH~}Bd^b|Yg@a%GnMQ4SQVk1Iz%hP{{2)+px{e>-2j+!3|d9qq^kSR+o*k#*RpOv*pz z&DoHNkpsNde=7dJyX!+>zO#iHQxCRJvmx9i)#O{BGXtNQXk_dr(eI{%; zd8E?A!Ia4)Su&xQ%oRNZOKAbU&g>#vRFd=yc+bTO!OLIzo_xOPVJRDztO0R-siL9t`Ky&Sk)XxNlH_MfnoeSh#V~BD((i} zg09cBOHu<$2p>BLpuvNY>$Q@=`-!-8m6U=S;bg96D8{Ho+|ZxiMyKmmcx$t8{k^3G*H0#9@U@)V+3P z?dpnZ{oae8i;0sjG1j%rJiyLp04jLvmd5)MiXd}>9jhAig(5DixKX0M#H`j&I!5Djs(2I?~|M*{Ou>Ufo}~a9D((E=8FhF;355Ey!HH()FAp z49bsO^UBJ~_=PpJZR_x$<;1-IU7yU{r7U9ZUfP|s6|bZ&rwG|@bI&27%I;*?d}x7 zZ4&Jomb~i_Pn&ivj*-s=KKm%D3>cb1rsARKNGX#%qj~|Ovp!y5xzN*3P+HgWUsO zlapaJ?z_A&FSRGVzw>rt9;V6%RIMj@e1^E4EE`N&BYhp&YU!yJtJHZA=#d zHGTRGt*OZ6;^b448LiTnRxc`e-r^M>iVQZcEgXDGsw2j)&B87*YK(8Hh^V4|(d|sD zr0DvZJ2&RV>G|5&lA#J6s(aP^B($(|wj4n_BQKaYr~J@X?M%>T;+0dz49Xq;47b?r z=KI~ep6Cwhjbx0i!nwYV81qyv32u#L^9>RL=&(`>Jm~KXssS=r1ulW;+T*f-y)3&= z#8nDg<@4al_{s#lR0a8w>+k#KkICen=UkQLFj@(gny4RZIyzI2xW<>?q$d~AO(_EJ z(w#C%f)Q2w`^s^9s8ssXMTV&W!XIkBiPV;k#aBlUIZ}n`v&+DIYGraJ%9~K|wClydPvqHde@M4J1OGg zvxEYEepY~XM)@hEO7pUkpsr$a6FTo;u72uGnmTAKU90zcr+QfMS3hr5v5_hBy|XIy zcd{eW&txV=w5?i#E2oelx^=O>fdxByP<*6D1&d=@X}UXk zbcmSClz~q`QihU;=oN!ZWi2^>w3UeF!TdhYdC`)R!jcjUXT6F!LP^8+=2FsoySr{^ zu0-`Syf63#HuW}ThQ0XZv%Hu6Q;GE^w+6=ZC0L`~HTsj(k(W%i^Y4}qq{n(e)TVv_U^w{w9z+j=pOAM@{m=KYlx`v|L zxzNB{C37e?cWo5Qh)f%k25Q z0R`N7*K6XPEGhhZAIl%Vs@G5W;!4O)Er%=9>=p1ssrJ&~H+PDE9O1d$5YRwY+iu=K zsBMUzKLk?6i|W3+0R!k1Yj=9-eX9IF?7d}FUCq)zh)YPY1lIt;g1bu+Ab5hiYw+N1 zNl4HHcSvw|w}TzrgS)%Cp4l9D?!E7O=l^Zy!>l#m&f4qj-rd#JCBLfbGN@9wokJ;E zQQV&EIa2li=(y6i*P{>meLG zdZDKp#CudZOb){^a$jI#4vDZv{>&7<%K1{-mU!zoNcF}i5L11o9Mk&+=N84FMTgxR z5y8+RB4v{k#VpLjk59E^P_pyp!-pB26ycY;IK4Tlty_V7$XazR@aqTM!ZZkR3)!ee z|Lj(M7#7D=n+7lRW89~q#QBXIO<|sjmw}shr6o=!uTFpBGq`n`yzNzrKv?E0k=a>M zR;n%3QJ(1P6Oeoct;cbE>%Yz0()={kA$cQT{AKBTJN>GNm|U(eqLn6pyR2+Nd|*bv z2`Hc5$-RkjzslX-FtN`f{|lS5z&951wAo}}O&kYJll|8REVM1GvT!}tBgWrZRxeYD zF^bne(m1E}=;j41L<-KL>XUI7+9muoH%#LV++O%Lg!#IX9iMtcstwn0BadF`YzY9j zPkj|5m-H(c>?)NzJ9ykfPon5iAy+w8b<~@l6J*8-a~fgdA4_o$9kPWhT3y(i*~H}I zBVkh;cn3#cw*(Wy-WDxv&!*Grh7cDPCv7yge2^ILi|z9t-;Detg~tq1fv`;b`)3oS);~G-((Hd~tnCevBvY^P@*TT% zS3Z-TvkDgv{3XsyYBZ8eK~x%+f@Zj$uhA5JU+O+n#XktI;LFL-B}ebar;MSh-sRZZ zH~nY))}(v{((fqMyMZdbzuXTJ?6}I1%K1a{PMdvJvbMP!IQ zb;2sdbpOu(Pb2y*L>K}S`ILnq=0~8H@T3>gVTX^^Y_PaNhhw4WG;9KjEPRQorAA3r zczN>-uFMPBuha6NneSGkRE`a-u`7O(U(FGBzuV(@_i9hqdff=7SPJ>m#%WWxvMs@} zr|j1|;~~6TjVZ1zO4^ix-#@=jJmxVSJ>T~1cRhaw7kpP-uoNYQp>~u*Cv#*KKW@L< zw6AG2lfN%{)DX{ED1qs-Pj^K+lc^--;jMx$gu>D?^VFT1Qw;13UY<^Qd42_Bf)E?5 zPFj(U-$S-{aa=f{yLGNbsAuV=3C=8tk({iI*x6h*D<8M@Ji>-#W?y}Y1n!vpxn<3% z0__{-0oQPb!s4a3vy&q2m0aOoWhO66YMwCF#Xo3TR>kxtEUDD->tDB}??DIHQAU}g z*3|P=a`QbIM{rNhczqMQi0T@*_o4#uf8XNL%3aASJVrj9@K%jIjj?$i0+3&=;!cPfXx27T1F z+)J{(8Eq~Bo<#`>;<-nkC-;KEmNWZeuP~i&r5UD!$wB^U3^6m^+wUYKMBMph#=#Y%^GmMX@&b9mTgtzrmKhHGgsdBM9O#+!^8LPFMi|&(MqNC^Qe-D zZA8PzL14M*$gDw}al?$D8v6D7eywHvf< ziCI0H+U_R zy2rE!Hi}6e*V2xc9i9ane~CD9V>EVr;k2(C28LmlciEH?SN3Y( zIV55cp57eqd5MbPa#hjkp+`I~Fe=m`aZwENF7lm<{H%MCE^h|(r9&yWQ?Y>Fv#RF< z2cDYDzZ*+BZ_3k?~Tub-wf4_5+QqCbpLCN~P?@ zFH<2=X4)40b(Mw(rwPt83(w%3hR#VeNpIffHL*_2U({b$li4;Anvmi#EhE*)k6%p@ zVM(V1blb}J_px9ckCklaUIV{Gmd()|%^C^=jI_PTEzMF6#Mesc663(e*U_YEF&iLW+BA z<(H<_vz-;;i(|)c2ye7SL`Aa0U@CN>lF|)zqNkKj5O(dvgNtya=B(coP$Sj}$I%5qj&BJKC?SF__crQ;@-+=L@Eod^PdU#xuQ9RYt} z%OJPt?NrSw2^}8x=u`5Y-Y3kRo3J zy3T&N!NmNp=8Rv$0g3)$%c?^8e|Lg>12oPQ>BNAAg_8e2UKF9dKLHtYDw_ZMrs4np zGygx){$J!Y5RL8L3@?*TJ?%5-UDZIV(KkwZ;9vqOYU*!h+oAxwIyDg9H>D(ZK%}Rq z2d+U!(T1tedf;ppBsj>mH^c@ULbQH8ujXZ7V8G+B@!>s06Sy2(EmS0m5qbl*Aw?>= zp3H=DHuU1^FV(>DSRjCT0_T^-tn?iES^QT(2bna40)xjsr-Fc-LKv|9fQc#K`8yss zEzPtGrwd0e1b8IUClmb!b$OxV>JqydU1~8hG<^6^1!J;v>iSP!yj~;cRK&!53NPje zZJO%)0q8i5DIi!#PVRE`h7)KQ?I#J^PS33VSunb8i@b$%y7EQ^FDjf9hy-uZ${LO~ zZr|eJ|7xkc3Mt29Fwjo=8p3Iu9-@Z*LH_qCPOc`rn8Z7MHkuL^dq!9Dk(%+_hCKR! zj0EEJNaDba!m)pH0e*K9CQ1UU93pC^mwX`A;Hy+%4q!iE>6>Vy@8GaeC}6V~gMxQM zs7%&=2?`VLJJOuFad&-nRg>5;xxRbm#QTZIt|rQ9K|z`BdLT}+PoAcWhqI;kh6By6 zP3)CQU%F^(@vVc6;^cM~ zo{&_e0Zpn1E1o>wbM64#3y+fAd_S#6(ujkkW#=fyrWGetRNsG2apSe**I(nQHTN%m30ve6}u48_=l8B=v%VU%pysrRz#@et>bRU_uOAL<>ht|KGjE3Ll_OR7ON`bGLXMYR6CIVJ#toc_dKi|9(`PFWcr3CR zgacc5UrkxQ5@ZiaXQB@C2l6p#60Pf(Wn!O4NJ^I(kecA9k&~M>TIPO#;Mt$|JiBR$ z2-`e@m-_>O3iBOYjMRv$x$f)ZabVayS?)Y zVmTSni5cxY_jz{}RWf0zLtc^gdo=2oA79lp)}4yyepW5n{1VfJi-wA2ofu+r)Qu+D z*kgHBhX{Mt@@nNTwSt0fAdYSH`pgupQg(IP=>rIVY3$MaRfedQ-BHwXf+^;>W8$G~Xi-LY`I{blB?7dzmaL4&K8SW(-dK7#+ z1#O@uw+j`5fRmK{(S&nNR5s0eM07=b)TZQJ&YljxSkLEdu627oQ@#?H>@Lj~x4NkC zc#8aFDP2rGd9^NyI{P^5nF)R=NzIC|jS8Gd(}cq*H1%l35c5@uo&JXN_-m#CK!hX{ z9u1G#Gu39$a2d`U#Zr- zo9?B`su|{{R-NHD{Hny4e1Vp#(8yHX`g{k)TVxOifkPoKNwmaXNRwVleb}PFC#XBo z_(k3Dq;|4I_~MIL$HBWP*zS>?6{e}S)yQcpf}D~Ja=mmaN0JAT3cBx4|8!=G zr_$uYxyC+3k8OB&3t2PbtWL)6YgnfA!G$bS$f&V#m%iej#QT0>b0N>tw1Sc$$c4Cr zgFrR*tICXoX3b{t{bu-F8G60r3kD5|0&}69W18inUB{hK8e5_sj3<4*>d#4KeyFgq zvrB4YqZsZDI1W$(OMLzzOZuTP_BV1s;-i>hY`j2(#XwPsiSj`peFckwKF#;JYMQml z2}V;z>pa3jhhId}!7hwu4=mdxjAC1mpUTEGLM6P;rB&wsNMmBi>A!{q1`{Ecovy3GAdro9(vrHeqx9>X z{GE+%mNVvuw|jq1dGdWd5#4atPa%74E0+vaGJDFu>?GA!G6pvRp{57KLf@PCs#>Dpx-3_V9l-I7fw~0hB7jk>` z%@1EGRE~adsFH=fa(PONVmsB@JrU}>Dxq}6O}TN5%J2+d4|C9>3?!sV_yJR|M6sMI z;5I^c*@rP`E-t`-xLkRM{q(%9@$_sdpMgB#6z~TG9wG5%JI6YcmP2|rvpWhG35{oGPqm>Na7^1R-|7)lY?S(Tqfk_&-&i3Z-Dz@ULOq$pg~Sjd z>a(u!OnKCa$sMd;sU|5~He;C6E@F|n{Al%r6@ota`-Fy~-|gc;)(cr6%S4cfgM$Ou z*7mkG+l|4OY;0^u9{p)fseV2Z1rnpAsPFX<5Cy8WNT+^KGgYS03~Jk8yq^Gch*wG?3=dzr<6C}OrN3k7!QT)k*GCFFr zH_Uons~}|R%+hI3rl|ud*q>&E;IW5`grr`!sE_`^nGM(HTa8u{;)pDnRlFv*x1u0& zsNIgg$BxaUG^3=)QKP%isHICaV&dtjmVWw7d zML!a*AkT8y;;{gu6N%Hvq4-`!Eq{fbG_n+yaCb*Q?U9~P|0%FC33EhD<>+vQS% zXZ+Kd_jv+iPG6pA3~_YK z4-~tv@7HQxE(t?oYmQS09P)4wXi@M_Qio9Q=@Q(xC#U7~+^SNKb$fHam4{*v=uRFX zwDZDv_0YI7gb}NqArGydb3uX5Ja1-Y6iANV8siBt{uoAjw>wkf=M!C-7x`59}!^z)yrY)5dQGL894YSaKQ|zjX(4Kw$n`| zihF)-d3&ZF(svn0G2|Ej8od>I$L#1TP0PMt-(x{UX3adR^Jw5>!%<=(;GfdYAHxnn z$Rj#CNQo3GUfi!|7&Iga-RD7x)C%7qUE%)VoR81h zzoG-y`u#G$M1$TV!nP_aVgfp)+VK7Qy^e8dL$tQ-RcWr#T>c>?W8Cg1d0Sa^Y=Ah; z>=mRdfai^Yf!8rtM7`5)ncS$VGkE-@>aJfWA*kH~cTl4truLiWOkl-PL~xrvB0M|> zTyWhD-xId6k1^G+FcB{HZs?d9jA9x{6dm~Y&brc9@ILD8CQ}@I4@2XWf24~GU~Kqv zyMHh>D+3|F%GHenwza+1r@l2poUiSmyhJ8LU;yKZ&hYex`iGTKT+<=Nzd9Lz zc8di2c9XdXEyk31i1K!;(7%_)oZDE%Hwu+GF@>2BfuA+&zL_XtaMlk}VH5ThbbBJWvh+A5eW)gTmdATOb z05$FT`eGRGPCa50m>KuyuV053G@~4^p-WhNc2UN((*H0ApP9F-Q z8!{|6`u@Vg^6O47`X|=JMjeZ4D)}yfhqKb~y*zo&AMmazCgnTcWCa;khM8;EMrSB$ z6HgxssitVWJyQ&OYYIQgkB(ipL?d8zvtA(A0wzj8_UP+67tZ8#d=^BuuR#cW6a_gT zm+GNg68=3NE@~$@=#PUS@IgoW-qi%PG7a*h*pkeNI+6oLx;&lNjuC1lOPYdyKD6lj zJn#PoPG7@#cpiBQ?RkW9qAg5Zr@RHrs~uF&w_jd1*|T{uGE;vWx~zx@QYE^$+EyWC z(xKX_(fvu7N4}s>CYsv>WwiIH()ZL4M*NqRPwq?pVxx>>VN6-byNOVBhw9IF3cEuE zY{S;-1_>Ww6c-OME^s>R@`&3ocy3H-jG@sT^Cy;L>^a8VQckgdVL0lyrS@< z)33<^DVxR-{ulSbmbv#|2mmqgFP~eK79ireZC)7``)eT zYAt*n$1br!#fZZCInhW6i?JX6;jFiS8_vQ}g=`n?=Y#w^*8+N6j1X=_MJ&&rBopqZ zU)@5eh4}pmd{t4;rUZ)R6Zmar|FByMG~Pn4y!dSFf*PB)S5z!$^gk}U_i=5we#&B{ zd>N}lcF}oKMtIMu_vh~b@Hj~84@IPbkA0vcp}A*ZDnzZDhClI;JHkIE{RTJlOzd>a zyp6^?XbYb|=hvb~7wT{RMGhJ18ufS2vDl!p%#Ff}0YC4g_@-nlCWc5rK=77NmFCg9 zqGI6yj{RGEcT7_{6c^0g+Dw3Nd?l1pM;w1e&@g{)bs5$DOSRN=`r=2#H+yLzt`AS( zz+mkM6(M20SWszTlwd||Ne+k>g@n7Ot2?eHqw7j!Q{&D*Mo+8T`up!_^ z3?=ygo<=rcTH|wm!g)OP&=ozriSG^&*>D~?*Z04t@fW~_{sY4JkA(*}032Sj4?lXp z$j4bf{$%+COhY_G1M#121eD6-n_vKt1x=j$e){*Lf5?K*2}~nRyuk0D2mc<`kQt!U z&b0{VzaRbc&ER-o8vh^KERDg7*Y3Bcmy zb+f6VYh;mv!@V41Ol~_4f&{06}cqpe$H)K4;Padg+P$QCk4-AU@ z#Q326phv}Z$p1o)$Xq{ae|*@r16$NDS4{w~31}@VR{&n))pJ|k?3uDKw=6sv+|uLH z_kpCZ=`l_#4RQtP>Z2`QIpycF4zIc~eN=Q#+N4wIUH;~FxKM%$d^upspYKsyA7rCE zj!I9dzWWm-f+(PT@2vl*BTgx<^gFUV7Ae9-=%~r=)&^%jAEII^*CUMS-1@_i8K&Mx zNH?GZ9y_a0iZo@X2xp=RRe3JC_A-;GRglb9d9~Of!ap*c@`ZXpJc0mB!pk#zZ|_Tp z?mC2EY1AS99|mq_IuP!Kl&Rw2Alx(oHN1WeBTB-6@lJ)9_*ZqZW)9tDtHerJ>iQ-M z@SR|>VzCR(6*;D254qCWw)2fw+)?U6MrmJB4tNGU#*BP=beq}Nq)L=$Xv*)oT zU2x8P7fSif-D|;52QQ|-hE+Wi!!Ww_{q$2`N?X9r{yn`Z^T6?-R@zkZROcddaZoEy zpt31yaHNPK?_^KqlKLf9RLz~~Mt?k8_dxrvO1|5(6Sw~X`Kgj*p2*0A3M!3p4qHo6 zyn6lIVt{v<6j`}aN{&ZRPs%{wjZeB39trQPTTp3~d+8-%1TU(E27T9UKkxalnr>g? zlpCSoGD{o){3NXvB~)R#pE?BwTGZUFyis7ZlabeybxU!C4RJKyvDZ{Lw^P*C32J?2 z*A%zC@bjWRXeW}XtA z=C!FrCT+m%Ni&!WRJiD^q>tc*r{)LaBoJqZA2 z*3~K6(zB!=3#$sQ=)9WD>`Zn-(bZ1g>O*vqJ4`K88e;nDuV_M(TiGXDZV;XWak$SB z?z$a1)n5{8QK%&(Fk@JfXseQ*uM5cZ&q%uJU@up{Q@@f{0yDLFY$Eh;bhY&j7&`mL zP0c7<@-4p7_hK_ioRHW0c1bj;9sO-cNmUz`xghT}CgsJ~X}i#EQtrL#!VFla!043^ zNyWe7OUpsBO;EffsAqkl-@)MUb651+{xkc7bi^QDxN~Ff=+=@m!_i2#pyuhA5T-9bV~iXVh3LWYwC(V zsmZJ#pW@fh7rA=UJvriqK^rdMbBK1DPx}x z+?x`BT3XP5@d5C27W9d$a?21%gGGczVg7}Vf}A6^epB0^Ztto{eF`jgqxTf`p*-ZI zw^VOT&@XEE4%~b54#5PMr)Ripf<3eXXZ50z=zx#5PfaXivYMdsLsUg@!JLd!%sOK7 z$y|o(16WF7PKn$->>3BwSwCfit(r;Da_T1w)!02SQl7N#T+`!pt9@V%c#zQi)WaUEPqKN z?hkPT%#ixH{zn}p&=_1tevV5VuHiI`PVLg<9y)&B z4`%v_J!A+RCSLE9b;hGTd=vVpmc_k=9C@WDS6srs=HSXS5>^42`KKMD(mMLEjU&s_ zs^m1!(yx)dGNt>m!=z@J4c}k!UbC)~8JW6`-(CAAoY@uGr3wU9`y#kb zS3xpIW!EH>S7i5VP4*M?pfMxh77(TI>56S#P_GpNmc{G}qejP%OHCey+I06R@BKbF zWEM)$$F^`~&*{n0(cAe>)k_n47Y}znBNLPG+H{M!xAQND2QKGoMH<}q^PusWDJrh9 z$X{co3L*eZMY3JV7Z?t2JcjeLzHko0F0D#%UW{5!^oTFF{R>|-A1P;Tub&@@644b9dyRQA1tW zgZZ63Zkv@(IW%Q(;blJpZYC9ypN|O9pNOvh3T)H-fGSnPvdL^AyQH)1cVp4JRMSnE zH)mOmnA@*MsjLK+n&?hE;pF2RUSDRj#caZ(!(mT;PLF)$OQ99T%fM)Dbh$_WBpeQK zH^!Aby(Jq(jO00rNC4#HGu5+$<)mgR~u1*%ARCE5-&Y3i9)T zeY45(sHiD{m}#oB#HTWlgppnz0XBX(Xx0w~u4v`hsFcf%Y?_GumV37GTHYJemM-H< z{2vh0EqEZBKzLeQ`}fyczgPKrWeAzG^K~Z4(p+P!mL2+=mn%HBa)!L>V3Tj!Juty! zL^h~urJ;QDJN_JhkO>i#60Dh(K@(YesJz!S$ks>K04&0}Db2-OY@PSJQ|-jsgIFxR zU@C000)C>j@EZPSSCJigv5X(c3*H@kiVk;{;Qr+)DTE>DxukCjua%Lp<^F8Hb>%eo z(QOk>b5L2SPvTOVOuz8=f_)N?F!F`7OJBh!GJ@N?f9OpK5|}cI3&2g_rghUnQIXH& z#I-T9sk3uBzZLdBYje69Qi zqv}0D_^I_G<7JK4cFXnEN$a-ay)=Tnepg2t0watvDV7v1+I^WbyIQ5zX_+iF1KW^b z5ek1_w zUH923VdO~=3AVF?q+T_VM<6gMs%!M#iA(DlzGFUXF>bs?#%)w-+gd>>RJF>o4NDsP zQb-OGGwx>#Br#zNI+9G83H6kJ*k&eu4 zYHK`u!G&AU*2~k2O8V)XH_lSBMSvG>;D>_Fq=Vm=!p)NgaT(!tnmD`Z(yl45q;vqW zmt|cn**6#&d;ZR7FSDh}cgfb@$9IB5Au6JsS|YK?yDVI0!Msi1IpQa9&ls5ga~Tj; zWaGk+Y1WQz&lTKdm{*q*6(%A?Ukmy}uE(Om_mIm-b#MUq1c1qM5N1#z0!R7EHjF&g z;t`a0lfeP7pP!|~WohwgKmh?;D2t&G`%WVDg&0-gFLXV{+`jw^Tg zWs-H(HP%@d9NkT~z}LHX+XfUb9e1^hST6{GBsq4a0mYaFk5s!OKS?4h%z{WG|8FH|;n93t!RFVLz)^2gq~-^YDdE@XxC_ zn?7$Ky%9UD>4#zQuz8j(o1WhIBJX3NDRBur{mEH-11TP<4M$1IE%)DZ_dh=xh!AvA zqMWsM1g9;uI;_gsnJUkxVLW!vu}O%gcPBjaH}~#l88_BFAp7+|oC7?YhJh^NG4K{3 zjZ&+B&-{UJNPxb|CpA$KiRU!Jml*T|979;>NmfbkgbuBAJd9sO<5!oS%X*EU!P!7K zek5OlSn_7JPnhYs%kmh5mT(UJ8+ZB?`7g%9n2`F>DB0X7)_5WBu1a}j2sfWNCoVcS zUA-$s1rC3SD_Afj&rb3yc%A1 z%SY$Cc{iKoV1uhBYJ9G8b>6TLOFH-(1%D(y`#=v1Uk=kYZI9$`cjARg(~%#9&RGKO zS-*)vX569RN#kU20%|Pj!t54s4E+q*UD<73W`=Ujj1%9u?q?;YT(Q}h3=jjYh<`nW z<6}Blw1I#}Y>ZeL)sVusUP7@Aj1V9u41`|$^pwS3vEagiEl$}gQ_>m){l2We+F^LV zcWa~pWau~qbrb9RE+W9LTU~k($F;7JIW;JjITcy;y>PHj=Td`4ZRTZ&+1cT8Axj77U*zwo)(QQi*;RlKUGMYb@t{dK@GFv zA#b^!_r8^ob#m8vKKpmey6zlByqcjGl2YU-EN>#aQ7v5UCnK#ZzQK#tPbY$>CnZIQ z*3TRJ_VVOe2IAY^#n+5s4V1e6N)%L*UEM@q%Mfh+dtlaUZ;ece;ZnVE1Xa-oC=cE% z%2Pv5QRvb6MhQggVB(9Xg%(=NtYne|V-Ux_3RpGXe!1=^Utp)uodSIdf}l3+i{C`Z z4Wo@8C4tOUgsS<%KsktmuD=rDwM>S;vQ`#`PNm7B8G1je9(8i zJJ$ykb=LcgpSvT%GIms!Ei&sf6oaqNX<3r<_~q@>&8fHNT#|D<1w2GS5~`?SPqWg} z;3;U>EOh8MdrX${44PJTSC>!81`icjh2tHs{Tg2(A{)4zhOGZ!-Lj+aYC0Dgf63V4 zT2-7p37?3yU?Dwk;h-%o3W5=@e2C)t)&X!Y;Mm#(K;7J@Y70mmmNBzcmuN*c<%o*e0TJJ4&MRsNe9&t&u`kAJ)3H0xWXxTlh@`A`Yj%#qy+{rD})AWT!n^{;m zYn8d`deZ0^CUJxzgrc_NKGh%6y2Eq9^SU&}AXWX1w=BsJxesXM>SEmWcydmD`&NED z02_hWXz4YPONqO1i%IBB<@d4y%Y{)y)&@VH&@!?Q#olj<2$0UV=I+i=HXJ>gL`9xg zGTZ9`Pud!sj)dez(xbP}SGo?g`D!9x?2Q?sD@-9mrLVzt$<-Kqv;l`I= zA7|3&kT(GPDdE~5oCW)6K1;m0A@_z%>Av4l%n>;MOVz?+f}mt;IJ{gwXSS-6by&CV zvX`UQveD*xVTjIeBbs#>glJ?$b>wm$?4ySY$5*{rFMjcSZEqZY&XT9s-S|}IMpB4b zZoACOJ6jY~)Kl~8WMBp25W2tV)-x#>IUyiGq{csQK?b*6;ih@#zh?URVzbNyk_SR-}E?c&5 zCJg@8hP;m2KiC_x9fo&DnBh6$f;g>B=et|6Dz^Sk+vKUMyrWSyY1~1BtKM7)(-g|s zt+P;X(EDSuzy|d{XYNa z8zjK!_5S{0Mda5xwAFS$NdgSjOP1)s&dkqPmhPT@ zApHTR@h{op-%pvLvFjMew1?qdaF5m5mw|rw0>|W?1(m9tC*mSW^|V28{Q;YBsmy_+ z?)*5i69@5nYgjJtG_kmm8jY2ezKmvLbPDsvoKb4sbO0d&z6~Oe?j@OrM=k1~R`X-f zUsEqot}%OE3|x64BvP9!DU;3v?w5l>eA!P_(|#6C?&99XHAMQm12W=kdTh$Hjqkzh zlW~2-W;*yT7BDjoq$X9nMOx-)$Cpk*zi?eN->{#ZR~|1avxo`%o@QBG^e6QZ%^Zvk zJxE!$2PxaDr~3AuPoL_hI%6*I)%$OWU=B{&{yg8NE-`4YazlXqNIYlvGaIMs9QNXB z<=SKBlGp+lRB|pH5S&uHVCUVJm;&LaSsp(!Fu+gJ<*#w6@GWYx&RAR$`;&Z)m{Zb> zi-7Qsf6C0d9dfCBKe61@p9ItE69TZ8HtZU>P5-mi>d%Bxx#E=ei5MgtTSoK_jOE zB3?jT<%e&f_Uy?+Qw8U(g!XiF^+a-bLr_? z48vG@>YjL5)tG6&Wxy5aZ|k;_QxFCh%3h zy+Bw%4T|Q$^Jt{)VV{@k=qKqWg%b%sl1T>Aee;p=H;f$<9}rmbFF^PSp!niqQRaQ7 z34T5h=>OiQ)2z6hq|^kNZ!rNlPMZ0& zOU3ZXqi7OIP=1%ggbHDH8y?vr_hCQp2eg7}0&(}=9D#cxW0d#=HK{5c&+ESZ+p8W7 znKq_27U-x7_Jq}v3snYueNKj?tJH*v|8t1Cq5rn2AHtq)u}Sr?kw7A#E))-0Aj`=8 z4Xn$T9B0Epdu637Xof}S6p!=Ag^i%tQu^Xdc$n;4AS*niP6`ON-TQ&TQBcWl$a$tz z2z`L?1He_tH&K+|K7=8F0N_1D8a(_#k@exw6kY>_`>=V!YAbDw^lDG4j z8>bp{U2XtUG5Gxv2L2KaCBkpcrBMy&Xw`3luOWSXfw`m$%lS~I#6c-y_!x-B)OZk2W8YODE8QYZ5gZn*4=~vs;TF@Z=4}%(9cB(x<6gL`tsrEAy%T`DNDlk3EC^VXSih>3^ zO-6qry7r!Fd_UmaZ#cP9N8{8(!3V7GZzNa;t%b0!t6!SReaZT^>{JOac$uvhI?7Vp zXT{U$){@!bW*qm6xp$0pv{`_nj9Wh+Mm)8X1WtilHDvCD#+ARmpYI$Pf2g9RtP@f4 z@rkpcm@Ti6RgOfS@y$0;&f*VAZ5uqY#skQNf?>lc3*Ad33YHae7)S&JgTHJdQLyY< zylHud^obCvsiQvbNcFddJ;LYt_Lt&3<%z=mm$5ay=+3tJdla(IBQED6nR9Nk1HYl# zm&8*3_~HFctgMB{d&h>w{$*Kh%AoV0El?(+h-(nHg+Z!8NPM&G7h%z7^+lG&FpfLM z#=#gB9tBRps|=~f5H=$r%k?~@HCFfa!nNY`#nN8_KGS~VH*W}$(;X~z+Ko5lb0sWob{JXQWbtrgNepd zBbdjeW)xm1^SrSh%xi{{Z%|WjLlnkA>oW4$e%0ZUjmnYie1j_y#Knd^ij}$SGT?Bb zu12Uou|@YN3IF2HXLg|b8&zpn>t9z%nK=S{T76?|SI!b-$# zYJvyf?b=k?8!x?xpJnZ>lxZeT>E));S(evyHVBhko2*epv2gt(b$ei_!x z83yfTd7Sw`ukjRuSuIlZs$_W*UvJ78|MwE6b~aXG#T%{6kP8JQ&$kc2*he7G1_;T0 zBwPNJ0+j$W5r# zZNK3?a-H)q);~A#hk9%mPrY{e!H^pB`DSpF%*rTtvgxPs((h!r2g{Sb>Trx%u2lz$ zEnYkz^3-K|GQyXgM?U67CVUsmMY$}igk`uKtEqm(d(0v;erN|t(Z z5F`?EuA5Q1X==al7oCeV{&mS}tphI@*JryG{Py^)d3R zUvx`(J-c`BFv{)Du5?SY%L1#s+(Y(HwLW83kKt^?`1@qG)}K!232aX{rS7vRVjgsQ z9R9_;m%)ZW<^o`w;G+xUJP4U)a+Vo#pKtVYQ*I%qXl03aZ9C9!fVfmmb?j(#p)MiOX+zhqi}5b+%8r(sQ1+WWRd3^XERk|g@HeZzbQ{k& z8>gz`ILZvMS->@LHWz6%wVaqbC)CEfuSAi>6@0K$GL{jA^<@@*C_~yY;-Mcq?X2|oJ!h-~`{upo`Wn|rjY|PG# zbl?OuzIa}9_W35POWkyoqn$&3I)M?~7x2oxbGd`IH3{G;Xq>#gayMwl5bG%E!5NCKoHPoB#;hJ>Aj+(Jp*!0{S}>F}aJ z@BTdhdwAA1{IcUL1|!md8kRax701Hb<$#OxfSm>f&BYl}>_x8ub+VvTZy+f6%Qe$8 z{5O~j(?bwNr+o;~-og8p=_!;j-R{5`+@p}f)0;hZkBb1vilwGek(+Lu_5uc+8Mx6I znJncHllLVyUs{}TQVX8rfx$unY`Ioyi%LH$%{y_Y;W2`NFgPLxLYr4E=OE4&ns#^=t^4(Lkjou zs)4W8l?!`cVs)s&3~-PdR@Nu5q(;o!Q}>@IRfZ}W($SIvrw2&`gXl+tg0J`0G4{cZ z5`k;Qh6*D!`1dr>!XZ#A;D9VF?!N`1MbIU%;6n#NV%KrVhrT4>2kahcvz&4SR5pvi zonzh)A)*VF5!fhp!2e$g!Tj}rZtee#vIDqU{L91l$^W+<2OWZel{7WM4ujno0mm2oL=Q_%qN|k(Z0tYrKY*nhe@xi_ z9F-ADrZ*OCc@_UP9ZabDB5!Mg`_%YfqyBFa`26Q|{vTT;D2;~_WCaO+3z#T8HcRl^ zdgqe^7xq0`Ugdh-w>@S&{Q+497dmd(nOAJnLxQww$Fy9Qk*b0){K z`dtHtOWjl{tqv9h^l8vG^}BOI%KGk3+&S~|4XMt&u&?U;d&5sn65N2Ct+HccGO2iV zb2q+i-{z_*)FeEz1~FH|A9~)~Tbdc(2%o^w4=|2urPUX@Xp_Z^$>CF z)^aaafD^r)d|`Qmcut19wGTI*=_V>nSWtH5$iqv>=F4&{5bsG$IUM^XGEh)m_} zw^}$gzJn7_p2`ozivWF_?6!CSv-arZFK9RQ8cw30gZ(tlG#0nox+iKm(K3j}*o5Y6 znK5=fyu^B1&EGJ&vhbG``B@TRn8pQ9Ucxr*vr?v}wRcUHsa`HksXBa<)t{=b zQOiV1b|7Mh%cVYGo;>7{=QaC;X1dgCgxi~pUk$rwBQ8Sp3|Pa_4(AkLH@idaW(dtX zIM^pFZM>BC_KfW-v(RL39b-Qt}5b!&|b+}^GM@j{!| z4aa%{IanY7@wuGhupnjX*W->mBz8QuJomo0$j`DuudYUhM^i}p5``TT%j7WL2{lJf z+Pk{7aNgZ~t=hwN;`F`v_xh|M% z%{t~7_dUj#b3x~X*6Lq;h!gDl;s9#SKgT8c?O0fC9Dvi-OTk#))Rtqi>xX7vc9$i7 zg-gDCn=xY2jzHepo}eG_NMHn2tN;4tm;JDOBc}S*y__QncdDg_hO0Qg2*1wUDy>npvb>tJF&?pUay%JK}S9P~j&M zPzrkYS=?d4KTC1Ln_k0Dy!Uj~kB8ZB5%C(A&ByLHg|b-&Py1*0KXF_1;kcpL#L{zR z@@UkY8&}!LLkDW!E+wzozkT%2T!4DeAIY`)4Z*)aK@lmO(h05ebL^0cMPB_Aj>w#5 z#MJu&#z?o@U=pt+Zf*YE!6V8+nxj()aMEjnFS!%K zKSzoA_LMp1-kO>~#+CeJ&EG!WW+0aZZn|urRLFS`5$v_kIO4Lp6WE12ax_e>JNx{_ za9y)m&d2>7@-_x9b4|)}_f%U=RDoWKt-m<_1VyX#Lhc*f zKG_N}$s|`w%w(=%1j(>k>yR@_(%e&Q_GLc!a)I`n`czkK7(g)Au}79BM?n0>KNRaG z+i`39oUEGQ=+exn(Nx}8KrCfz*Sb+kaTB^JhStg&qsdQmuj7|hotFBZ23g_eAG`-2 zv^tdDGle&GQQV!dD}+5<;Rsl5cKBsHGPH3v+-P6=5cgcJYO40l*uZ16W_AXPFW;9$ z#KfZzLAA$cWi5qPHwHNigEq6>?|&alq%40i-2wil*;R%@J)hmz#awnjiLo5BlchY| z6blpE9fL6%_~q@9=fz$A3H+K8Ci8R}tMud$X!)!5_2;s( zfD&YinXT#B3f8b*REExChp#99gAnbSdi1{7JxjZ*&GtJoqzHoS0|Q~YS9ti6HA$5K zXEFdo_wM`+i_-%Z+*+a3%oJYF?U2Qu4Y#F&8AMt?&6awO9(714OkVp9b%yvPzbK_A zq6$X#h*qv+%I`gICzj?s&);?{l&=Z3(;V~P!|2_05V){PM;%LKDJg~?kk=Tt)y0ItbV2{z_5iDzO-bn_f zdCr+5an*C*wq&rLng{OQ?rXAs8@!FX+Yd!J*(fL!`&x&`!0Su;)pB{j=hlc7s5zXr zw)TMUA=Y5$aiaaqTsv&F_Zm)MGdkzS%a9v&TPg)N6l$)QuOu5SGX&q;K#(;t!zXo- z*7k+tqhCudH-QMFZO(f@#uyZr=eIDbq7>NaD_A{9%Z3NekIQXX=B#q=chc?tGJZ^K zoF&?@knQGd*Bp&KO?=83$V*Cr1eOZc}W_+KV0-*ZR$2YSnX?R1<# zb{ZnaOKX5Tu6$W6ESx_(qrF&x$;g=mkE-oHV6s+txDKF)AdP-o z3f-h*>kJ>?wqcqgZqGz%eGHfFnljrPX8(KirEq@fTwxo~-at z(62}ZNi(7zDm6543(-`5)=j#&s+R^ErW8sQtDQ|iA%k-Gip4YL znG2wSnq8n6VnmLH`X1y;G6QOw~Fz7_9K+OV97=cF*EJ6{h@YZ!}jcGJ~zh02oe zV2)cWJU|Uv{?W|Ebem-k!!Dyw^gFN+m3FQ$<0YE8E3EY(>{qe~R#9oH?w3t;QdYPf?SuvN{N zG0EEFgx$CE*U>aIi=D&LIG)9x1>YFWh!uy0!5W}ND?v9^yIVBxs1(t0(h0MWU3S8E zyOltLv=1|0n8DKM2R(c-(ruCHEP${z?uaQdDKR}K#OUoZk)|0=8!1CGvi&}RIq=KJ zDIL>njnOTh-dClE$TK{3&kfd~`&9`lcSl)tfB5InhSPe-c!#nFN-YvteSgm5?UrA> z+<)m;fIs9B^6o7+7TdXH>^rKgbR@9OF3H&><4po%9@uhTxem9Qe!AZ zsxxlsLv>QZS7=TGZfqwNbwhcXuhxWU2HZfH64UXl;_6eK@Xc_SdOm$RmJ#*4O z!!U<0PrcMzxMfFTB7Rew%a`Eb&Q!GFn0*;j-`}M4ApGH_V$Fe%Rz$tMR)~%JdJlDL zo#Ig5?xj)vYL@qzj`(K8PU691JN&sSVLEcrSsOR`bWdt5TJAPy&EQHey>@oJoXtQ< ze17;DoElkuuhk^poOR~&fV27>c^8`1Il<&Iap;Wjwu~NPVh0kYx2$)KZ@zZ_d&H7s z|D+KX9Uo`r9L+7(rEPlu51b+JZuA*)8a9!W*|y%MNZlaq^!_h^grAA@d3`C?qWkf% zb<)1$qqKLLJ~_ebp4#gCFv$aGho6N#+N8P;izIFGn1xrrNv4Vzk2)UNqscX|~u!%gE+t&)MX|^t(Y@|1= zyfnNtm4B#jpI15qtT|g^V+{D3~98UGDvC}}_H zlEc$-^XxOqXOtW57}$@mkc7sb8K`hH;PdW@`l8_#FF7ec;|ZuWCZ)#bz(#JSKGUUk z(wMl`N!5*&%G$3koV1RoW1Vi_^trN9#ru3nFf$B+r zQ~5$}lg1Ph@`t3R-)NI1#GDLLN%f5F$rHePr4%&eG~~ZHHp(ua{39g%OzX)Lzm)~x z-z;t3B=m|n?DiOZa4~wch=1={3v%2Zqr)rqHLX^e-jxepkXG%%^{SC&fr1+BBjwr` z_O|+=?0t)`QgXfV8Pz>@HQOm$tfYZSmytx^yh6yR|4IKti|Ha2Xx=T<@TcUimVTmr zka@`)Q8QM!Z4zd>4Y*9;1={lqrWVx@qY9Iu zSQW6MqT53B!o9Q=F)r{kz}m0b-KQu+9%*lu3*1eb(s7=X?6TVYu$gVO+bVinM@7~E zWs)=R-sf&V)~1*%i`fbGU6MNQ)H+F1P7>VOQ`5S(kZnimcE&|EGbW}XUvD!MAya>^ zz|VlrA+t@0EWIfN$TQGPk!4_o6&rpVJ`_WDoFEL(>j^`Bg{gWlpYv;FRs>$_cohw4 zoRLIkv`!6q8xg(-idd*;MGLxr;d`y?jZXz}V0n2Lf;D+E<+G%=+T@BVOVAslqzO7E zb>-JN(rPzTwqBwrgQRsBaYzxWb^@Mee%#bivf?JH&ztg>gR%?$bRVGSCxk}9J$anX#n8f;Cr^8zliCzK%w1wZyMWuZ73@BVpRB-zOKZoFJq$L-!1@!+A{Eboh(qL_rsT?-1 zcQHeD63bojeDA=4L9*5SKet2f^jv8VCUBkA%=XM9FyzuiS5W9U;{Bzb@hSZPVxv4!!)?GTbiFy{{~rXa)ejKe|6M|pQ^ zpEvZs86%=IFvs|Ly;VZON{O(?aV|%~w}8wU!Kwo37STA6(anLY!@v9!VmXGwn2CdF zzqL`jSwWiTlZNASw3d3YM;-y(ALJCkh2yTOy8^J;w?}ZuEVI*}`=$#eh@E`_OkhVE zwb2YNnf+_EPN}7L9s>2(WBWBr%Mq)zm6ZdG>E}cps zlf?DfZ=(Z}L)?AClRYf$M_G5}leq$~G|`eDPigB0*hkyX+jpQ>httH4v+}eH2bd+6 z-g>QNqbF;jj?^j$N0$_eK2)~huF8A#oZ6}ikmR&9E zkA9N8e#S5{X~8v^!^~>%>UZSQJSZNK!;!XARNjCOOP8UWB4F^ZzHPB~4q<|HQN^cC_OsCt)-JjX?M+72a9=s+h)nfZ3hLkJtp`M%qQT3zCtbthwkB$SeIai zdf8S_qM!yICXm6saTGRd6ScnAyGhBw1*jsWFFg_S4HM%Xq6 z8uIk3!M>6Yp9_y?Iw36#OcBrWJA7 z@9K%BGl!DY%P=H!*UhfzZ4cH6jjcsm zeQ6bqV-&8zdai9qku7Vx5AqjFk%?ZQ_)#7YmolUb-I?bS*q+x^liF(8=L^oDBQJ+L zOOo3Tn#2i-RP_r<5h5fgHj9FM+J#KH3>2VY$ z2PCVQ@1Qs=`7aHo^$aa*Mf#JyPJT)x*zVR+p4i^s_7~YSn3w`3e-Gx@%Wb@}PT20I zLnUnEL`>~1WcF&chMfs*fN~9ztR9EI3z>cPA z#~Ie9t{dO`sK`POg~8*2%G`bbE9uNcGh+hfQC3VkT>b{I7yd4_rIKY$3y%p0 zVNmC4mhuPxqP;a0_c7kN@O1a6kTgIG3xEmVLCi5!#%>3Q8w!bKezt4nG~~~+*QhbT zi7@FLlG*N(DRE*s0VIvNl&u#jZdzLy-2LeWTi+XO-8-Bi^G#qTvI<*)k|iD-1ob3} zNzmv#$N>eIsp+vgLb5Hox5p$=4yqtwntkiKU5t^y#Ptep?UCH2RTV;>Z&XOZ5->h6 zrC9ImLhu2A?Cj_rqK!DH~5iMObNqs(zbZ>6>G3|$zb;{;Ra zq|t?b1IVVqq61+g3m3%gGk=LIge5a5BnJJ}`tBw28g+}<}P z8D*TR^%La~6@0Zl!iU-%-x97S1+A8VY_OjfWGfc#a?)RK*CO-n%W<6v!`r@N zdTuv6`mVLC9rJv}N2>Eg7(IEdRfljRZo&GE43?w~A6?kNCB-Yo8Ricl?M-_Q)Vx+R zhRX=Kni`go$QmXI1xR9eiW!_8o$}y5t!k2oR`?PwAqtbY*}2cbG~B7=03xZE0Ll}{ z`-R~jC^u4srf40r<2})aflisB9k4BVHs*h}6`c7$EItNOiv z&_Bj`_T%z?%bK4&NAHDREY{CV?YobR{xxs4OSF&mrXq-eVM`TwK@Et5tzNj zJSNBKFQ1y-3b9A{p%5|_vhbyvS2YF%lTz0_hP<)7uLr*Hs(K5?xV`)fI%$M*N_Ehl zb}*M#tVqA8onk7ip&oS19QX=zxqp$c=7f|^eK#Sh%BQzq1IU z!NaR=ey)`**UqN|ox+lbr%K#$VWXHdvBMFKBY@hEdoXl?Ryh6AXj1p2-a);ODeJs$ z7X1O#w$E`W4Q?Sjf1u5>cPq(#B9$R1U&P(pWwbMF$s|V{b3re2Ow?g{$@jAuPRsYl zjhX?)sfiWGo0*To0lt|rT5fkCR_{v2(V_0DO9QAB&!7IRMgmd{`hn{|{I(!bqu+d2 zIAIV;P!u>`LmRV2wZqCj?41IpuOvkRi@GuycEWX@570zfF+DGMG!;X6FJ+}cOSvu2 z7iHI=-%t$s`rCAcBjv=V0}99cCduKz#h~GHj--y;E>&&-bM+dU1CPN-DjeR;8m(b* zMnN{U6RM^J6)pybB(ajX6FJQ`%?Xp&y21)e^OX6thzJs zR?I=Vw#SLYw?alq6Kdac#+1a_QWLM!qzaSBC6ki17pX9VQ}F0i7itOvo{#|_k@NRS zyw3U&i3(;@owQD3e{UGioN_It(3xOL7yxb@$-s>$iNqx?)s)BZQE z+DzKG^eN;diTgWOwFl@na4n|Pl#>W)zW>El=}8^~@gUmXAQF4|7gzmqokYIT?{ZKi zf&Cl#{%S;+vKf;T?|xePAOXYZmV~9B_j!@8sOC6rP=SJ;^cWv67gVKK+U~d`red;IaaM0X9U5i zJuN&;hY5WjM8CPjnU5yOF5+GH-UWL9{J$lNV!=UUa>>d{y@v^kkNnkL<~~tGx{DP{ zodA42F9(vxNf!l(Cg3OxnO^|$%VjdAldMQgzZ-F^J4p$WhaDWEUFSx0#wEx=F=3t z4CydtVuGUJe_#c&Qtlb(Zr>ZbPI2~_BiSi}VZov&>euu~%?rWMrPtBYQo`5Xn#*i? z^+Xz6AAaIhhW9>tXT@5*l8~TaRMva6CBPrpWs%610U@cot;FEiq`PW$H3Em=BcSCf0WZ)x_6x25&hJ~ zbMfVfDsk&R(LAxNp$ZG;l!b2hY@OqitI2+G|D5wp&2gP`4E;Sa|lm%F{3_3%j^dvqFwOX9ZEq{$qPB`JMx$t$BQ zB>3cVRXmRO_ck>SW!5l=ZaYl2Vnk70io9lOqdmNWPTGrR#vJPv$jal&d>-3RG59^G zuegg_>jq=ijgM4}!M22uorhCo3peP*6RLQ?^L`lktI{X2OU z3XRwt;`zLHm@}g_e!D@(C~XBKpQ_n2Co~nTX%;=d;43zsQrXEp8}<4Em<_ z{c6I#mfO)S)h&gA00b>xD6{NfLIFxl#BjY}2d+UVxXZd-(7~gyQ{HhLC##~`nBw)n zF{!T{&~d;Kb9@o*{l8h%4$qHDDl1v$!D6sOpKJ$dZ{Nt>{bJ{MkHEsorK+sGL zW_D~gF%~FM{dlcb2l2RJGTmz#FyR$Cn)Hzj((LTv{G>;lxyKwZxn1wC$y0BOy=5+3MM?|JVMYEx3Tbr!GnTK z-JA2n@a4vaJzcoKU&<@82H-UP(gHQwglX=cXMJ~!Qq=MTu72Ae3Q6NW|1Q~JhmQC} zp2Pah-$_Ek!I3P%#+gVrr9n;hzUEJ| z2)=8%KJ4)0+BdmicjqMO8mz@OK;4B9+CvGMQsm{*pw#er`yJ7nYzl1h~iKYJCA*(Hp^SzVTtM=aIH~q}q_oLJ>BFc2nv_YK7&9E7Vbb|WDsegJI0?+Uf33`Tt z{3#JQw$F)vqA4%Hoh$0+>r}I6NN9`D@UGDe4-?RoF+B{b&o{r$ zA)mHHECln)6+cuOMEY9djZKTS8WNmfh7bP6VTfLT<*QHcy9q&_<=GoUFP;~?vXaYqk9)nY`A%fzkG_kMOd$M)|G^Zjlun?GWlfIjpB4wLC3UPJ42H z!J})c13Z=m*k2Xg)bAF?n<{p?9lA=cLxFE5#no-=EXSY2H;`kD6xWT;;)yLfEM#b_ zAA8fDQemzo!s+j}v{){&EO85mydx-=9#_n{t$=u76VE;^50r`5SP&hFUxf;+&VSe@ z#8&LYH%JLCMG}{-16Ji_w3Bu4r5n7w&vwgqlU(DM1;Za)+e1n(y=N~UL0)u)P8Yr0 zHPGyUJmTcWna#wGhMvG7>u3_rmB~noJH@$z;=8=5?xlUvA5<>A1YxFv) zoJarnLq_1zgnjSA!@CnJO9YGWJfC8ER7mvT_Zt#Eto%bIA{Tkmtav@SbO4ihJ%{W0 z6a084G|}n=)Bm31nJpv5R;?cZ(nbaF<`WJ2Z)lq&iBy#Tu?*V2MlSp79CiEnznd+!;1dWK3y7l-|GcCl-?Acs+f(*@BXEy#^4XvtIV=|KU6 zVJH|89s>f-s|SsjYOdscP59&gh;mCpYSF`I#)Eh_Ko1J}lajD8B|8y+Blv%!R4X18 znbFhkOAU%gcQ@)UjRHQO+2bda8Xh~$V|MP(W~Avy){37g3}OmDZx13|6wpaCgi{O! zI~6i1-cj~bA+xgnrQF!5S-r;Cvyl8)4+z_#v$au&%{Qtbb-LQW*wzpW*HT_Eke^`C z`-|jRs{FKf4|if1714`%+D`X%clRxy#yBuB0jd`nloetR|vLrxBb z_FjiOvm0B^FbjRp%Z|s920NxC%k4bOtj1#bFA9PbthmeiGwC=d{(LxyysyZ8`6r zT64`6Bih@W5Nhq1`1{w&;fDwPD8 zIpddYR}?S>u02WW`qlQwL2=I-!bdy(qGZZnku-xFiTxI?(98^+@`b9#N@_ALNZr<^ zK*IKRfQaX)joltvb$70xvN+;+1ZQ4=hJHz(+RUo9*eE$}kQ{|2-_=|lAA1@Tgt(t_ z04w*Z3!f;?RjRKjcXkgf=iVL{44kQr<{=tlD=;wWCrnJ6bp>wF2*=j%CJD*?aIuDa zY0r9`3pVI2?*n0%#=@!ic;|q&b3mNp+-Q#KpmUA>Uge$H1Q=qhSq(+l>B$;Dlp3=$ znmN*yl9btb^i$u%>}u1^-9xXgfT1h^re6PAXZz>-F|C_>&oDau%Hs<_AOzu)(f}@1 zkWn|PNyr!|ds=Rh!vKL-GwXJBr{v__eQRDdI!(OUEX9+yd@?H`jeevsb>tp!zyGP! zd};jhDnv5{5ol_E#D^6^Fy=Tugrw1qFBaDvWSl35CwOev#B=u#zE1JJU0Wb!WtP$% zE3*FnZvA9Fb*B+7`9VVOizN#JkR{gps(}Y^>26`nED;O+J9RMv544A!r{DH7&xUdA z|M(7^LCP3H5~NVF(rz$_(eIB1)33`L3=j-GvIQ0&zvk+_Yu`iL6DF#F$cN|kV-ffO zk1P66XmGBrR1JlVrzbxF^9bU{`Iez->C2+m>d1Lqrp+b-zQau`n_9VQNKE?q%4xiB zVqyBz>AKT}-lirKOX=NCf9q9Y5&rN#Z8GTU+RtZQ#2ujt>76@5JC^<1}m4utMj@XZr8)&$Ob~hh(U4iqZl7Os=Q?iN2D6>0F(r{YFh1t6Ov5~2l zKas{v>wo-5m+z`(=>AMDWG`h!SU>hT+Okn@{L8MPNXx&Dk`e$wEfp*lx_JWj+ioJe zkD4Gk=-TZM-!ewlG$_f^(#rd`UQmz?w_LFiII$|6nj|Imkh64IjI?<7P9pD)dPFJm zsjTBMsBwO{gJ+hmB8T|%7UB#q?+HiJ>gu1HpW9Ke6z{hQWd&jfMu{`{gIcnlUviSc z=thTqW-#5Plc`yW(&F7j*Rv_5G5-VP4}Ws^aCiNAZ zWxiBHa=fvUSo)e7zq*F@@%5K}P)idgUdou|L7ut_`2Imw!ZU)N(%*v$aLI7O@$qj% z!o~~`PChu48oHtSukb-JuTpUfE68wW9>{eA6|bt?yp}j1XtsQTreT$R>c!hc_so92 zf2jEr=M@{W_=gY4clJ!@MBoz@bv@n3^q*>L4sZKMpj`ht$|1}0IZ*V|57d5Rr;XB> zVCY(Zx+I4zb1hR=S{9%J8ScCl7W#qI-PWVw0?2?@l9@UukTco%FQUifIPmo?@7H`EC-NSj zO_}C-=82wvb4@16BYIaMzRu-Bn2K)Jy`&P_vs4YDbyxt$@=f^2sEz!L)_HVc^z+`okgmBsjoIuhwnvd$-YYi+si*PbLNDE+1an0958+=mI0A5`i09g@`&^=x0C zKOJ2nkbTvK&M2ck1)8y^!5Ds0;YrF7o8p<%grkrbq^eub2XK(2y!Ql>ULfK3kdS|K z5{o|q%9Q_e84!s7XM)tfIi1#*s82X)43d%#k1fASl2hMd6;G%1H>&6i_1_sm5QIfkd?$qLaeu3T3Cz z0WpXxr~U=4#_d-PFS!0W%Rp1%XY9#N9wfzH?Ds$gr$P)!1{pBLr&7>*?qtymo1Mf@ zt2CehYP@w?qge=V%Q=r}?jX zwEnM60}S|ofyjS>$p1m;QAx#m2oA=eT;fl`y!wAc&ySYQk=>#P@HLP~c98`4{#RTW zvO)gyDu7sl6KY4F&zwL&aRA;o)+*+-ke;5SrKcw&oxDgoUv_d3Mcf!D{@tCkNGg7K z4k$L}=ba=NP_Rjzcf3Wyn!aTJJUH^@s<=5#;|UjGmk2Q=#W1#+0kcYWN`V@?M8x%I zNXbf`F%Z+YCoow&6JQW$&z_?AQc7TOzx&RVww+?!$V>ZkiSFAg65p|f(BJoUT8XC+o&=dsej-@_j9!j&y7#|49TM^$;D0xEW!+9`4hcq+Cejd?sgc5* zKYyyvTgTa-?}pNqM=!$q`$n}l)BG! zbwG^W9pz5~X8cZ-kSarhw}tX!_44Y;T}_Tdd7ier7GZ0(FUD$k0y2pIt$OpT*we0pdf`+bn_Mq{Y`F4^7~Mg>{0>rZ{p$@CLC~1#&)XdQCI2 z((JhwSs!HuJEc@TH9El0Rcm^4?`S7&)`B<9U(kK5xXnFQ^OEb_U~bV9c&Mu3*5aKRF7m3U#3t?tX;))_PA7Y9WIOaOUPwWGB`* z)l%-r1h_$$e|K`@>wJ6zXLFtHQNvcNI~KEK=rsG)W+=X@%{`;pHE*EdzHn!>pomL& z_6$qA_x_hV==cuLsEeVuqpE~^m$1h>LS|m?&!Sm^TES3_94je1%UOfZ?FtDq1o&ES z)Zxi_)Mwb@Q+I>WP4Q!a7QpS>oeNLZa{@~VaSXuRH^Z!Rg1|86z!LL#UoBq=3Nro* zg=LZ9=yS6|iGg8fXWIhIMv!MAZ{J@aa>IUE_Zu~E=p;Yo6+ zmAz3R?`z%!POC6T#>;c%nr6P|K>8~}45o=m(vZVlTPm`s*@&{XI&Hbl0>x*ah>a#P z@}9H!Skaqp-oGrAS-0JZFmAcR->=$sMBFyH?jZyt=9XyrYFG&`vp*s1|_Yh1`c7PlDeLh#1UoE+XyXwXp7RP*D|F1^uEnyxtbGg>f-VFLYjA{## ztVor(0^2X7JC4^0+Y-E$EAk)R|jYBFQa8ySi{| zn#Z>UnpIgX%p%-Ig~)Lb3y9er0~%r*)+vg_O+{zO=I&9enV8bp;Q!Pf0Qz6>q}{03$)L6 zT%r^~V z7;RY-r_tk%PVefp-|y{cIk`+iFu6)2X=U^{-K=vSBJDB3jPxL?f;E`-^kM95>>+l@ zG%(w7Aw1+N#wPgi+MZ^d0J7(=*S9e~t%xN}JNyk76z#aLqw=v^^_MFY^uw2H4$3A;!dW0MD?# z9V{K)8&e#d$LOeD&q85tBe!%IZD{)D3ffP*Mk7MOH}X$$b*JKN@to{K54yH3s@K{a@kaV6D-#gzrBD4N@Pf+Ufb{N7m2t z)vFY?D!?%Y$g-j9o0*z@7M^PhtQ1~&7w~M-O<%2qY7PWyYsw?Ik{_xxdhk4J?ysSE z`ShiAiw@y-qwd!sO9-4~@zV++`A;l#2GKGzk2>`xzg?M_-Dv+K0>p_VSriv_F%6tx z{X?-?@QPlV#?rQtlijFEm!M_g6-omuqa62Y+Oke(ecP(bD=%EI(MLZ#Yan2j<gS@H9Z^}G&g7}F5}K_L{rWp!mnI#eg$K>0 z8s;JQ#vRF`H-mKh?4lKVIq=RkXp&EW1w7YGr0vmkFYOh$@Xk_;Oh7%a+NaXF_N3h? zxS`=q@tjALGVf&;Zh|!r#>slzVroIbF}h_7O5i9_`!1M^ijub+ZU&xfED-OEt*h9Q@xrf3T)M2}uJ z$22Lq#j10Z7#K(zRh0SdR4BAv`l6q9_AJkNwrmmh;(D3_XIb{6!*U46%JRoX})nj$pK0<=j!J*d+1dd&Vs0sD+Rnj)=|%ZvIw z$CGsN-K`!XdENc12`b(u(QUK_H3;4pZEZ;Sk$Toj?n?0X)n_}IyGE7X`L6GGe;w%5 z-wyXkX2j!pRB5b?RZR0+&1REBt3S)<`lmht@46&93GLVxZi?7TkE^lC~J-1HLgVLG2n zj-TLoAA9GdTCasHm?`_@m@kgv90Z6I*E7^=-Hnf#=5gppE!qtt60h|K7n?Tf;Q1DFF?d;bbrDCm=zWDXIUU%3p#~%csd6AC1J``* zD}qur9Rn9)(gpb=n^J`~5uf`Gx%vdHTKI+Z4}hyt7s`K}MOA7{*>sz_WDX`|WOWq3 z4Ed|gF^A!^Xy2cgXW{QGzM95(U4I!;+Kg(s9>u2DD%R_shsi1Vi`#gOGlHE1@~cX6 z^IMUkLr#e^zTWIG{(will@ zVjgNLvSv2{4R3^@U{SSJR(mrvR9<&9ADj@r1u-VjA1fqg za_ne>?yd=|Yv>&ow3v?Dlub~M%Ud6oZRo{5D;N?kSc6|hw`tvEj-b@aH~N__METJ$ zlcA#QrVD`#EV6l?hFq3qeN|VpPP?hlIJht<+JE!+=e`X0jvZxz;t^^JBj1Gu$Q z&tsEiT5wq6m5mm1HQCYfC)CgON?x52_G7DdSL0y39(u>WgV52wQ1y;pc;sW+6vjg6 z`M!a^WmdIP!rZ0Hd5$l%or1A`TSk{0=ecUO@t>1~js`O<{Lh=tTI6GflnX3ojf%bh z#0PDFmUvUO=ok!~bkoafwv_TNOU>YvU>bq6bf}zxtg>VxUBv>{6HaCB=q>a-RUIZ5 zlP4jd-I;PLJf1yJ&Cy-l|LT226xq-ZqdT17kg-Mr8Las#pf&pREOhNflq*JDLS7ji03Le#D)Y@2?=XJ9<{>0K2+XnqJ~} z=Cgg+ZAF$9;rK)2ukzlW23WHT{3fhuglHVRUeaw)xzT!fKbnza`tjCC!Jn0fK`AUi zinI_Cu5zF+3V-I77epzw@xi6?wsHR*M^Q!~U%1z;_=svZ$~&||%`-nlO1z(q>nhE{ zl|qqdT?#V7d^*c9gY;!J;Onu;%o}UC8JRUiyU`9;@X&RI`(FENM;a7l=)FCfw!+X9 zEL5F-5+p3iB}2pZ-1U7|T97|NzL+-^+8%#oAt6q~29ZPWxx+Hd$HGgmS;3MK-8wBH z)UnkBJ_eA3da`aC(ry>LIjWLQ1xy}P{g3UzKldZh;qK7ha;WJ`+ zy3ycg3aR1ZK5vI~voMn^#C*AsHKFnUqpHUkAJJo~ZF`AeFa~Rug{sb$4u)g@SD9 zO11l24o0*^=g7oj#H^`7QU;?fVxN&vl5BKbR;@1eM*vmhtV>jr$X7h}idJ{eGi)9= z1y|MyiO6OjO^JfJ%&v%a)dOF?ih$LV=j%coVTP23E^l3O)X5Rk*!%a(2H=|`nOH>m zj|+_CA63f!h$g?yKVCRb{t+U0U67{Ij-p06f_|5dDN_RN8zQY)NdMO3@+GGOJ{JNV zLhLR3D??RH2yyM5@$U;a*~?DkjNNAJ{aVt9@9L;9J^7VpR2Fg1L!RLY{#keo8X_p7%{D5>J`Lr+k5on2@J!$`JyVOY!P&_Mt9;8qs;FdwpkcTda9k8|M2$ zR1P9O*5|Y`QP9^U-9>g7n#4SN63cH}NShpqv~3m!u6}8JMDkOKYc&e_isYwcOrWlp zpwE;gTZr9??_jnoL7&@4u;%0zNN7ueBd7>yuVwOjOcvLBIlAIKq%7k5NCw%)#ciq{ z(UpaQYYPTBH=NUVt~mE+kfDDb@hc)O^$XRU?=;fQ{TQ(k9#Z7(5mbI}gC6NkuwaA6 z`ROn{e<(+L_owcV(H+cK8d^2*aRhp}tutzj;j^=9*7O}=^2>R$Zi&veJs=xvIzv^+7hVZ9s`0ea$EkrT#Wrr>j2|7dM)TWpOR?oJ*3wg{;b#=;E# zE9z~LkzJTn2c}#@Re|oIkB>UD0KBwRpIKlx|EV#nnU&2>qn-=ydyZqwOJ)g!GK32E zTQGxVrh>Ado4;ml5E1wi_#N*;Yz}-xTh(|~c<=+OSbRA~-=o~PMp*v6PP%?l5_5rt zR=`f=V_eGA?5LCs3iD^<{McmdT7T3yt6|Ick8grj)&y@?V9W(!YocH+S8?O4C2Vdk z`i?rL>%!6Du0wIXphc!aa_~l*mTZq>TL)}YWRew0^Ul|3nPn`dnX-6uI&_-F3DkR z{Y@#=9wuZ~;?-%=aIB!~>=e7%;hUQ|&u)X08Bv47bYJk+8#bmICDyX^IdM_AU%)Whg z;d9Bj$No!G^FaR?s-UHIJ%`Q)+lX+=>N!UO&TjLG79?BN2?aME^KH-hnJ_+-UW9nW z(jfK@dBn5p)Q0hpdM)w!cA9?0Oy#zFiU!X1&l?o-I)?puyWRiA-dlIY)pYHHf#3v! z2KOKd?$XeN5Zr^iySsaEY1}msAUMI@AxI;^-D%uie|;yppZA$}X4aYyF#q-Hb55V? zs$IMGzP4Q2LrZbrA|syn*wH3SN=r3-dSxb1T#Aax4ZqZBlBs@EHjYY*aSl0?qF2&8 z+{W-GDnUAFOu$4hvNTB6(4e^>dab{Lo~X=G)Ei49rYgVouD1$^qA|KfmYx$?6SilC zOrK|#{vP2Gq174DG0bK0%yWwNBlZ5#&Zz$FT5uiPfK59sOUqcNtNTG9Ja^Dp0Ku~Bo!eHkGr7c*54zv(S0bR!BBY~X)!cd zL%S-UMpar_@`-bcX$tpEF+~N}cS5?;EjwOlEzo!ewT7pQJLPPIE!DDYMOQp+NlBTE z`R!IQ-C)>rc&KfNi2YOF2J4m0p19;+9+)b8~FmBZrdGI*wEP z(J@>Y_3n9fOSreGYJgNN%rOFaD1==M1PDbVe^ymZ{z^_=sZ_)Ls{!wm7gO<37mb` zKZKNrTycY0sH8{g=Lr%Go)*S6=n*5-vX&8;SJj4_EazlfpU`zhx=Ey(t+Rcs`P$lH z4)032`cEJ|=KXG2mOkx{E)DJ4!YHog!rf1Y_zoqezNJaV6w9l5Q&&F)&y9iK3=2Gs ze$8n%PGygU`e|yn^6~uBC>4vR{X^zw1Ak7{L669l*Y{J9axf9vuXY=`#Y?X|kU~)V zE-ct0DWocS*uJZZ3X3X7DHsBSyzS!Kx_uA6PK+(j4M76|`26R1?&VTLPsP#Lq4(FThi!wkJIZa2r`9_^ zT1MV~zf}q>r>)AkJdN;r#vL6uY3YKgc6o8TspfTBLqQEj?D5l5#<{9D^$>~eF zE#30wW-3e;XB*zNTyqv|zum0P(A^5P)RdUkz{H}>;`P0n4rdj-)r(DdJ{U!R`Xcl$ zF^4ac(km8~PSvreS{4|7&wKmnCJ?K2WCDq)09{Abw&7Se-#*pIE(##0ikyiK(5kXI zFHFN_JEhDr!a3%}gDZi&Nm)pxCA-#XkZ;Y{P;ZkigCAjKep=;-X983>GV-*>*#6@E z<&Bf9eAKxh@XUGXT&{~ZSHm>4AIYZj`HPBHX?ZY$)&}z#52%iFl6U@`yC_YYJndz@ zW#oWaK#U3u5KbAxj`vVW^EVNfe>#Kw5SIEZRT2md=>UyBxwrs3*%Z;wS^Wpik znLsP0#WzO6qj&sydN|nm*2wGe73%h)L1p1DpYtOo?)6O{W0oo6={DrP-19fCrTILx zQA*XH(%XDJubl|=LoI2Zp0rdl- zX6QcG-JaHyalPt8?`3m)bhTrV#*oj`vRb|3ql26)We9y$WMV1CK^1w=NyOyqmov9f z$EBP9CHXr5eZQUFg?XbEw$}koD;^GZIj^56b&C;)P8nSPFzbMc;-7~Jb19kiu}ac% zG0=A&G_;(r!65I5n0j#WWiOF&aQlhx-j>WL-r~C%JPdXjCH*O!@eDr&2-{T;MQ#SW zW8OHUL!D8+s0RP~E;Y;Phbn`7>11W&OSnR5`f~*^Zk-O_$^C+mUsbh8TcuR@n$e>E z(-8i0Oo$|hv@sW0DQ_0YW$V|m$>Xx8G<>ISiJ5ZE4&0`4vLjb%lu?M=jw%^?Mk;<@pK(x;Dgc5YB{)_U~-SP;1J9%s%v zYU2_Sze2eK5H_UqEx~pb#p5*~tJWcFFJ;%)=zz2P&BXXxcdM#i^<)=2Q5S&k0N76_ znw^P{IaYdE(QHyCovZeB-fsO0(POX8F=?6}r=6giyKcxNHxf)lv14ynx6-L@Q>n;M zsr|jPfk;;`8~}E-sa7xi(JJ#zgyYO-W-*YO5#z&bTsx|CwuN4V<-7XVjVY& zgmdM-027QcAoEJ9-w$=y0ugevOjof(y$QZ!D;vS(M^4hiPtl@q7XV+VHEB%r^iHn1 zmAfPXg|qLaiRO;)Wr;~wPh|h*9e?w~X02Ys`N2t(0yw_nqHbn6`q+=l1h?@z7ZN(ylEi6;*gwlIv&2}3N?jbefhNuFUVdKTm|3~k)7h{PIBKhNKI{nSUn<0; zs~hD6G21b)2-Iq)U;fyC%j0g>TrX?9PmSL0E^~0ovytYZ6d_}=MY#a*oYatQ@&5qf z0R;@ZFT7#4jt?;|O*~T~hMK>4V;;Pt;_kO_b+yu&{KWekD?FH1TSwj9q%~%TY}Mf#O^a4LVN== z4ieeku8Z_Ry4|!}eWh$3DiWoba{~ONXs6Nt95$lJDVf% zLWz)nC?sF5pz;Ei$2ee;qcnViock$>!X!!*GeF?js!=vFyC1sqZ|}bbSXPn1O`frS z<)vMlldx*$Wiw_Tkp6P&5GOt_IG_fj$yw+$I+%*lbSEr>;uh~qefP+g_2CF(!v zKrp%icOEYrK2A=L#_TVTkzFmMZ;iI`1j#SZP;#K}VV5x>gCiiz?(k*kVDX(~uG(mn z;^7FZR-lZZqpC^kOEXsh|G@C{2e3sXv!&MVjeCZmRe2wzN3yS@tX?;r-fFi8fPX!a zU*K^Ro9jtd0WA*EK}M}LWoGPcx2 z6#uDL`pI)jl%G&-C}Sl=EkxSXRtol{ei+N5nW@O~`f6^z`I@k-OU=2J6PIR~Dw5U5 zUl{FYo`f}=PoAXHvvU68+-D|0f22BZzwaJSYn!)P)Sf|z>!{b~AkA2wzf9XTh_-)} zm%DBec9egccL|xf-rx%=%#U}7LyAL6v=3hbbcPP+ss%o7CnV~Rwimbq%k)vjQk)1U z-y^tE>bFFfJ9^$3c~`OLXeVPymwC>KBQC(8;eO7=)hgM({k24cpsNVtq|W=q*E-ZN z6Xe+b!2|6pk;FrExuvN<-*5!^XuQwCG!XA6sBgA17(DY+^y>lRc4*Y~N>aU16T(2j zLnb+Af0tI!eKsQ9@Fn{mGOW(EhMR@LpTp^op60lLGx_p51WYmWE_b2P|}#k3Ww zQ4f1U4DKeGK*Ad1SX!FvOrdLQPBw&ec%-A%loY6oR^`ipgoOQlxH^%| zR~*)amZ?dM0k2yTj1fJpHrx+T#4k4L(tm$W{n_VS%rv~pDcHqF|7k}nhY*Z?%>^Jy zxR*XIKXs@h`9SPTa-2`lf-wYc`0OU%#irG{qKF?;}ER*ZOyV7{_ zFf=5j7%Vjl@ij=Xr5NygpXkIpI0W+`(<9+KJw;ES^?Vhfp^|lIv?r|)<-wPpd~PzS zjF+lvsf$``lj32M`$Kq1(q_6Q_6+2k=L9sUI(+t48qIb3 zj;oFyA5I8;<x!`Z^phCg=IM401miSdbixrs=6Rc$c*c+Ki3h!Y$?u$}9Xi zGs5ARsF8l!yVCb66)Jv~fLEuRwc`amk6FoA%T=dE85|Q}VsO71Abmx|1xR%S45tf{ zM%X{_lHGPUYsu6ZDB=wF!nV49ReV=memX+J!eYU>7@?Uz{4vGVqRVkpJ3B^BhQw#v z&6G!)+5iEOg$IcRKrd#@0gzzdLedNy8Pz-&a~tVDpM*AZ?a+zD9*~KV4z?%IWDwy# zO?5pITM*12iseU4&%y7`e*KvvgfD{tj=0{&rZ?q%iqMycOS_cIf(T)kyuLQ(skR}{ z8@6jfVcs88wa+|HpMp+L19c-1qUL$d=ad)sg+3dWh*62|q*eGXW5O&sTTdUC960J> z$Wvp7jfZZ9l9cD8}q+m91#k7L8Vs{C>EiL6alc54^NJTyRV>6-O}aP}y2Q=Bw_<`$>7uJrsP{MkN5+&y$Ss-rS4#yD!RIuk`p*m%RudO+DXnC?(lchs z&9>e_SBUldgE3UF2-=FCczR{3KLs=kl{n4Dzt(A*o>dc99g%lfX0h9g1ACLR4SO#M zVh3T><%07KQ&T_sp|O|pI%{r|7h}*HnyYj(T59$gR?B3XIQ=NomDGM^!5x)Hu6I1y z?kH3zrxh}9EcjG!(!tsPim+^4<#AL29;V{iQ$na?pU49B55ZLdat1D3$}uyqc&4dE zM<+=`w8*`z(^*mAit!|X_(m_y?=luTpaVTuQOufqADOzZiZ~xdKDRL%D8j>PuL-+y zatyuO{@gs9Mm1c1wd~F==$?fMBj(CjW~<@qPq{e?t&q#DYBWnAX6nmeddR&ZzF79I z_a(`qMN;ce7HsM^gvXvXgXL}v;)Sxaul4O#03&ddu%*jt#jGx(p+?}ZSW3@^`2_dm zT>?@^3qQk%*;eb1A&M`Xy3%|UU-Bt_Ed9~C2ZY98FXIuwit~eEvYy$;q~wI0F2!iW zM|`q)Sr)~G)-FJ|EbHm|Q127?ELyqHl*6v35^omp*MG?EoLjOGD|YR1;1a^%QQ_)8 z6E6~QANMgSuPHhISs#^N$!Rz8rj8Fg*`3yPotDnwf<5?e_el%$q_(z%~Qe zCESLdM`o^@Gg_>Rjm}!x-;llH-)3B5IGg-*XUh-l^RuoMoB4trqs0-*3@F{z7TZXU zB+Waznyg?N@nq!x#-vfG`?|T%ms9o;FeC8s@P^lpAF77IbA)cuSsvaqp?=+wyLfzynJtC6Qx_*;fgE?EZzufkmr;rDdq7+<=}9 zh5R^`nm%+8b6G53a)kGou5;jlzr#46jq{>BDgO$o|CG*ARS&5V%UYB57S*F2=_<%} z;+w4wzdIeN16OR*y6XMmWO5Y@hsci|Db)H>IcrlAJ2**X0qY^v&mqA!N1B!5cJR4>0fz zFffdV1F5%bCrXoMxfTU1H9kzRbgb=sftM*xh5tHrby?tT`fS!3b0lvkziJ|jh6M5E z2aA@OBM09a1>|Sub3W#k2n&>IwmXhwkXFlg*enD-N4@(%FYtbBjClJ2o~y40tr)}xxsk@%V7CA5<)r>=+hwZhVyT7w-xbnXLfO9yM)sOabDd~O{)LJ9l!a+U7;<_dYsM@SD zWo-9=)(F2%au0i%&f8GO+129}XJnQUa69QYQUkZ&&>Z+;KYAaQKFWTv?fz}vA-eUw zG9~G9&#sO9+)K|^(Z><~??#p0cxCF;?Zl>KuViWQ(Nd(1!bpfH#-2}uM0sWS)pNG( z*3CFs`nDwshhKb?Wxb72nhRD&qhhjZ_PhbZ{}Kgz`25Us?oLw~<5v+gg@ZBi^_cbM z6W}Rnb`t~;z-1IQSJerb%ybr&$)de}9f#~OgL3dB{Sn+H?Vx`N)WppCkME@QOV2r6T zXDLwQRtwk6b@5Ky#DK?NRLOmnjz&j^M?{3dG%&{75KT;K6)7{JiV?@I{oKFdIxS~w zxMcG<(n#~IM}YKj#O34o$Srp*0uWFuaDMi=x8Z!%3zE%?Wu#wrC>ux!T$lTr*$WG> zB)UL`MISkQI-IwXQcx*I*UB3swr6jYnJ@QOuNfbIDk0&F;uD?l*}E4e zlbp!0nZ+k*MS9^la#qNbUF!0Nou9xVL%E!Nzq?4$G@*@Qx+-PL-3}T}ZY628J*qc% zWtm^VNORs}JYUg`dsR;2o1kmzTR1hY?kVV*Z8|B@-o*Y~W(;sAHpT5jQ3}4aG^oiP z1=`Ba6-@b9=UrI3OnVAAdlgTy^gFM!o7`&7%39MxczhXctGzGYg*qQ>!=gTd&Raz4 zyPzvTWoVk<8|t!Dd%gk5aIXgr&u2P8m@b7dVyX+?-sw_fnN z%2_#{a9*Blgg_qPwXhMbhUof`A;)n7by-8akxW%g!GINn3|f;pk7r<}OY5E|_{cRn z&2rVq&UgBrBcqxSw0!&qN*#OkmzXuCgBmG894>o}m2AbBaeF$yuJ+RfD)Vlj@;S49 zg=+Occ`vLd9!^6VtQoVQo&T}|UvlSosfjzj=YUn8m(g-3sqDx`d!+YsPMx`uxEOYg zfx1B!DiW~|k{g)h3?2z?v>w?1+JBqBzleO5U*ql%oh>wOA&fdXL;%#L|IBVGmd-7# z?Hb09G~w&kcXrvngrT2n%e)06ErYExn*alD;_2PC#>*KxCMGkxe%0@jx)zH`L}W<_aDOB z(J{X*O&n)#=fL}cXgPJLn1y9W0cco^N}*4yw-PQb_igMQoBm5hPKP8<_4h?uejlpi z49ob0INTt!(|g|-(&0j-=jR4Y)mF+iK=p*#C#)nH>(MVQdO7x~yS3yh9)Ex~+R3W2 z*nP@XImP(*H}e|E&Tj|opF7zbZTlrxRI5JUHMWdi>IZspNK?o4dq}tH{2iqw4m8Ij z>Sn(7_bjxS!^#YPH{QF(riG@u8;3C*u(ikPot+@dE3?JY)$SnV4ibavy!oMst!$vh zw@x>@FOB4`yaaFO(r7(yBAF1GD)3a>A+fJ1+230!6W`Ek&oT=j&Hh2&?X?v+q4a5# zW{0A`C(NeR54v}Cd-*>6j>hcZvbcmR9q9B~!iR4WHqao$wM3FRt)?qWri%>M_Xz-D zp8zS|XBxcS4*Vc%uHpQN-ld%6y!0zh2UN#|V?kQ?7&s;NFL|7A&d(2+ygnHFM10C_ z?li%ubb-7p$yE$~F*&$dA{!8Y$mCkBVN|_mFmLN}0}e?1dEAK9Hlerw?PdGrad#wA zkpdH!nAiaCJSnmAU0(!X$17a z6wrj* z+^XOKG50%a6SZp~H3@N$MX$w*2{szI%cdZItv=Ev!ciCZyyeRSfm6ZA=({m)bCv^*0>~B(=`W z0fVb?u79OPMIIk%fC-YJR9r-KJV>_cXv9SnmzY>Fs#l8`RErsC;8ozb z2xa|Ae}aVMai)EPyPjU;2Y)F_%Wh7m=A0_$X1`IV6ye(AZzOA)hSsWLW~=vKb3{pK z4vB^y^_F&sGyjPccPK-taT`#K4~74zu7nTG!j0n7d%0wbu}k_uvi>BLI6_ToY#`xY z76@Su9arKG>YuaBhJ)pitYV1e*sJ+vo9gqdl-_MkC!@e5$ zWWZs-8+})}y>#X5MPwcjH4*q?&;6?-?lw225^0|~BhyDOf`xcx{(b%F#ghETg-@n+ zsY{YkXuF1FXKa;Cy9I zpwd?42>%UzIaPYQE@x=PL{(PeQIR>SQy~q;K8z=z?;o|!sdOoI=})IKWso!%C>X9J z8_*xsiDD5i$hl&yT7%Zr2&AeBZDNu8SxHS7{A2$;edwV|#}5AIe9&*Dv&i6&9Wg@U zavygVhK23sL}Wasm&F7yJwmuIa7l;Ri_Sptyfv5}WRP$!ks?A{uMst9yCI_i|U z3rr&QJeE}IT}G@3E9?y0*!e6QIZL-*a&md;wPT#)A_g@}(t}~wGKZB#N-kw`Jp@G0 zmjN#TB{mCO)e_HWM212VH(V|DdR?tz*TqXUWeL&ycw{9ZOP zg=Xz8zx0#bq^AjmSh}wc-V6lRtlKH|c)NIdqn9+SV8ePmffr?A<024FjS&Zi2V!x# z_e&Mb{~(oI$WY0Xsr_yk`x`dMg+qXc(Wz!{eHB*7%5Q>LYavVICh<1C=XjQaM58N~ zk8s4tAOwsRmWqQbid6JFUhKYdGr{bb6|ItYz(4Lhi2lyGEh0Cc*AZn+h2{S$GL>Z9Ca@O)15b zPr|m>n&yr0Ta79b7re2z2bdf-2Da6 zYvP;97nbMSKfie9i;>35$*7Y!LL&{m!+L3?qx&;R{G6Cst7m%80^A*$>>~Pl%V417hZbk!4t;R zEB}U}#kOD3s`8;4-}L?R+tZM81uWaE?*+f4e&;Ko;X*gAFuiE+pInsvH!MXnoveF1 zjT^6I@}l)!bVhHBxc5C}DnZet#~ixXxmmT(1wyUHh8K39y2tS%xv;#K`7BF9j?14Hk}kAl)B39se`*c#M(1OZnHLw+;B}(-BRw4Ed+zC)$}3NhzBH?&f`JYNq;<{M^9?($|ZaO zn|+`vD<*CoNMG}FV=NP!N>-<_;qL37_d)qopytlx|6i}{9|iFL@>l=!P*2Eq_10dIzoO5vTK({=bdFjtJ`VECy>#vi@h#|M7i-p)LZ;+XNuZf4=#56b)#w zD6lrdjC=V1e)B)?6h?tUU|5o5@&7aEzZVw~pz~Cp`^Ndze+K=pGv!YKj|2A#`5Wl( z!u;3I+5|%9X+b`M58;33ZpA?BEl^;Czx?X|uiO8AtpCR;vn~=L3H;C0{X4|}f4Tl! z3jRMYmmQOTGPCa4<&19jKH#qM-)XHETQwEDC&0$Wu7~)IxW7e#9YHPt{ZSU_%#~GD zox{V!>AvKAuzw9IqPHiuPvG`Wn|jUX=8>6|2k^>?-1CK;;LZwkHOs5vEmol7!9zg_ z{5KZ>?yVi;KbL~E0e`Z>$Qqy`kv{PPD!Ca=@)Ez7d^P+Z-yO5Yh3b#A?qEUpkYidP z^hQNI(}aBFSKMC;>JkmMg5t*v;41P~Owc4#jk%&;kcm7-wy`37pqBD#4Yvi#j$P8= zw)Ckuq=JLf=RPG2v|T!g^eckn)#x`Gv&o$x;aBd|&E}sO%i{-<%~v~cQ%qfIJ~r-B zv+x2p=Nu*ANxm+roJ&j(x;A7Z*|V2?lPFWlIXJ<*&{|W@)1ho_87X&6>p%UD+N=Yu zMai!#2meJB5dPV|ykKFdq5nN%Lh7>wW`?Gz?b{AhO$nOOpD$fL3jx*0OizcDKYIIC zK;!&Jr{?=GL~}?p^Vv4jb92_LM+BxRZT61zeat|gfs4I2_Q$wNI<1n%D`EYd(z_#c za%JL_gr@hhaij4w_#FvYH)L;4fbU|@bie4w&&%R!x#E*Cl{AHBX3dIL#~GN|kZh2U z#WN9&=;1@=Vd?uALVYizf2ic@oydNt;GneLxF-k;I|^b=8_vevIb1gZqXzz zqTCi^KR=2W8fxaHs23h&Yzv*Bmt|50eGGG`6`DBe*+RucUamTNA_8dUCnw!}-CIAp zfRnu^33&a{ZMb=`4_&j7nE5^83Mv+|N2NLytV`xAC5}Gwd`p2cERKgGkdeE3yQ0gE+mh(bKlCyu)5WTRlyjICtJF_%1Uz*WEfp z%SCSnOi>evWDaCs``aNsm$-06p)}S~j*KykKuLId2^lTZt8cV3H4gyppW%se-I=4n zoDSdKw3&6Kk=mQ6N0OYSI)^L2459z0LXojAT*8muTVRFa zB~nF}JicWqCQB#m$L3Cpooh`)R{4+K)r@7{O~W2@(XMw)$2_fH^5XFuIZ)8<{1^7mn8k`nfb;Ce6H4b6zv$!m=V09D`Q4%|;_? znIY7LRnKcyi$V*9Zw9&C3LEdE15XFkDSe2(4YSvgz-$X=jUbVp&;J*tTmMPfuyQIx2h|BIpO`TbUk{J)jr zjwaTA^lhFttQ>c!(wl~Q1JhIYnV4sd=%5oeHBuDQZyaDiR^;)JND0+`P)pU==WPyg{NFX!~9{WBk=X7$xd;Qc+M=9LPOKof3E% z)76G{YycV2XO!ApF03K7iiwI;kQ}b8+3y0d23y;vce%X07E@=_r`?hcxVS^rAvARJ zwh=ub?E+D`MNytMis29%O1mxbXezsiZ4VR_@Ckh&=uaV8xPi-x^?tu#d__Frb;YkQ zlg<(nI?7n8=(t49vbLIj2y6VnKR|N|a1jpyuFgHd`8V5G-FqIW=v|qotyTdp0GsPW zMkvg4j!8?jP_jWZfrP4@R+?Ob{46;u+&F4h{qMju{n6JQ33k zi9x6?k_%pep#C|IZSfr!F^AU`qd8jUtXx1Lo>a;)o;(IH37ey1=>ebJ$|YM}d-u>D zP_(;a1{rp*5q?>-ob}#4OU=}wDHe1V@lAVKFeO0YSeKT*Gnrp~sJa#P_@<@7%7q3J z?>$Xg6bl-us#!7`-tV=xlrL)xHO7`E6v1)?&2lVv?zeV}=M7&C(HtR`l!_jyIo_Aa zI*j+FkYr$!_FcQuCAD|DTw`;6jz2I-a!+FZ{L~k`05KlkrA<3gh;HdW>%>WcLUzNj zyqbQ9vCXqXqvF;_Y%bR@=jRj!KQZoB38Fz+@yM>fK(d}(N47B$O&!H0IN)ZTt2+AG zzP{5DUr~c%q4yUtzZ&pHXOa4bV3}Pqhk;=I%=apf)*E(w1ooZ{!ii^BOnp6KM(p~Q z9t%lX6l7cUne>W5{Cw2c}1)emUs^`J0TMA>KlQ@v{Mqe!N+EsIcvv;!kN zwHqhA`!BDL-Aa~hNMN$~W!A|Ac#e{J`u*A<`+oaT&#(m>uXxU(5`7}*^FHgh$+0L2 zRm9wd8qlPkjHVq$tUxcP@NX7H0{x8>?{Z7>pcy@>n%saNL_MXNyHM%^{j zn_t*{X+d5lpxiXsxD>~9Pv763K83Y8UFQ9F7RPDBBWC@GLcL)neRI}boS!@mX+=%~o%`_G57G$7 zkjK%Xt=J;eP7Lb=#PSl-0Os33w_w%gEBbF>WI7Ai-wK5GI=9?`om3YV(rHlD2_Ham;MdU@hO zk~f0%aTjmGp4Tzq3qj^9_}d+}6J;%pGE^r7yR(uHle*rnE6UUv+*2KR>$sufAL zpNn|q-M#>Jq)NWK{YcVC9ag{(MY3wZV}jSBV>x-w-P3zbff8jx0Co5lTeI>@L*L}X zE-9-_zC!`h{V~sg5NIOJd8rHk-18vkr*tH)1uA)jTJC-pAwS$wFaHu0Xu9OyEAxxcO!`m@KRr@|w6?Y8A2(!7_aAKAoB--j%4%oONi+vu{*Xgn*>yVL zBf0B4RUTi+WD@iI1Wi-gVFnhgKS!>wG1~_|bTO;3$uC42AZtnpD*YN}>VHk?21-Qt+_ zxr#ij5)%6GY{*9ncfrrOss>HgUp{0dJN5*h{uE_T|J-9plXX4w=Mwvxn5VZWA7K*wY%6iE0mTvGHFQ{a`c^wGyIfsmrz{#7^1N%Q? zE&{o)EK&#Cl6wo^S>B1PV8Ubq?!nNUrljv=56`l-Dvqe1lIVF_U|@mVvN~~^@5cDv zz_q*`YrMDhE;F6%I3?Fhaak;sK^v#}SQF?cbZA`!t@}^lI^}w(y>2n_$5r=N{0An;D9DAfK23_qNuc}4%biP5I@L(J z0u)BO`SWfHL!1VahX^|?nS=|41`v5Iv#DlyRpBCFBdmX z=={`BOsGS}DI5fnK{NXt`4}L!u-xW4b6?)(Q))P#>SNac62e`~Pm8Fod zaeVSk+#St|-@zH44QIWq;%&-#yy>_K_1hcwcwvHCMJi-2JIb=}YM1#68?NTMN;t>! zZAj2$K2G+!{^^ZbxJ!yLak-`)tI&sdNfUp!apAX{COx}d`fjwMdt;1pkj z-=Qr*sXq{4GS9(Wj zL~B0oKTTjOstt2_Rb2SY{472{l*>-~3(x#^qE(>I&h}*QX`E9q+JqzI^aOoR$J3r4 z)R>aPYwB~y8m7*zyZPc_^9kq;H@UcwLfNPx~! zBySZbmwI@4<;HVlSUqw4XbBcj zuN8OI{tU=;(7?|`n2NNP*m`yKQa198P%7KTFx`7l)b#1PF-@5kiEd$8--C6ev{}O4 zI!sR2Zq{G$@YHdtdeDH0hPPU}_Yw%g>u%7%osJ)}^66e9gmDUXbG)XCJCC2ea>&Qp zZ&`FD4Sp$ldcjwvx&JZ2e#N)TpaVwswd<8*kAXT;p?J`+$ko{=(ex2a-PAS+8RpngB}CLTOt!hqoN9YL z(zRvz3Y&`0aaotA&^;q`)kgW}x1?Kx`d+}xK)(_G>ogEZ1@CmB1V>TIt7%E^0Ls|| zbuqQy;6YL=kL&hx*S1bYXZVmpgkHR|>VHW(;bxMK|Fv~oT{Um-K6LWsYp%YNMe_@W zH)^zGnfl+?*B^WFDO4kpN8|EQ?r*ZKVlDu8h-&=-&DG`H5We`4%QeM7zZ1f#X`b9d zxv*tk$xCR{k_c6@zoK^W4|MEE82lTN>6iRjK^OwsFZ%mW&{W6i>Z8GYvR-!;n-py_%ft)yesuS#ll6qsIFN%`m_#=Hg%SH5jj$yL8 zu-r!#9jZnQKvIk*WIS}`xHo-#>Ps!zZXa9Dz53$&d2&d|O0UQ2?K8(|g3WAAn%~pl zh5DXGIg{Y0a)}l2cn0`g)l$cc$GM+IO}XH^hcurfW363nz>ku4I$m9F51&JD1??;_ zDl4TrboI-KjW~(SK_`_6yBWlodcZoic6F1P%8j$TRP;JB=Hldkp~y#g9Zsa1`sb^a zGv8<3XUO-`=O^D2vNPtV-gf-7N86`u+nYk)J6aPH6KKOW>-!uiuKYO<%;(%ava_>G zKLt$_LqHcL5suX6t~YfVB;I&6yNTf;6WJs*0p!zz@+CXJY&J~T5Mh6Ag>iw{83Ps4 zMy|nzN4!WAU-kXE=bA@>A(I?ML^8yAdHpKQ+#$8s%-0wUOJuw|DFUfeQ zvtB1Y1UH#*AnK}?vZ+Br=d2KGGhx29R_=pO4mT#r^=y)Fqc9d?=@RvVBQI;B;)OnV z(~m3`a<*Ix-w-qEykW!9z*JEco~C=#`Y*uF^X{Zr$glC+^HaO$@bdF{GBy#(y{m6m z`(4GeCOizp%I+`zyV?bhj)!`%=-hTfViq`U$k`1|vj>qnn>rtb+i#O5o@A&suhOKa zy6y{_Jf<(RMcZBH;jH=R!Sn6QsYSp)RW2-akn7R=*T+#3mthPVA*EMqHi^NdfL^uY znfg`gvMSywM%^Qh-K4M+*zFt}jUh%oNChd75>hnE2 z&WzBcf`uBJjcJiU27jr4f-J~IwA|{@u1=Lo9d=Fjyw){@%Eg{8i`5`^taPuuU?-wl z5)08|)_MCTEwKo)tb*bzlL2UUzjPXE1&wLw;Yi%T7lK`=Yt&2LZG7}h0aluMLGLIz zlQ;dfHY@yZup1gxvck}_DLWf|hSpU-_jjW`Kl+~Po@L)WO*ksjBSD98B$~%84xO?z z&cR+3Fd$x9qhxy5*&J3h(czng%w;8@&)%K?FbLLHoVm6h$`y7+h%{gqX-i1}tYUPm zn02@4h`z<2La6$TWtkc^GUO$_-KCT8_4Y>Te-@77girA$I@eYE6Z8Iqt?x~^>$6SV z$>Z~0VgfE49g^F(;5_C(CCTZGc2HyI>XhIc+}aIkZfI2Ppws=S|0O@_wZmfV8*TwR z7P4wyk@;FlCXeZdNbUvMZ^?g*iI(CH5jdFbw(8L*)2HfZuOwfH?$eO!`|yAlQ1Eop z?t=Qa>$ZbA`;4mld@1&DKuh(~tgY|~((cC_v{t4M|15bqx^lXa{ghH4@;Hc*O~i%t zBJeZiaNft4ULa^`@g@EgfyzMyzsy~kIkhM?_@h($2O23;?@kKIT+rVLmX8`N9xhx< zdD`!{E(BkA|MS**tyRsZl)2R{S6g;AR&a>mv;E4((^Q2IUq{{unQ!xe zrZ3srF~ZjWY42)dn!3U;mCiwoL5IkO(=xkdaUGxn;`g-+f&?dV;xI!fZbLJ))P*3Z zaF1*OCYv%KtVM*XxKeNqmMyDd*Lx#D5$KTcp&2W;1zKcSO2K~Ie%!lrOL5u%{aNDQ zo807{_kG@T-se8gIp-x!s(o5YrpbPf0PY-X42U;J5N3^B3M4i8H#3+k4xj3S&-ZS> zw%MHUwqNTR>eE2~p{}sY7gt^wdbOxyTsIafI^FP4=T)@Q6Cm<tT6zBQ|X zX{@uq#uWv(XM+%`G=LmtDaIoZKl@uBvdzX6m!X?uJ~EzGqJG6O7)yj|4>q5W-_KTc zl~`7Ll@wzjv!MQ!%qRv+s$(IY!k4ai;=jmB_lU8G*)Y+ZTQKz$bAN(b=RQLph~v47 zRL&*9;TF5*1jD6~j_D}ujP1U%c+1+1FGaw`wPKoyJ0`Ua?PwWUtq)T*ItG#1gO+Xf zk%F;_o}Rrk4eiTWF;RZEilSv}z2nMmW_~*!i1g4m`J0|mU4f)SJKTb{ixJ1Sop-o1 zMzPCqWB*RqOxnoK%OTopZRD!529Pvviqko_f*u#wY1*OvO*%l1iO_B-;f}7z18jmW zRucseo|Mu!QA6AAm`+a#bIj+k*+zomI{Pt$7}+Wbft~B(P0)5TPbNOURS4WXSv*ABWY`|Pw+deO z2suLjztd6^GNX}_Zc$8AIVD*hC$a0#?)^s9(HFuphHB$EaqC}RDrs>enRX2og;DxR zKHk%r;<9#|@@-<%Xh>l#BBCy~3HbQZ6U*MIoL};^)lfB6ZqyWm{d~N*D$8T<&#u~) zv}^_f$XbrPv2iZ4P3n`sf_+O)Q8BK*AYD5aU3IRIBJ*Br2Damljg!T?cVuoV^y5xcho{1cxo@9d~IhnpkApw+qcYWTC!eYEBTZ9aA{|9=T*RTs{ zBjrBAGqbM<=GdiT5u4zGgdHm@qr-JND%^h)&$V|O#@t^pns|)x`e;x2ZOr?;uVl<)@& zeMUfl`+3h)wjG2K^rmt}oK?by?m?4!xqr;0xkw?a&kgl5;O<~pZREZ7X_(m74;+_a z3W_+_ch!NB$KwJzD2{5NB?`Jc4c$J+qlOL#UrE=O*Y3_YJyP1Ly6=(o2q3qW0kU3! zj!u{e=eoLgN2^aM=k-xuVT!@`8!u1tu4&m@x+Z-=krtSp(}jcb-U8!vi3E Pd=hr=i~aGvj4%EM`W3yk literal 91778 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�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 C16!Q{ diff --git a/src/module-vsbridge-indexer-catalog/Api/Data/CatalogConfigurationInterface.php b/src/module-vsbridge-indexer-catalog/Api/Data/CatalogConfigurationInterface.php index 84bf6ee6..5bd4bb9e 100644 --- a/src/module-vsbridge-indexer-catalog/Api/Data/CatalogConfigurationInterface.php +++ b/src/module-vsbridge-indexer-catalog/Api/Data/CatalogConfigurationInterface.php @@ -30,6 +30,11 @@ public function useUrlKeyToGenerateSlug(); */ public function syncTierPrices(); + /** + * @return bool + */ + public function addSwatchesToConfigurableOptions(); + /** * @param int $storeId * diff --git a/src/module-vsbridge-indexer-catalog/Index/Mapping/Attribute.php b/src/module-vsbridge-indexer-catalog/Index/Mapping/Attribute.php index 2f8cb1c9..d0885ab7 100644 --- a/src/module-vsbridge-indexer-catalog/Index/Mapping/Attribute.php +++ b/src/module-vsbridge-indexer-catalog/Index/Mapping/Attribute.php @@ -4,6 +4,7 @@ use Divante\VsbridgeIndexerCore\Api\MappingInterface; use Divante\VsbridgeIndexerCore\Api\Mapping\FieldInterface; +use Divante\VsbridgeIndexerCore\Index\Mapping\GeneralMapping; use Magento\Framework\Event\ManagerInterface as EventManager; /** @@ -17,14 +18,23 @@ class Attribute implements MappingInterface */ private $eventManager; + /** + * @var GeneralMapping + */ + private $generalMapping; + /** * Attribute constructor. * + * @param GeneralMapping $generalMapping * @param EventManager $eventManager */ - public function __construct(EventManager $eventManager) - { + public function __construct( + GeneralMapping $generalMapping, + EventManager $eventManager + ) { $this->eventManager = $eventManager; + $this->generalMapping = $generalMapping; } /** @@ -73,6 +83,7 @@ public function __construct(EventManager $eventManager) */ private $stringProperties = [ 'attribute_code', + 'swatch_input_type', 'attribute_model', 'backend_model', 'backend_table', @@ -113,7 +124,8 @@ public function getMappingProperties() 'properties' => [ 'value' => ['type' => FieldInterface::TYPE_TEXT], 'label' => ['type' => FieldInterface::TYPE_TEXT], - 'sort_order' => ['type' => FieldInterface::TYPE_LONG], + 'sort_order' => ['type' => FieldInterface::TYPE_INTEGER], + 'swatch' => $this->generalMapping->getSwatchProperties(), ] ]; diff --git a/src/module-vsbridge-indexer-catalog/Index/Mapping/Product.php b/src/module-vsbridge-indexer-catalog/Index/Mapping/Product.php index 06f9e2fc..80137436 100644 --- a/src/module-vsbridge-indexer-catalog/Index/Mapping/Product.php +++ b/src/module-vsbridge-indexer-catalog/Index/Mapping/Product.php @@ -46,6 +46,7 @@ class Product extends AbstractMapping implements MappingInterface * @param GeneralMapping $generalMapping * @param ConfigurableAttributes $configurableAttributes * @param AttributeDataProvider $resourceModel + * @param array $staticFieldMapping */ public function __construct( EventManager $eventManager, @@ -210,6 +211,8 @@ private function getConfigurableOptionsMapping(): array 'values' => [ 'properties' => [ 'value_index' => ['type' => FieldInterface::TYPE_KEYWORD], + 'label' => ['type' => FieldInterface::TYPE_TEXT], + 'swatch' => $this->generalMapping->getSwatchProperties(), ], ], ], @@ -282,7 +285,7 @@ private function getCustomOptionsMapping(): array 'price' => ['type' => FieldInterface::TYPE_DOUBLE], 'price_type' => ['type' => FieldInterface::TYPE_TEXT], 'sku' => ['type' => FieldInterface::TYPE_KEYWORD], - 'sort_order' => ['type' => FieldInterface::TYPE_LONG], + 'sort_order' => ['type' => FieldInterface::TYPE_INTEGER], 'title' => ['type' => FieldInterface::TYPE_TEXT], 'type' => ['type' => FieldInterface::TYPE_TEXT], 'values' => [ @@ -291,7 +294,7 @@ private function getCustomOptionsMapping(): array 'price' => ['type' => FieldInterface::TYPE_DOUBLE], 'title' => ['type' => FieldInterface::TYPE_TEXT], 'price_type' => ['type' => FieldInterface::TYPE_TEXT], - 'sort_order' => ['type' => FieldInterface::TYPE_LONG], + 'sort_order' => ['type' => FieldInterface::TYPE_INTEGER], 'option_type_id' => ['type' => FieldInterface::TYPE_INTEGER], ] ] @@ -311,7 +314,7 @@ private function getTierPricesMapping(): array 'value' => ['type' => FieldInterface::TYPE_DOUBLE], 'extension_attributes' => [ 'properties' => [ - 'website_id' => ['type' => FieldInterface::TYPE_INTEGER] + 'website_id' => ['type' => FieldInterface::TYPE_SHORT] ], ], ], diff --git a/src/module-vsbridge-indexer-catalog/Model/Attribute/LoadOptions.php b/src/module-vsbridge-indexer-catalog/Model/Attribute/LoadOptions.php index f7350907..a2850125 100644 --- a/src/module-vsbridge-indexer-catalog/Model/Attribute/LoadOptions.php +++ b/src/module-vsbridge-indexer-catalog/Model/Attribute/LoadOptions.php @@ -12,10 +12,11 @@ namespace Divante\VsbridgeIndexerCatalog\Model\Attribute; use Divante\VsbridgeIndexerCatalog\Model\ResourceModel\Product\AttributeDataProvider; -use Magento\Catalog\Model\ResourceModel\Eav\Attribute; + use Magento\Eav\Model\ResourceModel\Entity\Attribute\Option\Collection as OptionCollection; use Magento\Eav\Model\ResourceModel\Entity\Attribute\Option\CollectionFactory; - +use Magento\Eav\Model\Entity\Attribute; +use Magento\Eav\Model\Entity\Attribute\Source\AbstractSource; use Magento\Eav\Model\Entity\Attribute\Source\Table as SourceTable; /** @@ -84,21 +85,19 @@ private function loadOptions(Attribute $attribute): array $key = $attribute->getId() . '_' . $attribute->getStoreId(); if (!isset($this->optionsByAttribute[$key])) { - $source = $attribute->getSource(); - - if (SourceTable::class !== get_class($source) && - $source instanceof \Magento\Eav\Model\Entity\Attribute\Source\AbstractSource - ) { + if ($this->useSourceModel($attribute)) { + $source = $attribute->getSource(); $options = $source->getAllOptions(); } else { - $attributeId = $attribute->getAttributeId(); - $storeId = $attribute->getStoreId(); - - /** @var OptionCollection $options */ - $options = $this->collectionFactory->create(); - $options->setOrder('sort_order', 'asc'); - $options->setAttributeFilter($attributeId)->setStoreFilter($storeId); - $options = $this->toOptionArray($options); + $loadSwatches = $this->isVisualSwatch($attribute); + $optionCollection = $this->getOptionCollection($attribute, $loadSwatches); + $additionalFields = []; + + if ($loadSwatches) { + $additionalFields['swatch'] = 'swatch'; + } + + $options = $this->toOptionArray($optionCollection, $additionalFields); } $this->optionsByAttribute[$key] = $options; @@ -107,13 +106,70 @@ private function loadOptions(Attribute $attribute): array return $this->optionsByAttribute[$key]; } + /** + * @param Attribute $attribute + * + * @return bool + */ + private function useSourceModel(Attribute $attribute) + { + $source = $attribute->getSource(); + + if ($source instanceof AbstractSource && !($source instanceof SourceTable)) { + return true; + } + + return false; + } + + /** + * @param Attribute $attribute + * + * @return OptionCollection + */ + private function getOptionCollection(Attribute $attribute, $loadSwatches) + { + $attributeId = $attribute->getAttributeId(); + $storeId = $attribute->getStoreId(); + + /** @var OptionCollection $options */ + $options = $this->collectionFactory->create(); + $options->setOrder('sort_order', 'asc'); + $options->setAttributeFilter($attributeId) + ->setStoreFilter($storeId); + + if ($loadSwatches) { + $options->getSelect()->joinLeft( + ['swatch_table' => $options->getTable('eav_attribute_option_swatch')], + 'swatch_table.option_id = main_table.option_id AND swatch_table.store_id = 0', + [ + 'swatch_value' => 'value', + 'swatch_type' => 'type', + ] + ); + } + + return $options; + } + + /** + * @param Attribute $attribute + * + * @return bool + */ + private function isVisualSwatch(Attribute $attribute) + { + return \Magento\Swatches\Model\Swatch::SWATCH_INPUT_TYPE_VISUAL === $attribute->getData('swatch_input_type'); + } + /** * @param OptionCollection $collection + * @param array $additional * * @return array */ - private function toOptionArray(OptionCollection $collection): array + private function toOptionArray(OptionCollection $collection, array $additional): array { - return $this->optionCollectionToArray->execute($collection); + return $this->optionCollectionToArray->execute($collection, $additional); } } diff --git a/src/module-vsbridge-indexer-catalog/Model/Attribute/OptionCollectionToArray.php b/src/module-vsbridge-indexer-catalog/Model/Attribute/OptionCollectionToArray.php index 36272f3d..6f3f76c6 100644 --- a/src/module-vsbridge-indexer-catalog/Model/Attribute/OptionCollectionToArray.php +++ b/src/module-vsbridge-indexer-catalog/Model/Attribute/OptionCollectionToArray.php @@ -18,7 +18,6 @@ */ class OptionCollectionToArray { - /** * @param OptionCollection $collection * @param array $additional @@ -46,6 +45,13 @@ public function execute(OptionCollection $collection, array $additional = []): a $value = (string)$value; } + if ('swatch' === $field) { + $value = [ + 'type' => (int)$item->getData('swatch_type'), + 'value' => $item->getData('swatch_value') + ]; + } + $data[$code] = $value; } diff --git a/src/module-vsbridge-indexer-catalog/Model/ConfigurableProcessor/GetConfigurableOptions.php b/src/module-vsbridge-indexer-catalog/Model/ConfigurableProcessor/GetConfigurableOptions.php index c31214cf..65cd9a39 100644 --- a/src/module-vsbridge-indexer-catalog/Model/ConfigurableProcessor/GetConfigurableOptions.php +++ b/src/module-vsbridge-indexer-catalog/Model/ConfigurableProcessor/GetConfigurableOptions.php @@ -10,12 +10,18 @@ use Divante\VsbridgeIndexerCatalog\Model\Attribute\LoadOptionById; use Divante\VsbridgeIndexerCatalog\Model\Attribute\SortValues; +use Divante\VsbridgeIndexerCatalog\Api\Data\CatalogConfigurationInterface; /** * Class GetConfigurableOptions */ class GetConfigurableOptions { + /** + * @var CatalogConfigurationInterface + */ + private $catalogSettings; + /** * @var LoadOptionById */ @@ -28,13 +34,17 @@ class GetConfigurableOptions /** * GetConfigurableOptions constructor. - * - * @param LoadOptionById $loadOptions + * @param LoadOptionById $loadOptionById * @param SortValues $sortValues + * @param CatalogConfigurationInterface $catalogSettings */ - public function __construct(LoadOptionById $loadOptions, SortValues $sortValues) - { - $this->loadOptionById = $loadOptions; + public function __construct( + LoadOptionById $loadOptionById, + SortValues $sortValues, + CatalogConfigurationInterface $catalogSettings + ) { + $this->loadOptionById = $loadOptionById; + $this->catalogSettings = $catalogSettings; $this->sortValues = $sortValues; } @@ -66,6 +76,10 @@ public function execute(string $attributeCode, int $storeId, array $configurable $option = $this->loadOptionById->execute($attributeCode, $value, $storeId); if (!empty($option)) { + if (!$this->catalogSettings->addSwatchesToConfigurableOptions()) { + unset($option['swatch']); + } + $options[] = $option; } } diff --git a/src/module-vsbridge-indexer-catalog/Model/Indexer/DataProvider/Product/ConfigurableData.php b/src/module-vsbridge-indexer-catalog/Model/Indexer/DataProvider/Product/ConfigurableData.php index c9d22614..ca9cd5fb 100644 --- a/src/module-vsbridge-indexer-catalog/Model/Indexer/DataProvider/Product/ConfigurableData.php +++ b/src/module-vsbridge-indexer-catalog/Model/Indexer/DataProvider/Product/ConfigurableData.php @@ -250,10 +250,16 @@ private function applyConfigurableOptions(array $productDTO, $storeId) foreach ($options as $option) { $values[] = (int)$option['value']; - $productAttribute['values'][] = [ + $optionValue = [ 'value_index' => $option['value'], 'label' => $option['label'], ]; + + if (isset($option['swatch'])) { + $optionValue['swatch'] = $option['swatch']; + } + + $productAttribute['values'][] = $optionValue; } $productDTO['configurable_options'][] = $productAttribute; diff --git a/src/module-vsbridge-indexer-catalog/Model/ResourceModel/Product/AttributeDataProvider.php b/src/module-vsbridge-indexer-catalog/Model/ResourceModel/Product/AttributeDataProvider.php index 42c5de17..9b8940af 100644 --- a/src/module-vsbridge-indexer-catalog/Model/ResourceModel/Product/AttributeDataProvider.php +++ b/src/module-vsbridge-indexer-catalog/Model/ResourceModel/Product/AttributeDataProvider.php @@ -14,6 +14,7 @@ use Magento\Catalog\Model\ResourceModel\Product\Attribute\Collection; use Magento\Catalog\Model\ResourceModel\Product\Attribute\CollectionFactory as AttributeCollectionFactory; use Magento\Catalog\Model\ResourceModel\Eav\Attribute; +use Magento\Framework\Serialize\Serializer\Json; /** * Products Attribute provider @@ -27,6 +28,11 @@ class AttributeDataProvider extends AbstractEavAttributes */ private $attributeCollectionFactory; + /** + * @var Json + */ + private $serializer; + /** * Product attributes by id * @@ -43,17 +49,20 @@ class AttributeDataProvider extends AbstractEavAttributes /** * AttributeDataProvider constructor. * + * @param Json $serializer * @param AttributeCollectionFactory $attributeCollectionFactory * @param ResourceConnection $resourceConnection * @param MetadataPool $metadataPool * @param string $entityType */ public function __construct( + Json $serializer, AttributeCollectionFactory $attributeCollectionFactory, ResourceConnection $resourceConnection, MetadataPool $metadataPool, $entityType = \Magento\Catalog\Api\Data\ProductInterface::class ) { + $this->serializer = $serializer; $this->attributeCollectionFactory = $attributeCollectionFactory; parent::__construct($resourceConnection, $metadataPool, $entityType); @@ -112,6 +121,8 @@ public function initAttributes() $attributeCollection = $this->getAttributeCollection(); foreach ($attributeCollection as $attribute) { + $this->prepareAttribute($attribute); + $this->attributesById[$attribute->getId()] = $attribute; $this->attributeCodeToId[$attribute->getAttributeCode()] = $attribute->getId(); } @@ -120,6 +131,26 @@ public function initAttributes() return $this->attributesById; } + /** + * @param Attribute $attribute + * + * @return Attribute + */ + public function prepareAttribute(Attribute $attribute) + { + $additionalData = (string)$attribute->getData('additional_data'); + + if (!empty($additionalData)) { + $additionalData = $this->serializer->unserialize($additionalData); + + if (isset($additionalData['swatch_input_type'])) { + $attribute->setData('swatch_input_type', $additionalData['swatch_input_type']); + } + } + + return $attribute; + } + /** * @return Collection */ diff --git a/src/module-vsbridge-indexer-catalog/Model/Settings.php b/src/module-vsbridge-indexer-catalog/Model/Settings.php index 12d63e2b..c2fa692e 100644 --- a/src/module-vsbridge-indexer-catalog/Model/Settings.php +++ b/src/module-vsbridge-indexer-catalog/Model/Settings.php @@ -75,6 +75,14 @@ public function syncTierPrices() return (bool) $this->getConfigParam('sync_tier_prices'); } + /** + * @return bool + */ + public function addSwatchesToConfigurableOptions() + { + return (bool) $this->getConfigParam('add_swatches_to_configurable_options'); + } + /** * @inheritdoc */ diff --git a/src/module-vsbridge-indexer-catalog/etc/adminhtml/system.xml b/src/module-vsbridge-indexer-catalog/etc/adminhtml/system.xml index 9338d465..736d54a3 100644 --- a/src/module-vsbridge-indexer-catalog/etc/adminhtml/system.xml +++ b/src/module-vsbridge-indexer-catalog/etc/adminhtml/system.xml @@ -42,6 +42,10 @@ Magento\Config\Model\Config\Source\Yesno + + + Magento\Config\Model\Config\Source\Yesno + diff --git a/src/module-vsbridge-indexer-catalog/etc/config.xml b/src/module-vsbridge-indexer-catalog/etc/config.xml index e9d196e4..debb79d9 100644 --- a/src/module-vsbridge-indexer-catalog/etc/config.xml +++ b/src/module-vsbridge-indexer-catalog/etc/config.xml @@ -14,6 +14,7 @@ 0 0 0 + 0 diff --git a/src/module-vsbridge-indexer-core/Index/Mapping/GeneralMapping.php b/src/module-vsbridge-indexer-core/Index/Mapping/GeneralMapping.php index 8b34db79..2ae87340 100644 --- a/src/module-vsbridge-indexer-core/Index/Mapping/GeneralMapping.php +++ b/src/module-vsbridge-indexer-core/Index/Mapping/GeneralMapping.php @@ -40,6 +40,19 @@ public function getCommonProperties() return $this->commonProperties; } + /** + * @return array + */ + public function getSwatchProperties(): array + { + return [ + 'properties' => [ + 'value' => ['type' => FieldInterface::TYPE_TEXT], + 'type' => ['type' => FieldInterface::TYPE_SHORT], // to make it compatible with other fields + ] + ]; + } + /** * @return array */