From c9226fec3524d82be02606135b3aa339e4041080 Mon Sep 17 00:00:00 2001 From: RJ Spiker Date: Wed, 13 Jun 2018 14:45:19 -0600 Subject: [PATCH] website - some section component refactoring and adding code samples --- .../distributed-locks-and-semaphores.png | Bin 0 -> 37864 bytes .../images/consul-connect/logos/spiffe.png | Bin 0 -> 8564 bytes .../images/consul-connect/logos/vault.png | Bin 0 -> 3567 bytes .../stylesheets/consul-connect/_index.scss | 2 +- .../consul-connect/components/_section.scss | 5 + .../components/_text-asset.scss | 103 ++++++++++++++++++ .../components/_text-image.scss | 56 ---------- website/source/configuration.html.erb | 82 ++++++++++---- website/source/discovery.html.erb | 88 +++++++++++---- website/source/index.html.erb | 52 +++++---- website/source/segmentation.html.erb | 63 ++++++++--- 11 files changed, 319 insertions(+), 132 deletions(-) create mode 100644 website/source/assets/images/consul-connect/distributed-locks-and-semaphores.png create mode 100644 website/source/assets/images/consul-connect/logos/spiffe.png create mode 100644 website/source/assets/images/consul-connect/logos/vault.png create mode 100644 website/source/assets/stylesheets/consul-connect/components/_text-asset.scss delete mode 100644 website/source/assets/stylesheets/consul-connect/components/_text-image.scss diff --git a/website/source/assets/images/consul-connect/distributed-locks-and-semaphores.png b/website/source/assets/images/consul-connect/distributed-locks-and-semaphores.png new file mode 100644 index 0000000000000000000000000000000000000000..61ce749b0be03bdf41a09713bdfbe0613d01859a GIT binary patch literal 37864 zcmeFZbfX9Yf`pWG zr^H#~vw!F8{U4kc`<0)$y=P|KYu381Z!MzLR22#F?%-iyU=SkUavB&ISSSn(Oeg4V zaK$!I;}HCV>87D5gHbs`zm9<+g@KTh*7CyK%E4*X>Yl#2>rEaP^X<8GA#)6&It5)! z47Qfsd-WQ%*Pmk9J!*Q%KAKa@QPfaxVPng06|m}5E2!77+(|yYx!yhHBPQ6K^YuJ+ z6j|GHlF0k?@iaw5pe;k-Fzem0({&XKHaiP5BrJ%81WQH=3dLkWGD8Bg-qx1h`|sud z{9ii>2|`=(e{TAB6;6-Eii&&i{|@f| zn5h3dbN~NXa|@n&Aq#;wr-7Z%B(Es05A$xqZotl*e?K}Zc|(7_7I=O4a>sL`eCOtB z{>BRTXYC}r?HQ~>+zO`^oAw8}5Tg9$*ueJ?N39xzz{9Nhp*!==BBCyju$^4Y~^m5PSw&E;XFki*X~$;(CJ zhT4b^uEXMoLz>#!fo|K|%gxQ3F;7fTez81?B9&EIMoPnt<9{(p`UtL{w3ftAmT|urdblnVD`e60dT-h$FMRj&U&l9U1={60W*Js* za0hwYT8A()?WA(Zv2f+kqbf|0z~gP*3n5f+m}wx)5q0OUy)(nc^2BQI{RBp4yO3_; zzde>A8&t#C5rdjMoeyLxQO&uN&PJm1@LE9e)y}MlI#%qEU94u(GbvEc(eW4og(n!Hoj#Gi65@W#JR z*T|)tl3iWJ^e+l7!_0(*@(9iraVtTn)267c-^2Z1+A7F#LF)04kgU zuEQm;P#mZ!#>AqrX90?uxZ&uwP%jfSg<=r%c;qe_-?01X)VLz1U=0tGMGb!@LMSmes}w_Lei?qS7BeXAG1eL^|2|OWEjyItxY&L3 z2i4w<$<2lC+3#3h{iK{7N-UYTc+jHEBBf!IaK-|~e_e$?q`e^afgOy}qli} ziM9|86^&0;G|uQD|10{B!ZGMRFIWy{2RoD{flK}96(&gZGtWLPllVMEd;4XCmy{ZF&YlnFv=rN>CC)u?EL2E*J8wG1iZp8^f6 zF&SlvzALzhIq1;@qAZe6S!r5}2z>e~dgY`B_vE}QYRITFJI?!GgNm0D4}27mIszU; z?J0W97Fk+}5JqEE~oRG4(_T93pc2|i6?T2!y(uy0`uB_#)G13^si<8E_JbvdZY57mn9t1z> zI4lNrNnANsT;zk@#6absr;13zzH#f#_20!#Vo8Fh51K8X2b`}AW_&sz!$Qe1gOR^w zOHEbJ50~m8h1bIbbta;UtXto4H2Fwg9ceaQY?OC`g2XuIy_Tc!^x|NUHK^)+2P@=l z5_(njl-)65&?Vzu;rZ|KxQN|v~nv)5)tV@Jb`Bb~>*zh|A3#6cfh=exXsJF4RQUDXEz_ahtU z1H=gEgofo{cZ}QZH22P*cr(S(m zu|ZKbN8ldBJ)VQgMiLR;T&_uW>c6b88a47-4ClE&VxcJNy4<%1>Sfj|Dg)ht#&M0O z=S%Omo{8_vc`YX@c7QpgXbSwe-GIMY)fP}V_7hwf-;m~rWbk-yJTsLcU=ty>+bSS_ zJg&JoqcnQ#~v+6NXLoygm0O@8kmeAbIQWr?3q#EWj+>%v-74A9gk31+C zc}HZE>s^wlwn6o*J^fBAXty5mn+@{;e_J7`txll*IxodN*7ts+XPvQkbvhqO=h*aR zCp?=qI)ozEb%0ZWgU{_PLEz2b`E6luXTs&=79{mbc#(_{>hN$>(&^llXC;_q$@zA4 zvC4?>5`lr5ur=s0ZHa+Ym_>Pk*VB8UdlDy877?4EX3iBghyN;-lwp=(4p1!Uya2Ub zN`|Blg0M1QD}+HZWigU|HaN`e4cxDyp$##VZe>nDDnPl5D9j^{NNSJUZxN?!x##(x z;7%HO=7>ntJN^%%cSw|q zLO|7U_%qX3g?PeZOJbZG`++*-y7>GY`O=Z!0k87-}%Vs#A7BziEKpf-5CHN+!mQ z=5`MuVdL!X$L|-MOngjc13w0}i{4q{(39c!Q<200R)*biRPxF@Ntw5tkk*?=?r|fa zWFiUvmFarM0Oq6>;%c{{RB+6+sYKo?aR+*oQd5-?3te!`EJ+8W$S)t;lbg* z%3=k)OLP1=m)$SWRXp zdg287|L`=`C;IA-DJ;vkJxH9n2p)t$TJ#CW5>&FdsJw1u7-wSnN`NJy`!%q&O2{o% z6`)u(Hi*VE4S(c*bh(1?Mh&M7#yUF;S5N{5J-~L6_rVPgU0{(9HQdk@uVc3{OHfO&Zv8*%N)50no}HE_U2?7MGd7t6YUCG z6z|}#uh5q6eF?H*jV@^=@!H$JSYDm~?C?!Gnkt#w1aS=Nx{ z4e}n8!jin7(e7nYM(LN)C#QzVEk2UVKH_71m{L4}^Zut9nR#o{%Z4G}pVNwrx|e?9 z6KnrW?k-y9Zf};z(eQGwK+z{^oQ#vl&JTVULRv3Y0!6|{WEZlBT$o_)6WY3hwp`w8 zPmu?qM52A!1Qwu1wyxF^Cf&aR`I4G^ycbTzp-s`>eiht zb(VMO3dkl##C`lATyl=*=eD=#-^Gip(v+Kg7Qe}=|NLL`XO@K)=_hS02SqoDU?KB` zG`01kFd)#6Psgv07~n8D=(7MAibNe&j$|oHg)^9VEn>S-g?O>b%ZWBGM$p~vV=79$ z#tCL)YMoQ>W<#)BQV3;`D710xl#A#6J=>$hib?*8!{le0^i*pHmWz|IGvC&hivN4I z&gL0g$5gzGd4K2!P%QPPxC0Kk0~wRFVfj<#1tn_%QQp~J60nRt-LUYGM}>2}B~%>) zKgy6p44$*!SgA>jO#6^5IwtT(9v_hIRpn`%0k_*ex^G&SP$9iH!e330uXOy)bKUuL zI;SwgGFo2I@bmp9{o|^v`EsZKFk~MQ){Q_DOL4tusa4{Ml#a{8V8eU3!7`-n(>P=e z-&MtEqr>c3Nns=Rn4ny^{VYW!wYR0awc0JpWF%P3h5t$^?|UdF;i5VpnJ%;k=ew8*H$(Qq&ZC57( zGb&IvIY+xta&mQiwNo~Ec3xQbPN_Vj3#&;byGazEI~H4%=yF<%3*j0|Q)?(#vZqrP z#K}JnB#CTHar4Q7^A|Nm(0|6&-I)WPF3MKW3}rL`)Wc~k&W=909Jhtv>%Ckp>v z_U?_YQMl9rJSLeT-copPUpi(3-#uW7B#e!o$g!&h z%}b=9MGV1O$y!WrZ6UX9|0#GhvQ6@5 zL%8#hXlOt=nam}4o0pRszCq-Y_k0}ZQer9gokm4Bxo4(=bDGuuCf`Kg&82CWGRMcS z>r$ZnZz4aipy^Nf-<4l^4VCW>@PfBkgRcIdLAk{BnZ?X|OhE~;Y?s+y9{62@nc5mm zgTV&d?>$<_gAYEwPt<^+!a0;Nrc6V4tah8%a`ynN{8^_McgIT1)8W(cj|LX3ERp{f z&KMxnq33KlUK^-)_Pq>RrdufhX`%TgHWpGNJKNZ2ojp0z+(PNA*Orpe%q@iFpi$3# zkLi$f8MSj^Zyv?z#F9Dx(_f2UaF`zXYH#UzKQK5t*_bG=l-1!(4;1l9KOn)HkY=7p z8h?JZ!d17?Uh?iA4Gtk~-(TvDtg-0LTu$P7p(p;)8pm}Cpu6gycIDFzAMB%Jk0{(F z3>I~`%<5v&Bxg3~021L)={})!yOmvjak^_V8GGUS0LnEHF`x^U8VS0!RqrFDc!%fgoP{Wf9U61^v34{!X7+TJP~gaV=*DR`QCzT z{BEun>uY)u{)OygG_3ec+%l){t18Vd_O+iZ#W#n4A#i>|9JEZ7K6rmVN zV*(?>o%YIl^lYTv(mO%zZ! zEF^&9BvM1DAXnJmJZGi%m@?BbF2E#l2r_#Apm~`LU#}jlg7gaRBAtKD5eWeTc$iFz zegq88sl@YfhaBt=Bk0>2=?Y>Ihl#RO?5TOnWEC_d9+s6{uV;za04f))b6E#Bi>k1n zk>7sz>JcT=Fr(h*XzjHOxs z6csD90zrweQ`Q=cimmI4jt-m^8B=x z3=7g4LgU2j3)5OgO3){ch#xA)#`#(Id+epJ(3yffHAS@%FUnB%@mqE+km?MRU9jW1x4`TzuE!xmu8oc z(D6j#8np!B-%-v$slcXBjv!`o+&Id8;yWUJdr+H$YKcTs>ujnA&Gr?LH$cXH?p@7i zRTl)L&GaH_Ru#V=Ja@(){$RksxiUQ9%nXKn$Lrg$t%WzL69I>#3-`qY35gyd4ad~1H7^L4o8p8=z02H}_1_|kXxHQrM37FsjXgqYj1Ek9&* zV=kL2HwJ`m5iM_`sj<}dNW5yXC|iC^?_zYd`W9LECr-=MwSrocSKs7s&AcZoPbGxt z=-U<-81x{x+}*H@UvY4LW^wGK(3O>^#>$XKD_%PL6K%J%hECMAm7%cPn7Yxj8gAqU zNU}E@pneLW)_{=lBK|4KL^!pv@aciVO=LQm`~tXG-Bj$g@b{4FxoPlMpfSw+Dg)3$ zK~;S}EmM3xJt!?xSAXYFB=o>;4*s+pm3@qE9%aw&+_B%N$1k6gc`FK3(=)G7$QZ8i z<NVQmyfE_?6^Zl$E-tZ;IsYMzAu8&M{*a2ts% z$osbIixaxz&yw?pFV-8&|MtI|^=|xNpV}hHQ5sioR-9Ym2Y#!2M8V_91KI8EU8PCSc}x{e9gC9$;%}BEnAqTVKt2maQ>wM=AFG zd@WD%{il>b(n@DZ>@SkW5#34*NoxXLv`|s84T?Sk~C66~bTJ=BA_}Bdg zf~2hBT+b=^ZBsA>tXROF%3&o*9+zPW!XRr)Y5z;kq5N=t9SC+W8%o?ppLpg^Yb}eW zK{b1P^cFOApJfWrVvKa$k`pLsY=V1`MDd z=!3`0|N4(%#F%r$y^(!K4^RaB7S`6-Beco~cx~hZqn5Dk#(4>DAaJo${_0n;NYaY$ zwMdc-v+!e)oidr2EwH_*irjInh(@c62RD|rQZU- zqu~jsS$?kHLBI3mes84Ph)A!8JD0T?9eMNYU+1Vh5`Il9o6=`)q^}TmJNx?AOiy3= zb5~e-m+fyg;Yo72MFzMi2{LzsC6h@5xF>;Eq9Jr_9jN@F1VB!!`7`0QMd{3QM zGi)M&qSb4jG6y852HEi_Qnn7Xk{UVbYiNBp^R*z~7d zyR#EO1CdRSyG``)f#)l*RDSPYXE`erjk2>5dX;q>9B61<0z)Ba&%Xbp)pBG}dj^#n z0A)-}^Stfk=S%Ac2d9W~bry?^JW%OGwN;QsC#~obs4)aCnRgr_%3(mfu=D zJqWZo{aZhA5zmgA@UgDQBX10a+f^9I{^zLpByA)SmZ31;t@r%U1Kln_8pG+b>hlGc z9}uz3E{@iNA8OA7e=D8OB7y;En&+L=CVplgT?oId2CaP(YfkAqqM{bO;38HGOpAZ^V<({RBqhojWN6pz z?==u$UR%1(^%C6>N-r6I7CBi-Gx>>AunLJh>?WgcOWPGb(&X7cbXA*V3cTcNy*imu zQ2z9ueyuU^GVo?qSk41ji+u0uiqnjLeoixVMZ~^ocSqE@AGb`9d7`bK;0_Y_69muu z%oZi^;yoKie%K2ZN`D||V|kPSQS?y=p1KVG*~j^-5%_o3SZ*?At*6{IVTfCa1gtD_ zF@0AF5*IJL{^Un0>qkK-cLQND=@`iDuWw>d$(wukd3eT zq0^BvZ=f4_3HPLXnmqq}&F65Dw*o@w$4D!n|LW8j;pxV}+;unzCA0gwd+qjT`fJG> z0ro8aV;&@EO^!A`Dj0yPY8MOnxdO;ub<>CC`5FsFwhq5K;kW*FW?Tynr6PrYN`4T^ zyxo9WMihn6hsL9c?6e|=>+v^5rVLAR^K*a=vwRrW?-jiYr_`yYDYg%cN%_!xgf_>0 zcRx*v{{_o#|7%;|O*QbHu49H;Hd-i>Hsp}C!XoyShN%)J@qEcXq|-sf8k*125vJC` zVU(J&qY{6Ipqr_>#h!L7jN$`oHs%3+C6!vv7-AKtqq_7-`8(tO}Q-< z8~Rnyh2!IT6g(CPZ z<(MD3tqwVZ0`jw=1Tv#YhFG{f{$Vhh?Sbr~%&Io{1T376v;C#G1xDv~OsW{XnTZ~< zCBnQn@sANKC<*J9u%;THv?XDoHovKimz{)|Fs{Ypn+bVQ0EMMk(Yql|xBHGW*|&FEP!=^I2$V8Bg*=iG&K|DsUVdL?LgCEqQ`+RFnMaD z599X3S=XRR;Ik>bu6_vr*Ki#ge+^mJrYk3QbSE{L?^wM**yrMer5r^^;WLiowxC~?C=1JsQI|wpFvG|0} z>ETcbSrM%wmjwJ1AExPAmCI7k^pE=V7bN{GJs(h)zujDnigywczd5lW#nFh-0yjwO zasQ?%XuZIB>0=xbU{j3$u<*Ckvqr32r^YaP5B_(zt&KEGMn*&M#1NjCoNbP)s$3ew z-V~Smj=k5yy=@Z3ey+V?Jj8b8@KQ2^etJ0Y|v1+=2Zg4 zOw{c%ANvT`8Xel6#bxs|-)Y$%_9A~1fZpHi4^Q!8a!BW)RZJZT~ctY!N*Z1h>YB=;MeDJ&{Q3PnD=GKP** zp*e(?GmpnuDbJBl3rXoSh?@HnO*jPs@3nO3?Qp=oro>y5PyC(_|fPhQLYOrtbRFweJ5}NZqpG8 z_itGO{@@Im;vy&Zh1x|DF?0muFustUvG~0($+4fc-!rJcRgnJIua)b~f({n`z=DM} zkE~jKk)!Z4hF4#utyx_Gk>G_d#{{Hly#B+02L4!7QN#*}s%C5$6Zr`M_G_iu_0Y zXrz{JIj$^djDS{@64Q=WTOtT(&4t3z&iS9oDwF3g^23#eD>+WPVf9n{fU%yk_kYY2 zEmldo^H@SGtR|FFOz)T9;qc=1-`&P24B>$q7AZ&j39k_nL|o$dzZDpe)yhh#%X<4c z*{#5uWCfRJV-x6a3&GfB&z%;QuX(8j?3GTS+GUG|DE+cX(trPGyqD{M^Tc?E(=(=b z@KLf>FE;OuERhIotA5g0h&tQrcQhtWIdFt~cx!f>7|aP)o8UKKXCt8yes;t}nJ}rp zQaA}#9f_2AU%(bzZCV?8Eb$SqSWwzI`zxi`984u?W8=C>)z%@cX*R5+1CzKe3D8o+}Skj_#Kpr!Vy?^_#YbeT5hM5rR_jkK-aqKBCA+hA8^Awn6 z73`T3m8?e;pZfV%lg2rCM?`4Jzrc`Mk3~!g;s)PnZjE2hlxdd-0p7O*l5Bjo67D;5 zpZ>nTup5Cp9F{G(hoH&cHao&D=SW{$;2TsqOK2GW1rYB$YM)BJNtf{jS;**adEFvC zlCLN4>dDoNTjG;`TJ9O>Cd_hd?fVNY^BDq$ya?g~L?9=p`W$Efyd=L;f{z9rm2}r+(OJ z%CZl{TLXACt$_8^q582+bA|aV==cxn5^g7etV557gn?-=_7Lo?z5{8RVjCcRFYW{@ zCu&thWjWgCP-3M@VTAYq&5TxB-e-VuLr(=QV_^}AycV3AC4)1fTmVJMs&G|?7!A*D zsqi#mkPQ?BZ_BWZBQ-rNLbx>p`lgefKA?T0Z^t=f`~f>b=~o5F6}FHbq6P1|QHhy8 zpGL=D8xil{Rer&{w>Oj_(233l)`y#5%8#*INui6n8o=@l8OPjM7 z1*)Hfa<=d{nFpWH*j^*??SXhtAHZb1uQtZ}JRV{fuhZ!d9p|Q@^eUe zGHsH+bDVoV*uhrP?TsSx=AIx;W0U(9>(1C$N}cClvYmIDmg1d(j0NEsH0z9*wv2|+ z{!Zg{;f0`P@i)*&UqKm!IP?w;Z$KubBh4g$R(Rx)xu=WJD)wtUgP16ZAMJ$UFE<*}lu^07O*qrOWf;-y3{Ddpc@@7bwMH}vwzxl^9xSO6<~k9vCq(T?EvhA zy7Vmjw&pz4xhVxQU8NE^$&}DhE5lSra!r`p3?P_?-eaZLu zV=I*Tc>y7F@eA13k!p<9&^XRsJuerAOz4HcRW^2)()|hwfKaq&^j^!efeSr3o^!Sa ze04!Rt7ibR)v7S~9Q|R@j6V=E(RLlAKv*3Y!64?4Kjd?~m!3N}hD>=DSQb)8+vH1^ z8&{7Z$FBuO9!B@H2j3e0_$ik!ze?)%Gtu=TXHecFKkl^LXP%I283@ByfV;w#3m$ae zm)qp-gG9Z+xGr7Jyv<-7Un?8}2I#(IW85oH> z3veN;0SZk9Hoadjt3GwKY*xNZu6(-p$L*Z#iX=;eUivu+I#Y)^yWTj9&sWULdfq7l zQ54LjC9m>3-cW^8v4&Znncls$xga zch6?>dj0qJ{o0mZUW%0ZHT@Vp_q5plHMQS?%sb@j!%@8pVr}^-kHm&?3z?tN^ja`q zIF7v9;VBj@6P@Iw5plKj0)fHdH$<}+C)+Q(dW$8G*3zHLDB%)!cMV$(M0R7~n#ZVc z;+I&x(d#KHfuH`#0#CeP@$xf0TK+O9tz8fX)7A+P8`BREQ}j#Qc+Lj(JDIi#X87~G z)XV^nPri6J`kI(CJcyMi{1GdU)u8^Q#94i@p9Pham+((Q9vlw-RvTe4)-T=kI9U$U zjA>u%haow0HHVXMK*=brg(ZdGmt>AP9D zbx23GKEc%XIck<>Z#Vi>@uX)QH?zC576dW-f|ny#&V)2(#NnAysgh^a12)8az}ap5 zqwVk5{QX4Ij-TTt6@IDY_v?7=TY=RbxNALhP9HpJ3;HelI+9O)npfV`MM2SAOl6Kl zi$iTB@lT{z?$S{gYczr`T7tYvW016cheA;RHl`A;5^Bhz(j6A6!c{F;;*fH{CZ&b@ z8>g!CCYd!UX1VqMndM?KoE$SQvWRb-r4&|o`8$b?nlpu;-_5g$RCLqCc!cl~Y7#{~vVv`3b6}@qyjmZ#@+dyK zPl^t9lU-nEr2*s)<19_}3Z}vMMTC>ec(bNNAhOB?%}Ex&>lqNgdq$sZY0>M4RczDK zmeaZt;AXVLcRlJUe)@dpX5Sy&0E1op02z9E$L19(1BW_U!m*0???8xuqC=VGN(@-) z!-#EAnLDm|8}o zIjftCWs(GD-?Cn^n$3nf;cX&I20j;Wy@TgB$iw;S>W-suiMS6*62pc)%`g}Y#ZAvQ zn9qcK_=LHHOK2JSqS%rd`I_;&47cBJ%Z0V2o5qJTWxqx?;EOH(zpJ zQObzVUjL5t`fv*=uC;b#3oC`{CJ8%A$$X13Yk37^qp)5^-yvnuSuIQySN<{c%$)An zw>#7Ktx8_M^lL{L2;?(*F9hRkS@nDgNfk||Nv7fzVbXbf9bH^>xypV(d@CeyEJ8ME zF!oa&-Qki;oP~i7InnK~jNksQqen2+N46b#rxaP%9L`(&EuOoMn9DVhmS$Wb`oDg> z`Yp|*xMBcjou#hPtTD4Bpb__~4u{-dp5rzSm4xb3L7DV1qr|&%0^-9mC341HLWOK< zqAF?>iS{JE`1yelcliCP*0IWd^O<6lY6h~1AG1i14{m-K<|2X_jjNhHPAyhJlU6?a zftX9eT${hi>YENyYTv7{4j%Hh)>MOw7;EZx%~Q&6q*3@NEip(oQVk3GG~W%%_0k+A zGo(gYhr-Ui;TGTESzL~#jeU6=dKebE0^EkQsXp?dIynZZm;ExKMyTq>camRmXy*C! z+O^PGTB^vVxu1fz$HNeWyGEJs2nrIQ>wWa$s{kN>SRPa0@dSC)~1b8Gi(fc$^gkom)J9k7yIvWD!l z&;?T^dc8}|TmV7Yb^%a$Y2Lb$VSyXIQlr6ALSny0_Av)~(Z8Ieo0-YXKk!79`{ z4;6hQ&1V|xauN$o8zo=0UC8c)^2_?bOApnz@3WI*Hr5mj&$5YSu=7-E!IL7080?Jy z5DW<;%-le*t2RbzCtKbANrpwkv^8C94~F`a?GN9FdTLDC0-{}rxEfTujYs{k%@ns2 z`~`_LgwqeC_0bC_v%HYS;P^pQnujrhINj)WrS|flWP`K-yCuw0s^n!LN-Se zqLPx>K34KQj~*P9OTeS8XWI@#ki`3@o14l$t~X1@H7_HhltOtyXkPly?d><783r_m z#?ekWx`7lTl_o7Gt3&TT_gyCZj7}Qjns2?zeGU@6adbAlID~h!)Mr$)pYLx5(EuA^ zu%U){mw-%t07@DTX1?N?p%#Sboa_`yqTqGY=b00)O$^B6_{JBVxx44gw8Ysf{vodS zaj^Ih$3piNKiBu&!o5{PINd^?Iter(QxI)*+J=XI<(mOF?L^FZ(u2ptz7% z7~zg(9Dl%-@P-A%j5ZizRCOw)-&s{tc{a8!jCXEo7!tL#+<{7I_`BzsvLHjm8KiG0y$zkJpoALLGhb@Ki$*@Q3lM=i1-TTIxE`=N3`IyTR zR;qjkSF3p^YZp_8lceb}ARXR+n_1#K>GAo2GQHHFa>Gt@$X_w>>V7)PcVpQ#B{}II zD5$f!a0qBje@1~r4n0wJfO~E;6dKjO@#8KsmWbS^iyX6v7wHj_Wd15Srs7f2nF7Tr z*B~GJ1`N3YR*Qw@erq-o&7Z_oesg!{9-9-B-=tv6@^J!}_xL^slaYZjgkN4`5MSlk z^^n>yX?(-Xcpy3bjD?=S+E(lI`{)!B1D7k_1oGZmW1^!pWo~cN_YZa0n+}OY1_$OM zvF#6O3AWnI_)Bl@`Fl|MH13kTS8{U?GM`Nc+Itt zA21=Qzutl1#Dlv0O+bsLdCf=rD&4wliQjeuw@%EGw_9 zJ%n#ZUBPLqO;!Sme7!_=fe271RCv!M?t4};urA(`x!uOc8ow#MMjwP>)Azcz&`(Z< zB)ZWbA`112%oOBI0zm)m9KS7Q2fuGY99D}8<6<(8`4Myq-6q~89+mZ#x^bLbNF0?R zRvyg9EnxC`BBzmMm$Q-k^a-N)yHBJN8=`pVL24nRaoUE*ttS;E5N6bzgssMDA%8^E z0y31#9z6SpC%^Ggb(Ng-n6O+pZ{mhHNJo`q$_+~dTzcWVb^69@)q_)I3i|0mxHR$a z_Q8P|r!kJaC~vMLF8U{G`?6XYQ|qB5+8p0OFyO2G0dp_?T84Onn%EQ;tGg9nw*WHp z{;)#({8D=Qkc2_5iLk0!9^#`BIFUiM{MlwSw*f9amU#k+7-}>96Y^$O^qVILa6yxQ zF9C(_z;cE=%%Mb2>zmUPQr|naocKIN@BAK`Ez-8)cTtr*t6SlMrG^`bkng4>YvuO3 zrP?L5Z!v28txYiu@oHZTM;IJXXZv^=jp;=C+;h5v;1YwQ4@q!zOC3Z|@DhF0Al}xg z5Uq8Vu0^D0fk4a5GNJTx;P}mJ6$#G6EKdg8yQmtM*qUHB_Rlk# z`kAyPM|%Sj!sKE%1=sJ;pY-08`EdaA; zZmtBV&{4DVjZmIfAbaRA`{gn?05K&tesb$hQ5koc+LDC@p8Bz8xQBG=e4!$7ryWo} zgnVBflxw*r4SXy(E!Mb4o#q6VvuBACv2eGv!PG>GNWhm*55j@qRu(O#tdU%~6WMAy z>4mndOb36&!FjVOw8U3Y-DuvY27mmz`%KD-_9P7Ij0ctZ|$@U;B+L zju-Sl2*1up9|}4H{%9wVc@sCRL5=$9?Rmm|-u7|RZt$$ga zI0J-f9yyA5C42H{m3y(bI3(fh{*hfbt*6(LZT|F8qb!0Qb415iB5TAGaf6JTSrnlgvAsYd$5?#&ylL#~ZR<>p z*ZHTvN(M%cEPH`PDgT(n`hT0zkI&;UQF6pT_BmR%OMY((MSlDsuI=YyQsz zKOj{29~38RyM474xolfr2#chy&E&Oe9x&lO?+WF>oJf9Ct!~^G zU8jx+Gn*kNSmV}4X9U4iQ^5%uAgFwLy^-SA_YD1LBMUDC5#pm(i+v|qNUg1|#4>Y} z*IKFJs)9ukZUyQ;1Njo~Q^>A9-Vkn5jG*eO{iH#8&r%T+SokVggK%?SMaPG5xBOd*Ite-g# z2lzr&G5FqH-{;9aV*JEwQcK>=x|KdT_X=6g_Fm1nuJZ3a{foNwtBN|e~jhl|dGBbhMoqO#rB^{(&V_oYBQu90Q(-Qx32V0j-#v&6u$ zA=~U>8}l-_E5}BLh-E;IDGJxd&q1@zf>oD0V*fDaQzMGMe%Y|qH2SaN(}VF(Jm_p0 zrTH2|%t)?Kk`lS-;=a#^R=reNb`q&i8xC4e-6ezPqs8DPUgGA7QOt-=zWgMzbS2X= z@o*^~lD$)54vzYJIHO_Jq?vfW%2YXp3UPSg1mEXvLvZ*CoIBZHQA&?ncpuInzz2_> z7(Dw@7lYu7co58e6fpEW{o@x&PB)>;FSu^X1^5-omE{EJxKR6VUi`M?u|>|O`TZu& z2n~Gs_d=6=&fX@S(x{)&HZsb%0|^#Hx46itIrx6t+L=~(#QyQNl?NpoI6l3|ZjLd{ zA(1Eo=_W2AFR5Ck54Y#s=-=ySR%2fEN?wyz>)BA>6QXNhjQ?uI=+}m{3CbVUlZZU` z_u3`T$~bF<$GVX>Od_5hVQ-M)e@@cr@!@`U;G=|FvB0Zz2bat04Xi#)q3R1y&5~9< zoJ%f+hYtwu`ws!4j^%^Wy1T}RKIDm~5`4k`L<71k-;UtAn=Ir+;)(*9XluNea>fyFL|y_Fu@1qX`1u((#&o!K~9Fx>8nTDrN*z# z)yl8y2?mrMk7|^Xw6Hn^z6wY`+3zB!dW!t~r3fM-kJTafV-}|2A9f_if+T_%;?a;N z7o}#uAWh$6HexpGvqoA1sv0kK@KC{>E-&fVby0@xHKEkqW(R zgaR^wFs7s)8-IX^Gr5r2`7Su2*gjL54NE=g9XSFg=ju$i?D6|7yZ9QeI~fVramgb) z5ZZ0S$6Z@23%h(>Vb7AtPqM;zmpXOw(=SPI+f@RQF|6lZvbi)xByz+KI`B`-ufqa6 zY-1~)MiMhIB4=4`yLD29+s^HOEqPC}BgGT=?7qI0UQI`v^$?jQmSQU#6gXi#F7vJ% z_K@>Tlj!b@%P+hyYLi+-!OF;SuXYr@R%(9+b*G7Qm7-N{k>Ox)5V0|jOZEjI4OmR` zHaSKiYO#xtzKq=O8tUpvaUgfGj`AetQe;SpBq{ZTTt2yt!xZ>E2-lJ{!Oy&`;M#`o z@5zi)B#4_lG4x(Z<At7yw6Pgp71pvy3yOvS<4ujWew2udX&EQ6?W)`P3)qMJq;6@0>@hnkFPI>617D2 zGn0sst>g6pF4OrhHpWr6nfQeC>I+NE!bePRCH@v)1609c(j~WoDes zNzb8UWLHe4ubNHGE!^m&71Vf`Xj_{7enK{Z~- z_FnBF^g*1jI^;19?dCRdY{xGLW(K!F!J<)UFeWdiA3?+rHl+WF&^?XqS8rAiWxUUc)nUjUJW-XN45a>`>fOFs6%C} z`xM69c(=X62fGl2C#Z;i6g94WVUj+;rQ#1Yjo*d?2K+&hc$yb3lUw}Fo9zs}H z`63rn=^gO!>t{UCT-wj>7T?}i38vQOOo~t`Sdwa-jmX3d@!{z>UJ*>vevs6@l5C3Wj7Rce zd?!IYC!;gnWVkLH;v;cnPUKm$ZN$G&3X$`_Sx0b?{6aY0e`qaZG@p8N(1yc2u6hQK zKPky~F7-PO=?*sw^~twWl33^>b&C2??5%PMx;yWfHtcogqt!CmV^kPk&_>kPp^H^G z4E36zNST|wA0BjytF2=;Rh6G1Vv1nN^Q*%Rwx5z0B1U_$&(@4yxBJhTHUwpSRj8f* z?E-p%+@s!IYJAUuLvYN7qT$nwIB2PwNa_cn@A_nu8!&Wo6D;}NinLv+88el@Lg=@> zcAo)By;gMy%~QxOHS*#sRdKYN2b+7V7^%^5bez_7;H>@Vp7kPfSdee1_~uCsq~IWzojG z0&O{*B2P2I6BKd6g&xuQhc0tVuI@zZRggf&<=Os*^Lc}lQpw_{I9R^n6n>CgYdl-r zH-wB}ge8NigSgt?*~HZ(-jj+{?U<3+G>`-Gv9IQr3qt(_E*sT+W8})y_7}Q+Ag4O> znJ11n&WvTKsfX-rO!P1#FlY@rhfsBdqWFbilhJF1El3*(_XSgNY6F0a)d#2J9y9sf zefT{AE>fYMof+&d`}y=Y4sP-Ddr?9r{!vtwTX+w_kgbOjjEL)L4^gl}F!UsAEsV(t z6-|g>{&vM*fdL=qlKhCyHJ~bIl36MQubH-)Lg}t455wu2W;;4Tj~#ldT8G@Vb7B+aWk%#}69ah`jXeLj3y|Nh|i5ef>CGjUR4ov0ihAkTZFZ1koU zfD%v$F`getsc_GC*y^P;8yr?1|8c$Zu7PH2)o1b>$KbZs;L|XeZR~ufv7^z9 zo;>_dK~!fK;YP6LM#&|`nDEh4E~|0Fh#5;fHv=aDXAKr!L=KM=M(wPjFNb|} zF$k&orW^D>=c|GYh-2o7@vn+EG;h9>g^=@N(DH*4-IrO3%?xuTg>MM+)D;N@YrVSo z?~kp6%HrBmZ@I_2Xp!uleg6Kg(g%v7rD{LqTN>K$Zm0IU@7mLa!)hmoe^0(h6?-Mz z!sRu~b|to9NQTJ4i7yjrZ&(;^a0znBRl(RQ%%1l!6Z1nYPJlv`yDTp~>O{Cx)=+k} znE5uUeTJ$Vb3kj={>!U2A;|*AE}^`j$WtZ^3IZf06gu0|6fZp5$wfc9;sirb5VHaP z>Ti)Y(ws@tu_C_n4MkLwj|hg)wWyM`C*3kkp6f0vy@bA7vJB_MO;lh9hf(l|kFyiM zA3b|9J+w5K(M=X)$l8N9$Q5u9XK6JBjd4zEl0u!R%LzwD;;GX z#c+i62H_h%4}ZVx+BO4on`|f6c2@MLHmT;6q##MemGP;_2hVzoj(I;;zrZ5A}&`Y@co~v{>s}hjo*kA0V+$;XObj2SmVF1KpfA_ z+~US$nHCK|^G~vYbW)Bm?;c}ZijMfLm^&XgYd+wu7VzLb z?^|u^@fz;(M%a+y(SZdsJ*%|F!H*eVW^{9)Ao*d@eUf#zVY|xK8fw{dK)RQIgGws$ z9Nl|1v;6y*7CPdXaVf{TVOfSZd6l=yh34)oo$)XiCQpaslpc4F+ATt^{iBp8@+cv}Lbx|nPsBy}i>rI!|3U2f_jB`TnQ`qfN`@47F z(fElkH1=(~koIe}qR0X@kr?{&V?qc*(_KvowXlN~X6ei7i8GqYQ2W^vJEHJK+XLSx zYc;aV`bVTdZ1_Ws5L%&sN+FRQB3sr}BlXF>i@{6{AMK=^Y*S z$58pIXN&DV6kJcagt#7Yy{aPcNP0!(B1%?Q1i1u=FAH!d?i)W`mZ+W7gwpLyvB;kHzc_a`JMx{`<^N^Np7 z)71Ogu*jz}lzhr>vg2M{=wNsEcjd_WC@KZ$7_7}iuM^>tCK`Sd6w<7#ba^@Hv&s8|rQ5)f!;-fX}w*`DJC(OY~Wn;7yBsK&M%QZIp@9`V4E^w@$^ zo4J6%;k9@RFzh);J21cF_R{tL!66W@V4&(vC!yfR0L33_>&Q5bp1bYWu3*V_4*vUd zRJ*DaD=`gfo^~0D@HdRS3_PwPljgq}J9#j}-ldlb&(Nc-zSa}|kp}=cQBm0y|>K5Xm+cyrO6m2(1R zqbo`eoj-AIcsy#P>!LMNqwsl=n5_`QA0QR@FGKUaFe;_1=Cv$G=VPoY;u6sw0c8!d z5mN(GF^gyHZ}HxfVgiNzvBADSqq0NdRNehaT1kt?Td%x8Z{3L$FDX{H+li90+jDL0 z^dk5ncmht?W{c9=#~6J~LCXt0?N3~T5w?hSIyG#D6W~yb0Mf(pMxVB|IMMyP9_D(G zLM>w~&EGCc5w4tRo<81cV|r8USG(Gye<;rb9Y|p!hQ0S!xBY|D<`YtMjcvTgvvURX zJg8)M9A!+Y6NHUeqFS1FJ<>hRSU0OL{w@4!)NyDD7h#0#q6TF!9gBa@{|IjY@N~Ys~GUk%0d2{6)wZ)M)d}5e>n6Z{eBwr4*ZPPBls|BhAG*ViVmXA|3b6pC{ zT#YbWQ?IFOw#mE2=_DmMHOp!RgSwn;_kp3tCl%ZXD%VH{@9py=yK_#+E+#UJ;1CJY zki&)f}sXkMK&bqBzD@Z=)k|ZhU?f|2}Fd9~OIPMpu#r@eo6|cF%%24Qv zzsYoL#bo5CU_(x*Bm(?|fO1dSw^Q0Bmj8DRkZ>D(-kM^|n=vTRp)$Yqr>WF>;q^Ja zb69J*ZhQ6%!q#w3+CD>SDL~Y4wZRn*vvoM)x+udL!ZADh!l%Fx)d{oL@+`RqcVEs+ ziR98Ggi*@Ct@nG3bN2%mDVprG$*{Wgl@{BkP4keRtvI)pcsg+=>Dtp%ni*1Gr-JdP zXCjBF2C6yPszg5RpDU;khoZMnjqiS}>^R%(SU{kPbuA-JvX^l)UUGM6YgbPCe%On zWZuK`cr5d+yD<`B5v?}wS_1?WA1UzkhPa&&$gdRyl?st0OVnVnv-prdp{f^b>Q_A; z(y;Hli2n4ocHfoWs_tiN#U#CFOo}7@#yF1C@6{P1wOV33C+BfgANW3LSLuZzqoQR@ zA0yn2H{p!x4!=s2Gb@Vgu!F1~M~0!ajNhvW`kFJ60u3Ac3a};N11qA34k#v|&a+I* zL_cEhB~WH5gTddYc4?#NbA_Z=5R9wk_5vZXysaK4jcice$Ab)EH>+dLQql5gB;;fA z5wd~0<$_^6L72u@fLePFppVXTHlM-(+^MNNW7kwVp9CYtZHx}>7-X;cT*JwFTK;jELM}?kj zMk#5ZqqD**TddPk`S$>CTRYQE>+!!^hR+3hMh5$YIzM22$ z^a);VDx2*PI1+|}O7b58WRu4Lhg26Cm|O(kMH6m4?xXAmSr8h)xhqAWq$a7Q9tmQI z1Q&3%-}2y)^Yriq@0V=ACrWD0g|ludq~MPs{>QzfD?o^e35XfE8E={{lIoxRX~H^HME?>otLEBsjT65%c#MFWoYrs3S<`JiTKzQxq(?%R z?o)d&&yShV;B%Ns(LJG2tadiw^xKGuT6m4nrZO*Yr0GAio6__T?Whz+9i+&U{sn~i zCZYSFh=>LJ0=pcA8ryfe-{M9w=@8XQgG*ri8?nJb9{~`p2@GR%_jB*))85r3o!qOq zk5`2TFz>|7Hc-c30b6j^lSu|F)GoBX6NJxRT$ez6y_?CQACxP0j-dSTIT)Me;Y6{b z5D+GY`n#>g{h8yZ<}w zn)7f0w3mZ$v-A=m7w$&WLR+bv8lSfXG&q&|z-!)7>u@&xaGi_yIX7q^m zr)4Sh(l5KctYyMv-9`8|1s1)`=ZQjKX)AjfZXrA2YG)jg83IiDfsMpoTM40 z;+a0dWx7UEG{pn>A-Eu)C4C7Z%f3vDUM{Kx01-Uu0z?x+Z6j|>%4w+3q#LEcZ*h6y zTmTixNO(a&&Fv7?nS_j=)qyDW+H1_JR40hI;JRPfWmWh-vk7~%L9_N?CN3uW?|Q*p z4Bd64gAZsIDX+rzPqNGd#^h@sX!F*-=52Z2zVpkrcKMu*=^8ysKK2+$1avkXA_QkG z2sQoyA+aShwNx?d)H`8c&0}xwpKW00+?0y5h z@s|Ye5IJNB`VQrL!N}AB<(k^>U`H=8G($zjV7G$CP@heMckS)_yFe0k93j@oG@8NP z9m#6trct7V31SrQlsMkth};M-OyMyG!UJmM)PB^3{dGO@+gAmQ6i?=Ac){rl=7Xa! z9HFa|(hcrN;sOBQtemLLG3|{@#-lY7z&XFVFh3UDx_u|O{qJEg!rafyo{WqlS*(A0 zV->zDJol8j`d)O&)335@DSP-uo-YmxV3&0}p;cbKi@WNtUU^4ANZ5Ixeky}i+8r2P zqYSjzV_{D;9zs^YkF}aH0*tv81WzJr5U$9XTIR#t%v1WrP&q0TD@#O4SxwMfk+ePH zmRSV>MJB&ka8sSv;uv&Sl%9?Lz^i6`iiblb^!)7Lk3OaGx=jZV)YDS|T;-;k&%@on zEWNuleaBky77$Uw7HUI;<6XjqOM#j2bPmivGC&k1r_3X-@P3t@!4qyC_Y=6i^jqi+ zOcFcYQYS(X*WzR%lX&!lGrsQqq*d;*2%nz3CdUA=CGP5WW5S2SkRZZ8my{^O4*??& zo`sa}+{PZ_-??!x_Z&N&jB+|1Jft)v?A^A3{{r;4ZYp}hTkUIymtF@>&p*a7WkUe7 z$7y{O&*Bz8L|B%%43azwXfZYfMI3Xhzsp%$$4?Iec`Z`ZOkjm-`X}N)9xf%zGrVj_ znY_+k4Y2j3ddA8T-Sh(cEj`_A5~k#@sv$DTLR`O=0ndIQQzab(p};P$1n^y*TB&6y zG3djnj6hv|1q4F=!z&O%en|gu0Mf%RFowBj{kblU%{||bz#qx!dl_kiu~;|An9@B_ zV^P*LfH`Ai63HyuN~)(`_-(SUI7oAa3$lkqCYLrj%HJ7cY~nEZWyFx%XRn{kv#c(x z1vor=eBpcNbvtS?>K!L6e-TvkrlGxNBiw5_9kbiDEPD7m*T5?(!lZqBA=D}qf{+I> zY4_~4fIxLos*s&i!3hI9`%C;~3QlJ<~ly{xg=)P_#{|gtO|z6$6Hm2bJ8MTh|zT)Ta|q zG01HTeN>_J`>yojz(u6AsZ298wHTwSR1X-IPgihbV|n2kdD-OQ9~O436I8{$$gAro z6kaO19K0DC%d}nqmE(2EO=Z{<$v%Y36ehU5SZ` z1akoESP#s?`*jDc85XPDT4XG%m1~T=!mKPEZ;~dh7?~eW$M-L@^R@=;%--Uz9IRFJ z0B3}+!HIx!ZYsIYm_}Ig;Jmik9`Ppa?5bsbavLiuy5bU3^sAqZ$r~0#Cn4mLUm~kD zZVf~Vjf1{p29yu@!Qa8XBvW}8;bWi=%9wHbw!^IP9uU(S5pbyFkE)P@uQCVOL8FH? zrrniyGt6YtMVb^SrOUHFp`_JDGu;Rr|B0rGi z-^;QoPNJ3PV&fj*1&4FC7&FG|nrvH<8n43P1Az0R9bB`hzI&iBDM%6+_x z;eG=AU``kDU?X(4YK-J0k!RNIT3j9o@*&_ao=;06_2O>!0H!5zFCm%mgnVsyVLUFs zKv}6Y{UZoZe-9Etpabo$7R>GiOCGP;C?y0V8(ak15iY^#{IuGT5s8P}l8Fc}0>#vS zVUT-JTdln!IFcygJevp5h|xuA64#`RU?u+&Z~)Up`~0ndd`;?;c$QWJ2}-I=U=-C9 z&monIzxNWx3k_9nMwb9-g(ySn3HanCOeqn^6dxa%iAob>XOxwrSj6*enR6phhojj) zzwz)FYJ0qu{x|)n$O_~vz5TZM^Bia2QjXnr`BI2d@y=W+h1mblFsvB@d z+ZMN1G~Pw>7{B26@Zl&zBK;bu=| zv+N#0Vo8e?m@6$z`omqWTKj4&d-7|GdH}riK`kl}ahBOWj zH;#nl%mfMs>d?sZ?VpSYb0RZxpJUn&Nl=Z<5N^tk?ky-bBKRA*C7ipOVe?cAADQHB zXpC9J(-A9KwTcM;%v?TEHG@or9F5;Pf4H(HshrQMp``$x%>kU$?`8lWZuIvtFb;hE zGr@K_kZBpKM=wv=t8x3m&QDL$SoFp5cx5Oq|KUkk#W z_f>y>%L%yNv7$&k7h$Oin0fT&c^Ah^d5m=#I=3WEW&&|UZbcIvnW~`hc@B zrHgW%MJb_we+5 zh$brlfV#r6j97mEv=tMWQb+{-J;Abg;}06DFQyvRM!OorVz_A!oC3~m}hoN`)_(2 zUjo>!-}X}bLuLN)q;Xg5ZB;BUxr_Txs&&Plr7DQWy+IdzO2m{W#EtZ@1%Cc`fJ(lq z2V3LL>L+2Cq|al?iGj~Ag~(&6geN?TujiNUNklvk#9oQ5)lWegNV&r4gJ+!aDEI~% zqvTe*JTgmvMM>?3HfEo%e}HPVoYcnp1Mg%k9dA(KSpRZGjS zj|V3;qO%kY84U9;vTSSIdVG@Vs&a|xX)xLHPR5_P_U+;qOFpGqGguh+%H>K~^=l5d zKEhMSAL?^!sa#h)xoH*%K5qHX&zeUQOtQes3Jxm8p9j&0`}pu&osv5iqyba3IW>@-gwTM%9ywW zyeXEox>0Vs1RO)1Oe3-iBmc=SHLt@&s$AMxb`y$24f!Vg8bx|lD6(hbegnPfZC)?9 zTyk6C!YJEN=iZA;GZ!f^=_e9S2-G3TNF&1c01<;u(!&uq`zA!dihUWJ8__&k zq}N;kEh)=T*jpq0#l=iFAI|b4aoKN@Ye-hIhs&*uZz-`Q_M0LAI)H*`SBknL{vY8f zGZoQ}UB+B~F9O4${GJ==R_9xg+$gEYxSQ!!i#HLnu;NVd4l9=$n>KRyFer=}rDxp& zZfe4UbdTT`d1NV(*(kVaGn0wK-cy9S1p<1#J0GBE+!|jdm+W&o5Pnm80j|E1ozY}NU-1L$5OD(c&TxbsO zJiQDG{X5t;z0DbAO^$$rp7ZK^Mx*a&zX+J3foQ4GP=@G{blx!)iQ^jzx}>jvJoIP0 z)?ythmJw_m67Lz@WUjxw4V}o)SmcZRjNd(wsrg7AX%ug9N?Yh@x*tMw?j9m3BT}2* zzLo16V=t4&N^8Xv+Oc|PX^uQ_319=3hYKL7VX9w$5|@~eR%e6x5Kk@odsnrUKIaXm zS9&S!_#F7Gzy6j~CdV-HGW<|V4!RbFFnVC0-$hjs^Cm(I`V3f>pm_syn}&4=$h!$Z zI)jbT1>t#Cu2Ub}(q?dCaaB23wWfPwio&cWZb4OsW2;ca3JsSg>>;8QDpG^F(-A{4 znH`yJf=_tK8D9ivrzr%p#w)^eh=}z1ii{(AaNtsJ>H&NDP1+>aGeLJ|DfkzdX5!n= zAXoQtWLp&&6D6P$7>rqPaFP6RP3q;oGtnDK1os-C{3j&eJC^+h17;BAEVX1oh<%ux z(Go~s^cU3N`F7Z_A^RT_zcD2CP@$Cxc+2E+Yju+E0U}9*hvaAgkU3@iqP;qKKzM#F z5x1Nes<|-XcW zWesY*-SNklo^UlP88Gos6m!$ zzl@Joa_&(~=&5W;l3%;c>*Q9$l%IHUC#KoG=GsMWHn~0fw!v;p5l8Q`8KQ|z5K4p% z|EY6w4S(=+n4R&r5y2}64wSlZE}sXO8l|Cuhti$IH0h?A4@K=i|0O`AMH0nASO#4} zJEYobRKuu}=(;%;2jWlLj)H1V+7)qs=5n+gb-ff}C7dR#8`GF?bl~J-`ofee)z0*8 zMBfYDi`13S;gxtjBcM}1|0mUBV_sAumUVKn094uILxn)>cR_hF;=dj?m)CN%zGXP9 z3{_s#!r+2iKYy9!0#c*nbuTvV!dhrRX5eD%8(NVXZ}x)q@6!j6%jU~Z))Yzquc?d- z(heE{4zq-&O@c6!a0aC4iEyopYkKv9lHN>~lx8CHV-@sZNukePPF^RHvGMh2((j4- zSQPqrBc;Fsv3|nhhhThU2N=g+Nn>+wh_iUlG`Qjaec$SSd*3sD`Y+h2sMqgf zr{wU_4;lOq%}5))_JN)w)LGA8y_q)240K=*Yj0)r?v8blUWy!#9>F z{Y2*A%1SD32RW2h8N=I|nzias=Na16tpqRA6lGp|w{fK{N|`lKBLKvz5(UmO&UOM8 zm3{&r0YT{#+r7=ag%kFSm^GJ@GAjDi8QImCU_HVq)+7u2DLP!JhPcuKOgDq?gH9*X zcR^+g%?6=d`ouC#S4;-?)2KH1c)4aI!sfDxox69M@Ha^2{-@Za< zU8q9lgRX4B{Q)ppc>iE5=np5%QewKEQI>Ah5u4!3P>tfm4k~JAu(7Be6m}lYak|Ru z#SbO>t|6XLNk_jC(5N2Xgs3==ff~8Xg#=#E%n;m23C+1H_{V1e)@;n^&aF2@Ef`5H zxjwxL*I}gY{kaR$PPHfWtbIfs@|PgD=x}k&;i%TDLBmG~eOvUg z^t$&SaPbPDw$4oID%ry?W5`U;W#_QOTgKx)8kS1PAp)NQ3*CmVO|-NuDL`qesY5c5 zj+=T-kwvw{Vm|a3+|edSM3WSSjt+0njg&X5d8s@ zz_$%-gwk{kXLMIE(!|>}6NtRNZCNn~1Cp)BQP2!Ss)f27ZJz~_s2jn=D;6iQ_m7DC zZ`%N?WLC)tM0ucwrB5h6~$qy-hwrjmWsxLw98ik z)aQj%^)DLhVAkZXz3{vl9&J+fWQfPVP4%UlpBX;M3gg*`Nceazyc~!+!iQw0EKJ{# z`xO7mJfJ%`1@co)A0;jWIe)I-CFyhqRf9J2E8GR+wxqz6w}AH3X&j~Cm8d&i%e=}j)rN*@X{7X*mAWfK*<*RsE?gl zH14%%tvQrXU`$8I?}`6{Y-YqRxi#e+Qu1S%Ix8knrs+^$n&L_=as&`Fji0~ec&#h7FB47S9AjNWb90#OC?#Ej+<7u4T|ebl9+!s>&xrD z7k?-<6JTXWNG~&kr-j+N70OStxm=Xoewdsk zMa$&PlvdaZmHZ1uRQ5VcG6p|-)a(s{dsYud{^rZ1-Z-w))X6)S`_dA1<)i_0cbh68qn7{n4V(n}DeVdAOJ+_d0yxa* zt~iw!a~aAw<>3FYgNEo3dvXYFNG4kL&|8uXHV9i363rJON>jn`YubMFmLz&cDw!vS zw!vf!4Np|qFU&#{=~eB2Vkxh$OuX#-U`Eoz-D&A3-J2b{4g}K11Vdr3h5Q3Mj)cBK zEodmE#6E$Hd{-SYcdp=2S{V;w)3-` zEq-pD*S%wHFUe-0ntee+*9w!=qSuDBHs+U*xfgL$GX`zqV|>i=mixzct1Wb2{gMR4 zuL^T{M3Li%4J(#Xuy2fSahz*99n(|r=i$RJqujjB7`XbRzjS^bLe{{u%;Z2&YJbY= zNuQt$p-c7p!64j?mk1TkK%vuR@>|Dp z(nZt^J3(U!lmLUZ(>^fAB$6^Jhwa8eCUjOO&`o)xTlhpWiGomzsTDMp;^!Cd$FvT) zv&a@(VtUL_jp}}K(rfv-$7%O)<*U~-7gogKIB02}KQw{C9=}#4>ZIdJfw|f(X|5>g zTx(I9&H?dQuIaKwy^E@(G!dlrP1!(C%4$C|eh_eI=4Z+Yz9u?h;8H@Mb}3MW9!C4P zh29|Cbj44MSdcsDCt#Y~Pb9InWe19D0#pgw zT4}@swCj{Y{TRlWgEkUPzL1JxB}IHmB^YWkkgkA@sqgK-X3+GI7qGoD%|!` z+Xbm~9}Rx#m}Li6GSphKzeIU^svLM~Apg`mK|*xRBrcFBJ%5Sm^OH^1aVt?-kAt8X z)6bGdMWDC9TyUw3b|MM0X#}U{J_H`I@MX)t8AfqQc=Enc%3YNbsz!s!3wQ3b2_BMx z`6qV9Nyc*G;dJmk6vWgM*ZSB<%#|6ObGfOf=0HpJAr!Q&8fcgy@A03*{}fdoYZ}n2 zF`>X%Tq;*XCJA|Q@f}C^$$nHXtAQt^|>4T zh_!b{=VZ@u_Y7>lKcz*1US>(c8Ky+Cbpnu@2I-K3em}`)xj+B;<2%VwdW341R}>7#+}Pb(h&^#SE2j|Z?z3v8&_bFLq^x*6=WUu{x)j`B}Ws#3p!6_qzq%%%O{ zT#$AtIpemsirB4Mxzzn)b#={t3zYC~ptW0ueyv&9cTfdxkxYk8+1YPAn$j!LV^EU0 z043-ukWXsE~8B)iXzt>`h zN#B8vJMEta*o9_Mm%lbN%pu(%C=vN;M{t-qlpitD^J_EKR^{mS>h!L8G1qcf zHY$rIygYn#u86|E_a(-9B4W@epsMAGCiuu0k%6JfVm_NwzkamKz7`s(05m6qbEGtF zTs4Z`590pc@?=<@KFU@#Zu%@LAzhEKU0R;2{b^uI-(1af=GD%WDJO>Z$V}G*455fw zPb8M!QcGd?w;BH*EmZQj$QUVEk~|Fj`_4nSQMcd$@nM!OC8+(HfYIKaf77h$Wb0(+ z0xT4xZD!@n_0}?N-`?rpM5^T*1^zMBa;g9L?0S)>bZItH1Ya(}9SwK2MD>uI&f}3m*@6|cVBP(otZ;b zwO!Q9z19X`a@q302x^rEJ|qumB$O&ulRw|w9e)y9}=4mr6O5Tf;<0*Av!B5jx0;Xg<_%FIb;JZ2wF4*sQ%SQwD z0Yw~=L|j%TNOc~91c_#$lPVXamd_q~U;ZQolsZHN9T%Dkd&*KR-i2?-b7~c3c4!%K zd%+!ON_JB`Rm*E@JgmT@?2)1)Ph`v9EX(hXTHEZx!swAS0a}OykV`+=3$(Qe%CRHE&wg?yg3mj|4D!UV%3%$LklNb{Bdpa{R|$ z2NI+J{V|v8L$(Wm_$R|0Hp;4d>7LBYev1qFcr~xnKW-hzwm;;B^@2JVJM47FAG?&#v`G@1cmn{J2Q( zoc!S7YXM?f%E~SuYJFhjDJ?4rm7v+Ae`9M@1crt#K~C~62J;*I=7U;M8k_SMdmBd` zp#>**TgTj~w8c3{|I3C3s*BAqFzvK(Nj$*U_ihd=V}aO$BAwJacY5)P{e-*hbwVce3V?gQa5T6l>3c z!|W^h4PAmDO5|iqgU~s6d8QKGnMj(5MRk26H_H@E(}T8A-jcK6ErulBd&K0g%oZa` zy?}>aIO8B=6iMa(xY1UqT9@Zn*DUYgEY3Dt8$#P-Ic9t{v1!;9id|dosoebYfwILXsYrm8ZB1jmYC>WtfBI zU;vR$)GHU9yk?n&+s?Vp(ryw)*R@Fep>L1YbB-WM1;}K7 zMn3!bxU+q(CglPCUJ6{FSR?&N@MFehPY@DBFCBynEeVu4g}dW7hU+P4$QYXJ$miSz zFx=Ke^oryOJzC;n=k{4A59&%hR>O2jT)FaESXtcUBa|r>#54-e?=HKTe|$p^6%0~) zlXh(_L=+5G)KBep@;MSu?38Jdo6)CEpVz?~r~Efy`)?HQj-Qe$oq$iDV9pOtjk0%5j6Ac_Uw;!Fn#w`pjrDMKAeVku3NO3ITzUxq@pJ5L=NO1D7`AN4&ANySv+>?0sI8HWAR<$a@ST8R(w!vIr~6UC0YQ>=}|k2%$S_ zhcF2sy5@KS7T0&07e2R6p)t_nTJfQl43FH$t(8&@4GoTKCbg`fCVn`yPj52|zuVw8-Ep9YvwMfhqfdt{fe7pUl(;d_n|M3F?L9X3W zTkCfq*jdPz3gKCc2rBqm$1hfPk_4i}PXyA>@p!e@DEl6mv=%+i69G5a{qFkQ4cMZb z5iV8b4KNb|C5aHRR3Jrr*P!;P9ttD)P1~3NVcP!(bVoe^sA~_v5^x92Le5c~fpN|e z808k(XVsoeO6bx~ff+&b3luKL{6Rv;@#jXh8k9Alo+I4-fK%7k46t(( z@Ap8)Sir*dWaT%_trgSKq-Ko*A|&)KiIw5}d%g1~auyny9oSNEBC-g|`;KGT!UsS> z=K;DbyCckSv_eGl+ zW-Xxn`kMNj{e0zngJ{IGWNbB?8BybW#)*Gk90x6Z2_pAoP4~}uB$@juFHtjINO?#H z;PCy4A?IBHy#^LQXV51PZed7BgwgV{QksX2PD=*}R=q@h0C1=KI9Zx15ADdOvUqF^ zr5=Fn_MFW5{LevOu6@ zHe%6s+2yziw-UJsP-;to70;aCT$aqD>H!3)Za_^}`Oj)7*&C>4M7=dXDScQ4Z5VW% zN@CBR=1=zCK2b>B1eKq+fJ6D=20U#FC zL&JIZ1CR`I?!?#ke4+`M=vMJzcmRvS0|1ea%(M!%R=B(N6!eUHY@kG)jBmaN<D1A=i;)opJ)!S!Q%2)=X1fh1KwD^wK$(S=vFOzxc=pl4J z3K8q&_l{x_&-zl~Kim%>*x*8cB-{Wc_L}(hHse3g?&30{%xXOMug|}Ozgr3Ac@t`F zG=39sb-f|m(M#WECJP05glO93KSNot0uq#6DSk$Rwk?R`~>^- zNI?pO3EM5Zl`265RRLIj0__490t=9IIeiE zCSxZJ*ucU9X|lfoJnUV<11OCBGgkfAZ^q~Weibw_3b9e;YT_;}%g64Jbd!J$n2D~s z+(>JP1Rpv4X3Yj0Yi8RRu;g?<-6|MZW;2seOHhrWZF+!Mj(FyR^e&u%u zK^L)Lz{g{PkMHi2EDGln3P*yJhjjq?$MON-96wyJ&Q@-e*B?EAwpD(_XADT3#^<2c z|5`D%h7b{8lM&yX{J?4Ag(L&`E(|C){|^5-6~W(?*eK$^I7{#a;pEo9HwVFSIsiS# z&ZZf7zV9k`0<)en>=6M|!eod>0SqjhBgbL|M1;J~0fL`VUkTB-+si%|`#X87>7;K# zg8u%mI@nqcKoI*3((fwx>JERtO&t=y-qI622LkAS@2~epH7j0MdmwfJuzHR?iKuhe<`8vz@q#pndw>b;6F#MII0X#=}qM*{!5_tzq;Dwd=lqf4W-dgOvLkNLLBKiq=*Np!^xoon8@B@?bo~Pp9;<&VUskCW(oQpZh@1) zZp6}g2cn(SVP8D$p#()*o`6FpX)b7Vb%LVpVo%-*8d5a@2j8^~^4-lpPefn`oA^ng zR`>nMkU~s3mA9GJCP09jo$K?o_w!0v*ONA9*^of*e4HY8r7|p zt1jJFe;~?Lblz<_$_(Fs53uYFz_J@-fh#5Xp^eD6Y_SFNITHEy*3KnWT*y=#&; zQuY?*hg6$8fP>Y!2FjU9awBLKaoJp%iI;Cj@h!cBKhX|F8%49?QKjyeKK#=P0MWJ< ziP9WZo#G1tS`X1GihT6ux1VqS|DFs;wDIEP=^uY%-2%Dztr#cg6vH?gLj#4AqCJQ? zbU*4K>jOU~4BnG)o(zZW2+AmW)q?F0w57JKOM;X|O@!8aig{wEA)?^_LYX#0LM3df z-QvHY1XGb4GSaE8WUvZeQ6)pinn=O$McBZUtp9&62M-SnxD?{w@&3I=52y_NFCHoo zcD&cyA<6f{us}pco`t+W%b{RX`hTBcOP7!W!wuT&WTnZ)ib7m&z`N)|j*6_*>2VNu z81UDKo8uzw`^_#C#NYn=e?K%)s1ziyP9%V-7$Vn_gv|bsy5J^{%D54N6Bd<~hY%TB-FO=)pnf7<>5{@8(-f40l zfo}*#RG}zSlGsSrR!opQ4e^~LV*>*iK_f_2Cv9-%%n4EAZx|BfL6=`t z$LY_8_j;iDlL2Tu$Fuer1MIMI;F~spnU%W7iOD=f}y$@Smh7iUtl2Re5>kHAjTTZYGca8=QJRWZd&=!|%UI8H47U z-L}%6CEbGczzl^Qxb%Tb(KoDQWaCW=?=OWz0~c3CwC$nR=nV~NQn(2QrK z?d#lbXe$(!2u49GmhbJhn#A~<-e}_col(#nOvHa*e$0#lj-qTdoknCE=DoK7aeivj zZQh$WGbMhjBQh-Gj??|tC}Zq%gp0eq_qLB0C&xJCYgm{Iv6cRB7q_kyr`nzFrnJ5b zD_U^vqceu^5!-`vyvm}cGCrk{vq>A0nm&f+;~*xv@=Lp!b^y6_1WnKpw>G1ETU|DH zC4u#7FA?#XwpyXlW-BMrV>BW^-8KR(5xib4FHR+^71IoAeQ^((1MF&DUDM_jmkfbD zot?jo$8$3-1x;E8isru98oD0Ysn#;4VOKgWm94A0=9a7~ziY#0#o3L1^J9PU&lu~n zce>ay&^LE^i0c#t>z@qyym>f{(@oU#;OwKVOgN5<9%Cvln4HNS?e_$ciL3d@~nv41Vrgt}l?M{My-PUr^AS%>L16@R@P>W*vp>NY>$&^Pus^Y51l zBBL*L6jQyx%aeHH38ARVr$d|vf=w)w(TOwoE8 zdriP2*M0P4?3y{QBr$SNkzD&VBOz{|4TpP z?_a&9@o&F%GE!%CsJ@r93b0q#I@8uFwAY22XwP(pmX=q))wQ9-!tVYuVI4-z5&L|vr}Ij^?S)GB{wxT zNHlW-d!im+DhA_jgj&{LM!s66WG1Wz;)5?;nFOC^_(-Y?T;2bKR$efh5z_>4EL_AI zYUrA_IAaZU4rzRQ?yyoj#`$nGgMNQn%u_#mpSNuFHzoZ~*2ak7@Kg3z)B8;ZH}De< zW=C_Ex1*5S{b`q{Z?WTv`&Wr+NH@)=Ionb#kL``g##bX&JSzFFb&Rm${eQKVMigmR z8~tqrDe*_;n+0*?ynWQJ1N607@&3?(7eNNN|F+s1kbjs#u)=g%w~BkT9(7%=xR_59 zaS>G&G&R`GMf4Z7Q! z;k^D}s^eua)X>!wwiUZU*{3CTlYxZy&!h7HW>FTiWBZp|?fjK(A48U%J8a;++#vVS znyIm0oWwbUWnUkRZ2bQ%8wbx# z-Dltz7P0fOhmP4c)9<@J>8bIrp1!r2CEwS#_p;2D`SGxRn|Ew7y-xPPDrs7 z11p3Y!3isj9G50ri?ec@pD!}JuHzRLH*NmWiX1)(Wq1iM+(f%r!FI%8jd1mwpk`JZrx-lOdEwD-v!rM;6i>0(87skJZW%Mz;21dl4m==uC#{q zNPwz3rU12FYCEU{uT>|c1H-^(yB)mW!oW09$YF`wErS`X;FPyBE=fc|RCodHoq3d1#hu50y}w>*mTqjip&Qv30Z{=3Tu>a7pp)Y=aRG9iBS!th zoQ!%-GLs3K#SP;maU2}uoJ5VDsPTvacf|! zz1RJkTYX;Nd+S#H>Q}$2`qrm2KAXM-dM*JQFtmh@DBYl0X$5w|tY-#8`=nXD_i_!PkQ@kxBgo@v{*x2{?cu zUdi}$eF^vyNG1u`h7!rdxX*MG)P)%nq+2WN>)~uTCQnMu^HQ(vo{+ykbDgh=LLMrk=8I-FEIx;g=a#W@9UE(BATU#qD?^`Kr z)~wNu2~fZtI&?_xyyH%pdE!i2uwX%#7}~gTquh4uZSum4F9?k|MXj6}y4>T;wxN)k zNawz}xmhpU&zU_(H)O8_tE;Nz@h2Xal`B`uwr$&l_&C4@=SCl`W$oIvGIPdE8Cf<` zQu^5hoeda@^A@TJ#K$BUt|2=*Q*Hm09Yb1)49c2j@w4BS1k&ZV77&ackS9Gx7~J|ta^Ht)-*CR zGus=hq3w1hz1G&&cEE580|@-}vA@dAH{UFEb#;=Rt!!R8(UA}j+RedcrICg;0J+ic zD?b}BWTq9%h=PCV7B67>nL~2)uUiECNWKJ)N}#EwS%R(J3*R+0HL6jC6fndVS*vP* zXdW-U^pXYzw?=Cksp;trRWu74Z#1`g^JaPQ!3U+fy4rPkgXV#D;H2G7*F`&zmR_RX zbwad>V#QC#mq42Ya&vNppHc0NT+DNEaj_n=8~S=F$LkPdGB6Xmw}< zWg|z*qVIiArkyZN3WpR*Aj`hm!Q4Pad4-nx_rAu^FN?)zs;H<)uD<$eS+r=89654CH{Rpa^5M{7!@4A# zuv#Uv_U1%JjV~=Nm2=KMyW5}u9flf!gOxtufHuOa$pmF{k*v-KhGZ?dV}NgZ`HG5) zxa8Cr81p=nD$GDTq0He0Rn<|;dhXpXJoVQExB z?4^;SHcY3b7ARlu_@Qu6TJ;jGbBZ{uHk9S6C0zU1Ga4WMyX267bt160IYxtUTm9(m zbmB?R1`KZVOSKfu;+-ksVSKf zN{Ivpdq}URG)>DUSv|H5_3lg&3($}D*IuHCY8*G|0)ke!B@ z0~`B&%xJ0DtnugP=S!a237DUkuT63>>=c(<1B`SRwdi<0tav7hkq78#0gZ@y8!)!y+pP;9qs5N}hY}IV~sXI$bCn5>`fL z&YY=b%udM-?`>%32YSe8&z?PcWy9J)nKWf@#^3+`_qMr)Nb-6rZ0eM$GWz(@&ZJ$R zDHmjN@ZdqcL2Lj1{kmT8%sVp*h7UG?Ra8_+(Xb*ZKCW2GO3U;HG^Z_xYeGjoePDj zxpU{rgz*zh&`w=H{P07$@x~i-?bG-E_r3DO6HjO!cn6R0 zW#XIg$ZOZ`UGlSk|Cxd}cU_dmHfPQpx$nOFWW%TIs$Q^8=$(1SKZ`Bh>8GC-fZ@99uG8C>O+LJ6;Ey&`Ustc~7s!j@fkwa%%cf>E59V;emZ0uU z2?L+T!IR00@#Cs_ZH%PDJHjJBv>?N8ZC$O-lL2PJp{1BI;@RrpgZFNZw9&%g(~UP1 z2QBfj#~zbE{pnBg_19mwr$roOVmbs9-g-4Q761$9P5`t|KKY~u)@4^MlgU#ix69QU z&)nO9K^K5x+NdQaP@i6vn%Cl@>e+aru}F*Sj&HIP-O*sw4m$PUnGAm6uqp(PUL`u+ z&cEHYbC>-3*T0t4t5>(31)xygGzKdbDil92MVXWcJJ+#OVy`G`THB~KJdzA-qOgux!>l!N@?}rx; z*LyY$4HL&IXZ+lp3G4Qbo_?4z)MCix<@WB|D=Y3?A&)-#sMZST`MuI|qXBqWK?e|G zDDuDq56F%kJLJ||Z`J15ZgKImmEy^R0&(VlgcD0=0|Jy8t~2 zck%^2;uC*+LY{yAc|BKPEll!G4{S7nPLkBYh)X=vsG`O7s&Mc|&lk&)7Bu+Lkog%$ zeo$-K`h3ql_sE#z$H<&h=a|>Mb|s%|hQb-1N!zPOw}#V^9RG+rQthS43bbiRXb#Y# zJd7q_=yP>CWbajO&|sLw5XH@*{XF@%C*|Qs9+t3LuXh4A@&;TeAMW{C9pwP8R*l4z z4gN2__@dswamy{Y*tA3|4Qnfs844Iy%^0E1W3VS=jnEhO0VQ~S2#iPKfwbdfa`8Q? z*LPD5l}aAf1|dbt1}&A6{0kNJ$b6@zfYcqTsRs+)_GYY$Dvz^PFbbOrK4ZoVHQ_cv zj|*vV&Pot1VH(Sf6KCiK8!epk9cfUJPCxy0nWiTCaBk`1hpI|NM>R(E<)9MgMrcS@ zP@>W5Ey@o)C}YQs)jg&&-JU!%;mT=9C!Tm>I~f|m*IT!$^AaA@`5{j@8aBQ4#TQ?! z!PuEMo&##gw7@bq!{IPAB<6vj3oRyz0d$6eX2?NY8ZDcr7|&CtPWq&exwO~B<7c0L zCXYPwh%`4g+vYFe9WVfJ%FE03QFokbl^w`#@6VtOUjXsvpMS20M4S;}@(w@n${YwM zQ+?+<-+^p|vjGEd^I}*SMo{P{9-J_xbcb$nqwrN}7K6GKx2KW5+5U|l16q4oQ@Jj= z%c&TpF3}^{#hAb`^qcw@L&F-wHPBm8W$@L*Is*Vr}>}(UVi!IR?_-R zM~-v*;DZlz&uahxKxe}D$}6vIZ;-Z#F&Zh*-Q!wQqCuf0TyyO;GGqD->#KfuZyG*ZrTL8=J6138v0VAP-~CSa&PEfWr#*c5 zuzb4lQ<*(`cFc1Wdn2>Vp~TH81ruO&bAT(2)HFu7Fm8S|)it`O2Ly~3LO8TCK!KGJ zc7$42LY#DH_>{%Oi4)ao(0KU|HMhfxhM@;flm#m-ta6N3VVo{|+G*ED+H$x4rmMmGUmyZpI!8bG*YOvbj=6qmqlS%^p=uNGl zV3Ow05Kui?-H5U>HAY{c$HS%pkx%Zoe6dB3eUmkB@#LGifvsv@#5#-sTrpJo{`bGH zCvv-*{uyVSskH(F48*72v7}6TfVI>4z~Gcff}cTd)N#{zNS+2np)rY+td8#`FdSl8 z&YCy!!>P*HBls>-0@$5U_Gb7+2;^5vDADdeb$f3G*%Alyq5iTql>ICVc+_SV@ zfa9fpWP9{mmG$yvKRZ4?L+u|wb4aeTgRo`QmWA5p&2psSePzecV)MtOAwO%16lR^I z3MW2lJ?5$`1_M0}yb~qa2!C=6h_dWnb+x^7;NNUAG^nr4-1tlD{c%Sm?^j zuErMm@fQc=;~F)oq_=6h21~rBQlD-gJ4|jGJ;XI_wq0*MbgS&Geb_bMxtZhTq|%oq zkUr8ieos9C28>-;|F=4{h*#8784H`7aW_Si|=mFBLE-NcGU}z1u%@iL66vLOc1q_Fk z1)e%3$;&klN|jk-cv0YKSj&8q0rqcg*E?-`Ev0k7t0^-|D#?;!VgCUVeOgTmHh^M!=R#~LKZGu zDD&pd(^h^ZBTBlPbll_7BVp8Jb>s;x2)ljX*(E@u1stpZfV}v9z3prL%}wsR>eAEF zWz(ijuF*&jvumew0E6?j|C|U3Fc!b=n(Ji8_8r=eojC>?l&J(%6n<2k?c2A@z4zX$ z&8TP3nyrTzXPkb9Hjj1o&WYeXS{hVHYb7^f$p;2IzOzdJy9cx>tD_E}H9YjtLwa|l z^<8K0p#c~}$8$O-z8FEczc*o`4&@2dM=myBYJJy(H@0&}%eP0gZh4Ox zGe&N@=_b8r{)HD_kaymBN6#;?=1&6y5DemT&yU`hWlc^D;^V5EICQ}U7ib!zN006n zABl)$1&c(amkep3F?h+v39#MCkCQgfPCrA}1`L_0g=!WdQw8RAhkgOWnW-ge$$) zRw{NYRP1|E>uuwjEfl;ic+UYF~Ce7)Ww z*&BRyhlX24ry?@<0I2!SE&(8hC;rD;gr}eZGPT&pa3NW?>z^o2nFkoi&Ki2O#TsAG; z-iZOElq*}LIUl089CWdt;rp6HhedYyHekq5TaSzL&+b;*^tIE~c@F%N&1GkltHWN( z`z_n7L8C=r*1G8YMe^BapUG>lzNUv7SV*!Fi-u-~8C+SOdjI|R<$?cuK$b6GF3?D{ zW4!E~WTZl(Ex@1e>=FPNkd1Yo!2rWW7hR-Qqt12dyzDf(@`TozokP8`gAp`rz|a+< ze%QoIfJ!r>WQ6|BpF3YKVeyIgHEY)B9gAoR1{~<63C|&~oa?{`VH54#fB_!SYWf1G z5}p69rk9bP;kro*%@BYXG^n7fB)c8nKB(?C89!p8B@oCC$mGeB^OHrCb5}P(}vdukM!^Gp>*BIg<)jpz0Z{y~S`tJ5FUVdl>92xJ_7~lmy zi-#A-E9s=Ai-uRG4!8jvoMpz5@4NTxPFUV-laFC_e0p=MS_V_wkClaXI}@x&r>AB~ zW}1DcTzi0{H++h|rL|f;b;NBm4pP<;YPmBl#olvR<8w0gVfEo!uGZMrFp0irG+daO zE;(xJb}~5Y{6b&zi?;B}%dhBRgi|%1G-;9yDoFe)NngvPGwGL>mFgvG_BNO$T~-e` zH{rz>UX-!Qs?|C)>kQ5Ags}lbWy3o4Ir(2GvmWf&t;$5J1ky@ne9^5^kmY_hKrmD- zTMjH&U!8tS;X=olvW=;blokA|lowv5#!ptd9W1ZeS0n$mqf(kX=FU1^_R(EPfz+(R zZ28srVN&Q=U+yE8Jd{NBUpqtmYUf1uYYsBR*y{pdO>JT zpFUkOvm%XZOt@qDI>q0FIvUc*7<*zwRM$`^>({N<-wH6530V<_@jZr8 zUFl`ak|#z~d?hPQS&l-74L8tXy&Wq(8oA+vrO8_LxjTBgRZp+dOQ>it^mfL(B%cE_E(E?(q)F~OR@!6}8V*5f=BuiRbR}8CwkuUquCnJvhuwuYD3|rKyftM!b zm31@(mLfU+o0ERGZQmvwJx)b2j*3MEm^yW8mw|ysOb@kc)heyha&BPZphC$n$k$7a zq(fyT4*&>52R<~zcM{FKf)y0t2}3MSI(9p*-0*y?UuobR%2WDqsXmX<06mQv`wtA- zmj7b86c?+nSgZMn(W6J}B~IQ^*0I0=u;$BP?5E+7ATQ?t2Crbge>^0>!JjKvu9TNw zRwqO$%f+rZ8aH14ne9YF!-h=~?DOXPXqCweoAyH&@rRq@0ct&9L&ZVWT)cR(Tz2VY5t>9- z=sO#GthnTfVGg{&6TEPk?NwJ@B^Oc4k<9fgQJFE3l#J$g|51RZ(l5j{s_cDG@*xLp|m zp&nWf;;Xwf2>d)i#vhf5qJqCS#7Jei)w#*ar#_#hnf z5lnc(3&R+AVZzZl)bSvr@~XzuxjDKLGml~#0boO;$ja=PNAaRz{L?eiHCWP1nmo`r z7`hp{CTv%)fFAsy5izfVLk9dbeb;IH&ZPpc0P4-lZrznnQH5CeqdSz0pk%! zFP4&mrBdDWkt$Z_a%EVC=YCHy=3bzwN(c*w<;#vHb>^MQPe;mzdf!}GEty%6CBw6v z`RN^g_~P;nH{77d-3JdGlmiFb?BS_s4eF52X4U(*ZC!4XCe`F@UZhzd%@v zhZn$MusS6=y&FrtCrmv-e)Y>=X_=TxA5wNUe9LplkjQPqR{pK`lP672rlhvD^x&pOv3Si|UxqJ8Qm95*h%BIgY$)UrC zG#~+ZltXii>Xd^DEROEbWI32~7T|>+$Nn+5z%lX_Uy->Ja<)4PxLc>#63O(2w)O#IFQGxt`gBfe~ z1OyHrI;>BP;`Ar8frsG;mFe!g@7Cu)z&`*5A2d!hd4>yN#UCzJ@xnO*dg;t%3$G63 z|Lau=P&b;@JW@+@iz*X_qoFn}f^J!r1?PFBs;fTy<>*|I6})0GW78N2%!x*kJ$@`Q z9q&`sl4W;YdLJ~x?(!PXcr^U1F0N96XFeF`(`3(CKh`$7UV2Hnr{SX@1D}08Jc?sBnVeP>>`Nh|V9E~H%Wu(^KIcVjk3im^1!r`E7 zul&6NhDU9XK&~@xx%3aon>dX0fyG_eq}(y2Y7tvOW@d%fDIT15FFS_Fm}GYL$n!tdB3+M zl%x+F7K0_D`8W)gk2qs#nWWkB+3tY^Y{1Y1I)2n7l>j#M<>lpie+6dHI6&gKH7!2bi7+WsHepE>0K0000Px?sYygZRCodHU2U*dRTaLVfnL!tlu#3{XlNR05t)6+mCy=DZH7rjql7*t`;$}n z$3Eu0G}R1cW!j%+N<&R0EeVjsg1HC?egq|9nlxl!<^@7UQwZpJ@a)TJzx(6tbM`s! z$6agYnRE7Dd#%0CbIv+z@BN+&9UUDVzX$dUf;dP$0KsOvopqV-Na4eF=k1#+6Rsa%g|Ifinc{GH9*bJO6 zfmZjTnH-yB@h1$BfrkLeYHx5rE<}WZQW)SHTmtP44w&IZgn`l+;JRd>2OHO`BEmqa z3~-lipa)uasSJyAVIW~(AZIoHrYIr|L}6f%#|yuNc+k@(k9r@B=4*!IQ9c9c1Nf&q zY3W8`6tE!y4*hZ&&Ib3F;+=HEl>}QnK3l=lAsFP|Mh%o-M8uv#zGk?Xo}?es!~NSt zS2NhXp6FtZak-%%scH`fPQYcH2h0M#4crYp4(tSG0;R~I8NAleW@(0Y?bL+VEYf}q zjKC#rX~bn^2{cX}`8QbSHe!Gc=#$yZlvRrkg>TUxIGphJx@#T!P}Kq$yv<>BDRd2a z=p18eTUC}ol9c&M-(uW-Rm*!>tcJ>l{GgD5n4CpA- ze-MbVKD@}%hpJwvPUKjafg|AIWZ(th`NH1dfd5X${x-*lVi4u<@g)y`-*woAs1|wp zxgf+@8?_zb;l;HXG8DE~0AB@e0XWrv4p1>M9p_dVWYw4z%xdp5tAc9(i`KI>i;toF z5nvN=lcxIu%BKOGzAn*pH=xXI*`mUq6l~e1sBdM@H{Ua=U^s3>-5G}ZkgCJbcstN( zG1`TCK5)A&`gX47b#HTAAa^1eL?$^Nm0L}Ur0z-_?{w&cR15?a!9|YExV_J5TNT1! za&b4N;2`+Ia{0ffp#N4jFOtz1Xf9rz87=gOUS^cFt<1D#?7u_(N{cRb^+JzB-}=g9 z-Z9nFfYVBmiWvwEG!Cy;@ffSq=oURBs-;K7DwDzAvc^0q^_@bu!ASryDxb>cONx~qv-S?ZIGkxyHjK)4}!sqXnMEMOIuTIW+;JrFA zRn|{=Klu_e$*ZQykUD0y{W)M-fAl1NdJO~Mx{&?MHR%4G=t9RqpN*7d=-f4CuD3$u z<7n*i_hXB*$sRkG&$MnI{P6zR0$p|gJx71ft40})FFE|ovDk-99r}<$-^2KAp-Ij}rA>D^ zbVLzZ0^_ws97MF`3yKe=Nx0UT0&ptk6JPf8WlufOxQ6D&3Nzh{$&pjTBLQyG90$0B zFUx7bZLUU5uH*H_lD=4uE{3Bbi^VE!v+ioe;>P8t+r!&WT*fKgN{1hAQjAKqHJ$Ps z*4Y5pg`8RV9x}cRU48O?+BRQWWix~y4IGsMH>X_B>1R@H({?-`3PclTHP=A0>Us?$ z;+iU}y{jG9l+7fZ_PTaWw`3UX(P+cJhOk}tBN=?;X~L=M%Z`3mTb#B^py|Uu-f^wu ze!6auE*ISlN&Bj$3r%|7Y-41A@FijsKFnNyxrEv15Jv+}Ps@<4aQcA5@kobmz^P&e z8gJ;jCT5V??9nD1pDz%6+x$MgZ+%vT5(b-1xSkV97>F5YbXiOMHshgL$Ht7d*Fl&o zka+(->ab-Xl=<@GW{FKYZHj?d&ox3!QCaO>1)OpV|9Z`StX2*!@~z&izxVCH*j54O zSuTp(?p%j)EvL&wR2-{UrpjezGj_wZiA{VPDmJ^etdAXNB)$j8vL$UJv^U9C~aQeqG z90&SjcKt)3O{1E-rg>b4aXpq6ep6`6G;9~LKI3$M9w0$R=1P#V0!?ML5{4Y)k`GX; zh%Yeo^_X7PuhZvGwddOK>#88fau_Hp&^TIdi13f|8YRrCt&+{i(F%ZnV`Y6kM4x-B!+XGEl}EO$|k5wR=@Xg-6wQg46w_fI}3H=4fRr`F;Hfpu`6zfFsq%(LWRO? zwywhdVs*s;u>~5l4%cP30_p6AVx452Hl7a4!|SXMR$PnI8xI!i&T6QUK&zvrzM{;j zBYR_JnN#0wsWq*b%@iR^aFX6xRQ2kp0!$rMefs!M6te!D!A%yM@H@<#ZOR7MccOpS z_ni$MUVZmv2O4|)74SrT*QM2PZMeQP@8vq)2KQ?mU2t7C7I>$l&0^^IvdJRD9F4X^ z=lV3vVd_-5#&$F;UC$(64BWW+JHTM8Qhe)JXW+XoD%M3*nblf3n<>6s>npCyd|%DD z>{TD?$n~C0_|W?vE}N~Zo&ju=Ay9l?Qyzmd{{)50kgdQRfOS=iYo@`mbX7edQ-8c+ z%xVmTGI6h|^A@XPw#v&9f1nO|(~t7>b(w{`lTbew*x|6>WwHIV!$w{ApV6il*aYwa zSM^zs3`UcTK&8vaOp{Sk$1h}DwtNY^U9;!Q>cAfwm%SOH`sDz7fM2SL5{{~m5?oj6 zasztX40HjZvJ3{V1{g7;y#^d+vAF~FmjWAsLBMgqL|_7tcQ(W|q)$%wHE4kT74*rM zhi$seKMdsyf?xUY9`GeL8sPO-`XK;sRGC@r9{6t;`4KL}_4c&suE{|_Z_d7KV^HsSk3`eT-CH{o@?C*Y!rJak*o&pE(1fmy)efJt_u@_t|* z@F2h-<@cG~e%FPY2R7l$aR%@-FdMLK#<0J~0B-Vdd!K=pmitg(uF7m}-=J@%IXhX+87z1Ed z;~uFyPB-%x0$+@GqvqfG_|C_-`(# zPkc<%$lHY_VL%v&!@wuu#uQ}y7n#Pz=|a2+1Hu5an);A59dNe^HNt=}5SM`&aF-4; z$!2l+6>q}80S5G}HcxmF284lf82A+2GOID0>HmaRIX#M3VPF6 div:first-child > div { + margin-left: auto; + padding: 0 32px 0 0; + } + } + + &.large { + margin-bottom: -96px; + + img { + width: auto; + } + } + + & > div { + align-items: center; + display: flex; + padding: 0 $site-gutter-padding; + width: 50%; + + &:first-child > div { + margin-left: 0; + padding: 0 0 0 32px; + max-width: 454px; + + & a { + color: #1563ff; + } + + & svg { + margin-left: 10px; + } + } + + &.code-sample > div { + box-shadow: 0 40px 48px -20px rgba(63, 68, 85, 0.4); + color: $white; + margin: 0; + width: 100%; + + span { + background: #252937; + border-bottom: 1px solid rgba(255, 255, 255, 0.15); + display: block; + font-size: 1.6rem; + padding: 13px 0 11px 24px; + } + + .code { + background: #1e212a; + font-size: 1.4rem; + padding: 16px 24px 32px; + width: 100%; + + code { + background: #1e212a; + border-radius: 0; + color: $white; + white-space: pre; + + &.keyword { + color: #be5580; + } + } + } + } + + &.logos { + justify-content: center; + + & > div { + align-items: center; + display: flex; + flex-direction: column; + + & img { + margin: 29px 0; + } + } + } + } + + h3 { + margin: 16px 0; + } + + & > img { + width: 100%; + + &.shadow { + box-shadow: 0 40px 48px -20px rgba(63, 68, 85, 0.4); + } + } +} diff --git a/website/source/assets/stylesheets/consul-connect/components/_text-image.scss b/website/source/assets/stylesheets/consul-connect/components/_text-image.scss deleted file mode 100644 index f5292a4a13..0000000000 --- a/website/source/assets/stylesheets/consul-connect/components/_text-image.scss +++ /dev/null @@ -1,56 +0,0 @@ -.g-text-image { - align-content: space-between; - display: flex; - justify-content: center; - margin: 0 (-$site-gutter-padding); - - &.reverse { - flex-direction: row-reverse; - - & > div > div:last-child { - margin-left: 0; - padding: 0 0 0 32px; - } - } - - &.large { - margin-bottom: -96px; - - img { - width: auto; - } - } - - img { - width: 100%; - - &.shadow { - box-shadow: 0 40px 48px -20px rgba(63, 68, 85, 0.4); - } - } - - h3 { - margin: 16px 0; - } - - & > div { - align-items: center; - display: flex; - padding: 0 $site-gutter-padding; - width: 50%; - - & > div:last-child { - margin-left: auto; - padding: 0 32px 0 0; - max-width: 454px; - - & a { - color: #1563ff; - } - - & svg { - margin-left: 10px; - } - } - } -} diff --git a/website/source/configuration.html.erb b/website/source/configuration.html.erb index 7d0377eab0..6fd856c40d 100644 --- a/website/source/configuration.html.erb +++ b/website/source/configuration.html.erb @@ -46,10 +46,7 @@ description: |-

