From 8487caad4bbeb66d8c70a9c5cec5261afe2c537f Mon Sep 17 00:00:00 2001 From: Yaochenger <75192526+Yaochenger@users.noreply.github.com> Date: Thu, 13 Apr 2023 17:26:43 +0800 Subject: [PATCH] =?UTF-8?q?[add][ch32v208w-r0]=E6=B7=BB=E5=8A=A0CH32V208?= =?UTF-8?q?=E4=B8=8A=E6=89=8B=E6=8C=87=E5=8D=97=20(#7225)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ch32v208w-r0/CH32V208W-R0上手指南.md | 147 ++++++++++++++++++ .../board/linker_scripts/link.lds | 2 +- .../risc-v/ch32v208w-r0/figures/10wifinfo.png | Bin 0 -> 47111 bytes .../risc-v/ch32v208w-r0/figures/11board.png | Bin 0 -> 573060 bytes .../risc-v/ch32v208w-r0/figures/12kdebug.png | Bin 0 -> 35270 bytes .../risc-v/ch32v208w-r0/figures/13newlib.png | Bin 0 -> 20278 bytes .../ch32v208w-r0/figures/14shellinfo.png | Bin 0 -> 14469 bytes .../risc-v/ch32v208w-r0/figures/15ping.png | Bin 0 -> 38026 bytes .../risc-v/ch32v208w-r0/figures/16rtduino.png | Bin 0 -> 13536 bytes bsp/wch/risc-v/ch32v208w-r0/figures/17led.png | Bin 0 -> 1741746 bytes .../risc-v/ch32v208w-r0/figures/1import.png | Bin 0 -> 118418 bytes .../ch32v208w-r0/figures/2workspace.png | Bin 0 -> 21193 bytes bsp/wch/risc-v/ch32v208w-r0/figures/3info.png | Bin 0 -> 27007 bytes .../risc-v/ch32v208w-r0/figures/4build.png | Bin 0 -> 13364 bytes .../risc-v/ch32v208w-r0/figures/5result.png | Bin 0 -> 15257 bytes bsp/wch/risc-v/ch32v208w-r0/figures/6pkgs.png | Bin 0 -> 29329 bytes .../risc-v/ch32v208w-r0/figures/7esp8266.png | Bin 0 -> 289808 bytes .../risc-v/ch32v208w-r0/figures/8setting.png | Bin 0 -> 34481 bytes bsp/wch/risc-v/ch32v208w-r0/figures/9AT.png | Bin 0 -> 66475 bytes 19 files changed, 148 insertions(+), 1 deletion(-) create mode 100644 bsp/wch/risc-v/ch32v208w-r0/CH32V208W-R0上手指南.md create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/10wifinfo.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/11board.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/12kdebug.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/13newlib.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/14shellinfo.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/15ping.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/16rtduino.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/17led.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/1import.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/2workspace.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/3info.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/4build.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/5result.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/6pkgs.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/7esp8266.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/8setting.png create mode 100644 bsp/wch/risc-v/ch32v208w-r0/figures/9AT.png diff --git a/bsp/wch/risc-v/ch32v208w-r0/CH32V208W-R0上手指南.md b/bsp/wch/risc-v/ch32v208w-r0/CH32V208W-R0上手指南.md new file mode 100644 index 0000000000..52f56fd04a --- /dev/null +++ b/bsp/wch/risc-v/ch32v208w-r0/CH32V208W-R0上手指南.md @@ -0,0 +1,147 @@ +# CH32V208W-R0上手指南 + +**中文** | [English]() + +CH32V208W-R0支持RT-Studio工程,本上手指南以RT-Studio环境的开发说明举例。 + +## 1 准备阶段 + +- 拉取rt-thread的github仓库到本地,[链接地址](https://github.com/RT-Thread/rt-thread)。 + +- 下载安装RT-Thread Studio,[链接地址](https://www.rt-thread.org/studio.html)。 +- 准备ESP8266模块。 + +## 2 BSP上手阶段 + +### 2.1 点击文件,选择导入选项。 + + + +### 2.2 选择导入RT-Thread Bsp 到工作空间中 + + + +
+ +### 2.3 按照示例填写工程信息 + + + +### 2.4 配置工程 + +导入工程后,在工程的根目录下存在参考文档readme,首先按照readme.md进行基础的配置 + +为了减小链接时添加的标准库带来的内存增大,我们可以选择使用相对占用内存较小的newlib,具体操作如下: + + + +### 2.5 编译工程 + +点击编译选项: + +![](./figures/4build.png) + +编译结果: + +![](./figures/5result.png) + +工程编译通过,至此,准备阶段完成。 + +## 3 使用RT-Studio配置BSP驱动 + +RT-Thread每个BSP已经默认适配了若干片上外设驱动与板载外设驱动,使用RT-Studio将相应的开关直接打开并依据使用环境配置相应参数即可使用。由于各个管脚存在复用功能,所以并不是所有的片上外设驱动与板载外设驱动都可以同时使用,使用时需要结合原理图来合理开启相应的外设驱动。 + +RT-Thread有许多软件软件包,使用RT-Studio将相应软件包的开关打开便可将软件包添加至工程使用。 + + + +## 4 联网实操:使用ESP8266模块联网 + +ESP8266是面向物联网应用的高性价比、高度集成的 Wi-Fi MCU,也可以将其作为一个单独的WIFI模块使用,其实物图如下。ESP8266模组通常支持[AT指令](https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/programming-manual/at/at)的操作方式,RT-Thread针对这些支持AT指令的模组提供了一个抽象层,本小结将使用AT组将与ESP8266通讯并连接WIFI。 + + + +### 4.1 配置板载UART外设 + +使用AT组件与ESP8266模组通讯采用串口通讯的方式,所以需要再使能一路串口,这里我们使用UART2,串口驱动默认已经支持,我们仅需要在使用时在RT-Studio中打开即可,具体操作方式如下: + +![](./figures/8setting.png) + +开启选项后,`ctrl + s`保存设置,串口2即被初始化。 + +### 4.2 使用RT-Studio配置AT组件 + +点击左侧的RT-Thread Settings选项,弹出右侧的配置菜单,在搜索栏中输入AT,选择`AT设备 `,使能AT设备: + + + +选择ESP8266,并配置相应参数,示例如下: + + + +### 4.3 ESP8266模组连接 + +将板子上的`PA2`管脚与模组的`RX`管脚连接,将`PA3`管脚与模组的`TX`管脚连接,并使用开发板引出的电源为模组供电。 + + + +### 4.4 使能内核调试功能。 + +为了更加直观的了解组件的初始化过程,我们可以使能内核调试功能来观察(不需要时可以关掉),操作方法如下: + +![](./figures/12kdebug.png) + +重新编译并烧录固件,shell输出如下: + +![](./figures/14shellinfo.png) + + + +### 4.5 wifi联网测试 + +我门在使用AT时已经配置了WIFI的ID与密码,在shell中输入`ping www.baidu.com`命令测试WIFI连接情况。 + +![](./figures/15ping.png) + +输出类似内容,ESP8266模组便联网成功! + +### 5 RTduino组件 + +[RTduino](https://github.com/Yaochenger/RTduino)是RT-Thread实时操作系统的Arduino生态兼容层,为[RT-Thread社区](https://github.com/RT-Thread/rt-thread)的子社区、Arduino开源项目的下游项目,旨在兼容Arduino社区生态来丰富RT-Thread社区软件包生态(如上千种分门别类的Arduino库,以及Arduino社区优秀的开源项目),并降低RT-Thread操作系统以及与RT-Thread适配的芯片的学习门槛。 + +#### 5.1 配置RTduino + +将板载设备驱动中的RTduino选项打开。 + +![](./figures/16rtduino.png) + +开启选项后,`ctrl + s`保存设置,RTduino软件包即可添加至工程。 + +#### 5.2 使用RTduino + +在`arduino_main.cpp`中会看到熟悉的`void setup(void)`与`void loop(void)`,至此我们便可以在此像使用arduino官方板一样使用该BSP,示例代码如下: + +```c++ +#include%$u`5%vSbde|iNzZ@y% zA-Mv8#r@y)0Z=R|oZ;cLz|~NbR{T2v(^`QN^Z%a@r8rhUc`~X2z}bT@dpv@%NtHUf zx=axf5fBK3!N$hMOO)ai}a8Sk4vgj29m@xWbgiZMJ92I<+n3xLX14BcqCMJsn zob&Wu;6Cs-y*SxA7AB@Ay$?4$X+GRXAHqnl1^&J}Tk9&f8~;X67ra~`jot`T8Xq1` zzPSlxGy>)i1PRb8PH{xPlqff-&3m=1R?arWfAzO WH%j0qfQmGe1mb1r0Fs6=0lz z5UB{Vw14ya-%X%W(sJM@O8fu7Jn)X;@&COd7#ZYtlju5M@9RFrCZv6jINfSDzLN%0 z%bVW~^0t$C`!2sEN^BUm@Z_3lDPDO>S$j5r%M8>EX47qg`bM(uuInk|os??i8m%rm zg`Xo;t*1t0{2Y}F)eu(6Z$wO3GHU%tMq+rBhwYr0pNuuj|wR%Da0vmwYZ>i=-exg zR|yAgCTt!|WolDC Z;|#i?KY4DoNo9$%w% z7k!-zXPTT0{8l3 ri8D3-{u zx1U6i(y+U#NARE3lrWT?$kF=g6pwS##@Z(^no!vJHuLuq<4NO7$Ls|{SrctucF#4^ z;!OW`pYnXvE-s2NvZ)${d*7(5I3C;F3kwTRwfnd>KE`M7DjUxh%y|03_QN4o^RM{? z>}-Cg8Q;Cbx%#i|8V_-efd~xA=C3$Z|D=;ryx`2fJYDjWd#dd<$<7?ht1b_x7p`|1 zqA&TqZtML{ZEFp~&$l--%r0EM_D$ECN$O}~a?5e`bM;ekY0g3a&efOJ7?n0VFZ^jz z(u;)V97p}sob;=%z@13btYMw1s8G60pEw~W+B#DQZsCtp2CBpu>XRQ+ASx(g)NG?L zk~SqS?$OTg# i06pEr>PMCW4Z(Zub_KVm6E>=o_*w1bQC)a8rE;J7#Udor}7`iE-qcn3qZ05 z8GM?F5fH{?y$MgbPK?RxELn{ 3vTj=9I>Vf53?SC%}|NSnF8t%1_5_4D| zhMm1Wl$d>pBC&o6hr$C7<_5n$NxypBbM6|6{t$Fm8GvA75b*h=RQgtQIIcdZ!(sQb zo5L! ng^7}Z7jm^osdy6;icd?YkuI=;!1sdwj`H^ zTjW>n>+8MR(WBL` PJyM_3pZR3WdVe(}IVJ*gUTAji z3=0~0&;DnzKHeV(yPSRBC7O@i(yWGDwBo3eQR{SxI@>VX!Q>7s_4>8|X_;(r_vfz} zQ-k^UrdAz84Svl}MJUKSi|%h7*kYC>G8ADt1FRU&=C7PkI4fxw+{*52HPd#!w|)G3 zcN5alb*hdSh>W#at~47yy!&F3?(&KyR?=79^!|zfu_@Z^-JCIc^4fKT7jDF%D!`Lg z-<`kO>_!k+dmIvah+18e!SnhgMx&{CO f-sgpIHpJAs*_XC+v-kSr`E3g5M^`E z5o 592HC4)t5%S z{`na>;|(zQC5kinqOsIPOD*Yo N?rs#E`}Wb?q`RegKspmURLPK`8+$=eZr}^M8leR5tG`LYsLI2oONmWxk46; zVA`Cqzp_boFUvp+4M+5A7L`s>JJrBF>?Lxs9 XdDyUQ=w2heK1%0zXSjBuMh?X;P Yk- 0DCNu zj?WTSZPGSH1;sOvaGB`78sHrh2zeH Q%n zc*fOZ&8U81QKKGa!aWv~i#nIS5n<1ep|tKHB81z|1s4RIfXLw>SPs Pqul z0Airdit|7Rn&kVVr;D#~JrswGJ1RUEtPzk{g{hl#ERO(W>GDm2GiA0G3UuY2bGN@@ zsCm#%NyZ}gWOIyRND@kak!1=gEX3vhqNV$j*Qkzm#kb>F2B;`|1M@;-zraa2YT+Xb zyj}un++I{^;%`f?ACZnU@DI97NPpdo22M;!1FLM-jdSN>vs3)rrQ2rZ{pT$z(xwT4 z8-e@!N*&6sLPI8LP!)+UzEV5}AJn`EfSC2VjAZ$;<2jytDR1yw^*8fUWAjBn1zFC& zU7c8<3q*NEBn=$bq(|kjANBWNi)!daCB~)_N_Mj4zXr9v-KoC0{Z5NOvIf`;9VBiZ zBE3hWt4Sv8{PZC?p3a$OT$mX=st)e;q@u%gz94NUc8L~LbgU=!xJN tPH|iT;Y4RuQ}ezftIr=nLG;79QPvzo`lIpC>Lv;47;%VpZY*PUlXt|pA^3T zyJ!p9S%rR!Xv`lz7#*@%kI+=}KU{Qq73lbJO!T FSMb1ymudq2bCEdhzxj7G?? zwrckdQ4y%hNA%qBRQ|@XSC21XnJE5xFeD2^Ld9v5cyIO_zMEen-HX}gyOWdShOxc* z;o5_}xhtm}uEj$>sAB3KmcyQq!8zd{_y&Eecl_R%>#SEUg3VGLb@8^zg6JV9^eF>N zCf3hjlb0_4sI>dw*5tx2FSUBo!)CN*vIFrH+k?pf+Q)|B_Ve8lES4%&sqRdE4`uPj zLS25o&LZ3$F)LSYDWmIUztKpy*i?5=qzPiJyXedMGr5#_;}(@x)Kpcx;hX-RjG|4r zmz{?*`J;ixD0Hh8wT$Pf&+L$!HSGr; zjk|dR(8cwd=;D{3cyDzUz8EuL8pLjPFq-ggQ7D)3GOLD(+T5&_RM|p)`Otn2j$sSy zl`EIDixKi)xH-|ak>XfisvunCNSU8crEoCm@YT+G>9FSVdi~_Xp%9%(SJY(e-n#!~ zvaH#C<&DoNe#5~{( rJQY)S(I9guTGujUPI6Me%zA`mlDp5)=KO# zFB!8ACoLoj!NY}E2S&=uo--fDj(aG6R87F)O_#aEpQ=z6NBpdRf*735OYSl|*c@g8 zX4Zw6VIswd7i?-I=(?@W?czYMPBojVKtNJ#)5zo+d|FDt#0Q>O;yl@zk+D9@Ww4r( zbMfjgyJt7cyGc-&&r>Gz`% d($+OMvqb5Q z9mP6MV><5e!A!g|uVV2eQeP+Ydu`#_-#HzK=tYt#O}p}JF&3l_T1!19#5Htbt8%gY zF=ewj2znd&Qp{V+zv;eV0S!pH9;YDpbls?_fJ4VEm*@?%V?)U43I1ktvwBDRG``02 zfoz%09QqG0^dVlp)nAazE%9!th+&B1E9Wiy&q!CYHpT%GTF^;=!dE$ZRmUIKO^~x0 zDv0-Sn5V}C?ohvyT9p9Awf_b2?AG4NkAd*#m;FY=Upy34XuR-3=Y?vzZd&*0{VL_n zTGF-)IMS!3NXbl-!){{#pvrgS8xD$4V7bo@s~crHDFLBkQB5vKX`reUl4TO`OGnuu zlaxH;L$r=BnO=23;~*19>rMCN{)!|nWyOk~E<&CmaxyybB!W>bJ2tQ+VoUzaorp&x zO^ShxH0Y>{sLDn-U-iwxMT*ed*8ZhT7M%Wmu3)v4>m>@h;li-V5 u^>KGi{MM_52W(+JUVDP%d6Y?C;lBoZDz*@TfxB0(<5iyxbo5#RwM%dz` z|A=3BHKv`rHAFHl|C^-szsL@M8P5OyZhY>0WDaP2d=;Ac5+@f6uBxwIWg3SAXJps3 zuqf;}>cc;Ay}xh;w4Sv;F*(AX3besj7Oy(}o3eHC!m$Ze933kGonl}dV167#R?4p% ztfQZrJX;yd5!R8oyRvF2KImO(aa)zi6!odemIW%BDN1T;?~w=XngFe1F$+A7$lfC= zY-?+qsxsgej0A#(T%3}+ib~4+_oRqH!7i}b?XJPN6ba9fZkOF8ZC7d{prU-p6A#GB z|1IHvR{r}P_CYQ5w(9I)$++vRgf~-6M(K?B2Vcc*dZ^9$gy`YRgG|q@iD3Zh#TCf+ ziJbHRgWg2K@4Lpb1vN#ycA0$OK`n3KT}$sRj^ -1k8VSup0D>TX?c= zAsu0J9*Rwybh jb7;y)oz~hagjj&zu{bz5oUFz2X7z4;FO+R?g-ZwrU4Op0*^;~*WV*dQ zgk}WaJ_rVZ3|512$vZ#GMk{p6)UHru@Roho2^uw#7yI$5X4ur?gSVG(Uf^;B!xySw zHCiuy@nX>+-?S(B3up_E5|-M11Q&oMwoBW3gS `1oyH zV6l8GIVNeT!1ic?ba)&yndaXo9rQ3je}qx==k 3I8h?guscAi-Z*oC+$-grIaY@9V}}uRmQ~zQ;u`9j5x1Dqqtp5w*lbYl1#E z5v&;zr5|O(Z~lDAMF-N}y~!jJ8_aYP#i8ohDrLgCrUeIRx7DjndSxKif;@r>l?YHV z;9tpL-@^)JBfqr$i?$p7?y_x2U~U&%kM5+ujbr{#y#6QK15r2;w;q=CE#e_PDCvgy z7?Q}i(Ed*;Kzoa%3{Vm~yE7iD9Uz$~Nul=qhaG!>YZ0V)dkF*$V0!*vWr2rHE|iaH z#n^zwla^uXU$M9s_h&MnH&N^)>g~?dz&P$0FkeiZoT?Ae3(%(1$vE|uR8(S&Rccs6 z59p8@u^svB4d*aB@ykkM5Uio$xsN(iTb@!PIm6{=lBa>jaj#fmFghcM6Yk>8O!cdE z7e5zkK0dxpVi()4f2uA-OKas%(mX~!K1Ni{`j&H$Bn8yrXr TB$)K=fZtz3xdesLt2H88@4+36I2c0oP4idSTe<`99UjO>S-X1*d3faE*VQl=Ff) z8tdJ`*^39cwAg93W_e$$#-=;?b|cNeG %TUZG@XG`O|Oa=dQ*TkC3tzKTFGK!Au=m#YWre z3a(nAE+Vbq>*Z$_p}!mLG~2R=fsoe`zIL)Xy0qxD^5>=FG~25V-+CryW<4Q|@}dE{ z?Z_qaiS--ADL9|7$Lr`*EG$sn3$>r&I=&=6hNRuK*X7SuocI2`*S^9gQ&d{L)lk;t z(1clwOKyDvzvHwLz#O$|#spVA^#LV(>}yPr_ O8qQ_xD6J6HU)=HCk;^R$^&Mrg6-m{B(|4mx%49NBpdv=AaVgLR6_Y_da z@E})*`bi D)w 1N)<}HTTW(B`}2X~(=dLAGqF!zE))43Gx~facH7T| zimiRFmQ#4knX0GRKhnFkuHJWjRQq1#AdNWl*rEbp5R+T-IJk7A738f?Sy)*|fvX!E ze=JDcx$|bZ<2R=W_-&x;2lJb&;|Az`u;==#2N4h;)!gia^Y4@ln;g@K%3F691eK`m zz86TBc4nE!ZU9(d1W>t+OHO;^DK}d~WxiQNJ8vkWZ8vg@fM0%BG;Xbo!g>2Mayx8K zKsVIj>D5Hs(-(t*c~?2JHLv%`?7IpigOC^eLyGX@%sqbn oWrQ-r3n%0pV*w(Yk`Z z0Xn>^xEyGll)46&H- !!psmh*n5>U&GKFm~BoFGUp__jg;T%rICal}zzn zKB3%v2eA?5;bMj=TAXm}(>2@BY%UiUJ 42j;m0VD1lJ&C<1pH1?7xzC zd50AYkB)je`S-YgCyXk`C1H6l>H-wh)Su3yZ&OG(1=`Vb)f3J~_{!(iUiJFmF<@<# z&iIK1J_t+!6CmwSt-`CN!(apN!)50h<8rBIUH}X*ycKj=WRtu*PFzaqS#hm&UmyHK z?M4HxtCy?^b>7$2{-kf0vo1?0ZVjXAYVn^?niM;YtB9R^>|9|#Byx9v0(;3dU)R86 zSl5F@tcCVq4b?3)%L~*HNSN(^ydW70tHWr`D-XBvQu2Y>kEU~ve+de5b76WGCHg53 zv&rxdxj^eqiSzz;q9XhYuPbj_r!e4S07$n?@#8%X57i(aMx1yO`FDY@n0N-q>v{-q z1!WC&=(pWS9+Me*(TgORKMk!rYLbyQ*^URz2}+PL86{XPY&xp $sYkx{Ggu4t%G6x)Gd613Rut^{8R}*i zAx~?%Vgj|haT^wl<;V{A5*r2t{h6Ule%&LQuvS=9pV!d2q~D3PFh0*rGWHRo?<0y^ zCz#SbFeks3f9mp3zE?shU6PZTmghSySBc}eyeKFrA9~k@+g(q0@g3V&d8M-lPSreH zYvwvJWOg6w%-$^PZB8?IXHVDn#Q6$u-W=D (fX%+P3lWBUBf&5GqPJ zTo?L6BSp8bk=t7Mi7{kwjN>o?y}C6P0{WNJzoIal@V;la)_%t&TYyAR1$iyt_5;O+ z@o`hkB2(EAFC6YDEF4{Gx~;G;LS|7)CQgeR$%Nnn3-Z=rkRZondXYeGbG!*$LW*sC zscg3vD=a~mo6rw}u6eKS&dMbDRnK(RMQ(!*uIY WEm=`9nm+t+fcefgD8 z^2}6G%zpFFpDZn$AWszBM=VMaah{!CDbuOqYfEDzd|tUh&9uDy`A@;c2W=LXkZ{~z zBN!ZY-0>ihR_)$OZ5p@r 6JJscOYRs=_@pA*gE*k50%jVe{`UIJPf7Tv1M7?UXK z95b7%MsF;1!GJSNL3_j0H{j@2sSVjD(nnv>%GS_H4BYahBB)(%7Ft{d5%xpgy|Ne> z?GB9I6buTIl4rPRj|79ED<1$&XClXgT!fkgH|Ur(<_J`j&niLJ&x?&-UwrlG?8UE1 zG&nc1wfVbjdut7cW8mvc4p h7<`qe$?+2-S_s%1g3Lw(={f#}O#HhJliF87ju7VRyhoaPs zrNnpzxrKyal_!D-#a4ROD&RVpw`Z4^;bNk6vp{T@7-U4PM*>tM+v$C3s@1gy8oCdZ zZ3VefUnC;)lPE{rNZ& 4!kITU6{RnS2z%G!?rGtS)DVfC#}>OF*CQrt@hG^D$pRxI6u& zlUK-xModv+7@5mltFYAqIrFzFJdm&3;e0;D_2D5ky}o(LKz+~vrd0QLT8Y|`8iQv? zZL)5?S=fBxhnQVfb>y0PV!uCa_L9q7ErQqdgjPkL;%y6Jq)NJfk}Ce~ylx0`DEx9` zK{FH%3r^q8Uh-k8uKFe$*b)r?!TTv37UZldSv?9kK1ypO-Nug)^ZG7^j&y-X(pJCZ z0?I$Syj}2!#>R}&iIOqQb>?U+o+kudYlV3B$%6WDr%w_N$t0`-?aV*T47&(8ewv-c znZ?eR|N4$#98TMO>=xM_0EMeV)N>{^jz-uO%k?q0oOV#$RaH5_t84FwD|*N)3vqNq zvUyxi{69`*li5BukS|~PbJBSjq zqj5)kYAOZ>aq*?`HY}Gp$^h)b;^Q NJU$DW z*2N%|t8SfP_r<)EsWxUP_GPsseaf>692rdK9?Qs9s~nPRN6GS#N<&C^=pkj-&|M8# z4M|OHF#P4J;hh8(w7?lg(?g8U7j;^XOn`YAZ?Jbk&4hTH&KP@db3bg~^kSjRK9YG{ z^!T^{1xn|;nSmxK$#t#di{A&Zj<~3PpGQM2@{Pn}DV0Ohhj{aSvRLy2ZJa`OVi=}v z9`YdDu*ro>Aw1Yix$5q2i$DdopU*I Rd_A}B(x_Dz2 0){psZH8IJSXUhfM7mq-x*arNTe*#_Aylj*) z{a+Anpmpc148~D) `!$jz-Se?*rFXv!6T}%*$uwH zT!UZwBfeadwcZ>*`?F9c)ni#sa%&D`hd?VxQ1AJ`SJaveBL=d-=Bv14w~*7JOMKo1 zMN@jTR}iq!v0z-6y^N@@9vQ8a8&{5GADx@?G5tGi?X%(FR&CU(6(lj6EhXH>&_0MR zK}r5-RO{F3_)?){vD1>oFEMg(F?r7<@cfQF&EI #Hj0uImqDC0HM{O)e6kF>jc65E^;y*^M(r2<2gecOa{_s7!&e)y*_-E$;N#ykof8G6HptQui7e-x+I8+(w8t%NYXIHsU zeuxxa$dAlRl|0MQhPRlqZFx2pUM6-5+t`?y8tTtnZ}sX_AxdmM-Bp!W|606hNSEx? znpuNO@-C!!4SXhgG%dX}amxGtmRq#Dy1cx+`t#>$Zf4jt+0A}1z)H14gYJ7qZ#V-C zDm@cD?~Xg@nyOp1iZ?1>Ch)$WjTB4`5V?lZjLldXZ0wwQrWoX~{p>Q;91P~yURz&d z77&;*oW=!v4H4`-IORO7PEB}|rPDezW*9k=sY9Pqv93jpFRlssz5VTg_yP1u@K;HB z)UK3isg8@BXuT65e4CJA_j8R&V31LRT?@A&z+M?JZxNGSwL^P~L|ogIOhYnc-#3<~ zlSaQM74b794>%bcgKpVAq1wA4;f>!N8cjUVNTOR#W5dP8{ai#$tniPM%V7cx+1HgL zI0BCsG4zGoP@LfxaV6kY!b>)KSE4h`rd{k5^KEv1V03+H4KS`86Vn|ssTM$ri6NK& zm02qT?nAWXIk>sgQl^O6*^i4MimeQUQgMAvbQBa@%JuGm=L`09@WD0MR;XQw`vZ5+ zUM4WikJr^wrf9m>0M1m+NNDr9fSC9xY#`;q0yoV+cz(#k|GOM;WU7R!DESutM zk6!Vjx$Lm8jLkTn~nVIYW7f9{vlQ})m5k+JV zyP|93hi0dxF}Hi~r;xB}v@!$bKAB`AS$Y*P2dhR78 KPvZ(qFjI?&5=$+?Y~2q<5=C3+B06ZVl09bxV-*ldT>E*LypK>KYL zz|qi@7voA5Wgq1Le-6NexyRFV&e#ahHRuFbDUae(11=BJWFsFx1 }0X%)T`15 {Wh!c*S10cYk?afZUk#z&;o%#cxrXeMy7NXab zKoq~-pZ_)eRN&2rzssHN^Olcz*grdjuLG)^0wBa#H-mYQXFEDB=K6fm4FF5}##!58 zIYR#){DI8b>FQ|Jmdd%Pn?oQCFeF(8Y3Y9VK3M!6u&A8Ml6m@QCg1P$&u|DTy4qb; zZ5Ici(AK(f$>3-|)9(qxqkyWti7PHCQBFJ%F9syOy!;nl#4`bB+ZH2QibJ$CP>%Jn z%om@_iHU6=#=sS(tgJlf7-Ps%E$fDgBM>ES_= 8*=h*X(KTFlyP8JtU z7*(8CEUARt3feavDAuU^UQ1KeC1C9m_U{d+vW_>QwH7k5vSv#FLKiP6)6dV( L z>cVm*Uz)&D^}M^?Hz%W|1b-!gfNPcc%lpRtLEkLl-k|qA>^Rk6yt)bXA)d%TA*LY4&hs&KyIV<*1w+T=Q z=n`mcv!nuieQSh
>i0@M9D`Chuq0DgCC(+sX7$K6#4rpw;iq)(TqkCJhivz3j`~;5>M{ z2BH7X1EWnKROMdWx??daBruc;Vzun$PIP91vG#nzH2*QsO!E;>i;$#?UgH+`m7$CU z(WkLpP`M=Fw0+9)?38EoY42|);j`JNEP@&rYDFAXSz0CS`AJ984^K0Q$O)H%AGQM+ zKI2vC&>%|}N^a{5$JuyXH9ZETXrc+z6w{F(OaQgVJ=aOCi~s|i5M76c+4n5z95w7| zeNCvzg%DOhJ6CU)4Eg>VrBpvwpBa>X!Xk8_32hsltGUq78W$``CsImTzjH(JoNtY+ z9G0{l!qD_?rDU>s!N{(X@j=}AbIvBR{u+)_u-(r_=3J*BvuOFSf($6((I*l36j@$o z$@nc|*M9=kPzqb${C>`eV?p-1-TRZnC>+L4MU9SjIY41{wjc--7|Ru%r4m7@OCT+m zoM-8mka~h9$H@{&1W2|ZTa0?Y<34%8G7qg55wtYk3s$B;VDW =8C+p(M6QyIB9Vts~X~c_3F&&-*z0if*2ny4qca-!y zqN-q0aM2G}L#|^Hj?bH}eeZdN$P;#IUB7*8x3u8 R;zoH*X?F1F>z&hf`3wSFOFVp z6HD$waKDiw!JXaWlF|>8Q;yP1x@z@}j*sUj9PI5u>L25Y8|mQU68^KY7okPz_IFWa zkdFTNsJOXO7|z0Ro+lARQ#e1RGaQ-oQ@FtkDF7?>$Eai!Ten;Xtopu7W 1z06#{#B<$FIT$>WcPiFaY&oJGZcKm&n0si>twKf*Lk_BIUY%Kpl zkfAnMm$R{`Zz=|X_K>Lo9UM^i<;XxEK-mgf-hY`KI;S?8Cvr>tRAQL;l~Vkp&w=WF zuX>&k&<%Rm&pzLa!5*d4UjTVX;NKteHxtKqB=&Mh7)BL)br~~r9_+GUK3%u +`?<1P)z$nYWdkl6-tW4Au8$t6Yg^lD9;&^MOHZgSpZlngxnWw?`4b z8Y&lJVjyG>_Hj813!;k5EwO_qz_(1gB7(7LAGdDq9pBeV>9MKdMw|ZYL?Aw&)7KFt zk}0D2zbn1rd=Dk&qA)4G3Pc9)Fv8Q0nfJ2j)zDt~do7bYUwJ*qSA{8|w&<6gC7J)H zG7w!o#&|L<*v)g;d5hiH8L(xxIoq9MH{+~zn06niU1QqDKrxx0iVF{rnGzAKO8TP~ z&^rxagEgQh@%pBbq`}qaU5;2DGX-ysV7E+!PYFX>+oAfo;3*udh#c**k>t0B+r24b zZCben$kiJ5%AdfXlAoqeI4=WlQ8Qma>tDL(^?@bI)G0ZQCFfUWPLA5oE{p9BYyBer zeod6HNY|52EW0@^hNjZp**Cn3EYB50!mWQ%-8(lojR`_0Mq@jNnn%9`mPFnR@j^Ls zMc^(Y55?y??g~(DBw-)}#YDar%sz9`-8f)psxADb>&*1~d|@By$H7_Lk CO_?wvB)b9NfIJ}Er zO=Ri9M#pYt#dWw49T}(BBqC+)xWJ+HW9E_;s`O4wpwIZ?92+b1MkhZv=`il5YgpFo z#a;8bp?~jQw<*1Y*}l`r-FZn{gXNBlksB_UDBehGbuF^$&Y18bHS}_k+1a=y$v+yG z#UjYOyIt++ZaF{y2l-!r`VgM~0|88~gW7|XgZb~_n|JLlf_tDKl$x9Fo5S|!t~2+^ z&|Jg|D;v!7-Pw%j`|Fe&1a$dgZ+Etsd{#@!7?fEz&GGunZEAfCg9XjX9Jeuaxcci_ z_9?>7W3rR*!+wppzskqK`1o=F*C}BzoSu}34Nr``pPC|m8VH|_`(Kkh$ng0u$aU|K zVw^nj%rE1tmZZkA?j+g!IbQrbB%wk r&4q3q*#rgf_{RE%0Ika^ 3?Vh&SW@)M#+>Gw0PN!BCu=Bbnd>9JcAS C>k!%NI|mW;?B5Z0j1h;2${E1#J|(A8@tJ+B!dG8w;23WonUq zVJ0(|A^Q)I0U7cUnO%>0N~XA{-sw%`3OiR9RCFT0HLFwE%n2S`;Hf|xZ^hHcM?GSx z@Cq>eMN#UkAo0IueqTaN^Gw*k`8esyeQK3jH^c=qWoa4QZjSmv^o 1~7ihW9h zD_&!#0^$jwyd$@H?DW}YH-GI%yfe!ivhLfov-U&jb;rxgJ}4Dg3J_asqNh6+@f+?_ zUwfQ8h6ZkB6RJe=HhDW;u_7BMHxutq?V=Mk-(R&}CCPIv*T&3V{>TDY-hT_oQpLgk zrE)<1c5~y{DkaTJZjHJSvAu#UmR%5V`E+8PFUIUzi_}sX8DT<2 )H9LmwUh_V{5=hy3xYGsi&bq2^;oaZ(6q8K3xnAP#eUp8< z`^18hDw0l7UNsF*_lAoD6VTZr{-qvm)Zli>Q?6w%Bgg8BfdToG-@|W&-NjU6@M4RL ztNTTTIamY~)-2bUcqC?8FW1fG`D^Z0^mSXWh{7LO>s8@HH Q7L)N92ca! zraH?$?|mQczn-myOA!+jGlM0h*GO_mGge}L3PpSMvsagQNqrE|aIx%nXb}z229hfH zzezQO`FvY=GWIH2teaksfmwrt+dah(yV6NHBFRh6p_)+&=(ilUlKwRIOB3kF`;R=J zSN ks`*Q-IaNVY#F2zp3>BY%qV|^18Wl|6OktX>Dse(&o8U zTvzu!2)f&};rgeWK#m*3MPEPtp({xvM`$%2@Q&ijI})(7u_Xb8vNZf@I6%~mDNP?t z0-ECI?{mZhX5M@>+orpY4d!H{6Z5TWxv!|Gur;f*9Kdt!>dengggLJSh`*#OQ2!hs zh vt9a1;8wz31GCjb6@<3pGXP_^v9_kcKN^?-(-A?#iE=bKFVVuA$U%$bkq z*O;)su$wr;vzNiaC5r<;)JYTJ+nTDXskBQ0N{zPTaeK75d*c3Q&uq%WgI-3U4e|ng z^timF6-@MQK?F~p^>Er-+`@d%F*nO2uR;Aji|&!bL;fu;OJnAQw19S #@msQ`-bi{C=2Lz~cW4*!{J_5cPz&s%KqN{r%jZ z@8@^_{`g(TaUI9i(RG~TeZJqX=kxhkPkR(19*a}B_I0U}gwaYRnMc4v^Xp9emrECW zJbDU7$4r?%!-P2t5(2?npV<+~8(;<%sU(tgb-vq|_H~5)u>CK4Z)A(U;6oReN^_n$ z^HvnvpVOrovUe(-zFy9i)`baKH#dUV==a`zHIS3RL?4Wd-7OBmDG3P}n9w&RD@HL` z4SW41cQxfD7Yj}5MtCV+PXL2{bEZ8(F$2-B_l45?!>{{d8MxLDU{O)4ubw-cJ-4|u z_z3KUod7T1tzmZD$BD%*d@4d1WsFiS$KDp-%bcGj?+Z6%&Z4pX!F>-dKSRl;PVm_) zfe~bk2ACf~XxWfp0Wzv=v`x(V1s%;dTxEI096A)T&A7-R*_NFz9X4qQ6Q60p?62=% z>Y5z^_E7Z87owJ>YCbVqD!a8hF@ciQXE5(?xh64n1=L}>-Ob E3(s3$(Vr`;fniV@e{Pp#K5kO= z*7YN75xQJ^4y`0zwOqjJC?(Homr$V{(1lpC#h0ggJ!NSq!=A-7#?cG=@TMMZ*iohS ze9@5N74uxV<5sMe`Z-`1CzwR$o+S3KTi-wDAUa52d|nV>;@=f^adA;}paD_!+a$mP zGz)Mz%#XkEqB}uy3wYst!%vqEe);kx$EGKZdTe~iX{@U39625yi_uQy?O%`djL~BD zvBtHLrGjgh>8gHX7d8POeE~x<3GhUcfMx5a_Zp}?iWBsgE?WGY3XgSCpUnUopKCJq zkO G1Q6T`h&_8Mz=-1aOFY)%;{8DQE?qE(A zUyOsA= -(^Kkxm~w-&?XU)PRW@M%d0N7onlrAkg5OGU=vjC(A!+} zEj{(iORJv)YKbZL&l0T@Q8Lr=L6X9F u z=$p%|7u$G?PzV@gX~{+V;!=v{asBwK9@?g$Tdd(+LR5C(3}9vU`<3Z1T4r3|zAGCO z6Qc?mPIx?19PpR&i2FNQxSG>PD(vT-;77qeR>)@Ij7ga(yf4U(QHhD8>$;qL=JAya zvy1(*KVJnr#71fBYfMjB#Q8Ei1)y{-wN6YeM#eJJ=s+oGCO_78Wf7xPqtw{Wig_fK zo7{3WobUcDenuhjG`n(Liw}I;Ne&GLNKFZxI=O5XaEQ -P25RB%-Tvh2C2UH%Fd*Du!cIv3M|1{ zC#SOLesk-`Fb4;hkdQ8vn1#9PH{ZulzZeJA*%$*f8kwattE}WlCO5}D;+0NtXx2Gn zH`eHMrs^12XgkS7J9M2-@E*NtHN<@N*(L7!b3teXIv>E{67;_YSaFy18~efY@RY?G zj=lqBmKEsAUNA}5!L#|qv78n)VJU;ct&w1-uC3qIzmk?EJ2Fl JC24=C(`LOO$&<9&AeVVnsVY;c z=nUfSCAcUS2eK*Nx`>!6K @T10|x#80D^IO4D;&6cH1wtLX0diN0R3-ntU+YY`xwjRE5uqzc*#xXW z!TSL8%hw`~^7*fTt3CY#C-~e6XrNb;Yr1R6k#yD7qKr*xdL~I`{d0+b;l(^o4)a6W zP%4<`3dOX!VlNcO1&7_Qo_|4`_j?{U;ZjLha%&0Ix%CSsR$!gO JjS3p IF73yve_hDzBsx;8-=dEoQ8A zj;dHWlZ7M1EPSwc3|$_7SITtHSNN7H$)+|5o+e%_UY%%YC`( RJ1}z!q>t)= z66M32orz;!ck2tsYYh*N$`7IXo9}79fxQ^f%6ySxr=CW?aU3a6Xk+sIII|yt4K0~t z*~&G~GdEcTRc?9-C-{!EdA|zz)C0Pmw|Xi!zd{6;Z1a0HKJA7P#hD6cLfU))Fawol z5=O^JN%Yybe+*mlJmea4z_#Pm*QdY -O{1s(QDXtB6#6Li{} z7l{jOLFX>beLm>S$q<@mnia3FHd8Ip8xPVCTJ&`tFS4`n@^(et&{w@6DEQHv4Uj0a zB>&}#!CG@HP!lHu-dJ4(pLjW#NE 1G|8DWN)}ZIt=)&`@sf5e94)+I9LR@zW#)_rQ=%iL0Ecc!mKujL z*(Az9U!7AU&0(X0Y^!OV!rqRVYBuF#g>7$^>l8K4$x$WrTU%yCDl*O=1R_Fu5;t9* z8fY ;FxGH9HWte!yMZ}eWl5E$?BgM;7ln~rCVgv(WY zPB_$^ys^sS^uGWC|HSc^?_^`}?36_rb7ARGsii9nw-!NFE!-~|G7YFxZF~r$3;}*4 zq6IBsrDjo#bU4Zw)Pf(=r5aM-Q{=W^!zQu+9!0@+*NO^*t?vXPeSJpr?_p=Czu~m6 z4ir5dej~^t5(t9*8pE_5&Dvj=>29y%>IY-*5tNaZ5!oYz*Fkr8 l;3BwQ#RSdpwfxOjhp)7Uw-pj mryt1;wC z{YcS?GDWGgcZH(TMBQGL-6O#92LSgTMd}dY{yTSabK->kW)eQHQ911d$F?$AB{q4i z`7q0GDI%8^L!|{O;Db^9gR+ifzV#PnJ-23~Wly26gJHoo+B)J%@OaiiC+1OTx&$)s zvAYY0xB_|aj?O0PEzsaKR()4lFVI$i0sE}g8NHe1)k{gfmj~SJcWjo*3N{v2`IM#! zHmzo-qZ3CsWTvL3YRM xr8n6qsdYVkV{gs+ zp62H7tB;D>irc?@pJy)-(R$%umv;BiE(@HeDh>`jkfh;G`llS bdUm*6Bsy+A3YpLr znf@TO_(v Dlh<{}JySPo&N9z7?5Wt&c~-nFz&j4tdVP=g=1=rlg#WCW_YntHM9*4Y{gx z6HS94){tsNH`q|qck_9cPWZXwIsDJaDdRXU<%gdyYkpN}M*0{Se@ZrLXU8cEfBa`i zP0T-{W%xOc$8Pk(k<0hbXAozIQPu6HLRwndnlqX2Q>LEf#+?>Q1d;C5pL1PZmoe-I zpAt`F7wVTavm*>IB#iJv>+0@S9Q+D7f{v?v0&u<^Fvip^!5lf;fxYz 6c}6O)j1)o3iwICK0@!){8j^hllW8)dFVhy%F^57u0?$xoIe zP0!ve1!T7RK2lNe;hOp8h<(XpAGAK`S|5N1## %uC_ zlk{{xDBfJ0TP*7HT~9grYS%(2o}fz+mk~l;d8B#IopP2ysYU5hCn?!F!>>2)I1zRz z?c-A|e)#JPHBSl@&Q{j^X7sFW0~hPbkP#=`TYb4&pBn;yyL#ukZOkaMrDBSKrss~A z*h~{^h>AG0S1jIJgKFa^XR_vi(p?7*~2>05lGy(bYGPAZK22(#5+zkgxAXgc+ng zSbq1v@z0mDH5-Q%V-XOERp_qtMP9>7)ywb`s5kB!X!mQ2KzHPd%lo-87t_XH3ayxr6xqW&I~83o0|I_9eBGPI`qaK)gSFGDF$5v zr%E=ASM8s3RJtk%t1i7%f0jtbcsa$9zOP9XhanwJ8NknBCN2i !%A4LuUuse1Y&x4?4M?~(KT_rlmx%Ked-n_5K=RGXp<2tvfnx?XwDBQVqwG+h5H#jo-TF43oQ* zUn)(NE}ZtUJ>Z3Tr*VRxLkZK}x9u!UcT8sEQ{_WaNif_l2Wyd17iB4iWG~!5LoHn@ zTP3?Aql6u0NF8VA7=E_pa$!WH6Z0}_H ZYqiS}&IEn_ViMC(f7DZp3&7 zMFz E4z^Poduvk}+h&rr$@&wLPd+@m9Qj zNtx`>J>o;$1BnN@9r+wOAZtQMU`6z08N%k1(xpvB_mp)nU-+7ShPrWs82iQReGIX= zzu#uRo?O}x9tDX`tzGk_FxD_k*y=S62`fCtdnJx?cx>|0MMdazCH*%x6ZT4>m5gUO zs3)r?4p%(Sh>8wJb%0o7Rn;#JQ&B=~v|AOSPq;v}6+ZcEP?CvKld$nsj6H!%yt3`3 z1u+gInFF|CV~=?0|CKNo3JG$jTz`ZPz3sRki`leM#xJe4SgWwvUMk3!#b;Fu=W2Oj za1k>z$tBmYR-K1WLgV$`7|x6?N*0Zxipn#(ycK8LL 6f<6lbxRZXens&h zc*?$vTz(E5aH?J*#6y~mORqn9O7PJ~Sp~Wjz^RYLN7R}eOMAXr6mXM%id?_4W8y*x z$9s47Q5;=p!N{NwZ9C+7X<7BGkW({|wCTjM^4xnusKVRAywNMk6T6_o-*jVilG+H} zSxL|2AH2_OTZJQko&yd)5Nc0-P7}c|E0_|~L4S#z9+-VgDT@ }vzvlywUJhoV)(M3r?!^a4pOiZ=XJ#Ph199flm>Z5g9^3Z&LN1Tw?!UWC zY@hGX^9w&&7fUOq>PD1)l&)$j@!SeI-jso(d2H3V*($J5eY|U4(2^)^0m$#RSN@cq zu207JKtd0{)|uK8d`seMZ;mH<{FGbq%u?shpG$_BqN7QUP)%o1!hi2-C(Tja715V& zH HRB=(p+1C`-cl? zdG8%|ZmZuT1e@evh=3Jl)VHRBY%{g+e+Qtb0)TQx^8EOJQR%nO{RjBTixyX${&W!q zu@n}3mzZsVYtT6T7n2^T9v0Sra^OoMrAD)_CY)hL`--W1`kLHsn^dx_xPP(rTo*By z`;*dBQfv!fY%cW+!`Hd+ASd QgYX-_Bj~+4Hz}6df9gd{F9wW6 zDrH_Ce2Ug~uisXu#?M#IQRhma_}X!^pQ_AtZP)8TspJ87PNHv)ytSV`*F@mUDefZR zxJVT2QkqsZnMH0ll13 &}WSzwUXwf*x_f^v+jiKeV9(gB8#i4p%&&2!v!y>~s>M&n_ zltkw|e*Ab`67jIjL=wxpx-%0L(=NpGjuT;;g7K-(A89s PiyLvDaLgr@o*K_yl~T+b-P@vTYAD$LE@+4p+e8E6=aYOJg~U_phxfcABf zbgk1!xpHef^XeSrI9x(|8c2}Xl^txqk(j!OKD+ pW?y_ z=mt|i>9SbU3p+X7d+^`^8`#0O(qauxX}yF_v~?=RZ=w|E%qMqQF|Z8Yho~}NIXVZ; zp6!%e%Sgc;1M#vVtNKBs{mlKHnynp&UglripLStN{ofH1eE5Ywbaf>a8`qrfwIDgE ze;PqX(k3zDk9ZBOTPTgjO9fe(Lrz>*puW2$dDgJT!x6tJbU8=m5rW#NN>mMjmUJOG znJ`QF{i7J3s(~`{u$NK^FTuN*;ugAj(m!G;uqBEDO#3$rUmo#fqloChzH*D|P@W!z zUn+-p+hk!7;URvT`fut!mI@3A55TKdUl41iyR9Y^CIe}Qne`_0 3DU>4TMpG6tM{*=&}|$iWIeI6ag0yky8|L=-@-Z)gint1 zDSfEiQX7+dGKy <1O6p(Y8gu>QASi5E@fED&8}i#LVSIKCENUjWZ+Tl4U19QkFrb`tnZ2v z#$71xsNf94BUpiZ-D~>)W+I`C={t+ttipLhMq1+6CpjnOg`p{`4})2BTxcis@a<__ z!`q`&&seVN-o~N!M%$os&%RlD&J>m@^`olaOlSV`x2h@{^f ZUU0d1p7y+J)lONwKZ8Cag<{5oq;g)<5Mxf1Ss>L*mI(J()c1&%`1azazq>2o zoc4{elxwkj?9bb)7bcn!FG7RokzpS%ZbYJ<%9`!^PsC=x_MeCi?Mnob$M^Xyt-4q$ z6*EI!jgQUmwD*~klUn)4t;~l>MhR~kMs-%c>-PY$0;o#I^M(eNIQqUvN%5Rl?VjRA z$HxAY1pa!F;II03ds|~=+DV5X%! koIaks*ev;WYQ}zK-Ge zsfYJVk3j?WMX%yV?JOEY-qPYzlpiRbl)13FtS1^WaK@h( bD}meO2jYvh%fZIKTW42~Ms#i{CnzarK8Um` z }=2F^WKI+MNfA0jgAPV1k)CwoQ5 zdnTUIJO@#$z=|TA2Y!EDpmZ*4QgZTD Tm>%$kdl{v#Mn45Tpnu+QsyMeY{fNgh`7Q;v8 zSFi6vuPfihT=`*(Bn^poxL>WfdgJfnfo2sYR_egE_wUbWPgN^$v5{#Mtb4soeQGXq zjM^;zUBIuixB@Y?4+_E+FeExb)c^q=#|lUMkr%k4xU|0w@bPeYyvZlqQlJMh0^Bk> z;Xx4p_bF?N(z9SM >q#<3`c|561g5ak 32F~hwPYEHR{)hI)fi8L;vW$JYw;gKyO+O8q%>sg@H%a@F>7Z_2? GY|hLqrI6Jq>?N^r|dzh4ALdu^Ly$XYlS2dLA&`L0IQ?f{}oM7Nas?_KSa zo(C#7TO)He4n4)E*)Z&WI_SK;CHkYCUq53vTCYUT+*uJSc-l}ajc31aeTI!q4w1=A z?GN|VW(i11nOb)}u?owYlTqr1EEyB8Z}@DQ7&BTv6CPw)#IpF$j~B*$pz@n^+UYjc zBPbj=yq-)yXI|)mLd-59@r*`CR!JU !p^A71&4zBJKV a{uA$>tk$r;_ElrJwegmGUyLn3RCWYjSl32DgY9RB<@|1>(QdNmlAP*v&^ za~KxfT +b%>miF+|V>T^!Va4-N@Qz{+8MS;~gLvQ? zd7U_t)i$7sf8Ix*7XclZeHJj+iq~IM(g%R>9?4!oxVF` 560vz$4j0HLEc8yCL@ z{yq$t)^en+e->ZO9I%r~(Se0?Sy))_@|^`1;K)AbUE_QJCYx^rRN1nvrzY ?(^ z`W>?jYVA&F^zKH%Gn0!u^;vbKXe1TYQ-q#M21>hGK_OxBJg$~;FtIE}qwocEM3g|d zJGDT@p21oAK={g?+yvUb9#T_R0cPa_L(lpsO$q`KlpUGy<+$X5tVVcrAw2@(X_cxL z{%KK^{he?cspvIr!;mF`OD%6_WHgDws&(qnySvv(B41khK?rgztS&4~Y@gX@xqqf# z(Pn!(Nw+j2pPD9vhmWu4D 0o(H-)$^kb9E!r_r>9zi7FGRfwTWFaqBPzg!vYfl_z&xg ziIa8ojVSntA4x3cg;P^KbLiyUx^ik!)@vkLH%c?? U}ut8ND1Azsy?6+Q(yG%IXaZ#0}$(6JCDl zQ8sbOQr-8FIJMs|9~~bntVkoC4NWgu!;7w+oliE>5gnVh574shT_4=) A@ezjgJ&MTox2zxy3rBd;vm$Uc1h_z-SXWyo{$CW(7? z&^7ZWI5)hptD_?ktS}# Y&N-@uOrk^E*Zw zQikZ1|4UOSE@iXGUbwx``wnbcTfHZV>Dp|y&LELOiC017nBera`mqds2oB-| d}yFB zuP P&v@QA$3dt9b?feBifV zlrFqzm*zaNcKB&2V$WbuvNDacTW++s(m$^-o<&ottgqIrZBQ_qf=w~Se&~%eEZ>;6 z_ucZu=>( Q*1 zxzTI#s64~7+V51IoQf$fSA826_7rbg9e&+Lnu|_DOI3NxvKJe^>7KD%8v}W$Ue(Zk zhN|(eOG75rck&!YE4%taW8J na?d;|&Q)(NVzXOIssyj1VxHpYTs zTF-yDJo@J8(=(;p!E5w_H=`&lFXfUfQR8up1St?roe;J$y~sg*3wpF!r#_#bgq51% zN)RD&sbvmaeP0tN@h)@Lx`H-JK+!DsHpv~bDwl7H$H7YEq|B0IsPlaar;3HTsV@X$ zjJRu (H`2}%FG6d$Y!T>2W*odC=o+(DVQko%|PFK?=;5&wMh!eBktgyl}n`J;O0 zn1G&55nI}HxwDgF%SZS%0Y{Bxxc-slJwC-srwQa12^ixy{x818(^k?glZvs}G{QQl zpnQv14Mbz8%hh6L_0uyn@@&Lyt%AoAE?f^iWX{gxVQx;ZGJtq%HF=M49;@s`!5K|0 z-DgW$)P9_8m|gYzp{4KSh=Vdh+$jg|G=~vwba0oX_?sQpn1p@4;#ZtYNZ~7yS2W!> zyUFGr86XumbmxfVG2J>88KpbY3Ghiix`P9_@SW}nl6V}<%K`4OjBhKEvmFH2g~tjD z7PG>t-nsN5(U$hYgKTHbmJ5mC-sW405M#Q2qe772GGWwd)Eoo{)reXcb>3c*yTkf| zhUEo%KtS{B5(O8!8}xMN=L5(Ic={H|i{BV5e7X`;yBM?-y+nLF4Zf#4Q`krw!iTP% z+~30yPicHoOwM(5PmB7O$R2;N2gM4`nrK$ZB4+Kden@A2Pj`!vH6b`6-l!J6H+0PB z#2p(o2mn}w)n*BPU+e0njhd)qtE2X7HU|v9QpW3liWaL9co%cCZ4}#qZQ$ZVOFLCA z%AlZ-O$uSxuC^K4Uvfo>nL$q_oc0!QThvP3aB}16G*P;$w!u;Bo@BYgpg}lEzsO zmKJT{FBToa(tXQxseT?!8YV8iW4nJ_svzUqkLWA5 zFwzw Nm-EO(5QoPg`1X~m2xk<|+qaGE9Qv1f zAlQT1#*b$gfA{n6H0;l>6iD7g1iGrHCwCbND?{(V-omNmXH*NzajtuLt>dp6z7HiW z$^%Ohg5yxAsl6j?kHZf;W05T8{)646%mqA>*RO=lRpn62Ahp9mb+);WVEmX}K^6_M zPX*2Dd|ehg!OS8|w)ZS(NWNYDf3Zq3B%G#SqRv-pl1@?jiy;#EOGX;BPgt1im89dM zTt@NyM%yd)pSCZI>I`g62I2*=WQdn;85tG2tiJ0a&$Q#omoYlLz5XubU!5LAWw-FG z+SC&VxYeAN#%?^Zw6F WU|L{87)xfBH9zaY;zAO%uMTFp^X{a@o=y|*-ioMV+ds5V^O!KV9(S2 zT%2QFu#?|E;~f8MN7V7_fw1oHo1KL2LV5x;PQz19(Fm$i ShI!K^SY z4#es36D%!a1nWtrI|~wUyL-XY@K>WVxHJ3oO8!k5u`;e8eE>sBnEd%t@p0Eq-f_ZT zO4t!0h_>_u`qKCB-x0W>#*oSEW8=PsizJp}G|(tdk+99vC-cm+p<%O*mLZ&htN_o3 zePa-uQ752ZV>zXpIWg*^CTTV*PBu2j$e=YQxB{?SY=Oopa5N68s=yb5w 0atx`&MSyccl8O5 zTq|5()qPv4w#xn05lE=}6F76ImmGa5XY^ueGNI_*N($=3Q7+C^` >Cc!4>fe=_~iiHcDG6O~_@N5jv@f>NcpkPMzfUn) g zK0kjJ+ubb<&R`O}siZVrE%iz71oJ1iYbxB*6JH>EvpS8hIL^SPtZzx?`08Hp+H1WA zf{%J`kRDz1K3z}^ E<^Pz%g{`O c-5F`^C}( zxW7m&YoyF>ZF<&29;)DBZcJ~;{Skz>XiN%innnVvJ#ii|78oSS@S*AM{3T( %)h~ zfdChagHOnDq>o!Yfl#>NnI0AY!eUTl80R)1sZX$TAwXqZkaP?f+_fc(SC(c8(iwXB zFyUrnlT%voB=8qos2U UAyb?g*KFy|C-|GXxUuC%zW~-Qk}il>;aC;-dqnoH7vy|_sO2W;|o}ib=}5o zY3ojxnt1qb2P-%qely79X6) j?W`K<4v^ zeSVAFS-6h`H9MUzlTqd7nErfU+6nL2g$N`4|G5?LK0RK`qtE>sPAC7hl(6S3DJh-Z zHr#^;nW`HJN}`0y_#DiDwV bK8%L(O ?AX-k$=6|-`pa{CY(Rt zU{S4OgpIW>klS@J@u_*j`rCHK2FhDMJ1Q=2)oqL-koz%9QE>tho~?!I>ueA!)IT$k zBxhZ#pJft=-ut~dXus*u6y*<2AOCQ+4UE$Ap40(z!UJ#CTPmIN&%g2sQ;GiSVf}qU z_U27;o8Qr_vCLaM%NIM&*?(!5Kqxa7P^Kn AIikID?^8{vN$=PS1 zx4ZEktFz?XExp|#ikgY#l^c=#OuJh`*o8FuaQ&6Caa^MGbYUanTTv!KLBX597J9X> zU$@o &e?s_hVtTrB$0g@+2l-rHSL*WDa5Q^%zJup&29$sTDvp8R;&aNQ zYZ9|)LEQj7-MP^U`$tIbGemO@X=X 7#LDT49neP}qv0?N^=cCKeuN#HM8)<)# z_vT$!$6vndKlr7xGTb8|>DvdxAE-VRbw;ti$?f#0gYWk_SNfb@CvdBpFNcRe0!n~F zpO2Q;V21i>QxMksc)T5|WW- oCqI6>l5^W-gmIeToxjai+sk6L+$V3oQVkMg7hE?5 zyzNq7wJ4ZuN-`=e6`R2Q*rhGA3%)cf#IdLDjmE)hialKR(naZ`48v$_Yx9lOQRl#0 zo)XOc`#zf@Mtk+PrA7i_87h;w$*wJ$tNlxgPRo )ULRK8^vd1+HF5Vp! z;iWh2YG1bI*O!&dt> RB3k&Mo7`Io1v|{mM zxxy|MK~#?|-oU4N|NSRKI`zrg^ig^!jjBWJ!VGkUhpIh`+2e53fR`S>#}ECI8s=FM zNedfH01;*uAjk_*>tSa$oYTDvA4`ATFSWHJy`|O|b~ftUlb~qbN^0unfx!`QUH4+) zErQa>3giTsXf=FUs@FfwPw09c=4w6vSn24vslciIO$|2+BGJN-5j9v^&8@}cfzM#e zxsA!WH$Uxg#a^6TFQkt*9&O#%Ht(&F8Ov+%dmo@ngS2_jMG8XlRl|x8O8?`C9?Ml| zWX~WD-c55YT~Eo+@Dy7?ZaN3^Y~az)bnY+$Ggs=u7f6`agM9w)S3CWu%|Shll(Dsy zYgLoWL+ULNd!3=&Ox`IoGxU+bD{S?aV$%l- ?8HFhvd+ni`k^a#u;MWGCUEPkS zr{lC7Agtet{^j?Cj|S49x$SjOMg0J;yOTUDN`Viph0l` ~A6Yf7_i~ z*E9rd^<8>lbz)-TvDC?oBOtQB7R4~Y+=XmK&8!17`pKc+Ppv?3sIMfyJWNSRalHkO zMyKyW_w|wjaDPx0u3pN0*+zCp9Vuwh3}?03u%gbOE>b&JFLSSGU%M99_)2R%Cl8=c zq?1;@dX?)Dvl7;eoSescZ>3fDo 8Idp z`~b8rJFwI*R3BRm=%VeA&8Fp!qXT{0)Q#wHbR_!ClSsUTXlz GmwLfX_Ep_>4 zpFd)qJa_IK2k88|jpXp>!vo|dN9GHf;Ws_Nma&uKx2!E~%g{6R*M+gM-31(xc&o}^ z-@3j0DSTZR@vIoLb-<(5$$-(FL-D*W?>#URX)gXq;bqm`_FZ_`@p5SXtsaVECv}B# zDIx5(Q{Z~K)k(0tw?zBNA1CQ~&plhAU6FYtqm%b-Wl3GUKabe%7LlVU&P2HkD%$AR z(Km7Fr&h)xE^I^kKb%Ry>kN12JJP~9P$RZpCW-|dlpcZ`8ox+v`OiJJnSqTezYJKP zVP8wd{-RH_zqvF&P<*-+)#w@|X%T(XklFtWy>qQOPl-|~*}K!E+tnxbLXI%lzQ5tv z>&RAqP&->i<00C8B3Y{(JJuD{opJ88G;>#&{ri5{rx!4FzI~e#wh5Me-=Y^ow4EUI zrur BXDMb!tf9faR%y{{5_P3LYX4LIh}~ zE@AOeVX{3k;NXOHE!ISX7h5={ F^CYB4 zi9!W}xS2DgU yUubx?WcspnS$s`2B`dDFR!jmO# z?oBJlTQbi*A6OwTYl}TfnMaj{)uE-4euNouNLU~#d~HB`-ko%;ntTJapH4i)TiTq~ z=g|JQA4$Nf8%3UJBg}b-WYjcgX@K02HxuZzg*OI13GuEOQ@`4zj>`OIxlPx(%Q4Lr zt0Eju49K>E;a2b2nVA$K16$h35pqCg_P20=;|;#Yd3oh{<&KK%6**k=D}0rF;4;wK z7m%i>(3|U`kc?N;39B~k@Q~_EzXt{i)C^QK?={o6%s0dCM+jZ$^Jn2|*sfdsP`5qK z4M)d?tdlqt7fdnQ{)8Kvym`0h*-|ILsZ!@spi3} u9q_Y5Hf -v;RB0Z3D-MKd$859^hu zRj>(kYi%1q_XDX1((;zt6h`|161chHK6i2>J&NiINy28O7*IuxL*!yc2o`yNq8*GG zMV6fUzPb*weOar--T3QP^%nG_?Rq3U820KWks!hwj90$tmYFi+YsI*3p8aNCm7lEh zOe4rs4VJ${Qk^;br!dBur9!WVksA-0V$M)sSQ#z9HSHOaAl1i6@JM7NSmC6!(sPZ{ zL<_
$4?m)0;*u0 iNFveBpEO2;jD2^hFVIDU*pn+R;y`->(gQ)byuTnP*WX`4Bg*? T#&i*Q9}q;$~gSBcm}{uB&`*fK|w*mi3l^J81`p#&7XxdkTv&5dWIMJC(qzd zLH}z6{dLp?QA18-f9daF2!;(@$l?)@Mg4y$-6t*}>9fZR&j(Xrh(kPyU%517WP;C0 z0a`i?8wT2#b1#4(&Dr=VAUCi%?5?u@8yR0D^k(AFE@taHG&RTuGiT MI#J?oI1U~joZJ;SZC zsf_T%>67K;2z!4K$QhZTEIaTV3PPn`^ ?l=K)DR5iHH0-K&BJmL4{V@AbxFJ1zXfF2{wd84z4H(YF`N)BX5^UI+eGnoy> z)pru0XZQfJ`mTVIhNJ2mStW=|ABya2#waM=kAH4E211MJbRq%Lav-xePBeLnuZN(m zr>Cdn)A`SkBso2hZ@f0la)Md1cFcYIP<8!n5eT1nmi_wJW~_0@-M1#BGYFOL7S&G| ztkx$<=u^rTQ+eU{gRJ-2zWrBZtAJ;mh(+GVU6kq~u>6nNayy_yF`0`Je53eySP=(= zVzZAr8G>(aNdS5I_R^0qzdl3Qmy;*#@nh%};-cq44!2|xGRgrhJ()vfdo)8yrA)&w zKQ7$OgJ<;JmayJscH=hLz0z%`=M3H+jAGy4j(Ts|O!6^Lj_fdvs(TniSo;3YO~T@Y zfnG_1YHJT;Kj9yik*++lSwwY#A{JkGAYxtWND{~VH}7bm>1C(Il&FThNG6}N3ll<^ znLUW)qkAmrUtRV~bV?RB^H}j9`r->T>QzbWztSL^7)+mcw$H}1N#A`>tup`mB9UXJ zTKO{w(t%xPv^M<7k<0=5kafY +lk8G3o{EnK8g)z=e)@ZSL!r}lKPcGv#;tTMhtWY1H~S-CkfL^Pl| zIhOkI(uk{*{0j*qHwSxT( 1c#)`msS$K zTFvedJLb+e{; Yy!RE7AmGjtfjtr|R-X@ oOqyRn(>1KI6p$A*HKqiczG)5> zz+^jRLd$F7yDY>uWTvL;f-Uge0+%Qx$E40@g^3B46sNaO$4fc2oNlD#s~XtRK`}&$ zJX6B^hKG%hndL6NXiWj;RwGQS0}BrZ?LtcWgNwy~l;|N4Fw#6A#2nDK?3LPQa2dB7 zmOs_)4b!utE$*T2#qw~;$+7!Bpe<9^nexdZ!>ci%DFgd*v7S*DgH%zjOGEn=9?llg zmO5wB)9{roNu(I))2WK1{h5? h2T1RdjW+v-JnN Px89tOw#?Q zr^JdIs$Fu{l$y{%4UpmX6<{h3of-4V&`)8T-88gzGW{oQr$~5k(46SN(yXSsoGB$^ z1GE{k zBb`MK!NQN24<-p`i*++@qsD%WR65#+ohh#1;~H_aFW`+?p6S7v;oigThZCpq$hUFg zH{>ChT4l!U4Xr{BN?!7I)SpfSFN`LPl0YMhCW;7k26c}5x{}A;b3yKFWo=B{!b6f9 z?QE~^eAh Y0FX 2KGiiOfT2mYeF2$ix0bgJJtDETc_y{!z;dM`Z;% z9G;QWvcc2S)SC6e7t2F?2rcMgjRrL_y0+A8e~GXdx1L;tqx-{=>avb82_;6Dm~NlH zl3>FE9z*h@Eg+h#w>Uu^2VNk&uy)8nkIM-0WejDv5OxoepOiFOZ`kc}?zquz)+;B8 z_dp^g>mDx$=Htf3#@!sUW&&0cszjDlES^UqTbo(=%g3Q@M7_~O+FtI|-Grm3W0%N( zgzEPL_i?>cK4Rm^Sq5Bk0su`?OG0`G1{rBq0}lrSg}h70S!E_iC*8sod_j6J_fw{M zKA)VhDQM`u`@8yjS?WQoZ;Yi_(~5RdlM9>8@9=?g_Cj4u=%77t%yM#PY9+!{5GvT= zVS8>NBaD1f^?@Vz>9BkCayr2&{;-DTt{5=}xBj{;B-IbpA&FcZbClO*qt2BRE}3K- z5PjnNr6EUycFJ(_Ldi!d)#B2yl3iDLip($t#0iV^6VWNU3Pl~Z%mR7!xe7FG? dkk1a8mW1*;tQ%uhMYDceCfG4@kvu(~ z*@l5qHjT|8!$n6((R|bQ2~Kb|YPxCS&ziRg3KW?>jk#_pixvew=EZfX897_C@14k| z&wUf)U9?PTu1s!* !~o;9 zA0od|)E*g*<1VCr_8&ZPoPtXMmYKk!I z=lnnW!F-S_vL15;vPi@PJJ&I<0O5##VkTrmWd68HgSN?Koz9E6#QfXWhxeo)Ja!`- zFIoV(QzA&uJAtD7=;Pv2W;iuAV_`8?(b&?~rt;sn5gh9lJ32aM{#Cg6*fTd7{!z(| zJc)`jK#dg^@(cqeo+{$f4E#tKRZQP$U Jk!V>|O{QhM@LSoj)k94Z*!p _a2w@FAw1scwgMv2_TwKi I2Lvd FV| zC|vYRr VatP)$*IX-5wgg?C*TtCo#p>9A_LmuYnjmB=d*H1L zx?d0Ciw?Kz Ul19W?>vonl 4w+>(cD5@?z^~xyEh+qOEc{!vpQ_Li6wF@evfJ30TX #>4M5EPKn>$a{@TkeNj)-zq;t-fAJ{LEYn+}89iD9D(S3;vJ zJ*Mf9cNS1`NA 0C z`n4R~*oSZ=tq)^3$_Iq}C|Idx2-exHOssqPukjY1cAR+S`(-K4zXrw-FN4)i*Qgcw zhaNE@dsT0pXji?gQ>+dNn=s!SFV0+2Q&T&;Rs2T(jF_p~n@7?{{44uyWexh>gA;;Y zG%hHH9Wq%b=E>H(>cDt`j8MHl_==|~j%8x%Uj)+Ntxg)-K+=l9FDJ*tBH5oa8?6r? zm(eS`I@ Rvy~`oJt$^$_QHkRJF9dWoc!&ynT3Uh$$Ag)XJU2!ukvP&tGe^i5wPR!RMnj) zd#6)5hckqN!fvr4IZI}lQ>|k!$648jrWZL$xmj+bcmJ_O)z{sI@9P2D_{skPqJPKZ z8$#*-;U~9gNp5EYFyrN}uc!JKGmO9adTf0Ln11SdGTqd hq0mDwuv7Dz?UEIIJmr-z3%uxZR#2;b19!U*R`@PbGTRwQ?oA&r302lY7RV5%6 znnQ8@rCVgkd-d|O$!PsSKJ|Dwo9@GEk|%k$z4wg%B*|r4Vf!J;!*KAd;t9^O``7)4 z+oS-+s2j-hsRx=5W6rmekMv9cXb73GulS)zR|=7$0oh;_i}q&pUd^1DfjNMUAer&Q zpipUGS%aoGRcZC;yPQkM$19ZTJR*;t1_0xyUOx!_hyDoucVqV;o^%A~So{G_Y%`W6 z^05S%yJ)FRm@o=yK_da)hVS0L5BG%_`J;HYbk&l}12W80lamjIvvq)+%Z)gUp0*Gt zR{-JHwUsz<6+R;%dPFRTYpSn76TF1@0_92icHG#$ZVTUd^8VKLc2V0shlLvqlxB%# zD;&lZHS_uNL0w(s_o^Y*88PbI&G=`dj*y*+7sn3ho}OstH(sA L`W)J{?dfP_qRP0tT&nATJ%Ka;i--zmBP&X;pm?$ zEiq-n*gp)|I~D7O;vsL~oKBWf5NzO4u!MAOV9p)zQ zf68;>w$k9mNZh*vjx|Z%!K$70#+8r*e*ow_UE@695Ymg A#*=N_zqFqmLWvWYsGu%Xy!WDvsO&k%iaHhUy4Nu5nGOz SsYaQ;_5}g^&>y zrV<+Ktp*^(L8)``p>%^#J8tC2=;F%;ZheB>L<%Fu31fvJkoq$n(085;n(=^01r;t< z(MJ4xkV=>vyd;l_!zGQSfWALkQ~xTd+&F&JL$@`H$b{SvnLEcgy{ 9}Q$vIe5L^=o$%=~ NcSj_fk88#@GjEy@iSB~-I@?-xqw=QmI*z^Clls9g{C>XhAlQt>^TG9vOM)eHa7 zmA7Aj!^$1b()c?dOe~<2N-C6xecYe!t%_histvINfO-=0ez71}$@KE24@Tl`-)8O3 zlS^!W9{m@5&>zJaP;R9VshIkkf7=ZDw&>9G@{UoIz}Ea>W T LSO*crQ{{6a_yL+~r0K|5<{8RGS|<7ScVOP4j)k5pXT+`>NrK4PpQ zqTM`NJo~aSr>($+Sqb}; ZUKbPpQj5w!vjX33NEL!1bM1r%K_ V^`=t=_s;mYIc# z(f8cwh61egFOK$~9P51PulFDu=xaZSKUo@J$ji*zg!Yq}Nbc@Ve&W214<(@aZx-N@ z#rCMU6oHTMJlgSapVy8>ygQe7Y -18HSkK}*|@B`EA-+b{`@WP7#FZ`FJe!c?p)&urY z2%HDmsvp{fV$`!oQ&V#i{*T1~nL8qg)YaLoS-+KK&l%8oMV3M|{BGno8L4PJP7Ud( zd~>{&eq4b-KkAga0hI*P%OzWwa?$80VxEcp&r4Ey=5k2)GJ|ech zfIz!+i$J=y4(jtN{vyQTHXsM@@o2Fa$cx2R{1^tt7D3DS!KO+5jR$2cQ|RbkMV|s; zxNDO)?F}m?EWB)JI;*D_xAbX99{#L_!RlH3e8=OPT=I;bDwL#QpAnypA)>S+D}t;S zq%LmteF1EAA>BIhf*L5)xH%UKA`WH2gt}6U6-j (wglX#g-*<`aDXPk%s=h|p(BWYHIQB*rXrPC2xk3e6oJO_ zas}VnA|=P7J$Q=?bT|+R!KCa4HlE(F0M6TSDP6y3K3g70UYsi+!*iwYN;p ^`}6GsDO^Oj4p+WNH|tw4n}R4 zEUsMf3`(3^ztP+J`n8CEI}<@#R-=EE6mwEzW>%i&^h9{q?BKIvhr5sY73`tfRjrXW z&TM!=T}z?sA(%|rvkh?$RYr`Rgw_j1(j0G};Od}Wl2=N@4j)kc`mkX58TRx=cR$p> zvE7BrT$7cNdqGO%f8fhJGptbZXNxNW1n@WGFKeOqzp&_mYe$( 6c+4L{3<^lwJ58iI9`=;Ts}p?O7=ooOo;lvXT! zA_6C;%$H56z?<_3lFVLWEM%eVWypLfr*wKq>8Qa-ttmbLO~r1C?{cK1vP*ip?>G9F zphSq=aUD)YlW)ln&kCYG&=4{9diT6Vl`m?)f`W5+i3fieZf5fGar}nmpQf~+Kckei z*tor;HH4qfYLPIbz#N |0W#REigHRYKz>r>)h8)jhi(Kyo%Xg-4hkfr&lhrc^80rHbWKX zV5?|HAhYY2mE -&{n<$fidZtFV*M{GH~iYwRcvy8lkU8i?pPg znzZ;;Y_W!C5LeBQ?3s))tE>%c;`9GfHQ?Y7aW*`Bc}F%N_x~FpO7%kN>;O55(U* z(~xUgbTs{p<+%{f(bE}a?6^E{HZ^bFjQh{lDgG>eDRFVwgy|M_6_pb@@7I^7 ug$>dsh^!d+Q>m8)KC#t{k>Q4!6_3p7dU6`Bh!WyUmt`#_8p;tWi zkI?wvdcX0*D=&9izjS&k+(UP7J(6y$yttsOxyhyVC(ZBII-Dw=F12lo?E#rixe*I< z^JbXTO@Pz_G7HBZLM0L9?@x62q}@YASo?Z`08_fVHy5*fw{~`|pxqm 3d|3PHQdG!_?ng<{F$My08%Wd*IdV?%Y(} zd_za*&c_8V>*VSM@oM2P-B4=0f@~K!5YCpveVO#D{yT(PLX;;ib8NZ>l5dM(4o7Ii zZ7#OH+X;X-307kWego>*hVn89@-d(GT)BtjU(#6Nh=_uufF`tX$ESh|PawNid)5&G z@ZqHkH2^Blk8KnN{Q^*{Y$H@LETt4pjQ@3em;0hTZ5C>ro-Zpf@F4ikOd)t&1fAyK zQhGUFWXbx&B1%>q0tT+iZSy+y=IJ(r 7v`Nz671SP&62~>O#WPL*Gqx$;5*nf zK!CaNnnz3dvpfy>o)o0C#|p`>ug=>Wj2F0>X6n3=*+@RJ%pB(3y4e99AvQs61+(v9 z+db?WySMHXd1<*-H7ujMeOvtYjUBe1RCo(u71H=R*p!FBhTG8xcHmvhn|3liH(_fa z@z~DzR4?>JoK zrtjH+$AUMBUH8m2Ks@)|;9;`!)F;51_<+3yGM3?`L^>DoCJr_eu)xwifetne9*1;h z3p6mQU`fxh`i0v~ii;SrI=B7*ypUab!0&9lpou^16IF^GW&WDzvu 18*FrhK`84~dQ%qbb09a^*+x1a z2sjN*tqii_31Bs-UhsS1%Jl}*&e5Fwyj}2_Ls8$8lK zuQBNhJMs1;UI`e$ z0w7gbkPxG)! z_|=NfwDlncsO$c3(knJd<*s~1d_0cO*R6auSt}%DeW37(RYD`(z^k6GsHzpxEp$N} zYv+r^K-kae35A&^{jW5thUCV{h*6o=r6Rof0@gElH1MrF-d9hU1uV9m$UfB344dcE zg3!I%M@*HSC2fprRPmNr(SoJ3eD_1MOklTpFK~}d1@&d;AsLBD{<|7=2g`}N8*AJr zd406X>)}G-#K8&W@1A65TMzIJ(r-75dFzSVe>euH_B+@|%nJ?+bPNpEM~eddR&&SZ zxJ%OM=#K6x#zbWBW8rKG;x2c}dr$RMcxSW8ISszMh5SC86is(Du?leWg5m`l=DR v{z5X5tO z3M3-mU1BL3!1pO*+7}zy8x_MW7+deOJ$?Y9xn%cC(k& inFR6G2gPywV&c}Y1}GMXom3b%1d$oJMCKkW|{P#*0qI1t<6oY zq5HRt;>OgI|3Q|m{XG-d2(1x}6331o*M!^*XHZbk)a6W<#UD~qV1z0|hKL;` >@5<7CC8zCY40DFy z*@35TASoM21(!u6Bi0A0vr6_m2?=}yPwh{tPqe`HP%22P0hP}Rvz{1uLshW%FqP+n z3v9&B-8V@e5L;^$GQK|53r!3=;M2?c2-X#{EnGVetcImYFk7GKQK&7YhYo8djUPp5 z@Q}umUMBv`(SAH4x~YQ2pu0b2kg8%0^FNkbz~bmQ?&p9)+%{&WX2 uj>G(5(a7a&-WkrIy{iXlR(&bBA1Z<*htTGn~BD?#PDFXcGLQC`R>1 zD`Gyw?VZ8Fwb~DR dh7>2bSK>(0yOA}ez8kSOKItxmdto$Z zA0;O8!?L1a9rB@&x^4AWb=w%4{)g2KJk~_$K&DsC&9~=$Rx5#ngvB4yV6pJKK`x_F zt4fXjJX5z XObV}ff7Vm>eX63YIyM{2$L z_h!2HWqKmEtCii~(vUR$sjK>}N@0gaU$?$_6N98uyp5mv5)wsi<197b)aO0E1{4VE z+#6RJfzPptfUSGzqxT`t25$y70iyJKxixS=ipFIn6ZJfwTZX{&js~3H3eRo=D0u%2 zD`+D(*N>!+X*A|gD|7?kq%G;0`!|bAU{cY2MamuE8;HA@izeL7&Suys0q7gacJ@pS z6y-a0v5FsMhm5_G%=gjrO2Zx7(EMx@^9M(LUzu&ZL#=h&lMj)gI(Z-&4_Ln9z^;8g zM67f=?XX?tv}Zy-mX&4zA=N^kK3)_-yRuc}8$2`Z$B>O#k8U#n>h$SznCH=iQO7a| zoqC_;7Vy`0tFDwmKlT#rA{fwT-;%`WT(6_ZBRJdEk70~ONc>uu6<8)Z{ly@MnJ>Y( zA(OLas(-u(Xl^-Cet}0CM04(J4^Cnud)0$V=AvIZEFTihph1WFjO&5v!`3>7d$EJb z9O$fu${C4IrKxfS5G)@H3R{}o2~K9Fe^d2QWnjFJktO@St2x{TE2WH)6<%wO^UR@v z&G=g1-vTudxjAjgc3_UbV}gdZKJ(Cip|q9X`FL+XfmNxVJqL7*n6Gs$X7z3bIv?)2 z4vowvJ)%$n2y7_4Jk2JW@Li5Wv5M$EmW~mzV-YOn6}Fc1uP;;bOXze(q~&m7EeKm1 zdb~WuTmGfAe-z*0#&!}W$*qlY3;K`x2I+iQsTtWEy`^N3si#!fAiB7`J`%^GekQ#v zgrwEFf}zMaDiCV+cu`}Kpg$5$Sl;=3kmJJVw(Ia@QPjmUiwf)%g6-djhZrZ0?NKl} za=mQ-WBnW+I*LS@7)60v(sD|M_OuHDO(c;?BWn0h=O1Hk+Z)G`$#!C`Uw@A|aaH0# zy`0ogo21AJC;EQVwu}oVlP8IgicND-mwGt;Fn#U)M;%$dm=kk(#vh+-zK_p3&> XcBrUArd8&2+IPkh9;1&_7YJQiUg8bwrCBv1F`q=NMdO=q 43>*duyaKne=ryfzgm>(ZbAwoII#>Z;) zdAWHNtT+!OCO(?|I`XP)+)doH#_+lQ$K2yQif2M8Z{zCxNo7Z*mV6Yqbh^v~t+=D8 zxie9|gBk^$i&-sdjdjc=-R9Ou 5fC=UhQSUp`xfLW5xH2 zmWFXhm@$OkaPjgmJ*XSwGF wtzH8vLb5nQV61>UuA@XK<+|eGR8|`ONa&Odr*S zZ2$8zq(w^X@N;=6V=3eLHNI%sT(=)~$<`j=zHj4X_P#rGMkg%gv(TlR)5OzNgshFL z0r%=M#gnlbe$V~RbEB9KZf+>O<8eOW*!6yt;Fv*URdFXP)BB*>74D4I^mX(msl~iT X8+*f-^tBok{CDn*nnIqOvHyPnGuu`f literal 0 HcmV?d00001 diff --git a/bsp/wch/risc-v/ch32v208w-r0/figures/11board.png b/bsp/wch/risc-v/ch32v208w-r0/figures/11board.png new file mode 100644 index 0000000000000000000000000000000000000000..9d454eb9df6d749f4a579b82efe9bfce301ddfe8 GIT binary patch literal 573060 zcmbTdc{tSJ`!G6;r9wio8$~IUBH0ZIDf_-Q6=f&;*k)`|lCdNujItAxeK+={Y+1|B z*!QuH*_=<`-}imr>zu#NIgiWbvpx6o-0O31PXC e>FDTzYkEd{dWL_4j-HW`k%95w FJKhV(BdZ_)#*u>P#+``hz&i=(q2S+DoZy#Sje|SJ( zMC9wJ=r?a;5|ch8e@yxGIrUpsc1~_yenDYbc|~PabxmzuYg>CqXIFR6&!ORw(XsJA ze<$V_aEnXJE30ek_`Usu!=q!u3Gp9ZGytCeYy1yl{|~&_0K8}c>eDg)!;6O2ANU2c z(a~SN!@#a)$oR~Y co&y(4 zFWlJ-D7i0SkVfl$SWL2h9Z$>R9hN_A2hJCu$^9NXUA`3)R+<)(Hu}cuwyGS|I0lp! zkBp?5Whm@pms5r+U?qg+a^<-@aVFdkqan9(85)YWkD6XSIC4JgR!eqHn);+iTa9&I zt!A8CS=TlDI3!Cq=TP0F@hJ! q~b$(P27DOEJH R<-3ClhS L17ebSa{a$ z!Tyb8yPYyUf9{o;}Xl?MWk~dFS4^v}gFFF6H%FMrGu!WRyr~U@307dGk!(CE>b+ z!)!y;0xUB>N7Ut&l=Ah(c)Aq&npU*y=nbC!GqI%uN(+TscDFWtHd%DE!EzMG#e{05 zhazuhMSnikx4GwXFUU-+U7Y#+hE=Xx9-sdB-BXaP*AL++fj;ruD{ou1MB;zKg&BwH z#Ff>Bz%2suxi*&Km*zM!zLg7(S;U$A=*sc_`)-5te1%OwsCUg#Pww4peuVE&tq=*f zXc4afajP5onr$BqGd|0G>s2W?n2}}I>M_a_czX)s)!(AkJg>Sfh3qWTUDweUN*JNh z?GI!Z_lA8}Ssp<1*)1tUn>6I~vO=MISM9#%<#`x6`<%QHSv @URn>5jk~=N@jx zDDGoUu`&{*GxR98Xn>EIcJ8Rq)eCMs(0EUluU044r%&%H%1P9HyO|d}5$^zLb-v^$ z^gc6U$GAuC*+5E0yKf<>+B=PUk!{QH(ZV!ZUM&tM^Y&&5H+5UbujK6#E-7qX*Hq$r zJ9w rK9}jG7{K!?1@uu9O?YlhWs*S6q05EE(mX>i0EcvY+JLml2U` z^IbD$3MEJNBa%C^F&vTN7cE(fPTp zKT>B!iQ@nA``6=VJC*}d4v_1jnFZ{xnmLsq>M`JnD}PhK^3OI*-w|n{yl;Lga& H3oawWrfm_PhDXQm08<4_TE28 w{$xp}zvAU#| znNv`*q9=8ioG-9;Y(Mjix|{bsHv2+=;Hbr&?vv;xy_pb3%Au+iq}TCe? cnD{CgHu0OaphEr|le3_x=@`tYB`|o6o zoNb-f^^K1|3r^6VQD!mH9(In6i)e)Q3C y(ZS zhmR9qc`0wC!GrVKXm1B#%<7}Kj7+?Op4aqg4k#7wDlQ~Oj;q>W3ZC?z2phzzcHI}x zsz?{%q4QpQ;^~#xHW*JM4>Iddf;Y4DO{T6Yn40)jpZkvEmY2Dr(3zERAd{9NE*#3u zp;zw}bFS*_S`6b>R>-?3om0@!wJayker<& zU0!zvw~NFB;-$6@S!{+rm!m)b2xKTaH^laH?zm5PaL4pe!KaZftUh*6d(Avi<5_xp z>|sxd<~5=H Sa@heRr=T-Nied|K<{{@+ z%>S6zq(SPk;^tyf72gs!8BsX~PUgzxsLV_qWhBU3KbcX!;+Fk@nCg);tm63P wWVJtq{sOWlsWW* zsts!4nd!t+Es6G^B!iRCcqZR%=MP34$#oyeLqP=x%UNz+N;eoQFYh(ec|BY-X3m%E z8jll;S^hD`tUz-h1Nqbzr`&Q8ccmI1i)_@c_P-n^Sd;l=%%4}FQENfWKu-}8Y{DOi z{+WU@Bj-a(Kdsm$O35E^T7FuLMKzn`O&)S`NE&Hx^j``+;^0f#Ix$RIM=BI7XKc?N zH)r)jw-9#Z>!N?lX7mflYhsu* U^XNw#?N91Nn-JlDINcg+PoZ0(V1mtwFbe-WwiS^Yoy`bf+ zsgs?!E}6mSLpl`}@tTa4h97uTY*@eKao+I*r5y++8)m!xYVH~exBoVZ>h+i`KZ5-r z)X(!#9$2_HmG$(CpFAQ&&lMx*XJZa;f=!| 2J>Y*FP4Q*c#WyXkgJ_V_l zGv8E^m|y=;yQBBr=cEX;2Ng)$SQ?!-;`OSBZV;!aSQYkQwc%jPZ