From 835a99923364e17e571eac1c34519b36eb466deb Mon Sep 17 00:00:00 2001 From: Himanshu Mittal Date: Mon, 14 Jul 2025 11:31:31 +0530 Subject: [PATCH 1/2] feat(ICSSG): Add PRP mode docs for AM64X - Adds documentation on ICSSG PRP offload mode supported by prueth driver Signed-off-by: Himanshu Mittal --- configs/AM64X/AM64X_linux_toc.txt | 1 + source/images/AM64_PRP_Setup.jpg | Bin 0 -> 135480 bytes .../Kernel_Drivers/Network/PRP_Offload.rst | 358 ++++++++++++++++++ ...Foundational_Components_Kernel_Drivers.rst | 1 + 4 files changed, 360 insertions(+) create mode 100644 source/images/AM64_PRP_Setup.jpg create mode 100644 source/linux/Foundational_Components/Kernel/Kernel_Drivers/Network/PRP_Offload.rst diff --git a/configs/AM64X/AM64X_linux_toc.txt b/configs/AM64X/AM64X_linux_toc.txt index 8e97c20d8..f65effc15 100644 --- a/configs/AM64X/AM64X_linux_toc.txt +++ b/configs/AM64X/AM64X_linux_toc.txt @@ -58,6 +58,7 @@ linux/Foundational_Components/Kernel/Kernel_Drivers/Network/CPSW-TSN-Tuning linux/Foundational_Components/Kernel/Kernel_Drivers/Network/NETCONF-YANG linux/Foundational_Components/Kernel/Kernel_Drivers/Network/HSR_PRP_Non_Offload linux/Foundational_Components/Kernel/Kernel_Drivers/Network/HSR_Offload +linux/Foundational_Components/Kernel/Kernel_Drivers/Network/PRP_Offload linux/Foundational_Components/Kernel/Kernel_Drivers/SPI linux/Foundational_Components/Kernel/Kernel_Drivers/PCIe/PCIe_End_Point linux/Foundational_Components/Kernel/Kernel_Drivers/PCIe/PCIe_Root_Complex diff --git a/source/images/AM64_PRP_Setup.jpg b/source/images/AM64_PRP_Setup.jpg new file mode 100644 index 0000000000000000000000000000000000000000..00af49c884795cff34907102826e5e9aab9a99cd GIT binary patch literal 135480 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

