summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/bin/export-to-sqlite-report
blob: 5ff6033e70ba42ce4253a00e4a922b1924e9c451 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/bash
# description: export perf data to a sqlite3 database
# args: [database name] [columns] [calls]
n_args=0
for i in "$@"
do
    if expr match "$i" "-" > /dev/null ; then
	break
    fi
    n_args=$(( $n_args + 1 ))
done
if [ "$n_args" -gt 3 ] ; then
    echo "usage: export-to-sqlite-report [database name] [columns] [calls]"
    exit
fi
if [ "$n_args" -gt 2 ] ; then
    dbname=$1
    columns=$2
    calls=$3
    shift 3
elif [ "$n_args" -gt 1 ] ; then
    dbname=$1
    columns=$2
    shift 2
elif [ "$n_args" -gt 0 ] ; then
    dbname=$1
    shift
fi
perf script $@ -s "$PERF_EXEC_PATH"/scripts/python/export-to-sqlite.py $dbname $columns $calls
ZS֚-Pݵ,c"E1hps/uN|I}7WxihM`?P{ vhg(WYl"U&Ƣ 2VXn:tӐS2a 9$Xլ(QB'_OPЈԙI!⭖iZd76" $Ȕad4y 5]9 zIqiJܤ!Ƣ#cy"u0/Lb  k(VD[KlLL8ޚHJ+ rw(';Z'6^8%8ujI{񅖗׬Z_T}=?} %4?B(ֲXh\Z|˝WiKQ:U o}lzqMZ(2_*8B ڮ&?T=|-oIXqX5õ +~!!j瑩Q`y* Z!sX-}Cxq(qTTljXg)dSN% Jn-#XDp&?/O%&/ :̩Sׅg00k.u2/nKb$SyAaQ5C'AGGkG4U)Lo73ҩo$qڐ#W=8 ryaKE@kV <*ұ_>ޝ5l&+jgyE5Ԡ1;eݼ~]{jUS[[]EG\&8愈Wk&PODUMp[8,䄾Ie*Mgh0IR5Ui[+} +jo-xBkpzt%9m 1|=D$K!Itl޸+d}idOP6Af:? d.Xs!EB` xJ%lL*{6^n]rGiS93(lB{N0ԊT}~_}X,MZ "S,w0~sL=G\'QѶLfRyhY㡑qR__DTgt[ dOpTz*xxXtbqι+=L uerQ /m4:2JOiQF؇⬳GhEFǜP?T"U/bixcMۥTNcQ,p ;=| =%iDw,?;1ݣ01-d^!9|@\xp;!#>9T6,’z,=)C>35OHwYB1='"rp ync-_^9+dH)7V~{;SݥŎI{/'xPO߈xՃkc;Gj.z1oήx'ě NOt/1w,4C4Gj=JZ>olɍ,kW)RA<#+o f>9dT` avʕ#r_nHI?֥ p8H0l{ЭҥIȻemOQbRfjWl_$ZN[T M#BJ\´N>MrFԛ`8gM;Vw+u/Xx|俏=$"Z|7jêXlW,hb:}^߰u,,4lc [6)](RPψʖ6bfeF>Sr )D(|ME!zPBƳ`X9#hh,|Mz\m6φ 1i_*7Ut;ONSxfTf7B?95z3d:U(]dUh[uZ^u¹YqHtAITyzKjWɮ=ޟDV:]*)[RyUoP=i0)BUR[VrW%xHZRh<^χw0R2Q5Lo_Pފ (ȁOdqC'KEcNWr1Yifħ:N珆/MK@*-v]xt0<0Ж9@IV8s"eӒg@AKkN-YIPAL7rb!]4Xin2q^] 8 1ZI$T^EC t0$EvoN:Ua:e: )3$ ^whzk|/}ZRcm%E߅OK Y, ~'P)ϛ%<''XMvJtL-&2G'׭Wj 32"}ҝZSTVެWz\A3wshҡ^/|-[Z Okw$CExB^+yVЭl} x͚yr#ebVTOk!qɎҠPBACGX# NeYuʩHx{iӬu%^ l0xGvPsp9/ytV-l?HH-s?6f^3 +-A{,pM8GkN\Kiuj4^ E JKf+V҉H.r"l}fBZrk8/6H|ogБA`]Wn,+bU<"4>gKڻՅY)lqOϹBfРwTYW ހ:z?Xlp|wza0bA p;xP\3ĚxVf[n,լ\0]"Ubaڃ9>"(ŒފVHtUiYBAxxl׺9'݇iP-uMUg-Wh*B9W"CſXa;e{o=ZMT[d({-3vVVF➈]PiXJAFþMNE &pRin +Nj*;YN/_՛s>)a& ݻȾ$H v/>:k.1mTr{0V]9@ F}UVa 7FJudW+jPCݜ2ZZ \  ,=yp9#4X-e].ZP<1bXLۂZgP3g9^J}ѝm 8`@m&UDnXHE?{[nNJ)VՋ* ^0gjD>wGfH2yvDki~1ȘfN$zhQ oK+RfR(qhnBRݮTxטD[Q Ҟix!lЪXٙ7?ւ7 ɠ7Q^}=ϟ!2/P)=$apl$=ĉSj)v/!Ej]VŌY&:O ՘06 2:xd_>)͝FoS7a"+Dmt tT4+#Æf5H9ٹ{hqAebcaM;z38#Mއ;L`MG~r]],Ed c7֪W0B֎>Mqvh,G^:eGޯ٨Ofy-R@6,NXPQ:5<=j@^ZH~3( ndknpvb΢eY|Z" $tQ>9_ȅi_<6טŏ,EPETwKaV0wӫSL6dU%J2Oa#5Vݑxm:4ՖkIhc{Bb$Z gst&Ẍ́cg^ .-d8A° #,HbۃմW||vEsH(ХeF[:XܓS}ec&:2WkuG*;")0'z{ԣ8鐚lgYc$ `(ݙ ]K*j=(d8iwވ0~O4՚ѽKjZ_7I\kfeTƁҍU!#yo; D?V&|ԈO]5 _Q] ¤1fg7EN5VT/Z38!CSrn /M`-zEFwlRJ#k&",BJ؉,bs8[? wj8n d.v*\Qg3`.-^r3+_mHXrӞ$ֵ(8Yܣ Z fa'Z_{Hg W-պ٠B`Φ 0Y 8g&G4Yn/8s:'e4n%V5A@}AF7 >iX-dΰ1bڵ q̦! 5R1)JѢiut.Q{iz= #57iߨ d;%yxƒ 2'"D. ;YQ-S.m¢,[ ㅵ}ʈerA<ǣh;_lj* Z`ji#לP{u۴wCZi hD(;R(­גeQY?Z$_x ?Cn876 J$GZRk{Jbjdxʉ3t@%5 QN}z*c9=;ёsNsTjIoC+&֏qM[AnhX'9܃*o J?ԐY*%iBrmwFf.tP޺69Y4E;{%s]4EOOu*IZ;0?:Y`>[^IQ^Ҕ@ KeOơEjP~ 5hLVf5:SM.fS5Rƨ w; (\ 2ƒq/F6',i\܆~!uVS6ϡ#Ca#[Д/(F$yZ<|.к;!teTpXαudaWBxEowSఇ _Y|ܯR/' _3/`9Q+"4]k^C)y;r;j5@=݋"^y 6SNpS<`vq[>2؎>_=BlBG ?zPrf;A9`јo+Ij'7Z%wd",.\]MOc?qbr!|4)|c30ݬ5k3rs0Ԏ/kwɨ ^ϳ鳓Yyb[{+--whxD v8&Zwe$I;<4YyZ֝k[Ky{Fyzb6c} #MdWi.B0 rYFqujًEy4NOѴ|vT iM*[v0$7{^_D^mmo&sj J̶ƈi̹|k5õ.#$уZ{|Y98!T#WWd|AJԬW<%מTn,/<}\R^4n,gg;3yѾ $X׻wBAtm֮IHhg}y}ѻ0lhWD%^P!3ͼrL` @V>YQ=v]!+6]qb&d ⭠3зT|Cz\=Nz= b]?=u={8+ q!&Q/U fk <7Q͖kY骋1ԸW#%}̡qF_J^| ߶D3ŽҜwtwxA3V8f%9pt8> rħ}k]esбEYBPH|E/#1K^q}^qgp 0&{tI0{JTMR!Xr۷ZTE5ՋfrO TS/iĵJ I=j%icaA[B)q5T;Yk\d[y4(+dI=f ΡӼՉ7ՐNY[9g̳1P.tyF=DHԒ⇬1p:aO0I'\4T=hl2K/R3TZRuCe" Tkʀ=zfoD_M7aLϯSH|R/0o=Ä@ּyho7ͥh 1C熟/Xz Ɛ$:MU2ΩJ)y8]+f0ݨM-h#QfIyЯ"E|Y^A;DQ>H(Iߵ[Ju}I&|Fԓ>?0"ڹѐ 6? ^e'Gx ȲwN/ՋhUϒ'tlŀ^ْe9#/O&6XC #xp9zh1FMHY n_d<H5_oh0:[_ߡ ǼT.a3u*vGR</lP&;zN`YSc<'cu5Å?T}e}puf}Â7{wNI "1A]>jF $bU҆7Ԥ]͸xki\NW. 7终_O;GdjLjB#C=94IA.vDEkCҚRd"-x4z ήCX}l[׸o贜}q؄;;vxN6)?N3!j%#IeZ6) ɾj{fCcS+ݱPey{^MUkF@gkt!=R Gܡ4| `;z8ŝwog~ǪȊo'X]6ч &Q[21@Xcbqeł 6,n822V4 vM&0Ӽ5'oo. n6i6#?puOp33J`lI`uo[z=h61AP맧ER(Wm=gQ1RSR[jdCz=gb õPdq1PzGj$[l! 1H mO5ECn`-'pAf@X`p: Eq7-HNJ6^6YJL͹:J5 %F{֑*L=9dJdIf\.(hU~pċ k>`,,d<Š&.D7vu됭pJ,2#w6%MN*T'7diT'F7=߳QN׌ F !"8OqIb !^G8Ry.UBc°(^1C6z+A?r( ͏t¤Muf:AlYGDU$ME@u򳇉d݂I\eCmp/K1| $ _@[MOifໜzsakD|5 ]@߼Siuj_\5[9dZ.˻x!Y}>&KbzK&S?KzRH-ϠWpZey.aQJƵҙ;gnfJTu0g@* YᆔN[kWPe.꺡ZwOhܧ>'-Q;,rOoy-܍O|>rQ͍1/A(xT$g8qSSKjzZ d!Rw$\mEq"HqԛS EXLt8y$csd=W@̯! Z5ǔ6^,!dvIt 7{@dg)OOY@9NÃ*4MQđv)A8gi-ߥd$$CX#?^i-ík͎aX3GD~v&ALF+\E.E^\7fSqC?qQE͊,+kFd+0Kdom2ȬC@hj:MŻ|=~qRqnnߓ `?vg_G?Ez1.zQUZRk-nݻd!ɦ kPVS[ө<=o+J'B l~ov~sN׌bo&hj#||ӟ\^؇؞8}|!Hӽx5;p`2;V.<[ތ} ܱIXW6ctiY̕ݛ_ в7KZ%p`DB>)˷{xؗejg $VZih) N8L`g}r*9wwORnlP;8!նĒQYN`LFPc+wVUw/2rfb =t;KF5,%i (-?ܥNHpC6)'ܱ|ԿK}X*WUAFV-iI |6 |1;DF?/N^Ԃ$fG{K}nD Nt=ť/j%i{pA,+yft=o`Ȣ+_O#U",z%H8/DeEbVc : 4!2`Lլ\N魐^(Y5Vx-ɹV%@[Pd}=KoC`[䍪Ujqim/NJ;!V,aHLJdua Gxi]e J8;`aW&H}$7T^%UVl7,e#qNQ aInrlk f`SgmɪCKĬT0zЎgt'^;n=kkU}G :qcu%ꏹ'M%SVYMZlM̬1sDzh<w@ߥ,R_MK¢|]R7>0sKcA{+Eq6gfbn&__#=Ei?P#j2:pEsLHZoͭUPnՐ'Ù'՜_X.7)<mgoiBRmA:5OjW r0^c{iw";/,o=r &5/pIuL{iʢ6IicTu/aof8$k=*_P{{]=P i𖾟9 k-5A[$`~c+7U}XG"W%7\ s=O4noAfbL۵q 39dhII&hP+ˑWBm9Uvs%6闌":CzT\ħA]Eh^1Q;[}KsvCnm.hx8m℈͠^IWdVUgL8aFO߹Z}`{`$H1#B>$ջqH )򵶪:5hTn ep#2*\ pm^c̣{9\6ƋH-9rvdھAj5O [=+ Ѻ. 8(*A˳ 칩]=.u"B.U´3W-%],@BLhjfg\SZ/ t.Rv5^ob͙Hr<}VAOQj.h8jUMJKЉK^iRIMtІ]}- Vq>l MV[5]5FdVۣ i+.9Xʴgʯ/k.qjW=gAȎ-wlvxl<̀xޒajByJ렲kD[C{2?{{k'T@_ߘDEO՜F&8.B/Z9ovBgKv&j7!=!CkOmB-nL+U4Y@JƆ/x<*Ul|A V " D%1~oSuÎ]o$v=pb6pʯGYsZ<#a-ɲ۽GNx|J{N-+QVkLjty$[]ҁzU&}ꭒ%)ꯏ؊?3&I`onoL~i HfP,hm8^$Cj k2bNƮ; W)!M](zn 48"ճEGܱcs6LŁ,%dR_FL,-mGD BFpgӁ]A}υFŴI*+yv9|5}{z37B@HE{jeR g\y;Q}-Xл p:枰K|˭|7;Wwߨ\ (Z8\Pd/3'q }Ԏ414 >u*v L>L^ߝjO<4涶6FYJsLOܩq@whpu18!vr$I>\L+EoZ9eŏ+i`-ܣ[C파 [cYAΨeڸSI+M78n]pqM7jpU5Vrt6zoVkvCylӈۑWcػ,ֱ23ZQ+;9 dVOQ~\Rl.꣔#F!Jv}"Z܌5"^wygV[D,ͫ|x2hʻlMiQG. ױ t8jW_Vˤ^5oV-~0mq7j2-$5?wnm_ʦMUsFNH uvE@l鋊g[2?& ;[] yB;K ) J*ϊƼ`!J{mdnl4yBЌjbm[Q̟Wk[$ o%9U}dmGV!9^sgBk[jXfلBAt.)sbYk)Bȩn/Tό]` gBA|unIKtQ0#t\mꋑ^/i\ּET?*pmң)KQu<MNi5H@.5G'ȁ8.rFl,NVvTzKY09[NiG-s.fELFL%óÈ{v#9aVcD0@5PAl?NoovB.61>B;ޭnH]>fԊVUr^.AQYmyݭw^1by&<޻zE>QskR~n[] 6l؀bH:a>Gvcc%w١r& 9I؍=OS3^ "5š [K?jtWUTʭV^WwF\}t.n8B蕝'}394bjqd!9N[͛>W6HVB0527$<;돞\z I0%`?{\F֞TM 50|weiJ G@ר@0V5̰ڶGɰ; yTa#үFa]իRFA} Ӹ Кt 8PGf|Fn>:q@)Dsd#42SH>)'$_1].´ U! ͚Y(P t{ 5'2<o/! o ~wZ-o[BTN^9% ? &q:yu@}ـذl 73ٞ Ebjuv9Y"`>:#Zɮ:8[$;^] V:cojqJ %8F KMA +$Z#lvvF(_i#I)`fGN ڸvg*5C= ܌sIg\2gNOA(ִ4xІ<1G QVAGgIAҹiԹhDsڨ4(DKJ`sS|@(Ssm|!µ-U؂n殓FDîyI@zT=6CFN33NG4Zv\= zCj_5/V6oCX.7SR?i$ ]\:9q(sh+˂bޜ?$p:ay0f}ަVP.OԚVKÝ̀ ̉/V~}SZGXw#9D>WPUZ 8 ]m,xѓ,A 7:[Fh& z*c(U+݊Z;[\R[a'9?蓵['!wx>)GygoNX.ެ(%:/ --]vټT3R vq$܆F{V?J@hps7SpD+Q<##_XDk- 8hY8KuOzMaÁ}:pm@ֈb=AfE]:hu&uC!=Ҕ8VP0=CyP)A Th-z QY\2_*.>F&Î W߁{:w0skU~T 6G-PL bTqх$~qntڢ!Hdgn{uI \H:0֚L}KC 7 4ٙ #p0n[ԯ~A4ZV3ȢzvS7B[TM᧣cWXkr$mR5s ?*MΊ'`r|4),M3cX5 "01ZY&vZa=`u."ydy0|RFu F٦çyp {kkASTOڐ| ;!7|VGnJK ps'IDo#Uv#S} b^.kV>/|&dᅬA@@; Nʡ#єfv+-r#t(X!3pr-=J^GGcRBѧf=GӁ1hn5}s6v,ƢNL\|Jfӂ:. $҉Ljd\`7B}T4/Sׁ,Eu;}G]l_p}g23$I`t11V9\bZ1ֶͰ+MCZ%K7# .gaqZY澪jU M_B=dŜJo}rJ#HB mҠ`f^ékr2\Lw>L`d!Z: 0DA:w°OҲ55Gh(6Y ~z, j(҃H>AVUj]q--"Ʀ7Z-t[HppnI=z p :͂ u;;\Zs/$`p%\ȌKLׯYd᧗aຄAhC!՜3j0Ioh'4qv%'P$.YR\6d_@}H{i].K:vV6UMdVևjiu/=@ NDzTCvtЦ(ߒ\|ulM8z*?p#!ˤXrP]eԵ A Ʈ:bz/&,ċXUݬ6N5ϳ[CQk${(C\CZAE P#mmłi'3F2Gճ-uqxg~{ G~O2~x0$l,_vJqzPe΍W%ŝI„֠5"=TsXoFRATg05R Mf\p )BOӶ>V҄#\08~6g&53)xґ=vdV/\r b%@@bm!-MF1zkNJCn*:i}bvƙ +.Is)ao=?U/E<_$HQ5` "ԵėB\ RBI _kߵK$Ч ەѠK2گ@`Ǫ;lWNK3T6\pAg YffN ,:.@2Mh>8b:@:Ӎ1t4x![#φ7C-K=@[3rX؛Y퀎Li"uAmpִ0 JA<Ϸ!&2e.|-rr1Yp)Bts)r #LG6$隆Onj4ԑԽ4*Y{Sp!rc 9l5H,R8Ibe#jF>1)/IBS4+RWP+=))Z cIE&Ķ@V D#p_.pJ!w3GKZH|fZ0DVY(..h"}Jh1{|((j#?R3t,ZWS!FUE椡F6gL%@XFrqMa#b.S%,Ozdc V߅䬄6Y.J?{.ٴ$H$5D-pv W!q%q4tu[\j"%  [Vо7&mw|oƳ U,niڡ(d=_ҷb轞WX/"jrcN&|MeLBV148Ytv|Zw'i}e7,Ulo{ GS4G=֟h8i'gMzyF0#VD8kz !㈽x;K?WX6G+-?lC-mgM[^I=h`oޝm5YsOO4ĺRU Sq>if[CgPb{~~+H9ٰTw644/wpH)&3Yz VO&PC=Q~,ZBwwAȗN@,g=k ڬ&P (ӥ R }Z32\r)Z%^ǫuR~:vAGz(CҗfW_K L=G(|5Ã%ۍVQ6k%a]iD}}ۿ@5ũٍ|=G&>|ծP=9 j=zxjY Ԛ sҐB^ߋ}}nr{Dbϔͬnl?d;J=~|ӿz tK=??=j:--`FAPpFMKHI[=2cQ-2ONm֑ JqԶ6TWâ$\T[;S&}ֺ4|EFho&{6#X4gfjzL(8҄)Q\"P4 '=9hL祗c'- xQ1We> FKѐ;cs\ S8ND~s$r{I3kNo͆pnNM}slz? y<Ϡla,6%},o p6nZ2fZY&ݜd_!yQU^4XkGק3ukTFESYmt})w jSo&|Cڛ\b>[yO_ۋT<$<#!E+zl M\TAn6T5wR߽`:Uiڐ5 =  +9"Tw6bϳ&U;Qi]",9#E ow=7L&Ct{/O˗'"mj [Ӽ+WY9zQ%猺V.3wX9R8gƩ*psFR3d N;?Cӓ ,"=;.294ku;c{U$Ggz W aW)YObD~grkzGN%1Ez;-,(oy{r^ѱAŶ,zplaڐ1V ߄U+F~Vo@x2y(\ǟGnV9u ewB]j"ɫ9.cg9˰@#)q^u* ߣk;X6$g0%0kGd"8 T7P2sPgYl9oTr-R"4lٚZBìg/`zH= 3G? ?qŠ=AmSN fE$GY\;֕:+Ѱ %ڤIXщ%4ihFȘ~]5@NgVU!)B^8HDg-kvZzi3-ZtjQ&U>vEW(\]iDV3{D{, 08BܨJ62f0sRiVjib+gz-%gXEIL |w!`x$yڑS[ݑᶷg \@ ;PT5qڨ4DdO, ".7 S˥ހs)Z;NExx. "+x)=@:/Il>'j0(0\$PHmI¯IW$!Pn(}Q[#9{t!! ԵfA+!I_q2!U橨{\p܋2<*RB.vxu--Ԇ}ML55ωW%d8I6Oh $Дx~xc>j1xTOs|"|Z~d]!FK)-c&el!jvCUԻTT@U&]NPmԫL{uK=!PZx4r5?7=\4}@61_xnf8e1Zb]V#62uOk+Q]-ه?H?7*0{!*OڲZ6cj#ޓ pI`EC5 m5Ȟ+.i&FjE/f&R,dY:=xn6:C ^s'$,id#8g=([ҺHesfh2kX26@~<.cjL5ْTX1ºw$cO?'Q aY)P4eRhw,&PXԟY.lJqzCM=\|B"ݔ*AxtW R5R{yj겿Ak8jI x\(QQFN&jT,;̣"$fQ̷yn(Q.. ۊ̛Jۙ=iq]ߜ6A4M\I3NJe\?Eqk)./eq.9SkHdAF'5G5?&ӨՠFAp Su䳳aAˬ~^#έ7+FEl(] 3++KRv@W̞J3LjG `1x+ʖ*ăָ3=u֌X!?/4=Q&t=y{׳dWR.)̅tQt.O8 %ZNz FSq\$pfA G Z@4ۻYWg}^ҵ\6}렍 Ҷml7hV,U A{1LrzdZRfJ4EĖjP@P V'> H*l<iMc1a`9+|{AV85rIzTU[^ .zUv0@!gx7`"2i߶GB"'Wu?*h\i !s+YĦU8- ԥx(FR}S20Y{^m{vz" e:&?z;cjWtam1Srq%*A61_mfdwuroD$E2\T,׾QR@ݤO* v%1#֞mj6y8ƶ  `1]]ƍ3Z[Fx?ufj>afT{)JR(1 ǽiM3a!Dxn~T] Lj4ocLMl[-V6Iv7nQSDV^5 IAff5+ .slfo?ͬBbɲ1}*0Xa)n?8(3k3r:>9dOy$B׺vap2u==g؝aI7&f,M X-RNkIмޭl ϯcbw脊Gna:ZZ(jLRv7/jryC&YP/i/2Y8 fwd45$&Pdb껛fYeGʘ҇|Ӡ)ww,;v;M蛭vv߉bh> `zyKK!$+-J[܇K ҤwBGUU.~.CPxDu25qt (lku#l9yV@wˁBBv YQ3Z&B,[tàs2o=pᇇuHlk-I" lVoE4`2?.y{㿇rچa߳KpQ+zp0D8e(֮- 8٬I!Z77\]]~ֿ)ݠq;[%54\%Rf4n5" TlkKW*۩x2R͓GqMպRqMak ^I!vk[dRaol)'(T-/̓ww,=PAMtꨒܨ|㱪U}'CԤFC5YɔyIޏ0;J\1EUBP-K8B,XhIm u*MX1Uņ9~Y+@TP& X )dۭv>a<vz$hЯ<:̶< %PԫJ#֝_y_J9e? ] pMeJo)eg\. Yܗ G'<.gcOse`m]1']^$5ѓZoXK9A.Ch/"*Edrl|Y}Au{k*&KGzA[߁-͂Wr+un*=KIJsH:MύGϢ Kݎht%>IvEpR9@p42B'Y:\vCO V+PK4oqlC8J,c :"5[<n^~{m5(+8:@O NH=uY7qH &`)*e%u>ȍ\GB@A;Whh_L޿__"O { WI+T5>$"1ipP*Gwe3m[1$a^{aݹ)m%FL9^zP_Y3Ʒ8Q™>MXV:5_Zjj$W4DyGKiV#a9K=ӿ .ş26@@vy4WJ+.=0Y w>~&V'ʼXi[۝jIǑ%4@%k:{C] ٷD'7ೞv:iY Kr&=Ctk~Ԏ6 JÝ^:DX~c{ t#uvxg鰟zO7ye!,;8dwbIJz]#" ߈$:)`9VeSū!pR/&uȃY6#I\o+'7'OKj)z{BH|}Yh&v.E_ʮ1 SXMR`Pj&IU:AgCUNHfGC:j~CXD-2nLL] Cs!Fol_Ypʞ,!Kv, (ϛ* 譶vug'#Uϑ %tRI0Os"9bm]tf!z8te=~dXw  JsR+Ƒ&XY;rn)s`G$?Љ܇[ڨi߯pSb8@[graK5PMŸK6ȆwS/ 7/M;dߋ%3%-T=@ML#]T ˚;>9:j=viFry8Y5|w#/+Rͳ6~(˵PLP\?%u\[S*`:\W խY5nv=AGV|?&=l/5 ^gxuZcTEKRw8*0eh],|zT㸶NJ|H<GR3FBowP-5q؛#" s] İЈHB-641Sf WZRCCDhkd3ѧ.31=nuؽ/j>MKjKm=9Ryl- x}Eu }#avz:CܬWq+MP~v>Daލ> jڃzKUƕ4H'6iOpT}\p o d"YFLjBwA2dwo2 8d)7 Jx0#>ZӰe{q5AlgSXܢ|iy9vpeVF5I^yLvݛ;\)VudM؁I#q`8=   KO֞ AG At&O3[(MQĦI-\XdRI1+G-R6+ho ~3rf? 2]HJN5'ܻВQoRaBDKGvIz#Mt,s0?ШpL!8ӟeBbO%iHU/z^K?tY'sހkmCmQK*sM}e. :iH]Y7N@NԨ+< k(:GNٯ>wFE]˫*rhJKf;h}Əw5w[Ffϥ/n[ɔHtj3ufU=4g~_#SXb婎6\^kC"ӄlV}',^&Ƶ%:c}$x,a.zRBL⥠Zº'рj7+QkgÌ׎@(CD ˨^P᝵+o켷L8`)Os9g禥HMiSWĊufq%R qYnl,j gkv`R#΂l< x!Cef‹ O~l(& O%=B&zubn|ҕI2Ia ^쭭n_ڂz Z݀j^{^Vt*Uath&S9Z)ʆך~C1LJa旜:[f:1:iZZҌfGQQ]P5G meN߇j#4/Z/e^t ޓSԣoZwզp!Z/nXS-)` 6r%+ vL[ըY @&_AEӬ-SZӒMHt[Pd7_漃 5B8ܨI;e"<ϢRj4z"@vM.Q"4<Ɨ[W&SgE$%PxSv-C$ 43$tf  6J 5oɀeïnB$倥[.ńȑ^ht/m  )K=XUp%/j*_vڝ.g&X+_|ڑmP{[<',K_{ܒ߆=\-{\ @C&tN&RLV~rBH#-&W"̕\58JYU]JV tpeGaSi"KlU:Zc@nE>Ȋ`Q+bY ;տګtz1ٽ()D {D:AŎ£ĂP'/Z*KS/I!.'5͆iYݪB`*ύgV:\Qqw 1j)Bǹ,hqJ)[oXqBƥ)#4kO49\S5s߹ 2#Cb g78l3g7_393gdukldiM<[BơWqlZ=]2oGF7t?:A]%N̻9# N!Jfmɾ?/4@'V/\9Fo܌NOO/_ZF\~-?rX'd{y~Zdyb|8y;z#C<#S{[vȜx(Ijɠ]4<Ư3.Y*Hi-3 Sw1̠6 d :ı1b-9 5g1RktK6+7wl"T(%)o~JU+Ost]3?7届:zc#c4ܖV 218co&@jfxq,;3]^).B~ɬ`uٻ7~LKc&EP_pKԏ%HoBtJ  0߀;&YC͡y* 0(H* 9^{=|<2v֭Һ/`]"Id  ɹV N2Dq2r J5R_Ro :z#Zƭ -y֋7{;׾iҬRXotAa%}P~vzyUPﮞˀ.\]YH 5uYNgI~Uri cJLegjLK%%m_;Gr5g~ մM$XPhw-:%h5닑 {KDX][XGF.E\ƥ%h&_(0WKxkYPآqL$#V6SeָEڛ ɟhk^iHn[Gcbs$x';pZO7 j,s.]Eo|{,B\i0i{] o;("Po_Sp'iλ3gxHS#U(`OKXPH93]Pz4{trd6%#*Vc궻{uGjkyT=c&c%Y˻b #`QR3DAR $LkQw-`dxќ\\~g˩:^Q@T$ߒ<;`"t:EsNȂVK{\W┡b tHQ¶\[;'p=P,{`Qw 7>SFuP(Dʆl4q&eŽ_^՗O[n=[=< mI#,am);JTU3mm,j8f ȕ*L>RYƸF=KZ0I44"BYn`p\,!©KVUWaGOf\Qƕءygw#zqu.+e"QR(x}y.AMv!kVM[8@yUC;MJr+qE]%AQ"> Bquz5NYLۓ6+*0GJ>$Vz#U+Di?[MAfyR5z}JV[.:?!x>?We&?8zs]ʨBSJiԵZR Dsץ*g7,# \鱠6[{KOA&c_AXs/FOj/YeJX 96K-r 8)sG ?b}ci!\KdSnZN@R;j)j; bQ/,F:צv>G"͇M!Ӽ7ww+ umz542 AH;r1}[Pfce|%2Bo|헼P~~6PGC|cQy!˱Ӟ6F3Y[sAKw&vʠ3ի<y-uDi>U9kMʣTK`tZr9bHrWMX E o|DKZoJpX9&Q`.PjJ d(@0o!0M= yp1#Ilϧެ29;/͊[#>ϧӪ4u@l F'6 H3=R^trـdP\-tHIGf(sh:ᴦ5u2-P@'d@w zUG cwK{mmoNw).$=V¿eڢVPěIle50ey'tLufqrL2N .=nG6ny&1b;c&h[IHQmhqDuOm(8}2$JسGgV^뼗LEh'έwi&ӝ7n bdUjjR'W(\T =*{Z?WCnqD,)II+$bE ̸/'oA:)vmA5V~k^V6Ex1k~>0 4Չ'ypiZCyψ4>iA;"t2'ehGm_?KXzwy/㝽kրA?v+L@S5R*F($S߯CXPIꙵM1vUpz}:Ȫ }E^00"9?]q`k2Yo11ѻ]@EiR=0$hKz[$gJ s|RRu}[^TL"} ϵҙN:u orgDY1 4\/2<=Y:Iѕ̳,AnFډy6W>TЮB1*Ċ+8HG0~(왪NkY7vh:}e9IX8]<6\έ9Їa1*Kijv6\';Mm-O&6-fgX^ݶj HB\lUe<MPDeL'Gv˙c=UIW?)Od#!_&bwRJw/>O{@!2eHj/Ck$ڊciul-Z>+s02zvζ7*H'EwX`, 8&\x">C?\ /PʳIsZj_kD))bz#7S@ZCI,cs KIWO d2 湉m "-Ն مZj:tƧz$JVPUpW3\뼸ZR0 #y]n$PooQDnBX~iv⓽;/% K_ٚ$l,?#icז>3KIXHt }^Ek:t;#stߌF]k c.reCv,8cDT@~|ųM]n0kȭaR*6I8^9.$عjf=_ mOΣ#evQmGj\noP4#5f:Y2"Z/`n6jTCHleX+cmX/$'B Tb {9%h KDܙ2!,%ulduc(tvVj]UNn|Bk^B#+Z Juqm;,=wR˲&ep Ì<wb =j G5akl,z$)$PldP%N/ =k$Y<.GTHV|ë 4mvi礎l9" *r{`5'୬5g#xYh0p%zKi(1֎B)>K(ƣf9lx`aHW ]B +b律`qS-'rJ]9D2='cy7/Ay\]zh۷C[ao/E!gg.q9իJc fs< lB=v 1.խ5 +\p%g[g%C5`*b gS\n꼟 FAO`\~<;?Gb+ -P@񙰡r 9=8wya!,r474XϞ4#]lEd:)a %;& pvCWv%pn5Pл5{Jvm"3 m7-"qJ&˄j\8] UT".$ȫ̊Aoxf\qIUXL?~A{TTZuEFPUF:&j$ȫL0G}+.ѱH|/ë+E$ `Vf 3vn5v1`pQ;5$[6r,#sQ'8ԶB0p:/ƩgЎ7 2 0I:*l l8[īsXoNBhUY|h"IoLL.bs_49L[M,jvw}8I )#ϋ-<ޓ%߿Ve">MhΒ !w™@gZd Y 6qfԤZ!8%42vn&ypPm]LJ#O)7vk0ew AM׆iM"ԳfYPW%7Հ 3I27@p78 )q%0#gۛa$#! ѨE;huII6(THseSUpOFKqN(rd/ P6JIB09Pڃ- Ŭ5/ȦK>Rf4l}2:XU&ط톚t bF-+.9?:S9&ˋ|1.׊h|/fC׶x3TȮ^[`tjF͏l.Lv$Ճ8jbR%9F=3RΒ;X!&fE-ϳsK(u=8}q~dD± J< ^0AZ|gRà|%DkxUFi#OkҎy"=poʊ}s$DaH&1 1# <PŸm "hbi8ElQwgTW&`2Qn:f]u]&VTsDfðE2P$3*W^ .`!hf:=PO=Nhr3>|QPEAnn~tEpw'1p*u{+:ekLKJޜTts8d,%EU1eA*E{jU֙ \iٔɂ4gUr+ | RfDZ>=tf/_i:{HcY|A@%jE9[m"hO`;'yB=kX0^xKih zۃ!~nr_$PZD*gA| Wvab bWTNWwSu AI.ݛ9{<٤{Y18\4C|,1`.}DUNv?u] C"n|_cS*fjˏ\RP% ZOpOijSP@%g^MhyOf43gACB&]DF&i6h SjuerjViő+i'6B0*HN6ubvNrpϐSJwt(,蔩-"0E Ml'|&GmdP%xk: .Nthhs>qbw4Cb#iIiʻx&zyg4swPKR.U=Uџ >bN=&?6a&R>ԇ I:YvJؤ}2ʬL>/P\2D`lR8G6}5T|5.wűvgZ~C&3'T`Zj6`Wmt1n=1jk1:E+ %P|u5[jf$&DtLL>-$jd <+~]4d2 '՝k%*"ǹWoDbz織cf<|,O]"߆EVL,E 2F 03%?(FHcV.͆ihP%&QsKwA%&I^钷Y6svʇLw&/ȴ0Qܒ4 u鋥~ꡐc#$>3URpVF~d*`@KsHjW[j_Y0XHl|xRQ*R8-Ec2K.J2xͨGmwI2b[EkB6aO=h[_9Za1gg|Wk%imK)QߕQUW)JЁ2kSFߗo5[ZUUS%2NRAp" @SIL&6SΆ)tUE\K/JqPgϲ+8Xz}+ohM+޵-/ ң(260w(е 5iWY(Ṅ$wMTC׶wl ƻ]Z&Ap"<<.)Pp!MV:aC\=tډS"-Нc 0?!F*S)u227+Ne5 $ŀǘnOW_.qM ԝ\!>Zd(WƳxGp#`7xkXWBz k<2 ,!GsNql>HZ#FIs Y %ition g9o 衰%$rƂ0<έVFΆ`\>-vyu:J,y$!ŘNt m~?7;i߳#   y\A1L@ܢ"&YJAp5ӽX-r0 30FXp .I?eF o=Jj|azIf@&)?=7"is1@oi~GzKF3|zm,F_]Ʒ|cD}&iiz'(pC} YYZq]W'cV07˭egGVke)Q\;bi/}\:'f8jVl> !H~C Ne,h{\~'blea/[0̰(MDKˋ-2%]OeB/e5 IMd x zUMLͷk+d),7$xtIRM6I\mp7 ׁFL@r4&B$ pG (շ>Ϡ{QodP(5|F㨠5Jފ`{$.j! a!C3t]#KNKj %R㒾rIGӂZ[űg5MaX!h]:tqHԡyZ")+k9g2J#K'2MiJ"E5q0>;^&n~!9R|lI!jn)3Eqy'>s&M\4wׇ{O-a ^)6X,lxE'J3O;9,#^nU@cNnE9m͂paHNѡ7-r%:ݳh4tTk)Ja568k{A^)9Qf(C6uUԳɄ*m^r=?eZ5kRϓ'8q?N j}&B몌 qɂ[ֽjV*Z'؏'ݏPìV|A8a D\bLjP7Þ=~E+VV%'+tYg#y( %*5"@Ժw&,E}T4~ T.k{z̯G1cCZ4+CGڪ~Afln~~r9|T~M(:CoDS\wfD;|b2d ٯ0#U^nȤk87'uM/`8{^PB'<ԻZxʞ%Q8w.ׯ#V( 7m(@UӥteZy}ŔԸ*)+MnN}Vt@U.= K)}BMdE؍ 'cwfq}7aC5RUw8??9gZ2Ei}x=sNO8uҮO_*[(J(/>Hjn )К]p`GjvT?*B IM@AIu.Cޭ 4jLV0 IVR< ^Avш3v'= BZf*01y)faut (eM!‘6YZlc K(߬Ta3 v21>Ko dHV~[aW#FzBrh߹n(A{r4?+i8^EfH)cFgO,+B%]B iQ@Z(^ 4Es$xJƯ:˨/<rvx[6"n΀k][{tÔR]/[e?O<܎]Z4\g~!DaΥMة1L ʡZX(Z%W_ɇOpWn|l G%bfקzE{MR| ) [bH 60CJ& t?V+ ??Ov>[?j \=C7?um{QINJ2l.8ZÜʏ%D'F?/O_@?oe#~Hpw>?H/%ᅣ@3PBwC_Brϗw~e:S>Hy'ї(/ڵ(/[P6*>o?c<H=~Fy,w^#@V" s~Vl6рD I$ sBC%!0+ӥfc;,2I"[لw׃2B@a0Ȅ~JÛS8db? kury8&FQ1R(Uy/B?3<2<~x*3 /?c֛u3[9 G5wh<Lo D>9͖Y_MK}$WZO?}ˏĿl:eJyM~@Oٞ_Ҥc/?AFD&$DwNȩpL8:A9} E" ś& y{??T|Wɚ!Ɩ|:󳓜F Cg&zzɈN:O(GB4G"4xdjr/؍^}?{=VSڮ2nx ޮ @YGGUb 01E\E,F#o̚J[ga ؕO~;I,K/Ojh_Kow||Ʉ/B}sv'`H 'f䱜gyc:- =ǘ/SImQC"9Ѭ>*yoG*%̗s<7T/?K/}%dշ]>1 7>$MْʏHҊ݈G2^L10=^%ZJo v60 oadwt3J>9F?_džSEH!'Gd78@XЯy%ȣ /$;HH [ Gce|lX9\}fqm|#ORHͯ9 ,=8[:%I_糏s Gsð\VCcyShm&v kiF%q}:q y6:gjaݍw=k#)j\5gʇ?[Ff_ N?J`%K3kt+ `pGbɐ%~?Nř!NcEM.'FV>*+[.@Q@-ȠB[4ұa_]Ni\σQ3Z;E !R;AID דp[aMms=?vWi}A[zc䃌s$f ٴ$5UqmX2,z'~z( Ld@_r~E r`̳ R%- ȴO}N[*mJ8 rW+{h~K]|hܮYv2θ]~Oq'FAo}u˯Mi/r$ES9 ) Z~C1_{e?gUt1-+݊&ͯږ!e;z\Z67EYmFҳNkkiٮzYRo?8/*}(ɞ[>uPgᨙ k.3/AcA/ٝs3BpjK ̞[,W$;hBF^r #.Ws?❸fm pmρ虉b>#ZKY5rNKo>x]k2?w0, i+;lMVjjF(Toiѳ/V]oh=:_+BJNqo: c/N/UHSrC2X&:kEZ4- %Te'|C4!\;8OEOfj%${|( sۊZ>DA%]j9H;^[)!Fsh{gC$-RB k2aq--K1KЋ@~ě";jmH| ) *)Jb0* }Ԓ]jڋ/fғ{x- t.Ŀ^&[Юi (򬭹K_w_Y{Q0 y {9.kIVAP3WP|fRIy|/r?5D+;w$K~ԟ8!wGk;h_Xk#A(5I .{R@Յ>L:/=0ų1@֌=4'2ǸE@^V䚢>c] G*AiE-#*%ty`\[] DgHua ".ɦf2uII)L1]Fʌ9be7~7z!Fލmoo6KLdO;1h*O^P+ jY% V!a|w_ɸ~#WDʀwUGphvU 3 D쮸8)#$oq /.QR10tF1~wbCIw@|YH $a3 9L~ʌQی)юx^HEgq IF~bjG$)#`*FvϤUkGmU"2B&vJe?h1SSkkҹ-wov7ih-Jvǁ/@[VYtf A˭ĉaF؟V E5pF7EWJrPBg9h"ŠڋTp!$8S lKz,]LNaXNٿ&#"8ҟ7S';ZLDoG1 3Fd-9@ܵzG b<3e({jZbPVy oxG1X~ UJ$E⁽}@'y H|5!F-2DXyRQNC],/IZ<(+!w6 r*{6FŅUw Dڵ;W>RbzD>>OFO9yJ9o[]ÎCrRzVv9 9IvT?wx^0Y-rx Mku~+g'\K~mT yGG*qa:A we)۾k5[{֣Ә*4nǦ:ȂɨxbvNñgڎG̕LqK@W*UuũȜ{6bN:_Y=\:A\<ŢN^Q'+c&l@w/!|\vʎsqL M}&IH ^e}[J#{[i*[uu`XWe#Ltlպϋ]l۰9O WT/?AM:ww jؕcw_U- ''2~++:Ƹ?+,+4b+g !"ӢcQ_ ^9jVHȱLg5gJzVD(*?o*{ܚ;QܠmuXh4 O:ɏחD3 Yrބ&V O Ѝ ƍw'":QL0`SA(L40[cPt#4!IDJmV!5V mCܣA9J4M6>v . W<*l׿ eh ڽ8 mtX=a݀NG.\`q'E,/u=NY@9+ɖhvީl 4K%bT!Rl'0׬4.83 vl,{i NUOXhN7fߪ^/1kawzֱE>W7LO&dq7}1e_⋺.G} r6(E5QLQl, #'+B8'18c lК×&XhъGN"vHa?j{}~  5$DCHuzj/zr;.+b~X`/?jL]#Qg'GQ9q{m0 h DK3pmkQV *Sd:\Rۋ;K eV i$f1Ii#r۳)8K+Պ#Y>v>f( Fw.cl5 _ZTMI{FoKLeh:~0DʔP4Hܶw0\N=#$o?Xb[WIuN!d01:喜FaC&NQ4]vR B֎czm|%V2OXv۱t:邉 Ǭ9 | 2 ӕ '^c,S([SSfhuپ@OFz-9JTNE/zZ2R'3ك9_:Nt wGG}/639bh+.1qaUƽ0]Gg1/*:VrfF A~F j8eC:Ё@#@wG}{Ry7dPP8RbyoԻr4aIEP+8f`Bv8%,a̩aY ^1L:.~nu2,1Y a,hr1Β2?}ؼ|U~f+ bֲ\oObhL[d$Ρ!LV=)Iu:!]4JDWŅG|:Wdӎ±@T?)ִ6#i`K fz,dK%!"@f% bIx1P%Ԉ ,rS(ˮ A{7wQ‚P0WUsj7z@)Dq֘einx'1OZVy ɶo%6خ7t&_Vceq :'%MbqElgg!9'R̽>¤4-:9m9ߣ:WȢ~#uTWp fټW[{6fͭF2܅D` Wo/SWA_j7y&/"`HR>@:7 }&ZoS}w 7sUI^xxi.iw5ѽ 259?q]gmo><qهt"j*ʱet_\)j/3*[8OEj.B_T%~K%û%0vT|.ӥ:P