Features

-
-
- Automation through Codification -
+

Key/Value Store

@@ -59,16 +56,16 @@ description: |-

+
+ Service Registry +
-
-
- Workflows, not Technologies -
+

Transaction Support

@@ -78,16 +75,30 @@ description: |-

+
+
+ Code Sample +
+ $ curl \ + --request POST \ + --data \ +'{ + "Name": "api", + "Service": { + "Service": "api", + "Tags": ["v1.2.3"], + "Failover": { + "Datacenters": ["dc1", "dc2"] +
+
+
-
-
- Open and Extensible -
+

Blocking Queries / Edge-Triggered Requests

@@ -97,16 +108,30 @@ description: |-

+
+
+ Code Sample +
+ $ curl \ + --request POST \ + --data \ +'{ + "Name": "api", + "Service": { + "Service": "api", + "Tags": ["v1.2.3"], + "Failover": { + "Datacenters": ["dc1", "dc2"] +
+
+
-
-
- Workflows, not Technologies -
+

Watches

@@ -116,16 +141,30 @@ description: |-

+
+
+ Code Sample +
+ $ curl \ + --request POST \ + --data \ +'{ + "Name": "api", + "Service": { + "Service": "api", + "Tags": ["v1.2.3"], + "Failover": { + "Datacenters": ["dc1", "dc2"] +
+
+
-
-
- Service Registry -
+

