From e43dc698e88b07e9d38dea9b7589faf17c0a40a4 Mon Sep 17 00:00:00 2001 From: Frieder Schlesier Date: Fri, 5 Mar 2021 19:41:56 +0100 Subject: [PATCH] add thesis contents --- .gitignore | 6 +- paper/images/generic-company-logo.png | Bin 0 -> 70017 bytes paper/main.tex | 42 ++++----- paper/references.bib | 20 +++-- paper/sections/conclusion.tex | 42 +++++++++ paper/sections/introduction.tex | 37 ++++++++ paper/sections/solutions.tex | 123 ++++++++++++++++++++++++++ paper/title.tex | 44 +++++++++ 8 files changed, 285 insertions(+), 29 deletions(-) create mode 100644 paper/images/generic-company-logo.png create mode 100644 paper/sections/conclusion.tex create mode 100755 paper/sections/introduction.tex create mode 100644 paper/sections/solutions.tex create mode 100755 paper/title.tex diff --git a/.gitignore b/.gitignore index ab11b21..12ccc03 100644 --- a/.gitignore +++ b/.gitignore @@ -6,7 +6,9 @@ *.blg *.toc *.tdo -latex/auto/ +*/auto/ +*.el *.zip *.pdf -!latex/*.pdf \ No newline at end of file +!expose/*.pdf +!paper/*.pdf \ No newline at end of file diff --git a/paper/images/generic-company-logo.png b/paper/images/generic-company-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..2aecfbb43e0ec83d872b4eb152fc6c5505426c7b GIT binary patch literal 70017 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 z zH)kjl5*_9zcRcpxelt6Km|`8CL-lO%KE6u3U-;VTu-gnRF~#T3(8;p*B^6qe!Ix}0 zzuY+3ns5TQDvWP)85)9j6G!ob-51_b?1MS<$RW*=C)%n@mxmKg1smJKN?*ZcWZ@ZBOpsk5kyoLiukmh&oQU1CYJJDAFCHq1)CKd= zdu5KQSZ??$Z~D5Y=i1mFlY;`(;!&3(6pmj+Hp9n8r~i1@E|w{-M5I~8OZysk-OCBB zJ2|Gg8`mQK3GUdR+%b$7yE=eo13_cbpOD)fY)7q{Fx7=L!iME&O4e%%A>sDSCRv=S z$grAsxVs;(?NTBTo2v4F1_Z^ z|H@jr;6kZrQ-)ZNV-rUfkfc!9-JP>r+t05F}yE z?pu_=qj55YNB>y0lBi(=xLSK<#TSxT<5$-48GA}5xNPb5MinL@8VJ}{uH@quqPH0) zZ6T)laTro}XX!vO{Pb{+x4<|w*s-ogb)%b7Rc2~V1RvkqeC)D>ufW*cS*?j)_t1-S z0d=c8L)Y~7Olr84%*0*JjTEpNRIUEPj++1*`G=9mgyM~;H6+4U>&s+UspUn%GOp}n zdcv44#wLGRpSx~XSW>0ONPHvG5xp&>?0vxS?9rFebQgRokX6}24CE0B3ksvU_?^@h z{Ya^oQC_|>r1zFs{c7SheRZpAGv%k=5BA-R66z`GcXi1A5LOhFEbj9dm8QZ*nUf_? zaa`o@$awsjD#doq%|NfWaoi|Ryr*#@SAV5m2gpkm(X;hd%dM>$zoGULK-!`9;RLutClkEk28uB4h7CXd&RG0P6f2?xM3 zaesm|8@R!)$uBK4_;HAS-eTchfDH9^Jq>7S1ryv^L9cFT(07mHlL>fC-p4mO6$-WA!BZ=m{ zYiIAe^1{l|pg^xZ()%<>S?k0*Ubt6Nt=R)9uem%L;jD5cW10q0(KX1q)3*lUxD$Ly zQuf*A6-I6uvx$!$<4cAbt|T4qifWb6<7_a{MaJU|){yNb0zWEAuN|r4<&denF0IG_ zwVHdmfb5zn7l%G)_H_}{M-IJd7C+c;DOx{N`W!O5RU{5OJiGBMaj#+v3e5;Hx zW#GQ;L%h-6h+13eUI8=K(E95lpE!Y(pP@{O@{`#38*!K6qAkP?+z=}uNR+Y!^_=^H zg-9Ba4!bF4fj6IB4E~_mC$}@^b8>KqO4`!?e&yRyiRGUZhOE9bLoqG(^QT>1o$02& z98O-74>Kt4_m|~lRc>kt7gdL0tzPYToqXojL}XD^1YkUc!6kEyLfSd1OFY)ODgLeb zev6R-^L7jqA6#ozHIe8>q9{5(6~l(=8#UOBDIahbHWB-hC9jd5r-LiY*+N{zT!`jX z#5Lpg6nf#05Z~rKerKfOD;3@LHZfx#)38QrFONfA;$CjUL>Yso?)nyDo>_*3 z$sVkQM;|*N%bO83*N^-UaM-^OgKee&JQccyh`$4OZz0wtu(n$WQ`Sd$t4)N{gwaCO za^%P$1UE+SgJx^V34XW`eBqY16#Jykn(*_-lv$%9_GF>p_P>>!i%VHlJ)qg^f7L>WqYhlp<}_w%*UnfP%Zv zMX*Tuwdl>?2?G^6()w<(5w=Hl4C8>}6}N(@!i`w%vLS7u`%p}&t*HEwEK%J=nFynM z@h|dYbxnslh4Q>l1c;tYR^|_W zX6AE1=51b(q+4TM2_*(4TZn_ca#YDYb#8UXOg;}A5<2vlFXgoSsAs^^WpaGRj{wdvjHNJ+iD6*~C2QR6Jp zY+Gz^)Z2P<#p|a<}P|IcENKfd=dV-l#_@_8Ka7Uf}0PWIxXRJvaA3ZZ6^q5L?mt zoSnZ|YjXbPO+FJ706Y~D0O37B9F@1A(K;>{SN?$KKHPh`z1}RjxSWg{?(6CsK9lJ4 z{CTK3fAFsB8nNa#>@KNGd`6rkfGj3e497UEwnTy$f|z35d>Z~6*bxtS>ZViaq`qg8 zjj35e)`a*ykGZYKA*sf3eW)BRpd$lDk7y^gC?gZ@61Y zucjzJd*fowf#u2Dt0Xr|I$5wF-eZtlN92=o4t;SWtwo13&kzo!ARB6U$j$tzE~%zQ z4JJle33i8scSN90g<1wOoR6vDy?uP^e(4ws0)k0usbX1Hj|Aai(L-Bc?fRTtV7WXY9!1k-M>^D7F}NB7|AL~X0#iD ziPD0%(XK%)qs`FQK>jU6xBT9gAK}7+?LYE?rrtk8mFIuTFEEb}ff&k+D=OagM`>Xi zeGl-g5FmQH&y#X+3`f0% zhlVJ-odb;Qoh3g+)NtQ|r0&e~*efbFVxpN=(4rI^Af8G|VuY!Qf|KyH05`Ym$eNit&Xl?@Lfti|(r5lCG;yf0h$olMUNA)`-pvqIAIMBe zk1N(w%Smg1Zn_Lc6Y&e`qgaN?Xn1dNpM=g3Hm^2m<6v1eG4f)9%=b${dVSCDnc(z# ziJ{Ie*Y~BL_uA2$LFh7JsQDhJc2ZbJ6&l2mk5T(Q21@ii^^>n=Ufx}@fYDF1Q}EU( z{$r|z(Cxx`NO#`@6+;O#)1sl_^DeGjYd&;7{{aju!EtF$}^- zgL`;TaaUyCtCA?9R_)yFR_Ki4&KLFZA*(smoX2$5O_)MHMD*j7>c(MIjg( zohN$T^QOPgDtPH=ZJAM1{0gITPunKPBI)dnbJtT3Cw481hbv8$$8Fj$!3@43 z^%zyu9I-#KbYJDjgEgOu?pj#6?15xr-X5uB36CQ&<8W)gBN*76$N zoMiLgevEqA-;O;yX6i}2W6Pt8aZbLQDqERq7pFw;5f$ug4|=VB)SR_?fesY3JY$#crS#F;qAydKtU5_+i&*85mdR7Q>Zxzga5*Mq-gcryIBoHyIrZRat4owCY7}&S!{HU5Zxj%G8pLOgq zjx*MN)5N^H!A3@AL#!*|`@Wlds$4X=A2imAy}Nwpn1?hqOi$;OvKd*bded_kzCcMO(m^5jaNEl53;b|@0ZvSQr(N|%^?;oDvZ)x!LpNRPpq{j6u(uM+ z=aIx+Dth=gNn^Od(+%DhwPUQv{CnsutpD(6dN(j}%ZfRkpL)8Oa8RVY&@nr}6 z%^oM)G5c#quY^OAMu!2-H-zZ%qu}b5E@wlObV1TY+(cgR$LBhC^UTaakyat0sUmwc z!{dBUegc*=hy-y^J!`Fb`+#oucPBmaRIu;a% zbpMORMOV+e*ULi(Bp3cjp7b0##HKBtizH?NnlqSOS1Ev*LpnPWf@7WPVX)B^fGjg^ zK#f;Bv!oa1YjF|_$FO0?FP>^SF>i(=#$ODJkHKQ%CG=&# z&M$H6XRV*n)_)y&+lshYrE$_hn^;6U?O@uVSfMwZu**2lgB8Rk0$cuunHcQAfYpkk`PPTXO} z9n~PxbTz`{X55Rx2tLkZ#x^=Z%I>dV3s?M+DTYT1X$9tQYUPT2)8kNUeZ=Z8(AQ05 z-F7kApq_YZMNLasv|ZoCNx#55L9BxYtW}^pG(K4ae3XHM5L1sKj`?~G;>D5gL^EFW zH{s~~tXqg2LXZ=EFMcI@Mi2No&>3L)^wqZzxiov4=&Bhod#HHesSE+p#GV=CBh0^u z#uvK$3oo;eppM#xDl@(54m@?;pM_3b0Shiy*Zy}1jqv7=HzlVw7KcTgHs&f95Gl{Mz;@*lyyilw8_$21a-&gFq;p83{)@o%1`nd+F-<{@7rP;A859ZJ#Vx(V(D$TmA+laW-I*v@{p$$*_Xgm(hvMpNq2|wowLUcSh*J&KgTmT` z*~73&!!CVLURw%g7`?O#FHkTp^f(Y18C$C&E0MU7=qYo$*2~WGP+!vhW$hgevX|yV z9=cFBliWP#TTbezL>r){Wa`v!G-EQZ?EKOl!}EJ z&l=|J*5Sxf{B%0pHP)d7`c%Mk=d@(A&B{IkSLlZ^vSO}c)nNq|>r8I0M~ya>*dVfvX88HbYFhHl2L+(&~fu4flOupTBtlSdO;wokv!F0_~tn! z?qU}xe|{?2cU-t>&^bnHQU3X%pi371dB0bo^BjEm%WvMV>Sh^;SWiSwLD5Lf+;4nq zHPWM>@v(nA}?{U6GT$icLqX2AT}(={z^m9^q*MB+R~P zUfC}m=zZ8Mt+)MEr~(UJ+gu0blqyeCv$EoSDn=K@ieB9PILZ>GZZ2TwVTx?SEfmwY z&21ryCzw+WtRYWEsNtg%6CWL}5xP7u+pMnXv>r~$zs+mc9@Qm#G0VwLI=}Pltoo_Q z>ZVsrITO{3=(oN3E^=*#pZX2DJ@$GPNaaht44Z9V?js&kT6p7}WfqJ*3266Wmu`3n zT|MYT*+T4LTqPm*x+O%krc)}^PG!iy7&pn)QMB?CDXA_HwZND(cSXYZ@JB)}#Qq@1 z1ID=3q%Ps<@3kl`|HEF^KKe>#hwMt6YPd)Y$z5pa778avQZGfOiq|IYx|m4S9ZS>n zL#6njyx_(r&N0R_{|4l;2echE?^XtEj#DLE=ClluF1#BE4A)@>^N1+G;|g5wy5Z4)q5e}@w1iLj=Xi@zO*RlJfg4N{yXR;b>5#^OvYM(7i?nOJ(mM|WxQDb+IV~nLo z*pLtzCyqx2fcNNqx6{($-QrL5;^r1@+xPX=ET31F#-Ccr~wch5CKvpq5gfC^$Rd?wP%873GG6t5O^C? zoOv8jtWnF?F{Me&Cxpi+noT8sCG@YAz@P*h1_4M-iVHLToeR^H7(L3GvBXHI5(hwQ z4PsvHlloV+`-O*>*O+V!XR`%g!o~mEhPgcVpEpde|GQ!S-wpG}hUwV#!*vnM``Zrs z>kV-xA^6K0CLXHN8K4Z#*rC|uQ z49+0e1*!F02(3|kyDxy5ahA=5b={j=2wIT98a~a8kuDVot-C6M5R<7KdX^t7dkRSQ zXZ}xs=U=;l{rdpuU#$|g9Nq&WWG98_=Fq@iY9Kgq?p&Y<5dTYreHAp{`Bw&FFO3Ik zK{gWB4T*#`%V5+4wIsr_DH+d<>jhy%+pASLcYoC9-szfA2I@(!=ua}Vb@(D{{pKFH z;U{^AQu>2Az&afQ@9zYIn@sHn*5f?*vI4mPvhiSeL$#HtWjD+*X#Oz@&V)Jf^QQ={ z_zVR`3S$UvRN{hxV8P5(CkDO@0|(3Y_R1E*DBYh8s;xsU-^A@F%#ZsD0Dp9d)Ce7y z@nD#3Cc}+{Q6h5lG&*=>{hk^d@Zg*&*9lQie`$_cFb{#)W#=e>3ELKT|CmI-JZJp$;xLF(>V`7X9uLq6ZOE@?|1hljBW@Xh07f^( z_Y&C6Ln#LR1kHBNbWz+obJ8KO8gA|M92r%p7nP{@K5nFGtav{EDaH7JpuF`5K_O=Q-{$ zYJBpCTW{CT32J>dcyDR`&|j=Zj{=*H3C69fVReDF^?tRgqJI*EUAze`i+_gZSwJ=_ z^Cy5HG`~s_Z~)IXVoQzt%@s9df${@>yeB2v=y8 z&1xfpFm6CWGs7$U;pcap7UMLTqx`Li0a@Cz&Uq-H}@er0f== z-yF4Slc)V7BA#3DpWec+!`v5p{S8nPvV=w{ihsnHpSRE-xZ$;;sPP5&Xgd3krJa7) zY|`*2@LBDLcWVO#;*<`31rZ6RKmb9B5(4YFfZ-aDd=AFvP;_5SBxd!UEns-2vwwm@ib`x+>IMjBv$z8ojeA~ zhzgCOx(J;^|JpD}O}lO(1fj#=>UDvrO7EQ`FoI?crmJNgVI2(+U~lC0ztkZ9g{_yJ z^|NozFD9Qjoy|oG(}`^A{lVQsy+%?MG+}+GF*GxV1;E{rx>9CPKV=5!uug;DZ1Z&h zhz@uswC7Y)!rRI%#HpJ2k!8;n7y6-b3=N+NW#QDJ&C{D`W@K>(Q$L0Za4id%)h)@s z096;qkfY%|mvByodt*NZGwDPJryckR8gEnMh6X-THMbBZ<&9ym@~?7Erqe30BypO+ z7#1#i0(>@uY{Kc{H&u=-(GT9h&~E;7o$It;I@illzsk`d8w~jzur&C`xOG=G;1~6J zkc$ZS=E&Xfu5G~TdQdpvc42@^-_#s7Tf7Fv@G63H9vmakc}+k{;SlS3_%t1S4pWb( z3ul8_r*Q%pZbmvY;;;7m$0I|UnT8sT9u}a^P~MXi8sDQMX$m0)3=h)o(sw16(L1b1 z+Oh=S)*md7T}B-o5~`Pq*N$-}v8aeNtI6TW7x0|I=t1N;Rd4FHD*#@9>A-YmaMJxT zt6>xu@ehC8`^Lq7B_pu)?bF+b+2cMgi$$e!@774=4N@@7ye1ZRH$#Wb?L~%?`6t7B zo~UQ1p;sHgkgK+xmY6y{`dMEL&;pmTI>c zW$ZEvh>H+7lAg4ZO(0)H9(scs<8$Xl&7SK~!>yj~HyNns!uHgy-X8PPFLZxaz?k~e#n z#S7r1f4sMAq+7j`L%t%)RB{yaZBt zuo`mp^Zyr}f&Ses(2!sO*J?oH4Fo4CIv;cpTCMlMOtJrkl?X?TkPUE~GE#%B@JCDo zk}3V&Y_lQjSM4T1&r=viK;Uo92l!+Z_*@`fM7XY$r-Ft3;(Rq+p;lW6omvSphdtC_&45S~L{vjD2? z^*hZ}p#h7~g8Kx`JEuak?$Q7KRPh|GpoTqoJ41k1Xy0 z)-|Z=53oTTX(hIU2YF$`B|vz>AqyY{nIG}Dycq_HjGV#5OUra)%|_r5Gl7cSR~zRAPOb5{{e|TI|l+HA9|VqNVDt22uipihOsTe?m#{C5U`_ zOR1ZnDo&X1#}cPC^mUT+!amLQXIEqix0&Wo;2UogFp<$zMO5RsJ$w{bp9arrWPt7l zDf*zg866%iyzW3=RIL%1y#|rvK*$4j?fy%rp&v~}mq$9gYcqWAUfU1S$&aB8@q!vNAs<*g>O& zR0)^OvJTb*r$L6A+h7YZX-G&>{8I}!LyRV7C-5HyP4=e&io5@bxmMuGx}5P^^G_H? zH4b2dLNOZ`iTfC^FFz$!IlO8UERR z=F3m9BPnW<%T7F!TKASV2y#3H4aXNi@s^8JM@7BajK}KZ@FEKG5MeQ}E)}!J57*p= z1GwP56{JisbVKKOz~(5#a^=UIsn*AluVFY*=z+0w$Gxe*c+sFQg_w@N2qyj1FMs8C zyz1BnG`6RH792$2&WV|yLpQrrF=b5qgDGHJ9(pwcpqgap5$+OgTn!Vx=nqRVxXw08 zMpK&$Sa3Al8Y`Z;m(vC{`VJO>Hp|;sGNEyQ0ytE0#|-A7>yJ5GuVxNUuNNr}lQ(r5$dcd4VQ%|vmAz^3w1u$-!Lt6-N z3==c3vj_B2pI_}NRTZuIefsXH3>(isx}~CAUNn>^E?YkP9d|(FdccJt?W0W!`^Nn_ z>wEmr%XytYp-V1C6Jp^LF^=AO#puzP2w~wibMQ*Z>$NtE`>vMLYc=yLg{aH8^cO_K zc!pkMrH6o+TQse@ZV&l|MQkN;wYS@GCNu8-txnUC(@IB9H5SfP6i3&~d;F{$x$slJ zMU3{-0bUQvlA;neIW|v~E%o|q{MR>}=Kp2GDgQrv!vRy=z~d$pq-&jam`JpdPm>UP zUM31on_Wfhi$%Z0uRPH`OGsiK9*eNwV5dXHm}#>w#Ed!~%lk=;8}Ix^n7UviV(nT} zXsi7|`8q@_YKj(M9lTg~DOX%+8_Y>)bd5d45%J`7x8Q*_hNrrN2adY_ZkDjzgvM+* z(fX%zMDV+%9ZGQPi=Jr?P%8lA_^wG=e`(u%0Ky*a3%@bKsK~zjGh*`#)S2n(=5HaI zOPkS~W5VTh`Im`F=39tprzqS?6WV3niFP(w*{9XB7gE7YU^UNbsSYieb1Y5@K^>}6s!ANh(uY4A{U>QRaNPM`KD4?m{>DkT3X^g z|Cc+p`lD%*iF;|~AgU8&_6f4yxOGRy{c^#Bl2gK}D$i6|=yEy+8`aYbym{|eR4OS6 zxc8DHn%})R8oSAu@gM4E-;rH;jZSV6eyP4h?DCBcIM9q#S~14th2C!=RBo&T`K#D? zm&!p^Gi<8Kt=8wnq;GU7aQgqz)6*=fZ*F1>q493+#}~ksbsyj89S#Q>L zN3S$2y>$umxkI+Z&S&|(XYqXKpNR+OIZNA7W5fP|u(|e-63pA{&Fz$m>YSR^q~$12 zWqp68qqbC4BiswQFFRfE^q()s*sZTh{OtHp!Z)oJve|oU;mtk5^vY^8_`+D$_dN2D z71UAnot04(*UubujlW$zLGT!6iL>AUcd&>qMR;|cH*FS5u>L7&)pKyjY6@1JnuR9f zQ*n#E(*}OcV zVrntTyIovyYaH%i{Ll+--2ibi>d7t09Je^!a~#*x|RMCJ#-2OL+LBaR={TRO{qf1|(5agCj7b8R)b2 zhKXkOwc$0sB%|GNxtHblO0OS5vZ141(|nagONGhikT!G0k0_w!Kls)u^g%bdN>JWSuvre!eQFCp#9wh%Zh z>gTcl?gd(1%>k0D**=>8E_^{4YSf$kRYL~`R5l#otl3e7$rVN zA)t+#ZT{PTpP4!WV=rzY{DCJOnl=wi)k+HXi}4XQ;$#^Gbn1ZS_kmHRQSM+(gqWzr^ld8YBFhf z3-Km=@qiX20g*Z3ODKCVXHo%18v#p^=1$`hAgoJ%K{56%|aAozt0FSQMZ1q5fB&|=>cmbo32h^Y=pot@LV|0aTr`-{`r7e5??9?iyA(A?}*Vx zJrMk|Jsxl}{}wDV;?){!e#U>&EpjpMg+~+VbVS5hUyM-L#YeFUCvH6QxX!Xoar=uK z4{@&N*ne?v1Z1-%K67fCUPmAe@9scIahlY2|8YXq-P05y1Lo^7-G7)2lyUwdSAC0g)UQX&2hguJw&3o`?L% zVffchMvor$JX|{gDI+XIe`9%ap7-Ts;)7qyD*fBb(I>2#8ju*m0wmafz9|}@H4rAA zraW~o*sz|3MeKmaZp8RqebLoljWo}nxTnvOlevUml47o+njRciKkjXC?mxOSeV<_h zXRaoM+6C@rfa>`+gyf+|4_i*K8oFv%qpAoSU$zj(5FUsA_PNe~_-=RhU$ct;=<&ao zX%ydl09^ZM#zp+J!1_73zHiMLxu7|QAB2kK_r6D#c%jJIRXEgqQRC#M_3cz^=8#JB zP~-w`1|}p%Qcg^t*M(r9NB(lFda<$&g0-GW?;8 zq9;+Ha&w1Jy48-`qT~Hj$DwNk@*P%230Cq3%TXqf&kIPu{Ua?rEq1v=)m1qXF3ymHgIZ%8V|kaDmg@Nv%=5MQ zP9O(n)&vAwIhmC(0&~mLQ|7Dhc}jZ-IjMo>Zpc~I3wo#wCS(OCa`zl%SI?a7ue@1- z7%iAgxU>1e&c*3$i}bsEdB;_U3sGY6!ltLQICq%Exan~67aVmH?77)5XJ_xp-Pouc zYp7jD`d-@CKTCK+vjUAvXs|mpN=osx{8F>eza#Eea!ppcu0lgJTeDoH-CA#W>k;y| z+w7)gi30q=)20$|Lp7{)8098gc$U>>Lu2hRe5_dlLXTUj?{CJ}B!Lvq+r#+Nthh1XEvr>xNqCM+Om;k`nmR>{M zcENvenVqW+N?Xl&pZ%_Uv1PE!)Ilv#$%a!@i z^Qs>1DUK60`V1l);U1}RR#UPb`?8Eh+Mes?dsoqGM>cDaRA{n@N^y2!OV!O;MX^$Y z>6VEDHrh85N!{p*;O~649)f(YS5Rl&kr9L=zI=J-^QlgxkOuUAr^HkK9XZoA(v$-+ zIfGjH3cKFSm+m@c^T#KJ9WnY7M~`yCFKz%$I3R${_T>C%0PA+P9y5w4Sc~78i3~|H zay|8nnjn@#r}Rse3}xedPnBM_!x;m07hC7C?|Wcw442i_p$nlr2OYo6TJRR%dndH! zr)m83U~IYrY5dvTXQwJ&Db@?}!n<|iXD)ofiB;vabGY?3DxFM84%a_>%sBmJ#p~hc zBhbnGm}yX%&){+yv#!aM~Mzr-OyNd=HClI+6LwBXqU@|q)!(ShFI8MH^JomCEL zj@CR12bRw~BX&IQOD_2At+FGkw>a<`xt);R@ZgSispSL9)@1`FYSPJi!}==!!!K@q z;)rnS4w%SN?1_D3e?;m&yOFD&x=4$5Sw+HkgXaWs&*}xg)tMPv+7TcFOpJQ)^2u+4 z4-hTF4-m83^E)^<$H4HPW9FN!Uu4GmdXD*>Tyys4qt=`zuMlJNAKu}kn1xE-iCKH6 zvG9RvuL(N6klc8lR4)W2q<@h7DqqGMbXm{)s<+OXxN)Q+UPG|}@F1_m5 z3Pur_sx~NRJ(sbm1vio&3-EKo*TONugdJlzVsi+paLwtt<$jFi+xIb5_9T(U7uj)s z<(8&h3wIK=UsraOsGgZ+e|?js7AQuf5XwBmK;Q&5SP%N2vT|UHEvw0gv$CUi_-d5) ztevIP&yRK-Lc7>!&r0s=*1BAStkgxa)$#pqZr8;=B6+Aw1Gq`|S_PL|StH5&9)pj<$o)yuZNb-3(()n5EJmYt@$ z3kME&4o{j3C9W8e*K=G2ww>UlO<`h5Z+oSmCVzFr9X}Quc;7)=(pE6F48(<(Z!Lry zY8NEKNgu^m(%?NEem)>mRjW#H;9gK(o~>JF-A{FW3FMnBou2Aqm+C$?i4xrtWj}t7 zFbOt!rhlHFpgy)=6tAKujuCX!iFeSanEd=gz7o9wVEsWU67FuK&>?7i+2TH>d( zY;(N)p^9#fHCh0&z4m#IHCSr$goD{Bx#yt=p38@Jqn^@CZfclmh=IQAuLOcv4v6OjWD7Si70xjMvb_ZzPl=|u3)Tn zQ*fxcFYkHHQR{s8AZoM-mZjVWqqYOde3dUpID`$?osXcK5H`wAk`K!wnRJrgHI5&GY{lSO=wEshX6W>Pw?-A&_O6# zM$Pg5i3C5`d>3?cVkuSu%Ol{D;K&S8@GGxqLq%aoNs}Et_z(L(%zQ1gP!UpW&B+IcgauQ&Pz3kbh=JU5euqOl5BR*zR|D zpCP%F*KanR{bIoe5@BUj^`^^D@_seSh|#^^FY!Yf;I}GsKN}|sE7*h3#~j?4&yBnL z8;0e`n8y-Rj|2KD6Jn~mmuydrYCC%#+?VC_$|#WLKv#xpJ)zr}M`qssIEv2PMJjW2 z`snqFVv1cxSqN#hWZ#iURFg7ix~%G#vxF|+iy73=fvZgyf+AnT`Gnh`oNbhAA!{@o zzu(u0T%FG=TvnWl+QrcBEGSq|aUgQ{?;ypt8nP`Cx{o;*_`Gt&ICM*KNsZTI6Z`Lj z%eP;!qf3Ft%um!5uz90d4L%;u7cV8axJ!Bu3Pz(+X85N`OT}@u|jghGJt&J<;uzxk&q`8ExUC7v?-1j($3w zzWBV@8`W7rXm8%oq;o;Fnm|ov$W2?u_iTR#d8EOT`@9F>irwgB=f~8+Kn##g3x<%r=K(DJ*UjQ@QgAdLK;{0{W|B_3PtQRW~QnRQGB} z)X09@qHdVq;c(vZ{A0`nAU$OkRoy( ziE`CU?5S>sV#}~QPfD6+ma3A1ow%ENNrq33szdMOhIQs6j8OqC&%{^W&fL3o})_~PHM+0YRaPPTO{sp#7*}n-m|LbAyjE)+Fyd6 z87s&$cbctufmw}&S`IN&QS%v8ux<^q=Q=*x9=%BwX%Q7R^fc7YqUS!(N)vk%Kj9+P zhQvW+T`8(~NMy|p#wAQJvScKxN^dMW&>Gdtx2?%vs;?AcpCjz^*i1W2b}Y1><-lO9 zsQS#l;r*Vv!}a=ga~5~C`FkYg(evv~v{s{{k{gwmyHcRV6nV3} zqAc|!=ni-*OuBp3)qA@_mHgb1O1F z^mZ($-0gE8dO9##S(++*%T7kC!@*}qZ&24oFDKXS&=(wo4G`mAjvR3DMbS_Cck+Vb zjBqIXTXUu_KV`BI#k;o$f0Cb-g&JZ|`R+FrQNOc~SI-Wdhd)#&+_rap-L@C(U%CxP zd7REq9@(Y-N#;)VG3|Rj5hm3ILdTUzaZ_Q|v|gW1M{~m*m;09PemEC&>oQz1oo;Gs zV)w_V53)s1OyVPg4P}4qREh#Ix|p5rL69)2%)Ti);utIA@CZ?%eu0C8YtTb}NFp4C z?40&?>~u&yP2mg)x|8n_-tpTTyuIs7i&+^5Ba7L9$x+9H+K!#pyC=E!o`_jt+L}>@ z=&sNwubKnUz+GkxYPFm=;lnt4q=PfUDB?zCVE~6 zR52rZ#A{KG$Y|c<%x5*f`5I71NDh*4F9?UmX$&8D?Yw&Ts* zhVuOcjv)Rsl`9yww6`0Tun{ym8a)`c(WoX(b*6Js*}Xhix)$XKNZ$*^-N!R4swk$# z$D44Y=-n;*1a-OxXOhZ~&9BQ!6ka=1O{72mklJ~lrewN%^2n?rwCUNlAg;T4t2WDE zB+cnt_>3sO@F}hGe!E!^Wk$tpI?*}&M^Fc0Hu#&`QR)VTyGgkz=Ow^fO_ildjbHH| z+*93xfZDEST>e;Iy}Qpoh^u~M;|wfRR1zSMKC4+?5+NaBN+4KT=J^ac`Lt@k1`^Ey zKbqhiw+r_1>a+{Km42Z`@Set}>Dfl}tFp1XuEuo$Wp{qwyaYjh0Iez2qF72Pa(!UniLsKGo_F%A(U+@%Ou8Rmu<2a zA$!I$W<=RCW4)QB_j-Qc_xJw3%kv(``{&yqap>rB-*a8pxqQyg`8iLd3MYQNq5D@l ze-FT5iV%MAt+PE(kx&pW;I}|$2mcpg@-1QcFJy%XFWF*=2Y*kQWFj79pQ_%ZByXly8 zYi-$0JfQj;$5s8zVFME-+dkD4UA!}5siPN-_qbPiJom$m#oFFb>N0l$Z>kGI02?hW z7)@*HiMquBAg3@XVAdmmezE=QJqcbW2ol5${HNegVDGyhG2yaMSxdIo@H7-LRf`Iu zN}xm2p6H-7$P{ww#Q54ihncy>*ALB{Zk&D|Cnox*67_Mk=P3(?D;G|EVkhZ|#a&BW zOhk@FaSx#RSGG5U4h8%%!few}Lv2ifZKU(zi&MYcmHcS1{FAmu0liz`Qspn zEyG8l(Ke(AAZ%uZwRr4c`$QWYrnIv6d`t!JBr&uG7n$oFb)&m$wAT1Z+jo&^&3X^Y zE-4Bh70`ROlWW?{dfesH*Rtz+$1cWz}18C zcmMb;U|PoL;a*12z>B?5<&*spQ+>nydSDQG(GF_U)FE|ng#n8tDGmHt^Y*WQj;Q}% z#m0nbQN&~-jOC~pc#~IYaMs@0LIm;!>pT-uxI3wS=j;siEnUEu)*gl1GugGhMYpqH zeoHw5hsd1|O>!HXP~?+ID2K}Q_&N6p(|zN8W8=-*odH4Ojt2$BETu1h$tiwQ9q=Jl zUasKXT+Fr1%=;;aY-^KZaAO5`ajL_ku2P3iObid#Hh@~26s@vbLv$yl{6~rDKTvjK@&EDFaT(kyLDf~>Q#@6Ukk+`x&zs-$1%P%+ zD83zmOh9x_^1^T+i!mZJCMSScBIiu z>5CkWHNL$@Fq*5&l4?!ILE@yXYnKHd#;iK@Bq3a*8U5jbgMnFTxhpB=ZU(Qk%5#O#F`Zt7=8du0I_% z?B;9YN}f9{s>_{HwbtJKTcE?Toh!M)->s`r$5w8=zkl$1%;mlr7)V(}zEm#E+24HP zhP~yxH&IM>$Jb8LzqYr{ry#Nj(o|n~JgnR?#yXCF24~6!Dm@3@8Jwwd;c+a``L3U4 zOv`)A-%9RNyHtu2el~(S<8ZIRQ)^RyBzhAkBFyxBl4mF7y8mr|rq2mmpg=)Vv%R`e z&~z%U@_F$%#kV#et@=6tO%~1X7Y(n@o>6>JGS`y4rmRH00uCcxfNRViUY~)~w{8*d z>P9t)LqtocmbvIIc>$F(f)!hqMH_Rje7Y8rPKsV!^;ew`__ACv`l+{~PHHcaNEcZp z2+#9%SVQqsR7vUsF6`~xP-=rb`*En^QnUh?YN_zRea_~m%iZ>{cV-yLnWx>lEgTx(omv zh?tSu&q*4J)s}(Gt>i}aJ+xLxa7ak-5_^~T+Fo&nbdaLsLE*l~1Bwd;1*F4PK^h(T z$+r$ze(vbXlf5!)l zci8e-;GBj(gFdG8C}Sj}bNaVHp8Td5WzL7c@7*lN^FDq%0Ujs8Epwd1a1Yw?cRL^^ zvpuH{fs7j*{5?K=$sX=e=6vaD4kd@hdKXh*g! zagV65H=2OP4LDBV#0eUldN+y|!yRB%QsFT-OOwvM>c=@xjn*G$u3Sv={r0Q=eJ@w{ zwVQ{Duqz7QT9)!5a^}Ql4^5E2e;eqv`7HT=r$q#D5|gs(ePpK$_NQ#F3He< z+D>9%J;tW0KQK$rG(O94SSm_->yJy7!S~AEbRhOkR)N{SFmdgBU(tLmc3O;%er)7Z zAqwC-iK4gaS4-W-uh{AU`8AD;b2n2%hzG5;vOx!+-%=kgb-Dme7INJk1?ouIY%B)=NvO1A9{Vo- za5~d)G+s+KJ1Np@0MuJcM1-(L&4vQ3%7>GbUB2mrC<7ISzfz|Wiyx8anpaHBn{^2k z_V@8Y@AymAc<-rqPm9_$7rMW+8!C3+UOQm{Z?@9OJJ-lmy-;8mhx%-FGA=bKBlE^+ z{J^!p=~|_Me=U6(B!?mIhi*Cj{P`vZ@_eNR;eeB!;t$2LIqL-(3}nQbX9$=b5Ei-8 z$kM2Ly$~ewL|028TW?_4^ZG>7%tU9?x5Uda{(t;(y?4q(%Zzsoy!XZ50)A-3$o6#y zD1q&*_!wL13WqK=9C7ZDXkALcneA&Wj+s%GQGR6lRKG_Q`DZI`5n);rE%PN%ko)VF zrjACKefHdpE7`(f2>v}gBroI^1zxd-^9Vq>@-LODt3OmfFRPUTT7^l@(aH;u#kL;X z;_J4Ci)y{EgK`QKvYY`Nr63)SHeFPxith1nIiXoYwTfNalwZV*z}Cf~42~NFTaRW_ z!*jA_U=NA=Z?f&*kTb@rVh!BNG}h9>1HbRwTeX!C71$#>*0#PRKk9ejC(BwYt-z$6 zk?&yQ{g?gol)pkF1$V%1o9rXJMsg3r*KI0!NdzxU)Wo)dKu}16mRj$j*xQ*=S<-pK zTqVO3rRAwVE`Mme{#yXZKuBgWia=LQvPJsrpXdT%J_5ktMX=JByypPRk@XEdleG?y zB8ZOjmAHD#p5A4Zy>+Hx_h{LVwh6RKaplvw(%CO}l3uK|=eFm$btP1qxQ=#eRZo?v z-;zzNElVt~;>CJMgZ{ORri$ec!Q8l$i1ow3to5_b5F6pF&Sjs? zt!7x3wv7)aLp|VETR?r&4_S65v!R_=jkrOHCX`6E&QqeYb)H(fHcOXV7vl8TYxOy! zvvNAD+2tPM?zEJ@*RnM7pLQa9Cwwxj>qZr<@8*xs4sQ_UoC)pIBpwcg^*OfG-v0F( zULyVw&{N*NhImXDEy{^xy6OxV$S~)_e7%Rb2bnL(CD+NbcRuMJiWT*L_bnu`^&P6z z&G{3%tknRKGqYLN!9Ew3KGS@|uhK7eb%XOt^1VJtZh|l zdb}`am%#9PJMgAJhbH{>EWLsdp^g{idJQhBBYcTMD70+++E}kErL{}Ys_I^{YyZ@U zxKXQ%cac8VEYCQtHUj4H-stZjHGj3u13XZ$xJiiycY@HmB*vA63Ukj#et6y8hoa@4 zawFV;NEg%1c4aWF_fJ^wg<<-F4o&$dsj62FpBnq-VT`$tx{HxYg5Yi0sv!HR-`*}K zG+Y7S3zao(Wfhmanx`2LRE9o%`F7-!V)zV=De36oAme_=_VNfb(M8u=f5sUvbFQ&f z#q?!6?Rvne@(*rFXnVF@R#Il@&%r$LzPLOqcS0S}es&xj9yKC>!2SiNrv?xvUm#dE zOMCcZ)P0Cj12fGG5S-HlKi1r@0We0>`-2!v@kpfPS1_uS)v>UG(p?Tgy&ExE?s_$s z6ziI>s!!IOTLHbo|8$rnXF_VAsq-S7XJz1wJp7DNcwOroW4^J8d}1grb(WKE4o8`o zcb|6A?$>=cP%y5a-`fGK>c8Up|F3|5n)q*lPZK0w$ZOC#yFcM$y)$<|p%L|4U|JDb zj_hYx^9wLhL7U#l0xHXeuxaMFD76aNfnID^#yH;D@#kSAH}=jFXIm3t?z~ny;Rxu> z?IQkc1xI25yul&fbI^hv1#SN=aOF(OdJxX@|K%U>7O}qt!deO6j4`}(@};mHgl5?1 zop?b)BY}EzQJ1N_(3pe6_iL{L!g%wf&y#W}NDa!_6-E)jc5jUu4XEb}?I?>C5gWsX z@(0I0rAjUpoo$Sm~gyKb%?idyi=wlznlzuMGI)LwXJfp0^EYdzN^pEz9>-+!<8Yw zgq38RT{tV z=G_%FITR!D)>2t|;D;sMe#y9SEB{xmPGErY&GetY2ydaI4=#KVRC9| z^Ek1r9k>ZG!kmsQ!I&m7<)^2VfL~v6IsYr|`n{nlfui-U0JM0U@bd?kN~Bbd9=-lN zZudXTi2wF~@vhHMnSW8|zyB6k9W*Nb-wcOe0r*Cb?L2VUCR4$crAO*WlznYb!P-q) zKdOL7;0>@AmT%?{V(&GQdMiv~#l|3X3+!fizkO9p&JiiYb+lnCrHRh7={At>Ri@R}f?tJ>L+MMy{sVX-T|ElX>lQmrb zV|Qum`8qaX4+S=oz!lrW-<{ykvBKW9<`E6g&N~2P6;`K`SL7i(jLAO%242^l&mXO| zz`FO|Fg(?}c+7E#TsK5?sxZ^3^|}{p@9M%-kGGroa{H=PTs_zLgvL=iw;?~Nsw{QI z;v zfG&twsK$RHZn?6S>wd}n76@%4d@GaM>{BfUx%&}<65+-*8)F>1V45yts1A8fIyNDn zAP*UMBN7=sQQ6`{2G(yM{7iO_KhtOCUp|UB83F16_O%C4H8_Qtu+g{2j#N{=WB9_> ztmIZ$RT@`ZsvS{5Y(>Kst@q;$*~Uw)@wdmKefquG{11eCKs%YMbJJ(6slOSseO?;3 zds={5A6`e>t} z%!g|tKM20_XEt1Tt%ZlCAFlfE1}aap=rvcqFp8tx%2D8dn%K@NF3jHpdopn@9PxyD z(8FmEbAzq?gzW#l;%l+6`%i;YZ%p%lCb>q-ZF@WFr+a%*xAfQ6-w3Ya_mmR&cfrvdcSo>Iyy2K>H%Chjstw5 zk#ij~IZv>Ygzd+l%q8qK`1_WUS4l~-bM3=AHKy=D>1YehG+MqSW`;jCUDB%~i>i9l zF+(ls8Es$pDdCX`-qaZ6t_hjDOj+wo$*wHf>1K5c6139Hs6gy9AKq&^LSBMj=YJZw zc~~uPPPb#*_#=K`dMfc9_O5e7UxiFqysq=tHMNXAqt1zwweLXzDJ`5SZ1bMg14g;! z6f`S5xzH%Ffoa`0<(>X0G;(yND z;HQ0aocY0($pD%HjcgLX^D%YnG1j(z?8vlrR7u6rF(2zw%~oQrZ8qztV?Dr3cQMBT z@%4ZtAE5H2&lrxui{gyfK!Z|xb}0{{e8ejba^b}zXK$3uNuOUBva1t2txQCni|r|^ zF_Oj~ zP;&;&yrDXHS0d!paO0cz#Y8c3kjlFU64!MORH>dp?g9Ew$H*dZV7tb zp$EVc!O_LsikqP8AUnlhH;QsA?^LsRx=ECP#`%pdD2pS^@86;>L~*QeXQ0pC8lAo_ z_;=~b34xvWJb7i4=Yyt7*@}se50v#_{5lI!iJx%gL)znpH<_wiahHy@oKx_#vzXs) z*e85H&R)^)IZsv7w~+U;$)VgjYm&6oI*jmi>wB`DK$V)P;x3?%P|MBc>bvU z*E*v-Cv@l;l8MbfXugI}dsjM0%LgC5$0j`DeLfQRXzECW+{_MXOlxm|N1AOIfNZyw zQK%1%m1$wKhit8NR^VI-QzivOR2T|$!Ze)VmGHRA(}A_r+#}}7)%ZHpXQteLlighq z;IG_56h{g@Py^$UN-GoJUbgS+>uE~cc!o#|I)<6Io9tBKP48 zSrNo25CbQQq1(&K5w`|02Ja;;jhqJL=C2Lh+`h3f9DGpDZMYxsJsuaOW*-i#{z4lp zT+K2#UPiK9bDN!);tt+eFNxWhLoPHM|A5agyZ5Z6Ps{0t-|hJd&Zw-CT~j%hso6=ZZ(1@be9x4~(8G}ExM)$oS8_a83YKNQYF{Ap+- zBo{xz-#4TUe~g|yANq^7&iUA|kF_A!`hHIOIO=4)(S^#$)!LEHcc(|oLQe0vdD}&s zGS;!o#yVeD^1vhu<-(WVm)gRYi);y$D-3@1AfSpVSlr~dzg*Vlm$ zA%ri76>KBy;v>ef)JDUDY|AcU3ub>KDu4+WLFo;wzehxQB{HhgY|5*#H-a}um* zFTz78)BCB#bVyf_f0?uh>L=dtX2Mpy8PdO{tNlbVlZNk$EC3rBzyEDhLRAm-y!0oC_aVfv}P6ox?#wj3f(xDI_Zn!9LNit~t}9_V%A4 zzP0Z|#F&>W4jtv}pjK!*{y2-f2j63><9kE3$p$rIWp%pBtg-5_@xnl|gPz-s!F22C ztzU$+gxES23RbEWugG$Y3EV6vib19xgLOL0eVX5QR`*ws#kTJ2+LdJf@n`DLGR@aZ zAo0U~;UmNS#FF5}G`8cqI@I`vYYGwGjd#833id%yE&b6IeB9UYEbCLXLp`9yd`dc` zbLchjAr;Rb{wmKHI%uL;l{DA)V}LMO_|+GLmaMBp+MV;F{uUq;bkBgllVxJKhD6wAfyS~BkJ}?b?RS3Mc31jS)Tx92L9*fN}ivc)LJCpkwwHT(2GDyo^yh zU6b$5IOEG*lh4f6J)w%JPpco_T$NeqBx$@Yli#@c_2Lbs^O01;|CtNjO|gyNe?0G^ zMs;u74U}>H7^XToA%r(Evt z{|@r6b1yjL9U)0LJfF78m6L6|ogDXuUva^AFulg#F#b$-eCBG>-58Wkae{prf+#{O z1e2B`I0{^Uc2pzs$-2K>0b{=GOng!6-o)8#byn+W?ayrG-rW10I*}y54_=NT>X@UUg0d*zkoQXJTwOG^x zz_-wUoHVrF=SzT91 zL_2(I4^9h8oTSI{x3NeqJyEoA(vv!wDNE@d_pdr(y89%$Qodgg|3t-4%+W3=k{5G3 z(jvt+1Mslpu>CYE!QC-fWZz4!Qi&kgJ+>J2kpH#fPU zidFr~_f3NxuM&Z}FS2gNOK(uZp$F4x?xq)dz4`$o(#>#J?Nq$i86xBU36r8Si|uo^ z?I8sjxBEtY*F)of+NO4!#+zr(Un7}hy1lc{L^Y`et5h7KWcc>hDou1c5Y!PYj|5sT z|0KRQod6IZ#(jHD13}h)VgHK9<(c)xB(|<|q)O1H&k4zM#OBb@ZxH^_n3)o>0RF_& zS!&U?jVc9hkEVel%gBXCHV_3u@-j@_hj=-h4s>mbDcg+w;nE)%Yb}nAz4W2VP?ELy z#_zPylJJmM<=~o7obAUgkK_>aDU+J0;E$pF+9If`MXxy#=03p>a|DuVlGCb#5?L8dx`wK( znFQux131NkxwP1|opYmY&stwaL>a5AD>pPN$?83_6%$}^bzGrDq3@j_Wz!$+Ec=i;99ZV`#k(^4HMO*^(tCWHa-;UX zV0%_uZ4Ng1VncPmPW|?4?}q~8P5O)^1|v!N?#5xBA(#_0KrQ+DQ{T)xPh*-Bk)F{x zrdl7b<>no>ZMCr_+4!aOWvRw?pSDTr&r2Ual+RGuB2~>$jd&)7|3;Fh+~Y-4QTvqF z-}7GLCAjGR+=w8U=uc5+EY&(X`Cj6b|GuZmO!E0RZU$H5U51!TRx7s3)qS^$;5*Q= z9gdH|iT@v!hs~S&Gk?y!aIu%tFvo6*|B&jt+H&zUGStT{i=k9`8?$7($sPI6)q(+h zKmWW2VSWO}ldRyoNg~;ssNVv}lZ2lGlr`9Y2~qD`9|k*I#s7iWxYiLh`dgrius*f2 z!r!gT*#?QM&p}2(uf~n9zv8;F^2m!Iil)O1c9)@O1rc<<=;E!J6W%q%rqJ(AXM^+u zojp3P?47a?eVz7g>FB$W)kloc6`blXUldK zHJ_ZA9sc@aNqgL6aJqEhZ=b5VvUD^mCz0A;Lp@5JEQGNvHAL3?q5H}S4RYU{P{{J& z2df_l4C#S{6qHm#xrL2RGbH6+6CATM<$ID@-MM$;m0f4}rWM&vfgH}uS1VAMK2|#R ze?fOi8%jX*L@qZQ^a;*cPa(ZI^NSPj`e!zB*c#m7&0=D(CzK7r*%?e2Fj#DO6H&53 z5(@v(jMrx2^CWZf=pTcPPRF$ek^Ihl!4)p5*;a)7T_Gbp_^P%%8+7)_$p2b`RH%zN z49sY93qk;|>Prg*ypeL^qY|tg6CUa1aMHIytCVe0AA+xOZ`R_KU806>(XaNAe6+|F zA1iCG)mCMh&a^+NJ5PozJcbNTG2JycF0n4NAsU#~E^Di5;9c96C+wY% zRaaKWT+WLhI9>D1*wc~Tv*%**@yJuHVScBcU$@l=8<=AZYsYT^UapSC=hSn!3zHQr#mATU%X2I3E_qQAUrxUD z*6gME1v}mmuo?|ReOK*>u>P4skf*bd^ifkY_HYar&N~-PJCjESc@j{qPsvp{O3YiCIQu>|Vn>M2hH$#1fuTs?uG!G)rur}MN=<3~w+70L`T5w4S62_|xO-l#u6q6% zeVQ~o@>KKe5lQ)j%09dO?cBW`JQmLuFLo8Kn^nE>QIPLasI9-RNBowlGTkih!*_0r z{w;uei=0Jv3;s*@E75Z*fX6beL2chroF%Ccn`5X9kbaeded^F~`74=LAR9g-mT^2fj zLAH@H4K&Y;z}A%O?cg8dy+`;E_WKysBuzO$Ls5)Hy*`i^h!v7h zw+uYd2Vf&rJ1f4Mln}2aTWw7o>F%5E3@Eb_+c-Js^UksN`kXFFjg}myyD;%o#nXW} z`jk^n)xoqc{lbIW)u;|UZJvi5ugXx4&?G+oO%eB8X zUbCr@6GmhCc3rHy{LZKau+Mo^5j9o@L${S6 z#}$F18ORvIUhaipMuH4h_ga*FuMXO>sMk`?)-~*fqGR}S)B5;y*?_ucPU_HlH;P<* zJn68z$j`2{MTGJq!1{KY@>1}69#|aK$C)kFh8c0Z!j?-G4|f%3OGR=oOy1w)T+^3X zm#mpW2)nMa_E<`N_)O)7Fj_mgPKk*$Kd0Ks{`SQ|R`D@8jXCxCzV9Hu+bw3R=8jEr zB)2jk^hDKulD4N5TZM$5N4D@+3!gy`r-=J;r&zkN{Nqp)|2({DLXb64#-tqZ6I-rK zw~D%Mm~;Px+avkduwcf2ill`7&)?Cy*?L1Fe~S-6ZkM3XmkZi@Z<}^DXjSVa03HJ#i7}76RKw;r zNVE7E{uIB{G;Cl36p72RcORqii!*;RH|r_Bn`4MZ{olVA z*rz;&6%Y_$89sa->d#b`Mb87i950D0$h4-(PbNI%hOsS}HxMnd=GI4` zdz~%~tcj@N=35g|tm)FZ16oe%F5(WM**U(R7Egli+wv#w1?;eZ{WRt3m#qU1S&kh9 zXzq`9fld9CvU)BXp-6GJEi{s`J#?1ml2%e^E*_#%A<2*mCa2F}CTwCyjZT=nakNr< zxuRcK@83X-+MH$Saxd-U>;ba0YEuOMfh_>PoC)Gqfn$7ue**UhG|IV({V^rDFppv0 zM>G<}c9LR(y5w8+WFsF1?H4iujeAea_Wp2tK*&a8^D9 zQB8z`eHKmu@Q}m;92uc~f&idY`z|ut%oq0LoP#*)u27yQOMcR^d1)Kh?Q6NSf%{~< zb)$zw-)a`pe$YT$#x|{K#`W^CBrMM2y2MPPxQ41pdPG-B|1ZhWLmg%6#GSE^-`ceG z1(7e_Ep*8&FwuH`ezw(_CgwKmk~i0MyFjrpw({NQ2|hA`vCIWYOt>U|uzk{J@v7kg zY=Vs|W*ffufHT%n>U62=H=I#_IuoW2oiYB|NkizyG{^+q#Xm{%X&We|THo*z}3Z$39lX%<;$9 z-1Vd`kC(@rS`%*+b!K6!wtsebdfhUtA}Pn2vbib5|7Fb$?2iYiC~dCkae2VvyVZG! z|Mw(y^1rnUboD^Gx_rw=K>ayQn6M_q%EKpu4ZaF6*^g8|7)L3MzJsd`sJ z4CoZhuxE9XC65?s)BO9JCDt-(3W(MN{w=y&L7%RsIq06*5KTVv&U)*P<1z?#1ciX& ztk*!@Va^Q*VbLN@`i7U~x^dJI!8TO@j0Q4amJ=Vp;0HbT@()pKpXZ*;LNq%R)Sw$e zs~t~nHK;nNCRM0=lrNPBh`PAGS$}T@FMN*5HTE4>(HKhT=WpkZtR-*{AlKWFvGnaa z@R7pSt;CFW;veKGVpC7h8BP|4aWCgy?})lu~YUHhP$EbJ}U9qOYI)Vt3Euks=chRsd-K`>`|Yqm+M=S@*F zeN>rQaQ@3?WB)=LY9r5L^cd_dkPd*+w%dWnc+MY1fN1Py!pMemY%5G8a1T$p34d^) ze8j7|H;5{UE%|$ii<&Y^mo3_|jx4Wc^iQYzzAW+wvvMXzsfl<-ZOO~M9>LPxs)z3z ztKU3sec9++`Me#*>s?oyJ52pY2YFAjbZY)E&0`^KWPy*I9^2~V@8j~G!*%rOFg^|B zvi?5x13EHf$41y*xXuNI4P8e^+h{If>d=pBxI(|BS}UX0@`9I7FhSh)ip7!PHQ`{O zA(w_+Thisn`mMkp(uHs;tb+_#^V0t*akRZ;j3d5ZN@p)j!v3EM2Q`drXY)dYPIn)> z5^~og<3F#n>DD8o-YnxP_UpCsXLI<1O;oMbnORc3Lix;dqMfg4l1k9{7ASIbekY{u zT;k&00ipK`kV4m)=YY62d>`TS18gwA!@32|JL@vcng@jnSQ=q%1;LLGskAzSQO`u+lQq%|18DY082^PbM^jnB1se`d@3faOSu9m>|O~>{FXe=bn!p; z8K~BixS=lK`Rfo{8h)+#zk?#g|FhK1|NLHzWVFT)k2&}sTKEDcq!ufc8w^sTa1T5n!HufyS8<;#Y>4M^poPxF1v zH>=GD=S)&g=#8zUY9NSedSyQ$XyNl>joAWEKak|Uxsn+cix z)v|jtmVa!RS5Ezz&+kHlf~f^iO0opl3x$Is^jh-LsjOls?YBU8dISAbyVuB5Nv!kC zwSu-gk29GWN#CD)rR2%@^;uWezw8kjcwGEyf&#~qy#KN%KfxP=uI%;?A#Hy`Z6nREk2dD2gu&cymy@V$oLji>do~8xYv) z0nSqzPnYiDG=V$&7R-1K0tzPZEfs2+BVU3JZ2V@wV?AUUu(FZ+9V0a)r(poa||aOJmzx2nXuinHX89`PzpeuKm=$;A?<4 z5foNQzx#GxuWNx8nG>QiDVRMM;-&iP_$^w@I{~>-0QYwy#S!S9I71o8m_@yu{cFjt zCY&HTzkEU77u3W$+>GQ3nf{@(_wwqW68C<13OngGCxyX~oJ`NJjn|#Vui``j^cTRj z+Dge=T0F@9@n?D8Unwpd%~YYlanoyc1IPDki5sf2ZxP?L=4+Yk_reIzIcYq|#2|W+ z3!|J9Tp?bvfuw;5OaEhf@Z(j^qrEjl?=0rz6xli;<*b@G&fdvLvl*DNT`oUhcKX}5 zBFg?O6zbL`qrop{i94fmXD4ApYIl~K%r&)DP+p@+u|(COQ{h0bKIxK4Tt;2FduY{$ z|H|;ERgp)8Jvd#KDZ{au{unPB-``B!Unl<>vM>(`zn?!tH+~=ah3=t^k~X{l*5XLo zaNj$4R&aoJ?jJMMZPfox@FH9e+EfE!=}q3F22K1pUBplVYr#-{f`?(lY*>icwfh7I zB6C*(Q&zK^*$p~zU4=Z~6GR}-mVS%dWqCI+3vFH;!58G%-&}h#!5| z9pu;bGqYfzE_W@o0~vPaZN?*Tp}c?ga)A*Bx$LgNKwe1$c%Zbl-J3rDax;)+puTjO z0x2Wgh~JLja4@MlOICjifmNQ+to4e}R5!@Ac*jfTAD~0l2!K6QP#MQr#0YKzf-e>; z@}8Hx*x-{A{DVjI@(3RO@uAo~x})Tp?~PgeLd5mYLLcs0q#ZQ5Q^Bl^@!wSb)|RP| zpAl=}4%#fUDbvmTJ)j`F%ouuHjxWHE!b!pl)9Pgk8 zliWPvV9e31Rri}Gdvx+lhw$Xw+4S|a0^jt(hI0>IEKgW$>};UnerJ!r$T=V{8I_twTinwgoi^tF1#!Q0_)Lb z$h2q<^A1A(2|X-^`mNYfQ8yZ3zBOMneH(VMHL@m%`R)dlTki97O25!MA9!5S6f^T? z1Bs(Y_Xz&l-a&w>p;M@`x2QoANH!rPkfXR8V5Ddn!~Kc{1M!G$#I!y_E@Dg$7|PEN$rLRV|Dk1kj75q3HTCp# zk(>;O75vuIM2m(Vz*p~cALr2OCAHCHi#PtZHY4gVQC zAOQ{mfb6|;d7zAirtC3hY8Xs_Qi;V8#6bgW*`Iw*b1FF#qm(EEE&bEw`-2uk7IzLl zZ;>JIZ+AWQz3DQ4Gv(r2djZu4?*s(|P7269xUIJ0$QQoP+114n!tEZYQ)YJ3_o3;M zbpcF$GJz@bgsXPub#RU)=Ell5tesIGWz8LKJWw1su4aB3sY_d}HBE3Hs(2n}f%$F@ zAcde#;*8p~Z=l9Q7|LV!G!we0Zs)X%qh(YX}^ZdtHMfS^4OD2WK~KXdS;? z@+Hx#?}BEV?@gy^n-AM4-{qab?++rNTL;&Szv5N+JyO!g=cFE)5`p_^(bq8dKk0T^ zT@f_?;SbSAT|7Rcr_Xm))USO%dBx*waj~d_BPaVv_xpj9cblfrZLvA}y(uP(szExp zEtSdV3Jjx70?b_0e-v7NxNGde8La^=@4Z-J&QeupbL~JuqZahkC zBZ%}dSgCwN7ViOnwBP^3ZZZ?TnBV)69@Vag#h4)DDH(#|jm7F>dkE-fyx zqL{kjh9|JP%;AM`5;o_fhjMS7{Tp}XI76kkt~}{2nQw1i+A%JM3{~wqhza@oN5_YX zRCI`uv3vnP0XTBZLqi0QMDT(GglIcgH<)pL4^yNCs0oF(sbyj82BRJq>A1oU`05Si zCe2mq?VBJg#uR4-@5}1=`A5jNkNqyLg2^3|U4GNc-M5_143N5xLK&x!J1$rjzSv&)2ZM7LijAEAMmpAq3nr|@&uiR@W4K%!Z{ z1%6ggrY_R?`$l=?$FmQ+GJO_?9M0t=J^Cs`k+s zb&Zr1SX=16=f>ozXv1Ente!mS1ktvt{}>S(OjS9Sbor)fj8j%l>N)Y8_T#4g?XNBWS;tB(2LBT)y`4_fA`xYEdFmAh#&!lW{>sEG&WJv);{kX-I(mjdh3$g~&QJ;Mng+HfL z^=EHMGF`7(IL1$>!hTBEJw4X)we_YQIjTUqJWEx@O1CT^B7IOfaN}!@S(~I^_X1xK z@vlXNc@h3@5UTCC4o)Uoga&k|+5u7c90be38nqiW%A57qA(`+aPEaH$SW%-IBv@G+ z>k-8XtQEKZH!DH1`+uR4Wpioz3*W1fkV-d`gc{)g9=DE6Z+1IcYzxn`lQEG{VVoTJ zAvulh7Du(&;1?-}-4UiEFU&K?atGWqGq~0h*5CBkKk}06j&Y>{>l&+K>=KfU5RAht(5#&^grduJo^0lMx}0QU!m#wih)y>2g9Gne2m!=Y(s)3 zl5f@@YjCvG3XVNas=g{*GKwQ4oAcLbrV7Rlvt7hroR+oRl3SIJ?e`pS>TIIxfiVqunNVmP6I_&og z-gDD8&tBpA88i1yT<_}AVmq)gQ2Ah>yAPvh0SUaIqx9puvm10716NY}^#IhZP1B5z zc&TdCFEJ)lsYP!%`b~LtDQ~Wo!M^RkG|5K>owv3bs*nLfCJnWNI_|d1Kduf`sBxli zEm4*zN@20Jot*{aGu0nHWSgdkOa~`9%VvEmQKG)K2K^r&kmVJ>-jrZDQ-ntA{V2t+ z=YKqIkFUG_R_HTtN;9hv>(l74Fn7*aFC92Jk_+z!FC9SR5r~qFMt!n=3qmw!7~u<- za;noR#7-LJL((#zoDy}a9+p@6!mmFQEByxLIIwk+<6vcldxr~6wHe&(N0IyQkk2{y zjF{XlbTIS%;qd0MnB%<|zf*&6-D{g8%%3hhc!a@?f$23Y;`6XU z8`dnJ$t7U*A0YQ~6*_F6&?IIy1CKW{->oc1SJE)xyG;SyfdP zuHeLsJk)o#*WUi(163X_+dq@3J;if$pE#(vc{MY8>)hJ{VmF0l>rqBGbI1Us89UnJ{fzI`fs0!G2i0U}JhTk)P-pR#(ctbDGM5fcbz zoKPLozNjiO6jCPA!9o1NJy^!S;<*lRr&8FY2=64#ab$31V}S%1Gl=bkn;Sxv?j(6t}fIZ~9Hs^qIs)4wp|b@cNN{}kAt z!;(ri*~+44%coS=yd^6GQp~i6lPyoRx}35O5~m8h+qjon6G85ZUn`eNb$n)l4n_ru zS^I;skiYo)#sM&2`)iks_8rsXrFy3vc8ICAN<1`WTZ3yu01t(9=YNq?ZGeDbwZ4=+ zwT@>$ed{%>jTZ8H!Bu7(k^JTP?pH?n+^Oe@NhE} z*6;H~XHmY1CRqmJW8^5xMJlSCY~(r=r2kn`#u8!Cx9D9@t^bhnzQmPAYgF&QJf`6L z1uMa|>|> zK?Mm*T2UcDK$ImyNLrCaR@tOQ0RbUwAqWX;AhHBn5fQ?g$daIlKp;^FkC5b@r@xu1 znW~wo@2i=bshXPqs8B_cN;vm@&bhANC66jRUPRw)&*8Trz9V-Fw?)Vh9#eG<{WmVd zo_tld%&XRfO23P#U5X~_%|8j+%mzQ0IP76Sv~>|TUvX ze5nJyPzJ?K7juK%=0laBJ>dRex4A-9-Qw9n#JbUC;{w zg2eZn-(#^qHmR)SPuN2cB6Lb_xdMMjjwRPCSB$#Z%^swKDcv0WL-F7a8v@gq5@jOP zQr^|#-6HEHs8_YxzjP)5NIo~8v?UB;zPQhd99v$wXa{nu4h`YvH54&JzuXuneU31HJl;_S4hG`dV)PP5f!%=gYUMK z9>Jb|g}u&GN>(4YkSAdp=dLt->Mf|OaaYqDGSZvUa2z+14)U?>HFvf>(KK8;?R@1T zurL1z-VrUsV#5DtW$hE66c+;?yE)w0VQvTM$MYQJCh#26vL5d~N2z-z1suHnNd>XH4V<$8&83C6 zn?MST4mJzI+`l-y(&6{vN#Ed_1+VxejA5|Po=`>0Lxe%sp34a~XDR!R?QjaQ5WQM#pSPznTaXZhjU@bVQrzx)Ry`m7>0n(PtSX|71d39j1Ni_4Fb-> zE2wz`(On)r{);y42~m?&gP*O0@a$=dI3`lb;s8HomX;)jV9xfCO2N)hS5Da{s1=Kt zO3yU}2gOU#NP%P`WxjokTch1Ryefa$_&~p(UkP1xI7zc_Iq@yH1hrHEBzYO^jn0{! z2qGz=Lk;kA=B*S)9(TeB?q)OvHoe$hy{JsznhMNMo!A|-)b<3fAGF-ydn`dur_?re zxQA0xnvxn)pu=b)`{tGt4-vn&Xnz}&a&~Scr&n%pH$oSqi5_kL_z6gx8!tdV0p)rH z!TOZE?d#oHx(6KomS{b+b5=gJ@b2C|Kcr$f`oq8(4_C}QIA~GLKPw25 z)*QBf1vGKoe~-E&F~>GNBJppKA#oahHXrm+_83fz3;r1HkPj_fXJ4F7PcKzYe`t9~xwHhDl&QV(x>L&6ds!pzb zVeejjU#i#cHso`3?S{^~#(ZxgPUly)Sh^q7{%qqIZ0W+}@N4V{WH&KSh(qAVKR`B( z^hA5{|FE(Cc_}PC!5^bIDd8FLr4$1tTl8tganLB!E+!EIg8WN-;O9r~c`xKcl0xHq zQjRAb2%k^;>wxB)Klh5m^29QeBJxl!gA=tpQj>b*I;M@|Zmqi$Y#bC{R2);rnmqsG zx98Z(n_-3vBbfZ`%LS|N*$%n^`3)#i_VUTP976aDcRPVU3S1XGqph#XiBk}7kONF{ zcM;F~%QYKOo8^&s8>v^Ar9O<*D+$<_6oG_Pl<+rjx^6AbXkr(Mm3+;?3BLi-RP;RI zUlPR~$c=GuJwvbzUAaSD6~_*OS0Nbk`*)GLD{^2{4Br2E-m~w$1k1pktG}I+Os7U= zy-Ee^v?8+d$RUvoM!(y4SO{VJoTVckBS=rcDVXd+qwn$2V_6QxBN6>RW=t9PP2Jm% z#ytJnIvl<^Xf`%QdG4?{a9W3osexLYi6f+T-)vcpxG)l;=!)C0P;Xx*#$I94ZJk$@ zAYSK(tTQ{+{Kmo7W055dTrJ%yv;4M*(vx^W93mA}f)_?y1{4{p~3!Se5@CS$# z_lFdyrQ9}5VXWo1>l8|6>4;&0?QH)ZP3r94?Q~lXQ z|L$mUfsRTDx!t!bMz49a?vmTDD`zj5-LyY(HQ(6tz;(3MU4r|;>RoQRTsN5$pEY0l z_s1%Xc!hrz+$q(6gd#65Z^A5#^p~nW{j!3jtC@rRlR#@;C_Chhe<&|+HmZ9a>}a>u z&#+%nR3o%N@DmhIwgo@>5!1J)x><NC%upg`3wk;Ro8DM}{>MP2@`y&+rkGYKA8K#CyXkx2vJa5D64L|bv?4Zoj>Mqig zj$^=24<45;%1gkSv)g4kF<+l;-fn4YjnR5E9OM^fc%H`PvNwRREkz*O31f6V#s*ND zgHO`vzQ><+eRLXdrK<4SIQ|bqsdhwYT8aIS*f^Wv6-p5M;BphWsihz(S@Bq!kz2Vh zUqP2a^iW`*49wA~8ZofB^0I<%^)l4->ZAO}ey)1v&BpzcPPvU)F5D*nagUDtRl+|`~QHtYKe%MvqS8&U0wZn9KheNJ9>hFG-S?4^n(jTqWh*k@)Kd%n?md0Wy@9FQ zG~hm0D%x_xcbb-bNUp~Q1No_Z^FGZRVi};=gwPEp|wD!{omgY6BsL?bdX)!+iMTwW%nd zp`we~R-@cna%|vOP)uHXx|ai|=>B=ychh6r9o|Z0!GD+3EGokpiTjYUa^0(}?74r0 zH31|Q>;-UpbP)*cM#u6b`)K>AR?LJ9qIkepYvkB73{|eA?}p!va!htNbDbQmov~8- z)4#PPJkP}|MmhyNO$Ck@e`OgTbhHzzKMPwKVlD9~zR^Fe_ z0_{XgEkLc?RSXW}$4d0n;%hOEpSd0GiI?k=_X=5%moz_vG~aEaOeht(r63+sJMl?; z5JO-$Wr&Y2fgUppr@3mt;w&4ULX#3cn2YuA-PC?!VaiFnrMV-XkHM+k)((2bSe)llEO-#)%8*7 z-k8>RV*3*@8D7tQjtx`K896|2rlVHX6ev{1sl!PlaYV;w2XpG4zW(acP`qR?n4`s)x?yY$pM)cs0? zwIE0xRQg;3PA2KNb!+ld#8mAY$g=!0gh_AW$NT z-$%VLn_v}DpaOST<%S~}KC-V8i1&EO?21_*B{(D8^tc-4oEF7U81E2MP(V~L&%f9R%|WLV}cYAaZzpFxiSZGiUIS((dsVrbvVm(aV2;r83W9f1omsghmBsdfDCPz@!%QWoc-w z*RB)qM8zj3Gfw;_nI#MYe5!i%rWu=jTL3s>)w!wyI1=<2jK^p0H* z9InqPwl(y6T+R(JGdk%WRX(>TtBTXpeaP)n^trUR9QAk(u*>XP5ylu z+nw$c`nF6KaC`YOeVt1I;jA4|q-iXSzmmpdfs5b_Wb%a1qM2g8Ea#(2CH9(I|dQ!w{%}7`3 z(R;9OV>6-QRiIh$fp;b9{^|2;In6irT|WFU%V6@`tRRyoDfj?h17fU>dqF_GK&J({ zV0RGvNa|uM8L7N;bDm=Mg|p-}c84}v+oJi|*Ab5R>2qHY&Y%St0JH{SnydE#te&y+vA6)04763gp+V^FW@r*=e={1hVF(67#P31))Y0$#hntQ(%V z=1czGRbcj8f91!QghYbRiRw?UtKO$woI9DTfs0(9e_5~seGm~M+*}-gXM{E=7SNWh z`7Dl7@2UjWfzfe_g$Wlr0Y~_4eKXszC=$lXlql4jQ$@b5e(g<4Uel9)exikerkKmz zd#7J>A~%1=t+8WIot0lx%2yJTAQ%SPcx{3gj2fXtc;Y`qV*e){3U*t*(>@aj?x8jL5<#lImggziM< z;6Yo;Z5m5*4!^w4ze4vYlE+D7?0y%ugjl%pJ$efd^7Fdn_5&n3(1Nug*Ch_Qebnq=vGb$MDn~b?0ke zUxI$k;-KDK2RCv-?&p>)2cQ0^pm5Ob5=k0;y*545BtAKMhe1{6K!cofchU0_BYa%C zVk=MKB037rkCNN28{RvyX2+OMIU~?pchFm*M^@nvO`_(KgWk8dRX%hPCb1y zWnA&Yy7hbw?mS?^3+naN0Lw!Zu9pU~kUbMcCHOltyJ2Y-k^z7AiebE-akCuAe#`xV zE*d%SZp^iB(`saN+xjwk+?h5#@`xQ4T`2ZqJclRqm5nh?+O9e;g*a%$-dFiUb+$BfH~f+otrKjx$vXB*vw zq1B)_S@0aYTZchy9nT4tv}pp4Y7<~&1G<46YX%X}0TU5%`WOm z2@>&(1U>4`k9NxY$^hZQ%RbG_+{k&XGf(=hS%&Zs>Fu;({@AbEt)ds;-%X7!e4@(8 zkPVzsu!LZ$FM#?$m~tS9+#6f<9TFbl%X>0v49eW|Ke0UFfuH)14jNV5U?SX)*7TD{EU%6X8m~Md?pU^8~E{GJ7sgT(s8O(zY zm5ihr>5j7?EXRiQXpL3i?i09V&4(vgXw3N;C&sWz@(Y#dl10$Ag40Znb)4RSznp|L zc#&UX^xy|{9aAb-uH`|^469nv)hC~JyNoPWg?LZ*hg_XbHn|2>6pTW>Jbtu}B3st+ z%cC({zdP_+YG5cIbK68tVuH|#Gbr27fy=3$R8<0tfnn^;ML8+Z={9Ugw7ZhgJx4b? z*3jPaY2|Ap^$k^NyAKTRpwW={O!P#o3k=S|mVdqi6{&rjkCh2eR)zQZgo`cI#y4a} z323jNDO=!Yr*^BO{1g-y#+b5kRu4{k;BXut{WB&;h(4m4}^h0Ort zbl5?h3J^0_M2Ab`20LK<3fNCulNz>_`R%E@7O^6*^+__?SqA9)VwLpY4HSm0sJMmvsUoZ$Q(W>XR^ zVCKpF0Oec0huTI<#x+Nbnj@fQJ|_l(oqLN_*IzL0PJZq}B7n$ernWC{yFD|IEqX)H zEZ%#C-cr%|(=o@iR5rjQ!11Knz1Ny6>{gdEL+w*@p(i#Pe*UzK6V-qnMraa5HXC#B{%bn4q?F={G$w^`lrwiZA_4$kXOXjuEs@+YxOt`0@S z2C?PhEwtxm9{o!~g(4$=sddbtLk$zuyOFO(0TobJP>p+`U#1}pBd#hD3y;`$=G_g# z;J!E3VW(0KtRs_=yvu`={+%${*L?qYOFh7V^9}UCpJ)WnG!`45M5ZZYR{N$k+f!{` zV`A)hV-LeB0^fi>6r=VsE}dJ@-jQ|7ufk$q!r5@PyI~#Py^GOfTc6jMQ(@Isa2pX8 ze%sX6t-E44Rr%^yN0+mLS_Hi(GQMlhIFZ8@^RKy_c+rXWR5ly z1kPdz$h`6w{B9Ruy+r&sO%96=Zr$h_Oi-5Wg6|Q!@E?n%I;>%dMypSJHTXSEicc3? zx!IjnmQUCzDu;>TTh;cyVioqiY8o$50Ox}Nih|=H3aF9`|hiopk(WW#@MR)AuJ)*)ohbCufF4O`BdHx`s9g^=CJ*MEq?jS7}cZ- zi1cstQoXTj>T_1>>jrlivi_4(VR0JaV$$@l5qQZKcDn z=eXy;ur?mll2ph=(642qD~;3R9^)~nji_ZtHE#4717N-VM=zIvHK_8zI0_iz{YB}% zJDP{dGyAaDK9SU?5ny^aiRcStbgAhMYi@`79tqC7Kz*=xI0SKSXP&nKcN}y;H+2v0 z#-0arUd*SzE7HhzeHlq+_(wS9ff|HYpfSR-pcLT^H1!pp1mQ5y6?DiNSH7$D{1m0H z;J|+Gz_I%kr~dT#0ITaQ<4be2xw?FfUfed(D;!MdFM29GF#C+>p2itWWo9I-8qPdH z92zF3declPzt)u4@0_IkmoE%h148yiZ5v7pu`B=iYh z!Ez_?lf4>eae7NLfW{k~J_3H9FiP%xaR!+9#g8XuBwOk)Dy!CJa%T2+6jU!5mv*bk zjA*yCv{_~PbgI?_BO(>m_V<2_z||C6rJg>d@y<;_!`(F%H~2)xyFLlo4<%?nwFDY`VmNznDPGcMU{wVZiah^oX*!sJ1S!;G&PfaFV| zPka;jQAaxt3-yPLDuVxra|QhPUVS*pI=)@}2|jea{Z;deZv24=IW9?dVjB6`c~?SP zsGqzOfn^?BPFnW4!Pgdqg6wn)@dw&rsvR4@e@b|#DGwC5M%993@Xfq<3+RKYC1x8C z%2|2%dSSD%fpk88s=NXH3iD(w1&vtRh;A&d-or^>yqJP?0!%>xVFry17b^6#AsNAi zOWl^nL$o^uXXfpb`yP}}Yj;B(zd4Q@R!$!E3fz>f-c?8{^Vx}S2vm&xk#o1~`qjF% zH;2d1*_JC`54cvQQ~pbrbNbx%$|2CcS+L9PuE*E;9Id^crs_TvX&$cX<&x75Txi9nK=`W)E_+$h)W;}+q0kUiHofiye;$~D{wc=A}8VJiz_}1*aRIH<* z!G<8T9b$lIQzy~-Elr+W`TUZBT$;sckd-KEeqM`?sE&0rPlDb*s<)Nl{nw&pS2&8P zwApTIYR#^UGEuG+mAM_QcZ+T&d;6@cPpvZ0mhj)fbe^PFCCNJfqiE*;$YcL&@y-9C zw0bac^@!vnIji$B3YT}|@?L+BR!vp*O(~!FZia5kN3V&Dhox0?_Awm7PA7~p&lP73 z6ndV>zA5wL?;pmVf8}rfOCpgBIfOC+u?B0-+C2!hQl;#Q0OouFs_J{xrxls6J`+gm z^TZD^xn8%1%vL1kj=9qnRv4`z8||yajrNW9_2#3HM;(gTGeB@&n9u@vFq^Uc#H%H( z9~f8{6Ou5-AF|S$l2PmZ;C-el-aYSul!WB=wkO5O9NlAuI`fZiVagM(dLDmf;zl}} z*{rj$=vZHO^6k?LyI+?i>N>PIy12!>Yh%#XV4tJ0 zyR;I3cZwmrb&+s4(xUspgV)~$c}k~`(4zhF?X0yw+O7mOv=4>HI<8)#jf4};#9KDa z&z9_{)cVGj*5O*hLvDF9qxMAF*ZM-Q2Woq@8ZlGs$h5yo_lGZ(f7P`_Il8!0SZL-L zh1E_Zyz-1Zqi-l9wdzsF-!+z2=DpNc>obBdy?3e@xKlO8gDKD$mc~ znFYDEr8gc(v!*7IUi1i5#Lg-=`w-|i2laeigKm+w`=e!!(cXRY|CW?S`1!t8*?3fVea;JH&+Wz&2ZIj7w zhzG->eBH9}xPk2cYtxgAl9Z0sAZ%OoHYYbmIQM4Ps?%uAsrB<`#CxHkWRcZBVR`+i zoY##T?oE3&mG(P6uE}&vPk&vlD|zUAdwY8sRk5+o1|5V}xa-C0RJPu^-|Er1;sl+p zJ_T3Xs?6TxilpMJ5)zdaWl=#$XYR1*?cWVx00g0f2u(;S^K>A2x6ij|)fS;bHtCg0&iK#cp5SkPLyT-5X`x? zH4PhXIh&~vZI>%sY0b&QI&MMzS;_t_nFy3)WhQGo0j=$bc0V6MX6+s;u6yB>;$i$$ z)dhNng9#xp<~mM`%1)KHG&VIq8@;{X!D9dW1z*D(#WqUOZEfvS8|xCaCcQt#(za(vx;hAb^W%@h`W8(X;lj|Zi4Sdc_O#%4s;t5Bd$lVLK7?{n#PE$bEAKZvU&JK&Io&i)2tM>cp7=4 zu<7)SU3m4qJO`Zu|Lxbpj>-6@*%;~SG2J|-2dXzGmws+HElvQ7U30SO>~m$)8_yL% zyi2D?y8Y)fW@oaFTt9T|>4ih{xFdiD&%ZO81>|*tPurmac=WhEXFA7pckJO!r_|Vw zn-9E;1>XmH_3+1APd{AhdGE8a^7;Ov!sRl}e77vOVF%-!ygS(qzvA=$Af4l9bPhf) zI$%JIfI+YZK^)pIRz7DMs%^iKI6?OPiYZC)RV_7SZGW?eZRujta{4V zxq}nAtt>NXH+i8fs+Qy<6vaHuvrH_R3T!mve#|ca9E9*za%YB+&Zm)E3yaXv`+YCm z#`29uYfNsQqkjM^>p7c)dg#MhEQjHm)pb=jhI1Vl6^#eS!-0#6f~VFom9YsY9`$oK zTzea)L|MB7&>f$CJUDPV9a?2il+tNqu8dJg!y8Ry>rJsyJC1?hZ=VRNORIiPhi0tF z))C?FhFceimQVE+mr>}dJsnIYruAa;){&R2UyJp>Vn%)&FG=UC}4$3fp{>|9^aN$A7URPi shield from TTN: https://shop.imst.de/wireless-modules/lora-products/8/ic880a-spi-lorawan-concentrator-868-mhz +% \section{Schlussbetrachtung} + +% Aufgrund des zeitlichen Rahmens der vorliegenden Forschungsarbeit im Modul PTI09440 waren praktische Experimente nicht umsetzbar. + +% \begin{itemize} +% \item[]{Idee war praktische Umsetzung} +% \item[]{Meshsim und p2p waren allerdings nur Demo Showcases} +% \item[]{nicht gewartete Software als Neueinsteiger macht sich anstrengend} +% \item[]{der Hardware part bei LoRaWAN müsste wohl auch getestet werden... +% kostet aber fett kohle (anschaffung! instandhaltung weniger problematisch)} +% \end{itemize} \ No newline at end of file diff --git a/paper/sections/introduction.tex b/paper/sections/introduction.tex new file mode 100755 index 0000000..a5c4234 --- /dev/null +++ b/paper/sections/introduction.tex @@ -0,0 +1,37 @@ +% Introduction +\improvement[inline]{Motivation, Arbeitsziele} + + Laut einem Beschluss der \ac{EU} soll angestrebt werden, mit Umwelt-, Verkehrs- + und Gesundheitsdaten möglichst offen umzugehen %\cite{openDataEUabout}: + + \begin{quote} +\glqq just try to be fancy and get a clickbait-like quote in here\grqq + \end{quote} + + In der Ära von \emph{Cloud Computing} und dem \ac{IoT} + wird ein zunehmender Anteil von Daten %\improvement{needs citation} + abseits von Rechenzentren von günstigen, speicherarmen, + energieeffizienten Sensoren erfasst. + Für die Verarbeitung und Auswertung ist es notwendig, die Daten an einen Ort + mit ausreichender Speicherkapazität und Rechenleistung zu + übertragen %(siehe Abb. \ref{fig:schema-dataflow}). + Der zuverlässige Transport ist zentrale Voraussetzung um ein Datawarehouse zu ermöglichen. + + % \begin{figure} + % \centering + % \includegraphics[width=0.85\textwidth]{images/schema-dataflow.png} + % \caption[Schema Übertragungswege]{Schema Übertragungswege} + % \label{fig:schema-dataflow} + % \end{figure} + + +% \newpage +\subsection{Motivation} + + +% \newpage +\subsection{Central Question} + + +% \newpage +\subsection{Content of Paper} \ No newline at end of file diff --git a/paper/sections/solutions.tex b/paper/sections/solutions.tex new file mode 100644 index 0000000..94d603f --- /dev/null +++ b/paper/sections/solutions.tex @@ -0,0 +1,123 @@ +% lösungsansätze +% Mit welchen Methoden soll das Problem bearbeitet werden? + +Im vorherigen Abschnitt wurden die Architektur und Komponenten von LoRaWAN und +Matrix eingeführt. +In diesem Abschnitt werden Lösungsmöglichkeiten für die Kombination der beiden +Prokotolle beschrieben. + +\subsection{Server im low-bandwidth Modus} + +% \begin{figure} +% \centering +% \includegraphics[width=0.8\textwidth]{images/solution-ulb.png} +% \caption[Matrix mit CoAP-Proxy und Chirpstack]{Matrix low-bandwidth mode mit CoAP-Proxy und +% Chirpstack\protect} +% \label{fig:matrix-ulb-chirpstack} +% \end{figure} + +Wie in \ref{subsub:matrix_stateoftech} beschrieben, wurde 2019 ein +\emph{low-bandwidth Modus} für Matrixserver experimentell umgesetzt. +Eine Variante einen Matrixserver Daten über LoRaWAN übertragen zu lassen, könnte +man den Server im low-bandwidth Modus betreiben und den daran angeschlossenen +\ac{CoAP}-Proxy als Application mit dem \emph{Application Server} des Chirpstack +verknüpfen (siehe Abb.\ref{fig:matrix-ulb-chirpstack}). + +Dafür könnten die bestehenden Softwarekomponenten mit entsprechender +Konfiguration wiederverwendet werden. +Die prototypischen Impelemntierungen sowohl im Matrixserver als auch dem +CoAP-Proxy müssten ausgebaut und gewartet werden. + +\subsection{Matrix Bridge als LoRaWAN Applikation} + +% \begin{figure} +% \centering +% \includegraphics[width=0.8\textwidth]{images/solution-bridge.png} +% \caption[Matrix Bridge LoRa mit CoAP-Proxy und Chirpstack]{Matrix Bridge +% LoRa mit CoAP-Proxy und +% Chirpstack\protect} +% \label{fig:matrix-bridge-lora} +% \end{figure} + +Eine Alternative wäre die Entwicklung einer Matrix Bridge für das LoRaWAN +Protokoll. +Diese kann über einen CoAP Proxy mit dem \emph{Application Server} des +Chirpstack verknüpft werden (siehe Abb.\ref{fig:matrix-bridge-lora}). + +Für die Umsetzung könnten Ideen und Implementierungsansätze des +\emph{low-bandwidth Modus} wiederverwendet werden. +Vorteil an dieser Variante ist, dass bestehende Matrixserver keiner Änderung +bedürfen, sondern die Übertragung mittels LoRaWAN von einem registierten Client +übernommen wird. +Eine solche Bridge erfordert weniger Wartungsaufwand. +Außerdem kann durch Beitreten und Verlassen von Räumen explizit diese ausgewählt +werden, welche relevant für die Übertragung über die LoRaWAN Verbindung +stattfinden soll. + + % Mit Hilfe der Kombination von \emph{Meshsim} und \emph{CoAP-Proxy} werden zwei + % Matrix-Applikationsserver installiert und verknüpft. + + % Der Chirpstack wird zum Aufbau einer privaten Experimentierplattform und + % Simulation einer LoRaWAN Umgebung genutzt. + + % Durch möglichst minimale Anpassung an den jeweiligen Softwarekomponenten sollen + % Matrix-Anwendungsdaten über das simulierte LoRaWAN Netzwerk übertragen werden. + % % - p2p matrix https://matrix.org/blog/2020/06/02/introducing-p-2-p-matrix/ + % over https://libp2p.io/ + +Ein weiterer Aspekt ist die Art der Datenübertragung im LoRaWAN Funknetzwerk. + +% \newpage +\subsection{bidirektionale Verbindung mit Geräteklasse C} + +Die Kombination aus LoRaWAN Gateway und Endknoten kann so gewählt werden, dass +einer der im Verbund teilnehmenden Matrixserver die Rolle das Netzwerkservers +übernimmt und mittels Chirpstack an ein LoRaWAN Hardware Gateway angeschlossen. +Alle anderen Matrixserver werden an Endknoten angeschlossen. + +Diese Endknoten müssen zwangsweise als Klasse C Geräte konfiguriert werden, +sodass sie ständig Daten vom Gateway empfangen können. +Die Datenübertragung um LoRaWAN findet somit bidirektional (Gateway->Endknoten +und Endknoten->Gateway) statt. + +% \improvement[inline]{in welchen Fällen ist das günstig?} + +% architecture: https://www.chirpstack.io/project/architecture/ + +% based on https://github.com/brocaar/chirpstack-docker + +% \begin{itemize} +% \item{run the stack twice} +% \item{connect them either with a packet forwarder or the gateway bridge} +% \item{Whats the smallest easiest thing to test this???} +% % \item{connect both application servers with a dendrite/synapse each} +% \end{itemize} + +% node simulation (+server, monitor): +% - simulation https://github.com/devlaam/lora_simulator/tree/master/src/main/scala + +\subsection{unidrektionale Verbindung} + +Eine unidirektionale Funkverbindung mit Endknoten der Klasse A oder B könnte +alternativ umgesetzt werden. +In dieser Variante würde jeder Matrixserver mit einem Chirpstack verknüpft und +jeder Chirpstack erhält ein Gateway und einen Endknoten. +Die Endknoten werden ausschließlich zum Versenden von Daten genutzt. +Die Gateways ausschließlich zum Empfang von Daten. +Das bedeutet beide Geräte übertragen die Daten jeweils unidirektional. + +%\impvement[inline]{welche funktechnischen problem können hier auftreten?} + +In dieser Konstellation können einfachere Endknoten (Klasse A oder B statt +Klasse C) genutzt werden, jedoch benötigt jeder teilnehmende Matrixserver auch +ein LoRaWAN Hardware Gateway. +% Uni- oder Bidirektional?\cite{pop2017does} + +% \subsection{libp2p} + + % kritik: libp2p zwar 2020, aber für unseren anwendungsfall nicht möglich, da + % service discovery/rendevouz server über lorawan in diesem rahmen nicht + % umgesetzt werden kann (und existiert noch nicht) + + % will not work because of service/server discovery impossible without IP based + % relay/rendevouz server diff --git a/paper/title.tex b/paper/title.tex new file mode 100755 index 0000000..417b22e --- /dev/null +++ b/paper/title.tex @@ -0,0 +1,44 @@ +\begin{titlepage} +\pdfbookmark[1]{Title Page}{title} + +\begin{center} + \includegraphics[scale=0.25]{images/generic-company-logo.png} + + \vspace{1cm} + \begin{huge} + Master Thesis + \end{huge} + + \begin{LARGE} + Title of the thesis + \end{LARGE} + + \vspace{1.4cm} + \begin{large} + Surname, First Name + \end{large} + + % \vspace{0.5cm} + + born on \today \\ + \vspace{1cm} + + Studiengang Master Informatik + + \vspace{0.7cm} + Your institution \\ + Your Faculty \\ + Your Research Group + + \vspace{2.7cm} + \begin{tabular}{l l} + \textbf{Adviser} & \textbf{Institution} \\ +% \hline + Prof. Dr. Awesome Teacher & Institution 1\\ + M.Sc. Another Mentor & Institution or Company \\ + \\ + \\ + Deadline: & \today + \end{tabular} +\end{center} +\end{titlepage}