From 436ce28804c74b2efc85a20db20a53156a37f002 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Constantin=20F=C3=BCrst?= Date: Wed, 14 Feb 2024 12:04:06 +0100 Subject: [PATCH] improve axis scaling and ticks for benchmark result plots --- .../benchmark-plots/plot-1dsa-throughput.pdf | Bin 12627 -> 12390 bytes .../benchmark-plots/plot-2dsa-throughput.pdf | Bin 12635 -> 12402 bytes .../benchmark-plots/plot-4dsa-throughput.pdf | Bin 12637 -> 12400 bytes .../benchmark-plots/plot-8cpu-throughput.pdf | Bin 12637 -> 12398 bytes .../benchmark-plots/plot-8dsa-throughput.pdf | Bin 12632 -> 12399 bytes .../plot-andrepeak-throughput.pdf | Bin 12562 -> 12321 bytes .../plot-average-throughput.pdf | Bin 13458 -> 13222 bytes .../plot-dsa-throughput-scaling.pdf | Bin 11314 -> 11333 bytes .../plot-perf-peakthroughput-bar.py | 14 ++++++++------ thesis/images/plot-1dsa-throughput.pdf | Bin 12627 -> 12390 bytes thesis/images/plot-2dsa-throughput.pdf | Bin 12635 -> 12402 bytes thesis/images/plot-4dsa-throughput.pdf | Bin 12637 -> 12400 bytes thesis/images/plot-8cpu-throughput.pdf | Bin 12637 -> 12398 bytes thesis/images/plot-8dsa-throughput.pdf | Bin 12632 -> 12399 bytes thesis/images/plot-andrepeak-throughput.pdf | Bin 12562 -> 12321 bytes thesis/images/plot-average-throughput.pdf | Bin 13458 -> 13222 bytes thesis/images/plot-dsa-throughput-scaling.pdf | Bin 11314 -> 11333 bytes 17 files changed, 8 insertions(+), 6 deletions(-) diff --git a/benchmarks/benchmark-plots/plot-1dsa-throughput.pdf b/benchmarks/benchmark-plots/plot-1dsa-throughput.pdf index 52236111824fb99660a6dbdb6a35aa9845a9526c..c0b0145945865a9bdc0f165f70d629a966e53e8b 100644 GIT binary patch delta 1943 zcmZuweKb^Q7~dhK%fupzow{UvY-;X%zvhl`*wWf{kn(YSbe0$)F-^nDNkb{CNb8am zPHQ5zO&E4ht(~LIO4~ZMX=xIbqa|{5%16tt-8*tt=Jx*cKF{y`-sj`@K2PVaKO^dB zjy%ZQ&k7i;W`f`7FSElA<&Lg%+-tj{$l>d>>a=P&3)VmC{?`m|Q`}?;x282x@uo*T zR=+3T)%n~%A>kb=pSJ1FO3OgSr6QYj`|fasiXQQy%iD=y2gNc^w@jb*w%adNZupjr zgd-NKtQ29DiT8&Bynp(x8P^=Jgp!%t@QA5bZ`{Q&XL=vnn#f3UeFr53U^ zH2yB~Lg^mwyBXef2I*dn5l%B^?J>n3FO(i=K?ior6#@wj6T!nlmD@90WIyu_9?6#n zXO5VW5?}uh@hAW4-)!wWaL(R3)o)jyD5q_xM7{6LlzMttcFDJ;Il;NDUvplHaXNER7#sVsJn;h?^LOMSQVpompnZBeA;LW>7xHy&q(sYwQ!I z`XqZ|x$Aj#R7?MP&S1;Fn=R(OQSM(|7~xt;ZY06KPG<9T!({oKkZtButDZa+p7QGQ zoa4Y-OFo`4Y_vcBtt2!lAQ<2L!eUrpoR{B9k1qL02f>vFdgCjVc~&VLI?c+IHs{6D zIy^JFkoPH_$=qYSYjh9KRN1`dIESuTW2y{+0f*iSo6=?01N3ogQ)QveP8}{m!UA#J z?pPU2k`S%K_b`A35*Pp+7DyqbFMmQWJT4W+gfIechXwl+BKOC_7&Y%nBBR7GCVK11 zU>upZVx?j+jDvaa%On^_H8vzjhH>mInkJSqFs{73eg%g^(9KR6wg3kxf}+TJ1hq#H zdq>#K4H73tC+&)dQl;V;2!U~uj@W?6fshHJIdCEj%^3g@37Ik$V*mk630fEcOp)3c z_8uO=l)Q+?I3%ILXrqlbIyg#W8|~yMizOmN+SMT_!L_Vfxn!NZ@Q02;t(YHBShNV#!JZ5w0DN#My62 z3Y+K27djE5Y@!e&SP}}~BejrZD@Y;if2XwPh+;aSNK88k0O-4zOd1)NAeKTdF0f!n mTpF{QBn<;@E;wE&a?oNnU-{_D^Afx}#J23o zE0QYit<-|O4{C-odPE-f0-g1(Q5$l$Xz!^dHIosi^V&uEv2WJ336yu-p47QFQ0=Cf z&J(JJ_W6~y%}Xxl!h2k5+36S4RQYp^5`C&xu>IC+DsK_<^KvNBg(0)i&Y z=-W&EC~k;7;#)Pe{Ek&AAWU1jBENlVN@ezX_EU0(*WNm8TaZbH&V@ZcuG*ZeSma|? z>=jwR@loaplfS;!IEk)m8V>-@!4IPk&f4Jog<~aoIplPmd4J07&9eTJyeucT+xAjQ z#OIErMT+mlcFwO|*_`Zt+tne_D%D0BeJISz(Imv-viY!cA@94ngIreC$X?^sb$9dD ztDYU}vmK7lPmrBH8%&tuIj>(NNf5JLGSQ}I9;L+<|cIQQ| z+%(4QaCK*m>W`csj>KNc`q?Vnzpt-Wi>!t_pS!nTTK(+3dW68MihlB)9&5RHcX_sa z^4u${+U_fV)m6BRf(O$}rR%jm-S6!~avCB`BhPk-&a|fj*W9;i+dHC*cwHn%+}cu@ z84MK{Yv(UD8b{H>LOG-Ic;b$AV4jU(gVqa^q~(^&#V< z&EF@jarHD3D7GCv-M{wb+RT_y$}SB$@H#avVmo7@5)ppJR7$?U$dA52wzXk3}vTK35Gly^sC^S$3{w+H{#*20m5?o=q{62B0AB=ZmE zKmq^+^Z|iE9Cee?z)Us{QX9F}Vi@xRHPZ&WEOpJY znwVwQW~xl?3bEM^FvNdXfp37n@y^Wv1ZV}C#tDbBEhbWnxwdNE+z1w>Oo!-i@FI|sM9PVnz_J&Y6W^&sJe84j6IF7kVHsAIebY_ zpi~K97(n4RA~Oy@41gd6;L8DZtj*vgQcnV4oUX+a;46Y60hss{@A6Yf0a*BH7v{G^ z0wCbnP6;58KH~6|Qn`f2^h8RIGFc>1}NBW#g>O&X>4Lt^7AwG_%=OF^7GYG;IgAh35JQQLU zf(lU5@Xes)`0%8J`Zc_scVdi3l@Dq>xoQ#7o!)hE6Fe<@O zlwm)P=_g|R#k6L_?gI${HeR6Ke*z`wSs9;95U}Ba^c182c~7O>FKCxU&RMkz;Clr{ y(KCqyd{3E7N&i+p&gRak-$(50ENdO0eFc9Y~T))t03WWVas zvR^9hJhS_;^`m#fxCF2HATM7%DZUe|%}sy&RPuTI%k6Z9~DK zn;ECAy%goIqWdx5J^}i)`RW#}TIeM$wLC8Wb9e4kAk9+O|H zYp4jGIy!BdbJwc+j@p@S(lVlLv=8eZHctxhYpj~?oCtm25&SyxW7h-Oq@u!SV=0es zaviUma~L+`?t{*b?p3JjRjL6n13obvE-t=wyzfNM#J~{c(y1FfGa0ffD<*aGkkY5g z&O{o&rgQ7kieC4G@yT)Nq=Ibbyt|PmfjYnTC466H3?It|>!U{0U zO+PlrzrjQ`5G^-NzVBxorxs{EmFG5fo$PnVi*mxRxzyb#w!1Pi()yrgEw2!9^lR`= z{jO=n^TE)t1vMg8;qr z#a)GWT(g6@3;)oxAO+SHJa|w0sqjs!R(E44S>-Q`lmtCO14nKDV1}3;TR|12ZkNfW zqSzFDB#9GKAs7GweZYY*4Q=j(wdQ;JP9r>Y*5q{b+7*`R0ont-z%#o(K z?UZYT*ErEMu>fR*e+|&^QkMa|*oCG!?Yh<2f`tK0QBp#p9KbLtPW4!24lvUI2tom- zl&XpFn4BA(lnEegqOSm8%93Mci2%Zx$H%TUr?HfuX9Xb+N;(Wf7#Tw#VnwsXz$l9(8s;D*41x43{Crla z4-phIG#Ny=@GPR9hr%op4@JphP!2-ku|V=5EErN6ZVhCiWEWWM*{bzoSR5|NRtyHQ z|4ygpVJP`5#zALz%73pK$cD*8HiD5XWdD!VY>ez62PE&EV|b6~ghCF68a9C-VxhP> xZM6z-vRVI&>$}^>+cq;LVL73{{!4F$a{Tp6&i%kFk delta 2116 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 delta 2109 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 diff --git a/benchmarks/benchmark-plots/plot-average-throughput.pdf b/benchmarks/benchmark-plots/plot-average-throughput.pdf index fdb328a2ee861c7d814073afb06f1e31d33d9afb..e9a7164b826819f79781b043c27329e25fcc9004 100644 GIT binary patch delta 1962 zcmZWpeKb^g7;c!pMre0vQ(4!?ux&E;&i$IZ$x`{+wun6{j-+Xr2{X(LE7CB#ijFq9 zDJkvNmMoH*Ime1>w`8|PVy!+FD@lV|AtluA6@9q({`LOe^Zb7A^FHtU+$?E+cqz$J z2h{j2bemIIzh0ka`g>MalFmBD9M=>nydGrQRJ-=insKGiQ!8vcbg`OvSnA|+Ha}>2 zQA6#ps(-Xg(J#hQNh7$#^HBY+dja3`=CT03@Xgl68DX_vvwzRIP%v^K4M-_by$&Xu#AsxDha1uar_WL)3)x%BM()Q0Cr zQQz-+ti{1a9q}t0G^S-;j@>7e=hw|_NUU*@#C)V|t5~Fa@~EQRa{tYABv-krXH;ns z{7=YUMU$VML;3lO$0b)5Cf-l4ls`U&aiY`EPv?a5q)OdosluOm@@Yk`vaHa4K2;eHjO^}t;*lO^4AY^&P#Z~ z>Z+VC@JKPG{s}TS}2*6hWd?iN< ze=>VUm^2=M2>=BAs8nRAQUW00i~jqlww5B2`M(ToKQ&drR4~ai6aCEIRX-f5P_2z#4~_! zG6phJGYW%{KuCKKBruF>omK=EGH{Rp!f7}Vf`ydOQ|^Kg{syOh+c8LKMJGe4hta#E zP>ha20YOl6m|6seU^;0KMyaiMAE%}cun=ZkMqqF%kisD-M3)srgfN3N3WD^}fhYno zaTqF4Phmq9L2+g$7zi^|z+eG`42Iy0kzhE%kRJ!%-c`R@I1r~=rjx;iZ-MV{1VY(p z{ChV#AvkU=T28=NYEX!wG=h}=LV`I@LLgu~NWeIKOq9RC_heNmLZy*n1;^PL;QLDx uDDx5k-%l=A0h8wTmW5F!r6^E;0m_U@RVY`XdhJDOb1?yj$8-1b;QSA&EtN?C delta 2179 zcmZWpdss|q7&nt{gJj2U*wpE!2i1J%ehy0MqBbhSZrEj|j+)RgO^ITPlr3F!QVDI* zW!ZAsaVgh4R6Hex2eGY|)rCnZ0o+;0+=6rv>@B94T^ZtIn^L}4xXqN00D^LaA zQal0UFZa!kS!9wR$bxPL=MZRBN$;YGhb`tDdv42?tQZ{B-+zDQ;yUMdP{#YQmy;K| z#ba|d;8(RCDEAK2laq&aKhoBDQT#?u_lX$#+77cSs8rpDEFF3%-fOKgOD zS1%9JR5+zo0rhsft#?z?(~ONiMDH_GwFMjzsr9B6lB@0)CHMQaAj)R1&TD>6Y^m6> z#^{fhy4^$JJq|k~vt~la%?gY6CHg&rVj6ZjWlHBcJv4aiRyeJ%?OxOJ5L5Gka5t&m zlqjp3hbe`IWUXH}@!-b$n=5YSI(Xj8Fu8S%OfT;6&bkzPF#XIf@8HDhv<7D4W>v@u z{h!2{^_@O{<`f$Kv#ZK`pWdJ}v3gN{oKd)=b=?&A?5pQD&T2Gyw)fTw`O9C-rwcL; zMFpgYjz%o$ZIbr4byw(TTDK!@40)heD#?0q21$y zG$%c08f?e7;Y1(dfhG%hu$%8jg?e8EAKny(8}{ zyc+f{penC=VZ)0vk(n(8PxE(G9oRl&yNBk(kuKl9pW6?%7Ofg=ZS-#_tD^D61~X_Q zn-?a_m*$k~_rnbN-Hf|sGTTb1D?bc|s|O6-FNeQ@vnFMBq5I5v5y ze8?rzu8dc-Nzae33%ZAPJI{G?HnzBtozuTAhh=}Fp}3O&vj4OAAyXJ5TO zu)cYMapw)6$|7N~bArb8{I=mP*KaZz_er9+U;7q4njJFPHNUZV@bJxtbL&5zU=m7) zG?$z#R1Rj*JKk6RDlcm~lQ)?A;>F3_(AcQZjFTqoE+?sL9__H)(O7_8zta`xaL>Ok zAo)u7+ovaPx2T@EZ0<;TTTx_5x4bEvFUVHDbbl7znw(fG@5S$?M##c7W$hE&WEUGm zOhibeQo#gm)JF2P;UXA;0Hh5l7+05!jhZ4P0oy#m+5<(2r6AxG5Pnfwnj~uX$`Q>> z`oYy@&;ELSalJs@;LwoZU^6Z=$K1(%Trk+Uc0=)+b!!bmRzNUx0jaz@CNE#C$8NWn zp`JE9TELoEirJ$U>)9~N$*i@d7fV25HrDbYd(TR&_JL9ateK5i-EIYQNLw*G%jPe( z*;LG0*~SYf^$}aSaFQgFiDn{15=Ispri2I_VlC`l$BAGVgCq(_5(%kg_QnP(EeJws zPLq@?%3>f4e2O;&MTS8b{3+WM6wE-FR=ZRrQ9>9xQdfp47_N?e%C^WM3?GT3AdDD^ zq9KeNiMBBc4nPejE-qR})z2OE1Ol4vaEdnqIE>*aMzeCsG$9VyREb1|zy!xYd!PtN zG#tP%O>p1St>;4@aOR zj|{=BpU!Ur1f|_$?x_A>K|lh2Gl@|nz|V06!W&EhgeQc8wO2%Y{#$cEA)|L|*nbMs z-aH*3h4Ti}FvYW<#t_~R8YguX!wB*@L8T%{wt-QI<~h%UBui!67zhWDL@Jjnxrb}` m)$oZ}$K7hqOzsKcZgr$GNTG~TFzdLd5+x~-ot>w@m*`*DZP|PP diff --git a/benchmarks/benchmark-plots/plot-dsa-throughput-scaling.pdf b/benchmarks/benchmark-plots/plot-dsa-throughput-scaling.pdf index 4e06941961b2d97e9289e7bdd9daa45814733efe..482a432caa0b6d3ebdb8dc01f112d5a091df0080 100644 GIT binary patch delta 2286 zcmZuxYg7~07H%LQ4hX`48bLFlpp;1FolL<<0UuOR2)9Zo7K8){V&X~yrBE8HqAXdr zP>y1duC`cwK=pz~TGZkTYQe@d?Fizc=`M0I#=iP1`YW(!u%Z+!Hd<#L``E8bV*S!b}J{+I>tj%;t@V5Vj@^d)$4XpdUZTS=Vd?VzS z{HUpO)a1Ln%Kmo4?GJDAp9(L&ai}_D&8zXhywS9{@D9rG%CLH>AeyZGL;cI}n@r^^oPxf@=1|Ln2IqeYbR z)KKvH+~xyz$&XIb6|&CuhmYSqrfY5u{M$BzPC5Due#BYZkHB?C^lE6XSXC5G|b-eWqraj zSxrx`+uqoX+Y3i8k3Oy2;WX`Taos!iJu{!Yf3e^8y&b8wTOH#*eRFkye8BJOmafQU z{nAsLCEbltHYdL7yZSFrWzqewi~c=A9;*J4kQ+;)ZuYGKr;iH~GQA!isXB5oaQ$ff z&7M@=KgyjNYxqBH(MNs%(`PBw#?r-=BH29Va6`yr;lka@)o$K;scsE_$Au6)eMxoZ zrG>|nV~G6yt+MpPp_bDNzJGYDIGS+YeWUkz@pW_RclDhuOE0KzRQ>K)Cn*|&R2rq; zpi^xEX?!0 zrUaClVjW$uokG#l=O20NC4YFnf3WMUBB!LK>xJooPfYZ4`O(0n(2WJ29Tl#FODi_J zDNZyDF{01Q^yj7t^XvIU1ur=-0zZAUcb_-B)+y7=Ij-_j{pO^``*GKT|9Qu#8C{X0 z^4mG1NEv!(&b9)i-{#~T(O#N{am9DGzs_ix5tnGG@{BIr9A!g|E~BDS;4+GJGhN!ZWpzGAX?y9T^Y@h26ngwUUx1O-MbS}mN=e%Ih?fEm0FrW8Q+RPKDsIycE zMImCnDodq7#42@angOEO#OnwM5{5cJ7)Byu9b(QG8tsf$G%i6g4Z z9K~@0BrNviQ6P6QZe%&F3(+9ZSb#D#%@+7_j^W}Y3|sk2I4Q=(Nv&$8;!u<|dn^Y; z{z6;!3#|3`HKOGIIgw`NPTeiV8Ey_`SlLr?5*p_!At(+GL#1Q9#>qBdILW#`^+1fG zIPx$F!}j(i9AoXq)ErK*1NU-HVr~9kIF_GX1Zr)ob^YBFfjuKKT<=91G7^fJDL^%htW^wGNXep;?iowSP8z(8I3G0oUs)Q!F zvp`c6hnSZ9IbDA{C_$whoP>RKCUeBHbQp?F9(99mlR87CgMxz*af~`gg|HJUmTR>J o_Td?O4?Iq&(J~pNH*C@wvUREy2tx^qfP8(IuUi5A58F@tXaE2J delta 2289 zcmZWqd0bOh7A7DXGYHBHO90_Y34*A}%X=?*k>zKpqJTn;Raq3-LI5Gb5Y(a4uvCE` z)LL$55UhY~0u>SBs3VJ^2ofm*mchCpB91U+a2ar9T9$tcP&W}a3w8PxzpF*`a`3Zp1SADjQ7X&{L)#r!SkmT4kD8s zCQe6~%&bEfUcX7sKR&p)%OUfN12%P6Wo~cXY>S6pHwNF|z143xE~;ZN_C>hm)0ctz zt<4@XHMdU^vw4?ENBu{mWw+aFf&(14wEQ`^dav^3^%KFEN1q<&XU#QB3EFY3)NbRH z@@7rG7yFHU{=kkfc1{@5U~yV9sHbu56*;@4Y`H=^62E#cIOvsmfyO^mm?oGkzq;Uq zTLH&N^MI~gyntQ3cyaA#u^2-#$&3y5p$f>$JWfo~hGfvwl2!(W?E(liE@Tn_khPVtOEXP5-lfXWKS) ze{oqEV8Ju4s?LzO7aUjh7=9+HMMC{fc-!A*8Evk)4x$aR`w}&w`v%(p_sWLW0hZBN zO$1<`^m`W9TA~_Y(W@6UB~xhjw-FBs?}57wbk}j)g?^1COU?xy-Oc$(WA6Q_A~5q* zl1WDSPmz*wD~`(x4UT$k#hX(jr2QQO$}*E`bMeK?A%pH~haXus6n&fLb|s|gTyah> z7s$r{W=G#luX0TvwVtMZ2@)3Pwls%Yd+b8S7A`K!_&ob=G&WHrdUh9?(D!S!5sdaX zeudk0G85w(ZjawCbg|D5cR5!eoseg|IXlAex>~T)Bkp9bAZNv@oJE$(mE>Movl7qT zCLkZB3SDa_txql-#*82v6GE!>toa0DXWNvugi)QL;GVZpZ7cFUHrjE zm^*PYFxlX^W8}M2suAV%>Yd55w*FH8Ze@9=1z?D!k%@ev$1%n$5OwLr0uBfwz2H`q}p?+8zhny<*pUKKOE?@Ox4FD{~dIXHDIv zo@JNTFcxe>+ye?YX7>F(Q)BC@5`2o&cF`{}t(!8u^)h0o7ui-|;N#Kt9gX2UkwLn{ zkBKq+>Dh9}Y-PE!sc2|rZTaab_rQX#A?RDtyL_wP7_I$AyLZVR@Bft)obcI@mp`6T z?>Ti;o#*DU3DuTfzSR8gt$G>-tSmh5y(w7W$oSrgQGDKdGv034%-3RG?(QmEIZ#;}J z%S+vKrrvZ(45`ji7ln}RA(M#ESe+Gds&KVYM6~0X&LLc8c{Xbi1aN99B>k24grD>IN}&d zv;y!6!1<5?UF&GqHsxK46B zQd=Rv@hE+2V5qhTwBz@)#`x4~K1On>i=D?4QqS)^497?v9(B1o0pfgpf(Ku$LXx)bp={@r62}^SMGD9v}ae=kt5se1g<<7LYpCB|uRfo&ck&YS;zY z_6I42JS-+oEN8g60nYZAWHG?0jupvd3NYIZ-qI+l8)h2M!-J8i2$L%g$;D9&l#3BK LgU#OP@5T5(5NI1< diff --git a/benchmarks/benchmark-plotters/plot-perf-peakthroughput-bar.py b/benchmarks/benchmark-plotters/plot-perf-peakthroughput-bar.py index df7352d..bef5d6a 100644 --- a/benchmarks/benchmark-plotters/plot-perf-peakthroughput-bar.py +++ b/benchmarks/benchmark-plotters/plot-perf-peakthroughput-bar.py @@ -68,12 +68,13 @@ def plot_bar(table,node_config,display_x,display_y): sns.barplot(x=x_label, y=y_label, data=table, palette="mako", errorbar="sd") - plt.ylim(0, 75) + plt.ylim(0, 70) + plt.yticks([15,30,45,60,65]) plt.xlabel(display_x) plt.ylabel(display_y) plt.savefig(os.path.join(output_path, f"plot-{node_config}-throughput.pdf"), bbox_inches='tight') - plt.show() + def PlotAndrePeakResults(): data_peakbench_andre = [ @@ -147,10 +148,11 @@ if __name__ == "__main__": ] scaling_df = pd.DataFrame(data_scaling) - sns.lineplot(x=x_dsacount, y=y_scaling, data=scaling_df, marker='o', linestyle='-', color='b', markersize=8) - + plt.figure(figsize=(2, 3)) + fig = sns.lineplot(x=x_dsacount, y=y_scaling, data=scaling_df, marker='o', linestyle='-', color='b', markersize=8) + plt.xticks([1,2,4,8]) + plt.yticks([0.25,0.5,0.75,1.0]) plt.xlim(0,10) - plt.ylim(0,1.25) + plt.ylim(0.2,1.05) plt.savefig(os.path.join(output_path, f"plot-dsa-throughput-scaling.pdf"), bbox_inches='tight') - plt.show() diff --git a/thesis/images/plot-1dsa-throughput.pdf b/thesis/images/plot-1dsa-throughput.pdf index 52236111824fb99660a6dbdb6a35aa9845a9526c..c0b0145945865a9bdc0f165f70d629a966e53e8b 100644 GIT binary patch delta 1943 zcmZuweKb^Q7~dhK%fupzow{UvY-;X%zvhl`*wWf{kn(YSbe0$)F-^nDNkb{CNb8am zPHQ5zO&E4ht(~LIO4~ZMX=xIbqa|{5%16tt-8*tt=Jx*cKF{y`-sj`@K2PVaKO^dB zjy%ZQ&k7i;W`f`7FSElA<&Lg%+-tj{$l>d>>a=P&3)VmC{?`m|Q`}?;x282x@uo*T zR=+3T)%n~%A>kb=pSJ1FO3OgSr6QYj`|fasiXQQy%iD=y2gNc^w@jb*w%adNZupjr zgd-NKtQ29DiT8&Bynp(x8P^=Jgp!%t@QA5bZ`{Q&XL=vnn#f3UeFr53U^ zH2yB~Lg^mwyBXef2I*dn5l%B^?J>n3FO(i=K?ior6#@wj6T!nlmD@90WIyu_9?6#n zXO5VW5?}uh@hAW4-)!wWaL(R3)o)jyD5q_xM7{6LlzMttcFDJ;Il;NDUvplHaXNER7#sVsJn;h?^LOMSQVpompnZBeA;LW>7xHy&q(sYwQ!I z`XqZ|x$Aj#R7?MP&S1;Fn=R(OQSM(|7~xt;ZY06KPG<9T!({oKkZtButDZa+p7QGQ zoa4Y-OFo`4Y_vcBtt2!lAQ<2L!eUrpoR{B9k1qL02f>vFdgCjVc~&VLI?c+IHs{6D zIy^JFkoPH_$=qYSYjh9KRN1`dIESuTW2y{+0f*iSo6=?01N3ogQ)QveP8}{m!UA#J z?pPU2k`S%K_b`A35*Pp+7DyqbFMmQWJT4W+gfIechXwl+BKOC_7&Y%nBBR7GCVK11 zU>upZVx?j+jDvaa%On^_H8vzjhH>mInkJSqFs{73eg%g^(9KR6wg3kxf}+TJ1hq#H zdq>#K4H73tC+&)dQl;V;2!U~uj@W?6fshHJIdCEj%^3g@37Ik$V*mk630fEcOp)3c z_8uO=l)Q+?I3%ILXrqlbIyg#W8|~yMizOmN+SMT_!L_Vfxn!NZ@Q02;t(YHBShNV#!JZ5w0DN#My62 z3Y+K27djE5Y@!e&SP}}~BejrZD@Y;if2XwPh+;aSNK88k0O-4zOd1)NAeKTdF0f!n mTpF{QBn<;@E;wE&a?oNnU-{_D^Afx}#J23o zE0QYit<-|O4{C-odPE-f0-g1(Q5$l$Xz!^dHIosi^V&uEv2WJ336yu-p47QFQ0=Cf z&J(JJ_W6~y%}Xxl!h2k5+36S4RQYp^5`C&xu>IC+DsK_<^KvNBg(0)i&Y z=-W&EC~k;7;#)Pe{Ek&AAWU1jBENlVN@ezX_EU0(*WNm8TaZbH&V@ZcuG*ZeSma|? z>=jwR@loaplfS;!IEk)m8V>-@!4IPk&f4Jog<~aoIplPmd4J07&9eTJyeucT+xAjQ z#OIErMT+mlcFwO|*_`Zt+tne_D%D0BeJISz(Imv-viY!cA@94ngIreC$X?^sb$9dD ztDYU}vmK7lPmrBH8%&tuIj>(NNf5JLGSQ}I9;L+<|cIQQ| z+%(4QaCK*m>W`csj>KNc`q?Vnzpt-Wi>!t_pS!nTTK(+3dW68MihlB)9&5RHcX_sa z^4u${+U_fV)m6BRf(O$}rR%jm-S6!~avCB`BhPk-&a|fj*W9;i+dHC*cwHn%+}cu@ z84MK{Yv(UD8b{H>LOG-Ic;b$AV4jU(gVqa^q~(^&#V< z&EF@jarHD3D7GCv-M{wb+RT_y$}SB$@H#avVmo7@5)ppJR7$?U$dA52wzXk3}vTK35Gly^sC^S$3{w+H{#*20m5?o=q{62B0AB=ZmE zKmq^+^Z|iE9Cee?z)Us{QX9F}Vi@xRHPZ&WEOpJY znwVwQW~xl?3bEM^FvNdXfp37n@y^Wv1ZV}C#tDbBEhbWnxwdNE+z1w>Oo!-i@FI|sM9PVnz_J&Y6W^&sJe84j6IF7kVHsAIebY_ zpi~K97(n4RA~Oy@41gd6;L8DZtj*vgQcnV4oUX+a;46Y60hss{@A6Yf0a*BH7v{G^ z0wCbnP6;58KH~6|Qn`f2^h8RIGFc>1}NBW#g>O&X>4Lt^7AwG_%=OF^7GYG;IgAh35JQQLU zf(lU5@Xes)`0%8J`Zc_scVdi3l@Dq>xoQ#7o!)hE6Fe<@O zlwm)P=_g|R#k6L_?gI${HeR6Ke*z`wSs9;95U}Ba^c182c~7O>FKCxU&RMkz;Clr{ y(KCqyd{3E7N&i+p&gRak-$(50ENdO0eFc9Y~T))t03WWVas zvR^9hJhS_;^`m#fxCF2HATM7%DZUe|%}sy&RPuTI%k6Z9~DK zn;ECAy%goIqWdx5J^}i)`RW#}TIeM$wLC8Wb9e4kAk9+O|H zYp4jGIy!BdbJwc+j@p@S(lVlLv=8eZHctxhYpj~?oCtm25&SyxW7h-Oq@u!SV=0es zaviUma~L+`?t{*b?p3JjRjL6n13obvE-t=wyzfNM#J~{c(y1FfGa0ffD<*aGkkY5g z&O{o&rgQ7kieC4G@yT)Nq=Ibbyt|PmfjYnTC466H3?It|>!U{0U zO+PlrzrjQ`5G^-NzVBxorxs{EmFG5fo$PnVi*mxRxzyb#w!1Pi()yrgEw2!9^lR`= z{jO=n^TE)t1vMg8;qr z#a)GWT(g6@3;)oxAO+SHJa|w0sqjs!R(E44S>-Q`lmtCO14nKDV1}3;TR|12ZkNfW zqSzFDB#9GKAs7GweZYY*4Q=j(wdQ;JP9r>Y*5q{b+7*`R0ont-z%#o(K z?UZYT*ErEMu>fR*e+|&^QkMa|*oCG!?Yh<2f`tK0QBp#p9KbLtPW4!24lvUI2tom- zl&XpFn4BA(lnEegqOSm8%93Mci2%Zx$H%TUr?HfuX9Xb+N;(Wf7#Tw#VnwsXz$l9(8s;D*41x43{Crla z4-phIG#Ny=@GPR9hr%op4@JphP!2-ku|V=5EErN6ZVhCiWEWWM*{bzoSR5|NRtyHQ z|4ygpVJP`5#zALz%73pK$cD*8HiD5XWdD!VY>ez62PE&EV|b6~ghCF68a9C-VxhP> xZM6z-vRVI&>$}^>+cq;LVL73{{!4F$a{Tp6&i%kFk delta 2116 zcmZuxdpJ~S95${`Q*D=VNk)!Ha%s+)bC*kPQKHan*_1+!XfVu-A*rz{k7~DzLwDLO zOG?O;$CG4eH*K*MTed+$QBRf_V!Ld6Mm<}cJ%9ba_j$kH_x>*L83<_(E1_75Kp!#3 zd+PP!;^#J8`@q#z2lfA4#$ChyR;|}j!oC@oS(~xDzODPE_d|{E$->NCHpAUHeTNHP zoL^hn_O4<-V`5cYb@Dw*3gNU=3`=g zV7`IMH7MI$(^~jA^{J_urA6oQni~qw`2nxu1BGicCL}>ivMir1y`2-9F8|u2N4HY7 z^73>W@(OP8_Go3P@A-oCEncP>-)GmHNDY;&pMJs2za{E)OT=7@X?2J1G=@O_9g#(| zG7sIdNs*#WIU)K9)hm0XXXeC1nYKk&eM_veJP$iBsTOBQlIqH?HLjG;q;|_p6-C58 zWvrWhKuTJ!d8{9p`eA9g{j{SMLA#ApRo8~oP03$o?C|~2TK4k}dFkC_t6~LPo}DWp ze6WQgVV<#S1E+7E*DKB0ZM7r$KJp3sm)lsMxh5)~n!MNEZFp+$-fVekqe?nEr(3h< zo$JPf%k?jEUa(_TP|YwaP(0M$|5(vcqN-kGzSL;e>wU+bSc532dIk`DS zWN|NDy+WY3eK3V(Tsox%d(v#ENVY3(YECwi-gymG|^vzCNTgS1EeuUhacE>(M%6bt`&>2NCIzTx`p zWhol{OS}-rkY571Nt^J-2Aci!6o~!HQsvCg-Q27K_ItBadUe^M1o&qm&LaFq* zx)`Z^tUqX?i-XiOgV{@97!!d0C7|x~yu37am)8;YytMTT-P5z~7;x^elyy#Z-#OV# zJamLRfAPdkV02hiZb*2T;pVjf1YG5pH|QKY!O^2ouAQ=Brkq9HHwayP-U&PSa%vvDwGRj*gRq6mIxVu zVF0z*cF{yOFBX6x1mH;kMjHwgg* z{CJW92&9eJJXwT9NaOrZc!C%};E!=UfFK{EB%y?cQRNeduUIUM>T^u71yKk=VFYpn z`Ex;V?mWQVoh^*nEDqbsPLv44*&u-66y*eNfk|49_5)%7_Gkb>e2`8&9)mFk2E!;5 zL;r_|yh@{8&`L046!t{W?1V=HF7(>)z2+ZsZf-uD( z1i{FMLd-%?KBgEyH4sIaT|n`%sKnYrp?C2*eQPU5p?<@f4qlIH=w8 zv6pcKW>kWs7^D3-hB7gNv3?-I$HofO_MbpW+D2m^raL%3A?;-Ji+Rc zSPCO_C=8&L0ga-ds8x}6$}3c41W~65Vk8qld>}Y>qf9N??w>vPo9~|Uo$uarhhryq zHjxZvSYVJ1w7hLD{3X+DEz&IA^@%94nArM@kETjfmAgDw_-XX0F7s0FgcJ|{_PX!X z&>g-`d!z#ql)u?t*>lAC&C{sE0{R9!~F2`FB_!+&m$TSct$l?q?!I4!hJGb z+amYL`FoAacMbi=pwf6*z2mZ1y{93@{%E^tr4><9e{CYiZ9I^ZF>c=$dfOuKtiN1p zHZB@H==bzs$LOnpk!i*5EBAJE&M7o))$G%^_NGwv>Qlzq4_e$t*~ft`@Hkofm#wRQW4eWbL1&R$n`JaEYS7>~)%##x$}!SadJQDUm;>+0}Kb zTI5<&T(xoAP-mWMW^&J|8gK9CNkcz0OzD2Q^_3dyS~YiK*8JIr-v_WH$>MamOcJwO zAEm@5u^<=#0ewI~sA`4D%nDVhjeXkt>5X78MD?%F{2v!El_52vJTIg! zd;K8(>6IIP@?hGBiWYH4np-$`JbFc`-p6w8nC!y^?&f6dio{4|Rdt=PHuZ73be5L~ zv~cxlxc^#3$7aLwOQ{D>q^gl`BG!7OZwOi!sCx9&H};v3ZG6sv&fZ|tky_p@>YlUA zb9dE5VDG0l-g=1}H5?rpl`_Lj3<`*(1jh_Ro%-g{25CIMb+?LI>>_h@Gq>osK(1QD zlB`AB$d8&Yg(u$i&-R+@oZ@*#ucOJ-N$6rC9k6LDOl!yrdf(vMpP3LuwysG)Qt#}^ zQQv=0FRj|DT5UrAv6it^OQgPA?a25-i%qMXm)7TevMR}qjpw(Ndk$p$m6DIv@ zt2K*GWhRUpjLEhp4Jx1Oc|+DVUcHoCll9e&(umFipZP&$4o}*vX6;W%d;jXjdfBeA z+W6K=yI!r`>Ba4pN3!?XT$QZeR`!0+%Iq!V;QHLR_*i}A&GR3ERjB~aTw({XC?=`91V3|R+-<FlM{RH%$-p{Y6)W>{1nW**0m$Zi=&ttFkSTRn0l;eqXgj=Jw+J>Uj%` zEveVGDtV=eHNItWlS%2Ywv|UxO7Gho&p&?m*S4#e>l^vfQ50F&BKGOJ!#Uel@Zw~b zoQ&@o?>=nP!z~ggkF-3ynRfNS$Lr_HpiY&s?$Mgki@inB58I!QT6l`g98UXqKW@tK z>b_In!t*~p7_mM7FabV4^LibzwZx*;<^IBw3i0MTE%acQZ+(X-X-oU+hwra+r=DB>lK^mu#!foAegye&A!{kG61vU1jwmG=s$)+HPb zJ^%vYLJ^z5A^C&ZBMVqK#nLl$fMLuF^e6_EwDR)yvY$F-v6t@s!Pa`;;YJlsBTL?7 z-jrx=sF9wfYiX~s6$}%G=J*B*RsA;t5O9Tmxoy_3M>)#W1zis1q|1@tS`@>g>gdZx zT@l6QE}%Mfou~mWhl02jlvJN1|HMsUQOy8Heq0}-nFbu{5zxm%<@E;PO7nTq0Wkq$ zHZLF~C|Cku7(m$>*=ewO5dZ`s051xVA252WB2th57^lne1bERQI{}#Z5{LRl2LrI+ z%PqohYXE?NpKlTXffNy&Ckc)UpmBvAbiQOqIDo*PRmhAc=tVlZpd~0rq47L3|Kn zVhY(ac(9_ZnHc&%Je)3a8jrqUr~;#GEew=lP(b-xn2-d6CLkD6KmjUX@*tQ|21uX` z9t8857)JL_p^lvL0E7e}ZL{M1>kG)|^O+co)2*4oL!p^sKt3U0U@#=08#t9qDnb~A zW||Me0%96b!9!rCGYG;IgAfGcdnm*#1m$Do%x;1x%5(w6r>jFsrpNV$ZiazFKl9F{+Qd;)Ta;)a=`_Fxz-}yc7{XM_;c^*ghMU)XV z`RZGV3~#GTcSCOPw~tL3xRkTgYlg*AnxDOuS*~qeK(Cke^%p^!@vUl&|32}WTR|+;k(YQ!W_H%gWgYJv)pFN2(^loHqSM2Z0|Y*UigSXe#mkGoO*Xsi z<^Qv_6R-T?gts+`a|ofEF25sVhEw30Ab44}Uu3_DvggS$MY7ensOVJDEOnx*6&%QtM7Vk9<;!1Pu1F8+tUt+Q#YOWyl*i*%Xi`2b7NJT z<u>#a0pYK6?@e-V?8HmhyKJ3$|(#Pme$yAoTT+jCrt#|J1j+>l!y3;4$ zvprZpnSZgbNA}&~+THPA{1Tw|n5$aXaQ|kbxF`FO2azpFX}Iyozl>X$>nW9_T*;R^ zC98^#R-(Z#dE1t_0e^9D&*cgQV5V2zc6B`v{U{4B6`y{8 zL>QYFh6g?14^1hkXW8#c${AHhm|SxC(#PcdQzi{s`0&t__7iPhwH+$B{F7c_`w#m{5GliugAy?F0 zU&-5=wYAK%7BSqgp%{B}OY_ywGfS_!bto$Jd#}yY7Pd9lugg7f*F$)=?Vy*^BllU) z(D1@(&CJ=`@f)T=)fHw_?QhJgR0rSdzEG91&mBc7@XjJc@`~kFvhmkdyL4W+?k^YJ z+-`C$LRX@_=i9(MDbp3~c-7ZrTT(f*w?B%3=?X#VKym2zvtBd)np#wyy@W1EjFw2n z0{%urB#IQ$0Rq90A;1Bmu`zvRqfy%>(}8vCOWq&|Z1!59LH5X=E&}bZ@c24>@fC2fBeIC+WTK#36j-vGco zoD?$>127;(7-0aAGL12VSYr%>37Q9QG{S+2`5rUnY_f|H6qtv>#xh_Yn}-_na2`Ur z9>zEn9zeL1e*g^r(3bqaUSWWvlwt&6RE!NsTStmUP!2^jg0m?YS<3mmR&Kb4jdF}l zhS@x11ku1l5tPD1QK}deM<_fFOl^dNz;fePgE=VG1rB$lYJ(UK&ZF3hkrVZKcLpAY zQfo2XFrtPd|1@ea7oiflY>Z+d_kXPBVpIolnELLx@f_Ka8gR_8Jcjd03;+lU2yCVoJS1h6b11WruR{#J2 delta 2109 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 diff --git a/thesis/images/plot-average-throughput.pdf b/thesis/images/plot-average-throughput.pdf index fdb328a2ee861c7d814073afb06f1e31d33d9afb..e9a7164b826819f79781b043c27329e25fcc9004 100644 GIT binary patch delta 1962 zcmZWpeKb^g7;c!pMre0vQ(4!?ux&E;&i$IZ$x`{+wun6{j-+Xr2{X(LE7CB#ijFq9 zDJkvNmMoH*Ime1>w`8|PVy!+FD@lV|AtluA6@9q({`LOe^Zb7A^FHtU+$?E+cqz$J z2h{j2bemIIzh0ka`g>MalFmBD9M=>nydGrQRJ-=insKGiQ!8vcbg`OvSnA|+Ha}>2 zQA6#ps(-Xg(J#hQNh7$#^HBY+dja3`=CT03@Xgl68DX_vvwzRIP%v^K4M-_by$&Xu#AsxDha1uar_WL)3)x%BM()Q0Cr zQQz-+ti{1a9q}t0G^S-;j@>7e=hw|_NUU*@#C)V|t5~Fa@~EQRa{tYABv-krXH;ns z{7=YUMU$VML;3lO$0b)5Cf-l4ls`U&aiY`EPv?a5q)OdosluOm@@Yk`vaHa4K2;eHjO^}t;*lO^4AY^&P#Z~ z>Z+VC@JKPG{s}TS}2*6hWd?iN< ze=>VUm^2=M2>=BAs8nRAQUW00i~jqlww5B2`M(ToKQ&drR4~ai6aCEIRX-f5P_2z#4~_! zG6phJGYW%{KuCKKBruF>omK=EGH{Rp!f7}Vf`ydOQ|^Kg{syOh+c8LKMJGe4hta#E zP>ha20YOl6m|6seU^;0KMyaiMAE%}cun=ZkMqqF%kisD-M3)srgfN3N3WD^}fhYno zaTqF4Phmq9L2+g$7zi^|z+eG`42Iy0kzhE%kRJ!%-c`R@I1r~=rjx;iZ-MV{1VY(p z{ChV#AvkU=T28=NYEX!wG=h}=LV`I@LLgu~NWeIKOq9RC_heNmLZy*n1;^PL;QLDx uDDx5k-%l=A0h8wTmW5F!r6^E;0m_U@RVY`XdhJDOb1?yj$8-1b;QSA&EtN?C delta 2179 zcmZWpdss|q7&nt{gJj2U*wpE!2i1J%ehy0MqBbhSZrEj|j+)RgO^ITPlr3F!QVDI* zW!ZAsaVgh4R6Hex2eGY|)rCnZ0o+;0+=6rv>@B94T^ZtIn^L}4xXqN00D^LaA zQal0UFZa!kS!9wR$bxPL=MZRBN$;YGhb`tDdv42?tQZ{B-+zDQ;yUMdP{#YQmy;K| z#ba|d;8(RCDEAK2laq&aKhoBDQT#?u_lX$#+77cSs8rpDEFF3%-fOKgOD zS1%9JR5+zo0rhsft#?z?(~ONiMDH_GwFMjzsr9B6lB@0)CHMQaAj)R1&TD>6Y^m6> z#^{fhy4^$JJq|k~vt~la%?gY6CHg&rVj6ZjWlHBcJv4aiRyeJ%?OxOJ5L5Gka5t&m zlqjp3hbe`IWUXH}@!-b$n=5YSI(Xj8Fu8S%OfT;6&bkzPF#XIf@8HDhv<7D4W>v@u z{h!2{^_@O{<`f$Kv#ZK`pWdJ}v3gN{oKd)=b=?&A?5pQD&T2Gyw)fTw`O9C-rwcL; zMFpgYjz%o$ZIbr4byw(TTDK!@40)heD#?0q21$y zG$%c08f?e7;Y1(dfhG%hu$%8jg?e8EAKny(8}{ zyc+f{penC=VZ)0vk(n(8PxE(G9oRl&yNBk(kuKl9pW6?%7Ofg=ZS-#_tD^D61~X_Q zn-?a_m*$k~_rnbN-Hf|sGTTb1D?bc|s|O6-FNeQ@vnFMBq5I5v5y ze8?rzu8dc-Nzae33%ZAPJI{G?HnzBtozuTAhh=}Fp}3O&vj4OAAyXJ5TO zu)cYMapw)6$|7N~bArb8{I=mP*KaZz_er9+U;7q4njJFPHNUZV@bJxtbL&5zU=m7) zG?$z#R1Rj*JKk6RDlcm~lQ)?A;>F3_(AcQZjFTqoE+?sL9__H)(O7_8zta`xaL>Ok zAo)u7+ovaPx2T@EZ0<;TTTx_5x4bEvFUVHDbbl7znw(fG@5S$?M##c7W$hE&WEUGm zOhibeQo#gm)JF2P;UXA;0Hh5l7+05!jhZ4P0oy#m+5<(2r6AxG5Pnfwnj~uX$`Q>> z`oYy@&;ELSalJs@;LwoZU^6Z=$K1(%Trk+Uc0=)+b!!bmRzNUx0jaz@CNE#C$8NWn zp`JE9TELoEirJ$U>)9~N$*i@d7fV25HrDbYd(TR&_JL9ateK5i-EIYQNLw*G%jPe( z*;LG0*~SYf^$}aSaFQgFiDn{15=Ispri2I_VlC`l$BAGVgCq(_5(%kg_QnP(EeJws zPLq@?%3>f4e2O;&MTS8b{3+WM6wE-FR=ZRrQ9>9xQdfp47_N?e%C^WM3?GT3AdDD^ zq9KeNiMBBc4nPejE-qR})z2OE1Ol4vaEdnqIE>*aMzeCsG$9VyREb1|zy!xYd!PtN zG#tP%O>p1St>;4@aOR zj|{=BpU!Ur1f|_$?x_A>K|lh2Gl@|nz|V06!W&EhgeQc8wO2%Y{#$cEA)|L|*nbMs z-aH*3h4Ti}FvYW<#t_~R8YguX!wB*@L8T%{wt-QI<~h%UBui!67zhWDL@Jjnxrb}` m)$oZ}$K7hqOzsKcZgr$GNTG~TFzdLd5+x~-ot>w@m*`*DZP|PP diff --git a/thesis/images/plot-dsa-throughput-scaling.pdf b/thesis/images/plot-dsa-throughput-scaling.pdf index 4e06941961b2d97e9289e7bdd9daa45814733efe..482a432caa0b6d3ebdb8dc01f112d5a091df0080 100644 GIT binary patch delta 2286 zcmZuxYg7~07H%LQ4hX`48bLFlpp;1FolL<<0UuOR2)9Zo7K8){V&X~yrBE8HqAXdr zP>y1duC`cwK=pz~TGZkTYQe@d?Fizc=`M0I#=iP1`YW(!u%Z+!Hd<#L``E8bV*S!b}J{+I>tj%;t@V5Vj@^d)$4XpdUZTS=Vd?VzS z{HUpO)a1Ln%Kmo4?GJDAp9(L&ai}_D&8zXhywS9{@D9rG%CLH>AeyZGL;cI}n@r^^oPxf@=1|Ln2IqeYbR z)KKvH+~xyz$&XIb6|&CuhmYSqrfY5u{M$BzPC5Due#BYZkHB?C^lE6XSXC5G|b-eWqraj zSxrx`+uqoX+Y3i8k3Oy2;WX`Taos!iJu{!Yf3e^8y&b8wTOH#*eRFkye8BJOmafQU z{nAsLCEbltHYdL7yZSFrWzqewi~c=A9;*J4kQ+;)ZuYGKr;iH~GQA!isXB5oaQ$ff z&7M@=KgyjNYxqBH(MNs%(`PBw#?r-=BH29Va6`yr;lka@)o$K;scsE_$Au6)eMxoZ zrG>|nV~G6yt+MpPp_bDNzJGYDIGS+YeWUkz@pW_RclDhuOE0KzRQ>K)Cn*|&R2rq; zpi^xEX?!0 zrUaClVjW$uokG#l=O20NC4YFnf3WMUBB!LK>xJooPfYZ4`O(0n(2WJ29Tl#FODi_J zDNZyDF{01Q^yj7t^XvIU1ur=-0zZAUcb_-B)+y7=Ij-_j{pO^``*GKT|9Qu#8C{X0 z^4mG1NEv!(&b9)i-{#~T(O#N{am9DGzs_ix5tnGG@{BIr9A!g|E~BDS;4+GJGhN!ZWpzGAX?y9T^Y@h26ngwUUx1O-MbS}mN=e%Ih?fEm0FrW8Q+RPKDsIycE zMImCnDodq7#42@angOEO#OnwM5{5cJ7)Byu9b(QG8tsf$G%i6g4Z z9K~@0BrNviQ6P6QZe%&F3(+9ZSb#D#%@+7_j^W}Y3|sk2I4Q=(Nv&$8;!u<|dn^Y; z{z6;!3#|3`HKOGIIgw`NPTeiV8Ey_`SlLr?5*p_!At(+GL#1Q9#>qBdILW#`^+1fG zIPx$F!}j(i9AoXq)ErK*1NU-HVr~9kIF_GX1Zr)ob^YBFfjuKKT<=91G7^fJDL^%htW^wGNXep;?iowSP8z(8I3G0oUs)Q!F zvp`c6hnSZ9IbDA{C_$whoP>RKCUeBHbQp?F9(99mlR87CgMxz*af~`gg|HJUmTR>J o_Td?O4?Iq&(J~pNH*C@wvUREy2tx^qfP8(IuUi5A58F@tXaE2J delta 2289 zcmZWqd0bOh7A7DXGYHBHO90_Y34*A}%X=?*k>zKpqJTn;Raq3-LI5Gb5Y(a4uvCE` z)LL$55UhY~0u>SBs3VJ^2ofm*mchCpB91U+a2ar9T9$tcP&W}a3w8PxzpF*`a`3Zp1SADjQ7X&{L)#r!SkmT4kD8s zCQe6~%&bEfUcX7sKR&p)%OUfN12%P6Wo~cXY>S6pHwNF|z143xE~;ZN_C>hm)0ctz zt<4@XHMdU^vw4?ENBu{mWw+aFf&(14wEQ`^dav^3^%KFEN1q<&XU#QB3EFY3)NbRH z@@7rG7yFHU{=kkfc1{@5U~yV9sHbu56*;@4Y`H=^62E#cIOvsmfyO^mm?oGkzq;Uq zTLH&N^MI~gyntQ3cyaA#u^2-#$&3y5p$f>$JWfo~hGfvwl2!(W?E(liE@Tn_khPVtOEXP5-lfXWKS) ze{oqEV8Ju4s?LzO7aUjh7=9+HMMC{fc-!A*8Evk)4x$aR`w}&w`v%(p_sWLW0hZBN zO$1<`^m`W9TA~_Y(W@6UB~xhjw-FBs?}57wbk}j)g?^1COU?xy-Oc$(WA6Q_A~5q* zl1WDSPmz*wD~`(x4UT$k#hX(jr2QQO$}*E`bMeK?A%pH~haXus6n&fLb|s|gTyah> z7s$r{W=G#luX0TvwVtMZ2@)3Pwls%Yd+b8S7A`K!_&ob=G&WHrdUh9?(D!S!5sdaX zeudk0G85w(ZjawCbg|D5cR5!eoseg|IXlAex>~T)Bkp9bAZNv@oJE$(mE>Movl7qT zCLkZB3SDa_txql-#*82v6GE!>toa0DXWNvugi)QL;GVZpZ7cFUHrjE zm^*PYFxlX^W8}M2suAV%>Yd55w*FH8Ze@9=1z?D!k%@ev$1%n$5OwLr0uBfwz2H`q}p?+8zhny<*pUKKOE?@Ox4FD{~dIXHDIv zo@JNTFcxe>+ye?YX7>F(Q)BC@5`2o&cF`{}t(!8u^)h0o7ui-|;N#Kt9gX2UkwLn{ zkBKq+>Dh9}Y-PE!sc2|rZTaab_rQX#A?RDtyL_wP7_I$AyLZVR@Bft)obcI@mp`6T z?>Ti;o#*DU3DuTfzSR8gt$G>-tSmh5y(w7W$oSrgQGDKdGv034%-3RG?(QmEIZ#;}J z%S+vKrrvZ(45`ji7ln}RA(M#ESe+Gds&KVYM6~0X&LLc8c{Xbi1aN99B>k24grD>IN}&d zv;y!6!1<5?UF&GqHsxK46B zQd=Rv@hE+2V5qhTwBz@)#`x4~K1On>i=D?4QqS)^497?v9(B1o0pfgpf(Ku$LXx)bp={@r62}^SMGD9v}ae=kt5se1g<<7LYpCB|uRfo&ck&YS;zY z_6I42JS-+oEN8g60nYZAWHG?0jupvd3NYIZ-qI+l8)h2M!-J8i2$L%g$;D9&l#3BK LgU#OP@5T5(5NI1<