From 71706f0600732ee2f6730511ac13bf9ed2c101a3 Mon Sep 17 00:00:00 2001 From: caijie <1250648467@qq.com> Date: Tue, 24 Sep 2024 14:28:37 +0800 Subject: [PATCH] AP_HAL_ChibiOS: add VUAV-V7pro --- .../AP_HAL_ChibiOS/hwdef/VUAV-V7pro/README.md | 608 ++++++++++++++++++ .../hwdef/VUAV-V7pro/VUAV-V7pro-interface.png | Bin 0 -> 56034 bytes .../hwdef/VUAV-V7pro/VUAV-V7pro-pinout.png | Bin 0 -> 114542 bytes .../hwdef/VUAV-V7pro/defaults.parm | 5 + .../hwdef/VUAV-V7pro/hwdef-bl.dat | 79 +++ .../AP_HAL_ChibiOS/hwdef/VUAV-V7pro/hwdef.dat | 286 ++++++++ 6 files changed, 978 insertions(+) create mode 100644 libraries/AP_HAL_ChibiOS/hwdef/VUAV-V7pro/README.md create mode 100644 libraries/AP_HAL_ChibiOS/hwdef/VUAV-V7pro/VUAV-V7pro-interface.png create mode 100644 libraries/AP_HAL_ChibiOS/hwdef/VUAV-V7pro/VUAV-V7pro-pinout.png create mode 100644 libraries/AP_HAL_ChibiOS/hwdef/VUAV-V7pro/defaults.parm create mode 100644 libraries/AP_HAL_ChibiOS/hwdef/VUAV-V7pro/hwdef-bl.dat create mode 100644 libraries/AP_HAL_ChibiOS/hwdef/VUAV-V7pro/hwdef.dat diff --git a/libraries/AP_HAL_ChibiOS/hwdef/VUAV-V7pro/README.md b/libraries/AP_HAL_ChibiOS/hwdef/VUAV-V7pro/README.md new file mode 100644 index 0000000000..59063de301 --- /dev/null +++ b/libraries/AP_HAL_ChibiOS/hwdef/VUAV-V7pro/README.md @@ -0,0 +1,608 @@ +# VUAV-V7pro Flight Controller + +The VUAV-V7pro flight controller is manufactured and sold by [VIEWPRO](http://www.viewprotech.com/). + +## Features + + - STM32H743 microcontroller + - Three IMUs: ADIS16470,ICM42688,ICM42688 + - Internal vibration isolation for IMUs + - Internal RM3100 SPI magnetometer + - Internal two MS5611 SPI barometer + - Internal RGB LED + - MicroSD card slot port + - 1 Analog power port + - 1 CAN power port + - 5 UARTs and 1 USB ports + - 1 RS232 port + - 14 PWM output ports + - 4 I2C and 2 CAN ports + - Safety switch port + - Buzzer port + - RC IN port + +## Pinout + +![VUAV-V7pro-interface.png](VUAV-V7pro-interface.png) + +![VUAV-V7pro-pinout.png](VUAV-V7pro-pinout.png) + +## UART Mapping + - SERIAL0 -> USB + - SERIAL1 -> UART2 (Telem1) (DMA enabled) + - SERIAL2 -> UART6 (Telem2) (DMA enabled) + - SERIAL3 -> UART1 (GPS1) + - SERIAL4 -> UART3 (GPS2) + - SERIAL5 -> UART8 (USER) TX only on pin, RX is tied to RCIN + - SERIAL6 -> UART4 (RS232) + - SERIAL7 -> USB2 (virtual port on same connector) + - SERIAL8 -> UART7 (DEBUG) + +The Telem1,Telem2 port has RTS/CTS pins, the other UARTs do not have RTS/CTS. + +## Connectors + +### TELEM1 ,TELEM2 port + +
Pin | +Signal | +Volt | +
---|---|---|
1 | +VCC | ++5V | +
2 | +TX (OUT) | ++3.3V | +
3 | +RX (IN) | ++3.3V | +
4 | +CTS | ++3.3V | +
5 | +RTS | ++3.3V | +
6 | +GND | +GND | +
Pin | +Signal | +Volt | +
---|---|---|
1 | +VCC | ++5V | +
2 | +TX (OUT) | ++3.3V | +
3 | +RX (IN) | ++3.3V | +
4 | +SCL I2C4 | ++3.3V (pullups) | +
5 | +SDA I2C4 | ++3.3V (pullups) | +
6 | +SafetyButton | ++3.3V | +
7 | +SafetyLED | ++3.3V | +
8 | +- | +- | +
9 | +Buzzer | ++3.3V | +
10 | +GND | +GND | +
Pin | +Signal | +Volt | +
---|---|---|
1 | +VCC | ++5V | +
2 | +TX (OUT) | ++3.3V | +
3 | +RX (IN) | ++3.3V | +
4 | +SCL I2C3 | ++3.3V (pullups) | +
5 | +SDA I2C3 | ++3.3V (pullups) | +
6 | +GND | +GND | +
Pin | +Signal | +Volt | +
---|---|---|
1 | +VCC | ++5V | +
2 | +CAN_H | ++24V | +
3 | +CAN_L | ++24V | +
4 | +GND | +GND | +
Pin | +Signal | +Volt | +
---|---|---|
1 | +VCC | ++5V | +
2 | +SCL | ++3.3 (pullups) | +
3 | +SDA | ++3.3 (pullups) | +
4 | +GND | +GND | +
Pin | +Signal | +Volt | +
---|---|---|
1 | +VCC IN | ++5V | +
2 | +D_minus | ++3.3V | +
3 | +D_plus | ++3.3V | +
4 | +GND | +GND | +
Pin | +Signal | +Volt | +
---|---|---|
1 | +VCC | ++5V | +
2 | +RSSI | +up to +3.3V | +
3 | +UART8_TX (OUT) | ++3.3 | +
4 | +GND | +GND | +
Pin | +Signal | +Volt | +
---|---|---|
1 | +VCC | ++5V | +
2 | +TX (OUT) | ++3.3V | +
3 | +RX (IN) | ++3.3V | +
4 | +GND | +GND | +
Pin | +Signal | +Volt | +
---|---|---|
1 | +VCC | ++5V | +
2 | +TX (OUT) | ++3.3V | +
3 | +RX (IN) | ++3.3V | +
4 | +SWDIO | ++3.3V | +
5 | +SWCLK | ++3.3V | +
6 | +GND | +GND | +
Pin | +Signal | +Volt | +
---|---|---|
1 | +VCC | ++5V | +
2 | +ADC_3V3 | +up to +3.3V | +
3 | +ADC_6V6 | +up to +6.6V | +
4 | +GND | +GND | +
Pin | +Signal | +Volt | +
---|---|---|
1 | +VCC IN | ++5V | +
2 | +VCC IN | ++5V | +
3 | +CURRENT | +up to +3.3V | +
4 | +VOLTAGE | +up to +3.3V | +5 | +GND | +GND | + +6 | +GND | +GND | + + +
Pin | +Signal | +Volt | +
---|---|---|
1 | +VCC IN | ++5V | +
2 | +VCC IN | ++5V | +
3 | +CAN1_H | ++24V | +
4 | +CAN1_L | ++24V | +5 | +GND | +GND | + +6 | +GND | +GND | + + +
PWM Channels | +Pin | +PWM Channels | +Pin | +
---|---|---|---|
PWM1 | +50 | +PWM8 | +57 | +
PWM2 | +51 | +PWM9 | +58 | +
PWM3 | +52 | +PWM10 | +59 | +
PWM4 | +53 | +PWM11 | +60 | +
PWM5 | +54 | +PWM12 | +61 | +
PWM6 | +55 | +PWM13 | +62 | +
PWM7 | +56 | +PWM14 | +63 | +
Q`4t2Cre#v`l)#<0kquvZ3WMhy>{qq%l~F-M{A zHt$)F?q?{N8=6!H*iE#4-AJ-G0msf0_2}jlDouHkU>3QDcQtK^(Qn*jSZZ zDZ6V?akQCC%xj+~`|jox$(No%1m~C%iXm?sxfP_=k-Gr9I%M0I<5#P#h-?ScO3e|t zx#Or}biH8}F-G)YoJ^_;F{;@2D1q`0JY~ZZt=<;94WB*X3yM{D2sJa|%m1VG_jy0I zM;@Rr|64&JGJD}(VZ YrS36dZj?m?*wTiA`gDMj@ z(dfzI`<~!IRq_#dZMQwk*xIg&sw;b5x;=9TcLQ}4VdVF}feu23zYz;WhX3Zo?0F;I zioE6YuYT*$pc0j`XOwdro6MtTn;ujgh@wMCsE5|^K!Hfls`UM0QB0~E>kCFyss*l~ zmXS51cFm^w9TUopde0GA2L hs-7incsfT3mx<2 zFYnW|61j`C<`JV(`D3%$aUgwQm`3vg;>O^QNTU`t-e%Szv7xZ`WAZ~(^Qan=Aez&8 z=2L5Sv771DW^Ja!=nleAd>$sJ`gp6vDf8wq2u7vcw`Fe#aebh9992Xg_YCHv&f9Wr zI+bM!4W;#&!C$ <)CEFA8pVpwe6Z*HR z+M~nj*`8b0cJoF|qR1) 8Y_!q{0q>`O^%E8Tci`klwlZfnBka0;sY zuAtc(tZsBgV{_&1?|o{9Qia#uhZh@UOLi!CJI}}!w`Q0l(>_6~%)s9`<#cZ^lb!o? z6KAI3a9iZ=C*K?bN 4-Wxdv>Bj-Nd<#S=rwqHWYji1iqb}N?KSvftXCc8U2YqLeonp%i( zGu8n0FbD<}b(J|BEQkbwM;@qqfouvq|4xP+62-Y0egpTS@QkdMwef7_xS!IIWLCBa zjJ+f(MJGRH*RRx>yzGjNkum%9%xrVWyfRPyEyB2 k{!Zch3jj~kxl*T^GXqws`)(!+N0^&=sgmdYmNq- zI%2`)ZIkH95)Pw0{^a+@Na9Bwk{-5W)_evl1t$wt-0u107^9kp7e%1)T`PtzY{~tB zCGTiru =fIqFWCM7YJ*{#vnU9BU=W$V4=_}U_iZh3-#uw8H2DKScF)>d^6#%42 zPQ~_Y^L53voSk2(jJU8DcMvY^MFHK;N0x-f-)To7b{p7hqg;fw7(6%@tjOFpx|qI$ zvR%C?s o zi;n14NX`yF;b#yPdK^V&d5 5(X62E@(7cw>e^4`>yO!A}ZKlAo) zOgEs2b-&sJeP@|$vMp_cGtV5!<-CV<;!O5NDSpY8J<`zSdhrYDoD)V+6%Oi!kpXSl zjT0zU@u;X0#Fe9CD_hswO56vHk-0FHC~x9rovTrli1r$O8QdJ7f8p?LF;#GDS!i$J zJ&p4qrB&x@6xq*Y$JmvhgT`eiO$|C&Y!cDPVeTqw3#JBnZEfiUSVj3RHBB0Re~ZwJ zFtRtj?aIXK$MxuvFaNikBswuN<9}y>_rG;i;N?She2WgloGBjT!w*HsSX5xd$ITZU z>(z$Mz4W0r^QQz zJvSWP;EgMmwEt`CS)`SS&l?(n_4ck^m6wHv=nW`3BOPMv0XLxcv47_@=l|c%3jN!b z{LgGPgcS7rH}~!Du>YG$GPaxUYS$I~UI!>7GcWI!PA%eWX_KS5oK4E!s*V3}wEjw= zUi=Udb%c4aLjMxWf0wcTbvd2>U+houFP;79UzM@%|I*;b|6<6$%OPa{OH70e;4iBn zbin+TJA@AZ|J5p6B1kC#!V+_-Oo(wGmdC5q&<|i}{-ZuI(q%$Lz5Ok7jDSI=O$JCV zRnntO4nX>;Ibblq?LA#W_g_bxgl;-BK!vU(U)0%#z$xUnspljiw<8se0pS^hA;0GI zJ6|$_{(qbR-2E~ksP!{+y_%r#PphTL##e8$q+l{;Z0>*5F4m)CjR|K4C3+41QPZar zA-FgQZWMLfp=GelP?!?mh#{F1LS1~Q?K f$OFf1q=o~*w2@EN2fGs@(6sg8mSCWm&u M|pG5WBSPO@juw0L(E$xT!Gtzw@U}eHlQMH ^#ttAA g?^=DX@vwP4YF>6jvD0%$MiZ3mFV`E*47J_etQ^e`(eJ0@6FHG5_ z^83)k;F=n^C2*rjqyq~`Ya|$s!qXxZ3_Yd0WDUx@vwfj#AK1WYy~MmrB(7h9z9j^K zbAry2_@)H-t@MOUO&~yaM@??(wMVTA(B#FGDPM?Wg@DGO^cgm3hzf`_M|~r)dKbD| zNH@X_z8uE-Fn9`Ffbls3;d7jl0Ze>6M`Cq6$);CWjHtW#()t*!Z*JQo0Yw<*sT@QC z`;%1QMo>(Y1F$*{aA91}ZtcJBH}5!PcoN3O=028;gRz_r!?)7;NV4ssI=J|DT8!0Y zWNS5(BrSa*SC+`KP+*;b5(2h(4PkX<%TEMzX(yCZFPnbjt!kjU){x>$O|2bI+M?xp zBE2jsP3~46{p2eSImZgZwl3bVx7$&GPnH= pm0^ee`bA6j#(QSw4 ziq<}$k$qL7 !&aX<#u6QnAk!v&3dd1_a6I_@`-R&=@IB$uDLce{%M z^l{#o!_nlMx586YUrNo0%FWa2t0RSj#*+wh|5k=3zGRqqJ3i|!wNiFM(GI6v@9xfQ zB2rCWL4*gVUT^|%ES)YtNSfF3j#`HVj`D+HE`vV^*er~nf3>413$AxT5Q$3ej{6tc zw;Be0R)h>JSKfw6*}<&z2q^_(C#J@qB{TrcSUL4ON~KTJ Fqk-rum((A?w>m;Y=KFAT$f2_i<>877?*#}h{av5Rn7*#kxDG&ByIXLW=s!j@O% z(_*F1X03BCbQ~BGL@?>GNfeL>Cp^+no>)Cxng$I74Tx64Z(4t%0JpyYy((@vU~b&2 z9Rm>1v9G`>#|PfI0irRmksay>fQ1W}yxjRl@0FNWP!B%re k@(5rSPVO8M)c3z z352a0ON5 GOQ!%r+CpoApS(4Hv-_~Z^Fkl;z)aWj={R@N$JOHdr|N@jlpia8n~Xkd zkw}FJICIDkme1(5IU0QP29mnEfKr$B$Ym0DOT8}I#&YfZvh{ 6Za^5- zsekw_70EJ1qUI^C;b)2MvUHKskEvyk)$F;`0JKtiJ3#mVH}tBAN2I8?Y(eR4!^MpU zjKb7q>tgDHy)tiP-hajt0q+z_e#QZT^&)#{044^Z%=O3sPQRt;3cA)iV dWFRynXKSt;$Vd`ffOD+@n1X}==DZBl4Tp~Y1n?L+q0C?#X}3EtGOE^1SxEG zVKKdg`VO}9=TeHd@L@;0LUP%HAfP3AlI?+KJ!vp$Q4Yiw);c}2%ss}I8ND56H!d=< z_!RE^4|NIbVOt*RV3+#gm(%`qGOwqhS?s+dvWq*?RB(pc0=9H{kXnbx6@@rddCDfN zHp<%pKbSz0eR5)+m!pV95_|}a2&duonFCK>Dg(e=(?7oJwz8ohY^ATCLnPTgm8!6x zfs=YWAZ(HIA^9~)``zl)LN7DQyU69PF?5D$)f~RTbe^u}?6O?;7PsF6>4U!Okt@ y&w6;~r%m=@A?NH;nv=Y{{6RqnXincyt9@7$#BF%*f?uIhX*!MeS=`ky| zciCCUj~-jzI8OSW;mfmFX`Ksn^bYkuQ_WILAYgzQMb(F(Mw%9l{tv}igPE9U11TBo z{yITZ0nJO&!8XL(Gfh=1aGnywf&wej-b(9QShL=8GuPIAP_;I%5-`PHp!SH(gP*3> zFLv5IeXS+$xH$d%OBV~tn`fGO->CR|R<=|;hfli>jpifA&(ZO_wYIP|HPr~udXD^Z zxBRg^N9>|{O73R45+%P4;vY+*5|Z+}`o5Q`uAQo5*F$;PLX$lCfGlJFovyKHG1>zM zh(q-YMFsT2&a_t~@|La@KKxbT_=~%dPS55UVl(H^s)Ue8->KZGcGZEW>Gke}=kEot z@^rC`UU1*JOC_pKnq+Ra?q1$ivQRkitLb#j`h#kZY9u2UyvO$Hs&8iROACHkQ1i}E zO 17%^h7rbGAS{@+r|kaF1V34Tg=qfkoi#){$Asz z%f2_#+FY^&_A$?G4OI`8I+$oU&^7w4O9?&DJZqt)Fd^;BV|O|u=lW8~2?pBb74bq% zXsZ7R^ne%_d#H}oeTU3mGyh3n`4C#2Z^t9TWJ# WFl+C0&P{vsy`s6^op59MMt1w(-yx+>w<7u5Q@P`gZxzgv?x{1H&KL zpwSi)h=>uwAL>)q(5@e=4WXj_R5zeGFwR8j0di7z7r$7%!RpCTdT2_y)cD&r#MiXL z?39iuERgi8v!a1Bm=>QS?H7B#kv*MrDLs6_1m4E^YlzLmxQI@e^U~qH*9(bib06MU z;A;GgJtsdJ0Q DqKrB8o^LDp@x3(fK;Xl=R=359%6jrxX)^ z4bIGiFPc3;tJoNRb)R$he$0kAjzqbQZD;!0N0w~K*%c4expqa!sW+(khRrcq2_veU z4~@wzotsM%0^fxW>`$ufiTvbFQoN$%=GY`gAsAAG+&0>q+WzW=v+C2wQ$vRyD1WC4 zJXNSne4NkVLrU?(dpH<*?4G(YwG^ N&oU_S#7bTu~}>Y0it`eGL_R)5JR>^w~zs z7kg-yhUmidnwmKvpBp}0)ZhM*DW`C-&YC)Kn>#etQ7cB(eL&P(Z$; 7ziAy zmPu&Pt5B(14A?k$=?cr-Sh_LF(VC?^k}gZom6b2pbnU^H6!XM_1M^ zRd*y*wC{j>I;E|(B%{CaLJ-^JFBn&jqbRPt{J+i!bnIyFCrfksaHi0xm$^rEMk29c z=QJ<-)`NHGN8i|dD8hsuZ0_O1`X_|2+xx!{@aPWBznu9j>qB|CAMQ)5qlE(q(DwS# zRThc1yXKYUQc*rG-Wofs^1n?Yt#_&M$4xiMyIjP_sK{Z!m^8!#$7`1f)ynr~XNh_3 z+})ItcrY*gTh0~=Jdzr{d~j!Xl^Ne}&!G3bE_5L72_Zat`fcTjeDUc{+54ViW0vF- zLn{sH64 AG0#6LvMZEdC(%z zy-%|7wUi7XuDdBH06Blq)4C-L8y@=l)lDysgID_oHdD8B1-;L*CK~HFpWhM*y4Ouj zioX@M`RhYRMHxH-^B7SGAhn};d4{*)bl*)0!PhOdAh_-(+zlGgv<=7GZBOCY@mEc* z)ulZvJk6E&1ErT1Y|eih)Qn*fyRv#T>4wyA4Alps6p?zqBL+I0^%n4Gye=|3Uc-S| zge~!Q9r@6rU6qUCVYZYb%H~g;NU-ajCT9zi>lkcmIXB}3;UPkZ6l0SntPK`fah_E; zpP9y@(OX?50ZaTx0}6I7#7c{F$&qNBb)SyQXDeim+Y%UesECn8um7c?cXsk>6P%_W zoEM-DA1&lw4SS79A;6;*a6 q+2rtfII(yT4?d#t*r>u${wNBC-bD9?ns5B<1!#<{+($Tc-Bd{Bld> z;W`>Ls-kXqj5^1(`8hMt8{?N_K3%OfDyDiUs)HR~wiAui-F_$WB(7ConK_nnYSW6i zac+ReCSFhaMX~rMRVpl)1RccS;5gl@&M0)+oxO9_0(`H#15bfLZ{cDDN2C-jadb-W zwTj4j!1>Iib~!s3QGkYW80pQ-o`9NYOV5D^gQM9EX~G_11M8dHuS6Qjj&URnobibx zx$_l +7ecuTQ`Qm vFSu7>QVa*6+fGyXYr}umQRT?TFlRw2bbCmZ&T`iduRNxmDiu z_`6~S*yy7eFu9o%i>rqHaavLP5pwbGIc%0e3+)!0VdExU+oIQ|Nbz2a%1hZ{>&V50 zSk#yO@QkYMy)K^|XN$(01gXm|o5QgQ)<4~_Zv@9TM?L&R4Mmuc+XHSd(U?QMgv6PP z={fg!>+zoYk)||uNiOFmaHRev@1mD$FuXdLLtRvcpNqT^2Z4S5d#a$Az_4>Zr-s#% z;eLWUf}X{ nw;i$qfM;% ?_x*T6aZH==b**hM_N**LT?pVIxSC$30oX_N3wkn z4&6W&dbQzNaQ1cWbK&e=x_-J1i!Gi+^bSp15|0c+A)w4qgG>9`{k&z;%wy>Y)${9 z$=dHwZvV=D%TlXHr_1ZQ`Gbg1G_ZjjfjC+u<*!;bs+SYLIaE74JqoGR{)LWg{x2pr zrqfSJ==Fbed|VSY6zQt(%SN=<8&ogeA7Z%}R}_~qO jpc$g8I#vzDF@e%_~KDcR5 zn$Meduc&Qih@N%oG7(|RcAIiD+DVk@5>T~W+&J#J@-!>*Bn t^2>i4A+uLLmve=S31sL``YA zcGnV|55u4tMEZvMeVQa*UmV;j9oP(C$mnW? c)?nMcg1}`6n z(b!9fW}a_!rJL;}mka$oM-P&|Js7`pR7%o=#crRmDV*8G?0L?iZi%sxghuaYVSJwm z&t(*k93zIbrg(MV`Zo`FI; (-li~pXOT@2q6lP_BUfscG%&tmxRJk+yXN3(6 z@HF2TZ%-kcn30zy=M?HPAikbFJ AsclOcutRi8i0+}&+_S`8xt zY4E^*lwl0h((wMASA0@KPC`;Jg`O0GuJv_QO~iA^LNlCt+_U$bbJ4+gRs<#J - z 9=}T$$`BP)#{@O&G>u&zHB4bT3|Va;mHm3uY@d>7;T`{`#}jc}d~} zPxd0)GdhVSaVpyN^-g`4QFsvay&h`n@)YJ*8tkT7^tbe5JEHSrS#i@pDS_#sq*5d? zj{SnB2P=|oh-3Qjr;gA&65)T5K7EY%(s~0Z`3mlk44#wc@gT$A>6>+}#U)>cS0J2} zf|8(+^{El_-Lb$04v~m6sex0kHJ^pPIaVmnp4g=!KK{`)(H^<;j1fj7gFvNwC#6rb zV0zAh(K_?62d_F_zh5NrQ60XOSm7!cw7#u70Z-nDmKf8%rdx2U;TA%(FKj9b%8A`= z1l_q?7LKokU0_n;QJ)q6+sl1&GJF0m&lTRLcUpCMM02&*f|2{)SoBi}qYGV|C)Cbb z+>fQ(I1LP7_HNXpgBRKpmfc^shCT;6YJ%$xwF^!LJKm*IeIHM3r#HJjA%bavtw0G? zC`tJFMf-*zXl%b&zW{RrRu$>NS+R^SHmDqhf;oq+4>^weK)XTg(|54k!IdxQ$3_HC zeORlzxpC3a)^6rgAIYbV>;tdARyHv!Q6oC54B=`FW0#b=)|$oQ?pA)}$^cDMOl@g_ zS9m=o*vM*^4@74~zg{WGNvB-WU9q0lb0-w89d2cFDp48aQv2E44pk@8&5>{5EKtz3 z(zddJ?Aem^E{De^YuX)Y>$P(;(whDIFx?7IF67yHnYtmUqR>!I-Z!>XenXA!$N9zB zyoKqw+)DT9Z*l7rCaI+0dTBP-g&)IkZXJ9@ort)Gucv!&Hrtw?k6g;@*BPCT`OJ{} zct?-nWbo?yM`T#rNGC-GYk0t(JH4hR9(_9MA 0fquz0vfWVJBKGWw=Gd;2K`LcsHNysXEWn;e%HCxG)AFd 1ytqboVvB`_Ot4fc}a(#iGwi9`fpQ>WG; zer8d#mM#4QlG-{$eqo_XvczcJ7Ki>}L2RKky*_Ugcw!;zGdw&~v9I9OifwmZE}6$P zukN`yxs@54nj5c-87!JidUpBSB ^?@z}yNjq}hnlGKlr2U(Ajl7O4p=M>xPpdJh7yb_En= z%Atq(W !?jY2D6tuxh1=a1}o9WPx`(af4dJFFBb*r1%v`7H+{va0CS5G3|{#-Ef z08i3q*%jiOpWVoZkq{C^u{?F}#c)|UgXv3nKFIHjLN}&8P!Dj0aH0mBMW;D6Z2ilE zNf2%U;0iYq8_mi07AW(KD^Nf9+wMvpAHHa$B#ySXh}Eg%?8<%k?3z{~F*Mt_@2 z+0G66p31gPhHQsEgBU> `$Za;!6q$(+mjdCO3 z+AeHneHDRwP98$mg9_`73my&Tc59p4CDAQ8@rZ~YLJ@bn5PC+B7 GyER?BKP(mwc z44y6)-LY((*}(?$*45Uv&F<3vv`1pQg%4h3sb$%InILX_Usf_}UV608&bFZQGT9AD zTMhVduzLGo<}$k9|GlB#j+xTj`l3Sh(|)p=Elwg5upRn-pt+%>C?V$*eCmIIEsZVB z!>ZSqL_)Mb2)9L3?{+dWjrI1)fhDOm_hGt;javv!_jp7$PQPl+IGo3>p7X)8Vop+U zGRR4w1QSst>a +x>oHn6eD2VXXoCisLhsM3| zyd=N`IS#D5O@=JLUY%UwaGJZ_!>a(_Bizt%1V_Vv>U?-GQy(!VC3ei5;n4b7`=8>b z0Ox>^8>73Dd#Lr)Q~QIU)|%;H_s`e1ml+tkn2qMr%(z2ch&Z&&4|mjjZK!M%?hkkP z2{3IaaV(AXIFGA_rz!QWQiE#)>#Mj&N8B8)f8HRvo~3+s%;K)31G0)MvWiePm$LJk zVRay%rdt_<9prF7d&d4`e 8YW6(`9P{4^W%&}9> z>juu_X{WmRh_J6|Z-iC{l88ne!hY~bI;bCt;ZbG!NDY=05bf2jBha_H99ej#zhSq> z>jnqpRz5xUuDTG+UFErzLUM5I2ZCS-dLoq>hJ}$!Jq+aw@;cS0)Ije C@XVfi5fpSlXAAuJ>$Ywj%HRlvaSHSZjn*`$BbU>j$Qh7rxe$Nj%8#3pGSfH z@T2lf+r6EUW%E+GNg~oc(xV3qviWo6Uu~Ya=c?Fh6IT?RSr^$?XikEW5;Z*b@Qq6Y zjsmOdnPNY+w7SZ$V=zmm$^;m(h;F-n$??)Xf9vLcj|RKqfNlP_B6mk-XhE>^8*}}p z9iOhL(o4COjQLE=M00n{4>!{!3rZd1OfG%8bvEaS4SM=}JjQEY-KiU0dsAFQKcG4` zm7fMAdVWchv)Sz+-DrI=F=YK-6G%>c{64CpANuB`$Tx^~B&dqHdSGe1&C#$jnH5Mf zt7gq%Ny!+A6 YNFp)gQ||yG%TyFp z1O^S) > z(Ca0GlAi qRnkNZ4jycD&7qHhH#B&WQs^Exv#`fYI3|{ zj7ZFnNM`4`Ek6Yf7 {iK4|Z04^;^94Nc<={ymw$%O3XNQ4LW%k9OSR(1lm)TA4H% z9m7cx+Bd-Ur1#n+F>&whZu*3j4A7$5M;XyR;`i6?u1p%H$gz`2t(3l9umAP|cY &aP3y*o~e%HwYx19r^oTn%X$+s%?i>hx1e{6bWTO!&b|#q0BeUFMRrwERJse-wLT zdf}n*I-7_!o1T}5<}wTG4(Hd6u{mQ{$op(^;2ED~OLpq7s><&Tpux _?;;?yQk*VvQZg7Uqu7V4V-83i`%#T{^%u!(9n6%FfRwqTgdW%9IMZ?s zlb|9&GDe)uVLwsmEKXEX=5hyB5AJVPe|r{EMPm;kRpiX;c%ryu%6=KQEcRm2=S(Le z2!L|%dFXi-{I8&UeOK7baCGd^_A857i`uY&y$*)PQJ)ENoUx0ru|0p)@*!jvmTdVC ze|itDnP#qJlG(?tXmSI**_wt&r-jb5e-yUSm9`u8_MN4*TW!kV87;B{*;fAg8(3Q` z(IuS^IzNq@{Z1VP1nVh{nWn5LKI9;se?T54zEUR#CR?K4;&LqC%YgkAjM$Z%$Hyo} zzRrb60m_?eQ#}C^y#LspjYD!V^|JG?Hjy(jGU|UOzL7fQ8_+~@Wyb$7F=XO+AEaCe zSMEUNixrly# Ddi9)|q?eqTi((b~9{m8q|Y-UdNm? ztf^h>I6E|Flw9h3lc$6+GyLUn91$+&z#CO2EL*v` T|MRoa2Zyw^&_sx**_6e5GS=9E(6fA7TTkgFjbOe3M3 z;dmdNeWKl(QttX!wVxGO>?UOvvQeKR2e0k7%)+TKo6fi36`8hf?gNd3C#BC$z4W?p zL4pn@fKd*&^R{vN&V!X2moqd*cjs;QBZB{SaxJCj6$wK}srl?cFcZL4&SQDZV5TXm zg3eG#N{PW9x?DKVNmK^uhGQ&za*W5}UJcllH_ YVl*UluLCwRVfW@=6>nu&%iB zqU O*w(v@j2L=WMlOTlUZahtVH!(n~#UNN(O5k*Ee{)^wL=b z@?RenvduiZKr$4Q g zVqTqGSC?E#z8uwXv?a!0dH*T!WR@yBhuKlH`29jd;@VPl7zv07&@(5upad{)CQ0A% zlhW9?3;C;zxv+SOYZn%dkb?ZqIbEtnJ8$ 9LGVr^8NezfDV@R!XZ8|d`CuYF;=Pma$+KslS<^osbF~UIs2wK(;c0pg zgeE{*1rLx@te2z(FQKjAInI?G^gVJz73K<@7c)EC%2Q+g&Pr$QPx|$o0N0I~ @uEYg86n||ThW?x)G)_G8ThV0Y6<@>+;1u!L@2h*n#LIbej @PLNi2`>XfD*Lc9gVw`7#YZD{swQ|K_a?a` zo|p)yeKdgV^($Cq%QgpATl{o@)HNfHw8rY*WYfd^{v4f}N%f!VzpGogYb8?^PgCDj zhW-Y@Vdi38a%Kzn_|B>Dxha;mlBYD+Gc(1l?V>FM_-Sc`=wNZvtCcx&P6pb{+ibV! zV~ZZgrHbNNcNPwHyM|9Z;q6s9Zpbk8;rY3eDErd)E6%}>7J4Gc!By%}5PL1WB9@w1 zXdSOxNiGEYYp)$F$)P<7|1jsyvVMCjR_VLgol1bQqE^Ko{qRW6r=uo%_qHB8M(XXx zg`irZ4K9cp036d5Bnn_iP4&s&nJO{4J3mviSYWg&_mNU?GSus7>5Ip4ZDND|P_09# z{l|}M }^CR)L%%Ht-VroMA^YtT5eL-|FaGelUjY7B| z|lo PJ~_2CTGS8YGTQ7B-;YA P3sZX~kri7nhDcJaSeFCy?}*w|9J#+7>? zl>Wpr2vTXhK9lc9g4w1`SrX7|B(aEtc!s}Ty?*3iPqG|2F1v$@WxdR<2+*kse@TXe z`M~`Q-IsoVq))1)gUnJG21u;koXigHoHKjXRCDA!!zM_sYcShQGmZ@K=lkwrAEU^a zO$>%utrb<>XsTeH`wYsC;MmedL5lv+yJhCNA?t^QCd+J->NSBGe1^*QcZe~9gG1YS z10H38JgiJedgm~dvA}3&Sb>v;d5^!U5xMnNc$fC6oG{ 0&FWuxiP z0^oWGw2LUpB% nC9* fn!0wsG0|RstmbvUs*|^O(m3af zIg-7?&s$e=!MEzglZ(Y7TgK*VPv5W$6Fi^Vz~~~n&DS4LerwDj<$X@TEBG%Nxz#LZ zwLu>v#t?%9Xn#WAs-(Z25;J*GO*W?gls5i-2=xT@^ye5axjz52dqdwWZRR7kSy)Cm zL^BR&*--#Y&3jTU4x)*Mkh)O7eayx1{7y qq3sDQ{S>!x3Cjg_Fw`Q?$7N-&;MLACtAz9L25KLeUJ%+Zp$eEq2mk@ zfbem+DVi-T#PaJ!!uomRoQbSnQwK64z+jS4C{HR(i#?cp1`IlIl3@cNLHJ+-UHy5X z=kY%9U5}1_!;Tg!_lN!Z8VUW;8(L;c1&qMr0XL)EL ac+;$qu=@~#(-PT25h$H|RBfR9CnQs1e= z`0Nzk)*t>-dp71p;?jEQlj$>`=GS6WJx@VC6wnKL5_AX{-1DWX!!>lS8{bdpKE^Tp zq1%659MB_4Vywg07j?@Ujyl{Xi;6FEBPj9(68RKj^ls7a>a2OX@_vS=ah6mC1P_A_ z<*<^d)gv1Pj@hidV&qryd2?^n&;U{BpdjONimA=JHx*lGP(_<+5m36dudPs@5b__3 z9AR9?xy Nr_pWJGF0L{l?3lVIw$wQY$G9u2KU!#=cOL5VCtiAht?Y0{vtGHK|=lZ^(2$?C8 zM6v+bbA%N0+wYHqA76qj@n8xj;QO3MMd`Q|Y#TQ77tP`|EDjcT+{mZYiTOhrUx+dn z5x*8A8eP-9|76D3vH3ZrbrQVW&tM}cOwqC35=(Y|M=o&d&&jf6cLO7N#G-?DZ+{%j zjD`FSjD*XAQ;WKX-}IGy3Cz#BkO`k-fC7#6>@g`~8Q~dxq{UmTrjS9s?xdm|rwOaXtAj{7yL}Bf@Zf6^fL+v%ME;+7! z- JzDycQS4jQrW=gf^@XJG8ovAvYY1U>ylPXLXt+e0+TFNVX+r9Sv`K-G5tondq2~ zW3h+47dZ^jZHnY;jjSlU6UuGB+laYyOT>EJkQTHou(z65J>x};lY-%}&_zz@2R?oK zP 0cao9UPLJ8h^qrdJ1;Lz-=^y#?WlO zmI87%Y|-}Hiyx|s3j?(_9#1liiFl+U_h?`@1A;zQSkIy#@cgdq37Ch4$5RfL7t(1x z)je`B^KjM=79sgQh8)L^N;-XN1yQ?&uN`7vC$b9Z=;Dy5lmpF~8l91NkZ;YE$8_^M zU7%IZN;S(`eqd;k>iT}%c|b!j?sIOv67tI}CGNylzxlgQa@(y?g$96(O(eyQ4Qf4d ztlT+8xmvx0@4!l? *el$ *kx+;&{`A=SEE%kee& z!6<~wAnADhPvFlZ+F=`(rZkwVJ5&h9g@#StgVH{XH1*(if8PhDfcN5I8d_PmrNfbX z#{z*`>@tsPKM~%ans1odIx5nDk{r5q;^qyrw#6p}WYR9mVwF@ ?%$pgK~dD~tHDGSi#2+(i!#?@Rf@3;BctQt+VH{{2D^{TXXty0@azl* zRs4%$V!39f>1IL}g9fG$K531vtWJN&a7%nbB=^v(*%UH~PfC}r!!Wl3WBq!jmK6H% zEM{=yb_T2W@xHYD(#MRS1SBJ?XrW}=u!X+%LDe)Hi-# r;-PU`+pb {LL|D<{dX6@^e;eGEds0bg kKAG1MTE|Vj-){>aywQ1t{a{ zQrZEw5GQ2WUC#7&u4uSPqg8G9+WW|ZdaK?bUTAyzO31>; +tl~qZP*XgoZM~o z&&i)zr=j1|v(mL&JTI8d@?{cRJQ;%BSTeuvoQ!2DGTCDs0SAPkd$8&lg5+kN{xhE4 zulT$6*Lw()LDbN w!ecylhDb&Vz^g+tC++!9zYzzzX5 zd+i>XesrCQf=b#v@X>M0_w$WU@D$$i#E|^T#D`Z$B6p!z+1Q2TM%a2U<$|)9J(Koq z<5Sf?i#~nrZ%ejk*~m?wBZf9-E~I96o8+@Hz2^DWsBuR?QAiuG@<~M&p9&&akq2tn z)%Ce1czC2M>29AA1B mzvhMVUoebht@TuX6DkImYoI*q^@0;;+CG5mntn zW>5%!-^$~#CU=(?#oYYq-OZ&@QdSPoOQ>;J%$_%z6myuFh9C|>nrUZ4J5Da`dQ}09 z@qlaEvgZpq$iV}{2r+C0+Ug~^5fMb0m@JFJv5cUfNeQGlNMo?b{sFM-nU8VDkV!Rd z#BzLrOi $83>bUSGcJdq z-0=rc4s5`HAHGus*?qOrAFDsl6c-n(yUsp8*R>EfSn8k|IT!4
2#lwG4vU%42~?Jqx_DI$lFC%7eEjP%a?TF3fPyJ7 zla7f(h6GoX-zq7w%=;(lHBt&}<={>QVt+T qn@2p4p}7S<|66I&aAt(K zB@56}PDq@LS3inxpogS*Vqd<0Fg+DznYJ&xrbyC4(`XMt{DfP(DgWq`I;@dGjaD5h z2HN*b4=lE$B4%LEWma-Xdf&eVclN+PAo#}GTK2@r;sNuwsnq{fwk;z#?Ld80yyRYn zBu)CzX1ZeQj2pZSkaqen)S4jT0#Ee#K1;2v?t$Xs^{s##u4}BoXX262l<~8Fpz+#n z>!8{85N72QVy#{KG%^R!NE89?MNI8Nhr0DG0CVhMk|}cdp}9VPM(r&;1^e(k3L@1| zo%5;L0lrKf$$`9ER#dD&6HbkTT8u;&El;um4kqz0I0BVtn~SOWpjVISFSnP7^Hk5R z< Q@MAvY`X(WzaDTd+y@Pr=}w z<^cQr<_5?{d@s4hPnC&_I_u2HD0ER!bTToMeBXtNyuEhTBdT+K*qo&(euO4p4GbCw zO*(rebPIZr5%wI+ZF@pc8Y*+A9ph%&xESDGq;P4kw{LKCq@N2EIopsrlmMK$IBkwY zu%rb(IaEHD6JFeO&B;Xw7WlG+5+0#dF!cw#Ls%umImJ&SSD%13=TV{WDSs%}s?aUS z^Ya4^r59esYql3bN$3UK_=<^{kj8*f-pbQ^A1Wm5Xiwt2OK-+>tO~2vZeJeFoa5x& zqn7Fjh{>c600bI5upJX8e#IWY`Z=I1xxSfqfu}ya_|)hj*5K9TCzfk-dtx;W9EZE6 z6o&_eL=SDz>u+EoF_Xa%G6CKC91q}J^}ggAgel77(i$Mu9-K;r#9)-Ucv|;O_@2mn z9&_%cz86 HleNTau-rt5l+vwa3*@^yCa|_>*#7Iu~iO7xCF5p zE_;z`Pf$IJAwqn_9AEzoEvvQjDi#i}2UU&Gj=LV-6)xs |=+tt8NS4lqId8gIed} zQc@i!gCH9kua@J`IuJjh{$=Mn?Mc>j?ytQanKw0z=K1`-gLphqL0o_&2!SJGbW>*b z$4@_p_?mNTfyU21>WeXaNf00OEGkVrqV` tVQ+?*tlr3_SmLwWuuWGpTXX5k8o748!u%KVR@e`p z0$>VT`OTX7d67O>qF2}q;E~f}o_s-8eB$QkGx4w(oFPVY^c6sXPF_`FJU3v-RYPNP zoX*!m1I5)>@$KFd@wDm%4&pVBX*Z0H>Oc_c3$U>3chVEv7O#4AQ{q+XZBWnh>G#)2 zaAJMYOeX _a*dYTXvCiUGr05qVgj?vggy`f1~!yR zRl-f_5~K$Oee!p!pv!U{tZpldItjuvfF!~i8Z~=Xb{#)Ny@C;Yke)F +XgpjY4)@y( z(q7cu-MG1air%>|wHUj7e%qzr&-&*dMJ=ikGl{C*=)#WdvOJ~bBgsy3{Y^SSEO;>& zV_C1Y5O3EA3%}V2;&}wNCcL^@qw^nH*421MZ+d_bGyE^7o_tUr`PR<)t0Mxdo1Mx6 zT4Y`!rnhI~4qMoXWoZVMkH*Ct-^V@8Do7x*hfr7Fou4F#roi9v>zXh{OvKLOydqc; zwhyVo&31RY{``?lyy5H{EMruElPP`g45*OAhGtMwx80yAm*n!t3cKBeVF;$BAAa#z)q=qK)9KxlIi}V4#Sl>l4>TxxB#0wA#8CMY$T! z*ToW-k-5}bm1BLczjhxYr`29;(*4cRH+lg2%|N8RNQChQg1~Rs(`ELpTa8hvr@hwn zXuFzMPH9Q 9>QB3)lUQJo7QKmL^y(yt6}WILT@W0%ajw7;W?&;JyMJSIZIh!oDM=m zQ7>6c*Nkq?lzCK~5B6+O@xa{ZoS3t!e9(q0Fho@iP8*w)HbV28%UbmB0ovVrgRn9= zt^!?4`;l@=4u0-A(<4o@;v|s~u31m{0I_=6O?~P$aw6hHHBkD3$N8nj%xSB{;v WOM~n?4{ryP0LEcY785x!ztpju8EaQ#S4tB1G_mtimLCa$ZD1s*{oP&D zUt@t|!il0-)r0ToG44)Zq9c`p^~KAbU*(PZrXST1WlczB-r?LEBR8nBO0?dQFIV|V z#OA$+=rXjQgx_uBQqPje&nj{>uT@@GNX4?cR;*w-S-IYerl#6!5kXZ#F~k^Ek?&=@ z7v@gx{rOU|xy709-KCULsJ?Ap=eJ}bJ4ODT;h1=@Y6^+XPw!}5thy-W-OPHT$@n6g z+}J7aFI{R;*y7-yy%3%P*(StrZQUKyA$IUwxk+o@lp6~o9NFxMb3g`J*_WD3m7U%_ zjAWi!JFF>k;ll{mLT>xo25)m;?LxP+{Z9FZM->OnMQL6#_n990;d0XN2T9C709WKb zugS)DwD!rhl_+~WJVj1l)p_`Q#=BI$IOfd$EssQOc3!tWBsB|sH^!=TrxWXaWx8wq zqra8 @w5*Djo#M% Of5ItuyIbw1V5Y)vv{OA0K|Q1`BpLZLmO2yz|hoKBl|gAam81Hsw+rrErdv{9yKt z7aO&CuSAXwC7mT=8;ZNm6Oh m>qE96YewJ4WYm4^Q2br(9l7_D34V?z(z>y|2P; zk0rzKN__TPxeZ!sD1MB2XyvLt$>%T8Hdr=3=<@2YxRrL}mI9H_VPuPhX%SAiNA=?n zE%#;5v^GlK#yM`;K64(RMr6A?=RCExz;nyhGE-tXXl+y!2RBa*6lWOA*9+bwV>|N9 z*^c$5diI*+Mx#{4WjTiH9fuksy|8c=0-uy=|T3p4k`6pO37bv1UwU=`r~iq<8Z{ ztrPX>YsUN?7r63Lcd`b*#dgP}lq$Hhu)BnRk1)nU&wzx3nNSI=J5x+$df!_1N=q$E zELR;1JfoBGlr+v3Kyjd&CrJcVQ`W_$IO$spLZPMwN^aEmY!aI1?H;;mT@Pl0-phi1 zUgHcX3$5j7IKo5`o-p&X-q-bb)n>7|2Xmz;+~3x_$KFZiKt6Ow%PRKL&NRkoER#w) zQD*BvY_6Ir$pfv|NG|uk&bX)l#F}R4%N8RK@HvKHN8}T->%)zQwSwgxI_ RXREjlYWU$^Vl7socph&r0?E0DC68I53m<)j)hz$$fan= zF_dR~1lEWler4~@_TP)aJsljc+?z#%JhNjrw-{4<`!$TZGjBkYKuFP+np)=EdT5lE zsWEV=f^48o`|j05=^u>| ~Qo@D->IzV65CCNoh1JTgtK{57L z4b?;LVbR|f71}68e-x*ls!ev)Ey`^kpFIraqMNmNJ}a&*&fbE(=R*w?8-Z?kTr$bp z=5-e6vK0hXsBj&8#B2G;v~bvJYEGs9`)~?#+dzlIh>G>w*|LpD{Tg6D1}maBoS{E5 zls}(hOL#B&s+{*$hPsEuEMKBDRQ{wYct9>##>&%6>@4Rf4P>9sr5IlQD3r^u1~}`8 zW!Q+MjWSjQb=+m)q~M}4mt9%of0nDPX(ZBH`=YXD`2fM$9h3g9!h#4|7oPpd3&m)) z-7nxDDm}NlQlnZmIsK5a-*lJ$gMEdeNQuQ*_Yfnc-y%;TiU!E0BTCD)Xw@$HqyFNX+u3Y2!4j79cyF zKqw{HixowVoE5l6$zT9&PIk+5D^0i*HkTLkr}&R#f+?FU>^0(U+QIhmo+DzT2W4^u zd6TeNS|0M9idc@Mgifntn~zxTA0uW9@)Cojg5L&3O${0hi^!w}r-8j% 3=DnPH%W1cN?lgoi)LZX24bcYI;aoI%!P4d&y 4lSQm7n2_h_|tK`q)=2Ea`eN$B^^`w(D=~#-fsqWM?gLUXJXC4u QRS}L+UGKNe zWL5_2LrbM0v&ALJZU^h=ZMIig%N(2Cygisu Rwor=vq@5ZOFf(Pxt2jhfg5;9AxlWUwGTMeT8O) zAusJp`ai&qCzdg4@OivQlY!!4&&2r?c?<`S?cAs}r_`AEfh|}r`c+EDU%^;5 NP3r yQ&Ud)mEBdQ z^mIKp-K_%4Z2N*z%Q-^iSd8B1HuFe`%^TK~olXdwqFc!BDwTIN%Pi8vn*R1RGcDC2 z>KD(U2oFq=HUvExx(xTE`EttWMr&JCr-gmuv^Ve#(4elUmocaz$D||xU+^3+w}M6% zx;?#IMb*Ksd-}TXr6-0dL!zFX5DI#8-dsX8m;b%-aqS6a<#i!_za|b<^7?TDX#B%5 zz+KdXjYYyUt)K3WF3Fpj+8PH?o@?(b;nEnj{c$hTFP4%<-NREj2TEN&Gb8r11kh=1 zD-jpSbGmym<-)dgO#$a_n2Vnm6}5g>$P_Tx{jLBCEo$ysL6svc%^3q{T}j8iM2$ZG z(i6?`dHC6APW~8U4keAX1<@t@bMeu5r7?FBsPW~T?^PnG^t;*Hf24(sY4;p*&sm)T z2fhN8H+YzUgVMb)xTp6VZjZF* !n`ishe(LB+CRl|XM9xova|Z$O zBaC%jSq&jtI|X@s(~C_hW1sZ5j3#At!^yMj&jaTD@Eg+S)6Y%v+j~;NxzBu6GqeZ@ zyGaf`JTY7a&gaT?s5naJY0_|K5AX|$Nx8W^QmHrv{AppOs@f2#sJb5GIzjZCk7L;D zO0(bm<@s8E`5^G}rFk5e=KyVHu0D--$|#$oPA$HeJ+;$atzq9Q!;H}*Le2zf&u@hG zc%AP-C7;@jlp~xACozhWe#Ez2X>sLQ3fz!^T|xG?4A6}J8QWD%VL3auHk1dXzc`?w z!jP1nq~-o54N(t}=44YsB;FgoN1)KctTg%-YwcTx#@rB&3&^$p5`8Z$|A}1J$nR+D zBS_RSYnm}3B^VM)3@sH*x5op)(t#lVy3UK|7&xH|mG8>I>lyil)nfJYF72*l1p3F8 zaITPVSb2JiuB|m;cSG;&Z^&SvIg-mII11DgGquqtyUc*;1rko^i+3Zhw%%XRRIVZ? zXP+yNmfsp0%<9u #mn*33+F}G()?8sQ!#6e()R>90BGBi<*lR^g1)|)gG1D)x$%t8C_ >`0%m)5H&LsI zj})#HR+Qk}J5)Jr*r_w%GkAK}=>(H_$2MJyKd4&$CIU4=$Q%mIo9%YiU2eo1m|_l( zrJFw@f_xM`Txm_fDX-Hl6}85}^z@Niy>}!-T#+-Dh&QT?-BfTh^@o@bl)p-przO0J ziRu-8kG${S1Fpx1ug6wN8k|RZ!2o)3SxAwMIY;WGdigB&!XY5^IOr$xSEl}n5b(Jg z0IRkz(_n_cPwt~tO?T+B{+wI8H*ngZxBzefIK!cd6KJAxF>9B{Mid=LftID=jYCp) z`p0Osn#bRZqHHWJfK*mh0-C-R>iODOQp?2P2LfUjSmZr4<&soK_l!pk?5p0mbX}s< zj+cj^OLEsIVO#+=5yX5}U-kA2 4e unb_j~HKPhEXNUJ vb;n;BqZLjVpflc0x1BGvqbx9?fyWg)3LcOM3ExL6vXA=+}rN6!pC z9^=&)%6pTxzX#)Q*r}tF1dhMG4mYZ;Au)0Y!;&uzY)Wt`fPLChUdH)P&Rvi Y5sl^^B6hRJ13`lLbv{HlG%EQ+zSE)p@ z9-Hm&S+}@ko|NX4IxU^Vu#W(}pbg@!B6S8J!-?MWqg9HgdO`ae)lh-tO#9|1OjE*; zqo~K1%#=FYUql&Wkd$BF&SfVeXonU$1pxB<<+>k>xw8miU)gI~m!u!vuG$a4 (CME&mDSop zN6gpF67JQaqWi5Upx;=qQTp{@?_eV=n*o9!TAQ9MET?``Q;O$Bq{dNdOxR96$E%2y zBe}LT;F1WFw-cW)vO_^**wh9oB7zHml-}04=(XEPWyivFiPf&~yy?}A{Bld-^Wz9W znqrpU1MBhn-gIA|)uPZBPo Y zhFArkg<`3Gsa8rdU4heMt|=gMJX&`=qc)n8bt--`%fycF>q1w}wXI3a@4@xq9>sep zikAHrAt%8O9DbzGKtb i z?mn!hGlZ%N!*bp=?XonmWe9Y$?qS6nx;3&*$K>BVp~b(XnF*?tRBIcc@s4DHOLDG* z`Sfe9ismN895tfGEcJghadrCRLW3h^>V9Bf`urTvn3P)Q)CV5+XHKdJ#OH*F81a@7 zA!HCo?$eJ~l{)4~XgWrlhNj8tw+|SYGC7whrzh=|?d5UzU||f$y?~bhhQUZ|e3xIs z86Q++l~W@exmEl`Lu^j$Kz9qdMRU~ZOa3h1sHs?A`jqaKVwbg_>_B({mj_6Lf!%mQ z1U(v+zTMt#rgNSt+P>^hT(v3hOq_*tkLb}kW2nBfMbmD3iL@i6*XP|8WKsEnKr(dk z#~_To`soR6T0a5Tif4nQDek+gF27FQ9XaJC<)lRdH@g|1`K&ReHnsYDC)^&6lZX#z zt>GBaaQ88>RDIhGBPntof2IUWY<^MmVfnewsyks#O!8^EwL^o6rduyZgjd9fTc=jD zlr3LuF9oUEaR|fJq=6uA_@-@b3W!bPOy810Kv(zYf|Z@``6=FR>}goRe?+6lNycsq z3$`+y#OxFwxzCf(!h$$B0=+OywX{ucMP`vIu9&J(-JfzgH@2zL$H1z|G$(u@Z )Xm-kc{-TEcd*Lhpe(d9v$X-@StR#NmH zxkRy-VB?DT!#Scp(Pz02(2Gee(OQC<3uyOpW*&{#{bO|7DV#E)KeM~Vt6*s=b&s;H z|Cx?d|IW~$;+hi8@>C4>p%{5tF3aFMa5vb{aCjmQS^qdJWTz-%%;LVjpchn>bd+Bz z+&G__sDRNFHkHZTsb@E^VW*q;@w`zggjT)%t5(edu&04>96;9Yf&3zKO@T|_!V1kR z`>ScR;=00 Hjd6AhPx)TO|d2!cu;-dX1R)L 6Gx7*HTrhhZgoC4vNH_2 zfl!cZ2pkS2@!iLke=IYb(2HUf_0h)``|Z)-zK1N sO&z{ z9eiLS;jTKD!< z2+Ko*UG9w66Ny?uBR|I>VX39)`uQ6h>y}-GzaG`*SmEVTtnYFZV!9rl!KAsKr3jjl zN<~HoWqk9Em~2V16@#>r x+c9>CI(*R^v4@G6XfSq1W8!-T&C=u|Dxqw9!Ot zQ1ROwYo52PdDu!wTK;c7rK3`X62 #~_$)-+q*(fB2Hh4V?o)BC=3t&VZmPiz@8oHp<{`*i4un;xHgUH=37H1gdpWEN@( z3}2cmUGm69uiG67=R?Gvt_Gw|`sW%-e^%God+lt0bonkBjaZx2=JsK~=K0oSw^T#E z_!$ 2e_~e^$lxev<7l+^6Fm_Ufs!dZ-%OrfpXr;HPuH86DrT_R8S9gsz#cj@KK%|` z5HmrKP~ll5x)SD$yyD=@x=y{T-k_47S?1t*;|jYnc`Ki*<4q2}cgF2+=Exl~*t>+a zDqP%RiTgbtgnd}&h7Ybj)d-rE(nrt;r!)ER%iNHctlwr2dH&2B4^Kxhkw{#C^8>z< zp5ZqX3l0y2I0~sr7oRu8PahK3Cnm{Odt}ir_@-Gu&)G1v*~|Pf4eX)PNP{f?c{XyD z {z{my?0Bw;$FcE{5Gj6J2 z`ZJQBeX>|Uxze?OH&*t?4DiA1izwJmX&Pa&1;QD~--OQU M8I89{lmmZYP?zSWEcj50GHsZzsC{fiM$fhM&zLIOqogQlU6eQ9s3WqYe0}wl>Tt z3B$d6j1G@F{wiD^OeuQB^E|793kjrM>@oB@lCO7~$=zPjX9>2gW7-Met9Mel1$^@R z9J|j6+#QDjfYMuBELU6u>y%eO`UJoIdayYSgxeGkf0M=A4NrK?MP%L`QbeAfXrtz! z8uE}dcAf0&U*amt8$3cuM?ws#=Psm09(>`4^ae;daHoPjSk}HB)g7UCtQT$}I{*pU zi3;ZD`?ryq(&|TZnj(2 UE)BauV5vi9my3aN91*!kOv zP7}+v)74vmeC?Ceupz0;fIuZKhULv`u8S=?0>qu43i72+oIEZ-ops2i`1)I?hNmFn z4uq*ku|zgheCzRSnokr3+%|+^Lg_5|ci!<1Y=f<4Ds_k@iNk38Qr}$RdiXKUIo97k zV@YJ^FM-S!=q7SrD3&_RPljEe1bUxExgv4xVfO-eo~zZ)ad`X|XOLOXxFu&nL$ka| zVF(!4!M>%QI *^2UI}*(o|C} z@ND7u(NgRyK)7YU&Rx#i4pS8TaRfUILPCMieCm|PiSBfNey+MlAPE(wFyU|C0j*cU zxfO0$Wq`kf<_}8)`Bgv5pL?MqDY-o|Ff9Vk$%4LBqOC}dfPTRbj*vf6j1in;6nvVx zDCg@o+O~SCv6i=`0N^La2CeXA%0Xz{mi>C=!#IZxcp%xRn8N`g-Aj$jcqBB5x2#_p zTn9d5&^Q{R`RPHhn3#@re?A>w7gGEQo(n}Zda|dp9C_SLND9kzjOFRKyZm3}I=qgn zy!GR4X@#4VKxQ$93&cN+=`f|neg9Pl%Fdreds1IR_Cy;*HjTHS`gD=0-Rt<*`0wy? z>q9#fS6nRV{ts};;x4~uW9XoFF0R07BjmQ#&Tl?008zXW0)fUaL0$g9Z`r^u Z8^X=x2R0oq-;H~f(9f2p=OVPC=G^lqF&Z>XkmC%xRe`u({15Je z==>Qs2%n;HXQN?S(Mq^F+?@TlJI}oMT`wdqciu3KB&h#vfxF}%{nfBzAk=NR;H6b| zT$lHIR!?{?Lkh-#at!0YHm|iCH0F^yv_})O(^aGsoRZrXwK11TV$n}&=tG*s1**ZR zy3)Y-bYmT;C3YJNK10xxp7_o$P_hy{8mR#UD*iXL4`Ayhb{R1IYDe>r#(aqU?86F5 z*~~?s0zVkec=y#KE{_xskXV!)fBwjP=01ig+ZmC)9S$NZV)&mE*W`PtwL^$I4?TgU zQ3AaEf6%_ybnT>@yBJ4g)*JuG-5qQHA{b^74s1xlXB?6fYp>j*CUkqj<)AtCA@^M$ z*UFFzS&$p(fR1Cl&?xfkUwxX!f%{T#=1m4U!Ao`*ak9a%l&oE|AqalvF>8C)%789Q zZEf?x=H*b7Re^u-a|Hzg`U2J-!XF85zfc}Vc)NnYgYY8tU$2 oE$JSDQow;DeMEpGNLr9kc|(ID z6|?3Udy=&A$IEcb_zT6J@Gm43K}?4~4i1AW48XRu7$-!Gg7Dgt`WPm|7+5O!x0;XO z7Bf3E?DQt8tAl7`UC9hyqbIU_QJDwAxn9>x0H1-1iK`xN!v?)T1)3hg>th6Hys^qK zYsb`YBLV&)Z8{BRsi7LBMmR5F_YS2+ZZfdFL@SO$Bt8h^)7k)CL+?(qA@CHF&)_2O zSmegH7&=1NjX~G%q1_b0Cme-q#n}g1L(KC>PQx!&`~A#*nJ(<5OrjFr UkGnc{}u!LkG~)R`1BV`z&iiCZ~$TWzlSL7 z>5laWGbyKEcz20;Wv^IHvhi9=Z(#3ZgZBv{DwI9989UyFX6pW>k$-6>BW?g4ky6+?3LDmf^IQ>|j^xB!`%!Y!gIHE%}TEH(Bf~uY)N8v0^2fXEJAJ7kP zc {6C-5 zyuS)m<-E2VLO$-B-m@CTWv2%CvkxO*F`P($V}gH{r1G&)&5WYMn16;2gGyuC?;d<; zA3TSyA=VMO2PL~nmJ~B5kdOODIK10|)a8{13>)Gj39K`S@dPKn`Tb|=A=!|Fi}px% zJOyfQe09I(C-dMS{Q)r}F(V`eqrZuTt=|?`NKYO5VaRv}hl~Z&gIH?u_b2t)!VuLE zxKAb$fqDwiLuulyVT(Wb7J__3{_j&*jQ5E>>H?V-zWAeCXhQEFWHK>S-=f_^44DiR z1ypt}Wl*F#AMJ!qcOb$iGHjtpnL`feX!wGP4={()@2z|t$jnEahj7o)?xzS)=V?#J zSBK%a6v=LL)K)euIArhc*jB=Q#-Q#>cpLgaDdHRW6!uqcF78@#%X_6m?Fc04*O8He zAcygRr`>m+%eSoCBfgusE`pKiWUPF2TZ5zm3G96aMG&q7#Su}venk~ukitsCaX1aK z$P(~6R$eq6b*CR`T#c~H>NNiBVH!IYd#7u2e6>O>d+|Xr8=GcM?#v+r4`2=h1<4TH zfgt@4xFR(t>psLRkAI3l02r^^eRW(*JJ{ezBmY|KA^cG?5-n_XG OU26?sML^owfcQ;9P?j-OM|HjJ)!%(uzuL71D>kzhA86$= z*}HUXI=~g+EeI{!F^nbG)){ZzcdP4-W|*GTKhKd`T)HS>In7HFLMtoYk!hE&!1e zOnDX`N^-_s8AaFh%q ~6m8WrMTeH3^lbG%90vPL&K >jI0NoFVcK<rB|5b9SB&NoTv*S}kNXs4YEzrjfg+2?E!FXP%e< zkl8D$ka?9I#} zU@TH zxsMSK?0D02TebeVc1%2%DKSO;4uf;S)Q=ER*j^4{D)%QQl6y%byl0hZe6w6@;HrVI zs>`{RfjJ*0i8Y#fp8*8393%*67-HnzlPlwRm3}sCBJ6XyR=@zGwKqFYQ9+JX }_ y~6pSeo cdh!fkf_f&YmV>b8=s|Q(i2Pkf~+}X0`P@2pUd_H=LE2_Y8lPGobV=} zYEaw$6pa&ia4LR{jy5b^=QWHCX@B+#Yme=%xzy ~V>aHN`7^F*ac74UhQ<^^SAj9$1Le%h+L~_X 2sJ&Q_CgQT?K65Q}EPpwtM@d5{CYf7@|HVr`6vLF%Acx5b x+N)ZD6ATvdGU&V@u?QoK)_OAhP) z(@?eyVP4r{1>*IJ%a|pNm^ftHRy#WF{?Kmt_+12<{vE){)R~^VZn>C^JB+<$YuLVu zRNYpZbeI?6EBAqPx5FSTe?x+?_raR=XZNfnkO(23D y&roRe%Vmxi*>QPz&f&=MF^wEI62pa^^k22MI*KwDb!ySR7u8vJ(9*1 z#u&^`0yzMT5xqy-gkXk&astuo+E@4e6x3zmI|v|1l+bI4`wLpfK8b=7IN~#&TVH(c z_z5i lrtTL`%gz6nCULXnk#B% g$^3g5i!g#HAHmi7uuGAo zMK2>bFpFL*i?P2y3O59n+&;=9Zv@YE (9DRA)M3JDl?JMU3$;C-!24g4(uCCfiJmLkqvxom&L_{G|87!6fX5i^`yn+}~( zT+eUP@2}DwKfi02D#oqvs;thwdajkq>zGo+g78mF9idvsu& P`* zvfy8c?I!QYgAiG|_SWJL_g;nf_!zOU{-`eBQ5AGELg~i7u!-ABri}D)Q|Rc+H+6Ti zht4 za3?g6Upf9~BJ0tN{m;p^>?rr$!r5Kx=Ha_DB?beJ?l6R`@teau3F=ft;W%%jRoi4% z;#u)9c=L~L%dv(XyIdDrGj4~SpqmI`$7v8ib;#tD1WWNl))sTMuPFcKo+t1nxWfJ8 zCCLB(Rf}|iAlFZ;-uX$v#3w)GFh5j@VDvs^OuO5Yl@+gd@n-ttT*E%!OjgIKB4HL^ zWQ-O<1U$AIifc<6P|oXfdVX@+K?vEE;TQ
ojUaeAK;wHvAZt}X~t?&;iX5U{cpb68tI#=1{ar<+;t8w*a_zMaocRH-aO6KM%# z7_V@C>klH?L;tdYL>pcgayOQwpGwxp^-g7H8ZW0k+b>s7;A=v)S@*G8l`5KpKg}QK zlxoMiUN*56JBduWHWOiZMjGEYY@f_1MURu3Z{)G}-Q_t!JhMMcN5U`@+x+7C?itys zrqGGAZUvY0aAe!KG5iY+ZvyiZ5aIdd-1TfAKdWiMLJXN#RRWtcX=SzMXz4BX;pw@) z-%o`_0t!TZH4Jl=VA?s3_6?)E&rH`9Mc2}ME*yHTW5c+yqm`?tL-E*>8xvkT5P^Lo z6NMSNV|q^l***O~+=5tS5b#>?Cuiz#m%Kn;mPgS26Q=h2j~|Rfhm(+bmeL}K5J;Z? zzq+)FGGy}rrF_j4_ gU<$4+qun$2 zz!dV*NZ5koFZFLVjd3U+v!`e;LkA)H={-^oFA`N}pj@|CRY)k4Mh;jaoV2{)N;^9m z{yY1LRYR?&6)q>q3vJk}iUM&Gfn02aS5_rtx9hXhS@!EqM2{svF@C=K?PfV`&v}IL zD*K7qD2IhQ$J3 >cGvYMs^v%|$o&eu_YY5EG^ccs!}FMZL#IM4WjQ+j zq;n{N7pf~gZxLUBX^``zs6r%qs!{u~jTy+Wf^j5vc(C%s}G? zS5c)5`~tCg9Em}|ZD-T-$~P1S{5=g-1wlCOC&tPvGgE8Z_`PST`>+rv^mMiP z%J^@i>p@8xUzcYDIo%f0i_Os4b0%zh8V3~hdo>5muCZ>9PA%-3E-h4BU+*=>H!!KR zEpfRDCph-_T^SfKhrNKI_1 g233wYw2>BCmsznB KhjX-|wzckc{*puMcTKaCoM>1hA{W31!H zN8MHCX)(2_5`Pq4HVc=LS;24%w5E`drzc8)8rFZby+D^y4E;W(YAACVd*C{TH5BaC z5B*edJ~>>n != o6bMAgGEet>caIS=Z-K< zIBV_qaYqh?R$7;{%p9++?X$VX+&as&6?_z0fypR=diWH9z>ULsbq-@&`;|}MAn?Nv z9rY^%cPDFjMlES11^26-C3KAWcVyxjSNcsWzVsD*7Fz8-K99?!zD1X5XV3ox6aJ5P z27aRa37+g}aMx+rDexzvo>c}cLTywc?c7_)pV@_6aj+)rwM4GNQ;-=`f=-Q7;-xW| z#6?IWTcROkFM#_8acQeWPWR&c_t6uF0p4!lEYl?fcTWC7PU3hW{`fc?lF8yE4baNq zh|qlN*kX1!P(WzYP#soXq_Mk^0C^DebDtA|G+<-+|GF07Qh!}m5g`2aV+UaPA5%;O fKL1n4=J$I^3yoKv=_Fr=^WMIxa3e)p`{jQFOAp-+ literal 0 HcmV?d00001 diff --git a/libraries/AP_HAL_ChibiOS/hwdef/VUAV-V7pro/VUAV-V7pro-pinout.png b/libraries/AP_HAL_ChibiOS/hwdef/VUAV-V7pro/VUAV-V7pro-pinout.png new file mode 100644 index 0000000000000000000000000000000000000000..443c8cf57aa59055c548c3bc2995383e07132d22 GIT binary patch literal 114542 zcmeFZcQ}>*|2Tdl5ur_HuM`#1LiP$}R?1$b?3H ucKOc|hW6%55ZABR>3VI3v0H|)=ym1!*Xuu!I zt;k8he`56n#lU}vZ0^cP04ep1 gwvYwzeiFCa$io+}zwyD0F3IWoc;%i^U?5$by1`j*bo(45p)_6B83tQBl#~-@mc3 zQB_ryl9EzWQ!_q3K0Q5MS67#rnd#={cJk!OSFc{>=H}Md*DowA3=a>-$HyBQ8j6UB zgolTJ`}VD^t!;UEd3ANQySw}Q_wS!ReUg=x)zHxR`t@shd3j%7-}?Ic;^JacQ R4YoVc`Ha0fR&CPjvc~74{m6Max)YMc|R166Txqkh6 zTwL7e&z}_(6ncAm+uPgWaJaFtabjX(S65eMWhFa1dr(kNSy>qZftZ<@>FMb~p-@p# zQIV06SFT(+d-klEnc4jOd_X|J^XJcJXJ;cKBJSL|Gcq#b;NbA+(IXidnXs_1ckkXg zIXM*;7T&veuc)X9jYbCt2Vb~wL0elpHa7Ofix-WJjeLB37cXAy?CjLi(h?RHwzs!W zPfvgU{(VwXlA4;Dq@<*upI=~LpufNW&6_tRBqXj~yOxuaLqbBr$jGRws(SnO?c(BM z8t*YyP 1bcfoaRU4Q{_LiJJ2!>}07^8l9Qy$G@(<5&Kd-L>K+p5@ wbb7&A`KvUg`RJHwI3@znY{c$Q`bG2 z9YVC<>MFAY;2wI3l&BxQK-xJ|Pl@!Hxj~F)-!fTi2LiQ`vtcmL?Lq`S5^ %Rk%@A<9?-BOB-l+w-YpTeQ=?dSnK3Q%&3^5D)jbC +G}l1s|eR+V#-AK9eDD6t+(@ zs*)VMW9%W2it^&ihk9P8)}XWILMC5;PaN>w^+a1yXLo_c8zxr3ijw&To&W=qRvg47 z4M;zl?dzNd)( As>ay5)bqFhkR`L=p4sS zd;n5-_ovSWye-~XzPg>^U1~uDXnDmR+_`u|ttC8*D>+$}{-1%j=k^zn0#-~BS9b0q z!d+b0?sKh-(#nLTTrURzQobqg-{J1qqORK68p=!VzTbEKHWszn%$K28SA9C0=3$y9 z0CWtTC)uXeV2gpSyQ$%AX2(N7pT{mllqQSPoYIQwm^XR9T8)VV5Sra+B(Ife=tm^E zJ#OMq+IxqC><(Yn8E%EmD<5zDzz$D@>o`)_Qvyf AF#p?RaIa3+YwiXdmWs!dg*1I+=}|K>br^itvb9)fdbg1W1b@L@9GTkL7>=! zOpw6sgP>}appm821YVGEmw1nFmd{jp0BQS`n6^j(A=3HL4-F?H(xZwH_%DwEW&|N= zBzReDD51OrtW*Cx2E`Sd9bxmE5jH<7
zH!}E%hV${TO~8-w L@9FSt;HGFImq0P zLxu?o-C$+SZXJMqfF 0tU-mg6+58V*G-RJLazVxTb`-7CTQ*0yqRn{gaG1!90ljgCn zg>%Ns0i^aHr^FPsw&x(0{S#5y{S$xvhO`be+=0jJD=jhq_@l4$ f68#QC!P~rN z$d$EB)s(!&z26C)E6@qq2lRQdQ|<6&uuGwa>L8%|(hIa|IBUHn#sgG4VvLhN$d3HY zXkgvYlS1Tx_e|$6u@Wk{mG?Aq*s`b|6nAppZE;te#-l(76dj_m+);u3?)|0T7zmQJ zA2bF?hnboE1POggs|PGI2^A9IJaU;Kl9Uc`CHud8bXjWizH`53b9OPqTjCOP$U%ZT z#IYaGqY7QKwiD^nPas62nMAp?+nx+GS9qk=JRQ2bU#I3RlBx+x-6Seuf{_1qz=fhl zCrur9(^mS=FZuL m`a+hGPgy}jxKFnI- z4Ir6?z^D>OY? AYe)PiObv3oAY4%iY_Q^+d_5n-CJrJfHrl;3=Lv bBuI_n~ zrnh(26El;Ka3R8g0`bgi55aWv3nt~J`(#rK_%mopN`$xh;cI2jDiXRDU!bXDqD|GA zG4tW^+X^D&MIp~U7wharrDiXF8j`bEBTf fZk!|LV~AcS}zK5%M-$#2Ng2 zM%D>i<3FODts;CB3=5q|*PKjR?dtI?0D#;hN?Lebvf_cqV%KRC=K2M7e&h&!4<-Vy z^OSI%6t<<-{-yiMPk51CS^+{__uW*%(5z(s1m0$8CHE*F&AG2^%{z$yl;`MKz`bKO zmjI78KvUL|W0RYi<)%fLOVm7-sUimeSXK;eJuGh#56ihl!`CIA?!?=12F^$Kd7veW z2uLaW_isEHXlWw?E|#@`X9OT(Pi>+jbxJ#4ItNbb1wXVB7wUOLRz3mZve2jZ+*3)F z49F!{(gbfg9r5fU)O_UlGHaDo8s+6&MrMl)kB5t9DYu*~FO`+WCX#^ch~)y=;h-qK zYH6N|c$&e66`ny2A6b^7)1m;egiT_$zuqGX`brx7xuMVM`~4%3rh~^vRje_SfoW2S zkxa)D4Q&*fojneZsRJc}kWOO2!Wwbx9v`%q+RXH!2HY 3OCU38@UU^I6@*eD7@BTu-k4BG8ivQb6mK7Y@%Qd2vjPhOXLXpVv5i z;l5(Wkcsug#sW=>gs9*-m4?xfuS@$`>tTR9$7~wNkKv&6H~A7aE3$u1c^LB2prVtt zLe-S&3nMp5rG6Uj5be7oNZ7N?*`S#9TqYgo-RQ^4j-}BkAWJvnjksKm_NB10_bFkK z^b4>Z@(l`svT}q#jt|csg(B?bhH#HGZR*~-yU|Im#TEwLTv{TF$da n5}(U-=oi>!@XEu+#yt1;0T3!YG8P~*0Ubra+Fc_}Y#2>x zfqdkemaV`r=SoS*p9l7@5p%jVcp {X4uZ!4_Vpk!Ym$qA4L}Pe%e;4&pmw_8{KyAFo5L2GhJPTbcMrw zVM!!R^?Op5AVVp=b$e_*^r8Thbr4h!x#wO%O5*wA&f+fa)J(6`O%c+Wud;@dl)_j3 ziU?=qGh2@i3!ap^Zp%*c(JJ*wf%$*KV0?dSuZdP@R)5;zAAT?qyHT5_@prIc5)vi3 z#Q4)di78%^GoTdBRPD*DZlx>YB9Nmb?TQSgvi~!-rTJ}!Sg!;K5!Q(C#pVYcb6L|7 zom@bP<_u0eAFUkw%8;bFF}YcKN5=5xK{d@ykwOzKvHI24j}20>-|E{P1kSNHsK7p6 zAO;Fw;5DE&_EfK4@5B&yNi_D-nf*!0ZZvjk|HTs~>Z@+Lc0p7%4@ TMi(16_9kWB~_V99i|D;OoTsqUc ziEl6I(z3C_tq+L!Cs7}l+?-i%Hd?3fnO&7X2Ew|_N*07T*a4a;YP`teSPK#>18PS0 zb@kHeojW->k0Nq@;EE~QvtX*_fW)iK9H`Q2IT}H}DEE6T(%;>)7SW%nDXY{i8=z~& zcJ^bGRz6Ids-4{;0Fr7q>;Ak9;;QcI pb&+h6yDoHxN!r_sy#zQ<8N!9<`BgM3 ze?90Y4B_O*5CN7Y-*Co#MERXXnne~T3xX(K *}e|xn>W5B2yZA|c#e6#q|D= Z!`3uk+Q1RmWU)3CEFbm!o6T^`IgyG8n9Ts6xvb-l*Lv_v!9NCq%h zsK&7+cOy5v=P5jHog#wn^I2unit^#497B;xSvitP6aydr(TbFpvxI6|iRe@AYoJZX zNi-4@YHv;Uu<1vG9@j^Ws~6d}C}l3reFOx}sCL@ tn-^I6+)UT#h-NI2 zYX`R=;{-xk@V4vfer6#*-e-YZa1*(HN VtlaDtRc8QPqvq*fWA9s_h_!G#Toc)RRK)pW=HK(8Ox#aBO>-*5wtHfrIF;eV( zXddXZK=ai_qisH6Z9>M}Tbp?}>5L(~uznwNOVZ4Y0VR{NbJA4{`%hdXT?e8~jVL)i zk56=AT3m(Jv}ll#<-uSAgk$$cb6d>CSbJm>Tpn*xT0U}zOL8`Uoj7*uhmF_Q3Zbsi z!4gRe){ohGT5oIHIyB*mh||}lfpykpYcN;^?NWwres}9gEA>sk!nz-`fr`l|X &5AN#E#VWLS+LuPrPmb{VHxc)DO@|mP8wp7(hDD0%W*TmSr1VABZZnZU z%2QG{St`+ TT079Dpq ztEyq~jd2a*vA;>)pXAaHVZ0YMa?Le}fi2K?lyq5SZjM3Med($(N`GHT@l!M|sUX;L z6Lm$D`?0z ?Qiu)bKW;HZl%q7YL@Gx-3I*RZgP2J3HM=b8$E{y3<@ zAYZhrIR@QunHZ^CLc7-zh`k;)NtUH#PhdIf_Ovo`L~#vXrR3)U9%lcS!_K=YO?gLw z1>Q~KqNZ(*A$$?Vpha1cZHmmQNyxPNvU)k2r2^p`m+j-%f4Wjj#Pw(UT;~Tivg3yQ zZzD%u+!~2;Bq~x~<2mm#ApGPFu O&=TwQU 9y!l>EEy`0%U?Tw!sp?@%|5nEF%e z`*U608QoTvjnjfED;DT!F4S8GE!fN1jD=>=fZ1^xeS-oRif{S2IoHz)ZVKb;ZD!h# znfExQSd5xjdta;uo`i)AtrA(Uj||0@YA`dj41XHrjGcw`T#AQY1J60(ziBibwd~4O zVRQ7C#g;E@URcSQSB2RPlq%!()i*)(*gEaES+8&AqGv^3>|l0{Kkj<1@j54;`~{Xe zu%>J$ViA;U+&7qa;Fk%F(KcS4LaZdJe~b_n@BN&XHZo1O!s8UQaO2!01bTC~{0!`0 z(=Vw~_5juyU4B5jNhFz}tIL|+cxo;EaI{OrDwi1c)$7)^dy*-s<0M=32PPAH?>hET z?tsj9FTWwBu}`+t=|Q`huUt3o?iahCX!)|;Xk&5Yw Zb z4NR9jTXN0X;mtZdKh~C7cI=R;vGwgIK`qPb79Z}32(*P!(>a YWEKbgT>WARAJK4+X8!LQhQSM*hPNzpt~nH`uYC<^ zA!1dclHh+5xO5+^ur6s-fK}#YI#-X;HSKO5zY~-w-O^};j@u^yh}(AM4GyP{4R<$P zN^G8r8$LTH_+WFx->vHA7+z|VjQ >G!KOn4+MB}((4^StXe$#!h=ofIZ2*o8VDS)JCR&YDmQA0}4O8`OeKP9T(I z*iri+*w-A*5W)T=m%9Yv-^j<7r~m5iK#BACme#KJ#s3rVpJB`>TDP}+T&jKI#Isx7 z!%Y;)-U#vh?5HaOI_f_O&7GPtUXac w$A7GiT!+*D zjqa2A+)2zymaxiVs`EXLhnBBdTTU+-f`n(|K0%?$S@#&ByGI{l?ZsYOql`Y>H@3g` z%)uWPQD3O*(~|gkm+Ag_&qhFRI9|LsWp7_<=0FYnq~(2GiWMabMM#_9m@bmzLdYm2 zszW1-2>|GK`_qvvmD`6tV<;T%Sj-r!D*1;Btf*WXG&~n~S; E^@4h#c`IaOLi#k#m5VmMLx?vrrL$x7(9rP2Z;xmH3ES{SMDbwr( zL{Msi<#K+|WiWr8j$O*&DQ}m@K~Uuzb1REknpxxOJ_rEGd`jY#y2-|_d-WI@KAbd( zsHxBoVQSpv*fP p|V+o`*e{MJ0yLi#}*^Ufwui zz8`RJ4~_jal-ho+7$3auXz>4}T{unzR!WX&Q!$KtiYcn#iNx+;P^j$kF_OyLQnxp3 z^FV0dH*}8CRRGBB6C!1D%Zgda;@qtbb4k{mPf0mh6)e| *<=6! zMsP=p8c}1Z5Z&56=B~k?WkQg~?7XR%(i+A)fiv4p(a8R`HRv~g_C!)&JDa%Kny?@@ zLlheop?TKb%~Ob^%tp^N#_-!9nWshl=5qz~z>;R>NdVBGRTQ5S=^W^~05Ss%u8OF4 z1h?9Bkf_VY_*>Aqnmi+2_e}v&r?+H0hIwOT0$gBMr-Y&U>M0?zY<6WQUQXBBQ-Zk0 zCbC28I_Y?l>+tq@pHFRD=+s+e!(I;8t0LLhqayq=-nof TKJ){jh{$hwvc8tNa;Nel4sm~Y9_+Pd{w4g`R<8GH*2s;!;F!S z7b1u9<|z;L3fPUAG=(?|nLQp*QQeUV-&UMVtWZCHw&S1JSl%(RhyX_UFJXU-5@GBK-wAXE5Nk0!VZ)O zg2WObi-|a(kvTekI6K2CF_D)95Sy%1Zk$D3s!Kh~p};+Xk120^8ayQUP5x7TZoXw* z+-{ %Hoh@N}7a5 zd7M4*@3=;G23?HqYUB&J`o%Ejn#ksq+2#T7B^C#Pxp^h90P2t9mb~!MOryFM*1a^= z1jQ8v*MHVJ{q6Pkal<73+OS^9N3@@Ga%f_mSDNn&F|FbWGtOEOV)9qqbUB*WSI11f zj*%OKCvAmaJdR$EJD{6~R!;ia%pW&%h_n+33)TP8fSr{ac^Kp1rvtYtp|B3E(6lq1 ztaBsjhaO+;Hk-H1*j8Gqm~MK`+Ic2&(meZXKN7A9UT{ aF=5^=WSAD^6xS5Nd_QcGp^mdQe`wEFv6@5+0*EauYI?oh}Qo~DWZS1E% z U)o^qS5=O?%sAp#kQ`MzEQ(9wNU2r?Ukb=i;`+d^5sLtJSzp6+nxQbqct@d zP}+t4b47*z=66C18quTukMMSdEAm 7f)?ot>ZgO#*(qD`7M8eUN zEsClo;g=gl(MNhO-U8z=aqj(4`aFf9 }FiZCsQNUqpQ8^p`3VsL>YU^ zCGh&3S>R~L9?x2BnoUyUWiNDl-KWL0;cZjLW{q0f=%d4kWSxUx41<>ebgAg{@Eq6e zK9`7;&)Nz<9kxZ`V%Rh23k%0=*?CiZ^1c&n YgE02=eHD7xJmF&crGoP|E2vpZZVjrH$f9_Up#YGNW0 zTg_>cUngk)lfjnz{#(ZkY+$)M|4j7)HY=vP+j*v0P(8vUIiwrAZ_lw5HfFK+joswX zb;`fu1t{B!pNeBure934-L;gY;`;IZ!RWf+pE|KtT;}OZ^)*kG*m8^u@8@8c3o(i! zNnDoc3SO>!n{3{AvsHH9Xj2?vdcV8B*?Io`u^r;E#P?iq%4r=*p)zu#Y0Z{#NpBs; z)cfbdifbFn>W8G)G@+(4a5^w})yc-=+%340mR(rR%e05xYt;fKf1Di|*K;00>TQl1 zS-aT`dJf?e0j6OVXwEz*8By7Md4yD}j(J 3<3Skno!AZF z6Q KO=lV%S9Y)C%)Gr8Ny+BBbONIr2Um&S z;DYlh-TD N<3`D(vhe4HLX>#3Lnau*&2v ~TiAq_05%ydRtGUvsb*{a$?`>VQVvbW#p`im&(wYAGb?v1-X3k`-^u#O$*NF!X zaZO?jR2vpp1wwu?cm7;m>fGu>N)*$kNj9g5$F%ZcM4ksb4|`L=c#lQ+q4%ThfzRO3 z=$7P&v*<2ufP=uS95Oi$)v0TJ&Y8mVxv)TE8`|A=>6FVR!O!^z#?adBMSG-DUx+Q_ zVnkDzB$`>#R^xRu^?(|@dECCi-vI>{1Baa>iYGzBMh9}()1!rZA{>!jHJN#ozi{?c zepmFG5%2P +`G|Ua17t-@NEOasQdv~>AHZ7Mqx_yL6kq;VF zXzokI$-0Xq0l8lh>(%crGc~Czx9xIZ&8mK^4JyX2i~hy8P$Eg>b>H#vm5T5&M7XRI z|1-no`zl$z5gj^eCI#gj;T9{Lj{O%&)TD~WRtl!!!fG0M580p8jSy4$RvffbdB2-7 zpYr(L;UlaMx8H5$y#9vfUcuD&1V(HYD_niUZWLH#`6=0^(;9WOny61-%lbhu-$x *Ct%Q43Qd1_OOs^rLwwdlog|Moz=WtaWKgHcxBZwrbZu%-Lz^Pa8ObO^R79l z{JE;_ni&l9O-^+9t2R~#p4HFFo}NIYJ RWJM<=|VH?%6G!D zc2`J|OuMXHp+tRRXF*>AXY= yyl~dz0(( z{X{+KrVxKO^!t`n96`5vNi`rD uV(j1YvZ zhbpFSsLxee(mS3_$bQK~VXDz?M90_J0M~s1;Yo6Nb8qb(SJ>R9$nUUxH@M}Q1C2t- zUCc3LIu`iA6TIgLi!ke7p!Hz`6briZot&5HV}r4rD~Kie<>pqEb!K%AOb*)#L9KWQ z7pE;ASi}~vMWN0w=Rh3|fTW6WI!SYvgx>(e=SRt^JGtYEOvBATl4n`3*l@^q8yR1> z=J9AzIV?u_Xz`W4i@H% P%+ftpd;t}G-4Sc9k4bnkD|*X^mw6V0)>}f_OV7o}2Udc>{O hg}fvcGh{{iD68CoD|~x9Z7}p9#oBnA7Sq>U}(v7 z^J329Y0Ib8GsT{LZ){`TnMg2cp305Y+@JoaEFmAp=5(vi#iE<~<|Q63ia+#L<5_xH zD)`mAIS)LsLV1OIbopwTQVRELNu=0a_VIIj4}B-!?k4xQAlp7@eZ)C)t+4Tf;h^qS z+>xz`4^)wmvx+GSHo}iDU&OMH|D&lqYw6y$9U%*>kRJP&OGk`iU0lCDE%$NLwj>XV zQ~j1wGCOF;9XorEQ2;!tx~YP7lvIsS;G&HE6rd|6{<~b1lq*_h!G>XZZl##Qb5xJb zeV=Eq^XNPmtjg=>E}4~mld6!P-Ofb288B>A`#{FI459|P;TWeJc|zD<;Fip1`OtuG zI$8Kc6ITcSt$qg33c}m!{ToKHq-(xThA8?3l*ZXYa)&gzyWC>=N4oi?6QJf bs~2fEg5 zt_>T_A9l8+2~tVvyj7^mazgk)r>?|DUUo0I$-gCtL>KLy62s4e6Q)PIbG~k*j#%IL z&Z~mB_^LZ}QGl7XzTkW$1=i6zbLAzR;O5TsCDM2^GhxUQ- |S2e ;_~A<3yyvdI&(pu5~h)0Dl}SmQ1bv03kLQfyts znfZ}y;y7ylH9Pz|Bj9d`v)J!D=gguvz=Fb_jz `Jw_su?jRbEez1>3m7>y!T2MRJYiVPkIz jkBNhg&03ZSvoGW>41^;W0e2)K$L|e>6trI&D=_L%y z2C(4S%qh+lvx_0gYw~lb6Pg_io>{`WMu(O~tkI)uIhbrC n~bxH=J{VIKtLrLAix%JqWE%rDta21 %nqNXk{793y4xm60KI0M2#DfDU@4Oq9*6IIiyz+# z_rDG-^jF9Yq@7@Cm<|_BiPRp-g0@KZSmQ`)u m9J_?-SqI~i^f&WhLo z%B8V#Qwqh&27j7i#hlOB6u^pP#iSyYox6l!<3J5Yal34b{H`2{$0-(7Ayd9=J5sjc zf(m)vLIloWS;rzSfpfw^0hR`<_Ax8sf+GPJhfti#(?fW7>bxBE72~x5)A3x}LD` z_t3Bjf}R@dEhVRlOr|Q)9uECj9G)I)BeepmW2|Y*jyBe(*kxNF%Lf2JXtL~l+)};6 z8{^{rwR6|mE(`@;Q{L+9&1G(=nfYoRbY|t5RT$16&tlLLqvWd=Pv(~sc{e`|PANC2 zkRjRT%75tAceYf2fm)Z>w`3VpKfPrvhI;;qcdR`mrqr+yZz=y)Y}5*$4zzqJ<+U zW~6HDVBjs>dxt-@gQH?qjt<~xvtc5M)zOuQquhp56UKup%w^>kSkm*~0c! z==NW7+HG0dmaew*Z2Y>zpAb|#lOj99@^xl>%!fA0${DoEEaq?qf9nc84iK+(F+|Zn zfw ;+lAekLp#p32yMc9~G$>zIW{@0C(I9e3MR9n*Y^=(8Jg7m>#&0RVXb zG=jWb%#c6*<-bxfWJ7#9d08)~@$y}iWHw|gO8OhGewb3J!mfpr=~!3Gf<)|Li2a1U z5&wH20I*s&EW2FIb>ZweLzXqlxgu6yfSavH@~nCEXjbxlniXu?onmA>Z}#!>luA6- zW3waZj>(92O2o%7w{EFKA^>^EGV~eri;#Taf6uN=_*3<$c|Dfm(>U62QKMBGTM}K@~7Q|V|ViZ@gxBXc1vgfL6|1uL)@76{EKQ62V zg=5nB2~u4XphZkyGBtDP8Kvto(+|O*8(DK=n%!ubZ^n%xl=Zb~rt>8A?$X~D{3oui zPz51A gc*J9%Nar5e@9P;0S^ZJk;%-{qZqax_|)A>Tm1FdzXX36ZB=1qzPd+NE9f1{aj z-VfgbtNWlu9qc|I_rs^mSvw@@_ thhbeG{-3_V)sVvN2n_HW{HG#uR)6TUfS(*j6*49 z53yRTH_qS563ZVNbn|CSmZ#)u;5GJEIlo6Ba*}D&H!>(yNr4j9l(4$@4lgo4sRZIi zLU*iE#N$d;JJ!A<{*^gR-bQuG3U&DD`@9zOd&*KJM~6RVi*`02t!Hs q*5;1AQcEnU&d2+u@f0C`xo-ay$VDyTI-Lx|<{ yPe@^Rz;%S zc;FWEe$lgGQgV06G`Zg=IWfoQ_;5m NJY;%Tl0`#;@%F)x(K(XO#w%~WV8fHt7$?-4Q?v5zs?Zqf4Zxz zRX+5ZERU~19C|p< pkDX-LU**~qcuKyjvw=eXWTLh!|*h}HBp#2p%UbEW= zgX-Ltzfhx{djSBLpR63a$98i7&RW-M3(kUx?T(Jc7ZHY)Z!J%CSdP;3^2AEw^jR_I zj>2&wrRoMgm-^5L-yxzm5U<_B{~grgYs^ln(szY4T)~Gv`8@Y}=&mlXp(ja(u(dN{ z>6k89!2WU8%tX-(=kLQUqCzeZM>LD{4Lb(wSH7IN`G&;=Yi^wx&Wd>lda&`|g(S z>mx@;YZ$elW`EZwHV6E+iF@?0^T(pl_SxUbzV`x&6NC%wnbi<76@3rAt;zkum&}Lz z6s`Ga84nMB$A&kqIy~9n>ivCs=T~$p&@nlaWi9Ea_h_G2$7&e93xykp1nW_IRRE*f zy{=Q7rT?B5nR @@gru6{oc|M)6~q}Ke!B#9Nn#+-(-W5GosCXPJ` z&adEqXBJ?&0s3p01~!P0E@t|Y4(LjzXgH5_%bnlg9ga+S@Z~y4`L75>;8zq$ZltSY za(tmSZG_Kpzr9wfdmr@LYb9sA#Do2pKL;QiUc+3%R+nOm6Eth-moHeib#oYQN}3Di zWh(5t25&+0bk~D}?lgM3ec^v0Qepe0(CAmF5%p<&egJl4aNA9L2f>6m>M)-JLKu9J ziB*qHxwX;Bu=sH*#KEKGAdlI53ppx7Bw0!}rfLi3?X@8Sd$ZJ!9rQ7 AOz4XedL~F28pKfzHo425vdA@hGXI^;$1jZ4pz ~a6NV7jG`Z_)KiyQxWt1z74h#ojyD6@}Z~ zabH_3O7z^ik%OXm@5&uX9-V)^k>;)&^*LnCG|m=;|4wD-ZYtYQ%;};&N}J^V3r2Zk zK7L5f6}^<_n7GXDka{}gd!d-N_9f{D<_#QFOA>vTnH!%s#zbF`TPGKWno2Wgz*>@T zZ i+B;Ybxi5}Ws04S>u%S?YHT|Ps^9K6$^5TDz7dU;qUyY>hG?lj+VsyLk@`7v zjf9NvzK!2<42J&^6zruKA(-wfdZH^?hugo@HFB4=$ 0{wz2W@{CE$S~Ua$^Yn=q zZa>K<*ckM5>UlFyCTS4y=y%Nu#4H=V6!zTRS=WQrlD*vT^rsnfycXWSSBjM&a5Ubh z