From c4fcac7ddf62420143e734f5a362d5d793de2e4e Mon Sep 17 00:00:00 2001
From: Audric Ackermann <audric@loki.network>
Date: Thu, 6 Oct 2022 16:34:22 +1100
Subject: [PATCH 1/2] feat: add support for audio notifications windows/macOS

---
 _locales/en/messages.json                     |  1 +
 .../SessionNotificationGroupSettings.tsx      | 27 ++++++++++++++++---
 ts/data/settings-key.ts                       |  2 ++
 ts/types/LocalizerKeys.ts                     |  1 +
 ts/types/Settings.ts                          |  2 +-
 ts/util/notifications.ts                      |  4 ++-
 6 files changed, 31 insertions(+), 6 deletions(-)

diff --git a/_locales/en/messages.json b/_locales/en/messages.json
index 922e556c6..c54bfb59c 100644
--- a/_locales/en/messages.json
+++ b/_locales/en/messages.json
@@ -356,6 +356,7 @@
   "appearanceSettingsTitle": "Appearance",
   "privacySettingsTitle": "Privacy",
   "notificationsSettingsTitle": "Notifications",
+  "audioNotificationsSettingsTitle": "Audio Notifications",
   "notificationsSettingsContent": "Notification Content",
   "notificationPreview": "Preview",
   "recoveryPhraseEmpty": "Enter your recovery phrase",
diff --git a/ts/components/settings/SessionNotificationGroupSettings.tsx b/ts/components/settings/SessionNotificationGroupSettings.tsx
index e5e96256e..ef21fe1ed 100644
--- a/ts/components/settings/SessionNotificationGroupSettings.tsx
+++ b/ts/components/settings/SessionNotificationGroupSettings.tsx
@@ -3,6 +3,7 @@ import React from 'react';
 import useUpdate from 'react-use/lib/useUpdate';
 import styled from 'styled-components';
 import { SettingsKey } from '../../data/settings-key';
+import { isAudioNotificationSupported } from '../../types/Settings';
 import { Notifications } from '../../util/notifications';
 import { SessionButton, SessionButtonColor, SessionButtonType } from '../basic/SessionButton';
 import { SessionRadioGroup } from '../basic/SessionRadioGroup';
