From 5df94da8634dfa11e8557f213877221d96d96705 Mon Sep 17 00:00:00 2001 From: Julien Enoch Date: Tue, 7 Jan 2025 18:47:34 +0100 Subject: [PATCH] config doc: 1st commit --- docs/configuration.md | 114 ++++++++++++++++++++++ docs/images/config-default.png | Bin 0 -> 36241 bytes docs/images/config-multicast-scouting.png | Bin 0 -> 29850 bytes 3 files changed, 114 insertions(+) create mode 100644 docs/configuration.md create mode 100644 docs/images/config-default.png create mode 100644 docs/images/config-multicast-scouting.png diff --git a/docs/configuration.md b/docs/configuration.md new file mode 100644 index 00000000..3fbb107f --- /dev/null +++ b/docs/configuration.md @@ -0,0 +1,114 @@ + + +# Configuration + +## Configuration files + +Zenoh can be configured via a configuration file. Its syntax is usually in JSON5, but JSON and YAML are also supported. +Each ROS Node can configure its **Zenoh Session** using a file, with the file path specified by the `ZENOH_SESSION_CONFIG_URI` environment variable. Note that a composition of Nodes within a single process will share the same Zenoh Session and thus the same configuration. +Similarly, a **Zenoh Router** can be configured using a file, with the file path specified by the `ZENOH_ROUTER_CONFIG_URI` environment variable. + +The table below summarizes those environment variables, and the default configuration file that apply if each is not defined: + +| | Envar for custom config | Default config | +|---------|:--------------------------:|:-----------------------------------------------------------------------------------------------------:| +| Router | `ZENOH_ROUTER_CONFIG_URI` | [DEFAULT_RMW_ZENOH_ROUTER_CONFIG.json5](/rmw_zenoh_cpp/config/DEFAULT_RMW_ZENOH_ROUTER_CONFIG.json5) | +| Session | `ZENOH_SESSION_CONFIG_URI` | [DEFAULT_RMW_ZENOH_SESSION_CONFIG.json5](/rmw_zenoh_cpp/config/DEFAULT_RMW_ZENOH_SESSION_CONFIG.json5) | + +## Default configuration + +With the default configuration, the `Zenoh Router` needs to be running on the host. Upon startup, each ROS Node connects to this local router. The router operates a _"Gossip Scouting Protocol"_ that forwards each Node's locators (IP + port number) to all other Nodes, enabling them to automatically connect to one another. + +

Default connectivity

+ +The router opens the TCP port `7447` on all available network interfaces. Each Node connect to the local router on locator: `tcp/127.0.0.1:7447`. +Each Node opens a random TCP port only on the loopback interface (`127.0.0.1`). Hence all the peer-to-peer communications between Nodes occurs via the loopback interface. + +> [!NOTE] +> +> **_Why this choice of configuration by default ?_** +> +> This configuration works out-of-the-box in the vaste majority of platforms, without requiring any network configuration. UDP multicast is not used, and thus doesn't need to be configured. All connections between Nodes are peer-to-peer via TCP over the loopback, allowing reliable and low latency communications without any network configuration. +> +> The usage of a Zenoh Router also has other benefits for communications with another hosts: +> +> - Less TCP connections and thus less network overhead +> - Zenoh performs automatic batching of small messages within a same connection, thus improving the throughput +> - Smaller surface of attack, since only 1 TCP port is open, and can be configured to use mTLS +> - The router can be configured to perform Downsampling and Access Control on external communications +> +> Those features will be detailled in the following sections. + +> [!NOTE] +> +> **_What if the router crashes ?_** +> +> The Nodes will continue to communicate with each other without any error. The router can be re-started and the Nodes will automatically re-connect to the router. +> +> During a router outage, no new Nodes, including the `ros2` CLI tool, can join the system. Consequently, the tool may not function correctly, although its introspection commands might still respond if the ROS daemon was active before the router went down. However, the daemon's view of the ROS graph will not be up-to-date. + +## Case of a robot with multiple hosts + +_TBC_ + +## Connection from/to another host + +_TBC_ + +## Direct connection of a remote Node + +_TBC_ + +## Automatic discovery and interconnections of Zenoh routers + +_TBC_ + +## Remote connection via a Zenoh router in the cloud + +_TBC_ + +## No router, UDP multicast scouting, single host + +Running a Zenoh Router is not mandatory. The ROS Nodes can discovery and automatically connect to each other via the Zenoh UDP multicast scouting. + +

UDP multicast scouting

