From 14f6dc27a280e891c139f3100c6281bcbff3a167 Mon Sep 17 00:00:00 2001 From: GuillaumeG Date: Mon, 9 Oct 2023 16:09:06 +0200 Subject: [PATCH] feat(tools): add `neo4jsbml` (#144) * feat(tools): add `neo4jsbml` * docs(tools): update --- tools/neo4jsbml/.shed.yml | 8 + tools/neo4jsbml/neo4jsbml.xml | 76 +++++ .../test-data/PathwayModelisation-2.0.3.json | 265 ++++++++++++++++++ tools/neo4jsbml/test-data/e_coli_core.xml.gz | Bin 0 -> 39399 bytes 4 files changed, 349 insertions(+) create mode 100644 tools/neo4jsbml/.shed.yml create mode 100644 tools/neo4jsbml/neo4jsbml.xml create mode 100644 tools/neo4jsbml/test-data/PathwayModelisation-2.0.3.json create mode 100644 tools/neo4jsbml/test-data/e_coli_core.xml.gz diff --git a/tools/neo4jsbml/.shed.yml b/tools/neo4jsbml/.shed.yml new file mode 100644 index 00000000..ac5309e8 --- /dev/null +++ b/tools/neo4jsbml/.shed.yml @@ -0,0 +1,8 @@ +categories: + - Systems Biology +description: Import SBML file into Neo4j +long_description: Import SBML file into Neo4j +name: neo4jsbml +owner: tduigou +homepage_url: https://github.com/brsynth/neo4jsbml +remote_repository_url: https://github.com/brsynth/neo4jsbml diff --git a/tools/neo4jsbml/neo4jsbml.xml b/tools/neo4jsbml/neo4jsbml.xml new file mode 100644 index 00000000..3d79942e --- /dev/null +++ b/tools/neo4jsbml/neo4jsbml.xml @@ -0,0 +1,76 @@ + + Import SBML file into Neo4j + + 0.12.0 + + + neo4jsbml + + + + + + + ^(?:[\w-]*)$ + + + + + + + `_ + +Rules: +- Nodes are labelled based on SBML object name as defined in the `SBML specification `_ +- Properties are labelled based on SBML object properties as defined the `SBML specification `_ + +Step 2 +------ +Export your schema at the JSON format. + +Step 3 +------ + +Import your data with `neo4jsbml` into Neo4j. +- Use either a configuration file `ini` or individual parameters +- Password needs to be store in a file for safety security +- If you have multiple model in the database, pass a `tag` to identify the model loaded into the database if you want to avoid collision + +Inputs +------ + +- **AuraDB config like**: a txt file with these variables NEO4J_URI, NEO4J_USERNAME, NEO4J_PASSWORD and AURA_INSTANCENAME. One per line like: NEO4J_USERNAME=neo4j +- **SBML model**: SBML model +- **Identifier of the model**: Associate an ID to the nodes (optional) +- **Arrow's schema**: Schema created with Arrow + +Ouput +----- + +- Traceback of the tool +]]> + + + @unpublished{neo4jsbml + author = {Guillaume Gricourt, Thomas Duigou, Sandra Dérozier, Jean-Loup Faulon}, + title = {{Neo4jSbml}}, + url = {https://github.com/brsynth/neo4jsbml/}, + } + + + diff --git a/tools/neo4jsbml/test-data/PathwayModelisation-2.0.3.json b/tools/neo4jsbml/test-data/PathwayModelisation-2.0.3.json new file mode 100644 index 00000000..ceeb1797 --- /dev/null +++ b/tools/neo4jsbml/test-data/PathwayModelisation-2.0.3.json @@ -0,0 +1,265 @@ +{ + "style": { + "font-family": "sans-serif", + "background-color": "#ffffff", + "background-image": "", + "background-size": "100%", + "node-color": "#ffffff", + "border-width": 4, + "border-color": "#000000", + "radius": 50, + "node-padding": 5, + "node-margin": 2, + "outside-position": "auto", + "node-icon-image": "", + "node-background-image": "", + "icon-position": "inside", + "icon-size": 64, + "caption-position": "inside", + "caption-max-width": 200, + "caption-color": "#000000", + "caption-font-size": 50, + "caption-font-weight": "normal", + "label-position": "inside", + "label-display": "pill", + "label-color": "#000000", + "label-background-color": "#ffffff", + "label-border-color": "#000000", + "label-border-width": 4, + "label-font-size": 40, + "label-padding": 5, + "label-margin": 4, + "directionality": "directed", + "detail-position": "inline", + "detail-orientation": "parallel", + "arrow-width": 5, + "arrow-color": "#000000", + "margin-start": 5, + "margin-end": 5, + "margin-peer": 20, + "attachment-start": "normal", + "attachment-end": "normal", + "relationship-icon-image": "", + "type-color": "#000000", + "type-background-color": "#ffffff", + "type-border-color": "#000000", + "type-border-width": 0, + "type-font-size": 16, + "type-padding": 5, + "property-position": "outside", + "property-alignment": "colon", + "property-color": "#000000", + "property-font-size": 16, + "property-font-weight": "normal" + }, + "nodes": [ + { + "id": "n0", + "position": { + "x": 0, + "y": 0 + }, + "caption": "", + "style": {}, + "labels": [], + "properties": {} + }, + { + "id": "n1", + "position": { + "x": 884.6635137872785, + "y": 380.3581544878789 + }, + "caption": "", + "labels": [ + "Compartment" + ], + "properties": { + "id": "str (required)", + "name": "str (optional)", + "metaid": "str (optional)", + "sboTerm": "str (optional)", + "spatialDimensions": "int (optional)", + "size": "int (optional)", + "constant": "bool (optional)" + }, + "style": {} + }, + { + "id": "n2", + "position": { + "x": 560.2494455950304, + "y": 380.3581544878789 + }, + "caption": "", + "labels": [ + "Species" + ], + "properties": { + "id": "str (required)", + "initialAmount": "float (optional)", + "hasOnlySubstanceUnits": "bool (optional)", + "boundaryCondition": "bool (optional)", + "constant": "bool (optional)" + }, + "style": {} + }, + { + "id": "n3", + "position": { + "x": 432.24944559503035, + "y": 204.94864525928773 + }, + "caption": "", + "labels": [ + "Parameter" + ], + "properties": { + "id": "str (required)", + "name": "str (optional)", + "metaid": "str (optional)", + "sboTerm": "str (optional)", + "value": "float (optional)", + "constant": "bool" + }, + "style": {} + }, + { + "id": "n4", + "position": { + "x": 833.1523435518487, + "y": 204.94864525928796 + }, + "caption": "", + "labels": [ + "Reaction" + ], + "properties": { + "id": "str (required)", + "name": "str (optional)", + "metaid": "str (optional)", + "sboTerm": "str (optional)", + "reversible": "bool" + }, + "style": {} + }, + { + "id": "n5", + "position": { + "x": 129, + "y": 204.94864525928773 + }, + "caption": "", + "labels": [ + "model" + ], + "properties": { + "id": "str", + "name": "str", + "metaid": "str", + "sboTerm": "str" + }, + "style": {} + }, + { + "id": "n6", + "position": { + "x": 129, + "y": 380.3581544878789 + }, + "caption": "", + "labels": [ + "UnitDefinition" + ], + "properties": { + "id": "str (optional)", + "name": "str (optional)", + "metaid": "str (optional)", + "sboTerm": "str (optional)" + }, + "style": {} + }, + { + "id": "n7", + "position": { + "x": 560.2494455950304, + "y": -4 + }, + "caption": "", + "labels": [ + "GeneProduct" + ], + "properties": { + "id": "str", + "name": "str" + }, + "style": {} + } + ], + "relationships": [ + { + "id": "n0", + "fromId": "n2", + "toId": "n1", + "type": "IN_COMPARTMENT", + "properties": {}, + "style": {} + }, + { + "id": "n1", + "fromId": "n4", + "toId": "n2", + "type": "HAS_PRODUCT", + "properties": {}, + "style": {} + }, + { + "id": "n2", + "fromId": "n4", + "toId": "n3", + "type": "HAS_LOWERFLUXBOUND", + "properties": {}, + "style": {} + }, + { + "id": "n3", + "fromId": "n5", + "toId": "n3", + "type": "HAS_PARAMETER", + "properties": {}, + "style": {} + }, + { + "id": "n4", + "type": "HAS_UNITS", + "style": {}, + "properties": {}, + "fromId": "n3", + "toId": "n6" + }, + { + "id": "n5", + "fromId": "n4", + "toId": "n3", + "type": "HAS_UPPERFLUXBOUND", + "properties": {}, + "style": {} + }, + { + "id": "n6", + "fromId": "n4", + "toId": "n7", + "type": "IS_IMPLIED", + "properties": {}, + "style": {} + }, + { + "id": "n7", + "fromId": "n2", + "toId": "n4", + "type": "IS_REACTANT", + "properties": {}, + "style": {} + } + ] +} \ No newline at end of file diff --git a/tools/neo4jsbml/test-data/e_coli_core.xml.gz b/tools/neo4jsbml/test-data/e_coli_core.xml.gz new file mode 100644 index 0000000000000000000000000000000000000000..f85bd85055780a8f6acf30fa79878c000dc38394 GIT binary patch literal 39399 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%0D%g&81WQoHURdqwKT&* z0Zoh(5C2~#Mi=Zo3RV=FfV7Sc`mS^NpH!S^Zujp0ZUSC(tZsK9+f1@l4&;@9EXfn;9)l5_E`j(NLLP&Z^2tw-v{<$mleA~ z&wZ6;^9_L!D~T=3R7(SbtV^9A&y)=OQqbkD(t%&^5xeX^?$_%B3`jQs=tynnt9LbbzxyI zg%*lgn6gp}9ha-#Es7K4$b6wPmRX{VTpsB^mB$)5#L&)-eJ-}d=q&mvotvmA=of{z zPW*yo$)!pC?X)ZaxY8)xIBolssegGk?92}S1x`#BFmQ@Uq=>`p@Ws%e_Z@O?sM9sv zC27GM#Kn0@)k*&Hh?m|aDE#(*a*&l!IOE$uA^Lg@+y%VeThkJSKIZ9|!>sC|i7H`! z#@U0=psp&B%`1{!>54XxJho<9jz)pwcgql!l~+g@{QCP^#zAAEA~X?`ods^2klpxu zK5Nj3nOLS*SrM6EML3yuD3vVIsVvC*)}%@@>*XJ;E0CN73SVT5rNZjU$pM^MQB8wK zXv2kMx{{M-0Y6ZM_Y4^jlUYnGD@ z06~;X9>gCdXFoywP$L%~;G;`fx6a)0X6iIhtT%uYc@V2UfF-7y)DQTZM1&bY@n_*B zPM8~qjYnAG@AM_yW$|bfs2_<~;V>u8xRqom?d)D{9e9Ulj=OaMGI<&{1Wn`1Q@|>e z4Xi>#M^t0r8QppygsqoM(Zm7jEyKpBY}r8Ca0F8A!%OiyE(WK-{{iqUk-*hSx)}MZ z-cNugNyW@>M$aNjBx+?$BA=%|>cD4bkZ!7{Hi!Ty7^uY`CVd(i60 zM9DGtw24<7C6F`KmM%Hx8nYWaQID+P9XocSqYP`bQtm`=$U-4z z8&=`KeM(hIYf9OHPXi2ve>oXFHVIX3N<}EAKUQvuqs-w?&~Ktp(4RUkMRH3yEU_v= zr{{QWNLai|J4}Js*K*^ajnuK7!eHi^CUzdS?mn__i@S_JD}#q%#zb-BDy0;O9Vq8aR|#gflVJ-DE4YH zC2gW}NJoJEN{fCs^yakD`O5??3oIA+y})u|h|Kh#gl~etijBcpV=O%+8tx(xV}Pz< zwG^Pp5uET3x|61?SIjx#AzQU-4F8=D&o!-gEJ}<0&bjkG_S;dtSYdFI#lRs9JQSDB z4o1#jfsLNliXGBiE?@Yc{_`FQ;oi&A4tXjZY=bM7PNFPmi^v{r1N>Tww1Kok;#W|n zWiQ}VUPymb^&7?I48T|R2e#~d6)jna$3k?`i4KHwGY7{wQH}ZlIScM=v;gwk-(_@V zd=5$ZXl4FJsepoQCmZw{UR6%Yw#XCE>puR5G^x+5JSZvJ6!sXEJVB!#@ zP90!Pr>##>o8XMBIcWeUiA@G9jt2L^z{015Z*GPQh$-|=jlgqiv|XD%!8L|4Jh|?t zYUi59qf3GdN&xE<@@3Vsc#GFa@eAAybgtx)I|81z@q4E>&WPCPp`#~kg_y-_cpsZx z)b6+q7aLI|?$!x@U;RxcxH}mvH2hz;&C!oKT12B&Ca03%BJY~S4ibcyNg1$VMQB#d z1@(ZM{!wNhRPbx5Z5F4wk7pnQ=%peiT<)jhNw=YvIEu}^%qju`Wd4q$lPL5?AYz9v zV%&3DXA$r7G4YJr_s1Tf0)DnhY;MTr$imSeC865D5PhAX{m#%_(xAyXb@LUaDwq4_D;A4&i2P|S%?qrXtu*DY8gWfrqR;EIkcP-f+d$tkP#VZ?lDB3ZM<=ah6#_nDlT z@+g2F4j+6jX3GC)9zXlbh0rBpWq7Ok`vSMh>xF_QJ(xNhamZTc2DWsC`VC#NS;eD4 z+#O-&3gULerA8*@drC8y_|hrdBMQXw6IPGvdlD5aA{bm$W>|Adj5&JT5songfnY@e zMgRM>!B;R-jv-x;cvxd^=AQ9DX7IC-)Vnw1K&G%+CA^N@!fw-`8`)XsQ;Rn&f>;rm ztA#nGyx1m54=2D1m{tFKxKZe+mcPDFLlkFPZ^puzl+^>Y$VM+&Sg~3E-(cyb5xx9J6=%z3zN{hzftl|%-{$h*wA|X7`K$uT14nd#_KTPzJflliwNKyl zZgBv*iU&9HX`v%yj0zYdJcJ6Q4_wkiTvTagG(i+qfE5wy0J;7kP$qCN zWQj!f?uIEcP!~)RzRUx{)BCP}vUw5SG#2dvy8*g%ZfdGu_au-M(ub}SxxbqnICed6 z#@0t-7@7l%7tl7FBxWIZ#h!X^%8njfA&Nyl#dmTx@u)yC7H;mYCs6log0{fIl4uwd zJ4Y-mvRbmxqZi+yNw*tbejdXX%k51CdLX?(tXdAhE#WNwX-nz=QEz`1_yY$F&0O{) zP@p-y8mi|0A7Tz4O;sH(S^8!hOAkfpws9Lf9B1$1v1R=#wx4uc4Th_lDk-8rqm-L#M zA~r?EC}U-}=nQy@)&VP@ip^3OGY7sp&h(BJj44Nv?leq@+q^XgT3zOX8*nSSjT!|# zF~2O%0hGnSYNe16n7Jw9Al<;KWF>azzeyok31l`HIjOtwmPCJKDh03_N)m{)2OKCE z1u~|-L759_g(i(R40C18c4!O$#btSU43xGVtX|^&3#EFc4HRL-w~u5HZFH&IQ+m z|7l;%4dWDHd*+CG;OAEvDv;uktKM?SL!P3?ldGG!LU@Z_o=ekb9xP6_RmOC;kQ@^B zRL?~!H){88k`m$bbWwoQzzkHgd;h7~*P&G49JxYL{-J+CYoG#Yo0)6E!ByXuB7Ch*Qq=>`@?c_yTjeE%D#59*%L}7(+?wb`Lrl|DnpZ4hmDq01Bi6hK zI32^IgIrRinM}r3>OXaC9YMC$dctr`D~wQVNp|rSwLIOx&rz`fa{d3d={Q0Eg#B6g z*zpmkZjVsJRN#vZYornlZsgQLw?|2;Du#R|Ge;?&=q(OYJerteV~~@gT(`e9IT-12 zTRQ?~s(&_fSk#md8FJiCm_F2TC=L$L85Vv^)Tf;0i1TU0>5Y507F*{bPu=&EOt?_D z)++~}uPu>ldAFpl(@Yb+r1*v27Cd#8E0by@8dL@3FGkKPm=^7(ngZ{uu`(DEJ-uS3 zu=Cp+qbh>1HNYUwl#ETCRX$j#Z3x-Gr@)hPOk;qP6_2*#v^{#;eAqA=z!-aC2Hp)( z*GhI4OJ0hK0!^C;I`DXiFvx9f8|axQWlFd!vVa2%4>)X?-Py|l{0bUWX*hh0&vFR| zhy2!uXrPzbdi8P1!J<~;GY7Gq5aI;*gS0l>@vfC~dp5z3B{((0?~! z&y4sDH-h|<2#U}GmPj38TrDK1(~E8*N42XIm`i4 zTAX{lwNN@~8-`Rl&pJG!EGq8;n8JNZOp&+v0SeNlk3Ok_a-gY9r6qF0w-717P1wK$ zqCO_VSRplR14$c|RRj^vO`fViaO>hOXhj#W%Vu+y1l}LT8}`nV{+aSJOQe57Ww}ts z=*QHMo$qJ=IM@t~)luM#z`R|6-$LsMaN(~I?ha_;wR~og2y4tplCO){t%}DS`baoL z=R-*p&MBDM2WE^!`+w6d&6T7;4ojQQ}UshZ`?fY$kDH1iwU4I6f z-l3CF^%ksHWj*;FS(qy9jOv#>=9Z#^tDu!LYbdIx;$-|j_)2MMlDD6C9Ba0FdXW!9 zBzOd$1Te}`+xN<#Y~}jpR*+o z(6%4!r%yx#5n>;CJBw;S9@;!yD~ZA;L%NN5T9)A?jg`Z|fV?5&s#NIjQAUW%@#Buh zNxMQtet747>u*UR5SaY)_h~qyIRslkkg=ma+7DxP8>%{_q@d;VYSUrot*Ux62QDy) z-^OBoJVPRd%+XZD3?}(Ma#%4$5@iaop3bd&RSPMTDbj~d*imNFXWUiNg>TB$M8FLL z6S8O_AM~KGUc62kIG8-*7k@U`icUIW3?@>fk^zNRPmQ zmUKtU5qzfA{N7Xq(r+;zG&dMH_w>(7pMIV7`qfeI))=Qw;@8_Zf%qm;5&^g#`%tg zl495sq=<^b2PR6#BP@N{#M(|vu-pJqWC|um=v^)C+r|XY3WG0#Xb*OWso=Bp(y7Pq zG))v92kipFYG=Bb)1sk3MLBH>a_o&XOLuc>E78RxDlLE(2Vf0Wry5!_6o}^muyzyZ zh8h#ufT(6MXR@EBXkv3F82=#>y@obG&$vxzP+E|ow#^U^8=t=(z;%v@w_X0yC)N9J zk^+A5!EjBmi{4F8dInwEVG*}co&kQbgJFtI&Gl0%x^_fFg|Tsnk7iwSaTu#LBTm04 znY?5X)eDcNkt1?&lVksLai)PHZ;&%F(Gaw&!!&XIgBOe#xM7t&YJ(%FdVvcpRE{N? zc?hntuv1u=qJO4B03fT`plPnp^SNU^a{Aps)PQ9NaT-=^&U6?QtD3M47FI%j1~P`k z8aE3Nb-7~`hY587O=Y!%vp&llw?JMmHn9>qcLSW%?GSx8zy5m|T4t!Wu@om+jXa6H zEWe7;Jt-1txnhHMGQI&<(e#(HjII)s{-qbzbe#t%JFMTm;$SsGqG6C`W^>G>Xgjfr|y-|9ycbMUk*H4dmSK zI{CbZ*QPlhY8h!@AR4%&U7Xkr`y0~8hn@TcZv2J)QxWBN+{E}E0^es%5Vt46pG%_d z*Rx;ov2WdhvyFoO@1sF4bAK)dHve1;W}V_$=}E>?Y?&OE;g-#D=Se0jc8C$0N?`(gOEMgcckrRw&A|0zjy1|Q_a7zM1T5zl`d~%^FG&paXhc#Z~0zOC*W@BJ=H8qo+4f4 zf1dFV`rF*23t1_S8+G}+P)X*edL&NK-PrTX;(uBg$&%%p>K$Ku_L1v#x#X@@?ruqP zAtAMNo!MC{|IOdr;$EM9(PmvjI97C3wA5WN|InTrA8cuF=SxdddXf>!jY0{MUEX?Q zw!SKR8}WAy|A>uVf3tt>fs&_#=X6Ob>bzR&aG$3M?;`@B1uxMBGE z*u8!>_?kGnvCsc`Bv>^G1|9u%_3=uAC!QEWrYhIM1>o@&!;dEE%LGVa4;pH~1k0iA zlKP(fn)3X5lLsZO-saEu*?8l(M`wH8gfPSv?^>tVINavl?19)X56{n>|7ky(^LHz! z#ceI+xbZuqBIl4K@7uOF(?sYEdVf%Tx8> zMpNdFKUtwRZdW86wBOC1E6 zafo;#v#1HFbo}VU6h{sfq4%Ax7nK#N1Xj_8S4u(|)36f<;!Ms-NN^BDwzzp#H@^zM z;4Y!Zw#VEfvSgQ$NR%1~$%YT!sVZO>tw^`eb1rR<3MCjF&zj#ag7JU7Z*C&0evZu% ztA6gnxW9Y(?x|1`CF_49nYHZM`Ji?WZRVqTQ3M^QwVB}Ocn-5`(%FVA>e<592k~ge3p&iqy}`! z{xEFaX+eeDMXd-SzGP7)3co%xV`YrfA)>-33~R857=kNV$3vpZlN)pP26=F zPX&mixaYJXR7BtDuqVG)qx_|J*qpqihdQyM^L&H6%(gP>I;0ZLCXZ&fN8L80&(5u$ z{(OvCRm{z62>GAiXotPjddqGX)MS76|NG0|8@D`tTj%q)-wWQDKBdf*E7mk2kyY&m=TklD-(CtqJSoCddumU!qMiGbniZH>P zbEyD$S!;55t8f!!hW4@`T7T<{63jZ`cHR=+-d9}x4%dZT@0dW9k}2DDAO8~2%C-1C zx4^kc)wg-uhv8qOr|+HIDNoF}rcV2h@)w_kZnFKa2j<@g-Y%yGHZMLL_Vt%HW5dhr zU%$5Nro^r+znhD;vrU(NH+NeVYMwrauRB`(>v-HaX0{ztJSNBN)&Os=l!6jhEDjf3 z45i+0Am~RIgO)0voMiljt{54y(FBnmnh(OJ5PbSHQR`b52`J+U`+LXD6~1%9=9lS$i@+N>pXpJ{0-jTbXJAK1AYN?!FEsK~~ihRLM zZ7bKr4b6~9glb6T5%u9g@FSNiaF;p@w|$aGMPWhsiRXpwKG&c;y|e~Nz8m4<_F#Px z>G8=lKA&1oqm>i3J*XSl&4D)f-WWew{I(UKIaCPmi*Y%Kn+$9g#q&!8 zE}e3l27Bvu64<8A-5mmMadAr-;NpfV_&(S$nRdV9?!^T%czZfTrcG= zJq0Cao`Guhtq=S`bDfce89{pkv1c-`G=s}ux@i5K!#m~OLZ*>ZKEUTb%+<$-@Azq? zcVOQQwCbcaT2)DYQ~9WzW?S*0J@`Y1Af1o^m=AqL+W^vV<@ zQsEg~__0LXp)wOzs_weQ4PhZFi@WX%-_w2Bo=Evy?ksTK)Rb7ti9!sq>{ULS!^_!u zoTrxN!~Djj40x{=^%k&}&SL(~)2$7}tP*n4wzG|pw#ml11_+z{ShH_6^sC!k8{8Ym zs_7?R&y6owsAEKO3ho?vv09~^#kFtuD`Ihf_c>TSrjzY;fp=-ibrRS(<9YEuxLM!f z2i~hsv=RS7UH`Lo%5naq@s@hYJRe}&Z=3G&b!8R?WgDIW-tjAAmRO?u2BElN@I_h4 z#L+a0wnn8tfhWK+@)X?`N2PI-xi$_K&=cD+`0-(qs21h@P#9l zJW_JQLS!F?Q3|m^CFdLk;8VOYSCQ|E2vB-Cf2r5Lu{%Qsh7Y)z^#~-U)b3+(aIIzi zChd=yE%0~dZuM^We@}0&^V)oCT<6b+q^}Q5Yrl-H+m-O9s8^=b=*3JU;F~s(^zel% z#8!G^q!VR{bLjlT6z7C@mWUb#*Gy#ycoT;cPV1Y8&M`K5`wk>TX=$jgEWzqUO%daAx^`fF{a zodDO2A{nWT(?hAp3A_0sdg-%}^F!2Z6|~u0j9K6<29e)?QI9km3dRi&r@PP{I{2rk z2D)$(Y?-I0k<6LY{%1rAD+oG;<0mC6lg@A2i2F{aOcTh&CALhd9#gFHF&ADRupOr?Dr7XTr6C7aGV1Uc1x9@jj6}w-uWD-D0$#_i0L{jwkC~It zg`(q#!ta3?59_h^n`haEU!|4&GrnK(BWG`)?5?A@G+PlOKRkXsReE-&{KROqAqJZE zesz?4_vOwFU{`Fp)Eyw1t%c;nS4JV1Hc|JDNVH_ANdt4}k*z7*(vi?0e?%#;qt1`0 z(B21$V<==3p_daHf81zG?DZg$#r~p3)oim>gzgC@su3_>gI-vF;du5%{7LOZ5r-AI zox-S>3^O=X4bv0iS>$fouV7*^s_+Gu&*ldv=){e$GjQefo_BAqN6Tg(^iyi(*dw`D z|F9ziA!3P3ip+1%Bl6m_(l(Nx2YI`Q*%7p<&sO063G>;K(&1SadL6HS=fs8xv;b{3 zJ;2%{^0_2r5In0$L|grIe@9g6T?uuAG~v>4dJx7svS(w@o&1#`t9PUvk@Rz2U^ECn zF`~qV{7gJyv5xv?Pv#qQ!yeUuX+5=J>#YzuJP5Y2VSA#`gqSoLG~xWnvB6mI1g)BZ@7YVJkujQ%4# zC)rGfOjolZgk)#tDMA2xhK%(Uxd=E-NB+G3bmuptNnUoaCAeW`1G+@JpW?oKbK!{Y zkuLg3r|>RVVyEzktIV^$mwM)r8Vs|!LTymhS|q^U#{s`Z_H{-0Evm3i+>#ctPW&OO8#Coz}cUCx%4LAYNfOS=N9 z=YU6g2)Yq3ohsmhs?uc{CegWVrF9g!(!#Epi$x8)^PQj;DPg$x#mZ6h%93}D)Y*0j zzx-~Qy+3vBwN(FZrMFIHdFh<6{CK>1(WM!@=X7^Hvp&(cUuStlU>WJ)M+$2~h%5Kt5{ci*x^uk!U%UzsL$(=qOH@vlY}hyN z*msh8(<3T8e@ZVC5_mIc_{W?TdplpAU#+&C=x^+^kFPgzJHJ;4b1bDUWI)G^ev)Oj zaa`V8=)D@SuVec7YTl&&x)|*FjU)8hqgw>rU=HJ36*VD5 zfc0Px*)nGo;z^YFajb+4>1<=lET?#w#WW&7N7LDP5@8ZtT#PNaLd{O2^d8~jRH>=D zj6Yw;WxO-L+T_jCCt&Z~|EewA^Bid>SMWP^=oUtF|T1~ zfuOd9)S>_Eg5x-7hNAiK$1SX>>p2(K#iZ91j;h=Dt$4dyejnUc@=dX&c2LWjAF-NE z0Sqi=?<;4Mb6dNT=GMpe6Q3E^U<8(89ID!;5*d6O%4Z$M(B$c|pESzQS9coN^dqt` z!GlpWhNE~bIVt;Whuyd*zi-Lur-{j-Y^&*!VM7#fqC z)W}!~q?Q=0#g<-dG8qif8vKZ_>+P;AoWm5P=l~!1>tgWrx@~MmM1!^q%GC`ys#Ug1 zn)4h|#Ekb9Z5*92D>^^&e6p>FlI@j!BlfrVYI>$H_QzVrdSQy2jSDF61= zLhZ@?L&6^EWKlIi$*w!Cpqmbfqv-Q+>S~9rL(%5ZfDbdXdwLA=t?}fmC=L1`wxqHj3@`%MX`FF{ z@lv`krEtU@G@l!du&{E3y#&3$rF(V&S5eMSp;>)aZ#TK6J9#QOBR6lSo@WY(=8My( zWoSbiJ?vgD@2`7%ia(m#rJ9+RaXsl{Z7}H!LT!fQWsfVK2t%%A<(x+`f-;4PO_I!Y zlvHqzQAEt;CeZ4f4Y~|@pt6RHS}iNK`|1RgdxC!omreHp+W)l_OS}7K@s!oarUN|* zWZZ+*SE?u3H5Lv0EEfa=U-98rZ+;LF-XSD!O4)h|`v&ta$k_a*jC+CX(9S$IG_syO zGU#S;MI1S2w%zXiLR@6Wt2;JGjE~wfUffx$o@C~&XMKJRT$7CC3hzQ=^U^-cdkMSA zEbTJ%+4FGbSRuY5U&xJ%!VRZ9M{5!90h4vXJL5i|Q@1q2QTDFyjGGdFn@5|0*5W)}NLP^7zW22xA~y#wjYj%0f=*PXEBvWLld`cdpwigAZ^OfF1E1iNFe_1hm!OP?SBZz;Yf;{il@(Q<>Ps(Y>6j)pm9Vy8 zHRoY!2n+~8E}=M%4k=?jVL4CVcu(R@LeUg?V0vt0$Yu%EL9p7c$W57I`~i zu+3?|lb`$u@eceM8rg`aG{=N`#E|6wchupW9jLy6@f-DwabQsQFR+Y9Ak6o8ePwL< zezbo;LYsZ+*pTsup;E-H$3mNbtdqHUvo=r}Hp`ij`>(bWWDQ@cV%3S=jE!Z9xDkw0 zYt;sPG+W(kv|KEWDC^kQhVehQ%w&^LlZt$+o31A8xdZz!BH2YnF%ygCW|u<&%T>cr zk)ru+OCX-`{GbBHM?*Y!RKbo{=(8U|GR~gv0Bk^$jkC{z7W$yc5s&ke`Rk)y7>qB+ znH+sC>Tv;gml(%=1$2B42MedzzmLki11a}2zryWQHTw^M3q~qH!`Oumo=aAud*Q^1 zL6Xxo@xE~{+_S^nrLOPkJx9pmag9@Nd4O;m?bzG;ORaI%Mf$G%#YhHoZDh4^){gKs z`vI@%EL>Y3a&5#Fa%}_0f>8L;LXYy zCH128ftfqKX#S?YE@y(W$Ho@naQQd``aAtm@`&EmYw4Ki3I)l=bM(f_n>BtL<<;&r zAzc}oSEm&S*s}+sM$b(KxTUhdFQw8w&oD>#Q|lC38Op9&%n>R1 z5$wIypR9D*?7lkr)ZOc28}DL!c=B|=ZajRQxmRdEorU9AzJ!I>W#Z(dLgkbO)EvB0Ax!DTez@4vEu)!}O_EKvPpTR{9l@wYe}`?l zHHGIQ4`KKF%PG$@qRCSvI^W1d=XckMjHc5L*5Xj8tPuif@36AX_m^HNG5MCl(7Uy!C7(&A6c z3@+bIe!V-!jtT4dLFbPI>~L1tkHi9Yx)Ri!~@_e+@g;;iEbV)q@8y-j}eK9&aC2|Jr!Oll+Kney(#TS&DWla zrx#P^WHySW!KFv1#L@GGF=_%5ynIwQ z9J|I2>(^XS`tM^JTHRRV_9BR{HI_DMH3S51$OS;|o2CgAt~J{!w3^Pq!TccNJ*F`P zWD(NEEb_>_Is*n474ERmLL6UOJ>DVnR!APGqhIpgArKlFr<)v%<9cju?>Il3U9a-@ z?eS+C%QQfbw7AcCM&7i0b~S}}EbH1_*XuWWU@LzU&#v;Vb+&eWx%oQ(T>}w&<%)OK z(-vURUKtL^17XWnemiZ_z~*&Goyg48krO#6PaV$`@W3wR#xiCKHiW4cD=ld_Y#3~! z&A^2v#Eiy2PKV@&3Z=>{~`MsQItX9Kd3mVoln=`GeJD5O*oM#o!leJ z*BgHD!MyjaY>dzmdf_0RqsH=99B&i*g<_0kCIIKV6m|`3JSrr0dwGZ;&zf#ZG+txuDIv1LuE_ zb;vYI?1D-vO?JDm)1!jzVj`dnkm@Qm$Vi(sjZvFHdeJ7bzob0z)HUI!T6i4lM3#I5 zWoZmW77d*d>b(;J8W}S(U>|LbAL&IsYa$I=mx2RofW0Nlj(;f!9-_;L_&coEJBKd) zmTA^_V1)~u1a@zFFa>o`ky4tpi>LSk(w582+?YN)Ln|wkfNxc)s75*A;?B_!yL+N2 zgB%&M@^cn8`%}LB5D)v)_S?YY)aIzh_QtXDsMnm3+Njt2$pou9vAOi1&3n)h=XPSN zLAq;!ke71HAHtzW;A-6&`(hd0^VOHf3z{#k`N{-al^a@~JheRi-BW*Wj5oXIpMCwe zIC+a(eQ}EY3nNerSIp4~=p}*X2K{M0KqTo^1G`2w5w%&w1={23WStRJZ>M}H8{eAL z5R%mJNUplA_~ujZ|3+MXd~v+MzVzU(&+*{6p`gY*5(!L`Bh^FBXU86naf z&QUWy?T}qW#05yorUGn)TV7UA#_Xt-xK1L=3n@JlFp$zoW&MUQW9kn}DL5!I1m0a5 zIM+a9M;9&j32ljh`&S8VeZ_7q_iNcKI=UE7AV{0l*FbF(*=HlBvw+d}I9`Ote*`)h zQIo^=Ik2ornDsvQX?_KKOAI@>Ae=~>`u>Ia^cHs=UQOirwq3(N)8Alo)_LVU_}f7o zlg0L(6fVoQR}lfa8R7%>6)s~;tC+(Jg%19x?N7f$#h?^68J(31@sK41;o%tSoKLR4 z>$cG6Jks6z^t@*^I=ItD?sm5u0_A}X%;gn03;>vp|=st+LW#;otU}mdcTp9;joCEkP~8`J>1&L9vnPfzG+q zJq#suyhH6HWZ_ZL)_{BF>te5T6m#mRQT-EwQv7*eMt-L=UFOrR%N-xN2W|jQ*38LH z;^=Q&H}@C!#X8-VS=Rbo2>DvcKC5rP@ckr}FpCj4O$i*!X`-k~6Yit`Blqy3E6SH;C=8s=9`vW>+!wf}WWLzFGtmc{{j2rS| zqoUN9OhUt{=1O~r>Z(|QeDX)3$^A#Z=$x0>_R`OsupClGyaSyzk?x!RP=q`;L>@xL z{)zY>jY6|pC3e7-h?&NiN1w|=!$V{4pp|iVJcCOCzyE{u!$Vxl<^-iK-Df=wHm(Y; zOgA|3^6Gkm5u2U13+`51D@~4jd62lscUawi+#z7HX6S2CZaMS>%jJ3?92j>SHfU=C zw>UU%8_ckvXnsNfSV{~#<{CorTfWN%VYdo@TS)2E)x)eqoOPseJkZht7ET?QiJuE(#9nF% z^J1vbEgACoZ``q=6~V()pH@;Qdyjr@`1iYypXGN%!TSr-zyrXZ-{OOu)a8v3H-wBb4lBSX?KlGUl4#bg^r49aTU zFq7`LaVys3VHFWSR3E*(opS}L)rWwg1bjgh35~QI z=BA@pNl|Lp*r70tdI3!)?Dq+DBx2S#*rT4r$`Am#gP_n8{ut##?(+#8!z%C#Hoj$F zG0rzZn>Fh09XtRskUsTO@ugM7ax59xG*tL%fy#IBw48Pl)AUzi^}w|f(vHiA^Z5~b z=jU*O9$xKqPSoaRDWDD5scNN0=TNyg8Hn}sx&;Ca z!>z-DvJT5hExER?Hg1n|UT2*AQDIVj;dk}B+KH&3eNp)D&?5^whK6z9QY~$vNkD#P zRl$$*SUv6Q2RBsxN}F>-SvF*u7s`vjWcjI=Vf@ zP*g~kDe5}@^niU9g~H*#i!T_6N|A@~TGBjDq-54Jgib1%MZaF%onyx~_c z%+gbz!u^Vu@eXu@Q_?TcZCu2%xMFq3vc1^RQ*ee$YN(EmL4#Tbmy}*~Z#UEEEcCs9 zCV4x-`PvaVSmSeQd38T88ab?sCs=(%0evhT6WahTSFFc)VD(mYF?7mck*bw4DB}lz z3g>e4?EzxRi>$j>i+&R8{M=c;fElWsp$?Mm2I8@RG5sW?Q{*v9z$dV)G*AyP_LWlA z5Edh>UWF!24L(5<$9eETf|(#=m0!}WlQ%h{-m;iq%TyKK@c6lHS;|@8>X2zEIKV(Z zsE(PH6h|gmapaW87|CgZOX)b>kS^OYL>3OLYAK(|elE1+_Kg7^~73$@=Fu3i(X5tDpYmWaJgpyFT$96>} zgHsH${LPICNvfvM&+)fZNCbsCo;5x_!uT?E%(v#?;=D%RljF~m^-xt;kF&S`R6oS! z7pt=Yxhynv<)z9Nmyz-(wx{De7$#t0o9xo2|xNK&SYC zU?E-X%e|;uys5v4rP54&L3+l4`0(ALwRE}wlp8n8t{#CQxO5UrWjml*_D8CucVKsb zLVdXx$d#W$AilJzRo%Yb!bQAJ`K-an2PA1-(FFE zTNrnry7TZQ(q0a?x%0K*QYuoADbW{%xF}HN%JiNv(Z(o+hJj#Z44RMPaf{~?gypQ$HoBd)B+hOc-xeNmopv=^qX=C8;k5^9VqUY z$fq;KX3()7fK;6V|@?x zNo;|nbkFC9liLr4`<^qrV4$ik37z@KvO3w!OcJI;PZ4tHDarU8a(U7pct*Xv2-t0h zbghM4W>+7Z{8N`}zinq<)3K1?MP{Xo!p)$x4m?Wf1)c;4uI)JVuDAmX)&%g+n;fi4 z=rG=;p>Zyo$ihWF;tl3Q74!|>J14PL;PsE-WqyO)K(O`7`2^C95_R_;L7?gz)88u?Ku?d525%vX4DUu`Ip);!>@!kI zBv9Z~FnEu_4yH5-$ed%~9U)Y;_jj&6oT*Lwym6&0(Cevuuox>Bvb?|iD?qKg9{6Gon#y#KGoq>N7S8qXbSDyiw zsH$Rpor(T5+x)Kp#}+v0!bX2H1tR(*;CU+g7myIHrSOymB+xPzhT~9G!XUZll`zN^ zth&;v8xpCJEG>&Fmn3~AIL&%REd0djVJgazvUxp4`E);fD#6jy{o}u$)09@&I*-8J z-OuYuvuc4WN;3yuqz4|Istc#8;W#d!P0yv^T#sr!J^aPb zcE7jTQxp0rc_-e+VMf76=ivVYSb z{Zr@R;kI|(ZGAKSv)g;;D?5LyM!VrW`mg`k{dy*&vXv|`>)(nzZ-L~@?=4-I?%#fL z=V6~bzW}q?7)P^Stb9gB%epvXSr^NBuhI(^v}th!G%aFfTB!d;sIRFu0EVW=C`SQe zNT`HCM+OToX<ih6` zC}&pSxA)()UtoCOy?MC1y&rB|-)#Kry1Q|Ae>+qnAD+JHrwxT}<+oLOk*-zx6qRn4 zEM%o_Ccx9d87B-L6)7Y`!;_Pj`aK7Ms;t|&!#CekSumgI0t!pb3ap63(pOO#wRZo^ z*UhASMSV4^PrIe9w5mG4zPNbQFz;%q`IS_qepb?@tye5?9Yv#5U|v8o$s~u*iYS&T z>>?@44A)Uz3&WM3DPb_5xn{kC#8oHUL7Y0asLUa}m0sJ4M0SVyPTmnOlgod8qwH-M zQEQ`T2BYVAJD>TE{`jqXug#wOzJ8zUUpJE04)zU4+B1fZUa^o39X)=cIRYtT8);Di zDYmPG6+nty0jYT&3nLXC$lR+c1J!7c-@q60KZ+~)23+HR6ySN8tg;`XcDpy{FLZE= zHizXLf7{yTbNua#W9sT}6Q90sECNd5|8h5cnB6Zw3amS>j-#EU|2%rS-#9uw+4##v zcDJF2rEG)io6Em8je^nJ)?WGzN7{3CfnBtqO#?dxqIHlhlR~GS@weG)>9SuAW_8$`tE+Qi)qlNCH=j>6 zsWl5(EveySJ@ZQ9-k0rT?VE=tvP+%HPRV13_&ld+0z95fEjO%_% z41_7)bdO>#kZzU7oPd^3oq!>?P8~x6DnXPcc)z;WlP}0p&?N3`Rl{5%Lr~6~fIemHJxawnrHa|(r*Bc%1Wdh+Oftw|D`B{5 zU?mJXO=M}YOgZG!QC==n?l(Lr`!>pzMs1CP%3Ts!yQ%8zvCK9{;T-REAc2aDGjlI7*E@u0db@+3`k@l>Q*(_Sver7WTS{Aqz@0ng)NS*U2 zB`L-ch-hKJw&^j(@~VWfD#sE^lCp?Axh_U*u+{^=a!kH<{2Xr+dF0JBtHlhFS&Eud zSu|ga(DS?5(e|FapD|3lJ9zBrWT$L%!c=zNzj`{qzf}Wq;>Tmr>lpG}`n_7Wfc1Md z1+0GG-Ty_&-O=&n!(DJhS-jK#i6Phbrc6jTF*i&dVR~0hGjPfX$BvQ~5CuIJhI6ne zVK@hi5(Z^T))!G>jF$@TGHWL=bfQ^VJvEA|H!1x@WyYm_ju#C zxoJH4HerA+pBipwj^E}U^2Tq|S9#;NSy8<4n~auJmXKKN^mGT_0@-{JqI{Dr!219r zfToS#ri1Xte@H$6)dqzy&`r;0A#Nb6VQ3$~Cg>A2q&;A41Z7(&H2Ftl4Q3O2=@tq( zF`28unCmlAV7&8X6%6nDT6|;U58Hy{S-9jIhRr+YjejH`n9dl*5zgDLguy6gv@qy2 zA-M@7UwaOU1o%3oEKx(Q7c><4z6bfu5T65m_aZ*OyL|i3`#0>n&zlsHAm9D|*4^-7 z)&$Az&C5~l#8je~hUb1He4Q7$;YfSNac|cwWY@i&0nxuKV?N`VXB$yuUn_j!&ZY>Bp(gX zTz~B$c3gxCXbG2i!F}lM{qe>YiB%4>yZ`xQR#R_x@Hp&#yS`CirYxDOzDopbWvz*T zHymltS$1m0g0}0__~E&*r=5e3pLb5apffTu-N=tZt`x~O1?UUJPS2izG!dHaTh1bG zaFi$C`eu3ZZES@n-)0{W$A8Qnzm0wH16C2{m zx3LwT{5|&iYyr=&2?}Jw&*=VAVYo_zOk}wJ^=f2DDu*0H4ABmKOz8p;rW>d`gm-5j zJidTL;d@T~tK6~ujJ-&O^oAoBYuY)$D zyL>Zj(|Nz8Zubwv{x|1lZ=|oIHXDw#XYclU&BDIj>ltA0_iBS}3JJd1$M5vr9+E&g zJ;IbCI_!){BZ@Npe}GgQMVVv86rT9T#U}b*Kv-&nzVYO!qV@#kD2{#8j?HFN^ds65S+j6?0 zAF~LEsuVPCc|1>km4d_N=ite=<=;H{RSFSp{G${@Zh1dXewD(=E&nF2|1o#{s}wPA zc|S=0i1M{WGTRo=ks+CFOKgf5r&2Hy{sj!xk->-ny@_zyTgz4ZK`n%em$wj#lH$ef z=SAwqsd>3pznnZ5i}JV~bTG;kO^xGFdu|}=gcgWeS~tW==uxN>Mii=Z&^aYkPXVu! zt-GIq#5$&@ZXu0^6i6MUgh5A!ix??k5NoEQ=`TslK~Y;_7_mXxM)5#+yy z{q}61Bw|GD2c;9m^5qts`rFuNg>h1XhBG&K+TXYw8)DD4a;!;k478!Y*c;dd-KWPVf!O{FMVLIl8zbR-r!?za|`=Gg3AJO!*17y#2Ct3&xrGs zRe0j>tQ+RtZgjcex2k{9 zXIhiAC3Pu(4!c3xXLNrw-EzJx{q4eE>_#@dW0A>NqZYRiHPq^h<}{~%q1fq{KTL4k zV*;739YU7Wv>u{-lQuz=Z0~kLjIe@PDhIGiznsDA1M z4$rSIE*|x@wSMQe64z0}x$fO&(E`4BoAG0B-lxZ%&nG&AYf~hM;wrD~XfsU^O4xt9 zEsHE+wKUb2pESyg45Id@SeHpGqm)IwUA>^qz5;rI4ir(BNMGRe3^K(2oaSMmE|GQt zBuScMm=>n^V5l#sb`kv>WDsM0ikpFY(98>%-$0)O>Os?<2I>p+IiS8k-*u@US#MK4 z0|@8yb6`iqBJFOVo@Bj?s3%#29e10aY;kwd9$TYTP(j55^1*;br)&B zJoN>YZA$yd+A~c31{$uZGpN9hhNfF=!^@y4^99v6pl#DiWzt@tFCbJbs$RgmA5>t+ zQkfd;xZ8C5BNr+(*m1wX2<&LPNXH4OOJrWa{K(@w8fyk)yNGoT^g(+amC2ex zOxii9PBLwY%q5Vmlj+}pd(%H)&)}GBcvWahdx60swmaul%oe&!jrI-n3%KWCWVX=0 zLFKEUUc{*{(AQY%F4|*zyeg&7^A~NA(X{ea@ZegV1G;OOdeACw3w4R8+qCjs^E_T3 z$kz2C+k79Jj?^d=Q|VVwK|5%bPUhY+*;WM?P1!nmYHU^?5h~TSwf=Hi2da@Vb-x|CgLB@$*=$)@{b`6j*9%H#J>-^yuzt;Arb$6+}hrI znw4?xqkh5gewH?rmE3h7N@oW+=h-P687*52AHpdd8O>mESasMH5GtVEpao*QOl3mI z3mg@0nMqvPYnfqM$5g_Q(~OZMy%J*T`WhINUMnh04S%greK{*t@$|!Qr1tgox*Uo) zYrYs`cI?ke4plQc22Tzhlo7M0gW7PUJ!fC+hizQ!11$^FG8)pAuVq*yIYRF|V_4v9 zff&<{dMpeQiK>L*$T^fShzn?BSd@ap5E;d>ch0M0SWx&J{{-vohsWOB+#avU=h&oC z!Km#0?Y*zhF*?>A1>2hg{qde-avX_U`v>OI-*(jk*5Gymiz8>9{9${)vvs6{aQA?e%WE@Q#OQ_r=?2E{$I)v}N?IJ9t4O zkRNLtB~d%^aAw1*%(GWBj)wB9oYOvfw$0&RY&= zX{X@c$v@Jfn5EaT(;En+?6>!33>=O0{M4wCk+hB(&8N}TnuV;*)$rlYkk0AO=Jw7W zB~k>5xj4ZmNXwI!mj$DNr`j_zU@Sn zLtH}BYUr5qb)6*j1KUSj6g7Sm@DT~5PIxQ~GV@9p zj`&9jgM^=|Y-B;o;h9oH7G^N(WiguX2wi6*&nWV?J9k#l>xIW8qZs;NN6e82bKTqM z-~6AaZ`6S<0v!h6|J> zG*3ow(-JyzOd)UH@7ffaZVH8+^Sgu2_dV$Bf85&C8;fELK{9DQmJ32nK4ZDyRC*zS zmWvXGv#FFYVBM62m_ZZEg~Np#iOg#ftu2?gMrrp(2-r+TyG&PeYiEq!>)xC@ z8+%r5DBYUhx&F45^)biaw*0|!{B6t6Hv8YY1Tb^`ZOclY<8ND#HOJq+nD9pZ?aS-I zW%1G;2KsLo*jMd-Epz;>v#+du*Ek?BlkfC+?>SOL*XFYo>{E){#^Tm~s|`omvv!?X zw6G03GX<>w>gdby=U+_Gx+O;3LDTtLh&phU5Tb!&i)1iFY-Z& zti-VjDPcIjof3v~wJBkw^rpz485ibl18?;%)WHCFKOo$D7IFIh82+EQ%=~s{>xM8# zv@eT105Zp4x2@N~ALOe;^LkX+pet{vFVLki)EC%(&cqj(e$LDn*mldr7nsiM)N^ovJO`$3 zq{tIot&I|f>porN7)-B5hHUDiZjc<3TM@^kKv-E|3WVA{jFXJh*}5oMy|_zSFYaaP z$#ip-ya8T4J&KU7)t;8jvtNLtBz>iJ&WCc=i|(PUvFUD{Ute52>MP<#{gP{>t?#&V z-EsAr1$@QT!>8RAlbm^5lu?PWEIjz1k;+Asjzt(&o)JfomdswkocvRzW4(JLOdWeG z-++ppKTq_vGB8`p6r=o(o~4;>gyN5$?jQg4EYs`}k7;%}1Mx>;)65>hX=abU9RKp) z43b$1320B`6}lV+J;Hac$-A(~1UhZqyhyx*#PHiyI1#h^vrHt5i^|fj#wCl&$+Cg* z-;$#8!el3+8QT`Tp{FYFZC*SghgXG%~K!mGF)xu!8ZCV(P2uulsT)an-j#QE|<%GX< zHq2{0zCj&6_ilkgOQ5fT(f06daCH3O>YPZtyqll;+ZR`FsK51g0$jL?qOtkZQ?sCd a`^mTg{`dc|r}%&WkN*qa!&-G-$_fAh>8TF@ literal 0 HcmV?d00001