@@ -30,10 +31,15 @@ export const SessionNotificationGroupSettings = (props: { hasPassword: boolean |
   if (props.hasPassword === null) {
     return null;
   }
-  const initialItem =
+
+  const initialNotificationEnabled =
     window.getSettingValue(SettingsKey.settingsNotification) || NOTIFICATION.MESSAGE;
 
-  const notificationsAreEnabled = initialItem && initialItem !== NOTIFICATION.OFF;
+  const initialAudioNotificationEnabled =
+    window.getSettingValue(SettingsKey.settingsAudioNotification) || false;
+
+  const notificationsAreEnabled =
+    initialNotificationEnabled && initialNotificationEnabled !== NOTIFICATION.OFF;
 
   const items = [
     {
@@ -58,7 +64,7 @@ export const SessionNotificationGroupSettings = (props: { hasPassword: boolean |
       {
         conversationId: `preview-notification-${Date.now()}`,
         message:
-          items.find(m => m.value === initialItem)?.label ||
+          items.find(m => m.value === initialNotificationEnabled)?.label ||
           window?.i18n?.('messageBody') ||
           'Message body',
         title: window.i18n('notificationPreview'),
@@ -83,6 +89,19 @@ export const SessionNotificationGroupSettings = (props: { hasPassword: boolean |
         title={window.i18n('notificationsSettingsTitle')}
         active={notificationsAreEnabled}
       />
+      {notificationsAreEnabled && isAudioNotificationSupported() && (
+        <SessionToggleWithDescription
+          onClickToggle={async () => {
+            await window.setSettingValue(
+              SettingsKey.settingsAudioNotification,
+              !initialAudioNotificationEnabled
+            );
+            forceUpdate();
+          }}
+          title={window.i18n('audioNotificationsSettingsTitle')}
+          active={initialAudioNotificationEnabled}
+        />
+      )}
       {notificationsAreEnabled ? (
         <SessionSettingsItemWrapper
           title={window.i18n('notificationsSettingsContent')}
@@ -90,7 +109,7 @@ export const SessionNotificationGroupSettings = (props: { hasPassword: boolean |
           inline={false}
         >
           <SessionRadioGroup
-            initialItem={initialItem}
+            initialItem={initialNotificationEnabled}
             group={SettingsKey.settingsNotification}
             items={items}
             onClick={async (selectedRadioValue: string) => {
diff --git a/ts/data/settings-key.ts b/ts/data/settings-key.ts
index e9b08738a..ab853d11a 100644
--- a/ts/data/settings-key.ts
+++ b/ts/data/settings-key.ts
@@ -8,6 +8,7 @@ const settingsLinkPreview = 'link-preview-setting';
 const settingsStartInTray = 'start-in-tray-setting';
 const settingsOpengroupPruning = 'prune-setting';
 const settingsNotification = 'notification-setting';
+const settingsAudioNotification = 'audio-notification-setting';
 
 export const SettingsKey = {
   settingsReadReceipt,
@@ -19,4 +20,5 @@ export const SettingsKey = {
   settingsStartInTray,
   settingsOpengroupPruning,
   settingsNotification,
+  settingsAudioNotification,
 };
diff --git a/ts/types/LocalizerKeys.ts b/ts/types/LocalizerKeys.ts
index f23f5fb23..a66376bed 100644
--- a/ts/types/LocalizerKeys.ts
+++ b/ts/types/LocalizerKeys.ts
@@ -117,6 +117,7 @@ export type LocalizerKeys =
   | 'appMenuUnhide'
   | 'timerOption_30_minutes_abbreviated'
   | 'pruneSettingDescription'
+  | 'audioNotificationsSettingsTitle'
   | 'voiceMessage'
   | 'primaryColorPink'
   | 'changePasswordTitle'
diff --git a/ts/types/Settings.ts b/ts/types/Settings.ts
index 8a460796b..32818754f 100644
--- a/ts/types/Settings.ts
+++ b/ts/types/Settings.ts
@@ -2,7 +2,7 @@ import * as OS from '../OS';
 
 const MIN_WINDOWS_VERSION = '8.0.0';
 
-export const isAudioNotificationSupported = () => OS.isWindows(MIN_WINDOWS_VERSION) || OS.isMacOS();
+export const isAudioNotificationSupported = () => OS.isWindows(MIN_WINDOWS_VERSION) || OS.isMacOS(); // currently, only linux does not support audio notification natively
 
 // Using `Notification::tag` has a bug on Windows 7:
 // https://github.com/electron/electron/issues/11189
diff --git a/ts/util/notifications.ts b/ts/util/notifications.ts
index d9ed44ca6..fe30cf862 100644
--- a/ts/util/notifications.ts
+++ b/ts/util/notifications.ts
@@ -1,4 +1,5 @@
 import { debounce, last } from 'lodash';
+import { SettingsKey } from '../data/settings-key';
 import { getStatus } from '../notifications';
 import { UserSetting } from '../notifications/getStatus';
 import { isMacOS } from '../OS';
@@ -117,7 +118,8 @@ function update(forceRefresh = false) {
   }
 
   const isAppFocused = isWindowFocused();
-  const isAudioNotificationEnabled = (Storage.get('audio-notification') as boolean) || false;
+  const isAudioNotificationEnabled =
+    (Storage.get(SettingsKey.settingsAudioNotification) as boolean) || false;
   const audioNotificationSupported = isAudioNotificationSupported();
   // const isNotificationGroupingSupported = Settings.isNotificationGroupingSupported();
   const numNotifications = currentNotifications.length;

From 4271e66fb6453f56df2e45ab3dbcf6af9d0c6938 Mon Sep 17 00:00:00 2001
From: Audric Ackermann <audric@loki.network>
Date: Fri, 7 Oct 2022 12:04:59 +1100
Subject: [PATCH 2/2] feat: add custom sound for notification so it works for
 Linux too

---
 sound/new_message.mp3          | Bin 0 -> 44493 bytes
 ts/test/types/Settings_test.ts |   2 +-
 ts/types/Settings.ts           |   3 ++-
 ts/util/notifications.ts       |  10 +++++++++-
 4 files changed, 12 insertions(+), 3 deletions(-)
 create mode 100644 sound/new_message.mp3

diff --git a/sound/new_message.mp3 b/sound/new_message.mp3
new file mode 100644
index 0000000000000000000000000000000000000000..4918d45843923c5a430eb1e910dee74a2de9b1db
GIT binary patch
literal 44493
zcmZs?cT`i&7x#P8AV7f70|JIB-B1Mt2@ra3QUnaWDIi6#5{jWquZr|4NEc}mIwDGy
zCMqHz9YqlVA#Zqo_r2@>ac8Yea@IL3`RqO4v$OZi96g*Y6gX=FmKGLTly^n|fEYU6
zc9&O@lDQ-$jlukP_J1Au*z*5#^#A|S#>>}(a)$CXfFc0Y6aX+98U_Xy7ET@>etuzL
zF)=9_83hGp<trK*+S&#NCMFiv*7o*zyqlZ1zkg8BojVUBBV%F`5>ivMpFS-pC@ZU~
zs%vU$ZSCyr9UL4P85^6Ln)~!=X=!zJV`JynuY-e=6Y?1eh1rF|EPLtf;Quy3=-B^0
z))f4Uy>)|pJcR=g-ABn91c3Di1(NatA+*)m@$gUT{zC!?(76iozbNv5?eNR!;n3t*
z)FJ%SGM@;N{tXrY(I-a<@VsB<504MJoKg;94=0T>NOCeHaNDTEHS^v_;g?7dYgAX|
zTufh<-cXH2)yCbHhR+p-?+VK^p2oOxh+5rYs+nvLn<10SC%b(A?(A+h_D+6iTDaYL
zV_;rvwtu~4vV52MD%)rS?-Q|flf5{Vp*d06!Ct3wZU@Y%;Tj#zmIP`}4|72N(U5&{
zT+~_BuWvr9{PaQ%*J+J=j`17YVZ+)gF`uK0Wb&?M3;E^!kfZ&*EBB5$YL`C#@%;6K
z!>B!{#)#!uY$Jpx-$JM1uzFMfBJUhus3ziSvb+#L@9OfO^?%l$x0gRD$}P*1X_~mi
zZ(;FajxBSe{8}5oYF9Bw*hv`qWIl6$WLsZ(c*D}WO-77q1oNUKRw$~QTGVihA8m#G
zyNcu$UUHTaxJ-j!l2}IX!DGN}a2i@B9Le-Y-FPw93Ay$IINehF@ApnJ%#)sH%u(|(
zX|z9n?bFHjVJ=@ik6}PFNB^1tpPALjW{&3_vz%CyNy_DZyYu<CD|tlXtpYw$w>2!x
zh*$A3TPQYexM;GCamx{%xx>v2efSKQ8K$6%RUkqI4d{ktzIHcBk5C|(O-1~f((T5q
zL_?^%j&gw=Mq)WpN+7;Q?}txZ<~-rb2=HJ5X$xUUOURy0NE|7pel<!J6E`%5fU-~p
z`VieCZkItx6?g`yJCuON6F}NP0oci$QCL^ww^Jw-%)}!7jd2o`46@PQlXK#yUxhm5
zx`^rBA{BtLAuz5f?WphWn+tt{e7zA^U2p;%(Cxc%8K>Td7lsZ100TaNZh(zMozQjV
z<QHw78IBJQpjbdZ!^fym^Z<G+SmNqZhC4M@0}lo6?>y*L;l>~V6qF!Jh=JCBR}HvK
zN(R$`*24>Ev_H99b%c@kr%jRIA3Ap5MB=t6`gh$0Aor8C@_+&Wf9vnJ0yrS^OzHgL
zE|PX{u#~K%K|^ANKnO=P5e{DqSi(h>vMv$H`CZ$>+%x1~w-f@yB$~;!<kP^zXUbhk
zX9Kqz_Jz`aA@A-wDP=qu@E?$5igud}yndIbQEEW(SiR2Y^SCFU<edzCu9*WeIjr{W
z^`oQgZ`R62UyUA@U%Geofc)iT<=^MVn)fTwH?5j)*BHBGO(nu&1i^qH8;KK~EYdlO
zk4V_@5Y!8V#eRpx><uXnyEa~(A3-p%15&L{hr!>)6(R#^n2!kiBpC8s#@ocl1Z8P;
z<`UKtWE}bxL*wy!CRL$jHiY)V?<XYFyV?Q@g|jW@xtr6^?zlABd$Gd3jklUU*>Rb$
zOAkcyaPNH-6_?t$M&5CE(Y~&CfnuH?d26J_8*Y9zU~AR=yQzZRq)Or>`Sio>*Pk5p
z9qwjSrW(hiZ%w6fp|T9)+<wN1l>mU#NdDsB$T@f~gms@9LIfh*q2L0fE;k55NcN<{
z7bsu_P)m=VF503PV0ADmf48J5O|IsA+$}WGGKgDb{Hgw*8n$7pPW{R`{SM(YI34Js
z!__B}r4ciD<bzo89=w*^ddMyENuR@vo_hQUgF=R>)af)?qAvEfCzeX<dUgnzytTc5
zePyCJ*6r_JbM>9z^#D<ktzB~G%!eMY1g8w%yX5buYOl7EDC0tD76Al+iR4{}=K`o8
z1&;jSWIVtC*!WYS00J7zA3@;mMli+|Jj2I;gsJ#2PA|2!6C=2sZ0Pt%NIVz>*93%R
zOC9zNrpHLnWcA-?@26iEKB~F)X<!rd&?1*hk${4`WVLabP*Y)^y@&|a9M|~7n;{c3
z)lT>E-;#{Cm-*eCJ%%!-#E`DXr<oBr0fyyXg<Bu;tQXo-pH)2IwLYXU9{<_Y*$-I=
z_^y;V?D2DF>$LskWcN73H|)#+^3)efcfvcmd2(gdIU_lQ3c#B6=N2GTqS2R18Tnh2
z&*J|G0BbZh@(aPjM=Rgh?RtXP<w26w$8`L!&_d16R&Z#?SBpQiNl^9hr<e;M3u?l+
zTskZejHZPH!BO^cR72<KO}kV24lz^^|L$2~AUrTu+K(O<iB;aclAbZx{+gPppxNA|
zVf7Y+<ei0@A#fmHGkNrAe65N3L(VM62!q_D|BlLFM!APqctiN!zjg|<?ta8Ycxl|+
z$%OCA;ERS`O%pFd4y(!6qdQFSp+8%XyC~OCENgm@?}49^fj|<dK197yS)xwB33lMj
zfbPEnZ-_qpa!?HSWsDeF(X$?ttl7a@!gh>JG&p^RoYGHvB8uhf!DPCUt`GQi_)fK9
zfN&*q>ym47CW<d*_Rz4Ld_r6aK`!!M81Jw9pYKe?<o3ON_?jYd`|Cb04Z(Sy?xl$B
zd9fSoUi_vu*cvKHwR^|!LUMf3I|_G3y2xD%VRzKcrA0+pF8lqD^)flLt!3MajbI7@
zREkC<t|8o;0wgO_wy0<%D*Hv~&sU1vBRw$@h-6(P!kraY;XNzp4k6)SAXXV;BEx$Y
zuGCAqf`BGT0uN=P;={hC1vF`)o<b76Ss<tUk6uKm7g@rwQBb!TVB+gDMcN(eMge0!
z(rgU!czbV$z>DPfSx@eg!oR*{en=*7w%S!;Oc?(2;zn<H#T}3KY1<Ej=gyV%ZvDFc
z*)7j|uEjb_fWRv9(}Qx+Y0}LnC%p#)v?9`;Am=y<;ntvp8=O!)0YEZfnChTF3_K5m
zr@Q_YZ~uxghPKtkNXTG<7#OGxIcSJ5S@wI80&h*RDy8CH%Qs7;?$ak!iDZ;P9qFJU
zhOB%5Kh_{P{u1Nvz<loo1*DLVG*&Apb-UV`&X)=dR=N04m>p2;3$h7W$viwh!MV-8
zCh9X?Y(dSCKPY+|M<{4;%Im%kW)qRVr4d_eoerxQ-Zk>EP?n9_i+lE;?`Nlf$;S(R
ze9}+^jpp)+QK@)kZ#wifqG6FhK3>KR0`7S1n|lu@hPpgyE{5C+<5J+@tM$G4+_JYs
zemm}gAXL#C4HP8n!ph)Sc6J~c&&Cj;2$*U`@+zx9%b)-|-WW~=kTUVhaa57uOg!E|
z2s7av0X3;HGGI~UPItMhvowrEP%$~0m5XVDEdnp~JH;a3t$n?k1c&wZ6o6vlAE_2s
z!&HzsT(>eZDDCPatv;HsoS;OUO_46&FG!UP9BLv-&V3>RdMxg|j{T&c{Go>Rv7qCX
z-y72<&o%OH{%0onsEd5Mc|2X}UE^@`_H?O?RGCG4r_VK+5F^h<l>^D=`bb~@WoBA#
zEE|9!nZie4Shx){fx@o{5(Wx<ot6P7LWvb9=#UvaR>6?%@dQ-z*F9T;P?ro|Ak4DZ
z+U;#56{)jVyZSHFnEyb#HbO|gE+m|K&G!vUtgt5)T{8?$FjI^%ix_-T5rqXKW}L=!
zQ$9qMHGVX5={g?fE$o3v7oa@Ej>)HCn_~DyPVRRcYF)LT@8~RE{@t>($@}ZqbcoRO
z-G51U<wd4uWB)U2zRTn^@7`pm-0f1ot3J(F4<rQ(1{(NV%M91m=l@C(;9gw(Vv3YM
zeSlW>%NP<(OCL@k{TRz%r3rThuSXPs8EBxJmJ+NeoB*nZ4Rzl*y9(${!j&Gl`rhwK
z-Jd-b#31I*cXzvBZ%TK0CNMwyY?-MJXyaLs;_w0E`uYfmzYl_EBGFi;$5-o4%&Zev
zc<*qzHjxNlU-b(IbZjov2XJQKWoWnNi)!=5CnvvG3xlvP+*k$jcGzk>^6vceb7Wj{
zxwCrde}hCm_;C7Q8U%o%sfGYk1rfUb=+zh9;e05lI<*i8AXF&YHd15LARui0;(d67
zYfPJyqB0e1LN)kB>ul+E+pr_NV%HEOi>NQia<O-0_`Lb$DINmm9qvN2PG&R~{90Sq
z0`(C^FUBxuy6E<u9|>!l-acLV-3>8y%kur+QS1HrC)VPpWGDHkcYpNn3-0N|{L3%M
zSJc)4NUZvg6x;8YDWIoGZn`>t{Uzo~zFNEI@V3>4S7OsV&ng(O5KCl%Apl^wK>{Ga
z0Ye1^qa`qIpl`6`5or}9*0UT1jZlgZQOu5|b80-C&Sid8pPF2Ox|DGki8-Hr6IS?W
zjfP;J&CLrPK)V1#T<AI~Zg6-m9pI`@03hn>b*P~#&G3Q*m;@<C1w=wO0oZhT1S`EZ
zE(T?a29pTv8ic7aI6&wjpwI5#V*>29(%T0iczE-msOpPlkU(>%c<V+oG?pY3qH2oe
zzfC3FS7-Y*g3yEa#|I&JVXT3Lb>Ke2DhMD&5KJYsup$*GLut4OjDxu^c|k(Lbp$r#
zS;T839RJvMd=F<(HrQPc4XqhGht$BP8@Fzoe8GJR;`nklo*QTXRvVq8t&_r9vK+X>
zDp#A?j-auHw(!`(!jwW*De|f*&dmLBm^_1mLPpaN04IRLnKCCycmRN-62Jg~Gz1xe
zsy`*+Knb8;c=s&B2oq^+pb4Z$)EzK&NlYD0?_LZ^5WtFzO6(>iL}2@%gb@^>1X0Zd
zqXwLkktk1lDxxfa>^s+l&}WwnkI*K?PjKK7Fw%%i9gdcdzzT&YK^HC{`R&jJPK$&D
z0F{ZLro~oJF-nFvkO+8FwEbTg1A&C7E7UzFVe(CkiX9Ae%SBQnt&w~f&|v))P>e3x
ziG=ZYiUPGnYC%|INIi>8+yD}Lh+BsbI}Mbk$<2boBVGe&Q!ZGAG&(4M?fmTN!1~zr
zGZ#_(GehZ4tZV$t^_nxv?QX2|lr=G{+`R>f6~q}CARP7FqiG%NOw0XTuEt@`%2SAk
z_W}SQn8HcjQ_=}?>T;x~f(a->2k8bKqKKQYx22Mh>#V!b_demO2x$S8lHjSo)~zd&
zAUO=}so)q%j~49hU}ab@u^IcRH4GSwVxe3v)Wlb>N{m?Tr-Y|c(ggChn7hne&NI3`
zQbz}hQ5RKa<ia#@8Ie&OO&CRP!36xu8<3D4sidIN+ps4}KnPBc?E^HxC6Qq0h?FUE
z{V^_`6LO0wS=!bB5996?^<F5Q)IBv6ce*oh>&>NXW3eko9&+LBpE$nCk3N61^X(G(
zYX7tQbq62M{4qXu-$%>pNW;^KZ{Lh8q@fo<grAuWqI>a*1VBKG<`_3<F%&7t3Ksxl
zub^O!G%IpSE$l8d9ye6BMJB1s2`YS&y-+?COa@q!ZoCRpM3;u#lg32R1ZL89W78P3
zH6wH+k%Hq$SHLcgftWDGhYLpqac>e+wtAh|_Shk)F^Mwqj((>U0=#a>2EA*X97QBJ
z`Mby^W^-R+L`E%G{o_9$kKhu8FX(<QGiarA{F!`+JS8e34gA58(yo*Ev^3B)t8m}U
z;t_5PhrnZbx*37qfzqc{2KlF#JI5cgweI_;oTcNxcppTcbWyC{SAN!LtnO#xQISn<
z06G)y5EaYM^3MZ+y6v+5^gTTA$HU8e)E{75p_6ym2KYA%%X~TuU}$(cbY&5OMTQD?
z1GIQnV8s-IVT2Sz$4oI^)Gjn*Epj*HCRu?TOaSBu07?#LikW3b(GhMDP%z~I+*}j5
z_WEqJ&~AwWnl=<rLKpFYT^Q%ZhxvXqWaJ086>c~?loD{R+Ob1j8y^-*)1y>MQm(ZI
ziYNZSF9|o_^F|Ev8f5V{tN#1vbuE!n;!PWwQ)l|@x{MzAO&^l0Mz0>$gaz+cKDYZ$
z-nG6_lMLtsYW~z%G#DlfBJtxD!F&K1FGZzIjrPRno*NMPj`B72q7wO9AV)g@kc#jk
ze8Nz?3Z54nh2_xo?8w9DKjh4O8+ebWyH^;n6kUs$9j?d#bsGs5F8X^aw^bz}!f!2|
zCoxNG414*hS8RxQMO%1Wtrcr0BGG~6N2lN9T5s+<Th6%rSeYL$M`=i>>6W*9<h3h*
zd1yQKjU2$(^6B*2R25g_f|TFhkyo&{N(edA`o<5|n>H2z7+?S?jImXNM^N??NlN+%
zE*9?DDKsXAE6}q}nH~KLgcXR%KC=Cp0t5A9(@JjrLu;KTd`=wX4mHL6SR^`rxF`%t
zFM##|-J0eE^<RwdEkEJnU8j|0WKa$lX2v`WUN$*7HN;kZT&;^qKvZ&utkAEFrcN0D
z+Oe6DiKwT<iCg#-G2ULK3*<f6=>hrPVUYEskOQztBSk|0wY5zYB}jna056HVQIwxr
zm9_{aVwOUWnpLXQM0Lh1WyQs0heVQo01zyeRG@As6OJ5bkyclaH2Of8Gqg%G5Y0C*
z?`x%L=r<F6=jgYGP?(4mn+s5x8diy{H)+$?<|3Td2-)cwEPJvv>PrMp|F|0^mht=L
z3H_zhm*w?SuQLZWyF?lG9`3cipGq5)IM{Oh{^^0*eKNU6m33@5X5qhi05bXavCr$;
z&W3vt0D%^4J%$i?S7N*$j}~Wk7eu4P5wJew#F_qE0T@>4?Xlxr_6rYDKfif-wx{1I
z^_Q!2EO+VtR+U_K3xa#OMq-eF;J3VlvTYiq!GX$93M%fOy=ARVycY`=t5WJRi&7%N
zr2%!%(NX9qhi;jGQ0H8bt3l?rZgwHOu8DYk|ML9$JO}sf^_HYf>ptN5=lDQrsnc3<
z#7g3qJaVnTN*9@Y5X)X|)2j3Nb`hP~%1Mh!_2;b2A1U>zFyt$-u>U!qOg?fKDgZRN
z1z!|E07Gt?GJqsjwP?!33zhks4T+eGEx3$2EC>&WL!e-R5h&~zJ4pcoinGuBM`GoR
zC;(2Is-$$UH!CsKA$S{racmd=8xBu|1X%XDdPxBxBghAyU3xQsEB<q5!o#VbJHKx7
zO)W%Twti$|Li4Y}MU|YLPR?5;3cBXkiOP@NAF4u?-nDlwXW;XG)(f}(e;7}j{{kSu
zl;?;bXY<uW)(ru%5a(_c+5~Wz8F-*j6P<#ECYPw>9bz|;jS%A)ftBTUMlgijOMp?e
z1rbbH3gKMTyxi8iTOA?-^sk-Z67#PanJ~P!a%^I7G2Q|9ws$3^G<i90itX*3`>0I|
zW?{sp{Sx=Maw|&yNPN0EYk}yTTDkkSEAja^(%9%F>sM|s4P2yL@=rgj>{_5~Yk6O_
z{9kWw&pyWjOjN*^3PjA)G*G<@&a~Jx3dD>>oW~@=U-Ui!0qAshW@h3mXz43SbyM{W
z`zv5B2jhPMxs9vWofNiE4N|!gf+*k>E6YE3xa5(fjzgtU9JAS0ro++T-kYBg)zY`N
zpJzJYjO^_K{a+qPeoy%OqcV8=*J){gRJ=p)@!{v}<dtZp+SQNc-^iU0uZ764-T@0N
zD#++{{RjC+jeKn1sR1CPLF0>9P7OfQHd2OBKu#Z_{7WPb^6+P*qdkdeIdCNwz=v1f
zWFYvmsFcUrE!T8vjGt>%_P!~=0@Kf`uvyZ>5+$05vT8i8GxD}PdeQI6!GF*6KLvu>
zD;fAW&c&2cE8X;HyTIbPa<L{voBtK}^8Uz+>Y0ZT9QtH3uWxox@l6x8^FDT;2IpSJ
z%#u%B)al=c*ninHy(XL$rbIqHxHg(kJ{*~U+UM=5xAXt{Sks|}1OP}9^)x7kNYpw<
z1<{3Ri)rw|*Xp>~rOQ-iS1i;b2tz5!G;t!t+lq7QeK6D`c8O-UiQ%dGmSBv=(l3GN
z;*HctkEHoQ9E}s99j1bp9@6oHeT@{<>5Sq&E*o4{{K)_M$^M@(E24>2+o#RUFjFHV
zvRaG8yR6C&%_oCm%{&!cp)PHf;!0**mOoBaa%pn6{o*V0&s==Ms^)~7O8%o9m$Wdb
zN<DTnjS}7f21qIiA#r1JYy>YcM3?ZrVh|EhfzvFzxb)QHNBnmNc2$(KGsv1{hZ;jk
zYm<}f3-dFY#MWJ_mM4?bfk%_sv=@iZ0R(#w`@U|=uLqcw5B=hs(`8MTfwy&%cc)w0
zQL2)Hx&vl@+>J9X0)#g%=|#$q6*onym9CM=T`$v2C}exKY)Ri`M~`-VjxC;^+BV5?
zN=V5S)`J2Eslv|4j}qMH^;$&5<<E(P+UkAAIh5xk0Wgxp@eTAe(up?;yI%ATy@ZFe
zx`S>#-dWw-re{{i1#(4^WHk7lL;z12Y`1ag_b`50wrb7T9<*cNqYH+JX&nt|e|YLv
zQyQoIZsK>1*?W{3fBWa3It>=q^OA>>+;;yR3@+f`_E!C{P~H6#XG^|!W#fcj;h^Ko
zrt13va@+U7liox#!5ql4FUOQv*BK~TETr_S+Vs)J*ZRBr06zezqhK?N1rM{aguVeb
zD2b#(8hbVPOTsc-A^Nwh;04SO9D_zmE9xjz2uXeoN1KWOOtwUkx`eve#zE11)p8ZF
z=h{&pb?6mgQ3h_IB-Y$?=MNvc-i8iP#no8ubp5=q6}w*Zu;Empq<h#4(q7B;r1^6F
zV9iA7Zl(Hc>8=@TbI#k<55nZ*KHNTt?TeD$@x!^868BhDk6cc6%asc+wriI{o|ejg
z(rPkjK)f^$FhZO4PBDr6R9}8~@ywuOwKb%2%S%3u)SDl9m@&2+(3xZa3h&{Xi=ZYT
zxg<cGx*QRa{#Xg8#X9#YnP5?6*8)5hV9Jg+v+>S0mK&0wkI0Ew{!o~Gp7svZ`?;hN
z7O(YizHTMJ-tu7(;c+f^(M;3ObBUPL%OU6Fg(Tu8QE@25iDkVP$eng+E;Nub>FMqs
zYjQVL%Xx|CV+|LT>#s)Pjf&4*BWsg4C=#Ny{jf^;;+iXkE|<FK3p)TPz5i=6&=aex
z%>>W3G<9>v;InBjVCrH9S6IrVjj(Vt=MUKuPr<HP%QH|!x4G%p&qG$R6;Z#8(RdLb
zM^jXzYCKp&9TC)R-0v;&&tlt6lASB${NT@G-Cw#yolj)3SpiZ>3}7wIquKq^OvvJ}
zCwmujYHN^X!IY(J2cZW>5jW(R<&19qM@Q*Q@BlInd{75AMUpTNRCU0Sf(FZYXKip2
zROd~XY~eFfB@vJRp^T)WvFz(bVguL#b^gEyEDj8B@j2mh81smD{ncr&?guF}-En!h
zJ4Gwe11;|FluRXcY<B)w1b9?`)E*_?{TDhOA5<i*w|47=PllTh{k<pG)**Br2hbnd
zdKsRM*wztkx~wFW7*3BdOZ7jt(?nSMbH9Dl84<hVsz^#f1cAe@U=cXf&|^*|0)o2(
z<E$RRl2dpm3Ue-3J6?~#O|6X1?tc~Ms}Vt;-UAsi!`eDLY!Ia^8{MCu;G?_TlS=hO
zLECXg>c-%slHaWZJm+|(m<Maa4z|0EvQ33Nu1}x7RKltbzCH*$l|LpE9a<UNQvdCr
z>2sa{EtN6!$w><>b=NZrp-E&3?H1iWcIQvd7TkZmJVpNOO_O|l@58mHQhV?=0fX`X
zS#Yo~yY?xA!D~RO4us$XtOsCten1e_pZJb0DAcqEp1?oSJvp@;m!OEmNbs`)h8K9=
z8Sx=f-<k%bdnBttF1fxe-{}+ZRTOtW$<-^p`3~tAioeHUH#N0a?^0D&G}lFb(4*Va
zo0q(MclC8aftk-=6@#Sg`<X0Bze0ZnjS{Wvcf-0w?{~_pda=-GRj88oB{u#;J7K@>
zt(nkd6Hjc)wb>V!>T9wQt3yH%{?&Vc-8b4^5(!QEDbX$P&QhC@f+}(@hP(bIA^*mM
z7XeH+RAd-L?~JkmC;?UnLeTb;Na$dexSleb|At4RIGXnMplh{E$|X`}U9K7L*9>Lb
z_Xmfy8Mp*z`_QnRQ?^p3yHgWHnxwCGxz~@j0Fd;$H2p0-`aa1qYX0!U?hviq|B{%K
zFYARLOf~%ux+d!YDAV%#GRU5wLBd+n&?F#P;uZ8c;ZcpeKwyu#i-aH|1Oo~b9aWm-
zLp@2)B77L@M*VW=V!d6k`i)5%5W$YIc+Y+}?I~`;f3^8I>Y2hPbIX}EPcCYz2s{R)
z^QB;lv*P>eLw|OQNO>lQ+4cQB@EIBU($?<j-o#-3pU3`$ov2;QSTB_)0DO<#ACl1D
z*r3DUD3E{<52&~305v4$Q{Vkwt=Q562A&a(_^hqY@B|pXS~>YQxQ1q&SgNq+RU#14
z7p<;!S>_Vjk_qrb1vNZdDU~RFpUGTk=|Jw8%sMXucDUT>w}Oe0yZB1%5Zm*>UPq<p
zIr8b%Zqp_6E30b`QPZPmG)H8Q)_am+r&{m|;7p$%3D8lDzRxQa&xA*Z4k0&9n5LeK
zzi{1N`kb{K+~wZ~0Jk9T060j-%pb!^1Vf4vMDTs@fUoWVX~;M9{2+q>Ck~HBqR!De
z;r|7Z@F|N<W{xO>hrFDztf|IBgX#nNz^g)kFgtTpdW5u)t0i9Mos&g?#_qgp;!;ow
zf@|gRh|4|r-!T)3F!HJ3kLR#^Gn^eQ65l?A-TxQzt}5~Tz0rTCBT=yp!knnk9%8ZU
z+Y;V0LrzAOmgDX0&B|<80vYO#P<JX2LKnFwR&zZ)f#xPG1nFPBPaqV<FA9|9fWF4y
z@O@WML>HhsaKn@q10w(gd{0Bn1ad?%*(nl@>3_g*@xskd2S?7uTd|J<_{NtFrd3`2
z!GomcsV80BK1y0HL2q=(9apM{?WmPXI%`hmZxppizX!#eEexnaEKbSy|Jhltf?~l=
zO&TmQh|%M<n_Xv^;|CuO?NXbNmZni{DZgBKus}FxKqFQTkCe)$BGh4+3~2xa$%bkw
zB?4`NQiqE+(=ulphGUYiW^;t|5$YPUwFzEPK#%E;e;(^IXSv|j{3r4Mf_?@p=|0>>
zt5=umuf~d+e=g7C1A}oV1M1xX=xwebsQ*E+6yv<dN_F}HnLL(^>E36!U`6j|prx@P
zy0ywkeRDo0El2IQ$J&=ONJ`4`<*YYuISpHPt^9u3I*`3-=0U3t)YqmP00sdg6pcRU
zoTa+DEJGzbLNh$(93d)ZYAsm(9SFZRgcuftJde?eF|4VMhN<g|@IGV;{+B3KsLm7z
zyciQ?-)w#BkOcwcr>HbPtH)gTKCvE;|8n9${!-4<MJ6A{EL^?)?i{A1)#AEK?g=>{
zs^>O%tTcX5>r9{D0O+vzu#dxdMZMV_$$L6}7EQGmYL1EgkF!fvKS_45rfe|Bm)P~u
z$($KL9v7P7B`OX3Mlfndp2j3R^_1yrLII!%4!etZ*eiBP0tpnQen{YJjl#o|!EE$~
z!*TS6{}3_ow*^nAXmiWhA88vtUloD&pIUitGC#=+6RP@GmF&gVtQga7P@nyx!i{0#
zFN4z|gYLgsEVHdNOgi_|Y^UIeKM9omZ1+1ke)O8FLP%NH7x@le$&bMt%E8_VA}T89
z&~#5w7)6oL@$b+zoiotW(apJ?Ys?++$|BtcB{TpbK+td~6b`~NBME#_rj{s~aQK>N
zc5*ad#JusdsZ^SX3Jw%^WNbJ}GEzNx2q8-#7{dT2;QXTjY&VW7oW!U^Q*7ruj%0-Q
z0HiH2zMDJI)xuWOQ1~f4nyMz=QV?!$;a5be#vE6^j*us-LL)$a?d0cgGUL&^T?u~Y
zGM}4&BNN+Ce1m0Ad?fwU<Sm9D7td>?Z%bxYH5)v?yR}_9L0Qc@Q7e+`lQ-5r9gfzV
zvrK>9`gmG*Y3Thbi#a#GKNu(bI_~@}XX^9;XR6rx<j4hX&t*oDx(-rNe>9|lhEa$F
zz#|i2o*=-&($GoK_G?iPplDzG`}e?oA^LQ-K6Dg<njoY;f}~RE357puS1`OdUfX*4
z;!|1iL|u2+ZzYUf3^FL5+uhJ`1Ak^I^`|!<Kn0pusxkJ2f$Q;2tz*AXBH3yu53iH2
z>WmJ+$Vc2=hcEo3E~*h|#IN;7MpS5huuc^GayA0H|7<JTG8y$pvxMX3+3PS;^-QE5
zEpuoPW$x6UbDYqI;FJ}?lFDQc)58hwY;Dfw9sbkYK{4*WXj*mJ`13K!XZ6=dfZ8Zo
z+hSJIrpV2U$7fESHL6>vCd8dTFsoGc#p09~BRn30(*KzQR^I)0p6{mp6I`L@;JC+1
zyh0UsUR*7x<EOE8W;!sFVNngXwI%PI4ll!*65MJ|-np<9liwZfo~|6792`7blHdO_
zt^79Q6}KQ5kJl}#eI2g(jb_X#pJGWl`OhtzkADjuD9K~S+TvORh8}U1OeO>1h$Q9f
zXexWN)>OV5Zi7!{h&C~gFxH1r12lj6(eQS5ChPh~{d1-2-JkG3QJ$XbAzxSb>=!(?
z`nf_+YdZA)Y~d^xY;HAy-yUC0u=~OM#)qGeg$O$_SAV(5&#AbqXg$p?n<b=i+WBiF
z_xeH}M`IW{vr9<Rk4)QDbqG2izmPWGJ2oCrRS?T~=5q4dmdTuD>-C+@Pyhr1F@Wtb
zTxKtAV;Xuml@moKjB67bIUYxS#1@q?z@0RS-~oS+@W_PNX6dQqm02;K=4V@PD`*ny
zLi4<>-{qx%$KE_QcXUEJzQ7m8#kHJvaaK8_@0^C6wn~dU`@X|6a_QAT82RY*o!wC`
zQ|I{JYG&K_n@Q#t6pqu~(`~LD>&Krb)EPPyUSR<MeQQ;|1SHSk2PVR`q?Oz!zRC2l
zs!Y&gDs<FY9^wn2o@fRVNj*Y`)wSHq0^w=cnKIH+O6ZBWEXqdxwlt0iN~F!OMzC7J
zUQFfdI#t~~<u2KlRZ=A0^syP`u}Kw4r_W!w-$IUmORoJ~|0eI=kcjY4rpxE>51fNx
zNd*KeUB(#A>lCz;*AW?)Hd?rNG`3z@NmXq~e+Hob=c0gVL(1MV8%6{G;7Ds+JwUb%
zEP=M$vd>@NFkw102w@1pLP^;m1T73oT854w2sbZk5`svJB8Jphw!3C}Zf19_f2Riu
z4txOVm+gQbU99q7>UFHp%JKIMxU4J$*Zq4g--Cw7eaDMWAaS?LF5?*t88f@!Y$9*&
zAmX9WK1x2W&A;4nWo9KHzTxT{AL|g4v-rG3fZh;)bF4ZSleglf=Fuw8^;nw6#MNv=
zoJA=3#a3U~+MD40Fvom~W&c(jV~2h}teMWt9%|O%&&!#AF(6uykup22VQ;{PtPq?M
z)qNu`q$B-Qw~rAxNArgOb$gpM3tKW@wnDTCxY=-fN_dXGM2i|-B91Izx?z3z9>s7)
zQ%oxSt+vY>4Lvi<3ExXOH{y+;Xlo;5QMVipDI*yhSf_JwPcggDRPA1MGuh<X=L}at
zp5}Y`C&Nt-Lr%YqemQlxZ%WJ0&1#YPH8#iY6GOc6g4-7gFC|&Z`f!?m7joKMP4T_I
zL?!U1Z-Q>t2I$ed6hX-L*LBJHbMF#uK$NxygRYoUWBEddTyhi?EzH`7bK|q|HF<lX
zg0m94>>A@0K>Cf?mK4s0_Qz=t6xcdx*XeVRPY!)-#Q*^2a&G!MS+2g2{SN!BmPdEv
z0<*sVJNaPIzKd^ovh~PfQQ{ky5rt+a?9Z1&IUm<pa11*Jq}^Yk;?895D|k3Dm>We<
z2Z0r`2sEhj=thr<!T1PWxHf0{Am9C|$~COMobPVjbuLWI&!0EgYz7_UyD7T@HdGXZ
zs#`0++}`|<=Os7Ut?m;d)gCu4t&_euCK#DlAMJe^|Lp>$qPf0bfO@U^SBJbaeLvPk
zAKSW~)%^Fl+L?bSYJKn}FvD9oPqB}W1Uv(qCbK8Y(Izkhwq@Cv2u=(t0mMhh2BGp8
zXd3mjq4X#uBbKrSz?h-zBIqI5SW)_qOiQGt!tHL+iuImP7ef6vA0p*z)qcmB;@_#$
zMC(<v!<f8$Z4I<87?6o|!(t3<j2nXoe^^0yPZM5{5=g!B>w}##F1p_5b6Ms0ZWe7T
zS2oHjeC*`p-t{}Cl=+nW7Jwd!>u&PQRzyX;G4W`Z=G0K<G4V25Qb`l)eC9btsk0}x
zuVQu&n%jh*blK%ryNI{9b7T{rIlT>}7aRKi%qhCwIatEENVbyiducrPP@<Uqub8J1
z_E;z@&x7YTv2qy->#}jQzAnC5(z0)RCG$saj$`WlU+OC3)9aJ5<(8r2>NNPO0De`|
z8PU3y(c-$&0%7_kJ?(qcm*~XP`R1X8*~K!39V<TtnONAKHeWl(afOC~@94`fyXa5-
zTGD>-iz>l9B_Z?cZbO!WR1+d%SZL*U7VMhe|3=`S2l<QsG-U-01mlgWLvt?L%;UlE
z6p94vNDV*&^F{d}#c`@)1Mr9pmE8a%4;MVhP8J66Q@QJ2M#M&F{<y|8KZL^sdHgF#
zXnrKUBF+F^VE{$!gB(4P>>G{3rD6H6b-z{seDrL0MnZHdz1%(&{d?h<oyzmx-d>Ts
zmET3-(60>~POSYO&>Rc-IE*~ee3%yG+&Mq;xS!#z!`!&%jW-Pk{@c!IzywIgf-&5f
z+rZwtY(_##IB*3;O9(|XBe=1K12z|p5<f2XW-}qUK+6Rzi1WA~eNlV~bXY<RQe#mV
zk7KB+9<_hP_A|-2mWikPx>eK)?3%SQx=2~D*L__4Gv~{`q0C$PgI|pz!<$XK9sDl$
zLXpE`UA8AfBT@JZZPAyLPHF<SrN~(go5ua~l0j`La;|yLGQ8CS%Vs`qQcU=SN~)Ky
z=V6(-m*Hkv#F@i;hqF1?yuDRQH6c!_$BP5gklw2+Jf#>ENYkgoH08PYGeIN}#V?IZ
z?<v~L253m?1V9mDNYyh$s)moi2^A!y0xbz)$!e(GH`LvP8);%ka9`90k&Msshj{`_
zhoF0$%X0L^Y;E|SP~x>Rc}^32eU)BD>4O)`Q+QV@tZ9QZD-?-QWdf84o^TX9yfVCi
zsh0Q-qMvu*<(eA&Kn_$dXXO%R&@+L@8q3>F2AjX>^zgTt*>aQ5@Z8v@|84wEb;qIj
z1xCrY_Fi<-pUC{*^&<dn+v<as-J=uw)vd=#uXP?|eg52ZN+#cZ5q-H`X|BBGez~Os
zqed&w_$4v%$1VjcGJP?Trh{B&mmzT|SLGnqK&U>|Q{A{|WFj-OW+HbaB%JSSKb0u}
z3XdE)sDleGr(-;g!7h#ofWNB<D>g+ggvnhlb+Hi@DrzmaNhQXXz~!U0dA%fT<~^rY
zx;V$oC0~)M_vQ`kyoHIgM$J*B9$8~s4oa>6&I$Q$NYKV{ByH|j>PAsr_7Qoj{Qd=p
zM_AYK?uM-gYwIWzZ#*309XOxHLDyXIKN%j^hm9*A8QQOPQuekWZ|S)LHDzFI84XYj
zTC~Ol(xd?d7-c2Qg67Auv?cRoP!kUG6%s+<!WbnMePfvAV<Jkq6XJsu_&)a=e^h;M
z$RGTeFxG>x5jslIE6{+yLM##-nM86c_-fm3((o7@c$@B*ci`&m(Tn=nMac$4TQ7U8
zQWb0*B<Av{@u;dIn#){|?UR9bmC?r#bGgZaBg0g+-}h7>KJoTB6W#4Di?O?EYg_NP
z^3vSRx7Asvn}t)Y9FondyzeYC8IHAimQ<E1<8$gOmyKH=c;&q;c@h82tS@o2wNZl9
zEien9r@0qqAwXG$wv&fvg?oPy8iNmSQO`zGaTdPejbh0mD0`v=)|VeMp0ED_Pcco1
z;l<AHWSP(S!<iA#C_c#X`P@)}K;27WWHy@LoKF3#2ypy2uLp1a|HdLEx5)P7ax^4b
z!sbo)s{Hz{<?iYAlUV$XVRg-q%?fE|;`3TY0aIOM@}DrWSl2`L`~7;`Y<BdM>f<}D
znpfeJY|o_XPXhQ8R|3`6omhUUWY(KT31|8rAy9KCYx~R>{mtw5lJxs1&D`|-!gio=
zG1H*H{#NCQ0t;O;1Gj(-=A8%}yJ%Wi0SwrCs*te7LTu;6TH<wI?<OE<-TrBC9R7|(
z<qs6-+&$oZwEOUPhSJA7YFB`jPaRm1Wt&a%A+Hw<W>d2{D*2G@-tkG;3ET@84@8DP
z66NpLQPB)=-@ACGoBh+cYKLcU?|IjHJN_<{ssI4a@{dda7DPo;fWf;1kpPAs;(-=H
z5UB}7C&D=*d}s(i%(jGW!gGPJDIAzzR6mdcGA{`!{65Nc3pD3%AX#l4b2ZvZ*JB19
zEQ8$`e^x|YRMpN<)wb_7Afh^6XKwaw%jypIP(S{qzb2G!*TRL?`r0@cM_W=k`*FtS
zN;5bxgX?>9bI8evChv!t8jEXPb82U($3g2_r=73K&#fvNpMK=pFK$y>;WV6xyZLky
zIe9f`{iwm)rJ<y!*XjXfqAb{IJe*U;6s^wmgoU$m5ex2@o??RLEU9y;>%~Tc;Um%o
z0tAr@pGp}dabA@-{{<ZX7C_^_iV@*q`2#;otxPvn(k}(qsO7;4E*jA-0e<Hm>k4K#
zz7&q|znL|mD_v}PUG4de9LX2A4w3~SxOz81=OHs4(KAl+j>g99r?HM#jeSKk{h6(4
zR(5a@ZONB=KvXuy@(I>SmsPe7jtU)dk)0b5Dbr-81vEedfN{@=Fry*v7p;G&m5aZG
z_hq@=3rhrS%7ZZ8n8_;~%D>C{znEJsY7g_F=2si0%Hgz*?^1Jp%U(E6?T8q8+XM`g
zJKw$QoD1vUpfz~rm0J4u*{c_C8HAiixQkXZ%ZsGG{0C>^+wxoL&u67`6D8jat{{OJ
zrT13}GVqf3Q3Q1LC*9<Ve>MOfvrg1<SIWzN%IdO56AcK%A&=OIjLJ!jQw{<>q*ztl
zk4bawiwhaiwftOEa>JGeFNA_LD;M(3+!gJXSujizpZ=DXUpd#}XzFu;+K2I9tHS#y
z2BAy;(?2v;TyHZp-ZO`)(kKuf#(t{K_rlF&=}~S;^Ru<S_N`6jPp4wszRU@(pS?R%
zxVJrtm&LBW)oTgPbKQ#n&j#{g{=^e<?T3k6vAp)(%hK7$HZymv?EAFmjHL5?<I)1T
za?>(nkPs#R=5c~wDpk;@`^gqDu7MaqHF}I^*yVwN%apQ#1|)Gy%`{2}L>K_a6|pP+
zEB<ymYMUWWZGbloy+zrT`R#Sqc3g&`_xFH|0*5ZE;umV)e;tbZe@jkU4K=v20<_NF
zFYSERo1*Y5zlMCUTHYGH@_tw9;rULV<B#`+RrWNuUzmBJO*g_QX=509{ek{cQQsD9
zWlK7q`q_g^s<cRuz^h0!KoG&Wix<;k!CZg~6whV-)!zl<N1Miky`=zR2t;6LF&q#k
zfCF_70!oPC<3!7m*a~f|p%7|=O)Y!vTs_gYCXrE28c9-%RL7OnnAwvz?vJ2Qfr|kf
zd<%%*Y8A&<I(fs+rM!mH8)T{7rXk`Be{`I-bU5qZ<xvhe?tJiKKQM5+>t(*$M~ZWg
z|9sh)7kD1*ZM(6pkTLpXI^BXTnYeL>QWv-HaX4>PzmM9vqNF>&nkJk2L@wLgDbA@s
zDL_Z~d?EmrT2ng)0C1Ubv^LWtA|jG_AyVr(9U&Zi>v199^qarx^LSl`0wNS5EC8kK
zru&91ia<fZG?3R-)9Y97Z@tn6Sb*^m&gCuIL;dpLbwS~@U(ni4^6pirKbusiYK>jQ
z(9+$d0@cjt8+oHEU;F-ir8h0qkS+D%b(5oR72|4Z5IcXSkADX`<Rdn>oj{ALdbA*i
z*>7l+JuT{4ZxmAOZ+E@Y&1_cM?1C#OxzC&?3?N7vO}8c$5J-cw(CYcQot!Ghlvbs-
zbLmm+?XMA}Qeh=@X$#$p5tb7?ln<LF^e4KlB$~Sj=h(*k=>{g=tQ=Zwef5K5*k>tD
zVyz<kan3Qi%6_L!I$o9YkJ9@qH!oc;zg8Z0Mn&G3Kg-Ym5~#eAwI}B+LbJZ>83li<
zWEWFK@2nUtS!a|qzcW%fqCDDkaOu19T8(~jXZn2cR*jO8#f}TV;j=PB%_b$gTi;Do
z8hX*l_xI@<u_%<~E#hAq75pMi6mg^KNA}2FPw?ErVvk&SLISe>1NwHtTDm!JYBsZl
zxK*;OfK5kimH)RbhZo+E^jC=JM5*{!dMu+}{8Ig~tX0XY=&!c91t~j9Xae0u=^k`I
z(_nOSh%EyzfDQl@a;v^OU)WRm^Iz6`q|%6N<}ueY6%~(H^EZ2ont99tSb^-}*}#SR
z2vQ~ul?>RBu4lQE3WPVrH}Go<E`e{2s0z~o2@G^*C`J@lyi#PSE?4U2T<X*CNYlbr
zD6##J`5}S{t%!=~6*MO?(IA9V9wU*6+esFZ&ecW3Z;NM6+jDy}Ko`Vgho7w6(0C;k
z-CwB9@;FF>wf#O#+xx&zGdUAY+hq3|>mzIVu6rk4Wb(VqdaL463Dt8M-q{0IZDRI=
z?{W228d1as{<KyLp^WjI_ZAD`qawHsHM#LPhBT!TXrL~FN3Qq1Tz#KA91Dtn#jr+_
zs?RU$e#B>n#fWfALNhU@JQyfW1#NXjE2sKt&UlpIPmDs5+gK8!EWj)O$vZi2Xs>}7
zmsR3)W?ZmalOD^xuBneH-x2+@JDXE@SU0=H-rDsD5u-^iy=BjDch{!s-(Ij)+N0rx
zg;qU_(#wZO{Bg#{>r-|lP@Y^kJ-J=y27%2MOmK9h!vx+d1K=1%m<Cn`YBFDJEj_Oo
zPtX{$W7El2X5wrbLT4)y!XtiA*Yg4H5itPCpI(oU4F%x=JT>rbqrH43^gIVfo3N!7
zLpzig_51wSKF<3=RA_$P0&~{N4`=at5nvBb*1kM%5t<IGlngO9L48)`sky7;Ey-50
z|4B<uv9Nb{A{&+9ul)3&B1h;E>$ppaf1^Z)U!|_7G1f#z-+L~1hHSkq?q++*!M9oF
za${MG-<kZ6{ycZPy;<wA9ddQZv#M0!W_sLKv!rm%^l;Go2?zbM^zqNPpgF>>Ihk){
zi&oeQZUPMG2+loTKB%EFdoSEdL7H35z*GcDLz}=!{a(nx&>PJ(txXSC!zeC!l@;*W
zJsHE~nNPlJ7d7V*+GdAwEH}@_bKrzEos=^;ohKBI%G{%|ZUtZXzp02_h+D3h6E7Cl
zdvtp`ww)f~A@h4Uu`Wj)=U7D%4f*tK*xX$X;pGy$iRaBKbE-F-*|-4^>+PZ_AZdUe
z3#JGCf?ydim#9jS;y@!DgTdUOmbKw8!x&Mg0azIzT$Dh9hev<C#N&kLx+JM-*}TRR
zYxnB3UGF{T+<<n>#F~Sk;Q7m>3+wfqM7xi;Xz?Ee_}Ghwp`X+GU_dq`>3yx=`40zw
z#0?(VTy5`gwLNx-!u4odq%6b+h?<$N+0EJJ3vI0*^TfAPwh`=7h#h}xwh6~1eZ<XX
zTFJ8!eFxmLRjwlW<tP(nF+9?b>tXInFgu0{ctmXo`WyFBrW3U~u-O`|^%VsGP(@l9
zz$X%IjxPe?u;~(raDN(gP&h#x<wO^rv&V$G0#u;r;|g-|H+YC3v^h6x((_PnZkqC|
z8J(9@7983&fv5t-DktVlS)f85^u~4E<*sAn?n8K6x-I$JyGe6SzA>rRe<%6|BVF#I
zQeCXG0qyO6CseVQ(;po?Xunc+w=G1ccCU8*pzCZk^W<S#`N!$2%GY$9mD`mNY5Y7f
zrECF}TUAjxF;`WGG?SGB`J1jLi0E+gR%4vN3@SxvP$gyA4y;;|4akr%_fWjRc(@{U
zO!re1fJO?yfbK`AvK+5MPVx|^6HUV7>{~wv`-p6<8sXg@Oy8!P$T|Xwnsp?Cip`n+
z_XrBzN!pw9;zxth6`$^Dg<12e^VIr^epA#DU?M$P8K!a;-%gO1pU9Rfj6_x`Uo$Kf
z!dn`K%W!lCw{sX{zgm0=W;VbCM)Kzgm@o0zi4<S|M6Nx)O9`6?lslSyd}3{_=hH=g
ze!5{ro8vW~CgVAG<B_1Xn`rPCuiq6l>7h$`pY$rzBYDgd(hS!lCVjZBQXT<<I`=Zu
zhHE#%A`wKiG*W#5;GuW-l)r@dP3onKB7#@JI@}Ucv=Xc!>PYM(COo3m?pF&)cJ|7B
zZ7$l#FD`J1UCEt#H1yRi*rC?dM|av-y9_lT;niU)I&2XWrV{5WtJMzD%Y<8mPtAYK
z_AFGUO@<!B&CG>~Zs43=dC>vMwPA-pj=#s7%+<&zr}lsCBWNODpNxde<c#LiAHDyO
zPL?(Bsq(vUr>*1X;`;}`c5U|J+J&FcmT2YZkea!^wcS@@rn2cNnh>Lur_i9c1WMAo
zN*DeTp9;c}aCl3Q6X1vg3nLfToNw?G{l!%9xs1+89FzdUQzKN>6-ntZ8Z7<YN8u%`
z5Pxp!H?HOx-JBq#KdosT0V-3sX{rs-x)(<PB3`L${5B+o-M7@(o9u;QZMNEBo}Q4J
z)AQsSYoeIB_7fk)l>mXHKggaac7>GtM<@GfjPL5Kzn=xEleL#qk4L_oE{x2C9qpT$
zp4QEnH1<sf{j(72@Kca%2%7jUUr6`XdAWO;kNuAGfm@@1>yW-DrQTjd4S~K$S8~5`
z1p(E48s>j$0<np>T=!VNJjDj5TlS*;keYb@#}M=+Ya*CEUiD3aU689n6dK(#C6|+^
z)b{ono78IMY2#740;XT<>jQG{#_a+WOy?e%ymYZD)WGL5qUf|${PDwk#kVUO(xWT0
zE?yZQA#dh%9a6Y|IWUnAuMe~R61lU>d*1lRGE$y+)o#PR{VMK(h`Bnu7C$#q0v&=x
zV(A%%5IwPQ+DFVxj*nvi1T{9hyFeL1kEL;?jXKl+JAf)WS$nfvXQ-uq?UTR2q5W%h
zc0bSBrH+B({lPf-al#li2x|{8Yx5P^_^O1i(qr9mYy(t;BK$l@85_Dlkk)tJAg6nI
z{oCZri(M00OhFN^hT+8LbRY)}_1q6M`T8otd<p_UsSFKFqaZ7gY&U=_>J>6vEG+mn
zkrU68WWmq<`g+Sr$Uv#g)2BNJZB`pDR)MARx8LbojU0H4x@&OSzALSik(>ImzD{<S
z<5W8IwGef^d%AA)c-4%`IhHMZ#i-9Tq8C-p%EZB|XoJPcDXUu`i@vkRL9+{yKVq6F
zOIIl8h2fP%EH@Ubrydy%2KXPxrJ$MRNSc5&z^c!N5)e?u)Co?=%2r)cC$fNJ>9Ed$
zl`$FvR8&><cN3&+VH{3N=H4<nH&|dc+J%|yFfVC16b2yY)=N|#?C5FhaX^kw2Jb_R
zevwbiSv_ZeVyxObZvWxA|M{5Ls>>*Se*aF2O!gm3<zRQ5CS?REfno2!oLqaCyQ{64
zPTWDNq*+f#M>`;uDGw2&$ra+EC~TG$DqG*)uZEsSm_nIuA0z^a?ux|lzT)ecC~>?n
z_|X6-q?hK+Le*iMlew{|EI7KsMWQF!&=P`yLeK?smDk~AdyiC>MCEgX4zrUx;XBDG
zfZPSK#ZSZ}Uuj+(2m9!T^$1_}ur#tO|KzC;A)>!9*5Vuz>_R{MZ2RWTheq#=ho^H4
zy!p-S*0l`sF5Q)vdh;JTrQ5fg{+)B~!Elg5l7Ufk=8#3ei&Q1nD6=VNb)?zy8%lhR
zOkKdiN?e?1;$cRDeZ?rG1QNqXAlX`kxfpKn8(M|3N#){IaFW4>0GO7+@vrE=aFOf7
zddvIlD4n4Q(`(eh-z2tYEv3!*a<4r--z}y&-BtdM1FLPNP5#E%f91>Y_1f&#mW{ZD
zg{hY<l~<?kvJGdFSFP>-N7ypsMkaUuI~kc|vy4sMzEo^jz0O~sWYa8GX|HVjT-#}^
zOo{tU|J492F<RH>70Xe@&$W|VOD#45>gSAO!UUv-1b7yoEXODk0I(uG#UMb~fT5(v
zg<2X=<E0v5h9bB@h<VN={*0)Y)n`svs8eAkmE`{+>8j(Je82XyF~)!a0|7^fBc+6q
zf}#u@DInc3x)hN{R7Ofmm!foo(jwj64I&~XE%F5<_s-wTU;C5ibD#S@=UnHyt^>4H
zrrgaZ32Vo&s-Jq<Jl?4vp$7*6()s+8+qb!^^}+pNc$cO1r;)z6DGMRO@+sCX2>(KT
z`TOfTH+z$un4|7|baEUb^!H?F%??w=<=&s-mWk=n^)|b0Uj6u0?f*Uw+Z;AO_$T8L
zp<<#0R+TGOuPqf0QaJo`ZNi5~5?!%OnvKdQmuLQZ;~|T;9<QZ#p%@8Z3Y`Ur%J?>V
zKGJ|-2LRv3p+>d>6yltq-8b7}oLp|Tw~d2<Wh5<<1IiZy+*=Z6c21=Mq%p$6it4bB
z#cPUPMA<wQx}D8b>pwPi?yalOr-R3HhO6mA)2|CZ5gi&zP`u!<u7$a)qUVndWY3kG
zoOHWiyI+}9ArBB~e{QeV#O%`Q{5ef)>K_;(eun9{sLAf`rI{xwe;2PFNIH8jK3!P)
zKzqs5I(({p&nHo4vMp}<ZQX1(O3gq|SjBD1Wj~z7W;h`;13|)>r45h@iLtWiT4e?V
zasM7gTZS=P{<V7I%;8zp?f^_u3nqMNn|#^1tPE#K+36T{ZP)rQ)!t@k=f8yl@Ic%b
zR$&$W$oE^H+Y#I#7&+RIRI`X$<IjUGv9B3_EeX$<<0=r;I2^11sTZX)CYPo?yw}ww
z8Mkz%!e&uo>+RTU16fxwE>}&vkuFDXmXYL`7BfPWE;Y{mw@{vO|2%nT<9^)KKH>7&
z^z3(npX%=FeC@(cFi6G7aUg!r-#$%_OwK+|*)UtXFS$QBJkd%8m#VgiZMrWg>yR-g
zRYQRWQ~0{+;~$0x<kY{xoCa7P1hU63lR?)3(tItzK7&4#mL#hk^bDpT#sbE>qEhql
zTy5rXDkfb`L1Pn&*TEc-<%e8d_I8?;GxxisYW#j1RO^m0zNk4O@D4XAqea+G{#ssU
zB>mIJ<pE^mu?jlbcY13^H>tek{SBbfH_C(k1^Rk^I__p&+?_onZAl_@kGziL3(QFG
z&)2!pJ2&uXc)E>StKaM1x8qN?gv)<nd1gYm+<nxa)N~Xlu5M7+mCgF6QpBy^mLt2P
zB)B>7@|R7)XAuB@ZL^OY<dOOXg7hI}pKSX)*@{u1RAXTrj1YcI8zI**7x06Zo`Dj|
zHNX|sisr@zf#ccJA?`Jidp`<PL-B!9Ptza#QKk)iP+0-v{$Mn!xp*q-Ka;oreM;>|
zcVLh7kh{=ek(sbtc;(#wxu&GQp<&@4E{<e(e_<U}%iFBAy3WF#kN*7of9+hHM>Yr_
zWj0+~T$Yr2(~54sJehbX!MLvyQM^EtTIZ8_(3T}q#;NJkL9~0p%K?x_=wuLpb`HTq
zD3Ag_FceT`j<1$<lpEwul2&X~p;W*;juDzqBFAH;hRDW@Q-C;u-`B*`9%?h<Ij%id
z@tE@u2ZL|t$hC2`ZY4ct3=ml4B!vgCpSo!X-al2h<<sC>IzQWSnuXC_mR-86JWVxR
zH+wEZ$c!K?u{Kx?USv0F$%<{e>-AjI8Ibtab@EI*PJ5&gd$6?B`Oi~=&@?&7Z3fr=
z)x**<WpK9gD599fp6`~ifL4_5+x3ckL7BVPlxTcqvRDs#Z^mjWDSJl52WCTs5To@<
zn8=4gV^$%gAQ8+Czvl<vEi`aFa0~z;$&e2N=K?T5Dn|fQ0B|oDG#d;Xlx&B0eZfTs
z(2TYUGPa^psewx1KDv%#0?6cm0SFj8Oum&B{t!b#mv}H10KtIuz;2o3!j>r3mrU=%
zG(qwhso$~q#lKTNhl|el+5r&Wv*Ea+@-m+I3kL3}t1*BVtQ$ndxJ%j2w=}L)U6)ob
zt})xF5|wsegLYyE*Jai$Pt3a|Xap)okA-<&9G~p!lq|do*JiIJxt7r&`;4#tG-hnH
zpZEBWRGR>|m^-szhpJSB8cTVSJ)=>S(sHg=;kX+$r%b*FD<W)#hD@;L*N<NxeE6M1
ziNZ@MI8nm#JRntr6yxf1Es6&CYY6TpKABul_<eX`m)ZR&8O(baR8EtKHjM@1C_xxn
z^2pLwQ<^r+0Js%l6XH9rNI6Umwig!!MX|Rg@QIs5#N%04bEM+XB$`ecx>KJ%p7-#+
zYmcrgb0=Ks$Xp!mKOmg<UtcN{{Sc@71znZInw$4N%jR+LikM_k(5wCy!luEPs-5dw
zLfNbH?hDz*y#^*WiN$~ScN|cve~X=HztcaX4Quk@Ib}|kV=50@;(XJ~QS>9{+b1^-
z)3}nEnffhvwz;Zw@$hSXxe9b}XlHf1{LK$GpMRm9@@_S%h$0!gh$TApH#Go?(Sbs)
z(Y79f+E!qs@`W%Qj1H$+?K~Ib2A#IV$V3GMh-i9?1VhlV*X_CY(2X!&dcnGcowg{?
z_t`L4k-K@C+tV%d^z}nFttd<0Oys;GpLLw9%$r}!(kXM@9~N{#;3<EPdp*gSVNG8%
zTqNtFxq?1AH6=;v)T?7_&6^uM%{>J~tEU>w7`{4BT*^+U9~aTu=6b%`U0gcZztTCL
zaVY-t%uc|$u~zJ%vv_G!xO0*2MwJup*q9=}QrcU9tn=qvW2FKJ-9#jc8jJ-HgZywi
zV*ZAMtRV<h63{Z<kUUidR1{@|W`Qxy>e9ezFoPJ#It1f`vx2T2Qs7~(U?d61(P^=#
zL3*>^*#`y0{=inK3Id<{=N?8B<lg3zwVHfIl`YB6&)-ve^?Na+Il}V((vs}v?31NG
z>3XtXed}I)Z^`L*n#<=>843t#9rd6P6~nuu*~KcoB2H^s2um{;gvBN!8JPq3Pcnxx
z90EBRw$%-)T^@E`n4_F^WrY6Zl*sIJYkFl>vR_ni%A1^#1xV$C2)^atV{#BVb_!mn
z8=MfigEWAI`C?}XKNV2~8n9|b*{v#Qj*VH;_qA-W^29{s{Ctz$icCDQ#D^LPtuf{a
zM(`A-@s54U?wMR9p?;lb=TLOu#nGD1au)dT?(MRM>~K7P@`pO(A=4taFK6q}YLP-8
zdR@)g8ufw)sg-ax!vTLH&51xzI&tzySX%xZqo(^StBM^1j>CcNX%hh|hc*}xMcXRa
ziXta6dZIERa4^2NmG%1I4F#X^YI!&sV@d~-bLFND<O@?qBB6Luue?os>rKIpr0BUQ
zlX}%Ql7MkU)40~hVl6x*_@OO8rc#6j%K)rlV##!@U|oZqsWsWJ+~?D*1Fr^Oa?|_4
z>?;EDW+oa+sw!m&wMlz*Pby+kBp2p~8q}Rk|0BXXXAgD`O&9ptN1{Kn6P!lwAKzlR
zr>CaK=w-ROPsX6Hb+3NL&SR|dD?P!X?5-o9I`?%+=RQ^U4=Ne`{lNnP03c%F#-mL4
z95j3PB`=$;QYMOh^z(H<7e4ikHRn2`2r6shptcpAnF$LkZ4XP>GT&CkNd-M}(?&sf
zss_4*O4O<>-=Nz_z8k}FDJ~HfG_|6*jH`VjK0JwC#6y&LRGfVSeP%0RUwsv~uV2Zr
zlm#zwMk;d@E#F%0euWFb{^!@f?_#MhdyimsqsKzx8Np8{hi`~PAfBWCj;5V9KV;TH
z#(ZChcrvGt2cs4V3(dZN_fIw=y>|W%Ni;+sEKR7}Sv&uA+K*2AMEZ9;c70szeJx%r
zJ2*L9!&~mLN?tC2a*aR%!OMUI1cc`T;Lw27V2BbZwUw80kT(Q2jfM|0v=UJ+5F893
z3rV5$Kd?9eh^5s9k;>swU~cqo_)AqX^Y%=%D)`xp8H4b`G7N%TA9-7Qg}0z>v#8ih
z^<;M7^l}Fa2jZ75Uw<x8FQUF*2X;>SN&9hs|G)f!nz<oJkIh_fGB>jOL-9g!!@7XW
zn$h9Y(?|c!RF%>1YYpOt>b&=NUYY-WEUA;b;lH6;?l>^%W#T${;J`l}TiR7t{prPT
zJwuck*ZnU@t<<bt1FmdIMOCiDUTuuxY4IpnEPosT9FPzOSST6+!NErR1Mn~|O%WL`
zWZIzmwNA`(Fh(R4pH=qoAgC4QDuW_{Un36+49y=A)E+rzG5^_i_}?d%8Os{=Jb{=n
zOp!t=f0Qz$l+dFo=mYymct2GfohU@EarJw5KwOY;^KZgZ%2fm5D$$RxufyOu0uxah
zs3a=0fAPn*V|)9`9Q;G3TlxLOF=654Y-WMl?v+S?XtA&-(H7u9Qqj)i5HXX?RpvG<
zUd)qD=B7bsLSt5HS&+Ld?A$L+CguvI_Q3<NoNx|e&V+PV2zKIFJ1_|Nt$=`sKqrZq
zQV!c_)lB<mR3=UnaUB7t1}i32k>MFZx~;KrWp(4h{G=m8DX4fLdsb06zo!|4x<g>U
zCw;@7_BUO>++5p^){OlIirl}Ox&SRnIroLc;AemOB4hR~>Ey>PB}V?XDer-L^V*Ay
zfyCLg_gNlTY#}zfKf2_UP)|6Mb!TFx*xw}Vzq_z_au)RLaYwbyycugo!?(dN>h%w-
z?&)Y9aH_BWi~l|V8Xc=Jk#(nc;^1$S2hZvCY-0XmU9{>@%Bkt4RHqY5{|$ei-A#r~
zG!=#vTJyZ23?gbGAA|A%s;CYW#}Sg15vS=8i${{6VXeJfByE_eV+8yjinqTt=+*Uh
zyzK*XIjw%=m%)BFweJ&+pN-tPcXkh6m`^45S_!0_evS5eCQw=HxO8zcZy!c4;w!dJ
zxRi4|#qjm?o!pIct{<MrNV+yXeYq`SP%<)cLMZtMTB_cXW~fq&KRLdvdO7rL+o{&A
z`CD!CO7~{`v1P)sgd=yAg*OLk|C%oSxC-0&+Aqm8gND(JTkqXjKhFXn8WH_4SgD<y
ziky0UDqd9(3=JBbXQn{LkhY4Ain}s{DWk~Y@+dl>VH1&o=8A~9<hsuE8tEW)Ki>ZC
zLFBg3H<=12Zv(pqs~knOt;=ac!2?FnmqqG{A2V#!yh&<{;;K$MuZ1q%Yg1%JST{YB
zl9*2X4>`p+&aPT^2?UFovx%$P{Ox+PRNB44st@FU=BQQlv>ri+agz7CXw`JG>q(Q$
z=xj&%lc-T$TjBsf?@EFJ7S)vL!LVyk`D>7%Lr^QdJ-QWxK2nvs3`Y}1Ixm^!(GG>w
z>}oei5b3`|AY;ofw)^+)MchWult7^fegm--TifjH%ajN1GgmSL^+}h415B^aM}i>u
zb06Xx{d}W=0QoeK(enM!tti${E4JTYV{~f9Y}o#sA1yG)c4`*sUpDpP{Oh@&Q~i@|
zBZyby%G=J85t(vx>Cc6aMxKYOK1i`D*w&oPsM^g5V2w-YlSBq*26V-Bg|0qTe4EX%
z4>jSk4AqU`q$+I6dg=~<?-E};2p(!5t%$<sQ-Z(<6_f%{g@Se57_VacI&ml18UeC|
z!ExbO>r|mojeET~SKbk8#$8i?TeVyateZziq%VM${e8AI8ck2F&t$T*R;A*3Z-7?g
ztJ<FWutBDMHU>+%xPS9pAuUoxSkIGpe+_6%-C8JS>kgJMA3XV2zm);d>R1Km?8m(e
zm9SzD#ZzRl#J~DYphW3s%?^jS;EA(@y5cLr&iQp40gilZmCBt;f5PRQ*1$svk`ari
zx8L5@-T$oXmh)9;uS;iEY0ob&MO$8_*`@pucAnjV9LwwSEvNR$qYBBbVwnX!L&Nrg
zY&WQ}LOuov`%6^`$jhOL(<fjI4-R5RfVWdy|MOX1L3EF)=_1tvVtx94Bb0AxP3fcY
zLNK~aL-2n_N3Ocxnz~7YpY?M$zcsP27J_&#?;WPw)IZy<{Yu!_usop$-|}p-CnygJ
z*`GFiBxJ<6Z~4{l#rQ^=`Amsbu+B_PZFsBdZ*A%NK3$Y05Nh8nIh*$P(h>pl-NTjY
z?bjnhe<r^_U|0;Fd%0q4CY|2e|1?5Tb<bH?BR2+H-4~md5~A(>D75DB^EMO!rq&Gx
zD8E}qfuT?UMMWGbqa}EN&&2upy@2rGSSn_oc#$9^Wk5h{7$gb^K!M5aAerE~a10Vm
zI;a=-xi@m^`D`ebjB|BU>Z88-gg*IB4t<nRt?<t$<|#TIodZ2IpFVQ)^**_G;7m2S
zG{SzUlh=J;j%i>|#dGQH`KN7*l$JN)Kb`7R|L$+8gv8%kkF%)%`?X<VJ7$AG90Zh{
zoxS_g7*I0fZc%BxI4@51GdYH>j$1}zgPlL3{ipa12ke(#WUiGn2ZR$_pwHe<o@~f(
z_?0FQVpjok4h{X>7M$sOi!6WY-{gjr+FC941`gAW3sbesbip|Yh396<MYk4`n@EkO
z!DT}*nuP!dOih>~GRk7KRaqC!11WsxtQ)sLH|>Qb`<WAE^w;}iw<n*iNsGP#&Eq|8
z%cX>kQ=P?c7*<5D@7eCf_5;GmHw(hydxB@weQMFw$~nHcK%2Pb8=6RnJySIO|CIjc
zr}Hcd#A0Lj(fgwUa!Xb*v8OGP<ydFvRsOw5oL8NGu%urNLS%+fG>QcT5&78#rXs!}
zZVMP7w4>by=K!)z=KxOtu5^Nc4=)usu+b6V3gu`G!@+=j5QYP%NCKsnqZg+bMr48k
zJZl&opTW-kJ9J4p=(ZpC-RWE)Po5|LoY)V+Q#38=x_Y~8_m-E;UVdwGW8nauOA%K3
z4`4$YS1#YpzEugf=)IV!$S`x<y*%PnQLwPmTT-}d!7c2PUPrh*Dwm&v^DiwN+rMr2
z@V%^fF|DrImp#1P+kJb1Ct}In5MHxIxyw|noZL5j=qg$;?&6zR3b*^971eu=f)W$O
zzx;(~_!X;oo^`W#^q{xNNAXmbwd`hDrKGiLFUQd`%c=?;m_$$jloyC!$G%ua!sJpj
z(%pR9R+t=IEBbpW%R_?6f;lQV5N|ZhOKdb)^W~=%<tIhMdAL1u_GE0OZuw4T)ns{G
zhh+CvKQW_?)uTId5V1)U;K)_9EJ}ed<rC-Wg0(e=dF&^&$*S_h@XTOL3=v=Z=DuL3
z70H_|Y+QP+R9ClOsTxhk!0K~NQ**X56$dw5#;}j->H`p+2}h&0wqH0HIG+@d#Kn^o
z2fI>5k%Lm(N^cKgh6UR^AW>jEmnL|SCJ>hzri9lFBTEX7z1D}J?v&=jBTXYx6~W;w
zD1D|K-g$W$*>!Lx<JtIRp25U1PxAXZpUd0Z(qf}OU{&XYi)Sj9KHE~(1o+V~fiUxe
zQ^d)+Xy-^G+)CZi=7rxYT9yAUC9W<Ld}{<_J5LvCkB6`3CDLz{Rc*#jTeB{*xu^Jr
z3E%m{tkj-a`~n6Mh3O%FRULgcwlc+P>%uQzY9wdIJE;&~1nA?ZNtxGN*@L?R!c;<O
zS=f2gduSiC^!k1v2@KKPQO%|{;(Z9U?C*PYtEM-{qhJy%O~?2qrtsrTvBS5p>g@2}
z7?x8B?CQDemHGfZ9xw4?<HCtNB&ELn!G{LBX4!(vtAg(mq0xz4yf+*t146WvOTIe=
z-XvU=Po2vU^!zv}?GYg#AJ7!0W=2r4(4v8yoDj@LdwVP(7o(;OATYQO6x~z+EAB2y
zJ}Kr!tct6pBnea?;G2y{1<~p!8>bC)0WWZDY*4{gJ1G){Ma&Pzzztkm!BQbzwH#B#
zN?eua;I|KdAk&k&;pDQ@QPJd9S~s<hHs2EbBm~s6c+LARBwC7sVmH2h;tKR9-h!)}
zMae4v{p91wuRY&v8Milo_i27xeN5`h<C*de!<G;K8V3RqPLH_c9pd+XSN-=(lM~Kx
ztm~2SSJo#@F#$f+f!|(8<i4fB8bwdGSC(!`DVt!zRR86#T0CSyK-tg7&v1PlR_4d+
z&q^(KO@myP^QBVu(T{g)#bmkkY(E1I(1>Wk2P4mQf`4hcq7cCSc0oL84zdD1N}7TG
zo5)LppitALLSKzu;H<>~H7+(ZuUdz|gl<F!N!WDZAU%_O=#$>%0g;mOFTq?;WJz#r
zaP5#BKhtFZ?)^QB*m-H~>CRYiw$#ba$XxyyrgG>LVMa10YTRv+Q!RS{Za%U<`R<;U
zBUyjsz1knU71u-x3+k1*7ik%l-g(^O>Qg)uKL5m?q(?ov_C_<V@x<4)%Q~Xu-iNlo
zNi_+^@crp`d!78<c{1_*oW>fqhawCH;#Jb(L50OihMPm7xKyrXRDPEOs#pT{PUy=Q
zZjmseA%<5chN2il!QP6)>BG7KRBBd7rkfN^H#>X2txRY>eQU5jG_#cijid~Mehwi6
z`~5140<|K;U`r{l^R;%Gu-*6puD`L()ck)PwQ@iRdXvNn{%=S?*x4#EPXz&+-*d$_
zFcxC~MN*Woy1j8t<402Z*Lfb=h5T19R%se*bd0o<*_C54PSH8E51pQ>v|>X06+wnn
zE#8DH53`XNIt4zj0{dq(OB`Z@V&4f>g%97^RoSdRmakb?=e|n{z0RvGX>G@eni>+G
zxFy78Q(AqZC5Mg)G>f1Gz)b%w+60Jl-c-Yq4vgaPc1REjsEX`OtRvbpx7s$-#n>8z
zk7E*rN{l<S;!v#^tRS_Z(xq1G+jPB8XT*{+(3`d8_PI*X_~K4@5Ps(F@nc5};@G$i
z^8A6f=cg54jVM}Ry^iReE3Ux#EUuS2r6CD>UMX1KCXm&ao)lcf*#{q^$Kt61+dUrg
zv7XNm2q^<cs5ediS7M6JwJrXHjM|-3^G~J?zZ1+JY6!{J3;i7GksP>hX!e9Hy5hrE
zyG!DzMKDdYjXtv#06o4@4Zv41(0~9X1e$~-k$~nQ2_n@zCxM4I^K&6xN$T-<I1&Un
z03>i}d6*$v(PY*HFUU@HhCQwB^wgdmcU{3*z7^a$o523Uu#_1E_+IeWJ;%|chz0^A
z3_xdmenw$EYA2swml>42Z!mMU1l8l4u^!W~JXNjR`R`0~Zo-Y@=Ti!Cak-14M($b@
zK8p=KgJ1(cma>tiL&EU&wRO#bCSJB+eZv;fYb_=ei~96EC*s<3d@SPCE($i2Iz6{8
zLilE$`YslZnYn1re7-Km(any9U(Z!GH2mVP))lA{(LwQb-uFlW1%jHUnRJi`{mWk~
z0njHzeloHD+8_Is;p2E}luqowetcRn`2YKxWog=qMgq*7s9+W#Lh(*+ezxH{7ina5
zRXbf&pImAu3hO{8T%_7v&m5(#ZzD>c;vqhCHW@8$)TNo&FIO1xYG!Vt;;OWIj&PWs
zf)=}*Q&-<|7RSR_$a|2UXwo6=9G%kVL~Un~)LdJ2mnUYmhPK$vT)P2L9A>AuS8L@x
z-$H0^w(~NbkQhAUFXna{(Z_Pe!2-1&iqQ4$8HI{P@&060kJKrK(Y!^PgvH{%l2*{}
zUU$o(D3l8(2}&~jNlJwWBc4CPf;4c%rXSZsfoBiMWFW=xhEYdR;UTU6X;W2%%XFfl
z7))b1oCIHL$P%Y6{D|03Q&MqC9!H$-3a7=t1z~N%K;P=JQmgB(9IyawsgOvr+#T`=
z7=SV)+53~T@4QP?I!EsiEC`VW&R3mO))t9%_lLX&7Vc+(uf+{>dN{@>DB37@KQ#(1
zWt!g}`E!1<#`%8mn+D<H^+}5U*_EWzPqy??yM9OB&bV-i8yk!Bx^pVGRLjS$;2t<9
z-Q|s5KN%m<>xDGzHi$qCp&I~*_P3f1u#3Ej568!{lLWw7sk%X}6roTuIVZ~>jCM&`
zJGgexIw^oLS^;4w(4i#PKmgcnX$3$@2&;3xvbq_rS<o8=!2-a>kgBa9voL*948Yo4
zmO^CK9QM#lZ+|2VTO_{)p6(H;5_~YAUGQaAf$iC1#s$n3t=!4@JPJ!&Lve>OQ9zC!
zwT@lo@;@H;k=?RLkyWmWVwY{6x}W7^|H{tG<)DFah$?;8M@Pm-kK-9;BsvfAAnw-C
zEec0-*Q5wzmEwu^>K{H#Bt>IZ2LXy)0L0V)0q~&1SOZ#DiI#4PpiFTLuug>LRiQj2
za(|rcB-a^!@DO|bRtSzr1A$}Ig82rs?EsvvAe?SJ4ZQqVI3Wg)iiLOa<<Kel-cCPS
zyAwCJtBnI1&mX5qNkP`;RIP7@{L5cic*g!%h3&RGy;GG${G9icwOo$jlO@ecxiUx1
zPS!=55rS!C|KzMk&22YB?)KYP-P}So{=#M%Y<?fq%-7qrH{Y-K@ARIB8F>##5D1ZK
zP-{5~!d^j`$D6J2g4b#{Rrp|=j;5DV8Dx|>*Jc~aq*ud9AMs>S-l|`Ibg%bzP~7vJ
zNGh>#!D7oT006W9m~I8RrQRf=MX<KmfiW66T$zeEAA}+}$kgGbJcb>Ih5`WqSt=>y
zHv~+~7a%6Y<Xo47UGdk31n#K&6#b7WvS{KPG($O3$J&6Ry5~`aHlbZvZA}-1krQ%$
zSpOHh-M)y0nx`Mz3ERyUX9MRub>3>yR(U_Uv#r+`TB^6h!y?zeZ@u&U{;Hvw<!$|$
zFJXm<cr;JHwlDBo$ir&zpKpYhuyB8^p!#aK!5=E${`Sk_uvDG+SZ5TA4c&7HWh4Vw
z#FM+o)yPVWRggMaPpT|hM(RF9750|TP=U4!Mf3+do)N(-qf?3eUwkS>0MJ;Ig<+!r
zGX?#4#hlD~5d0gN%7|yjYm%kHgXHkP#G-*5F`@u0CDl>LeMsF->$UE1cR}N*F-ut2
z6qX-e+CX>iF6anU<|%*32Zd<UHFv3*r8}!9PBY7udY;@?=dIT9bz>cP+5OS@-RYdv
zBLCi&Z%XmzjdG5!&3Drtm27W}pBG2IzVi4)AlkGOL6VlMjVfac?=k|~o`%mXtt@we
z%C1=3)RJ#Dt2c>*FK50J^H+`E=gUj>W1-;qWQVN$rQ-(`NYkI4H!|s!8_1}s<bT>T
zh*ARp!*5m$P%@~89;ByH1%79SQGg)qOu-x~g?Zs+HFFV}ZMu{c!6bO}=XEaVglG;)
ztL2aE0fB_Ea^+448bGQ6dF|zqRW<X<fRZEy@Uwm?lmsxkvn#u7K`38)FDgU!=riG>
zZ0HN+!n=GcU;Ae3(4pRT7S>;_1@SCaJ`|6&;@}?Ls4Soat7sXk?B?V_vmu-EQ_B>p
zHY>X@=lf~DmWkUZ0a@8xR6Csd#dmZS_5gerqHvHk`@+=(^*V}fBLBegCUnj~DW-07
z8W(u$7jJt!Gp{B9uq&zI!G6R8YK^5QTE1d}spt%eQ!q8Ac1YoE9<K0Y+$gl01jmCz
zfjWUit4b=HR+}Vc4R&%bsSRnb&B|D8C;)dL$$HLPrpz?o57)o-(@d+K7wo%gr1lVm
zpd<z5M7s<$QH>7E1!z)cRDB|>g`6-n?H?u#Z%{pC-Lw67e?Q@&(?tA)n7=ORV9~_<
zb^V0|OF3jofKr)L;v2(7DO}NPQ}=}ut1tWSumZ)1Y1Jc|JE6QG8j5am!dXSF_Lkqm
z8jEc&?<#z>p<}H7wIkKid`D`Syswrn>U#ZmzFh~=q~d3WwjmQ*p<KV{xdbG~!r|8)
z6}ojq&3Ti3b>H%7rM`@WO{H;wLhfjiMl`7&-lf5!)Plw3;P(AB@!%QiyNT$|fI!eP
zMv}*JEG{-Y|J4st3`vJb?DODuPK^}+m@-8m7#J%XqHWLG>uk2T5H!iHPd|8eDgK?r
zIZ!gL&x?+HiuULWc}DOV$md#1jaX}}oR-N9UO6*+e`PT8C&K2&u|~rg+SssDl)O+S
zJDp#P<<1eYsJ}e9XS4cHfN*iVGrxFv&u3<SL?`WC<(#ZWPni{Z_*B!|=pe@Z)zO%3
z;v9G3vOvi|iG5zwoCFd;kG#`VM)U>CsRRH|e$n5g1JnSLF3f}w87KbHLpC{5h(Um6
zWAA8@oN6n_Y)G=EZ|~i`E!F35umKDP<H@}zQo`I7*DMy&nV4bOyHiu%J%#i37x~?q
zqtp-HPL3Sii<$#WWJM-+-y9Ft)nBz-C5RVBg$sokZ;P+0GqBmP>k<Cptovsk*)7xK
z9O9a}y0MejSF=A)r!kQUAfLxtMY9z#zvgAMcgq@W>zfKeZ0X92z7K&i^RX)XI4bb-
zae|?DjSbGwC{FT(s6cvp=2Ts4dWtt{LZl40(%n?GtJq(_Uvx-{c5<+`nhw*y_n}ju
zI?Ipl#4*1AsXt)YMkj{q?tLQuj^W+ucxoxYm3EiS;(>BeSle6M!pS)UKW%MKu0Usd
zTb|y`nlj@tnV<47{wE-EW|F4dE?J_5`m?hO=v;zz;hUbC_ASex9wsT}UG~6j$J+4D
zJxw4mrZEi9SP|BRLb?9-XvgEeJpV3=a-Dj<Vj%elq;HIC6$yR3jw6dD9gxqv?f6V#
z#_l<<eu=)$i?ExBkN$HPI}ftrO2o^1e`_0m*xC^ykEprf1$tA4TO=Ws6lpK7d-kNl
z|NA-Zd!nbl{|nR5CgunoefE>PH&i_hB;s_+1jF-K3w)WsH-97$`V`H4K*PD0M@xLo
zt0T@M*M+Xinh4Z|wGXwe#-ghu%A{-KoJ}{YH?qCxWStB{-@lY&f>Bv>pbseoF+>3~
z(SGEU=h-OzvQ~JcQdW;BM-c)BV-W##d4**j{eYX_07{UiPVbi6<|r2EAv~U`Q(RNM
zj(z4&|J9%40A%Hk@_Aak!{9iq$yM=`-bI3a4`W!uLBvlgSXMzpS;@z~-;<`eVDnWO
zhWA23f)s4i6?=6p$W*Ru<ob(6p4+OaD?7%kFHrmCEXqkQjBdR(GcPuCew<(GQAE51
zM5^7ZdxY9y+h-RMBk?+woE5(oz7o_%rl$J`z3<iY8}lO$1Y1Cc04li|3tY>x#%%&9
zoH)FjWURH9BD%crr&ecse;X74!V5}yHBF%q9=K+*kqdC)dHcO-d+X@SY@V|(aou{n
zkrlmejBhvrns)uRNU$S|)aDwUrA{4FEbs1NUjN={UoM4r{h^lg&6B5x<3m|O4YJ1G
zvm<K78Zj@vHaY44+UoDFy87^uP*-kz%RMQK@_6uaalzVl>AZ2Usrqmuo8jrV<}^N$
zqv$`mzV$Z6o5mt)Ru=rwSUI-RhH)m(`QcT1nb&$qVsmz4V*}D`4_*-t#LIV3MI>kW
zDMbXmdH7si4I|7CjsWarIKx7SfGPW76i(CaqT7Tos_d@vEv&pz@@;`YmWJ_m9yko;
zw?;o9lGdBs+v^!`8odn6_NVy-yh%K+D?MpUyVxr+FZoF5@_%tV(UV`)JjLLtVR`?P
z>DMKxQzq}SPy8RB3lj*hw~A+`HZE&g2>bsXFG-5k-VreSbh#MOt+KOjtro&9Qs#O=
zSAA-wN0I0$nW#A{)9~iXTw-L)Dig-J^g<Cs)d~~f6))s}K-vxo$RQ6`i%FH9M7IS7
z(UQ^0IP^XPQ4Hvd;C@mj(6Dt;z201<%a47d^+TqK(e}Wg^3dahJaRG01pk{2n;s)C
zGoLW3@-u$EdWf|UF=F7kG^M~Cd{VEoLeN(@O%N5Qhe(Ek)}j>j!Ur*9YP}mh({|dz
zzK;onwKZLwvN`kLkt^@%p0DKxWxD>m&lckDc+auUpM}SuRBmLu+H^A6aP@`x3d%5l
z7!TeKQ5@#+3xrA$sTp|?5b1+E2!MhVZqC9CAq~NSnMLzK_<;O>@jnGH3KILTz&pMD
z|KgwLl*LPqp`3`Huqbohub^4&q<<gk<RXF&qriPeLgaDFFMM*PqyU`eJMPb;%lYkV
z3rV***twbiR<OM$@_SXz&|y@wu2~DbpMR{VVW<K`>yLN$Y(Kz&=YyW^7Kz)k0faxH
zd=-mn7Oy|N)x}~F_Fp;JjGIFtgFA&oDQOhZNx%H=A4^<)ylNVA`YOF=z`<wa-Sc$m
z`*gv!i{UWJxzEUie^bwJ?xni;0j~*yr*A+MZK$6ZSFmASM=GZBqmhs6tyscXV;yfF
z3q`JGnIu0BfFUxDnEFzpQ-7R>ladApwnFJBtZkqc`ZmaXGz7{HyAF`k7N-8@Mex?P
z>F7TF(#J8lp0R414^tF>d^6qqcUW`O1KXQ<vj^KsTa1s=&2N=jO+OvB-fIg0NxBpH
z>3Qx=XWrNRrf$i;FvBw0L$FT23YDf`Nh;<&u+3V%Uz1a*GxLnFf3kpW@}^kR*sxn5
zxXToCa#{Ikyn0Xq8oLdty-{l==YZ6s3vSP*h;*n{W`&{I<?yq7P>l!(H%6D4j~xJA
zx47m2(D$~+&MKRUgdx!wMh>cA94G`(i5vt)K1U&M5tSkOh%bVw<UFN$sYotRAq$V)
zXh@(pd;DhxOcW{E4~Y?wQo6QYr83ZlQ;>OQ__bgA>m%>+S8H`mS4QKH$w6bU{rwGB
zs2{bwPa|C9E$x+0dt_H1n~0iKa>x?dtGW+KOv)b`R*l?cX%gxid*xrCZI&DOFm<p%
z_Eq=pejUMNK_l;4!Ma_MjnMD*Uv1$uM$o!nue9VSpX?VF@jv*e^@62OG@|64c{qt%
zz#|nOD@Q0E1d|HM1kCcu06H#+!W0MC&JG8G<il|BmS~PlM<EWH-x!h>Ih+$(m81%U
z280apKokThbs%3#<?j}nz7~~>rr_1;JMzwR8E>Dcy+P<PSr}u=--&hI_f{Fa!_NV1
zn-JgO@)#fYn2)|+TSlq}v&U2Z)o(?3=vb_RACZ4J{|8p)qjGvZMvi3<vczew%+WN)
zvg+kw-lIcXI9!^bZe?IvRj>X~0u=Xa=au-U8Nvxx?~%kU3ad8mXT^(ef7k0zweL-w
zwI~@pNa~-d{nNnxz8#X=X&IZB0Zk4ma7SrLnh(%tj|CRp5g*Mz4;gY@5cXyFQ$~Ow
z*B>xcARribrtm>iS~k&t>gR}Gtcr9rANbP+Q80E_2dLG7N-$<iSqfa+6FBa5b>kIM
z&2Hd5Ldj&W%#d&0`-Wql{>6F0J=xOVb!q;~jhi20H95Qm8wiJETLMQXLM=`9(%&hx
ze?<W>3-)p_uiURNZ^!jFJX5guE&p=V;outg+{wk>+<r@sQ&U;@%j1dH4fjX(OPkL>
zp9}9Ci%_T>WJLK*c+?5dMGh;3PUkUeD6?+x007Q<K9+cba4VlMgagv!R;nq>S12fS
zrOh%tLhf?>AOc7W%tQg?B9M5&{vvXq+!19cL-tVIy)mPXnGyh&^&wBQ-bC=${ty7Q
zb_(rtm9P!paENH2x$sSN<DdrL%<z}B&^NjNciLqsMt`5+Z+mnyzSlN9*)bntCp{t}
zq&F2~W1yRVn6vcacFNM(f~`rD8Iq}dd_-gCI}g)hm<^NA_eka1$#30>7dIQ`I+&}k
zV_{{vmBT}0x7K^5H)lB#q{ijEa9wSjU+tHWNnAQ9dMJS5Pp%D+)%}D8876fdlq&dw
zSPF^wOpZ||^n3_=uaX(m4WmsJXVv6!jMqfX2^Y<B&-<<iw#sK#K?862>_lW7_@(c`
zMii`J+&{m6`CIbX^K>g&brFR5{+ea~k}`$;@}f?-<K}w&fLY9rXX@S-Rg#m^L;jB%
z6ty~frmHa#9%p6KC6~m+rJy_DE~zDO&?sU5XR+B?^xg5Bh6MT}mr=qCtYt#plZn-N
z$~oybv6(P?skL$?E}I2uDh`;{SVNe2bdeGT0EXSuiUsWLfQU6~qd<%tN;yB6-8U+5
zIV_v0;gs*~@`250e1RQnC`^S6Aj#~d2ge!*|1lCM@QlTRDSvh2XSR4d>9w+2QJNIg
zB?+=mi%ukK(?8y6a<SU#g#cbHW(2~QL&EXLkInNl_Xz?sPge74q?rop2dx?ClilPw
zwQTb}-wA9I7RHWW6^5j>X~4TYY4`Ut{FhngpAEQozxbt~mY$$wkzcJ>(&$7!Cnjm9
zX?^4VGk2S4hM!!bO0(=^WxTfe$sr~AQ#Rug)!Es2fTKL|fBps&0Mv+xpAhrcq&BR~
zL**2yFL%8Rw#3Os#1BW`tpN<Vj8feFHb|6mbvJn?i@j2u0|l+i00gV5MytnYuF^@4
zLsm8f`7bcK{K}+VtLLeiGx=F>-pH8S0v9amiX@_`%Y+Nr)RDLM@~e`iw<~q~QVtV^
zygic~FVO1rT}g(I<nB%=m9gy9+1-yRwc3gL6<w?N@ywB^lB<8DSdtYMw$$Qyx=A={
zu97KvwaeA*HL_oOBjK^=h=52W0}}ISO*E5>Y5cBoZQC_Sqs#}iqEryTlfWY%#T5%i
zcva(oom3fS2xY$)E=(AdilRgEf{?%LSROeby@0?VB4pnhXWH(18>Bjq1@T2TXias@
znVGzWxq5Q)fNjwx|J6@57oh~0)@d34e3vR*x&EDnu*Uxk`2ei*$enm{jW>4*C=KTm
z`;%HEipTD`k+Y(T>C0572hm|`gIJe<I~GKGg!|S?;L>aBD(8mdx!cQ|m5pa3<-^mz
zwRICMR&{*a?NxoW{$?vXdNn9|BzZvQMKOOeI2!9wJ%YD6%JP^25?U`08(>^b%XFe$
zISg)t>w+M0^o_8vmj}0~Raq&pY~X96t@2Z0ats(Shs;BnW8yYO&BwBVZESs<$$8~f
zIli^gMn!bE#*I3&X9S{S+;ugC+-1c{nQ2~LSa1Egum5S^utVblqFbAUKWgXV4eO<X
z7uam3wCgN|h|T|s<BtQH76>O-`_g5XFYO684sWWr7)W1<`uV-KaId#(EJ6+@#wv4%
zHPl(r)qAr1?E4V6DTxXj1S8+}aiX9;98>`T_}{M)GL5KMNJku``w+cR5KKoI0LX8W
zV5{gz@S1MMu(tR?vA6lMFPLny1p>)4HecoUf3tm3*cHAtZ4x=)>=};vRI<Odal}I&
zVBhkI@OjssAo2L@a)L0HCpx=iRpX_7e@<&hQ4y=|>@~EzWM?r!B#QfcnzZOhjyyBj
zAN?7uJx9H*<ej+kei$A9FMpMSNT-PPo8_I}#^=35-lYBp<@c}u!yg2DawLfHpZWLm
zm-ji{0XkeEG*e>`;<%UQEsS*)S%9#leLm44iiR+`z8eH%#iTG_GPU|#u~sAi`QTU8
zJKpGi6iU;K9?zM>1M9{sbl)xnL{r4nA2U4~63R5~!u8u7TO>|u>+M}$ZoidvpHPY=
z&UI?Gbi>Qe_6d7hoEyH*gd@KUcvLq?kVKl*+VuymSr8lFBOw#gIE43DA~CGED-M|q
z4|~m8?1u)u&)qFvHf}`gu1}-P=SUc6m?xwT&8mwNX{ACe6{Hmlc)8!it5bIJ(@_Ld
zt33yWW`9va0c0(9QL!xKVeDU!;X=#7?1<kS%J5Xy8>t?TZZOBw!(FyI0<j6OAT-``
z-XWhzrfXZx5YBeF?busrNJ>UpIX!M9OD($j1i+<oyq8`G)alj<rO2b`urNtlbJE2j
z$=H&eU+sT?BYWj!_UU}O1(R$yI3S?-wBTut$cm2|NoHm6o55>Jn`ssogpHN~E;mVZ
z>P-2<NB`d0aNlQ#4cR)T7Q1Qv-Ayhddv~bM;Wug>4tQ=xdJ8AarA^HDS@Gm(>*Ttl
zW4oj+forPf$#Doqxp0so83KuXU=38nv<jic6|EA|T6VbPyPfWmQUo*2N~w(-O1}Z3
zFPQss9A8H6xdre>kS}af_3qB4o7E$?t3=f*`f_@u37^(vuxL{M7Q&SWn*o|T*QUm)
zC$obcF`XrnlVQ{+dN;PzSlCYgk(uPoRSSV=1kg0D*pkA2bF<@!E7yJ`j^?LfuETKx
zbJleoLwY7kDG4VAk_0(=UOgze0-0#QVEau6tyVzfdP6OSzMBOIr2_-8SS+lZR`X?R
zfK=-rpHn$BtM*%vC5{Wmnd$|8OA^r;q6iMPY=sxiefW@~EjA4x*mPRsA~jjIMyBHe
zF{+>5+@Y!pAJ&M)tB~Cv$$Q_#q%f+?4IMVyy>$jD?B$<!-!h?fD&Mr@(~X*_?;Xxb
zn!7$mQQGi6W=7sw(LH<X-DL~mzwP>7kGrCg=3+{xeoOc7O&mM+2tW0!92|MEru=JO
z)bZOy!=jkD@jM;%M-?vHuz6~n!MOSMhYtaF$JKt?5*r44^2v&Lh?Mnnk<d3hB2Z+M
zAqPovW>0nwD+_$WPy|^+Zk?%#5N!Ja`ceHnIyIQM`mXEeyH_lwDznZjSnsrx=zdf$
z1?j3&cgaKYW$UVl?BhAY_h@t!M0a1g{EiB5evD}})4%@f3}9#^@;5?m8jk;gHF@N3
zBPHdS_IMX^1bcoSeamW07@J&k*NWycyG(9k9Y3wTf1ld!!SjU{y(-xP!qvx?2gfy{
zA6GQ$_Wf<=8aH+guPFTKrgxtTURE?u4oa*#mjLfOhE&tw4{djj?`?|ZUVf+vv+Clf
zF~NfwPIHkU_<e}lOGr>at`=JSIy;FP3^b@Dqp@i;NJdSo;E9BbrjA2GwbKQa+Y=q?
zZFnL=8Xi7<X={x)cyS}*9#IoPnu_FCf9#U<b}pliU4{Q{vRL@>&S&ZLcb6*!OfJIM
za6hLuyyX0Q7JD)E+V{IND=Q^eR?j@f*ZtoVT^3(8w*(&(Bag^biYeY`wEb`3qO)o7
zA>pX@(AGsSr{kUe-!DBpk+&PLiK4SdRpH_r65p1;#K(>J3cMMECi>BctQKA4$D#mw
zDRc9vSQv1PfmE}N4I&6F`V#;`2wEC)xQe*pc%f>fvGKq+IH=R)R~Gj#y1F|N3)T6q
z9d1m5V<P_bdfTciNS!7xf2oy}!9s?|{)955q#*T(WbI9v@O?q1gX#h8=T5VoA0p3F
zcS=)ir1j`eH#ph#6o(XYQfnW{>a`HR;O^Hk#9`SZ(Y&L>s%^LY^eH?21Uo&ExILrT
zV{bR1r=dI23S2!UeQNS6#rzME<Jvj7F!r4F0CGGy>|S&wpoie~kV@wS@PUc~P)ZOC
zo9`yf{9zTb38K!iA)UB|NAMg41qtw`3ag$PC9lkv_8Q(Xx@#nMNb>!S2~7OfGx+*<
z)h{;93%;*S@-JM|nMs%S_X(5NV`|`Ilv8$<#Zzyqw@3dI)3a;HJlJWTRv(L<y1QAo
zFrPxWTH39=oh0-IX?^je$L{LT?Q(Ckzkk<4^*qd6^x$sxZt8?t3`)RTrSJ=?Gc1tw
zR*~ak40Z6nR88{We|FbiD~lVpGEB4$#gg#TLb|B~M-#|NtoFm?R!B%DC@8Bk<tJF=
zGBY8?93X5J?gye375)XlWLf@;|8D@pK}@$_{oS+9ieF8x>)VFi#Qa6%AMz9NH)8yA
z4~L$=^T_-BUlQIR@31zTF1f|*zm3<8R2LJTOa6p|RZIhYZ3Uqz25o<M?)U1_d_y=V
zCL-KAEo{}DQ-HgEEiqW$xY|=GV|rE3*DT}Jf9lT&geRv@b8j48JUb&C?+VACOS=sH
z{4cbv>yUD=z^7Yqk?)f$`o-|JMHPr^DnA`7f19ExFt>E0SE67TjCc(M7oR&SgPGKr
z$glx9ltJTot%L}u-L2Trukt)p0sQmEnHU$GE32S@H$Ogj-1d`7ot#%Fe|ENoU1!;F
zqm$R@a#gyGaafl#%KF{hfu7D5gMq&Hkdz&r_LI8ir3-|_c+jQYLysYvt^tA=t&aP~
zr<cQZpC<b~dj{3E-F7dqvP2FoG2n;<I6~(E1G$zm;b_Er5Gy{n`La@eTSYf{YiC_W
zkG!2NQM+jM{kS~+3)W)sEL1zS<m{}@!=q83U}<^<@tt(f%+8zMO*Z(}VIPEE4|3px
zx0*-}w6{%E_C36WDHsvaMbG63u7pfe#A$|A^)UzV6r{9!P%6CS{tscxt(YQ}?{@QB
zUb0a^sVddq5!2lgx~W7_$@uRrRNubtPVEnAubtID^tZRQ6nTZv&mUBHC)kT1=gSzZ
zo@=N0OB6<Y+W2^;9R6tK>R|5RWLM@})AhJRlWqe4i0`Y4`J<9%J3hlxMZfOJqVlZ>
zdz;esjsqV0svq@_S(yz1gwfGhJn#$AktHAWRTKFHWi}2d|H$H?YH<?rv2>>-2?z)h
z1}%4x;EhH6u8l}FMe*cCLp&sLv82iKoFU2RVbo|~<zh-pWSg8d1NTq7VfUZ4fgLSz
z09I!rYL#mIZEZtS?nA~~6+v$&<s<Pr$N2EuLSH44;>b*k4L(hLA{NCvy-&v;Xq?O$
zY2Ch^c5L9zZxox$+a<QD>sAqQ5zv9^V1JJrL+L45e~JB?81;}`ftQb#`n@JC2LL$l
z$9)6+i~m*-=`gW=le^Q~O#5rd&33}@HL-tDKw7mab9&B3e2W#h&4jv}j2i1ky0X+?
zHKR-s;<_R+P)55FbFXgY+gjsN|0UboGmSG*@;aAao))=JcdW^`>b;yX1%KZZ$IC&q
z9GNO|(ozFFuQ1rh?$-Byyuhk2?vl^+33n;vPQ5J7;TC-AH9R~yqc^2E`R&Nv<kG@(
z>3`vML^u+ajBVLofA==xk}BV4j@-N0CTFw~TE97%=+@a`*cRJin#K1!v@ewXmIMt=
zSNGz^moV1Mz|*}OjJ<+#Ljd~I94D4S3?y&KE?15xslch(aC1P_Xn|o03N<GnIDprI
zg19Fez|BuUXu;G|$!0E%PFlBF0fiv)S58JAio}Wu<rlSR{hnnG7A2blsvC^>@#y9=
z-+IS&yH{~vjT0=qoEnP9=MA@Xkh%O449xxER(2jl%#`>yGZELY7hb27r5V%fJSti#
zP1}{7+Pm?*G*RuR^1eG~D!DO_l9zTG9KVugWoiiwabbvyyIhV-W0_CmFt$*=M$1-E
zsJzpU_8&h%eVvb>^zc%76tYmN1Egs07nI3$mi_GZ>W=i2@RxA>Lba^=9Xq`nrSX$5
z^4{|AaL0}()z`Lcx_=0lq|FSjT_^k=Ab)bRrT=59+tICU=e%d1O*!-g3+Bq>%|7Vy
z*4oK~#TH7~pPiWO6X#|E4Ln=FT6V9l_7`?+9(Z}Zo%z<|+<qZ%xb#{rd%I{_JYPc>
zE3*IfGD1Md%X7Kck8#*+2-HsP^1)Cp=JHsSxHv{$g_hY8M$bro)3s2Po~{*N)bG^a
z1_ULFQG_di5tvs`?~b1$MLf$?*Ce<Ky?7BeQ|2n=&05kGF!2L}?fj|rbq7RxyjauO
zmn)&L&(ii51b2Z?H$D#Mt`k=Wjif`OG=b}@CW3Ca?gj>D$Er@G+87O+{yCH-5atwY
z7>&^WC$gtU?~a?_9v*rwnqJO$O?~s5Tj0<82uq2K?$zhm{9pg_1%NWW?e-(~?=62|
zL;v&_E=2whQGbN#$-Zo3S&LE7S0K5u;4S{AfR!1pLa)KEB@+u_I+3vf382I7lhN3*
z5LZ1sba)dGNQ*+aV<^;EDZ%;y_=@mWl|YQPY{QRM4!7sO>Yd^(1blk%0^_sHO#WGK
zrg>(6x41RZ`WZGpnMfnJ^lv2mZbd<le-rwL^$Jf;mj<rZ-k(i;SBz$=+)P`3B57W&
zv}QaY`N169LcIBQRwAJagebzc?W-e#SgoZ0ckkCj*Lh!@S2fsO=gTScdTRB@wT~8?
zbO(OIZ4jAVnm{q$-!(Yb`3nbhkZ+8|f~Ap~J`}e}LPGB|Rbsvbx3!b7^F$ZrQ@e=#
z91O%N-hq?TCeX`6(J;^DB#G1qY8M^Of0@~kka_=&d%k;aE)4P~<+$_Dst5U>C%Oaa
zFG~`qoEUxbJf@GD{Y8SuPFO!}pGIFDF?du}U!#blNa9b;)8ias=g)XF8MUq;>h<+r
z?>yn`byLym<R2C>@cz)V=4Q!fPa9qqDAv^pP}Cc=YF&f-vBRXPPvT$hEh9N9Y}@C!
zvc{EjN9lZAE}!SpcreuJ+9HXI1fgcl(TE!>RFP5HNHp$c`-=8nRA3aVl!))@&VOQb
zVNvu<Ng<sI7$ooAhQQX?LUOD~ti4rfGO2x0-utz^J-g&5shpH0Jl<q@5o7+}TVW5=
zo>AmY(C*M4<`VA6YG9de&n;?izxdwo<xU^?+~zq)$+s@4iOJF&J>{u;H)gya5L+C=
z<%92&`ld}E=Op|%8mR2-+4TnO?d)F|y~n)@ev_uBp-3lanl<rAhw3g3{d3xiU!<(I
zC@bb0S^+Ec2)Qf>fc(+Y+=+SAK^+@J3m`T_p@NsXQBtBjN@*MAtVF-4b`y@k3Qb8I
zTKO|;EB?0@8{&A}pv0{jsZSM$Iqi2`Ef4w$gWWp_x7qY?;w=_xlQZEx4M_dJ_P*+?
ztuN{}2^Ju@1uF?wtQ5DFHn>wDKm(K(f=i)zDW$keaR}}%#jO-85ZoygtKrrb`=Pn%
z_dVXf;Er+6Lmp0&G4|eP?se8)Yt6a1DulPIi@6DtJj9#ZlfJgfQ@ly=k(+lA+NF#!
zc0J|fU#@zzV27{!_&0;_PUN1qTG6}elS*yy$o_^LGoyu4MkF#N2+WRc9#l-7UV*1z
zz1xGq^ab;k-{R=+StB4`M}Ljc`4!>80JN;AAsZ_K9yYM)@`CjR*eai;N~pevCQX@_
z2FS~4S=OQV_5Ihh7GaYd=b6LjrFB4wO71sDVu?aRm8*{4NHcaTEvFCLuYx(+Z*I^Q
zTL{SUnBCfd)j8+1`ZiXvz}~cgPZH^$Wh}=%Ec$G?;@|u0Hi%d%LDerwIHR2wyzUMf
zU>cEUuBBgfTvg}t$CA^dj`vz|XXiBre)E&wmfbfli@58n+e0H2dB2w%gRTGJ9$@Yz
zvkj+(+Hz{gv^;^#?Fmz}z9IXY%4H4r<r}UdHNg|#i393tsCl)e%pvRq!Qq7WK?v8K
zXa!Z%yX?7qR(co&u(PGO?@xgTo!zfM?v6q6r!x1_+6oJhpfCncW+moioyU~wQ}=FH
zn8n#XZuFXvRUL<ae#puuP(18mnWpeCSlqZNq2cX8o=%h<*Otczul7?Lq~wR4sk%=8
z031G-zLz*1cXs`ya^#mLm8X(&k)U{oKK+(Ax+(=;$*=b<Y5N<c%7{m}0kq^bDPTUH
z6mA%l`Y@1y#%9kN$cgVZ00wHq2qEO8iQjobz(~k2!N(*$nw}t$4<I;DTZuF%FlXSG
z5%IEgcbos$<R@l|jiB#VDJRV<AJ5NCnFd*n>4fUXjYr#?RDV8xk7wGK!!LX?Hch5Y
zxE%!=J2P5pt5kPmy4bVpN;oDm_fBR5aMQ6mOsa3h9=%O_cNFmE_RQxa=Aiz5)3L@(
zbLG!FhQ;~+@tCO?;58R@{Oltu`-h(<)xgo(O1bo2C1E@^d<cNW*6m+TBK}ZNP=pl=
zKwFg*Obv-#C4i*7e_Kb(6$Q%stu7%_t;|?z9|~}S4!)dOX+EHj1U}HvaygM6ie;0G
z*jX)qsn-{uJP2#2X!YSs16J5p%8XR|=gxIpQYq!|Bqix`3(U;6ar>q+>$=}x$}z&6
zOB&~WTE~aHT#lSDb@fcQSv=;mNCO$MDpAcb(?s*spJen~;)07t@if%iKPcU~g7~$e
zT$Gk0A~eeIun1d5eSpFY$LcS2Vq5A!h&&?!FBMbzuO6;`?pSq5nHnNkQS)Mkhd726
zLQSYqXbHAxPQ-GhSs5%T{$eI8`z$W|<WA>*C^Tc^oENqSTP_i0_QqC4Imk7j<-YNq
z(KlVfKAN2Hv#rjv0@Gp@C+5a~`2Q0~G>eZvmq?@9{%o(iqX!I=6xa_XQ0PNE{>K=u
zS)zYE$3qC8d~#jd!BzTqn<e_|Ha_1MhJLf;c&L%Z#rTv=5B=L#pK?|(-1t@PalNJ&
zJ5L}$y`X#Tb6_+yMaW9wPq=caglGmts_0t~pM>UXT0o)$t%>YA^3bX~VY)UD)w#4x
zGs;Qz(QP&+_i&RJ_1mN$m^VN^#ObEy8Zr5gCIaR*pSf7PRJmAlJsm1tmmP5(x}Eq`
zVTD<{DK$(zu)P!B$kyx&9u#O_>njy24)fl@{d1xG46JX=rWtFNB+vp~g~+57Y5@*v
zk-~&G4IN`8(1Jfq=z&;OdX|uR`V?f!g<>eUQdVVNMx20z#Qd>y0wY*JN(Au%&x@Rz
zLp>tA0|^@wR*^GI=<gLL3Np3Gk0sopi5@j12E>BWHcpqa9cLlFjHp*ZKmF>EmdhR@
z1b=V<dXR;hW?Sr?^MT(7FTY|OEQ8uOI5u&7dWCZ<%MB*_nR8+SC7LCx*u!cUN&DRr
z(fG0gbj@7>)7($%-MD@Kl*8>xLjkeZPjT0O*B7qx?%5B$y)pcLbAX=tdZlhr<4k4F
z(VVC{U+P>>fXd15430{F!<I=>2;1%Q^HmP-XH4i(RDF7Is!n7i0$sr>(Gey@l90nJ
z$Sew%k|H8N0?<fCEJqjx30}gOfIJA;143jWC(Ibqm3&qU^h7=g54mq{oYhhjTITL_
z{>@^+_W%*BTR63y+Y#v-d^U;OQ@8ehw~_m9_lUiEzmbz9BLbO=<J@tT>L^M(Y0qJg
zj@Y^S2c9Qql^1I>*|Iy*g7Qy_tz-AHHmESOX<}6FX<woJqB$m+m^^*T>Hf`-0yaH0
z000oizcuZRdF|UyMFav9!9SOZ{wAQIk$y&F6`Jf10jm!KwE?mMw0eVTdM&D#O&f1k
z1r2?tTG-0Eo{vd`F+9NZwecdpI~1S_u#6ta>V;OGmvv8&fE{jf%j&$_47bpkF8V*`
zm(w6($M-5%VNXn(#lT0elrES$WSI{_*9FD~i@e$yOD;Z!#x1?39Y^tnbLnT1_mOI!
zEoazehQ_?WUD)y1$4byL<>85H=PVD72E9|dBVtEAvs$}Ga08<UsU&pvPu)43+YI?W
z7Vo?i4-ul}ys)Pxf8cAbhtBiN{fw};jf|#zu8X|K!^>dH`x?U5WQ{7+Ra9`Umxn|e
zLY_fLg?GnwA53PqV9tv%@lm9jtFf3^GDWzGHKAIvG!KEuB@#)4Z*FF7pE_*?%zZTB
z{G`LEf?I2vY^3k6oW7Q!j(+y;rl;aE#%UooX}<gAzlSkv<j<%4z)u{xdQ#&ovX!u@
zP-Uo?8jY2l&<}2+Qm>UWBZLmbvZzpV2VqC!p+dI$+Px(V%y1AX$&*L*)Dqk&LxjAl
zXwAZrzvN6{&VUgX35U`NVs+90u|RN;Bs}E)qYQt^uNpUN3Vzfaq9vFpV?}F8{tAi$
zqlaOuFv@C?`|sw(+1U|!QYz2ul|BtTwJD6A6_o6nk2hmT3dcmDpGEgRpDhxUzvGiT
zZ+MQ+f8fner~J#h+P{AGFFA}l8*^4{+SS};r&B>6ibB1epbvhlfE7hVN+HGuApmNu
zY#)h#I0JtWC|EjX5JB}P(ca@18x!w;DB0KLTtc7wctoLbCcjKRS|~!r;wS`=%<@dP
zBH3<9L#CDXcZ+Uub~=u}Qxi{^n@wdt`F!f4bm_dl{z1A%0cTzC5nE{4@sU4F#u>Ry
z3b(5Hwi!rnD03MOSL7`2w6itU*80hPF+-K9;Ps1|_a}V1n2pB1y1ZL&z3Ft6%=y`@
zW!rQp`EJx};dqr*Xn?(akl7j0HS6Bf6eLEECKn@pFAq=bODc*DQitmAS(k{wJi^Ym
zr-8C@iyrn<i*+)({UPzeqF{;`Q17veg5>iBV^;*A0z{cH6<9`~T_jpwE&TWi;29BT
z?`;*bo}4y;T53U3bvpuF_<mi0$oc~>>bty$03DfN-b%nf`@a)N6cw*}rO%kz?+)&^
z$Ma{OD=;4ru5((b{p?DMp2K~|;Bd)%R~NX4I+%=bn+Pchcx<0m<XGe@1e%mRMc5(p
zhv@|FZ~Dc%Np|RW;9I;PCGPSn*UD`x;EVrw^7135C?5OG$Kj98%4aYSRAP_X8l+wp
zF$(rL$&t15JAb|yHHi|2Axe){l8Om}3A>brf*(G2p4_>I$ki?B6Evy1F1L&ZPaj;@
zxZ9}Zvi)L*lps#(RLv*meM_N8&17cN{sNU$^IX!j+b?}LjN2RfXiZ=BQ^R+MW3#L(
z$_~&4hr=>eAzR_Rn#cceRI_~d_BQj>$$3flz@5ML0a>{nm(WBci{UGU$o-*|N~PU6
zn3NoU4v8aW^lNbt0m;j^>Hr8mgFu2d8I@=TtcROdSB_pJP^2<RW_KH_AWjfC{fmVa
z)!(;R)PjQWkGDX7d?eo-aR>KXA#8g|?5d7Fd54fRrExjI30q7AV=D`L)mqQ_Q=g9{
zs6P-ox@A2Txop^LX@D~b&vQ1{G@Axv*b_~^77C2iV!b<bu`R0jp0PKV^K}c+$~HDK
zDN*Fj3DtN;!TY$iYw_mk&nGDk7m?4QGpgl1gZm8y$5bYp4`lP1J?Ib(U_r136TOPU
zO*GUOp*(DlJ~R&nQ-8ndP!2Q+)g`DPCn18rAh)i3+t>BzAdcTQ`cFPU_QSM2vqLz+
z23uZMy5>$_Ak#;p=grGkHFw`_@0zU9U96c<^W@;p#!Z2+;}sn41hP!Lv!f+CqgC*+
zcz>v9b$`pyh|)=;erd$YlJ4f;-u<FxTPSdQfeBd0iKUFkMZJ(XLQ;WmMVAXW$)9P7
z892sDxl*gC0pn18e1G|Vvx%380MOxA!!*F}gsD1cIyE|ih#p17U1+R~MN<CjrryA&
zN>l5=SN%Z~s2*+EAhBV#7NmaIPhOY=7HB+Lf1wRzK^EO}l9I!Qq($U8str;moO>01
z9W7SEbH*oMC3dYp?{><@{=@%KAaOjtekNENRWiMOWUsV`YQg6(Y$$$$@bzO2S=IhL
z&YpkeI2?udvN|H8ip_FYR{|>c?in<X&*9uSCjU(j$1#MPe|CK{{suS6z&>~W``G(7
z{q1s-<}A{|)7|I^SA9Reb)3m{)kC%-G^KnL_w;jXePS>~|J4>-Jpja-ccmH$vG0Y%
zDx+YrpL-zy3T_CZx;G@=P#tEo8A7|#qUl>Cj0Utl!W_49)aN`!*;Bc6<uyZ7m1q8{
zh@!*N=TavrgXlodN7Jisb7=s?zt>uCcrpXYMm*N@4tHCP%~njvB1eSWMmFFY@iq#h
z9s-gY%1-O}p_iRXWzsNAN9XzNKe)E@S<l$N;_w)#;j75eHIGrF>#)5WwP%%U8Ok5e
zoj6|Ev1qOFJaHze->Z0$KUTj(&piDD@eBX!(7-DaMP_x7dnhOas+a#;!gCm_%RmpS
zk^9041(uQv2~b)peC|22iJB}4<k8h|>7#uLLHY>zv-kF9nk7}x=?1-f-uE@m52qC&
zc(0KVbn7bA982sdxK_QLq9mG1X=v*vXC7N(wx`grq*b+YQnRa6HGTW_6fa(0cU`{l
z7}t7p<^LLY?mO{ywlpbo=&jsR(T`;YqKjaHS~IF0KI@kU#R@OXyR-|Jle%V1BWdLN
zY>H$6nG({=>XB6Hve}|MFXAy7dP$q2un;a2(wBT9&V0EP%;xH}FJ94VikHpYsd_@w
z=%Az&R%{UK@JQ0Mnt;HSmHP81q%UPu|EFEt_clOVo5$7rlZ9`NoCPn8WoMeay&IvE
zoE1ApN{jKDnypW{bSsc7+pFF9W$%9Z)w7EI;uyEIb$T~vQtBs$gW*cN&^p}hPI+wX
zJsVfT-4vl!AUqx*)UQgWN!lkmir<+ExSKd2Arv#jCzAFbK$BWRG(^#gEYpjJX6ud^
zePC(%LtF+(5&ofKct_c0YQy2PWhYbpnZ*lhRhXd@%SX3+qJKP@>320t-XmCfqOQvS
z;eRcVXbB&`wUI{EBu1_~7ws9&h_W9@pd7JSuC6iCk47t38S}n&Sk*MUdNR$C*lp6B
zCh<cRI7?Hbk*?YSKG=s3<L|y$UT$ffOKmh&F|IOwYUC$gXa{GDuz6()OJYZf?7C-{
zvK<x>6EY)U5uh4PU>v>Fm1!cm^&p`KWwbU688Iz+xCmGz5&`v*S)A+d@%$SLg@U;S
zf#qM52b8tjZIgWpjeb@W`lY)b$?t9uc!uoyfL&C4s^McJ>jC%MpJmKm<HgJS*)og_
zVWWc2u!f3)^^2P&Uuwuq#p|6tI?BY8Qj9co>q=&e@Rk#Ik@!gE)40|R$7=j?l1HV<
zlCbZ%np{U`g|si3tz1boiCu(zm<aj-mnJepKN~(T>kc4&9rwvOfwi3I;S|wWYzAKf
zUREgI#sCHq4IiU<oL`wsPQ$~TpAtg2^gV<f|4KMhc|b6f>HbMONZ;o&E9<}!Y)`Mc
zd6;`C;$FNwQ^>e~%!bpWTYubrd-N^h*Ypb)yvRtU)uS~#+Y3mfRM=B*16I_QkG0R2
zqJR0t$^F=3n})}@09>d4csR~U`oV1L@WG=LZ02kQlY4vjhp<eEpTM=@oUntg-rM(e
ze?GJbP8&2*ar5v`K~gqww{wB&-?(~#iqxePdP(U`T5g$AE+1Hc+t*ECD&ZfyU8JTA
zU}I3fOm{g5gG0eK8c1)x+&oQgHsg@#n~KR!!RPG9rRv;UvRGQIR`69fNgg<_&YHdR
z{Wxb!5T_0ESm<Lj7InNHL#XXN-h@T$C=TznT_yXzj(a*g-CA|(;??q3;J(}{yZOUi
z4EwN$e0YJf4AQQKCCY%npp8xm3g(o%@w5+|&<!f8B>K#tD?zl%Ex;~oIR+zYi|JJb
zP+Qn*U$jyeKOtjz^Tv#>Aq+^XVoX#OC!~6pkd!8I)<ti1TiD{iDmB^5{>~6o+S~Qx
zTk2X8UDYc8v^j4%iL#G{>YOG+iAFSP#v7{gn%*i#*8lLo7f7`5UeymRZCdgdd}Pmg
z!T1R8|IquR$FN-fZRE;NgjTz8xP_CIuG5s5b+Lmn+@sQS-nja)T3H?k1KZkQW{twJ
zMXq{!!psP0Zm+WlG6<zY-;YK21#?FrI1Qqg_h^A>nNa>rNFq&!TZgAGmnKN09%;Fb
zr(wXvq~J22c)HM&GNCHX!{0}$jeWC-h{&kY;wYc`<$WZdxyeE*^)e&14j-Y`HXhsQ
zAY>J~uzZ@0kk}D^fxi_e9UZA+_pr8@Rl~4qr(g==_{2Ajj^E-9&kXT9^D^MX1Y>>s
z-n&`8LQB0uXU;@eLB$ZAI!$S3Ro$EL&|5FYLX(dYF=nAAN;oi7SrsE@8bZLR7EqT6
zW6=vwY_NEqAlNhN`X^cQ`RpY1WR)JTx>(y-DC4^nB0b_~7h)*(rBnkQt(CCoV<q>)
zjkXhMYEXD%K=Km?*I`WM+R^!Gr9lcq3GVR47GX!pva*VJ&VjgCrOCWB{LYy;bU#zu
zEW+cyNXaLkmdU!C0Nm}@gH{|4a)#cKveo}vl*p(>#jk#rE)^8gO5rRk99%-bXc^k0
zXia%wRS6`SYGZ$nRao!5VuA72Cx>s!gFXeh6*@%&0taTPz>pm|ktwJ$iGxPIF`uNy
zU8APCxuR~4)&H)4QD*cbyO-AkNX@*JKP{%$g+QH<pM~lt-u?M<m>v1_&k^pwK*}#M
zj>bObSv3-s4hG_B-1>xA8|c`iwYNjDf0^}Z8Gciq*V%4y8L_t%7)Nk5l^DR;?|0;K
z$K;e3ma2i$xF_7J2brLv;803R{z#ZGOYG2lIzvmiKK72Kr6M6#G6w?~2C*LevIl+3
zYzNMp!-LCb5^PZ#fs`bUFR?I3&sy}UP|ID5KuD`;@xjCX3s&T$<o>DcO<NGycjDK7
z4<6cUP`E_y_kJTuX5D!r-Pk3ktyDc&#d0c1CD19WrY1>Y=a=cIW13gLDO(=vj;q5D
z8JBt1W%*X9;RaXsX0z;He~q(1qBr>Z4Mh%ACoOo~gUFS>L7x49&-ce9mP@`TtC|qQ
zk}l>I(HHJy1Z;Dlh+VhmGpP~HF0GERq>BdnXV5|*-$M!6*t;*q5O(3x;)I+DnF0*F
zw8bB=k-gs=Z4}1T@4U9Lk4JxlqQIFwhzl5SbGXJbf=js4DuSfo)uw-5*`O3PQLBdj
zD40a?Rvsv7;`$C5@10NG!xP(mbxA|oM?2Ule8kD$Z`Rl#H11)+&ZZiXU{YPS@wPPp
zPjT`iMBoncu5sNbUw&-b4d-O);}s2?_x;}r%*t+MuT*|XKHXXv{R1($%F5_G-?${#
ztWz;pvnG+`3+S%rWKSq)!)k~?Wxx<oK?Vka*la-<b*P9!9++55y<7+`X?$;I#9q$-
zhi5kTC@rwvuB&fMo&p?lw;V4Q@3ed&zBI9$CA{&{>ctW6$nB*ugD{WeFI$NijdP<S
z<{c|IwTCVGLCWBRb@6t&#I>y(C%i|zd3mL6e*MYrQNYIT`K7vJv<qUudu^tla?#ey
zePTDifteU&gs|;rmxew-s=$FnwCaH|S(58g>QpF1XvUkVF=~2ID4`y`1r1*EV93J;
z8p+#{ks-lpIz>&?Dd3i1Kxr_yy59Dy_IIDn@*?WXPg-_jCF+M27AirRahiF|eoHl5
z-V;kdh$cMpCRfHTDimibtqmnxEqsig3Kq@<CO)q;s!xTeDDV<@woBBNX}!3?-3Wgw
z4_6Z$`|kMoCZ~I1{?jI&{+L}yJE(CyF=+56*=nz+TMa{8pk0!@DyCs6QB8~bF{$%V
zWmC(zT0^cs>$xHn*F9cH@YzD4chCvS)?;EM4i;yjko}d&MW1K}5kiSF(yeMPKQLH{
zG5lC@PZ-Ph&pyut61m~=iRM7{H-NiesqQg?#F=X%R~@(U`0Qn^4pxEP?g=EgMF%yJ
zv-y8xc_@*kw`Tt3@i}|U6Q2NF)tjpqHG&DdJEARS7!wBF-(CV=D>vFp`K#4TbA0OX
zRjoL?vUyh7REG5htGBmVw=?6nHb2kT<(8Z)hi}gk2U93uO)XLR2#q0?d^_!G(IkQP
zp6HYYid1wyS`RZt2xs>`lR&)BP=0Rtif_sS#33T02fJf2#UC<2GRXO!Qmc5AGSsN4
zeWHSohJfZwR2DBZ@$xr5ha4bTxoE*f__@kaCafvxp`p3t{w=QiH2o<a)ALzj1)gHA
zhH5j%nx%qC2`(CoT(TOTrq+ry`g)@tn914&WBg`rt*&}(#<1LqyLQ5LudND29eh|j
z+%$>~ZP4<YDLmO0JI934o&=S4h^iWKm9Usxidx6-<Jcc+hw{FGfgZf5QU+9L3y3MH
zB@h}bDnc_vbm7EzKG#a<k^oFS<tQ1e$m$!26}5?r6Thqe81IV!@{Hq833V#`DZwG{
zKYk7hFW}VIVAa@AOFLaVA}`tQ$Kn37BxHx>stRF8(f21dMp54(@dY&xNIYViwU>TY
zI8OuXkHkX<vi}|*jN&J7Z18==?^`GtHzC^9%E$;Zy4cA2C#<Cqxiph1eNWb#J`}w_
z^rPDFPFC*x05BZgz&V<4`%$|{?o4+?{{h!stdQ>SslOeCLWph7{$OtHAslLoTzx7k
zDxvU48SfoRCJM3Mph)DhzbGxtlG$dMu#bTvN&#377pDa&6zNcy*30%jBUGjFqgwIC
z?1~9Ap5n=5t3-Y!`rYO?KUdFPDe;3`>J|PmWcuY9c0x^oNHOKm?Pn-`xEoqM@^BC>
zyNq1I%&(;LCB9$o#{c&A%o@AkiZkkR(rH)>^G;3G|2k<vmi<FDCnVjHJ`wekY~Vq`
zfUOAZPob`i@-C;?kB~GqLn0DroKGAz3`r(!ejtH;zsOR7N#Ha5_P_Wij!ID83weTS
z$H(VgiCm2<A2T0()A_N3_fJ~h)6a@SP;k+2J#ABb+M2)K3uORf<f8B0#bmlMRmAMj
zfHzO$T%LyQ{TctcdG?Vm9(Ri}A2BA&x%2SGWgj*fva43O>|LTeU@R8DO$tV`IY7ed
z*$#Me_#!&eOwV2NRPYD<d7+b=mq)cPO%GNlqJvfrM--+u>dg?k-<A0>Nzfr8i`p$c
z7j{CpVSls@C0LKVLNS<{VZ!1&Ev#oC_2*5oc37-k8E__2!b&|*k6xQVBqW9s{<~Kb
z0VDgCVDmbKs!U0mCaWrg)qKlxQ~3pqrt9^1yg#uBAmN%bH>pA23PHiUy}vD#$sOJ5
zi`lU4G@Gn2&T-)n7plv&K}`#0_R|mX>07{ei(=rGDs&*vF!x)XN!%^|dEm&Fwy1=Y
z>+b!hmR@@jCyzaTCyM!gi<ct39jGYp5D<auT4Y&rhEc%o%9TP0i;I5fmvhp?jPA-1
zf~5Qo?E_i#Ev6Y!)V;|amH-%#4h|Guon>SpCPn1;2L1T(tppM=#+LZV-oa*}O5D^N
z!JROSXH{1@?9da~d+ogNyo@M4*5|Z%^Z3>y+rGfUfh6D$E|zTpEWSJ1U~;2}J?q*)
z!V*i>Lu;cWYiGr>%VwGkkw>m)xZ6~%(sao(Piy0mk-s17o}c@#$Q_rLeUA?zZ_2(C
zanSHz0*jd)^el0=YPCX}DaKJ370xuv)y&&7Eo$gppY-T{I8ECwrw^nP6q+pk1)E4i
zUBLH@8-lXt=Y;)sON`^lXy@-S%3#(vWF(`Z2n&LM;mF7kL!+3zdp0hqi$-GgzVAA7
zd^`VuuxB1-4yi~4r}~`=OoomQ?U(Obe}1GjhPlEMb(JdvM!(kD8U9>IjU9G96Z`cy
zcJ*dh*Z1zf#m8UQ6YtD%_i>Az>C!wmOcAWkC;V8l2=VDNy&-LVfd{G<`l0oRZ5bXv
zV1gAffX$n6dp9uH`nc;)5~w`$AO8CR#2WbcjLj2Ny#aXrWl=w)*#E{SFYxts1FW9R
z1p_FJJmL>K3DydP^3-TJkf5C}8%@BNbCV3oDk%+pVyDDu-A6kRBxBZ(LwzdHLr%XQ
zRY8(zUrr{Ec3<2)X#kMF55VC}mT>bga0_PZ9Z7x^&?=h}+8#Qqf+85H+;`S>p^~Tg
z$)vQ62{nC^p1@r$yewV)S25ZkUz53&jXWQE8EOCPZ(>97MZf&9t%`H88dRPi^%>PP
z@r)I=tDo`-4*t}=5CzH*k^vJj0=Wki^fG~jTvNeO>%)EhZm<|F5kLxxMO(<r#3GQe
zQ2f1@utWkkn;0npNlE6Rf4$>tS{5(f4T=Gi4VDrCkZD-%jaIBhJkTm2@q%mj>fq#w
z>Gr6qPgSavA5@<?uF)u7_KVW9ekPr)ZrqF8j>_WCUACP9H@CNQuQiJNq%%f7t+!N{
z8c<}MTz|@9Y#J}pn^~>i?LSZFk^LReFeC9z^t-M$+mO3j#C>zJeg+wR0+OdM0}`n@
ztPJtK5`S87jl<zRXa?qBkexyl1C0d6gG}nFKZu0D*i6_SOLoZmI|z-|-0fNsojBA?
z%etq$zQ)4N1vKp-6?n_aB2{sea5eX`5z0@yZ>yeF*f18q^;9%5$KJ0Z^u+_QOdD(D
z5-;*T?sBjDHoIfi+hs${n~U?{X-Q^;kquk>xCUVgIx#|yB$iCADmz$NE<;C^Ifp1b
zC4_#{JqkiaN);(U#8yOBCgWC;0?t@%y;TlO$!J?7Ew~3EtWb{9fKWqKUwe)8Y?zq3
z6nqw?c3`M&{Tvb>+L9&rwFZo$?$cOqKRQ~CO(XpAdgjypGdjSeve<lmu+3EC-R8^A
zz17UHF6upWqu9gN=hlsy8Y^5~*#cu4N=y#IKRy4U9_RO{?smNJ+)LG3lEzy$gk}4e
zH-9uW+$3j{`k7GAKto~qhF>Kav-XzY2%IReetHEVp!fkMCgFb)MMElWr<71tuQv8S
z{WUrRi3aiYMS8+~m3aH_0_r!?RA4=L=!VW!;p%E5%NgX6NK!^nw)Zlldjx~I)Khr)
zL)#S@G>PtCF3k0F({tAwwsI`kqv&?{y=iH<<6mjs_#a))eHi!;w;A<l<^qSwN>P{C
z9lv^Zv7ExmF92_7&%C6bOc{@TlDFYo8t`v6=eGx9k8|B|*EjHzt9Kljl)LDkv;7Fq
zypl2pj1nCO;kP*CJexY5g8D}qB%`~$4=dxb2*l9^=W1mE9~)2!Pr~a4(TRuz(YVD6
z#t~rNF1-&831iJi$iRsB7-oCYvB{N?5Bu{&)UY(qT;r%$)hzvY3x#+qKF9u*?nu+7
zaxm=nX!>O}Ro!aZSjePN<;|{lcw(8r#E9lfU5Y*xga$_=G}Rve8|!UWW1)H6L4$C7
z-lwd?b4;B0RD`Fbwo^yDW-KyXM#aLuXV+7f!pmaY;2Ubr@pUqgMAfx>KA*an$wHVC
zC|#&gE`Cg`$Cv*HOvxAhz9-fybT-s73*iy?TOLd&UaA}!#*E!*pY<p?4!X`o_o=h;
z9wNozyj|+d>HVe{dFQ}u(`LTY1up@~{Zelu2?M0KfkH|#vcjQ)MWce7KF4s^(a1>0
z`F#GLMZqm3?`qH+cV8}Po|(56UvZi8Kj<PVEnzkEvM;F6v@?S>2^cJ1AH=SzO({q?
zV=|dc1+Cw6z6CG@bl1=VgGiVQqtcUNDB{3SnP5+-8%+)`o2^?+2%om6GOYvz3hH7&
z2|3FlEr0cV6eq|QwrJ^zEy`Ae1y%I%Jwhx{@6)NLhqUO@Q}oe9O|`jduN5Ab)y|Re
z-nLYHshB%4>{e|x)yOdPWfddk%;YOlh-aGCaOn^zP8Q>@aF{80s>70ewO55(eY5A;
zl#(f>A+Mz)-8f}>hH)r7$sUj_4i73^9UW`92ueI2tbFKC;A2grja~WNGBjq`aH*y<
z&eIpnLsvS8WfNc(eOv5O_@{%H@FGZT7VyTXQTEwCe$Yf9QEmK?ze7Iwn;5vJW(+7O
zr9jg@4j}x3<qnWVsDEI@OI!ko73eciV9Rek`8`<9WH2)rp_T?>CX#v$Bu&mOCAgCj
zS8Ju@R!v;`fEEMpu@YU9c#55&F&Yx|T`j?@RR7iI73%D81+rL%rwY|;-XWA0`C&B(
z`=0*LD!3$v=k~KkSP%WU8-gOzLyB$m4k%SD^a!uHam#Gw@}JBHW&jjGs0o4Uao{em
z1Ku9VZqGm|M5i*Qr;KE}&vCg>oZF<lPt?=`Q+A@4B!l#;^U2Xi9;di)j*EA`SH1jR
zFQiNW4?QOum;R*_ZY*;GwvO{|*50nOy%q+Syt8!qMME^2S5AXF(6049q`h<~5Ac-U
ze~Qnm_T{sf82Wzblq@;7{{8lypRw@Br=&UL(d=S?)b4~j|JL4W^5K0U*Pr_K*Y(%+
zlp0o3`{V@OiQBRA1d8^nP=U{x_vz<srGX9M>r&0?*Ta_46XT_#Fj5*Xb;Hn?5_-fy
z005#XK~E1&7$k#W*a$89XhJm<k#sC+<FV`_ClaIZpR(j*&xu70P=qis1cVPxFDiy_
zLH3Yh<AZp0_!L@_s1RVUC_vl;<NQh-+MeK9{4gk7OgN}Kkl5=LOUMqBFAZxX12~Y?
z?VH13P^mUC+kecT<u6HP+kaC+fCB(M04R+76#&tFpa6C)u(7P{+a_ZZ<@4`8Y?_&(
z&)<ajT0B#-erA=9n``k=SyO_jM+wV@f#f;4wE}JzjQ7v=N%&JJ)T4M+$cd8C^)gSY
zd~8gcBx_X33^eYSl@`-vYL$)aL^TrgjB5(n>n37ZnXpPo1{P+a=;W{lUIh67t^FVS
z<hx`lDWkulGPzMXTwrDyM1({L-OmpmBetQvMB)#1=y>O&BGYU`DIGJkkTerd2vn&T
z@?Kd?kn4!eWq_U;Yu&LN)2IVPat479*o)_BrJQAa?l@Fb)LbQbCh0s|Xla$5|GUtq
zI<CHWTvFb0%eJFDKQ8IyBRjwL@2*?@)=Nprb{G6-yOUY_M7htsmE8#0WqrwZSIV!;
zY0aHUQsufcBjr;;PiKN*nYq?vZ=)k;h^5fJ`THn7I@q+zd=ww;ZbTHPx~4nYk3g#`
z&HS|Hjom#b$5~b*r>?Z-4%_Bh;YU?k>1K}2>zGk96EpnxFP%Kc7TRVG8}>{cN4ure
zKrLk73bOWsGsxcRzd0Y+7A$~#)mG3^5f>H}5vlyYF5FeIa@6}1a{a+`OA9h@)y0W@
f5g@)sxfoyI0RsRe0`Zc(|JR@X|Be4=R^a~todw~=

literal 0
HcmV?d00001

diff --git a/ts/test/types/Settings_test.ts b/ts/test/types/Settings_test.ts
index 0d233b8cf..609617bc7 100644
--- a/ts/test/types/Settings_test.ts
+++ b/ts/test/types/Settings_test.ts
@@ -63,7 +63,7 @@ describe('Settings', () => {
       });
 
       it('should return true', () => {
-        assert.isFalse(Settings.isAudioNotificationSupported());
+        assert.isTrue(Settings.isAudioNotificationSupported());
       });
     });
   });
diff --git a/ts/types/Settings.ts b/ts/types/Settings.ts
index 32818754f..57bbdcbcb 100644
--- a/ts/types/Settings.ts
+++ b/ts/types/Settings.ts
@@ -2,7 +2,8 @@ import * as OS from '../OS';
 
 const MIN_WINDOWS_VERSION = '8.0.0';
 
-export const isAudioNotificationSupported = () => OS.isWindows(MIN_WINDOWS_VERSION) || OS.isMacOS(); // currently, only linux does not support audio notification natively
+export const isAudioNotificationSupported = () =>
+  OS.isWindows(MIN_WINDOWS_VERSION) || OS.isMacOS() || OS.isLinux();
 
 // Using `Notification::tag` has a bug on Windows 7:
 // https://github.com/electron/electron/issues/11189
diff --git a/ts/util/notifications.ts b/ts/util/notifications.ts
index fe30cf862..dfed584d4 100644
--- a/ts/util/notifications.ts
+++ b/ts/util/notifications.ts
@@ -22,6 +22,8 @@ function filter(text?: string) {
     .replace(/>/g, '&gt;');
 }
 
+let sound: any;
+
 export type SessionNotification = {
   conversationId: string;
   iconUrl: string | null;
@@ -218,10 +220,16 @@ function update(forceRefresh = false) {
   }
 
   window.drawAttention();
+  if (status.shouldPlayNotificationSound) {
+    if (!sound) {
+      sound = new Audio('sound/new_message.mp3');
+    }
+    void sound.play();
+  }
   lastNotificationDisplayed = new Notification(title || '', {
     body: window.platform === 'linux' ? filter(message) : message,
     icon: iconUrl || undefined,
-    silent: !status.shouldPlayNotificationSound,
+    silent: true,
   });
   lastNotificationDisplayed.onclick = () => {
     window.openFromNotification(lastNotification.conversationId);