Distributed Locks and Semaphores

@@ -135,6 +174,9 @@ description: |-

+
+ Service Registry +
diff --git a/website/source/discovery.html.erb b/website/source/discovery.html.erb index b781225bc7..7da3e28a0e 100644 --- a/website/source/discovery.html.erb +++ b/website/source/discovery.html.erb @@ -41,15 +41,18 @@ description: |- + +

Features

-
-
- Service Registry -
+

Service Registry

@@ -59,16 +62,16 @@ description: |-

+
+ Service Registry +
-
-
- DNS Query Interface -
+

DNS Query Interface

@@ -78,16 +81,30 @@ description: |-

+
+
+ Code Sample +
+ $ curl \ + --request POST \ + --data \ +'{ + "Name": "api", + "Service": { + "Service": "api", + "Tags": ["v1.2.3"], + "Failover": { + "Datacenters": ["dc1", "dc2"] +
+
+
-
-
- HTTP API with Edge Triggers -
+

HTTP API with Edge Triggers

@@ -97,16 +114,30 @@ description: |-

+
+
+ Code Sample +
+ $ curl \ + --request POST \ + --data \ +'{ + "Name": "api", + "Service": { + "Service": "api", + "Tags": ["v1.2.3"], + "Failover": { + "Datacenters": ["dc1", "dc2"] +
+
+
-
-
- Multi Datacenter -
+

