From 20af720cb2da12f522eaca950d31bd89ea4b5b63 Mon Sep 17 00:00:00 2001 From: JigSaw Date: Mon, 17 Jun 2024 00:29:26 +0200 Subject: [PATCH] feat(matter): add matter server app (#3806) * feat(matter): add matter server app * fix(matter-server): ci container name --- apps/__tests__/apps.test.ts | 1 + apps/homeassistant-1/metadata/description.md | 1 + apps/matter-server/config.json | 24 +++++++++ apps/matter-server/docker-compose.yml | 14 ++++++ apps/matter-server/metadata/description.md | 49 +++++++++++++++++++ apps/matter-server/metadata/logo.jpg | Bin 0 -> 82523 bytes 6 files changed, 89 insertions(+) create mode 100644 apps/matter-server/config.json create mode 100644 apps/matter-server/docker-compose.yml create mode 100644 apps/matter-server/metadata/description.md create mode 100644 apps/matter-server/metadata/logo.jpg diff --git a/apps/__tests__/apps.test.ts b/apps/__tests__/apps.test.ts index 7788ae13..b7da28a9 100644 --- a/apps/__tests__/apps.test.ts +++ b/apps/__tests__/apps.test.ts @@ -27,6 +27,7 @@ interface AppConfig { } const networkExceptions = [ + "matter-server", "mdns-repeater", "pihole", "tailscale", diff --git a/apps/homeassistant-1/metadata/description.md b/apps/homeassistant-1/metadata/description.md index f12abd90..2a52acc0 100644 --- a/apps/homeassistant-1/metadata/description.md +++ b/apps/homeassistant-1/metadata/description.md @@ -5,6 +5,7 @@ Open source home automation that puts local control and privacy first. Powered b Check out [home-assistant.io](https://home-assistant.io) for a [demo](https://home-assistant.io/demo/), installation [instructions](https://home-assistant.io/getting-started/), [tutorials](https://home-assistant.io/getting-started/automation/) and [documentation](https://home-assistant.io/docs/) **HomeKit Support in Docker:** Use MDNS app ! (And follow https://community.home-assistant.io/t/using-homekit-component-inside-docker/45409/41) +**Matter Support in Docker:** Use Matter Server app ! ## Migration diff --git a/apps/matter-server/config.json b/apps/matter-server/config.json new file mode 100644 index 00000000..591321cf --- /dev/null +++ b/apps/matter-server/config.json @@ -0,0 +1,24 @@ +{ + "$schema": "../schema.json", + "name": "Matter Server", + "available": true, + "exposable": false, + "no_gui": true, + "port": 9997, + "id": "matter-server", + "tipi_version": 1, + "version": "6.1.2", + "categories": [ + "utilities", + "automation" + ], + "author": "OpenHomeFoundation", + "description": "This project implements a Matter Controller Server over WebSockets using the official Matter (formerly CHIP) SDK as a base and provides both a server and client implementation.", + "short_desc": "Interact with Matter. Works with HA !", + "source": "https://github.com/home-assistant-libs/python-matter-server", + "form_fields": [], + "supported_architectures": [ + "arm64", + "amd64" + ] +} \ No newline at end of file diff --git a/apps/matter-server/docker-compose.yml b/apps/matter-server/docker-compose.yml new file mode 100644 index 00000000..6ba06f4e --- /dev/null +++ b/apps/matter-server/docker-compose.yml @@ -0,0 +1,14 @@ +services: + matter-server: + image: ghcr.io/home-assistant-libs/python-matter-server:6.1.2 + container_name: matter-server + restart: unless-stopped + network_mode: host + security_opt: + - "apparmor=unconfined" + volumes: + - /run/dbus:/run/dbus:ro + - ${APP_DATA_DIR}/data:/data + labels: + # Main + traefik.enable: false \ No newline at end of file diff --git a/apps/matter-server/metadata/description.md b/apps/matter-server/metadata/description.md new file mode 100644 index 00000000..4b8d95a4 --- /dev/null +++ b/apps/matter-server/metadata/description.md @@ -0,0 +1,49 @@ +# Python Matter Server + +This project implements a Matter Controller Server over WebSockets using the +[official Matter (formerly CHIP) SDK](https://github.com/project-chip/connectedhomeip) +as a base and provides both a server and client implementation. + +The goal of this project is primarily to have Matter support in Home Assistant +but its universal approach makes it suitable to be used in other projects too. + +## Support + +Got questions? + +You have several options to get them answered: + + * The Home Assistant [Community Forum](https://community.home-assistant.io/). + * The Home Assistant [Discord Chat Server](https://discord.gg/c5DvZ4e). + * Join [the Reddit subreddit in /r/homeassistant](https://reddit.com/r/homeassistant). + +If you experience issues using Matter with Home Assistant, please open an issue +report in the [Home Assistant Core repository](https://github.com/home-assistant/core/issues/new/choose). + +You may also open issues in this repository if you are absolutely sure that your +issue is related to the Matter Server component. + +### Requirements to communicate with Wi-Fi/Ethernet based Matter devices + +Make sure you run the container on the host network. The host network +interface needs to be in the same network as the Android/iPhone device +you are using for commissioning. Matter uses link-local multicast protocols +which do not work across different LANs or VLANs. + +The host network interface needs IPv6 support enabled. + +### Requirements to communicate with Thread devices through Thread border routers + +For communication through Thread border routers which are not running on the same +host as the Matter Controller server to work, IPv6 routing needs to be properly +working. IPv6 routing is largely setup automatically through the IPv6 Neighbor +Discovery Protocol, specifically the Route Information Options (RIO). However, +if IPv6 Neighbor Discovery RIO's are processed, and processed correctly depends on the network +management software your system is using. There may be bugs and caveats in +processing this Route Information Options. + +In general, make sure the kernel option `CONFIG_IPV6_ROUTER_PREF` is enabled and +that IPv6 forwarding is disabled (sysctl variable `net.ipv6.conf.all.forwarding`). +If IPv6 forwarding is enabled, the Linux kernel doesn't employ reachability +probing (RFC 4191), which can lead to longer outages (up to 30min) until +network changes are detected. \ No newline at end of file diff --git a/apps/matter-server/metadata/logo.jpg b/apps/matter-server/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..35376e2f51985ff0fb28f1dfa965921ae923674d GIT binary patch literal 82523 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

T?y5vV8Vk)8L4>PsUca z)3+s`5FaEv?1y8lz9q0x?ogL^00KhRfyc_Z{TYF#Yg=l0@Bi$Q9zF`YU|?zVZLPo5 zR^_nB%Hi-cqH+ch8+s5W%G^G<0&kF37oD(M2;BV~^gW?6? zg(iERAOrmq>n+E&2eSEu>f5CYt_O+8wB+BL)&swq)avO_JbJua63Z3?{PZ#r-BrR+1VGKP6`cp?vy%GUI-`p5Gii7Z@I#^yD z@VbQ8*(csKn8Zq78W~sI=9zqQ$(J!ehH{H;Z8S5i+v~Dtm0UW*O$r@&F1rzTb#_t* z7_U(-o99EZpyB|~ZvXY5p(FkkCL`^WTQV=xS*mN`Gj*~|e!LMO#izX*OuX+g2yV89 zI_SOVeoRQ8MvByn4@{cjL60>Vgt8aJj-n0dNu>!{oz>vku#Ybgy*hTAH`L$c%6w|c z6Z^xX(RPS>xpZ|Je)H46))=VmZ&{5vdeogGw8{I65IEUO;sYA3bR{U`YTPJ^t>d5o z4=Y`*i5=mEZ1my<+qed9Ou&v~e;Mois4V>UwwQ!nQg*z8lshUzXtqY@rMacL@fEF8)vKK1{{;m`Tlo7| zTYP#`L^2I%I@~FQyLj;VX%##4G3eARc?V5!g=u)5|4E zh4q7^wJp)aHEd8pl*pHi1$A4^?tv-3sQXymFRpw(-)7exyaN(#DHJOQvfZ=#Nk zvU7%~!V|9k(UTFQO3Vy)Hfqz=K^}CQdiaKtE6stC>D1W8QsHVJy)~|1if$*FiO#^? z($~=8C2`|`mC~4J>3hlzA_UC*x2-*Bc+I76x0M>w@(P({qbpjcs!Kk{8&Ijr&;=0Q zb+Cj_r!~heA)X;{#<)f zqmdx$l@4tb?`_^-e5TueJP~BGuBko2H|f42b4KXp%vH6dM4BH?w-VAj7HKm1bR3nq zs!1;qO;+H!vDq+CIg{3T!aR{~;vs^rL7{WkEp@i3<86843kOzNVO^IL?XZs^TyfnU zj@zH;)SS4^PhPNp_K4FRI5#%4#D=rx<6{(BxIBrAP(aioUB`nZs!CRwW-kaJ4*5C? zdBgB(EXh$~#wn85%8wPuK(;V9(@2nPLvQZmq#I6<9*n+6Oq9(T$K+19ZF&pI*^w*= z&+flmRRg#3K{eWCNY|-}(&1m&irO}F=J-6bZ4imwxcD$bJ*TmjdlnZwoQ@5qSHo$x zJyg$=sg~+m^8R!75B)rv#OXvi1(e(b5%5NJKHS_C9)Lzg| z0iHWAeeb*AgI6uQ(y>wA3UcPv89_nk@fv8MXK$p=mH4Vcou}F>oORQWQHvaSE-Y7E zgS7u)8}R*81PLj(@kpdb5SCe|O-mZDTl@I1rm_OJSnjmj z@k~+STH_A$pw!-`jQB$G!7|0piADv~bS?d|ClDzSP!!GpO;GA=7K5qaCn={4JT%)j z)_f7CDP0yS-7jrKh5#K7cHguBgH)Y5nvYji$F9!$Ftoua>Z%?SQ7gAvf~5Dsl_&-R zs2K%NQ$G+?zGevYYk)AI(^gHn54E^)GfB=LR@9Wjs)aoi>lKW`#R@l%h|wA)!7tWP zsPs>y!1VsuyS^tbAz~A$zuv7?dHTSd#!s{C$oKvI*Z-dc$KMg2KLMON3o_iS2A(pV&up$OB2NB1i4<=sN(&(&nIA4b07agt2zvatfVTkwDY zWEO#x{#l$cB2F!$sds|Dd0<>BPV+EC>%6NM#B0tWDuZWwal)O#IDC*)?|p&M*F`kN zJGc7GbfF)p8ePzGFaNKTB36Hy6u~qX=2S_FnSIFz)ypG#ug8MYR#ELW2CRRW%CX=9 zgq+(T0dH>vQTQnRs1r(W6`}mVvGaedc=XYV4jH*ORo_sBL9w>x^2SHyJ>2PWQ4G4x zkj+Zxny7NKz$DBKR_Nu)2U_nUGQ-CaOkgO>_$y5ArabP$mf#2f`5Ti(56z~p9an{F zIOkr}!6N9~OFoGsO+F9NHE+weyHwtRa&jlm>7qEIGBuP16UfU|H$HqqeqLw0^5^XC zkC4tHN$AICVU{<@I8?_hpO)nMK?5hj7dP0VhKzw(q3ynf@EL)ODy`BthtrLQyQ^3y zCv95g25qOWv+iJ{Z}__HWCOF!J2JqxoeoUqzy%Ra2EddAKMaA-vR~EW*!9$q#v#6@ zu&K*Fr*N&*ynf~Hrzjc|bDEHj3^3ljv#6pXILfDp&mi)`P@Nt& z-9qmyAxOK7_1Y*KU|X83Vk3t6MVlYnivoSbX9BfaUbtvQ9N!0G>4nC*2rvM)&82E_ z4r+K~IR@Zz@Zp+~v_=24dAiNu)UIaNd>LZzNtkFw^>s>n9~La#o{g!HB6u)c->Bd2Q3%fuVlgo(crbx~ZKz_@tJ^*!Z*_W;+tj7Oy`aIbK`d=s1c= zy;HO=Ex(xT&KG5pu(cr)LV=e2WiD%158jbv9hzg7l6mwkOH;i(5P-Ui{ zMwB!tzbsqrXNVGEJw&Wj#JTOQm@Z`?OR~kQQENbfLE8)*uN90M_<0}37K%A+kz~*? z#H+ME9RWyuluJO7oPY<%?~hT>y2bZ*9*c&VETwHs-1lRZvYB!HSY4ayUJVEH#N@~2 z2Y8GfTmYtXAlDrHIj7KFCzy_;DJ6)&%}6BZJQdU9fMPRkx8KEt{%7yQe~~sKyQx^m z%<1Xge$EaoINL)7;{q(3ogClj!ZI0j;D}#t22Xez30}e7=QW>c%qAHQZS56tnGy`J zdzOyi8*tc%<4M7G~Pg6wb- zMsWc1?H4b?tu1+L2YhA7!R04n2!?G~<%9+WeDeCof zDYI>DBkCR8b+Z6%Z>)f$_1}$>W>GoN8c(jv5M6YmhO*kuJ^gTr zLE?aNSJfl)V||LG$jO#`N*)3Sts=2Mg3qE#1cE>M&jQrVgJ5#TtLs3pHP1~{8X{eH zrptga&sVdZ+WnsA|Fo0AmtNqm`?SPDdE3II1L!R#oyj;&U|OOxpEzvq_2pkge7FbT zT+P9rz0APB>WF*W(T(K-xti}96vDs5#Bs>0HO>JVdU*BLkOpZl`T{u|CCHt%5@c@p3edW|e9ta*8qV&gq?CP7(8;}~)>X#5Qcg`lgK*b=QjLKQ z9LNAM;(jBO9f=m75=>F>ufoQs<@h79DVr=9Num*awj(gRaC7J z3H@TTCyRei_y13&YL+Tg=jc?WZvS?UQ*6@|6 z9!KP8#2iY_9nMgSX9t524?Q%Q%fTn$-0r;3j&S>ZU_sIqybq&SEdsKH(Vl-+_`*2Ml@+R&Xu45@(H`2O>HHidj6?OO|sLVxQ88rHSv+tY7`9I<>&4B`i!3FpnRMmi6gHvW^nd_X;Yo)HhLk&{4 zETJe~=?Meg5is-m%=xQ1gml4)&a4}FyZZVC@0U!KiFP(8f<15c6*3We(EF1r{2|V` z;$Suuke+@qfec%UZ=UZi9cj4aAZ6-5YnqVd5%!38WY93U>5X*lG{=3S$sGzxym{yD zQO0soT>covX?5n97_Fd-7;aJcJSoLUo{okbhEYAk5Ltk%?kANy zFrSHzbHqDrVDM&U{XVYCadmpQ$<`Ckf-qIlMRcPm&B`K->z1jQXNK%FxnZm&Uu=0Z z?$AB8l7-O$8&xQ2On=w~M3X)Mfq9L%kC+rA_+gNnG~_g*6ugfYIlhrOsA2Yr2A9=V z^ZsiD<*Y34?CXfDjjvP6oXD~hfpj3sG25b#>xi7 z{}wZR&gIhB!Q=hgy)&J=J^y@vzyRZaE`PQ%Ih{xcZ)p?&KMat;hPDNQ!yn)po7cr> zoz@WSq=%nZC}*oeIO9loD8iSVd7e5r!l;_*mdJc1Z)^#7{Pn88MjRxiwrH(EcvK0= z>ONZLHnAM3WT#_2vaf!ah}|_E+Aly?uKQJ))xAwz!p^5J3#-9~4{#yjF-}e8HDxk| z@Bgvp;?ur#_fn0csK))VYiIXM-Ki zik9_h3AqM6-_04==-#A{Rs7aFTRV_b9e<(cYiJH^Ns=zQWs@)CwPdr)+O1k$+V?V7 zzMCXTz;Ega>SsE>If~j*mxN7AMj2lko7A5ESED0;LIQpdzW;mS?E2DE3Ga+6OpBIO z>1}78Q^uD|-m{1iy72QD`iTyPJ;q#+fcQ4nu+he0>J&As|wjYsOVBQf(o} zR)3CeM031Br`g)$(1&7In%hO?KNOl2J~5gGHfh8<5#zgA@(P4*{Kr(8Wd)GYWDX~n zvuyMLv5cvoa>hT@!Uh!KP?7u+&b@X9A}Jk)ZuL-euh+r+$mCTvm+_Q!31VKz)Zahi z^9k0--SK_|*5Y0FwpG%jA*o~y%NdW;v~1xhR1&t{=eHwcH-5krj&$>{H3qfwnJ-o-ZLXl`@d?n zXBk!OWg|fBM>G_$cAS(^(*fUU8k5?7UnAw?L9#g|9g*Ebdu*Q#4#EDg2>_^VDNm!L ztb<;i_V)z?jBkQSE{XptzGW@}ci4=W?9d(7(t;^e>2I7TRDIBMVQEJ)TIseNrf!xm z0lEI<>&~V5jjDPDc$4;MSbS%`D6#%@=jB`jw_=1ZqI7!`NmQYXH=f?q5~K8>IAD@^ zoo2t2(1Y)acDhQ#Bu($fY2k0N^(R(@mm`$!j+;TfPkn!RTJ9?Pw+i0ZTEb2PVfw=a zU#(=e&{w5bY7Iloqx`?p`?v*1dBRsGNY5skjP`Y3?BD&LxkvxmtDLaNDsny6Oq$90 zG(F*314lu<0uTs=Ch1~@{t15uhpPySG+ zE@gTLW=C+ufVq2_uHEapQ&)bL5NdocFEcyBu4-u0;limj={ByXZG;=2eLn4!&EyDM zpyc;CuKuZ2#7^BwXlb|R3f2JH{pSc72h6f9T1g=2EuCkN( z<*ZKbc(05BRam>Ow=VjgsMa+^EP4|~)OANyG;W&X=MUoXf^}60PAyUYjM6M@LS$v_Z#bv8Wh0 zr~jm3;t3Z9b>xyJD%P0$2s zKT#;fHz5{myu;oej+ZT3!X>2|%d~nWszwgkDXE84i%+wF9Jik#qd5TaOw}z~qK1 z>_l5qo_143!F?LOhry2&3BFrDX^c{Di=-Yo6{0n)@L%cD4BAzNP!mFM_VRr>D~Yz#Novb-!9 z!#$=RjlE|ReVd;5MTpd$d&)n1yN~51!hL&k^1y=pq5%jgd^B_1f@DcBuI`bg76V|3vG3CoblA)!p8F9ooC%7oMpt;|s+8S%2q=o={;Ft77Rl zFQ&6tt1aZAw1tRsBILlXuU`oBW#So20|~gpw5{X{Edls9KNRq>TcIJ8^MoKA?`*3U zD{eC*XZ~{9RlIH~%$Xm%Dj+ln6Ap|CfX*#7#u!)G5cf(I42rE8q!%yI6}!Z?1liy2 z5xwy^w;M)hC-V2O1sWJ7@m3M9A(~Nut-YNjNe@922U`F+WtZk{4w7c-fGf{E1iSyE zj(H?Q#b;G!RXeanuo(bwu!%k}x@<+o_!uDolrGiDs?LV6bI2cUO&^ri! zWd+dp#VK8C4|4dd38G&qB7|}5Gi4rb^ucxa@LmW}a7HH=;vIB$SlU9}05+$mWNR-F zW^Yx?tNkw5@D0JmbkJ9m?N+%nQ_ro&D!!YdZ3$RZ=)^tk=(s)^BPm?JQu zClHlu-Ab)6?Z)NJFps1K)!EQ*_0z7Ac%w~YA@d59Qvgqn-VW$K@-8={2%?~fd-w-M zd=+7%n}YLkBIdYOv&$0$q{}$_Ty~?P-m1$(K-JK!g6N1ke|CGWG%yj4@7Vta)Q{NE zd1yy(Y-4!@avu?m;D-wlYOyJ;%ulR@hG2&C%$`K^I%n`&(I%%=<>~>z$D}>85iWb= z7tec`H;@%UFh{C+r$eHqc9=ggIGfuVES0{9W3>XWR=tcI(4+jo>=*n8sje%!{mI%* zD&OuoX}Hbqw%xo^okFgR^Y{V`qeZj6uKYzrT7_)T1Ai)mT-G?3WiJ#mI0tDlTxW?$ z9_^d(Pnn0rU#P_`x3I881&DK2cte-`BTQ*1c2XBo&1}aCA8;|&#bIuEgBwx6bt3UK z5&7WF@(&x&X!w4#p$s6(Io@+EV_A?s1%^lle@k->9uobWVRCh4`Owu~(oHlVfo7&z z+`)4Mvv7)R-Pj0Jlw(ES{6ux@^5H6doTAZh7P^niimFn?orOk~ct0iCKPdJwK9jCx1DZESwYFCyihJ%@RRo zl$J)`?M4^GB+_Gsvg}Pb)3cG0C1PRr5~j#^>MW z5)0Y$+bg(7ayol1m?fg+DZK|($%mCAhsmWxrd9f@rd{a z_CvcH*3gK&TLgs&+m$Dgg;8q!q6ljxwV?jebR$9(jM+=`ys zu#2pze2Z1(xpFz}Rzer&cf{vTr|;pz0sU)`7kYEgd=K9{CMoE_t@BGA`)j$29DAjGEnY2bgawDsgGvoRH)vQ1Bt< z1Gi#|at321t|G3ku-!x;{amc!10_P;4-<5>pJu9JVos+gqDdEM!~=sOdL(ui$Pn!M zJcxlMY?eQ}%73pnzL9BTQxU>Z_u>^Vp+hh9dkLQW!DT@$)*}D_OJ=V^7?G`xReq<2 z1kImC=@U?Z#RKjo*i%o%s6+E18@NZpHuY-@9b3L!SOz}8gjFvj_9K9U^X9yyPW z060nX!5Z$E^>4C!EL{G2w`=+}u4hd(&2*Slz7ju6nU|zqa}&LhDw1!GBK2e(wsvcY5-Wm2H{!>`A_@8BAJQhiavAOgI1BA)$z<3C!W8v_YxYN?QBY8`y_0 z*4h|G1@Jya=XML$_AA{|NOSM<7vWx{IzJj=opj^$fCaEmB+TK(!A~khubt|t$=i>d zh2~zN?;#+8Zc?=M>>Zh3c=eElPG2_ntJ4>9`VW;XK9K7E~79PV;Nd; z(blQmUhT6i-9C=m>d}VAzEFtg%Mg}=uugZZO5d+B(x;Z-;NHm;$|*^?<= zoJEmvt7#AO@Kfpt2j&s{<7hCb7k5**EBiGrKx;;p9D^xoc{!A9#PXhHzvE+nTbX{1 z)!}!&!D%vv`rSXiSB#k@`j5ucukwzsmQSIa z>nJoJLCBqpw3m?UbN|=_Z0)nDxkobt@EsuIh=b?kA}v8z)G34uG)zFAP%!Uds?VW_ zW^#REB#;hOA+?gO=T9qIWN`FHkjQR+oG($^rsk9ixFOcLCF%7AQ+bx z$M+;44-Ekd$GOsp5TNbUkQ6qiHBFaIacE<<}8*5I7&;7zA(pH z_RM=*7Z3skl9(>$)K-%b{_0=hEQBCT5vXZ~4)^01&U|WxQ{Ht#GyZ3oWI)g=Kiz%kkE~tnv7A#e2hgzX?`c%!P50_ zAT>?GjLJ;WuH?0Tfeb5?Cl7kTssS!>W$lA3umvhaDL`$m!Vbcol3z65hr~$x$QHw( z0J~Fi*w?U3?CF=0B9e5r>%>NUlddywF)FX%zKf5G5-uq}NFrXPdaD_RThbaTjQRU< zFKIYn)xjtIA*~q_L+MU~bqep-C>Mr=U1{BF;4!(jYnG;pVa9Dc9yX%%p58y?Y`K(- zZ-HCqv7<;OmS_|^MTBHLyyRYQgXKb!tmdV47stv|cq3x=d(7;H80Bf;GD=qA8_bj5 z6;G&$V{O_f2`xDE-R{Kuzr6#^(Sy6dViQUqs2uurJNVe=(v$-L*rMkkw1vuRei~}+ z^&eNwIxjM*NIg}l;(An@^0-u<>lWqS&FoCb+f;3oCXkKikQ6W;lFjz#`e5Q8Cfi&x z3GUbX%b9uG8D7YZuck6*Tc~*e44ANZb;BSZDzC_ToEBZR>aN0M^rD{L^T$E)^U)_B zxbbSG7u=b4P0dNq$oV)k`Q6nQn6{Xh8MB@2lPeFm3_ZfezRw{DMfZX1%{!jrl;=2M}HLqOKqM-kZHAonXI(S!Z2YWY zTv@uNMTZXy%RQd9Y1XjQ$)!xyiAWM4xa#(cWfBpIY+UGjX}Ia>nt-&kLjh-enwi5aBn#5DwLkoqG5=M zIY{oc=|_@|yFiKH+B+71-u?sV5`+M5ziD8$>~NDx5fs)~NlE(%|1rx^?3LSu7wFg= zAaUT0aP6x~?gd|BXHUz-tMbNtzbD`JlgjPr(~*%sP&~~A-j;U*R3rBN-V;);;f)h= z3Bbr`?WZ&N1!NPgJ$;XNuJ-6t8YT zZ^!<*c>DWp_+NYwtb~~RtYR4mC9(dbI#{Y7+}bKc167QMw{ZPpdQV$=H=9hxDF}00 zcFA|9_j?bgS?Yc6vigsylwB&2G^?h71vO9dJq>tNaPCH_=%I6@-r_6DM0+Ws%E60E z?2&(dL*|u#1UKoLXkmp-@l;o9Zp}_V+)<|ZP?un~PXkPpiKSN<(DLgH*}^n}U~T{T_THUVjoH{QLO=vch~hi#rYhteFCg+Cw)SaZ7_3=*BoMs~J$45Qm;)^!IV6edgC{ zDaXWY*47|cd&!=VYpJ;feUNGoKal)dWSxVEn%c`WR!phQ+(W;l*K^u=ZP(W5$3w*t znAqkEp$W%gG+1FcodzF8 zlN9jwxj7o)MjhShip)?QQ#pp)$V94+zJ*ubIh_G_#_ZAZq_>t0PyU`DAo34Me1>=t zM5F^wA2~iTv9{_7)jH=NifwEOD(Xd*iKO6JY)AHLZ&4j-6oFb(@876fymR@yqvX7| zSdf$v(t%kErb=A271jT}T%=#_C2<&Hbx1d!taLw z1|y?ApbqnJ@zi*dtgl$Q?xh9V&O~l#XlPN?Mel{&ZbW?L{A*7dz0M?VyO~q^mv6Qewf5HGe9*5bq_>!HX`|JvRw^g_gdfA$Z&SV<{9#l9 zD(#5pjr5HVQB-Tdn}uH{sp61rvJo|V5Y7S&gl7e}u6Dnzad^r`YO@hik3`8}PsIC2 zbzjo^;ge&LL%&sf$}0{MWlIr3%;lhPu9TAO;##~OG66kjr;_+9Yg-0<_zh+eQ7@H0Z&WvZLUhLr(Htc-$|!FH9H*nxvo!VS;Qg2-o1*= z?8BTGI1`$1{++J*hnEIInlE)E^EK?I-cA6*9n6O#q}uSz-yuODQKgaOP+zTBch|15o#Sl;Y=SneXc4 zjwP-Kd1#HzLZlK_@p=LmBfn|WJl8)*3V)P!&SRtl9qKW#i&Z^$~q23$2c&m>fmdaeCbCLzMC6wntj{pKC2%P+zQ>k-V$;tfs9^RCbM0{4$tDF2VHsY=Ioyn$JuXq+# zk_N%AKu`8+iP3aUXYh}u7nQmnm9*5y&>FFA*ZAW1s=SZe7ImfO!b7;xW%TfT+KKN;J5 z9y=PG-qV~SJ{l7CX&1C&JSzPiK=jyG)#jslJp1qeIQW{j6pe!LJhq5q{Ns4 zn|r$VOB1pObA`ws227r-iDBJu5v*RXw!7fu0XP95_J_J5+!14obytA~OAz4w5Aq4r z4^z01UYV=SvM~+p1KE73vYh@FO}2y>qg%RAA7HhKjl6?iM9&I9(Asr(v=h#%CXL!% z)l3?+wzuhZ@#g3l|5#p&+!*ceBDYn(jQ|MJTk?>D^^s`ru|ryR7|Eb_OhJ&~P_ zXS2Vkb4rcCO(lpy;skN%jaeMpe6-xg{fh^%094i{eqIMCvBUs)IVBz1uEN^gUqi(40 zSY8ow77B&Bb615kJip5-hLN~xG3ah8+0v|e9gMYFae^@Z|efg0|M=XU)p5p4e zAMvMk#M{7>{lrum>^!*|cB!qQHx~e36^eDvu7Rv@y>aDTAzTDFjVg7^m^VbG(Jnbi4 zus{8Q;uSP#U1fQ3Vx}0vh&BGpe&h#9`!0WaLraLJGy#ryaQIKEDweoPkF;C(-ewl2 zi1CqG{XUpw;U}rInv+V&rT`-9E_xZHjsnl@WW=A=gls0(vDN*NzB0fPI=UA_p{MP> zGsm)?*q{o^qehH>_-3JpaUrp%P#9QvJIP7Klm#2Y#B5;?8)j zLa^GjTv1%(B5%&Gr~;bV<^4_pBY%x+|JlEfSr=mZh z6z6D7U~9k_NYtq+OA!x%?TLBWd!w8N`Gy!Rv_Q&^a!tB4t*?Shn);n7@vh-m^oErV zI(62tVd)kNjB|J9$?r@rj=+oC@kGpJI2VHt=#U;FmhB?-G-FvIchd09dTqDeNw-M; zY#y|9$@n4%LJZ55^J9-qu-=lg{F-_{&(yQm+L8wr5?qv4UQ^LY@3kSZsS?+?^)z$O_wo=*xRE` zm{L!kcY`mvOR8^M#8Q#69iyKRA>Q*Gj@zQmmJ01D% zRr#7EY}m?I|J6LKXo0ddeH!qa{m_HmxC8V-I6c?59fyA~uXXg%)piBz2J( z_m!L*(HIB{NZ|65A8T~i!yVqYObLgN90)D)_#H)TMQwHGJ+Up9oFnxOba;8QcO02# zW^UErMVX7g=4;)Ot=M}F#}8o~`oCzDxgHx{?&5Yg9lX|+QxZ`0$^LSYzmo6}&*Mj? zZizGZl;zCW1db{qc_O!}6>7g$D@vxB^|j%=beqkXLlK%p;nt0zjUb?_=jAY}&mCI0 z?8=^Jb&2rpRcd07;vsPfa0SXweWhOp$`uIg6rIN$I&SOk3fXKHV_bX2tZ2$mVhE*@ zb`P?e!NyANkF*==tj4+B-ey)(Kp5Bl45w1EgliMDJsCUm&3xAjabO6i+B zdp~p^o6ghwE^ePmHs7P~OeUbem)NNo?}_+a{$Q(AG0D#HYoUT^?FO?VDTiMvN*4tv z=sEpAXy3yGC7Z1X$SU|)1kPhu#DI~zXto1$zXcr>HT6u;rDp|vQ$l^ZkUG?>L=RYt1f95GznJ#@wm&+*oIQ-K1XLq+J zAH(if(ZU{N6x%sWd#>NlYLyc$3liTS?Xh%V)NCT5&Qv!b;r(z<{tN7E94PdHHj;XD zH==5oHrHk~^7Wh9W?G~Ar1@B4dz4GkS7fA<;=nNE+FLre3#Bt~t3z1K?yy1TZl$1d z`&eJ6+rwbso99qXFd}Mt97Yq^EXF%8{lrh#0Ry4@p;*#Xfl{rB!SI*8Nvp3IYW<6d zp-&7LHLEJlipu?vp;cCNmj>>3t8O>mO_F*bO>)QSoGENrgx%#3)bjbx6yjAPike=V z8G6sYC*{bjY5(R+pcKpOd zTN*m0Hnf^Am+BBr9A7}&KuD7PEwh#Yee_R^d;~EaPVr$|)ZVa4WShY)-i&yH?!vM9 zVP;&|qLml-rjUygH2Ui9?yTZ0P=lB)wUNtZ=BFdRxo^lz3}+xUbFGN0c;=@`f`gMI zjBg0no)H-B%w`lC-a`3IbAc>KOK~rKioH-qGa@;RchuoT72jPxVb}z^=k>Z%RKfOZ zw`VR_-AHg4H#`XI9%{7#$xHSA!mGOvMjA}V)@yjA5gM%mxGA%7ampj>P^xMAKUoVa*M;%3!abi3;w zg0Xs?p7Xk>$;RlfqV!$Q8ejcMl>Vg(q;5Rr;=U0!8QqN^Yuskfe(>l)EaadP`JBA! z8sfC_?ZrkPd`g#MzQ7=tH2t8|gU#A9cs^C9BO$rf7V!a&i_bQTQDT*-i5MK{GHD%g zbrYF8*e*sMLi$CZGB)SQ1aFInfS@gXJ>`ez{LW<91F7RrIbcUQX;1nM3~2BwWo+Px z_JQ52H%fD`v+bR4v)@Z(zE4t1`KJB;dVqUzB%;Ecdh*rpaOgMKypvwPa#>p<>ur9v zD%zOoitaW8NzRR9V0)P`-mo}(Tr+M=n&cndxIYwr?)Ie!`8F}H3zkI}PHfMzYFRI< zGr3O6a%R2Y_;FaMa%GJYV1K&gOw_6)7_dHsK43+vWpFrvBlDPk67p7lLA7GA&&_aK z%uGj?jak}YMpp^KLuzzO%3{7tMjE^yNd#yw%7k>+CH_st%vX&@p6}-HxRL4jaR)_cZuGF#q|n%=K5}9lCF4 zBYNBU!A~5K@qBNbumNsV!nS=uR`vjXk|kO>ge^qLZe}$KK<%Kq9%Lqce%XKLN2?H? ztZmGc|iV!W2YRp2f~-Ylz_3k>2f=gAA#f{U9T zK?;IUlsmRq)P@vk_O14|x{=K}00!ExgDbyiKVN#ljKjIuIf8w%iO=|$35%jh*HwA* zwff86=P)p%zTD`oapH;|7KphCj3%k&g~|gXimih02t~Bi1bkd)i$$sDpZ7?YOLX5Q zT~>p0DQx0D%4u4cFCu4r@y+-x`L25tlT&kUsYX8+Z&m94h|T|SaQ^+zwyP*nQ{~xG zzA3o1>qcs^e$^pk&6&O;5;06@ZbmO2R*j26N}we|5i^*UXM{<$G+cLE#%QJn__<~)F+Q16?a!2)iC=Y$(IOPJ71K>Y(6>Mk2aaG`K9-@*ZB^<* zBgw5VPXuf>l4(9v+A}FC>l4vUqHCHFoJ2xiOLSpzqZGueOEZ1T1P%MNlpt{E1e| zha1nXUk&Y|J%HTZC0uBmxf&5L0(#GjTd~^6$`SRHkyb4|+v1dF2p}aoKuQCjKf`_? zrHv23Umn&&$iP|gesDq6HK6v4U|SYJ`oBgRP;d$U${dYL5BX+H&*w1vy$jhrfqIKU zOc^3xhiPfy#?FNnh5jD0*}fTpju!_g*b=B<*@izk&Y?yDV_lS}3*XFVeII4d*}lt{ z4dEsNDWV{9;RI?_vd~iZV$v`9ms|B;5<=2e{-t22$GYJUNm!)$)Vol^+nS{&53KmY z2w^%iM;f?ZhN}Sp(xqBwG6f)H>e6+r37c{pZPJN->R;dnLCMif*B+G1O)ln={qCzi zMUj~+VEE<=B79hZpmI$t2%&}X2SSER3vOG@t&}(EnD(VOKsWKVuQ^Z}W%U66-rRtf6YYtI+F;(|O+fodTIj^~##Nq9LH`2udd4#Is6*Wevpm`j4cX z8PId5v=|Q{ybw2cTzrX1Y}`G+n(Cxap=FJA5g6Mn;^QArP#O0xtqx5PJ9h4g;N}{O zaeo?@;lT0H=SxHy*yKL&GP_1SdN7iQes=TaN}??d1KC|G#`sfk$Gt7EiB5{of|&|m z1n6%dnH*SUX2^@S4eHK0A6|U^P~}ONTqQAFfV5qiBlb%R&2|&m&1L_Qa#BNTbNOf< zNj?TG9C~t0_h{IdY@|MZ#vMQ+^-eOy?IH75{r*^N0C!5GL)!G{@#A z1g}krxELruZ8ar(G&zS|%O|tFlt{l5Ij;On_m+&o>!jYNvs{8^Y>-Hdc#W@NU@%9) zCB9j#;ajH8FX7pqJO8mQ@;5igP(cu>)4L}}=^UGh3~>{|`F>F9vTbiv9dJLKYUX@5 z)W0RnDc*%8wcG!F^~4b4z`%VeGcl5lyj!F}DDBxfxc8gUribRI?DykdC6S&NbL~vM z{4Vjs;)-`5%N?^taO1b!*O)b)JI87In-hjD2ZL=rrYEQjpgqeMsCov_wwqwa;@Y;e z2QR32lkjo+O#Ol<()2HKj{0pdm1#@d?_AUSitgtRdw4|QDtvJ8y89o1nT>>_O9T;X zs5m-5Gp(3iI7>bz2f9k$cmGtSF`!bJ-YGsTANtBcbV&lQwbOW~_U_TMYXK&Q<@BI% z_^jrSI^}kH-MQ86Sa`Y&x0qu4=RMiSE+HslSF4y9ukgekgruVfh^5%YBVHGJJ)@-xqMrDFY|HAUcGKx_W`H4 zb)n%N$veNhjjcrM$BAV&k5RXD#cCJ|TPZKyC}5^cjyFggH(J{+R)KA`Ih?bL24jNWu7{?a zuhi1&uQtBf`ARr{xFNFpV>^^Ci5W=$48aM*t(aIOZzBxqv4?`FwoOj^!2Jy#=49ns z3Rw~CkGze0>ba_l>0)2rNdB-kxA7z&wj{RdVsjsPbK-rb8&4buUMH{E*p6jJU83U6 zrMnWS#}yrKq!CkY7sAAz8E%0G=FPKs;y5n$D@qH5=40q?-y=Cy^-$Df`Z)+2diaiC z3KB}53AdD^XkJ<8NzPmJ34Efe7KIdl*foCfX&B@Y=(2!bvSt5+m~R^eNf%fpW#WYq zL{N9Fscq@lv*A1U6KJ-NM~>2_kPne(`{)X#-s|SZ8HA4~^NPk4?;K_0Qco;G$uuMe zNy+nsp^6}q+W3S-+6Zr8;Xcf4t`=E8tHCm&leEQ%v3o$V@&Pt<A1LcFUhnm&*z-^%lF|J-uGysB6*ZJNJChuZMCVGlZ`j z6gR$h9V_GRjMH0(55a*%ErZ(=TBY`amR1KEphm-uj*~8oAJRe#eJt!lCNLB#e90Zd zL-QI)?!{M$ox;7{D6Pq&ea_y^ZI`R8SC5dN{hBZ>;N8kcYH1#u@o2a`U41hhaDCX4 zaB)(%MOH+Y8+1fL-egBkn@c%G^}qGO`f+H+>EH(^IIujaEKE}>(#(urBdHYL$J7lFG`!L-araz!1mbW2>}-`ce>%vIof+L{_fk)V)YKPa)jB z2vrlaRCBLyF&IZG3C;~xJs;p-UALa7ciwd*UpjsLgtD&@U*m6K7o*wNex$z7VPd@7 zU(emMCJj}RgK2bm_|*41)A*V8O~AUINz=XySl6XY$)1-?^Xz0FTt0hK%1ZssMS+8J z(%$Ts5=|~Fu_b|-{ce1PN^<~3nkKiI!hmJCxC5o@(G8MKRPpG&uL(MD^m%)qq6~M3 z>;@pwdvaQRyV-=9d;?0>t8u90erb3`oQ$?r`Ddx--?6)z-qD=V(3F<3rPyj&yK76l zo?=Py5#og_;Rj9? zv&m%5*3JEA`pMKoX_HZu@uo8wz9xh><`u&Gd^J)ccRcZq5`0Li7}w2s*Yf)5I(#0` zuCP$RE*)gF!6_%Xg@%?$RyR}I;li_(Nz+acm8v+^?gYgbzuqD1E9uHqOYtqi;U&`q zU@G)_ON2dW3sx8WX$-U`o{EMI;wlRVcAE<-Iw%L`Jb9sPc5qRCt^-3WNiLMT>H$&%e|!P=9eQj;S~`aj^GxvC;wk z%Lyc5oy?+*!!5pCd?s9`#R8_ugd5H>p8U;^pU*$iIC^t)46>e<|Fe7h&Lpn_Y3UL} zAyKd{?we0E#=~VRdl_<{*VzbVJ4D{)O^wsd-(4$nI9p$JgWoSFl>pQ<>yzhTEJ@ai zXBt}+f)q(r1JnT3E3G&-poh7ju^oiqt;Tl5hCI3*N5RsqHXpt3 z$9o~M!MgsrVzdV(l#r&e3>W;&T}p7_)3FaZOm3Pl?|~YPQokSh+eqm+-%sO4y}xpa z6^dJMhKsn?RNfZ1IB(r`du&LcCQ{(lnoBINklG!qN%`#R*|+@@pHU5b!FM8mcM|_a z?ESyQPCHm$k#19V2<$tJ{Zhhwn`sVZMuKreT}Fd+wV6rI<5ZK_>J8DV#j6HXp%k~W z`StFE_i0K&j=I*j&-<6M%RH1xAeenj+7|<=XdI^#RuLi$0ZbDM{^B%XFsqG1_~CBq z_*GK+ttq8W$_+T;hwPbEQo-c@Mx`fmIK7NPjI?BpqseS2}niAQz%xGsLAtRpk zv?Qr&WxKjekedl!e~Km!|CKBlo`9=mqx0>e{n8T47{YVnJ*UScm)dj+;##nA6_EI8 z$R%guc-}mcPu!BqN~_Cp0=O%2>Z_xEcTmK|ZElwjoOrY-F}XM1n|8Y0wxw@2>gO1H zj_qarG8f~T@x}Q;}ou{8QTW&w=Fc<@tMg{+w92mk;8 literal 0 HcmV?d00001