summaryrefslogtreecommitdiff
path: root/scripts/lib/devtool
AgeCommit message (Expand)AuthorFiles
2019-01-08devtool: fix target-deploy --stripAdrian Freihofer1
2018-09-06build.py: add clean option to 'devtool build' commandChen Qi1
2018-07-26logging: use warning instead warnChen Qi4
2018-05-15devtool/upgrade: fix the order of license checksum representationChen Qi1
2018-05-14devtool/sdk.py: error out in case of downloading file failureChen Qi1
2018-03-11devtool: add --force-patch-refresh to 'modify' and 'finish' commandsAlexander Kanavin1
2018-03-01devtool: search: tweak help textPaul Eggleton1
2018-03-01devtool: search: also look in recipe cachePaul Eggleton1
2018-03-01devtool: deploy-target: don't specify ssh/scp port unless user doesPaul Eggleton1
2018-03-01devtool: finish: fix erroneously creating bbappend for relative pathsPaul Eggleton1
2018-03-01devtool: reset: delete bbappend file if _check_preserve() doesn'tPaul Eggleton1
2018-03-01devtool: fix poor handling of upgraded BBCLASSEXTENDed recipesPaul Eggleton1
2018-02-06devtool: set up git repos so that singletask.lock is ignoredPaul Eggleton1
2018-01-18devtool: rename the suggested license change tag to 'License-Update:'Alexander Kanavin1
2017-12-18devtool: add license checksum change handling to 'devtool upgrade'Alexander Kanavin1
2017-12-18devtool: provide useful defaults for version/commit when upgrading recipesAlexander Kanavin1
2017-12-18devtool: add a 'latest-version' commandAlexander Kanavin1
2017-11-10devtool: implement conditional patch handlingPaul Eggleton2
2017-11-10devtool: finish: add dry-run optionPaul Eggleton1
2017-11-10devtool: finish: improve reporting for removed filesPaul Eggleton1
2017-11-10devtool: show a better error message if meta-files aren't foundPaul Eggleton1
2017-11-10devtool: upgrade: reformat --no-patch warning messagePaul Eggleton1
2017-11-10devtool: upgrade: automatically handle changes to source subdirectoryPaul Eggleton2
2017-11-10devtool: upgrade: show messages before source extraction stepsPaul Eggleton1
2017-11-10devtool: upgrade: handle recipes that use named SRC_URI checksumsPaul Eggleton1
2017-11-10devtool: finish: fix "layer not in bblayers.conf" warning when path specifiedPaul Eggleton1
2017-11-10devtool: finish: ensure repository is clean before proceedingPaul Eggleton2
2017-11-10devtool: reset: print source tree base pathPaul Eggleton1
2017-11-10devtool: make find-recipe and edit-recipe always work with any recipePaul Eggleton1
2017-11-10devtool: show some warnings for upgrade versionsPaul Eggleton3
2017-11-10devtool: fix handling of oe-local-files when source is in a subdirectoryPaul Eggleton1
2017-11-10devtool: upgrade: improve performance and show progress when adding filesPaul Eggleton1
2017-11-10devtool: upgrade: fix not committing deleted files with older git versionsPaul Eggleton1
2017-11-10devtool: upgrade: fix accidentally swapped parametersPaul Eggleton1
2017-10-16devtool: standard: Expand SRCREV before using it in _update_recipe_srcrevPeter Kjellerstedt1
2017-09-25scripts: drop True option to getVar callsMing Liu1
2017-09-18devtool: ensure recipes devtool is working on are unlocked within the eSDKPaul Eggleton3
2017-09-18devtool: rework source extraction so that dependencies are handledPaul Eggleton2
2017-09-13devtool/standard: set a preferred provider when adding a new recipe with devtoolJuan M Cruz Alcaraz1
2017-09-11devtool: upgrade: check that user has configured git properlyPaul Eggleton1
2017-09-11devtool: status: Sort entries before printingOla x Nilsson1
2017-08-31devtool: add: add explicit srcrev/branch optionsPaul Eggleton1
2017-08-31devtool: edit-recipe: fix regressionPaul Eggleton1
2017-08-31devtool: upgrade: workaround for recipes which apply patches conditional upon...Paul Eggleton1
2017-08-31devtool: upgrade: fix handling of non-absolute pathsPaul Eggleton1
2017-08-31devtool: update-recipe: ensure patches get deleted in srcrev modePaul Eggleton1
2017-08-27devtool: deploy-target: Support stripped libs and execsTobias Hagelborn1
2017-08-21devtool: import: new plugin to import the devtool workspaceLeonardo Sandoval2
2017-08-21devtool: append md5sum only if not already presentLeonardo Sandoval1
2017-08-21devtool: export: new plugin to export the devtool workspaceLeonardo Sandoval1
o(E~6oj0A!M~>v*y~WjM߳eL]{MbI{} elYRğY[nÂ6adF6WhFiXbiZһZGhG%f*Qu[̸ck7Xj-R`NhdJ{&:yˍ%_k;9)|n&q~ ?OKHG2|R;4olGەɮ_fԝ#km-<1 {X&8."C@R R3,9|`ɥF,k/EqVM8sD#$DX0,bH0Hwdfם*hNAv0E NY-b> l]o NTpJڂ ֟o)0H#dYetQRHfI&7n ķgÄHrZc:Սǹښfn )㬒W M*ݧM'@w +0pm:ը;7tv÷ xwEX7ηzJb #) x?Y Gf= {.*NOBU/"fnBZ0Œ0:3a,/Ni;;%#ĉ;oK9[a5,eVWիLu85׃LnyIœ-ܲ%*VO%VgtwtD8ݳ^fZ)]ER.TYp˭89,4k F4 OlѪR²{ȩUGzg+)Sx1(*ղ0jyEb&}[G4! և[fǠ#t[rdame}Tn}' e^iau PpqY'0t'w'W{E˄ ۇTʟ:4Ty])M}QH~Ɗ=Y<Wj2`q;gFZQ1ɷGoo-shV"̹êqd33|q|3NOK[J#ګЮQxǪ/DE~ּLoړߐŒ@4:أw{V7bْ׏s1SkG~mv!Xөv4̣#<Q,c4*]/LutRQD.ԩk-]Z˅i|v/ &[pp'{LO*XR@5-QDn kk6 ,X++'A >CGYGd&ntoIfPz$w3埂nk,Q <*(rs VGsdds9 z7uwFg/pzg7g~UcYV̌h:>f$|]R$TM3iGTQ<  th~w4Q5K/Pu31*ѝf{;(MH'_v7V#zP> nXB{,y-g0EpsBBItxq?&SZ*ޤLLDHTL|{'\YK*{ #N*୛%$iN1Ց4a1D%22zV,KjdRRU9tOcI. Sw bIU`v2] у)˖ۃRK#qJY[lrv =i<ؤ`4z0]{곛F0c՘tl̕\Y.3GIً|h`JnW3 Z<В:aP",0)3b0hezjx$;(4agWXc-n`bAҚfح>鉕t7> iZ78ڮު5*Uf8dW[7Jge^+fl"8!FܣqNH={l]-OD(Ä|7ea73ڥA.)gGLLEco%܊o JOq.1oƖRUV2> ,$4dUꢩ<ާ6њ/wblc~VOàhCE< ڃΘ~Pg .!̋ϺP>Osؒr%vlrQr hHmxx?3߆dLWȝPʡ@ 3dY=?L' C!/b=fUm:,ӔV?ۮk'H͌W8.tJa$ng\1;1M<ѳ! VW4 $p% ũ*7곣\G+oHWL#ĸhVVd]K%R:8/FQsc@2SabM0Q0S4tt_=d.ULҽk٤;#njQѫ4{xj(h( (_V+%QgGZez6%G{W3:TCd[P`GBiwcnѤdɜQ] ] [5am1e|p2iՎ,i~689a4,"zNZcZ|| =o+J :)gbzZ43`eĶbղ_<G*(HwD*ɵ& ;d,'LP#zۍ4w(q'>1VpVR.S S\JvQɁ!ATt5 |rd::3'Iz2(}?kkòwG;g^tc7d{1M ܤ_|Lij5Q2UWzc)+1n' W=lzTcwn6Wmy =Ej^!YeYUU Nb OZiqx8۽MܧAj68 n|vlPp(NtNq+"Ptl9Yg&T WKpvXSujŻପSySTr ֥ⱬ-fLY2% HFDnFQɡv;;iUrx)MIXBIَˉce]^Dr\޹gFʲ(n1Yhx $ 2G}n"Gl 8UO`0Q^ NȥRW£0lS šV;VhiV㒤4J1Me0]̗reG':>jYۺUmVLBN fY4frF̑OM;LݳZUݑ"O8ħsىBRJQ%˻sg/?IuJvd]W'rzTw9ܯbkɛ5Iw4nLV)eL*eeYu*8kl& %.Ɋ,S(I<ˆٲd C2<~1y<t*2U*4M6F1G-9l\T˅h4~:,dS%[%J޲1FrD pؽ~ TfĿCX|6S:ixKFhUfe6i Ʋ(LTUV}=;V`Ъ}|~Yh(FIN>7K?ezXӛM6T(lT>FN=o2C9o a`IWdVgE$+G;ٞQFfjuK;iafd|n`5)a/6اrL͝QȔ%C& 4hUbRTFsUoIޘhч5 iP} QL\Q뢈f֏S%N_o%ڛ"#"a'IbõɢUY;3fA<{()h !`f 020&!FQqyn/xXN)K'-b^OմF^'FEQc`J=bS8ֈƏ,li{wz Fl^d MIu<>nsʋ3~#D |f3u!ƓonSRz)SrN~5c6=(K9Vo]0JOΤQ4U87GƼyMx7l[>*U*%&(x0$Ŕ]0F+Fj6rof5DŅ]Epnj ,udqڰNvc.mtߖߓ=.qx:(Q*!. {v;Uz;%;UyJcҍy^+ěDSneҫwDc:6&*Dpy*Y軱vg6qќe,e:CrQKU3/= R껩Ie~bdd]klG.ݷ0dj>n.[6agp{wuK~|Yn#VrXJro?Icqc NsT-(jĘv;V]V%3 FU! ,A>B եmuHIDd%<5+G`KЖ dc*ȳ8pc̫a32(b9ه,Ę v1]1T~80"jPsCKCIb1F~,dIW~z$-Y(wŅP2U]bK2:K~%&[oj 7|: K?[=AOцN1e/h` |{&%>/50~DZx1޶K3*D>?I6KF!F2" 8Aj|)پKܱt-v9996`S6x,lgH\ߠSQK5piТ*Bqgs2fQes.X)̅`B~sk밝Kߺ?Ec|dE>u(l*]2QĖjz+U)Qf ctYᒕqJ8joU;흩qpfXTB^6qZ; zvAM,fzܮ}ޮ'uZXܩV#ǵɢNSrbUWHJbk/\v5fz)тyPQ磠uJ|0J"5I^GU 0},VY(]fBcs*jn}[,jџ__C$S-k;Y,1)˖&ccӉK%/x̭_ ~GIE o>tQ'*=Wu0vtUJyL][E*z%,I[Ghw;:潳TS]{;~G((R,A #mY=$VʣʱaIE 0$1 2u$ pfq9NdR\M5qؿph+HW-SLLT{DA9Uf#07#Fm/GkJRJQ(Utѻqy0bEeHv‘Dt6CXQ GV} eW{zл&q1 ;cpl5:O\h .Noƌō-Z]W>5)?G],B΍ÍʒZ&珫OK#*͚3hɖUB .lhebU#|(=!{J|dCE;>WDNjغcW.Т*H#%1`=q> E5MܢUQv*b<2fbF%Te`ّ,] \Ɋzy3%)#&5tޫ_7$vQ#Շ>GENb=(RqvY,栀`ebdZSV'/Y4(Lx8ɛ$ipCFiqF#8d؜ૣSn9:83jFbZ4pH.ɻ5bѽ憪qQڍILubeTټ{^=zUwkYry;EU81Jc5QzԿ2BXz`sbc.7l4Id(XSLGF 豋7\];T8a,W0HJBRCLV*Xŕ6-%bWtP-sR6UY]" DK(|09%$| 1"PI) U;0|G6Lڪܻ{\x4(l[DTM+ÑщMsvƖU_ka[\8JOzNG$>Q+qنH 윛b[z}<9ýJͷ> >YFsջC4])ãh]E;E`]5ZsH=.{cG[HGae.B8T1 Ycͥw1]{{t>c>K.{%)cUgu\?w(RYL+=G=c^;f +lrPRVTũ]٢Xu:,+#֜V,eZS,12dPo矺&L2zs^ Ofd2*{9_ӡ$hosg,IBeBH<ʳd|:{Vq i|6٘pg֫iw>ƏC"l?=*PPn'j[o +TwZHx0_݋AŞ#FI *-rY X>k.~G1vGR;aCq.BN3?0m9N2~ŨcI$(ː˲C,pa  b՟ 1[YXg GZY3% &o)D3,o VtdkVcVTPNL~=ɿ.'Ht47JM#!;(hhcg&dt[8f~53oXَ-"jy: 'LZYǃ84p:B6H 0| xzxU1&!V&wĨQw0e5F0lUEʹ6H)F d7nfFK,]&/5Ue,vtUL=2MΞ&^ff7˔^ "n@Bxݦ9KcMN?'ţd;s1G^_Ÿ{)!G{%Y=~.;߻,GkǶ5kDDzaTbXt%C:y#\YgG;#][=L߽;b~GqZ>Hq>紷D 3,ƌ=[42:bNocINI;rXw|&K]y_I}UQ:CE|Ϻ46:poqTe){Xђ*4nrFG";ҫ:겁qW;햨/aiX֪;W{fIQѢ" *EJ?y(V (Io7jnˍWࢊ3hĤ`|g7P̙ 0uaf +s(nN#բUJYŪqwӫo{ݎR*N\A^ϹE.8rTKT~fφנ<9 ʗ.^/+kٶnK8}@f>="p?vQ%4pn\%E40``Sl}IAKk~Y+cw&L2^F0h]ѱ~C$t{/DW`YG}v1vk3ii|S1]U,פޥ*](ɓܦwY6ڳT]ξp¨ͣ*Ѫ(ڕqpsmuawc*ZQIHfS=E2wy֜y"PT`De]bw03&ͤ6 0QqP^(J,F֘Uc*0gc6\,ȀUgʱ wk8Aɖ|U<^Ö8oJܱͥCSfA @89o\V/٬(! :4%BY"> 5#hd L$_7' FTXq ͌)L3bM`jA-TIFKL/ᲴhkKt8C*2HA?*Hr p%h4g da1C6$`3#W%R^"TƕgQP,K0i,_Iݍ!Aӣ'2]()YR 4 9Lalή2է}Lsy60L}QcɃwX={Y%tPQ5Ws+;*IHv Nj*1$BIKaWQ|{M̔~(,UC->%O3(pppxDT1SoF͋sSR-Sdt`DbsДhh;q3bK*dwcL?Z&!̑;ٷ6l"ԉ*}FiX.#dIX0g٘hq$FNV;%F|9n\ja*ػq&DeuVͳgߢiիsWdca]ʶhv8n1 %-QԾVpW`ៃ'<wszX%MFSSrӳOb*(a,fC- OOTl^d$F[C2ai^%)`r9UZ׎Ph ^Vb+M= TIK8S-7K9AD+x +ҳЦ;%=crGg 2_K~ y Y)_dW#xFf=zIl86cy\2;%Nέ7V&NVMsZDA:zLy2hʙpU7w%pմOFގ rs^;ɐm260Z0`~kLJll[6I([6wKjn%ElU̘( ZQTh=Yi NAяȎ4h\ dBאf "HV 'GKx$a &SFp*nnz06za:=>Ej :| G8݊L F1RK8LX2<+KS-5YdGVJ\ AjlT84atlՉf ՓbT),::aW+ui ̊vl?%csvw~wʓ_ldq攺3ЈUY7V4D"WL}6xիDK"hUc||XWR&4ڸ+vYK2l ǧ̔382>ͅy Jo9:(NB*tfp {d4u2 fCಉ6UMrpa\ׄ$ZRA0|;=ޕYDtlZ2Q.76]5[N/2)^(h4ݢsf9}]t0r{*̷,QLKv-Qe90Głs{n֫5wl=u7覦{g(FF-EM# f{2z>93|(DWEbődǾi(Db5O\uz)ityz F:G-RPĢ;4Q^,Ryf(U_ehvLEI?l;QnOctIC_Ŝ:~WCk{X]N1 0E4}'rP~Lَ:G p|^*? O))bȶ*X:يNdihÄ>J oS̭p̎kb-d{8byFѲbJ)(mh#ZX5R *t6li3cVUrܬ١$b0`N)ѩ6=q{L')F14;4vqB0DlQқ~Y8m|XG˂g*=`¶ Tߪ%MFPat9?ĺx3&F/6ҏLa*(zW,y1URY,Oh?2g.78q507=)bYzhꤾgkfTK(qVoϯX͗H1/d(@ 6 P{{MuG|Cœ& 2-ۣJ'z+0Z,:t1vQR_.>2s>/] DIҁD{/DӓE=McK O!Y))0ed˯sXQ8poYgfBpwg#}ճԯE͟FO'#šZ-RQ]yFcfQl4ǽ( x;N5"5tK-d=ء`JϏg sHtjC܋VN+kan},a;ĻݰuReٽKo;v-޲8#ơuocK87KBX1h3%UrQ,ѸٟςH%G(Ғ 'f:9;=S &Uu~M:{WFx+mFR7ز %e pIve㥵.&cPZ>L-78R?Cʽ,*[Cd+fCGn?Dutaomx<_&&6%o<⋬(#P2JH׃X&]e f]>W aow2;T˛JɎw06Kcʗeô+罥j 9A$ŠQ 83[SZ{;\*^ХCp#4&,qܘ߁cZU; fMuqb\D*D#j$L+p\D*fmFf [,nݰfLiC(RZRaa82?>|1g%S\=3S4̠-ŞςE(<.A.M93.GiǃK?r0pXr4<my8Z]/K]aatr3x.2x4yV; {zV>M (}CDƕa1= 9*Xd;+Q4ţ0j6e^ixRf2Ytf pp88dslA,PJ9e{ pX# 9](k\rridrz0۱T#?COI 2REuJ4`҃Ƣ]vdp*he[6MUgs,!j16GvdুyѺ `VBWÌiÕxb' iq< LDIJ#<|ဓ=ez41+cIӭ%T` cS.̒Is%AAf]K3˻I盀uM[˨Ocfo aC)L:2NF 죎CF P}cS2u5(2`I,B= `:a$s.d]np4ђl$0H$r |X^Nx4ZX84e_jV̫!#bSZv>F,AULv6k :ϚW80{K(.!jx)TW2&;2m>X\PR@XVAbdiDލVUe$)ӜYꃝV|#KeɠٲFA"H;=R?)88Ir9{l^!]2%2sh_읦{ p1o[n7F1e޸Vp pS bp|yJ$ƧL"(F6[PbJ.+hJ-D\=-R$p܇}F;yfCr8V wKI6_"s\%qTlgY|S8:2bS#JcTvw$pt9 $OHB9{/E9޲!&$srns´{8/jr0}Lb~L8ps+ &*L'{~0p<Ҕ}F:?pcPpq0" &GXܳmMo g Q;2ixpۢV4'%d}pŗQA#@y:{Y%~cϱ'-ׂŨ9nilufw?byF>gF[HLɏ@yT[%2ǑZ=9F®M^'UL)a ZIlk(</Y *%_{Xج%]|~WʼnY3Gj4j=b.faY[멵"=ݕS9hYQBi;Nݾ4mJ%)[x&D$X=:֖|M1p&4٦>eiұNuzs)ʛ)ww J ;'u7y54*̛EUXCQ(̓b>Ts7ڣѢ2G$P,]Iq75sd߭.^f fat͢9Rx%>5;a<|]ǚ]bɽ1;^ uUbZ.]+=[+i7DAz4 c%$w|pS YQS*hU;:5 E6S|!aIdw+Ym9j&'叽ybC8k{ αT9;H}+*JUV(ފ{!`-|ӱ䝏QsﳒY,4`\YLF,ճ_797k{,1bl0`ろVh-T}oXƈ9/Q@cڐkiK)}&(a-* |:vX'. ;IK-~k%"n37 dgҸʟc۞dNG#C5U:믨O;oQztӱLx|nz^. ާ{ٌc7z'|tV"z] +{}T`l%ϡDEJ$pk=O/ s5h} FL hd}=Zؾv7 +PohØ>2`,1%j<{e;mٔfh /f'6zol4D?l6i|Ldԁl[1nma.e`G s| 9Ά\#ahvsyv7r>4tM\LBfٍ2έhmrp>[Sud}Z^f+^l'|V/~oni vP_ZBDs\]&Q?—C2?Ol $ܪq`#Ԣ#*dJR~ް8"L@oxf?l23rfuF~?bf:,DjC,<,ٝ|W!hJdjť0:Z#|.964ۛM#k4Kh$BI'.IV$t4NFyrlXd#ѤaJ}3RLCniCuR#BuJ RjR1IL󓱅*TTnzpT:MQꏂcb:0OEQ_qTUX֊o`كTqQ'qr1wjՋg*vfj[lp~v6E;.2rsWBV9_j[i `0{:l`M9ZQ\U,Q{ _~K]n|ԫ(9%B{zYWWuИЉx=$\WG7D/S,鷥E^|YľR9hU(U>E_?vf:x;:P/sd~Nwqz[eޫDQv*bf%\ *ŃE{x (?P8?wFj= |x+$}p.3=okqiE}?|Xl`]S?pn[NvM7gCdm4E- =E?iĥI*–$}fT%(4pH3ǒBC״zQlLl R)i&dIVrxާMi1%q?gq$eG&MiǓ^]2VoW|dU/XX$bQv߱2ioߝ_z7T6iriXᩞ$zi׼"[oz,fܚ9ǤNM[<-,I4CcŏSճA=ȑm0iL+L E)Y*I yhg䞷9`NOs׎Gm'w?stILH7\M)TcLVFHvH|Ä7#RbRnݜ[r֎"o|"oQcig&}rl[ǎޠiۜ8Nt,}˹SKby>JGb?3fw|-#o9l'l$ĸ;ɤwwLpuݍ09ՄMҳ/FsHo b*;:wاJ1ac~Bp(kc)o> !Oys\XҪVhmԄ 28Q~ gE ~";AEtQ] l 铙+OrCw^ 1C"T 0͊H;ӥW4^8pm*HAJ&3'<;/f$+վwV1VhEmLl,M44tg.g½ڳHAed0P8reٮ{Qc:aFBfbX$IFRv*J \ n[z (Å`a rg CsQ 2xg" m'"SuTUDh٨y4 f hR &G9)09$J*=G02|D2&qFuY|q<{=hz,  +JY"/1Ώݵ]ߌ7J*ca^o:L)n'T_d$`I?TGQ'*~qtG1~Go(>|1bϒ~"oHuL1Hت #~J^x}S!3HEf0iQdҔV%*pClc͖MULYp^֛V9vcTқN̎4LT;,9(U?g/ *GVɩ8T*c&s&ک#uE'zU%#ecc:M<06ATr۟a fhzUU'-ٴ0'̕]ӪnUc1)TԻ-%5`޲U ,UJK?WʰU\*i*HJ> rK%w"Β0zR\g=jm45J> ;eяb}ҬUe4$TC" Pv!ERg-x?EOe'!MfU؅Ry\Q4cF&_c6%/%GDUYKhUM$ܣ梁a8My00joddi dAp`Ny Dg!{٤R?WF>b*I> U5bW5xO<ަֽLn|Q3]e'W{{h56mN5[6j,\w^Ww,fw%P;Y1bqUbX{`{.˕W7z,KGȌQz-?2WGepK()8J#YWYs=hUO'i6R6uOO^]$%dCĭ`SvL9l޲*1_2DOqUաcifM,Sn`a 0;Y;qdb& ,aA!* V7$.ZSoBipi͋2x.m1У\4+"6p`Ś0q54jɳG$!AT2C1 X>FuFdfq+7{8}2Rnm8*{eu%kNJIf٭vQL݄N4m8=G4TmNva)QڭLr}ܲXrQS%ٳҹ*Rulجa"vTe{~vxSDGI ^n 8$Y ':8CScYmGT$6XHqRe[r4{J;6[&*詍XcvhZއcVLUJ5Qܟ?+j-bo:>(2(>6a%6?pAyulnY\94L-˒17D`Qpts'G =t7hsF? c#r%*9:.hǎprʶd cy 1qx7z0 TA1ي6] Re%KhӐNYɠb.Jeh s.y(etrQ\inou൜qj{ty,dғiPH3H61E ."X O9@)2^DiQc -*\QR4FǡA޽ y=7{FmZT0l,axQd / 1crm+c`IP\Dx#2]DNIQʜ旋i {&Cw+}bNC:8spQ1N(ȗeb"{%%,PKEJUfgi^cUSo Vo:(ScjR[(U- IFA?5J((QIKʌtY2xX/R4V|LSe q.F X2jEDQYGGتLI| 8_wwiяDD+BRf7n:VFliš-rGZ7cGF hV+|qH`RK%fv*Ff[[ޔ<(M'zd,%T]YEY#WQķnLw1(B+NHfmQ="] 2i*OvM>rR*IJVd`Y(Q&[`!Rn0=Adt3tbܥUůTF 9@ J irRGVeDJ*꣘c_]9K+hUzWU:<~GsAS &k{ qaF}(9vhȒRQIPe5qyɼF'jXKśzZ,h? "҈pJ>Ǩ)FtN\Je? bzђU))ZrRe|^"Af)RT$QE"X+nFÎpx¼)Mj Æ0Q+Li7U[+Ja_|}S,خMV]ZUBO>dbKFaTDLEgI|&x˃0ݱM8cpUɳUU[0D4\K0Zth]s7DjWv7I$}crv`tI2.PҫZĽ FʍYauJ0]QcftfLIhţVfefxQDeۚ4ŊM"*)F1d*+մه7y3J;{YYV)b㺌ĶzU#zjܻSs k3JN Z 9b^_2AC# I0 )3Z$cKYMvfTA%K(`w]\i&P@eqn3h]1Hɪr*h1)XWwc'gv.Jj㋫8ޜ[(QW"/9FNNh|pƆ\x- *QkLK`U'D5Bʚ}LMfPBFo^xrJ2]#5G+jG5$s,r;'5[F9s1ܜ46 'Ea\*tMգ&Pb : ~n' GzXً{{؎`XܑV F"i#M"՘Oc<MӇ TUG&K4h)Ks$Y'5\īV:%uHE 6h"IcJna#M8R4ؚhҦTOś|c:FʾB[Ddoa²'=χoVغd[sthcz5Xf%/{k0j\<Ǟ<0џ5^67RE ɫF/;[(.|g ɚϭlb-].V2QTQA 8]td?vYdʯ,)C%x6̃hLa'&<ёnF07Rwlޓ,%m(.WJ/UdvluTf0͋{%E0JVjV5LNeW-cGcm-,_we]FQ)[.o-ʱQh늫:QɻSCܶ\ҭVh33Lmd[&= 0w䪌p]_vdن 1hddTQF Ѳ ӻ f n-KBbѳTZQ63wq- 84Ssޣ6. ٬e]ԌOe"DkWjL]1Q.e]^l,bOG^K;pw`Y iYbKzTkȻگJ^ 2Y%x//z^h;nFΎIӿ;$As=+R:^G?#炌(p$q{2߹|ۛ$sU!,MDتpFPO8wnĚUwDJVky 1]†n͛%n Tn#K3-wnRV#*7BgϽ uw sobWnOG{NK6ϋ,];CMI]উwTF e)^(B\^LYM \TҪuHG$jn1ls$;QU:Ei]^ǡkrXhc憐ަN򟟡Gsaѹ.ĦZ{eٻ%&&4)gdb܊0*ղ̓ܖ1y.evU]/l&̝Sskl7u-,أ*;ޙIUDZE㣍[yjsV16`y~^A%/ك9h(5j\ً߽egZXn/k0i̳lJYZrvA4Q48T@Ùv 42XwVǭϓv';gd˽~8_oŦv)IޡD&2uG_Rz< h{RT'}~ETJI$&qU[4IŴ|4fY,xC?Tٽ.β*vTpN&ʷ$ژ]dUJU]AdE{Qa@'k :&et=^aϗ`dꍰyv`%tPv`FFm_9ꂯN֎ R΄3am"GH_'] &'ɆRWPr^eUUf%D ݌f JQ>uJW%(=6cQ{]c6G%?O$rO㣽jQ+9}.Qh'4qF(vxw,?ۃlze˦oŢqfԙYz;nhk|=IKi vMc?B\S+*մuJ.MIrH}d|ٓ3dbfԕ(mL1*6Ub0^˶CraPgrGsDO-j\xx)LZ{jCds%wC;d1,~ 6v ;Yw6])e0.wlˊ^ܖ0=4ڹٺ%v|]Ȫ"Li4JfjVmd80K`X1=b̙;s-^:KMJ1YVFnronYͣUV-'Rtdd.89*ɕ`*y IE^ mL_NwRxtj/sK`hV.{{[VgmK6R_5p^{]u㣵KVT-Cf㉽9zW|Fǃs|jƉrN.NN #7'zYY-b6fݲ^NO7]<;Uv8V]с,Vv,x,qSYRI,Rez lٱ]my'5fhY1KeCG;Q%K޾L$يufhNg;S&pUJ%f~YYTũҍ]~7wF77 OnyώnTUGUWvU> ܢ11-\Q.fF̳֖Zyŋ9*rKv]ߠ^,rԪ$SVև,褏?yNRbiϝ.IUڈ n‘__,gRl\>p8aOρꓭKf1>4$}ĩ:%R?c~hCS4;(>WiHO֋T2|-ۃQ%=:^#N=e'ǼRȓGyq}n[0"iuf( +4ppvͲQD`(X(l5]FUV:lpٻx(S*D(ՉFCpJU<\8x7tiU^F? ;9nSnqU1݊V%zXqTTCI%ՓqTF# K= oqv%$Bi 4MD^bJbh N\v#Vj7&-T.*͉D99ɹ&MD~ n3sM*XyuDf0TY%B+;RYIJ!(FEK,/4*nKy75ZyTI$c0, b࣒Ƭڷ,tg< ͔o;[(CsvIJ{U=Wc{qjeRUڙJD»V/Gs/O6Op`UKV2u(f>u!lŒ0DY5#xW-zg*H8GY< $ѓ B.Q=WOQWEhEV:/l |/*} ςCⲘbK&-ʢDFpQ8r3s<gdx(hԺ)q&Vs9'X:ٔc9jxBΨ,2rd/BĢf 1咓55gjܕU+(dJFi& hfqG.Ջ%CD%(!FLY-S)UJdǝc tUbX!Dxm+2չFwN`VQG i=6h(h,=/蒍~T8REL]~wGmܬ6oR"Eω*,$RUŚ%X<ٱl*(JX:R{cqх bc#+AITPުgGfǤ`}nrh0: fc٪0pJ(٫6XI[}L#À 0K+nqb:(ّgR(lDv#:,NW *\rޢDTҕJ#10t7x̔4-ޢ}=)gJq(N`g<|TXkel |`66p$Ⱥ * bS!!J.q; š0PrjԳdٳF1\~*>S=[M1*ER!=KYeUfO.Xw,Ӣ BMMfѰtd/jQhjՙFFUO:()SV})f-3;~Olђ`V4a9E\*ƚLf7U}J5$'&h #dQ%'9"KDD4wzBĞyDG?͹{ OS|OzBI?QU`7MTJ%G~<"Ri}.\m>zD_soLDK<1R(O`E_n*= [ԊGp#+NH72/Z2EbL^լCF1GڮYv(%˦EraI3 ɳ]חB%jUc#4xуs3&܃26r,,ۣMȾHϥ&1ӱӷn,Ev :(bᑓ%?4g(F84I=']S:d<s+ӝphnofdIUbJ7F(dž3xLidV=( {[#V2;;Sv&=O 301#fzg=8(0o! ztK|oMsV(~u]*3R/ Xᳵ=,3R=wx gn'2o Œ?rbywLq6`S}Y L0zsïa̱v}\,k^O Yq&1˱W2djA'`VՒR40__2JRƎ㏦pʎ +*g <:i! \=3sFe='I֔?);9oۓ*?✏w>oa 3+ ~;iGϺsql{o&=)׊[j7BSBaLuuWe_~QPY@ӎf9 $~υe|A1xIi=._}gk%T߃.#fMtoȧ_ӫw/1厱ʮOR`|{R7iژ=Z6co2<^o+:_+滝\ުf`|<'bZLR5(l־wk+tŪVž]X_c"Hlf|إ)ITcKt:f*{~C |(J2¯6cY@9s_ IfLF Œ?XlDqz"0Fh-/*Ob?GݯZ/C#1ꝧ͙V9G#+ЙOH>nM٦c|znT|ޑ7C+6IF`,*pa HtE0e4~MtvN;:bY14<ͻx8*&2d"rӹg=}cZYe9}~^SMc p ~RġW4TT}B#k0PaXY]3 #84X@hÉ0Oդ&>i>6$muB!4NJMXJFffZ*ɉ{R$}OՅ۬nFIǢUW/,GJ/Hip?ex{u:6DdCg!C$"DɏUrpo*ŋ)߲x5]85"44bx7M1taĞkR+6E+u`Xhr`Ŗ0XF(*90m:*mX)Wudj+cv͞"ff6zrJ0I%0dP/4_ Ծ/y#UV{{2<{+L>mmk۠Faа%S# RdI4="GLd=+RlHQC4~4g( neoOzBXFJ)fO|wT×DU,IM$4I&J*dʬM%oV?wNG&D&bx4J]#z1;-ƠSxe,u,P4od.$LdUnMA:*I4zxf1*j5#B}FaU;;׵vDAHxx$dE.:g353XGmTₙ.D~Y#rb>rOB#6P,{^LLm)eҬ0HbX*=RGO7ǣ;LaI1d3d $` #!#7t%נr%&b+7<W?n D}F6iYDFMg!&ؚNNdimbh<[m9;ogE7+;!Zfe!T^{g.l`xH$}fgT4|ng_"j(ܾcMW aIJRuʨ&⾿iicT{wp7+^ l\BT|>^ᄎ$a4sl[ ȃ&(擃F"YU=..<Ƀ+d:N-)PuJ!*8c \FFP^OEz1*j+tabMMSk I,rXjqnUF>($cNlyj˥gv EJ觽SO6i%b+GRM#JM*CJzbOc0W7(JOD,|aF*#"XcF J*w5'~R1-ow]Ċ8)("_֬~Caߩ&|~7_ﮥ~^Xgu8f >EV71zZfq NJ ͐~e:"zMFT/l){/gX4Uщy=NH1bF.̐7.0URP[vrd:,(b{#_YO믚Ч9trC'X, >^Mƫ7H)(Z%l2}okqw|?RUTϖm>=cYtȚF:x&r:Ձ("6$ Xj5\4y,!Cr8~ݖ+ cW7M:H,R8$hN7q2@_$#˪! ZyL͗̀ͅ6j\EmB+sqNQ)dB$ҕaAoy%F5t* R!H0q_(X7Ez,v#=?#,PBlH%TiJ*כ 6lG-,ܦ9rϲϧ7UZ?D8Ǝp!fQ0ox*G,Xű+;S??*|BQT"Q'%}:S'sɽy ƁM{D/!L! iE0y 4x+ 6Tcl۱b!QStkѷL?MG*uߏkOS}S3f_gS^ ~dn͋9DcoH)>YF^c0ͺpDEk+1]sŞ2&j,p{@B[l8){P4syhqc6hn?ފKv{o1@z"Y QDJ8YRS_>OVM)R[x%M7;&xr"&$=G3U؄Dou>2<bq;^Yegy/~&Өnt6T>-9PԢF-`HOFEnf3k/'/cFJ!'Ezb^VyeNivB[w(=QgӗF{M=yewڈKDLT=k8sy$K.Aa.0Ugޒ:Ӣ}'~s--o>~2_%13õv1*f0!B({1]O/8_6# Lيh$۱^zP=Aؖg)ujqɳs}odz>.6DoJO@T?g*Q\{(%/̥n5̜l--3z/0¿G.|sOA͏)K݇/&jq]fm6|SpT?4˳Ώ!%/I!ʪ{g|)$4U~[7Y2koW޻}܇p l4mRn[2HVo"^̓2BXcxȘ5q&>l woSZ.X3q69i$h2񙥬񍦲u0|$ő_NrF wt9'l"?El"%ik<#RgaܖMZ-4I~;K>DVB$! y3jIf?!)!8_/#ak3܆;4!%'ǂ9B"&/'zu?[&av_8IQ7GINӰϲ'q1 c6r>KgDl"",bVzN1'g[Ǻ,VcxpeDŽń!%B`I"[ y@Fڤm c+ֿͻK‘ΌKsӻdpG?2V? 2 ~snE k˺13xj)+$pĚ䑊="DplFP:1D#= tT r9rԖA$`dsكs*j0[J#OJ7,Q0J,[dśҘ3fʌ7PBlAD 'zv$bƭQBLbVU1Vm)]2M~JLF*a>(q9vIyv|@ 0))M :i `.ĬJȾEic+Vem^n82c݂ApB@8IFVFŏgGEaznG 2vINL5|sV,#ՙoRY*jdWLGnQTp%`iJKVUUUJgi+u[{{f+2Q\[\fYiѱ`xaarhn E9^3RlL6I@yJBp@WIU4͜[0z ÁZaFpYjŔAk }釸.qJeF'M>{=??|g1FV6unoQ*OLX+ʫ߃lhu2!WiiD[g08zJ>wYhbajE-F @Qb`j< KzMS'\6َݎkL«lEPVh%Dgҡ(WY%z!\[,{>e2g2fhf(Q24$w+rdї,NU^"zJcZ?[>u~ _=Ғa>HS]%JU`R,lF.OI׉_B.;b( ]g~%'opϏ"s5DCvhv$$D>haoe”_Mz_l1`3 &q>LZNc]QStNnvfvQ`rXA*URITC ͧ omqv|<+y-z^ ~;@0#B6v9xޜ Շ }_U4J煯JVmj'+﫲ozڶ7:>cåa#[ivmIZm7lml4cQ4q?~]EIbv-LF=>{S⋽G&dJ*|GCX|xguK\Ps7YX~w~h| x1+=d[ 0I ذX h&"0$HIѨTNVvˈ|XRՉO-մiG;]u-[n  ;1.K2EPXhN_f=1",b bG&6Vw͗ƌ/AmKdM7hq`: @( \ M+&X='Q(QQޔ_ #WS8bw1.Q*)fKt!9d~ԝrNʨdRjO>cRuoRMTbYJGx9a;Sؚc[ddid-sO&hM&&ɳIRBI3wcV1I#*TwVʯv6OF͑TZ17}ح:-* xTɳ7J11QiZV)~ Oldv(%|=!l#@k-%5/& #ɤs@%pP?+1%ccX;P~. N¿IgɎV#s9W' JSQ7[|9/,JTk,oO WԯS# zSpSb:ؘQ>kw|OXYUbN0BQ_j:;4"a9}'&&#"I3ßoNHO'pw SWkuK 0,ChOB8s1=hoR-dwCݥJ?OE5?<ߤGy>(y,XT$@pZgl]'Ua00I[3A9&SıKfi]V}4Ȏ Y pLcdбH Yɥ8$}Y'\uTJTq2 *jה኎9 1z.3_Y5]I cv!+([{JU{f'Je ,7-enY'0|+y8؛=:KtL$`c$ZHUH7\ohoH%@lP\"otn)={&>r1~1A,% ? Bϋ6,\Ҋ(!a307(C3 ޶$~LdGTvdTl9oiYWwNϏ۳æ+brI&/oZߣGC*D72,EЧ?9)= |f@Kl13吃M|gwy+&'c&(96Q8D*uB.p;ęThI~$85t0I:՜_p? VOp<S'z=OK7Xܳī4!ܤHhd&49s0f?IOB ?q*8>eB0.1GZٯ6~sB323*bG?H|Gk3lj 1Y7 N6 (Qk\bM7**CV09iRENk!cDqIĢս5 :<OVC6Swg'(Cve;m1ɻMO6m UÄQORI<Вy:[ 91Q{bN2QUETxD>9|_: !Ѥ棼{&=gS%O5ndžG]G4)chh{7% H>"'#vJ*W`G" rl&r /;~G놞8YxJ̞2nk%K9<ީ) 2hb숋6o( 7!hT'(Ș'0Є6XvL\+6IДB*v0GR?@p !iK4*EN_XSgB%#ђ^L}n1ygN\'Ef2iJ,`fHyR?otH dI[>&1'Ouh߭tDmlgD>e<KsU 9RO%;,ד":S'?X| aPT4qr'DS`%EGrOR4S*:nj)\] (ZDU#BJiY2J1;<ɒ``XEWaU,D-sjx5jtQɦcWSyH($ZII>cؿ?ړOYEKI#r?2`O{ ! *]%} hdo~Mz'D`+fO"%? Ak"'sDz #z6nNe4c6Ot-Yʫ:l0 >Ts, US?K1>Xha5a'Ä R}M}dv"tPDZWa> F{?f(15aywH0] &i2`s50Q5W(C h^ݔ9 GgmXCq|~bJvReWJv۹;Ӻ˜ 8z>} |OAـp ڰ<~{y  2KޏX1}[DnCE׈n#4wy!!>Ï!6 tk` ؔ[7{Nei{q6r=nz Ki! p SըAk#m$#lC0Уʖw#9z!S7&#~Ad%_aΉ~o›띻qgzx鏍cStm?%[dTIT1HCfzGF}lX39:)԰v)TX|:łv,-S+?q_DzU=Ո&B-jrYo e{v--'ͺanSû͔b?DX\+/E4sS'XK0>wA ju]b0^CF71atW~-;xD)f![/A;<قF&(*G3Ce f$xN(> "#/i;*Q@#cV)뉀R-!r-)Z,Ĭr<&C;,ݙT},aGݥKXNio1F#O8z#f#v$=DFhe3(rƟSgcNcc31TwI4@} 4.tƕaXX~Opo.`F ꅾc}Hb4Q!ᅨ#2W&h G:@U%Itb{rbp)aP~n*T}OcO:O5Ez&,̩xXsqox!ڢIAaU:%lQ_F'd1Uk-YVd/;K߹,AfH&-ًYvo&\nQb`9>Hx~l; {Rވez0z(,c}"88JS.r)^q#W : 7Etz1Io1՞.b.XcPFAǵ]FӣGO7GD{iZ+1 oXH!wK:j$rHba`j$ yO }0c dp}x5pXS‰7~ =U#7GUT?B6y!)= x?jXy?qLuN..f<Fo 8)i "-;2sU&2=47kcЪcx)>)rUHًD*[c1.T/ S#ŧjM}({RڄBы7xΈc%0ƓUܣē%K,FX+|A+lgɼt̍9GAy Q Dy?O-F`[ JlCCE;g?p4?K`tp˯'/9k6[nۦUS,Zbu=hi;Ǽz۝F|UW@^[Q LJI/b|c4~UUQБu $c lbȜ ]lW?fOQf}}riGkCe.]-Dw9S vg?Mj+ypxެm ƚ+Jp%?\R`&?^Cx @pţձa."'ƐK4wҞ$=Gu]Yg⿁GWhdwaWWt#ӈp IT4&OLxv}IPcDndbQ6*Ñ8`Q~}n2 UKFA*> dOhjRU \,hEPIHJ`3{zk >ԑ8H2}L(/,FY*iV`0SZJ*-$hDȂNtO\SMöJ,_9f)cikf_QD=݇;l\hD~"z1kz9bgқ&p,xa}7 㛓$sovVu wC}U6 -iReE )e%50%tެуg TNF:,Q(8m <fr$JIS 8s/Am7:Sc憻C6,Z .A@ckBЎRCtC4AL 0c;2XbprtgiOc&*i*2hUCC"%dKJ>]紊*bU&T=G'>k#i,P݁0 ûÆ),c)#{b6jja~