Yn1tBtWX@A8^9s*4 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Ⓢ>zj49>(~~rn%kkzTHpfs(6nVwe)qi z!XyS&c4mB2`aSn6w%o@}hHDCeVlywu0ic&E>Ls&Kb+?HH>$5XCNk_N@&e+XdEUHxo zb^;aQPv4n5ePfYKLgR0eLUW08vf1Y1Pm5}nOyT!t%O88b@5k^&JU6_ z>FTpMTqTG3l5hBljyZ7Q6ORJm*crbvsqEfajuS37(mLzQNc zkRL#B+xGULVx`65L9fHpH;b{IO!RG%mBcTu21PyOC$GDa73r&82zGAmTx{soM1%G1 z*6nLV{7yk0W&DE&9pB?&8TElH$HIG4V5k9<^^ZJho&t2Owf-LAuQ;hD}XvjmC_?q4}e4v}#G$ z-?DRVbzIMQHo1dM$_(d!9;QsLVE4ygJgu@j#Y?O*L&sE}7-icd($#13X1MO#B+{I> z^L1eG&k@?s!XVGah>26b9Be3Ss?M4G3PZd$mR z#0|R;Z5m}to&AM9zHgp#Q=?pHh|V40w_~hlxQQ&$xpwt~(L8{TiNYHtsXET?3D*7O z1rbFnxT*Q*3!opxV;()APqv`=aJpZ$z)Rzom;IXD-BO;RRsN*@y&)T!{q}(~wVg9E zWJDH~Rf&jRZ`=~QKG{-f4!BIfJEq~Jlp>cCgp#8_98YC5C+NLziwpgtEYCR zBs=S(Fr|nx-wv0WYNxM7H5V^~BdzO;Q}0^~bQZJp<1qF@LOJeS?3L}s?h1MP&3z7`V0S&yCLal7^?XPS#v*xEhX6QW5e>fylVnI#g>eD8H_WLw z;$C8{y*EXJe=zB}Fb1&O(l^w45d!DkwKYlSQwq$&;Bou-rpr}e+D-ANb^|Vf*ma-D zWNJakgp$X8;o+>8S2S83>jhsDk%Ijerv`e+yumgV$8TEsl(}{A+A#Wk0gm+KU3{b?e9C< zhqqGYq$0>Lamu|C&XEyWtbpZ3R5jVbEojL6#gH@K zs~%SRu;&sI>b%7JfBf645j z>nct0La7)qw>{<&fE225-`LE=72wkDIf6N54#xHC3bKeL$c`(m7x#m&4mFp+n_r+c z&2?vsi}`!4JGC054ou8!TNg!&rWjA)_N}Xr~FdXe=#KM4!#x1#H1aT z=-iB{zaWp|WSKk>S1tzIaV4Q^c5Y|&EyFQDEF|Y^E8%0M4}gk+S{nZSZgy7(_g5-= z^~!#g=Mt_msA~8`xTxv=)V#o`9L)e`=Bh5!HjVk2Yc^n)|H1XEf#ku2`sC$wp{)>} zrx*>Teyw>Z1{uwnED$BX8O_mmC{mZ|An-iZH0$8=1))NB91+Fg^a-M?qGGo07_$df zyI%{42C8I_HpAXFVSm{=!=!PM3h%I0>Hje2VWUhG5v5-;<6E^?cGPOrymJ2$K_6Uy z8s2E*`gGo4fN-(sJ>i`;*}25qU)*;2(u3XG}T^MJg}Am6L06@Ox-ZDP9g zIuD(OF=Q=Nf+Ft>+8dh@v{&~+bN*&}$sZziemYY#%XZQPp>w!O=WDM}2Yxt4$y|&a zAouWXudWa2$%pNqdbhR`kJH@dxQ>e_qDMJOoQwTc9fm}_>;0t4k!&cUF45i4dQ6`( zy&J)@g6=Vf)hOZ&UVSskp!#-(d%4#3w#dbak+4;MIf57W+YwkNW;0f>X8A+_vYhJTcx(Ap_qRLI@EP4h4{qv zd=&epp%quY6C*83kC7`CE-isGQ0IaXE775V*XhPil~pGq?@};PN?RTj6)D~A1k?8~ zbNg@0n_?dF&f8anNy`45_0j}k3-|M7Y?fPc|7j`w16!q-dP~k{|F9*NX3*)|YxYDM z4J3-+So`jsRqvFt%06RA(DNuUc|C;6`iZjqmES(Ozn;vUPs@%wB(`$YL8}9o-9THC zy~#)qI=b2WW;pe0L&)uC@JYz}jrkU_>wxXgzHEFAT0zkMRr5Cb-^itwC#}_w+)+9) zR@K&s%74N;EV9yX12j~zVU&F|ib|DQk@$xpqn~!KGIwNWJ|#fTyDTS2>F{PW$7}dQ z)}O75xva~XUkNj?2I>RoDJi|&Qq5)UX8>8j26|EV^1(^j55FARpI<8fR@nTb^MD7l zRvVfp8pe}mAO}A3-Bs*?)N7268(t^eU^A(%4<$LiEFtg4uX(PiUpz)P7`To zw5xHyF1_Agxu5?L7=I#C@q&!x(mwohN3Q3)E?Sy23PLVG;ds`X*% zTZBkkUMyT1Px(7`D?D$D3~}pNwB&smqekZ^#TNS?0poDU)N-2%3>(_K3VNf-dn9U7 z6JO0Wr|(06G1FZ>I6AT_&A&09*us=AE0%WA+3VXRYu8dM_ANI-f2Jcpr3#Xc{5o4X z2I>U3QNv_8Q`DUsR>I{&t)nED*&An|r=_l^X9#$Vl${x)m~K<;f>$afHFc1QY$1LT zhPkc$<9wbTc>5PCm^|Od7Rfny`JGXU@dgYTzj1wN=JOyQ(G1ztP2sQ3bGBW35nX7exgc+Jv$1rupL~6* zy|8C`TG((>82fg*|8L#gh&=@))Q2^(?DVfNhz{9Tse;y>`sl-kSB=8IrKN)6Aa2F$K3Z-|52;Obk%xmjHOP(bP^FlcS@ z`pS@Jb0Q^XEAq-cOc%$!L!VgXeD|~_;Y6n;@_fF}Sj|$X{Okm}zgHeCJKX|wgRo57 zM_D8hrW`ORTdDNR3i(!__s_N#fF%(I_glYI+5ATUsfPZQAM(3`ZffV(QAPWdzWR&Y zb9KE_RZ=#ZI^)GRBqe6Ob7W|X^G-Qx&c$5{4z$I+@uW+l|5x_t)hp50bkK+RSbL;C zRRFwWPM?j`e9~TT*tJCM7o$i0e*{nx1|$BziA2+y-k(ObZQNbVtmP7< z^j7sS*O`x%60;ENEhURU?xpRnhH?k9U@m$o9svsNSr+rClhLFc_*2p?vO#l~9ajB9 zYpPK>in=iS8^N30;+w~-cwbG%%a){u7P2ag0Mx3w&mgNVXqIaxFu|aFCTiq7HzGHf(=bc>trKSzMrKf-Y%_ zl=smKZ~ip++&IV?=P0#d^ubGNHuNvFnWKNiUn9+e$!2@`Q$i^>bfx|5L=Mk=KcJIH z`IIG*$<|jWC%P|jSTTSd`rM~uc#j0VAaz>xRgeWNQ&qZ_c__gD91dy+PdU~BEQtkQ zkTAMQQ^aj0q>j6=Q>;(Ry+L02CkKI|1-wfwhTW4C89ymKY$7FHG#2m8#_l0}B1WqB zl5XcJ-~aj$cLk7odUe(>zGtwRjBref9jRe7VGiw2FI;Fnze_ioe=HbZJbmCp^8obR z((RtwvlO8wL(nyWCFT3bJ`tY&D7g@l^uj&k^u$t&MUaS?!HyqK3^{%xP8n1>D`zeW zUuSz`5cI*-oociU!6q{aTv2A~+acumw**t<(cLtc#2ixi)_4V4kIJ8{1<1do`@b1~N>7Xs4=}iiypy0g# zhGfRL&s&@~b0pRKr%MK1$dlerzXT=9b0qz(rGwa(sO3rJ48&-jxIi8t+9yXi3+5xi z-XBF2gqxTGg{okuAQtu7$S}IS^jD6IBIc%xMGGm-Y#wPq$Scprl|Rze#{u7dmh|bD zt+a;FUh?}K9oH?QVPlLgGJQ5_io|3+6~Y^~HNzqQwq+nQlQ+U)55k;P>1*}De?%fb zW^~Gv$g8%gPQo29iIFz}4sdhvk(UJoZnJN+w5M#VL=&>J{dxlwU~7A$vuU)GY; z3Hy~!#mWTio$89%O^0fDAH@{^O}AP>-Uwe*R)tgj%cMj-Sr4*T{H1qqAe`;CFW!kU{ZP&${>>ey`W5aJ^-@dk&kkg5aenKV5_B*hFQw8LqAvpZfxP0 z*RxD5QrF@H>Y4nP@GBaXD-X+~I0asCn;62QWQDyhWwf&HN3M!nQFVJQ_t$0F`Gdmx zn)kk%8#$HxZAGwRrsZpnj*$}$afa%+fM3T`cZBj)mCw5xE_mR^dtDq2-n(^TTr(|8p_f)6~6AjhwvOnadMNdkP8DAcG0t(DFKht9W?Q;w60e}$aWe$*Oz$@s8W`Yoj( zZSbq{iv15M)-&%jH-<<3iYLWm?I4#k=?yfcKM7WZh^dZ^pfgZ++A}6{E0{2P2;g>;a zrX{sGFS@=C+8q4XN@{uwfmL#KsJnWwo$XfbJbhRH2^i7d&jj^~)rnG%lzL|yZ|Fg3 zc^{A+rXk?a*a#}4d(OsCf9juobwvh)e8ecb@c?x1pG` zLK(tRUh$;5Bfy*Y*OWtHd&`d}gWoyLB65D3lo^)zT4yRUO1aG(OZGzNBGKAkpe-zN z>D7HA=TmG`>}?}qD4@q{OYgy|XyZ8e;uJ;dn83d{YcXr9cG1mi;KMODL(S_`D-!g{ z%X62*dUp1J^Zy9!8XuIRgcoPwN_@rF9f22%1&@~-<^8$?6QkTAQwH_Pv;K2^onNjy z?hQjW+?Y;B9VE6dNu_pTP($YVHAX){i6w1J!8*tm?h+-R)dNp|w=V?FCZ3O*XJ~c) zBRCuo-qsFL|8uu^K1@{^6@4SozR+W{&gK46oxNI4cx=r&%N!UFV*@Djdb~t=*1o-d zVVxfq?`y@5ZSma6oj)!Jg#8$%2>NX{4)JU`G|0Xg^13PUYbew&R?UU*AeX$ukY1nebmo;0&~Ny9RH5f6<^3sX$8+QeL(f5WsV+%!96?=a_o`go+Xn0s!K zcjt5ImxudOxiB(*rjjx|cuk+j#rm@Us;TCyG^-RK6RL!1@1<~O>UTmFJSJqk&lT%3 zTn|u`8?WRTEsyB?uq%^co;`T`Jv2Tn>FN*TLo(?nFl^heYvr&m`Ua}C??>X=yzd!g ztcvbFd`l?gyzT~SnY0Fr-~Mh9#IkZeT$IQuwdHs8>BMv1;YtRM;4CGf{DZbiqvPrQ zt1E@#;&)mJhM7t#ySssO(oe2bOaA|nz13e+7`Z#0mbjED8&Kb3VNsY|{Ej-{qCat7QV07-p=PaGY}7%-?%uO{Sv!EoDf=pT>V}Hu zJS;&@mtf7oJ|i^jHt>{c#)qNR+f(Bk?_^A_cCOL(*Z`grn-mmUxa^|hdbtVE`g%<>(=qI<6wTQazlQV1>c`zhcD|NzSEgfu6^%h!~F%HK3@0h zT%ifpo4U!-8IsIVvrA``W<6s?4p}p_F)iIlA|B^(9GverhtAERq8M2aYaR*y{~9;) zb*%QqLlPN;dL2x?v$KA3xCf55XU+SzZv>4+!}y8%YCC1{APXgrMKb*@o<}T;$t@w$ z(4-p=4ALA^1@odj-{Wr@8T5E?U&}t4QZ@nqGO@Z6Z(^_#ea5sRtPaC816b=772i$U z@ErnRyXT=2cgr<3ki(r!xW$T>ka`OVMq)4IS`=e9N zIQyq{swer)vv{}qOp9T@vY0t)vX7Koq~l09r83_e{n&9_VR&isOb)XlD+&%0Z)-pe zp$=~nJlR>nS#|!#&Rg{j@yyTsinJZ%N~$05eZ@tu~-3q2+BfqPLAX?pRawFw@ND{%7 z7FKxtr$y_u%a7rLMV@6b(sK^ZoDSP|v zZaHQhc^jD2R(vJdn@Hhyhckpp$eFvlHgZ*ljolE_kjLkz=6b{|H2k4e6~(|EKi}_` zSp;4dnTFZS9u9-arJs|X{0O?~aTA}diY=UX9$)k?wnV@u`yAo5E!uF(9!fNmjY4jr zGdrcfb^q)ug+#g6_X(?rzqK~8ckQZt3c*N8;r-dm#k$kNsZLE3QGC{ZzDUQZt-=dO zQOvR~eok~&1~d+fjYvLCS1{%N&4HA=VE^0JKIzQ@zNKHf0e(t;TN8)+U=+og+D{z9 zyC(S1-{$0XOESxVnMRFKYUo~2_!UxdH7pLX)xA(+8{;fcadKC>kaSw5@x%4REirH4 z#N0pV{qEF8^6||WbPbktIP!|6{<1UHnH#9FeAg4D2@}~fakixw-Jle$zVe0A=AL(& ziD6&FXJ5#Ct2t1xbfG5oyvt4X|DRnOd?(uE)7IwX`m3_C91^fSwt}hhhD@l=oAgiQ z1DrJvWuWon{&X-E*9SMP79NiDjmK*E-`bn%6e?LiQyBTkUC1Ih5t_=p zeR7-WZZ)gv3iP`u@E%d_GIVB z_KruD%lSp}fV!ly5ZwpHUAwWN5gA)1X|#C$>Pl1=GOmE82&MKcE>Yy4QiIr4)){Z& z1CYP_;FN12^CfyL;icVTc(WVIu(-{?N@f`)2qE9AL57!Uu}}@uPVv)Y_N+Hj#8*vH z&_81AUlEjPwS3hUU6ViX$>T3-Cep+k(08X*T?;Dk@q=VC+ZdGib#)H`(eWRtUwt6Y{;3AmxD5_OlKD_^th|N>k^OJs+yRKPFsDp-1DA&}o~N+#dQ1!~+P` z801HOdqo>$5hiJdjuYHDE><%8ODh zk6EjbyWN-F1h(IuOX^Py6IAFHv^b!I~0tDcjRVJ#)hyIGY8FoAu1odmF8I|I7R0@l{8<1?Hr* z?~vHIopN=voUo|Sr!sF{Gt-VyTKHtgd!hFVEyDewjPFefa761Qd26F@c%kHb22RL< zIefB&v1b%QXMMyK!os_&9K1MWQvAHWzMa8(`%pq_laTmfFGy|M2obKEwm`c{KCxNJ zl7E`ty#jyHms-4F=HLCAsE0TrKBpz``F{lTx^F^LOUpuM-pK3E?scM^Yv2or!@gbZ zfvvV_cE8)rJ?mTm8y1_)5*xtkqPI9;mo&0Wva2sZ}CMw3p|66+@H-V9NJYikhCV`qAdO+SOsEq zVI@!i&iPu)AKafvmowqYV&o?G{Za+E-;P68b$ift9mXgpg&2lw+KzXxm#nWHyi`}G z#ajy!e*d3Ss-0a3{ui~(YN_jq7WCDncYm~bq2>mA(;N6JWa<p7q62zQiIi99gDi-*%4WAF|N7&ooCocP9XqZWB+b_U(N!fYtBGH z)t6V;weY+3Tdv4cmQPHFlCDw;*^Y&wscsh)w_xQOEPXCNB+o5f;+T@ohor_sUxy#0 z5Gk7Xa%^F3a}d~hRn^v3+F9F}md7}m`x4=LQ+bI4AEg8ng+JRu@;x{bHI7FGI}mC4Pf57n zwXXXZ3JmOuekGNXj~?}HW5N~QRaW~wQy7xMiPL`r;e$8WaAnQ+CR z@fnART6Ire;le{-={^;$4AO+~*+$HK_V3%YXJ!{NqB=C)>pYqaip}!o_$tTVO(I7k z8k8O$%#Pq4j>nD) zFN6u@+@%G5)j1IYaY-NsvWr3#_4aHdmxA7fXHJCF2lL z(gYiNTeHmH+L%E4w9b`}fSX7zybt9a`ka~ld!;x%{Dj}GiD7FXBRyM)^wZK0DGpYn zJvJ`%JIuaB!z?{QxpH5N`D!z+xmF^TmF>%wr+h#qKShV1O#gXA?)QqV`c~z86d4*&pU&$?B|-tF{S^DoVB4Ko-Q7`|-sQZM?CAo+U1RkkYJhn-P%9Sm~m*1nsbw%Uoq zPh`es=(vY!#DG>Qrd1Qc5`S(Ze5Iy6-A=~Y&U+f)79T$V3Q41r)S);>6CAk0LWeW1 zwryKrO?pvPPjMqC&g5P3;TKJokb#~}=hgN^E$KMh z6epCwoYnVfQ0GjC`njR}5JFHn$FiMN$~IE{egvd|H`FC z47>hXptnqW?e|tu+8D50zm!$$s2t2CO7(KKTsKR27S$YPjoF$Gd+kLZ zZbVVPOhS^45g(o31CbOKEjq*R$@VxE+|lo{YzHB`18HJlKoSr|tHiFFnT}Rao54ZM z6;YQpY`y6$rdCQ<*-p>Pu%sgy_b9ibI7=Pl zE+muaU*9c!6EX27BynvqtwNk7QRdR%qnE{JIOTG8;}tUFM&-7kMRWbTm6Yj@5S(a4 zwuoaskUt<;0uFhWY{q|3C0LAScUId4Qx`y{RYcRf95Wp1U#ZT+MwZiH;|&+dJ8()@ zE-n#?lMbI#j`s1{oQ71v==`MpN^>ISBWKaO#Lf-3yT=DNW%AVSH0Dck<_OEbZw}NS zy2fztG<~^@X0J4w71*eonRC9%YyHYVBK@079MItr7i8j4UWx^D#hV=P^y`%DoE}j- z%gltofK6GrfT^vPO-5W+kNs>@IU4_pj zE@j2p&a-JBR|R>IqtqXR3`gnnks>s+El7PBleq`t_*U0kxX$ zhiM*FGQjqgalgNiqN7Fv=E0uTcYIZK9&OPwiMn`~B`+r_tkm5Q(0Az1 zt^-~WOC;P`ejMNX^I=E);4jkP%roxX9h2VfekL^ns_~|SyO46{b-^34KvMwAW~*gi zas97@KX@DTz$LJE8UK+OK27Y>e@vojmf7g*INgGeum11dn41BhFwMx0sDa)|@t%q7 z&bZN`n+-ErKjeRC6uO{W3u9=v3!@2slclYx?K>&1MB7tSdfP{IPt9r+&Li3{?!8xx z%@OkimdyG%DLA!VLr;LfN}pHz>W>tj+-|rT-YWZqvSBw6-UH)*XWf8N9>;$J!zJ{Qu-r`hfk<23O_-tmLm}%^ZCsXy+FX$Z(PHo z^^4y6V}CC_DR+etBI0<6rgC=BCYeHC8@`8mZR?-d8Th6b9Vv8pZqU89Y+%Ci|>ALukwelx-#{}=#0n@FY^+BRJ`ErDi9)lTy zwLy)78BKH0_0gZHDHUem zG;kJFQsQ11Gq4(XLEYIy9`}OG^hvbLzsC=~5S28D!Gk zj@r|iE=cI^O^ecK9(dLI%%&$-O zuO1PzF8xHN{v);Gk@2ps?f)ZtQn@brhcat z1>63kID-4~tXI8~<;}K^3HxXri4yE_740N4xwa||0RBKe{BrKZ=osl4aEg9vk`(NH zTk{*|j($}cOyLB1Is5O6y~Fq5ZQ_8-{vkhlLa+W0){tfPX})@3^k~4kre>>&wg=Z- z*MY?5&-jjW`@Jy_kp7J><|y*UqIeHNUen&3qD?sBStBUTMC1kdykYlpiw-d%W-q(U z&u(+Wj0c8goBG4e;ni5bD5O?HmM-tLN>9V{k7z*_FZgtL(vG!Pw+CB~@aW@;B(=PW zpBq9PPZPV^NuDL(=|d@dSBY2R2dBNL*{An7WbG43bqhn0IFnv_J)E`jS80=vzCus8 zCdKJ;65`RJ#YPo7#^#%G4e8Z|J+!ZkjS0R|1p}`YL;LESy@sLwFV*Pqc;)W9TE71X z#zY~i*QAMWc=yj{^K%ayl=;#%pFa$JAGq;u=t4CorgN(I1$RN(qy==ZZu};1BG|D6 z=dcTsxdJ{nUI7denil*h{z-s0^bpSB16OBzGd?s-+5v0wwt5rub_jU%P}1K_ry9RT zyFfN{v8BmmE-TQXo#sXl4mn)rtez!b)hQt#Jixy{JiOSIWyZ}Ot>*RsDRBwx56sDC z(RyLe=SF%Xdx?{wH|pWp>>0MjfyW+<%svGL^-e1kzifn{yNzewr}`EOgXf_Z3URtP zr$IJYj`$f<{iq61#KPHu$w4neiM=c(JA6z$Z?*YLg_Hj7Rf|*2t79ktyM4&^NH#$QIthWhU`>w-e*pKc>lM^9Bx=LX|KjyWb8(?K&a6o4<}8J0pIkweKW4aCVY`EQ`*hR#R>?=S;jg2Ja7#$7wU0mLmM4i4dO8pYdyRU6C88zz_hcu?AYQ3 z)M>qdBymJu=D`N%Wn3Qo{vCnW!t*Axs*RQwaL%aTOZJw=#;}xKQ)J`aTrSmVF2ycF z3}pwgMtuwSe+`gt_N`jGNM|DoG#N|U-U}*K^(awue@a<3TR@io(TBz0%h}#(UeJy# zBPP&(()gwxH@WtJ618}-JgWD3`{qB7a=ql>vNQ{ z_KOsGkY(Xuzak$?L|i-$Fr)VREOo((e7qJ^No3I|tXUwC?(7ydWT6jwdguQXo0^ur%!PyE|b z5AR`4TatLSp3(GhLH)#?v{*i|2EE+ePT=om@OxLth1vT@@AE~z&JK0*hFic7R>|r8# z*D*Nw)K)xheKQaFxlqSAT?CZ0D{)7iu-m21M=!7Nk40+h+Av1r2jL=FC(j~Lqn~)@ z`hkVDb)6Gxwv-sd`8k*8^{sH^ducgV=4o zaO4ie1=4z(Q@JR9ycp}3Lc@PrOG3Rsh)RNT%X@}6#h>#sM0vz#)lBXvFa)WBbk!RY zK`<09D2~8m5Y;%;$g~>1ukG|7K^Lt8mneQa$Mk!eS$p!fIzU*ef3z+ojkHQ$im1@b zigc!)hGqe__5Jxw1WGcqIDjAoqUE#rfV5I`-96U)u$@vu!tc@c)!V1h2M51I9tO2! z5JOgUn)b~36GdQ7`Z1}hj8({$qXn#dP$xTS{TP*2-4dV7?M!oNQ`WYaarH)(M9rn8 z-RHn9`5GfU9tqz4*g4EDv4=szA#yIK~;eIU>-Zdbz3to!MI=82V ziioJ7Y_s!^{qXd&sQ}?$nOu!kG4BSfDxOt0$?smAfb>Xhsorn=%k;Se<&i)mb}ss_ zJpRvJF%{dzl-sZ$?h3F~bT@TX{9TN0{4lMnLyQ;98O<5Mtw%7%P4s0@`pS6aYw$ZC zhG?okppdeO{h8Uv&-y0&lg8*aP~KU-c~9Q$Wd%9I^UU};>+q#3T91Wl((r)-%*`nN ziTT*F8~o|88ddsz?xs^K?lpebazDf_giBTCt`{-&FXZalIvg%Dy^dg<9&+a5uqTkKLScha*?wCz89DiZ!!!!>QJ7)O*m$6iUt z8)E#kT+_a^SBBj*x2~Xd3+|qKLv*}iI8`N9`Nl%CF^)lRRsHep2B#x&;E7@A{Kf!@ z+Ea|G%Pj{EcFltmwXSKKsec4^4Dcj5O`T7j`s83bXV<4AoXzS83+{%74*BAZ(X~#@ zU9q@B_q448rsKqPhV1Xmw`&pi{T>hY$^mSZ*r;9HU6Hm~Rm^R)F5+nL!Ti<70M*Ew zw+D`;!`{OjN-oQmBMKgne0=7QdH0Tb*W{g3wR~#}Qr*=7Dw*8$k_my#k&HS6;{ELD zW%KG(y$2PdoIHM_y*yEGB(}nigVL+sn86#X`qMkCvtf>#6wQY2YFZ4X=LxA+YHmiHBspMMjFwQk%j z+-06xN8AazqzxB4UkRj~w>qe|w7wZlejCH*BQ1|n5l*sJSr|B0Vo_^m`$=!Ph4*Cu zqkvT2){$47%)aS_3L3=V%v$o=P4LXij8lJ7^p!U@ZyneRG`~H)6 z|KHXuj*ux$?H_AY1S+EmMJ*h?xeb!tuB7V%nX9=6?hP*K>Fkc+Xd&0tP=816TpiJv zgEo1AI_}OR`l`<$ANT!Bxm>}hK85#f*M2tbjHhgG#*}ag?!l_geq}oq>>rnQ0KU1C4V_EFYfWzKUqHW9KJI1SINy79Z1VTBYHoILvB!G`IbXUj z7{5DmAN%!q2MQVne}CuMTJ=q~H$CvfUsA(;i)bV%$7CD+qKWvm)=rJ9)0w?tunqI! z%KXms!p6!|iZJ7pR4#&44oUVFg^U#lRxSy8VW-&(6TnsPh zT2l6Le}X{_QkJl>=_tKoA`W_FBpxC$W?q{-d;A2#aNo?7sIyA8GxTLG9OE1A&RX6e zudqa_kW^B+@qbT|s{EscbbgP~?x@G-qCrdr$QF7wU)mMBZ)^A`OO@l)ZFqkk-HCA` zno6@P-N5AD>}?1O&b zLqonNnPtG2{=;1Td9R3@aP8t-uf#W?Cbl=oC++oi?JhH?3-KzhA~zhvu5#UJJ+Ae= zyOOp~uO?lriSM4`BzyF5HWRidum=jG&i`uO8`>o&1Xj^JJr-W642&q=mtG4I*x|;K z!2Qbi^pq*IpBf!^OOvlXkytNp47I#6$&KvnrjeLJIKudbq~ihpsz&*`D!Hd)G8iK? z81-TqTFw__bOWcy4)Udw^7xe!T?CAU2F9EG^TeOyKb6|I(pVxbtg90 zWW+Z~?M=}g>qg5dL4#jl6PngsW%ZL6RejGRjSQ-5lZl{gL2iuV?Uce&SB zJ@Fn2IiDs7x9o=dIn`%yVBqQCvLpDAeF!-o?#LLQa)|2cN2 zH+Oz$`LZF4G}5L7+p;i|5pZ42)KBzjF9Fu+e_^Z%a$DIKQZ8IlrW9FJciYH0j9E+d z$Kw*S&J*XubSHrg4zs}@+?(}UM~sWE_*CL^*BrKdMMQ#(bq|s-NM+2*IsbB6*RxMY z03!mY&+lrK5;V{?rxlk|ISDdSrh45W;K%p%C0pSh=7Kn&Xh)U%i)lga!2rQ3QW0I* z&Cm*6yr20Grt-X9q0voFYy>XcL={|1R+)dcxb;;SLgFcF>@g8mFUXO6?%Nc;$?smT z%;I_g^WRxK8N`<`T9?06fL@eu#}>`ME=-nH5sgePyyRaK%VkGuLwPc}nYmu<$S>6T<68{k_ zDhZCT%TYr5_xc;58neMH^yP(Zql)_TBsjO{z-Ees%D)d3T1gdm%xadLmx-p9)ju@V z1w12qzx1q`^D84Qf!=E=wA=;jqz62&^OelZ(YpfFbz2|>2H7ns+#g1gS2Rc~+9De8 zo8t*tXLaD&^OBuA%CE=c{696FJ<}jAAdPRIjeb2tlK$fnP1>;nuZIC#05n)FhQPp4 z_K4y%*-W>h9|Nv;m`@#ctE*pT znTg^}C~m8sIM+-%dEt2xEAIZtY-il*3Q~T5w4Cn!^Pj@@eTImtxDG#P1q0p(U? zZR6fyB6~gE#>bDscaG;v9;u4}0?ky!dPzPo|Ak#R_L{<2^)s z(#r1j&{U#_LIc#FOhZUs?|`7;q2#99q7TH`1+Au^^`t-G!X3QVdC-%A>T!g$_K}(& zJnUC1kqfN{pxs z3D=9#^&K{DVauhAMPf=ymo!`#ly5C&Zu^6<47~tG5D!{M<|a#dsLs7^@}bnz$H#WU zgu0e)1de$-MmM6@dM=5-mDZ-%Qvawvtk*22;hgMKnb8-GpOZ`WIIwzIGY<|GOn*Dc z4=r}Gvrl&+eg8YD(e~@_i@)HSDX!Wi+bFB4(2i%G`~t4eP@F$PX5=x_W85hR@3`|H zsIsxX4$@_>-@$Ne(*t69QK?>B>4a9%b zu@DyQ-=yM&6@QoO{i%gEtHqvLW$)rT2@z5lxq8k58)uxBYn^j&a5KVj8Shw1(ZFRw zX^3&xT@%h(E!V&6XP&2Ah#oQacqXOV$O77ycxPI8%T(8ODRwUIq1LB*c;3n+q&&aD z05AG09826%kK6ka7h+W~)_sJlYI350CikKhGV!4DOd<~3Bfe*WtLT5+@O$-fpb^KR z*pQG4K8X9B}?! zu8D-jdE4WV_jGGbwZ}pb^|&KceEJMm#n7c4;%e(!s20f<%e2z&w9OQK@eItn9=6}V z>drL3w0k8~KLwNgf=*DER403(k<1`%+_@{m%4+f=7?nU?n`eGiz5?I%@2rA%2A(GGY6zG)BrwjS14zv9(hvNccQgiAXfxQQe}03F{h8e}o)iPq zMd_J+g~!1PM6CKK zoviP}IaXYaTKxW#o<2vf_Wn#*m#KRF0a>m%8`mvc#9EYcP;oxpcy=giQYuwgG3LX| z`@eCr>;D8<@yB6f8fLC?nK+w8G}b136O8feSbDO8%h!L{{L1O$8p~EXAa*V&oBUW8 z5IPe|oV$9E9+%g4{nqPSW2|;O^1zhOI%|%udt?e{07=y9eb&-HBz4&eEz~*W+DdAJftixKph7afa`K9$Hp(`TZ1A_|cglo`vc~ui&Gu+kU~9osq&D^ALlrXdRUmu2{V2sctOA*qRG3g# z2k@*iwtl^Lqjbg=AGqtEz>VC)Lk)dA^ z7hH|U0;2<`bZ`3m;1C6Db-m`C4+~YkPx zk{6bv`-gwZI!WD&*22+Yu z-OU~!98m5b1WLZsjHP%F_X*7=G|T;R+m&% z=)szvL^8*v+x=82;+PZ7RvWZlUCiwI@%n+uX3X5Wi|syJWXKV3*#TCQn&mB)14Kmna6XleOQp!r!d zkb38W{?0fZkC$d~Xt=J+<5(aiO@VmzJ*aFFlMaIeq#M^JH$j1S#@C6mSh~LNC2BPm zihfVxM!1`}xqZW$zu>;$m~*?9>Dua$e4q-eAjueYj>cCRLlGQu7h`A;Rc^$`8(9wz z4^d6eXFng6JhS0%{5$#CbHzINi=}lBlutY_KaD3UXj2 zKd-k*WR3o=Gk$3(6qko${Gi78@zFR0JaQw8h51;pln0d;Ae!pxBh?S8nEoV4!#^u> zCT37K-W~WY^UqeC&2Kd{{yNw%lFn;LP<$9yFMXMbNL)ulH8PfE0BzjVlWr?wcH0Vo zs2<<`AwIoWX2r4N&R%(y|3z9AM4k~?q8^vTD{3_{(DB#(J9xku1El=KYyOUu_qZx zD;egA96dS)|MLqayZz0H0|%8jUukulSGW9Bb3Y5&-s9%*C-3>d)J9U^k(TGg)Bub+YhU z*T%g*4M`lcW^BNLgHw_2izrO>Kl~j5WcW8O7+;Az+TXZOzD3!#ifr5t<(LdsE>fmU z2cq=V6x2Cc0K#_@XIDN|)Q)USS8S4_k8|yLFUXjVrpGJ$xw(q4c$71I{K!DP9qha; zx@pz%1tq$NugS@*w>{YlY~5_jFTibxS2dHZdg4M7d zH#ycXCKCIdEwoOYh$+?cSM7wO-#kcJrVy>`855GUEX-bCG@ z;~SZ5*85UK3ErX^v`IAQZ$fP_+w|}BL-(szVum@9KCx~-(Z)dwx2Zk zy@#n-p%o9xrJ?yK$n?@n75O5;={F@OJgKWiB(9YBq~E;@k>TUP-NUasC=GP{N^G>1 zyhvz-&!Ib7;lTa^T(824l-PbATXi3ou|zn=lc!|g#Qo1dxlD-p2;iKlg7Ge$8{hvq z_(`3Lm-U+=8z$)V0_qD;&H3It)vW}{hwlc-Cq_5yTF<9n55?`Ab$ z%C|YrSkv4|vJ5<*aX;OuSWSN3z@X{O=kE9X>^%*!(6$cYzqV+c#d^GZFN8(&z)MS8 zWbN0+TN@=o+c708Fh*&$q&}&|V7*oOMs=MR`XiHM0qkS&BT03f0KEK@r-a}=HSa6y zj4N{QG8J`1dW?10uUq~P)9;iys{e=9uv^(3HOLanl1xx+V$!IEtj0Yu;lfvye-Pzl3swvz)*2aPDIzmTTZ6#mC}nesSZ6^W3Z!w=v;j9Qb)s z9A|s{ZITOD^ln^;^{c#c@UN1vPU%n%P46K@Rphg=s}=E+OV_GOK#|6tO0eGxbhjM0 z^o!3A61=i*@8QC#z$Tcvepk-X=m}lUFCE3fc=6&__c{MCy{LCsg=(Mj#sNEcgj}QH z)yc5Qj1?o!pvd2MS*r42Qe5%N7rjX_-MsX*msNMe>^Y4M(xX1xm2e2GlscZ3B0}%g zm}86pm#tP*R_9E829z^WzYH$afOF_Gm)J=H+07OgI$D}%>F{WbXj^;zON>Y9_E;18 zr(6g2-Bx*TCE86abjA3Fy#6cS8ypmnH|78GIKxe(Zs&I3 z?RW{~)x}r0JHVnc=P;}Bek`R-FXFNLr}7KqwXkp5wtl5@G3tVjqjY&^nU*hSyWemARoVO00(Jz{d1xd5vM1?0TK z8g!S7-(`|bX1%50)02Kw^H+!Tz5hA_e-iD5%YD~~NE`c@C6bKvT%oFd$-xhg+hY64 zUg!a!o;J{#Sxq~h?E7^5auiknoowK;A^hagwjy9=%Eg)qwgL|?)^;zd2R0`TzBc{M zNU*heu}TSPy)Vwq-L!e4-!UFF`{LLfba*=9KE6Dgwu1M=jaR`Ky{}8`Pkir{lUce^ zYX*;YUboQ68HO_AB%RmC9_(V7%mnQ-jRYX#!i!za(I`f{udnfknH|o~Mc`V?99_K> z&FQ)NKf5+|>i&Pp`V_g_TLT5VS$>s=aKaiI;l9HsixwlnF!;Odb)^f7A{wQsm|63W zW9&q+rU=aW^byvju*`a`b;?Q|Kv)$l+J*t-mF&t`Lf4iww(B3Tb?|+q19l#72E_$Y z8s<{%ivvmKmb(L)cP$!dTYJ}!7S&cu(Xko3OSPvKw1xSx3%1?b7vY^>Mnw^Ym|npcUk%W)X)dKLbGwKL2v z8%tZn?zmSmum3Y?^lTg{fd5BO)*QmUwp55%SQ+)bxbjZgoEp7YFN%Voh=TMI z6%gstJBYmWCcP6e^iZWkAoLCq5RfjtcS7$~q)81OLg+Q2hU&?G=3JaPbLM>CcaaNj zGi2{)uV<~_f^^UQ*vYqENf7`YOUAV^lF~$Gm{V@LTV31U`3*AVV1-rdnjH94!4Hpw z%~^8ZX~yXZNsugyxgYQAyLE<%HTH^!&vG3cGf!2@+{k6N6(e|AMV<$|ShE(vZ8F+> zPaw6pppRUh- z34HghS8PPqU@JU`n5`8X8jg zTI8H9evd!giPB&*(ocrgP7QQ9GjzD|_gj zVsrt2Jx?ii$kla$e_jc_Xu+tbuOElqKbjRtUzL{c%(AUG5;|O^A$}EVPw!q?GQbaG zh97y&?ds%(Wh$$WI$UPaINhj{KEXQSoCCGVxAoH25ysi?Ib*w$=Bz{a12_ngfWH4` z;C}R+yBl=ThaZ1e61YAf=06S+J+E@Z(%pz-os3(>DjSOz_8azOg2w2n7n#bVmb(vQ zJj=6V0JV*QZQ`ghQ)A@e)XoBm;nIiRW^(QWQ_0|UU1HBRVKqf8@hj)y_sUbv>Y+X~0zc)Dn`Q+vaW?Ff7s@VrAdk(;&^H$zVrx;j zX~{tzGe?*H8?!P*?Jijf=PezXLp{ZdlkNhYU>`#Gu zSZMFHXPCX#lo~v4_AzzObB*cCDp_2It_?&zS_2P2rik=UYs`42DfYVH&ml3k|} zeh-jg=-*H(wi6k$-jumKzt^4hN)v$6?7FbCzhz&0-$m#mIA4YUKu88*uaE1TcKG$x zg{*?lFbOx*0`Fp$33iV05_qqSyRQ&&E^SWyKong_`|BODi z6|W#Fnf?7w;0qzk^%teWTn1pT{cuHcCWaXKRl7B&SyFNt2=` z+(toiX@>?1-zwe`cvI2an-5UI+Q%z=i=sQ8woUOwwDC>YF02jnQTNKd86sqte{fkv zj3G$(a|e~qdF84UJ3ST9Agf$uvA9zCPwdOKgp2k_5ercTv;r3X=UcPoPlO8DCX0AM zRjb1}LVp9dcyZOgtA>!|td4{1YrO(vKIGMe=Epr=(%DpaI=x+GH;CydVTI}JrCIjc z>2dTJd*@_5=~{cm@XF(DhbM+Gpt6H;=+($8!_p^T5M1AXxD&qN);_uFXn+6rR<;;x ztrz7d=5%l~OBb4&c*nS@{=~*&hv)&W^Hx%Pdgx?W$FI;lN#R4z5KYsNJ!1dP`;iKwBE!VYo;DZ8y_@7j1c z3vhU0!*t=a0A1!MI-2}N2^E^BPvt*adRWobz}C73zHty5U~wSQUeo6-94f-b-6P=@pG>8-Qg6GVZ&pGspEZq3M(j>ekr|CAYK5E6yVl?8t+u4WT9$(R|8ef>t_ zWS@)E>s|>S(iveM!`q%;ul}5j%;QZyxdc(~H$4=)EdG(I3!WJ`MVRaKFpBa8Q+%D>Fw z0gM426tnwjT-%Wn`LzuvsQLzjj2faKB9ZN8NkX{wP6tCnQ{s)()%FzJW^xG5)H`>Y=`Ckc0Zb-_)+muUTJ*>Se%>aR~yQE*)PUrWA z^=B3L2<1QRSTORK!Va^%Y$!{aPd;qCgV@G@y>{XFaeoT#D&Ib(r7-oC&qpgr$J1!P zX6-tu&2xnl?rTWtm96GYsW>J>Ah*@F-6!?F>93Q-oSwn7IG%-RYeNQ^q`WVp61#|$ zFF{8es-$y(V>M)qrCFTb+#%(;MVv+HpEvb;QN^~oNXF%`gx;0=WF;HB&W|X**YH~U z7JDRePEftIB}Q*at?84jAvhM3ok<_J04Ek+tUuH>HjyQy9P_;bfQ*pr&K2(R3dCS-FxhoCOj~z zXDT+RFrCbxtscxlFRU51nAL?Unk^W(VW{6Y9a4`RM=n1#TerRtI6BS@`+ znp=;^WC=)SUj2-Gn{5Jy_iW=Cqj+5J+V+7dk~EZkg%i_$=KluqT0_V|LC3k_;@3Cj zuqz$n{USzFv!0S;TZVA}mZ!=qZt#MJDy_dh*)!baML%8F#c@6T#x~7{JH@yc^dc^$ z+u6(nn>=Z%{%3{o-BW1%CTr-ktF?#nUZZ}bH!5BzSq$Rf23+oCt%-BG$|mX?SD{|mwO@|J*U;T?HJ?3_UZWWtJr2?_X%yWQm+<~I5XNs2{| z+o9UzKeYyKBsjCVQiL5lXVbEH(TnR4e;oEXT2_oxEUw*_7s}5U;hK80F6$U|=}8dcA>u}Wl7V;s*ts%t)7 zG%7z=N}`Gg99*GhoSC?NdzT1zdclnF=V*5YId`{Zyn=lZC62%L&1$N|Dk*@*$Eu-5 zztCq>+R391Esp>2X2zM(fG&+gRpYs(q0)T>^(pPBQqZ%EYEFeQ|DTNK=i9hF={!&# zZP)Kt@xF6f>;Uv#s_2?@w%xeLpJd{eylBume|`{5Tdehm00q;&8)}Tiy zZ75#gvG3Lpe_(qy6tBK8+R zngsZb-GOv! zTGQ(fzXy(|{-=q83!{RxiboBXI2?UZEQq5>po<7&piUr_9AqE?4YT_U>Mq{G;>Y=X zQbVL&H2W_)TMn=IQMd?e+IWbY@AwN6F{Szq3wat49NCJoSm@^o?q?*gJxY5T^x58ycbNikwXJ5jeRC0ZNk`Ooa zju18Ob9J*$)iXQo&LwLyWqv=WlxnoqKeib0%pw3Sygg_}C?GdbB#;~XjrK(-DM*mp zMkqaT_Gon1BLNzBDcONS$!B7M<-F?U@B30SM`rn;d6C31+&XK=gWFl~?)fDR|?^kw)pY z{NO0Wwg`D-eMmOSCv${(9K;so{C-UVir?3ykrS7Eb_xk=x4pA|EbZ-=Qg`19?aj=p zsIpC=w3-}Oqzt4ndK#9<&xZ2Y!rvmS9;6V2MYPFOfRl+pf}>-F&wq!=x(aDv02)=) zm0Bx?jQ@?u{+5m366ThEKC?59ky4|Qfy1ZD>xX6d68YrF&7Xh*lte+d3M}ETK~Wu6 z%asr~EmS8@bUm9#FDYeMg{cnn`1~Ts?Iza8ScPrwii+GY_Lx5O+pq1-A^c?1Mb~4K zhG^VHqcJT3F6x&Ynm({h8A}$2h~tXtQ|ah@FSdhC{7X=Dov&66g(Dpu1)nPF59`PF zyaH+t5RF$Aa)5h<8Ww<2=BC2^K(<&jp(v(QqWzbTP)w`A`^IiYS)6rG);XGPq-@wY ze21i4E^IGvJ#Y_;nC!Z?&vrwc6T@7s{ANQXpB@GV5$ECMe;|aJFwSgwv5#l6sab$^76YdX9}OlNUpC@LyijrP)TwOin;M^6=>W0z_kS>JnS5e~(~ zq;0op;pWSi&O2ZnD)OhouQ$>>&4iqx0&(L#?}~tr8bE zM$Mg(Io2n+pyr$q`%hjpOwFhYJFHXp?t0Ua5yxCbr8(0J5XtK!KX&R{Ave>Hv5uk% zzZ0@;0|?ZX{VzZ9F0=!>vk4Y;66mnU68m30nY(^=F{CpkK;J#-fA9QMF@}4%b zE$_6ju1=x(&C!mjR%MXd@3SS5@I_TfvO)rDH5D z-~j&jw#=%WgMo>zO0l1z z7cZ~X37KL=R>_iZED6C1Z*FFo{0u62>a&ifU`P3<$hj8}l=LG>PxkCmBDoF*L-WF> zo=hwmml+>FPIN1aS_=h))VF^9T z&Q;t?zTQx@Y5>(+k1UQr5=76c46vaXvH=8=DzXiXOs;8dshu)9qAT9eij9+b#`oZD zr?3Po24svjZNJC{f1{m6UAlf+6O$sn+R&c{klf-PCabl_eZyS*GGTjrYx0qWA6K-N zL~%ly>gBy#9)p`W%23Vl$lvN#b-GOkBip}#h&phZBF_&1OTi^Vt0Y&xP3hD zxdu6a%&Ya#W3m$VJXD~>g{2H{)8}zw5wJ@6LONKw`dM1K!5)tczczSg4OJXddNQ z9s<0y?W7jWe5#|td-~M``XD|rOZkL!3!IJt9KI~XF0Qkz6yz-o70KB;NvPPm2&cXV z(R>_aY98tuH`ezC0_5V>94wOrJr(|99NfjAi3o^f`I*h?S?!iVL+-Mm8YlPTke zJukC15edt`FE97aepnpZWaENjdX}-eUl$7NJ=?4NqpyKX{r;r)zg4#6O0bzfxjk9x z9<(wv9iB^nugZlVlB=UvgSoi`78MV3AAEj9pC$jz7ok|IM;d2=`=?->xYgp>P1L2n z8Ol}*8Af0EvC_V5%+@nRn|$RW7q9U3t0!6&!It$p_E^g#sUh!E-bGm* z`*4U;s>r?4dXV5ZrTbI2L~6J6fPMY3$E)SM$wJG*^~yCIiGu4D{>KNe28{d!OMY=E zF=(be7^f&5ZYdjPl+%3YSOYs))I)9B`)A+Tp~`W;jCHfsml-rW&-dWFu}*>LVdV-SDu1n~j@$NamGq;IW-e67 zOa6TKJs~8Fx*{J~p~3)qaA$WNMAJSkIZ*ltHIppS&Ax`T1g<$vc7CcXzp~qElR>sh z+70-s?Aufx7HTEP@e$||))3S=yUb=UnQLVnk1H(zgU^Ab2n6UV^ zd}q!3#9Sn8U4v=!#;AlUIfULJ$t4-szKA{snn9HBG6jL* zjbvc6C#QlWTuR>c^7g||Q15UQ%A0p>zNQmy(h&%PlRs7y=W_u-ctOowfDDlEoFU4s_s_c3SMBXD!My}G3j4-N$x2wQU4&iuEx6zYB@$ltsQ9|^) z2Bwx7?&GY_4oteyP8lCw8!W9k;8~oXEpd#v$5LscXY()g8!)z)bwN2Mj@8rBE&381 zWP@?i{Mt4?hqH-Ha(1<1m8uJp-BNC{gamy4*Jl!d9S%WO29`T0aHbzfsBAk^pw8_v zxqp4%f>RShr7|~&Ayq&(H4|jAR~|a+v4k}^`+fg zKU|FYM(y~sdIdQ>GaM?lUHGrpC{EUiq3?@)6yBJ!YilP1G|4-x83R?t8W!x<%2oCj z=l>F@UXYKb)|^P`IQpR3&00mVFVw-^h`9`(f7ety(ishghy>_v>GS4$^!6Mg%_|X!qdnR(<}iPlTkhvjkZf6|ur&s} zXLnY4zU(@tR15(i&s2)7;W|yVyxw_EW(+B(kJVgeT$00QHTyZtvLbFiiBc+p(%8tn zm}!)9zx-bP#5SOc!~75yc##G}OiQp%dbV8eMhm99RKV|-$z5Vz-m>21;GXOK1YsiyB~QRID!|YnVwUBxdVsx%FY)U>P(dJO$&#uZfOS_FX%Nq6jLvg_!e75AHY|A z_8Reiq_nk>{fKH0eB+*?BktD3B}*_TMX2)j!ZfKh&0xD46~SDG=6Oi^u0 zv?tH%Y-K$Xu0ibrDZGk$jH-g%pGI?e{Bhvhdu|c8>#^n&yyP3laYnbU5NL(@SvT#r ztnA0rN9%7iwrTRSZrN1qg^x9bQ;*ckse5rRs5TnW2YtRscgOc|^wAZNSMjxq!-sqP zCF@PeG8>^YiR(EV;ZX+Cv3A;7S(j%uC#_w-w>o7yZAlmTd$VgBL)}P(9EALw`l%M| zT@4Lbhn{@S@f>0`kN<0t?Fc{ZjFz?r5I}e^N#}*Bs7T5!!60ABw?}W-mle1_878m<83>SB}MsH4x4v%{C?FPGQ7T(gsgGkvql-L zUfROW6gEtHY1aeC*s8B*rV&a^urMD`I^ZbO)Vll{#|~!~`SW3>V|%o-7TR4!9V-KB zja#!-ZnbOyhpBb(vg@EWf8$X5KzA=_kC=Zrn4WjB&qD}vvO#dZo!~bvuusaQ(Wv6< zrS;^qIVk1}aZ}@;yb32;NRB*zs338|7P#aWX*)CGlwyq>ZHhNNQs+T}(gAzQ zMF^;*isP>2oNfHz6qN@Omva`l5KpT1*l+|yjA{!j9}T8K^l%T~ST924-Nr?lS|%bg zi%j?Ejmt9{LVB{NA1?7JcBCKN3+-gn{hGR!wR8bL-dyg?=1xm_sKj++-U3ix-p6cr zwG>9?-r7vK!>A2Rm$5!(2xJv zz;B_vC!d0C0t;zp1070@)SNsYd45nVFca0`tCozA1aI<0uGX35tqpC?-V(NKjgT`h zkav!>eft9XhxaS(kA7T|py`;LRwdQ?WzK5p`BB^D`4SdAGSTGhXh~W0IO6T~Fk#;F z@;t`OoAb)!?$wu5vS9}BR(aT!wJ>x7<2G-v$U$B4e*I6iO5CtRjf5pBGTk>=K} zPVP=6ANO)?xi*$J|Hyl+ox)UMn`SJz`&2%X-BB|%%%364jB6Qd4`n|M9zQfL#Gx?y zeT1T`Y{j-Se7;9oQT*7ap;Ql)9-S-zn=d6=0cN*)-sp#R}2I0^9XrOn|cF+XHi$ZVFE@#w4 z_ma5oX$1^6#HXsqE^Y8xQ`6H_@cvlWzhrk|u>4kj7SMYQS%|HS7iekE<9wm<lh5#jZoKorn zepOaj`^c~SS8(Tddh5auyk@|4Am04`?6+mLM`8}k<%^cFm476nW7tJRn9sWDYJJ!1 zek5=2VtsxTAHkij?^_uYVnIVCejWN4lJFI4_gA>;z7w?D!%NbUjzIVTW{rkoM;0&H_<6qBI>GkPdHc zrT1SlAzj`Vk>0AQ&OMIN44nqaYp)UoB|AToEx@q@L%$SV74s28X;yZz@!s!Xo7z?j z{S$_6g+~_lko)j7SBe4Ihn)rH%Kx%XXM$_(#NPN|0VZe7r$AuziqmW=HQ*aqeVEWREx__)Ky?8z(@*F&C+hB~aHQ zI}eSm`4!{e3Ms5#^+lM@OU(9(zsDM!44L45#3=!St9X0g4EC=fE$%%etL*@$s>`Gn zzMH7wDTf6s!<;ub2pZe(s)_9I7IKJI+;-P0S-r7J>U3 z*DGDy*#&rD3f4<8Dl9ABb%~W$hnskp7Z*e~BVRc(7X8)V8XOp3k8fX;R=x(`6O-UHB}0rt$URMW(e9~Rb?iIcvFL;<=QrXY zzVM~E^K+_jDawY<0$a+K$$BxXZ01CnM*-erN8d)~kc3|dWz2f>7v^^wBEgnU4E0Yw zknzI);hE~#HVdspoUS&M81ZY>gRs}P7jMw3foF%rfBP@ImTI2ebbRacw34W~#vGc8 zVGQ>nc@^R}GKAW=O*mJBSS(3zC&j78fW{)K3qb7tG*)baTSBeaxW-T}vGh}nSnT#O zsN*kq-v8~MmT>PX`BSABVc>itqfV5wZd*e)1y&R4LXFvqg_bR>nC@c6D)_oKj&()d zE`A>$t7z3LAKdw2Np4hZr0YM;*`Wn1ll-S7Kq}y0C!wGG?O!}6HA~tlxl!;U21M%L zKWammPuQ zb^bp*Hyy?NBdMtO#nd=1B;Nn-N7s;W#BN50bwyC~VI8s6s$FLCPrdqwAL=)ajMxIc zrVXnLgnfUZ1c2*gz3_E4qIeZQL#AC5LnDK}i&nlRv{{YE&1uLGDd|E~}g<3^6vG=}43`vuBS}%Jd z@6L}}*QTVZ3ff{N2Vfk@Y4iyre`{`r6a2NY`ioS0IX^y#5`LEht?VLepNy)6t_rwW zx!a!ZWv1nmx-xV}3bEmrrYvAFbVs3Y*a&9%0kKK7FS)=k2w&fb&Q9V`*f4f}Ye{~5P zms=7U;9Y4Nr-n$jqnDm~KQ#f13COzXf5#0sn{lFesAC>{#IDH_)uhpqf)_Wc(Uy19 zuA1jsazNxMAFO45oE39c-oEEJetq9r#^C;8nwK=|v${%4=lPwZ?^X&j74AoSas*yv zo%!m-E&k{`f#pYG>tD$ig>=?GVibTk#k#A2N#7ygBvq1+ zuJloMiP8YIzA30qZELvho*ZO#009oBEaUAJCr$-7_1;yn9dEp%fo;j%+sOle1ldS} zt3_ei>v#lG>y7@j_Y+3r0UPy`tQv=YbRj~G&pqW`#*?>`q?Sc?O|4@jSV0wglZGk< ziwiQYG&Yr#Ywu58E^|e?B+-hj9ebx7(8r6rjbz3P!}N_VZ-<&xwuq>Fa@;|PEs4{W zW;>CEksCV-6xFbrVcsDRF}6$2_(iQx7Lx;nKwqxS$@zJjnsg9&* zQ&Jf|XcUkL!iH&;Pv+7CRNIw?56y4|=*th%4ax&QL&b1fEjABL+7Ec<$Y?xA`43Nt zTaQa`csua!f#l~K+M9j7nqc5W<=JrW8+fxUT}1wStW=0wl@!{qqaD4d6W+Vfc&i~n zyBe@P1i*&f|aJY`%*|=S+3g1;jzc%C*xyErR$*wp6ErH7O6Mz8DKZ)@I|kO zz42J|Wx%>7%`hHu{0^AZ1npLFLybL^{mbg~ieIXN7gnC6r;<;#L1Tbxo z)3(&fH(Szw5{T9U(m{-F)Fap2Qo6IK?DGV8?lavw4}VLoNiPFO5EVGr`+2IuXL!%IBBs5s;r~*T~+6!|M;JWA!T3>%ZT>i9^K=%Ik ze%ARl65WZ+Tr#6;nyA=}tzS$xIH+{$7~kk;wvmz2@l*OLYE{{g)U3BfUh%%QV*IBC zR=;cy_$uMF8!ge0@^WBcY&n%|;j`?Q7)b9NBmb!1KRom{GW&ut+t#(T@J?g+4(Y90 zphRDqc&Si*wr?c$932ue!*=a5y~HK<-A#?C4^r zE#7Bkg~LGaJ;)%>EGqb6A&KEXyal3t<(40Y1ADWBN?TC6PCL@a5F(l9aCerK^4+a> z>DIyAEB%qLUrW|{SJ7j^Hy&QrsG#T6d8%avKmVCd(nH9bHG@ibjmTMl7L1t5VZEu8Uc!3^ z<*J{g&ML*-$5U`$jaxFD`l}Ja?Jg!Tz-!R{X0(Q;_L z?)XF}UsT1GpH04IncOSAkAfY$#c733Eq3hrk1V0I<`ldPyD{utk)bRSQ6S#Tc?F&Zj-mz`S6xESREVG zST|Y%RPkoaaX#h@V+zJa0A&U=a2w%^Vl0v;wu4&*)k$dAxZnu8uyII6jo4&beRRE4 z|Hy>vHAH3~TIOM`*D5QJPE=R|NgI=X7I?*URIZ}&a2Ll9W>D~VIml2Y4mYajaiJ#$ z@$gZN-J(v7Q+X~d>{G-gs@i_UPEdIGl zpOugQePvMaLh>LoF1M4t)7&?j6d$76KFe(g0-FjcBFCw%EeX#?{gy2;aZ`Hf7OrK& zg?2eL`S~!pX(1_JL^uSOUOKB{FcGRKP;McO`~hkFTXnSc56{Z-Nb(v{GPnQmN*4dS zoI!%*{$%8o_PJ>3WT>SrwA&1pgC47Ka>-j#LTWJD?9<1&0MbuoMSed(CL%h-5Sdga!+Vv)4cW4?d>AKg4UeTTCHNz)+yVS3~87a)SW5?sUxL zt_|dYe8j4(14FFxY7CHUgNPJ zxXA9aDd)@n*PKl!^9>J0xD^jGzSbq^9I5lwm-1LERoS+fg%3~RZUTZLKTpntI-|v^ zpCQfPTPz+_KUduN=FG7t9eThCVSVH|8(DA{CKn)ywAsj@82Td05d(q&2b$&3T;n0f z1z`tDugbDp1|MrQ?UA@k(Pgdgp^X}H|0+mb7_w@7aQyOsNn!)dCwe`tJT}U-X|qio zqc2IL)s{DJwwew6G#+wrjGVsU&P@w>ubBr99ZzI4^!#$79N6dx2Fqe5)hbAy8ci0W zFDj(6;*F2+hgzJ+7URRD&|kcd)4H+oYo@-6O;hkuzC97ga(hLK%r3*POg7BIvKg4g z1zhbeWeRfC^}=Ps$^R{GMz;e~r6l%0>oAI^M6d^%fQSi;iYWTUTw*fyE~SFV%8WAD zKILA->;Ettugro%Q;}JW(`~Xy=~r~%wN>l*#w*|87y0qyMe1SgDLNRT%yL_og&xOw zDqG5fHF;A1jO>Btb_FG;=SzEBh56T6KQ8rlCUR4`|9Gn!Buo4G>q>R<_-sPt&?u8B z<`n&js(jZiT&-j+nQD+(Dxfzet^+AFHkWZJ0 zH<5Fv^G?(4#V}hOvMA`@id-Dy2n}ibJ&l_EIT}($NDr4S+eFJMf%5EjfcICLO?kyb zGxik9w3HOfb&)ss(=pWsy0@(n=s6xb{H7Q48?@Id7dGguGMDuyf+BDgHLyw@cLbuO z_JW3(p@{thO2QiN4y>zT%ru*4_(v@6uFU_v?P?uQfP8}!=Xs_w5@gJQ|3Qh>W6ape zH0p!WWmObJ{Kn+g2t$xsDj%k%bo;UA{o&c)Cy^S|#8T!k8HB_v&mmU9Q&P=#~^Ug~3;AMk_Bbn;9*a$+%clMA8@s zMfGmoDj+D}B2$@H#3iCVe-!3AsU_ITaEQT|5FXMC2%^QWA*Dc$Um>}v!JLfhl)P!o zn}K5wMm9Hy;W4|Bt5*~H8UF;7b}jMWufkal049Tc*qOiU*vKa(_)T`-c!}NnM%u*1 zuDZGh!{v5#BA4R~90hg3UqkV2@B;`b>YZ=LPUbKr?3hdiQJdAVK1L$6WBl5pB66xi zlSYT_XJAv{?v7-r$A|G_Lk~=5Zj~%iSLMvBr1+^N5`fZ5%7>R`Za# z>IpU$y>FB#*IqAF#jZvtzep&;L_wkiOIye$HnxM>G=jZ#ts5PmIq7k>3FqA|y3*j{7iZKT1O^XEd=mW@)mK)l)*|x%#w&e$kFL zDKx|7s!oG_AZFf{2nAzIuT7T#s7d{c7{{crNYNvU-uDf5l~&JUN3m>K0E1I?MG#oQ>4AOFiXgTlsT zfju0!H{gw(IdC99pQ+vE5wo_Ma?ek_pU-l`UQJxjyvA3vb1CFE51;)BczC}EY?QBA z^8;z3^#hnGFFl|woim99GVes=IMG6vj?HWOh7>UP>?T;|<_O{8=8fxt-^6cd z^ybhr?={5sSZnbznDV8eZQ3`(U4E&{*q@tG=%?0cmsNA2+ABN~+k!?1{N$e*N*S=;n`4$t6WNQ&EL<6EcZLJFz5u zq8*`duQ3Xll9s&HM)&v$%@j?NIe5y(Tm>OKuT8T=3HWb6f(m{0Q(-Ucj0($VTlkJU z>aFHWm+*<$0~q3-bUX5nap3Mr0Ku&sI@Y>#Vg=P_Mq&9TDhT1h5%gir?;P)(0tt9k z`L=p?VcvjqN{*cR4Snm+0d+z%u$0la%akRzsX;cmRry8@_j~Xt#rZKA56sPvwzuD| zeD-7jp>0ID@aM@=DWPnmC=jr*tWbjO2l{DUa7@f)dyotDdke|W`q0J2}S^`m8y6}6l;`(*5e{qhV1N@GNo zz6O6&dRxMZ-UZa|i9u5w0P|M~yMd4wF&Z3=Of=&Uo2>4V@+daOwNe^F_eEW0%1XEq zd!0H?OI~H_GXlKUG_4O(wgN;9hCRnbZ^g9FH0VhPm>Y#({%Yb5)@X7{aHl2--FyCI z6Ut-;T8D+V{0iF!P8=78>ODC^HU4-pM$>c1aVvR!O$$3D62py?*oN7~!yzX2h2Nik z8-QG5g1;*evfCv|3R>4_kZqyf@4C*_3upIS5;zglRMy+ljkKVrM^g{$E(_qG%YZ%Y z&e?VVj!_sVkR1Re(ul!j*d0D8ap@U@SrdnnxAd6o*t64fm@xxWCa{BTB#EpRMlH0z zvc##}=7N0SWYI3~j+_3B<268v^fJtEf0JjCY`8z0Qi=uKK$|~dI+SmwLhS7n5+(Tc zfv1ShXHtmgxIKdNYp0hFWHP1uZw|6*QG30z!nJhoVoifFztg&Ls{Yo0=i9@z+g_S6 zg?H^t>)W9a8EfQfSahEyUESMgQG?^)5n;Z?C>vB>j}OpPdU7X%@k@M#ecR)+J8fc)u3V6uR^o- z-qCeCznwQ4+=g8_R6m2Zh`qno-KWzH6Zr3QRQto22ga0`wA~{44~XLPq>S^LvS)Xq zWdNJSmEvBa1@^y7o`t2Am&Ak|?WRnvWJl=}9q6q>r(InaTdNddl(O zTre~{;A*sRVEJgzhQP?ABPlQ62gzy;SsWr)Dbe>qlOM-k=e+P*WetXOfYyER0y30i zq*`ZcrWm3CSNC}6lNj^GXSU>>wJ+cou7vdVDPeDRs1#rV8S?4=W7AJiBGYYOw!gxr zSsm&1&wqH!fIl@kumD2*zk1Wsdx>`w2C4;8{4VjZrP!s7H}TAL@oM|o2g z3OLjRf4!u2P}KV=hsVP7+2=+}@H3Ga(~XY*BxQD8RUoRvfb7O>nkIMZkXb}E@D$f< zc2KFnF!Zn;-lE?ljn>h?6`8;NE5Wr+r!^^KS7&I_*OsK;ONhT8f2F+?DGm^a(A-r^ zG2w8_jQ{YEJQ%^5i>f?Zw5lUlTTe2EsghtC_`@~ESC?YL~HZpwOt5TuXfM`!B{;lgP1noRu@a!XC6MYM3Ib=9IqKP~_V(QvT! zELW@Yavjlao8sQECQilsIs7e7vT423Bxl;eT}^D^dj578{8P&-eTGJs?KYySyYm^= zp{O&ka)K$@TNh}{jAMCTR?UuzqvTVp&8>?T$Aaj*K#ei@x9m9zJ8WIE8fqHm9TuWA zmH2}z5B_$%wmGqFS&s4aIQUi(qeKq%rYlWLSHlF^{h^_L0S0+yG?)F*nMn;n(Z;*r z>X`=_1+Y%*z+isCh5D7(=&ILd@~wppCSN#zi@`2Jy=R-(xTO1rxyz7-4hK#}kA|$g z>sxP@6+p9{AGaD=ou4)vP*|FO@BJHheu{&$RLxi4<)Tc{FJT&;LkTF^_!_5g-b1jP z*m3ow=r(=Ma|LEgeIocKX$Q`gm;i*8ppPTrY!DWa$*oDpWY3jB#SHR|_=)xJP#phd zHPF;Lw9Rszgi5aC@A-CPdtLmeo;Tl9KI=R*h${=6Xdd-oly1p{NV9B}IlN1PlI+Ve zdqy`HM94IM^L5*uZO#s6#AT2}aQciq?AH>ERim?sCheo=?+@yD`!VN|?4lqNxKKrO zkrt6Chl-QXJLTRL;Gh;X=l=rz`Ett-en`!8y&IOkebNHqlKT4wY+h8-xZLC z4g4ksd{@H!dGgfR8I6y=Y~boT^*puWBCe>nu%%wvCF^XiQbWM)JEq*(S>p<$0S9UQ zI5w(3A>Gf-*ra_=j|fA1?v^abSE}r?-nXLT5)w>zw9IVo)k=gLI1+9C3yi9b&-g$i zab8AsPt=T22!`v$U0Fu0Kj}^oJV~ace^0%Jgdz9!r7g=C?0_){DFDWDMA(NQJ73u{ z=tTlimSmtx74A&(&ElVJw$s+K%kyRIU@TD5yl~BCQIhu9FSr2Tlje-x%C}5&R~_8S zA+K)l-k=OA*F+w4i*#wZW@|3AlXrE92j5Vroi58jy4Vs(ekGl4U!9k&aGVD?*0zEuRPUe^OFY6u_o+&X4$c-I1ThhjXm?a3pI ziKihkn$0K%E-bVLcYOk>L?oPbtgHH`lalw9OJ&|zssz~L| zn}xruvZbookz!*4nFty6YHCi3rbu)93On{8Vr(b(#UAkxMvO?$(a+PMAr2Yn`Ah6}S}<08jgVz2p+{DciKMg6cK ze_>2m4M+f|0+t)#Di(h!D+utG=ZDyXL?sm%%I2i4(-9hh$H>(hJE4~Tfdb|_!=D!~ z8S%DcyJ+s;Bo0z2T&SZJqK~Al=^S_lqg^(7OF7dlJU`O+yh!-%k|4~xv0X&3|5uDV zks$p^)XE!L&q3{T!Ooeh9kJEX!O~KLPmbsS-QZK%6C071qZ2nmJ?GvQx+tQf# ztYzQDab=C(pGu1#e58NyS5LRzs{Tz#+F=Y6g$4Lkd~PEHJ4ZB%HZk!(kIhgy_oDjY zD9enZ2#EV#JYB+EzjtLBrsYH!M77KyT6x)@MV$D5arT};QAE+UFbE0~Maf9cS&*Dj z$&&MslpqWUBRK~_B!gs04ml493_0f{l0kCL3=DaI0bhH+`>NiLTlc>AmDN_mKo{L- zo!$HFv-Vp0p|g)#UiSb}*6t4E-+HOyeVw(A$2?^KZlILDOvy=EkLcFruvBFK7&^D* zURqRj${oA8vHI6F0Z5cVfG#hmQW0-;rlq*gLmAkaUu5)W?FnJ7XW?n4C%X`a-5^FWcmG(G0c63i0Ej&^q9y`I7W^uXPzy?=2hDCr8|!A; zrR|F=b63EV5th{S=wh0Ls$kh?_hc9RU6r`|pn_8k9fb&=XFnWfWvBysB}6~NETafr z4u)0O4WvhWSHc3Q=IxNB3b=C85Aj5n(i&VxPG| zxv2EJT7U9+Zr<0PY0fq=RZC}yXYTYG$-PP&?I;5o=D0T!LLlj!wz?+k*A4f3v8OLE zxT|6%Pb@5!zfu6=KXo%9G^+B-m(BB zjWvMrq93ihkI=wY(^y_ZI=;iD+*xVi%TSz>!A|MaN}!{T%8&7cy=#Spt;ikl56yr) z6V5;{7$;dbpL|Y?1?Cu_soze|+hRR4X8*CxFJVPWy96&h#-7M^5u$YCtc%=_-RD(( z`IUBl#vF{kb@H}>&+Dg#S=UToP*wD{yeJpB;%xFZC22``nT*8@B=GNT9sD=AD~U|( z>OVp8=8A6>s{6>SKDx-=U;QFJs}u+7O;H&cP=q@9o;5+pBN>M};#}iFZD#(yMhb$qdx*E>qRDck#bEfM||g z96v@uw2=Cdpg*Qj4hG}L?)W7iw(=9b-n>(}_9$VV+^X2<{kAv0u=utfzW_T!y)oec zKPvv`x6F%;xM8vmuZ(r~*s%Ovh_^?azwg>@hQLefu2TyBARJw|?c{Qs?@3%w`jqDcd@Sco{XPn|qv*CjP_b^~%^~;c53#@zra<5JzK`MbJuWgZOojq%rGX4cuPb_|;?Ai@6QNY-d|LUl16CFl zl?BqeB5ojVit4Hy({FYl$~1K2JZyAB5|0S zuXeB9hu08$uXQ+M?M8t*VcQE|{etk&4H$dX8|{Vj^}<`G_=&9NJS{cb<#_RFlVE|7 zt8WI5vmppR8MJC3-kv^q*+}T9W9>+We3v?i)3acHiE+Q?O}VVLN&)&Ak}vfWdp#16 z^y{zp7jP}q)x zg@^RJC>T8W%|V9)1-2Xpg$grNtp99O3f|nxH8;kVuc*iH1d4?I99$k3EmK>{}%IB#JK5GXEV>Q_Y`xxRa^=W zvgxL07Et~Srr2fUOjbm?iRv%$WK5@A!7GQe*7NU7PkQw;G@qZmZGO&kMyS;!}}Hu|8t0zQ5>|NGPSsVy|7Q>S0s z&3<{b)WcyMN^6d)(EM_fXLquzwMX*n@@SaGiFGa6VzYzFEGNu0ea{_c`1T|qg0{5) z0c&VZxgm|z5*^AlTP^PMCXzgxT=cbwy{FovlbmcDE?vO!I(^?LhyAloAXzrXFKwgp za{vR%6$Ua_@g|!Ib;>sxJhNG3WX-g~3dOjYWy&wvb>(tHCXq=*t&PjvTvS(kp4M;D ziQZ+kSgqa;j~=ol{Ka_n6~ac-I3`rQAWBCktx`wR5kj_VW36*#G*$= zwzj5rk|d`#q03A{-$|EiOE0_M)Je+c%)AvDwl>pT>?b|x=FmXy3r^SdCfu}j3tDA7 ze@=8k2EHvz1q=f{sFU?oGg@X9ZjK#)7hTFDKeSeOV3^j=cGf&%ay|AqR#%<-hLC6i2M+|gSx}aVo zx4YM(wY|0QORTtbe_6h zhRG61u_Jvo)HEN12WCq%=nWd8z1!9W#&ISuDsm}V8omv4@*TPu$EuVdK6>qe>Mq~C zpxkas(o=4ZC#;2PaO*5jo%E_h96EpyTEDmV)>>=+WCGUjZ5VH{HN9k36 zG0~SU<#cPXgld0fPrd}u5wUfwPanMA)Xla6C( z0zLIiQsDmVE>|SXT(hBFweK~p0;%5rHDT}{u~3)t1N3e7BOMY=dq*t-rte+(LNjF# z$P4w#xkO6k1P*@5+Km##k@+#4JZvhwhOOP|0mkkcntSQz+r_q_d`w>Xawkp6K!HJi zHAD|?X}{mUZWx|pCaV>nD^D79w?$bYsS8E$rV(8}ceTh~dHxsUo#dT`LDLlaaj{7_ zo8^vLo8=E<>GrC-zd!t6Zi*OC9WRXdAHeE8VXU@&t^` z{%x!Kd6!7@w6ai&xp3vcP^;f5L1tZ0@e}v-Jyl?*l+stHe>E#vc;#()QaSiga(3dL z7)4cxawd6SuU+59>2mS$xAu^Es|Xfi-5on!FCVzT9|8hrXy z&^M?l9nDE4VH5HVkQkmD%m&4vVg{JJ28g_Fmt zHkL8Lh$wrbkxIOxU4BLgWoS`{OdhM9;WNsA1{d?zb(VVeCvI!R0c|;P7{J>7UOMT3 zwErzUkk`a5Tne_80r?o~i~L07(8=FIvED4L$nE-RhJ33-BFXCIyXT?U{u7v{@nf~N zTmch)3$h&>Kj>0h4WEhrYPvj^PPtvX%**a_@BieEkbT3d`WK@tc5_HioT_s*e)Otr z>f?sCvol>mjdoMbba}2>kR{W58WY;a#lTg?mdfsxC-0{H$ktt*1Dw{>*@QT0EcKI= z3nHXrF=f!R8EDPBY`)qu*oVpPqF=u8;6RAfb9Ve1;`q_wA1$s3P^sqdM_F# zv}7CN>i;Q}!>Sx2 zR=p8jJMOsU#W!`d-=1Us@!_e8BNZcUbAklHtpVL{je@+Y{;>WoI4o2{yREXIZc>w} z2%&_$>bH1OTN$?e6glMxVUds#ra90|*BivsQgyEKVyUOPeoE-Nb>lt9Phzb6g{P)}wwt)r~q7a!MQz>;=vD_6|bY>vw zlBu?EwjT%j-&I_0Pr54Q^2YF59X@;#D?uDyevSv#%{25WIPO~he;H|Z?Ow0i!&dXy zCj#=yUnQ;f49KTENxk_-uIl3Kt3&J#v;_0heN?^~3M+1O8(d*+$EZ8uc`S1-eePFB zUcGG?NSP7G$>U%u7VTKUGJDI~g#3}{%I4Z;@`nA|Fo(zOA`<$NEIu_GWvhlnw9lQx zL?+ck?!D)`s^Z2B79FB>lxQ`|wEj5$bj;0PP*5I*Yb#hk5LI;)Z_>5Hq|VT=chte8 z{yueC7_S!;(WIwX_+Gnunt{>Y0WZ1ai$3OK)63#{Qfav|(ixB^iOJ#KAG~-g?RjXl zj_#8g`N&{p-}Ulz8v&{_lapwDPMGTtZtyqi&uer^$M3|OqhwI!3sD4{tA@tHKZR8t zG+Oiv)nn=P#vCssRbUX_yr#Njj~2m-t@jq(XzjbCW4P~Nt>y!@IuTP^8O3>qVe4vo z4Nba>%jg;NX;n4)4CWByA&O}y*Qwn6>vaU{?9CEAUBK^le8@!{{{GWtvGlHoDKpB; z?{Sm9c0b)gDZLXHgN*`pQIJC$u}SMo?U&x4)Sbx^-?E0668t34*m7!Mx$NWK9X@^t zsJwScm&H8l>)ie>;Kfc5`CDoE;U^{e^wajoUYh;sU&Hv~%NORrKCUkn1AdhUXt@lx zKr^I1$x3XyYjlf(!dO2;0QPDR4GrXp(@@M@W0_?jR&V}J<3fX9&= z^xqzeduqx{9GLJJHRUOcdBuYK_Xb$hc}~fkWHfl$jKVZ}zuYFAAM;O*}Gn^M`fx|0Vm?uhyA+ggr+SOQclr^B8TH8fq&tA7U z+|nA85dB}|;*wDWXORO_LSB`ODfr- zTu)3c^?%G9nK^XCTzdaJa+`51j@9tYIdnA+tcmMdGSRu8iQSiH5fL24-nB96i48an zlYWA=kl=7Q$KyS)I%AA<8?h}@$(x%KUK~ziPE$6fjCLAY4e1yp8|7#?Xp*{qpK0pI z@9Z#qZ*HzMO84R}{oRRdsO~MdHlCWwrZE+ISB+^iSY=V--Sd+@3uz-XDSX=TWBIDX zh{jv|@c7S0j$1fjW8xF5%y+KGfTE>R7hn~fJ^^r>r+9hXVA7jjQS--^FRy-XUeRUV zagX^4BhNIEi@4w3z_|u!)pQ}5VIz9tjPXL z*J|YXr^S6-K0b$*pl3+=|?^t@h_0!5OwWmRYT7Sn-Cr^?SX>Ul%RQ%f+7SB`Fce z@`9B6I7$5N<=^HEYm#>O=+4%D5E#}0Af{R-hX=rGf@`W2j!_D~0Fl`%6l3b!Puz{4 zmmU}x9>o>B4FUlgnh*Y8TxQZV3$-xSi*&)+Bqd*e_~_b?kqEz8@hP$?p0f`M4HYbS z|CXs3*BBf_DXnPlNNtgtQs%{@32QxpFpBlY69XZDHufL-QwT%NxuR#p5vtlcvn8Rb+NG^W88T&K=zHW!mn``nl#JKSQDp|d z?0edKeaUe~gWG;t)b3Sf&IRPNK{{-?v9FutKz2!g{yL#Keppa#CqqxmU>|DU<)S!Wcxn ztdwRTkekuVuA8=Jb7j8Z1LZ;`uCkavI}s^+@9pi%GQ3qecgVaAvH4_sD^ zu0amF@eb4XiP<^>j1Wdg50#dd10$*|RCb{R+K|F&VGolL)wTM;e)?CwpZCTLEz?2S zc%&E-m>|WM=~r-or@u<)=aOd0J`$PXHtF~C`r`P{h8sQ3oSnx>r^ACj5|3DcxS|5L zC*V6VvU<87FDGEVMdurlORQwp{z8n@&f3A%iZ-obwcv$0I138b z;m17qxz%||Uf6uWn|{(raT*$l-$F+lA8%c#aa^BHt-?rRk)D$>d%QzkRPu zk{*)^oUZUsq#OA}CWk8S(nP)!D1l$Dr>Q?>TL!C>>f<_biumg8fiaD9M(u;u0`12Z zl&!J}B6wZr%T%n=7wx!2f^-|6*g1zYH<*7}jg0CsShuJSl5Gi;H-uT8&fWEj++oMy zR1lw%HZ7WIKyGE{GwWog8+eOvIS{@2e|~+b-s^o^m*H#ht-e=sF#n-Y{lWqnLmZjR zc&4t$m_U%uWZgt)wv~dkK@u+z#QX4S1z~u}f-nXWg97~=gZu?$Oa&>thhlm`rJUzc zYI5X2L2BTCoM`b)IuoL*7>Db$p48X|pKM z7}k#0!&V4`36~swZYZp$JAWLV&z-2Ipv~Z;3!bw4PB4eihKnN%I2M!%u6a)-^u2k3 z?7_5O8%}!k=y{5G+0Anc+k{VEJh|m?(gUNGMwNbTjVlt}o+pnT9Xsgzp%YcIHFtou zpoO61C;z|#Io{S1_H0TutJt}cgkjn;i^IHn(p&;<=d?0#?6ialqMx#?P5q&w-Giq7 zNK?H6aI+od_ktqFBFDT}U$k|&CQ7G4_E7LOBXys2-UDb|Vm@hP{GI;x5K{(}e zykoCKR$UC7z)@O(0~BwNNE!JLO~9dy`!9h1OAmq+K=EKw-I;HA52bYQ-2Wv9`S`#S zlEYo%OuD?SrG0^?%29|ZpBwp3Bz2(Ie!N~l6kT$8;qtE(ndwS6KzTg zdQnXvqbKJjNb+0rZR|Nw{~tmoB}Td7b|=-HZ_>_s?!2IWm0O|tP(*7qp9fE>V7a|f zECr9;;CbapP9oQKbN&R zUXc7p$#9Qyux)9aMzc*Ipeilj8jQ|@#}cn7-8)tRViJ8ATHa>eA769&d@r;&^!%|a zb`)B==6nbeu>3x(Tch{Zjx3zYXHrD3*AD-!wIt^-?OXCpW;7=zb-xam?lgEG zjuDy61mhsRAPph|ciKIG>O8Q_e8@ox2TCVmdY^?!wY4z+Px0yh>Rfq=6HIe7h6RS} z=>My@bP$SUsb@c`6)xG-wGWDpd|#q2obvri^+oX?y-i&z`=HOEBEZz=ejDFVgsCW? z3da?htQ)IkApI)D%b%L=1p+H1sRdC!6;V1A{J+YdifN?Oq1io{xf+ zG!OE9g1Ofr3$7bsp?>a2W@F@0XvtlX;Tde(&MLYJuL3{dRh!UVCeWf%Nrk4E%`=m@ z2Wa1N&n*3^FJB>t+Iwqc_ZJoe#EW<-71+v0=L1=ED65Rx9-P!=oILAnQi>2tlNyoL z1(Y0Xrd_8s8vqa(90)U1Ve!5h)~z}({_`QIis;w)^n8hFu~n^xMYvK)(o62ZKB-67-2QNRD#~FmC>jz{9|$f16wLj+azh`G1Vn|7X(l zed;EnDg7NE7_R*m_{BmjO^{-dut+*4yjzDFObWFA2!y`%E+i|Jlj{PImOLT=jPSUo zO@6Or0^7XD{6mRvUmj$ZY2a(%@5%KY7Je_aKZC|uP{W}?e=&%GHGC=mJPXcXO^rdf z>2IZ>piA1p!-rT^OC!~k!_8ckZ>#!+pHDcc_@~}bqg_te5mp@Fq7+a|BKpF{-F^^!2!}(TuGHq7%_{F;Tm1si9;_vUI4S{ikGiZ`vhcW-x#E< zqF}?POqA9g2MeeP7zl*t-j6L~rTe0C;U|14!(?cIPYKq3)!BzMII%s{!R6^q(vyRQ z)s}_4y>AXVBYSvisX%Fsg^2C%Bp(Zm_TRw~Y1!6lw8|wqT$9sajA>A^A!%ttQE~nQ zuF0;6^~{ILkLEv-Vrl>hET^8%J66(tPRxH(5X=e~P|QdP0zj4g}$y_Pt^Qo|$vw*c&hn-V=jxA(gBk$LN zZarVg(Zf$g+cx3Kl@}Mefmn-+N@OkdngTk@)<5}rQ-26@T*YS;JqDM2&e`*%U(kqn z968D+r+RmILk|lWzyEb^8gL&<1aWqPFom&rjJkgBuLEagZ-Y7m49On z*8Oz1>|%7A&a>5^h{szyb;olTb$$yay8r!yvc8FjT35J>+g;C_viQC|#y5Qlrvj%_ zMD|Y`$@s@7jwZfhdGlhsA+j*HnVOd`s755IX(BsIR-bm2Ell^AC-Y#ifjfa$BLW^| z2hswTnOg9Q2aZCkoN@)d444{Nqz?=7F*wi1IHxeQTJ3Vb5tSGoMTQ9r0;|yC|My6n z3u&nX5{!-G$?863MUJnY;U{d}_pM_!NE)?G^ZZ*h1tBiT=jhMh$M-uOLim~fQg zFj?65G*^f9{CGXWKDg;5Y25nr@pfA`D(99F<=LfDxVQ%;E#E{AGd7%A&z}kmTo!0JjcS1@>oGEpg`KBB7AEvH=kB_yAf-mr`tz=+#*;IJNPd<7rRE_#bZ@!K; zX{+b;b4lpdJK5?T4dX=*dpSRef3*7Pg~^KWC9sqH@^$m%#WA_PlaWajB`@?A#^|z= zjdND{O^Sc@nS;nROMJdnO3LdLnFg{O@mtDW?cG3vqry-T{EY73;*O<{GTd{8BDRf2jFH@&(1F zE2wYQ7w3y0_Bom!P`~1W)YKQ}9U}HQmoQBu)eFn-(pnYR=S-$_x8)29tEVfgMN7vo zMJ`BP8D3gPXU_Qdd=&IGl>2CO1&UPX%|EI&9WW3NcIXOpX#aZECWQhR;%QD!wS;Vn znXf|lPU6Gx_q}lFrqA=!u|yT+ucy@4ik$EZWs1;TQ|sLH(K@g0-;uPZy!PAgu6I7P z1E`%T(g)`|>#~OytL@?S2^NEoC)_!S%(r_Em;H^MgB=o($LMFHT@w1Iqs8`D^DXu+ z3`t*f4?l4=ZY-LPR-N%54kLj^zkYMUn${PBb~kRr!oA(Z$!Xq3Q&%h-yWHoGXgm|2 z8}x_WQ}4A=Ouqj)fyl0bhrefven&h}$2|7dfAXTlok^!%m-_dwVzM#Erog^~`cU`?HU-6I}(3V24Iq?FmP~@dh%#mviH4M2m}lJ#;Mm7Fly?a6t;Sf#?_g z3Mw7eQvM1L=v&TB|7bD|K4W;n$Mk;GKEJOiLZ~j_KtF#BXswUH+0o07s9L43rRZ*M z4{s;nW1P&nRV=b%pU)2W-@$k?Bt5VPtezG!z*cD+*qwqRv@E*uAp^`+m2-8-h5D1C z?ZB><)OFj#z}1zASxsMWCmvzZ+u0N)tE!9l(e!r(8ChyG@{fSRtPALn}?*0xz;Le+=jPXus@s~A4C zUUjYDxy3!)a|Yi?XSF8hTZL~>qBWnVi*GDGgA_zJ`+k@&&BM!kP{(sPv|hJ?ypC%M zsD1BN-LT~#Dm+%5^aSw$#7 zy`(p9&za}xDC_hh)J0f%JWl#gP+oL=`e6X@sFRN?FYfHykf)6J8YTapeIq1d<*Ae? z(xFo#EUM*w2`zi~%p+O&GB13V&frQUqLD$lmz|;|j|HqnP2-tDERX*HZ+O~aas210b~ZsSbW60BJ!yIBD9BN0>ffZ$WNlTTkW*4tPy@i3-SH2s z4B1odwh(QlxrHfhH*9PlAmf1o;LN|}_KEZxz?;gjpPd7sC<9;;D)=BeLa%~JYy;-# zAJJ;?eco5pz3A5$ms1;)^c)zt$^oQ~_|pAi=@qhlJShZyP?`9~_6Q0ygb<0}3!z6* z`XxC==qOa`s+kg?-4%5Vchq@Q|AUG+Ws|l#N0z(f2)9E09dwhBsj;6YkL(8UzXlqI z+StKeqdnv=%(-@kQ{!0z_Wul25<~AFkFI&PoiUw|7ZBFDZu%9)yHdyuhcC= zJ^`s6v0PA}MC7-$WOXT#IwWYKd}sIgyZEu%gIaJ3c7G4E_NcUZn159i|L98u4Rxa@ z1e&#=cxc`)G1Mb66Wzp~0=(P-VynJ*=agvCt#i(s3D@xHo6Nhc_}}UuO%@O^%Jbl? znL;z^)TSA~f!u0d)!d?68XuS~D$!^X&A4`_W;z3TKY5-dGOyO$+!*ngK)E1mlokVf z#wF9TVmU-*aE^TUK^6Mp1})9HZ3rAn=H+x!c}@$$bhU9qs$r%ukJl-euF}n6G2;|K z?to}1dekgEsIFr6Q9%tp?i?lQZJTs|#KO0rSJgo!hG7kTKjJEj-^T7`v7r=vh&Emw zv6P0$wSb?}z$29-tX*Qu6S$hbbwmq>ph#5rmX~nqcC-~#03752fK?bHc#x&>q`sE! zKSJkw)3KL2-bz#dUZwz8Nsl>OOZ@T>z)t~~qPOQ5`>#W28=!Fz{MpM>_pYQ(z>DV6 z6R_6J?Jr#RsyEJh^hT1&tGwHzGwGYst-Zss%1-ReW47cOu{@ol!%t*#gKX_D03lEM z`2@Q*A-{L1ZqZI)8`@mfg2Mh)_nT=yU|+7aCQ7ZAO>EqTul*&N&i*4z`4tB1^-^{D z!^FV+z|#-VyQVur(kwCYeovb#z}-EeuoWbe2mDE{Xwybi$u0jb`FxGo345q@Vz*DZ z?z3%{I+Whh4;M>;&6}f2pt!JF6o`LxF9OK9JoI~J<1So#nUi;*X+7SyXr@G*K|Dsq zET?Iz*IrHEyS4^h7+!xA!5$)Ij6CaZCw(U|laY@aR`r+JxqbBnWJUc{-f*Pb38xrn zfDpX|v^A2V1BTl#4$1>}zrqTCFu@)VD@oRG@foxK#YkkE9T*bH!yAh&<~?t&FsqLEJ*%p17eZ(DQv0qgfW?bOJI!qc3$0WI zp#bwUE?|o~m$gnrBOl{S(#yrislsjr7Di4Iy942(2&&Ro`}Z&E+b8^_5{c6ZnPw;y z`U@|$8;C^TX!`5`Mx{FL2#EX0wTc-aitxzco^+&G>Cfm~ptpjLG~_QvP~hea&}kJFs0Tt1R~`IA!_e=C`2spqLT%WP!8TmaX!3@@s=JFvz!1d?AnEu{yA zoS5f*3~=Ostw?7p{ln^%L)wS#IrSO;ob0+H>{iUH>@pSQT6O@cjP@f#)-AdFGaeT{ zGgEMS?@ibc0Cm^G?D}fJKoAee?S6Hvcf;OfS)i-I8Tj1x zXJ9Au;pE%9OtiMuV=D+ii+_b1Qm3r1EJt>U2yhPU1cuKJf=N$w044ki-{}LjN4WEv zk7|wv5u z0A2;!x4eErcZKaAN9UvN$wfZ1wco{*&-sTr-u2ceZ~SvwX=AD(s*#ay&PB}`Km&x0MT`?31P^VsYUZPF;sTj}1Djmx3C;xFw_ zTD(^^4_obr>5*R!UTfSMey<6vxLY`0sM*?!89A_U@xw<^P;|7?>rSqpjK=u6@D~}6 zjK;V-7pp&_a2m+4bkv=SrgQiaZ8*Kh2J>;gUIzAXeHLfxZ+kWB60c44QBVOO^%1E& zY9m7xZO|WHmkw=19y-MN=U^X-@I$Bfh8W zg+S(w$xP)}OTf+c4yYHfoe(vw?9n|($>$cPIxG>DxKR#t*Xa{P`V%-9(yx?q`78is z(uP2E!scI$j$Zad8w0J0oBkP}z|HFIfOv6w6z6DnmLPp_Am%+Ci0UK!(MfDt4p-M7 z>-t-%Z_yqD=4r>~VZf|iI@vC7C-&1vM)ev#RbOBED$&!#1CxAuW}IT>$S#HGaJRVB zmUf`O#{;Sl3@br_mpbR|caKzmqk1+jZGa#Z>V?0~gyp!#A87zZMmv1W4xhQhi}JRp z(>#)siDJAcEnw#yRQZeXR6THE@uzcOW*}liB3?Uk>y|{_$5lnee#WtU%3wQhc>a(50iMV|Pkf}`WFPJgWG9<(R>OxswZjEPkR_u2}I z<+apG&1lpPlCRIe@P3KSMcDRdvg@zu$9${%A=)0M$bmcr8#QjF2sT}pi_ooCeUhSUe^#svu-lm zP#@A^eyi*f7lXDBotp}Yz3}?*iSPc6WrSe3PUm@5VBwG zJ%@<1NVWTA+g(`%EAscs21N&i7A3PT{B1w|?MY{Yt@VDvT43ow@k*#SU_tlnc)hm2 zk9dy1BfS+J!&hSUab96#z-5HBhB8Fp!dlPjX!;n$R&TTJ_@LWxvdAP$R;w;{f7xb_ z#VIE_Y>LE!9KZb~8SKbCY_=p7iJ)rr`NbOqpy3YXU#RKG! zSf=(SODJYmI2GFOYU!P|708(XTb9lL#KQT{&t-tN*Wfs>8tsfVz7S+(_ay0wY!AYI zrMvD{(3m%>%ydBR{zuA5P7B%|dfY3XCP()O-$kcDB z!{4K^|FyLDRnKT#m=18+uw}2$GIXe&b;GbWiaqr__FzxPuv#wk4M&Fx?N3yJ^VrUtWD_~<|uHvbZurTf!b){+g~$Bf~QG#b)YsYVTpd@Qp9IaHgw}LH&UjikbN4Y9BJLu0GTLGpnyu+0|L7zYWh;HEW zbh@Emg#apt2bZ5t6z;2#_p}yo>f7MAynV4Z<+CDuo@I~y8r4V`7J?R=98?-C5? z2V?}b2(i}qgWY3v0>1_bA<^?`$jcnBS%JNp{+%Z$PJ`OF(blJ)-_#r_^<=1>LE?({ zu#Srdv2Wtf%-7}U6e}dRe z+i$po(hlE|vIrQ`SLY4}P|Rf4`y;K#E6|cGZPZAQFY`7_K;LY9wfP2Zj0&&yq|E*_FL(9iyNEX_1N4~;+A**?CR=)x5q|@q&?EKm`H5B5M@dlvO5M|q_Y=sk z1(*0MDckZjzy7Q+E)DdH(Itzt8i4^Z$MXonX5AlkK&VoUIEQq#{~=zr?X;lX`yq%7 z49TBpQ7F8I+B7?YPCsRA*ez@(e9%qycpfqS|%YOJqhOWGyaA;@#{= z(jD7{jl~HLM1sL4^lEax?F;az`ClVtdpw(30!d|9y;he%85UJuqdiz!by0kBqDOz3r<-=9Fy!lQ_5q=cH0TmN7VW-!((+Y|(mI zGMY?9SDZfJ;ANrGB#$wYzL;eG8^ zw>o}-cUb|Hc4zp<1ZLQ%&~nEu(2&r`Pp3aF);h8apo>5hM?X5vu$TV^83jB?rV7(H zrZ1*5>l5pTBmx9ofE-GD{FSO#BJCUtLf>09$yC_N8S|I>1clB z4UZ#1d1{`tf3^7~7|l}2UKoFPw@zuZ_K z(*5wIK9+gmm8f|K`?op%rJc~tH*~6nWX;3~?O&-zKSFvqP}s+eQjV72uc22x7kF_w z=?3|bzlzSSZNJA~xE;48qB9@DD>KyKQt|X*YjZ`jc&(tHMXj~L05|VHsLyLL_BZ=y z#*l||`x0e~1IFp6s~}TVN@$Dzw)@~tB`hG{uxkZ3aEq7zx$L2C)nANp1K}%mwNz

278ut!&CoRnx=L1WQ6E3>{baOzc*_yz7XCx*eEP%F@VS zj^?1!f0?MSLx^$t5rCeFHqXq)C%RCxhI4KU+JJE=Qu8405$e&^x@edTAL^_J5Jq_O z^q|STy@zI3c$lZ_tCD`C(W|m2EdtmNaA^Cdq1BMSl7CCFxr5FhGA*^SLw_;!YTtVj z0PYGWs>mU&r^-4fRTw`o$^1%Tc<{~R(rdQ#$?2j!OB1(!-4Zg#dq<&*bA$S_L+?QJ zGs$(~tJpvre|pvF#kyLc(=Co*=}4UU@K7oT_2#4!{iv*JCdiya)~S71wB1$ajC@Bb?<%m3f+ zneOyJo`Zn~Sv1x=AQUi z>u8~WGE+%y25x#-W@a&5WI~p*`ugeVZ_U)t-*5?k2rBCHZ46V`@=}bdq3Z*bC$btV zc~dIK9Z-jUbGHIea`Xd00w8LGKkArO!n6NtTZn(s4|1CpQ&gQ9@77 z;uS!S>QkPJpH*zJu@Pekr^lv7AKz8U2nBW>+-1^t-tZruofLIlHDQ@p?4~DQeW9aq z6o)ks{H}f)&a~Xv*(Z;%us~t0pUcw8TApl#XHom>cBQI&RGr7}F?j80b}2ZY_wtzi zAcDUu&v9$-nsmN}3f_hg2bND}US(wfYbSePd0M|XI$DWhYpV^sl}4SdnT>2M?sP(_ zgccTFZ?_+1Ps8}xVx@?Jl8k1j(pt+d!upp*CS_<)^yVi9HKOqab~Cybi|w~0IhHt$ zeHa%^?Sg0lWZ~611^VgBPKnDe)UxDWbo*yLH~KxySK%`^q1|fr^yj0lR*edk%6Hjq zQVO>ge*7q6WP8^vA=yrENp|b3LbFXd{Px3=R}n37#@R5TIK`FoexCIPqvX9tWl*?f8IU}d`&b>Qp8Olh>C=G&`}HHPuf z)dC*YErbGc#fNf8&94`-BnNHOlkS?>KPl+wT0}fwmb;iXcW!_F76(7VN_ZspTQT5p z;}wZHVjH$ap`Cxf6|jFdVmtC!KNH$Ij1wqsEYf!6H18o@-z|$&mklu|o<5K9Rk3(x zjH=gYj66ie3*UzLx-yAb+6)T(^m`v9|4n(lE#_n=Rw(dm8^KJA{yKhb)wo-fF+X1g z4NCiw29AplhB!-*#OzKOBL0>OWq8Spa&$a_u4Wxot;Uh=f|5%Y`8d&FC|Nnz;4|G#+RSW%CMt(QN||}28mrzA}1b1i`ja_!}3|eVm_6+pZXD0 zb!j9~2^bxwPZWuq%qOINCPPK}6PjAl=QB%=j(=EkBnQnv_fEfOE}CmEmhXt^8phH3 z>!b6~%TK7S4T{F<85tI@YOouEc42E0?&TL+6Gy*n9luo7xlDw~)^5&yT6CFvSKsy+ z{R(w)D~bx~y61F&VRfc2UV&Q53e38A86Y)>jMNMk;R|1|quur_3ZcX@40aY|Qe^pF z_1&T|#dZ>KS-YAhJL@llbjrU6$&6fxwYZHI_V*NwIn|Efj)5l9KFw)rsKLSg^~!@0 z$-6|JdsGCEQN4d#_rK{hqxE zD1*>fK<@E2i09jF?)YerDbm(q(xQEzhT}N~q+>jOP~U|(!f72;rR?@0$Uz9E2HenS*G#X{4stYNI^6*?~Uc_9K<0 zJsL&{3mRCcGDN6e zxAJFr>l0iD5-BIm0Zqqb5blnE$P(0@#ICdw{hmaPM7!V=ZBe+>5L4_d_>4%HOAj(jqNcpT`2o6W6j zP}g_@*RTrx&BZ@zsH;p-*g>jWt$lNQ3t&;>tL2C~zE(rQSD>Q^Pr@NT@@-eWZ8Aw1G;^vY`e)Ry4mYL z;q6eXCrr2KZJx>5rLp2038l{IdNswOY^~6}Vh?wpqjx`Jk~}$nhA@KTazQfb)N{y$ zDgEgv)QUG3F)<@PIA1qZakEpN=ErokaRx8nOQbUK!w(BHa5!(%YtYxQh<0su z=}vum&eNEnOA-!+-UG??N@?yOrYsTBTFS1#`9dPqn9a%*S{TkU5~Ti=ctK*s((B00 zzj&CRu*2xsiu>e$pp3r)cXTFsa-V7W;P&5yU$|o7H2MG*Vev8KW=Y)b)V}kHB}L*Q*N$3!IqB{vZbUBfc~s!K6Rv`6 z>{#)FxdEgMFPX-x1>89Ahf?H%B;}!y zfN_)Y%vhV3N_DCFiz)Qi%SrHiE!}T|chM45&^m@`3GaK6T@VF7&H%2eM>_dM)2sd~ zhK53QH4hqfoXb$;uj)!#S~9fin$!;76A&xP$t7Ag4(y}X{#1D9(KEQW;}gZ{E&z;> ztG^)U)QI=mFEa?8`4^fw12n$44FzGTtY=g9BFg@ni{A;(%CDkjSKBU_YlvFU3{WsV zf7~KvZI7*6GmRLD^ZoZv}D2GbhXJZxnCvK)UtT|L#}YquhQg=g}~&9}d}ERAho z$IV5-W{pZ%tNZYyFt?2;;x6R=*x%2&Dx*d;;WK5LS>{~tfNz|w2`8yp^G?||5A!4z(7$* z>^ie>(fd34y~;q60h`IqP0bmN8fzv!zMv39U-%ehBMN znIc+DpZ0Y2;ysc0_Lx+4WWt{7g>zym-}XsMCHo5Ra=rQ%AQ`wtf&}|55KDI1S)9YZ zvi#X$S|M>5;_BGwLY5}vT;SkEZ|*G1qsO??&3}mXayoz|3lWF&@#QF^<8%Zxe{*q8 zA;pLR8Q_Vko1BMDe@|9H%-as4r}_4hVG`y6s`@s=5w(!?A+~UKg1!AVjsV_%1Qv$3 z2o*$wWI(>8$h~XV=(37Hbr5Nb{KT}b{c*uq%#4d!3u|=ugHid~G7)lDNQpnE0h!wb z)bp$>_vdRebZT*R-qYm3$^)9R^;@qC2Bz+Ii0gZbyYI zc@S_u;0XdCjwT4#V|g(0=3$oB!?iexRpC$B4W6k#G_H(SDJ1u%e3C|IoYA!0=v3BO z153cACV}?6{TzwcJ>5lzs2d@7DaI^l`G(c5^CXEXx&Ha{ySpo8cAls$4o>D)Qm(&2 zc?4;R4d?46ov47`V=BPg^LJEjjw4NCA7{>N)MWiiRh3WDuS>d;(lPays;n+u z#=nFmVoL5Kv=xjqTRt9Kmi_Q$e{y|xSApDPW;ZG?%mV&vBbML*$QKz~%}{Fxv_&&w zgM)eT!{K+kM5ZfjrEjeNAT_F&zx`%(LiiyiIT@Sf0rBzUcblB*s5CthP-`#BRmS%R z*P%McASY#w1+T4pkj+5YjJK_-h0vRU#{FjTY4lziFj2%C4Mg()m0OkC zw<`n?G@4TM6|@Jnh0N0Y?_ zqt+y2vbT)1t>n3H)WjuS<1zZYkhA8BtMggk)uR|v`5scuqw&QV7^SzwmC#Il)Wzv` z@~c0~dbuAi-#q-+QlvZCT;!IY1}ea<7zJtg@gyy(K7)eU+uWPpx27kvv)~F)I8YXo z2)nWA^3$;+{ABqjf7ia9Ap+ek1`}hJ_3@GLpS^@{N1SAynTLZYFPR`Te3w-)defAyf0xo>%)$vOuW(o7LuO>>uw)nPbDHJZh@4h z*!Ric%GmXJt@SplNoQ+AIuTnk7m$-xs{wJS^?6?3m{KpFXL|9d@U!nCn5z;MkO@nA zAWi%`LIxTzTH9x8-CRq<#DiUihU`);!aiuJ@&0X~BFJoM&5)K2SYEv_J(ZRj0?9z` zn5h(to$UY3WeDW2n9K8MA$T|9H0Kn{mloPCIKjkY&s5gX-hEtiqhgZJ=2c)vGR}t; z{Uv@l!vnL>G2bP1V;51qv|c_3=4ZK#np^~|2m&$5K*K=S!xkeM*l1efce=hShUm8V zcz#o;g!kLIEacGLyQb4tnh8B!FTfhcSH|ljD44N(i!8wT`(Y^m{?hE;`sSQgEUxxm zM?ri;GCk8Idj9Uvm>s4z!=fRsMaXhHy^z0NF}Y$o1P>E17vA&f$5eyiWUX)`WI)Lt zFBC?@(L)%-r%YE@mN&z?H0-1vvQ6#1F*-@9={Hw?|3=H%B)V!OZtP7uT|g97mI>Jk z*z#B&Lu}h^TlNDJ2EY{h0&O${E} zz4Dt&6f46>YnA-CF|^xk5^(I>f?3?XCwqrq8-M?jouDk{aPpMv#iU%NPZ-M%+*iBx z`}0~87#Es&oQYys>@Aum?rF*7a`^4+2UXn};m`F=+&vStwO>Hr3mrOX8!!#>-;8R& zbwVaKJK%?Z20gCWh53)jV{+_6Z;C|$^bJFWYVK%b(J_?0IhbUb8i4@kjO<5)rn_vV zW`O<<>6ulytdn5NQ62O|#t<14FDvy9al-ulj144Bb{FH46nB#^M(W*LL7s#y5JP!$ z-LDMZm4Aw+7>0Hn+9imuh1yqSHat)55q*!B&4g*Mt~1}eU*&zoR(`Ar4k}vR z%?AXGdWRiK_#Y}_h#pITB|u-k0u@JTrissM^cNQQka4GcUrYv~avg3$6f<-%&YH!C zc-bv2C+&K#itU7m-bKlud7eKr zY7e@evPHGiSp|t>xfsFoy0x>(K2G(+zzlrLL6!f3dtp(Jbg)`dP;^gWqzF0mGgn?= zihHI*<_1~3Nwz>W*m5I?q;(0y?6L|xhb97L#KQ%>jJ6Kk5kvs;jk{Dc)hC%1LM60d zMMe~L57J4m*EhdteR>rmE2Meov$OQ6GtzRmBX{g#jr7Qf3B;^fxOcAPQ0t7~pi(BZ z_jt`yMJuH@VZ49G{0VazE4(K_t0v3l(5A?5FtZOm97nF?DZ7{@tj=3xU;T38(Mb1^ z=TF4yD3Hu_rKj21xikHDN(x~Jt%mtnEh8_-ySS3Q@%?$uF~}^FB1iX2!-v-d%9hS2 zKig|}h*_(%JQ}-f77<&Wz&un9)gcoNTR1X9S2Pqx)N4?>lZJ-Yz8$Ak3h#U_T;@Vu zm?=z5f8RXf*?g*sCHzhw^>Sl_R33_m1A4ky|EKjzus)(qpONFv2L2F`u)pM8j@ZBz z!Sw=xm9N%nMAOSao}BIEd9sxL&s~=cvj%dcU2fpP=mtJi0p=$w92sX{>MMyM3=4ITRDn}|j z?*pQf{BBb{>ZvZ{U52+>?<^m}>Yk8))Ef)ZfuYQU78jgGnYL@29NcN2?&gB(l?WCg z7p?^F!z$2XDaF+4dEWdF#dtD_eTJLA}p!PJw>Z&ZA)%_QpoIMnarX$--0As92=2^DitVSyjIneyG`A1 zE?thRq<*kf*V^;6om-vwhR*d8Adn)*jEn^-eDik41bLP-Q%IO-)^W%a#S!n@6z1*f zXfNs9=)*#`hjK46uRD1-Io&BMbnZMrt+OHs)L(-?%w+w`aGtGuNssi2a zF^v$9b+1Pqffe>{?LnvXd?c36^g;FKAPnWuxDfP|3@ZYH_PYoLnA{X2r_YQhT`KjN z_LzA3*Cg|WbnV7V=dZUXw|qx8`Ia@8T_^{d*Mj>+Y=`rt#^?Ej0~UJkD>@(N2?jtT zh${%IZjC1SWftP|wVKA(V{(*`3vS)d$~AXxgFZiOn;!dFfJ2)RSRDw*RXZAZmwRUO?U~S zV^q`V3oWDX3R@Dh3VQH!M=rsgw`p+qjQj{oAMNsYaeTcMWx);{^7yrJGBjWos9R~# zQ`p&(^Vfi~w_}?Du5B^H3U$R!&dmmAH#0FM{kCJF*_K~bDKAT@;44;~1*&B@0wh$9 z;Md_00q0J$>Ng!Tn@%Z8^ + #For offload - sh prp_setup.sh prp_hw + + if [ "$#" != "4" ] + then + echo "$0 " + exit + fi + + if [ "$1" != "prp_sw" ] && [ "$1" != "prp_hw" ] + then + echo "$0 " + exit + fi + + if=prp0 + + ifa=$2 + ifb=$3 + + ip=$4 + mac=$(ifconfig "$ifa" | grep ether | cut -d " " -f 10) + + echo "ip=$ip" + echo "if=$if" + echo "mac=$mac" + echo "slave-a=$ifa" + echo "slave-b=$ifb" + + ip link set $if down + ip link delete $if 2> /dev/null + + if [ "$1" = "prp_hw" ] + then + echo "Available offload features for $ifa: " + ethtool -k "$ifa" | grep hsr + ethtool -K "$ifa" hsr-fwd-offload on + ethtool -K "$ifa" hsr-dup-offload on + ethtool -K "$ifa" hsr-tag-ins-offload on + ethtool -K "$ifa" hsr-tag-rm-offload on + echo "Enabled offload features for $ifa: " + ethtool -k "$ifa" | grep hsr + + echo "Available offload features for $ifb: " + ethtool -k "$ifb" | grep hsr + ethtool -K "$ifb" hsr-fwd-offload on + ethtool -K "$ifb" hsr-dup-offload on + ethtool -K "$ifb" hsr-tag-ins-offload on + ethtool -K "$ifb" hsr-tag-rm-offload on + echo "Enabled offload features for $ifb: " + ethtool -k "$ifb" | grep hsr + fi + + ip link set dev "$ifa" address "$mac" + ip link set dev "$ifb" address "$mac" + + ip link add name $if type hsr slave1 "$ifa" slave2 "$ifb" supervision 45 proto 1 + + sleep 3 + + ip addr add "$ip"/24 dev $if + ip link set $if up + +To create PRP interface with IP address 192.168.1.10 using eth1 and eth2, +run the script by passing the arguments as below + +.. code-block:: console + + sh prp_setup.sh prp_hw eth1 eth2 192.168.1.10 + +.. rubric:: *Multicast Filtering* + +All multi-cast addresses not registered will be filtered out. + +.. rubric:: Multicast Add/Delete + +Multicast MAC address can be added/deleted using ip maddr commands or Linux socket ioctl SIOCADDMULTI/SIOCDELMULTI. + +.. rubric:: Show multicast address + +Show current list of multicast address for the PRP interface + +.. code-block:: console + + ip maddr show dev + +Example: + +.. code-block:: console + + # ip maddr show dev prp0 + 7: prp0 + link 33:33:00:00:00:01 users 3 + link 01:80:c2:00:00:0e users 3 static + link 01:80:c2:00:00:03 users 3 static + link 01:80:c2:00:00:00 users 3 static + link 01:00:5e:00:00:01 users 3 + link 33:33:ff:1e:a0:a8 users 3 + link 01:00:5e:00:00:fb users 3 + link 33:33:00:00:00:fb users 3 + inet 224.0.0.251 + inet 224.0.0.1 + inet6 ff02::fb + inet6 ff02::1:ff1e:a0a8 + inet6 ff02::1 + inet6 ff01::1 + +.. rubric:: Add multicast address + +Add a multicast address + +.. code-block:: console + + ip maddr add dev + +Example: To add a multicast address and display the list in PRP and slave ports + +.. code-block:: console + + # ip maddr add 01:80:c4:00:00:0e dev prp0 + # ip maddr show dev prp0 + 7: prp0 + link 33:33:00:00:00:01 users 3 + link 01:80:c2:00:00:0e users 3 static + link 01:80:c2:00:00:03 users 3 static + link 01:80:c2:00:00:00 users 3 static + link 01:00:5e:00:00:01 users 3 + link 33:33:ff:1e:a0:a8 users 3 + link 01:00:5e:00:00:fb users 3 + link 33:33:00:00:00:fb users 3 + link 01:80:c4:00:00:0e users 3 static + inet 224.0.0.251 + inet 224.0.0.1 + inet6 ff02::fb + inet6 ff02::1:ff1e:a0a8 + inet6 ff02::1 + inet6 ff01::1 + + # ip maddr show dev eth1 + 5: eth1 + link 33:33:00:00:00:01 users 3 + link 01:00:5e:00:00:01 users 3 + link 01:80:c2:00:00:0e users 4 static + link 01:80:c2:00:00:03 users 4 static + link 01:80:c2:00:00:00 users 4 static + link 33:33:ff:1e:a0:a8 users 3 + link 33:33:00:00:00:fb users 3 + link 01:00:5e:00:00:fb users 2 + link 01:80:c4:00:00:0e users 2 + inet 224.0.0.1 + inet6 ff02::fb + inet6 ff02::1:ff1e:a0a8 + inet6 ff02::1 users 2 + inet6 ff01::1 + + # ip maddr show dev eth2 + 6: eth2 + link 33:33:00:00:00:01 users 3 + link 01:00:5e:00:00:01 users 3 + link 01:80:c2:00:00:0e users 4 static + link 01:80:c2:00:00:03 users 4 static + link 01:80:c2:00:00:00 users 4 static + link 33:33:ff:1e:a0:a7 users 2 + link 33:33:00:00:00:fb users 3 + link 33:33:ff:1e:a0:a8 users 2 + link 01:00:5e:00:00:fb users 2 + link 01:80:c4:00:00:0e users 2 + inet 224.0.0.1 + inet6 ff02::fb + inet6 ff02::1:ff1e:a0a7 + inet6 ff02::1 users 2 + inet6 ff01::1 + +.. rubric:: Delete multicast address + +Delete a multicast address + +.. code-block:: console + + ip maddr del dev + +Example: To delete an added multicast address and dislay the list of PRP and +slave intefaces. + +.. code-block:: console + + # ip maddr del 01:80:c4:00:00:0e dev prp0 + # ip maddr show dev prp0 + 7: prp0 + link 33:33:00:00:00:01 users 3 + link 01:80:c2:00:00:0e users 3 static + link 01:80:c2:00:00:03 users 3 static + link 01:80:c2:00:00:00 users 3 static + link 01:00:5e:00:00:01 users 3 + link 33:33:ff:1e:a0:a8 users 3 + link 01:00:5e:00:00:fb users 3 + link 33:33:00:00:00:fb users 3 + inet 224.0.0.251 + inet 224.0.0.1 + inet6 ff02::fb + inet6 ff02::1:ff1e:a0a8 + inet6 ff02::1 + inet6 ff01::1 + + # ip maddr show dev eth1 + 5: eth1 + link 33:33:00:00:00:01 users 3 + link 01:00:5e:00:00:01 users 3 + link 01:80:c2:00:00:0e users 4 static + link 01:80:c2:00:00:03 users 4 static + link 01:80:c2:00:00:00 users 4 static + link 33:33:ff:1e:a0:a8 users 3 + link 33:33:00:00:00:fb users 3 + link 01:00:5e:00:00:fb users 2 + inet 224.0.0.1 + inet6 ff02::fb + inet6 ff02::1:ff1e:a0a8 + inet6 ff02::1 users 2 + inet6 ff01::1 + + # ip maddr show dev eth2 + 6: eth2 + link 33:33:00:00:00:01 users 3 + link 01:00:5e:00:00:01 users 3 + link 01:80:c2:00:00:0e users 4 static + link 01:80:c2:00:00:03 users 4 static + link 01:80:c2:00:00:00 users 4 static + link 33:33:ff:1e:a0:a7 users 2 + link 33:33:00:00:00:fb users 3 + link 33:33:ff:1e:a0:a8 users 2 + link 01:00:5e:00:00:fb users 2 + inet 224.0.0.1 + inet6 ff02::fb + inet6 ff02::1:ff1e:a0a7 + inet6 ff02::1 users 2 + inet6 ff01::1 + +.. rubric:: *Multicast Filtering for VLAN Interfaces* + +Multicast filtering for VLAN interfaces is also supported. + +Show current list of multicast address for the PRP VLAN interface + +.. code-block:: console + + ip maddr show dev + +Example: + +.. code-block:: console + + # ip maddr show dev prp0.5 + +Add multicast address for the PRP VLAN interface + +.. code-block:: console + + ip maddr add dev + +Example: + +.. code-block:: console + + # ip maddr add 01:80:c4:00:00:0e dev prp0.5 + +Delete multicast address for the PRP VLAN interface + +.. code-block:: console + + ip maddr del dev + +Example: + +.. code-block:: console + + # ip maddr del 01:80:c4:00:00:0e dev prp0.5 + +.. rubric:: Performance + +This section describes the throughput and CPU usage metrics in the offload case + +.. rubric:: Setup + +A sample test setup is as shown below + +.. Image:: /images/AM64_PRP_Setup.jpg + :width: 400 + +.. rubric:: Test Procedure + +#. Connect the LAN cables between the DANP DUTs as shown in the setup image + +#. Execute the commands to setup and create PRP interface + + .. code-block:: console + + sh prp_setup.sh prp_hw + +#. Confirm ping across all Nodes + + #. Node A < - - > Node B + #. Node B < - - > Node C + #. Node C < - - > Node A + +#. Disconnect one of the cable for a node and retry + +#. Monitor the CPU usage on DUTs + + .. code-block:: console + + mpstat -P ALL 1 + +#. Run iperf3 server on Node C + + .. code-block:: console + + iperf3 -s + +#. Run iperf3 client on Node A for 60 secs + + .. code-block:: console + + iperf3 -c -t60 + +.. rubric:: Throughput at Node A + +.. list-table:: Throughput performance + :widths: 25 25 + + * - Sender + - Receiver + * - 610 Mbits/sec + - 605 Mbits/sec diff --git a/source/linux/Foundational_Components_Kernel_Drivers.rst b/source/linux/Foundational_Components_Kernel_Drivers.rst index 9a85ae17e..11bf6d51e 100644 --- a/source/linux/Foundational_Components_Kernel_Drivers.rst +++ b/source/linux/Foundational_Components_Kernel_Drivers.rst @@ -27,6 +27,7 @@ Kernel Drivers Foundational_Components/Kernel/Kernel_Drivers/Network/PRUSS Foundational_Components/Kernel/Kernel_Drivers/Network/HSR_PRP_Non_Offload Foundational_Components/Kernel/Kernel_Drivers/Network/HSR_Offload + Foundational_Components/Kernel/Kernel_Drivers/Network/PRP_Offload Foundational_Components/Kernel/Kernel_Drivers/Network/CPSW-Ethernet Foundational_Components/Kernel/Kernel_Drivers/Network/CPSW2g Foundational_Components/Kernel/Kernel_Drivers/Network/NETCONF-YANG From 0b78f93138433a14e9a6d0ea5e7c54f132701e65 Mon Sep 17 00:00:00 2001 From: Himanshu Mittal Date: Mon, 14 Jul 2025 11:33:51 +0530 Subject: [PATCH 2/2] feat(ICSSG): Update Release notes for AM64X - Issue Tracker Update containing details of ICSSG firmware related bugs resolved and bugs open. - Adds new PRP feature in What's New section Signed-off-by: Himanshu Mittal --- .../AM64X/linux/Release_Specific_Release_Notes.rst | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/source/devices/AM64X/linux/Release_Specific_Release_Notes.rst b/source/devices/AM64X/linux/Release_Specific_Release_Notes.rst index 5d71e08ef..7a6882a29 100644 --- a/source/devices/AM64X/linux/Release_Specific_Release_Notes.rst +++ b/source/devices/AM64X/linux/Release_Specific_Release_Notes.rst @@ -50,6 +50,9 @@ What's new - Important Bug Fixes on top of Processor SDK 10.01.10.04 Release - Review Issue Tracker Section for the new fixes. +- This release adds support for PRP Offload to the ICSSG prueth-driver. This allows to offload PRP functionality + to the ICSSG hardware, which helps in reducing load on the A53 cores. + **Key Release References:** - RT Kernel : Real-Time Linux Interrupt Latency numbers here - :ref:`RT Interrupt Latencies ` @@ -193,9 +196,15 @@ Issues Resolved "EXT_EP-12111","Linux SDK v10.0: TI-added support for W25N01JW SPI NAND breaks other existing Flash support" "EXT_EP-12051","AM64x: Linux hangs on repetitive probe/removal of gadget zero" "EXT_EP-12071","sdk-doc: missing SK-AM64B information in CDNS3 USB page" + "EXT_EP-12336","Last 1B of payload missing in forwarding scenario" "EXT_EP-12337","ICSSG: TAPRIO - Firmware can’t handle base-time which is not a multiple of cycle-time." "EXT_EP-12338","ICSSG: PA_STATS are not sequenced properly" "EXT_EP-12339","Switch/MAC/HSR firmware does not drop corrupted packets" + "EXT_EP-12715","Local injection (TX) - Transmission failure due ""TX Pkt not available""" + "EXT_EP-12716","PRU - Task Manager disable during firmware init" + "EXT_EP-12717","Packets reception failure: 10Mbps speed" + "EXT_EP-12718","Non-recoverable TX underflow with Bidirectional traffic in 100M MII mode" + "EXT_EP-12719","Throughput drop: Software buffer pool implementation @1G speed" Issues Open @@ -209,5 +218,4 @@ Issues Open "EXT_EP-12300","ICSSG: Ethernet: Promiscuous mode is always enabled in bridge mode" "EXT_EP-12075","U-boot gets stuck when DDR size changed to 512 MB" "EXT_EP-12060","AM64x: Lower core count on variant devices no supported" - "EXT_EP-12336","Last 1B of payload missing in forwarding scenario"