From ef1ff8dea1ed37abb3685322aa932dde06793d36 Mon Sep 17 00:00:00 2001 From: VladimirEliTokarev Date: Sun, 2 Oct 2016 21:35:59 +0300 Subject: [PATCH] Creating configuration file --- .../meerkat/BallotQuestionUIElement.proto | 2 +- .../main/java/meerkat/voting/gui/Main.java | 36 +++++++++++++++++- .../voting/gui/VotingBoothConfiguration.java | 4 +- .../resources/images/AntonioBanderass.jpg | Bin 0 -> 2978 bytes .../src/main/resources/images/GeorgeBush.png | Bin 0 -> 7146 bytes .../main/resources/images/MichaelJackson.png | Bin 0 -> 3323 bytes 6 files changed, 38 insertions(+), 4 deletions(-) create mode 100644 voting-booth-gui/src/main/resources/images/AntonioBanderass.jpg create mode 100644 voting-booth-gui/src/main/resources/images/GeorgeBush.png create mode 100644 voting-booth-gui/src/main/resources/images/MichaelJackson.png diff --git a/meerkat-common/src/main/proto/meerkat/BallotQuestionUIElement.proto b/meerkat-common/src/main/proto/meerkat/BallotQuestionUIElement.proto index 9c8c704..a8ec3ae 100644 --- a/meerkat-common/src/main/proto/meerkat/BallotQuestionUIElement.proto +++ b/meerkat-common/src/main/proto/meerkat/BallotQuestionUIElement.proto @@ -23,7 +23,7 @@ message Question { // Message object which contains the question and its type message UIQuestion{ - int32 type = 1; + int32 Type = 1; Question question = 2; } diff --git a/voting-booth-gui/src/main/java/meerkat/voting/gui/Main.java b/voting-booth-gui/src/main/java/meerkat/voting/gui/Main.java index 2c874e0..50be19d 100644 --- a/voting-booth-gui/src/main/java/meerkat/voting/gui/Main.java +++ b/voting-booth-gui/src/main/java/meerkat/voting/gui/Main.java @@ -10,11 +10,45 @@ import javafx.stage.Stage; * Main calls to ChainBuilder which initilizes all the TwoWayNode's */ public class Main extends Application { + public VotingBoothConfiguration GetConfig(){ + /** VotingBoothConfiguration config = new VotingBoothConfiguration(); + + config.NameSelectionQuestion = BallotQuestionUIElementOuterClass.BallotQuestionUIElement.newBuilder() + .setQuestion(BallotQuestionUIElementOuterClass.UIQuestion.newBuilder() + .setType(0) + .setQuestion(BallotQuestionUIElementOuterClass.Question.newBuilder() + .setQuestion(ByteString.copyFromUtf8("Who you vote for?")) + .setType(0)) + .setAnswers(BallotQuestionUIElementOuterClass.UIAnswers.newBuilder() + .setAnswersType(0) + .setAnswers(BallotQuestionUIElementOuterClass.ListOfAnswers.newBuilder() + .setAnswers(0, ByteString.copyFromUtf8("George Boosh")) + .setAnswers(1, ByteString.copyFromUtf8("Antonio Banderas")) + .setAnswers(2, ByteString.copyFromUtf8("Michal Jakson")))) + .setRandomizeListOrder(true).build(); + + config.NameSelectionByPictureQuestion = BallotQuestionUIElementOuterClass.BallotQuestionUIElement.newBuilder() + .setQuestion(BallotQuestionUIElementOuterClass.UIQuestion.newBuilder() + .setType(2) + .setQuestion(BallotQuestionUIElementOuterClass.Question.newBuilder() + .mergeFrom() + .setAnswers(BallotQuestionUIElementOuterClass.UIAnswers.newBuilder() + .setAnswersType(0) + .setAnswers(BallotQuestionUIElementOuterClass.ListOfAnswers.newBuilder() + .setAnswers(0, ByteString.copyFromUtf8("George Boosh")) + .setAnswers(1, ByteString.copyFromUtf8("Antonio Banderas")) + .setAnswers(2, ByteString.copyFromUtf8("Michal Jakson")))) + .setRandomizeListOrder(true).build(); + . + +**/ + return null; + } @Override public void start(Stage primaryStage) throws Exception { - VotingBoothConfiguration config = new VotingBoothConfiguration(); + VotingBoothConfiguration config = GetConfig(); ChainBuilder.Build(primaryStage, config); primaryStage.setTitle("Meerkat Polling Station"); primaryStage.show(); diff --git a/voting-booth-gui/src/main/java/meerkat/voting/gui/VotingBoothConfiguration.java b/voting-booth-gui/src/main/java/meerkat/voting/gui/VotingBoothConfiguration.java index fa755b4..f87507e 100644 --- a/voting-booth-gui/src/main/java/meerkat/voting/gui/VotingBoothConfiguration.java +++ b/voting-booth-gui/src/main/java/meerkat/voting/gui/VotingBoothConfiguration.java @@ -6,7 +6,7 @@ import meerkat.protobuf.BallotQuestionUIElementOuterClass; * This object contains all the questions and configurations needed for the voting-booth-gui work */ public class VotingBoothConfiguration { - private BallotQuestionUIElementOuterClass.BallotQuestionUIElement NameSelectionQuestion; - private BallotQuestionUIElementOuterClass.BallotQuestionUIElement NameSelectionByPictureQuestion; + public BallotQuestionUIElementOuterClass.BallotQuestionUIElement NameSelectionQuestion; + public BallotQuestionUIElementOuterClass.BallotQuestionUIElement NameSelectionByPictureQuestion; } diff --git a/voting-booth-gui/src/main/resources/images/AntonioBanderass.jpg b/voting-booth-gui/src/main/resources/images/AntonioBanderass.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2a240ee23536b191a99c251b4cc3e3db323f13d2 GIT binary patch literal 2978 zcmbW2do+~Y9>q zB4&y*O*8Jwi`?IsOS%X>gLp8^8Rxv~J!_r6&N<&_@3o$__HRGW_p^V$y|-vc!~r%Q zb#!qAU@#cqCw>6YC}0mrz+mg`FTthY>ynm~gi9f$5s39JBP%Z}BO@n+K*%Y`$;l(d zLdb4VR6uT6e_#K|`tad32Ub~);K@|4%te(Bq1s~Au%bLl#-g3edlgYF6CZceo1Lr`J;-;$5pk@>*{Ir7cU#$ zve?Znt!?ccy?r102L^|RN4Pxxr-{#BzJ8k&%+AgKTv&vbme;vp0Q_HAf0O+Omy(!E zLYxCh#5xyDB2wJpN|I9BOr@0%c_1#}H|d()l2JLFRb0cA)!TalRQ12sBd4Zs&NUFM zqy3ZYzXOZ^zsUXu`#0AJfP}-u$%88acED=-YKahsd0V{^atonHlUbMYvxm=no0HAD zRelpL87kdtL)b`|9WeDC=XsI9anEGzMnb_MP&kr%e(ZpgXWE$St+ls}@#D#%?IIxf zW295xkNT$`b^Bv>th}}KCS?$vzNnqDqzRnAM&gRh9FALQu<)~k@o`LZyTGDEMjc{` z8@h6s==D-(zu@*U)w~-|o0ssGWT7AK(+5#xZ$zr0U@nbp0V_>#z<+1jKWM z8^P0Wu?VQuv){%A#~n|3G;v*?_D8tpbm$e{zQsgx#^s9V9N33ytM~1V9p1NQTc?V| zRD^8yxJ!46SIYu+r`_HXd)8dBBPcXC(?lKojo=Iq`a zf|aLQgj_FJx#^QM*85V75A?U9>lzvDi|tDQ{3%=mefFh@Gji=pfy<@p1%WLA*A+GeCS~H!*2akguuhA~` z!CX2mpHtGpOzsP^MQEFTb5L2%j`fEko9*b^ACwcm^FA{o_=+k*O>jK@^3U7aXIE?c zsZc6gopFy^QDhoP%wv1){L z?l?)f7heKlJwE6u6UcK0uUjfgv7IaFj6J2B;N6iS_^p!3!6Swf+AhoTY%F-(SJ4Za zD~B*=Kw45Mr02?bU6;^ISu^VMu^+rbJN&lgokwbDb|9*uEy(CiynUijQ(StnP-`n{ z)2m3qe%^zp0}t>|ecMA7W^Utf;T5gab8XMvMz&gvRCek9YQuJz}aL?7r66*PnG+ zaYbTG?7VC)T;Q4t1|9pHGKjjfp(o^THiowIDJOFscvht&Z?5`_2ner+jCUsrLqPf&GEuX*JA&ub)W=f@j3)|2gbx@no*NGB~f-$Nhc%g`Gu*ZTS5Vy$5RfDt2l#MPIoV+Y-Q z2;KC~4q^zrib{RrF8j1R>%ev;Mui)E>bcri93`3Il5H`SccdWuhx&FIetA^@?)5z+P~& z!I9#Z;&YvjSxSdj0?%X^&5Yg`p~oIKDqj%+%!>>^UqvoPsDyB6=-ut`vy~KH*RAeK z0883UPTyW2>|DIs)j`R2)ys}NI-Te&yvGsZRw*JNv^o`4Q_Xg^IR*B$crPZ@-;3^k z^wIoq5a(`|?WfACX1_nFfNvd~9~PgWu8>pZZlUsNo?Vg!+Gv-BodVIop4gb`Of?D9 z!v(%sO4Gz=gsJ=g;;145j1BOEOEq?XMh9#co48u#g|Lfzu+oqN$8GD7_(w>)XL9M)J;SC`wR zh!BVX+x-J=ZQ=wZ3gbo{pCq9yVs7#o(Domr#0ypLM1X8|ML{H*6TE8nNd$DqMYp2B zVMB&ngDM z|Ev|iCpvtHv2dZFH4Z#kly+WrU|Ro};Tv0vIzj*JJ5=Y@fi_-Sv}!J{J}){!1*iQk z5(|cXVZIarxF3+=>z{YGG)$V=^9ok7jGxb5qta4(_)%>(T6cy55cw-4W}Ko45ne?o zXi>xaRHxYBe+>_cy75dZYv;6WZ>CcbPsV%V1I;-!SF2>lhAmm2GxOYe?yLgTZ3b9K zu;mA}Ja`hk*;;jtvqdwH>R+g*G^y@Ll^6Ur;ppPzAv|?y%k^c)VtmN2$lOJ*T60ea z-Ra;5F37SQTjOP_XHd*04a?;T@hzz0vE-bp>^ORov(L~Z;sGaG_)`B)>nw8x7ss@i zcAriX1WehYEpOO?d6&ds^swDs!Fns#M~~CG<@k<+$K6SM z?O#eoz@yOy^j8r8ZO2WCFMAooX$HsFbxpaxVRj1?6*ugIxzb0aRNs$@F{Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D8-GbeK~!i%b(sfL zQ~B1#RjOda-n*lM3Wzl6z1IK%DM{!x1VSf3LLhVkgdU0{^bSFgjtGh(h=2n2F6t-_ zj%6H`?}V$2@6G$}iY#T}y1%>6KKq>iWf|)%yOdQ{URqIEUR76FTU%XMS5x0q+sLVJ zZf@kXG@mok)=`oYRhJeIBe*7$d>ssx@z(lb7~^Pn+XP>1sFPJ*bU;BODKW&GRh*rh z6yl9CB%CqwL964V<4gzp@u zwY}wh+qqVC@gsrWPM%n+Fi%^Yz8uX1&G5A>3wNrH!fm-loHhkgMrIPs$UYmND)W((V?gJgvxtzYL`YjUPn(G&>CvS`l?>FUC+;Tjr>Nl7!fuVbTprWj@ zj9m`6AZ<}W2_kKFW*)Gn(=&mU3kp99lz`aU(uN@RbaeK1^z?T33|{C*qfR^889S&- zn;qL;7wyL zFU9>rvNy}uq5zLhb2f;z*9{;O{#+&zzGaz(+~q0d)d84vZ9J&`xL|vXi5L3D|fVw)7Vs34~?-TEx7il4VZ{! zxuEAcZS8FxfY{gB3y1@K7Y6z-ULL$Oe0k{54iPg|nJ_PBL$R&xNuI+g0TbDj%kds} z@~F>Bvj0Bc{H6Q+`}Vre9d$3NGT%2bUsvVL)#tye$-h&OGMpTCJw2=|(yciRO}AIf z#_FbG_2A>9d)z>Bzq6HBe7zUy!z@itE}6R(Wahj}Ajvxu75< zQfNRNyf}a$j$FCAf7do8nS;MqM z=GTp^hpe30(!A#t*{^B}p4Q~fFlm#yq#-aX)u)Bz!tyoG^)N`XQBTC`5Dg@C4vMIr z*sFMg%PN0-pOok}sRJ9KH=wp$%l@Rz>zfKWCm$6J>XeI#+#;!zuFssb+)$TVOiF@ z=Ca>8tj863_gEP>^C&l&)S={n3km+U0rth-Cb_N#DOk1mGaBBSVzvsuk$hbh#da9U zpV+c`xzyophc@y`i0*EKuz_Z&Z3Nbua)g!JUckx)MTESvNO^tu+W6@8n>WU9-MFbL zB?@)VhzbdFvP^U}ZHaa3kN3ZlLc9(Z%%;AmVZW^{nr|+@Q<(OqscN>C^`bWaMNRbs zcHZ-v!iVK)!)avr`Tkf!ec&0kr&Wok6&BU$n6OB&=m?;qLP1VE?C?DHWmgM*l$x~sZ(FyoU3PNcmZN(%11q$0Z)X?eBLpR|LTCaj z^cLg*7jzUH`9sJ_pnP!W_T&5aG~^|;6i#~C7zDeZ=@EW8!PtScu$~z2o@m$M^ziAz zq`Bte_bp{_n~J}*HOx1bJ}k+2Qknn0x%ST4jEALpFROE()nrX%kcJtgMv6-j!3rp; zmP)a<8c~*t5tfP=162e0<8r@kg|1f=-MvY0nb^*im-{b4PcO1|Ags_^kOPoeT+qp} z8&eaLw{P79As^no^W?$(=Z_yKOCGT@QVjJl#oHT2xLRe0IW|SRw#B%OGANS;)G2oA zi#pcZ=IXiH(kW*8o0gKhg~@mGli#)0+-GOKY%IIO%9&&)_9q2H*H?x(GQBJqt|m}= zvb74$PCLk0+Dc7AU-qc$}*R1^Qq^9893}9I{hKV!-t*N;}nU zq#)^fF=LpK(M$?EA4|AVka|6n1_N^LKO|UfRcuPVF|96IBr1esb@6ZAA&00~=K&c3rzPbZKDl2kZGR7?aRguzP?3 zxS+RhP2HQhwM6;*?2EUrURoF^nrO+}m?=i!-S8;YvQX@~SbSZK>)8OCrud-o%8Vki zbHo|#qA<@KcdOb&x6)u|4$bXCd;k=>ogSLxW)x+s7GbOEr6ca8CxJIP>82(cf>NW} zXb_ELJT#8k$m~}=zFS-7u;^DduY;M=+9fmfi1b zAmy!l!b4NkR(iM6{d{NY{uw+S8JvwmWH3K|*)&CsPE27qDN+1k<4%z=fI3%aD` z>le@GUcZ`u`{v{PAAf)Ps4suiKutQ*$HmP^rj_ho5sEt-j?MA4Vn?}T`CH@%VB#@) zUJ8e!EtKd^`Z4I!EeSynn~EEvoubSY{EbfH^(6vK6m3B)(S8{^Q~kV0SpNcX<3?#}j(4p>8)TDYLl zJujX-{+05t5AzkF-u5zw!0BjBX-5^Y+AycC#E`w_R`NW;=;352kKTO^ieSKvw=^fX*&308Cdd=<~;qpnJfVK>6X1 zcR=~=ug}3s;;kV#7d<7gc_hy4e5Ctu4rRP7jYDxLCR+EV(OS|YN@4=ytyIdxZ8)*G zZhGLe!qj{8q-Fw^j8bHH8t39IOG16hNbbc!*lZ#yz)YH;bu!=AA;m+_Ut7#e?TG5( z4ck`n%4}PSm)-9wcXae(FLVot3UdbxfQZ`D)eEZ#tW8`{q=Ei;^ZSQC-hTe`kFTFU zeEa%^9p;{lGj=jm2D9hltp$PzbHbC}Zvn|>`O za5^>ic>%M|-G*u+&vZxScsZ01ohn0c^)X&>1PIkTnd@QHKyk}-HKt+I@tR`l`_>&2 z5mMT<#!dEshrIaxyZ3I-OhHhBs4yl$R2b|q0>G(IeJ<$FqQCz1e*VkH_us#KTKN8T zATz$w8%MR)NeXl;A=>uD;IA=4ZZk=J(O%OfMcuJM{TY#$b5n;i$uQO*<|dEElb#e8 zO{Au?oNW>;Rq0j==P2IoafH6~;3g`u(A|pVW6vhqcP09r^*iPLG6vGk~CMXbA7>17@cG&7Y% z6D76>Y9KCfFphLNHT+s)oR01wYbgcm$Uk~` zABG|%I?PA_h4pBu{h_6}pl@Hj0C$3%e}DRuE9b&D`0m2D?^hBcGE9^yD8=$%r{++* zvE<;HG|I~o#%y8k+tRW(bv1L9tXHhehq(!GW*ViFpH)=PvdilUE`^TfOlK3eE2=lb zWh{j>ksdphOuIpiY72C!!P{kH^r>iNN4fnznkO9O_c))}Pt{Q&>7IV}=pp3K?dch4 zDHxW}QdciszWlTLTu`X{pYPrv?p*lFl@qzHrBYM%rPzTMc|PWCQO+>6r!t}+6{LKq zEuSkbp0BNcUXtHKavsl49?gimk{JH9tnNlCtq5b9WU88NZ=P^QyVegkL<^b9jG0Id z8&8hm_~4ihh7e~Iv>JVRgEeK^jYpe9q2)QjqG?GBNmJl>RA(XgVB-m<%o5^7n z_L`m8ZYs6U<@nw>6Lshlh)A&M{o6B$O~~mEtXwv*e4ynOir z<{|t5N{Fr`(O3$ruXYwrhGuOLX`({4(Bu-ED8yN7(y@jq7@b^q^Xed6k(+t^8Fix8aUcB? z&Z@tmCAWKOiILA}&AojE$@44dt#JUoHhkqOl2C9w1{kiQ{~u^wYEm`9rH2-p<6}`B zVaN10Z%^?o!`r0UX*bb`%~WDLDRek1Yd9;ZKRu;0Il9CLlk1IPdf9_JlkJS7Q5tk7 z>nvBRRA*zh@0omW%OrcP5K~!yBPm;%ozU_TW^!T1YT&*93A&^x%qM{P$D>gC@BcK@ zk1GXjRA6raBe62lr83;EF$U8Z?3$0aEF*a`JZw3XAWn2ZYhuJOGv{JlL>bYO9q4e@ z!;$6hob6!+J94nTG|fRX4yRugX;&6>CdEM&_L3muQy7JP*5cbpCW`Op-yxvCc=Xof z_{6UsT~hR)v|srC1>yVk`ug>2x`%0Fw0jj9TM-1~)VU(k5q78yA5@knx`b$V*2lWS z)4JW?yE7`d-p@PJ+9(@`ib1JUEwxA%3SkyXsV*iQifbzcm+4{4;P++vQt|N8k8GM4^*CE#=_BC%OMC{_S!C^f8^ zf@Atw=i3^RwPf846)0}jxiR7K;enpI`;(%4v*O7_Cqt}}qU5gim;>A5jFr+oOnQ?7 z8^auFcA9WpjQyFNT zbVp;lomxj$cyBs|6<{B1b~@NxF3?m4CBGlc29|>z14bj%{g=ta-Ajq}qj(~ePE*vKNXj*K05Wd>e zfu<`SZLXN@WSsA2-kufS66=@lW(M;;++5L3 zK5V>0RftCk-aZMf4?9$fjYhezZFPhz9H-zRsa9&f`r>dtv6VXnqAbe!2KHd6JIqgz z6WN|_F0Q1=SVFQ1PR{`FV;_YlLt1KaAN}u~TD-nR*{G+u7?Q1(&k}5!BAtfPs6z?C z=fXUPlOuXagoZ#2%g2`O3196~P&$!%vbi{;A~zJY8iX;`QrXW)D%MUHtN5F%`mqo1 z|3u_Oh9?qCcc-Tyn2@>yD6)^jk`G5`xcz@@`0$ia5pMf`{bfomUfWNeIm5w_>15xhUtKvXRSFGPi26?J5VKP4kX8na|zl-r9=fix{hvZgFuu66|2s4!< z7|M{WRo&FZos|#6N-rqDCm_Iw6#YjkO-&BlJ) zo@R*^G3)!ew~Obe_df!Qn*&SIev2}cC1VUT2o}Y`4jih_7=tpAMZ1}n)E`Nlq?3nf zL04iTdc*PEWPFhaIvJx6=X#jw;b;{{!%oN6*>lNciLG`hJrO>1-mvx`IX~wjRBrjpNUX?y>@Xc6T17AaVA5&#_ zLm6k?ldg&<{FRP}s!1^O&*l_0Wisn{R;)un;lszr1HlQDKTpZsOGR(4YpScM=Yqnc zATMu$_2=8XM~Gz+X%Q!Yx)2Cp22V>1$QlYtA;3(*%T&w9OxxE)HO|pI9Bq)~Zb`$L z_!}#e&{}@xM!qOr7hM@2U1>iJDWaMvK}nREmsr5+fKPsT&x#eR0CB~NWjx$#IS=nL z2YXv6I#71EcR;5@(K+?pw|TV{i*NIOeLo7O25Td)q96)DT5v7kg1XRTV1_^5{XYBh z8x5_KC2U%m_mCUp8a4)?t?@_w|k zyow77U531Ih75xfAo2mji=t$w!j(I7H2I@+A%8TM<_v@|~3{^Smrzy!fSIOzP#c998uD@DUH=a{Ez{j&j zfN%ZsWr8b~uLN8{evu{Uo!j?tIGl#M=GyAI>aw42oWT|_{$ZU4FGK6Ws9k(P&h0P+ z7t{qa$eldNw~SwS<*Lg1(JSYA673A*ZB(Mol_Sk{=r}XFogPf~7?dW(OesoV&P8%( zgr=mH2yd*;X@6bCp04rM?%N$bkD9w4*0tTKIX5lBx00VvNJwx4h|05k)k;C|>uO-- z6BOZHv6h!dn4fp80FOvoDx-qM{rwmh6wC{a21bT?u=rb%kws~_9R?u`>gF&q`FQxD zE^CF>@$#%}?YslspM*0=!|Es6X(ia{L>jB6I+#aVs*%mr;haR)ITfxd;VQl(MoR`I zwr}9_tAWw^uD&ICmn|(n<~awYA|fHVhrTmPV7oYt5v4>k6i!IH~6Oi^4#F) zU!9ldnmV3UcRdav#cveZ$-82;kl-f31@Yh`$hU5_@MeGmnOCpcxMAH6ex5a}_%{mi zt`iYj&jp1b09FWCkQN3P;9eQLB*@48|AGQ*`FMrkxp`IytrK3)vy68YzhF!E^P!RV zpTB%6B-rP;qRA-bWIOFxYc;xsIvr=8XQ!8dR!y_fnt@{6`*Q2<*YW8ugCl?TkA55& z`*QB$Y)Q-g?VEP4U%ioU1yo-cgakzRx^~r;Rs8FP`9!v?-6_DkddH@Hn?&}k7T6#n zyhVt24Hp#R>U?V(BtrLj2!?KW4tUm;0_)+)xCURbc9qa3p_L*~f^8eOitgRh-ZMKq z@%i=Kmp8x9w~%}@-ONJ_~&+&D&YpQcc1?C_{EnevwzP#_%!|C@5^I< z4^Mu(KCy7_(mbo}_bnp3)(LF}si2?M2yTSW)=hi4WNUYTU3yg@uLx1Jnx$8e}P1#sB~S07*qoM6N<$f(JYJ&Hw-a literal 0 HcmV?d00001 diff --git a/voting-booth-gui/src/main/resources/images/MichaelJackson.png b/voting-booth-gui/src/main/resources/images/MichaelJackson.png new file mode 100644 index 0000000000000000000000000000000000000000..b652075a762dc28e39be3ef4bc34ee82ff550e66 GIT binary patch literal 3323 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D43J4gK~z{r)!2Km z&(#{oaZYj>chO9ksZst&l+uib$#t4AiF9GmBtp4VQYaB6*U0VE=pxFcs5o8SDv^+D z$gLZt=-750*U*gf`u?7;-|Tif$29$Oo|(O7eb;w=*Lttd^Q>pB-!Am&r=M=xv}xzg zojZ2y*tTuk_U+r%ckSBs?YG}<+_-Vwx^>=aXIr*x`TX?3jI|(b?Q_h9GJrP z?Ai0(ci$=Z?%n(S_uqf<#TT%&YyA4_uL14ez1!P;`}XOeWXF#m|K^)-mMmE^c<|sK ze)z#x8ZDqfg9h)s^UjAKez;)4g5kr5-*($=#fukDr~QMSbIv(w?N2NL-MV!v{Y-!$ z5P$mVrvnELU3=mK%!isj%YTv(qzY=9Ispvms$dIN@ zoBs04FB*UT`R5}?j{N%TuP08NIDGi9J`X(bfUk^Gwrtt+&N~lfg$fl?gtM~*l$=}) zg>t53F}D`M%HxELR~$-d69ZCWf}-7{>5b)Wywc7@#eXseyMDBbkT^Rx*W6LjXdH-)uDA~#Jm?dR-r7|{ z_O;huD^jFLijcAY83_sK%9Sf|go=h!L22osG(|;4yov>cnbq{679fwUTensZvXduI zYUFnvw8Y>x)BO4K7cE-!>Z`9dZ{ECGwQAF+PrvidI|C&vaDkS9LV;!Okkg1B)zOEd zT<@(%?V)H?5&?5_g?MO&$&$3t^61f{8e;+Ib)GR}#Ut;yGaNobVpWe_AIs2!)iRh@(E)*FK%p5>D*D9Z zp+kq%l{zpBm^5jUJaErF_sH4eCs^g$N|h?T^wLY9FTC)=E3UXAg(}DrP^0@eK*^>= z15TYefcl-+ueeX0ia3qehK-@WBUtE`iAZYuB!Q z@4fe?Oqo)5ci$bNrf9#nR8gSeS-47Aq$M*@ih9MTvGG}=YDQNd z2l3dkV+|tvJoVI5H{5W;=FOY6A3JtT00>jKFTC(Vr%s)Q4joEJ&h6H%+xzdoZ%IKZ zdG+em%ehs*e*H7K9*{ZAl!XYOaJ}}}OxZ03LLcS*_usEE`-%E9&pczk3of{Tqa&39 zwL(g7*s$T#es2Q-PL%I?aVz_}BE|T#C|?qSm0E z^*9UGBnWbHY+-&6r(>NvckYN0BW(YgHEa4Dt3LRyzWQp)+1FXmsx)fU=-hM9wZrDj znd79@A)lOiA5&03bmeqrJ_Z^+Ma8H_tV{(Zg@PDg5c9QCU3R?m(o1=tqYZ20yVkt? z^2_bpw{P3FZP%_{-3RpP(4oV<_ui`~0=lkQv*wLA-q6z`^TOo^72T09vEl=S1}j9@ z0Ed%yZ%ONI78;g5iK;m{ojZ5-%2%!?

?md-papv3Xo#8a8ZL&z?PN)TnXMMHji9 z$V#?OyLRnlC=eAZR#d+J`s)HWLsft!psQD}{`ljMVUZAxPz&X3QujJ79G%J$&)7w@dVVGg2o3BLsUa>Jw-JJ zlMy2%)GZ_1h!VF_-Dwnx8jV5_4PxaMV-1dgFsG|eWHhCvno-&jrZRurs@zoi_U)^D z^wCE-_2kKV*Kt^x|z(!e1jk!V?I6t8i!LhBw$6UQGb&K zv=V{H^Fz-r@yiaYOs*uJS8<#&>j@{2+%iO}-6ooaFGX*<=_WB?oPPcKNps`Ijhi)V zRstFUYMKQ0^bZnPD9O%uI(YO7O#tDGmgvkfpYGvz21pt=lXJ`dkT-l4(JXkxlAgx2 z046!cHN__nKm4%hbj%`iOh~=z4(dDZxFZ3L(2R+dfhD>HzU7J@qH5765VL0bXpGN& z2r+_>-W~~N1Ax<03Dj3c=4*o!Qo^yf#L2%hW`jFar%s(ZbLLE^mlP|zsmRT#>mx41 z)Dfdc8KCOgL$;`xPd!7MxL%7vV!=RFG=kIFBC&cKkNBia@gS`_IeFYoz=!xdD79qt#Fs55rJfehXGWwB0H;J;D&$WjW@am;1iJyB2Y`x zQ^nEXIzmDocfGp)`s**brMUZqNv;LBP98Yqb)Gv4x@-9XNh{wm5JOQ_;=d0Y0?cKGNa)Zg9M)(q(WU`Dg?R0PIALS z`SjCIckkZ4UcGwmSzMn2p0)%OlPMD=GX@I;T*5GZ*8yCJ>J?(R%IK#3_Spf zaI&c#8Bl-{n187&LBg^yxb9Xic=DxfZUga*D~R8sqBDDS%31VnEO2v6$17CG-Bc!W_QZ+hLvDdC7RmhFbI%c;uA*Yzym?9y+@(tw zKbQzf&Q`5jMHJ<;G)6;3a4bZ!pF~?6p*m;}T+_pq3he9i&p$sMCXYe)x%4jQD=o(0 z1`&&X!qZP+NbC;AC!To1k56&guwg@R_K-WjHP@~Dd*mVk;UtoSf7`e{KHsZQOQ;dYpQadu`gO`0^3O8u;Jg1cD?K0l{; zwrSI*E+2%v>#n<$eg@jiXEH5E*V8vr(f)X_wzyUca9?2EuF? z`&}}!uLlks=(_IC0n|zBk%~(6a-3yUs#Hn#C@}O>MS(^dvN6*)f0Ie(@+Fh@U4>jS z*qAY696}`Q)29zm;p+G$<)zZ`EzsW>4P{)#Elc@3~<%p`J zC`!LKWDlU^957&jfR+LLVwSn=t#p)(C7{XGW8+3!=WJYg_Ex-jai>2B89;7#8i~}g zW5@cXMnzZ@wa@(0!0m|d+O;bcr2@N9Uh`o(P{tBa*@wBYrfq+dS+-b`ApOPwYD>|{ z&otW$89s0kpn*<8X-iJ