From bd12a62be1c1ce1140dc55f3c5d7e699d023f64b Mon Sep 17 00:00:00 2001 From: vlad Date: Thu, 23 Mar 2023 18:34:14 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20MeshLoader,=20=D0=BE=D0=BD=20=D1=83=D0=BC?= =?UTF-8?q?=D0=B5=D0=B5=D1=82=20=D0=B7=D0=B0=D0=B3=D1=80=D1=83=D0=B6=D0=B0?= =?UTF-8?q?=D1=82=D1=8C=20=D0=B3=D0=B5=D0=BE=D0=BC=D0=B5=D1=82=D1=80=D0=B8?= =?UTF-8?q?=D1=8E=20=D0=B8=20=D0=BD=D0=BE=D1=80=D0=BC=D0=B0=D0=BB=D0=B8=20?= =?UTF-8?q?=D0=B8=D0=B7=20.obj=20=D1=84=D0=B0=D0=B9=D0=BB=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lab2/CMakeLists.txt | 2 +- lab2/res/cube.blend | Bin 0 -> 834088 bytes lab2/res/cube.mtl | 12 +++ lab2/res/cube.obj | 32 ++++++ lab2/res/main.vsh | 4 +- lab2/src/graphics/Mesh.cpp | 2 +- lab2/src/graphics/Mesh.h | 2 +- lab2/src/graphics/MeshLoader.cpp | 162 +++++++++++++++++++++++++++++++ lab2/src/graphics/MeshLoader.h | 18 ++++ lab2/src/main.cpp | 23 +++-- 10 files changed, 243 insertions(+), 14 deletions(-) create mode 100644 lab2/res/cube.blend create mode 100644 lab2/res/cube.mtl create mode 100644 lab2/res/cube.obj create mode 100644 lab2/src/graphics/MeshLoader.cpp create mode 100644 lab2/src/graphics/MeshLoader.h diff --git a/lab2/CMakeLists.txt b/lab2/CMakeLists.txt index 6a3485d..e38228d 100644 --- a/lab2/CMakeLists.txt +++ b/lab2/CMakeLists.txt @@ -22,7 +22,7 @@ add_executable( src/graphics/Mesh.cpp src/graphics/Shader.h src/graphics/Shader.cpp -) + src/graphics/MeshLoader.cpp src/graphics/MeshLoader.h) target_link_libraries(${PROJECT_NAME} glfw) target_link_libraries(${PROJECT_NAME} GLEW::GLEW) diff --git a/lab2/res/cube.blend b/lab2/res/cube.blend new file mode 100644 index 0000000000000000000000000000000000000000..c6187a97a4231ae8f0199a728f3f047064206e30 GIT binary patch literal 834088 zcmeFa34mQimH&T}4)7!(AOay_=>UdiPsq~U>Ga-7UP2N=b^!@lIwTO%F$;u6XjY#n zh`0q5Mcm>zD!5?e4@n@X?YQ7h#zDjpXYzC0X2$uM(VyObeQ(w0y?QtIzV6o@NND;d z)u)zoPMtcZwp+KVUdxQhv)U%lIp>x(S$00<%Jpi(mz`w;U;j-_P2ro~^rk3I`jwO2`ckf%nwor_k{!fT zdB{$Zp*QtQbd8OT5iRvgd{q{eNxUhW@>KlEC!gG>a`Z(92O_O>B0XYXwU2S*#)T~{ zEn(Y~X<=JiTdHeqZB0!RU0>5n<^6J}^;P!n=*y8`ykrkK)o-W8Q&zaB`&e^afoObmm!ZSzLMD;^;1SdHp7j=ht;P~<5!}|LAJU;Qji4!M=a)jfs zp`jsEpAnB&SanvqsH>|>OqVXItE*G_Yg}ktmEj}9kKo*W7$rHi-9u0AIz zU9zX?M*32Enr@_5)r~aW$liV*cFHNIL~=^jzB=hmeX?Xcz3Pncyz17-jT&`&6t6Vj z3C|DXSNzNE=;I}`>aFrtp0Y_#+k$Y@A^oEgB<~He<$&aM`kD;q2M7!+G=OMeR=Y@PZ32 z2p26{6waSNKdP5AXU+_lFJB&o=ggVY=envqH1>b+gCC6Alk_XMX3d&#-MV$*efQlL zZrHFPeCu1^8s2^P-Qhj=+!L-{yEeS$nrp&)@4Yul>*(m%CvvEtQrU4!moClw6{q&D ze3vX)62&8j^bx1I=%S0FILWqt{rbo+Je5oIvu4eT`ak9p``Z4hU$WKIsZ*o+DxGRR zAbrcPHUpIXHRtx@5=S|LFJH+RS&03 znG$BR*{IG63b!x$L#whWADrqwenE{FZ+`Qe_mWLAfCr7n9mPq0(&d*Ej>bLpbuX9w z)mO=enmg+~usb)l&b+^kJ}c6_>P~k~HcGk#SGCBZZ&yOSo~s*j56iA&-y9&+%E z!&35tOI=hr4WBZ`p=cB*C_eJXZQ#Gd?(6oiI<2{z>MU(mFwKo0KQ3&_jt}cv#zl0Z zjk^gGCPZ<9a%!*QPgwnDJWgrCQJUsL@|SYL5f5A`Tt7{8%7c86!^e>yd5{I!eV9}Z z@e@v5C-E@)C4bQnC#ZfCr#AX>wSU=P`6y4y?aSf&RR+p8v0+@;m_0unKcQfMUpH|- zdKW!B;yNdcZ3z2NwD2NcVZ{?J1;tx)@i>oCG{Pla<-+cQ@p39oxN&>O!@?1+oYH(f z`+nKx<+Q)vjr{y5pC2dr6fYh7<(N=CK5U#eHmsdw)8o4E!z%BjNt4R5liv5xyY!?m zc0+eS>Hy&+=+pbW$s-M7|D?L-ml414@S{5*a-m1zDPLdTalhVoUas~Zx4-h1Y?4!Q zA$Q#N#7qAAwsDc8%yEd`#LxGq>09y2U%1#z5Z$Fg;fN-lF8jsl6({H8l5bot@l>B7 z+;|#czs$n-!=ghj#bbM*((%V_ukik`KlYW5Bs=mE@0U-0^#RS($A;B4wmzd5=m`s| zys`&z3MV<`t3E?6DLozsKJm&stxgChUMHXf`t;&0hsaEjwHY6#aC%*x>7v)7JvMT7aeggcl%eq%1`+qgCJ#= zADN`Hq%tYaca4*)!{%wK1I6+1^dUAT4&4bV4m%0@b-<7J{lXE?p5Thkx3%cv@*o$o zAeX{^nc<~$#eH20Tr}ZJNYshK6L+b@vQ_@<3*6rlf9^y{= z(cE9}&yq`d3yQb=a`MMzM%Rk>%a32>k90A~)PW1eg|&577w}Ai=p9HNNlt$AI3`Q_olg$u(=FTFH!@>4#b)+gn#Klw>k=}dAZ*&g|ouCfVIKKap&;uMzC zT0wn_tzX3XP-PdLWb28&lrOf1R$;{}>_hP_#glY+Vuv&+xye&BqF2~25Bd-kjvtm^ zI)uOI(5d3&#}+<}+h2Wxc=y$5txD~myd;BUq)f=>L%%%aFMRoZJ@|gvzj?Z?1H$#4 zZ%gq=vzOAyM}EGk$p#9iIq{S8)8ldQP0Jg3#Y6ciZ^ij#O!JEdogxGEz}Ktj31bi7 zm@|v#f5Ou@8ujs)U3OWh?+;pU)^{2C^}R*$iW3g)J`Vl%ukwhm@)Sg7Usn0!jyBYt zJ|@=Hge^17x?w}14JGMYI+C1eb|pW-Qh4YZe%M^lPxJlo#@;~U1&I@%G@JYJe|RPRu|@D>i^F^^|Wy27_%1ercu#c zojm#i)&C2dF`Qakw^utCTjC)=POsPjNF0+3yO3_*^{8({GU68> zrTe;(o)xAJS)7SxJTPmA&B=8D9>}V2DJQvf2tFd7r6z?b$t6FA3@6C+g*Oit#S&g zJox=`$qzlcK~9C0Cg{87Dds)Vj0wbvuU{s@X?9aOIBK_k+a)ayeO}mHd4eZd&?R!k zA?c#0%yH=JM!Z{UjLmE6!s(`+PcnY&j;@6-zi$uuFgQN9wF_!(ta(y^K1UEH6iqn1XV7@tNm;K=i6R>T_3j1s0kZe?f5~w55*VR@nd&|afpPvsdwmO%&C=v8CtmGeeTniVKV(r@yabgl zKX{76DUNhsM~d@xB)`fg9QlzG-4bq|QX95RFZ3CNWR+jI(kT$X!f_{h z^e*V@6@PtWUD!6u^gRY*TWDkt#Stbw3963x{d^LR_#lVRS8)m>FMfsnGPO;t3uhR6 z&#Y?*8|#wo?&}nNiHCThOWIvLO#6?o|H}T&(-(!aF1t2*_t*Qs`hATHlqn5Tr?J2C zAb-iEvPur$_OdrlILPk%MI)y;bn5F$e(_fRN*9Da4u#ixfmt(}YUlIVUGX^ai1!1+ zTVU3_wNF`iNjT60#Y2uf;<700%i3(hGwSLi*P^!W>bdfgA3gX`@!}&K#iL6g`WF2gw!q#)n3*ThUYUI~{4L|WD|8k-FfAPZ3)2X13yL)bjU^aV5RxTyHJ!@g<{`u5Rz%PrwM-ucdOq4^e4XXF&V@{oPw zw2CKxAUMbaRR2D!zR|Sv`f#do#QWt{oaoUTIPo}ao&=>s;S0(Ra_axjJmu7I`snk` z`p=v4^FP(`OD?%2yyA*0qWUgf^u$qawSTpJ$tju14=DM3n-Zp6q)~3dah=e%p!1>1 zDw!pd?^m3{ay7NuS77#;O|<&(^``ViW}SPT+53O(b=QTPuD?EVvy5(Pw3hAaH?sLq zd?>4+hT zhP^7C^qZtBUk6G@$Jm@W!s`Fkzp0&TzTVyZAN`kt(mC({s#D|ZO}(4k5Un*phg^cf zCmz3FHb0H}D7?6now2df2vau%MPH8nH8;}vKJ9(bx~QPSa;j6LDPHf-etlAXSG*i+ zDbNxxsJ;1TR!8d9^Y5#gR;#`%^QR(cJ z&RofVy%`U5mWp)Mb>IH7Icb_dTzl=c(HXMq%veIapvpNmyDFTz?n`;MGWWG`<9nV6 z*WUejK2GT^%Qr`P$Yv_59C`yvAJ|+_{Ns-HFZ;`uI;YF~pLBcSg%?JSZ+;4^pHLq9 zHYmNMIrSshzs}fxThwMI7nq(`; zB&Tn$B)`ruBSUvk`tW(EesxEqboIeiW81&tIn(MK-c1dPQiJlq3j@eq!*z4ILRkJItHR!=+ysf?x(ik&;L|L=6+fW zl2e-yp1ucatWbXucY1G79g=*4XPt9)cz*5p$o{Gyk^|c!x1cWUqpJX?cUvjC>*L+-O;=61A`+JT+`=`9haLs}dO-V^Eu|O6 zfBF0BWPj})-_|ON(y%#Dc9&o2YX9o9^?t8=0;C7c`Q=m&#j9-CqNh;usee_Q5+BK>wMOMB zCwY-ae&VsQ!uVAN!o*1q>08dXv;2M@U4gesn}#kbb2vLB+`rB#!x?%E0_jeV^94RKL~l_vE`D^#c83f9Y8D zKx3%-18go?kOx^Piy&nIk2LYemf(>$dQccSe0Lr z<9NFAk)wXVm->*M)DX^eu3?fH<6M8>Lg`ITR0n;>b%-GJ=C16|Xos`9)7VhnFCF6>K%(8P4Xd_2#{x zp}2ksM|H-ZA1J(R+4Au2d+rV2`@Ro^?|px|yZ65LhS%Ttws5IAAEP}~Q)ZgI$5Zy6 zhajg9kySFtk3)XH-cW8qrTe-uZ=br;Q+EeZ%3sk(Koi4GYHcQ{Ts5u z*DoVH$V*V^f|Orj`Tcm=6?=oHIGpqjj=teM`skz4m@K=g9jk4sk5+rfDPC(rvcKjC zr5rSZqS0JZ?O!%mAE0_5{>Y9j)CFV)`sEkyB(vvvy0P~K=Bz`T_QJZlfDXWyZsi9m zT@KsI=HP;tWHW5z6t#4w#K-uF(BUN{dU|Jzxod4BYCwZs(S+7xEeSGS+@Svw`(v2K45D$#&QSs1F55!;Vd)u~ci*%;;uQs}`9qnKI zwU(^9Ci^RYImsoNkXh%~Wb>?nI;#$j@Z?unqz}rZIP~M|1Dv#U(F-4&$d3~(Je3Yk zJRW=>LMI5V{Ky^WW%~kiF0pCvK3;T^pK^;$|Q(WI(k4)zD@l!`IRPG`F(p~7vkdS z@F5)=KN9B6<(4s^m*x((NbO_R;JMB_+Tn$M4ND;~cO(U+ijC{2FpS59I4K#d2Q zpQ}y2T;spS4%uH&Ye=%a>VfVgm}2Zc)!4huz*^^!Rr0DFl*=!x;&H^IYjmn~Uw`P+ zPbaR}7R7px^YCe)BTf)MX_CW_$1k~yc$+bxq1ns}%z31`NrieYe7~%5`%->EbS3DA zvA5#z3#vc<(1$)0$szmqWt>l=)%dS@zsjKXK-B@+f3mrgK~mUw1{ic5N%3j%~zG{xll!{B)m&ba;@au=)b}1I5dU5B|EkiRL~tGai`xOZ@VP zRyc~24tzg&=n$QPt9Zo$nFnfJM|+SJFZ=K7v0wZ&{!bh`E^7ChJ1HN%Ya#*>53!lL+F%_Ur;h3m(px`%-pBd zj0fi43ew4ou=Jrg^dhJOhC${a9k&T9J=)Fq&ULDjoXKGa0K!DX~YZqJZRg{fG1j?UVda1j{J$? z`dV`)t=fzSg*hC!(gV7{?}yPJX$nVeuC6((nf8{jy7i)b8&sO?&-`p(LdO3ZGu}@% z>tt=F?9uq|$&ajp$eRR{%8qW)DLC&hZ`!FuM z4cA8fKz&O=H=^4_=YEG zv(0+>Y_o2z@Z=eD!VAnjnT;*u!xnSqSo)X!8MF5#RGk_>u_>In{#bGxfc!H%| zyndwF)aOUO$V3>NqWy!6J;hEuNobR?hpSk(dDC&ry(+8?6t zY0@oqmoiX3LG@M(l2o<3jvaXi94KR?d*Q$Ak?pAI=A znd_^=hROCWJ?Tktaeb){$SDnfb@PScSyz1}oG^WHIC+lQhi~pZ(Dz^2pK%_)>>&R_ z^V=&^>qbX=Tv)>g_tch&;i%E)=4thPSNlrzdx`puL5=^i|HYd=8D4V3XTwXc|3qYe z$*R3(`aMORht)o6y^G#@>#fnbvMaB=GQ9D|8>4TNln?#*VP8LSn+V_6FMjl>uyFiv z9EUVPoR6b8Y)`r%I7u*0BOITWazaZOsCa8@TL&hZx`0k>e4#$j4`BZZjnl((R%{8! zOYY|MAy2EZUhjCUaYXC? z<0piZ%sWT@1&hP_>6eA|*^Be?s!WohP^Q9qCFP}Tgay%!pdZFBh)#v$+eCiw;1dsn z@ACkcG(QZUV7wlZMm>Qp2}+LcoUaf4{zYAr(Qk9%K0l?$?T-C{6HLFLcCRq)pK)L7 zf?BhE=%I(A-#Jy^%s8#@cXFZwUr>8HxEEY&d}`M#R;-BXh3bR&scy(MOqm-_y?A4I z(SpU%nE>rESD&FVU;T%|%2V}Hbb|O5CeHWAaa1N~NQ=iQ3@>ovG{pOOzF$1x>-(Vt z#$|;E5Ii430}f%~;0KPcHsg4$`HemE+lkUK@o}hju6C_;fA)CEK5Ey#Q@=0!aUR^a zwU39Nd9v~of35W?PUD375XIr9y!qPbE`yDo?+KrH;)(E5bGO9%-uJ$!|JNQd&Hq-f zUY)NmDvxNXKl>7*pYC{q2aMw@J|5?XyG!?R%kiUAXvU4#Ig5g>NC#?urM4=a>x>?K zkot4RbnOAt?*yw&s;z7Pul6+S%#&yor{4t8`~aFXsPR8;|A~#}H)LilHs3p@MDst5 z6>9UUGx|m#C^?Z?kn+6}uv}ZcQu2`xP`Z#m?#9ag#>L|mmMxN;Z$H^r_E6gbT5B+OAzjDLk zsrPfyjjL-5FTVC;;pBzuB6*a@1&iMnUUKcj;pp>gA{>oFnonzft$myN&5pI5_lI|G z{&Kj`$gTT)InS*!iMMPg+iLEib9#!G)4RF!!#jbX_@~|Z;>W9w$o|rgbfR~A*+zUd zzn7l12a)k!y61PLWKYQ@eC03QYF@z@D?EioFTG%I)gRRXm0juT!%EeA(JEi%C%I%# zInhZc${+r!6Do(&B){r`;xrx$Pj*t@D!*jdSN4|;H4aC*XqX-@x#P)j?iFv3!qU;K zmG_2U`T8%yvDFPxp0c6dzhq;b+0dE(cYXBn@Uz>VH}6-sMSDK9?@v5cHrWUJD=)P* z%B`_jx)q*qw4YP@>d9VU;miKIA3$_CoiD@R9gLqVPYWv_)nD0=xr*wakFUC^{DkYr zYd@>vg&&s(JiW)L%t}{W8Xob`DNoV*VZ|v-TZyL;4;?%OBUz2Sr+D(JJbr&HITcsz zP7g;JIf~;(<@-3rv%eP{g^5$%k`o!y_5iCss@`LJotf1haov}txxMV8HcOpTJJx%V za8&QqZZ*eH9aEgf2DL}^x5AY?%0vCN<|V3I!jsJEBXmcN`abbcJy5*ruf_qjRkcgi z6Va$IQQK9%YRkx>G=+t$K3;u_obpzh+L!tZ;VWKY;ft5jWjE2`)Rq*le3@@a7SX9c zQJU;0ITWWdD_(x3NteoxF;u!y-pH$R=p2veg)4oj9ZO%*fq2B7$|4&mFZC7bE2SgJ zsIhs|rcF`#WpB;>q)+vGg6dNgALpsC-T~FONH3C8bw=@$U3G@~q&V45@`8hYbq^W5 zm5-bsCqE86wHeX-4!+>@SEw?}=Bj7%t1h9RQc!rRvl=HQG8w%RIVu5hQ$xUgmRkRX^n=T{f~{pKLp90b82<4oFwgM-n7DvV!GX45}@43_`OYd^M3uzf}CvL)ljEpKnHUZL>7GoXP14ZL2(v&!|0DUkj%_qvCk zSGj?4mf20GMtWKF`k&bTwf^}CRvJWgtWoD0Cn_VHdFjJZ{+X4R{5uAF`{&$U}mqAYo;dgD9vxl<K+R{&K5>nVW35#=+dpHk>)a_SanwGOx{- z@t_|J9%N>{g97#3gYwbYpD&Nfv-Q|Jw)y?u*4JNd^L22`65B8Cp8b=k+*P;OaL$F} z#oM*(q3u3D(lgcPJf(Q)yV68bzLT83yN>=`lyA1OF@n$mMVB!F_&1vYBwrX44`1|k zg-hS<^aq~;d@LG*paT!OVQ(wee}V4%MRednmvwaTgDxCWOa~rxn;aed3UtMCf(P9e zM+ZOXfRqnB=yo|e_<Wgzu?rL*5k zSKlKf^9TFJ^$R`t&~J{l8|a3)^1~N;@S*Q=^zel)u5ak`_)h*kjvl_qpGFTp`B%Ai z4&O~q?zsNRAAIN+IePd)7q8gRipvozv4+2Xob#s2|JJSr`%a z;17M0^l_NM&p7^TU3rEF`ez^EY%v7nwZY+JYZLOk{LVH@_5J1u?zp%(?0BYuE7kp* z=Xm{jWcFmEf#y7PW3`e72Ne}YZ9@(XuBsRwIip9Tue3*e(QzC{95jQDbmDX`oXpY} zt?u7?Po(>dgK_$D!(A8JF)HI=cl5iz^U}HJ?$&3E>5Fiu}?ICu1$?7P~(zOm?CER9d*yS=mDuIuc(DfYu&*pK|Ms||PBb{7Oq zHvEule}th*hKzHO8UMJzv_E4rU}F0V4l><=T*>w)zM3JZ4es?AYFBL>CyS9;V%y(d z_3ql0{TK}vuc3iOCxV-8~sV@{N4{xB9XX2r+O z_!uTS?0mHGAA79%bC8`EsSnNl$c{NxZcNzi#u{MPB-`%;#jht1Wmb7K=D?pZ=Z!`y za(bxqdf{Y)_GM$ zJqzcWIku?^nIrA{)(K_|p#E5l(tj7uZCLnXib*u@@|9$%0*avQ1C)xK#;IK~n z{st_Eb(2Fr*dvmTLi2c0kyrLuWPId1JVl?mEA4xFTlsM`9wdRW8+|i@Q^jP$65#QD=Mmj?7WNUw5*4ZDJPMMyf z^#-2q>`%UF_RnpZ(omo_65AD4@`DD z`vW&Q`vZH!`gI;rclIaWRQqq-xAv!8-Ps?x;`V2~t^EGqtZsH}+z?!`Z`;09eY2vEM6YeX$nU%cWWU>1lmqhQ{xeHE@-U%gt&Wk_9_$iw& zk;d+YGZ$~@=vck}y7e2{uU@>aeZ}In>pIr9uiLPyef{G0HS0I7YhS!-x#GI-#&UN# zIUFRfc;3hdeku79bi91=73(@Su7!KgVbwdWd_XAE4tqf zK2fgj`X}U~EZ9GLY;Wy9r+v-x_I0WN`+A7Fr5q#0a5E$A{4@`5ao_J8jG^}^sJ6?~ zo&Cu-&HlL?_pSXiu3X*OAGzZ8&mGrW`_EmrZq?f8?POoRn@G>MqU>J4mCpXa8mAv% zFIWbLdPLpXpL|p8fAhYzKjrGq{>T-#f7h_y+kfNgm&g9MdHOEb+vV&JT|G>@8{=nX_ zHQNvKPj~hw-!%JYZr``|r(E6HAGzZ8&yMJ={pYoB+F)k(m9v+uTGRV=w!C6J&mEq> zTyM_VAK2yW4=jh@kq+5>`pG}t*`It?DYk$hso&Aw3ZvWf~y|w@R1(lPR+vUl9 zxHc(8-H;o>A=!f0u+Na}#{F_qb2Os*ZqlYj0OQQ!L`b~}= zzQ~FD80{%Q2!L%-S4!xy=0Qt}5M`YuNgU+QlfeIDPgeG+%+Wbi@;;5pK^r7*Q@sRPc%Z-nWn~aN$ z^J(*K`uBxKVNK?ZSLdPU4gO6eSJL>{b)sFb%fnVXj^!pNjb}xoCkAMrU5*d!Gm&5C zJ!VYPvk%6{pxW><<6|Di&sLN-KAvuLC;i2r*UI>ay|5p8z^*pD(&+q!r%5xXwM_py zd#A#`Gw$!knSL>N&^SHJXV{-d_*t7A`)lp@faza#HYNxTGvnjD!QYQudjIOz|51td z`+h8+{uNaF(>`(9^Cx=PzZwOVyLy3?oXu-uVO4&mMFg-01YrEBd+59iHC* zY;Wub+{=DCOWSk%9d7D=(s*O-cUaN9Fy20GnO>cL)t_iR1bbn>+ze|!>}pGQc}oy{ zerKViCcNXaXB5^a--#~ade_cA;=;U-Rmaj@5D>jjd+%ex!9h)MLxo)F_9q7FzYfa} z1F%#tCTks3G_&uI_QPJ-kNz0DT8)fr4KDvkWG@>&)rLFo+4*r3@nsts{KVPsVHd`J zgh_YFfXIG_8s(bxkZ9g`u;KXAijNzYZa?*%j6do28)8QFg4GH>vVQeK+8_49ev}Bi z65d}h>D?1quwQcj`F>ZMz&@~HX5RArJgp~^%6<=-66WcQU-k3;`;Tvm(?9=@ReQxf z(A>G*oJlv%KG{Jtx5;|MP8{F;RzUvo_3y+%B__MoCY&0@7n(~eP(;>$- zZR~hyn~`DLJOAf_C(io6BO7jN9@A`OXg+t|eGLyz`cT94n%95ji-&yqiy!#rU!VNz zyx-Md`d^=GcuUpvu@4?{^wXDJerQW@$~T_s`sqh^eDkYEwk$b6^Yp`ie!BT9RSz}& z{!Q;|{LN4P(75Kjk3IRr&;DXt+aG?=F!s^!Zrl2iiz4}_T)V3A-P5NuoO<@xB7HqP z@6AtqYGixkne{J8ANgnG4?7}#Joc@l8mq5Zy?xzhF4}H*Y(ISD!;O#r`d1APj{ll? zG~E5$4?NNJ*@~uJ*_XB%9uZG5Ir+1zn+=cVJi~tOx&5)vNBZ@P+0!`H8=tOxe`n)k z-<{fc=zV|QcEw}!x2?VYAGi6szwi%>m|{e%ul(Jk&4rt_Y;NkOE^Vl8ta<#!ZNK~W z`?gj5_BY$q9^;SN?QAn&$hh~IgIv3f|4{^Ov+_=a{`0Y5ytWoH3>m84bnOqdMfz-b$r=DoNYRC8NdIvDFleI_=&_tNAkXlsWn7wLikP{Y^KAFy|Vl zd$(v`bKJp9#pxkTy5e38Z=M#0H{WdM!r7MTiZo5o{Op9;iZ=I9wLLv)_UkffrR-PW z5V7fZe`LSeMn{aRCz%o^bVGZU8=LHvaDYYdo$uumi?!4u{2%#2kg8F{l!cBnwd8_dttxaU);RO)eox|&66_Bn@p7Ezn6O9V(r)LZ- zJKPV&O0ysHrqcE+{!X+X#DCec#D3Td`;j4bEzFzRTzg~Q6zmZ08_XCm!Z?k`)O6`q z4`Vc8(v?M^;Y`}*dKM)A=)36T-P&Mx84N&yBi-5YA@@%BKgzq zGma1KzAH?aHwE*G=S`RYx;PBe6nN$#HlgSHqs}^Hcp#Uo3vok#Y5Sur^=n|g$=M70 z)_%q9@W9(2rS>PM z{wsZdP5<8?g}ty}#`VY8)waI_Z-11=9>$+^`xVc7i^fP>uvhKh{P^eWh5aZHb|t*O zVA{Nw@lWk9X@AsNhrG)6M=eU4ccg1w_KWsML1+3R)z1^Y`KZ1r7CpcF#h9j|2ou;6 z?TsqzkGkf$k3S)tzU~K_V)hed%^spJnteltUFUeSx9DE8pJUPeEFXG-~RFw4PR@y@GE~?ef%@$ z<=)=C0-5Z~MT-Z{NB8C!cCC91N)=UWOuNj^8#jH z;@}eJkreK1jPGso_eUM~)tN>6qr^FBe-t^Eg3%R0G=GKm6O znYR18Dh&h=x=oG_e!|rgzjqHj=(adI_*p9bE!9sHo{IJ}q+Jm|U{ z9sHm(wM11Vf3F~T(Cu+_@PqFCLyPIagRaWeTlhg2zjqHj=oUFT_(5my-7Clm9(1%9 z_(2y04-}OTJm|oKAK?*03v@cmyw%CYJy5${7<}q!ydG#iD0=XrANH=|_Dwy`IDNwx zdhnsoI(qn$Z%qn4_|R{1^zbF$GIX=iAZ%33LeCQWBdiaum8a?>X=NvtJkvo^7 zfAFE->geH%-qYy8haUaF7rB$@qk9M3xXpL9+_A;uH+GBHW7-AzanFbLV(6w-dkW%KCzxeZ-x#z~&3;R(Yu&dR}?xK6(1_dTuS^hn6x)&_r(Y$}Jd*IG6 z_rRTD@YB|XRsXpMPIvjmA4}c;?}5W!*bhAvwZrJ%x8cu_7AWlOcY+xN-W1J@%qCv5 zwyY=Z9=KBW^X?rm`|zs=pJDESD`h|b9=Ig?S!yd!fBdWQaE~b%{c-=f2hLi{RjIt` zdU_8W<00c?_BcB}^1jQs$T*)i-(-ATWcmi}JJI>ed4vB?H0Md`Q!*#pd*Jf$F!z1> z@TBo9U#wJ*?5lf0GL8@Jvnz?;z&&uOdfZWALP7+)A~GHyMU zacEdqkSfvZ|L@X$XYwD<$y=H@#c+v8*g%s5B*j4s04lk=R-oH|$JfOr zrTU%^8QbYS-CU$(zL|b1T8T>Pt1|2Cya|{)*3FwnB+PSqpaR-Gd}#OCVF~;?Pj9m< z-MaMwbRS9D`HAb8xJ>r>37CcG?K7yXe5J#UeMcSg0( z1w8OCrPHHzY;PUZ?7MhAcvpp7`g?k#xpRT~pY)z?sr&zZ7T62>b-DJ8U9IYMKIEXC zm}F3(u(jV96UpYyH2ZOXZc2KB{c4Qu}Tgq{r`Lj_QHPX1-k}8WwU8v zt!4*=u~}E^xI6E7X3{sFZ2Qp}Yj&=gep=fE(+<=Yw4Q){8cbLZ_W=>M>2_T#2>vof zPWS8``rOe?mc$q=y2!rq(05hHmA0SwrrFO@i(UVGH2z&~>MrBy*9I5PHJ2)}eiPt8 ze&Y9#xT@qt?tYIUy8=7b&FWa*K5t!nd*4bMzl%Y7kM;w^=27IrI#hf=1@kA?p}-f^ zIHG&4?l<rYo1Uvk~gt#|8Bz!Tj(>Xd|ekC=4x)G%y=eU@cCTCKmYs2(5#}B@`f8eG`*peYoY)Rg+$#vv?8o|(`mZGW71p0#L1ACPtmr?n z7xqI0>{?iVqW!u1NnHE$?{%YnagQ7KlMp6dd6d4NWbUDAdwSCB*JaWef0FE1;1IFt zcYkERX#L5JrvvLx<(ZiEry{C^d)@NqJvQ3;OZn$LrnYxn-M(Snb(NaftuM;2kAZje zfqpmpU@y1(P^y+#xM;bBx#Qh@?F0+cvQjhc%XtsvU|;;Ocia8dd*@et-UB@7vW^aZ z(8tevfCt?sM+ZOX;^#fUgKmqXgCBJ9^B&+qx69GN54zz)i^~TdbQxzS_!a1i&wGFe zU5%rIA9O+Rj=>t^)Q?n}NbsOr>FD4G-SDBsbl^d^+0nrdy8DL|(}4$Fm!pGUfv&iG z;6b;?(ZLV8;X}U>y_8cv@Sp<^euO&?FVN}y1nq+T*Na>`0iXI7w~O)>J^0Y)96fx8 zx%!Ys4?gr;X{QcSkK*@Do&0I^;6tBv^zcRQ znw0#(hklczhc9|dqX!@QEsh?($el(HKJ>dBJ$#{GnIb><&}Wue{lS-f)9As6zQ)nR z7yWNe$sc^^S2}w5qW?5{@S)%A=<|GCzG?K}L*M1-;fwvcQsmF$yLF;Hjvl_qpGFTp z`B%B|4ZfRP{oRw2KlsoyKEiicH}v2`Py2!|awp}l^%}-uzI$bd7mvqr{lN#h$WM0& zb{uZ^3w_=6j5@zDfAAM8G=3+|u`^@b`3(nir`h-NOjW}A3YnCE>QA&k6+XOgWJe|O zi=E$SD)0QpJX2Tn^!)tB{K3PGHcH)#hW`H1=uY~JKbG3QHOABWLm2yEFYHHsz^=Be z#pgH78hmpQtcbpQ^+Xr;H*kXBg9&;z^oi#;HdmY&Y&Q5wby<1Je$~clzuadN_*&}z ze|`gdVL$0c4|a_L(fN(dPe*?9=WpTRZGR2hBm4E_{6@8Ff2Hi_eYZ5{H);lNu8>Q& zpU&RUe25k0UkywYeXALXHZ;8SkGlyCjYC2QLkU)6qHABy;LmJ4}RzUcgo8&CVs z`I|${FOeN;-Xx2ko}Ry9KEwPbGs3Mqxb=tl`$>(Pr!nvGb3NYm?>W;pw6ACQ(2Y?~ zlr$#fu5tM|*mZ`R-<+2;AMtZZ_A@@hhyFEpRsz4KOq=E6_Vqke-tP>loO+`9&5K_* zyt|o z*wvQg(iVSTPZ%yXzl(irkLRcC>$x~V&xU`3{c3_s2Fs<}4-IR6nr^@Tzpn>-VL$YO zU4!5sOgsAr)86iRT4|rZ>;2Cd*Y@I%-?r1Z)}u^2(03ty`^7%=mwXQjJdQNXUzcD&5hCd_-t zqy(fNhY$Tg?))TvvHSCb?-$RjO5~%Yo85=2XdV?@V&_qLNWWnBg&4J%c~s}Y!y}j8 z51_xa{n6r}9dG?}6t?$dMeBUdUf3@?&dsA-{jjEq-JjnV`*mJn?FUSp2lw25Y4_(_ z`}P0(^RXB9>#BC`x~Lr%-=81tkKR%FjBM-gkG@sCN5aEADkVK}9(9|UN8MIp99H}L zfpO};lI~x()S5>Xp8nJp^Zlo@7xtq+#;%3Z?;l^%SRzR@hmuRPU($O_f3zR=!hTqZ zc1U=C!8H3Z{>gqx=My>)elVps*k2_nop0vSUf!P%o#|*)Ka=jy|N3!nX^Q8bc7J}o zx&QurbLagN=AL`eOfz@kUuW*WKgHa6ukhLCUi{CPyYNr3_umJ>=-K1VE%}dK|I)jk z(w(<;hJK2n`R-hMfBrd!m*_w3-JgGw;pON%-}cF?ntyP{_jf!$Eoc_~qvrnnqdxiQ z_Giug`9_BAM~r;9@yktTH6CN`&o?qO)cy7YPt5<-h*VIS*{N-m$CwBhpbM?WO8=edfyQ*HX@%!@?cf)rdX=r&dyRG*4 z-P<0{&e*Q@7=JWw&Nk;kd5A=Lv!m>tXJjSK4aFgGH#tJzQ2uiEI*gc z?tM?|RmUA?&QlFZU$5Hqv;Wxsi<^T0n60z#wb_=W^(8--WIyj)@L|55sZZkf0kdwc z$9?y!e6QRFE`7a9{KPkHy-FNj z3+q+b3;T67xO(C0hx8P5O6PhGJp1W=OM439kG0=WQz!c8L;J&C*e};)?T1}$=`S+v z@3Nf*O_;D-uhQO{AGm~+^{C+cCDU!6seMiM9HGud{J^YL$(3$@;;Z`tlirstb@6(Y z6Qf@M?1#OuAN?_Q-QR^xTklZcDVJuyr1h%(U6y^BKla03*pEE0s|`;#?QeqD{?@h8 z{&rLZ!MBXlH(KreI@Z806V}6b+i$vXa{ILHPv`Dk`!o9ryDDxQESKK?)aFas&r(Z@ z{`ts$D^1au4?S&k)sy+BnPx>#j`Ly;y69A3*cUy@U*}}t^HfUyyLUYl&D%^3zUcXbua8up)YoJy?YR+Prp=CTU6YgMnO3G!e^s97 zzG%mXcALnr^PX1A%guZGvL8SAl;LIOt$CP#*NED!v9Fo8_Iy8n+Pw9(vL7FNVLxn6 z{jlNKebJHq9@(k1HdEtfMzzk|S?(Y_fb(3VU7VP1?RQsx-gB7gcjphje2`pvzw6ik zqKt@$=#-50HNjX@e2xW{J{;r(=9wB|f&Zro3;d5s^IconW)%CAT1Jo$6$ zo9zCa^3Sc$SaMy*#tp%_qeq_)(|rW*>I0vxZl1Ang&hw!JD6GJ#>W%gzV4GPOwVdi zbZ#A;<*GB$`~v(PjZ@ohpHHX&RnIC-5IHzcygPONQ+%!)Jm`kCTe;y!PT`PZI`E*& zIy(447X;DTSN>c#c+hQfbnt^Nv}P`#8b!*Jm_j19sHmRhx|M;HFAOn9rX!*&;`NN$O|2K(18a(!Xt-F z&Fe*d3-y$9pj}Q*@UeefPs&&H;6uO1(ZiQ|kVX$a^i@~bdI#TO&Q5WClRx;-FLLzo zrCy}bgAaYq(Zd(HcR4xG3;BZ&{Z>a0U-C_(2Os*~jvl_qpNZLp{K1EQ*h<%K9Ut_c zMh`ypSw|0F9=_C{niToLhklErhwm___cVI&q2J}`;fwxPrsNMk^z_&8 z-Q@C5qX!>)>IZz0JBeQJZCN)i@ZOd=sd#)K|F|8nEBT#brX8Vi+Nb}#=}~l!`i09URpw;%CpfaQ5Um^QKLnyLk4z#cP&av+9Z^T7O!+bjdn!O2Juq ziprLrQS8m_4}T9s)tRG={6Jyp{ioaq`$0#&rXEwTNvFQsaC2+W`Qd!MJ|t*veO;%m z*N+>7ryLRWHvap7J7VcB2#D%+@%i$nOih$CC?ROYu+h|M`t_uGEozbLahxK5=8vvk z-);M)+?^J7onq^Cw${Q3+56M=I@=Dm9BQGLWcg0}Nz~6&O}8+f9uM#SVejhouG@?2 zHF8t0Gp7~HpQ-+NQU6z5ua|YK+0edeLtMBL;nuP#_Gb3HS)Wy%In6kru!_&>D5m=d z`+=!?t@e%{&`b7BRxju)^S^_N+WXwr$+IS_sjpwwzNQyve&+U$46y^PiC<;(@~D9e zi~|Y*y-=SO*WHu(oUPa3p%?UkUUH+XUeH(O|E1_<7|#@%qM6+KwmHU)!IB&x+nLUWWAsV^pZQv^)Ig8WL}@5mvyVIShald(vIcV zExxv6-RkA(Sr?_u5m{x6A*))_EGJ-P~ny$I>g?m-S|7f@RrotLa~uw*Y-6(p^uV-1tco z-fG@6dC&`bKrgw`u77d*0v}k=%Z7DJ)~sLAvF>V;dIab7imJd`Wqy$QVkRo;U;e$2 z9QoK6qCoaMSN|Q1p$3^_ll1}}dWqA;!v(!8Z(qG($>MUg(mr#< zO8?^YfL?OrT|091rXZ2^74&k=s`aauu3BB@q<%rKs0va@FJrpV%j*m1-TE>|BIOBp|makgBcJ-2S-*gtNYQJ`E$GQ!bZM`Co-lvc4Mlaf-(9hc1UV1mN+ZXe?zy2-xJ%I7(sJPH2!kH73^@1MI3+rm=E6%c@msM-l zZ&lIajV^8`Q)?o@%>AqZLvR=>wdVvG_A`C3(W%a5x?Mv2`JJFqC zs4APwCL{Z(9lh91ebGLio<6yA_ts07A!dD*dnD7=S-D5@)pk!N<)M7&i*ggDe6PBD zGTrx5ooVUGI%PR)FzDu$h4!l^W!Zgf5Pc7vdU-{##S>&t^K;Sq`j*eliq^sO{-*EO ze6QyFb(i~o&3A3STk{=0Z9fCwUtchSJZ5xTVHWjX2>vBZ8o<+I~d=0 ze3;pH-1G0(y2V2Ji$AH~uXnre*LT_VoQ#8U`f|g&-S?p_7xe5qQRYXz`%biF^~`Pl z_iOBh{g4~G+OY1$yzgn!%-JgwZrrKxbH=@3oYs7z3oHy|zX9t&gh@9j-ec|efI+tB zJ+$xmg_>jh??e87IET;E%NMiu^_sm|~oM=X2zcu~8YL@#0&t@!~qS z|JK3mY&TxaPaZEe|H6(JyKXu)8V|`+I@H5>0U!FC%$x*%J8Ii373XtrFAm$p)W0gH zo@l?*i`xyY883i|=c`AW)6sJ2`(?yWe9tjZ`inoJwlf3iRh;aT`G2mzxy_9i4wBwm zxaA_-&veb{S%1^j%l>BbxwoilRw!hT(It^Kg8EsuWZ^UL0Nq3}2_TwLmJx*+So zgwHNUb0Irk=)KI27lU;^(AY&Tbz4ZDlj?sGU)e6=7{S6^HS;%XzdVCisfYH5y|7=- zwdcfkxF5=zwqH$ckNzv&e)_$8+vCvhWd7d2?1#OuA11=CslW3XbUh{9;YN=mjWgYU zFw7B4uX+@xhcM}iEB!m4BZowNtq@c8WhtqY{lo#AdEA1`Utb>kWft3UziWPS|5-J+ zI6k|pck?xsTTe7^Fa^xH@$@7UM|mTJlt0)cCHa7fX5RC13B=lCktZS808QI=ni>Tc#GXTOg)`#BgP z^x;pJvs?D!p4qSJ`QG*0D`WP~JJ{XBd7|nbtt7^$%y&xFnTw75KoOMlJ(~=$AL0DC;_5N= zI`fEauhe&oAH8#Jhc>W%Nfh2=_B=6Gk^ZprP_Kzkfl4|A~b@h+W0 z6OGA?%SrXxzRwlE4@CXazr8&3$uv1%u6XQ+y|5qi4EiUV|1k6Zz2m8ZER`l~-v|C| z>_@!u=KaJ8e$)m0_W>_GvR`q(^pIJ5kuy&sM_Zp&r_=f+Yrl-C5w^C=c9H%5wSURoq5bzaxkgxdXn)D`g861#vCqgM^WBJN%JuIrkNt*SX5Z&>YmTx`6_ zj(n)-{7YuGJ>Q9@HD;=OdZO{wdh>tP{vI-eW}eRYRobdD89&pYyj1 z8z-Ff!EKK`7N}hXr%pVk@t&{!tYPdQM{ien=0A;o;)Sk@8^7@DAyK;G^nB}|r#_{A zd9I;9#n3$YtYzhL;DXLxK={WY~U3%Y}{KyXMZu5&t>5(a6xa$LnFSz8l4G)h0ns_wa zZSFfC^6pI2uIx+O43GRLs&RAfX*N8XEw}#v_x8s=UsRt|;-1E--tJmJkzW0kvor#Lx!}9^-Q9pI5xnsP>+%f(;bH{jvxno@IG5)CC zM)!le_w@4b2alJvvN^gR+_Zll&0~@uXo1OC<;E75b5JnE{JN|it4rPwUQtnTP>=2h zKT7w5n;yKaeZ`WEt9$tYuG~T$fcUTV@{eA=WZCGYqsK34A2)9K=;bvNCX8J+dR*L(mn~Xd6%C%PxXi z@FR84cfDD)Z!$&oC)Tz=N*K(ZLV8AZXThh-e+Y(m?Q_+vDiqCtN)p zhZoa<2VIrZGyE)75R4dFd~X$a&@FOw@GHh~eCV@|9=@Ah{#7x#$RB*@ zH#vIvVy85E@S)%0=;4dpaXpeh_|Wfi^zbF$Gn;YjQOU8=pLqdgIi1+vvYdzfSIxG9wrBKU$X0!nXg(1UQeOQ6Wzn)_^=L> z{YnzQ)n?sH55MzpOj~i-hSL7db*muJx>)BOhL`z11B~9G>=>+lE#_3Z`93pm@bJhb z>q7aUzez@K(qH@$2aPi2jx%vS2WlAmVK3}QeV~3=`F9(A|MSj5Sxh*%si^_QPJ-kJ4b*DBO8? zo4JAUY0|>&hqr~{?awG&Ybtn)tK`3O?JR!Z&;%D>%6`S`*wurphRCJcuh#3olI&-x zk+}as*>8_27X5PnIp=X`pnvgxbNkg5=F3Lg_xb*tOM;W4XtZ#ay|5ql#jZ9SyI($#{bonwzt;=voQKl&?k)=UJB}i}pYE4uykUG{yotmz ze;9}2?}Lmxyr+RLINZ%gHQs2yn6;ARHk!HEu5$siPuOuL^Yy-sH}Ijq%4|#E z*BRU2_{f;awj8{l*-+YFl~YgjKE^&rVB-7Oh@r!cHuOf7)?bOA_@<3Fmb(AHk6|zD z*R|c+54%cFLFdQKJFp&SufEtX_=Xv)%=>g6+VMu*?fbO$JNDduhnu>eG~QVI+5L{< ztw(L6zdZT*p0gMB%RS}Vbx}LKyd`LAex^`%6R!Md6dq$D`DnXmh{cHScdT}Vq!;)^ zzUY10dml6V!fJy59U@n{{fV#Mrw_{y0|m~Oy7+ha`lJ1@7xv5UwDzMNT8%_)WP3q7 zh49Bsr3lD)ps)fB-zjQoP~XT5~)Ah4|`!h##8KS zP4O<%e=ghU%wmAT%cF2l_Vpd-6!)tF1K$^Kf99Osut6_HF1`KL7!Go2?a$h;u&+-U z_DB0+FYKps>cOrywEzC5wLeKj`%51Gj!x)R_g^`>%Q-Wzcwb+4_!|GBeSOeX*!r2Y zukZif)zTE_m$t93ulv}hn0;_rv-jqVWEodm- z2iNk%yQ6(@Z>#!X!wn}?HU9aA6Q0<9%aiAizxa@CjW^s{-}Lkc8n)k3|CP&5ta)bo zCmwG7`L$g;JBDPR{`db=-S*>a9^U!m#;(?l2ibi{k^_D9RUdsV4|4Q(*wa0HNqD}! zdZ(w(#`vB*e@|uQH-|7q%(Ks5&hKJM^;3Bw<59bf_Vu~<(Sdz^x+SyF-UgeuAU)cL z^uYbcH)tJsU|(OPlGpsc#({l(!N9&g+Z4L}%f7zcjlJF1H>Z8g^7eJw*rziV`|^2L zADDHy{WrtbxP5#MR;{(++$nCI^R&|Y`t&ZNeSPIV8ow$H5puAfY>$&`Z+^x5^T30y z>S`-D{GgBT>jMwEMUD=B(8c%lfd^gA(ZLV8_`W{ypxf%`;0K-d_31$`;6bv(18a(!Xt(j==5zM>*@{rsy4YW_~d@E!QyI4}FcJhi{d$TU!3$L%-6|!i)m44|`!hEK$@B zcW7VV@PfS*cJ@2LOsL-E7KlG*-dXje?dvOLKkqw|v0wGzqYsixx1YbSFUfwE+RD=( z|EmAoV+xjW{c-=<*JrKes#M-|VGsB9F&;8LX59M#<7Rw*!8psfna|L8SZCj8{JM{G z#L%Tta?+Yt<|g<40sM{|AAgWEp82^X`xzfIjt}j#>$?g3;`ed(IS!+M+YW1S~Hw*iw&0C5Ik9#_Sz6uJnDJBZg*$ zWS%tpDUI^IwVF^sDxnIgvL1WBdFCP`@rQXKnJUoM&015~85+3ELj zGEZXOgj~$0SeK}Ztq(DO0$)(|_F4nAu5hqfY#lN5pUjT1Ir>fxd9fbZ zqui&v{xi*fBZl@Sw{oT1fB3TB+B3|&*UgK*IJjr?UcPB(Ruq1(Mx`+1!SdANjLlna zNrdyqW`PIpzrP{-%j+9OC%@or!*6TYa`%MBTRMXxS0RG_)PPi;UOsm>&6#xRowwJI z=p0si|8awBZ~EJCvxTCw@y1zaR1a~$m)jv6+y?WGT4@7>^3Rh6L z%MR+OKKz&$qpr+q%cZQgWC9?CD88)to{`ge;y8sUmx^QJ*HN>hGH6aC}=^S3Dd zgDa1$xxea&7BRe$)<-&8ByI_+E|drQrVLAl!LtL9Do)n}ic_{RS{qV7-GX>}iX zd}`g??KA4CrcSP_I&NCsGrw%Ad-l_9kvs9C$#pM0(Oh@jeNA-_z1Uj!%(q(V&c3Os z?y&Dns=M)<*}B7CnpijN`j)!C-`QICz{tkBZKq7C`|mByb-x=_SNG-*Tv#`!b4A_5 zkFKp7^XcpBI{$QM-S0krd)=7luBm&&35)Bl-8Hq&=(KL`9Y@z4@xwRNeeSSh>z@1a z@pYg3({Xj*T6jv`?-re0*YcjKx)+WfRrj0EoKyGfhtI7$_P=WC=Kb5ax}}$#S@+wA zj<0+6!9(gE8TD@yzxv)UO`Kb^dg8K!{-Evh1J8g4y4Aoy`yXik-BywTgnp}mf%ZSp z{`+m^9w=D18W?E*1MR=tN-}^jpn(Am3}~QVX@GN#osC)wOkZzIFLdW~TB$Vm=jo4O z^0QO#ZWwR_IvA(}19f1a4h+Ezw3a#8_Aws z8t@P3VW1AY7VCf(1Iu1dEZV!8-Vb@vgu^U~QfitiPPXDJ=B=QN&H zDy;pjl?DMhxW6ao3Jopj*eMNyz z_gK;HxrZp{`T_81XTxIlR5?WtKJ;5-{R#CvUjLv6ANt*n9=_1U>ml^uLqBYTYnP4> z`BT3s7xdsmpZ)*Y`xXE>iZcIBb^{Fr2%r!k%7*Y*H6(!$h(dNYFK8YjkcfDo$&zfc zD<@bIKgIlzi~OhYgC6|uDz3jQ2lwrA`8D$odhkzWe#k}nN#h4S_`8@Na*^*ee$az| z4f8`T`h%${`3F7tOUw_squK6h`~f|`pYam&LoWJCDp{2Q1ba-qMJ!Vh}z4=_LELT?&B=)pgl$1jiz{+Ckp zgC6`I^FuE1OXCMU_*XN3AeZ&F8tp3DAJBsz<1fg?eW&q*9{i}Ekc)gL@zXwXB_8MD zeQ*EB=y(t1->iqI*U+c$Bll*}GpT*#_G+T>VbVKZ?iAifj>FQ^>b+3!mr3tuLrZ!{ z_LTd`u^hbb=KnlN-mbfk9PNiq_A`%$*+-7?0)8kDC?Co$3H!*kpS;zySy~$V$i1kR znwVtreN%HEx&ImdCg*s*Rc-`UmVVmV=6q4E$uT6~u5xT$PeG`72)Sp!@kLVvE2lca* zB+q^ywz5HYG6nDhUce980In*X^nKV5Y@usO--pHbV6l%J(!Yc7NT{Aao8O0hPJZpU zeE+y?Z^xnXpR^wXeJgn=AA}!$9~Sj_sD2;T-^t&Hg}$TN|E4lbzZ;D2!y>(_e;*e8 z3;G-PXw~1KA2R)M_=i&s|CZ{~3t}8f`!@bT{C3}6giTM&IgiBthVA8X=s%u(?j?Nze8mKl`aVE--WO|znDl}h`&g2##S`>>nF2wvKMi^IhIw^j~6#Gzk$dquj) zeq=lPnTOgxhW?U=JM<3pH^2+{;ZA|8Ot)Xocpa?5BGMPke3on|esug)1+l+mXF8Iv ztNw-{9_BPPiBNnWmP#`HD&vRpPxAFcaqDM>R-EvgByI`y`3_;YEG1Pm6Y^;0kmS&F zBD6zjmrC3&p}oTMA&iI9o*QEv+#)bPNhqQ3Tg@F#USBenenE|c5xN6B4*p$j?Gogm zT$d8%(RVuOz;~+O$mJYqbv5lT#!<3eDqbyQiFOHLV!K37dDN4hq&AxLzC6{I51b$Th$0p)O+(Y-kI2iSLsE&h67zft~<$Q-) zWKqb}v9IX7dp^-!Dw2NA=77 zSaIFo&q#kYoF^c9|I^X5J0aYE%xsOaq}>Vkl+`aY&VOWnud7YJw|Cf|NO>FYj_7x{ z8tLyF>8FhJuZ{HcM*43?`i6B;eQS;MT}JvIBfY^$Z#L4~jPw&m`b8uCiji)Q-eY%mJYoy@*)kwSd8}>KSV~q4sM!Lm$@RwJr z22Hjwa@_Lo+EAi3s7V*>N(>W!ty7u1xfYDwr zGt#S#^ySeszH15nKCjOV(jSe|yB{;spNOV?Kbm$&DZc~qy#1o-(gD%5`^IS6J20B| z4~nKsqoZl}kZ9UFG@ACuMAPntd;L@|FR}jF?2lvpW3+#*wZA4i;h^$h=Eq$XwXeUw zaX&_RH1lK1gDwh5pMI1}A0Y`tdP-NK*RPxOwWcXM^^{+2{^0M!zlXo?w<`Sb901Q7 zyZE^y=D$W8>(u@z{2YA0g66&U5YE;3-H(w2+9V&>{nztkyN1yJy&9L5UJS=)62gps z=zhpwgdF&b-U|uxicil}V%fhhK07OtuAuX6{P09Qhs^RFfbqK@BCJvFIV9|t_8kDl zt(Tw*nS7mH27bT`__=>n_yJdSTgB-r90dH@348Ip24Uj!n(X*dzkE!B?G=7|$^DrV zF2C+i0YBgc{7|2P>uY_ZNo^73iP|puO%U;BVbie)p8`&su)M#_4A+UB&GvxROJ(pD#7XukZQfxRV{{LsE{I2Ot754={fBmz(LA z{=5zCXBvKrJFai2oT2)+Mm+05fBJxkhohhLyTmilWQvjW6iOV)Pezk@?Af7efwKqk z#;Cl~d=ti-7=PkDG>l8Jt{LmIF%C7?IaAhXe(_ZCqwyz|*grJABC9}Bo9~XgM~y!@ z^#8=;jF%I}iy7`4{U79@{q+8lB=6m_eGBHBf_cO3-xe(B>E$e{LXr1Y9`Mun>84gK#J0WaX^b9)S2 zl{Jo^>CC@nYiOZyDqZ~amOI7C2l&E|g)Qm0Lj?}-LmJolG6IR;o&u|3Vor`;Bi~I( ze4^=2@k_^#+GO-U>G(zchoM;ifEVzCQGqMcuT_{d7C>HrUvm4o{dEPGd%k+_3inni zr1tYRQHBFP5vLm-^XPq4A0o$3&v-|Bmm`cZr`mKKSIF4^wQ`AAi_3`M$^d zHr#TKlyl0Z-G%El;F z3r`XJp5R$8=)~3H6d~&d!QU%*D7{h0JwnJDulS3%FP=Aj^MzYC{pa+X8!V71PDjaysLzIWM>z=>y;rH|%)qY;vGkqcteZLt!-Dj{Mo5X5QcAiGBt9c+kz|u!mxE#{OuTvbe+ z7Yi4*omiN_^c2!~^Fu`c;0HSZSDBVJr`Z3B@u=`&uLOSk z&U#kZ4)1N8l+q_sIi(}{x~f~ms=v2!^6)=2oh(i!m1QYR{6YDDTOxkMJ#-JMf3&aC zQ@oGJMsc@E?I+H?^we$rSO-K_A^v6&>gPdA*H()J+Kg|d$R;`ZA-BvEC-%`#YH{Qh zVOv{Ui*~u;qRTH^*|ltG`fa~kU_ifMZ$VzGmS=ClRZG;~g2$z+%XQ_`xwsUQyIQU7 zI{z{i`W$v$uF~#XRiEX*EnE|prmmK~1(6Tzi8ht<71tHrD-Lwv>ta601HZYqAn3ri zhWQ{5e2!!6F~@Y^D{&g~z_)DgC?Dv+_Y(6#FZj&81wjYCR>lYNLcXXz(18#5LSD#s z9yLL-Eou=V=)gzU=zu(xa-3y*hkSBxIg}f2r#5gJ^i%nM&3vN`1wHmg8eo2(L)gj8 zKlnip{?Q*&q+A%_XOTsi^I~Z zJl8e+`e2PZWM>KKe&joMEC*vs-$|0U>+Y>ZJC~CE%%f4>nFLQ^k+U zf6_azin{^!)?&PXAK8Wu;3^YxZ>@l}_4Q>ulLyChe_t1`X20f%UZ5W8nX()5c%*%*@jz?AfgcFU zq_Ru`^zxsyMnQ2Ks)kUK@T0x8P@jkDo&xT4Uc0fPvt`Z#dh(MG#QBccMj*qU0?>Cf z``=WC={Jh=L3Y1EOYiD?YoUKZe1374~ygd@+72iBd<(ubd)*U-Ll2(b-zjU8;WM5N!=w62i zYgAfOOmfrK6f5oqSX0b+0Y7&yg&%O0hA-YYc=$Pw2wAk27@_KKNDu8{BZg06O?YmN9v(iL)@}?tHe_Nq4cdXJyE2m@&&x}l(wcA*F!lnCjIG; zigiBWn$)Sz%gyvlA1@FmtyLy}I%!R+;-)pl;lab0@Wksl7L4~8FW~3zqwqsLRJSPW zNPl>{Vfs#S@&UepHN$ss8f%I}zQmZs?^^Xdgx3^PyQkW|q`ritP}_6=77mdzV_Qqw3dtbiATim7v#m?3R%QYJd`H6 zFA7=DEB@jqAD!2J>9+4|`odFx6xWM|NB??L;jzV!^-c8tPI>4%^wDDrhc1~=aF0H( zAo5VS<3nG#|E1rZ)PB>)KGrAl(0A*#ZO85X$o9$K-Q&0IA`k6jZ$GTC>D&!%j}#BQ zf474_^^KojG~wIZM|^SG==<+z`@b`O-h2O#Cv16F_ZMd#wcuNu-yqh6|Mj0H%pAVs z#w|Dga^s9c64r#*Y7e@f``3T6@3V8l``NSjhqh-Yh4(Z6GN=9iYs33l|FxSYfAgGQ z$@>vDYltK3`tKwfaXs!t#>AGYjr{bFMQCZf6k2-d^ToXR4b5X~tB`c-mM*P$0_kU5xitYvT zj&&|wI-zrQkJFHA!c|)rJ~L4DK(>Eo8z|FjZ@Q^KKdc9*5Hjj9o}F>zuCXQ@>-wxsT{7kN~OK=ysmHTy=B*#5cajK>q9=U zo~*?Air-pvT_5Pc_Y(6#9{A05eV_wh>lHkI7}IO4mt#8cozH2=3-v|$KnFgb`Jfkk z=DI%6fo}uzL0-rg)dxE84KN?%g?!=qycTg1bl@BPVPzM{1E0RGkN7|bK9Bhz4}6Yu zw%80i{KhTlz_*(DAP;J+9$KzA^)HU{{ZttF6^Ji4|?#AE^z3MZS~xHwa>k z8!#{H9us{p0Q${(gn9{mSO-DRRWq%VJ(1VRBHW+n-`=P~$jus3d8Bo+F3Z7l&C&r$ z^6WatYt16v% zb+W_6vu!%;I$33hdj2K+UJ?piZjXn~I$7FnLOe&5#v2uwFzY&5^oQslOWZ%A-$cKN ze!i8*TLTtx*-Y8;5rJ4p3o?!ig@8MLH_sGpF7`k5%tu9HnSZTdEb8-6T_@}9PlkHf!PZTQDj?)MTlA%E;$BHT?p^c^{z_HP)LxR%{r$LnM{EFGfynbO$W`WwhW zd*zQwkXPI~Q`J-K)!H;GnpUZ_zjU8;sBb+!A!LblmPHQb9I=`w4%bH#fEV!d-pu8K%ZIwxb<bbe^7x_tCAXh>w3W-ru62$2zvXWcIPrLB zy|Ar%hEP7AX>;r1l>ld9D(hsrtQ{}P{#2~rkZUc8kK*b48mo<33s?(S3s?(S3s?(S z3s?(S3s?(S3s?(S3s?(S3s?(S3s?&bc?;09O8dNU$ir-J&|1J+z*@jsz*@jsz*@js zz*@jsz*@jsz*@jsz*@jsz*=C?EKuF^#OU69!P?3F+eLng1xnLzPyUHO9?cv!aY*Yh zX`ceT2ZQ%w+?IRgK1X<82JgS%eHiR_fc*AeoI5uLNo9_qWMNo&#l zYj|HJgyZ=AhgKCrZq_h(uY%=ZU9fj#lDrFMDY^V!#r9FNBk2lC_okPj#3A2{*}g`| z67R(zOnk3mpFIu{)+qO04D6ToUX0=%`tQX6FW~1Mt?=_1S7rIT#d_|$x2QP%Jzk{$ zs-?p#Nio`Zl8)a6l}DxduUePiMD=KQ-oN?*=ec3@OJCQm?_Zs?t~=?yiip?th zcmcl>*Jt3WZj;`l7@^@M(nWVGUDMyI7%SS5qyz6&q+D0{MfM+`>KrcKtDu$jNo^77 zp!!EYdaoiKzXo`(g7E@=us?8hoR;a1^D|N3?icvoIP>O@tloO|l@H8%@U|!e?X$<>!|7KZ zKlDFI_$h8FbV&Z8`Zr&+Pv}=461GZi-lDf3?%WVPzpJGD{rc5+W+tfjXh%jeRxEfE z)i?s7dk??Y%i$cc>ttuoS<4o7&h6>!j4Bk49Efor#(_TXcZu=gXnqeG`;MjUA4VCc_nXcUKl*On z2=N;^{6&#+62Bu6gT&`B~b(kT(`n;|NiH!*L*u z;?zhkZ5#n9RQ{8`qoBB>;|TB!g%I@*cmcl>*Jt3W?v?fPW(mB#2K+iBcd4 zhTsAGfEVz?tpZn03%s_8aUc%D?})9G((${VaazM<7zYABT!$1Ds&OH)(*6=66yKp4 zIsAs<^s9^?)xYft5Gn4crlFJ~{B9FBgno6MutS!1P&9LVC~9}z-DUT?26f(0G|%D) zxhdbR;v)yp`*qIuoQ@B6woG5qGGj^SQZbNgIi-6^XUJ81Y+~24OFAcha7o8P$C)Vp zEm*d6QTO7Bj#4+#nJ{(IM2F9pGF8cAf;VIT*noki)xZj2S=$7BRMpFkn>sm+yc)rz=!7>n8(8N3+yk7 zc`eXmJ_gS*==)Ur>>;0HBtAoS$M8OH9QwzyzdAMPxdXJMhZu)L4#wf$XDLa8 zFrPL5vqF}b&q5e`jxkbvPdEE~R@!rnhMCV|ynvrOh06t(4~5%;=yRxA<|F6d&iHW{ z!;ij)oE^Wk?;$JvhWmki&-J|)zl%BYiu+`_Yz9oDbI&M*cgYW5L zJ`30RG6MZM2G2)MbsiS;Sq}?&x(@{g3NfEW?N|EubfeFqviOO*j$Jv9_7ivkKcCxU z;HvIH%pcFcMdGE><5ar%=`DAP6A$o>rhO0j4&yo}5lH;@6vhpoBR=3f(R8QyrQ?VB zka>!18;-=+U?hLp4IE$=IQ<)6H^Z>)Wxk7V39 zY|50@XD%-6@w-Rl9&gJZ`E1{D=ikxa*ZG<6(EI@LKPGry-BFk#$cyWQtX{!?wBRBB z4+^>Kg)CR`7Z3iwi>A+WU)|(@S(Dt3q%cuPMJ0ES|=ebAvL>~IS`P1+9-SNu(n?5n^Gt)&LroVL8Lv5qqepq3z ze;j(EbIWPR-~Q^_Z}0fV@zc)UI+yZWeCC{Ex3={>GV_cLk8ipAAE$2q>0!st`o)Ql zY`OgtkI!89zo*WiJg6V#Ry^_k;}6>=-}iXmhFi{&`9I~-?!xt_pVBsN{6o?ncg%h7 z!(SfTS$ONTXQVw8mzbOX(K2a|2Orz7aN^=6{XJhfr(ekE-+SyGh5MfUP20^=9wHfS z*FAsZ!=Ag~h}yrW z+br6({f-s0dZIPQ_hdUKd|>(Fd_cdhxfU(!>0Gf=eoM9??|;(5js=r0nlz=O^Z4Tz zPFmQI-_sTAx9Hor@}~-O&|k^^Nh{!-R@Z6W7k=pDhH1ou74?n~>rx7%oX59q6W{IK z-Y(>7`9fYPY!^SINjt?I;uHO7aGuWbPhBUPEJyG?-A}0XO4WZ)cW&qEm8*I>Th8w2 zUb-@i%FHx3WTuQ0miRk;tFKny+3DqQ^v6}&J6w$;{Ua)mCuz^$YRdqPJ6i-F^08R7 z%Ov9^&XDGVZ-DtAFXWp(Lgxb=_(n6XkQefu*R1n_4tyT-K_2+b@9BaL zd?-(l2fpqRQT#v$KF~oP(%mCMd(!t}QBLu_$EP@-pa+hooye}l4|?#sAB&cM;9}Yf z{GbQ_ROW|V=r!#Ie$a!zi}@iJdeitp5B@dG54p(yXu~eh4|?#Im>+Uszcl`U9`%*^ zAs6{h<9`YIn7{QJuD5(1^|zJFJ8(t*L67{O&-{?yQ|1?d7kef9mJn4I>kb~z|?#W5=?DtZ$ z+I45q0YBgc{7PINfUC;Sz;vhh`z>MKM4G?18JuT zo1E5W`lUZNrt&{k{HXk&lpt4e?;+++clDM3i8iTt68Hfx;0H$FD%146)J@%6am}GL z<2OO{BPWU<9l*zaFICy2o_`6ymxKbB+vB10z0`di`e*txnZK9H{UQ3t5~tB`qF+Qm zoi<)W|CsfAsoqTX+c@+Ksvq;FC-rBQO9tvEnyGls-(f3kOuZQaQQvIF$y;SHsn*C3D$ANw~7~e}pdYAuRs?p!zc^&*R__L;8 z2|rIS?_J{M0veCf`+)Sl)b0_-h-XX5V_0|7z3P2Wgfmq?*y3WJ#ibF2l^Y}1^oO|xLh!<^6p!{7{#k5{Ms2m4r|0OZ5^G$Z|JY1175(-^Avu- zRh8ZgMg3d8IV{N{-M)A$rTe#RHRB<5U`j;G6Cm;QA0dz(LVZf>Gqa$7{=sP3Wt zN?%7e^w(hlFW`sv7`Q6a)4IoxZ($fjAkrp{)OZ`t0eu|scL59arYD>|60x#f)y9KT)t$i=GrDc=T@{V?AzO%`hKdT+|<-%_6 z{|?}=9IbgRZ51<SPNJSSPNJSSPNJSSPNJSSPNJSSPNJSSPNJSSPNJSSPR4~K+n?CpEt(H z?FnlEYXNHkYXNHkYXNHkYXNHkYXNHkYXNHkYXNHkYXNHkYk>y0K(^1rvENJP=WLGtqR2T z@K#P7q@N7q62Ff&(bz=NDE8StLhP+QUhSt{{Kj45 zra$@V8#X<7%=&iXr~S0O6I=SfcWbzx_QzMOZ9DLoa6j#XFI!(YuPwTt_OJX?r;9vH zpL6sV+b%e`wXonLV;(;3ms9V5WY3TF9sh+_r_Fxj0fp0kx#1hXUAJS)fBd3j=IY6x z+VYhhr*2+++K!nQT-~wduzy@T^Ik{oXH5BkvGUr(?hg(NW(%|K1)fBwc;JTFMRLweNE3l*GFXuR4-h6)jJSJSo8ki?1v7`{lQ%~Z@?g zwY<;Vk!l?2A64fmy{e1Z;qF53)8oy0Hq z2j_kP^KR}@(f$GV-({2olq=}N{-^ZZCDZ=kZ|D8NIrPrEUhNP5UKK)a){x4R+#j6f z;JKB1ev&-9KX_KV?kqas2fTn^iOU1ZhsqD_5B`%aVczWi;Gr#En;7r|Uce8z0j@Gl z`+>Lby%pE={lWhxPVV3f|EFAjXDIFu?(g+!+1_=HRAFF?*C;~xm4t5O>k{4%D=mNT zoIS^z_wF<2eQx$W+#l`-_Xm31H`2Jj6cl(D=q@IcQ%K<=Oq+VYXc+1b)B^_#uP9 zRi*9z?y$?Q5)yv2zdP#lP~G3Xw3GLDhrXkEyn+4Qe_-tIj`S|SzdQFY=x^}675xyN zN0`qA;HT^5{Y$(K1^c_-TyB5&7w=X3yCa;Z`WbgoZT*eQa?oCt<|oM8G%vai^0xb< zY5k@W;&h*M$aSp6v(!3BgmMm0%>#z}yWcF90r^FW(xb%g3<4`wL>NP{Kj;h3)44?tc*byZ=GZr>(=Hx`*~FX@BrWSqBNc zfFIgp;HvB`)*%=FQ+u9e_jgYyhdcEY+E3sG{E!LYs?ys2?zbJV$+>M#yR+%lerNvd zcF>m#Z|43l&yMS9^^f$S{w1x06!UkiwOr0#zt;#qxxYJ)ht~7>veF%uoBLjv%53*{ zPc@CbU@c%RU@c%RU@c%RU@c%RU@c%RU@c%RU@c%RU@c%RU@c%R5VHWScS?WW7$dhQ ztOcwEtOcwEtOcwEtOcwEtOcwEtOcwEtOcwEtOcwEtOcwE8r%ZaJx^5cT#(6VS$OdN zW#0YWdEX(t7Xv8pJ|^CO!9EpuAJaAV&A3IZS~d4~|8Tke-CKEocMeO7dHwv-g!fpG zsWKtf1w#(j1^e9z@`@jur9|PqihHB!GJ5FJ6}&<>`~L197VpH+FMVA;?3ealjN%^p z@5KNw;OAY;<$}wHgr<1sOc^?ZfM0Q@z+UX{jxh1PrtJ8oy%(eK8~X3X059O@UZU^= zt_nBt9!2}~ttw7`%fDB#Gxm3<`uAh;OWR+1s`GNQDMYudoKq4U)uiQAAX&^7vr9PZ@&G(!6(W(wJ&2Hy^rcc zHUIoiY}xpuFV8%DSbg>fujPIsKn~$V(!SqW&*}S1 z=QB}!e{d>GkoB(fK0f&SgR>uF_Xn@IKe&Va!GVVj8`A=Ie{j1$c-E3XM|k{`!~+y} z&2@5I)tT|VVaT5|bIyX!rJc^oj>Vl$NB2^kAB^y`LP+UT7gROg%c|G^wAv3nD}9tM zd{!7ek5qUazAS}^gNj18bbJ3VuN2{h(Q)nL+qTJl>fdtVzSHP8dGh2od<%lY{f4(V z|Fo|FE8}t2G67Nz$DEZNOBZ(ZEUZCW#}C!21=0hzzKVNEA|T0km|!D89cowOMRHBI5KLEx*3^Pa@_x=ZGKCs&9(W8RQEg zozo9GkKZP#N2P~3qqO3{)ApMzDbRP~s@fvzB|$4;!wU=!E<4`WN*)!M!f}Tmj!WkFvn8iib^7 zXRr@m;m^%e`sw!<{=LNC#fi#m)Ku6KSoGzuiYHUWg7UxBxhQ3N z%KZL7wdr)p;g$0*9rsguZj*kf@jz30QIxD({yOG6GVm#8ZOm4>^ul z&~i-6jE)tZEi;!bUD?yIVr6zYr*tp5qH{xxd-3N+XH9H>@)h(+H7bo(2y1g{4DafDp-K8 zqc4e5*P~Wlo`9Uv|{c+{943M zyMMt`njzD}#f5~P;;dyYOS%_#t!!D)v7oE7rF&`1%C7DeEi2??j$o;Lw72j1o{YR2BRoPUQzXf?nk5jVJNqJ%zbXX z`VPVj^?gCpzNM?9a>ZDvNcWwD4QU!J3KNw{Dm25LvuOf^O3+R_b{EzYk0G7oc_Z&Ny*u+jlRc_Dtm4 zaSpig^Rm4_U5aw3lqg5yxL}sEY2++*ru^S+a_mu#hSqT5p!Nl_5vptI2B?LhgXqHJ z?v5`}n&5Jt-uE%V zbCMkQiFNY2KU~q7b;(~|UHLvx+zOgQl8>KkA4CH3F4V4xs62>P9k4?@6xkL>x?kAK z_o3u8`d_kN(l2fo!iVNPVLzG?Rkqe?Axrf~M2~Xg31TWc?#8=Sx%)MT-&Y~ZANm2a z{0*d(Kd&cR{z|3t?dw6J{Gm3X>`{pF2YK}>eh11@MIZ zvf$}b{p5av`kS$uSeN?|_a62aPv`K8`_y=-i^H`XzMsRt@i=KNr>|hXS2_JEr#Exh z!{H4$ug350Q!M8OPH$%ZS2(>7r{^-?6P#Yl>9tI^fx{O$bk%j-s{1_ad5-!2qC&Fg zd_e?%{v7nLV-&y77{lPa_Uvjx@cT&!k_$_728%T#nq+x!fHdEq8c+bS}zWi}Rpd_xqFEuat8Zl zEoUe%K{?}cgmQ-G-*ZvUnpJz(no`dEk5pIA-bCdL59&k|+!f< z2%ov)H0(!sD_hGs(vyip%!{=B^Rzu_Zo^sixixLipR+;6MUtQUI*xd+setp-_IytP z^wh?QxdbT(WdU_=q*eiSeirvl7PY&~%i z^Fh~&IE`yC#OUSv>E3c)q@EH@IM+$}qaz+t-oz}X138}*aU~nH!-fre`M$!4XCCc) zb?-40$})=lkW?ji*f6@rG=0QFS3pO4Xpaq-=d&*4evxRXUXadx#gFWQ@{GAzlxO$= zf<$v6kl@*F(%WmGnUx%qAU4C5|@ z{OqEgeMNp2LV9l#FW}&v(5tu%weUNl?HtB)oP5STLiKI#$CN%$O`JGkLim4H=ZcG0 zF0(KG!8$gy7O)nu7O)nu7O)nu7O)nu7HCupv`klPh|1qT`7P%Q68IZevft9h{s*{c zc6BUW+PS2Ke5G0r=!1OdE5YC45c-bIsSN%&^g%xKwH~SbE93+EXiaaPL;3US`2g7y z@}bXXeaHv&P0piC@ZcE@?ho>zZ-Dh7AJBJvPJMWs4}Fjiecn;Zp2!FEP06WGE=(4@ z&)otRS}p0`3Dq9=EZ)#3`G$lg^ z^g%xKl~^D00ex>*Y*qh7+XH=&4}GnzT>n@v^c|bCfx+7b&d<6P(HZY@OhoDB@-+Hil6 z4}Gm~+m}{DALK({iS;2LfxevW%UcY6kPm&W3%UNW-auc@_T{aHKFEhYpY7wbbl0)08#7gSs5gM8>Ku|DJ@(3i7)LA8ZG z$cMhx#a#bbFZ4}8Mj4N+0je$ZK|b{PtPlAJ^dX~J6)_#EE%ZS?^bN2+@+ z)fW07ANss5u79jI(1(mxsSni_`XC?rdRZUx5$HoktJH^T3w@9eeQr0`Kh_)QLq@CA zhiVIbkPm%btPlAJ^dX~F>O-}KKFEi@66-@g0)5D6mHJR^p%3z*uk{05|5$IJ4;ige z-#eHd`XC?reAb721p1KCD)pUY=!1Od8(@9N2lSngvwe|^iG@zwALK)ycQMyL)*I-{ z*}lk4;52=Z4}HC?5BUi6d<6P(wlB0!pANJykPm$&)`xrq`f|1}rzv%TKFEi@ z*5zFPSZ|;&XZv!xp%3z*&u4weN1!if`*Mb%5AvaJfb}6CfxevW%bA8g$cH}fpSk|A z-auc@_T`<1KFEi@UewH_(@}eL2_A2l>$Fvp(b_(3i7)nPcdK zeCQiseaJ_kFK7EQ*U$&~(C4k>`p0?$eL35gcN_X3ANqP(AMz3C%h|r1XXt}`=yO+b z{bRj>zMSpLdklS$4}D#%5BUi6rT;(C4#0q9;QeL35g_Z#{kANt(YT>n^apf6|pGSAQl`Ow$J`jC%6 zU(WVrzM&8Dp|8aHkdHuL&i19l&~y@Kl> z>kakgYhXTL=!1Od^I0GA5$em=z+7zTgM8>4V139(s4rgwv&7H``OxQmnCleC^9} zLm%WrUy1c0AECZ{?aMzK`XC?rTCe2#$9hA3`P!ErLm%WrpU?V`k5FH}_GN{k5AvaJ zfb}6Cp}u_W%SuBZX)as6Yx zp}u_W%cX`s$cMfz)`xrq`f@JdU2W)teCR8&KI9|Rm#=-f%+Lq<(AWA=u79jI)R(V) z`H-Ox@}bXXeaJ_sFJJp|xuFm8p>KfoAs?Z>eC^8>hCaxLKJRL-f2=pum#=;Ku%Qp~ zp|6+qAs?Z>eC^9e41JIfeb@&C`3UvpYhSK3^g%xK@nr}32=(P_Uy7Q(H6o60`L&A| z=jdHM^P7H4Iv1hIWzOn?d3a!69b1f=#v_zp1@loPc~(%wYa z^C?P6_>2~(U_W|pC#ryPK%RQuMf9*!R(jYYD?RQz3q7p`#y2vFK3<+2vAh8HAH5e( z6f1m}?^(f{RLail?!5HOj>|eRrW9mV9V3|9!=6qYnnK)%`8zfop3mV9(KvFx3a++O z8TfmR?~mfVjw8Mi^<3+L?f&)Zd!-0LKUm?K;gA1}_9LdUMNfBd-@g#?B>TD(?uqQj zM)`PR_!AV!L$)CzhWn&hCg3d1uec?oN!(rMS$0yiY4TAq1nT z8~FoWx%@4-Y{8P8*@5~X9N_#R#D%o{fi5k7#J6fi=e&iTOP6)8=w6CvLXcZ)Xyyy@ z$bLnUKzaOR z(0jg!m&0#{7)yEL1$2Bb>eLkav`ox6clyGGPS=DSxrU8i&QuokcuuokFnfnm-_A}Wj%f0}vZ5^o>H z-s9r>8REBS(IVPMTr9;$8--9@%zP9JZ%CmP-#INL>DS0*|Ei}&ez@<_&WdQ79J{sd8UEmjORo_|5;TLuHT-38_1s0RUvsCF!v}w?&zo5kjAu7vt z=~~rZjnYc#Ajl3xkY5y*f1K8_+m*)mdcLy7t=+QODPCVu7HnuOU@c%RP|*US8z~mX zi@(k67{&V)~reCyu$Cdr#=k3@?;XxfcHkPbkq)Zpsk8EiE zG!l-&FM|Ej{GuoCT+Z0E7p~vDD%CFn?k3KpE(^}8Y^M7~?ud&M=V9V^)(B@ze36dd zJNzQpuaaLx^aL2{_v{FMvOTNnnU9_$n*XHdS^6<~^8JCl-CI<99+qFCr1dx95tgOs zIq%b|-EnVFVd*m}^gpLU?+bkWi+p_zUti1DzobG)bw~9_${X25KIdUQDCe}6D1Hzg zbi_mbUKCCAZ>ufmnn6&m%}^uZD9SnPm!+J`=Q&(n>V>Cg@zlUFaYR}pG4O=_vf_z) zUoSknES?%zz|Rad5(7`zFDssCzw3pkZ}HT?GI2y&BQfxV{j%bTez;zE_F6nOuz;T# zY9t1puwPa@T^>)>3(u0pQv=Jy5owLYz!Ub%if4((#r48-z~ZTa1^moVBQfxV{j%ce zvwu@BJl)-_Uml`m;)rxeff)Q1*e@%d9{Z{F!n4)l35Y}p{LD}z;VAHg{VL%Z%s+oW z_x$q*J9|17cgC}l^-Such#Rv?$VMlhg}Aq<=PPy|)htWd($;R->=duF*$SzpvKFuw zuoiISy4)hK%T=?FNplW6Yh5lOGRzsC+E3M%}- zfSVYM`De(ChQ&hZRyEGRd=17O7%#&Hlo!O4=4q7NVxiLfvpe(Kk$IwMei|*6){-7^BBK6OhqHXgpY4~~FM2Ak zUo>OMvWuJ=URO+iU-65Y1qLB1%ea5L^@~(}Pb*X9&s)E!ynWJbI|wD%im(>27HAL) z&`e6-Xjokssbyr14e8i!=~Te38~jIEwiq*e|nR^y~b7(W)Lt?BjBLJTuwOpqYwMuZf+h z>4a=^+<#N;RXz73iRTh{QMfC-uSmI2c?sJNoI_qIO$X8{tf$?=c0*~7>fROX23y4K zV&*lPCO&&u3s?(S3uLvxuDFlOuy_+4-j3PE(Y`XlJ2)YkK0egX?v(kWh+kCCeOyXk zj`~FycbMbl=->zaL_9S8qS!tz)-Tcu6Z&a0)JQlAzsP6%rTIl!_i+L4CeEZTtUPgi zRd(=BTKasEZ~Y=hjsg>3q%{(b!Y_jTGW$i(=k|-1ty;RUqX!=;h-azNnP}6XQQxG+ z2O%okZNJyf7p0dcl&kd6&KITIro3GTp#)nI)&kZ74PpW67S((aZa5rQ;Y_9dEgjQW z2^kY(>GMTI{^mrU;3VlXfAS*DhosCG1pD8% zZsJVp!ulJ>S7oQNU({>;B1Vn^6JMk?5{|+zg8ef4MSsid7tLJKaan!V(XEZ&UM**2 zo8x}X`bFvG3FRt1w0=>#ZOYrVmZEEUtp%(F8p{HqUo^7J{+3O`DCztDJ7SNH z#d_&}5v`*O*Ly)$QJ)VIdfG`>@WXr&jR#ZwqDbDd`9;v3EgUPz@DtIc<}ai`41N*pmo{IN)h`0> zCeEa9F#MvD^@{+V2u*yE)<`%CzX=)gjzL8x0zW?MGwai)B)4hC!lk1~s)HEa> z|C)F<_et62`1e}BD7`$PT&0KBFG{yfdAsH=x0cabz*?Z;ETH*CN2r?*$5o**=zG>_ ze$m>S4(4%oNRQa_=S$)WJU9wB|f4}OvO-0Cjj7u|O0S<)UDaMaT; z^6rcJMHqLO<7LVV*+(7Jx6ly}EBQs9^^2700{bQP(;5j!;TOSvwfaTC-Nc#Hh4nX% zugXs4`Jw^q7cp`aBw-BOYGfh`zX=&)A$uFAQwd#_KqB+T&LNgU(_)_dlO($fV z~bY|Mz zbHT_?Vp8l!_dwJy!nng6FB8gxv5wBSevyU*mBXZ;M#53}MX+D3ei3jtaVB+P*_QQ0 zoQa2OFr5B=k-NLycb%bQ`(?+O_M?OSGW$h$<@bx0E$ysjAzi9pbaQBc!HCIr+J8{B zSB<@Y0GU&-lV%)g(1m5MvF!#s#O)Gohm)?;IeSzaZag&Si_Co&O4cvZiY5AKGt@{p z3cm>UOY@7e?z;foO`J(xSbyXAs_ayrFKV@Z5hF)|i7(O`2}dzs1p8(7i|(n(FQSEX z%P!9M5u<3+pxx3fT6_?qvfXw!+WDgN@`Q4g9@_b$bla4->mZb1E5cg9TA)!ZAo|5( zf#ztM%e-Gieo?FV(Od`3$vpk?t73gzv4F6$v7+tS8_FtFCtU&k%Teo z4ro*ezX&Xd3402{@_RHu&>ciD2T zK|uCP`e`H_MLCE4vXpbe6Xm5|c={Gk4Xh+AQAac~5e1&GUsgO(@9TwUufv42x9JUxqNO?bk7S@HDQPpuc8T^7%p@Pz#;;W^`6 z;d_b~iQNq~%s;Q}((+n$H1$!$tyPOE%OIcWdXKB;D|Q|=tq(7M-rB9aeUhIOCHJLe zORK$TEnqFsz!soxk@x+tF#lZPeZ?wlSpI#*L&{5{{?+_R4w{qMmFJ%+-;_U|ZFiih z%L|LCe$j2X{lN)k87%$4`bDZ9rj@Dk=dE8<-ahHJ9h^dJrC1AC3p9cSLcgeaH#JfV z$5r9|S9o7BVGqlYHy%s(i|Bnt`37a231>{7D0pA7j93mx&W(z;yV`bElgf&G&DX^n)V@QYx-TKyv6 zZsJVp!m=I5S7irlFVp>^Uh5Yzaug(C4BKjCB8v5GuwQ1sXj@*tXjVth#hpu?Nhd@z zl0AiHD#mep>`YB3WSistmuj!-xgSY9mpXoq^Yp%twG)kcCmuNJG+{h!yTfzorkNo)pIIhC8yMwScvNwLm2cjBrL0$u75# zOPPE}d>qQVm~%<=%i`_4lDf0~qR(9Z{4~9fQS(LN9VWl8NMlz07t)6@F<q$u^~)NWh{7)_vHjBgqOAM40Cy8-(i)cgIKC=Z zmHncU^^26L$O_Q@>>g73p9=eLchpqR-Y11YI!Tn7n#0F1@o1kFG|v{2{d)RZu}zb-9mm4 z;?%y^;urZpiTXttcbMa48vLl|qhv|d&n1PXUqt)3OqjQ0BZWO3J2twf*nM2WvY6B- z!?qz6#o!mgerbMD)^&8i-Nc!6h4lw{iHB-1oIYPPVErO8B_Gw{OzY@izs!Eoi?#Sg zEvIxW=xmwOxpD<^Tt%4b7u{KfkPM`<-S(bV?Uh{*mR6?9pSN}^Zy(jCCDCLkp_as2 zz*@jsKw5yhMSj1CEfS8aLKBtuiyYHe2^kY(>3$KBSJ;=0beTV?h4Q`YzF*WX@~nQ! z4>HsG+z`gA^0vzS5%WbqkNQOzcbMa4LU~Z$FS34-hDT9gn)K61I10bWWBb+W7Xfz@ zXHpl|U&mo9d6?g-VyS-7T~&#x zNG!`@=@-^7N^Ucf%2)iH^^4**$!5=r<ZBpiib1pC$M7Xfz@XHu61XEhkcykxQP=jJK>^!p3{JnI)}AXbMn`9-i_ zCBKNu1p$WoZGI0;y!RipZ(4>ljP_Xqqf*zFfLH{0_E$5o$t1stW8RtcT zC(28`@boR7HQ@>SWoftM_wBge*9*^Hi)T%E!hTutMEhMYJWCeOn(&1Evf_z;xL$Y; zSUhXO6ZXrBr_bZ5dg1BrY1fH`fL1>qg8j1M>G8O@UU;@zJVQ7W*LD)d@q@;za(;{L zmlaQ!{hNB>=~+BAu&S@0uwPa@OYEoC3(qc#XH9s*ewFYHzK6C?-udU*OFCAp>|W3^ zt8>w^o=db$XN{)LKYux^glu%OJ@fynp0C(>)U-CD{CR7)^7cueht5_=EtR!^wScvN z<50J_YrU`d#`3UG|7!ju2hEF^>vHMt%>6HEjx}LgMal^O6bpMkIqqb~X=zvQ8HQJq zVq?Wg{BRuu4z+i5u`qe^3L*2(lX%}2Go4{SOGrjoEO>ucK94&vUdDY=Uc&h% z>RafDhn41^-Bay8F3NVWUs69EQXoe7(D%?_KN>G9TN6cqL+0%C?3dXu8lBrO>Jgtq>uK>idKN~rk~M{9Dn|eBu`@ND zkY&()+4@DQUZ$0)^5?BzRNg-6wymk`T4rkjYk|hHfEY#<3vU+p++5*1(XE1p#`NTS zJpJ;kVz2#T0bym6MccD-?YAAbM>f9*)Y-zZf($=!;11vy z)v_+Pbb9i-+|nyizX;3GG2x&=C(S`9+@fi`|v}VCsmCba&sMq>M8h}X{qwZ*AA_~6<_N(L<5j_Eh`W;=D3%yYtlnOD9U&EO_ z5Q&AQ8Diz|j22nhp#%35uFEC1y<)sdxBtJY-SJ*kq3hfr-?uCcQ=#9aLT`i$-QD@R z%h&f*VS;#hitIw`{-6ity!v&yT!*PqremP%ZexZ;diLSDN7c(w z_PDiMc3Y`u-k`6k>{@1P0c(NAvVeF%ze~co{YzQz9PDky4*QM;KO`fA;PCvocv=H}t!DsF84#@S%0Nupf<= zm92>&uz%)txxn4TnWSaGSyip{`R4)a7m+FX(6QCyxE_XhP7M21@{5R`07Lz**Zgy| z{?q((%k(2>Uek$}1P@(%q6_yU<>!bPlA$)xdUw@Md z4bedo?HTl-oDcT=vpdqxZv{q|?T}s`5DzI3Lpg{2vXpbVo`B0sz3^mR0`uh@B1l%eWEYq#p` z6+UaIx%^rI)&kZ7jbi~ZonYsmYlVBP5P%;U9(Q28OmjtaMCYHVZ=oX|R+@h<+4*N>y1;%({j^5HQNoAjpJ6{5FV`~v4BSne zNgXgx!k4boc~v&k=bu}xU!+XM_ENSqvDQd93cm>UtK=6EJpqRL9iM-8g7r1Jwh&|e zY&7m_Nwh`kl$w7&S{6Y4p6DvdhN9e41(Cm`+a1UA$VaHqKT3sOs|ww>^7Xgz^<((@ zM81Bk3L}EG1llv`K{+4n`Df3TbIs~{S#S`s!emvuO(a-c+JT-IZ80vA2grjJ0 zVZW?+q93joo+XQ?29}PY9@j_=JYm1Ac$RoPRWCdTES?%zI)-{&BQfxV{j%ce^SHQP zc)I)8`K=Hw9YZ}HQXq!*7WT`Er^o(Hz3^KN*AjfA7X6ZXrBr^|k7z3}ub zo*Gy>hI(8hG4O=_D&ZN-Kc7(R{PW75WfynGGgSFZ^bw3kf43GNgs6O8R60&QU$OJ3 zdO6A-w|2{Jt7tns2qoBxuokcuXcP;Gr^0srxmK{p3IX^*76u%HG5_qJl|29KAFsw4 zG`^P4_j%lb@v;C{9+VfvRewRJsgH?Zd~r#0VexT_Uz0jhAbg ze+KR*&ZI93&Z=yt&p&rrzX;HYFbQMS9gR#x;pf7BmHZ;2C%{m@hXmAvf}CTc&c7_wpu(xICG5q zVZW?+mUvuTFFZYqXH9s*ep&JK*}th5o?RBtn(&1Evf}BnpIR?GeT!#Jc*1^_@C@dk z+w;yppVGZ#iI&ysqv7KhgZHaOy2hk@rt6-fp0C(>R6IXR8=ECxw{}amOY~VNl~mKN zHI`n>ZY^Lf&_EU#CGNFY7$^Q#`u_77f(GAzuC3iE7Sg`|ym`a=0?luPb8{jQJD3mgt+HQeo?ESfnW6W%dg74ju2L7 zvUINnQqKE7?6e3lYo7u7Y4QC4)}wGey9**!e1m5K1=6dBd;i%t~fb16{mfru884)>j^ z-6@@=LjPI$o+wid7! zXk-gex2V?T?skM)DX7n3z%n$Kk+v>(^5n_E95Cq1hw1arv@SPk&O?(&x*|U@2P5Xf z)x4WNAEVtzB!4?${#oV+0}h&h-v8?Pg%w@L*av$cS=Ktov|^ouI3%T4o(gt;PqM`iPs_lxxPWC^lJSLD~o zevx}o)Gxxg!yGRUmS5zaX7|et%Vb&~9a10$zX`|qzr~% z)N1`AiHQ1B9nSQ=BJ7vhFY3zc7oFPEaZ%O2kalm{HoE#*5x>_+*O-)LytKgjMb(Yx zqh-(fMNxZXw`Gl`*Rop+SPL|e1)9XY77OI_;0VW6IO909Cw-b<1ivJtt`sZp7tyeD7xmQQ z7q!gE{dGnC^CHIWtTWOzCS_Ul7F)ka)yJgrRQa6siz?eF*}gTFUdwJRU@g!{77#K6fb6K7JF1!q+@)BU0@>lbMtR);gq7r}m&{30qB1Q_Z! z_HlvowKv@)*W@CNFvJ*V;^9H@Q;{>fMN&v$jio9_-@|DwB;BPCsCLI+qC#(}3f<)@ zEd4WIU%}T`@%2mj`f3$wVk1$qi(D7XdQi@*-^V2)HkR;hIoE7beL08yvXpbe6Xm5| zc=lR6Yr+%u%ZexJeZBB3Sv+gP6ZXrBC))3N;W=ROtO-xpFDstthwFu>`|EXf->d-9 z>ibXFFDsrtkEiN|XRF0CKr{5`Ok6b*j$%Fp_RET=$K&F9;ptgCHLy$^k=95IJYm1A zc)IN0)CC$_@H0b=#K05w%Zg`-{nUEl>03NCuuL40)<_IIVZTav2K%^Nk$3+2 zw55y08;hM{D;F77zeE?0gJU;yU+hdxC*-qg|3m8eik(MA8LBR{cB{@_;aI7rvTK>G z1*`=c$^z6a*7|)#r{er<)THIt<%aKZMY%W?n}2?Ntjm?T7kMuh)Vf?VO>=?eeo3|{ z7Q8FeI0N%F7-z*@jsAjtw^7*#BsEUwgdU9PS=-7g}l za9pSJ1aThg#nUFAnFdF;b-AF<7LFBU_<;ihj=@-$>z$jtF1K`L)Gxxg!yGSDUP60N z-$F+`th6rIJ>Bl(qHG8ICH2!G1!C}vV82@ZBH(V~O!~6mT*)sgS-%L-i7*Lc)E$jX zMBx{~ewF+pq9?#mzp*Y?y>|`0Q5}>DF^*ru8G5gQ-ZR&a$&>F7*7+VOACy2xv9N6a zrjzJi(QXl+9)}##?O&zZ9q(!ty4R?%^l=sXK3~6Z1Pf9t1`+Ep_*jgk(_LbS}s@1O8FLY#*E zsGOVc(Rh~}F8Y~GT;3pC)e*uLWhXDT!z>9uTE)z$j1A-s|JYm1Ac%m)Ok7tmD#7L{fQ?m>3GeeDpqremP%ZexZ^tQ}X#fk2^447U0T* z@`AYPE9f-!G10KnT(oEBqLs-4yCwD08VN@UA6lae`_Xt=*_sFf95S!b1@0!!BrOZh zs%(aHbmq4f2drO2rsN|DV_*gv72-KD>{rPzB60kN!&3ye+IZR0G*Df9uEkD2;oEf+`)cX z+Aulx;5MLMc(z(R1B{~Wb~Zd=zpQwoEzggqmfeJ?XYtgmqGPDXH4=`Ze!_lP@kF0o zFFd;}o*Gy>hI(8hG4O=_vf}CU*s5N5`W8 zhI(8hG4O=_vf}BouTw8POBPQJEFD8Vu8|mc!hTutEV0j8FFXehI(8hG4O=_ zD&ZN-MX${}7ky^OWt~0M?-CVeJ@xU;10l^|#N@Lg|1R~c#m=efzzhdDc`&9cU&olld^;B{fmDCe`e==Wql6F5 zMZ+GE^JoJk!pr?N)rq)-ip)90eyXYD+WvK{P~gmp-P7@iZuewqEEyK?(Q z-HW?civ6OdAPd!oseaKns+ClpUY13-SG8Bev{G80t-7njhMO~@#IIxLI8X2USUa6n zlzJV}=~P^;BO>bfwfyHG4`EUs=o%eSz4f$P*lsAzQQfT;jRF-T1tE#=S^B!qss{DCtxAOLh zw!=E@Ae3M$!dk#upiwL!hEc`BjpAOwV?%l;BGVG(P+5=sxDqrrss@*BAQ=z|Jh28@ybRXpF-{k8L@%3-<^>3>%DmhHS z|A!uw^J?E+Y?ielEa#^-E$d&f=$n1h7Mgd$+_u4A3HQ`RIm(N3rS}-SYiYF0t}XoeaIM={=j{j%bT{<&UwmMoqcSSF50Ya|Aq zuwPa@OFYi17oGzaPYo>KXNDSyfhX*j6;GeX%k{$3{qJ>lUxxrL6Gx;2f*^wS7WT`E zr^kLzz3^R!>gB%YzlXYiOfM)}RynVL?>@?Yvx&t2^Ns$Pz=$F1G6+bY@)*Hm^bv$cS= zKx0`zJVmtg(zQZ9RtUfkvM}HnjCpDIyySUlf0G(#(0GiV2V>lU@v=B2kHMOk_U$|l z;1yw7AFYval<<-7F(%IAkQ_RSnfKHM?k3J81(>V+Nx6_8gq7x{yR2VChU23;oaHyB_z$U-n(!wy6K# zA9_#!fB$%oe&6n?t3iPBW`-IGM+u)JL>%^`avpz!wAdEDO9PqVTr|o~UTn=Z2Nw=> z_FsG4uln9_%a#4h|7+g2OSZ4lfP?+bP$S_e`YPCuur=4GoV($cV9mkbTE`T``h%cv zLBE4KjJ6>!&Xv|2__nXoKs511S|ibLroIaH%hFfLH3!_r=f^Xi7yV4H#Zxl}@H0b= zgrij72v68AE1u}9>xE~@;;DgU;)t|HV&Dn;WyRCwF;~6t9I$w5U;#ff)JP0GVZW?+ zmU!%3FFf7fuCsI00bC}INCyN#1nn*CmlaQ+eV}^b*=q3&Fj8YtV5o;02}gk^?3Wc! zkA2yC;ptgCHL!FH^|(f2;0gOx!ZVno-kg7qdd0=@d{l7;kBnn18)9c_Iw5^E_ebg( zjGb%M%Te~YwOe*uMcd(;%C2R$7O)m*C=2W_?iPFPswa`*99L+F@_X$%!Q4s6Q7%?~ zPpJb0Ytq~ZOC(+9PhO&Yt9K3+rFI{Y{Lx)%*A#J$f5!@b{2&Sg4mC&JF7lv$Y7Z$h zP4D-W`$4K6ian+NQ;jq5JQ(8+jF)krl$YHD)*{;@9;y-$zH1nJclu2G?sQ`|@&?S+xPZtP5#w~OtU*)Q6b z+b`-~?R141s6K{fD#rOx>`YB3WZCn7tlF!3?im};rHdrYaC{TT zS7oR2Uc0{aix@cyOni~nNH_|=2=>eD7d?^NFIu%^W%n`5mvk)cY?-s5r(=0%JXdAU zM4JYUbfXp@gsAk3+@IL_qV)2Fa+Mz1`J!~&l(*|3lwd2uTEJSMK`cPsVmMz!?9f0OnNlF5@N^Kbv=6NC_II(;N&XPZbAI@RGLGwlXUp>FDqHDjl^*8@<8qF7(X@P+;Uj!-TLNQ? z(rf)9WxBwANmy$n9ED#5`(^fvw%6nrEnjk3JTDo~pqYx1e=ByTrW3L(`aiStMaqhL zoiyV}6J@mA+4&;aCTf?co#J*=Hn)GR1*`?E1u9#h$$p!$vXL@Sz$cAD-^ODY`D_dswbgby?iRUljOtfjx z2p-nrgAkQ|k-Oc_7lq{~t^G(pZ|95BZByQ^gHVF42x|drfd;Vvb&KJA5#4k+t_n?1 z{{13qtExH5&leq5UKHsvf0APl@ptFW7lj!${33Y)1CD&}7lpFZV`9GOS5dzR;|_DY zOnDiM`6Bn7_Why|kF-8Iq(BUQ5$u=d7iIl6BXBoyCVgT3MZJuNs%)mu7Y$gy2+)bJ zI-F@AD%dZxU-Xy3^^4|Q(%F&CEppIIY4@w5-;SNB>4fYf{NGr=D7`$Tm9y}?^@~DV zRAekYg_lsIWwMjA4CzAaw5jLV< zR>ldl| zm{guBpR;~ZWg8{iw?gT(m#qb?1*`=E3;cif-UL9hvnm@d)~}R(QN!~44F+NCUon#* z5QR)n7D9mu#7uyJ07Z3ob$2m6T}@Ya&rC!!AYiFL0wN}Wf-Eu!1Pr19frNymS;I~Q zl(^xDNO1iEztaEnocBEUzV~+3)a|Y=zA$rZrutp(yWR7g_q^x4=e@U5yXcO042Dsv zS0#n)w|DwIUxZSLZIaeFR;<5Wbp16~kKg53RoDB9#`U`_9CsgoQD%I_o-aD~Ao5oq zgbaNV&77mtZ>H_s*}*eQZ+KLAA02JUOgi^`QIY43;4eCwwTq;8$OftMLa6INc0=lE)wo}oY`GEf7jz1hBNrR3)@S($dO~v z3uDnXDu$@+BGIp~T~xi=?9j)ejTFCZ+r3g}U3fvGHNVvBQqjD=cG0y(TPRk}WKQ>+ zrCrpYpZf7xnqS&QDJ?ce$6`!cmMSSwQlO+j#g0+v99^JCuXXuY=jdK_<^9|?iFF0V zCC6e~_qU5!>Va|5^>MDR`LC7Yxck^enO2I~MMd7bkT&}uMD@J zUTGI)=~0}PL-B4|xuifzffI`YP@@iy-w*dZ$X~P_W$5dm?eW#`ejh%O!{Z7!MzUku zMX6rbvsKsil50siUoW3ljbe6@N*4E|T7n*Oxh#lpfOQ)`x@qMb#&i&ljc0^jo9T5{k(#68(m?i-da~ zXZBYF=RtPSY-tw>I)od;na>xAeuL~H@&y6Y{C>yZ;*GPVL`ASpClsuKrgDySMuF@A>ur z_Ur%S*VjUrYdT4iE?sn_e#GbZN=n2L(P({m`)D@AH5Bibd@fQTOnD(2kBWFy_P^*? zgwKhm_+?ah9x3sRz}h&TqF+%wHSb4-=W2=PPGR{!apJ?xU`7Eh??#_<&WisD&weQH#AZZGkSICkTBihf1$th!!2Dm-f? zoo(7O7-A^gvi zt+~oP|7_|LZ>wY)_+TbAbi($-Yqxuu>1CxKwci?k?EI2$$EHtqe<&_HH2;76k5Bh^pRbRCtg<~uH&)vPf{m<1q1U*Ck8tEO|G8HBp99Gfy2Wd+;!zQg5+D1WXr~|bap2kv))4Y6)Wsc>4erN&zbNY;P z+B(}^yPLLO)&A$zlFuW; z=lNUdsE9|!=b~Q`KDYA(&M%|F^Js}@1eWm2hf$Fno}yn-JT>n}g=h7frGG0$E03en zX$i$NKSjTycuIb69#4&+ceuU8Ga`)e%ZE`Bj|xxGuPB~chew5Ht;90|E03enQIQ;; zqF+%wyRJ`-3eVXR&j>8xmk*;NIXp$bqIlL^FCG=1-4f3TtUQiNM@4dYihf1$th#+O zDm;&rct&6ezkC=K$>Ayb6~%Ma?bK1>xmw~GftANm>8MB!Ptk7>o{9hYA;bBfx9w?9 zZ}RO>+74cKGuN-n87jl}i@Ns>`zxg%RXnt@u%z3@=oR*`S*QGz6euZBQlKye;7&L^ zegTUA5c!`e=i;y3Ed3(4-Sj^%&;UwEMf&c=W@bbqWb-Uw}_?~)5? z{$;z>liZJdzYumG5W?F36T<5M_UqgH`cL`w2mAGhgix(k?|E(JIV#CB^&>vtxc^x_ z^bV{4T>7_C%7_p0VOl~l;zK?c{fh88{m-k;FQdY9dx@tYLYT)<>8OZDg{SCO6i?0j zQQ=uD@r=L{e)%velEYKaBfhGL% zVN@iCr|4G{&sEo_Muq2*63+;%JdR37MRItGens)@x?VggJXcFRBd~;DK8%Xw@D%-u z;#qV1W>k0{E%A)N%HybXR3wL|=vNfas@tif!n69V(*8`*5`OtGEuom~713`Ho{9f? z_on^Nt@+8>ZF`m$+xwat#fHMZ{^uJu)Xc!bw%51%(6GN!`cd<|R4iT6tr(rw?=cMI z&$2*Cfsz6x1w;X?i-*TgMQXJE=d3)tuX^th%D2+%-LEJf`<)fHR#@+N^*>iH?(Ki> z{!Gv_w-4f5C z@D%-u;wkw(Dm;&rcn*c9=vNd^t;3_jbG5{CC_F{KqIgzapBfdOM@u}1!c+7sis!29 z#iPQr`Y)w_D+P4p`jF^X6wj{PH>1LHdx>WX=Vs1VI{k{`S#vveRCv}(Jcq(l^c#d{ z;(vbpQ2ytiKff_E-+E3;mJHMpc zvFQ``lzWvKig(M(B?U?foKO_tvUqs>Wc(fEfBq$u(eFQJSbJ~viRJG<2il2#q+$M>mQalN(Elv@QC}X$|18||II}-t-V0w|XMW(#6z6}x z<7wCO`yc+DE$yN}DyP?aj5T+nVu;EwC;An(i!R!1x^SGa9Ip?5pVad_@;UlbHa!37x_Wh zMeOazLzn&ja(&Hztt`jg$1cjWRm?6r3>)U;M^`G_c2_F9ZB5TKl1n@YX?=A`3diQ` zBDHd?@bGwTch)YF-jUarIhOPs9@iFr)`x@aqFQMe1=1z-BMtN4sE9{p7m0qu+C{=W zk2AYV=kI!a!*B-MMcvXaa^x7~@l`r1;!)W}qF-UV=$V_giJ+5f4j9Y&r$oWXm z+)Zbi%&DGL+C}~ONqp5mEbXHHv^h3iH_f+Y#gYOg1x`E)KxIBWem~szAb$~FubB9Y zzWUwo!zXfhT;X7{W#w6s=M~fa^i1nqU-Mrpa9g*FhIwCZ?diRrS6n?iYZpoH$m`3r zi;C#WgY2SiX%|JznC0noU5<))RCbZ*H>_PG-19iIyCOITo4vok=tyZ7MIderXTC>N z^c!RskuM0C=6C*i#aCT<<)+`4%W)j*lkStmrDQV)KKf*Q$>Zd&?qh=7sXaD?)yIW! z_3p6Az};MXtk>%Z*R_k^%V^Oi-r*zbFKKjQPPeqM34D4vqvqr!80iDwGuCiYuJzoK|*9Uc{) zwGz*v@D%-u;#qTjYE*d6mUs?@r|4G{&#LRiqr$UW;yDzaqF+%wSKYoD6`n^*Jcq(l z^ec*I*X`6%;kjDkITW6v-yl4b=M`r+>wmtmF+bJb-@2r^*>~oKEw|`y75%6pTN9f9 zx%Q;6zf$^9``Jv#&M)b9Z2F{o-T87`!^CAPB?U?foDdYa&HA5v`$sBy-?Oc^M2dcq z+w!^GVf@eCXY}?zSDzB}4EbxMcSv6*P59X=|MP0;e+~q-zxlOS>8OZD<$o6as4u7I zD_D=8!@Iuxh6RuB9>47RrFEPe(ZZf4(ukR$IF zKP`l{r-!im%n+{D{d&W%Px|$yU!M+PkLE2)e6D`P=UeT6uHI7mw^9u9{H=6aLNW2V z=vRc#?L2|=%c$_&Ug9Z;5DLG17!~oT@D%-u;;DH*Dm-f?o)K7i9F>lWzisC8x zJt{nBOFSd6gkL_4isbMV{fgqLb$C>Gc1t`Xu<|%69TmypDf$(~v+MfQsPH^e;u(P@ z{PJN`B!{QyR}{~h>&2tObG5`X0xOTB(ovBdo}yn-JgaWsj0(@AC7uyj!Y?02MRItG zens(Ibvt!bcvf$I-L+r8bp3cw%$z)qO0TDe>=n^(5T1$ud2!SJ=k`)#sae_hdvZ1S zzW(P`mDrll_KUi+VSlCcql$+%7M66|7`@WHhOJ@ZvXznoB?V3d3UFB*_IEAu^(--3|(JdFQYxaV zSZMzI1n$XsW>Rf3Th56Wzr;eRp+C|5vPk-8O4HK8GloTi_ za3WA3wTtfj;Gn6cdR2P=JR{rheYrb#?%Yzli0|e-#wTMFq1^ZngI#p*Uw_tkXZBvZ zuKxX7&fxEe-yC?#p-x?hi@u=(~(QjD0 zNVw;5W_RiQ<@oqn9}cpMYNcHiNSDyB7uHb`kIG*p`W3c|UbK0;XnAg7>72#Jf%T&) zloME?N70Y>$QvTdc(L0q?V|p=doLc#=9P9)mLA1vIRxjHRZ9w#6ga^sklICq-k00Y zE&{=})GkW(x}H$n=Ix@_9e9G#LkdUu9TB@1YGTliTY4t!s3X%_|3CG_jHPDe#ND!Zt=RsJH!J&!ZHOXtsee8X_`Od5HN zpTpzpeqXV)ivnq!KE3s?sE9{p7tK2T3fo1OZ`v+u?O&MVPtI@lBQdqE{wLPu43%Lr zr`jp)qTamJOOCA1EA687G$}^Up?J5fTvDKBK(%<9Q^ym7T|5^>|gSXxH zxa`K5!#CJP`E(IGC{Gypik@SwdzD$(U_u?Ej9VM(MY%@&{vWr$ryC?#IbnEqv zig;9Zk?1$HzsPaVo*dRA0NO*KddvZL~)@lR4d$(k|*PGy3sZHovrsvh*lU%N`tAW|b5uDNs_NCk3{` zF6yl#^z6QTlQ~wRIrQIrE}-#?3M=nfxqZr z)-ICXk=K{E$}Xzz2>RQAft?_i`>oOIZ(nwi=r^ogB;4~jv*)d_i;k3bQ3T?~aHjkc z{R-PfZ``z9w7=O{+|+|beuI7OqEAH>*n+6pMb%4!yt-Y)rCZQ;(!}jsPjTzWP(xYYe=`PqyC^n{J}Tdb(uk)ayF)%1=pw zk^&_KicsL5EHr*H{@l?Y1W)yTuD|B$arWPLv0i^>FL}Nw z-)FD;U>V+Kziat6il!fgg8CwAzZI=}c-gOf3-522OwXL7v*z7S%GpIl{73K?{Yus@ zlHQTmmo=7fKf-H$nD-am{mZ|0?IYfQ{TU1&hOk!JMS+C&H^nr@H!6@sWfzHl{p_Ou z{la~&r|qT<-S@r!!aa{OJ4|_dJ-%T;gU`{emUdBsT^8FI^QeeNV0(KmQ%edCBdB#?PnKl^?MikF4SQ-TwgQaAMkq@tZz3V69UO5Vu(-1F5;eJ{yhu% zG%(ndT~xa?YZpoH$m`3b=~ldtu3Oqg25|V(Z;g(McvNIE)x9;+eOz5XBTbuN1`$8zT&pmZ=tQf zL*LG`K4WyrAKjE7Ut8kU`c_J0wo2oE*>7gALuaXy$jn>hQ19x z!}HbeejmF3;cGOv1<={({PrcV~7?HoaF9>p{_M#A0yCGct z%@B5f+poXGuV3cZFZb&&4`JMM94B4ucZIzl@%dK&PW1MY&m*#LoX8nQp4}49q3{&_isGqtcvN^EDe)W%PtmU^ zo;BB}Muq2UiRVywihf1$th!!2Dm;&tcn*c9=vNfaRkv?Og=h6|OS?P;bmR7l=vNfa zuG^`j!gG6xX9}n7NA|)rD&kS?vxt6!@JxOu`ua`#pXVF=K@ z8z#s0c5AN)`zxg%wHH4P&MWCQm_}i*J6~=X)-CIn6euZh;!uFHgUh1Mc2`U z!FR^@JD1zf=a$ya$BzBH;@$GavuUocnePwyTyAzWo_Y{MeGy%EE|)ag*n3>^=X85@ zdw9J1%AjY+Un9Lk`m(Sj%3EMW5WXUDTdlYR*?q z*^v%nW3j$=(PuZ-&Y;r9d#k?}uY^m|;oS7z-Z=^c4}Ijj6=-CZB%&*iRr zk4tG6C5)F{i?t?;rcp6OWf#>3*hNL(<09PiIJ4Ju?r1FQ!$Ee@Y-txo0LIwH@u-ML zWfzHlh3%p*ZQ3qcT5QhGEX{8EiN&mFh;Hd~QG5%cCbw&^F8xLQ5*DuYpB>Y9cpS6pm zcjWbD(z1xYoVSbe&ntFIyC?#o-x?hi@u=(~(Qjyfk>j4nncWq^In1s8?{Vptc2NZ4 z#&G6)|3$w+b`kl4fN6ej<@1U^7TrOwXp!d?Kh~on`D^tLg52r8E`+t$hp_s_5U#$- zufN%^zs0Y=)vv!Tggu(KEYgL~x2YfT`Bp!#c%2!f6Cx#(Af&+YkB=a*68xmw~m z6rQ4AQ9L#8M}_Cn63?OV6#a_gDfvArJga|KK5vl%x^a0c`W3}f>+q=X++O0D!f9tf zdSMzB@u>FCMZcnWc3qzu6`r*c&j_quSTb+@M|g^UMe(e;UOXy1XG=UIur`jT=vNfa zs@pfC!n0fAITW6vUr{_)-A)}9o<~YNhr(0z8-!=_yyDH9_CGIAEG;%Bm!jcrEZS!~ zyHff5#@ZQF+SaG;RbhW+l;=y=4o68iO9m!o2c5+6RVDEd)f?)AK4(Q~=NJ&!Yc73RJ0<#px{@;|SZ zc2OXe(<{(2k9AbUquPfO{R-Pf-`uQSbW!u*Ig5=0>xWV_Co3AFT3?9bTM#vwQ@wih zc2Uaz8g-0YX%~qqaah_#F*V9~Nr93ACpHB#&nw!iKGv@*l}c$B9h*xYgv?{5vAW-s7_RuB=@oy(6zLQ~9|=atrJ2p>XN&c-}6`pUbW84EkHr)CnDl^{qI* zo+z@5M8AG^QPKCf2=_eB>^Ysk{c#>-7ac9_q6owo+c+K-@u=(~(XX&w^dFnHi)LGs z`{tXS&SoE2>}wZ&asBNLlN0U=+Z* zc-wqlG1c!fh;V()f2{z^AFt0V);`$#dBxhFXYHb{>m7N0naWQ}Pp&QetPcm-MYYl{ z3ZzTu*K3`Qig;9Zk?1$9T_oJ|IJ3JVI1jRms()WTSCFFE3uDclv=n2qi$uRcb`i@H zFwO7$^NMKF=W4c}6yt1uoI2KT*s|QQo>$~`_VIB>av$bb-xK7{>U%@jeP0M`9|&Rf zI=}uwzkY*X|FB>GXb5vnCrQ$U&$p=`@%dIiueiPB^MvMEJ0j-!sE9|!=b~Q`KDXyj zonJjuc#3{S@zlH@6`r#to)K6vhH*S9lEYKB z#Tdr%s7MY^(XS|;T8Br4=aCZ62&@>xI35+r;VJqR#dFp5sZrs%TH+aj6=N93qaryx zMZcnWc3m$X6`n^+JR`7T4C8oIB!{QyR}{~h+c%@av-%IEU7n&9V;INN5{k)Q5&eqd zS#>*gRCsPL@f1V|V+`YXRK%mgQ}i2zXY#z__c!lg4U=R0 zMXRe}f2H)J#(Y#fUec{Nt+MlW7}hQ8mJ}!{aAHw_%i`g2{&u21y?h(TK9^hR=_65l z>%(LJzM?%rxxSKe*jMIzBLBW(_v1m&kiSNHhxBD(NtCzZ_Z7RP|5<#9u-_UT74azX z;q!{3ANA#4&np%^mn+=!II}xp9>&KUjx!q$@;}!~yC{$>p<6Gkqaq%aT_pMywu`Fo zviD&>7VV_?t#3b{bJm3ywdObf4i`4p*Dm^UzO&)d#)Gv_mUdBpxzUTqvU#Oll%+>; zS`Np&W$lszB?V3>3Sb%jL7dBtY1-c|VyU1Pq)*qyH4)F)M4q-HtarSg%k5s@`&@4I z(^IE)xBQwTpy%9%pt}1m{6^ z(QIiKMIiRVSaT;ThN$c!(QlAl#PS48^E-bo_fwxd&*y5kpA_S4ew?~noahlBbS{@w z?%tyw`(C{<$er$ILs>M@l@0!c+7sil^rNsPJ4Z@f-?I(XS|;lHa4k^Jt0Z zP1LHw#0KNJVn2vc&@sgIx0N7C7wg!Df$h(FtM`o>{#zCQU7=9-RKGF ze_p+zxBt2JH$l&kzeak8^kva!^rFi8J@1M883H5z7-W&F{Sb`Bhh5Y46_7 z_mpCszmlf!mqvTW2Kk@a$ESMKWPbJU+>iYCA?$u5gtem~tbWt4|Fd8J7r%asU;oz- z_GsR+B+t~3_z)w8S$4YU6l{ens)r zydM>w)qgDgTPdI$$5Zqxil^lFsPNog;+ev^8UL2kuPB~chew5Ht;BOEJVn2vc&@rW zH7Y!3OFW0dQ}io}XV>-OQQ_Gw@f-?I(XS|;HMeg@h3AnH&!O-X{fgpQbvt!bc&?Us z4uz-aHwe$f|NOws`k$ZNTwH1%+;-+lbFnegj0Rma+SmX5mqlABR?hbNR{t&Ruath& zem2vw^GmuNn?C7YcfMRPCM`>q6euZBQUDad>w<2J&p-D)FLpxupQ|74?SJn6N6<6m zuaVv%eOZ30t@1zDO8;{tH1cb&(oqqQ5+C}XML+7x!}yqL%IOtoDSQ=1MLa6Moai^mE@F8Crum)sKM(W#v;7kH`XMGcgZ$4dIGvPEBjm5z zf4Lv|))20KH-z2)FNC%K@#|}Tz4CH8xmk*;NIXp$bqIgza zpBfdOM@l>+u<|%69TmypDf$(~bJg|YQQ^5-;u(P@{PJN`B!{QyR}@d#H>1MyXo+V8 zRvt&CqaryxMZcnW%1#{>p4ERU?ave~;g=875{k)Q5&Z_?nfRX{GNk|cthwby4Ps+q zU;p!0HrCFd(&m4z-Z|{Alz!AaFBMCdbSp-u^?MA1*t5J|QlO+jNr8j{w^jdh>PAb3 zYLOGt|6Kb>Z~yb^{|b7B{58@$q%VtzTjhW5mj3668~d%%Q4x<4ANyS*ryup@Vf@d+ zJ&!ZH6XroTU=GKb4F~z3x0iNNAX!4UURXy(JSw|L^c!Rsu{;6O{N76c^F7uNFOyTm z|J>`KFZrwcBko7OO9-oX3*qYBL)g8iU%$6szpr2aF~9y3Ah#p9A4Q87ft=b~Q`KBxb==KL}$JZDQhBcL{pr|4G{PtE&L;n^+m912g-uPC09 z-=o6wNQviAc#3{S@zgpzDm+(9Jcq(l^ec*I&Go5K;d!*gb0|DTzoK|nT`wLLp4D%b z{;d?yjq5|AUr{_)-M$$Wp4&@2Q#dzszS8Me6wj{PsiVTPR^mAno}%9%JQM%(w#uJ< z{nAS1vFJ73CyR#ACwkU}{`~Vfi;V+)$_&Wv>wo_0fQlQuYk^(0(1#YYU=YE)+kpAcHM|=C9s}BfzhWs_sJESj5$J#3Y z^J?jTj`&h*Za$2Pc$E0i|1A1ZUmnK)EZp-rvpZql%kRwV%pc@`o-OU7Kq{wKZ+$B& z;!*kKM883H5z7-W&F`)BKll3W=6J+K{LfQy1&@=zRv+ko9qU;VJqR#Z&WsRCunIct&95aa1}glEYKsbE!L1uIM`k%j+EjMh+{LkH=4f`vl zA5}cGv9P4u#^{ymO2e{mS-+$}Nr4lH0=HHF^PT!&a6qub=MMf6=c$+OO{lVUOl5OY%(ph|jm$|GZlAc?3Z(9+&KhiXkdK7yXLx zx&8jL^UJ94JX+!z0kv^FMZcnWYTl0u&+4~I|5gg<#_<&WisC8xJt{o6mw2XdZpOdm z^ec*|*5Og%Su61z3Qy6mD4wgXPmK!C*%Hs8@D%-u;@Ne*cvN_HOFW0dQ}io}XU*-K zQQ>){#B(S-MZcnWR^3h=6`rdloW@& z|8w`upl8TmBfUfVvV4(S<$tb~{^y7r^J}ltQ4x<4ANrp~KkCaVgR>q#hj)GX4GSLM zJ$~8s%V&7L=LNryJxA!c=W%9vVcyH{to8=^pO2PyQ6QE56|VU(D&kT3PLLu`<{~dqj{8seT_cvulg^ge=8+@p1+k&ODHBj7yXLxIptQ>`DIjiZZGi^ zL!Dm<&-F73}0 ztvrrOrzI4Vy(0Pz!t;XjDwUg1xpudg+VeAyM?BppQ>*>M3(mWsG1pvL+RTH`-fG{i zh`;XN?Z7M7{Px@JeyWS_&pa1I`fNjOU4IdTr+O#7IP|0T z{^Q>k$MuctshsN7yq?-S`i<#vedBs6r+Npyp4$8BUp{qQ-?*O2sooKfPk^)ZTU1j*sgb*HbywtG*=AMeV)o>Ql${jq9nL>YeWO)ZUx_=pp0!#`RQA z^=7@E+I!WN_Z!zYuBURUcZJtedoOwMUB~r}>#3aTt$IDR_q@ZEaed=@DyMq4dOfvw z^c&yUrEgqM-E&$l~-J` zOW(Mj%BkKpUQg{k@9^PW`o{HCPW6s@J+%kk#QlYDTu>#4oZedaS~=o{BlIn_Jp_0%5A#vjQSl~cVVUQg{&MtuLjpF94t%kR01^;J*h zRPQFQr}nsa^{sC{JLC7*hWaX}devtIxu^CjYri&r~f3sW7)KfXt+w1kz-rL{yvsRvCl za;kTY*He3>=QsX-YWz>%wKG#sqeQDPp zzHXbzw0N8vm`6t;(t1tk+X}|MZVDCzxA6x0^WS*8IbdtajKl^&3Zkx_v%-@%JdM{kLjXvs&|FgQ+rsScfIAv zku%n#4n@9y`NF^i(<3JL2`! zp5%0>mDW=^)w{{-sXeS=XYiY^r*f)SZTbB3`nUeq%J|y<{3>XYwWn21^-lMCYVV)_ zsWtxH|8rnnJ(W|vS+A$|K6~R6&7RKVpmM5rh1XMiZ~f!3@sEAy!R3dGU*PalDKRca>AU zy)-UHCy)Q*KQza0{_AIE z=%R9}SMz#m4|?D@b

|=NB^dR8I8{dOfxGm78wbb=BK{4m#+$nR+UxdPlsT+I!&( zUa;$r-|{o#?|jG4XX>e(>fPk^)E;rLxtr6oR8IA(b3XsP{_ni}<-0!f=}+%^&o$R% za8NnbJKgK4z4u&m`mW!9&1>w-u7!ijsot#DQ+w1~KE7Jpm0yokPW7(vdTI}NgI{i5 zzy5hS)m!zn+9P(9EwJM<^i(<3yVdKdU)-P7A+N>vr*f*deZS8?um6s#9%lPzfA;Rv zGWAqW_4ax_wa0l!8;?4&^y=%Ol+M|v0npZzyo&BzI zs&~}usXfXT_LsN&RZjIzn)mtV^=V7L;q|XyXIH75>ealS+Jhaw3)t`a>#sdMLl>1( zy@Os)?a?+OkLLAcl~cVVUQg})>n&~Lmrs1`aT)wnPW5i`dTNh*wEy|Cz#05NDZb)&?lYdZr&Uh%ZuNRQ+uR8_Z9PWQ90G?dOfwr{!Dkt$z7FGy=%Ol z+Dqz%NFqN~PW6s@J+&9~)u6kws_3F}s&~?JeExZT)ywNyDyMoiuc!9Xac1>1l~cWg zUQg|%x^=dm%BkKFuc!7>%(L}WPW5i`dTP(fh#*@}ZyIT zr?l!l_QFc#0-o1=$=l4Y^i&ksh`;Qy7oOdon`=%kwc7KQ9ZBn368ZWTw6fj(t_nBT zZP@a&q+vX98W>K7oDpQyUK8Q;#rl-JMRQsJpEvJ6?>IWd&tI~c-Gm=6V1xP zY;&=hy)u02=HZ*@+rmcfv2Pyea7v} z_7eKIycd1I$0PmZ`Jdys96c)kp%@(3VVL8U@GSMohAY#R%E|UO(Bovg9&EysZJvj* zpIo7ir}CWtD#OZ5vmLgr^1RME%nxCR^Sb)tIB!O}>hhBGVq5pb_gJ4NJ^B0w`EawJ z+9$H_sJK5GB7OROp77ZA{I+xPV^Tl&vlt8pBb{YAw2B-9~TPLy4Cfd?ti`Z+OJ<4U(d#gXBCX5axX{q&_cFcztj^h+B4gj zYA$YjLVK#YwAgI+E7(6jK;Pr~-}T7bXqNb>y7IQKkq%+B9PCA#8tl<~1idmpj_MwN zH^@c)ZV-RBQ1^%Q9YZJm%iilqFY?Db!4SH?%bY(}{XX+_xcP|>s=eSzF`b{dytJ^q zw9#2<<+p{p`96xI&juI&D!$*pN2T(2Z+gJEzSWb0-BrE+R_*=0^6W~5-@D?wdKOk5 zd~Z9SEA|F{C5|@}N5B7S*J6^-h%8#2q74+8xcjtHEE_#U{lzwu1Zh8MEg!op~S37s8>^`A!7acYl zo^)f1JLR_IwB)whlRQ`YS-XEKC%4aPOzxXmY%kAmNSWGPEsdg5xeri(KE7*tx&1(w z+n0Oz@@$y4P&7vU>9#AkPkMSzZu|Xf{#Jjo_xgpC3hm9kQaaFW*!rUW?KOXA@^X8) z9%{$=Gv<3glg?k-NV?zO^YvOb0z>NmiF|i{NccnZ#Q8?J?17FxKeIHe^hU#B>!kpq5FM>^G6_;+l3EadR)RE&JW@bku@(zp3-d1 z%x<3im0{~^T;P0L|F@byy2m+x-1NCDf9QU*{6Rn1rSPs?dTGKRzMkg!BgG@chF#x> zt*`OWE?B$A?N3;{Ky=t>c+wYA{x}_#Wna83BR|qsr9VnvtV-{4JM#8klzg-saqTR$mD#%WLB91s33pu_4tgFp0S#PPrI=lnCzX)krQ zLCtFK+iH&ehr**cc0rt*8rL`ML6g_?P3j`gJ|Wx)5t1g7$iOycUl#oQRs(&J53WE$ z`41|DLw?Tao}w_l58Yof$n_D`t6ZC2TRkgnBFz=w$dA5pzB#|K)Ld*e=F&E|D)x;n zXo&YLo?)2si)h5qK7OrYX&mXWPxY!G|3eDe;rqim52Ztxw2{s3MeuBikU}}~4gDeN z@3!O*`Nv*k-e8{iYpeVr)to=%&XorC!TOo;>+3GI-XB6*Ev%!H`n#=#o0T7X zznI!RH$%<~=LGjFd>%MI=)R9%e+Y4Z+7Aux!egW16<^BX?l>p7yWA5$sQq(VorO6# zK=(K2H?urH^$^W2>7_m!CY z{nf!}Ki&C4d?Gxm&Ob_DG~1foH{a}Zl(E5Z*!pRAtAS6pct3shIOmg-{xang`df6r z$J#HYUsd{^^grPsy-?|G4_fC}?MzKyu-KZPY%R<+3;R~n8r#m=bI!SHzHmst>Id;% z=U07=uX`^Izhzs!JR277ASo!nDs_s{ork%7a`I9gv)@b5=euqQ`rqr2Ua!}jG?~-? z{Qfo1tAEg2|2wPEX>J?BbvbN(-R0K%RY|vBIQ!^vKF{}lB|Fb`zw)c*_a?Xxa5Lt) z_#xqs-CU<+y_AF0yhB-1dY<-Ob`^RA&I6tp1m|qnq)HkX$kUvg7yL!v<{ciUw zzMAC^-LKXG97l;hk)GiEknqP@&L25BlH$AV!p2lg;(U?t$vMs^&OgE@!g*7x&9L<~j?t_$ z-#)8$ob$;^f1UD)o!{~M9k|XoKP3EduJecUjc|$ZecTiAUYm`6hOM9WH;Q%U`m<(_ zbN<--^(=qre&cm!=gxPHU-j7Mjqlvq*`3G_=ZAzpYR(_dH^L>t_sscLrwu>i!XaHO z5Dr^E?P3)C@yfHh$2osoadVbGbiXlwq%@B75a)-4KOXP=;e4Yy=Qo!cb91dpr8gQ5 zTR-h@6#Q|~Sx1g@{EWm zt!J(t=lpTf-(~qj_nYGn_q9jz!}%fMk0&^PINt~t;k)gk)}}Vbhpn%1jD|n%dFIjM zoIm#deU?9Tzd8PJGDrO3{E+a+g6|VL-w2lr+siYvL+pnSTVLZC4S!tl!RjgRO5RVD z_I3QkuK0&6f9QU5{IOnsI6ox(vFQBad?N}aO6ew5kYVd<9HZfnyI#NjIOmU>zLDh* z-EWRRoXnB@aDGVmW6Al$`9`=z_-?zfz0|OGuIgfeaM=237o*Tmr>?IZ=lpTf(JX)H zeh2c0^FzWPE6yLzH^ODlY_mD9#3sUF>!)3gfogM z&L7SZuS^M~_|a5;Of z*;t(1{1b-5*4H>j!yo^3{gLCGKW_TxEPv>JbNu0Cj`R=bhlD?#>-^z-BU}=Ep?z$| zk{PzX#xWZHxYrG<$2otT^eF@lF_`~@j;g4T){&2n#E}L??s4~J~ z>!(e*{;_4}z39h%=nY4YbN<--?JR%je#IZ8@2jqSkFPJ6oRj!poF5YYIPCo4d?Q>g zT5QaB_P076{#L{$KEu{eyBvjndd3aa9mo0p$1Pd@(EW-(`kn)Een|M^`OY8CH^L>x zcQZ@Ou=O>L(X20fZrFaD^T$o!$?}KpcOZW_KP3F|0_P9s8{zVpA!G;J7`DE~F`Dxq zts82`Ie(n=Z(07({p$RO=o`XF|8Rat_~S*+AI>+bCw%#Y@Md1*GHiW~Bat6ls()O1 z!|ZX+AAA2j%OAR5$q(^`h4K4aoF5YY=sJHm-w2m8=N4ugN^Bw=wtm{>2=tG`zjZ_R zIOmTm{v*pDx?k}}&_DE?b0j~U9}@ofE$0vC8{zVV_Tv6wo)I6mzQ(cj&o#k*IsCgf z968SU=M(22)lBy>Hi!7I^)-&s@X70L zSUt}9cK6&d6M~`zp*?Vi2 zPjtV9`Na7`d?Gxm&Ob^I`(C(V>uVgNdaqpd)Z=_#OBqp-Yci)XZ5^n^4zJv ze*v%Hu@CoOcO$0v{ph`N+w5wkqL9xtJqrJ-A9`z{^I2?{KOz&Czn!=F!xr4*9``uq zUiZ4!?w|OHpLiC(NbkPOUG8$q9q)KYPSufo?sK2}obsqgJ?gTjKmF;qJmVS9SlhE_ z&)P5l@-MGF?s1P>JNMjk*T%=k*B<%EM}GaG4}Ius?|a|-Ua(bz_{pFA$=%O-*0XM0 zUS3}7bUJJ8c6)7ZZfVHjpgx=f4q(3%rnni+uG1us~8-t(Tf_G`cPYiqyqE5EX~xVX6X>}NlFZE|wb#_{AQ zKRKbt*=L_^W8gS`?&p5)9UH~v-uJ%uHr(%xzwpLIeB+zm^rp2x`lCNuWB7-E_=h%**SzL6$v8NMm%QX9 zYcG7^3-LzNKnL;$$3VWQ*XwJ<&#O9#;KvbVkM zZEJ6T``g#v`qsCu{qZ0F@!Ff;{N}YczVVGV4vyhfuX@$m@BZ%ZuD$GKFI)TV-~Mgm zjl+izuU&GtDb2`@jGD$rvuX?6S4r`mNtGejs0xAAp^WfpoyUS$oP;p0f6YCp^LC z25G_XkN^0OubZFXt81^h=9)Eq-}SC{tzCWf)oWK>b(PWL$dMz4#~a@81{=c_S6pGd z$uW>8pa1;lCs=T9?Ay1`_~Dt)eCFCk7hSYQeqi6^iS66BUl!8-&;QLfe);` z|NZY@`-{K$3mXS%(Q6Fk3DSXMc=^j;Zv3b*{OYg%>e_(=2Qu^GX-|9F+65O}U^qBW z-g2iq-6@fkr<`)i?hk(OgKO7cfBhOmj^lmrd!LQrPyh5!4Uc!c;~mBiZ+XjGj2|>N zI4@#eARRac@p;s5HE0UQbvduI4?OT@-%qrQ=gjfBKv>X!yfip^$*&;CiaiD z;#&2O`qzHq6Q5Z7_{TrK_OXwB%*H`la141ma15jY=OuaZ5B}f}OfGOvQZ8^lhz68R z^Yim-)6>&yZ(=bd++(f`qpe)Ns%AN0KO)1UtI8ppsd$3Qv|3yy(2`QG=wcP-{e z&P(AynecnR_j@KEU;5IQCi8*w@j1_Vj>%`rB+i3g{bO!f{~817KrF};M#E$x=V6}y!0_77e)h9#pZUyZ)^5D<#jP!8<^eI_`b1eIc{nyUmdF6`%WFUPxzDZf%Q1ZF zQ=c+kSY2H;UW{o#UX+X^4Jel+lSl)}1MvXoLEJy-&w2RMKmF5(g+JEF3%>A$FRXq3 z^PgWM9by`g4~PS4Kt6cSd)|}KfU=QufqcOAl53?f(E7NtvSPAG_pko%e)qd4Ya!Of zdxGa~`QjJ9Xf$B|F%9y3NEuDJM43PgI2R=kD33@3&I7K`?4S2f{3VCU`?35Z9e~$s z**|GO48)6^3%q~LMapKJl*R0y>k-$&3opEodcZB}GarI(?+^`Q3^W&G8VCdO05M?y zI7T|xeh=0!4E#1?^o&j-~ayGKi#(oH4k+El*htfa)|wt|44tXgUx1hZP%_{ z*B(pv5)BwWcn-uosQc%dr27~CT8pR;P$weqVZPr;nCV2%_gsU>_qgXAM0QVcP zy;9M>#F;oC7w-%3dKcHVpYcV+|~ou$gyT!Vk7nw`nT)`Go&ZE?O)?<`L&9a?Bs>I;pjiy!`s$^?E9g{7t& z@N?B0i;Imzl}xHWhc|WYZ{gcGSn0HR23rU5Q#@uqVvar~kY}uO=l6J#| zv4u8XH`-jR%q+H-7b?i)_teVReDffNih3&*8=M9?J=d72%s2KoFMb4u+G(udmv*Ka zON|Q0w1oG{%`q~z+^Sn{d!e})UNyIbdc4C^EnMtUwZmS!tS$DKe|bZXb|*6zC9&{)znsKe4rt!Ae( zHrv907bj;A)fd}sP@scf^=QmsWQ)u5ODznM_fX$KoH}@k9)513v#+(V(469}Otw)7 z1X0#h3v^#fk{DyiSZwZZERePSws5H4n#ZjH6B`;Y*AFxs`%$*17l* zXz&2}ZI*w?x(p|0`DoQtop9nt_b(Vn5-E$!EG#d9`Ii@)R=9ofPVlQulMb1D2F!(8 zi%a$CMY1fM(jJ>^&$Sm>8b5#CtS=?MU*?tTD--R?*hFJ#au#Ht2X#Z-n;s)$Rg6}~ zpBA&JY%#q31YBs*l~(hBO+!mfH1;*qRA)MrX?i#@8PbhON(4NjTAy0R#CpzhW2rJR z(Z)DC%^Cg_A6P%67eNz1nr1AtJH$B6@P;y3Y81_o&njTs&eCE7vIRW6FN|-oy#yLt zyfL#Vl&z#?cA9g#KDF2gw`gOst3h^vrN%hy%Gl&=Yix`d#40StP+GiM?z%EizvtKM9mYX*$llf2$(UD9NTdY?TxzuDqCBHmYknneV77_1 z1HD;mEYHMTYkzAAOG6rO9Avz+)S8~=tAv?o?E_FvFePFb;(=ysW_Ag2u&Bou+jDa} zF#I{J3zN%>E6vBv?^WcfA@aoKCC@_asg)*HupRdI)QVC3aaf*6dCctkp%6tu&ucF) zDHGRifL0dyOgLZKQsnWlI8jt!odl}{xfx{G0_kf+4(lkBvkeHzF|Z6MAJ)@JljXQ` z3c>dDG=wkvnmja#SNKO6U{tJ&oeF;4skPFqhgA|JYtKO(RmNKTOyD7eP;2b3G*&v5 z`DIWY7ZKX@1ppyz9JJ8uPB)uV6Oe#h#8;YgSVZ?Pa6M<(M2{Tod~*&F<7ND2O=Xe^ z(7zK_>kg_e?t_rj=t2^**p@C6PjwSjl@N!h;`D4%fM8{7FE3KYLxytMz>KVP_zJ&S zP{kJaaKR>D8a)+@4dwgeOhkuC`ABeia|WW?DBgiwZ<+`L3+<~%lNZu>2GFP_eneKXpU8vAopo%wuJlY)sBJ>zoI3(1Y0F4z3ep9Pe0bp&f~uvqiGN z8AdBG2$v-2Bh7;g4a#aNFl>gcwC1Ow9&xGbfJBuh|4cy0PeGru5IhJe(r!*qwIFnQXW^=8jW!wf{5Jj{6>Nf{8m&-Vghkz=o=qkN4}=Sz7z-*TH33X3j*he17AqT3#Ro9eT!4H; zYc1SRP|V1bb*nOlRoteJubz-jCJsqgimxC7Z74=S;NF@tq_G~(G?zLTpZ*N8echAB zt)@{fwi+O3rvePHzHn8)_|(&gA~WifZBAs1c3Plh6HEW3t;JJ|n01RjUUK@_MDr3L zGQF@Qrr*~*6u3Jm4OqF!=479GXFpW9+19+{jrnchxq4yCb)Ydhu0GGzaXS2rn`Jo3 zC?qf+$+eYfpMRET3PjKas0DC9VYVT{^kQ?NiDfn{ImS&!x-i0oiaYE^J1B~&TnDA6 zTpv1>t3!}!)?LLkgq`47Dn}-XY?@lkngc0tv&P^dDmBk^04&5)LA6A?kqvV3sSiH| zK*IvTY-n4PxB*H#TT6{)D`QJoSwVpLxkep4F}W`gB*cw2VT=K=PDMSV7$h`7bis>8 z>M1Rlis->)Iwi*%Q%ewoSmsTxZ~>}lozoI$DhwCXozI~BZq3g&7h6kVnfLhvR8^~i zxN0(5MmM;^1m?l$HBaMuv2N?;G2c2jhOG*a<4kiKZ1I%XDIfaDb zDrtiX%A0jUcr9Z0QD5%BatTqWa8%WhZX9fO>QE|LCb7qYt;L3j6J#%B>s;Fm2SvjS zP9?|~rs6DqP8s%JvQW_$gvbLGk>`q6qPrV=8>8-|(FTPJvtR-S9f#1VOk<7GH0`uz z=Aq5vM(5h?ef5UH11;QCvq=hb!fB?=bC#Qsye8%jV2%N|xh9ugOg!A?^jy={m{1nY z%mMetWKi)S_i($w9Yeuz+gKgKP(XScl3jrHW&~!UKD~U&B~bD4?2uhhffD-(-0 zxw&10eTojms?{eaLSToR;T7;$xXb#qB@=5D=@|$x>N0V(!?D}&TGNMcf!av(pa|+I z>#BoaFF-!I@!1z|CK`=STWnw>&h3U}QSGU;MQhNsTsBU;+l0v}MTl*)L zr>SEHPT^h+M&^UE62Qndc6{fB$`hoCEJo-u;vHM;EA5HEsK(J0dB#6B2%DjV#Ni47 zH;f=Ummn{|eVB(<1G{ZdLns&ntCP*!=!@gzR-7q(%5+^090rb?ncy-w+gO}3F*`li zK7eJOJEsRNqzuDaVYYzN3|bR!nj@v5vH%4ETW(gJsbJ7zAF|0MfxBeh$rP+jj0kH3 zj5$O#i+#4hjsXbv*A2~dM(XZFc-@Mjmt@-fu&l7YQ^71f=)7)P@NO zNfIZ+#18jq*8_l2hRN(GZID^fnFSCF8xxs?ONvZh+@UIkenMU2>P}`{Vbb8f%nS^u zI-E-|S0m{L$w%d)4P&f50|+9{n_T2R1jNQXcHF$S^J(B0Wnw?F;Vh&qvPQV;Y|#K4 zEQ0;mskBW(hqpe_YPflBLZ-Py-20>II<@wtTZvYVJIc^Zf-0<=h+9tXOzfI1>U~0HVf#3)7jjIs09>Y5 zgV1UgzK+Ea%T zE|lDf2kF0A?n`o*mpK5!ubQg_W&u|0rFxh_@NO)EWwoT&BWnBJ0)z;r%p#_H-KY6} zYQ~u{aAPHtBc7E^4H}ru>1-B8(`hf(vzg2D;J#-EewM_AM1?aV(Ss)DmKWgHkyJu8V)=t7QwX-o<6

)2vBGnw;2B}HGU=Qav{5TBQ+iBN2D-=+ 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 b%t!8guRcvertices = vertices; } -void Mesh::draw(){ +void Mesh::draw() const{ glBindVertexArray(vao); glDrawArrays(GL_TRIANGLES, 0, vertices); glBindVertexArray(0); diff --git a/lab2/src/graphics/Mesh.h b/lab2/src/graphics/Mesh.h index 6786a56..993a47a 100644 --- a/lab2/src/graphics/Mesh.h +++ b/lab2/src/graphics/Mesh.h @@ -13,7 +13,7 @@ public: ~Mesh(); void reload(const float* buffer, size_t vertices); - void draw(); + void draw() const; }; #endif /* GRAPHICS_MESH_H_ */ diff --git a/lab2/src/graphics/MeshLoader.cpp b/lab2/src/graphics/MeshLoader.cpp new file mode 100644 index 0000000..f8de1f8 --- /dev/null +++ b/lab2/src/graphics/MeshLoader.cpp @@ -0,0 +1,162 @@ +// +// Created by vlad on 23.03.23. +// + +#include "MeshLoader.h" +#include +#include +#include +#include +#include +#include + + +enum ParserState { + IDLE, + COMMENT, + READ_STR +}; + +struct MeshPoint { + glm::vec3 point; + glm::vec3 normal; +}; + +Mesh *MeshLoader::loadMesh(const std::string &filename) { + std::vector points; + std::vector normals; + std::vector mesh_points; + + + std::ifstream file(filename + ".obj", std::ios::in); + + ParserState state = IDLE; + int line = 1; + + char tmp_buff[128]; + int tmp_buff_index = 0; + while (true) { + char in; + + file.read(&in, 1); + + if (file.eof()) { + break; + } + + if (tmp_buff_index >= 128) { + std::cerr << "[MeshLoader] Error: tmp buffer overflow" + " (line " << line << " file: " << filename << ")" << std::endl; + return nullptr; + } + + if (in == '\n') { + line++; + } + + switch (state) { + case IDLE: + tmp_buff[0] = in; + tmp_buff_index = 1; + + // нет состояния, возможно после пустой строки + if (in == '#' || in == 'o' || in == 's') { + // коммент если это информация о имени объекта или о сглаживании + state = COMMENT; + } else if (in == 'v' || in == 'f') { + state = READ_STR; + } + break; + + case COMMENT: + // строка коммента, читаем до конца линии + if (in == '\n') { + state = IDLE; + } + break; + + case READ_STR: + if (in == '\n') { + state = IDLE; + // парсим строку + tmp_buff[tmp_buff_index] = 0; // делаем null-terminator + tmp_buff_index = 0; + std::string source(tmp_buff); + + if (source.find("v ") == 0) { + // вершина + char* end = nullptr; + + glm::vec3 tmp_point(0, 0, 0); + tmp_point.x = std::strtof(tmp_buff + 2, &end); + tmp_point.y = std::strtof(end, &end); + tmp_point.z = std::strtof(end, &end); + points.push_back(tmp_point); + } else if (source.find("vn ") == 0) { + // нормаль + char* end = nullptr; + + glm::vec3 tmp_point(0, 0, 0); + tmp_point.x = std::strtof(tmp_buff + 3, &end); + tmp_point.y = std::strtof(end, &end); + tmp_point.z = std::strtof(end, &end); + normals.push_back(tmp_point); + } else if (source.find("f ") == 0) { + // фрагмент, он же треугольник + std::istringstream source_stream(tmp_buff + 2); + std::string point; + while (getline(source_stream, point, ' ')) { + std::istringstream point_stream(point); + std::string vertex, texture, normal; + getline(point_stream, vertex, '/'); + getline(point_stream, texture, '/'); + getline(point_stream, normal, '\0'); // до конца строки + + MeshPoint p{}; + // сначала точка + int tmp = std::atoi(vertex.c_str()); + if (tmp > 0) { + tmp -= 1; + p.point = points[tmp]; + } + + tmp = std::atoi(normal.c_str()); + if (tmp > 0) { + tmp -= 1; + p.normal = normals[tmp]; + } + + mesh_points.push_back(p); + } + } + } else { + tmp_buff[tmp_buff_index++] = in; + } + break; + } + } + + // тут имеем готовый массив вершин + // размер меша = кол-во вершин * (3 + 3) + const int vertices = (int)mesh_points.size(); + auto* out_mesh = new float[vertices * (3 + 3)]; + + int curr_index = 0; + for (const auto& p : mesh_points) { + // точка + out_mesh[curr_index++] = p.point.x; + out_mesh[curr_index++] = p.point.y; + out_mesh[curr_index++] = p.point.z; + + // нормаль + out_mesh[curr_index++] = p.normal.x; + out_mesh[curr_index++] = p.normal.y; + out_mesh[curr_index++] = p.normal.z; + } + + const int attrs[] = {3, 3, 0}; + Mesh* m = new Mesh(out_mesh, vertices, attrs); + + delete[] out_mesh; + return m; +} diff --git a/lab2/src/graphics/MeshLoader.h b/lab2/src/graphics/MeshLoader.h new file mode 100644 index 0000000..700a359 --- /dev/null +++ b/lab2/src/graphics/MeshLoader.h @@ -0,0 +1,18 @@ +// +// Created by vlad on 23.03.23. +// + +#ifndef GRAPHICS_LABS_MESHLOADER_H +#define GRAPHICS_LABS_MESHLOADER_H + + +#include +#include "Mesh.h" + +class MeshLoader { +public: + static Mesh *loadMesh(const std::string &filename); +}; + + +#endif //GRAPHICS_LABS_MESHLOADER_H diff --git a/lab2/src/main.cpp b/lab2/src/main.cpp index ee1acdb..793c5cc 100644 --- a/lab2/src/main.cpp +++ b/lab2/src/main.cpp @@ -18,6 +18,7 @@ #include "window/Events.h" #include "graphics/Mesh.h" #include "graphics/Shader.h" +#include "graphics/MeshLoader.h" #define SPEED_FACTOR 2.5f @@ -78,6 +79,7 @@ static void updateCameraPosition(Camera& cam, float delta) { static Mesh* world; +static Mesh* model_mesh; static Shader* shader; static void drawWorld(Camera& cam) { auto projview = cam.getProjection() * cam.getView(); @@ -96,7 +98,8 @@ static void drawWorld(Camera& cam) { angle += 0.001f; shader->uniformMatrix("projview", projview * model_scale * model_translate * model_rotate); - world->draw(); +// world->draw(); + model_mesh->draw(); } @@ -141,20 +144,22 @@ void mainloop(Camera& camera) { void loadResources() { const float buffer[] = { // треугольник - // X Y Z Light - -1, -1, 0.5, 0.5, - 1, -1, 0.5, 0.1, - 0, 1, 0.5, 0.9, + // X Y Z nX nY nZ + -1, -1, 0.5, 0, 0, 1, + 1, -1, 0.5, 0, 0, 1, + 0, 1, 0.5, 0, 0, 1, - -1, -1, -0.5, 0.5, - 1, -1, -0.5, 0.1, - 0, 1, -0.5, 0.9, + -1, -1, -0.5, 0, 0, -1, + 1, -1, -0.5, 0, 0, -1, + 0, 1, -0.5, 0, 0, -1, }; const int mesh_attrs[] { - 3, 1, 0 + 3, 3, 0 }; world = new Mesh(buffer, 6, mesh_attrs); + model_mesh = MeshLoader::loadMesh("res/cube"); + shader = Shader::loadShader("res/main.vsh", "res/main.fsh"); }