+ +To achieve this you need to: + + 1. Make sure that your host's network is configured to support UDP multicast over the loopback. + + 2. Copy and update the [DEFAULT_RMW_ZENOH_SESSION_CONFIG.json5](/rmw_zenoh_cpp/config/DEFAULT_RMW_ZENOH_SESSION_CONFIG.json5) file changing only those settings: + + ```json5 + scouting: { + multicast: { + enabled: true, + interface: "lo", + }, + } + ``` + + 3. Run each of your Node with the `$ZENOH_SESSION_CONFIG_URI` environment variable pointing to this updated file. + +> [!NOTE] +> +> Here the interface for multicast scouting is configured to `"lo"` (loopback) to avoid sending discovery information to other hosts, +> and to avoid discovering and connecting to Nodes running on other hosts. See the next section for discovery and connection across multiple hosts. + +## No router, UDP multicast scouting, multiple hosts + +_TBC_ + +## Downsampling + +_TBC_ + +## ACL + +_TBC_ diff --git a/docs/images/config-default.png b/docs/images/config-default.png new file mode 100644 index 0000000000000000000000000000000000000000..f9b371befdafadfb0b69b7ee523a43705e32b33e GIT binary patch literal 36241 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 S;uq-*K;Y@>=d#Wzp$Pz}@6YuB literal 0 HcmV?d00001 diff --git a/docs/images/config-multicast-scouting.png b/docs/images/config-multicast-scouting.png new file mode 100644 index 0000000000000000000000000000000000000000..d3915e2f92f7112b0a97791ea3f1b6400a5d0c92 GIT binary patch literal 29850 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®ae^4=^romSjg`1dt>uCd@AgIU{L zlG+_suV=mn28D)^0s?!R?@cR$7uI+|vML+b8}88qemt`ZLbMA(t;GR;=>o_~(T@f8 zh=7xcGiyKPN+Z8h(#&k9w)MX8sJcxY>R=MH?9)Owc(Rwmai=#$T&*c!F{;b+_=Tk0 zLDEd_w7{jWlgcYie-1OVELF#^I||@X0%^xA9QDkPqZWPw!Mt#~yjBz8DCpH0U+tXg zN56)bc+H)~rud0Y+KVLS6?Vzry+(^aVYw`)yneK159Vlk>Y-LgzFJi!;A2uHYD$9_ zICt|2fH|9ITiEes{`KQV9<8B?c`d5=eA9G%ZrcUR5Ave(c)cex?;LwOz^5;{?DUXt zFnhsZ+5PA2@RB=E#LJS5Mj`u>mD`dDnH$GCJ1e*H?sGWN2_$^^2`{47oBmVQ$(4%` zM4j$R?R?_6lam_eS~sYai;sDCSyo;f$MwC7BvbQ64aQFI>+7&0FyymVh=!~R^KT?R zroq5``7!`q7+#uw`vFQ4dZ>m@ut+LQV%rqldVGZ+q%;=m6%q5a=ssU9o_z*c37e_k zrWvnjx^H^bZDY*#0}ffQ#@+1SEbt0!?ANr)mOZ$-u5QZ5sLfdnDD#T{#W*oT!3W;Z^}vK_xa{cE~yf&c8(eE?-YZFsj}?*{7GNqLDh`FjrA{y(7F5w zmIyogkYW*^^J!Y{Q22FV0X3GZ{)+Aa_^HlM;aJ}xgE^=;0 z_)Z<~60S|9n!uUUF7&mUbi-sXST1djnqHr(d@Hp@@QefGH=fMt#F_}9d~R%=M;9y% zZz2eBXs$WAsCqTT*FVZX{r{BiK&cy-4e2~L$0ZKJ6nwX|%RD;BfJj)^tEsuIF?KAJ zOqiB1yj8rBJ~eGd_A#Uej;p zPeXv(wmiI((=wzMv;mV@PiC?1-gCCP;kw(~xbU69d?zHO=_pK#APS8t|eBRX97jO?I*W-6SKwgm9`;5g7{@Y3qu2*QE$F+ z`zt&LPWN~=Zl$-GHH9hkmt>ZLbBja%C*YGt} zKDrv|Tg0AbaS4uNAR|_!5T}ul~v3;Ygh||pQyCG+C+BTn-}~h`=vlV< zb~qYRE7PC3`ovakbEr!AM%*P)f$_46V2t3KG&_I69L0-dohk(L z`L`+ecDd+gHN5QOlkK=Kwr8vvGrkB3(4^LsvGl%r^488eC>kNfY%UyCQ#e~;n5Ccv zrE;#buJ+6FD^bcKWMr~?PBXe*yQMsduZ(jXs&X{3Hv6sj-c;1We(BHl;4_7W?-=Wx z-MYzWEWepCBBSuuf}-qJPUC+oOGMX*KbIlKrWE8RrTB7F8C(=@GOj;3T^78c+trisf8YUznO8i!Um6?z_&%CEedlwM^V@AReCB4; zDaqw^RvFEZuh-+0*u(%8jhxf^=fRoJaN&=W-X4N@#tbYBsV9Byuvfa1jmFkkWoW_f zw*YcBfc0ItdDqgq7r|34%f=Kll3T;t%YbrS9l)vq&_Dx>!^bdECf7a(5Rw-FIHYgV z9<(*wt94#@M^<9F&v3aqQEqaS`Wg)|*nmz_R^@tVk13GKc@9K&z-cK>%AH!&`Bd?zeSFw8bRRKHU)Jq;MR#kbCrP%cs55h{ z-`rnU^(x=8@!h)ff$KN)vHt-*Um%EQ4?474Qo&-eKk0AG_X4q5Fm#Q25(VIejq^uu z1>u_KQZ%K+>-Wze6~4~->&iEuc$PPc9zCQK#`!i!eNsL*Ew&_(M_UcIY8H;e7rU{`3 zA+F;v`Z;#>N_8T$<0@U-v~!T%m2HW*Yj_%#OU>Va86#xGcma0l!S<&czmKccGQn+} zxY@L;3p=DHPv5IY`MqUoN4QpvK}4w1plc{?qVJ%;CE|Zz?2UPOSS?ED_)--P}*Pu{X&G+TyC5(Yt@+b?7wP5$uO!-&QLg^{oPDJtCVhQ{KiYNgSLs_; z3=hf3RjP@PQ6tWkq*2$JiFt@Z3INK{wZ0_3E9oB^@v7_|S6MK3h2IavxO;Ano6qb! zdQECDTPOP?2OjJdiK6{q>5*O^g5Qk0A58#(aF#wXa#yjkyj?WI+2>zt;E!sUdDZiV zl7387`}mfjN{Zw#5B3)Ax1`qAb+$=XP#FVBaUQbZxYlj}{Bf2=0H+~K6YEs8+I{In zA_)<>6J-DSt%KJ-f-)-kYr@=|rNx0TG0xzCvmaz$@)Il2JKx=Rdp{M^$hHFH9v8Gp zQ`Dnx%YfZ&P}d|-;Xsa+<(rrPH55Rv?6$FNxO{JMK3w*w?Rt#h*Etq4An4IG0|N3^ ztj-w2O{32y@t?1$Q6=WxJg{fy*>|Gfrnw^&;ZMb@aur$_u$pcIe*Yyr@Wu1zWR9Qv zN(x@*g^v}}?PYqd{#>z|_=uM!PrUT3z7kOEV=f?QA9^FgiEG@Mru=>HYI$BPlkbSU z@;zPkJ0T8Mv7#$aT5Nh#lU=FlmbQ$`-@JGsn)nl%Jqe1Gi0*kbW)a0FIa4s0I>7pN@lvv;j+E23V@rWD>N3peavVvjtzX5JkWa0!UCT zzLeLru9ocWLaTW8(Hf4*(N0VMYADTt;qM`vuI)^MkndhzXE#19GsYrIu5x7w>UEy;>@>w_+MJs#oJ>Ae)6StH;qe{X4u;YaI)a7P$_7jt3|l zlQ1ad-+4%_^e{)aXHR)`VVVUIYTtL)x3%*C$0)(bbj@571Dtf&Bjr=csj*; z#TA^R@C51RXq`%bpWZYW8j~)$h zyn^n^KeWHH{bBC#C#WU5=Zbikn(`!^JRP9fgIW0+F_Xd)$tA0%!*%_!9E_0e6 zp{i(|6m&&)qNf?U(e+aK+hK81?`6&9T<5e`l%&jU#i_?%do%Tsb~F~6i=2;O94tg$ z{c>1*S_F2R$bUHbv2=P>)dBTG4bCl+Nfl4N1%P(DH~`VS!e7KwU*&P}llO}}ZLl+& zn2cMy=4$!_GEJ{`UrVjbx83Q1PHvWv6j`Av($=%{Y9!B#j3G}*bub~8G#;s&s0t)- z(+4;Kn=9f-vXEsMy zk;dJn%-&^ByCC;!;ALz}m`F;zh))MSomhG6A-=!FJDYJJASsNgy=)V+{oQk!n9QfM zCMH~m*jtt_kk?md-{je1p4>E|?Mf_~92}IClKS{%>WYWZOF!8=c}8?L`M+XBH>l$( z;%p1$z7vEK`^h%BPt&5B=0Uk7wuYZ;Pzg;H!9`*Uv5PNmt6-OxE#-beojL3xPJ?Xk zd)%J#1rjQ&QNX6HFDYG48Vb27*GnTa8WA0R#V;wW9ju2Edq8gM#(#6I%hmc%*38zL zlcucZEJ`gy1&k}+bS#_TgZkB~ZtjHhF!N8>Z_;}UQ1Do0Te3)_ICcw|e$6XDT3d{h z?0BMLW8y0VJxl@n76D|`#X|UQem~%a^UF}t?Tpf|e=L2a&{LoneP7VDlF!<)@~YD` zueMKBiE!h6@fc>uH0`dkkZSAy=>$>Sge z**55-_@XkPw!y9ZI|2H@_rBkN4+?=!e`zAw6K`fblHlaHqIxK~pOtrk^jiSe1V2SR zem!5S?)l>I#Nm^HdTn{STWsz_oi?vwecJdpcVh4*(uwPx6O&Srw-#%G;{Mw0_j&t- zH_vRz^|@ImQl1u~>yR@p6;FR?%9kfP(mV)$eutt*c$Qav1gFLul4imWpAhejuZrBw zRvLQD=Y)Wti5FL&X{z#(a;ttUouQzLJ@7L>+3hYpcrw4v#xuU~(){NY*?uB-w9s zm5R@OUt@iKSAN@VVx6=Jt;|;S3-D<;IPc*2Zg(`6p%CRodAsZGrA_F_r%mRv#?9p_ z(qB2pI^>|nqB+`hZi;%kPs=6xX9zKYCIImgI;EawH!I7|h!S0!R0?$MN^oiQM<1cm z{mOv*0*>1KJ60^=?aT0W5X-_&nMOlyi@R3`Wl7*mH zhWp3gmPYNqxYMNmedI~uNA*Ni4aW$06>CNa5Oj_s*7ms_r!d1+z zab4%46yEi>Gt-nD&7k9+>2~6+kzYS(JqGx{E$U_%3^%O{;Xaav=R8=zjVa*O zrrgBL2aBv`qJfg@Wxyk_?QynXElV>BQm#ewC$m1PAAK>D9QQTkAnP0N9p7<)>cy;`gCwM z4^8LkyG<=KF|Tp3Ab7*|b;QWFB(NP2*-tAW%_~ufMz}=7)w$+-A5_mwv4d}_XeGkV z@*nbpCVAp9*QH!$Q+mFMLt5$DcbQK?(mMC*Gz8w(zlXW5SzGJh_p9Qz8~9W$lHoVmjjX%P?QL`;I0qi3|6{14vt~ zdSo917;Ma9>+cn$vR{8lF-szu;7u|dmx(Nh!AR%nrIjY`ld+py>0-9&5zKOugEv#Z z-P#jaMK0+$r107g39ZjpqabTxMo+);X;$-q7)b8dN7tm*JxbF^uSXD3p>o03cxQ30 zN^C066|X67#|iNyxryOugR4qGi4-K4S??=JPNv_KC=H-GZ3S+$%3j3(jsWsrM&e?Y z->K!)#(0x|2V@A!U_2)0+ukAPO5# zeb_agRazlDb?-%ioAu`0WuOA{WN-c3!=T6M6*n)g-l6+monqN1FmjUD-4OHf>sgQv z&v?X^NaNM<^qNYI=U{n%wCq?=S=21+Sp0iQAgigbV#5Z~PPX8hJw@TUN1ixMVgHne9u#Yz1|fWi&e#}PO3K>qCKHi+!Ul75jI z78ODlO~EFfz%4JdI9;;_;#lxx46oOrV#@)UK+|U-(OV{R3m9f!N_sZ;Q*IlU<$O&b zhu}d7zni|&vj)S#_P z;|*6B@9f>ZwRc|Xe_bvXUU#b1#n@~vz_C9X7Zz#BsKuUMZkhR5+B4ztzC);P1(*#- zj9a16uocvT#w}qooFB^vf18o>HQSuyTTf4nyN#M1WMYFMr$;NwQ5JtpxPh8wR4cq) zLD-aMQwznVzhp$Gd@sIrE3duOR}#_3np;kgqn>C--&$UCj@eucsodWyCiv}M1rF9R z^irV-5Y0iQyVQF}X!C>yv076bA(S&Y*PpQE!Lnk;YTKL3!)*JgWOH)lvy9}x1iHym z7OEfwXIyBys^ZV1uMuB4-HmRzg7aidZ&q;#iH2GH@z3rtZ~921cz&~7e;0^#HgouV zq3kGq92KcM6yFUtl z%$87P^Wdso2pze5*!-w&al<&SM^hHsM?SNoYM*l^;4(9y4?OtVgjZ4Sg);ur_HEAl zfRne43<(X39ot?xy7hMAW>l`}8ePUfiAtkRtGa4pU~=H%rTrdLhX9xf4}QGwe)LG4 z0SMgbY_s;U#|$Vdx>AvX=0VSrn$1AZ*M327J;$wxo!lBGWX7A&b<=#1lf85Jxyt>` z^xW#9k5);nN6MIWT#Sr=JVWz&sW5=Q%|f1p&AzJ91M1!zbT8geN~24--Sjqdic>Py zuF|cYG(EWZMPi|;_}5~jHaB_lyj1D-s)7|zAQ(~Y55LQ^aq7EP_KRmQ31 z`;ysr3n&>1$`+FpA*OGN^iJl*GiCZ`gBvUFEDG`(P0wVQrGktK`@FRd8mlQJ6NX8j z2BwA0%SA_Q+V-Zt_mT108)I6FnfHQ|_RrtZRw65i3A?t;Pk@`sOZZ?BHmaTagyx?P z!zU4*d_o(n04^bGUgyLmWXoAe{pch(en0#HXB{cHyKX|SwW;Vdxa;y8j|$!*O?X6o z1l~4YE3%Li@=o;&1a#fr^qj6I+m*3 zo!td-Dq#EnIF|ahj~Iy}5Qy&9P<2C|Lg9n{kcLOYu-`7ID^at&_UB(d7G*i-J`&Ia zWObmFUVz>IbeAg#r+(X(?6QYY%$MtSbief!@U+*2n=XYXF5CiOV$%5}-&{~1v%l|i z4dh0j7tZ(7$M*e$Z3ji0d<5=Ky7w5dI53oWzT=gw@T&is%r=+K>fLaSPT`&!$W+(Gv< z^7b!E{hG|xc~y_g$&;%D259VtMYNsd%Ob`3x1_Xy#D^p!6+83a`ni4@S?dj!Coc}1 z*|_RyJ4(9fp)D6kMjT@ZlWd&xM}b$+r*UEPtD;ZnKeEmNjSUIH0YxfrEXK_|{}s?( zm_xgq97F35S$`h-Be@m}s(Da@{82@_tPvJBO5eINyd;%F6iu>MH&;JQEJPzGidIY{ zKF3c+Ii-9{NuHVs-VY08Ad~i=eq&IsMbjZ1F74WQ-yHOkLnz>t5!Yd)DJE}poa5)y zk44sf2N2o!JidGJf^v&Tnp#8tEX_*KuHTGh+}AfYer?L5|JV?4)Z~<)X29w`4QK{` zx_33>NdH(oVctiA!lH95^C4Tyc1mhpkf^_RyS3XyrRgnNcK@|bLlypX*%B5RSgFT&0K2X_O23!Bs39u~EJ|%+Qvo3!TnxlAwrfb#^VS z`iq=%%}p}eKu_1N_sz~0_05GPc?bE?0go!aIo6!XH0mCv34ZZU5ip~cR`SX4cVCd- z<&KQow5a89OFMt38GV+0h?P=@?BZkVHvgRQzDMevAvhfP{y)WZ3&Hi?F>4OvE|<`O^Z)#CiW9kULf3HzG5*$>BkQV8I%c;JTq z94^fRUnm`tRnsL6P>B9D9>dpCP405aUGn-7aP_V`^yl-RSwnIH%*xE4HdME`TNFX5 z(C`^iMf$3htc8hig4Hm+_hyF@X6U$b#W%*iQ$E zi{LPmwX*6pw|-PmjO2p_x=i!ugl|_&&k8G6Mw%~!ycCZ0_;54mXXlkul_lRC*3Pyw zC!>HejS0ecP5{a}4G`s{H1!8y%bI4}pD&(QNkH?C>eK;sW9}B~&?%=rQtM`Q7I)6M zGUwSOSK+C=rd7`!pn}D=1lwr#{9^Nat7@Jd{YyXn6>qJ#Cp+_YFR6A+)6x{^y+ti9 zJ)&mOWk2AV{Il-Bt1N|(_Gif7y(vj1qiUJqZ2-*At z2+cvxk3gF3rRKuer6%K_wI#2^QoNP{8A;1qVDdN%$Wl&{mnF2vKb_?fgEi)@q@I>g z+*AExY!m6H-qB1bIQ|tjITH(WybtHH{Pue;_9|w(Z=USO+C0l?*=5inf1|#cvtZ@! zs#<21*@HtmlHS>pTE-gw=sIx{?oiGMKzLhYhHF~>;|cqX5K=k$BiDomAdlSVHw4}y^i6JSYQRGD$w6VkEe)EQ3vJ_`59VJM%^xnvYc3Kp(l6;CB#oeM!`eXi zsx4El;={k-zot3-=&S1D&QIv(GjHUToej7ttNyH?X^!7k#W&|cy`7cYT`S7v?5H8& z&I;lRX(_8zXme(us$swThTxz?DG?HNsIZXGZ4 zfO+!DoAcef7k7)l0nRcv{cQFM15kv@`Xto2Snzx$OGTK=q;oU8G39f(@9$k5W@gvr zPw%{HMrNU@l+kyg5fQ%*on;z2#9EKHvuB$ag>IS`Yt_&bw%Z2%OO)*2NFJA}V+JZp zzS;Uv%NX1Fd|G?I)2*Ow>wQ2I#ufw)q4Thy$ z*T)K$+_3Huza?H%LZUq(QWN+~>|yS%JSP4k^rNq!qzcctD14Y3xEbH(S0dUN^c#sERowXhU>uR%hGuv zO_A%H&i3fVRomjo=i=Zu(G9zP-6a-jv5cD!qs@8DcJ``uim*p-p*ngRyb=sl|loP-9WL(7m zELB1i=(`<3Ts-Ht9O`2`cyNAie0^)ZQ(Y)yKlriFCTbXplXZ3Y@l6N#C;N$ny~D>Rof>? z!6vG+TIUb05Iflm0n`FCnhIApt)5|uFl>`mjs=DM7WWePf2yyaDwrQ{J-d@y*yCaD zbt3AR{e^|c0qYit4`>{<<+79&<=JWWWRHd|AS~haDnAE`+UmwsU#e7Y+#F!(8hI~o zd^a+zNHWBSv3Uko?|JGIk2$vokdnsPI;aF$k1GBR^mkQQrwo|e27j0`mf6{Q&yV2E!8@&=~YWTvUpZr5byPwk;h5D-HGS2?10IiYF~o?5eorJJ+$Gv z@<$?_JA8;D;5&Mh<$>Aid2!lWrJ1zguXm0PfV)x{f-*FBtBd<`0lf(65b1tWv&J8h z-r(k`$;l)t$ZcLxM~0;@XFPE2qrrtN3e>Z=nx2F5v6JCb_qQj**@mIC(BD3~WS0Ai zS?2o%cg*ewfrLu}=cQ!Y=ObqqvR>B%m38tjtf>-_#Wp*BIZxm8hQ0E`-;3clYlbRKD74q-InD&SvxolB;?N@MLvt!Jq(YSUD)`(p8ryiM zfSYpXntd?@hIhLcESyK*@!oK*qNqW;IE*WiGechPG*E>vYqn2m}YL`Kvo6 z_nLV~u#mv{QMsOv^v#@>hp!{`#8j9?>$c`<7J;Iaec##j`amG5&@FS8655!uX3;|P z{m3)-!=p$5smd00dDwR0}R@|FT!PxKI7qv%k;pfvNz1 z<}>LUfYU~m7#c~O`n6{_UX2cDf;J@^F6Y~hBeDM#@olU|$Coa!wrn$)s6yzQfnVz> zlWAK6zltbTu*jeXI+1}C2om}LNG1IqT~fzfBfzQ5c>w}6VuPBYSrMkO zectMtsbixvHXz6FW!diqc#LG`HF*s@aK4%w@pt&)!Nxlqk#NGmissI#(U*lK)M`SqvVv*`13`7z4;eX2IS={ACP}U#- z!?<(`hmZ9?ygu=SS!=p@>Vu&$c|93EfVgi&j zP$y^m=`x+9fA;r$T&sRq8g7Q+T4ggC$IYBF69#50>rU9+vQm5zDQ4}{p zq!C1Q`>M*ncxcV=z-r#;qO4R22eGxxw`ys()qfZ?nLwP^{UdR_0LbBPQ!{`_X&7&B zjV$cw_;hTA#HK3WIKUm#e%A-2&oBQ~-dAFF19><6?wivJm$dt992&kIV>dgL{!qbv zC4DKkh*~CZq!alQXy|j`FN9J(`dK{1%W_(Ck9PbUaNaVw6}OFd6@ikR5*P^?paoJB zIjtJ)7p~aq2JGzG|6a(I(5q!5Ea}ao|FqRf#kJv`+u<)Cn8;otyLJ)CSlUGZnGtm~ zkL5KQt?%^vzzl0w7jVAo+Vsb1`ki)xK7`gq2p}_~ee^)3c0}v$^*xuXB)wHka#oQM z$*3R1I<26`Jyh@Q0=|z+(MViz-(eFKbf9E>ab;|yA^7BbD zc`|d)Ju~ZGYdsraqrQ8w4d?)#F>b+9@DX8jMa0I7yFWtP15fNUsPTRXI|aG(#3j?{ z@<9P*qHE@#qR27cExf6&CTp^mm5cvohbz_MY!*HCmnsx83NEaMd`|Y^Kb@&saVz_F z$3GY?!fkmn0gp)p3E*R0C8dld=19AF|30Sa}%AVsCA9qPBb(sSG&qmv#JK&L(237=J@cklh z8sK@+IuTcKX|blSPQE)=;zT^uT^e-x{E#}}Pkj@2ReKTWJ-t0EnC<!l{7 zn5}#s`!HflZh6fbyp0L!Yw&FF^LQrL_HhCF;EhZ{9GaU4h^8(?gQ(6=EIg3{3QAW2 z30c{?U`$5(q*51<%TOwbwpBOYdXJW#uk?j$WnKg<{{HUb;}HLwum4qSI3tbG6J-YC zs;3~!4Ap@miXMtWDM@PiEd;Zr&_Z$_Q3&YS@)Y3~h6hl0&Sro0Rt0h@_djwf1kHkC z&9>fOdg&k=? z{YSv12X-sAzbJ*A|4lR9v}pDJ`YmsRU%#ud|I&sD(0u@M1L(L!iga6BTf@?A%HCfO zl;qDbyJr3F6b-#FpeMM0hF1of;<1qW{4gPZ~ox|{Ckt%!-fB?g|pdreiOIu|5n(#v(ix3 zL~-i_E?(Zf(g})^NJ{Tb*U>5Mm!Y;Umi}&`b zOwvD6%S&KDLk7?MTez6loCtvf6D9c&?V+RInr;j+8=(J z3xgs7-QSUTipBJ5i)Enc?|I4rTfJ=~fCDP}UbAKHRQC2bII4st(zIEW6uVoz;(F3sqr*-G1EHSLQmHacml%=Ha19+tV8rHEl! zkQn4A#7>;$cgenL^J{Ezx!B?|H2VHtAK%t$%E^?U&=j`yvZe6*9P*BZ!QjP z`=}iZmLTTI*U88GgyY4W9clx7@-9{RB2!9z!4d+J`9?S`!w29aAarrqF=Y8TT+(F2 zuj<1GqZ2YRmI^WKBBy{9yi_u1E3R>W{oIKYC(K2T*1P0NyH3?sCu;_+yW0Zp5x@xS z0wzLl4-LI5%w4PBU+=%=BYiD^3m1H(F>d++FQ9bC(KjFUcjvOhaU!J90vvRwX|rJ}(u zKE+S~E-BHYdGxD$ee_m0zYlNJ=JJTOgmEf@*Xa&XeY4*}d|Di~mFc!9d$c!kq_@;< zLQ|-eMsIhXR~oZ)qn>l$dn!K7ARLG(YCPN(h>QLj^0)M7itwA`!!z9N z5g#Q*v*p)@NfHt7+s~nNN#J09i$$&2{@sO!U*7}=u*Tw0(^}biiD{>M2N$pWotj~F zz#wv`WaNs3y_|p*BlG%uh@+o(1df4KK-}8F{|VDbi_YDz5B1&W`(7Juyh*>C?*{-O zwUs&x;B9fLD@88lX#czB!`#nq1hj;;{SDn=bN_QBo5xuneMTyuIMxThu1FJ~E^qPq zdc{-BH4)0x@)qip^Y&GwR9?dyfVnL1tu%^MglHb_WQ_)l_$=%#7S)=(4BfJw#YgOz zXdd{f%)N?44w*bZdw$^HN9~HG6r0PJEP{qzXfb;F+^Kh19vPcg+RjizQFq+U7Dh>_ zU*xR5+1V7QWN@!`=dVD2F4u35-|P^&4Q=@*RV`A-&(-hsIVWNCW|yo&=&qm2kLnrs zwduC?cERgX#SoVpQC!azy>eRa7dPzYKQp^M>?t|GYtPOZveBzQ`#Qz(f-uXE*p*MJ zi!u~Dm;2^HLGNl-fSW{4T^{qPYRr`TCeA5jS<%0{JwZ@k`(9VFtVLkLF_jCe+ZnOK z`9HSbXday4+_G=HTaT#2y%%0?BN2j|6g4%SDm-V}6V?g$_I1XCz6*sn^t?IPo^bk6 zzwH=3l5LoTRHe)FNCRPGgyE2arr%y7n@>U5g?(b#Zpb;?zcCTIxbn=a$lQel2sf`a zHyD=>z9yOWZ|Bx_YwYDV_Fn1K*6OGB>3yA_Z}drdhUH6*|J!Tq!{D?$rOmC22`?^pD3Yt!F)&;6XuoV@>5BzD3m@X@%b*;;AERH)P2UHTws7wYY|D__m|Ve|g;?*+ z%3fX$!TaNxB}zXgjt;Bh`B2(hqqj`w`}2}Y(cTWn?(MIwS2Z4-$6UBxznNU%P;2!` zZAJZZZRcq|wSa>85F_7fV*d9+;1k$3bMi@>9S3 zf$OzX)HG_#`CbjibbI1nW9j*gwL~4Zhe;-?hF{(v9ZVd(Ki#dK<;?{NbQ30nDe&uY0sau@xQc^u=gh7u_DY(KJ3mCB$VFs&f%}`ik*Xw?9%gh z4|ekyQGt|v0Lv}Q-pw6uMlwCs`KNVXs=431Yh`XTI#P=o6a4It~JC{H=E zQ>4=3WB2IyOjuBfg{t&we>NDW*$Sp99fynFnS?xQiTYNa!oI>Jo{wkQ3)zam!;+k| zw8D3L;c0Abk(jB9jC;4f{rxajIM^T>x;)!N%g$w7z4|R=`$yq0OKm@2L>-El>6{sR zj0^0*1S;wFmmqX34tCpey~5?pkZh%UhxB73RQ@}v6p=q*ULmmH!Vcvg^mKfwxHs!Mqi2cvl%b9qXFy9G&wyeh+$uxpKL z?Si)v(;k)g$S$!1WU&CZ5Tf?_Ob5Z5*_JHQ9&14zVnIvk8H(R{ebIH?3xYb6xY-7)GYIw*w(t?y}ObNE_69F$H> zh-$M;7)sq_Ni3@=DcXB-buyAYzuP$_b#B8wWVvGK@n`hwxj@E(AkrR^6{}&re>E)^S-^1_a>jDF(6x7qJcw+dJG;HR2 zU_?*F%am8V9K%kB>%5!%P&n+dJD$(6W^60t^qw&B;@vYNIwKqv+IuC{I^QZD#DqD! zz=Iu|zNelm(TzmiZ)nnUNnhO!7xexK@~?HHKV5sH<>N8g)7qr9&LKA9%WRkltxMDC zh_z?CB8JCyn!n=W+XEp{OHUrpz)+n$()XlcZWrkIv*w;CN<{oW$4Du3+qzV=dGtKyzC!yVtDefhX2yLVRg{$AuZ9FJP>J4}gVlr;mER_msBU#_(r|3+ z8VFpH<}0%?{ysZyWlwcJ}U#qi1ttoT%YEyp5*t zkvP^^06>~iwmb-YyQ{}u~YGC=*%Wd$fYsT_}2VMvDpB_}MRCu-Af1+4u zI2tTB2X{mnc&<)1UwhOs&5-oMqBoe7NiB+YD0te0@Nj;Oww!~eyOj15@|s&C-|!ZC zm>O?))g**@$%`(oDj```ACz1#!izn#PoQ3H&D53~O;nC*%lo`VYrwsuoG{^m^{$`} z@uQvclhH7vnCi4Ae|i@1A-{u%MZ5i(RH3Ndot$*8ro*$V+EE7jf=kLC1U^y}goSCr z&Be8i?HB86$!A@XuQ&TL`dg~ov9d0ZsD;Al|c{gBz4{`9c`qNGmP}rqf7~wHW z3iS%ZWpm&<8_TG|eU#-eh;~&QwUSe|r5RL65_OG=ol?xS!SlIDEx(^LlUkTm`Kl4R zo4X65z+eq*L#!r5Wxf<%QrcA7YMNZ0W3gEL*=(x5hIMD>&A3uP%7PIURoZ1?Gl%3Z zEFVucJHat!dptz$QQ(zqr-i?=hnTuV3 zDDY^i5=4iEi4~25x-sZ83DEQEBRYISFm0@U$&+vuNN`hSxP=9J_^_HC}-|7kBb<0;8lrNS2|w&hDPQtq1O=s4AE-m4()7wOlKia#&^DCAQL`?TLw+|ZbT;dOs?k)~St=1BeyU$T zKsvwHLMxn0sCN|ip6}=mL#Z1_`Gzxh^1$f8s^NUZx?9N;Rrinu7c%edH%j}EkwbY) zk+>7}Ju=Z#23e^mvw@a3U;NwUO&;A#74PN+RK^OzO%mDO!eaYQN&t?vmS4-lin)@D z9(<$Hm$}<>3Jb%`Nm;R5!cjboi3D9`Z@ONQwC*spH`!1X&lgfiX3#$c@e8N96j9&o zrgv8Dz94e2l0XSSM?IO5NTmW^FB`cUQM%4LcjP)CM7G`(2wrUGTSodK6 zn70DL1rCU)(1X^mQSVt{Fb=pv43Xh#s5cWf(-3p@yjyq#qj{C!(8727Ug5NXqLC}; z+!mw09btFo2yJTHc{-(iLO@135yuxO`l4XOb?gm6@yYywL7|sS*oIZKLq{U}$}xyI zuA{fWk!QG=_w-iCg3OwSPcNhAj>dSn@G!l(5*+J|uK45`PeQuZF1tNv*z!f>Uyf zd7F+zm~3hHWelQmy!bTL)?+@Top!OCd|pyEO>W_F(bDTeenR4EEr(z)gBivtTW~Zb zTIe2Uq_`5olj-VA z%Fk))y-vFBItJexUiA=_w2~S$q-T?$W<+|jJH9*UWi5vbE7UnHbS?j?&8aAxPZ zW0e9QPrdjd@^Nd~f98wu5B5D>ONqe);>U1Vc)ZisQF78yVg`XFuv4d>cEm#FkRl&) z8mqqcG!5tAKr(93r|N}^+ckH^#?loFbu*R$sE9)YKuFX>C-BOXO!0kp#7(AB^&B`u z1+A3LU5arSWq=wn*cX#qTVC=ATTcg-Qd{S|{sq12CMWE2XUPqj{ZSjh?UYZ&S`;sF z|ABqz=m5Bc;cC0W`5QI*|MBe{Vd^@A(BdxX& zar#ZVlhV=y=!L;T=?bqQlV1m;qs{>1D!tsrGay_Z7fk_fzF;OALNB*OF{&Ai06^j^ z@ES~slWVY9Uteb#lf8jTk~HP1vn%#r94y`YQ7d_>DWFYXBvf4g*bNffO$r!w{P=MN z_f8J6ZNu`6mByonW1${X9=m%d#juM~75$adQVX zSR-ll;`u0Mi^ikpfJtT1_ymi(W8f5|V|T6dK z6vtpgfR+^Wz}INm)e!*S3uSe!JJ=eTtsL=9Dsrg(5YK-){@VV_kRK19`_`N|9+!(1 zsQLLxtqXL25l?sCON*|quGgNQbMk{ynb|aUCb7>JYEJ!8)h-wcyj{DuKO<7=zi9Of zoG@k&_f`n@xb6*im$}NKwrY^U;l3k)bHalAF;?5PKHD`5`jT+xU~?$nfq>phwZGBE zT{Pm6Ilceu=aZ_8E`acylesha+uu)1!M^P+0aLRYU+XuIq~I8%AuII@ zKXuqtu$18!z`kG;lFVd=SHC{jUfg(?52bN@F>mjUGGov|$lt8MG^srP6C4lrk*t~%x7$*MQ9h7g$@BKPd6OPrf&xD{F*zZO=F zpG?1Z_^!aN!YEp;sBYbeU)~u*mn(8_-@MRU>l!p+?k_odxep-dt_STcSG_h(*C+)8 zm@mHoI-|Jd!WJ+hweA9rl=<4lYRlzGh%;N@%<~qV4?5U!jKRhKPUFPgz4ymc?2%v; zgN3?JcwrI&1a;a1+Z=k1xa040hX;gFrgojJv$UMYuFCpPMhd0HWcxd zDO6Br-1AME1o-KqUEz?bn)6Woa2fO43;lVhZGp{KXn=7-T)ezg=ChN&epH&U6tUe4 zJL(27?yN1aU#PPIE|vUixUo4h+xYJ0A|wMnN&iAiyNSwW16bHz36(~!9q6{Yb+$0k5^6_ioAx%DK!FP%AKO1jY24SHr>W6g zZK54GOVdexmO2w#YgPp;T4@Nc%F8Xs1gpK!ZsETMtes9E!+CR-xi`TqRt*9(ceYEe z(Xx`hUdXRU%c$L}xIV`lcGicrs{tU{5$Wl7cMWwB^z6bi0A74?#%s{nfnmL2=7HK* z0J3m6<59Fr{2+U&WH-lg)~17V-_!^%DeM^SqYgV?Wxycl2h7C$#$8 zGq35bZqFMm{N3t5jm4Q_JK1&t;C!ew4HMg?LVpAv)Cpeutj~LokEfQ8{B?%F7aY0l z%+hQ^td1_?5FTnv@X?{?F)1MeXM@Y^CHiDGo;}r?oR0FBi}FP%0_J^`TZ+Q49mK2F0X-d3YOi#)gyO0Ho-=ac6lmR#HzyCQeGko zyLmTzb4y-|qaC2%7Lkwrg_b^o>8^Lahy1pg#1k)E;Oc!r3);FhTnILjI3;M;zswUFB^VqAI!#+C4!r z$Wpc)IlZ+!!mRGWV!~qO)%;ZrsJu2|eiZOD7wbJl^mpPP661`Zek%qU+;h%|F%Lh=@L8F`*O^G^Fgo!Nn%<9gPvO{H4NYy6du*=w)>FN0n3m#@SOgB9xS8aIx? zr;n7sjU$?orkg$YGvvVRCEjOp=^ik2s>XlLWJ`BjvoJGzHS97*v->&yFdM1M*ND(9 zyjrgxAN|hJLuC`_;zOEg=$Hk(sI{E$_QX-|DONN5Agq16Vmw@Y8|ga7x_j$nlSth0 zs!AV!yQOvc@AJAQe|=)@XzrxjHLtuyb{lZzJ^pg};>C*t(DPy)IiS+< zP)hI{>)))7%y_bN#6A1#tmh*UE_V!)1Lrbgk>b!|cK5v2m#K3YdT6?9W*e4?faz+X z!(T*7Akp}iTXz96E{2UCaSKbk`QZc&?JcHlm-S{66Fa?ha5*D=^qvb%`zBwi&1|c@ ze;+@mf_#uNw=_)5GZPdrOK;8^&1SgBL1rK73!88I4CDjb>t$MEi%yRr&#D3O83dL! z8DhNUL3ruWbJtinxLD6L1|70xnPgHRUhRQpDb5EahJ}|_-RNYM>H#8JZF_Ub$$D4o z-PW+zEXcpsQQ3yPag2d9HEcZcy!L;Ew-}nirgd2yg{bRoGm<(|{@Hyi@KT)xk-dDXzZH3F-zJj#i3cVP+ZKXYO(IxP+N{ZpE> zkXnExISh)@kU!<%wVqEt z(O4q^fG85(qE^X?stbvymAQ*DF`t}L`6A?}4LHWcMcEug z9xg%LSl#H{*tfO)XdAVX1#TsBE>XkYO|`~K!w_sTTr&xV&dzcHNcz0iTe{7zJmwnM z1Nll~PxC&_I$e&h_lOb6L+zXT-~Pc`Q64ny`A={w4ST-aE;^Qa-{%n5B7V`h(LxS7 z_G#=(5ZcZ5@j)O=MAx&w3(avqapiMkfFBsTMIM64E{Ex_(gpM9ub z+*dN(fel+94_V1G6J?_3YWXMym5op~mk)17OtD6!R_Mc5bbF|%n0`>65fHyJ>FFi6 z1U6I`39)k#)Dcl^001nNC5qgSpr#L!>QoD^39X_N3Tu?K9*Xw>7{4!vV)ie6j>|+mEV);|~>|bHhb= zs1UPjGaW++SDA)aA(Kok`pr9S*>sO+Y%{{toxSj!D5NaHjY}w@xrJ){Z5j?{)aJ?x zAu)CH91OkVM%c*+!0zhj!k+e&prc&O6UQ`w*}-Pjb9Y%RH-` zV=m#`*Nqo^_!rU3*mxB5x=3411#Js0D$^Mj-8e?BlyIG+nSozA+hnRa{aOqfY~0%J zqAB2&D8ZD8*nj(j3J**iJG1crWu|WuqTdbUx`GT{D9G(Lu;ZUF8(p^2k>|Q8#p0p~piTrZk`V6vNn>yhB zS+{BZ^vT&vB9Z{z9y$E7Cme?>j8mA?(PzeJ>}Zas`mMJtV_Dd3u1AN<`xns`>Gm@~ zV65a4!IAc9rt!D_Yqb1!yusee$GvPB1G%K7PYvkdV1pH zv9CD~V954_mPuHah$GrH1W9mU9LC9O*_8$QqYIiizUekcL20UZ5*f7Xfa4@wVPWc4 zl!ITh5nobi8g9*=Xp&Q+;fB9h=V;ra7I7zVX)uC1a+M(A8j_h*Q8X|UuJ7G#4|y+2 zS173_o=9f@9F{_7ss|@3Vg3Dp}3x5rZ4I1L-E~x|Z3Ez|+ zS73e#gUp%D2*?a|Qoad^=9ja!-VT325){@N^11SIXbi7#CYwm)Dy)4VsnLI=g%$jB z@=44dMhao;z3JRH^pIW+CML6-a}Uo!v1C_+MMjkiXC(llTIuFXkWr#i~pQAJM&F8o_Dzifs97sUa)(wy`rKG1lSOJ z?5DXP1~+&dYgEpfQl{N7HC~B!>v+H{Mn=T*Pw+PKL2c@rxSqos?i)(w~=q z`qEt<<+8$-AuBH1q|=w-sRq+;wFS7%VPe#)dRk-eRCgCksM{j?Oq%nI_-VV+&SGOJ0xYgoA0y7xd*EnLdT;JdvY>CZ zXsONihwI|5#n8hW^&^G?g8Qk*%$>!dvkPDO(k`>m_7M~jq$m-cbG@L-UHKN?#gKX|H`2bln;jEh-w1)jz{IG(v|>4NIQr}e?+k4=yT_>+jcgTo))vmU85b0I)q^ zr`2dqwYXV2A@R@lT=j3y^E7w~fwziFXj@4;afHh(PM$^kvV8Df9tvTyRMD){8#x3b ziCd!d;U=c}CDT{sF$PgYpoT{rBQoYYfxAqRnhuWORF+RP$9yvQRLaH^$h~TZI^m3& z>p`u?ZAm?-uMh5-=GO_q3HcLaV|(}|e7u^$rrW*VqvbY!jy%pLV?Q}-CwX%2nDU}K z7gjy2-ajMaJ&kbbcxI1_X;p^jGAwI_+=uBEb@ry6bH|i36ULnthJ`o=U% zjTUF-_@^Eh^F=Y0t&WtE?ZSFT87889#R822?2%rGx!>H_p-f%-IX6C^JBa7J{FPFJ zi5iDP@ONy4+U4{EN1IiQT(Bs+kn=;Dkjj{x3?-Qz^9`{_zU|oucY`%2^3||q@+tEL z-l43S0l1=hkNbingIE>^MDVLyG=FJgS&3m_5`(^J-Gvn>!XM2n+L2j_l+(jDGOqubZFKE&H`A4#!1G=Ihsq~d#XB%8}>s`x9UQ-){`_dUFD#1>zmxkrM z@2ZLDDrNCY1ndi$n{^NVkn-Y1oh4n}B4`mf>@lk2L_CGv7G46#roKr@Wq(bz_~b!V zqQ?Tsnty0vj_}h8Si5P-1U$Cq6zaH$74bVZIe4Bu{KaEEK!qk7~ zZ44`tO)u$-(La>DDeYGP+fz}QTHp-%{TLI##zWXZ_cc{buIzj_$Q-5uFGF1uY>~Ee G#D4%t-m(<{ literal 0 HcmV?d00001