Multi Datacenter

@@ -116,16 +147,30 @@ description: |-

+
+
+ Code Sample +
+ $ curl \ + --request POST \ + --data \ +'{ + "Name": "api", + "Service": { + "Service": "api", + "Tags": ["v1.2.3"], + "Failover": { + "Datacenters": ["dc1", "dc2"] +
+
+
-
-
- Service Registry -
+

Health Checks

@@ -135,6 +180,9 @@ description: |-

+
+ Service Registry +
diff --git a/website/source/index.html.erb b/website/source/index.html.erb index 141ee8f006..881952c092 100644 --- a/website/source/index.html.erb +++ b/website/source/index.html.erb @@ -74,30 +74,28 @@ description: |-

Principles of Consul

-
-
- Automation through Codification -
+

Automation through Codification

Codify and automate service authorization policy.

-
-
- - -
-
-
-
- Workflows, not Technologies -
-
+
-

Workflows, not Technologies

-

Connect services across any runtime platform and public or private cloud. Connect services from Kubernetes to VMs, Containers to Serverless functions.

+ Code Sample +
+ $ curl \ + --request POST \ + --data \ +'{ + "Name": "api", + "Service": { + "Service": "api", + "Tags": ["v1.2.3"], + "Failover": { + "Datacenters": ["dc1", "dc2"] +
@@ -106,10 +104,23 @@ description: |-
-
+
- Open and Extensible +
+

