From 4d9685841b79025d4eabd02359a4e597a96c8ecd Mon Sep 17 00:00:00 2001 From: Xyphuz Date: Wed, 25 May 2022 21:51:56 +0800 Subject: [PATCH] chore: add new example --- examples/voting-app/compose-viz.png | Bin 0 -> 70144 bytes examples/voting-app/docker-compose.yml | 89 +++++++++++++++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 examples/voting-app/compose-viz.png create mode 100644 examples/voting-app/docker-compose.yml diff --git a/examples/voting-app/compose-viz.png b/examples/voting-app/compose-viz.png new file mode 100644 index 0000000000000000000000000000000000000000..64486c2db5c8f0760f67db2c39ed77ad117accab GIT binary patch literal 70144 zcmeFZbySyY*EM>BVxnvVF(@~vh>D345+>5&7NUclV(iA-&`oD(!u{sJHB6TH#0&17nmM)n_>7Fh21+;&pzy^a&p8s;%pI`NM zu-pH+T-N!;U97+V+MVtHzwrNihk~OBGgf-*-o1!mIj^?CpY{9p?K^zvL5LMp4O8tdvTE0(r4Ha=-9iTaeCEmvJ#9eFe%G*UI<_@Ma=MtqkHt3!6K zVM6(VD-0tR(AQ_vS&^(%P*5OYQS1Kw`}aFHZw7w;d_ck5&(F`<+1X}dY~a(UPx~7` z`lt-`G@8$`n$0B={r4UZy19C+)~&vZtbwLwDc8Byw|&018LwU#p%QlI(W7+=J->db zU6?kfIB>@lQPa``z;jioJie+V+RVi`rp11eoj*in+DVFumZ$IG@(aKkn84C#s5!B9f z)%I2mJ+MU7C|@=sBg1j9?n+~KcbsOD$&!(6jJwQE8P>Tzx!8jI3aOU$m+iW%V{F?? zSO5L@PN#vclK%FxBTtX-5jCqEEX_)C9UG2R4!*qaj*xz`!Ko7`THan;uuoq8khAkk z49&u2%c9;~;n?rpRvHsk8gnda*Oj>@70+X|z2-1kRbsBADW!3`aW|H26BZWUheteg z>+e0q;mQI-!^4sKZ!SCjcs2b5lz{E(2Ak*77k~ zNuAZ{$Mp5}XK`?p-4c*feY|_7)No6%Nm1wx%|xT+GBPp_j*d$|_};n|L^Fl!RV162 z;njWa-;YeSZI9gVCo*g9T;G6zfLo^-ExxfCVsjA7Zq}SQb;`8<{SD0&i=fizqrrIW zB(o|_?Nl4(u!E0O!w&Kk&6_B`G@C2YvVO12NN4hJ(*yH6xF(INZl-HnSsb5wA1hJP-*v~9E>jzQL@T)Rg-Ux_T$!J)Yeapv zSCnDy{kDqaxM_2ip6ENVjwzFsVLf;ak+*>>OevtW@`bgieV5iFG0UASEG+av$6p=B z1733Cudy2NoD!EVU21KQ%k)i4OB?QM4aVF>7#D?x*0V5c1*N34Y4khF6Ovp;>@c5- zE+fB=SXjg_-DY-LLdO&TAcqmve17`g!ABBLva)37@JOgiIrbfTb)HQzdy3w?K7rak zgm(9+>o;zcV9#(aT^jlN((E;2Vj2Q+o_FHn;#!UDZezV;5487wktrJ=8)939Y@)wO*8o#uisXkp7tr4ue`kcTdHl; z&Ye3G9s5mu)*VyB(k%;D4sK{{JSoA;tlA?}=oQb7*{Y4S>-ZX!T;qBSi{%z>ujA0j ziIGscG>dZ+&pIU<-J(#%qWhwz4fXZGWjaoZ*w$9xysoh@+}*gjBVt7VJ1*UDi@Mj2 zT`!uqST)EWiPb8%N!)JRR=hg*?#5jShPj6g4MQ)_<%z`ibG-vqgHv zj-Vi;bGD8xeYh=3SUvV(s}aK<#OJn4<~1c-_b4%ko)8_kG23;TiSoJkMT@WqVnwu5 z?|PoBMEu?2&~w7&=Q}Qnr=dy#vDv&%pKaDM?o&=8QY3tlE<&_85`Jj;4PGhD^%;YY zXK{&~mbkCHWXY2IGHw~wj_vElhTG$oZZ`Y}d)KdfLfd`xqU)$ZpTOFSSezQ#CMJ>9 zPTf+954I|nL>?(hG%hNBVSTFT>BBti%`JwX7hk$^rTy9}|9t$5YJ#C+(Nl(TIE{}k zm9&e_3y_JktbgC?qpqV|@OY16wv}*1M8t6I1&%GYZK_8i4)4Jn)=%AdlOx~D&CB&7 z+X=1>j~M2r^@FWvyfNw0V|^-${@agE=iogNKeEcCEH(yF+X$O@_-8g>V|#lPhxDNA z(W6I0gISoKtPi(Wl|0$c)!$Wh44X*8c`*LH7vGoK?;H!)s2woR9DD9MST}uWXs8v> zd+3Y5lx@@JB}D~H1IzHwt^%)kR;)X{9eyI(g@HRR6lb_N;iIdUFW(XOvS${@oV3}9 zXx}p3GFKkB8@R2;Sp`Eylfe6~a+*zC{a+2dS|`T4Cuots zd;dNXj}~fh^kAA@=R$ldXx9~!!5?*w->j#gFo+!Sw5b%uy(r;BNm11MB#-}$*KV7$IEwJzU$dgxO3MoQRhL6 zB;%sJ0258SH`l&xk;{I}r+;WGkg~<`-lp6l>n~Da*mVbjf`SO|w91QoF-$N*x(0Ni|)Ue$ETp(=Dy7i&_eTlk7S*u@5Qtr`oi7 zw`wr%HRaFGJYZ#I1z20rS)Op^)ultCr-}p$k>93CR``aC!RaRCW$o^=5{`~nw>*j+zGOk+KTEj!l0g7_0jQp(GvsJFl z1Jr{@mRPKcM;Z13|EWMeDdnTbV^g#7p>dGGc%{GMXq^=%f2c|R3=*o5L6bV~k zIZzHwGAa3JBPbuK_2L;lpKZriWx7$Q;sez<9Vu)K{+fH@)}ebnxg)k!pWStPrQ#-@ z>E1xF{jFgEk!OE?Un*u1cvwZHztZ~4Jx{g<$-dy;Aig?z)JIt}Pn5#zdHfou4ra}$ttC?jcQ!9()Q;0~>ALllW6}w=~k;pq+Pk#-Z z%OlZJAjenY$s^g&*?C4{5tH%~Af^pdR2HIed$E?-Q=|!DAmcZe=cphGm&EDHVB-Dc zWHhIYU47XE*nK*57bEL>GNF8nQ9gf+){Dc-ww^wOU8pGcx@NG^Pq(in*h^Sc^vJDS zx3H4Wx5_iM&(z{{5TzWAJH9@3>`oszko`(~v6N$?;pe+SaT&w=yky2xTE*NyJ?4wK z;<}sngCR=KX^IcUl)E!0GG4!VQxddmdXc4tA5z46H#axz$b<9d&D$Q&ia3tMyKwR1 z@EsSX88>~t7g}E{Qhs{toF$uf1H*j7vYtdW^J}eI8~qOo&p96aBy_3JhkH9y?bqy zFA~1j*HZ<6GUb8i)D-sNf^RKy4J?!wUSoV|nbYRGy-H~-&vfxbgY3C%Y;3I5fUX=j3*Ztkp_6G-di+RSk{1j{R*XCFU|3_j3(Z0;F9M z&s1!s3JIuvBhSni7T@2_q+A7Xvfp>@MxN>MTZRjg^1b4NJ6J;(U}n8h2iDf=ajw_V zLX={+)6Q~dnX={d*9}s=pEpa`wA^eJWAu#qoPV6l7;amGJ@)X`rPb^4qV>r0YC=CQyKPD`MlX&Wd&bpKodQafq6V^ya-| z12s_!w^vfdMB%H*62b4(mr@iFaai5qC~xW2ueg5B#H%xtuWp3}T@rIly*pzhR>yVd zB)+33Gy3Dg(k(`TO438S5y`M*n1=^}6YpScBbD*azw-qJUKHSwu=3-J&rg>hmzY~? z(~>=U-F5fe4V7%}FAJm8*8?53VL=J2hGWfds6~NLT=-xd2>>AMcs%fBL}} zS|i9Yg#-xzMjv1`9bCS7vkEE>WrWitETbYzy+hc+gv(H6Tg?`b?GqT68J;)bK0T5} zR_88qJfPN+jwb7qAMX_0-DuDUjMF|k)QdrKSGkKpbR8c$l|Iz;AT&5D9^{O=%=loi z@7klsC1%ww#6#_t`L1KpD8hU#N74fhUvs7^^~kw%=dkPIi;GoDqK~RfnZ}+Eghta7 zylK;>zN{%6;VNMV?<4hL5?Q}&@BN3WuZtI_qSD3yEZ!ya{a~L!*L-zE+Vu4P(qoPd z2)i9Sy;Y+%Hm3jjW=dZb(Mr)nj9M&eUcLR1l#?15pww0&i}?#y9V|u$N|Bf|#5;CX zvcN0lnAVHgj2#WZ6<$Yq$~A`$VLB}4m&IzUAe4v##!4Gb=dS_iiBymC$4+^2^X6Yz z1-mB`U`?hjs0qYVECLI$;dySCUEgZge$-~-!@%>jy_(La3g~-4?%aaazzBQ)SsX;m z)Y#aV#&BL;T^*GMI*zR?ij-?ly!YgZB7FTVUjG7?I4a?B_OYvJudu}RR-rWa_44vU z!MeqwRu&I%0)x8B+}xZZ;!+8laN0B$7+qnt=(`z1P0Mh_iwLOv4{}4XukU-ZigAx! z&D<&T-F$LRK5^+f2OWO0FT%Vg1M@fYNVJCXt5>g3#bSHmO0>wIpQ#8{4&HmulXaCS zBGH-Zmq)?7Z02FJ5W=foaeZ5(k6dbZ^U#E(Aa-c=Y6YyvtvqZ8qro3w z)OpQ6GYxA{ClX&m0F6^9%ZqQ&psTBkP!J$a7$`Y};VXfBmMEJ?dA?0yI`ryZUn1HE zQOZ2nr!8NyLGEpXQBi`g9E0^_HSAF9J5;Z;F)N zx9`DT!bojKlIHg#tcm2-0_2FvSTqmi1(x`ICqots2M|5#nws|=`&#rRX03e;7zk>$ zZh?q}173-9?5Yeg3RZQDns|}^FVkxAjjgqolrcHlALSQw%`WJ zNhU|I0OawaxL=OSzptc^owD!XK{YH4MY(gA1_uWT3cuVqrM73QS!K@BYfeDVa$x03 zZP@vh3cPY=VnC>%Z+MMiB_dbCwhc3Ky|p;vHV8ssvlrd@uf*H!mnKkiTf7-VWjgwX`0J=)5$Nn8h@ph@C;i z4%QSF(;^gu);>bYJC7xsiT*Da5x)bp00s{wr5dK@Jc^Zurl$8U_ADvU2~V1L zQGr_qs8*tHSscZ~UvPc<2vAXW?jAY0sN?TEh%v#J!a+eIk=J@3d?*$KWVh+1tS9a* zgf~Bx_YiL$zh-#e3#^2LvaJN2sD?M!cXf3|Iq#Eei0NTE+D5uF{T@7cuvFCK z1SYqw$tfD?ZSg_YuUunSDFM6y^CqIT`!+LmmArb$do?$v-w$0!VeNeavFtdC6`+aaJXOdl zx2(*sj!g@tol_v+PbYfz>7Kk&ktn=S0Mytl)X@0({T;EnJQ6lJHVc_}sve*2{kx3U z`Nxj2W|@hNJX7elzhq^;4@{05fb%|Ylj3lFv6<0%+1bsd0}GfGRzx~5-lg&l_Yo*P z`DDx_rs-`1+`8oYwi~pDJGVTPhZk0jDe8-?as^+sXLZ2)Q&#ht2%sk3ZUNRyE4|T~J7i4R06ppSL4v z19MPg!=B=fHPr^TA=H3zuX-r$q6y9}`gTqd{(7G`mi0-onR?(q{`-t67Io)8`mHx_ z_=@b%_AMz2TQu^=4-3C+0Y&U~tn+HVSKaNwn`Q~G;l#FNwBr)4Ha6K>T{LB1ZSc6yEsBQcty zcC`JW%METB*OzBNero_)4E*P(Hfl{$m;W<|BS4fJTS?8wUPaH@~ z{=ZD)#>D22U7bkPcTJkc%!ZQk+y&~vT&X5x*Aur-T=(?M=udiJE@752^J$MAzU}6E zD7|d#Tf3;I4FJ{y!3q#KJg%pioY^SNl0=OQ-v(tTe$;I4Fm31-|74L2PWw6P?l(5< zSt2cRBjy8g+ABVkf;n^g7MK33ULFaneHsBoZh1vTC?xN=9Y2SM3n?6i5M=JsiNJhY z5aL0FRfXc+4LcUBJdn~q0`w7XS{8eMgZ_B{H5%ab_qWVk`7q+Sb=lM0U)}`651L4_ z?`~ddX`_v#ifPDZ%I3hzirGxZdDlcY8SsWzyltYEDLoWhu5f>gaiLUana+r%;PAX{ zzn8d@lKo)%Gi2_S3dk_uV&Xu#?(iP(aaB?)rxoPg*Ok^yRVS@2l)P?AlPf6#w2-&! zh(9Z%p0(7tO0;kZr?Bc((fJ}5ToWhkpxl*$mn#9d#6l8+(1FT91=zRSIP=#xF99H_ z5C0L(qE;UcxeAHlNmzjEH~nlIYwO#BRYxn_e%VHySvB_SFF)*2D(neS6PmGU$xo|} zOV_EFrxF6XAJHS=LkfauOn&qgDYf@Be$q@Zyz$1<*e5Bkye!8lw_(O330oR$k}875 z8AO)eP`(w$Z?Dc9M&1y09X)$v$>zOJ_W67)aP3UulSAauEhn%ie)HZv!M8+X zQh>1b*D5UCpyv)T^PkRaWo#8vvaPbf8G#3$D`g1&cD(P)Wez^Gq0X*_+}zF;9I^HZ z|C#omd->d>e*E~6kA21Mcpxg;HZNnZL~wNUT8Fb|?|QO)Wg9b^=%liDqrrOu#loOj zrm-&$L@nrKAG?Jt0oo-lebO#ubIgHcLe7w+uHFz zJMO_`^j#>dnp0=~nZTujgzM;FOxz=Bm*M9!2|af902|8P)#T9v>6+=y~3LSq)jC^BH0~iJ&0iI zG~#8KFJGQ4m1O(+;!N5_Po6`Ox%b?x%CY?mrA(yYc9hTQVZS$e?+7U_b7i(N4VOqj zTDLA2oBXw=Ur{Ibi@nu-BTfhIXVf%+YdtDZw`p>h7w%uLFdVaH#p;zSo1VwjbpFo} zZ)?U@7g7oR$91TY>k6NJOMVd5&#i?|h~`i4E8L$vW^t;dlSnh{y?x$Pk%E&Nt8XhMH)`WNK~VhR~OeE|Q+W680Gc@Ke1)|z2!wtamX zjHRji?1TcKF@G8UDT2fTD6boM*hB(PeDDUX;nmlX@CCWMVJQ;WW7;H@zATJYAQB6n zWGl}Uky?bLp1!_G{(!RjkDeYptRFP&Gq{t8fWR(b%*Kyfz){Wnh4SKehE_$?nFKAk z02D=G-Hg!*XZA%*bR_T&gyw1Lq07sNY(mnW#VHH`i1q%j6bjfMi$GDdv6glIf(4EB z^#;I&Ulmc3t+-}8|Ak$z6O`Qwqq$i+EpkX-S8EIa2E}UuCy_(e2nf6Ztk61s{BQG* zOv)W3+mCPF?7DXC8qnQ$T<=JVg+A%bz~~6?|N1`Q`?76jq-)bBy}iA`;k)lA*oXAA zSckt1f29hfLKR4i#hgEh`zNd_;y+Nk<{*KBgTQxRZ`!=swy#B53V%I`spywssB{Oi z-QNM{$fFSd-(bz1wMP$^M5z;q1@4N6B8fNIHD~D-Oc>J<2^KQ?R!$PI@g&}2`O5h( zNOgr6iNV3M1P9?4z>GCSOEP}-P^M5lpENYYBwydBq*MkvH0KAa2&hmqgzd@T5d36|3JanZJ_}@Fq7c zA!1vAKEK3d$cP@tGoJCJl_~F_aRM zQ8TBeMi<})lr?bfqCa?Cn4dq39zqg?DU~B2eKE9;{}vE{h2hKX+B)#A4Jgwje?qDg zCznG>gvym|hB>!TqEXcbteFxGR1Hk1p{lyjR8R|_u0)kMiGXK=aaY^D`yvoS5 zZsRX8ZFiv&MF3R*@yYrdqX6~bS|5ubLq*-uWV1*6{6u1q9x)ybD22oU=e>v%(lRQG zeY9Ol3Ifkc6q(EY*6WsneMZ2wFlL**NL5dd|IO^m1YBqh$W>lmUaTsI^RBxOqAC<1 zOwEP+h=9MIEVUMDaM(Zd{1&Jp=ErJ)M3KO&&LMmd^`f5$dCLsf1K@o{a4}lA$BXXRg+#mwQ z^T9U56jQ{65>SQ3VM=`T^)J|M3Mhb}(o9yYixyFsjNEx?*8g?|`eck|()Sxny7obk zdG_pCam=x8xJcIW^A|1*U7X$Z5fpu*>zE_%Rq?-6*OPtDOWRV`Kvaq?j$kOj1c;$S%r+<@o!kOzYOrJSsk92=JXi#+HEgjNF&h?>0oRZvjJ z!8fX*1nC>B_rihzF=Eql=uAz9_V1{n0In1eQTrjYCj(4ZcRsig%x%^|OlBxHHw2d= zn}uRQD4lX2Nvab)h9yJn*_BzdW_hFRk)9Z}#^Zz#9S+KEKiLKTSC-{A7z#pw_qU$8 zk7wEmJ+TxzO&@^Mjwh7&b-PU*!|qqXL(uaHKJ$*_x$`xL^#UVhdD5Mk>aebn0x$M3G}>QrQ;Jf#B{zBd+?HC)pj2_agv^+0-kBG#ibI z23j%{{49mfFlB(HLj`>YkEe_Y1(|8~0^-ku*1wqAeTeQylFhWGdU6ErZ$9M-0{1jh z6M1h)Kn0|{3&Qn1IUOK_6hJ;yO*B#l;hK-|ek6GB9H6QL1c0GSS@sE-0mX4VdjYw) z<1;jNqA7uUs8S)0*3RyEwR5i`HsGUIBFt!+XL-o$~XQTx{J|vzA*E*1W?gCKk(Q>tL!Pn;5Q%%{;bb#M_ky(GkvaAZ59hkzTE-NJ=gr5y2MGqS&gX$U%s!kwG}z& z7OYLJ@)qu(6-fyLdU-iX49=~+0~-GtX#AhDqD;BNWmG{L`RONSHR-(G`%F#qwM>x;D*`)jVB`6!_iw|{{Y z6g&WNvgAnw2!#$Rxm4ULgqFb9uNtsHRzW3+e@HUS`pnU1fB*eAX(QM&a)=;DK;+X1 zcgb-yFk>yLfO#xfz>FL@2FNc4>lwiG0f3HBfmd@Et=EZWnKI1?b`wNvXsXQG4~7X5 zxDY8w5R<~dfZf9rkOvB0iDKwnsKTJqY0MvMxsR*QBpXH|a72=MjSfl6d%bwiNX)fb z4f`StQ~9v!k*|doTOoO_fB_!DA^I3be&_*!p zS&LlRPMO!9Da~*zXzJ+&l3*ih(DWC7^`cpHtPUh3BN7gVArA1-&!OGcfw(;hE}nhb1)=I{d~Isq6ZRo zecg2E5Acps28ceIFu42TrLlJ1i9*DvL`*0!S2lL@ihQrwbFLTDEwR!zkPi@PHy^u> z6Y3Q*_5;t0X{Z@uP$?RLM+OvZP+Y<^oNFx#GevkJ`v%sIV)iR34KPgpj%}01xb-i8 zoG0x*h%W}>8E>sWvJF)qaE+{o&ksgT`<|X2xGmh?7$&q{;?l_{Sp(5EoQy{TEbgBu zgi~%d&luW^^@I&+uaCS$7NjlEG>Bz_79(=qHIa9Co&yonckOx_6v&T>>bVe(%Si}y z>jxJo^DyvFhd_QE0oXS|MFG;dV_QTRHoCj>a`+_(wE(Ds zP!FFJ0x!z^1#bX+0Fj6>niwyVIOSNic*l%Tlk{k84V%Se%`Aq%23e9KU~#Or)BLUE`&)72CGsVK_W6vnGdksXm8xOF%=n^^iwR8T$>Q*)li3M4TFLqw29fu zrB@liSc|%iJCF4SOcaBa?Eij!y@%XYF@G5Ej+v)FA&(nqD3BL*!SCJm`+}`uu3+U* zox-g0@%0S_@i_U`aJGt`{h@|6MbA=hCVm|CUNl_|;uc)KzuTwR75{U#L&c@gp#6R4pW1I262 zh7I``0=M(7Hfx9HO*?5#N#!`(tcCgHFNJtw3_^rTB$U{2SSmmdDMRuu$#ip*8mP2} z`)Kn81W79pHD%T5PB7yW`$n55RNzH4+#Lvzs)&ANkPeX$4tl!Ua1YN5B}?M$7Wj54 z5de3z!+i05`AoY-e0*{AeK?6UGn`+*b1FjKU)VnFU%~b*Y2T%akWzxOhF%$V&rpLG z|G=HxfA7Qm0^axav9prn6Fa9yOVk;2k9T>lnG0DHkBWVY7@m})OWsDD- zx(v65Rr1b?U;NvZxROBrPTC_B4l!pQ@TnjkCtB3)EPA@O70V2P4L|VY!;rbC)vw96*$^fR~4n63N>LLDUF)Jk&s(+9t^6 zMC2^5Q^!WUP&ldF1}r&K`s&kRlj}gO>i&*UBLeww!)+ysepD{0gdV8VpE-e=kc!AC z%-GV6$1h?Fk}qQppR^X+tax@-_cd#P2p6r@AnZx*X7D%Ifh3P<(VVP`0zOoxejNxKFApRb&U1}#V~|I@+yGBxx4KIbMp)AN2>5GX}&!BlLtVmU2{udZLPK$BEVqY%f~ulWOQ3_bCNl6W3iYmVkO-xDH3Et|oJHwijO+y#}&& z6v8`ktO(4fB>Z>5QAj2v(hGseqJf2sv4J#SSglCbW89rTgZH8pRNAZ>xsCL?O znieUiUw1v5H=u)t&^cm%a7&9(Zh(v~NUBM^{y!e`NSc({gtbEtK8ghSM>Qxi6y%*! zY=9(~K8t?#yrsq#;xVPArKt==ehtj{J37zzTREn8HPbq}LGpzrhMFD+D*f;>EsJ%!PD3ztk7 zIY3Znk`2ATSVgJz!>RyPJSG%pLo`SL_paHr=`hvg06IPprXeE}vN;5YDlYQ7L1MCI zk|slwDa1zVrhps~4Lbq(Pa!BB!B`x~9yvxV5^xJA_!d-XWWA)=3*#DD=O=ZB8Q6v> z{Y){t~=X?m&Oews3s!=XKWs2e1B#4Ib-om5oO{H?@*QdLX9Lg{V zwnIH9flB4zXCdkZ8$eNRYVGkBxvU6U@AAOez@NpqEn1o!p>}`3`bB;}0zWsfJ(Y{} zhCtCN?PEIdG5b$@i|5W99K`GsEvD23rrH zV;C+JSuEt7$ zK&=j0q%TLnD;)QrafB<|=XT~wrgHP}ybYefleKQtMu#6_SOGo}>}?xAa=v)+A_DuE zdbX%(4k-c;5e{k}n3)>bh?zvMn!GnTkO(bc%^p@$^QH0xD7O_w7es(kIOKiq+zEO6 zcK0MB3X>OP|AyAqi0Qm%Wpf{FQ^&BuGI3S_XkZo!XsVc?{E|!C1$_q+cqPGz)8)@V z!~3FV4pMszenqRwzT}u&0NLJx)U<`7pExW*td|ym9Nah~X|KPS<@Ztv2N3CGX!BNu z5e4?r2t?AJfdN0H*IA3!8a44vWyY_&PW?v@8o;0va1@w+m=DST#i%U`558i>idLxb z(8|9_br(Sk03J%|pY{cEKlX($8a!~z><1ed_miW5$sX6Q7s1TkU+*PTy;SVsc89~6 zqdogQe^KKgi3va#)HsOufi6RhR6kld8Q&e~9i-XdAAlZj_DCTU$~?kM5}LRaA4wd+ zNRbVi1`Y!oh1w52HkC1(dl@F>S#)%CMQIMuYdanU|L+IqZK74Qhvj)?cEH|>-N!oRgs7bd#IgECRJb%K=eu#k97r)g@Nnn=%|ps%+3r!5@}!uws6;8cl6nAUfyJxxLyQ6&3L_Y zLA&Ym*g^!SlIN^P9Rx>2FcOXRD<*5h@Vp#x#4jcdW$qC}!=^L3aHCV#C%h^qLX!`u zo!aMi(0yN~)J9kE1k>iTxC7gtdpJ1`51_IDXpGhcpu#YLscY`Rsf>H?VDN%KZx};A ztkPl{O#1|GS_A4ab_u}Y_}qA10El#|5hp)wef7qTu}@0zpqw})&i)9Tvf%d}Dv6(u ze*lhlylx5lc=%*uk@Cbg%ww25eN3{OBde-6c0!Jv7YiyIft!+MTOZ^aN?_`Te|ti& zXF4k)!uLbqGzP0TcOM($?tmEv*G{)f3Vlf01emDht5Q zu6+RaBl;UgH`U<1H!5_T(DX!&a0T;Nm<@l6iw`{)J?sq_7lNMFa1>$5E@RMbJ^z`; z>@Dz;?IL19);}jNj~WlvqBVk`uaZmJU8NQK1vx*(OOUBN=Q_1(CJ{Zqf7bjz&}g1D zVbEP2930*~;gz{{ru{M5sZ$s3-m!3fE!#&$Rav(7%g4~~yKjSY!A`c9cP!?`ADPi# z_E?KGhSg-}d9JIoR=5XVkE z^ArqEozmHSZ_L@SMsj2cz0IQCmRx^cYwgwV|Lv52r_IR9hCF$)8cuJFF`yQLr-;2j zk~TW3@7O=Z3~mq-`p{e5T8J)UGAkNyAg0x-;9!^Ek9P+ARuKqgoekOcE! zD%6DWz()`^q4wNuHO1ig1rGIRt4=FyxDLBCl>UJ)Uv8&HCTev6?JFp*lu9xWI<-`uqgmVy;aeG54EooaYtr)> zZs#iLZ>P5gtermN@Dp~J@_(dZvndp!JX@jQ;NajLg7QGY8;fs+0y#c=#lg4T6hyDl zDm`&L%9dey=ErCCPJzy~J9*x0LNksTvM4;7ssmkBJ}_+~Caji`(FL@FYX>mGyBO+U zvo*ID-r=XM5F?xO?^m>hrJ0|fT&GZCNfsL!=vD_DeCUM;7G2qFxp@jB8~*PBR|e>q z`W7swP4grB$oTj}-dn)AadL9rdx(P^dJE86bSlGy&-m25k3!gSqat7)P+b-QUKPjd z@1jNzh!K-5^5vbstOAyCadCwM8%^bQ5oFFbMg6*EwqSByC>(NDl{2r4D&|$!o$M@AS47uFie{T zov}#_b8+dv=Ku@Vy@qfefj?lU6A9&sCMCjT4|f^vv&>t7as}8(7a+Fq>r(?!w1?1Q zyStQOCjK?9|Cfsm@$NH%g6yF`i>P6>PGmofB(eud;IrE33~a-pRDsV z`jbEIY&2)Te`Y^M^!@$wf3pLBf8hT+7k>PCu6x^N_FYsNfk3nYCrX{@5-!7u2Lq(3 z(pC2E!;uW)&E_ZysYa&*8PHvk7l5rntOF52`1>=ZO@Br&oYf<3ktML4%dhfNWYYpu zE=_U(a4OM=*8a%UQ3yjOg(26V4Awquf*n8b`}gC3!;;stAY&II{|G9eyd($=15)4v z^Nge0s%&nXWegcsIrrvzczi$fXFAW%yTSwntpLnQ2|A`>9<5;KjDlM}2tvg5S4u_fW1BEdWOE zM|bpU^t_YyfU-Rd;jtYZ8$^8Cep;8DW0-KycRdOUyoxH^+Wik|M)!K#j1F3!VsQkw zGTdqI7R4*&XoLpcrP9tRBAKIBMLmD^L!IF34yLXJ{VI-4_fFa1{={)gSbo1a{^N>F z3%r5DP_+9;Y9@4&s~w{vE>-ntS-#_hDY=9=QMZYans4YmjLjG}$$coU0v@9fj9@Uj zK$^ue{w$Bt3*XJ$@A&$*J+iMR51H*)f7v9%Bw-s#g(Qs!grnz`N8&I+7?J=YK}ScO zL4@uFz|Z^Xz5vy$s_F^51HUiHFQ{DEp8(8Zf~jlE54u2LD8C<;yVrWMc6PzxG9MN%>9%Wp^D(z!bLsg+!4KNgabqJica6;yO2jOg}TKM9KhtyPS$tYeArwtT+?GAls<;2 z*$TFmN_jkkp504#isIBq4;v6w=Lr7=CF;5{P|jPRE^d(I{e3Mxne)Z)PapkHd>7P$LN7JV6#5K41hM$}s!SGF^KP-=*$X zpcYzh)ov3mSZn)0cW;#RU4hPUlb(hTkY)nFxrJjBw|#LN-)!*n&)0ndQ;xA+)^EWn zA;DcQdk?5yqEMG(tIWiZ z7ain)9k~WA`vj-ZiTT-+^DxwJPEgjM_T*s@Z7Y0o9j)`Z=wYAynYzLwO^0{`GJK=< zr`~h4*UvI&A65oVp}yZXk2SG}ym+N>6o`qP;P0>Tw;ZaB*==YTN|8l(^gGuu9J3{9 z_T~u!mo6a^o8mIm{!N|42%h(OX8!)(3}I!%=`#$eosL*u^u8h1D3I4o^03A=5066B zsJ6MHWkv{+q*l{vLN7!DjyIV639bKFW%UvbS45B^Zik_V^2+PjYqXZZdbB2$=@g-7 zjN1GY1pf1#;FR`PpxOE;^bo)SNB-I8@eVyS-@sLSTY9i|${gP98e|-lod5eidcq!Q zC)et{)R^d%nFwwUaMK}Cq};Ohv3+;-Fal02h$QOBMKs;~KVMqvktQ;Ztx41Eh%+hr z!NlF=na*nixCVye9SbNxQ$K=3X*D<0c~hjRz9M?Kl}RdS1x-F zq!JQ{&?-gEOt?N9*eTM;Ljh^i!95s4R{VW!;g21R;qb2tb6S3siKrp>@4sJXl%5gC zMlL3$bG1q+^|iOvWM-D%`u#n3_Zbx?O_*vrf&s3E^pUPK5&+6?9a7wUDv#cq4$B}q z@4xr@`}FlRay9`&KS5B|wktnrn7w08jK+ay{@kPH(n(8buQhOl zUr%%%vZ}JHIAfT7jssRLb*v*|p#9H&pP5kq`}2$|m)*N6_*&pHR6~z>5w`XTJMO`J z3TT;Qo#u`Z3J_-`{`&<^wRhTYHqelgSx2*L@gM39hjk+NvyHehCh|Rdk=Q_A!TcyPX3RSVS zY^-_+?f0de?4I<}aRR7HIAs53nDcMIWKk}45;aFwK=A8s-p%~Q4M@Cn&72|qC2-+J zh50+~r&MQ>kljZT9n*|ZBgQ^u55~%$o&PXX+K|#zc~Dl;&NsBm&t^%>5d}FGd$$Q24Hjw0y8w zkNq8*mb|xPHvnU$3fj{9_U&9x){8Ga4t^#t2wa0?rp$_9m<=@uMV0UGtc?l@p_bj* zdVe!B<|cZ{=3cb193b1kdbgqdV_o){n zr*4x)ITM4#N{xITS5pSpX+W9>&H4m=Z})DpGoSa2%qTvPv&bGj8bRP5alp@;PLa+T zN?)V~9->t=$uM_mLNK#DhMF)CD6*sM=e)@WCx1YmjghrjjMHke>#m>Px{S}Ab%rS( zvj2BcUB`h_APPxoefW@@Ocz)KtXSD}j**p>)k03rlURQzsJ8;GU1qxEu~3B_l1_11 zaGQnEizOHavT0~f&C2T@9*13BGepw+4&U}>aesl;V6tY;hc)(@kelfIAMzgvb-ZpJ z$ec*0R(#O1cX`-m7(*xLa(VJ`13RkH(hyK;Q?Kk_pH3o^by_|@NFjKP!e|u~NVAr3 zdB3Y#vEMfw(1H4NKYO0%FT}|ObmY_QMQaaT)rp@w^%6?f2zZ6eRv7|&7XscY9-whJ zi;kYE_hIW-uP&f7Q;z?cvHpu%mIF9Nid+wL(h4k2O7SLYgCME|FV%&_SxL`^7 zKYuNC?#mC_l{!A$P7AvVO94UprUZ^kL)rZVUJEst-#NZIehHA_i??NYrH4>U9kS%l zz)=d7*vYa`E?{iB$0J|_PCw;F#Po~k*E`<)P6&mb&B)SCf0<$LEL^grHMy}@`m?4H zU(6@NgcnuzY%D5E55KEIQ;#MEc&mn-J@zKkwTM9e_Uz^OqKQ zZ%8@@cK-yD!!>>ESA}6V-tHU}X;U22;Cggx_Z#=DSwZuIeePU7pis4eoz6MHkqis% zlp}z}+i{eI8qrX;Z42Z3QE_TR6XN(f%p~A*LMvBZwp*hAW&=A`QgO#(-~5DAN}$+F zIu^SdlUEB7lsbqygxrmx(&E8>{C<^Hu+!7&ERuV_&bs%#i;mYpUNy$CV1{z%*lcjP z50!xc?W~%Wc*>}09K77|{Vax*Hy(~i?`|$3INg&sdT&0;k8cv9;s9CaFT$AU(jEuEYQtz+-@O%i1Jr9CMy9CI*W^` zW$6?+B)YuUL}CB_`rBfvACPb1sIPOsk@kmq7(6Vmb(s1I8XFpnaAXD^_tI#adgft- z1lr%)Ze#t@$IQ^Bv`9p&<>ym4##%s z>XIDb)b&CROuyZOUx3WJ=mfU*qW&q&Uu)Ul86B{J2f0qy(#@DQ z{C=5v$`~jvV+ESHheZ@vVWur@Zl89(g#6BSQ<;^6sHAOi{#3Ftxf}4`LpM}+lKD@W zPq4N^_8I-9B;*%Dy?)zFK{#S>N7Gf86V(k{wMjmNjsMBI1UpSIqiVy z##0vxcy0f_l^Av8g*&;1)(@(2uvkFMvKfYm2_&eLZ)B$4#IY`*UU7=UV+3xoFuyx@ z9Cbm&mJ$Iu@g&XEW$x7zPRs*rADIBEo)639siJkYNM5_R!N4%0chd?o4jU0K|wmR z#al#EXUC3n*7rbW!}M{?{rP-%nex-muMek_SdDstcjOb|R)WBkMx2Cq2p#V*+TiSv z5NH^wHwHA0>NcJITp%McyhCX$I?Om$xJ~7p#k-OC`#*nG(s1%-GjYbtng{bgZgjya zFza5S<*@WZ@@czlulDVYNku+M-LmlsHkM@@*e8u%ircDAU@zRQ9~?qyYHT&1KZU{t z2uvSAnD*0dv~I&Wa`{Q5-k+LEoe#v=c`~f(RN3Fab6?m z!i7fYeI+If+Xd2Hak9DY$y2AMo2alb;lG+O z_Q8$}VVZnJIL^K-+VxC18FUjRtOHsh0hb#9>{i+?ZM{t~y znw%G}C_NfBlVDm^ms-deqM8B?rKhPfbFFTYCC={4hm0+fR;3fuyx(f>%#B#5$*nJ&WreW3;X6=A zf!8>VHT-E*Z0bJnf}3&gL?91Zd363M1Qu!)uBi81ut8~?)Ya?Pdrf%6#l=NAW-;#9 zKDK{~P5-5N=4<>8a2lkWWBP=Cu+Gr*c{JkJczr8r8R&n`$ACwpJRZ1oqP55gWwZ2di(C(66h(*d$+&Y@DGTJH)hGpKx}P5HS?&bx3~8O=;~x! z`Au*SJuE_R%p3(?H+cW&;M1>P@5HAidmEaYm)WINUG?%B5Dtig6Rm1pKpY_GV())I zIApHnn{g4ng}b~h(I0|yBk*b5Ft5xBCq?54S}d2qFJ=~(Tv@3lAT3>e^8_C0MUteu zPky!2DR|!AgFDUjWKq4=E*?{5mf7;tV|Y`xgW=AdulF?Pc{YFRwAo^s4k#Y1;JkQSEaeDV#-BeUh*b%W*<3OO z2!M2cq>H~^&B4E~Xw@k{ZM%E$aoZJ?I3Oq5iF|qWQ{is?A*i-$VD~CBW+_AVfDhIb z#(+Er)JIP+ip>(-Lud(U`(=ELf0Vq(NJ$}XFyd4EbjcV+NezAzXX7QkPWy+IiN5ix zS`zMXI!_BiswvQl`?b+3zWnu5&cQ6Gd4pTrds*?l;NrqJo18%~adGmEodI_84nb)v z5eBRDPVYn*7e7gv|3*on6*b;Oi+hbcKdoQ3QB4uS-&zwMY>}n)hG5Rk9!1pWJ&0{j zX^V^!Q~+JkXy%s*i@ki|mx@2s?o`SBT=uZ!MnNi?Zu1B}k(&+DImrf!4iCYPy6Zz+5IN^N=vveRbyBAq-l?T7xRSL z!S%!T&rM47TfduGT0RB!upr-7P4#Sa_}8V;Umn2RW*vSJ60Q7j1V1-wF^nmRJ;-Oa z%YJALJAA!@sHA>>g{0&$fa0)<#Aj0?ALLqc|3?XQKSI$O9E-c|i)GZ4vr-{%&1r0d zmbI^AHIqJ`sYYJ=w1FKhJgcRpb%@_Y7tMANsw}x~1dSky@1Jy9H6NM*?~8YXoqDcp z(0{bWsHXrMh6!xW@rDT1T?U>z!+iqOeS`ClRr_QC2V2ekutERz#p}H5g@kU}{5&)V zS1rN~`~Ub0RWG@VKXEQ9`F>MfkaJh{t+ zJnMz>-#AYaYYbCz5<`z?W!0%nhmloKfewtb{su@^$(zvDJLvT;f(hNC;qI^@{O;(WjwDSAey4H=+8N&){FVv2ykX|h|kk%;mX~S+44wl z``#9=DZvsGPQ$sid)*8?_1er?t6Uww{gOQavxZg9=CvKrzqf((=Kj&Ya^=dUz+eAM zFf{9Zo1MK3QOVay2U|fux#9-URr4lT9C|I&s?3077em;*tiPDPm~Ff4vi^yaCzl}d zaCK)*s35A+AL+U{1>;38+fLx&ahjac8qJ?>H>a7ybVSV{abMb=Q86ewtM%4MLzv;or`P>@?&o>pGwk=?*S@ZGt+lS(s;VK= z5|61F`9Cs9xH@J;%NJhVHFt94GmjUK;?jKOT*LJdLDMg+j<^5lH*Ql{IQyhUQL$y0 zH?_bGZca|lyFIB)>}L+;_lcraRUIYT^uW&Y+ne|IuY4P_H-Nflhq!LLU+sokc?AXA zV;l(NSc1-zRW^UIC=V`f_74o?d8dC}#|@xenbXSsqM|MLuP}=_e&(r48J0VV<-%&_ z9}t;O@7mN9vY~jiBU62H?hV_KKswpn)g7ZHi<3QLKZM@XkTxm8dG3^ZdtBB))bD~v z@p?yD7vdcHcND8PFXam^1zsN(yq%FH?`}|Veb};kuCS>)L&2))!aikPo%Ws2kkJ0j zTd)2Ew2BRuy@2?|sw8-TQ3FvW>t0UMkERkS@vF8-L-gV#4CDn8GS@_A!g{PdRG;=JqUE;v#sNqJH?yX)meRS zY2CsL%g-I2hvy>4@BB0s*4A*Y);Z#rOT`U5R0W74u@<%87LOx<>*Oqm!+%Z&BDW!` zlz$|j%8H7yEb69N;0jhpz|X>25@1IXnrs@wvb{*sZ34J^vu-{y$kmR|?hWeJUPLRfsx3UZvgMp*rtI7= z&$vOM#vbl^J4w;7u4@sh)AeXDi}yOTS%Pc!C^pSN2;DBwR4nG74^D@@TR`RZX-dcp z?xXl`IE$#E>rSSGS5Bu3&L_T@Z&2Mm9d9~39xy*%y29p0z(A^MyI6FY3c3 z8KR;20e7K#MxV{e?1(}OuY&jl0Whp>EMa%>REGUxI8c&W$TE>jd+qY`h3=WQdL@369<}t;@M+t(8J2M#bouM_U9EU# zR-o@;*_2(6hT6&b=9UH3(1qVL?jwp#PF13(s%Xc~+s`xCI*144Yg#xtBv!hn>G8{c;SKuXIIAcSf`1Vh`S)l%Bo-btKU(3zw)s02O#Egt(=-F!-y6;@O z@FMXNbJ)$r-o8U>*JSgXcNJeBvCO;XBJS@p=w}}ncjKaci?|_I%drRIMu{#8S-nZW zO&{qqDi{v&IewRnS-J+f-RbL(?Y#gs?Gc~#S5!<@7dECXBGE4GlseB-2h^Wu=VIPL-Me_ zqiEoOy_&J4OL}2tWbMVp_Lz3&r-rNtMVHXNBQG{RX_OrurrKb>zh&4lT~{_&t6^zf ziO$G{z8bNGpSAPv&kTtp5Vgn@_P4mD<_x(TmYLd3N5=O(2yar&nv8s}(fYh_)=5$$ zfhFmjd)L{Pf&K1hTYO#(xA=ailfBsK9QgeAuB`z>DW6Oq{Y*}HtD#Ul3X>{BoSjpZ^aYC5Mq-pEgGERr~D;3q%wgaBp*={Q}rpqFS z(zlCG&WXH5$gZa`yQQgFJ%lziGmhU9D&DUHyG_2Mrp?*wq z!QXCfr{(wd@x?-cYn;q^ZSQ)-JFM$$oOiH})gZvF|Im)iv_3n4ER&U=ft=d-G-kWeWM{s4f z9X*uKlU!KCYGLL4Y26ZJN(*lJ2yXGZ_+KYf5(DeYtpYVt*9Fp+X_B~S8eEZ zt3OksGZ*>8LN>9!gW*&|i>}_=tzOC*H!ikkmH{*}OfhrQ6CYk*qH|s|H)|fvP{!bU z5Jf}+25kaQr3ICY*lvi*dJ%HEdU`3aw<_k(5UJfv-`q znf8knTNi^Q*JeCa*OM>O#yTonqJ2d=e8Yatd{5{KX-k{$@SU%iViyn;{1aytl_&0% zn9CCV0+svw>_DBegaeV;2M{Bwqk9v5j}IzZmWjXq?e_92+2kSS36;|q`aXvJOm?W| z8vcSXuy)=pPH$4DP@{gjFs~~^WWF)7fc^1&jnbjvFC7~3g;s5!#_=r28=pnJ{Ef(~ zP&P9WUFwzmi%&VKiT~dhHf8XtgEzSW-2aTqJnmr3557Lw5#^QxFF(oM>5|DAR2OIV zcQjPbcAT?q8nfHoH0H=$Ws}c$9IEYX7E>e&6Q@>2TO%124exU7>e(MNkf!sl&Pw&P zQ%g^6$cD1`7s)Kn&9iyUpT;veB_%t$7@mi6*8?RQ=^1iQ9O5kN2r#IvZ;JT08iw&$ zjo1$<&z#a*e-EdO_a<&|A6B$nj7b*bF0OBa`$uxTVZ)V+uhPT=oL=3+YP^~-igv4; zuwUciqFC6!KrW_az1J4=dJRo6@z>f1S6PlDf->I2HrQF)vVCyqDmHnU!S;;&=<)g7 zsF#D5WelH^%R&-y){_Sk5fsT;*K5rOg6$8C;vvf_`f2oyu`o!eKXF#UokajBOPd=J zW}W6o%ag}>5SZ?+@bm3DS}YDJZ(D{wl`-F*78Ti7Jd-`~4*yfp0b0PrB8=Dbccu*R zGslc)w~y6NJ(IRBe1ChuHCYl_>aG!{-#_|=m|K1_IF!E+;uaKa8aj9ol%-wi+2?HX z{p_2s1r)MyRtMai(2=Z5GSf7Chf~yylAtU_MfI(MY;xM|zu`mIlMqOm)pt7{*y8L$ zovX{znU!$Puw}$~!Y{2wYnl^Shp^&*H__~?O4j*$-UCbSVfh2^3>X8pei|=bm1ve7 z5P~uyGWRfjB@D@|Rhs`Nta;||O> z)?))a$$Kpz%)#7p{=c1Bm^BaBkpTr3kf=k0XbIRX^4J5(?{_`TD8urgP59;xU+LKD8ESJQUf)+p2h3d*>+PZJ#wtufuZ@ zK3!MJLkB97y@?0h2Nm!7F2)#k zJYy1kmCF0Gs-!xo(J zrsXrvJ%7Hg=8K850>h~(y{c^vXH_qQIC1|D@u~&@sD#7%k2awJIqhw97!$x0tm3S? z2uUmHUqmNyK}{j7@oMdYy0el1xw*5)3@FrQ?6W5moFRw=>2p0SkOL=4`>< zZW~Gk!7dRbnoosC`1z5f#%<8sG3mD`o!cFSm!I@|>HB*+@*k3NA$#QRt6M0EiU!29 zRR3fQIxdX43!J?6pn1Is;e!&lip8-&_m{wM!6_+W@QOu+BEB$LFQGS$rryD*K9uVz zqhnB564wLL7s8F+n|PH{c^XP9h^56P8evomI^!B4x@sb!!Q>MV97_ke_B_Q(giiZG zuNDgXE;=gexsw-8zL|>5+qCKx=QrJ|QC-jG6(+w4rvkbEgPVX zcgu)FV~l8YP|{ogG+z^Nn;&=HZTkw*&bKlBJ35n;h6I0E{=MDgGPys*LvChfi>aAkl8K3o2mo0@B>UA{`WcFf*`T*b4TH4)}r z**qscHJT`d2;YX&Kw$-?y6j=@F!TIVIn84e@5r6#L9cz*`+IXJPd zUA@a-IO5e&_T<+5rNw!oA~OL7NP4!~S=UbhWmN?y_eM@Dkt}0>zS1i!XsN|4mP5t7 ztuNZ_nsf*)M6qcT<@lR7&1S^G0)Sax(b{x9quE?l7Lz`S?lsv-kCDYFu&`nD3Dq3b$=kOVfB{VWK3BN>GrM^gLDTyU&ITv|hxW3287{+4sz`Ly;W>?# z=4EiHvcVqu4UoJM;Qq>-cCuHnW*hr4KJsR>tErIYq38e;zW%9Vq-o1M#0!O(1hD@CV^I|c^z6CStMk9yXS7idCcNu5{J?UTS9$YC z^0f#p8a7wp#of{c(Siuj3;*`;5T0C-^_Tj3JCGh5uQH-T*aRzkGGT=E`AUx;u-vyy zz!OGN(P7*`P05=CJpml>-*La7B*rJ?-$QqaWzWS{jGaq>3&b-JPL;`6fM%;p zX;_T}+=+ye*sSdFBoi7}n81D~r&B`ral81;M4%e zKQN8Iff1$T0)DVv$#(UAh$RHU3ZWns3w;jUt#G?TAf%RP<^F;i=}*=8irt@y|0kk` zHEW7a?lI{jl4%ra%<{SXV>d!R1wV#Pz!tP(*-D!8)tu7 zU`r4u8$y^uix3nr3h6l}#7BPtXTYw-{M{p#byUvero~laY)=iE3OD?iaMS`jyjGb) zTtnP)VZ=0JIE&^Yd{Vw*LdcM~U*6TkzLeN45E21g z9%6F3gXOCOJShaQAs-e~198&PMxcHS1u!W3&N$M4bD|ON=I!tvQ?dCAR zlKdyuCO!)Xb z`IEsCi!%ne8Uyh?mdM1a&^C+sH(*+Mc*x<^uxPUS5L&KQ__ht%0(1_}KW?r&ivBYR zu}JG;#1?0|<}gAi1I*`t-};_VX$v+e)q^(&hR=LK+vkFcO58stp&JGzzi!fV*CCF2 zL{x)_c7hn|7|CL}t~?g8I}_u+C=5*;WwVmL`toTb{!HY1Bhe5LrFA8`8$x>~hY(cb zrsbOgSEof*=UPbeTS-Xu^hA8Y&D9TIxT9njQ|-lzg+2rOTanPdaorOK4Sel&WcDDT zVB$zzkdgwI-s6cqA`USU#8{!a?dsb4gjp>mg-x2{Fp{jdI3B)2X9R{~Q?N=|YYVg0 z-Hx7y2r*EY(JO@yq5%Se8G%RvVgpzn!fFbx3oCk-2 z@MN%4ej(Yt+gyhuwD}adeX-Rd?PIC#U|W1phjL(F0@5pzw_yXQ<59H@3XOh1>U%dODmP9y&v}Ae>kyCo?=NisoK;BAjR>V&}M~C}FI795q$$o){egvUtzt%iL>|((5 z{xpl;BD8O0PA78uHq0#|2_7oAr#RVL-%+SAVi*lv71`CmD>PJ zD&i4OOnH`OW0sV07dHoux)VtW=_ltP5hqhk-tpDA&9`*C!rru4qq|O4{~#DJn2ef7 z9u@JkKsmXhiuU2JcZCZ{yPUe|(hcyI!T;q$5iDpjd+ztm-39T$DH7#jB%1&}#xF2F zjAS>skV!)zjlPC)&@X?%b|r+;)?K(NGKqW!cgKeCE{4obh=%G_)pdGOvW|bAfx#3p zdMG#mIt}YKdU_MIEGE+_l%k{C9IE(`SQ2gxNj$N5MgG|eqz5lP`B|Eb-o(5A8vCs+ zH;3VUNjT{vaUW6=F^7QkwU?cQnv#c7%8!5c2K~#D|u6 zoDyr;$Qrdy8(mnWTU$P+N1R6RC-Nhrdz55bb)xS@q{SCfq5LvM-0!XOItudKSk)B1aOcoe~AX~dEe za`izVOo@Hi8RwuBwBH%n1V$K=069$6O-kuPKDV118j*Ev_o*@W=L?~CCHivv-kwxGU_t`2v;=Y@R)CJj5 z3K5F|>sodP!YGOJgv5{2Z=z#3@2B@yio8pD)=mt*!6E#Gnzadr8B=AFi^_XX-TMq9 zT-W^dczdd?B)J1IpCmivn)2X1W%bUNTq5X@W6GZ%TJPvYTc+T?HLX?{81F&wOadu5cwQhBn6Py z6UVIgvawB89!z8`sIr#UD_lOj{a#n_ zAv*6u3XgWw67B@g;Rb zQBUS508B!SMOtm)pgqpyxHE$IOL(9}NKFbVA_gQfH(Z|I-zpH51PbzGqAU0xeH(DJ z`f-W?5pk1r0rl2$#=Pf$^2?UbdhZ8GrH|Yug(SD1T>2?5nISG+RxO}PATwZyw~0mG z*eMdmh^bO@ox&8ZFY*YQh$4(opYR=sknf*~Y(BbMI3)@U0DxXDC)Zk6GcezM1 zSfM%%s`^Rf!N6+CLjZu7g4CP)2zxPDqem|lQAh-*NXBLjtSelcN}0l&m|{hU>zggG zmTRbi=MaOd1L&2&K*ntxMr7dmGe7;DF#I6=)Nj#6bRr-Gs-_?|ySd6!j> zw@#CAii8lQ!G}RE-E6G$6mo&Plk=d7eqb!ok%Z>w3$dNTn-C{+qP8JLI?7}+gPa&^ zipD8IMnnKIqE02pmDpjBlo^qXIGvM8IfLH1rX2T|-*P zLOpd|h6J#ID##8k+5|!TXQKBed`ARqoZLp_Cb8J{1715VKI6$AQtuasjs-Mn?1@dp z;E9+NlS>)9`#%CS8Nk=fm-rmn5*cKGgJBC+1bE4Y%Ysag3gSwFh3!yTPNu(`fqP?g zmr5N_1<^>MT%RPS$+#-O;fNxKio|Rf)B!zu(9GAy44yTnKfu~Il8ibeS}`KdM5-=u z_4AV_toE_5K-4DBf;jaN*&^}N+0S;XR)%5;-ZM_G3V3g1hJh$8g(8p%_`;u6QWrKk zjr+p2fpQ^8srcre_=#+RtXVtc$z-Oxp6l2h;wqrG@LQcgeiD7gl$ei zab6F(GB91DLx_SQ6?}aYFid_I4O|d6iH&+Z_tJiuOoq<~icdcTApz&dp!r}hod^MT z2ug~Y<;0&o_g7(Uj=yy3kG)Hz|6W5YDUxIoAGFB=n6Qaht#;f>P=iI-S_YiH^9YCp zZCSRABG#xx?3eTFMI@O&+gFQ9A(j*es=Bqf3a8)@(+`U_!tf&Vy&!#Bj((8Nk!lF{ z4uQqV_an1LA>Af0L{lX5B;3Tvv|k;Y8Ud|BxBO)xCA()Th`8iqfL2V5wwkTPhz|$V zJ}>>3C{>An@ABvp6oFD|3JUjNIQHQ2V=!ilHk`RVVa?MI7`#rPN&6|>RpnHmB>?Cb ziU_z=+a6VRQgvi$l{<}Ji{P4S-ie&;*V-?nsaPpW%bW9_q}G1bvTx`2>Vre~Bh(u2 z#PkHOwzEu7KkodNH?)V+yY`{){ibahhP+98yHP8UEt%G%oZphfhfy#pg-?cJws zDKZ7bRZ0Wnd86GIoy6eX|4`ChV$wOk{|$b`yPW2*Zk{)a;+c~B)BukWCqDwT+$XXP zpVN9pd$xQx`yHv9xSXCsu9$@sa16-)WrPR_TW|M&UVe=`I4*Ypt+D|QwdG1WhWtGb ze#rQ{&E$L2Wm864_nAD0aB3YcUzpph1602*>KvyCJKlxOdXN99+eqNyRVQo9bvPB8 zW^G8j;)-|UFLzwB4liGW#K{NO@YklME- zD_C>}Xb16Eu4_YbWeyWntSg|hhaz?d(1-Iyp?lu;baxjM6Vql^)aOx)Ht@OQr|@#RJ{3A_f;b$GNF3`hPNWqzi;&x2A^1pnpxx(9>+f2P+Y^bD z!w)2i+m^T2@dF1Ae89CLbN2*Z;|iVSK6dM;$c*E%vKWAOeMF;;JUm}oA6Es$RzAF4 zoj&&6nrBE5I|+3HvhcW7~B8-xCRni3vns z5L8$!=i+7-dM6*;?!L4)@iNz)PJ4kP*o7(=eE+@&(tTW*m*F8ZgPZo` zU71^un(Ra&cZ%$1d~ENP(WjoiM{#iS-xJ)5Ew~a04Kv~#MkKC80{aGAwQf()Zs+`6 z(1exY=CP_jE9gUe*V~)xiNMjLmjE)Z;A3BfXE%EcdwO*)#F!`%d{IDosw6f>Vhy05=D+5kF zUH@$l%U*QHT{gj?Quz$g>GA--twS71E)XFJBgs^+EG6lC0LRdF%*>VfO0NarxTcJHKf&+yo zE;JunzsHlP(Yiv_b>G8|=D_lEo&p=&I6YS60}$N>@^NfnH-yQi)>TUWV9;9}ym-{TUC>}KWAp4ocm+Lq_G~r! z84TjiN5Lo8)^am4;sBaug#&JYGUz`0`l24sK`h-}xNb`Yv%>(AZU6rDu;%ls-GzCq zCfVo!uDdS0;_>6h)IY|v>_wtzktEBY+K~TK90?Dk9asx8ylVN__PYbY3&cjUI=z;S zjb{R-(`Cr3-EzfcGaGTJZoZ6)3#f^OLZJ@K8&`U*lRRe$5$8SQ5m5znQA2w*2b369Werm>2u^l?}x_Q3TN9V^lOBMyf zF(Zv*5O{`o@>0-cy97fmuO_V1YD$Rt$2qJ!VhI!Fa zvB$v+(bpSFGL{GGTC(suDM{d~12m1DYq?#fOnkHhnA6AXWdBD2ki|0hw){N|k2qw5M!OQhil&OZrukcdb`gt|t}JRP%2@%l-AeZgT&!bV=ZvMy3e04 zIhv?piG_umuOA5;bB6iLQ8E3C%F6mjW|_8czXN7YzpY3}EECizbpX#!2YYfxJFY}u zK=jqCSA&g-*$DVhJRA>ZuYN4N73MNqax5hj+1Lt4k=n~+6vh`QxSy4lmeSui24{km zyH(ZH&IGf|+1c3zpLrfkIgQJXW56UsYrRJ&&)&VoCfQg574XX|__JGo|27Hfv3BZ~ zjEIO}r;rL~`2d>D0kL=nSN{a~Oxkkk_CeAcgktj`fsv7*ZQBidX_9}+2D2wL3tWaY zVD<4=iHS!JB_<|@p#D~9R8F|y)zsS*F>cz$f3M?+yZJR8`KFY{%&zjjd+0PC%QZ?) zOf;Qt#v@wq@vQzAbro&`b_z#RCzyovP3I4U(s!lVvRG;dI1O62wY*Zd=^evD#m@J3 zML6~y4vHaZH@GjJ@WH+W;=>H09n0ctF^go^yXG1i3>OY;r~Cj;bVTzVzy(AoeCyNl z^3o9JHk9omMRT!?NgCkpO_Vp6OEwhqSg5M1QZ8lfd`NDfkfTgAa0n+;ZR%njqflpF z0%D5*NdozrhiFyphTi1LBeCud*kjRD0faE--}VD$>*NOg`t|EW1&YNdS0O3+mh{Zz zM2+vg0KnG%7?)|y%;ec*diC#Wb7Xxh{t7e4jTQPg`T6*y3cWROauOyibDKeikSadb zFP8vHa102ms2>R3fM9r1S9jO%fdM+q4Y%Hr6#u8Di4Pf_ES`k2ips55uMXT}5_r|D zA;GaMI6vJK28G`kp{;O#ZFZ;m9`s#$+<6a~~RGT)*o;ycNszb_X%X$T@RHkLe zVG(MCl{6`oKPb8Y>TY52Rc8{qzWdfK$6u#qqE(fZZ-TWRaR_sfy;Ks8%8kNlv*8NY zaSE=R_ZTv|;kioltD)@3=jI|J+Of~4x<9@eyY3z4b?R*|g6wfMHF`wA$b8Q5y^Lp{ z9A3&G)5)G(I1u#UfhPvo8p$~-jzp$(2_6lKVLWEWFg@Jn_v6PUk{$y#wU^x6@!V9x zo`w>s=T%zB9&se*bj>$3s-fznk_#S%Vclh{C!VkA^qs*?5_A1~6AKqfW$FMf0{As3 z0gRA{(WlTMBpNbQWxjavLeu&v56>ome#L+j%yrX6a>N}>YL4}o+R2C9t7w`j9jH*O z{vQ1Bp*OAtYVhPQXH#CE8*bbJ^bGQ%Jut$LRY}0SWs~3^+cPW+d~p#;P69|=1Kh3* z-Bv4@3d z5ZH(YD&2C*sCgYjATZzhFH-7uZMP``=OU2%Yhrkt^ zHY|-?!Ud+aY_*?09b@#=PPlLeczCc{VkrBs+7ko*>ypEpcRtHYPCobQ_3H;04usaM zZ~l9dB(9r1e|VZ8OWlb6(|(MMeCH^og?lX!8~GZBA=GgEImV&*+US?F3SN`Ko}_kA zRb722$JZ~vY`uJPtLyb~mDFS!o9oD#NGNBCHSeIvJy&_;suq2z+EL|b)H!3T$l%F7 z_TDqkzg%D7R^;Uf=LwI$aNulmmyM0hS&op9KhnutyZF1mahDt@yAK*;s>Hpew^~Ux zIcX0Bi4=)=j`0!s!d9V6+dvbh9fLIBgXz@OnSo<03jOA0tE38&BHy6 zqCJH`))MtHAz|W3S7kbKxDW^0PV|(nKY4=VYtB4ZiNL@_l3+~wq=RzdTRp8+QimrvU0QLa%QHzWQQ*PeriA>Qw6NBO zU$!cM;~LoW5kKw<>}Rj=2@3Qn?{h`}<)NsprpRWT7 z6=Y=C$;_vT@Wvm|60thAw#hG zm0U|vp^Txo)rD*EUomyFLMP6n9`_{(u&aO~903Ay7aY;kwx`MaN|96-{x7x+5{BRd zQPI$p0198O%w&-MbM4lFu_(c_tiWwDfN_ilrl0iR|NDWU7bt~}9y|6gXCB0jUJUO5 zVRq?_gxe7H1)#ymQOo%MYh{lyN zC}3in2KdnJs*9a@OpFq2sqi9`l6&G-?Pg1b2Sy+;`O6r^fz$#cw2ou8QvVy*b2>UK zq!z%&^1OT3k5s1KgQyWnj#GyoCP_bof=K#_NfnMrhVa?Cx8jPV(+9!^ACwY=ZC-F2 zu4ZV}?U{XyxvR_~wp8wDVEdWeOKlE1fs#2DUb(H#14#@=jHr=-qC&=> zZfmrnP9U@51>Im7p`**#fOB=_CoCz8;9TPg#Dc^>7?PlrBilfpRDvv`^hg1>FGob> zM8Fs_HLJ1c2olSS&VA7fzqkCv{IE7J8z!B_Ay=*3!>Il2&6~{tGM_CMbSvq}do=(y zAH%eiOORGS6m#N7h4AmweLVnSq!65tQPE0|X^5 zCx;0>5FgOR+bzN#c(Kq;8~|WN8Z713qA9Rt8$LRnFzH%nA;+}>Cg4k3!UK5YDVlOz zJUoJj>IbG~U>leU?$6C2{P3E!sE5mwfm6oj9mw+vfj z^e9jOHZHDmUUlgkH}dhh%Uh6SY#`NbMcTpStd*2ez#)$gjX-e^Ht)~WZ{DtJu;|@y z$X}xCy$7re4|E8g=Hz^5_i_34WuHQf1Pe+s20;sExQ`w@tg)l{oh2*MR6lt6Q79zG zBXNyDE1wh9dEVDyp_S#ySKPs)D+87!B8x6g7s(=Vx-jZ!8zu!^H8GLG{iGiS!V}fK z``)hak-m6?en6=OQ(2qCNGGEzn-ZU`02oavFaVLh==5`L>lilUC8j(&~ zNon&gw;BDAPx&dBWx@kk_^M+YkPdt{VyV{O@{R|gb@i#`Ws9x5dL7#&4*Mfcdh8lT z|44x=G=_04KLD{%4lk8k4x=L)P3!ONS`E~1^Onm?1;w8~D`5@V08Y*BBKv1Ql9}6D zNu_`u0|AzhsSZfaPMkl#6-R=WRpK5HggX7q?}%r68!PFsH1k=>w_7BlZ*U6C;n}9~Zz`oKPD{M`Gn(GZvKFQ1+Mno(J@Xl_Y@* z(S6{3`SOl-!=z-0x$jr#?4Vk|e)$oAUBGtq=-1!QczQ?0I#0@6slk$%OH3sos-ms9 z>6A?OMIb0~YNBWYmWT?H`W*gKRNmzRD9FqTSecl7NhS|}8l3#JyKx9vY{s}LJiWXw zqpgaS--ua#MK~7$aPuzhWpQARxamFUX5<#edz?Go4HQ4#@`{BgGG+h7TohYr5 zSBc3|%F1-4QGt}#Z{XsOs6cyyHgcXyydX)>8_gSx!jYtT9 z?3)D)4EYr-ExKS~j>jrFPL3eL)8!9zb1XJUd6z#$WBo2h7IuL!_>rLINU3+glbsJa zpu(<%x`8PSa%G2Z{wAR}T>2OQ+LQ;o9OZB=6-eSPuHeWqNV?_y_}@p4$Cb3W`D`-2 z+}~A@qLh&#H4}WJU=m1y(p^QyPSdV{|pdj`Gn(jy2 zoQ$@Xbga^DcJ|evRTh(Px6>l)ge`nXWxh(`hDGT5jn>j7{3JS>YYOe1GIosuC8LJ zlJDYGoy}Uh-GGI!*)81sn-)a*_plYeiHn07cYp*#l`y&J&q+KgsYP)9KPdL%(xS=Rnb zAMp9_djF2e_B$6}4AzMigc(R%4yG>kMxxdnL)iACElyeJSXyA+wt?ijfVsmHUcZ)s z-H<1%D1;OrFe>~`*)A7qBu7%Cu4gmd*t*+nDW9htWMuC330}kHufYCULKLv zF-Ooe%Ur?6CK$~5bqkrU^{vodlFZYtixv9FI&X|C%Jp*ThUpI1dhBM%%sdbVkv}Kl z8O~RqJr+QS1aIJnjOTsMmP;e;%6ia613()<@0XJVF7l@ky@l13EU>gbuH91f@Y_E3 zXG&aeV0l@mKa)hj93deFqDn%>qH>z*{LMwLrKdOth<)K$8%&+Qg|5wVqJ4XAdg!3Y zYPOgUz;#(e*eiZMy+Jl6uu$Nh71rqOqJ{PCd?#IY8}6U6@1`l5t|RE>kiMlt7>2ns zk%W{}3Y4@>z$X6n7xix~9Kpx5-iJ%&??ZMu0E+}`cb*=+rXc}9_=37R>DhQ00;@#l zaT^^+Pz$E2tOQVrHt{h{H}owLzaGB5iI&Mz;1kibLEhf2-DnMyMtr^nzrb`YVsd#X zR%8POpHK)!Q~EYhFq_d8yWc@gfqwl1TaYifr@yCW+6=rcSkm zg+dp^`L(f;jfbbUTe%D!2u$eSc+c0nTsZ90HJK}Cp4R<_94VFGn-#v-cND+b zH-_-GfeLCuDOk0TR9qW#nizpdBKg!!L}Wr9un%UDY$Dszit_YI-I$R1Pb_~@aH5KE zshtf2iR0rH`Y+%dx`-SK)Pe(Vx}O*7(G9*{Vl}QBURa$Iu}Y+Od-RYf8oMazx_*83 zeyjq3h@{2TY$;@d=3~f921;85=*t(5Ot?LIPTq=6*bCRGEgwWXg9!@hhQ)J_LW?5 zZT
xz+)6e2VLX=J$^F_yqVdb5q@E}%iBDgw4tMN> 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 literal 0 HcmV?d00001 diff --git a/examples/voting-app/docker-compose.yml b/examples/voting-app/docker-compose.yml new file mode 100644 index 0000000..be21988 --- /dev/null +++ b/examples/voting-app/docker-compose.yml @@ -0,0 +1,89 @@ +# https://github.com/docker/labs/blob/master/beginner/chapters/votingapp.md + +version: "3.9" + +services: + redis: + image: redis:alpine + ports: + - "6379" + networks: + - frontend + deploy: + replicas: 2 + update_config: + parallelism: 2 + delay: 10s + restart_policy: + condition: on-failure + db: + image: postgres:9.4 + volumes: + - db-data:/var/lib/postgresql/data + networks: + - backend + deploy: + placement: + constraints: [node.role == manager] + vote: + image: dockersamples/examplevotingapp_vote:before + ports: + - 5000:80 + networks: + - frontend + depends_on: + - redis + deploy: + replicas: 2 + update_config: + parallelism: 2 + restart_policy: + condition: on-failure + result: + image: dockersamples/examplevotingapp_result:before + ports: + - 5001:80 + networks: + - backend + depends_on: + - db + deploy: + replicas: 1 + update_config: + parallelism: 2 + delay: 10s + restart_policy: + condition: on-failure + worker: + image: dockersamples/examplevotingapp_worker + networks: + - frontend + - backend + deploy: + mode: replicated + replicas: 1 + labels: [APP=VOTING] + restart_policy: + condition: on-failure + delay: 10s + max_attempts: 3 + window: 120s + placement: + constraints: [node.role == manager] + visualizer: + image: dockersamples/visualizer + ports: + - "8080:8080" + stop_grace_period: 1m30s + volumes: + - /var/run/docker.sock:/var/run/docker.sock + deploy: + placement: + constraints: [node.role == manager] + +networks: + frontend: + backend: + +volumes: + db-data: