From 5765210f9beb35828edfacfe5e1be1638f0066f2 Mon Sep 17 00:00:00 2001 From: Shawn Jackson Date: Fri, 18 Jul 2025 19:13:07 -0700 Subject: [PATCH] CU-868cu9311 Working on PTT logic. --- .DS_Store | Bin 10244 -> 10244 bytes .vscode/settings.json | 5 +- app.config.ts | 14 +- assets/audio/ui/Space_Notification1.mp3 | Bin 34040 -> 0 bytes assets/audio/ui/Space_Notification1.ogg | Bin 71066 -> 0 bytes assets/audio/ui/Space_Notification2.mp3 | Bin 31845 -> 0 bytes assets/audio/ui/Space_Notification2.ogg | Bin 69213 -> 0 bytes assets/audio/ui/positive_interface_beep.mp3 | Bin 0 -> 11393 bytes assets/audio/ui/software_interface_back.mp3 | Bin 0 -> 33437 bytes assets/audio/ui/software_interface_start.mp3 | Bin 0 -> 57976 bytes assets/audio/ui/space_notification1.ogg | Bin 71066 -> 0 bytes assets/audio/ui/space_notification2.ogg | Bin 69213 -> 0 bytes customManifest.plugin.js | 2 +- docs/audio-service-direct-playback.md | 92 +++ expo-env.d.ts | 2 +- jest-setup.ts | 28 + jest.config.js | 5 +- package.json | 3 +- src/.DS_Store | Bin 6148 -> 6148 bytes src/app/(app)/__tests__/index.test.tsx | 262 ++------- .../call-detail-menu-integration.test.tsx | 4 +- .../__tests__/livekit-bottom-sheet.test.tsx | 23 + .../livekit/livekit-bottom-sheet.tsx | 10 + src/services/__tests__/audio.service.test.ts | 144 ++++- .../bluetooth-audio-b01inrico.test.ts | 253 ++++++++ .../__tests__/bluetooth-audio-hys.test.ts | 370 ++++++++++++ .../__tests__/bluetooth-audio.service.test.ts | 27 + src/services/audio.service.ts | 191 +++++-- src/services/bluetooth-audio.service.ts | 541 +++++++++++++++++- src/stores/app/livekit-store.ts | 44 +- src/utils/b01-inrico-debug.ts | 143 +++++ yarn.lock | 13 +- 32 files changed, 1839 insertions(+), 337 deletions(-) delete mode 100644 assets/audio/ui/Space_Notification1.mp3 delete mode 100644 assets/audio/ui/Space_Notification1.ogg delete mode 100644 assets/audio/ui/Space_Notification2.mp3 delete mode 100644 assets/audio/ui/Space_Notification2.ogg create mode 100644 assets/audio/ui/positive_interface_beep.mp3 create mode 100644 assets/audio/ui/software_interface_back.mp3 create mode 100644 assets/audio/ui/software_interface_start.mp3 delete mode 100644 assets/audio/ui/space_notification1.ogg delete mode 100644 assets/audio/ui/space_notification2.ogg create mode 100644 docs/audio-service-direct-playback.md create mode 100644 src/services/__tests__/bluetooth-audio-b01inrico.test.ts create mode 100644 src/services/__tests__/bluetooth-audio-hys.test.ts create mode 100644 src/utils/b01-inrico-debug.ts diff --git a/.DS_Store b/.DS_Store index e430afbb1805cbaec486a857d6ebafb1be40e2d9..9651bb30083cf3fd617e94ca454b87eb12107d5a 100644 GIT binary patch delta 446 zcmZn(XbG6$&uFkQU^hRb!Db$Thm4zF30W{smKANO=U_-?$Y&^HNM$HuNMuN7NcGIg zPfp6oPhwzT5CGzX3=B;3{(}LK$G{*4RA0(a%uoW?>xdZjDLo!Q(Az25>Fkhep@_?GtfQErAz%X!fptuMVI@Ci6&2GR~XKEA6Vw$xsOtF9Lfq2dFxkAsfw# fxj^SAK|H##(1&$1yTUJ)&8}iwNOkGtRT4P>R*ZAk delta 576 zcmZn(XbG6$&uF|cU^hRb@n#-@hm4{u42cW{Kvf0E+}EhWJqSvWk>>wWisS2q#&EY z4^)6hX->LfaB_Zb0mwQiAfO{R-^C@V9^zMyX)iy7@A`hs5vY}*wiFj=2$7(xAOnl@ zk{A*vYX~=r3IKgw#E{C60>pXXP)KCRnfy*fYVtI3!O5i}wwrH>+-78BTFJn`q%?WA z*sjgX#Tl6x878lkjGY`JWhKhSPzKhT0u0C^SfFhzT)?uKUEvptI5afT-7r}}xRXe` KxgmD{2LS*((UuGV diff --git a/.vscode/settings.json b/.vscode/settings.json index 898d5795..88f4c3f2 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -42,5 +42,8 @@ }, "[typescript]": { "editor.defaultFormatter": "esbenp.prettier-vscode" - } + }, + "editor.codeActionsOnSave": { + + }, } diff --git a/app.config.ts b/app.config.ts index b7f3275e..68fd20a8 100644 --- a/app.config.ts +++ b/app.config.ts @@ -24,7 +24,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({ bundleIdentifier: Env.BUNDLE_ID, requireFullScreen: true, infoPlist: { - UIBackgroundModes: ['remote-notification'], + UIBackgroundModes: ['remote-notification', 'audio'], ITSAppUsesNonExemptEncryption: false, }, }, @@ -40,7 +40,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({ softwareKeyboardLayoutMode: 'pan', package: Env.PACKAGE, googleServicesFile: 'google-services.json', - permissions: ['WAKE_LOCK', 'RECORD_AUDIO', 'FOREGROUND_SERVICE_MICROPHONE'], + permissions: ['WAKE_LOCK', 'RECORD_AUDIO', 'FOREGROUND_SERVICE_MICROPHONE', 'POST_NOTIFICATIONS', 'FOREGROUND_SERVICE', 'FOREGROUND_SERVICE_CONNECTED_DEVICE', 'FOREGROUND_SERVICE_MEDIA_PLAYBACK'], }, web: { favicon: './assets/favicon.png', @@ -176,7 +176,14 @@ export default ({ config }: ConfigContext): ExpoConfig => ({ [ 'expo-asset', { - assets: ['assets/mapping'], + assets: [ + 'assets/mapping', + 'assets/audio/ui/space_notification1.mp3', + 'assets/audio/ui/space_notification2.mp3', + 'assets/audio/ui/positive_interface_beep.mp3', + 'assets/audio/ui/software_interface_start.mp3', + 'assets/audio/ui/software_interface_back.mp3', + ], }, ], [ @@ -201,6 +208,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({ bluetoothAlwaysPermission: 'Allow Resgrid Unit to connect to bluetooth devices', }, ], + 'expo-audio', '@livekit/react-native-expo-plugin', '@config-plugins/react-native-webrtc', './customGradle.plugin.js', diff --git a/assets/audio/ui/Space_Notification1.mp3 b/assets/audio/ui/Space_Notification1.mp3 deleted file mode 100644 index 16f343298654beab47737b45bf028c6b6278f946..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34040 zcmZs?cUTi&&^Ej&ga83U4@C$N5D+kQP>|3&hAK@By(6F~ib&{PLXjpYU63MO5ctu1 zZwi9aks@FLR1orp=Y5~+`u_ONADcbd%{lk(%$&K;%tTj18VZ~@0W(umP0Hs50Du_S zJ#dy)kdT*?ki=sD=j#7GkWcXcpWgrfsim8@3*`!B7~nPlgbxAK^o*<=+-QMIqT*N? z`Ku}_8anznOf9T$5geS|y?pNn1Oz?}36F|ak@A1jMf2U_;@;MR;W(NvpN$K;>|27QO z|2qpGioUYn^}k>L?;YDsp(c85yWk%csG@9~cqGOht94??UzrSx@ef{)2(Bv6DCnS7uSOp(V~#XfoH75Pu6>Hod|kO%;ndFkGE z%EK}7k*W!~e=S2yl zJ`s&+S|YVKW3q+au+aZs>B##AeYd$gEBa;_EM0E2luas|76es`$f=6Tjv0!oH8QdI6VE`(l zJBqJ8OcEuM6cfuh&e0Vy(6)8JX&%QIX30rSeTRclr1kJ!XLo6#%KG+brVzL?ua4O(*_7;}@G=1$( zzEr;ojqo30x?^zsI1A z2(E_FZUw`mgqKfdUwqKw1UlF9xU0QN4hqG5j(eg0qs3Ah%OCMSUtC`NX;5?CNY z)cN1+{xC$EEX}&fycA-^nK(tJIa`1X92HoKX_t_8EUX(;XfeVYz_DG-D2H3q%tLTE zS^m-Sbh1uU+-Ocl+|o^f_@S_Janu~My(4$}o=UBV$@)h!+2${01*2jMb&{d>nd46ei2Mi}P&opjbs6Mix7d34(u0tQ>rB^aZqsFlZtKouzWg3f!$K@_fB0$#OFmrP%~$g{$Fgw4sj4*oP*p)f4}i5juIry@m%OuZFhbK1;Tay><8a%{QSk zbY;H!8x8;uF`piiKp`O@-k~f@RYQpW96ryh zBXxKoL_X$_jjRWPbf1vrQHe$#>$n1U@=317a0p}v-LwA~4fn)Y?(Z#uF0e$g@BUp| ze$6Bx`&KD6ywLax`FJQRB4n&(@%O<1gpq6O{cK@+T-40f z+3?E_nLLvU0NM|O{&NNBzY~vA5U>gE?oG*idjzl)R+2M_ue+k zU#}9+RNfEVo1U)ZZG{(Tm#IvySD5{7QZ7F^G>rzt)Z0#a0az-!(bU8fhGgMhWsqfE zQ-rh2G&?b{8IHzJ(_b1=$}M_tY3V*}J@!?&sGdK)t=c*O=2stgRQaE=)hDH`<}W6< z`bwl4?*^59DF1zx`>!lWk2WS2+{1)F{v@FB?%#a9-{H5nCJzEBtL`Ek07lDC{*6Ak z_Jj%TqKWHJg${F@Ew;-HRUkX^WI87pCBdL>NQsnto0*l>RJV9(@*8Gr8P}diiU(QV zb0tY>O4t7UY~R#*;r@+tV`}sxY;5KsBZD!W#BXe(`RU?2^9DElzyf6OS>jFx0Jypa zlRb%ufi9WCzT|6ks(A>=J(10n$AC1q7z7HgrS2+{fx}tvF(Fw*K3snGU!hE@fvc>i zWztPUPZybFDWfxR^{OoD=y27T&$XNWbLF`v%!NRQ#_C|Fl8eBk9*w0{i^HL;(>C-l5k zWi2{Ra?QN&rjw^C^XtpU=|CU3jt3vN=e`twbP=~b%NcU;0ITWxF^sXK#_xDo1$ySC z#9{K|)vYRSuWvmEfJ-hxWLE$oOCyOA?z`^;rHgjH=2pzXAk_3uh%QE*Xwb+FG>mR* zip_C)XmvY@R0)P6ao=?{tC+F3eqz}DlGH?>BpHBNK6P5{9b+TM)QI* zt)geLu(`D0saNVluMvs$m*xiZL^571#qmp4_bcw|{a{e}-cwAN{QYOo^Q%As1}N+b7CrENX}2 z#_)8~_?GrOpIk&LqVscc?3&(U+@VuAEhv3d%!P&?IEBS6-(dPM*Sl($mPj2n%pK9V z;34sO^T&5d=N|n+k|iQkgSd8OQ@u@I>s%97h>%TjO^;i4I`=g;+gwVy=ofN0c6}rG z-Xrr5Ut$Zr56Wg5T&})X(ToOwo0h?6o&cZ<&3IQ_aMiv>N)EM*QID8M6vMe`YO0r# z18VGktOywlqBgmb5jtO8XBbi?di6vaB9m_`cmx%ix^p8u%;#LUKF%IF)J?6!d(kCb z_T>+U$lJyHrH96c!vG+LQ6bCWV0=QNy{zce9ON4<*Vo+L0X~oIGStFB7E&l$#|lOF zPu0>2eo73RX-V@}rJ%H-`Z4Tn4w04Bj(yzkPeH3gU0G)a{*jK8Z1_-^$?Qy`=^$n` z*3=2~;NyvR!GZl9a@pZo`<=19zqx=*>Fi{;6BRY|KH-~dLL`TZ5EAHAD z4lEb2?;kC2mtrtv+XveBKPG>-pE65i`qe#k`-tfw9J}I;@cM8Z2$$Hq%sB%Eh%c`04_cij_*(*F`x8c7!0RB^e@qz(?NF9N}M%Gc&^$KbfQ-eSqJ4Up? zc5ZC~%+^^YOpEQqx}K1bdGsHA>Ui2x&zE0~wGD50lzjWuhC1KF>UVQCbbT9fC0Lvr z5e@y(qW2_3AU#j`jTnUW(LvFk^RRPez4EU2nAhk3id?b4P3NF9SAb6s?iP9v>Rjm$ zcYU|q9j=u+jY3|>@_R=Rd~?+s?vqbQ8hZeQkFPh7+fKm~sxamfFG6n+#$JB7w!DN~ zsejp$o#9r3UF-`ecCZ$VeQ@M&wVHt_o4xU73O~)P{J3seTaJ1;%VBV!WV&bb&x<6Wpa+;r02@7Z+evokPe(&wI=E0v9Os@KV{ z9q2ax&_?(BL0c>1t)^T^(CdiVUZH+o51oa+>51EMDtF#wJ!c}qCV%msasU_;i!4FT zlrYV!tuoh58|bf{RJjrXRS=FZ3GKvh<>qm!AHMrKR^hk?`?DlYH?~t@ve$S1W6V{p z&+fF9iqoTtubRoqrIo&(L%~YpA-SGYhSXEk0&K}%j_(<&CCL@7<=f;r88lG!oqRS6 zu(=}m9XGXP{ED@NB|NUVtg!`@Ije~|^8b{gg5*r|_`6H_5GQ>74Q|K@m1KOoh!Jb{ zX*GFsS2399=z9s?sp*uCA1wi(NdIFUmDY*WRfG*K5rEq-PjmRscEZQxS zET8mYW}+EoUHP_xPd9cpKToCxd+|Ob?>|C90$dW$Jc%61SDu4A!JPN0V1zgkVt3)q zao;tVqop)$Oed(o^4D;!#@A;|nlQ*47TN^5%Urg>HnLz=mU^cNxw$9)MQ`i=`}8QO zvbseM>GrxQv^n`VQv$I#Et0OhX7k_O!=u&(9L=pSDyO-CwO+n?K;Ie;#DL}&iJ}s! z6U+!;FkrV}Bxop$Vk%lcyf!tb8PzJt_tc-rP=uTv&!%4#YL02rV4K+xVUx7jd_I-h zh|@YT$OtQD=J9)PGjsN1popvCbM3vdXJm3yVLL5H&I5|=7WofjA^C>%^uo+y@|xAX z!Qm(+08O8!!40$9HPdDBwE4tb&g)YO3Y%n!i;kp!BX{o7ur>vN}K2!n?pT)*UFps`nBlnfLzP(D>lqg;mr3OntAvKe72&Y^&^<{ z>Mu`so|_!lve<)ax-F^k73|MY#l@MFVu!NSJ{M!NUpr zr)q@6=YcgIwdqRxm~}lhmm73$s$T(SEsCjT*rVM3pC%kcu2y?o#GI z?0%n8F5G;pAx&88jTeh#HDi*RrG;#u9pTc3;JFzTfB%Noxx^cs(fqp8Lk z7(czR{zMjfnRzgsNZwgQ0O0SVCluq9NqwnroFsKS7KXT@f&K0?s0YHks=gj^SG{^k z{KG41i%XBKu=shM7uss6dxi`(1Y>iSg&ghIlGkn&D?e^(&;NVjzXFM${Oyi3)}-VF zzpY1*o!Pe9{p0OOB-rI<5XE^hKZoiG*(I6Yp^bvFIWWZ{h8wUY;R;GIn;L(LrE$SK z$3KLijS7kR0({kat{MX%ktUZ6%&l-(RNQd?E!UBuy<0nKidV-PJftEZIs7rpqKiM- z@0ZD+c%CiR{tlEee|T=H6GVuqP|rz*9?CuZ&zM)J7s4@#C4Y^U+?aHKDf~4$S2-(IX4QPmzpOT4Zc#;Oo!-=0?X{JA zXk_)Y_?p$2L6_y1*Wx@{m%54w|;H2>qq8?%^AS^=3cVg z{U-euKc;d?W08dI?C)0Xl94t<~3$1@To9Ncz-&}8?D@>WBqt*StN74Kre0j zeMF&GrJ&V|*;14$wa=1IBT8Pz%$kL+JQ~PsJq^ffFx_sB+WE9myF<=f2N>saexLCJ z9>W?4$wsWDX~sP(MM%pFhYXZV`*19gNPOoud+&0u*jo|Nb>k8}qof}iCvZ$mHMn{t zC01y9){kE)`-KzDDdgh~u2a9>kRS97m#Sahq9Pq}8IabTB6iDx9@ z#bWz?Dg)JJQ6~3vjeh6YF0IfMmRe@Xj(Xkqu2l(ejf-9(c1Kle?w7@9EfABY4R`Q? zBu!Z7@@MXu;W_lVss0LqC=m58#FYafn z-YcJykoPWT;&;7OJjhRzsAGpim0GH|w3~{;k4B#a=oR=!q*YyV5Y8BnkfEOHsSui3 zk!pSapGff4TkUm10-tqA*iTSCGwdebG8)&Ypw;tbv~k1s(0KLlLG#>!XaF9P{veSY zPrUdM)xxLQE`<`v!hnvR)!D)Egy|mrYC|v7tjikX^^k?giBY!%29anE{!^3`Z>opuQ0n;q?OZmnRP=Cij_TU`eyav z8UYwvlq-qbtD8}1L1Og;e&^)RTN}|f(<_gBplMOT=TJUWDyccF_8J&9AqEHr@M+En zVn-o=2w!K!jTqmysG(lwCR2(6*>~D7lVfy7*G%Snm$tifaQ5Gkz0=z|09| zKF}wG_M%Zvez%gt7k%;~^*oLzK$Xsu)L+^(c6l2|-pSDMmeu%%Dhc|A+OO%fN1xv{ zljBz>c6tyCbxiyU3iUZ$f^XlFA08FOn05kO&C-iI9%2KRi~@$IhTq3i2}>$q$M}9x zh0;PV+m^Gdt@F}&&0XEA=Om^|2^86o>6l{|@A4ReT+*%HJyXxlZypJ3D^vQB-(iew zw!O#zSw1oZftUGakHm7h-VGd|{U)pPk{cf4ArD;=+v17xNF%#vP?4PX5c~LCU?OuM z6xWHcJr~dth*^P8EAT3Xm-e8>yu$7xp5#zyk04(mDgWHrK^?>EBcAXdz2!)Y{UdBZ zpCvc0!+odKG1xBdPq}`{cowHn>yNZclW7I2a(pVhx(VZ$Nx5iYt;o(|6+eHt?1nHC-o+35*GOC#A%2*0NTWpev5^ zF}jrY!(o6Uc(q@7;KSw!+d5wY)#upK^s)}@*@OLy>2k3VlHiF)nw4q!BUx9xf}2zd z0>CHxzek8vGAlQ!2AOTgLWVuLui*ymvh4@$%^-G+d}e7eOq;iKy85Z$xApY-O&F~o zy1!0&LE8zxNeXegAI@P{nb%IMtzaVJ9ab_a3~Lu5dV5^=t?TuuyYuk%baO+HFAR_v z-Y5TfD?{}(fN7i-p+mTp#Z3Qg^g)zHI`urSpxc7lhfI8Jrep$S@(fju0^do6+ zzssd1R|JjMM|G-s;4=}ozBX;w#EtZEs-QgMEEW5_pQ6dP$4=+B-Ec71fP}MnK+wcY zk>lLijRMR!1bYLo>FN;HX2-lDy%6_{*eeRX@&Z#<&zCr&=~b*M$v`(56n(p+Lr9P+ z9-sM?zOF}rMEe|VR`nNZ4raPxoag11u1Rm+qMq?LRa|UccILriWJW(;3qzm7R_7iu zD|3Cn;1Kcc7VnJ>{>7Pppxt-#ABdoPB07TLXdo0MjUE0s0=mbUKZE=Z#leLTr3$1b z-?Gw_>#GuMLvT{hYa^vkAHP+~j@RFH^G^JRjqf*-eevn;^TOr9xH~S*ziV9hmK0UP z(;2tkHbs4A(~X-Ir_He}H<9f6R5-rRx;07uP)Veg82w{fK~?#k6RDVjjpNFsJitX< zcj!IBxVi4~>qIT;F-|%*f^c-CFe)ZS5y}z7G%27dyJ;^#J@6yrhJW;oymuQSUJ#L8 z&xgtg>`1BLX1@EIc4v$2rmJ`Tzq@7R)^qb-Q8|_Z5@mdFpy#nvv@|rs>e=I+!zFoW z4RmfEvi;qFAG<|MTS5}w^Dtcujo$s41O(hSW1H@(tOuW5G!dH+pC-DyatKRR5hEmY z&*A66ImL1t-s9w_trj`Z0Ldmr3WPb7f%!^o&}M#1Tc=%8R`6YMxS7HaGh7| z*#=FZx&khaLu!H=_N<}Zxx*${Tvcd|n-kwhS9>Zumao&=##Uwyuh&9Y!j@S2F4~=& z>M;azfx=4z^o0GXP!;FSF8dYx$g*(Wi(~=i299i4P3nY4U)sB)%hAF!J2xg??*-t& z4_$&!J&6}@D&(SjjP>t3eT{r#BvI%%$bplTY#+wu-1HredR4R6*^_B@9iK_!OS%f~ zRLoAb5%$WY-2$UJx=Tf_o&?FA>4s=0GKWf|iMUc{S&~KQ&1g-))N}FZu3_i<&5C$; ziWf8;1jL4i$fwbudukzcZwNpvi*$I%>@(sI41f41hsR}^f!NTK%h3)D(^*8q^vfsw zMhsY9 zx;Ic)TEV+exb3cpJZ(wa#a+}rzTopMWX8hK{hzFEh6;V&JNG<#InJ!dfBWO-O4yZU zx4unWS8F@{Aw`&^?1X+|A@0qus#ppV?*CJkxuw;YWkq8l_Kk%_(h?`Pn{YN|HhLp^ z_c~qo@)zdm_6?up$69wTUBFoA-i9Nc7w+c#4qjxK-{~uESgZ&tcDbbF;qeM&{7RdA zT8Bar@fv(J%t>yYc6byV_^%(--tNO|V52RgM&~R~3?Q)3FSmbkV&ZpR*>tvlVBbr4 z(*grI0OQnHHr`b>oU3F%@)rXhZ9cg4QzS)3l9e$u;*p(!$4bb5OP6Sf85!OLWKwvi zxge{{@V2-N-}s1TfdEy!lrR)LjHJRMVPBd?vYxZKr0Aw}6&tXjEK#gb%3CG)VBiGg zLo)f;0;Pjy0Lw)}5E{xA0083pYi(&nIFn3W zQT2nOyZe-@9PxlZ?B@JW4YGubyr`S+_Mq~^F1MaNS=ynJC|otj*J zyf|Lr_MRsx{b$f7CqxtHUkh~FS%+_fD(U|HbZh407S$Cjy+eukQ)W4Jj!h>3vIjz7)pQ>K zK`^%?x-HFBbF(q-X!L6U1E9De;1D(bVETAQ*d<#~c=UlDZlRNh+qEe?I*w&H%B>S~ zzp_B%#-w!mJ&rVDFOX;a1rKsvTIq&TbsBUC;6wWMT`v@;Y9U~nKLWlFV*W|)e!WVrwi%QcJzIwt4B!az}3xkzOxV68u zCLd^N-Kj)w(J<$*inLKO;z^X$qk4g>w!_n->~nB%0NE~c(Eto6wHwHU6VwQfoV~0- zxq}q8IDoC)L#7ZW<}BlQ)o_E3fRO8GgBcnDP~4wUgY}mKbus&7Xch2Y`fU z9;OTu>_@GkL&t>nVt$0R9pJ#XFSY*a#iQ7S!{d>JGLM-W59{%o>5wc2PuR4r1M&tq zz{J=+rx#mn87}TC%{&>9Vb!?1n}D>Q*BV;ILK$3zwah_dFj)vNmv>`b=Ys4z7fr| z&30GmuvhZsL6XNSi3ie$8gT}i&=ao*_i>cz5T5;IC4NN88Ds?tg;KpR2(m-Mi8AGw z!EOT-hffLON;1RT{+aZWLxW_He`M|DUO}56FLL`^UlZor(%vGqut{V?vgS^2Q3bSj~|DNn7=rPf9Gl_KJzC{TJDQ% zb!%VCnPA(OjQXvzPbc5i`9pga#w{Z$8?~qVr}Dv{XDFFG_%7Ez2cR(wP#J(>I-#lm zVQtm0pRw3@HR%g2*m6H*(uov76-#7h1MaMhUAAF_|9F}3u`kEMiH!rF79kKJv;eJ@ z=D8PT^V4okF?cv_gm5d)efheAt@DS6hdL6g{%m=>_wu?|5oP)HZ$H0(*7{(_l9Hx= z7<~5VwzuY6+W4nx{=`5(uj?j`T-k0{v+Uqz1SHIMeXukqYitM>a<_f6yZaJTmfR&| zVmvJox3C;-&pg{I8$lc6Q(?;Zjm7)zm2c0BT3)`j4t(ko{MgTTRM_0}(p*#Je@6el zd{7z;{2-P{_FgM10cZ_W$Oet?hr#Xle<6{d|0wp3n7=W&>yV(VJb0+T3;Sb19v1X6P zQ$AkEg~WN+loiYLlU+33Zz2KKfFKI3Q#2B_WDD2TRh@=(lama7 z^JUS6Qmvr(2@lZN3y{~)^!T^!kmPpe+uu|Ry<%#qJHkS?Mlp7gXpW~;ME^hOp4E%D zzV}?G0%nCBsXWDyw>a8aSiVMgMMiV;+6OouQ$0)f8@GAO-un*ppvh zf&liTYweqbgQ}uE`i^RNi8Wr3IfQuJz{i2unC6AAnDd~kt>q!=o@ zl%Tzn;iI4iaW(}y@LMM3B^lu@CzH9myV@pV15GLx`oX2k0I+iLH)S7@Qr8>K?P$qS zD0EqA9;x`=vbStXO*l@<5_ajblqhJTsVSSy-1qobVc!r#OkYW!o$(-Ml%Ff_d}}uj zf+P!Ro?N742McG%JW3TA{*|$RqhtrWQv{SNu?q^%*!W{na+gkyKGtD}`gMFfe$5A+ z6d=K&-6D$T}r=>IZhi~K)t%!7rD$AvmAxuVINBsH*`%GU$0QsAJcwp za`eKuUN*bsi)SiW0)=*J*9r*(hjtFz>&CI+ddiyng7fZw+kS)xA_1w? zBfF)19g-bA@+a+8Fis1Z8p+3I=Yvh9Hl+H}{(=h;Zahu=94)&uP&8p(@bCk}EnU6C zK@%9CrS{)2KboTIO6H93yUs`PZum+(dxL3 zeR;#Y*rKu6?}MP+nyZ#X+Ya`9>)!@zXPVnVMs?p*blzX1SK&+=c1ub59Dc3|^8loT zvdLGnv-DU;jk!dsFxVEc@A_X_ew$LD{1Usse245(f9ExstmaMtEQ3A10Src1{SQZCZNq9b%o0@~gFcSwjOUhX~z z7DuhKEF#%dNUW@I^U%`2%@TQ*QWU+EBh?}y`+Lx^#poSc$zH*J(cWU2lmerWwEA@- z$Z7e2#td8!vxrK@!E)KAV5};9xefzwd(f$193u@8#=kVU_&^x>Q%{#UGyS!VbAY$h zaA#SvvyfX9$)6R-OWE5}GxE3naJ}2ZPnd;;U*z)j{MRxy{^s>x$X zU-{Sv(1}hUCjnAr{8AV`0RaJNZe0+F`*AHFeG?_Z%V2qvUe#d)P*FKwwD-V}4zb=q zTis2k!r4Wa7Jp;r(Ymi&5GkjQN{J1K5nJdoFvnibgMQ+b78* zZfwkp&9HtVD3}d=NzyP=8Q^sK+bNkl(^-^yukDPyc|!K+0zlnL!H40X=K{&?$#pF4 za9t^^fXAdD;_@~V20`m4(G&u1(f79`v-pVriVpL07>ij;o^$L_>^%B#_0E|gb@TIx zXJPX>MkAO4e0sw(jRn8Z5`7#xql$mYdls zSx9SuW4+=l66ANl!YOgrWbSd=>#Om1Z;(fJ8nTojvL1a`OY)1&41_i==6p8auWmmd z6&XS5K%p3inFbKz$i88EK`iqZcaaTUn2xY(s7Uw&8oQ1)n9~M}2&3tSItKJrw)*xv zIYrwfdA`5RHMYbcST&4T(8Wsec{%}!6!Oakt(78`Bqf9(NSri$GBjP(naMFRM4?B> zxkvMzXyKrr{6a4;AR{!2I`B0hTiqM6&q<}1AG1w9YGOfqS*!#+boXo6xwg_eEw^3x z)P8+eM)Z5W1^MjF)3(F>%qwS!HZ4SmdKdY?mAGIwb8f1;MDQ7x)>B_J_@)ERjgdkk zZTCaozYPG$G6AC^M*@~Pg*-Jm(UD%hR$YI>#}uh;Z+UmXNgmdcCYuD!TT4J){^W;lSOP;4bFK60RG?Nk7My z?r8Nj<#q+VMbv!&_8@9;V;r0%TCfxquclciEqgUy&RU&{OBzSTB+UENWShZdUt@j* zr0J|9WUiqli*fd4j&IO=6Je1RFAYvs=FIV|N#9AMk=J1q5ij<9rdcoa;esUeMq8^c zd2jpE;taW{2nXh;kR2IdkC>aK%jqO3!1SFpvddKr!^l5|a7=ZT(V@9pD`&?Rydjnb z;rDef%0T4*s}uf_O8|HgvM~*$`|P%lHK4@D$-=(`(qtD;d8f84OehtIiKhXJ@$vD|1EFE) zl_^e?+{h(7tAz%Fz_$sqfTrvJZrM9bUI62kBnkP~MNQBcFHkO;s+PefS@@*Yklyc4X90Z^I4yW5EKbZrbJXNFb zuY?}h&x-ZtV4!p|KMU=7IQ9LB+g0of-_IHjXDF*xqwzfAc{g-fo@#0j_dG62RC{8{!I4Ws<(Cp zq?N;jss$?cIGQGJD9K>xr2R-IS;_LrtJu&`qK{)pvZ`8-YxXB_wMLn-$|a$4JM&AB z5I%{UgQXrA0xn->=!$qxoYZ)0Y zm-`m82+)Ny>1Yweh4M64hM2I46 z$S`?TYoLc>?p7=-6TmdcosY>d5M~#KqbK}md^QZRF>>Rc0O+C#AA0XcIuOShBj9~% z7gMW*JQ&=tVHd(4i%hU+w`v8f9r^#TMPoha#bLc z`(m0rX4T8chON$`i3IdNf%@1V>5BD{S5zLdo4UNJROY$j(eOLC_mo4@s;{qp?v}uBmpR3^Fo1LC#+SA1-7#0}Xh!0Sgz(?AJA@9y{ zn1GP4R+vbpItJRT2Qk0;nR#<)`Nrx?v$L!u`uPpBlIhEcwg-YNQ`*lNFDWD%mQRlcNYFP{p_bOgL#le; zUvzI@+~3S_F8GE3Rs_;Y0@ zy7hhv_8C1iW$0Xf^mWG@jhpbvis>^!@&>>OKh+bkfIwIra5Pu1ZRFjVdQkoMoj2ZH%WVpgKM5ej|!tQ{SJ20>Z)&?m<9SVI0x zk$e*i=0U^ivo{{C&Nq?=9!(m0b_!$#-3%t5iXd?`4Ev0b4h|IQHy#WB zn{uN>jXMC@9%`taEp(j#^ZhF3@Q5j9??i=s*op;|hWf~}(JWJ;Y9n*ZFoV%_KpyV% zpfAG|);@p)@exR337(a&p9s-|?cd3y+(-#2wOZCl#N0q9P9_!!{WQNKXmiy_Kff;3 zZgk9YAXBSdx5_rpSIe?_Qds!T{a6}RF5{0k%JN+ZKtOcDQ4&(Bvb{4bL?;9aLU(d- zck2l9xTgS)W&V#lD$S5MrrdK=Jp@B|gel1%yy8@Wpu)`QPhsGg z7@ZupytkKhi%J7OZXeZQ0q$$PCt5_#*E&DFGa1SZt{rCk(LRU3qZR2TXgLi(e zxa-!irqZPd-_i&&k(<*vGAJA@vyauyiVC0pR5DakSpg~l;SBHqD^dm@H-b<1^?O zBS_J?Y&mMBM@mLD*F)JJg~u@Zm<(x&S3WBkn7b60_}AJ!sqFZ(J9??T#8v9&YN**| z=NF{~XDpf)Z3Sl$X~3nZN8}SE%I`Sd3^vsFOb5`^yGyXc_*EHc>$~PVP%KO%Ts5`X#3X6{8s1i|j zPrU6_p)A`Uhm!r_D;w8_YxQ9h`raB>9+H38l>h=|+9z5%EY&Nl0+U^^3}#4HBoY-g zSa~Tk4@HQ(!8*@!GIcf*^e-#GjIEr9S2;xWBmw(4v}u*7Go%_5osm1=?v2gU=dRky>+zomT#`lT z`Icp#^CDy522(D*GfYjuj9I{}Y^+gQqQ6!&??ss_0dS_oO(=_@4!cN5aVlHxNSaWn zwCu>$-sc2c@VS6K6CrebnkUzE8=blv7afE&>8sM&cd>W*awwG+=|u)U*HgswKgmV1 z4bXfKigVR>uLs{uDsaQiQGgsOcxJJNcO0ir4kcfj|P9dozx&>^UP<;L8XX)gl18q zA}4i@{9%s>k{CV-wnyvbW;pgsts;xiu}Z1^!YI5yJOL`R9_JVFjmZXu(Q9=;`EI)_5fd1viL6cXEAC(zSb3BWUYLCVlca8DhqmGpv)Z9?n zK2fRtP?HP9?~#M}(N1eEiWx{q&M_ zYCFpzf40H{|Kscc2#!*##Hp)rXT5*SNgxoh^qS+FYnNRKQ-N{dM zRKp=Otn>M}!eS&)b$xp+5{t5Q$X%}HsH$NXc*Mpe&Nh)MB{wgiFnV3j<=LBJoffVv zVg!S?zq#aAle52Fk6>8QmDjezRSme>E&<+vnbOj{t@;SJBXhZ`4PboqB#0ky_(&LH zNAfZ@NI{9-!!bS{5FvjLdL0P}%t>PRyJ6QjOeUo7B{!|%>=mIqI*i&zoSVq-mnk9A zpR$zY6O1p$Up%Cv5&20YoEP&78#c`C95~fnF!iqN_yad3cETH6h+}wstcNs>v{Ge& z8u+sbm-do`ud;PW=xez$k^B_w2>C#01#`pjG@S$KUWLVWAEe2z zV8?lLU0D$OA`XrejV`WyBQ!5IA$re}s7IVM_6ic{Ug+5|m>dzhl@*_AZGLmFXqD#i z-=i@HKnX{yz}~=F>^>)mFv_U;2x3D-x@Ari zq>SEWZrU?yctkVfx~(4BiH355oot2+WA`jV*235F`%7zE1VI+^&B|H7`bZG?fy<)h z0HhJ4FtK43Dli-X>d*e>@K-b{4b@oJ8loe0KkqlQ?=hVoc7-uop=yg7f`qGjKdwo^ zwO!!7JYdt>awoYpz<|rq?j77DrkT6I8_orVyHKB)=235d$NNct3&H>n{?EM zTwSoBVrNZ|dy=ps-D9OnD_uafd!_8fvAL@;qw#2wy`)!#$KHwiq`a7Sg?!&y6;q3Ie#ICH3Jyy;!7?lxyQ?G-zFxji(CB6A} z9OPU;+aT~7rB+E-y2QB$-sS?6r|Xa4__igS7lm9^PURRDKH+no{ya4qvPkZ;Kq^E< zkx!T)h>BPyStYWImZj8EZ zAz7@N1t|H$5aOz(7JU=7EV(7q!wFQrs!g2DHB@)abLT=N8kNm#ITZ?Ef@%!6m^GLo z!&t|wgspoHL&N3fw2!MZi)M;w908q&3FK;imX`OuO4~3LF?@pBrGO@%2A?aVVxFkh z@KhwZ^IsO?(LU1Qp}ufe(TCf=+-J!vDIScr|5S^Z2AF&ypuz|SgsX3evtZf(Y40n8 z;taMn2L=WkU>I!hK{IG@PZ(T+TaZ9-cS(?t;0*5W?g?%oI0Ow&kdWX`2!RkmW+(UC zt-D)aeN}h2_Q%%NonLRgZ%y~)8v%&Nc zbQ?SUmaeIo*+~4PLR+jb(va)b1Sf@ipgcZ!u*LNRg;kwtA(5?56RKv9N(m>@xqr|k z97JXFM3$wNl-_IR?O3m8%cWe%0tZtoen?13kw8DzXjDf2cAX@2cr^B`9zm$X{}nbN z0u+a*$c4z5Nj(UB7W9Y*2|gq3Jugw-OR6wasdF!)_Q2Q1mM1`F7#tRu2=f({RPL_0 zNO$oiuauK(?4@(gDne`}EmQK+>Ty~gWQOA?=BQbp{W|I^HM68a`gH~iC1h|^2=%c(3m`_bG0P>|~RqJjcIfBP*&lgNq2suLt52+d+kR`R$MC5?NnlaqI% zx68}~mXxLz@C#et?2&@?6z8OTMoc!!i0g*!oe)R@3QCyKH&_Qu^u=0SA&gRbfgmDz zCT%Az?d4fb&ncIvEFj7*7PIJ*(O|CxL}X!OljAR8+fj)>)93pOxHS0UZPbaal)x(egW(4gZ>UWc3CA%B49e zn=DR;mP*rS3D3zt*AZ-PZXk(y-R25zcPgt<7}2XT^5P{Tiq%gJ+&&fwe87E$J}%Gi z!?H9x`=fx|)2f%i?w=0hQyw%{Ly5oJg5t#1F=}yjeN`w+U^8dAy<%~RCLSOuYO-FP z@&N~!37DKzN4|Ibx#EJ0gBOmhiU^kprj zaiI!kQ!a8Q*Dht5Pay0|rTCx=xx@+zx}a?oJ&ujUlGPN|lMS1I)cOv_O>4Q*>C_+H zcD^>hZN4w|mdUJRvqt(mHaWd=(Cp1MT8t0QRR0S7Je>3jeHy5;J(%Q=;MOJw=u(XU{@ijTi2*~7x)y|T-%tn_>+Ph~(ooIe;jlwgI; z!@Ym2?DDB%p|d!^3zFj)RDU9L+pFAz?*WL$_`XKC%zp5wy0xf^-4-^Fg!c#;)exv* z%AirE*~@2oa5hX*VUjX0qE^g{oU2Bs7UQjw6gC0mZeqjNs&o!!Y@^c{7Y7D6(w!WP zR=;Gh7AcFb8+`c;8c6vRZs%b4UM#r5Kc|~O=Eh3-y~bmvW3K5y^cy8iqF`ncjkZGC z+UP@6wn8G!ANfNn;;gYlag?BoweNa6pW;IMc$X^&>}V?CZN1t;K^73Zi5)_egm-yG zgiGmMrB9v;50`^h6~8^-BAz482SLM$N7V8mDNXsZP$U^-ws($2`P%Zn(SbItHyl15 zfs-61Yp4cDf*Ss$m$*kxOg*9(keX1>BU+s+WNNv6Cb(`W?=1YTwN>E*bF@dz@9=BR zZxikcM1(ln4?YkTP3UMOP*W78DN@=ROGHF1Po%mSZ{dSjn9+Ai!Mj4TN*hz{K&(Di zQdun4>NJ2I{@a!2P_!1AhVUHR8vEv6#i27Yn<|J)8~(oV@?GfK@2u8*X!cv56k6uZ z+Hd1&JsC8?p)3BsVl>`+b@`xgost(Ft+4FvT-%c2oQc6q`1}`0PcTk3E`e6xW5sWL zIV_zsQAfhRVuylaBeChz%;a)555miy|HH+t0}XYLe} z%|W`?-56j?WoXNVi2^hYOI>pNxtlr!a_a1jIw$6`hsJOT)okSgjico$MP?@k&dRmx ziinfc-YDbPr!%Yhf?Jw}0=hj(byr^_^Pi_VPbRW^lc8VF_(G_no~<21S?JxWyR5|p zvBe>(lp*$r(Pdk*YiYkG)csu;7DQR7b;$Duc^p%}>r6v9GFW0g4POUl&;b*GF@q zsfUhmxwWpp3rd+pZG=weB(uJ+GyV;0<$|E-gL;x=GLJ7ELatvXr69jO)MOVIU-iKw zaGhmR!SRIcV8y<$1l8n~#1-Rk>Aybf{A)og!PsAvl>)M1%jOmMm>3iUKKMYv=j8hU{R9a${dmTo9MKD zsSO2n=_KlB0~Wo(1-IVMPIHR z^%Le8&b0d%>hy$OYCiE#Od4{GRoq%7jR_TUm`Gzjh4uCMghdLZ=_L?zDTe`6p1EQY zz+zPsIb40RJcGGp9w@z7=x6K_&knZ#l7`NL1kc2G}l9=>JaC zAo)k#)V5jF`|SHE-T9d{(Y{g%MYKP|C|fsA&NhMF@}!nl@Abm1>v&!LbpEay4;67Y zz92KS09wz?!sYf}!0k=-kQlpZt2k@}w zS~5>t47|o1T>dI?jHt5;eaT^pm)hofummlp1&*NDF9I9{z#yfV3qZ5)wH#eB2j}c-G)tnaa__? zHv^16uJ3s)J&i4$CbTRN+3Hgdh*h9!W~kV*a5Tx{Gvm~kwxU0YHyp|^fT{xf{q5%r zS8abtwU{@>W6v*Yh`)Wv?WjL!UtGlk4O2ZONi$`j$E!YRS&dw+A?5J7?m0wjFbj{6 zlANKh*l@AZ_^spUbSs>U3psL-VW9^5gb)F0Du(74YT@2Yl=HC7EGw!lRC&F_OUMN5 zfQSGtA|M~f=v&+v5z9zKLdcSm;GN$fm~LM4&OqSP(= zf!6d@j-Bw-9J$B$@mMSqD1lc6n`2q>BaryqpEX*972~E06se~NUT_Qv4!jF0OBH4h8PF(Lq}X}6SS5m&{Za6XgM;#ZO|qJw&7f(YE?&iT zAxo6$)lW5Fq1N__a`|E!n$a6)3K@|_BOfe3yZGC9xJ+VW`~i`u_!a9eaEwUF0o>hp z4-jHBeg#TR-z-m%^BH5VyAaI`l|A_$E7ugr5Q+6Zo`82qL7qT(gKtk=HSph0NBFapatqRGxIiu zq>6r&1F^ikj5=ANwHL_HG^x|qNy8bh&*WDao0n69kmZw9p~x25RX@VIR&9dWSH7H` zID#8}019+-u<~?jT8mAA&d?7+3Z=BLj{|r@olWbx(NsE?HJ-p%i=Pj5&S3suVq@yF z3mK|!9TggOoyzC0_gFjr1e!r>c2NEbJZ1zm>7LLgk*RFS4XG>X)$U|qv(VXPG}g_t zl3-OOM?~Ct5(JA27l#xmitRQ}>926;`+Ya3Y4TZ%yB6V;Vmy0LBXYqrD`n@q2!gnL z;N#5IXyn3X%H`xu(y226(@h=UOO@9RF|n14y1ZCN)8z!-5IcMKo@BW6JOU*Pfs?3~ zP)I+MZxjQ}i8PN4VI`kzhGD~E7XSn!a#23E=Mjx0;tlno0^<~$t%~;z{|38n!9Wn*NFa?shjk?E%pNEPj$5ZYImEXNFSUM9O5AGE zlt+ojHG4UWKDp(FAc?_K?Q?8O?PRq69U9*v_EcyLS&&;FEvik1j^DAz3SK>{QgWZ% zA4)$GcrZ=dBHTP2lzHx@*RzW{q{IO5WE>cP9tV%|=-Jva8J+Lsu*=5|7=(=-QINg} zOb|nx-wE8I-Ah$sTBaho46XCxu!J(S*IERQLuKm%#6aBl$_l2Rlgtcr8sN#AT&I}& zG^?{|hR}XKjQ8I)sL}`Qyh9>eACI#Wz<-FBM0O3_H)`$EIiaj0)VQX7yHMIC%p)7D zE?KtmFL$DNL zpjDiyt60pDNXa$SiWKd0xD17!O!t0gQ~qvJGXjbJZEo#PJ*Xb)4QB(UIgL&J8E$kl z>@1_;oJ~7VIH{mQ*fJ9`tEjzkm-h;DdNI!*H~n~6__6Le^-|+vkMJ>mHjFWMP;M|b zhSX9XKiRsnpPb<3vCsOS47N#zm6EeEo5cRSTCB9_if`Khig?%fMftjNDn_GY`9`DnuTheF2?sdU9EW@+a-^%HnH=4+dk z3Gzyy2pZBZGFhUvVGRS~)f}n67m9*3&!Du`g(Zrq>vSHW)Mx{a{JwicDM;(EYDEs^ z9|ab@OEq;?2)Vb+gOJ>w+)zhmlblaNKv=XdoW2dG)j>#y?Wfmc-|}qJT)5Q93q1NW zGiiIoHE=Ya%T_CK7zl$7B})QMS%Ko=}-a;R9|Mf6FSU zibcgHEKVe^2EdZ^^_y%rYNRSZCU>-AWa}2O?evI6RVb->^d5PxcT)kMRLV~Lfb;^~ zCxR+Nycp{vKQ_DHcV4G4GDeL7XsD5lx?dZV7&VQP8Wv| z`zdMC`NC!7(1LQKod&==;a5)VBeSA<;VRr->$&2Qg??TwrFs_Rw_Dn-uJ*)~pJ&B2 zxcER4oKSoHIX1P}@a1#A>zoU(CZEwQ_@6It^txY={e#*wU!_K+F-h>QZ*P!zmHgijp$ z0%iy@eYp@fY=b%Zm!$AH7|72tbRfZRGliyEZ#8FtZ*Oq zMAAiZ3NN6H#_q;eljak*l345QlJqQx{VEWhQD4pgO5T*eJYJA1X;@Eb6oKF@@RhXB zH1%vTJ^pz>^>cNX8ZR7>Vefp`$ilI?fjdovRkvXAtez+Y0eWpqyDYU--%h^n@7B9= z!2_y%?W(YqlT$;zmKqmlqqp;BwyQ-bX~Lm$;^U`;$0=L0VI!>snN=R@-X@!PL*p5^#3BY|E;eZEo7LSuFrX@u z_Asq;#Vl}jnEy@}XM%x7_XeGTLfTJ3h-n~*2y975SqF39%+D^lp^xM7MNwe?k~mRO zpQPwvt&`Wz5T4dA{8b!*wYT>>u>+TCFB}9>B9KiA=8uC5fJD9yIz!W9vh=2cRWpz! zz$%D#o*JK8md5(YZ#G62$> zb;rY32T$Eb$zW||yB$$-UVlpIAAKWtP*UNp@~OdAWSb@BR+XrSZ-*Lk6FOXgtKa-7 zTx)n)J1kYs&WP5$ZXZLg{P?+qII)0CPCTDuQP?B@1)~whMqtH+kl!EOnA8Vj!)m?u zE%CD}gn02B|aTNn9B(iabMW+8{0xsH?m9jy%2Iz_BhoG zOy()>bve3>#B%6&c#(keXF+$ZW$fCUWg8~6GlczkjPUT8TqCw$fR2QpJ60eLv0=)_ zxUcYbr!6@mEN>sFbP4Y32GmHMN57rKN+j6jna;V1%75CMO{W&A%40 z0ss!MJzC&N0en@aUz7w06&kg3zt511i?g-XWE1LPll@w~iW3}H(Q>ig+04f2e$K%r zB+4?KHj&W#iY;3`#$Ng^TYc^1qDxdiY(4(#O<%Y@zxXrz-o05ChM}-fTm%OPcJ`9- z2Kh+bCO2?Iea5M6zG)Z4CPw@9?U5plC0^DjTWD-|i`@1Ua5I%xjuDYYDhtT=3eE}D zW7#xG#C8$xPc$8WmrAIZYM9Fl{>;OzbxPZJm$T+=16W_JV7*_2nteyG!;B?nWMiU* zlFr_F`}F{%6}x^=SSV5e@vijUbniHi;IN`vjE|ymXWC!+-8ycyE?C@W#6uSW<=J{t ztG#cY`^fjraw|tp`r}A=reV-sGMh|OBp`=*O6byp<&rmRd8==z_2<`}rN{kJt~K57 zotC}6JQFCzEjFINlQK*J0+@G)0hPmL%mB&60ZGd zC6LLf_ABAP0y@VOa*B-ng29X|2$rXbfJEvZ?$jF_{g#fDB`x4A9(hX$SwUkcgaMnP zq=e(*1w|~LO@m^B=4NkZTZd3C1IgHPYFZMWR3|MeU3Hk_rtBc7cIZGzd|dwNVL)fr z(Q%IYa@yXs6&NQyWq()fOX2#trt{NxQhXOw4j!V?aUJW%jFd+dH*I8vZ&_L=DVtc|ifIC-())LJEe^OVLJ+rsh)D7S5I(JIe=6vp0g zE4+vnXdX(@#ZgS+(_<>>-a_aPZ7LX>>?Qu(uWtG#Mqm6Wg*L1!g%n zs;8lsI_t)&PyJ4Hy!q zml8Vr5lz;ks_%wPLQk~;+t99#c@V<`L~2tpKs!h7Ie%NW*!I;;4*&g&wxV+v!r!+~ z{psU}pQ#4trh&@|R(ke?*Pdv$yL-gs^B*|s!{f}7j* z5=GXP8h{u#JV`@l z92IQ!UWRvHc~v@V*|?_>;Xs1>8dEn=7B{bd%zvB_*J%bE41^hry+U8cZWL;?UI`*A zi)IGUu>J#&z@{Q65n24A}go1*ipofZG=DELX_4u6F)bO zrHvNNjl&61ETa|PjmFwZysu4hovISDpc?aFin0AwM@ZDGW3rx!}4 zws07IXmDh8`?&EdCYOW01$+&M^i8AZgrjcSJg0yFq)icy=Y4`y>AILnv<5Z$`o@Z9 z2P__&mnabq6Z15Q!r{apwt-kGmPOt33O@=;XtKNfzMb4#pv*EO$|5R*dNSd4aes62 zR7Q&wS!?;#Z1v@lo~}s7x^Hr^qzRS4^vTT z+O<|agxU%!@WPtC+a;fi`G0L@ zi7ytQiQ%iD&HE$b`KX#VC17z)4derluybuqW?^qScTPY>)a}SBm=aSwVTO*v(pEw> zyB9pftYO(pIC64FOiQ49ybr3W`j z`BD#E2*XvAP(wza_?5|)kMpn9ddiNJU$!Y9ijvm5w_IaCu~JTbxpy`@cDt@kOFv+Y z0kcv_YB%mIVk4NB1Ft@@WJ%7$`Cfgks%D?W(%Po4UJ&CHJlZxflEE1mILZAwcOeyuvNosc=GKkStKa%ok@tzi=#kuO zs?*mPee`WJ!oh=024KPZiZwPXik&P6sMBAoCLS`n9>*k%c} zv(EKyJM>{fm@%n|Ngy3%;PY(ag0+k^8mrbQg$*ZCiH|vcFOz&__3J{KNNkzD+`au( zNn=J;$NhJ@I12!R6oxS|$i$j``R{a5Bk!1?$i_0HJ)gNXgr+FNv_77h(@;{s#;re0 zzu1>J{X~|#(YBZSf|+Q<{w&-;e<~NGUM2?>DHL245c_N;uo*HvnEc?lJ!8cs(ezyt z+WS3RT3dxxnk+-dA*fx%f<-;m`u${cAbTnrorb}vIefX{+icc?*;PnpdmFR7J<^BD znNUOA^qth0(EOB1ZgaD*)vbKb$BtvpwPSI~K$tJ6iqDDap@Rg@a~A?)b8sGo@4we4 z!~(Nz@*|(f^C3ldCWkk7zfR9O=|^7Dj(lnxnPbY(80tI-W+@WbdYBmu^+>tD zHAE!g#Uppw8s~Qa>6JCffQF*2N5~w1J4G;jqh-INq-**njf8se- z+iH%o3YpL{NeYH_E(w& zR^K)&E*89b9s9*~ZAR#4Yt}yf?ajp95Bp~~`)fP9j8=*taZ#XWhR$utEPP1SabQ3# zXH`+Yd~!aO(QiGh>38c^+%)o+7A@AKTomPr2J~r0jm*b^5o4;)`D~<8kimt5C-&3? zUEx*<)&B@~nDaLL{DTKDe(fjW2lW<8w&2Szq;)XY{`vG`VK9vIQFij~y86?MMqcNf zWR1@0{db?|QH9*tYZyW&tMh&*_%dacHKJ4uxzI*2Lp4AVTFW+&O&K z*fnv;ETPqXmp*{jnGA>>i+$pSe`gUmwGw{<)?I;4=b2W z12ntQGhklInzbq+B9I#afYHR$G+CL_uvd6Ax#{ktcNbS0wz$!y#3)-q=cutfZgTj{Aehe-m5efYqMH5ai43wS>=@XtwQ^9ZH+bF|+NQNz5tc~JvshOMmXoy8c z>j+%(&y99?dw$+Rc`=39QUgUIpW6lYCYN!!k`NRbAZC_Kq>->k*!34XWJMD%)vj`eQRStkISBtk^xa4IA5=$($lQ1q2~o3W}`t zt6d{pSkZFMD?d2#C5j?v^O1|v(ktxI?%h-EKJ@>B{y-xqxccJo%de-ocP7GY57E&A zZB}EhZ;e?6D0O5%ZqSjrp*X7L$oP)!Cd6OKyQx2;SjkP=UpfcCKHwbj!}wB54pfHh%s<9d*y`{51taW z(UZ3@8G30B*;;{zD2VEkiZ_Xvn{VOK+cVS(?@-vwk*?#OWEO5E)2m8{58+odaD{_) z1}o=r2v02ZyG?_*uosSak`si zLZ~}K&n=4~CoKwdWd_v;;wl_J3_0%->orQaqQ|TqnXd%>n7a&r@fY1rsN11RgwVDZ z<2Jg5;FHg~k%s)7%AeI&ro+d>37z+MS2;hVqlyQ9F6T~-n=O2M?JV(oCYtPxY!&6E=bZ3$^^ov&@<)a-NV;`k&8iLX|*S zx+tf#12qPnsSj+P?yWCU=Sp_A`!@+y1|pO7f_2^^uo^&Zd{j2CWC zND$MFVk;GrL7y}~-zqtYdUjmz3YGclSs@zzixvW+)OX6TL~)Q#|M;=`1z$wEXG*jI z@_;HwJYCXFsOCLlYXzG7aNf%f{4}@FWp<0gZw)(EFtRsNJfZgZVR)TREN#Ra4s-oa z#)3#4)qAuKNpdM~orZou^|!6LK}ZUzZU)9V?p{avhyjV7GIrS^&^DxDh9%JxwMmGO zq__SnpnU+)Q)A#5MCW0n(h)=iBqX-@k6`DRx78X(T*rB9%iWhil^O#YUxXtF88z~f z@ySUDa|$4Za*dig~&G$ux6~WsvNDp@i3{1 zA8AgyNb z1(dA7u}>*`z#4J&qrz0whFM3~DZMI1^*M>}hPq3xGGlE&_^Xf(yC4hpD1GdpJN87o`00ZKf)K>RLyz*Nr6#SRzLnAUTQ&9NB$ z*O#sY1HB~V9K>Nr>)}z1FU2Pjz$K^yPsnCuS+xdd=UE*OLrc_3Be5$9&!2qmt&^(H zy?n08vNE~S5!)M6_`z!HO?p?iOU-%8Hw#Dmw9)&|?umPKuzh?iZkJ8}JuW-wX-ih| zT~&~7I0Z5Tt0a;$YI~6FbG-25^{p>QBj#)Uk8LuBMuER;eg?dqRKbZh{lJs^itQ)U zg+0xgWx<_@{9cArG&yGqJj-~4R=rZH#Eg#qr?AAH@0^PoXOxieqlhVGqxbc%yC*kc zIoOq5?%&$pv9kp{udOt5&M-Q4kSJzXSamiHRjfy8$2VI&Fl30T z5~V>zCWYY}_C0vK#*d|VBplHJM*mQ%d7CBIEc|73P72*iZ{<><37(K(;Slg&b#%$g z&F`6BL%+Klw#=@TO9&m4aJ~)*|CXUB&VNRZW>qtj$th<=s*GU&j8M+@7y=YGPRmvy zV?I#m$QsccsgG9W-#&N#_>rL7#IcjrkvU|c+Jr$cB<@KV3+M@)-;`aHrF{1(V zT)a0iypS@WTiq&Cg zzRZ6>-2B9x16LSy2GM=9*f)yDEFm>qnJ`O8Yvw2#)(2t4-Q@m8h>(_gT64)VbR;xk zi#azZwSVMO%JQnh6bZMdJa~tu1efkU2sf0hGT!0q*Kc|@&2~jEVavuQ-mrvS%7;AL zC0ez{Nx64v%qjv{DheCYGf#d6A2#kPGZtuX+Q!5duc3>o9?h&Ahai zmM|n(!oq-~Q&iN|)kJyatg5-&__h{SbfoE`egU`m9!zdqr>@0^aN29h8P!rUDF5&W zjdrb@2F6d=B)7RNM5Yr&;?u1hNjy<+?K|`NPbYKI zjd^Kcs4(c+K*N~#{UyrDrbsj6moHO4n6-OZRcAGFDC%+@DD|bN?l-@ zX)G58;^rSkPfzvb4kTd>t~<-Fcpxe;#VK)-g{5pjmE|Qp*l23&5dnA3(+(vDatkF3 zB|KWbG8_|DE{{>bljsAUIW80Aj)q|WyMnbJ?G-&mpOl2xQiPK!oz)JuTogFT)N+RN zbWcSn{mcj#t^~P36*>`;vT@>)akjx=xjfb8v_L+@s6FvObsAQL`3j)VjRuIQ`h)co zPnVAeX*{$2RPz<}Sb^KflNe%`((8O9R5?sha9brsd4G%-2U^Hw;{lOX9@v8l7CiM% zE2aPVTQgUPtR*!eRGHxL^SFo2g_A8U7YBPnc+z~MaX{gh?{^aviT5g^g*(}zQ)whl z)o&fGZ+k2LB=exXsqE+HS*WCH}gD z1I+wftaW$4@Ovg3B!#rtdUy3fnlaX0xM}(2Tg4VGyeg9(Z3ZhgHcR63%g{11>InmM z#memdUthWo0P2g%JA-JySt=}>0WrZYUKKN2aPBW-w`?sV_WM8}Iu}T9&#IwUFvkKv zr|_TICzggU&Dv(pt1BmDFK#NoHPQAv#HXkIfM(S#%AMPxSo40s>B`0M)4zK3VxbKGS=SIBBtB zG*rcf$ajXp4HyF`zJgSqDeTHmjgwlLKgg|lJ8!e5fw%3rv3%~(2}!0y&KyvdjEgQ7 zTMeAyON3%WQZ{kgJJOZYrid>EK9>!ucbKLKC&Biedj1SCz~vmVw&Kr-O{gPT;=aUt z9Z-fn7CmVrd_DV`CmCpnL4UeeY_bvQW7FS6l_)OxwgebnGUn1qmfvyuDyG6Kso#ba zN0X6|mW`c@mK36^2@1MIiUuXTQtk^Q&G>hZG7wW7*mMbHi9L zX-L%1zov=?kn4%cs=@@|ZX8(}r1(_CY>NbSY_9$JImIGj#C~r(b9KJ1%%d^Y+^%yx}}FBC$ow3x$PV(V^y@+c&9 z#lD`HE!Le`$ZHmi!=RS5bCj#CdlMJCcY3@i8NL*?7^`^f+HBT#H{BTBe*Ek-y&f;Gp=9#CVIFVzzAb{t4TeF6E7Ea-u1MN9G%iJhV0zOsz2Z~r?bzP0rOVWHW z862*j^02MZmuP>P@szxdKN@Uw9NOclzF%s$dIm7)G)Q*QJl9UB3K*SjyRII>0jKff zKyxLhz(?aku;)mQ?h*+lALnO3yw!tsXkCC7^e*PI^!3q0^1`)7?*k^n~Fxd1w1Kvp%=G z3HA1W1#}3&zT@scCJ_8)R{@i>7<)p5n8)Q|bM7x@vJ?rA?>Jm*ve{9@7Bg3N_t#P) zY!XfhHXl=DSMT*JEoNACo%um(>_VnKuxmcgMi{-OS#W8q#`5C5jS4;kt00GgXM7D$ z-MFC~hl#;#78{&|O<6PVJuBv_hHJjpm4)Jijw6rmw|#VKzKJYyKl&8U4=Ct#V=P_v zl#z?i&3tupy-_UU;rrqG&UiErI+T)Tvm)uR;rKHguWz|S1?)FkJqtI$6m=^C$q;3w zDoOMq0;G_P9XUAx}B z@N+zB{Pbw(=qd5oJK zk7<8cnnhMQ((;Gg5BSLBmiGq#0gc8}Hok<}O{-#fqfMqJh*ku1J!@m)+H>uO#5#|< zDZWqZUCmTFUl8?+1S0r^Vst84x7BCih)F}R?oV}t#23Ocm>pBPVx^{5@1{4?h*b3t zv$bbu)!tMY8jac(DnyDIWF|O$2RL(sMQqjLA7RS3B{>XnnC#3A2(0TqV3Lhh| zIi?~YSm7!d>kDbWilq?zX}N=>>VY{}co6qqgS)IR1>EK`-cR&n-hIrqi`d!*uw($? zPeM38q~vFsSa?!A{#e987ZENXoF0e2f$NjE?99OcbJ5|)!!i8mmrbK+CJdG6yI=y( zvRs|AV5(}RDkhv_O`;G6rP93#vzO~1GS^>dN>3rArZlH|kMANagnJ$?eiU0=q!T0| zTSFb(V#)&$$i`K^kI7+HP%VCHTBvcl%-4BLs|&dJa|G?Q3L#yyyi3G|q$-rw1>$ay zJega+@8@v5T+$<{=(V!cwA57#HNh7=#XPN!?4qAG-!e6x_)Ip*kQ4)0@S{FsRV<+e z_e9S4_Ri2>(5HW(*zpxn4m(HhoFFITb!Q$#+=Hy(Xb{m860 z4p*6^wUyJNqy4y~Km~=54&uu_f(fcXfl*70qO*2KoPV4ERdeiUUA*@{h7#ltp&>Gs z-G7;lfk%45D(ARi3Q-Nu(jWq};qiOo%HlYO7-U%d01^9bJxgdCMK!2^R0^`=YMs9- zb6w;40$x1Zylkw@5pK{QO49i1%sCt{hQ4vf?8&_`_4a_E0Yum8=rfAj5s@}vLuI~aBNxBUSAkM!W5mh@jf b{a^9d|7Gj{{P6F7{>h8~ou~ib`1aobXugea diff --git a/assets/audio/ui/Space_Notification1.ogg b/assets/audio/ui/Space_Notification1.ogg deleted file mode 100644 index 37bbc4285e2ad09744be974513fba15c8018e943..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71066 zcmce;byOeCvnTuoLU4C?4HDcXKyY^r!QI_Sa1R#T-Q6t&cXxM(-~@e#2A8Ft9zzCRn=WR1IU?}D1pF1|0C5UwLXIpf;rpR>zg^e_JNC({$;Vsg!3_Z{%QP?MU-FIT++WLxqG@!9dW!6((uo9^dhADj*Ot2=tkp1~JxHf+jC6 zi`p$QPW-ji^FAaoE~E$BAe^c9--?*k5Ca5y1M;PYiOkuRFdyYI!KR9|&*UaL2j%p_d#J!B=;e8?YIyeeeI;AG}DZ#L3!I-9Z!c*uD#TMDwscV5ChL5 z^cKeuSqS=d`e2&;M0;SWzhV)Cd;u{*V$tXlRp>)i_#+eKau;+8XlxTKAC;74RDk59 zqvmWh=j=4+?4^+ypw;N5(HNjLAE0v^pobm!Prmb7yM4`nL?;FVWs-4y-=fJT#m(O2 z%7*X{ECmM{zCuC_6GKW9lOvIDY+i1bQg2#PZ#7g+H&hM(hXn)%u)L;Bv*i5$UpChG zZuEc7f~NhnAVC1jK0EwAJMxc;HUGl7nl}13tAZd@0|dK;H+)pqQsOx8nhh6*#dM) zGnmwqnKYj4Fe(9`ocFiohMEFZRx}A*!`Vwk?8VUo_{=7gp^6sNfw3Cn$-9M3=s+tZ zE`_SDN%`-5|CmM5r_|9-t_@&B$YP2`6O0bf`fZqcIs)^0?SGn&AfPwBdF;R_*9ft)SRs}5}cMA z0(9n`*5x}0H^W)r*tBa6wMQ(}5y!l_AlSv)9$r(u|5ksyKL+SS2BqX^gDgB@*8}@&Aj%jE?VrW5d z=w5Inb;x(KkmTZ~Y|Fv&qvro({x8oFvnK~K;5i@d$^XN1elXz+1Kw0kCv*8%M!pFE zP{)s0|ET~F=*KsBsXyz8f+GElBHN52y^1p5|K4MO-WgVzDOLd3cn}B&u%8~NtZ+rt z*lEqDpJCuvEiN~WAr)&WREweKWDfZNl_vB)GFhq8{ahGd)l zWThVgNXq1YNj?ST*Rj${Doy1_Kb`m{lvT3-7YRI@c)IZ`vsp3?>c=U6GtFd^zoh9O z(mj8_Sb9n&DZ5xvXD;B#J-etGm?|W{*j@!7f$er&dcr9ry9D*4icxYo?97bF6hI#S zA&cQuFjSPBlk$(4W#;mV%i$ILi#oGt4;YG?tqd z|4XXH10)FK3kC)91)&WJ0uX}vQiDKYfB_r15%vMDamfo`g6nV9(nuEEyvx*i;anqU>Wgt)`1Qbxadgk;O2VWKmo= z(=I-+Aif3~z^Vv@9F!nX;SVqn@ek4H5g5_0um~D3pj>beCw?D*^AsQ>MPC&i02Bbq zkR9F7A0T3l%mCD1aU7a_)d2uv{=pvv51W-|UeQ*W`43dUK(nwoHR!nu% zen}891jv`^Er}t#P(QZ+Ygplrj0yt1Uk9S3&q6rVtcDbzZ?GUi>>PB1Q3;76W>K0w z;3%AE@){jA`;x{bCd?MieEvs3`JglWB1LY_3oxBmDgb!i~s?cwgr8!CLBo6)D{Hdsnm1w zkIk<70jLWc^#az=Qo!T%6=<$6pl+QR4s|P=7o8 zzA+|FQ)(4~d89JAo#Os%V0vifgw8 zgH8JFkHMIM0p1N547MY(B;aANB!K2+g=ouqFb({_0k%T@YLa10u86N_Pbyk6^{Vr} zTFtBJVjI9$znVC(6zYf9VJ^IC05E%|SxrB{{{ZVQn^89??ZHNq6bI1L9|nqNDMj8i zVB)>%7EHbM=!zlqKr5mSTQA(atVi9TtZEkUgrD)4`k?^a4)mhX1`fb{>K5fqn0nz8 zP4SxM5dcdVV=uOzMJZb^uzK`hllfQH)#F->u+0HMTQ4+`0iexghgYZe|HjmdYcbjc z@?D080(C=@!4%cNzl&%*e*=#qo<&ju^2G-El7Rg6s{s^%g%1R#TKTS~);y=ND7JOq z?+2A*x3OV=p7QXv$T%6>v_8dr7RK^A2Y;Qh1>-enmeYL-;xp>hLf4_{)?4?+Lo zH{g)+pMiB25g9cX)q|28PTb5SF9e+!y4p$o|BbQ1XJ{h_a0vAsoCLZ>jdta(U`%L8QTc|>hS!a!lDXMWxUss-IVxh_FGZq@r zQ=4{@t=uCoP&ehsiXuPd7+r>SoXCme3u5J`ch;@9mPN<9fjojw*2Fx=pwPBxnmy_H z#BHSKeNipVOEs%1(OJoDlp>r(IBd5fSFOmVFy5>Y$9iF~!RNxBHYnK*e|vuC53h2G zb1t3lvHzrE3PpFppLP;_DP{fz;*-G{3oc{5Zd;~cPz6Ozvc8czLg|hMTeAqF*vHT- zBNs6RM8~SO1D{~n&oI6#w)(NxDq!lqAk~OsLCw48hOHhV%Q}N+4=v9A&2BRKN`U z)?E#&`y8^TA zeN1z5oDi&pwyX?@eDA7=CDrn^XARk>brNPHD@Eu)^UBC^6Iray>r8zTqH=UAX4 zJ^aquR4Zc{F~2T{V098M!I`t1F9qv1VTuFW)5FbU>uT}-s7i@os5$Ix5*NOvtP3eH zDrf4f#F$;+S~kMl{##bjZI80R>8hm#C$h7$u84p*2d`cvDO506ef1lVC1hon;t(YT zf388wuNa59=}hTo;+OSblx>D5KiR1L7=K`a1XWn`1_4LblMqz=`3BV6_6C%V4tsH2 z^d0mGRIrteP9*Qw4Dz)HyBh};_f~RikSSEbu|V=GV;{nZyuFS)iDJW_GiE_leq%`QM zHb63<@P(GQW;FfjY(PY26)AA0tfwdOMTW%Iu8*s zMlpKsglbc`d`g+3^FbS*hN-Be@iWdsbJhD~*Dm-(7)$s)_|G{|(%QBdf{?TzWC35- zD=3%A(!Tft?Cj9B_!?Da{_MM+>&qut-4-ivD}nFlM&k8H1u1H+a4X{_Y8Q}v%kEmO zKB~{RO_Zza&6$2!jh-NHKfeaXB&C&bXrn#uz4iTGpTXpx1L8&|Jh~u|;^t>y=Meug zA_6ELnwmlyM9dBja-{{u0k}#%8&) zC$X49SO?#qf4EJLjj7hI@lut<6bT!nyYWbOjY#4jrYEC!*~VC)AFdidGAO4HoOf)N zh#0-uFc9;cIqBlaR0RFf3Q$%;*#=MlO7XhLf=rDLE!YU#)#wJuz$H-?Xsc1)g285n z=DzWTrVibTDjr0JH|318H5!);W&!egOS;={tH-$ zedGx3z2NUql|rYzO|qw8s=hp*mO_L)+_R-q^g4Qmoss5WPuElO3I2(#vYbbASsCKq z0s2z&ifU{3ZCqWNyjluoPqS92WCdwah|g{60{ZdG=^jpfbu=o64MZ%7;w`ChGf#&R zapZ zv}1yWQzCyMQ`+VX^J6#w>?W>9tT72rLu#7d$7eQ_c|6^+?z2pz%USQi)M9mJg4P$C zR_^<&wp}6o37WtowJpLuR`V}0J&>yoEO;;9JxajxD!KQTuP9p$`K@8&eja;*fkd2=ZAu*= zLBu_5F}}c?%n)ij!&)Z=LP7AiC&$PV7#BsPpTPAF$Kh#hc!nFLPP0V5QeO3XU<}|JXO3CssO*x{zt>;4^Gy;JMi%UfQ%DG^R6%Q! zDIP1$)>0a8LL4^XuY-yTmzqLW6LxW!exmM5_l~;RmBMXDm55aWg3c1o|K{TM~}v4-qo^z;dDE30uw%d9PB2_ss~J zsh%eVlk!2$V`BUzRmEomUgyFel!tiB#$%FwD)-V44PIW*oZ1%W$XYiU*|%l)(``yP zn2g;ss%K}oTfHeCdMU94^0XdJ+`>E`toT?O(3e=^{e&_iiq$F~ecFVo!cIpPc?jrY z&!+{BOs3)9YMklJD-$BoJpU!0nTgE5Eg6lpdq?7ABW8!t~ zl`1l@j9zpdF`_}tJ9?>bW=Gys-s>)#5ccd1u709B?JX5pqJ5iw$6v70ka4U0JAoEv z=I;64?e}C`%OM|EIEyORK>A`lUL?y;wx&T{B`xvQVd??b}&wBt9t>aWKB+ z4U$MNUbpq6({QodGPa(LRQH|JF;OzcHm>v$R4JkO46f-kiAcus70)fNN%R`IAhuMQj1qPkS7k!sEr3P>#Z(9~-CX>QN>5 z(@@N1@?1<%RokV-Z?Em!jYJ1nT3H-M##P*<`p7uP5*RqR#-oQfU9FyEG=_mgeU!4j zF22e`H(=?04tO4e%PVa2kf}D-##`ykH}7Gb!S)b9(C$3b<<0e2AYb(P2-VE283++N zEYKd}RB>H{?X@B;(clO#Ywe!l;rmUGZBnyhbKDjG)#qA+yJK4kA~fn@C5~Eweu5;P z4=(!c(iO%NJub}&V_V3Qi0uN#gk!;a%G883ZrH?%?xH5T`yT#=d+iq4+=)cIi%P35 zn#ZWfa?X0EQep;#L2+HOCUR##oy41n#T-P8DMf{EqIgBR9@$h>J&?3+Z2BCP<*eu@ z)1XK4gvlBcgV5Ci7HhWL30bf*WhZ36#QL+qcA;18P)*MQ@Kkyw`c->xB=m)D~8O$DIPu8MxT+a49y`_~X zTu36_0KSvSk%bb=KEyM(^QZ~11G?m`5i+$iubZozL}`Zmm!WD)6(c!spA4<8Mgfh6 zpqhY(jWeIqpR;wX;TY;&?3wX((0dlH2Nu~OciLUK`fj&c zr)SjCjax929-In|cD{vg?~%vK&31nZAuB=Mvh%GFtxu*04h!sVT^%%$mbaQNZ=M;M z%ubpqh&#lvGBN4{SSdA7*sH!`*VXU8D`?)T(fp<(^_UQ1Fk{mYaG-MJrOQdL+n5J? z=EKprRj<1)K49SWEHv$_mYsz z=GAl^ySD||z-eTe^}c&W3-zJWtI~lSQM>dD!hO4(P;sY`o#ENDPcv2DuN%?;4Ve_R zhBE=2A7@qCBhGd;l`Yfcer2Ua&=r+8;Ejq8alB-vOyeS#je6q_3owuGGsZbmcA~AI z4!wU9HCWZ?KDwUBQ4Wn*j?DPcA6y@esZMf2R0Nz%=?-J~9G(2Ghu?2ow%V+gT+A&u zFKyw!N3*(c@==VA&V!Q7$zZO#qx}384wUW}hUX=|HuOc|$M4-;4*P`m1e*7-oIub+ z`cW4}6AYxtOC$ut2!i!5Mppz)J32$kt%K!t3H7tP%X1NjWX*bxtihbG5TrFD&5`ls znX14VFkpxdpsXx7X@47QUaCk@Mhak^5p*?+G1VlX%>;TRDm9c%*e zTD>JE?YAYA^iMe48)2(=;L68;mXYztWRc%sg zUKYX#AH-(5OYAlhvt8qhsMD5==xDM@EjF({D8BWibaK|81-Ow{jb8ja{UtX5EXT$)nKX+bq`;%BRh6iKcyDrfDi4 zys_|5@#2l8-cwrejTTBcD_|;z+2;c5gAqJ$Wu0B39?#_D7tbEcWujeR5`oyMfVnEFj zHp$8L-OMvrn;SYbj0^TAOl~qu^JQC{s*lo2jLLjpz)=}##O&TEKrIvLXsF9wHQD@pyv6?*|u2QwK?ngWa{FJP}Y zhNuPVm+^~p0aDtDn%py+?a_LNSv$Rvy?3sUIb<=dk75(bGUnKbvm^9q(`>kVw>{)P zua0P6V~M{B0{9`$$_axGyeHBEiXc!-fno%d&#Mkcc%O`TN8n8<=u;i6opRK0Ty5w4g9sF{F?|S%1Bd)U0(mMni@Od| zGrlb4CVm=Wy;shJRa7ibDK$+RH-#j4nOG7&ZD+n1jc`4VM~=Zlp&edDJE*Y<9@lD` z@9*P{MDD6pO@HTwRAY9PD-Swx0AJ&;PJGHI!h_0ocg>*Lm6jWQa6$_S)Sml@uOLTs z-`0Wto1XdJX677E28zQqbd7UYc}dv(P=Q7KdXisruW8I{1RNEos3tZx#sW zt=kMPqn9||wCH&+)g0FO%bP`FZ!-J)c3i1lb5Oe}eLyLZddZex}@P=`7uYigGN}&V^Ew5Amo6L_72r zE5W?|O7K4At*l_kD|T@~&2jMNt+Dtn+rFM+G70h2OgTV;hh2B?HcNs76Nuvwrq)$H z!ovjZ{8Bn1DNaYZIt{WcrsSre1|nv zduV}s&>o)JGDtS*g}$_l+OuKpd0`4lu{74A{BVsAf<}Y{nGI(}L1o=`?<7hWT3!EVg zK~#T!AB;G{dyC&>FxUIk+7~rE39iA`sprnZ$4Y#_DYWga)eDEkV0og6z|d2>uCd`% zr}W~KXZ&TU_CQm}YFfWf@?cXTQDGat#t+2$gIaDh@?hB+)i(C_(ep5`o6@cYGJ(^2 zD!=X^`kvB3riY{Y(>OD}ayhfx7jgkBUrE`GyYe~HPecR-Xn8I3{^SFZAvU~5I}?U} zYD6_q`YiQfE6UC+`AJBZ=GJIW*>T3Q+M2Sv=F)IgbB$~b#v2rEkJ&QkVyPRuCr|qa zRl36i1*apF`Iw6p_Z%Iwi{8g5jL@duznl3uc`LOWzdm-^XZ&u^4QbF1g7mr>!d4wL zBq)(@swg4CP&%`FwB@O1c<{gT=n20&?}*eLcI9%q7RrxmnN#_6J49$N;99{yi?CKS zzy5AK$R)@1KMy-;dqe0((&;?q;joWOVAWG(2C|}r>i?cx$n36 zi+;*Z?@!ln7SFYeaN3wq=0d@WlUA`S?ij)M_L(td>`k|y^* z3^E*KvYDnL3i|09Jv{x{6KlJsz*{nghU+4=u^9>{CKj@JPa{_JOT})hw<7cr4#9rniimk; zt+{D%{F&cvRJmpkVc7vb#;Q3xvySnKOURQrbJ&!fnH#IdEsp zsKF4#`WcxN`46H3U{@jrAFRfuzcogSJHi&!V~#Ep4h?U7p($?woSE7zc`gEH^iyWK|WWitj<;G4$%7y z7=^JEzt;`LDdV82Zad*{YE7k~N3y%~*ul~E$&5H~=jFB%o0_r7ck?paHt06@S0}Pefx)}PvpC>yGz237gCrDF+Dx|_9k2LgrF(-N_}W%FO*W%czrjV zo3bV58bX2XwIU)5YeyR}VrZ?vsH42oF{9w@`P~^-L%gIuA?(-)nhOg$1(pJo;=U98;@|1p2%LBQ%rv+HqX!j41!M8qdDazWbfr*AD)O8^(CDL)%Y!?% zy6T5~c0&p89U$6NjByuwOg2&0iUd%NvEjbAJ=Y|}~j>s6|d70-{ zAHZv!W~tR%ikNszw5cLlpVEwIJ9u@NV1)n?#YkAN83y_EB4#4Pxx}#?@rT4q>@t%4dt7*giym@)N zEt2E<-_S8c*5Ch_S?T%&=_&__e{kX!0~Q=EIZ?RwuzHZLCt6Ky7+ahC#E0Sn~_@F%H|N450{QYeswwRCHXW=li~1g zv`In?o?AB`F}OJs>`8d7S_~}G?o?D*AOG~`-q`p5-N-KHSva{7^W2@@=RtR*KkwC2 z$8p^_q8VM#emV27^PqaHGq*z-IiuR^M9XZ1DUIUtuN@eIFgQv+bZ!*GlnHa;eJSUi!&8VqE(yoW9ugvXPsCKQoDm3lm(~imYf$b{1;^x0qV&~po$_G z2kx-4%Z*x1x?Nq`X%p3{y1@WwGHi=J3nBG6O!5cfHHE3~5qt3wJdEEj8ZWp9CKi>| zFBnDKf+FP**wZXwhOkot)}t~K%9lCBSn$7&G+3WP88j-(d2%9F2xP>XAg$`&!8g*g zWbEh;=5sh?7!iZ1T!9Zk+!Z51g4!Llf`}9|tbM^pIU4Q!%4%J>Gkq^1LD0xs+*GKb z&p8pu!TYLZZxVlH=Aa~(Vy#DRouzuZ5{TkN=NR5W7rt}nyzz_kl=Cq_M3isCqW(zi z1|8oVO_*VA95tQDBYZ$0n%cdE65GBM@g_Rr_Um*j(aO2_l#$qjKRZzp(r(v&!JX;b zEf?dy*x}mzRbj&*J7g!7B1)C>tXjwF6Zo$MO^Fk#qWSS{Y{nvATe$scw^Z=1eOQLl zmsxU?%b1G998nMM=6S9-rSnPQ@7t?CD#zj!Q^$JjlCP%CC;|@++joaTy-2Zx_$}|g7njy40Tr$c8KdygUOagcM;!coWElU4wb`fO`uTm>k8AntB;7?JCMZE ze#Evg2lj0|7N58g&Qzl*qsVAvKkgnBL-nAxB@~5E7<(5nRLyNfRf}x@adB#Dhto}K zhfqB~i2M4|&70D~cu1r;U@A|0W$|koquwV8)8dvGtDOfsZkBcDM0ay+56e!>Es66M zjIAvnEJ}*zD>MEoo z%`xh2N|u$g2xJUIT6(vvil5m+CKAuumNNQ^8hHm0;o&yDbW_)EB5cZ!W8@xU^E;lQ6-z(v!`sr?k!iO zGp6lX$vmzg2J>}}5QX8A)vQRA!kEYnuCzQ2xSc19f{mVYIiuh3@hl(h+ z7B)$1n`@s-d4UCKW}@S-SmmC>Ryd(u%M=N>?$k{UTw5M^4B(x(Z~HVE<}-=2eerx@ z|9Q^={Bq5|>Gd1n?s<*>>w6Aop!fjA4=AociA?uvNv)~Hf{H`uTwDK+fMjOF1^6N+ zD6?RL)3|%_3!DM0gj)wS-|1ST0M-n0nR1`7Ye@-y@`CMdRfMssK5f)Tp-UtwHWY;H z=8sP=jv1Ps5X~paOSvuU(*WgvfQUfVSKFK0r(8 zP*mt>-p5+R9J3^Cx?J0xb0KJZW*5?*8-6TIN!uxGAXK25G1c=$ytyPQu{gvmPGVqx z=?)q!PGS?AMG)yCnx#-EUK$S#1*NHO^tf3JsfsD+9j=aMv+x%lmn0GvZc6vL0n_Xl zfz9;P_N*l|+&Y=-@VSHk{Nta{CkK5cQN+D+@m2zk+4JUg(v*ubR$Hf zZ*K3seXuMe6!>!#J9ZWZ_!=+AiO*a6e~v!oEOUQh_?9>O5E=jIUG?bVoP1HX%;53u z*gXm2)>?dA^f8(R)4{ZU!pAmOX3boMI@;`KLrjw%A8i}zh2qOE(P~?G%0L3k`r#3T zg(qr^Hn1`U<^x;uPWaNh;u-@5jGT*aD_T;`f0!1g(W zovUZoJP{i4aTrsxdv;Ucmeu+=)NmM*VB#Yn#&Q|HBui#B(A*HiuzL?Gh~w+|Z4l&X z940%uw(Fx%d)_1LeIsSVe)7S@Tg!{>81up5@ouIJ8#R%JLH5y!iWZ*V6eF^3qy_R= zGp@{4iwb)Wtl7xXwk}M!zxiQ@vEKS+4?2CQUQN(RsQ3Iqa=faXFH9WM`HCKHoA*|W zG05!Xn!_{;ffFGk6mPCL-z73GmE8#{Fz;Ib*;f6V#Qg1$_eN~<1+zs5!E<=S;3r7T zQRBw8pX-r@9uKikJ-3+Yr=9#XRwnvC!2&!57%V~Q4lUO2CAhEwKO3=H{q^m_8RAcT zX~lVYw}fCB8~qVt_Rh{dMJ5L>02GO7Ryyu#Zd7dKl=PzVC>{FZUIRvv3_4O)m&55G zZew!E2~{F?a}~xyguR}YEh^-P)RoDwj?AVxj&4#A?17G*sYfGpI2&Ds8c#uV#4{El zjY{WRa2IQUCdbJR5rsOn5G9RT4hbKn%&{vtb5z-k#X${nHiZ=&AkA6;ODkI>JRteN zlU`J1H4ykR)6S6C?l}cd@P+ok>#9e4PP>zSiZP?y@&||XO_OvQIfp^oOE3Pl z4gRxF8E9vUpPMyH<+~Sy&n?~^S-LxUTS?O(DI5sq=TRf_nCHQh;c)P&<{lti;N_; z%b`)V3&DpBkEo>q_RxOy#=G*%ceux`vXs{8rS9!Os*!$YcGajA{oSNy{Ny8}jk2Ut z$6$$-Czs5hHR(zc#tPU5tI^y4`iBgX6!5DtI2g z>_NN?yV>MG{o;=0ws&yqAT=LxDnay1F(g#5(rnACXLd+vM<_jaWMpnz!P~ks2#mh{ zXy)nRdO_Bxsh}4GEwbz2=zLrDqygCimV}vr0&zI_i6Vsytp?oNp~dpO#0rxj*k0-q z^YOQ5XM-=`qrj(Q&Ese}w_+?1C}l7tKa-CpRQ;VoB98Bi@AD)r$IqC>gxjdA21Q62 z$V~li0rDUOk@61%a6)_14GHj}R6hjQ>JEt|b7aP+`i(aXuVh4Onz1J+kfM8}S|?rm zI6BS;yw6hZl9~{uMVv7vesirr2p9C5QY@0XScZ_!ohm7EhiurMj79u{B|>{&cFUBr z@x1craGxH@FDbm7i_G&a2f_UkJL|HU*_YgCo0RSHh9Q}ci??|Tc6UJ%4h@HA!E&mw zpR}_X7(`GReAg@=V9d#zv`bzzqg^FU?f z?yNNFAgsaYRH`B_^-HZxVrHY=6@kCO9Zv;jhf}Fa=($yjPNc^9XVcFQSzW^BcJ+6& zbDd{c+cyr0cD&kaq0br*Q3*lG_$5~%F~6U-w>N#%i6S4a9+bxFrx&}+k~Q1*CC{?8 z8OHi}-j#XgBU1MToGUOGG(}2blyhe4(VH? zwrb80P8E+>zG29=0*Ts@kksiF!DRIghYcl+SRX*mEVUUB^8f^zlwr? zk&SuzV34Esku`G<)O<;jF0yZi2b}-#An9`wBnwp`J9foIV-uAQOH&S zd?xjQ)+@|<+>0uNH?cog3P_7oQOC?P@G7{-aQHkJbl(q%D0}EWxb~A~qYCXNp3Drt zd$-Hf$v{@y|E1q_CmJ|{eB1})6x`#(CoK|1f^a>NCt{IfHM>S_`b};uRNl4P*~s<4 zj+>LiWNY?yLWm^lbk?&Gx9^LBQEs%(y`7x#8Pj6_6Bi!ZK)&~ZiAzk5$J?u#!5g*V zEA8fqpo4wN883VZL4L~W%h5zLXADE7g;RL@R@E(0LDrNj>rI?R6vt##+D-V=Xw?+O z-?X~I>q?LuFzMHiMK}fZ6Sh`Oki4ZGnr|P`rhmu-KKKKEH+L{FMV8I}`Ew}}^cpLk zBF+e_2fNk zf|@dleA>&HVwF!uRl@PqllGYz%#tP39edJ>VPOixqInFlj)`0#7Sd3K;qAG!WyK2H z8VtWG+C^ae(4M{SC!c{;*ASmG&Q`fSsaodZZALXM?XGf$qMNL?Et!7do5QTASe(3a z#jm;Crf(T^8(*Zb8(64k2+qO~>LTibT95rc%|4zMR7BmRF<^Bbwjx3W z9K98a*+BKKU?9rHYWTJ8BvCKYe6jObBMqVqDt|O^F7tl+^%H9B(OhM(ap?-K@SE)C zDSx}px}#-!aD2Wr?odyAoD>ci-0ZG1R3%kf{gz1FhXl$8kgD~@P{hEVviliF`3a$9 z->-^?de!~&LSfN{`XpplMyXzpeTRpd7dQ_ur}Qm9U6p{kTRxeg=djqile7RkR` z^Y)9>TG7#oZO9(@VzX=3uw%zlgS?@yAQ>#+p5+JG@Hs{Z zJUq-|)7(%<9VaMQkq!kwzkvS?aPS_vGbgd(%-b<%`U?BT#W}dsBPN=oR?gKB& zoL{N&tV4^5m>B^StLy&$~xPAw(88?znzd}cS_ zmqyrlb4Rr(^?a(E5af}Z3haG+)QgD#p<$9*UxaKH1Lq`vM;9UP9Paz1yF7z!Ys6tn zmL$!O-Qsg)xr5R0iXQ!eRCLccp=+M?Vj&AJ7s=b1-Loys4N=%atv3uGpf*Q!_L>u= z+!+d#@$v*$NIp}{u*EM|nGJ4xa7N0bqrt?ymk?9Iin9D*7Kx_)7@f^M$$})I=u+{Z zT=%J6*uA_71zPk$uh`(d?Ue-b4Rc+#=Z`1BH|yxYpV!;TDH4M9GVVOz?tbm7ObK?a zosU_leJqv`mb+zW4j-}ZOLr~yA(Wi`0jEQ@g#8A3l!yswcC=66nrleQ_Vjjm1ik?A zdcx4nX<)1Hb_a)zQr*PHk>*o*(}($_rW6mS7A?#7?D_qb{o_LY zbBD6nN{gh=dBl+1#;|kmw)GiWPgHU|#^UWvPpq__cG&sT!(A6*3JGcF;-L(hB&zXz;$T zDabMKDo(rQIlkEoyXNI_&_l53G=Xiy5Xj-D7`~NQo#2_b1S?kMgO=JN4yz{5Er$G%7QkR-r)dzp!kZ4aH%uzbBRmJRW}f?FRSL4h0b z>J6{?RxUw)yq7$lERkRrK?vb0+U=!Fsa-3j>%I^S&jy<665pJ%3DaUIX13gh5>(1! z9&yB=caO@BW#PBj=K)6wjYk`$g{2qo%2~!2Z-RGy*dW#!!mt9yA8?n9OKNlF%`Ggl zgCFT1PEx5~qe zCDHn#dM(6q%XIo|M9%+5(_2Qh*?mvL0g4m~6u06I1&X`7I}|T2#T|lE+}(o}x1xdI z?p`Elad-EZ`}cp|z1C#q`ka&NoHKi7_DCDCy~blAgPzfry$+9qve;+1SS0|yLf1m=VEoW~>6f3(TKVtYzBj@Bh^*vm9!qLzFHgIA-`}mNi7fq1}TsOVI)NSJDzpE z^4c%96^Xj_!CA&C8}YxuR;Tw>z2D^pIC`7O{+bnVeYC zK(QU5p;Lh!_eyjkpxd@?-1M|JKH%m>!$wwa;>^b{-OOF7&U16|G ztv}=a4=AS71NUV8%d-y%%jMPo48zM+b&6>=@v7yQ5;P7Z5o_3TlXBzSH