From 834bb2725894a7dee215544d225c8ec26ccca8ba Mon Sep 17 00:00:00 2001 From: Gerard Capes Date: Wed, 26 Jan 2022 14:50:54 +0000 Subject: [PATCH] Use git submodule rather than downloading from GitHub Fix #67. --- _episodes/04-reusing_tools.md | 20 ++++++-------------- fig/GitHub_featureCounts.png | Bin 18029 -> 0 bytes 2 files changed, 6 insertions(+), 14 deletions(-) delete mode 100644 fig/GitHub_featureCounts.png diff --git a/_episodes/04-reusing_tools.md b/_episodes/04-reusing_tools.md index 601f490..f7d47f7 100644 --- a/_episodes/04-reusing_tools.md +++ b/_episodes/04-reusing_tools.md @@ -33,23 +33,15 @@ The last step of our workflow is counting the RNA-seq reads for which we will us {: .challenge} {% include links.md %} -After finding the `featureCounts` tool, we need to download the tool to the directory in which our workflow is located. -To download the tool, we go to the `featureCounts.cwl` GitHub page and open the raw file. -The screenshot below shows where you can find this button. +We need a local copy of `featureCounts` in order to use it in our workflow. +We already imported this as a git submodule during setup, +so the tool should be located at `bio-cwl-tools/subreads/featureCounts.cwl`. -![]({{page.root}}/fig/GitHub_featureCounts.png) - -There are two approaches to download the CWL document. -1. Copy the script to a new file in an editor, for example VSCode, and save the document in your directory. -2. Use the `wget` command in the command line. You need to copy the URL of the raw file and use this command: -``` -wget [URL] -``` -{: .language-bash} > ## Exercise -> Use either of the two approaches above to download the `featureCounts` tool and add the `featureCounts` tool to the workflow. -> Similar to the `STAR` tool, this tool also needs more RAM than the default. To run the tool a minimum of 500 MiB of RAM is needed. +> Add the `featureCounts` tool to the workflow. +> Similar to the `STAR` tool, this tool also needs more RAM than the default. +> To run the tool a minimum of 500 MiB of RAM is needed. > Use a `requirements` entry with `ResourceRequirement` to allocate a `ramMin` of 500. > Use the inputs and output of the previous exercise to connect this step to previous steps. > diff --git a/fig/GitHub_featureCounts.png b/fig/GitHub_featureCounts.png deleted file mode 100644 index 94c93e29bb840327bc207ff65d01ba11bbd1524c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18029 zcmcJ%2{@Zw*FUNQZMCXT6)i0tsVdqMYVL%Z=Xq+Yro=o25jv@-6fHHyOwE#*A|yn$ zRi!l#AraA?K^y!XXj3<8{+WJ*SAHUa*j>ib!ZfS<4gLdq{v(#gRxs6E(l>N5}1MKTr@ z2+sNa#O1>i@3VWo4jTGI<|hc}S}ch<3gT71$;2CsXwZ~5Sf@k>Vte<>c94+XSp+)>%*)^)7iNaznqT1TpR6-WhjclUy_4F*P?0{+LzZ0w~tl)zxidNo) zI@3zJ@a`<1$@dK}s_Rj57i6`H`(CoDC)jkPkB}+f~9BKR%h944O_Xsjw&GfZ}AUBaWB``~ACJ>g5tZ~_HGSbX;9L;sF<(ru9I3HMQ>5D4A(2E zJn#I3ZE0IgKqXiPm?@#&##-97>|5x)W+%y*o*TibtF*&ffOFiy+NhH8aL$>Ov&v6= z_on=;*7D^c@PJyRbGMaXBrCD!#oGdB##nzEecoYeIFV)d}ef3VfnQvz~j3g1QxmK9Wpv2V^6Zrzo6jZr&QQ3 zKH8$=O$3{DNJ+!mzX2zn9fhBW%uzvuN^K-d#l_CSx|6MHLE0%^?s&#LkU|%kJoIz ztBIK*2d)2kjQ#m4EKoGie$e?PH+WT*8pBVs?nVcBRg9= zgfyD5_|1q$x_ZiJWJpA21puTpM==~FG|C&RqN7Uqw>OMsoHpKDA=qXWinPA^rYBuF zs|ku*F7dn!TCI3tSSNnvEtbB7Cc!0zX0fhfX=n>$8y1K$nvpZOq6XfvNS{2{=%B8- ztWI-9kDOp9CEsRjsG@D|nII>7mWxT%x-Odq5*;h5#q(=BJ;r||)5TkAzBC?LsL*uE z=iXjIZgwG;h9+C0zUC;ox@9+ZeM#IJZw6Z`0*lMaa#4Mb$G^i|Q^<`EquufqtfQhr zlW4Z@ypgJ+02@Ee9i>e;r;#_8UavBG(XOq})Xd=MITfdmFADB=DhJtUNuuY!zp=8T zbAa%T*<0*Ytor8drP9<$lrx za&g_c?@_v1Is^Ij=$(Y^Y;ZCUHZJ6yrsy^I6;y;Fzxt#m@?43pQ?XgOY{HIa;6EbS zTSwVj!&!F1m6u;Hxjf3qa$q-PX)IX!bd%tp!Z zyG1HCqS&KqBC?>trmdadKG2nMG<<9B2;@&=W#x4!%0D?EWT|iY{;(ZI@r@&~eD;}! zSy&mN-m8$K9!^Qh=~x&*U;`Lb{44})-`WyQNNJyglnIvx#+*8*Y~!{&`}9nth7|qi zqM;kKmAF3_5X(C?`i_7q%n!&bf+~MT2L)A6%72G>kb0IBZYm0{gJr zR9R&S(z*b4hTYYIb7jULYtx@^wtWVK&oZ9J2FHDt8f$uxOI2Bg%_`aW$w^6>W)9!P ztR1=(G+K0N2nDjf5~8f*FJn)cS{5Lzc8NhZ+7yGmY%AeJd_{CH5l6yE(X&oD2DLt7 zS2>Gc`HCK#o@Mra(s%>RI9Zf`A5u-`5$@0!-&!r(3ob4{4ehA{uvnl1{smWxJg<>-1$CFgHv;!uvFYj165eI&;?JJ$c;AWf}PsQ;Bp zosi5-Lyny-b4LTO72R`c zF#z@4w^S1j$+`~hX|rMk|33j(<3QvCoqrf z>wRiJhas@1{8--TktlNLDw09Ql=XhZ)$KTCv;mX^(sufigj%7c7Hf@>{RI$~(AcVG zcpS&Z0br|t6eRhNpUF2J$mt^zja4YuLu$7!^iZfpiJ*euOjRLhNl#9F&F=;S?~uTP z>J8L#N+(S3B{#FC-z+61%Op-nW>7=J=^UX=`ihh-3GO$Jw)Uk{2JA_d8?PEXf~gl zm%gN;?~?hH&;W{9@5d>=a3aUVx*7g=1kMW6HR?o96mLySZ^N}XN-vF(BbFI;oYnFn zVI*CPz2V2?p!sSztF@fT8{1{aa@>@h7YgroGknFKZnv)h|4fn;e~#|#c6X`>IXW3! zYc(&rZzd@$xhj3KqvUj)5x(t=8O{>d3e~Xk#|}3dT0^3bSY&K|!y&Pbfnrt{6y&19 z;I9dkY(LP8v_M&RF(NNvDf-)Y!uWWqniYQr(Z0ts>B#JvyMTU6UUlQ^-#e^xf4$sd zHhzLR<0R(%1NKi|;oiS+o>Co=DF5(2eDZW|VuNQvY6k(84 z4t<>?dqB`4oE<(l@XmV{bl>MsV^C6Ri;L5j%X}g}U5CUEQPele=r;Ix{hA!-KcMYr z2+GWOaY5CRi+&NaaxLULPKzN{QNc&4jF>Vi7KdCmGs6&2wA?68w7prh^1vdOn40pw zCZLvdPT!QRebDlkxVrG^i)??d%GiY9z6MF_xgMo-dk3T@(jk8cZDUJI7u@v4ILb{O z!y}#SKMEer?K>!A_HB^0#(anVsn*3_a0aj@0h_Dq2tBM<)0049&mkdj@VvGRM<3B2 znTp`_`Pd2ot0sIte8{TP=*7}WU~<{opj7tl@CU9XdX;51SK1THgGE>6sWGPl?}-o~ z@4~N0T)TO}C`R9SZlFt<0J&}_nW$6d66UUT&a3D?cRLEHU^lH>)~RfA^A!H`-@2G9 z>XxK#eLSBgO>+9%9EMmT1=op{%~3PG1pkzsEbd^RQ(zyd;Y9k3JFjI&#~V=3`laPS z*25hmoP>i#1DcDShT9yS&rx3DB%BM8d=bhL38L=M4n#2GRkVUGSYwMAcxme-uX`y9 zx*c^5pcWZF#v&`qlv+i;;|xVS=8n=GdOBBkXS=+0vQqA21XP$7i|X3!`HYVIlP6+- zaL1*tHIeBlyoORxn7wRQ!G{Y>Xd-ogvPpeF*(%(8L`n9IZs5zG)fGv&>~^6`DpX~kLgJOoZbb>^2>H7Ojo#uhD7h7Xd8h%(9=WY z2*b|98fko%^U%l5k?2=ms!|{4p}%_{FHGXBvsM?{IJ5STvR!=9!>oG2+itp;M}FyS z_zcux5~sB;2D%>e}8 zC0eo)mSfQ??!P)mVYQ$<8gy+I6MiT5WVdL(vl_GN+gW>fOXV@KMOjC%kvJk$>A<(+ z;z)b506GJx)aYxIk4|vR&wXp?pPFg2WA=pl`haHyKuYd%s+QN}6&)jpim{1tmTAYm zKV*&EJ*V=m+!A|RP-v@}zhv@yn=Ccd6T z*Hy4~rqFZm0d|&2%&ph+=ID;zc~7&QkQMgwdrx7O$kUPz?2?9+&Cft-0R!nz#Hk=s z1wuFCie;|!nc`HtVP*3)x3>YXd^8`DjeH!_MRimgInkms#sr+J%%W`e7H=MMJ0(<|i?h!wmmY%I=d zUQRgk5rIjq$d@_#nYVl%j0xMk-GiUk^vy|Am=~EHaqz2!9HX)Ti=zQJmmTzAvbd+A-xV5Q5oa|Qe3~O6<*DjwPG6$Z z5vns@77aSzH@=1c^`ZD^`0XF{38beYYF^!{zpoQdemJex?G&Wx$gX|f8Rm{6DQHj% zH?E1P>Ro~=SHIcuhkb|2Q+^Zb(V3mOD#3cwR-wLv-rl&ykFmyQhdO>=0-ifpVJ7`u zT#AUyf@0TPyZ5=yo*hKMiKt+TPs);JL1K*(F!*jgW9ro0qt<=r7Dx1yrzKC>+jwYd zC+j!p8E3c&;W`x1Cb8lCXih}6?XY`E>d!;%-bquDM^utmxu0l!d|na%my>d3%7QrA zA%%oR_2U^PZInaF*@+r3B7mthLWBK)sj9%K{cnpVNHoZD9L11sL zv?u`=Pnra4rJnI3^t=jT?SFeC`zS(OsAy~_#Op~#Jk(K^l`qpV%9%j zz*PB0(HF;zU1RL#SLJX+nz+usR4Qxm_ao3WyvIBy)t}*_&^ULxEptaAW${vr1@9;O z1+o6AoXKkLO)tF0bftZsvN*MN$xMAL12`a z>wc>_Wy5F6QOk$uQJ*8DSQ@ z10X6oLNfygZW4P8J)3-rAyJxf)JnB1no4N)`kacTw3Ki<0c_1wnn(oa|^&AI7gro=}I;m|n#*T{FL?_d4-M+yVRXF*Ob64+7GByDF9 z=fHA``vR6%eBmhKj3jsB6O~XHO>`mQlaC>?b4?iRBWkqXu9Q_#!Z4A+(Qg&=RH)PtIhHwk&B({Q;(->vp3U8u^|bDrk?JDD6CJqBV{KUag(a9*9>pTW%Z*#EQP+B8IE5)gWml(2HeTYFH8vFQ81WbXRw)XF~v}^*H3>CfS)&4{V zG7%o%@ZQ<}m_H&>)?Y8Z8Dxp2tu?4W%s0YWNkDchO2ifcG}z zS%R3f)$G?)3~QWRW*D;?)YsNL1ZdnRE3liqy>qE1Dq0Hc5S_{${{>&CQAfEu8MetU zPsJ@3hmaKFkqPts+dpf2=D+2R=aIKIozQh*Qcmo*vdw|DG^mof(m`f2G6p^h`7o?G z1H|>}=tk)- zIm`3cs6_A`nSv+5A3r{T+dU}L8kM5Y5ln@hdJVzqx9=~%k^(suN3Y~g36%GjfxOvf-H0ui1)FxNa7yXnbO0d;?D-dxqmX$*56Y+RfN_Uu3Xo%V4T6?}uI~J#V`Y(x}-x z>h!fJ;3Gn`N>z&qw=(P0KzWf0+E+S7%p5-zsIamC3Le^KYbw0o!w3>@9_Y!?ShTPA z>Pv+a7jK!1`tnrELkZ?PA&%?e>5K^{E34wIW{712B$F3MDp*NZ++2*K6PhYas813q z9KEu-br&jxownk597c3BF#&aqr4H-m_iUBOsZw4Bb@){#t+(ojtaZQg?1<*gy)o|u zf(fh!R(hT{umj5w$@_4WqqUO@t@Jy@~MDYHt*jWdvnXl@?A9 z=$#|h_ebBC8!p z?rj5naYkoJ6*)(|gFF7{4+i#f>lw`Z@ISyy$aa(V65(9#JUt32NIif5>V$Ku#R9|R zq@p}flWLBkvL-yabjt5tNDhDViSccP=6&q9T) zZD#SxUi*Iq0{Zue{}UYPf7A)U*3TIeQ6wu4L2VvC?X}G&_Y7k|K;(ot64d#(D(ZZX z%%AiZ(ctnW_)*J8a)Q8C_)GerFykLtqWUkll3p>0QOn|HVU5K`IMZb+!Lz@|r{)J} z@=w}P`k>(@`pZnGUQPanXv3e!r+a+-(#lhB|Kj$BxV|_^n%<0^y19p9xfe?up+#k= z8nap1NdB~DBw6DRs2S~t!xRM#Whsr<;War^;){0ck~y0%o6mM9SO%gXbICAPratN9 z9^bpY3{Q?}+OIZ#OE@zvtIV1H{g^Ye;-cf6A9Y4!kayj8!8j^%RJNk?U9Q|+Gy)$>;2q^8Rm<@-HKh_ zaN_kK@t(oAne7av6sCVY6*4wayy}KklDi(1b_|?3JZZ&F*FMKT$|uz9ugnUQWw6^-a-sk9dNy9&d}0;THTndB?GYtRcye%8Jpq+Q1_rA+c`QRZErlo`2BQIuSqvE0U-Ct%$RrxzBJ5 zyZa(!19L>PKQqvcm`_s3MoO=$E-)T>EtsFvPE)fkzEK z`J;%H3oH6-9Hgl37~YH4Ob!8li@l?{`Sr*dSiTPZ0GPe~7FID&Qz=|=8Q%V9`mmT? zfLi<_D6qbNvjn3b9N6{h&8DWnH;TKtPmumKdCl$mpiy2Hnglgi-TV?0w`do-$G7fN z!5xHnk$nnoP|F=6z_x9U3xyI?oii)_U@F7zMv{y!fGQ~~$CNxpJzBX>T>bavu$<2 zc|^Pes+Huv#JR5$x?XB@D);Fpl|8;)d~^+Gm>V*nhLZ(QHU8rMr*Ob8{EzDYdU3)3 zXj9Niu^-!81MwbFi8$KWXvHecn|AiuL(|EB)i4a%Oh#^f)unbwTP$~+Oi4{?EZUs{ zu%dlLn$%c}rxl4e1b!OL*NPJYo+Ij!k}#!)6dQD1NI4(v&~b4~qsaUxE>8yY9Yx#h z1$G{MhEX1Of2Im%#1e5G*$29h$0VMuEiMdk4Ml%E7z`v2I|?*b8BQl=U#-6naqxPJ zk(4|^*po$R5yL8#mXqb-4oa>ztY8p$?I&^6Oa~V7pH)n^wv1~(d=wfHE;^Om#y<<^|4 z=Ak|F`JV+G|K_n!h{eW#6e{dG1bMiN=Umx)4$@kwQR;`QKj*`1->J<2!LsLlN694R zrMTEwGlL2%Ah8~<5;QlFx}RPPfF$mz+4~E7l_Q29izgx%2BoH#NEIXLr%{QC)?O4F zRW-#!sv&L_U}W!&fI2)k&EXC)+Zh`;ZoT6?CMB7x_&sXTGfKHOpA|S*@rvYvr~g_l?5Mx(p5TB=f9M`?LwK`eTC<+3t>rmNcl6cBcA(fBlf zXRoqFZDJz-euyC?<~Wr)vuxS!qySh|Nyirk&UOROkUmFdKP&!6<)D*(&=C<281d?j3Ya#Un-i;PXFOM3$LN(#zTpd{Bp^KM$?_7n8Sc|jTx`ARmMRP@by zxj|v=<|99q!OSp$Wz40MP1amorOkeKhqID0C!B7sD@wZG_fskl&-syKS?!ZO}IDxY|J<3>? zZ~y#iw%Fu9hTE0!86X0+SURq{Bx9N;n+@QQ`#}Ku+_<5>b;OiU(ehc%$j`@1@OFu3 zd~Q)HD&G5Em#EWZw+jcYjojqZ6)ojYjr!Qq?L3F@b`VVbF|WeYdYG1jHkFS#hW{B% z`)v!#9mfSW&}`~@95tZ4!X)Y&cB$s-c({`-ZP(io8OH4Z_Q$?i8qR2-;6<9r>-Vrn zelW?aN7*a01Jpl0vTh1i&p4#XsNNQG2wMG2anUQ^(VwEYX=lwf2&7R85a0*?JbYd{ zbhCIsAQUKWQsWkV^oP;A`rMxEIE%T|;Ze-&{e+&pzZtd9nfW;e?*Ocm5ls=U3W(Kog^b=bezd$R1|Ha5hRQ9eu)GjYJ3QqGD1+?>`r59(D%gO?awNBVz=P<%! zMC_IPEP4r(?GoMMIocT-+H`X4N_LvJg?} zTiOlWe4hw2qEIpXrTFl>T}LK<$l4bwl}Gwld;my0{%FUv`*aA}<U-K_Cm81q1`bE8MGN&|n;>n0?Gv z=f}Y7$D2g5f6svu__y09alJm@B0|^lok3rja`jBsdr8itG?TCEaMEc0&LP}WLw}vYT&oOxMSRSB3cE9C2 zAP`pTW{X@cxIuYoFaK(=;59DhVr2F(yf>?CAlNYp>k$3fx3);5IcwIZxy6aZA-*GQ z{Qau#bE#qcPO?C2C1Y8a)!|!Il&kPWrZ%vzC`4FB5jdKqi)jNd27ozTcTPd{kVp5d@17b%R$i zqTX;qM`gRV=xW{}Kl=PQD%;-JrLFn$n+RP$52dcj9%`SVbwU8oY+M|ODhD!fGf^2x z)5ww=_Eqy1R)?K$Kw4>spI5kjp(E?Noar~lXvkG52L*do`P6lgxuKywBM8kC=vb`K zCG2EyHCw`Ub9m@1Pd_cB{-$N}+G|KIADBPLim>k!8h%Bjd9C{0I|cW$wbEu;^X6Ok z@Rn@{sduR5qfX&ZTf@2)wwI3_PshQ=2*YMp&_xlaUj^+S`Xp;#<3Am&`b*EyUzk!r zfVolFs5P~c`k*(0cjRZdfv)b@=^31hHShzZ^&2xXFu`;RwQeikH8A*NjA_J;JE~ZC z%Z&bdiS7E?O?=*EJNm;z442K)^62PYxP_Y~B>$7?a-ivt9s@Hux?QuGxKcmsqtOZ& zIQ#eNQyh$X)MglzVM;!FC-vMgL=h4$*d9cm6q%0Xk*p|YDsXX)3y7xWttTw&oxY)0 z7?Wjj_q{!cWbm~<5zT0clg0g1A^(sutF}*gEuc0*nBVe5mse4aIA7Z4YlN4TWW2T!4t5nce>$kfAZ@a|aC~&sKgA z3mJxg|2{k=B3>I8&h(cJ(HghAXgyjX>G^g$@UOMV_&NFHfw$q^ebR z%wJlZy`{$XiAoN~?w{`FwxctkB9Gys%d268Cf`D*%qKa_!-f%FMJ-P%Ls=KQs(!$U zhGE)KWGdp5r@5mCzbuHin7?^r9_{y2B`|Z~mjWP#|5mV>Alu?4u$?NEWYxxL;W zt9n{uy`&s`$;qJ%fED~S3G=##Wn(gW@@mUzKivywtgd>d8TOYiAp7@mO(^H8tLt7u zoGvnzj|-mtZ9tmf{0ued7sN2T1R0HOvCdcK;BU1$&B}Qajrz)wibMcW6%RMrdKL;N zd%cLL$2rNwpXu+xMVVLkT#AYBH{2!}^KS*cdqP@yM3u`b*2G~6k+R6`tM>BFj(^=o z+M(^Zh1C&)OB}10N@~asCAi79rcB>Lnnd{=)z;1fasRACnU0TB8OQi`y9)={KjYtJ+WioDX(-J0tNgHx<~jBpWz|&; zdUWAHjcu}Lx8{&Sd&rk+&l=x*Sk3E7HwBW|T{B;9?i)Y$NBC~KqCsBfswp25Ie$p= zH!r)l$=a-Y;JdQ)7VDAo;vafc;;shVhNWZQ>0m1xgYCuKyf)0V~Rt zHL`v=fjHPba+rfS!kCqBu)OP-@qW!b<(KFjg11=z)iz`w*E6@zh^qBv(B4nNJ(ph>TBzAVF3f5|pmY8i$aEDN!z)kMJZ>mbq^EO2w>T z!J-hp8vP2?52$f@`&;fz(ap}GUoOLqBMVxatk$8<_4nq=0Yk?qQ&BEH4`!d!P0ep0 zfWV(sXBRvB(kPiE$XWtD{g*`T_}hl@)10+_FXL#&j)#dt!ixVyN3*EJtm7qRi4YHg zg;&e`(k?88s4jN`so1y?+0h8tU_tFANmjjtd0$?!(s+Z@nk2F2u@CW`xPp7sjXQ>2 zRRLMPnh}XEJku-c-8!?D<^D`1WhLR$sSPh5Z}8OVN2&FmB9d~p!_sd-Vm}%OhTpey^i?lgbp$7i=>e*9dL3*OG{8qUh}!I$GS z@uGpVpx~LyEVuf|FYr59ZD-$+ydDJuVP{1H0gdrIy0cGjIYnpg_i1K`;n(>|F{DqL zW6}HJZF&W+)WqL(2f#6c>Pime4sW4T=h%M?UA>zzuas+bHyURSS!!5vv`StBpbN%( zE^+*s)R!3?njB|YijDtK``O41>arN;8R8Q;%PB5X3NJ1uy;@n=tjc7oJGQEKs@$0V zKh>GPs%_h;9&e%z-MoZ56tlWxuzO;dI|mw2;HDm~o$$?vCBgD#ARP77d%P#bZU){Z zTKv7i6CQ$**2uV}pQ|?FBxgg3bwilEPQhAr!9J?a#P^Ga*r=CT%4^RJbseybpnriy z-G@*j!Jdt=r!*sTazsRzyl_J0gzbeKWS7OmB29!(t<{{c)eDU*dJ?Sx0++a+jx1a5 z#yDkwf_!5$ob%$yu#&Q}(Qr!68(2P>FndF}_BCiF#9gBm%9)XL&7S;qR$Sg>srkrJ zg$Jc!*@F6th+tT8+v-&!OzJzb*ta_OfES(a%ad6tjz)e=efvz`Y@N?LeV;kAN6wOH;2(ELe?l=Dk)a=6CqlHf$_mGbr*Dd=sX5w;GCdbh2%N`w{3)_(aLz7|J2a$G zhsWE46Khy=&a9`1Z_S%Y#a3sxrRT4a0w8alnjbf4kJXvoOdEXslq80yBqEK{oU%Xu z`cg^VVtGvmc@b#-?Fr}bsoq3t9?fM2@9JHL&-O7?24c$meFr4EIbndno0ky5W1dR` zKH4NDx1J495$$O4&p)K%GSkU~6N3d8&HjloUnBjQ2`WPkO84nu*#>t27uW@@2ZDXT zl6kNyFCa!IV*9r?JXop4bi7uF34B>{WPm%G#fI+_N%r)7^a4979;jwyeID_hDPr07 z_G;9&I(R3)W}PMiexZ8r#J3YtE4rn{RP=)Sg;Q0TJjjcH}`vRPj zno2+l^bYPJBcD9o_CtQ8%2+y_T_aBY$x43~X|FY^9HjcV6b9Owr-GSQ8Jtf1!s?I`-kG`BA7*|moMtCZ%%GjAO-)#Pxo!EJpi$88^ zw(sYB%VAu!+Bh3y4@dY7gx1HfsgdISzFHz2b5Bp9y^F{z?WQyGI!j z&maCriY@E$f5D9k6L;~a-UsCitI+!VMAhz)f5A`_$L{~f>7UPvDdajRTF)puAZ?eF zLF>e7YfPX!lBBQcH~XyCydqTwkY~&fmbx{>@JD)MA-li&MP2H{XRAVj$D6x$a$ZI| zS<`x-l|vx^Rqik{VVSepiadRIE98}!Sq_HrLK#w|I(xjkk~TVTOz@FiEVc7_>zJSigzT6HzYPvAx2#h zzx~utpBnGtT(@%GhVEybIDzRojtz+_loxOEwe{ubZgiwDiDQxe0lk5xp;@1K)wLN6 z9(Y9r`C7d-m16OH^(^b!sLJvD_Oj3ZoCQ7-iUVQXET@e`s~%UZjaSNAnZRG#(%7Bh z?c_g!e)Oq9J$~z?Bae+8U7}GIhVm%%U#~PTMSW3}_TztZ-3y8uu7#Aaq7`4>N_evLfNSgr9Dyaw{j|JKOV zB{p<6CmQE8cRhZ&Kc95G(&{jnK^5Y&-v*i_2Z37fl5=;N%TqKkA!T@LGnhj=@LsH> zQptIU(28r{%od0gNS-E&vi83STWpTDGBH9}fA2ykd@*7A7hgg4{XPsEjnNFT6hFk; z|K%il3?_EA$x!|UCUVeq@5oWs#$lSE?FEw#$Lx)-2csSyJB*LOr5bkj=$iC@V}3q% z8gDv@SmO>8XgUC(gvhKV9k@$5(7$E47UMDZ=_R2S?^J4))Y1sG4mPfH-@h1l^ipt9 z%hdoO zOcsu*i^ErnNX)S|TddV+&nF+L$B16S+L)87D;93=Y)Kp3AcZfam{_>#Ld_oh&>e9Q ztm!_XJn(k(Nb!>G-GNt?pSb+A3Gpq*cx(2dsDX&D6^`+mz_Wd!)Wz0&JsIXI|hePat;Z_b) zh6XPZQD0`3STIMe?J&tt&V>qOD)1dj!`|~H=rBa$tZ5{-AdM7C{IhG{!qU z$>SzHfH0LCtjaT8hW2!1jK@{hkMnNFt-c01q>IohmBy%DW5th|7~!)9EkLZ7VO~ba zLCrE@pP;ReeF6a4o-n>FsXDEDq4yOO!s2hGh4lCS4SSY(RH_(>+X3n(Ug!n{=(u`c zuah(Q$VYpsj=V$J?;IE^ADR=W#<9pJM|vOYYpCvjGH`N|W4WMFpYsx6w-ht)!hd_| z5cszwWmg9WFPAIFUt2OP7K+3v6fH=s@s%lFD#Ggv7XEWuaRIpl)&B!R-4XcL&cSv2 z%ZdLzCp&wtimnYlYYksG3jS-Cn%+e~@pN5PwO>h=9O9|1z($QM zMeX}z)4@Gfp=UG0wp3A%eg!@r=B5oWNBMlh8tkHU{$Ox-SzevFb{^{dWK16QOgB4c zKn2`r7eWp7@D8V$dlG7fVP`^+Jnlv&k|noqfzsyJyOb)@ST*8goL;!M?G%c>OQYXw zk4WfP%Z}ZAb0lEZ;iWxu@ig=u?kD1|(f~-{a;!BFqM<=FVtz+{5+fS-1H5|LRk&fgXMc~v-&{)pV@ z(+FU9j;5Lh!&|1~X4hU`DWvl=HMSo*Bg7AKuZ{A%QbHgk2g9BS)V%?Y-NT$bS*0G! z_eU1$uM0LSYAt^mYqL|SlD6-IVr&DW3Cc2ttj(uayKVOl{JN*i2#y^c$G=rN?lJbE z;=_~>pptJh_oozw^oky9Ev}801{ML-{cxx}9 zq0NuDHLZ~b{C3&-s!|tu$sagxZWi2#ifTp80HoI4N@R`2=UYC#TW9xSB8bPg*>X`& zVu}0DYc=Z-Ob-t~Z=CND5{JxD< z$er-H$NCA-%h}R*wDksnU2f!ul+;I6-`8u=Y6e&Kt4N<<(rmRpAwT)Zwp_B_e3IdI z2#}2avcZd<8OsJPX6C5fMP?8+uBqGPk76Z{WtKDSvu73?f7A?d+=G_}d*_=hQaEn0 z=LoC}J62P+%6#Q6R{N}0PyPsv^1(BPLG~m>`{) z0r~u1Dz_8|+rLn8%!U`BY_Ab^T-S@#o{0ppmgViEDzq=(t{OcrW;8~1n0PjW_5j1Y z4Nsv~bxId=(R8YI{P5Q0vA5H~)VGe=2OYO#=gn!L&tj)fBOpuq09AQ=Xypx+rym4g zTRUEJ)(<0}4-}9u8cqHg@u%lg#>`3}ob@_EBKP)%`||aM%bG@)_bESp*SOET?hE;6 zGYr}=C)TyZDvg{N_x)Y3vzC~LTjqlg6cq-qw3`R5EWCf-Iv1fyQT)tHhE+7X;lBO# zdth*ByQ2{fppszuIZP#5)vI0MO=y`;3xPEr49|EK?Z#=l_qgsrhpvEjLY3(~5cGE3 z|0Ywo*W0f1+9X4{)Ml{$Fc%ZIJDgv==T2Z#p%jE?w=j)&EaJ4`eBA6H_|qc@ChT#( z{hUl#92tF&b`Kox>`M){4t+b?^Cs?S7Pr7p=h5Fkl?sfVm(Qi;%`1UYW)VmL>&1)O zbK8Ntqdn6;u~)eD)VtftZrcLfai4cbqcWmJn1fG?8nq0|9{tJ=H#rmTeeZ?+Z$61* zxvX$eXw#otj=xjGQbzI4!1S3!{h9h$(qE0949_T=!Kp=B?X$KRg$(~ zol7znkxyPEk=kBcmvW<30F=M*h(kl)GUvxCFA^AR|7$nPDI+hwNK! zqWv=~mK-S`u;zZ=t0l;T_2&MLeth&sWUk-Q3iAmKM8>_$&P+BWz`r;0)!@h>vTuIQ z&w#iJ*95I})=gC$>#Rd&8s+SGZ|>Ft&+Y7ZZuqxxX0j;~(SqoW%yd!xqRgq#+=8M^j6IgVLcn zEdK(WKpCju2~y?e1$j0^4X(Zx5pKLpJTNUgkF* zM5)G&{Ta1oHW)UEv*)YcSslZVD|{+z)@+I4s87AP<40YSgw+hmglwP#jhdp!tHU-u zz3671-(*dS^2Z$C9-DfP>66lf?&}QSWHEpIE9>O~9Zkpgk@rT)wzcGQL#p!~&)G)$ z!-e*Vz%=aci!`_l^EUt~#%Bv2zd3{|A=nKTTau2kiz%ghRmu3_}lJK4) zv@x=8oR?KmgKC$#1;n?L%C6+xstu5*P0_s9y4%U?KQtX1?3dPJk@(a5@F7c!Kc9M+ zTTD8oyn~Klty=GuZkel>W*Vo3JXh zGnYwkexX7d;g#Vb)tmsqPA%189KZ)LbK4=)~ zlU*>HoJG_u?Rzf5d?&H?65vm~1dDuMdo8FJBSl#L`r$jQEylkCF0kg0B&p!ZZ%NdW z>=4_B8~k8KFPeVZl%2E_Ic!RHyF?HaYeblJ`(V;waW_4t#o{FHX)?CwE{p1$z0Qy;U|n8#4S{%MBg5EmEa38&9n{`Eof9;0bG91ZA%@!aERlZZ z`$<#2cU+Y=sik;AY?u9mMyo94+q*3;SXu4l?8I)1>wjjVua}Sg?%u0x;Y!T^_W${9 vCI2pV`FDxcf60{mzrXV2ztf5S=Jr0s#hdom8