Workflows, not Technologies

+

Connect services across any runtime platform and public or private cloud. Connect services from Kubernetes to VMs, Containers to Serverless functions.

+
+
+ Workflows, not Technologies +
+
+
+
+ +
+
+

Open and Extensible

@@ -120,6 +131,9 @@ description: |-
+
+ Open and Extensible +
diff --git a/website/source/segmentation.html.erb b/website/source/segmentation.html.erb index 8ad888b685..6e11866070 100644 --- a/website/source/segmentation.html.erb +++ b/website/source/segmentation.html.erb @@ -47,10 +47,7 @@ description: |-

Features

-
-
- Service Access Graph -
+

Service Access Graph

@@ -60,16 +57,16 @@ description: |-

+
+ Service Access Graph +
-
-
- DNS Query Interface -
+

Secure services across any runtime platform

@@ -79,16 +76,30 @@ description: |-

+
+
+ Code Sample +
+ $ curl \ + --request POST \ + --data \ +'{ + "Name": "api", + "Service": { + "Service": "api", + "Tags": ["v1.2.3"], + "Failover": { + "Datacenters": ["dc1", "dc2"] +
+
+
-
-
- DNS Query Interface -
+

Certificate-Based Service Identity

@@ -98,16 +109,19 @@ description: |-

+
+
+ Vault + Spiffe +
+
-
-
- DNS Query Interface -
+

Encrypted communication

@@ -117,6 +131,23 @@ description: |-

+
+
+ Code Sample +
+ $ curl \ + --request POST \ + --data \ +'{ + "Name": "api", + "Service": { + "Service": "api", + "Tags": ["v1.2.3"], + "Failover": { + "Datacenters": ["dc1", "dc2"] +
+
+