From a31addae96178789ea222694f10c17850a523b3f Mon Sep 17 00:00:00 2001 From: Saran-nns Date: Wed, 8 Sep 2021 22:07:06 +0200 Subject: [PATCH] v0.6.1 update --- build/lib/sorn/__init__.py | 2 +- build/lib/sorn/sorn.py | 184 ++++++++++++++++++++----------- dist/sorn-0.5.8-py3-none-any.whl | Bin 25047 -> 0 bytes dist/sorn-0.5.8.tar.gz | Bin 29646 -> 0 bytes dist/sorn-0.6.1-py3-none-any.whl | Bin 0 -> 21726 bytes dist/sorn-0.6.1.tar.gz | Bin 0 -> 22777 bytes setup.py | 2 +- sorn.egg-info/PKG-INFO | 2 +- sorn/__init__.py | 2 +- 9 files changed, 123 insertions(+), 69 deletions(-) delete mode 100644 dist/sorn-0.5.8-py3-none-any.whl delete mode 100644 dist/sorn-0.5.8.tar.gz create mode 100644 dist/sorn-0.6.1-py3-none-any.whl create mode 100644 dist/sorn-0.6.1.tar.gz diff --git a/build/lib/sorn/__init__.py b/build/lib/sorn/__init__.py index 754bb77..a0274ad 100644 --- a/build/lib/sorn/__init__.py +++ b/build/lib/sorn/__init__.py @@ -3,6 +3,6 @@ from .utils import * __author__ = "Saranraj Nambusubramaniyan" -__version__ = "0.5.8" +__version__ = "0.6.1" logging.basicConfig(level=logging.INFO) diff --git a/build/lib/sorn/sorn.py b/build/lib/sorn/sorn.py index 3b941c9..c23eafc 100644 --- a/build/lib/sorn/sorn.py +++ b/build/lib/sorn/sorn.py @@ -12,51 +12,7 @@ class Sorn(object): - """ This class wraps initialization of the network and its parameters - - Args: - nu (int): Number of input units. Defaults to 10 - - ne (int): Number of excitatory units. Defaults to 200 - - eta_stdp (float): STDP plasticity Learning rate constant; SORN1 and SORN2. Defaults to 0.004 - - eta_ip (float): Intrinsic plasticity learning rate constant; SORN1 and SORN2. Defaults to 0.001 - - eta_inhib (float): Intrinsic plasticity learning rate constant; SORN2 only. Defaults to 0.01 - - h_ip (float): Target firing rate. Defaults to 2 * nu / ne - - mu_ip (float): Mean target firing rate. Defaults to 0.1 - - sigma_ip (float): Variance of target firing rate. Defaults to 0.0 - - ni (int): Number of inhibitory units in the network. Defaults to int(0.2*ne) - - time_steps (float): Total time steps of simulation - - te_min (float): Excitatory minimum Threshold. Defaults to 0.0 - - te_max (float): Excitatory maximum Threshold. Defaults to 1.0 - - ti_min (float): Inhibitory minimum Threshold. Defaults to 0.0 - - ti_max (float): Inhibitory maximum Threshold. Defaults to 0.5 - - network_type_ee (str): Dense or Sparse. Defaults to Sparse - - network_type_ei (str): Dense or Sparse. Defaults to Sparse - - network_type_ie (str): Dense or Sparse. Defaults to Dense - - lambda_ee (int): Number of connections to and from a single excitatory unit to another at initialization. Defaults to 20 - - lambda_ei (int): Number of connections to and from a single inhibitory unit to exitatory unit at initialization. Defaults to 40 - - lambda_ie (int): Number of connections to and from a single excitatory unit to inhibitory unit at initialization. Defaults to 100""" - - def __init__(self): - pass + """ This class wraps initialization of the network and its parameters""" nu = 10 ne = 200 @@ -76,16 +32,21 @@ def __init__(self): lambda_ee = 20 lambda_ei = 40 lambda_ie = 100 + @staticmethod - def initialize_weight_matrix( - network_type: str, synaptic_connection: str, self_connection: str, lambd_w: int + def initialize_weight_matrix(network_type: str, synaptic_connection: str, self_connection: str, lambd_w: int ): """Wrapper for initializing the weight matrices for SORN + Args: network_type (str): Spare or Dense + synaptic_connection (str): EE,EI,IE. Note that Spare connection is defined only for EE connections + self_connection (str): True or False: Synaptic delay or time delay + lambd_w (int): Average number of incoming and outgoing connections per neuron + Returns: weight_matrix (array): Array of connection strengths """ @@ -108,15 +69,15 @@ def initialize_weight_matrix( return weight_matrix @staticmethod - def initialize_threshold_matrix( - te_min: float, te_max: float, ti_min: float, ti_max: float - ): + def initialize_threshold_matrix(te_min: float, te_max: float, ti_min: float, ti_max: float): """Initialize the threshold for excitatory and inhibitory neurons + Args: te_min (float): Min threshold value for excitatory units te_max (float): Min threshold value for inhibitory units ti_min (float): Max threshold value for excitatory units ti_max (float): Max threshold value for inhibitory units + Returns: te (array): Threshold values for excitatory units ti (array): Threshold values for inhibitory units @@ -130,9 +91,11 @@ def initialize_threshold_matrix( @staticmethod def initialize_activity_vector(ne: int, ni: int): """Initialize the activity vectors X and Y for excitatory and inhibitory neurons + Args: ne (int): Number of excitatory neurons ni (int): Number of inhibitory neurons + Returns: x (array): Array of activity vectors of excitatory population y (array): Array of activity vectors of inhibitory population""" @@ -145,21 +108,6 @@ def initialize_activity_vector(ne: int, ni: int): class Plasticity(Sorn): """Instance of class Sorn. Inherits the variables and functions defined in class Sorn. It encapsulates all plasticity mechanisms mentioned in the article. Inherits all attributed from parent class Sorn - Args: - nu (int): Number of input units. Defaults to 10 - ne (int): Sorn.ne # Number of excitatory units. Defaults to 200 - eta_stdp (float): STDP plasticity Learning rate constant; SORN1 and SORN2. Defaults to 0.004 - eta_ip (float): Intrinsic plasticity learning rate constant; SORN1 and SORN2. Defaults to 0.001 - eta_inhib (float): Intrinsic plasticity learning rate constant; SORN2 only. Defaults to 0.01 - h_ip (float): Target firing rate. Defaults to 2 * Sorn.nu / Sorn.ne - mu_ip (float): Mean target firing rate. Defaults to 0.1 - sigma_ip (float): Variance of target firing rate. Defaults to 0.0 - ni (int): Number of inhibitory units in the network. Defaults to int(0.2 * Sorn.ne) - time_steps (float): Total time steps of simulation - te_min (float): Excitatory minimum Threshold. Defaults to 0.0 - te_max (float): Excitatory maximum Threshold. Defaults to 1.0 - ti_min (float): Inhibitory minimum Threshold. Defaults to 0.0 - ti_max (float): Inhibitory maximum Threshold. Defaults to 0.5 """ def __init__(self): @@ -186,10 +134,14 @@ def __init__(self): def stdp(self, wee: np.array, x: np.array, cutoff_weights: list): """Apply STDP rule : Regulates synaptic strength between the pre(Xj) and post(Xi) synaptic neurons + Args: wee (array): Weight matrix + x (array): Excitatory network activity + cutoff_weights (list): Maximum and minimum weight ranges + Returns: wee (array): Weight matrix """ @@ -227,9 +179,12 @@ def stdp(self, wee: np.array, x: np.array, cutoff_weights: list): def ip(self, te: np.array, x: np.array): """Intrinsic Plasiticity mechanism + Args: te (array): Threshold vector of excitatory units + x (array): Excitatory network activity + Returns: te (array): Threshold vector of excitatory units """ @@ -252,8 +207,10 @@ def ip(self, te: np.array, x: np.array): @staticmethod def ss(wee: np.array): """Synaptic Scaling or Synaptic Normalization + Args: wee (array): Weight matrix + Returns: wee (array): Scaled Weight matrix """ @@ -262,11 +219,16 @@ def ss(wee: np.array): def istdp(self, wei: np.array, x: np.array, y: np.array, cutoff_weights: list): """Apply iSTDP rule, which regulates synaptic strength between the pre inhibitory(Xj) and post Excitatory(Xi) synaptic neurons + Args: wei (array): Synaptic strengths from inhibitory to excitatory + x (array): Excitatory network activity + y (array): Inhibitory network activity + cutoff_weights (list): Maximum and minimum weight ranges + Returns: wei (array): Synaptic strengths from inhibitory to excitatory""" @@ -310,8 +272,10 @@ def istdp(self, wei: np.array, x: np.array, y: np.array, cutoff_weights: list): @staticmethod def structural_plasticity(wee: np.array): """Add new connection value to the smallest weight between excitatory units randomly + Args: wee (array): Weight matrix + Returns: wee (array): Weight matrix""" @@ -336,8 +300,10 @@ def structural_plasticity(wee: np.array): @staticmethod def initialize_plasticity(): """Initialize weight matrices for plasticity phase based on network configuration + Args: kwargs (self.__dict__): All arguments are inherited from Sorn attributes + Returns: tuple(array): Weight matrices WEI, WEE, WIE and threshold matrices Te, Ti and Initial state vectors X,Y """ @@ -404,9 +370,12 @@ def initialize_plasticity(): class MatrixCollection(Sorn): """Collect all matrices initialized and updated during simulation (plasiticity and training phases) + Args: phase (str): Training or Plasticity phase + matrices (dict): Network activity, threshold and connection matrices + Returns: MatrixCollection instance""" @@ -483,10 +452,14 @@ def __init__(self, phase: str, matrices: dict = None): def weight_matrix(self, wee: np.array, wei: np.array, wie: np.array, i: int): """Update weight matrices + Args: wee (array): Excitatory-Excitatory weight matrix + wei (array): Inhibitory-Excitatory weight matrix + wie (array): Excitatory-Inhibitory weight matrix + i (int): Time step Returns: tuple (array): Weight Matrices Wee, Wei, Wie""" @@ -499,10 +472,14 @@ def weight_matrix(self, wee: np.array, wei: np.array, wie: np.array, i: int): def threshold_matrix(self, te: np.array, ti: np.array, i: int): """Update threshold matrices + Args: te (array): Excitatory threshold + ti (array): Inhibitory threshold + i (int): Time step + Returns: tuple (array): Threshold Matrices Te and Ti""" @@ -514,10 +491,14 @@ def network_activity_t( self, excitatory_net: np.array, inhibitory_net: np.array, i: int ): """Network state at current time step + Args: excitatory_net (array): Excitatory network activity + inhibitory_net (array): Inhibitory network activity + i (int): Time step + Returns: tuple (array): Updated Excitatory and Inhibitory states """ @@ -529,10 +510,14 @@ def network_activity_t( def network_activity_t_1(self, x: np.array, y: np.array, i: int): """Network activity at previous time step + Args: x (array): Excitatory network activity + y (array): Inhibitory network activity + i (int): Time step + Returns: tuple (array): Previous Excitatory and Inhibitory states """ @@ -546,8 +531,10 @@ def network_activity_t_1(self, x: np.array, y: np.array, i: int): class NetworkState(Plasticity): """The evolution of network states + Args: v_t (array): External input/stimuli + Returns: instance (object): NetworkState instance""" @@ -565,9 +552,12 @@ def __init__(self, v_t: np.array): def incoming_drive(self, weights: np.array, activity_vector: np.array): """Excitatory Post synaptic potential towards neurons in the reservoir in the absence of external input + Args: weights (array): Synaptic strengths + activity_vector (list): Acitivity of inhibitory or Excitatory neurons + Returns: incoming (array): Excitatory Post synaptic potential towards neurons """ @@ -585,13 +575,20 @@ def excitatory_network_state( white_noise_e: np.array, ): """Activity of Excitatory neurons in the network + Args: wee (array): Excitatory-Excitatory weight matrix + wei (array): Inhibitory-Excitatory weight matrix + te (array): Excitatory threshold + x (array): Excitatory network activity + y (array): Inhibitory network activity + white_noise_e (array): Gaussian noise + Returns: x (array): Current Excitatory network activity """ @@ -623,12 +620,18 @@ def inhibitory_network_state( self, wie: np.array, ti: np.array, y: np.array, white_noise_i: np.array ): """Activity of Excitatory neurons in the network + Args: wee (array): Excitatory-Excitatory weight matrix + wie (array): Excitatory-Inhibitory weight matrix + ti (array): Inhibitory threshold + y (array): Inhibitory network activity + white_noise_i (array): Gaussian noise + Returns: y (array): Current Inhibitory network activity""" @@ -656,13 +659,21 @@ def recurrent_drive( white_noise_e: np.array, ): """Network state due to recurrent drive received by the each unit at time t+1. Activity of Excitatory neurons without external stimuli + Args: + wee (array): Excitatory-Excitatory weight matrix + wei (array): Inhibitory-Excitatory weight matrix + te (array): Excitatory threshold + x (array): Excitatory network activity + y (array): Inhibitory network activity + white_noise_e (array): Gaussian noise + Returns: xt (array): Recurrent network state """ @@ -690,17 +701,27 @@ def recurrent_drive( class Simulator_(Sorn): """Simulate SORN using external input/noise using the fresh or pretrained matrices + Args: inputs (np.array, optional): External stimuli. Defaults to None. + phase (str, optional): Plasticity phase. Defaults to "plasticity". + matrices (dict, optional): Network states, connections and threshold matrices. Defaults to None. + time_steps (int, optional): Total number of time steps to simulate the network. Defaults to 1. + noise (bool, optional): If True, noise will be added. Defaults to True. + Returns: plastic_matrices (dict): Network states, connections and threshold matrices + X_all (array): Excitatory network activity collected during entire simulation steps + Y_all (array): Inhibitory network activity collected during entire simulation steps + R_all (array): Recurrent network activity collected during entire simulation steps + frac_pos_active_conn (list): Number of positive connection strengths in the network at each time step during simulation""" def __init__(self): @@ -718,18 +739,29 @@ def simulate_sorn( **kwargs ): """Simulation/Plasticity phase + Args: inputs (np.array, optional): External stimuli. Defaults to None. + phase (str, optional): Plasticity phase. Defaults to "plasticity" + matrices (dict, optional): Network states, connections and threshold matrices. Defaults to None. + time_steps (int, optional): Total number of time steps to simulate the network. Defaults to 1. + noise (bool, optional): If True, noise will be added. Defaults to True. + freeze (list, optional): List of synaptic plasticity mechanisms which will be turned off during simulation. Defaults to None. + Returns: plastic_matrices (dict): Network states, connections and threshold matrices + X_all (array): Excitatory network activity collected during entire simulation steps + Y_all (array): Inhibitory network activity collected during entire simulation steps + R_all (array): Recurrent network activity collected during entire simulation steps + frac_pos_active_conn (list): Number of positive connection strengths in the network at each time step during simulation""" assert ( @@ -888,18 +920,29 @@ def simulate_sorn( class Trainer_(Sorn): """Train the network with the fresh or pretrained network matrices and external stimuli + Args: inputs (np.array, optional): External stimuli. Defaults to None. + phase (str, optional): Training phase. Defaults to "training". + matrices (dict, optional): Network states, connections and threshold matrices. Defaults to None. + time_steps (int, optional): Total number of time steps to simulate the network. Defaults to 1. + noise (bool, optional): If True, noise will be added. Defaults to True. + freeze (list, optional): List of synaptic plasticity mechanisms which will be turned off during simulation. Defaults to None. + Returns: plastic_matrices (dict): Network states, connections and threshold matrices + X_all (array): Excitatory network activity collected during entire simulation steps + Y_all (array): Inhibitory network activity collected during entire simulation steps + R_all (array): Recurrent network activity collected during entire simulation steps + frac_pos_active_conn (list): Number of positive connection strengths in the network at each time step during simulation""" def __init__(self): @@ -917,17 +960,28 @@ def train_sorn( **kwargs ): """Train the network with the fresh or pretrained network matrices and external stimuli + Args: inputs (np.array, optional): External stimuli. Defaults to None. + phase (str, optional): Training phase. Defaults to "training". + matrices (dict, optional): Network states, connections and threshold matrices. Defaults to None. + time_steps (int, optional): Total number of time steps to simulate the network. Defaults to 1. + noise (bool, optional): If True, noise will be added. Defaults to True. + Returns: + plastic_matrices (dict): Network states, connections and threshold matrices + X_all (array): Excitatory network activity collected during entire simulation steps + Y_all (array): Inhibitory network activity collected during entire simulation steps + R_all (array): Recurrent network activity collected during entire simulation steps + frac_pos_active_conn (list): Number of positive connection strengths in the network at each time step during simulation""" assert ( diff --git a/dist/sorn-0.5.8-py3-none-any.whl b/dist/sorn-0.5.8-py3-none-any.whl deleted file mode 100644 index bf6b0b5b99b3a90e3c0dad4f4e30bf3ca0e01c2b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25047 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 diff --git a/dist/sorn-0.5.8.tar.gz b/dist/sorn-0.5.8.tar.gz deleted file mode 100644 index b1c9172e0e889abf5c6309ac7244fdc9e2c2f6f9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29646 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 diff --git a/dist/sorn-0.6.1-py3-none-any.whl b/dist/sorn-0.6.1-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..1457eda4184c712b80632902353cb4172c8b233c GIT binary patch literal 21726 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%0D9D@V1zLUNqUa~|?3 zV3juNW<`c8hjKKwdV9B!FM2*sK@vj@kixnkn(6ypnX&rXOWN$HbW z@tdgWXAAA_C)_$yQ4^#5aL8n(-U0a=QxWQnzdwN%sC~~2{E!7JG_0uvd`&I~XCzr0 z{7b6r5d}n(6iG83F>4PxzKuKw{5-6J6#e8rf;YnVkW0~ebu*6aR{%|x9|REcjoQxD zsPQ{|(0h%`sNajKo8{91DZsSq2v*{Vl4bPvE{J7G4#xVoMgXb$FA@@i6Hl}F z_k;BBj+6pF`vUt#%dy4!6G;K7+ZN(M$%rpkLq@LG600jd;y8Wz8qk-qQTn4LE6Kiz zI&fT4IgB%#tTXx_5N>86LS#!Y(a5wzQaV&RgmmDC{I(lak(#!6=hka=?gK1nfTI6~ zxDw2%cO7Rz03GTdjE?bjB$2J0^iax&jlO?_{q9$GH?TKXw&LdT_{3ce2*X zAXWm?1R_Ak6QM2|+PW(;Kv`ZrpON?{l~G92%$w8H(ZN^JoDKz&j)R(uq6vZM#EKSA zvO4lc(G89Zm1OO|8k#oq9`;0MV9Nvgz9h)XgEXI!}SFO_wYdHk5AQNks?ZP?Aq+^tQ-4LpzLU+Fw zIE>-yu}Q}WGXh);#Hfb z%Is*ttG**a*xnoP2l80<3sGrw;SRE63euBbIPNp+`Vi62c1Q3LEudcpDRnhq?_sk& zXj89UuA-bcGdc&+lx~}xp!oDjXGZYM-;`ATB~Ye4Nx6|$sfB9_J{)~_tyHqf2wy4i zJ_H{!n1)f#xO-@Q=!)2L1JRc5Yn(~J$mu=6z=^}x zm7x`s8ha()V1TGUAVlT;*nO)ruVUPzPJsMC_G}yM$NEoh;`TPEQf5mk^b7|A1dhe9 zouOj$G;X`Es{R zK()`6y+a=j0O{Q|C5#|2mwNqISMvZJ*;n{6!b_Yr*=My5ZO9;3}!@v zk4Z!FaHvpmQ7q3~EW9Rz*KZ z-)CN~z~A*si*fBp(5;wy;l;NY9-Nk<(9=WHzMw1vf)@Se9)f~_)kEm1FE)_*^w2-~ z(1gdEWP@I(6X0#Kk5n=?b}ryT%SI&-krE=BdvW1Mz~cl>4V6SfUMX|$2&7ISDSTG@ zqG4?%fxI-2qC)JE=G%mXB?|J?#iaalb*52Y?VGf#SB+C@oCzJi=NVH?w zzy-Xv8LfIEZ;^TYlX;>AJNjkI>G?&@kW&ChhT%n68*vwIQre4c>fmW zi;7LI07`&kMUFf%4tJ3qcr$)Dfa;QjhtV|2Bz))Ovfk}+bwY(bpbC#>)9<%_nrjKZh&Xw36A`?(EYp<-3^WP*1zN{EoxjV;5OqPLFV>@tdu}67d{gOi=WmO!!wfP`$ zJcmp>8qfC)jCm6pxRtvnq;V9ME{0=y{;N=!b_s_S+`It>mk^K2%~GsJsV;qDtbXoV z>)LW-E;{S?J4i#O<>elK18EAjF79IMS>x`&y_}mK#!q!XSJEjoAsyCR>GBo?MU@*j zA{D$lfC3hn_F3Ocgu^f${T5V&iI)Uh(v2HS^)OozMfNC1k#Iq1{MqOf? zaBewsM4IPN8_>GO%vdI!%rb0yMI`b%lxGNI8!*qlZ}=k=J8VYdiQm@kjHH^V?ZIH8 zzeKhg!IxV;K{466b3R92=QgpZ)>2@8r#cXst`4ZzB+sbj&nLvN!`s$G)ZPw&)!S`jmQ#uJ!)C7OY<@uBKDO!xNQBOp;x? zeKmbbxO-M{_SSNajF|?V#V?q>8t|jmFQM2p)fRf^Ei#NNVcOp@N~9mx6O>T4Ha&M! zvo~jC3=I&QCWRxb=96!(7gNG!J?vvM_UT}m^w_-`_qfFk-w-oXYf_X4`Iy*;r#y?8 z1pB@I+=>IG-VUB}5aQ=d21$cgf0oaSdf-wA#(HtVtkyJ^z2Q@my6LLdVp*8-tL&x` zV5&^A1Dw-VvZXKiGARYbJAj@KuTGY)$caEmpgI%R*-MmK^q{!YX{N(Y9X*TZ1PhUl zInP}<01l)Xs|ML}j#vvR2V~86v>P!bjl1wSZyz6s^wEkv>~i3BCj}w_6-}^ z%dj5s^5FvqP3TO5O(3Q5nnQ}@h&gO*xY`d}dP)v%7dl%gImlv-!qnu8ZeSFsRH-0Y z(Bed3b5(X`t@uv}1-`I0>Q70Q*dvX(nm5S6AuB>Y{T)q)3lEr$cK z$mI)sxDv{!9Ys622@YyL4)gt&OaqUq4}xMgu*}X(yt<48QO?<{>79BMSo5~~sBwpi z^_oL!YKNAdOA=DQkOjJ6&RlpSHWmS#h`z|P2J9z$Z9gxq-7mqlVpcJR9UPf}C1}OC zLXFAwc;s2FTn{UKwIUbJf%G%sS`to{?cE6xDRgJ~s*c*6oF)F3**Tb$3HkByLu*3v zyy)60ZhS?LZNw#XyZ^XPn5MqCN+T*v{6PMYin^s#qeVaMMmB4EeQ5J*Sb~OFp0RGc zMn@(WHs-xa+$Nd=ykc72)`;vDTBlwM+r+Z)^X=SJb2@_xX|ypZ@~Q@X@hcgp5VwCj z`rso~g}4hhG(@dI<%LQc)OJ3SAZlf&TPHk335E0%x2=x351a)iL|k@Ki224(hb0TVeGJ)K64nnt+I^;uSq-bh&GArdq%uX?I5R4WO15-N!j=wcI`@4SC7FNAQ} zShSq@hy!G1$IQ&s#?$P`?@mq4$t8jz;{Gq3M;Th%D0h3}l9?nGoOUC2LJk6G;*g#v z{fp_v_1|~masKE(yRJ&McUDZ1^EdMlNGTS+G$#OSXQQ@Suukp3wa3dEZr2Z#qamp$ zz@0HuBrEEj48sR?^ho3)64Un{A8m7`TtWj3Kv5vd$4+Mr7F>75BF#Z9Y0l~L+!RNk z;TeuR=a)4Pku`5xupPC?=wgA-N?;g1E{-4csuoF5V+419LiYCUH|6|UYSGO5+dV*Z zc`JM7*52Di^W)1Yw!ws2fwBLs@G>w#nb5)q@}vucS$!h@AsW*kmUyt43lOrPo(|&WoRWWc1 z@dZI;U>uK9v*V4cZJTbH_GON))>UDPxQQbmybOx-?o=&bZt|a9t0z2B*LpnBjO4*v zB~9K8s+3-GQukyTp`kG%<_bkr{{X|Q{W(Y(cbn@@*8Q4bIS}TKY6IYI2>iQD0oB26 zTrMQ}TR^F(ojT2uyh&!B0my!8oTjST+q@k^A|B(z3rN{Gfw<;a+(34a4DKQX>Nce} z&Ol1^Wf~H+Qu;VZSeE{cl zieU0Gly>GZ3~lw$CQ{$Anf#}0Hfje5NbtIL3V8cjkN&sUYSNLqeXD6{ z>;FDgcJBco&wYQ}QqC!1=kETdBI*;g)=h|92mc+eV1aGvrR{bL zOsI9XwYXqYrE^6dhJeo8f9yg*+#T!bag>k#Ihnlcrl!$}h|3NUl7itS&xb4KI3UR03v8P{K5CBR(vz5LT?cx|lgvDL$h_)if46kXbT4SINTbO9j@NzHGM}zSa`C5}VE0c|r0x&g zYCD(gtGsBGRA-4{jtw|HzK|j#y@RzTOMuZ5i=F^RfdXKUntSV&36uAc&I&p{y1uc_ zDhIO=9vU!m@o8s508cnK_x5-88^aj$(}w1)gmA1SNIu|I%jWN{;R4cFzr(Vs=_!@P zLYp?bGI!{si;#n&XzSNN6#(m&ph<|PTQ6$bpdpKGpXg(M^A3b2E4R%EFSozTe;IuO z96t-{ruulm&Xax11FSWnaRV6jlPM{$UuJBV3@&X@fHF1y?`16@mQdS58jmd({kwR@vS^~4=egMC{ z_W;j;oAoPM9$d4_mm0(l%66t*tE21hfuur*xIun`QX1~_wdCd11+PO*?-S{@Uu8Z7 z+U1dR9~OZyQs#+FTZ;leVPSRWp5Afri>89&Y5^SYKP}n275lUOGZt=mg$RU3ZG!x-3^8oC z!9fvTC?emNLU6>He5Wxf$0po<_)joWw#@&NDLGp#QS1rbzovKR4Y|EsC9`0Lib<2rxi@9 zwtci*3ttxI%#7PX;KCEVil6vQEEnz{+ZSa+;U2~bgoyhC6BliKlu0T}#*ma3>js=1 zJD*d@Z7Qp1@wq25>cVL4tFJ^JFqdHjw)bs;^F0FKFA70z`MKnc{fm4%(wgVOcm=vq z7e^qrsXyKnGkgCAZ=vz>>leI0P^2J&fYjnb1V+9rX?oe)%z4zDDFVTk`Vw(_32PB_ zuC6EJSYNXj5N_OgEnAKU%VW+f$=6&191x;S_VvK*1+c0=RiF9I{OY$+TNW+KR74+k(W3|9W>G{_WB*PR`=1p~Ja$zYE@?T-r%w!E-yeJ%}XE*Ob&d+dBUF7>oE zx~5YI7!G!p=!l^_pVWpfWaMJ-(c4>N%-P0^+wTQBeVUs>+A}Wpn(8cM|Ljlw0f3%e z<7mHm3DJ5Mi0X{z+OyuA#O_Zj(8>1*3bYRqh)v0mYW@uQ8?;#)cmNRrV!o zTG=uVJN1ccQ@M^Mf2)(H-ZQn~b_`*ni*~jBHQY5?k;ce061)mfy(R%IWT$BzgMom% z${_6+Q*&WDY)*#dg7WJz9scg;Cl*v)IttCxv-ROTX6^W zi*Na7T(x2Qq37c*67M%Db}mqdSEtVpsxOU0{n_W|wbew5^4p%>yNK5}*6lmDgcmXZ zGSoLajfV~M1AT?Eip(}KZG+5y_y9wR&2~&BY~LY!Zhtlf?R;fe>uskXDL^YF+r$;J z@(HO6nrXt`g@ibbve@_j%BdUjNB-)x*QG#3cDU6I}&7qPWK%! z^%pyxK6JNK49WD;tN?L#MxiRf013mLk%yqvs&Yvo^{d{>V*Lu{L)^z%@O1$V}~3&ZhQ)v9o%{jCWxj z7&iU7A{Khv>Vu23ejamNkt*>~c+i#K^(~DZeD@+1}D;&FmAhp0WsZUFce^R0NB*CzQ9y(^<7tqg+^YEoy$2JO|E}i-A1fC zCTnr{**6B7B@wttX*b~X&R$d-cTAgpW;6;NF%t>hDRWcR-_n<$Ff}`_n`6*jtbSzc zuiA|~$%*D%&4#Tb$sjha7rvuFPP_pp|!WH^JH?`tN<;TH~-7eZiEyiWs zvn{r?m2*>=h?(pj16=AHFV?UN^#uv)VrjPg`lzSBc6tt%8FLKVH2sLZ6&oZSWFC5I z`^`uDHPnANjPe2b!NC{_h3_IQ`_z2dV9!R2rm`dO{3_wSaV;(yPd_K<)?+oMzS~WJoc*k2DyB$I=JER#D z(KRL=FbtaM3|Kc@xvAjlR9m1?`y3m5U@gW{x0_l{&P*^M{cicLS_2CyH#14dW5*~a zLB+Ecy8M%)>l!IKVyln_M?d?dO#xwu{X_>u0OeU#H{R}?W?$0C3c>r^P^D`-gCiSa$o!qDEDX;Lj0twQW0Dbph5FjAM|3Wte{~M3fG19ZsGtrwGxf(J2uSZr&L`+^qjNZ;vPg%yH zgb}Hq@fH159GwHZ@>?h19NtMl70_WzQx&u9A=~ z4nG$mgfa5^ojcp)^q|Nq^wwbDJ5V{!8Vf*UdZDUdUoGLL9MV-C1Qdp^FwSKH$%w$s zckuxuA?mp!?ugX};S*S{a-<}&Pgi*WW5LG_w!TTjl6e3HgM)?u`sW$%fz#&>lg&EU zUWm&AwtsBsqfXBOjAOsij!Yrq`X1kH1~axh7{Fq{dGVTq%+lg z$25i;`2JC}QGvhoqzp2XW>}GONigwZNn_{i$QvxQ$eI7%ykg=i6WgYP&~9~uGe+AF z{=asvGpMPqTY~~p6p$`WifAAPkY1E#K%@vns!~D=p(D}+5kydWm(Y>kBE5uO6he;y zfdEk;fQ60<2n4z4cYX17^!~m-zH?^JnKN^qXRn#F_H*`HbJh|wpGyF#3YGXXQ2_O9 zUpDp$hys$4;AZWVU@Krm^E{kK`K^`>Fih-eIh<84#@TNqi>P zXAVD666TvCM}8cC*c;*h@?-nE9w2)cn5)Qt{rJCr{QumKr7!tH_-GD)SK=Tc;rdOF z|M6pORefc!vcB?j6Mxq!Dei9;SwV=IS8Ua`@^@0DikfV%*ONOZm@YeyGhfxxtm!i3 zlZ>xgqTO5FCIWhs-V`{}0%N;b0@ljuo{o2JB+I|uQDp7r)o-b(a$Md@c~+TOKS@-C}x zc3Us;hoz_Ys{01i;T=Z22Zcwq(jw*0Ol$!VYl2Mg*-f#+pw=wMeDJ)7+Uv||HAs=V z#3m7t$V1Rv0H^jfD3+5UYwf#SBBO(Ab=mNFcx;E@-p=B}=w`W5$GyHg5(&q$o9Sud z7BA=GBRRc8@|8F%Y2`IP2fJdUJ%#z@xZ^C}7Oc`pA~Yzkmd)l_I*hyoT`~v`BWhB? ztJ*VU-P7Zej7$e-8=H_Be23pqW zQhip@Mc~(~^kjQ<@Exd!zh76LZMrHGSAiXUi0@iYBl>GWq>zBqtsV*3O_w{7(1jWB z+3WRIDWMGT+7w$zW%29c%stvP$edX6kXTq*5P)m+4eNDA=HZUeVy)}ck?Q2q;fD<^ zPPXEAVALtnY?U=`Q)y|A8N;p{q%3ZQgC$>-OfZh(nFTz35j9TNVl|%j6yy2K&WmZx zl=4greUJ!o9buMlMK`4g^Kc3qM2FHj7l=lVFz0^c!x`^RHqtlfUJCgJ<9`p8XhqrA z7K5-zmRUHr`7joqKO=raEtH;0jxFle%H{|#Rk)b=!Ay?LthTxQR9kB&<;Ulg6Bvn9 zw#Np1#QR`1PAi8gTjWyS?UV&U&luZhHf|Ql9;(Q(6h8OXik@(jY(B9FvD-s>4Y)Aw zMX5rj8#f=Sr>;2J@$u8q-yWW$xj@N{9lob;=rEcq8}s(&cz0)CgG!@1!&8O5)M2`b zd~1o7b6E z{XJY6k>9A0Z-?KGnMQ%Y$26` zRZ98k*N6P$K>!~~+Q>|Y$qbo(%dnUmvo!D7YdyVs z-<1y7U8qfMiSpE^4+{-YEXoFp%gih#%ZX+pQFHw`kljSt++YvyYqQte@?Wy{ zcV`fWo^57{aCc+1*3FoLjoan9EZXL8kS@X|`R=(TCto2&fdq_^0<}Ep-o+@yy=dJW zX(Pe9O^GffPPEsFdlDQjv6b{x_~wTLf81wIF3hWsI|18>Yc6(XIwtwBV#wf}nu2>= zxyloY=N>+D3f`syC2{YU`cJ*NmhFM`SJRZ;Pw42~n0vdCz%`}7d(oQHvB7eKFkZm{ zSaT&n;=Gh5Oh{E17os6iq)<;wzFFo%ftHn^j-?#ZhXyBfGd|f@zuu5UqFrRheKV=g z8qUx^Ox+~QztN{+T2Lb0uYc!rKh_nZa-^ z)KbX4ZxLu+cG(lVTEstKKP3?UAh~phTQfNQf(y#q12<)@8P*_*=iuCY*3zGKylOR9 ziN31lC0toFMa#Wy;gRXPz+>N#&F={S%5FEQr^zK`Ocy6j3CSeq%@Ws{cc*ylfMz5U z$iCW|dE;BgQMEGR#uGf7%a-D~;s=*q@Lheg{#kmVucZS5%(e_)46=voNolM*M_fJ; zSR;w-aQ?vI<-fUjYD|{*5tB@*Lg_#a?%>!54h~}<$4#Wl2WGQG1|_OT8{HPjG3+}2d z?j?GL-Raj~brli#8cSUPY@c|e^$hW9#i?hvrJeLXKAYga`vA8@o*CO(bQwHgov~wa zLVIlMap{6*qEsTb^z>}#BvaSJS zYLh-C)LlSN$67}G+?EVnSI->))FW4$yWFB58jAz&Kr1jridQC`_c04rH` z+T~2gp(7L)VOO_~!`6=jEA>M5pWG3eeL_yH#{A-Wpn|$qU$y1#E8Yy8Danti5d0gEvp$_&V|wlbd-{FC{5zFg|UVvFBBvN=}SgAnT%Vw9tai zAri4uET(`c=%^|G)W=&z)*>_UWO&!UX&RIOXE@q_97ufQ7K62?bd-BfRjQS$oetdPz7zG3t*F#p)1IGD83kaX~ znO_)xDx7261bv=+rEZU zuY6pgxYx4&b^Urbzb#Vf$E7=`evL^U)d0?jdvpQ!VE8+RCs;V_XC#d@zqUx`bNh!4+G_hCe^n-|AU0YDmqy;@ZefS{1}0`+yRdI+FM zVr;M7An><|IESzk;Y@LKXd^~_dB7Jke z(tMA9L6QccO{63w%ZIs~!_eVJZ@`~V?7@5UEYI;=~R&oHS;L$sT6EeZ=;QiOs^z#1ehEbqKGnrY3f0!Lzr z9Pu`WJ2vp7IJRin0_$Dk8MNugw}y5@XnFj~<3^xd2ChBEHrRQ6(TPd%R(LSd>R5%sDL_Hgs5G7&_Fn76xl z!3&k-@hY}XaK23vBX{YB+IWWiM~lu$s5qcZnyu*#G(EMxr@2B*aXam8EDnECzj#8( z=qcnYdIq;y)cX!;*}dfRgl@k1EQ~pkU$nq>gp?`!+?jKf=9?NG)MKAA$^yz?Aah@$ zU5d(yy17M#ZMvGI$Cya|-VyTf#s4_!9)7?4-XHQ;^q+b%{s&7!Quna=C;ES@?tVr7 zsZ8$(Id{0Oe$4x8(cZ7{Kh@+M!6grKkU!u*D|CK^{wZI11l3pgx7Yt6d-*HbpOQvL zWSq+XCi`az9i@r2kc37exg=#i^?R%Z*>zuoRU zd%D%$!S&zT+Uk74+UxcI=%3ezXY7^e^DyO)A3c7wAI0-TjK&$O_Zw`h-T9uK21yVm z!Efv+m|o7(*<}(;gHX(a5Gx$>WGd2BL?II?8}o!;&e;fRWPH$M!-R7d4OxF2BqQEr zS;T^H&SIXVP$9a^0uhRE!~)ibh95tIqS+YWq|q?D4iXNf2P{a_s4oHl$Och=HsxU! zWZ2+POnA!b*_gB1sj5+HP%8r-OddZHA;XvY9lI9UIGSZF;c1qLJ_2bn5%wpu0ro<_ zo`|VXO<;AJkM!{)06R-z5ZKiwn??gM#J`+I7SApxA{{r`Kp^bPSq2YNd`NTK#F1=9 z2}}6|ItCyFbe)D<^p6T*?_-?QOifdYPp-$&)E8G>Bl@sLkJaKf@cUS4?DWmcvtRa34%p!-J3e{yufrDyFIa8w6n@v5 z?3cr{pWgg@#-PN>-qG1x_U0wqJ9^9hd3f}q$qs%!J~=o&Wp7R%KRSGU{Oa%k9v&X; zzxw&b;n9!mA5ih=4WRcSAUQxid&96r1?%wO6rsI7INARRe(wF_@YUhj+vej(FAvX- z5bDb}Cv1-$@12|-?*II1?}Q!yd~*Ee^Z+{W0^lAU9=$w)W)5B-9G$hGS$M_{{slkS z=}&vFUSV60AMO1N131AhviZ%+RqO6h~dp+M}h#Zd}1Cnh{dq|k-3)gXwasMC@i1}Py035L2GN6`fT@|!-&Ls2r9BY^E3>!wqb z1>z{4O{A~{MMXFkm%=J~Jr?~jLy-kwX9>t7Fg6epcPd6VjAkK;6>1>-rpZD;$H|`UFhdBaetOzy z=1-5J1jZ$PrySxjzEdU zgg8FTeS%c@MB?u89LNk1G3dVs>IJzv6{8Rq5Md*EuvN$d#3PVqf%pW}2cXbN=oVlF z53d9u35xUt5r{UPNqi)t01Qg|0^Slzf=HWYv%#EtpCWBWvhhGl@`TLvO^>>%MvQ~M zXl zzCjF&+7EK^_Z`maJLn}$;xvMlg;yYb^P2!xpR}YvF^D9(L}@#PcOZcanw=S;(i_0G zy+bydPib`~X~fR8PQ(WnbwKbqXstON(9@96q%;{3f4{%hYv9rZ&0s@5n@#Yj(mM5E_uf}6Jn<*6@z!$A?U{U9>5u4Ajs$0*dD} zFU}Nt%hZjo+61-nt?L9oBF z{b&+gnv?=RTbi@CMo~1HaGH7$emGz{71;0-Syk0R0xWW~^K5(XpJ#g;V*g*S{=Fei zHnN1j+Uvdj{yjf=oBW^mKYa!A8^{%BQTHU z$N;S^o6iUR?d|8o=RteWc|LgleEV|e`~G*FcXs+)TTlC2n-YvOfV;tJ_?YS6#@oQx zVUO+BUh!d8`++2d6PTOiDiVpZ&A_&C6-{PZ>Pofn!iOMF2C!qMf7={y|6qU(*f`m64XUEzn^*9?)!qa~0!Rnj zMY@S4I;}Vy)!3M$O{rUZy49|+YXKamTibrxhSoQOAACdq>MKAinBR#MCw)cUy?Ymv zKvF!4MGOKBRa5$kQP>9q4PO%h8vsf|DX<*@HOYzC==ZPM2Sfh)3z=5nL7*x7USC$G^HhDg(=k%Dk6oWoTRfD?Q^LX z@}9PKzGZKYUcCk32IZs)$f5e38f6O75C`o9Eul2nXs9$8Rjxllam|nz&WcIH|3|SB z?gmD`nk!C_Jw+s@p2N3`ClwO`!~Yq@81ur*jB zbtp^x=#wZ z{7KWqk=uPhF-u^tOS?x=2!v0ag|^O;8UFyN#oTt6OtXcs)(@pU0aFyHP>A38z<4>E zUUJf9v?hqe32f{a&e_xN+uyS$d=;#-^L!h=3C_N2n;3FBhD|D^(se+cCgM+nYSg#$ zUqZj!ZZ|4P>?@cn<;HQy$wNdXdZD^JG12bm&Dp^&dod#&EYq-Q(VG$nkP}OFilyUd z2C4_BcBm4fkAu~5#v5#aiW6~W5I?X+r^N(sX%Hz+fUbTC1Et3Wb#(k{&q|clsUj#- z>xaDuW&?yiHt-E~1%gp?*P@DxX+^`nE2ZRAVs?gTrORHz4tZBvG3caoM-U+=wg^}n z&brnz+zs9&m|hNo9+zO7jAsG#a1eLft#-S^77>D`*f+BbQOvL_re6_famu?_Y@ zx*|~^vFMpylL(cv`a7W0cTMuYXEs4m}WWIaG)(h^>@F%BQuy`j&Jf-G!Wu|xrWK)hh2q!% z5K&A@PVnFoUDk%oiC*MjGEW6k|0K#XvO#j-!vkrz1tC{T8isj^c6DW4`f)yOYBBFh zq#|SI#JH@!-K*W9Q8gX=B3q;j96P(q-*w!;AF1*j^g`Ej(A#QnwR_v0@3uSbrxuF{ z$fKZsblD%(-iQBK^)ivcWIFY78GRRRL1>MY`bENNVr>Xh(6`0~gfP0YUe9@uu;Mii zzS(M0 zSfmSAz$ifcX9Xn&5CL5W7*%2O(nA(ZflE$6HBuoCMX44$9Fh`u4ReG0fBu%|=-mgD z1PL`zdYUAI045aFi-iAshWee>xY6lXK%{*Tb2+`FfQGzNve}^^TDzQ$ zG*>{g6$VJ~B#DxoS6Jkn_YBQ3WDvdvK_Q)SUHV7T1)+0sluAyC{llLiOp#R|+JiR8 zMu6?KK;I#V%Ki>oAE|6e^&%Xiw?hWgs7hELCJROgK$B=N>+``91MuTV|KxKZ@j<%F z{(*wV#-Vm`?UO+tE%AGWv&-=gH1T%?%wKh;pEl9Qf(yE@9a&ac_`NTAE-ZUr)h9ne zpPTLc$U!=SzlUMQClfKE_X@zFG4$gk0?`Hy?2jLTa+u+pUH0?QKabx0a`gDoKDzJF zJ(GY`YUuXT#*5y>r?4&TA$i+{&!SlL@%^dvVL-Pw4-EeTyfJ!f_R@xKhB&d$^4Tb(w>e|9?0*YO_@@p=5{ zR$&ep>$MJRScf%y{$UM|AFaa})?o}z7z6(A6NW2%sxXDWXn4X$2}^kRaD@8}L-^R? z2M-!{@Fxp5_*}yb9zVM0u!7GooB-rlH+fP49QlTfi(g{37?e&+Sgyj^$?exYx^W_1nACsiAvypMNH9 z^ZRv|SGma*V$eTcH~3xM-*<3(D-88GK_w)z2 zrSHofz1$6*Bjysf^PkDxO#S^Z_cDR_Fn2P6_#pQ&LAXzMv0Q1#J^a^q3(H{_ZeYTC z?e@K!yZ5$k-n+YZE8MzO?%YLg+(qu&+qiA-?5_QfA#|49v7eP2_Alvv#s7V5{}0F& zv$)kCjvm(k1D_rD{O{KG_WJzqgM7~UXw*YQya2@~813I+8jZN))0Zv7UC;>SQFSiautVSBwE=s6NV zgQVL!NwPGNbqNt)c56s{HKiA7$4QNdQ9qT!YPVJ`q}nBWln((Q`|=^^qQ*J^N=2KoPcvB=~%ip_n)Ft$)<)J&ZMn%D%GQ#(eM!GdCCQ5gzpGRFm z>%~OZmIS@kj76#4J?6~4Ae(M_F=^7dQX>_h+AY9uQgc>@M0)Nagd}u!QVg_@{_VacA&rh-b6e)4fI>18tzth=iKi!t` zpU-!;pTokpJ5M{$*82a0e7<5E-)x|13^tryHp_+^-{BKv;-n9NL_0(GMX#szfq_8l zui=WdJgkO3p}tBt69UYVxe};ze_0Dez(Un1TztvnNBpMGT$<-tct2f8ShPl8*H|vTFQia(#EKK{REU5 zs#esppG;>OvI3ln(X?ny4~Zs$Bt_|es-2R2Q1iVPi{A^X|AM47C7BwIt*y5G41sOi z&xG=)>Dm7~db31ddM>m+Gc4AV_oN%EM?S%uy4jmuRQj5ETuZNT#ppMn43(c!PkPt8 zxU#ZEtr#lw`UOxb1{D;w-Mk~@BL$q2-N{{)GUW8l$&nrqe)f`4x@)U8X1`e-`q2QH zI>vZosQ*Ie>ose5hNUYW95fFOn}-K2b`()SLXat7Mp>W`m`M>*jP_(s9X&WO{Z*wF z?dj63q2!6ZB$05ph)f>vNiZktIQq5dmkUu%HM*~Xg4rHu#V7!Wxf2aUUFl>%5{+ir zC{iAW+^2>MA%nC{;3uTQyOV683abZ663nq#{OdSJVQ4%YW#iOZd9w*IWEQruZb2C` z+`8^g7?z+}suk?2I4&;r(ac7n8@VnU2b=KEp*3=Hn@o8S;xrC|(p+sUo-DI*459-j zTi5IHw=VJ47H~As0{qbz2x|t|uWAJiBOCz~+EkihilxM|Y5j;dw8=*LKGAK1F;+)r zIKzlMM2Q5kwNqQPj9qhYXpPh)_T*5E4%f@J1P=){^}zKPkuwDS1vq=RV*_iLtNE3r zS9AS-0lrog;1e(INUnJ&)cH9SXs#%-QL9Z(x%d}PUlAKJlVD&wYd3MzXtKIH8;!;S zU>IeIfhl!wwW6Xjuvv9iXZV>8DbPG$ZhX6JIEjL+sdmrer?B4&z1J6;O8H=xQ%98REN1*N7G zFYG@Xhn8gkC*csvp&@_5jZRR&ai#)C22vkH0XEExhVwD$=|DQ@^^g*JJ=#I-y)vDF z%u;W(@*>7GW9b&DdXgAtl$yxEH*_XByh7IDc^z)ospe5s(NGc{(S)Gs*Tt&_vx7%mt<@x5)IV>pp|N>BY!}(*C>Z)3+jI5=U#*vnhumm=wg^{ zWzd4TQ_2csr!vM999NX#!A%`vNbISIWORXPQ-TB}e*q99auJ?D?P;;UdO(oHA_oD# z91y{c3!=JavnNlguWZ z?ZW;rQcNm8^P=@V&^|I~PiZI#umAd+l*r>K&Fa63Mp0$89q*bOvJ8fv7pk2r#~T~e zf^b;3mOTTYjnNFCFh-Lrk5tRGQi^3lA$6;$%L}?*Auy@kEJ&$d{l-Ako2=J?w>Rgz zpj=#-&-K%e@e~^G;S2cN!Yga)j*dm^NvBou8X7cUM4E^^C$>?IQjv9eZaS0$k@9Fd z>JuK;sm=5DMFYnRsER?k5*&kl_ZTo>!&!ZIF%al)1<8Uz;Z~BO(*WDACDZ ze!wTd#`PlF8{RkU|5gXb*KacHNq*2|+pW}f(funF;lk;!+4AFc6 z+P)COAt#A~W;cvfC^a4ilk!MaJLY5(f~xP|nxnR{^*EV@vR{;M03%#A!HSTgKJhrW zS6uopCK=cyx`y3DQhRCY^+cPdkQm$SQG1#@NYrz=CSttZU5OWz9syPzg)!aRzp)wF zK5x+v0D;WEXEj>Ulg@?TP+&|bDLZ;=$f|aRl8$3$QV{MWFIC;W`XtHueo5~`8T+l& z;syPv;L^Zla^MyGzQgr(2o*yfKBE$ zIL$pcU^&!d8yg!x6n+v}#vFr>!1DJ^Ly&T}E=5xSXbZmI@jogn!w2DlET>;j)NHj4k60-(zA4ZtYra0Or12HM>n)z-E zo?~$wOCA-K^630d!l}rm)25PJlGR02L!GdsRfE^uO>i}=Xs2!`Qn_mynha$W(GA{@ zXls~R798$+NP+kRrliDz7fyu5OD%!A%vZl!JUjVpO8MIWHg9NI+yo}>C|Vn{q$GFY zk=z}z+wljIbS$J0Zm9pOisQTF4^t*$EZ&bMvuXHWcNEjboy7F!2T1AS(@5!Z!Rpmg z`G#Y;`G&9w#q)0#i1Hm0-lgacKfYxhV7`SB#q}k5y=k9Dz!#Q)FG>Qwcz6L{tSI1% zk1XJel?8lp3jyDl&?@mH&mz_mg}rkj!Lc=tzw#NadDYo z^FeZrRoU4%;$FXWpr5RRO*%Nv<}&q1d4eBvV;DFC6e2%EV#&@Uz}5%(s@FDurv^D0f_S2rrrzgPWoc=?srlW9WX6~(vt$)L;Qe&~4`rxB zt49e7dOh^0q3P$LRouz5c*4Dui6i^v;IIk*9N_)a2kPLl z)_n6qXCRrM33{t0NnX@YcuAXYT`e0U9?8|Dtl*}<3EI=I@?x#ZsJ7}@v959lSTTIf zrIBLY+QC7sxiGw|tKv(p6TIAVoZ!}9^CV5G zHOi$HWl{P%RXLQtPGttAuhSa)n$`PFcGYB;jS@H;nQBI=rLR*3NW-y<0#H3SEwc7C z^JUC`3-f)W0wur7%}!Dt$pawsus7pgEnRZZla?TJvGbP>v3i!!f+JRjBNo9CEBD8T z0-1b9;Y5r0P$_KA<9gR|O@_}_{}ARI3S9DX!yDC^`NF=q5lWt}n8AatvBL~iI8RLD&frjf@fB+7+^3rUnADMPm$ed#5(qL!@m61}K5{#O_eG`C;* zq(QP$HnE>g6+hO@LxgmY&}+hjeavOumwBS?P$Bh()Wcj5DkgVe*whC)O_-4!sU91y z780wh6k=)Kb4NCmqGcXjuId2uKX$}VbL4sd>L^EIte9g5YdZc6Ln+jCHN3JA>CTiq zVu`0%7X%-vG-v8mfo^1%VFzImF{7R-e*2=6oR|tZGu_gSVPsL!6VNrrW9TO)fG(>Q zqI^x60W27@d%M090E;6{(8g0lo9M-(cOFo`Afl>oLVpwb*;)QYzx!4Fee1VYq3-pK z+sWqt?sBDg?Ml`Fb6QYXt3qEa>)(4RCRf*dL96=8#3EC@dN9&N0USoRY#h*dpj;?lIgGaTCMO0)K75<{43|07{o|Q_TRTM0>e&%odSGU}+-ePav zVsC2~%cxOLXU%hbhH|zV6o#qg=zN^e4g}lyRTgH}H2lAohLL{pz7j6OW7ahM;WUh* zw5|Di1A(153=jd#pWd@B%75q>w{PRuDZKU@h6De4QCzPTHc+_gSFbPp?HgYIh4u6E zGiT-dNEaB)OTMhvxy77In++LiT%)%}Yk^FzB-rJsY`hlkYhl(F+@s+xVv8mgm5d&~ zu)$2MiZ^A)z%3#NjpfeVhB_k9kP&Y8u;Ryhe79Wk!p_@4BQFM&`Nb>$V+()`uQ62Y zxqdeH9dJ}Fnifp8a+sx#*9+r?l?>+0z2_!0$v&+xLSFSOdIs$buRWn-fSb_DbT$#y z=0a^9WO;HLtEVek51|YG(3Yj=7_TTq=c;EAp33l`kGz3KgduJoxy-7C*&hyzqmL>O zoGze1r^{5Nun+dfyX=quph4r0|I}JCZKBtrKWkE>x|xR8fdHDD?&O#G!OC5KM`4f{ z+*v>bwt^Ag6mO=_^lfN({#k+v<~Nw}t~U_VGzVn{(#Y@$Sb*ll&GZeR}pXJrcC?q$3xcjWn4>Wb4Z_yFrBS!YfUvJb-IapS?VaCyTvI;v9^f$}&~a~ftIDTt zRZ$9Mv^a2&mwC5mlW^F!BKfX7`C(Ii_a=kwuH)a7?6$>+wJpkR&#T+cqO50wDqHp3 zxv}4Fl=^SK|JKGY_oZ=Qz_WGB224fJao7LE1I!>ekb-KSOrj_<)&)pJEKjZ8(NT6N zPe#K=F&o&qXYzhvWO%a9TPdb(SGKo*Q%|X8-L4VJHZ54Hh&ks*sn4I!exNn#wkD1b z=a}N|9CKdgmiecjqnT=9SshYRV@3q(_%~55hf&S9# z#8H?H#UtsNk3T0!9cQ!h(;Zp1Ux zDZil6n2c;FvcDRMrvOyyxhvUjtkbfiw{gkpmr*paS~(obtB6&BYrM?+lCxki-~$^T z7Hd^oY}Iu3D#J)upER@IzxFV8c9l&6PbyF7xSNioE#Ee(Ea(OJw>J1i7ogq+{D}>I z!R4rTfj&%velLzv>A>N1UL`ju7DpB6=0*D=RpZ3Ht@)I1QZ0uiFH0A=ijh4AE@b5@ zvu@(96cHuYC*JAklRrf@5exap%x@^zI95UuPoB&PCJ-oOm`?_8#; zC|CXF8+mBYD`B4IbG*4IQrn}F-X}Y~7nbS*d`PbPu$=WHa910ZBuQIvUm`pSAHxiAB)fn#PgW4tdySWOJK|w7j}Z4_Z;?MnJWXxOD=5-G)mA78}8mc#L`8v zo+sTw3S-Z*gtWD$0o*zq?2k~8qQUuYvwhKMf{0;79mvoGJV`NQHHT0tv*vn_67o%* zI7h1MORg`1_Kesi$}N{m z1!aAtyDT>6?P|qN78hG0>LYux$8{F5ky-_0n{rHg`=EO$rM*!HDwSRRPI4)yOXZt0 z0C}Y}T*g`3f?}V~mG4H%^d<{cBu|>ox^$Zc5gmTr2Gr6={mWGvi#sAdPDjMjjv&)t zHc8D=SJgct?UKN0y3kO|FvGY!*;OPb3IxWCB74*$`!b8$z8T zMSq}@Ww~*mX0}N87@Kn>?51}~En;k%{AMQXFAt`0=xjAWY$#Iu=a)b@`Tf-yZ`}&) z0Jm$VQ_)PP+>901?LRwG;&K#)y;?c3TDelz3kMffDweLN?wMwx_EQJHe{Hh2-s->l zYQHVx*vlm7>u5ri71dM{bRMaLje~MZ_bPta!aK#nLA_3~^B0UVk2WaCsNq5L6WeoR zzb4!;X{=T4#xm9(nx*BZzi0C2uk`O*`gcK;K*M*PRc2<=lG>DeYlwO}fRim_&8g@CMko1TiGZ`s9pWfxZnJTNku$gT;aYZgmh zx@PK_gSzp>&*)^zNa!dwAbmQtBpIf$tzYtfGzE!;l6F@BD0h9=a)OXRY6p=!E7>}u zV|)C%SI7wel{Y~7bZ@ef-_0Gs+k61k1>GohXT4fyLZQrv1KMR__FE~Rjma=v^~y;5Lle)Aw< zl?M8kQc^#h-t}k>!u-rZWXO^i|ay`Nu(;w=iz2iAc)~q`uN<2ll;2aolG-iQ2QR!%Xs7<33_XK4-V|L%H?WuIo?e zx|Y7`5f=^I!(X( z3KI8M{%r%K*(n;K(_reE3e#f0_Uf;_`fIN~dG(b)pL{{evkzF2AB@M0^Ti=~cq7nZ z76OI!dbCUTdPsAL{JIJ1Mn?Y6Ry@D2Hrnuc_Usw` zg^%;Mv)y^R{RRBn-g*9X>)BIy-r3&jw7+2OhnRpFh_ne~_cBOxaDS4In8r~ev$^8Z z17na6V$pw(_hGA_;cObuS&*_Ye*7rESgnQsFjeGa7D}7>j~v)fKxs3JlCw-qQeE_T z5d8AmamuXV?Obin>b9y_%ZAA=iU$^@cnE7D~HMrwtu8EYrq?$aS-*&L~sd zjxL8=co=~TlHWUud04N3Boa?}&YWBE`$?_IYRP4-fpaocJhNW*@6#o=2Jb((>F2w- z@%S(t`yQWgZ)qHgu>mNlMrV0Kk&H&unnb~%K5STFU$Dk>^Q>O*7CzYrT}}H+C<+3Z zKr#y{4nl`hICg#M+&Bq9J9h1JFi1|WWCIuK4Z6iyT?&;?Wxdvte5YpXOxFCth*pJD zYuvG;3VZ9)R9`#xW?HEDou!L0=oCnHEGYfjZ&m3QcyM;Mm9JkSp z(m8ADY*l5xu!B9i)Qe{2fZ~PIZ_T&oJ(+B}PE1TWzM{M3tINAvZQt`*x8s^^n}3a2 ztm0K4dpg@6dp^}h(eeg$Ia4YBG*=+851GkX*V={_PUlMKmUHV^ZmA!{t?lP(lWvV+ zgYHGMY!uO@$FSjeW>H%~tQk;O7d6=>PCsny-JK>waCEzM?J`J!VWq(pABs_zZlwOm z2=P}RQgJo)Utvhv`ccR@y}=w*R*)7wV>3$8HQ8x*p_pW|04Yo;y7Td?p$HcjuqLSa zkc&PP7;e=|aJx`b=5sU0;yv#XC+r$A8>T$kuu+;@fmsE?O7p0%9Kb6?F0uO_3%usZ^+x8km=Vr+zAKV4NN2RlTSwQOm zc76qn_cLS%!yt@?0fs`}2iv_C;UKz}oVU|{=*do_S<>e{;A%+}&p&WHDJ)wrzd5YC z)m}E7PWz$GG;c{rUWVmqgNai-D5Hw@XUP>uy~ix2Us8{XeoIO9hPr-JxHqA5 z@C3UsP(Y^fq?bj}1s; zJh_7W@)MuHw$5bvEYjvD9G?}xMEAvyxw`2f2eHD5XER3X@1)`Mr#u@+gQD(8I@HkE z47(M48_Q`9 zEdmxQoM<}UbUgQFH_`B)T>_}?eKRtUtkY`qZKwC=yL3SArlD>D_S~TvHxZqA2&(ld@R$XkIicoSH;joA8_zrt*Z%9G%dPn>v8XN;xhV86z5PkB=`pllpu`nD?A zKtL&*@baa%K3<>~-CYjqnj~SHAA}agIz*_TnTMC^cuJ`_`Pr~Z1<*MyoiW5t^op~8 zE(-0I7)Gj(*C-;D5i50By^TVDV|gFw>g3-=T>l0i*hPNB!){1%uY;TVZy01^KywIx zaMPpA6O#U2&TH}pD(8s|R)TmqgiPi^b@>G zNlY%ofRTWa-^^v2pAC9H(HlkOMw#PxHWq5Tw9enJa4Y>iZJ&6X+vmJ}%Hb{AJ*z2r zmVMf7)ZWjF8q(aaK;3e?#obk0IKy1J-$t{{+HWf;Np=i+-?Jm5L?DqoKUF>WOi>nph=s1|$S=9Xxdk1PZ^JnM2lCvOO>Iy=%Gx6amy&^$Mg&XBlp zcggSmHqSzW{2t^uIh(RsOo>)jx@ld_j7dnUg@0+NeA|t=C`El-I^@JEkGi0hP6o>_!5_~!Dd7<; zFgu&aT&7=3!x(4MOyg2NIA|UmA{HGUG|DH}m&NV?$yeL)zOCDwL^32 z!9lH*(*bJlk0aQ;)HaBt2E6kR!D&h|*B41}tw;{IYc6?E>Mq1|KEhN2w9`&G$R=uS zyt5sod4v&eOaQbM$38ESy~{<@x)eX7epi8S60_#rd=VYvb1O(O`iNGxJSN?loScl# z+`j20jcFOeBO1}fUsHf@HQ)b8n$YW9#kR`LZj1(&}*ZWdU&nNi>6zZ{cP>4c>FQLPdeo>9H11!Ox+9iJaOK zuu=K3L5(KSWiTn?`7A_G^DvVQ)YY9DohHg3b(c{6iMa>-1~74kgI%fNo)l}_9(uJoC{8IU18||o?+@yIoNYq_o9(^ zfmYmt>v63{fDe}wD>zV5u&&hVqod7xT-H~+mGEhFRh6_x?=z)?!7|+i)}(1nxytRP zCWywOo3mKI__F)klIbEch(X8DLh|zIu!2a7d9e)({vrA%rCHiL^m46`U0kX`4lb&B z=~f}@xxaIZPEYp+_9NtrRHkQwqGhU?v*Ga}UV2P8lTC{FxRf zl#eSw8`s2DP}xB#SEHB0v9dYvJNHeH;IQv0rvt5}SMTTjm6N*4VxwpHN8;_cguMZ1gMF4?|6n_b&G z^Ew8gdg`%6K5W{jok_6wY5#1v^X9>lU8AdVz?0duFytHK_vH{=uoKMv`~Hr@|DnncMI^5|ZBpQnoHcckl8jSVdon4GV@ zDBG)1{=9wBkkpqOcziOh(-rCVp`8b&T#Y9ONr^@q=j{uhf!=|%0v3Acay2YmgoH_S zonzn%yz%qEKz~P3bhs}Z#A&%71nhi51O!2M_nr_iPG%wRrKrzn##zQYCtcev8&0CY z4cs|KNX~AiRH2ZMf~u7GEp}#j4<{U>`o^eKm@SgS8dy>L4rp3Kl3rmoRab*! zucB)Znbp%g8`*NyriM-ONb`QtY^dFE`A{qHTw{R-`nRqP0WrsV;6akr_DBrfoCY^N z3)&sggPrnBl>@wQNjaE4_&?3os}2+hmW<^xD(An zMWB4pBVmmrGvL)?kP5~fLPa8KTvBgNOdMn$iy|#(wDv}eWpAf<-Fe}Sul5`Imy5!x z>OyW3P`?hl0SWyenc&}s>uzjP;1&%28t{YTR3Ndntt^!aoEZRy^%|v9EVRA%q>+1| zV%DtfL&jaXhC$U?Po`KbjbSujcIDU3#jZa=y4A7{byJYtgq8|tO4XKNk2n4Nbf#E= z$~B+=$`(h0r4n4>bkf)8Xsg?35vuctnGwVEy1(ttY8nXu}SF< z1i|7*t5fc>$S&kn{a*FOAhJCEO7=KXHxsB3v6Z>fFTOb};>)s1mLp4gVy9@@ae%Ob z-q@75#c%Lz00}tU%o{o>Isr z9M}-+_!OK~x0%)Un1$=%%E)FsAECDHD25~Fmk8ChaNqDcCUiHP#neAaQ=6Ln%!)lq z^Qa>6GSHastbH}i}Fv!$29u#W(519PI6IdBfK;su9%xwUFi0bQ|ttQ(sqlvN5 z4V`JI*N%L_a5bm!Topb}qRZe?OfZdH!?squ1RW?)&O|G&MtckfK^7QE9ZBdJXs;pW zE%8l((~mKk5Ip6GK+>+ps3y=@2z$<4rmADXBp&1CK+o_-!AX>KpIkn1`hWc5r4iE& zu$%C2a6?JWakj+Nyem|NAx)ssIOy|wQ32B~-uTC24kmY(4u*BCBd5a|E+rI#w{ep_ zdH?tHsMj-T0~sn%+fuu*<$~Z4H}DEdu_iv9DR(-w|q}PX9Js zkF{bwE-7R!^`>4c^SWBYoA(;(jHBziI%B?!dsZcF`vlz6YiwS#&Reoh$so&yQ2*=? z9Bf~*8unF{mWBYd>UV%IW4)cf66-}5{47V}I1 z|8be-0yh%PB{0o+EYGu+t_P+uz+gmVn3{UX;yQ{1)7d4ql`i0GP*~DTX^NZj^lZ0g z>}ncgTxK^7k`d5#{ifS?V59N=2GH?+TF0NG;%DQ0cX!J+`{@dja%%cg>HhK#%uB4f zeCJ)Qf}NjfTyP6a_y}#380}V@k+PW}SE`lh9HZPP!5pZyeg{hTP~?Y^dSyycBe~E5 zDa#`Bl6kaZSC`E(I)qTqoIB37fr;8L-!|P?c2cV7b|Gu!G%tbD+j|hVDrBankN)pT zP#UUhGKuVZ+RJJTx|Ky_)i3#bQG}SFPsepKo2x(gha3tmolLDFV zy5)N4rUhL7!zi*UCvN5LS|Yns2|?jeHP$a9ACKF5SHo6?troAGu$o{l31*vu?^ZURW1~>u?xt2PPx81xBQ%rxj$? zxq_UGq($5${WG*{cN+F3jXsU#JGHSJL~gEJcUc-xb38f2@yOOD)LcY(S)jr4O?1MC z9s*V*QU^+aDM`CzsFs>X?Q#c)e|4(Wk z&OL6+7bF$lA6vk@zg!Aqb^N|MKOm{zsGeUCzFK4^)->&)1)OqNOa--OsAUtK;!Ej0 zrxb${7xY!)h`)$_1JH&s5@EiagiD^CT_%^z>L|WgppNHxBLaYzzR%;vB$~q*158(C z-hKszii1JD39K=#Ns|reRt|VWgSV@k!(#w8(+<}jhJn`c4P|&imS&MXs{7U2KJba} z8;;7bKLZ_TirFDKD(xe=$xegVumZs^0GftrD=*fIg9!)5Ti@Ek^zCR$O?z07?1grm z5!4&=AcL3nGMY5q#Yx|H@gL_ofyRHF=VU#QDaT5863iF8yP5_!Bvd%f&}s3md-Xy3 z?^%#=@5KhWMG<8bw_g7;NP6$D)9xR&bPR0reQlSuTi^euDzWftY+}EfEYq-f+*MQ*fZOMB zkaVQGySqfXyE|oI=#lQ0lJ0J4h7v&rkS<9P7?2nc5b5q7nb-e$&)Gfu?%nRybMw1@ zuD+iN!E-^<_Uqq22;HX+AKVS;TZK1&*Kl=OyR+6q^j{F`#j#PPo(!FwXxfA@V? zCtj}Qh;j3p;>3KnuP@a&>0uerjcVw#4qveAM}dzZ;O78NcLjmgJ|Eo>*EQig`Nri;NEL~DqtjntTuyEkZwr51bH^ zHB3Fg>-~;kx4w!90yv5o<-TIKiw{$25zC2e6X*v5D2R#CMm}P_Y@AlA$#JwinVugh zUOKy|Rvdovo4&1nSFw zE{%G-cAowVFlVOp3s2mVXv~F!y_zT@1q=OhJS+AmJ@Y^|`Z(qWjFt+R>Bar62=R)Lf&??_8e#_fH&H!hN@Y}RasrFoRri#-5=_^M@ zWVe#pxh7+^f;-A~04E}JI9~eaLb17joJhj9)GD<*wS@S!ES)}-hc}>@et7HF;g0~0 zu|G8kORwhMXBG}xWC{vHtYdf3yJqVE>{K|KXkQf~z_b?;P0(l|kqKN%zidaJ{FoJY z#-hI1%u~9W2r*GYIaE~zeo79FB!!%M(~3<&yIMYX*ROAwxZ%Oso^*?dt`}coF#rl9 zU(+8?1%&F`AD6usY(}|5(iq6E!&6}{J`7CU6(b~i+by#FZr!(&18v5>fLFSe`sooQ zqQ(#D+!=n~N!#y@b|qE@B@st^EZLWs-S6Y*&xVXbq?w&q$j$ehe26@M`o?ml-}$%faM%Dr+fw;a!aj%ZJvdoA5X7(X*;}gc|5!J z6TLl^Z-m42XfV!}v;LN`Ue$5QI=pY{F)wL=U`s=Y59}G!TLyLP9XP}D3c(BAY)ShD zJt#3x%%M%YdhUODZ=>*|;Yx=%U%5U>K6sBOqk0ppt(zSTGU~I@L4oMz=R`XS3bd~X zBhh+Py=a!1P>%XPzp==N%Vt4lwXryJTn|Vjt^9%AfJ{6A9Yi-Pl8M(^%s5!+SE3G3 zlVX6HCQH5qSnPrwxF}E@$zUEoUwS{zQKaR{vInPhzI5pNj7V%E_} zTYDp(Xe*-0+CgjMF6n0I86AtM?s?)lPha#g5M`%{ab$+j7Ib&OIZdIjl2!QmLyuyI z)k(FNwEQskS$58yEMK$dWl^J!Jjco6odBsdgyPVRC#Lo8ojdz?u!g7RCz8GcpxQf` z*#L^1WDLv|B+GYUTm~oZZCeaXOayneTaxCM>w87;^xF1!*3hYAQ#x~#cW(=!CZY>F z)7GKX_IJm3R#LB%_9~)U0{seTNy|3jVD4@Pj{-jlMrv!SLOn`?lXjCUPO)8ubx^da zTaQ4YS+JTG-6}7Q_6}O#l+324x`&@vVa>n1QMq3Caea@`dM0M0<2E6eC3)%c@ZFB@ zPeL6bc(S)BS2!e8C8PPWeMNV3`})^u>+%Pr!rO#Mjc_-S&WeY=!&up=EyKoG&5-T9 zY*mJzZYJ$6nc@?5+q1#`1i6MIS(|6v{)v6@QnL-f*!lD=^qpjlD#z4U$5m1;2A;B0 zsD%==;&;5M=DTkN26%7XWTMGQm%MiZVmGq`C0t_ELq;&n3wMiMOR9^06#7f$76=Ro zcg2!ByhLz6+qrm|E1Jfuj^RsE?Os9UHmKIt>hF*#Z`2{K!L@~1FE=a~*P&GHLr(?C4t^pZG> zotz@Rx`JS-I;pN*>#rm}zj5Nk5qY%)4J-@#Ir83cikM z)bB99%a}#!H*c`9Ko~D=2d%m4jajeL=zaOEu^$nSc^pQIcVcRWhlQyDDe6lsBa51=icZwmsXAxKy2nSwG2&hCl3 z=tYOPp=`t_XfRBOFV7zZWZBj3TuRY~l4LSl*1pAfL%F#Xup&=`-0kmfsN$qpAkyYa zWf#b&n(YzdXwVXM{Pda_!-ye}J0jJIQ@hPSy4hlo9dnYnP?R8W8lf{PQ-UGEK zQ;=}~EZQ$xS`@UDe*}P%7mNU~&>eO#G<^9P3O??*2P>WlNCgO)PP@z&R~+>)bQjw# z6uc|E66jejz*HOOu#c|3YX?AIdh=4R|a_b98Rxl0fWJU!~=!L6`cwvQ>Lq?^Mp;* zbk>ff4PS?dpVa4=*S}PR*4`+F<*W-bglkMs+k&y_fKNEsVcjTUpQYmU&ucXr?1~!f zk`HZ_muP&;3i2@va&bvDjEcj+B?au`3rb{QX_02BEUd2CRX51%LmVS-00zGR2u#dcD2hPRV{?<#@En2Lsa_EQdSY&QMI82(at6i&bBHDePG()vCpHWb5 zWk`6Ay=kmMO@m`0x!Y#4t`7FZ?|NaE{7PPpKO%z**7fsO<%Z?N3*MLl_cD(_;~w7~ z%G8H0ar~23E_bfLNEFsk%_GI~X z=1k*>r$OZpf(boUcg~bEy=Z7@>fhUNv)QqIro-VkX%;mvfi@RIVZAtCK-8TyMl}52 zxukH0oGHp?K&;%&B5*zdboy9RhN(otwKm~h=!hD2;E@#UOV>=+641&^WoQ+op0~Y$n$zKvZ&25* zW2gVlu_PcPqkoq0SG73iXCMuHs0F*)eB?F=9GrF)xMxN7DmS$fZXdzM{QG`cSdnJo z}Sp`}mjn zsFLUye}R}_yi?sv#@xA~YSkl;Z2M!QkC~~NHB+A>|NSTKGD4|o+k5!$%kui z;t{<-foM0@gH6uG6);NCdm=>aMMz$&uYUphJOjxULnBBZ8e;oLf=iP_jVbG0l^OY3SU72VNSm4;;E^bhGy$cD?bZ5*CXc2iuiykGwudJX~o!j-3@g2eh}R zKbN*kS~r)x{u|zPv&8rPxre<{yS3<;`2s1*Q;3LY110MJBJiSSj;08 zLxER31G6P5;p%R#d2VeIY4o%c!X6QX|1B~7Bd$ucA@WgogBKH?TiQY|N=^er6iYnA zek)*LaV*(C-otcZ*&g2pu_IDjd2|BayisMMp5e3n>)fTD_(z4Jrs&Ivv;osaUnUoZ zK_2|~yqs1U#Ow(_2rbXR@}oS zf%OijvkoYhK=1E06gE{#2a`AS^K5+|{IjfuYRjUWI4T%sE1QKILSU763;jlbZLWxCNk@_A8W4K zT84)FZ%xTC@_NJW=X8W!I>fu4@jsSQ3{f?^32YU0#g4(N8O(ztlR zg5v2q>RT<}q~2oI?e{Uji=yO){4udfqna-avC1dhsx;6CJf|BgVnx<+!{#rS3SRFO z+37e$O#j0uB@6hzxN4Etb@s24+{U$8U1y~J0f9juU^wZFu$9dEg0VtZywnpr0~2P1gDn zo8We=$Z)c}TYap(x5Nznn>#Yb0&@beRwn?VTy!9gM@?(2Zup#iyuKUG-2gV_Gu#3$ zA^PiZaaX9;FA(?Xb?r%_JK4BS6EvtJKAegxhWosBXd7d`V%epjJbl~G747+{76)eM z6A_PG?5L(YN1sF&mdgOt28Z=3I|O~dLWILXzCK~f$La{KjyhfQZ~7K-$I zJ>ooEi0NTx0$9CfM9JRjOu)ysfIgpKOD>Kj5J5sk;+hWMdW2Z3{iG2Lm!nf~k0S2` zN{8x_vCeZisFbVwraWqmHebV5c@8vOc+4e~>0Pjcg~f2*f; zeq$wgWn(4VrWo}XuF3G27E*K_vkx!Cwc{2rUy78=97^z)+-tc(a200z@Le*FXQ3Yd zla@rsR%Iz{&_s3an=Ol2vsUoK(MUkxxwA#@XOg!aENxR|tRz1pyu`jdT+lqtxkT63 z-tUrzdbGWX%s`nN^v`g&O~7+taFfg+~sIcnT2PlW?006e1|+|C-BqX5Ht)}MWTm(k5! zB_sP?nr-QK(6%ey5TENqUhFpuJJ3LoPykV?pDb7!>Y#BrCWL#fk-{wtkv@a&1JA&9wqix2K0SB5$-SB} z9X_MJ)HLw}x7s<1cv|e`YN<01}D#$OQl5f)Q!0TUvY*e-u(BiG`} z!;hh#+TL@N5@hdu^v&aXDe*6#kRq9*&0izeueR}xb^xQ z)8Q}wdaowqd8-|BQ?f-ICMfFAF>%2(>1=I2NcW0ME<5lSBTk_E+6idm3DpwS3K7c` z!r@g6^~1MjW0W4vs9ZYV3Ji5#OYpJGR^)?BwSM&VaI;;|el!bZtTJZz^0p@x_uoJ*>2n$Ce}N=L zSfPzS4TyY)JIR%eem)z=am?RpWNJQI+~^$IMFk zqQcb-NbOomv0%U_wD$`*dvS>_PbOLy67e;SfZU3>UfTuh7PoC@8|OU;x9atLqF#@J zmn%v<$E?3ZGY_s%)ndAMQBW{-(3~hUb(My%qNsI_!Z#6qSW{D@rtCCCn|IeL!N~r& zm?CeXBcx4Iq`t<^+CIrQ(#|R1A%qII^@w3JylT=XA_3|;Bk$4ByKw3j(6@RDEw$iL zh;6E)x4KnryW5mCkq%;n8uI7C0$^kx7R~CcS&G>fV+An6T;9rIS8^ZS(4+~GfA&II zdolH`wJ-Dn(JAAYkAQ|MtEk=iv{9!rgfLSthh8 zq$o+gn*a)ocw}SQw^=uEP%1Dwk4|VxVupQW?d+d)w2Pt0dP=p6d51*s&cM3)g_p53 zbPXX>AO-o}vTx^LuR<$!-hr|m&91vLd|N*H@yg5C=CVRsKtzQQ{SVj@l>J8;JIw$u(}74P^8rZD$$09hErZnDM_&J!VSmDc+{ry_9)zzZB1f-e z&(G#x|CRl=x3Kv<2s@B>kqGqlZod2TI!rT2G|6%ty_gwviOQJx90_6b^X~} zZnIKDDg=r^AF4cL*il`0%Ddu9`a@U3(S^VL+%Sif)|tD!KcjU*hA+PFT1V2m{#^=r cd~AJgls%gH|33(E86