From 0ad2d7dce3ec9d3541c09fe9404dab97d8c02073 Mon Sep 17 00:00:00 2001 From: Martino Facchin Date: Tue, 4 Apr 2023 18:51:34 +0200 Subject: [PATCH 1/4] Support C33 --- src/local/BLELocalDevice.cpp | 20 ++++++++++++++++++++ src/utility/HCIUartTransport.cpp | 2 ++ 2 files changed, 22 insertions(+) diff --git a/src/local/BLELocalDevice.cpp b/src/local/BLELocalDevice.cpp index 20de8222..79e43bf5 100644 --- a/src/local/BLELocalDevice.cpp +++ b/src/local/BLELocalDevice.cpp @@ -73,6 +73,26 @@ int BLELocalDevice::begin() // BT_REG_ON -> HIGH pinMode(BT_REG_ON, OUTPUT); digitalWrite(BT_REG_ON, HIGH); +#elif defined(ARDUINO_PORTENTA_C33) +#define NINA_GPIO0 (100) +#define NINA_RESETN (101) + pinMode(NINA_GPIO0, OUTPUT); + pinMode(NINA_RESETN, OUTPUT); + Serial5.begin(921600); + + digitalWrite(NINA_GPIO0, HIGH); + delay(100); + digitalWrite(NINA_RESETN, HIGH); + digitalWrite(NINA_RESETN, LOW); + digitalWrite(NINA_RESETN, HIGH); + auto _start = millis(); + while (millis() - _start < 500) { + if (Serial5.available()) { + Serial5.read(); + } + } + //pinMode(94, OUTPUT); + //digitalWrite(94, LOW); #endif diff --git a/src/utility/HCIUartTransport.cpp b/src/utility/HCIUartTransport.cpp index 1b1a513a..1cd44495 100644 --- a/src/utility/HCIUartTransport.cpp +++ b/src/utility/HCIUartTransport.cpp @@ -29,6 +29,8 @@ // SerialHCI is already defined in the variant #elif defined(ARDUINO_PORTENTA_H7_M7) || defined(ARDUINO_NICLA_VISION) #define SerialHCI Serial2 +#elif defined(ARDUINO_PORTENTA_C33) +#define SerialHCI Serial5 #else #error "Unsupported board selected!" #endif From 0753ec0fe43c22600df09c7b8eb7e7a0b870500b Mon Sep 17 00:00:00 2001 From: per1234 Date: Sun, 2 Jul 2023 07:39:28 -0700 Subject: [PATCH 2/4] Fix broken image embed in documentation The file previously targeted by the embed has been lost or moved. Experience shows that this is is a common occurrence with the files hosted by Arduino, and will be especially problematic in cases like this where the file may appear to be superfluous to the website maintainers due to the lack of any internal references to it, so the only way to ensure the file will continue to be available is by hosting alongside the documentation content in the repository. I was able to recover the lost file from the Internet Archive Wayback Machine's 2023-06-18 archive of the previous URL: https://web.archive.org/web/20230618230604/https://www.arduino.cc/en/uploads/Reference/ble-bulletin-board-model.png The absolute URL of the file was intentionally used in the markup instead of what would normally be the best practices of using the relative path. The reason is because the documentation content will be published at https://reference.arduino.cc/reference/en/libraries/arduinoble/ and the publishing system doesn't have any capability for handling asset files. --- docs/assets/ble-bulletin-board-model.png | Bin 0 -> 41914 bytes docs/readme.md | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 docs/assets/ble-bulletin-board-model.png diff --git a/docs/assets/ble-bulletin-board-model.png b/docs/assets/ble-bulletin-board-model.png new file mode 100644 index 0000000000000000000000000000000000000000..409ae9e89385b0c27d8331f7d52fff2a8f71e097 GIT binary patch literal 41914 zcmc$`WmuJ6*Y6Fulu}Akx_f~%NO!1!(%nc)mz2`o9nzqHbayw>B_J)GO3ORf<#pfk zKF{8tw+C|ImeJM``iSO0Q>e14f#-o4#UEkWrsLaYH5>dnSzoQ4Est zRzUFgrEwC!FNuvwuVSRs3NIBvVJLx(`r*C7H1aWqLU)^@xWxKGs0H#tG3Uu*@=cHW z((Go<^sMQD$80S+m)lef_hE#!jtO*))Qp6OaJ zBuK^}4|6)vZ2d>C$>mYS>kEUYjIkXrmIGa$kDOLM3}?mj{$dj^0Z*-NmGmZRub60W zPkn0R%|*-X5{c*Q8-ZT8E9E1a-H~*W&~)`B%iSWDCS15*R2nJ770q$VaFtdMgx8mg z3wx#UHWAzCmvq{P=y; zBB4eozFw2dUie(JhyTexcok}85PNL|;KV5JQCSPQA$aU)Vmw9ZZEk#1 z9QDOMg3ays<|QerR{!fwCen={+Ly zW`BEckqpk)TN>kD{5_~Nf|)R+TtsjNEWxKU@J=7h-@;A!xP67Ze9!gvffhuy_0e0@ zhu%`cDE@77tniCIW=QW3F>ta(K1Jf@peKn=VGwE{xr&J>@L=ET5(|pNh!(#1N>hN( z@ZnRYn1aA5rNfhYB<&BE9}&NjaXh$z_wdC`L>Sk9Gy_-dJzM&W2uZ4a;JdgBPAVc^ z>-@58Ev_J1O*`H);UOH8pKf~$l5j85y-`UuB*G(c(MUBacuaDOD2g0}LW$%^v>d{^ zFzG1UwR;Z&GW8Sjak~jt1Jpy84OH}}3}jg+6Acqpp5twBnP9N{T)fXUm@Lavqb(A0 zLgvCu31jY5(TmX2EKMl8H>1D%j0ml#m0*SFt!FL17MnF^38V&nI<&!ir{mEw&5=tZ z!y@*gs?XkNx(%lK2_y`rK|s`OEkF{jX`5uj-zkLlwxlCr~B7uJz4 zp~@iBrAChyQi!Fa!IqaLk`SGJ$tznY>?-Ukmiy{af%Syir^Na+4f!T<4_OZusTlTz zlZ4g2;+W4-7I8ZX?$q+J(+SQAy3h<-U2-qk-+9-y2#RgOZLfW@OI0!@mn+)^{A47O zv*HW_4U!Fl3_h%Ib}3RfM*Bq9V96H>ZZ3lhr5r3089&bA9t!^Q%ed=dh9d5$E)gG+mC{ zwd;WG()u8`+Dr4F9oquiF;9}8G(RDDqWmO*qnnc;**du|c|CcPqo?wX25J>VV_jpj zN{2NrX@5}3gt{VxH?z28FQ0i-FlXVjK(S##g_>#h%ZlO0+R;!=ZjlAQ6Gm0~ETBKSuz4}|flFjLbh@`X?WCmxp=%?#vFB?*RiuydtkgbvZteeNM z+BWz|a8;A0G$>6bS|+UT#p{`gMJ2uZk;;*W78`G9I6iYW^kkKOQ&%sNochSy!QcBX z+co8a5mg{WEhG(h0aur4kLfk@4il+5z50DMtIF-t%Z|CuWD9LWj~;*XRl|zmyoHUb z;zH&nr73%Ct08%BPi{i3*{xq6By5a1HfgmyOL;6&Hp>oJMB^JBSo_$YK0 zk=C8IY+NRPDNTKte)!RFHtIvXL%a!Qe7jNGAz8$9kng!f@qq zohAFEx+Es0UP!o0BuL05s4=NmtVxDygp%b6;F1#JxKlaV6`qYP$OWwKuAr>$L)o?B zD|YAXs@4k!MoJ=e+th6tNC-)ZmoRRF9=8{+KQB4et#e+7Ovf|?Tt#noGj4_*X`dTk zM?n&N%Y8@16FRkn3}s4WaAZ~yYklM#g5-vlosQ4w?B@o>z{GQtJno zGHSC6&^EDjaAdQJ)%TlC?khje5+03uPG_%f(vTSb`}t4lP^uK_59+8D=H-i~QpOqm zii4ONr)$Y;)&sDB(^e1NEW#+FlC7Y;N%o7m)MWm4&bH5!h~$l?ZTFhJw7H)7>6RrcuW|UW zdtHcvB-liaUcF}u7R4e~UHadai#kSjvbO76Oucly#P_6+qDG|rq;h-OBOE86O-yqa zaL01Bhedant=jh3+m0TW>3F;#Z5qo9}yUUTR;lEdHwZSP#EVBfJ;#;Bp_@?0&2BO<>Do@n#gU z5M4)T(2eKj&5hyiY8EYuJVW{?q2im#^J$a9rqkVz(|RKnfu<4uwPGx{aTj0YJMNDZ zjxb7AN^VOPOO1qHgf6(1opv1#geHuy`nAyiu0D$!{hZ&QND|sEwT|%Tr!nUKUn17B)6!@C38H ztF?o^3$wL7<)2FaQ;)c@y`i1iTL&{6Ycg29`UWi&deB$`k%L-{`>abvVWiFXMqj;jv@Y7`JYl? zWf+X5V%Fr19Ih>{EZZW>}E_T)v2ZdrE0jBsd^ej8RpmJ%afaPXxn zrUZu`o{DBcU4wT#FtI_{S@I6EI$-lmV3 z?hg*9a*gnw4LUErHu3TIW#`4jfdBi|8zme?mQ(e{0Z&uTWb=+2y84`$4q};qacGXqjKTt#tjJ($BQU*#|jSa zpTSZQ|F^>m%Mgq(9=wR%Y{K@@8)|AF`A!MitWP1Nd9zM z{38kSyQ{sL>aU`xevc?aPzT+N6hFDgdo$r|5sld%oe!|IK;SRN<%RqdQWGBkXEqZv z;NrV8yngdOJXzU(j|#=FuhNztCKWYZAtQq)K_8XdU^lss_n-08 zww~BUN#G)L2Y)mYlkUff@P-&2&1~S49Prn z^QD75=dmIsq*65zkfaCqLcKaK&sQUal5fS9$4R9gSs$Bd)1`Fo1D=V z>G6bs#mYzpbWmYC5;fIGK%5^K4U-KV^^l)t^ zYV+6Me`QE!FG(BmuWd0xp{I)%R7%LbE2=2q8~ZTteP61$#rssZ50kX=U#1P#q&Y9n zzU14Ya^J7pWOE&H^ZefGqyEJ{s-{7w$&GXC3oi+Y$Ejk&_xGq9A@A)|Y?|x#N;}Y| ziZ!{PoqiSDtD4qH8POG_h1RWMT}`+Aj+4i@!1>2=1qukKb9F8`v?KR(iXyuhSsnH9 zBCK?tzMgGrZwOo?rHHxOtr*!|a9(<$<9X0@RwS1I{k8r1%Ut;YG=)E7pe+!SGWoPy zXn8P+J>_(o2t8E)Vk5-{){Fc!r{ukg5y9oTd7Boi9wPhDw0FmS)dSFm!A+rr$5KSL zzEzg9YKev>U3hBErr3UsSFfW(b1a0oOckSg@!&#WjoO4g2+G+)g{Ns$m-8=8rq zJMPYmUY>3ll6qa+vZZUGP3d}h5I%FV#E9D$(!TuC^1Ghc<8*YNdiU&`{RnIKX;H;+ zx$~kcZK_x;8a`_)*W4S*ozd)o7fEc?1T@->eIa~*j;#VD1b&v;tnS3%UbRQ2qPV>% zj9TJ3s4~AX%j>*uua=hC5Ozx%_RFiS<~16e_I58eGipY&rRKqIA^x58Yu-j^-t%hD zDvWcg)HL0-TSdop{kzvzZo*6d&F>8d%@y<34MY3j2aFNj+e_7F+XdOXzzj&ge_xDv zJrKH<3>_vSu;fJw*YaX7qUh6w8;Xy#^65kn$`7Bm%5^Nuy4p4Lbv-YPdE}Ej{2x^~ zPO0~l)NMSuS_xqhRlRvE&mZ+vXJ78+Kj+U!J0zDH$J07`Fv$Z_xVC=!fGRW!_U$r3S> zlU80l`m*$A)2>s0ACdD4ua7)ESs&82%7daB-H-dMdOG1z&qNVU;&pxGkno<>{bD^~ zZ_eV&qiI+6ld|_}`?%T;qm|3A4l~vSp6~Fe7 zxDP^`PRG6)H*O?bJSh9tD;6%){QJ^EQ{NA#eDUD-)q%~lwsYEE^VR+@FywiGvv1>c zPTfg%8HWxv-|PnbI`Z}hZY)^-Y%3iEC{drEkk~*<_ME&nLivLM{HVa6td3I-b`f$LiFxzRrJH6#}jAEqy>?lytqSy|#62$|uDwpnY6xxkc$+*6n#ZDzz+F znkq@`swax2qEZyDn83VPAVmD{ohsafsetG7D4yrBNaF4a&AaZCb%rsT7s=RD;|Qn~ zX|6HZ^Smhov;y%cWa&nrOUKu&eh~%{`iI> z<8}KB4FOLxwG3%=N74m8e6(a(bgFej#xMAD;K2`6ybJ1uN;w(7ANB(ExULl0)lL~phV}+KYvBhw>HXrU9 z-bZ_Q&+h1P?{D!iA%QM6QG_~_9tZV)Remff!L2T4k`&n%`XlLchn2EImpUlzzZmmV z5`e>^EdRg_8`o&UZr{p_gg+nvzHg_3n=(z+`^R3z*P8#>6)+Kpgm6V^3PsM&zqiys z2o#1SEzH%PNqV>J1>h>n;K-7@T*U#XX%;EK^DbL~3K7cbMeCveb_!Of13qY-**zTN< zBfX0@#^n0k%|9@cMIL~kKPip&g?rO-vQ7H9!|$8qU$9XcI(qwSi+9mQ2N4GCd-L~G)tWn%Q zbL!lIT>Vf9tPoavWRxSoYU=KL#sgZg!JTK|L@i@wq z@FA1IdH%lGJY?%5W~%-EzO8;uw4B#Dw>ppal;N3W*?e+;v->(!7fj;?)@Qw2C&b?n66S+Z=)i`Ngw+fCAIhFH z2GyK#UT6LK%`hsbR>}OGjSG+LgTkDHP@(*g{JVPQ;@4ssJg%u8aMO?S3!G(pIAVPy zD&wIbAwcabLlqV`&U|V0B6E#FDE0QB=VDCp!nv3TR~A@C!43!arRc|Y6sqoBY&oPz z2|R2h>25(;;cm6J#^Kxlfxr~J`~3}dpbmRv73*_YcigA@)iWWd^c|vo%4$5IGmMe= z6(2D4Iz$7%hP*}+?-CXiBkdLAtTP|5A+mHO_&BUk(pA9iwiTEi%fJ|JP{kSNn9%=1 z3yf%$LcQBXi~l$>NAZg>xq{@Nv0S~HXsb=HM9ws!xD*YyaXmORd?tg2`8{AC%>H0k{@4kui<^g^bH z#|G9ef9+WWmIsh}&g{3`dIC1t+Xe8}yVmsagikSw0mM$FFzRyK z;q=fNtj^18o7@_b5uTE6n=Z#tv#Ofht=}oBn5{6KmNr{=ChWpSSnKS9!^Nx7Gws*E z`n6{T5U+0lU~a_CGP;-a@8+$%lp=sb)yw{ba|Mdo(VJIi2R2_Ck7Zpjc|iB}8c&8% z+lK}82>6$MAGeQuK;!F`pVzc$G6wkBWL4IM>(q%Ug}*bgjQ^QauhlzpDqhpt%%=Im zge{cx@Q{?_P2_DQb%GXK=+X1^f}?vy5tgIX-ifT`ZxT>h*;Bynj? z_xPnw$ZMCA<}_z!tM@sWCwO5>=|04m%@ph;-t15BBB~f5D%y_977O)`>v+OZc4|!I z7(-CUo*ncovKT_aceTU-M*NZ90Vm*zt2@}DR;NEkf1QrY2UvZpwH1L|**X~!s>u`! znB(0{ee7!t{Eb~;TRH!h)$nKU71lbzrXU(-FAN9(Fr#bD(tMufc(AzeQt0ON?H-JH ztEMytbi8gH8-8Eze5j?mO(J?I&%2Ht56Y$r`3=@@KT*EX#e-u^;As+7{)OGRXjWb&yTsi6@6t zn|R1~Pi{LjL%zpp`~^2>w+Qfs(z%R!F`gZ^-rLKL5Jb@d%fSNBQxS93#H;E-wgCXS z#3s&59?opZ>?8c+fNd8JQ3t84b)^-P z#SAc4H=&KC)qFK4$*(P<_#NP85v+Ja&)sZw!gZP#NzN}e>;k)YZ1Y1Zp3El;-E7G( zulu?6**4XJo%yr<%i{iPKw7fjNRbvl+RIhZLCilEpw#Qw`1sMjBuoFUs8sz4jNqZasF!a^-%Qe9147-p@E5 z%zvJyUhTmlC{)r_ZBjAB#jX<%C_1G6$-OP({&eR3Y8uUjv8rv#QiY$!>b%3^WS1im zq_=5(LYtTfmJYNO5d02*443~Pt%xh51V(L$;6%2l_mQn13VcLLnUdh}(8%P~BB4Fc z+N->-m7ie6_?PJ`GA;sUC9RL^Q%&Kr+J#a2RI}Fc*L?X5GPbgZ`!!3RC->Vv;aBO^ z2T0&)bExsszD!NLR?5%~*)QWaAaC0K^m*F}K_ylywMPg2_1WxLL0+|g!eg!J674W$ zc>H)p^l;elc6@^NpRxmb7_>D1C0m8;lgu2*&`<_CAsEV?Gl0MIa6dOe2PNjUOO#$+ zD%i1;zh(?04u8hbrn|In45tyAROU5I7FW+PgytI!uAU#QZl09?oYI_s+C%iXNSLvt z)*#Wh19jLqLEGfneyt%!0+fG5;7se;<&W$SrKf=l3R5dj}xMV>a zvP->X&C-E^Ixd62RO>W7r_4AkJP z_@yos)^bDqWoD!goy&KOoh#MBb0p@X%SlgBa5}p z|FU{o$K8(y-<`lwUf^f!i$qp(CeBVfF-vfsgt(2`Mj@`rru&TEG2eJtF^( zQh!{6a8(uO;JN8B9*g9lv`Nt(*d(uX0%f%!46&^U$T1!pRV)k~<5ls@-S`x1YV+Yx zp>AuBo1fE?XXvPJxRu3+kTYbES`$Y!ma|03Ql(FNisP6yjJV8KX_b*&lxBUsuL^qv z(Dmw_Rn_$GYdXyuf2cJP5bKAuH30<%H#C>`XWn;loKh-Cu(D0^Ytv7K#hJu;v^nYV zhx96G^b&qwHX0M&%a@Hs-Y-`(`b?!$^dU(L+CJK0@;F>kNRcr*!&G-SUvn4|pBR{kMt$LF9Z z996gG4uSh&M0zv%Cb$2sPM8=*r>pJL#eacbm>ggRYGxkmU+!1v0Yy8thmLpr0|g|| z577ep(7%)py5Q=nK zq95ONDG!Ol9nrz7r`L-$6-wq;=e^5S8M1nDQ9!@`9JI?GRakL?g|N75Yu1$enEmbdR>_v1lE@eX^Y605hHlsTV)npQ&qCKc#5F$%>d&C*SOhv! z*mbKI^ciTu+@gFMLz|f!jMpwf7$=v7T#tr4(#ubRN!x8Jw|cjHz`vErL#@M@QACF*lDIsGMtED7@dTF2Hf!^gsghr zd*F^({?_Pv(tZF_{{T@X4Gy3SUF*3YG}Q zJpc1lp3(jK9q7E*?aiYyUW=)s$OoP>F^v?mWkpbM#gh*vTa*y|T6ElN|COKNiE`!v z7T`QMRNpK#INMM~i*-7lOId}@CG!>iQg$A=jMbmSQNLhI{fzNl#G{Wo!55KP^m{O4 zNofIwF#q9KlW((6EQ&De(J>KJwH@P%ft-qqgYaLeQ1m;HwWk?Xa5c_QMiz?`5LdK3}*z9$@*P>q$ukZn+6E$%_|h!ryZ30UOo;rA>}}WTF_T zt$;|!LoY?~kE?%Vg$(0iM@e%Ftnwqr$W8wOJBPF=b%Nj$W@#p ziF3(rpMOp|w_rt1s+t%Nl=%vqoMIs)&60g>x!QlGY1cb-vqEI z9N$P|Y;bj4^bJ=Yg}-yrX%D)+(I=woV1!}wTYni5;2OP~kkcml42-?|zl<#``Y{sa zxii#I(VAGI5t^ad#P~mMTd0XtEXd6RW(1Jo!0N9IMr_5?D36b03#v8(&3+#{2?8wtfG17MkLq zzv1yiL)J3UJd~FvIFuSPgqs7{wxOj)(P%L}wTQf^hSE2=V&J5EawD%q<8vSD-k29* zlunXs(S_D%areDwMEnH@2UN<$M2Y?<&M$Bj?K|!z1{l5G5=W&-!wA%ociz2tj)Smu zZ3hL8=}jwxGSc?|_wO1?A9GNACTiJkUeZDicSOCR{Yp~Y#?7K+gzhDyKkM637=0bF zF=-s?*a-0zci&TSlGa`SI;N{!jFPNw+>A!NpidR%`qlM`d%b|&+yeJu2l*=tS%7_o zt`S$xW!vuGE{dwojeLr#u$V`0iYmusUGsfs`lJqXhUda)0y*i@vdM#jrLHTj7x>bq zX-0B2qWFcm;0F^0)uU2le^GpWhhT0o#;&9plO8f0AMV{P93Niw3hO^XR}7zI5M5P& z+*OeBH>~b61_Lr;i`+X9#VG>lh9+2%`;J_jO9@`(o07c)QReRfq`bh+wif*hRZLz`*(;I(@;ygAk4fY$hLr|Ad(SM7h&I zKZ+Ad_vQcg!+-|Fk=Yd_{-cZoW~+J$Ml~g;c6O)iDPZ7Gf`Y972BtB5G-$ypHB_DXHK`qQDwdQW9hlvPJhsJ0AXu3 z?D`=QPwA-5P49Cs&n8^;6bS1uPJel+oLKGa?JL|o`3pGj)tHo$GeGjwmlwRqfeD1w zfN*CImpjCi>^Fz2Y+7!(mfjei2)P~`T>*C(HP{AVMg^!pzpoTvqdTS0VdTI|VHn`- za*C@CyZ~nTMy(*RC5MzKgS4irk13a+<5tMruv<>fYB8E-*H1r{Efry8B=q|{JI!HC zrcHFV%0kusWQeuLiW-^WY)A9>|r@<>9tjY&>j$ zX^-pinlvZJKop-@bU&~{7dVY{+!~{v@XJqk>n~}(+{W17`O;D?hQ>>!)iHMoC~FR& ztWq6}WfGC~ z4R|3-BS|A+AGaKWu<;WErfrNU0LPBU6Topc08%7-kq?kavb5dzs+Q;Oq4Vp3?2X13 z$sB#@t{VjIt6|*H3qxv;0?>%fH&g9j{y@k80c4;gv~`0JGEzgjfcxA`nV}d=D@g@@ zfz_|h$MU|lAak?}PuCI{ARp**j^sq?BYZndnjq4@3-U>7!1x3M`EXk#2crXm9@EZ& zXN-ZI-a^i0I+Tnv*2-cQttw6*KMCsK_f@wa;_O&#DAAtz4V2C0W|o#~J9kihvHRJ6 zn7CbFE!u5Cv7+YdfXU`luU4MHV1pWe+y0z%Tj}k~)wp};?V*?RM=0cxo z8isL-o{@`w|Ma<}+;LiaI!jcqFgL!u1q8!IkWxV&19)_RsUnp4-CS2RIF5`_VLk zoJ?99i0m*-kcSs)!lLho12(>Eh56}EI_X*p9|tx#?1TBN28)}1EvbI8+Da41Z^??f zNMehyK=j3X3aqU>(^Oi0yRA7`@a98Y4Bv-m-@Wfy!g4oQ_T8RkR&Nlz)_iSK)qJ_H zico&pUu4M}kI@^dBTB|j2)P6+-c$}+XGAHlc6tuA`xKJiaqQf79}luDU&A^jJzS>= z^vi43T>@??XI^w&NSb_W;!{Ka;`;4RGA)gXIra{@BdNUOZfE;xjf1>8R2Y#~bCoiT zBu9-fQ7Rz=sIIdh*@OhbXh>DTdmQJ6KEPa~RZZq-3qoNV1}d5{Nns_i@!*&@b5(UT z2h<%R4|pTc{oVGlll}EK$5fC-uTa2vfN<kYrTX+#-v^LF*;LNz3m9c5c~*EaX~@Kocx-;e>2WH-P>kZb2W4<#hlEuX!k9#Zs$fu#0xS3CrV1aty6DkS)pc(VwM zk0Hv|o(Q34IYec<%LREnK_y_ZJo~!B zd3}JsDomgQ+n2uV&r$dQa%byoAFIKPt@^)=jfLO`vd`@aQ0sx_?pvZ?~Y0K zKx{}E!M9z&+HmnBI|41n7Mxd~E0-~nLsgCa+1Wp7R$H2Z(EQU4r>aSniWgk7RD*Mp zGZ!Jq?4L1Xdx)L24nuHaWSD`k?fxUa`$>G^z%$7C66shrVTx^CsF#r>*8tA)4=htB zo*2KZaN86R)>3ytHk{&FbsFJW4J}Bh=U36puFiupdd4kO)|Y-RYVA*2D8SJBhC7AT zovZ)CyuS`ZkLU@mpvk()V+2(l*IfM|qj-jPG6sm690vJUFo>_z1ULw456d9ra2NoAFvE-;miQIl<_8Fq#-wUk5@1c6qpYhZd+THHgnE{sEGaHWcdbXZCc6?#f#*%Sw8;S^a8@f-sUxQJp*@jnFNuqnS~`;0#-JIAA& z7ij299pjM5-!0IqjxV;&LJULuA6{8($V`#=k-z5yPx}WAhc<()IY}blP!vw++r8;51ZriZ zobI?SXFhUoU9dbA^Z4rNPjC=sXY9jDrg2o%$cwTASu+RXW?KUd@Tdwede>_bq%wbo zbCjk`Vs!?&=o1lHu z+&Go~XVjf91>e&;PFZt^6p3sRJ(5x4U&(jenc8aPa)nL?ufdli>vf;@1+V2);`wX< zSc*x{oJ&5{a;SCyAXx5D6c_zhuA6{>doGzya>4g+S!_5sHMZ0kssHAY79fL|8mD4t zJ@Vf&IvBi-m8rzq z>B5}$s!jAB9!J=ps}>7}U6A8Fb&DPIPIF=npfIH=Qwh=Y{F6^A(wdy`Pa0i=<1c*K zAoH|JL|A*KN-?}1^-i}4K)0eZRYdP}fe_ZMY$8XzJ7sL3ThwC3zIVFC1<-Cvl6M<= zr_2bvD(A0({BN!!$aoaC0-#tFW;daIM;Yz|uf{*D!n)%*%#nTc>jbT)c;NlZza~A| zNXN9T)8v)4cE7)2XYs)>RkyCNn4a`Xm7a{$!VpY7a4RBqlKc z?>1+>(tIuWt17X)zSN>j$x;5!NW{TNBz!*?{F`11V^LhdqEiNi+y9X1zeW!PBMCuL zRlK8JGXwdfsO#0Fz@5=yf>&`dOS1k=pM@c>28=vIay8z&kJbB8dlyjw`&3GP0%^TU zbimjs%!#r?Q-%=&Ca~nBmuY!iOq7=G^h-P`JDFo_WA^%t{Y4w7iQ>F|%L|FZP4h!AETlNL<%20l{@yo*yogXVuwn&H<=R(am{!na=N8?g8%Y`(3rO zCMmOmSG(gzGq50Z6sb!u7;UEOkASDZx4+#fmkvON!A!#v2+7kWeW_V=8>j~S zKM(Zq-9XB4y3dI(O=J-%6#O6)Qw7C^?dF=!>d+)_hh-#vys*Fykj&Bt!=Td5wqbvy zI>XzR6#r+Yvs=E^HC|%S)l4$s-=Pi%X?RV#4LflSTU)pyHKk4b8miH zMco)j^KIMxjwz5!ZYWk;n!rd5@B8lc(klU=;aUO504-_GB*p4|>1u!`J-vN>KHUhO zj!WB=nqk=YgtFM3k_KxY>&Z`X+K!XT%ZX3J{y;49e<7B@KB!i1bHDk@+8yM#il+Cy zp0Bn7jA&L3RO0~Fz+n(Bc4+>{@y%hJeK>}-&cOpSBUA zNegyeGR?5nc~*$(XqL2dC9di7m$SUf}n1 z6VgqQ*F(yTh#e;sr^=1xG~ZI>26V> zwf|&o?4`t5xB3HKW%oZa zZ$57iK1e_N$&}{Oc><8mSWU$J=QfUx5k^sH)Zj+1>bAfk1r?AgB86ZW(H72=2r_tF5~Xb1!G+4k#U#w%NMPENSPpWY+kmFI{PliN zqysz_4#TL60}+eQ9b`5H4x3YH<!L8yB9+)t$E`7hIp_@I0o7d`zr3jC;XR^zZ-weS#;m)WcCeIIUAS}k4MdV zx$OUl5VxDbF4TCU=jpLKfJ{rOZH(f&K`g1FdLf#n!?E@mEv>xEZXShhM^C`NZKN^p z!-4<*wnzwELKm0{04Ql%o=`5WlPM^nQgL_Q!`q=W)Nnz{0Es!vZL()Zg8Lvwg@#K` zV@zZ}_>`P3>%Lr$v+3sJjOz_~Z`(puEnB}mkj9+ZfEy+5%t293-!miaPyY2L)Gwls zC)D}HCPp$KQRC8=C*`d+CX%a(bRAftAf6voWwRuxMv){FW@z#=l3eV4RdgSd+S8<{ zp(3lI$Y%$Q_NB61#y&;`kcAl-mR5WLzp|6yVcHx->)|6v^BJlgg5})fpY<_W9uN7F zfc#aTYj7zmYQ}gKD+a!LtVX8a72;u)TJRHdxp#)WlTthCd7cZP-Q-ICynAhy3*gLS zamXI?>k}i^_YM?~^}Q z1h1F^%c$ekDBSpV$~MQl)Ko@-Lbkd!-SE{EH>`6{PheKmIrR4su51y$cx8zerrAIq#E$}v6;D7ae7R@huueAC3pq3y>g=wmRM z!n6In`Z7H{bS`<@#$qhaB6TwuVCA48bGPyY)Y8WC+hy-DBlwKK8<7>va|hEiIWla>Ne5a-z70}Gp60UJIju>yT{`jx@g- znFre=6=}Svp&(8Dzw84$%oJi}I0AXOiarSXJb>?0V7@dq^Rta-T#QZC(8 zf($caF*g)n>?=8iI$RvV%n)Ye?d5dKdz_Qjd+5)HWxK|tlX=FBRk(1$v9be;Rj*+A z5a1;El0%z)+d1(*M(`g?v+SK+ezV%bO_OeQoVJ7;*n)mwafk>%IaI{q?h?tZOqpNBhNBDJU>aUad2XtkvoZq z-BK!oByGzM;~kO#ULsO=0p+!drd3>Hdi^5#V{hcx!Ahm|>4HMPEG&gm#EW1HxAVy6-=7PNzN{@?N zef2o=?0Y}^R&RKM3ZJeh8_@#VRo)l`}b2?z@`j7!ix8)xC5(3 zxM>$mc_Tn@jpcC+fjArie6Mv_lpwVnE8=<#Lpv91UG`Wh)qwuZ4r-YGRiH2JsokazFN%mWs0YFS`Eb0}N6vKQ zn%X=qBw0c=es%IRXY0#$5zJ-k6azvBKM_s{Qf!Lw?vAjX*l+)>70jprmmCYc&l%N?6uY@Yx8jF4YJYDE-OiE#VT|>tOK4eA%Q9!#K$(J#P)7TXbnb$L{X#e|SgLtG zgqa`4+A!lLv^d(0z zMReE+FkN*R;m{**!}rfop4;Vxx6 zCVXFgWU6VldrHY(fwvY&CHb&E*3gU@X{komL`XQ==eQzVbjj1ZLirlyj{CF(0h>}J znSl&5Tl66Yu<=bN=p=lO;p(`fg%IWmMU+QXD`##b8F#11|I z-wnm!C>|^v0;8`GTQjFiMEJX;A;N?j4H)s6~JHTT~lPf5}Z)J^2P_0DRUpryS zsB*+hk&?>%P89zjbWKK)O=#=l@{7c|-(xHPuP+}c9EF6fEF5i$7ZoUi7ZE7oS#cIt zVy!zD5X1&WLtaG~8^Oe-J;G=G5rKp)-g?XJp{qcJqJ#sXGh{JcQkCeAlL2>PFf~Ss zcW8y8Ibc7gR*c-A-&30oc9zq3ev;6`p5spN>*-k39ZM$6Z%@d8GnPrZ#FYxqa-RTlDjqkY6y^1ES-82E{n z2y7V--MWkp4A`EeLoJ;5r@bsPlHiIO;q_R^Ba@Ulwdr#)$e3?$$8U8wC!;S;WO>KX zTvEKz!&l#$TdaIkbG5~;C@ySlP!3O)`_7#^^(_(QVa7gr+`g92==2L#(~Uy95E+8G*<$6($VqRO!}RaRLq zxHabvuV6=fYs&vpopUP1&~3u252&bLE~)fQGk3*H_^4s$jC03}x-Hr`%WK_mZe zMhPuoNk_!pjqoH6wg|-5wPw^F5pn!lQmjR>m}R`7yL}wN{C22Vc2SZe!MjH+&Gx9E zIRKw^MJbAD z``s``-EKfgYJ0hg1sxvm9&~>JC5TRMm78#yUU%++4I|1>SpY4xiqr2ElMTU!vFLRSg!H{Pb5QY8w&Mj?qRmnh*hd-FNVl4Q ztylA-?G1>vc4;YLD5yZm=-G9UUKK~$uBlkPAi|a-l{&p$&}D6G#@@-zK6Ng{mV<=V<<3%;MX(wXBR&PRe#31**IQbHAK z7VdCu;gtkCtCEv?k!L{etmBX)Y)-X$VRoQY8228iTl91ZWRGkns3Ed&4M;Mva!BGk zk3>6)L)H*&zqez42A33+#6uT?9n6M~FnXNbhynh)3C)BVKq4)>DXaV>Rh&baYR#qV zZ!G$qYh>#ZVbY3BjkxXjM=3%_WFIV_h^I+!F5+a7B5&T*UrXX&@@`{hjnWR2LF=GL zNQM2jP$Uco%UD7}gXsD-!r#d|1%x_6{LD=b90}%T9Z~~dVqu+q^|!PCA9a5jRaN_i z52LUJDUl8VDG4P76i^X1k^<6_0+LFIBHbX;DM+b=G}0)kgfxOkmxM@nm()8K&+m!< zd&YUk8RyFx=L=)7VXb|yxbJ(;YhKqiLm#K2pOd0kz36R8)5%d?xl#GSb&qfVo_Hbr za5LW$ujO*Z27{V@wMrNd^N^ay@mtHi;CiV=-1Y3dKpzY9$;+C$YQvw^EgGT7t8G=s z8e(uK`RX7~B0j-IrOQ;9UH%`%4pZ;cN}=C5v+*pP@0fhVKoPMQDDd5`S7h04z+(FW zok9YwD^*Z$LYAyo(t)M*o0sf7N<@~K3{lqCtL=o}>f}A@I@l-m!QcF?&{sZ7QCwfVd0=G#s> z4fk$07VWzDB$cn0+<5n#a8YE`bIWmSut0NiY}M!XbhGGizmxOxdx}{6h|*m$1OG=4 zZs)^;dK7_bZ_rd3`K(XFWNw=Kf(D-pHyZC+oBGmWGY|DcO_?T ztc@qu81czb)rgI}^IvV1xOvj}O*eo2Cg-lfw@R5|tB%Iq#Mts(kAktph{U8#mxY1f zinmtwx{E%PR>l&M)i7<}yYaUdfWgkZ;O`Coc6R;!JYED{)fgMQx^^~xIPPGT=JWKv zwg16ZC{CPE1l@r%YQH{DwZcjJk4H6aUKiQ%uMHgGgSnd|pk2$MW zUNyTtSU6E$Sati&k!i3%(XrcG@OX4{e2Ft}<+}gd@!-|BWU+Pqh@PE>XR)`5aodr5 z%w_BAG|^Ko$LgyN++(&?BRvR)_D)4%s4^h;^+D#!zI4LoJ^KPxxvVue$wm62&X~#; zE)fl1a_sxc|-v<3a5>{y;-xqR33)a2Ka$$Z{Hq!Eyc8n;|@txjfSN9~gah}IUN zyVvB=GxA0JM?c;Q@tT~Qm>c!4E_g|ovvU8=6>@f>X#L$F+kv3_SjA*nSvUS5y5c<0 zGdMt@`O%M({2=sMlt{yTe*-EIJ0O7f8t*E|Ok`i5%aYtCtT?E?+GvgArlymaMv zBI+)qoE>_c8YC@>$thS<KcW3!kYLX(HLIv1B9&Cy^L z!6qK=02JAoa8IZdDMHjXrq;Y?y2*dTPhK+53CNmCm)4yCp3#Ov|BG!?i1=F{|M^QA z6|@Z1I)|xOGQ+?Yd<4WagN;9MgO*>CDdN@;-JDCF+W)_!u~!#F!^HobIeQM*{0X3n zJK!3?R-Z=y&Uq$Y@Np-jE=0C!ynS0wJP(J63Iaz z$f}sn1;0tM$a0m!PHqX7u5G-uOtT#lOCji|Uv+YPAn3ODY;mOGBhY4bP8C526IOpl z_{T>A9~7-&DrIYmsW7RH6mAQ^+UyuQ7TM`{`T^0qyEt5uV{`h36T4eZG6+OXCanRD zgNS(z&|b@_<^O8(1#_ox(R7p-a=n255XQtcKl~X8mXQ;yz|~_Uzp)OmX8wbH6An0y#awY$fvgaSe^F9lb~SG4{*M~VjpPA?eyp}E$MprID|rU za$QfrxPWl+FzI+Jvy5v&B0gt7%Z|yFKsnq0Wq=@T;s)4F^#ka)t$GYMdZ7~B4 zy=PTH8dd*|3}Fd~v1QH?ng5{0)SpMbSjl8rY?=(JmO-UutGrPQ?F1Q6?MbNkEGK${xtUen= za1CMY+DHmJfj2y*Tf=gkdF1^yrr}>-Y(8j~yZe-qQr^$fFbf^>M_!5VsmpsK=|uUF zG56bM?Qzm$&dCDj?|m$yHS7wf!jL!f=N+=&Q z#am5UN8i_2uV*|2tdRZfHFH%hDKF2B7;as*0$cPMO2T@0|8;o|dj#%!v*wO;5j*Xc zCe{BAtet)mMJT=xEP6lTfXw~`q4JSOJf=G5=@Scj-AliyON>r7`hOplrhP(=#c$v1 z8g{6|y^`~OrH^^nZN(hmREw#E3UXM|JmxU(nD8AM!HrV-^M1hp{T&5qlb=w3t`BzY zmLMVeBFaRsx5RV^ege025y50uYFM#lenmzr-PPQek0^Eny?tVDxjYL@Dsb2jRxA=N zS9ZXRA9i1ENEsdUr+Xfd)US_abg8zSr^!}|-IDKBu(jzi=Kib*6aj2kc$zFau-*|0 z4%R;YqIxlSDpOa_tAJ;nI8oTfXhY3C+i?G$$0|rP3)kQB#esPQK}<)Kl4!iz^ZR#_ zhZpoYH0Tw+)E4GOzQa{##?=3Pfj1yRZnsr!*xkkVD)|?n78t&}_2koMF?hGc-70HG zfaaSEm12(@F}F`-#-4;?zq&SG+2QDWCPvJ}iM%PyIP3=76k%66IMZNHN^`~EBfC5F zxv4*HXnM^S%2BR@}=vCkYxNM_#CmIr*e=#`8SZII~t(4m2ocT*ckDm9vC# z>sRayKC&o(`028kw~Vm-713ynZmnN)DFH!kwm)t=iW0D#Z~`yO^Z8E@A|f(Wfxu?< z?&y=x!wU!#<59TipU0$JlMF&bCQ-S(B6ok>B=*K<@w(dZ@EL3aXD6g+>FlZVsWZcf zT@Tlrx$R}U?y@J4SB9M&&Wh32Cm@nF!o+pqzCY9nR}s4GS(13ZXE6le=TTiGhw9hJ zjc-^S9XvkQM*1aL-n0a5wotuu>pkt;>st%yZyQ#154wrbEE`SI16NP1zGNE_eu1)y z#M!v4I#Mx_%k#zc!`F2c}EpAnYY%hFG;P?kaJRwav*n zID!-eXE90l>V*$=0%!dLBuAv0Mfu%=PWW7^@oiq#<2wW42P+lz6ApKs7z zP?HssStysXj{6ZeK?&ux!XG=$<6Fg{H@*_hr-OK($c$}iO^J7x7Skz&L2OLpA6b`l zi!xh$WtInl-eIasw(BRQPin6vs>IMyW9eC5hJt>R2&nKueFm7v6V637~ZODj!MSsdJzpr=8=qW8So$%*Zu zo$;B}7;KXa*Ma?RlG>Ybt<%hOx2*&xsJEjOMV{YY;S)^E*ol@;ezTA$_L?I$<2f5D zTD-PqnEZPvtq<`l*l%>TDty+1aoa%@(+R}Cs;u2F;o1~0?@LlERls7;ZjjFx7GYLd zl`Y{21oGl{Dt za=h%&q!k$x+&|Nhz+*LpWl}mckbR-gYDt~>5BJ~XROKgF4>~IX8sq{3Oz_?#$_(wY z%>vIOPA$Gb0Sk8)?stywg*acy{wl_mU9H}EY9O-_wG&}&mC;3}_#eFLL$sGJ7KuYO z0{Ab|3e)4pA?jOk~lrwYzKD7T4*BYWJJg>s)7-@;q|2aNxafYC;@-!%JJXw*)P zR>bLt|F;->CafHBK92&ZeiK~p9e)_pu$HK(I z$L!digPQhmFhe@AyrNz@v9;{S+hgnF0!{)?g;&Bk3_Z-#UO*b=BMn;;F!V44zPRFKKra zIA%l!Aj&zv__OROZgXs}*2$~yQrW?>RQWdik9Y3;M#TDrKxI2OX0pu06t`!H9U@)WjmnTpms2|J+f{i|qKJ<-G)ywld#@w@<4FSYw_sta zS1Ri*zsI#0wYzbA=*BywxvJs)7PR>-c>pnFnOg)ka6_P;K z;<(Yl@01ZhY4|ew3_NwoL?8_-zYUR#AsdO1EBNVL=g4uZEEsoLSI-h z^?*W&UrfwJ)JAJ}u>SlWkNElnam#u@?Kai&>gzByMI!Zbr}Pp@G7sY@O1lX49O~H) z5cdp&s>%>ol-~uO5bfeEgf%x2bra))pjF%`Y%x2lo+m#cd5JX%{VI3EVM&V?JZbg< z_P{N}2w~^i&vkz7fS~c$>O0#GJd7fi?xQMLad3K`KQzzY;IV?r3g zt$X%R-6UOOrPv^3Kl#p%uGjgYXkXx#Zmf-^MAf~c6hI~DTBrQJ?k0-CA6~`I^k3r+a#?{wX)Q~NcVB8rC_vje+ zz8MeXUIGpE{;mJ1HYIoCChI+5tPC(&x|Bl17ceHyQf%mM;><8!9*gL{4`*m-f(dJ2 z#b}bYV`dCwDEg*xj%0`na~}!Hi(%ir#~(xT;%S0?KVE-5s3~u_nfddqW*IB6j8|sd zdME116%BlCt+f}jBS0gG9Gho5`LkG%hv-{MNzcg6FN^^f#3u>L;k@&jIR8T6%6G9; zu~}m7tky~6GUMu9W2V;r3Ai~^m~qEPCKf$3Gnyn7w`ERY$!OH|V-uR+iOiqk>O$NU zKTyDv)4*Jz=V5x9=h(%`OR3gCXD1ND^gaL)eZA-?L;tNh$;I>H`|vBy;Jco^>+Gpj ze}m!ZbdqP7f%@We6_X;gvxSVz990Kzc&zDCNZL{yRW4DxPtrBxs{VdPz+yvLe-yKc zG8%{dTO#Xj6r1m{D^3xt{C-1sw9b%(fig`lPU`g)y!M=mn+l(VD?b!z0TE-x5c8gy zRT9uyE2J-Z{^xoHQTgrg{wjaiuRLTBr0tIS`EOnGh+ok5mSIi7Ap@t6p z4BKOcQ>pqJnG6dhi}!ET{od2FDnm0H6WXxUmCM9zzyCap<0?HleKX1c%8eyo%+46< zHL$eBbgXaFcDLEx){B$7CBynvGW0&^hARx6nY9qP=ETn!J_?oeQHQ1dK%Yw|5&LU1 zNtNU$Sw;09YH>dn&C>8@9~KB`43AekZ|?BCeLfbspnqdtNNm|6-}QUV!9w`^?w>dt zn&v!7vkx-9G_$FgcOsBbCPg?)2jm3?w|UoPg?k+YZOVaJ^QcOZ?m08DkT(!}+iyCq zSS8%FFSZ`790Fd`g(l3X^LKD^oGM0u%WVbbDcGz(RJCEhwC2w(=vko0IZrp|KTH+x zwJ_#6fa}oy!Bz3jfgG!sR-1kO<%vacew(wCq{d7`&z5e?(()GU{kZP2ONEm&h-E?- zuR_PHOo*iwX3-EpGC`XLf)5kw@wRdbQM2&+ppeF@2i6F91i3fWYZ2qP3j-ssKf@A7 z>+J3SU>z@OB|dwFq9*Z*?*>V&PAlbdVD&ey4ND zpH8)vawDWLg2)h$z+(A*K*hx zpZzkvl8NtY)&!VMSnL5%Kuc<{XD+MtiiTA0eTY)1K=zw3&hudvYh$n{(vse}da3QL zb!9eF5r??M@6ESgm44H%5rTE2f^apgaI~bOKU>!Ve|QM8G-#E_5GNA`uB`bX-aChi zxCMTayALFOM@`1g15LrT5m1gy#EB>~ zjDBTYI21Z5!R>8Qaly@95soFb;=_sPrj4m zqO4wTdE`1JnH-5*c$O;X%wEb)qR@hC<%OXx+rYA0@>)AwhD_&12i@*_*{*0cGA_hj z6?eQLugx@f=xHJS`{x=GhjnwJcoR~Avo{FdF;k`;U3u+Tp9G%_zbvVbq`HIya-UdM z7tCDE0{v1KBNW|>z8V^e_5QgCxAd_y1moWtCD8V~0y2G7?N)YDSV7{9f&?s+S%o(X zllR5}rjmBPXV*q!DPXk!kc)~)iq5#9@XcC<#0V7P>sJp}KJ$k3R05J$e%{IK)Yctt2gjg9hF;^PA9EalMl$gMZwicyL>j~~js#UnyvD2Qx zcj`G$s=}}xfaHMCdV`kVB!H0ST2?mWgy*|J`sa;I$#CB}e^9}-xxuylW+M*v+WNZZ zMn;>{1RB~`?d(LoK$AP$6>$GmL4Rkc%)l1ti!Z)pB*T8@7DoKO1$_d^{pAP7>+21J zwT0^Vqh7GqN3Wx&$^6y{eAGe3Yi{MgR;voWa>51B5#(=YEdv19gqIn>Fb@WzDmy3^1mCdM&)4I*NGb64C= z63s)8`r!J(b-kCRks0-!omieqP(Geb#7+T zux-F5&iu^^f#7$U4C;jh42@^ig|Fi<$SN&K?rJrYyt;RzNtzy*mhTTP5HJX&I*ZHw z#fd}I8OyvL0s=JtQb{MQ)&0HI?yiVVERs^rOv9K@5(D72>90Y7rimvE{p!;Midw8k zw#oC|GY>#XUEg*g#{IZvpTYEhqUhNZzME&>{v{hJY~m+)>$Z7vnTiOr?{;66lSQNv z3Frv|rsc1Ngvzy_Crl!lGW4^5b;NMI=3m$#yM;Na4P;oKWk@y7$4DLal=%HJ=EsOS zM=BtGY792sr`T>mm~xHpqiuD*5PggtPDW*eRri{g(rtslnj&UCVSR%XbN%^-udf2x zy7&U`O$Xo^2k=$Pyvf;gtE9H%cu=_>L+^LfhuEGoJ!zJ{obo%B#@*`F;a)7p@cLaX z&YsYs2AaFWT5M_;dF{V!?eFTU6=WVHgx($~EMJhnR`W`2RBiMiPq24aCB2NuCR(vn zkU#(0Mj$&SK^oB;C9XV@m#L1+uSgisVo*isY@ChX#KUzHq76PrdC@FN8t34%LDT); zUv$H)t-0Rj2G6edxHmr{9p#f&P{azl_wZDmfhS3&o8NJw*}dN^7uV6%2^Dq^oigi$ z4$G)nAjqLi$!hJUXD`veZGS1!E`zpzD#|kPazWpP=O!o0hAhDJ9LuPAd5_{PZnv|c zD*}!Rxf7T#w|{}xE5V&t*0;`XOcICSHUn@uR_VB!Nd9u-_sMamee)TTV3sIMt!Miu z$EznVuKQv~*l6)+kCZqKa2a#Kdj%t~PBY*CQ1#*DWK+P|1A-OpGtj@dMfaDT674plB2Ki?RVaFyn` z9P^%xp@l%a^VtI_#~kZ}%?;+~Og81%&xb_|Hl;aBe&Do&O{<5xWr5>|#kVKd2dXT7 zKgj)};c`Gc;QlBl(eUy z;RshXAf4b=4a>Cdzx+bUc9W0d=?6_re66h{~#F%(2o=v*A@;Q)Kl~r zBuUK*CKZrds_V8 z|LP`A{^?S4v_qgdxcQm%9hM2}>lYiR9!P&({uQh*2QDC7#?{<=Cono>XB_+UE;{Bj z*6Zs3j^-KYRkdb25}tta6JIm-@1jukh$5mNPTu;@eIvw-S)GT9Nh;^zj9WzlmPv&? zdj3Be6mSPvv8;J;Wpt1A~yt&pYT${P@Gca4LtRP$^bg>`SmR{rhjq zW~d4~16Rtnp-^tj`Sj!}Tyk`BVr;?{jMx_qvJiGi#|6n@alAz5j}9b`K6fydN4s1B ze9W2H32IPvyLWH>-~5({>%q9$|q zHjN4Xv=aCUaW74h!e%hGRqA;NGuV?W9~rJsT{iElx=eUc^OiRtP)GW0+fS_UWO*@{ zr5I&UB8C5`b8sn{M5kY?<4U!0r%-}o*~5K^k_^{OciK@NGb4lz-i;Kcbd>HwBkKmip;FpE$( zkm4Q~u6iJaU}8V9r&ZfAPhfVIHd5*ilE~1hXz(SptB2BMtz@tC$=>gOlExJAbhkuC zrPO+PiO z21AKExMoK2H>#)oGjF=l!^i$&M>5L#Yp3u4DCCE}) zPYZ7G32V2y;;yk&`q7$!kFy7RWejZx2uhy4o3pSUgg?_l1-i`-`V&+ztyknIKPrzS zenJR5cdNDLB&bM&j~0P+L( zQf|5^oQ2d|)RGA&inz0WFP~XCf%2e!8o>MO&Z{aX^I=F{Kfmeu^`sdjPQ=Fsq`%9( zpYxWfjlQJ|LfaRNTrU#sDcIU!8c;<9FSMjaS2b5d4@tt-((MRXYukXzIwj7?H2CIl zYY5!$t>LEG1lYfQQd$JwPr`JcqxqSHLsnY;=b40!h~De$n^ZwkR5=k>#0}<7_l3+=!U%3t9pJWAIU*`>5ex?NT zyrF6De_;E)^IkYb^#7AK2mcZhZNFX62MY*QeblGjbDS37DAxa|8K@?aw`KNc1|J!N zP2ku4v)qF1z)ylfra8yCBtCn@eG{5t}z6ih$re`xwv$WU#7(W8V4kw68 zAzT<<_1OK~=?6uB-gBIC-$_OXxbPKS$6vbwJEC4WD_bp-t%{UqK&p{X)vCCat+mjX zz6GUy`G#+fE(%_byiv$^3>8u&WbM|^7BzCsSgq6%@Sb~t2)^*gsEOiRyM!OubxAn@ zI^}m2YJZ7{0PX87P_X~jvCNCU;v^hyN@8;ZU~yfOS5h?lrdB3`{`Rk%!U#F%lf`|w zx~?a3%NDA~Z2rvE7SKFHb$^$iidp0NX~L7fg$3dlr_bPkYXwGU0xs#)JsliWUm6Ys zYHg!`ELk?iBf6JTsBj}J9trYKn<4kv6IHdDJOx7c^pHA5M073WD~}OBh{B}_k{rew z?Qd)rPZX$Hp)&di-Z0DZ2CHSHoN9hwVLOSs;4$vmQ)?#dVjyfcJr{?mYl(|k0V4%- z;h86nP_u8Ha~QE{mL}4Wh^?3c!fwO+q@X*jrHjg?J_{{d1v z$8RQMQ@ENNUL8X7UkNYePhf?*fB_u^$CL-#(ib>)T>< zDbP*9?#bGJXaEZEvRe58*S^TpEt=S!6`U00{k+6)Ji`95uvKVu_4zunGGqk7nQT{L zjL3dTy_vY18!4{48aBr0h;UElf->@CsF{i9?Ng4Vu|xrQp4fkZG39#hcZXgmMS zk#%dE!|sFaAD+iO)TIsI7~Kzc2y+}dMFq%%qJ_0CUgG=O6ZLe*1Ji8j+AT^c2=laF zIgw3xhusfaQGSVvV$)W9!s?PuP&%efz8cXRQnb`RkJWnZqPiPy;IQ8y^ZCxCL*g&u7|0xh+ zQ=q#;E<-z)(S4=Kp0{V_km%9p6FX-OxC8QLhY}hpV3mX;~4KI^XDmS6K9gNbg!lJN?Z)}m5uHc;-H3^`XrY<@02g;CUtlyn| ztepCrL@ZCYOmViP)fQAl-k@Wz+=yRe(iDLde17P|O8RWd$8^?TCrNgiG8cKLzC7+0 z^?>T&*N5UiLT@$6NMB@dtlh7y-#Tmhe9KxY32)1($gDugq`g@<@=EBObEtPncW2SR zVeGXiFW$+fLA#iBo91$drq{-jXkoVgPC{m)_ss|k@AE+6Q;P@gy&q|51AK~R&pm~T zSoo5X=O49RU8`o&h@$uEfA;`_;Oyc1w{a!5`!3Xz=jU~r-pKA=GvG0vBb@Aye^@{J z%>AMoTi-PZ7K?8-)tnry?td|!Xz05Co%piZi^<=m=nn+99`-T(E1(Go#~{NcaSa(4 zoeUAU(~z6p#;$J@qHDs%+<&JsLkQZZfPb}9dCW3Vj^5SkS9n4%@7lYyc(+EnJ&z4n zxT?4TJ~2f7-yihHD}?g)JiV9FDw*+ec9Po5pl(USO4a6ByCbtiV_jBVh^etbpwCol z!2R8nYadq2-z@5HcZG>H0~C05<&~+sR*6rbS9aKY2ocH6UDonDdoS?iFFxkH?PE9IpFbF+`Z6RNIcopJxoV(_S^bez zyf=nHgb`s2*ka%G3C~a>q7~%IW!eX`lWWTr0iq_}T+9!o{u7C-puQAdn@u+bS0e%g zN?q{6N$rX`)S_&OyrlW!pRj!U&MySK?l&_Lx2ZO`Xzw=grsM)BaxEd2`~no)Da)ptNk`3nTcrN|lyXR-iJCf@9Afct)ySW@-- zD3q-^b=xN5kVZJ8q8$HyQCfU!|MvP^zh@QGw~pP27fgX{6yn#6?oZ`h2MGUaWd>q_ z!ia@<>P57J%=+B>mPf?}PW&nY&V9XE z0mLb7#F5hD(90&eT>GP$@9ohMEx`lmlth05>i4=wq(1%)3=QUVij*zFmpRV=`ygeR zYOyYifF#=t>P1M47Z&%cMSe=uVL-Y;Ja`z%i&#V5%l?25G!<2g)*HtcCm{_NYy4)#7+4axf3OeMz~31AE2aIF+(qI7oQv* zF5Nn*sMj-FNr=BS+kPPORl4YETIJ;E8r~lr$A3piEBNVS$4$jIiDcZz?C6=+vgGKeo#{F!%H{;%0D=_TZL8{w6fgEx~7n--;r3l9+lBb-c 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 Date: Sun, 2 Jul 2023 07:46:33 -0700 Subject: [PATCH 3/4] Fix broken link in documentation The previous target of this link is no longer available. I found that there is no longer an authoritative web page that provides a list of standard GATT service UUIDs, equivalent to the previous target of that link: https://web.archive.org/web/20160305021019/https://developer.bluetooth.org/gatt/services/Pages/ServicesHome.aspx The Bluetooth Special Interest Group has since moved this information into the "Assigned Numbers" pdf, so I replaced the broken link with a link to the download page for that document and noted its location in that document. --- docs/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/readme.md b/docs/readme.md index 7451e015..5ba0dfb4 100644 --- a/docs/readme.md +++ b/docs/readme.md @@ -35,7 +35,7 @@ Just as with writing to a characteristic, you could update your characteristics ## Services, characteristics, and UUIDs -A Bluetooth® Low Energy peripheral will provide **services**, which in turn provide **characteristics**. You can define your own services, or use [standard services](https://developer.bluetooth.org/gatt/services/Pages/ServicesHome.aspx). +A Bluetooth® Low Energy peripheral will provide **services**, which in turn provide **characteristics**. You can define your own services, or use standard services (see section 3.4 in the [Assigned Numbers document](https://www.bluetooth.com/specifications/assigned-numbers/)). Services are identified by unique numbers known as UUIDs. You know about UUIDs from other contexts. Standard services have a 16-bit UUID and custom services have a 128-bit UUID. The ability to define services and characteristics depends on the radio you're using and its firmware. From 8ca541559676bc88dce841a889d80ba557fb0399 Mon Sep 17 00:00:00 2001 From: Martino Facchin Date: Tue, 11 Jul 2023 15:13:48 +0200 Subject: [PATCH 4/4] Update library.properties --- library.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/library.properties b/library.properties index 3da861aa..a08e251c 100644 --- a/library.properties +++ b/library.properties @@ -1,10 +1,10 @@ name=ArduinoBLE -version=1.3.4 +version=1.3.5 author=Arduino maintainer=Arduino sentence=Enables Bluetooth® Low Energy connectivity on the Arduino MKR WiFi 1010, Arduino UNO WiFi Rev.2, Arduino Nano 33 IoT, Arduino Nano 33 BLE and Nicla Sense ME. paragraph=This library supports creating a Bluetooth® Low Energy peripheral & central mode. category=Communication url=https://www.arduino.cc/en/Reference/ArduinoBLE -architectures=samd,megaavr,mbed,apollo3,mbed_nano,mbed_portenta,mbed_nicla,esp32,mbed_giga +architectures=samd,megaavr,mbed,apollo3,mbed_nano,mbed_portenta,mbed_nicla,esp32,mbed_giga,renesas,renesas_portenta includes=ArduinoBLE.h