From 8b4acb5085c6a7fc0bc7be734440087d5d704f13 Mon Sep 17 00:00:00 2001 From: cyliang368 Date: Sun, 16 Jun 2024 14:55:01 +0200 Subject: [PATCH] include benmarks into the document page --- vector/v.surf.rst/v.surf.rst.html | 454 +++++++++++--------- vector/v.surf.rst/vsurfrst_benchmark.png | Bin 0 -> 43502 bytes vector/v.surf.rst/vsurfrst_cv_benchmark.png | Bin 0 -> 57290 bytes 3 files changed, 239 insertions(+), 215 deletions(-) create mode 100644 vector/v.surf.rst/vsurfrst_benchmark.png create mode 100644 vector/v.surf.rst/vsurfrst_cv_benchmark.png diff --git a/vector/v.surf.rst/v.surf.rst.html b/vector/v.surf.rst/v.surf.rst.html index 488130f67bd..db9a12bd63e 100644 --- a/vector/v.surf.rst/v.surf.rst.html +++ b/vector/v.surf.rst/v.surf.rst.html @@ -9,147 +9,147 @@

DESCRIPTION

map elevation representing a surface.

-As an option, simultaneously with approximation, topographic -parameters slope, aspect, profile curvature (measured in the direction -of the steepest slope), tangential curvature (measured in the -direction of a tangent to contour line) or mean curvature are computed -and saved as raster maps specified by the options slope, aspect, -pcurv, tcurv, mcurv respectively. If -d flag is -set, v.surf.rst outputs partial derivatives -fx,fy,fxx, -fyy,fxy instead of slope, aspect, profile, -tangential and mean curvatures respectively. If the input vector map -have time stamp, the program creates time stamp for all output maps. + As an option, simultaneously with approximation, topographic + parameters slope, aspect, profile curvature (measured in the direction + of the steepest slope), tangential curvature (measured in the + direction of a tangent to contour line) or mean curvature are computed + and saved as raster maps specified by the options slope, aspect, + pcurv, tcurv, mcurv respectively. If -d flag is + set, v.surf.rst outputs partial derivatives + fx,fy,fxx, + fyy,fxy instead of slope, aspect, profile, + tangential and mean curvatures respectively. If the input vector map + have time stamp, the program creates time stamp for all output maps.

-User can either use r.mask to set a mask -or specify a raster map in mask option, which will be used -as a mask. The approximation is skipped for cells which have zero or -NULL value in mask. NULL values will be assigned to these cells in all -output raster maps. Data points are checked for identical points and -points that are closer to each other than the given dmin are -removed. If sparsely digitized contours or isolines are used as -input, additional points are computed between each 2 points on a line -if the distance between them is greater than -specified dmax. Parameter -zmult allows user to rescale the values used for approximation - (useful e.g. for transformation of -elevations given in feet to meters, so that the proper values of slopes -and curvatures can be computed). + User can either use r.mask to set a mask + or specify a raster map in mask option, which will be used + as a mask. The approximation is skipped for cells which have zero or + NULL value in mask. NULL values will be assigned to these cells in all + output raster maps. Data points are checked for identical points and + points that are closer to each other than the given dmin are + removed. If sparsely digitized contours or isolines are used as + input, additional points are computed between each 2 points on a line + if the distance between them is greater than + specified dmax. Parameter + zmult allows user to rescale the values used for approximation + (useful e.g. for transformation of + elevations given in feet to meters, so that the proper values of slopes + and curvatures can be computed).

-Regularized spline with tension is used for the approximation. The -tension parameter tunes the character of the resulting surface -from thin plate to membrane. Smoothing parameter smooth -controls the deviation between the given points and the resulting -surface and it can be very effective in smoothing noisy data while -preserving the geometrical properties of the surface. With the -smoothing parameter set to zero (smooth=0) the resulting -surface passes exactly through the data points (spatial interpolation -is performed). When smoothing parameter is used, it is also possible -to output a vector point map deviations containing deviations of the -resulting surface from the given data. + Regularized spline with tension is used for the approximation. The + tension parameter tunes the character of the resulting surface + from thin plate to membrane. Smoothing parameter smooth + controls the deviation between the given points and the resulting + surface and it can be very effective in smoothing noisy data while + preserving the geometrical properties of the surface. With the + smoothing parameter set to zero (smooth=0) the resulting + surface passes exactly through the data points (spatial interpolation + is performed). When smoothing parameter is used, it is also possible + to output a vector point map deviations containing deviations of the + resulting surface from the given data.

-If the number of given points is greater than segmax, segmented -processing is used. The region is split into quadtree-based -rectangular segments, each having less than segmax points and -approximation is performed on each segment of the region. To ensure -smooth connection of segments the approximation function for each -segment is computed using the points in the given segment and the -points in its neighborhood which are in the rectangular window -surrounding the given segment. The number of points taken for -approximation is controlled by npmin, the value of which must -be larger than segmax. User can choose to output vector -maps treeseg and overwin which represent the quad tree -used for segmentation and overlapping neighborhoods from which -additional points for approximation on each segment were taken. + If the number of given points is greater than segmax, segmented + processing is used. The region is split into quadtree-based + rectangular segments, each having less than segmax points and + approximation is performed on each segment of the region. To ensure + smooth connection of segments the approximation function for each + segment is computed using the points in the given segment and the + points in its neighborhood which are in the rectangular window + surrounding the given segment. The number of points taken for + approximation is controlled by npmin, the value of which must + be larger than segmax. User can choose to output vector + maps treeseg and overwin which represent the quad tree + used for segmentation and overlapping neighborhoods from which + additional points for approximation on each segment were taken.

-Predictive error of surface approximation for given parameters can be -computed using the -c flag. A crossvalidation procedure is then -performed using the data given in the vector map input and the -estimated predictive errors are stored in the vector point map -cvdev. When using this flag, no raster output maps are computed. - -Anisotropic surfaces can be interpolated by setting anisotropy -angle theta and scaling factor scalex. The program -writes values of selected input and internally computed parameters to -the history file of raster map -elevation. + Predictive error of surface approximation for given parameters can be + computed using the -c flag. A crossvalidation procedure is then + performed using the data given in the vector map input and the + estimated predictive errors are stored in the vector point map + cvdev. When using this flag, no raster output maps are computed. + + Anisotropic surfaces can be interpolated by setting anisotropy + angle theta and scaling factor scalex. The program + writes values of selected input and internally computed parameters to + the history file of raster map + elevation.

-The user must run g.region before -the program to set the region and resolution for approximation. + The user must run g.region before + the program to set the region and resolution for approximation.

NOTES

v.surf.rst uses regularized spline with tension for approximation from vector data. The module does not require input data with topology, therefore both level1 (no topology) and level2 (with -topology) vector point data are supported. Additional points are used +topology) vector point data are supported. Additional points are used for approximation between each 2 points on a line if the distance between them is greater than specified dmax. If dmax is small (less than cell size) the number of added data points can be -vary large and slow down approximation significantly. The +vary large and slow down approximation significantly. The implementation has a segmentation procedure based on quadtrees which enhances the efficiency for large data sets. Special color tables are created by the program for output raster maps.

-Topographic parameters are computed directly from the approximation -function so that the important relationships between these parameters -are preserved. The equations for computation of these parameters and -their interpretation is described in -Mitasova and Hofierka, 1993 -or Neteler and Mitasova, 2004). -Slopes and aspect are computed in degrees (0-90 and 1-360 respectively). -The aspect raster map has value 0 assigned to flat areas (with slope less -than 0.1%) and to singular points with undefined aspect. Aspect points -downslope and is 90 to the North, 180 to the West, 270 to the South and -360 to the East, the values increase counterclockwise. Curvatures are positive -for convex and negative for concave areas. Singular points with undefined -curvatures have assigned zero values. + Topographic parameters are computed directly from the approximation + function so that the important relationships between these parameters + are preserved. The equations for computation of these parameters and + their interpretation is described in + Mitasova and Hofierka, 1993 + or Neteler and Mitasova, 2004). + Slopes and aspect are computed in degrees (0-90 and 1-360 respectively). + The aspect raster map has value 0 assigned to flat areas (with slope less + than 0.1%) and to singular points with undefined aspect. Aspect points + downslope and is 90 to the North, 180 to the West, 270 to the South and + 360 to the East, the values increase counterclockwise. Curvatures are positive + for convex and negative for concave areas. Singular points with undefined + curvatures have assigned zero values.

-Tension and smoothing allow user to tune the surface character. -For most landscape scale applications the default values should -provide adequate results. The program gives warning when significant -overshoots appear in the resulting surface and higher tension or -smoothing should be used. + Tension and smoothing allow user to tune the surface character. + For most landscape scale applications the default values should + provide adequate results. The program gives warning when significant + overshoots appear in the resulting surface and higher tension or + smoothing should be used. -

-To select parameters that will produce a surface with desired -properties, it is useful to know that the method is scale dependent -and the tension works as a rescaling parameter (high tension -"increases the distances between the points" and reduces the -range of impact of each point, low tension "decreases the -distance" and the points influence each other over longer -range). Surface with tension set too high behaves like a membrane -(rubber sheet stretched over the data points) with peak or pit -("crater") in each given point and everywhere else the -surface goes rapidly to trend. If digitized contours are used as input -data, high tension can cause artificial waves along contours. Lower -tension and higher smoothing is suggested for such a case. + To select parameters that will produce a surface with desired + properties, it is useful to know that the method is scale dependent + and the tension works as a rescaling parameter (high tension + "increases the distances between the points" and reduces the + range of impact of each point, low tension "decreases the + distance" and the points influence each other over longer + range). Surface with tension set too high behaves like a membrane + (rubber sheet stretched over the data points) with peak or pit + ("crater") in each given point and everywhere else the + surface goes rapidly to trend. If digitized contours are used as input + data, high tension can cause artificial waves along contours. Lower + tension and higher smoothing is suggested for such a case.

-Surface with tension set too low behaves like a stiff steel -plate and overshoots can appear in areas with rapid change of gradient -and segmentation can be visible. Increase in tension should solve the -problems. + Surface with tension set too low behaves like a stiff steel + plate and overshoots can appear in areas with rapid change of gradient + and segmentation can be visible. Increase in tension should solve the + problems.

-There are two options how tension can be applied in relation -to dnorm (dnorm rescales the coordinates depending on the -average data density so that the size of segments -with segmax=40 points is around 1 - this ensures the numerical -stability of the computation): + There are two options how tension can be applied in relation + to dnorm (dnorm rescales the coordinates depending on the + average data density so that the size of segments + with segmax=40 points is around 1 - this ensures the numerical + stability of the computation):

  1. Default: the given tension is applied to normalized data @@ -157,7 +157,7 @@

    NOTES

    (rescaled) by tension/dnorm. If density of points is changed, e.g., by using higher dmin, the dnorm changes and tension needs to be changed too to get the same - result. Because the tension is applied to normalized data + result. Because the tension is applied to normalized data its suitable value is usually within the 10-100 range and does not depend on the actual scale (distances) of the original data (which can be km for regional applications or cm for field @@ -166,7 +166,7 @@

    NOTES

    un-normalized data (rescaled tension = tension*dnorm/1000 is applied to normalized data (x/dnorm) and therefore dnorm cancels out) so here tension truly - works as a rescaling parameter. For regional applications with + works as a rescaling parameter. For regional applications with distances between points in km the suitable tension can be 500 or higher, for detailed field scale analysis it can be 0.1. To help select how much the data need to be rescaled the program @@ -174,32 +174,33 @@

    NOTES

    fi=tension*dnorm/1000 at the beginning of the program run. This rescaled tension should be around 20-30. If it is lower or higher, the given tension parameter should be - changed accordingly.
  2. + changed accordingly. +

-The default is a recommended choice, however for the applications -where the user needs to change density of data and preserve the -approximation character the -t flag can be helpful. + The default is a recommended choice, however for the applications + where the user needs to change density of data and preserve the + approximation character the -t flag can be helpful.

-Anisotropic data (e.g. geologic phenomena) can be interpolated -using theta and scalex defining orientation and ratio of -the perpendicular axes put on the longest/shortest side of the -feature, respectively. Theta is measured in degrees from East, -counterclockwise. Scalex is a ratio of axes sizes. -Setting scalex in the range 0-1, results in a pattern prolonged -in the direction defined by theta. Scalex value 0.5 -means that modeled feature is approximately 2 times longer in the -direction of theta than in the perpendicular direction. -Scalex value 2 means that axes ratio is reverse resulting in a -pattern perpendicular to the previous example. Please note that -anisotropy option has not been extensively tested and may include bugs -(for example, topographic parameters may not be computed correctly) - -if there are problems, please report to GRASS bugtracker (accessible -from https://grass.osgeo.org/).
- -

-For data with values changing over several magnitudes (sometimes the -concentration or density data) it is suggested to interpolate the log -of the values rather than the original ones. + For data with values changing over several magnitudes (sometimes the + concentration or density data) it is suggested to interpolate the log + of the values rather than the original ones.

-v.surf.rst checks the numerical stability of the algorithm by -computing the values in given points, and prints the root mean square -deviation (rms) found into the history file of raster -map elevation. For computation with smoothing set to 0, rms -should be 0. Significant increase in tension is suggested if -the rms is unexpectedly high for this case. With smoothing parameter -greater than zero the surface will not pass exactly through the data -points and the higher the parameter the closer the surface will be to -the trend. The rms then represents a measure of smoothing effect on -data. More detailed analysis of smoothing effects can be performed -using the output deviations option. + v.surf.rst checks the numerical stability of the algorithm by + computing the values in given points, and prints the root mean square + deviation (rms) found into the history file of raster + map elevation. For computation with smoothing set to 0, rms + should be 0. Significant increase in tension is suggested if + the rms is unexpectedly high for this case. With smoothing parameter + greater than zero the surface will not pass exactly through the data + points and the higher the parameter the closer the surface will be to + the trend. The rms then represents a measure of smoothing effect on + data. More detailed analysis of smoothing effects can be performed + using the output deviations option.

-v.surf.rst also writes the values of parameters used in -computation into the comment part of history file elevation as -well as the following values which help to evaluate the results and -choose the suitable parameters: minimum and maximum z values in the -data file (zmin_data, zmax_data) and in the interpolated raster map -(zmin_int, zmax_int), rescaling parameter used for normalization -(dnorm), which influences the tension. + v.surf.rst also writes the values of parameters used in + computation into the comment part of history file elevation as + well as the following values which help to evaluate the results and + choose the suitable parameters: minimum and maximum z values in the + data file (zmin_data, zmax_data) and in the interpolated raster map + (zmin_int, zmax_int), rescaling parameter used for normalization + (dnorm), which influences the tension.

-If visible connection of segments appears, the program should be rerun -with higher npmin to get more points from the neighborhood of -given segment and/or with higher tension. + If visible connection of segments appears, the program should be rerun + with higher npmin to get more points from the neighborhood of + given segment and/or with higher tension.

-When the number of points in a vector map is not too large (less than -800), the user can skip segmentation by setting segmax to the -number of data points or segmax=700. + When the number of points in a vector map is not too large (less than + 800), the user can skip segmentation by setting segmax to the + number of data points or segmax=700.

-v.surf.rst gives warning when user wants to interpolate -outside the rectangle given by minimum and maximum coordinates in the -vector map, zoom into the area where the given data are is suggested -in this case. + v.surf.rst gives warning when user wants to interpolate + outside the rectangle given by minimum and maximum coordinates in the + vector map, zoom into the area where the given data are is suggested + in this case.

-When a mask is used, the program takes all points in the given -region for approximation, including those in the area which is masked -out, to ensure proper approximation along the border of the mask. It -therefore does not mask out the data points, if this is desirable, it -must be done outside v.surf.rst. + When a mask is used, the program takes all points in the given + region for approximation, including those in the area which is masked + out, to ensure proper approximation along the border of the mask. It + therefore does not mask out the data points, if this is desirable, it + must be done outside v.surf.rst.

Cross validation procedure

-The "optimal" approximation parameters for given data can be -found using a cross-validation (CV) procedure (-c flag). The -CV procedure is based on removing one input data point at a time, -performing the approximation for the location of the removed point -using the remaining data points and calculating the difference between -the actual and approximated value for the removed data point. The -procedure is repeated until every data point has been, in turn, -removed. This form of CV is also known as the -"leave-one-out" or "jack-knife" method (Hofierka -et al., 2002; Hofierka, 2005). The differences (residuals) are then -stored in the cvdev output vector map. Please note that during -the CV procedure no other output maps can be set, the approximation is -performed only for locations defined by input data. To find -"optimal parameters", the CV procedure must be iteratively -performed for all reasonable combinations of the approximation -parameters with small incremental steps (e.g. tension, smoothing) in -order to find a combination with minimal statistical error (also -called predictive error) defined by root mean squared error (RMSE), -mean absolute error (MAE) or other error characteristics. A script -with loops for tested RST parameters can do the job, necessary -statistics can be calculated using -e.g. v.univar. It should be noted -that crossvalidation is a time-consuming procedure, usually reasonable -for up to several thousands of points. For larger data sets, CV should -be applied to a representative subset of the data. The -cross-validation procedure works well only for well-sampled phenomena -and when minimizing the predictive error is the goal. The parameters -found by minimizing the predictive (CV) error may not not be the best -for for poorly sampled phenomena (result could be strongly smoothed -with lost details and fluctuations) or when significant noise is -present that needs to be smoothed out. + The "optimal" approximation parameters for given data can be + found using a cross-validation (CV) procedure (-c flag). The + CV procedure is based on removing one input data point at a time, + performing the approximation for the location of the removed point + using the remaining data points and calculating the difference between + the actual and approximated value for the removed data point. The + procedure is repeated until every data point has been, in turn, + removed. This form of CV is also known as the + "leave-one-out" or "jack-knife" method (Hofierka + et al., 2002; Hofierka, 2005). The differences (residuals) are then + stored in the cvdev output vector map. Please note that during + the CV procedure no other output maps can be set, the approximation is + performed only for locations defined by input data. To find + "optimal parameters", the CV procedure must be iteratively + performed for all reasonable combinations of the approximation + parameters with small incremental steps (e.g. tension, smoothing) in + order to find a combination with minimal statistical error (also + called predictive error) defined by root mean squared error (RMSE), + mean absolute error (MAE) or other error characteristics. A script + with loops for tested RST parameters can do the job, necessary + statistics can be calculated using + e.g. v.univar. It should be noted + that crossvalidation is a time-consuming procedure, usually reasonable + for up to several thousands of points. For larger data sets, CV should + be applied to a representative subset of the data. The + cross-validation procedure works well only for well-sampled phenomena + and when minimizing the predictive error is the goal. The parameters + found by minimizing the predictive (CV) error may not not be the best + for for poorly sampled phenomena (result could be strongly smoothed + with lost details and fluctuations) or when significant noise is + present that needs to be smoothed out.

EXAMPLE

@@ -302,9 +303,11 @@

Setting for lidar point cloud

different set of parameters is more advantageous, e.g. in comparison to a typical temperature data interpolation. -
+
+
 v.surf.rst input=points elevation=elevation npmin=100
-
+
+

Usage of the where parameter

@@ -312,10 +315,11 @@

Usage of the where parameter

use only a subset of the input vectors.

-North Carolina example (we simulate randomly distributed elevation -measures which we interpolate to a gap-free elevation surface): + North Carolina example (we simulate randomly distributed elevation + measures which we interpolate to a gap-free elevation surface): -

+
+
 g.region raster=elevation -p
 # random elevation extraction of 500 samplings
 r.random -s elevation vector=elevrand n=500
@@ -337,7 +341,26 @@ 

Usage of the where parameter

r.colors map=elev_partial raster=elevation d.rast elev_partial d.vect elevrand where="value > 94.9" -
+
+
+ +

Performance

+To enable parallel processing, the user can specify the number of threads to be +used with the nprocs parameter (default 1). The memory parameter +(default 300) can also be provided to determine the size of the buffer for +computation. + +
+ benchmark for v.surf.rst +
+ Figure 1 Benchmark shows execution time for different + number of cells. + benchmark for cross-validation of v.surf.rst +
+ Figure 2 Benchmark shows execution time for running cross-validation on different number of cells. +
+ +See benchmark scripts in source code. (Intel® Core™ i5-10210U CPU @ 1.60GHz × 8)

REFERENCES

@@ -346,7 +369,8 @@

REFERENCES

Mitasova, H., Mitas, L. and Harmon, R.S., 2005, Simultaneous spline approximation and topographic analysis for lidar elevation data in open source GIS, IEEE GRSL 2 (4), 375- 379. -
  • Hofierka, J., 2005, Interpolation of Radioactivity Data Using Regularized Spline with Tension. Applied GIS, Vol. 1, No. 2, pp. 16-01 to 16-13. DOI: 10.2104/ag050016
  • +
  • Hofierka, J., 2005, Interpolation of Radioactivity Data Using Regularized Spline with Tension. Applied GIS, Vol. + 1, No. 2, pp. 16-01 to 16-13. DOI: 10.2104/ag050016
  • Hofierka J., Parajka J., Mitasova H., Mitas L., 2002, Multivariate Interpolation of Precipitation Using Regularized Spline with Tension. @@ -386,12 +410,12 @@

    SEE ALSO

    -Overview: Interpolation and Resampling in GRASS GIS + Overview: Interpolation and Resampling in GRASS GIS

    -For examples of applications see -GRASS4 implementation and -GRASS5 and GRASS6 implementation. + For examples of applications see + GRASS4 implementation and + GRASS5 and GRASS6 implementation.

    AUTHORS

    @@ -402,19 +426,19 @@

    AUTHORS

    Urbana-Champaign, USA (1990-2001); MEAS, North Carolina State University, Raleigh

    -Modified program (translated to C, adapted for GRASS, new segmentation -procedure): -
    Irina Kosinovsky, US Army CERL, Dave Gerdes, US Army CERL + Modified program (translated to C, adapted for GRASS, new segmentation + procedure): +
    Irina Kosinovsky, US Army CERL, Dave Gerdes, US Army CERL

    -Modifications for new sites format and timestamping: -
    Darrel McCauley, Purdue University, Bill Brown, US Army CERL + Modifications for new sites format and timestamping: +
    Darrel McCauley, Purdue University, Bill Brown, US Army CERL

    -Update for GRASS5.7, GRASS6 and addition of crossvalidation: -
    Jaroslav Hofierka, University of Presov; Radim Blazek, ITC-irst + Update for GRASS5.7, GRASS6 and addition of crossvalidation: +
    Jaroslav Hofierka, University of Presov; Radim Blazek, ITC-irst

    -Parallelization using OpenMP: -
    Stanislav Zubal, Czech Technical University in Prague -
    Michal Lacko, Pavol Jozef Safarik University in Kosice + Parallelization using OpenMP: +
    Stanislav Zubal, Czech Technical University in Prague +
    Michal Lacko, Pavol Jozef Safarik University in Kosice diff --git a/vector/v.surf.rst/vsurfrst_benchmark.png b/vector/v.surf.rst/vsurfrst_benchmark.png new file mode 100644 index 0000000000000000000000000000000000000000..7e7ad4477a2e65251451a1a2487c9c8c4302a018 GIT binary patch literal 43502 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 M?3dUn=KAdT2iF^i-~a#s literal 0 HcmV?d00001 diff --git a/vector/v.surf.rst/vsurfrst_cv_benchmark.png b/vector/v.surf.rst/vsurfrst_cv_benchmark.png new file mode 100644 index 0000000000000000000000000000000000000000..7e7c927913d9f1501acd08a8974d8ab4f1546040 GIT binary patch literal 57290 zcmeFZhd-8o-#>mL8Y)esGFoPo70O6bNmll3*x8$`h7?I9$(Ay*Wp7awSy{;}Nyy&& z_dN8u?)!WHuKV}B??2#oJsv$iU2>l1alViD`}KOR*YQ9>?%bA544X(K(v}P7rIbh{ za!(S8tY-riej?D&@e}_MwmYkCciGa=&he^^0qN3JJ1a9wJ2R7O%nk-NwkDPqeB39v z1-O`v?d+^v$@Fp9r&TH6`NHkZ8KV-4T|ySAlAH6=wwrMP|YNo0PmbM|b*ZUxot z%fX(Ts5v(HeA&Hy+pd`N8#f+(J>P{E z{H><8BZhSmm(HKx;MnCH*FJM2CGTEYnPg#M;cK~QxljGNi@2Z<)I5a}CGN}jA3aJL z8oVzpOD>^kxn&RUT}DxtCVPQ|@OM{A%>-NR1v;84MVcLD*nNC_($u-^bpj`kL>6rG z3*sm9r5c*=kF30MY^h`#w+&D&$L?(G`w0*>+6LNWb(YTo`(0@`wh2m-yWNp`BlZ4sy{!`*O#KEto$CU zV%(m6)G#CXcOKHnXHw=Yh2Ha z#lekw|Ni|ke2*MnYC7)MShczN`Kwu)c~f65Ixi0AOfMTPbT|%wJG;8FJU%lMYtk57 zIP>jBpRWA1YX?qr+U*n*6T9o>b=>63q2lG4c8*!j!pDo(>mo!u+!u$}QBqzN3?;sS zp4)Vw)}Ge>0_$FBM(3Z~CC{AMxM4%jsK@F_!BD@XB(4g-z2~l6VZL?i)~V^H%WN?n zwTjJk<@O$C9l1|9Q*y~O+GMMrAD#ahAm1^_hczHA%#Nn6GUj(BCb-5*D(^ikB|6z~ zj)`5uZFPB;LqMQ;_{sCeKcmW}5Prq3uC776xyoqKY(xmJfzM$5 z%R5z{KP$_yPcKc@CHlCVYun46Kd&Ieo~8e3M{|+}UvshB&1sL-S&zZhmC@BE$8NW{ zXG*3uAp)Beuo>7Lm->SAQo3A*jtV$W=o_S~E8E#+x|_#5V-R;QET6TA% zX>FMBV0OF3WzP`Nn=^a5TWymscNe><1RS}ftgQUZW#SWSv&YILQ*-+Da|Zkj&1GKH zDpFE+Lj=u3LWFH&O}}NnnV6kz6<;6oOh!&l6`y}uQBiU51D&3-?XS;@xPJlU#Mid3 z$mfXJ6~&$RbI0x-JEC=6$IlA5E!Z_jpQXmdHPwcn3{;X4-nVu4?%gpK1;g1kmEBh5 zTM|?fRgDVo4Y`$IvotrW=_PkL_wS$XxkJNo=Ur4v-YR7Qu;Wy5Z%rqD zei|&A?YfLbQ2g}i6UV7j+Vk`CZ;T?{REy?+g(h4K;;y=KEFLGqV_`fdCdRbXlWda$ zYJuu#@nVWgU!Yo3R;zB}b8el4pn}Dbfl%&vf zGG#TB)8&Qik({?D9Y>UPb#(_v3Px2?aT0K>6R_J8UcZ)N@7uiXTc*h?sx1sZXAE=| z6r!$OyVhjisuO3q_k=|lFa2gyoW#DtpCZ`_WKl{o_Jd6qria^ewA&g>?92s2H&Ihx z4$`)Hz`@1URDDz{Tb9gpu<6Z0_IPh4r$o`*4_}M^KP}0jgIz^8^KOKvB-kre?b$%$ z5EIkw&NixJq-4Y1abKA?a$7`y&>Feu^5gvj4qo0bM~&5F-k^?idU$xKC@5G}bxvDa`&)``I_B_9 zw(8!zL^fE>Q__@^W!xZ1X4+R3XwmO9)o^Zil%UzyD9h@a8WnU&4iOQ}wqb{uXG)X5 zYA$=aOxB#JZbnTq|C)B1jDwrI*1TkhW^e1v;fv4NqRMVI_c5)`dB4?6PRPv6{KAX6 zDL(&mr<<0wb-K^}`&QJMMxS52B<1vErKKrkS#}r8kX=z3_4gq!C8MBH7c(nc9|t10L|A0hfO0%GplMi{o033IlQWIdJr-pTGDDJq?Y~Y|H+W4r!L%Vik|}UvzO1F)=ZD9TW2;GP2H-j6%J{U39BA zg?IV8FEJPQ2%4#TEpO#Cok`|KeLZ~mu-AG#=7_3yTrYpI1bk zzVorR_7_gA=+N}d>A|zJBc0RzHK8Z^e}!89YPT$D4lS%i)4=L>@oyPxGm2Ey)U4`W znaSZOszo)Rlb4rYo?o8r_V@N)-|af-rFJFW z&FXI5FY-P`r+}nh=yaTgh2_-JSb1N{XnslY+z)CT;=Gakp^mPMkxhM`DBk6&hYF{!$%T+d8{sW+x_{f*qwu0Oseo_(i<3WYis*zCTL@0ll$}OMef2M z{cOjNZ?~dSi@VWXEQ<4P*KQ~n3YcWyPD@X(o+7VgZ;aiP*VEeF9T^`VZ_`dH+WO|r z8+`+V3?U~_r+xfnropf|@ z9xp3De6U76S9N|rH_$phJ$;y$_icyr{@s2u^0Kma)c15m?0!d$mf*64ta?bp-?AE4 zh2DI`%3xa@;o?dvTTYox!ZGS_Xg4n$E2A!)Zqb?oe$%qZ^Gd&7d5t%i< z9$x(omqG>m7KT!detvwinekNa#EBoTeZ*!226=l{}4eI@^31$T%ZMV9ni&uv& zJreonMmq9r1)AzjI&!U-dYM*xK0Z0Pi;iv*=zfwY)9v#*rY`SO%fB;oaXrk<&D}Ix zK<;s=Q61n^e07OW&tqAj+kNrq&Lgr{Djx1x!q*1Y-9bx>vwU(6KvE<98YQP{QqL=Y zv1|AUSJVolq{=q2Zfbj$S?{5*tPxJp+JY^8Q_NG^BfW2lJyzM4ayf7|nIrPew&n}u z5)Dy+03(Hya!IP3{$dMkt1Gi5c>sNT#9W0)$(mW@rKVZDRz0OMbvqdte40)BP*#L` zr^zWO$Uat8eF-(|QKn5zN)X(eW86UQS#)#OW;m-gf4IHCF}1ivq)Gp>g9f%Tfj@KF z>*k6h{W#Nju!t*V?d|Qu)s9oY8&1u9z0Rec<_VH=N>p@@fN7JkPMpW;%EDw};i*SV z;J}>-Z1Zl?B-^;* zHp@C9CdVzI-A5?kYNo75w3MqKlb_C$(c7XUfx7ER)#GSb-4q zx#yhy3)Ee^6`qIt91<5VDSPPS?@yzlp<(2}HaaM4V z?AF%SI43V2KYq;7>WHmrv7GYjbMP4x6ZSLrHVY4>W1%TZmL`1L?f8J;K8K$S`u*Fu z=wg|9PN%e{rlwc$h1O*Oo1f?ZIGp4uno`Q+Mdw;D3JMO^;7WLF;j~nbRR~eC*;Lg}zR#~|| zsw4ex!Fx)!Yq|wrdWuU%1KTRrp!)fruA)$!UaS6aM_zQ5QsFvPoW74`#>Q+HE?lsf#;2bI!2XVvjkOxm=4E&8CQnE*OW*F5`^?1?gvZ*=XTob&DwA=k^wvaIYr&fE z-kdR8m>TF6EPcrvz$$O}?l$FSaQJhK&Ud4tn8jA+t^>Fdy$?4ewVO54wd}gTXa!Hn zQWEvVzz~3h?UVJ2YOg<3ttbE}%V*Q=5 z{(JZgH?PiBir;_u@DMk*9Mea;Y}rOtZG9J6Yw@Od5|o z+9&)&aQ$zu_`!Z_ZoHjOgRwrox4x0lb>84yFxLnE{^CPG#90YWSPH3Y}r`u@{y z8+Pa5L^Y2ZD3WdH3ZQhC`=U8zJh*~vcedN2gMjOt)$V=!l7O;I8=}1!gl%3geD`MR zcyvitR=Kyr?=mV^l|JvA=SQ^?)-$;(?53j|G63y}B_Iw#G65l*fjcz5^B)88G5uZt zvZ}65o@`-i$L>o-FP|wzy3GU+0vGcJ%W|->o&Qi#k#O+bqujtfV1yInJNbNJk(_XqD-o3+uImk2ETxard2lEBY8pn%fy25g_I%d7sK0`(+8o zy%5yeZm7i%m(^k)$l&+A+`F;R*%mun#=$|5DAYHx!R)^6Vv$;AA&c4;eL9rSXe;q^ zv?qg=rFnauaA|}3sMD@v@7BNn@ByuL;A{Fp^te-T>`r&L*`HY;t*N*CykFKUtVy>| zo{;|SFQ=L5O21oK{rP%)X=%yS+)srNe6{IgcID;e@tb^+(o2p@e?l4~-*?jCAz)#C z%01}8EVbphTod3$9ko|-=SfavcrmGei++~oP_7`M6UY06h3&&;of;jlI8RDlw=*K*p2@;M~Ko-`Q0 zFE4+kI6HoF@7gbh1=bk$&W-o(+O@06Ugd854ogeR0|yU6e@qxkXu7!eSwaWB%TG&6 zlA}o;xfIgV*LOI0x1uF`Oj?`S>)6<*j~`3m<}eKF*BKqa5=-9ad)sCPOn?iA4hKEm}q*N*^8QA`6)_82U*hbyBtrre2mZkbQk4wb|eIG7KXoH;64Mt`8R&3 zhYkFGF&Bec?ClwnPL37^pyS7+Bw9B-Ub_kLECr6EzfjzJz-0RIHBhvF-mVjd^b5wp zU1-y+kKPQ}OOx2_6Ket(9>^K+eV zjiW`kD}d?$mPB^?+U-IdFhH;FDcNueR+`!9$dklmrq$eU1!#{=m<# zuTFebA4G>sEBhe?Q(F{^!9`mzh?RvQlZI%@_H6TBG%F*B2!I7Sg1VBg4y`Sl?-x`A zlP|9~ZuKrVU#vON{rT?3ogLW*hK4)#?!AcK37r$HVGL3mSsH{6o8V;d(I^uJ@2&gE z|JnnzezXok=^IpNtR$I@<8xQVl%~MNKKaElYC6*8jfrI^4mKS^b`@Ne@ zW1wl8b>;_V-DtIG)p2|h9_|-wVjNNd#k6)omq6I4iaU4j_WGnBjb80K_uU)!77VW< zOxU)g3Jhcaop%z~uKm!cTmJpZpBI810Atmr*-=0Y5W9(Y>zV2^jO5W}%84FE%dPzp z{DXAg*SFj-wDQ*j`cICPu7A2qBFoCkY!kFjpC)UJlkZ1AU=|X30a+MYbR|)xP)zHb{`~wD;N0tX zf&i^h=Co~V1c*8#Z2Rj9KSNvk_4NRKu zo`LLj{``67qer*gc~=TRbKl>;A4RLRnjm-0DrybUXMJs5XgJ=YGh@GE5xk4ddrEK7 zZ>AEo?E0LX(^ZACock-}M#m9zMt>f0v(@*`*i6DVH8rTnK&ULxlW0hEM>VD3 zZY(d(I&y|SdnN_fV~Y8(h{!_NkgAeW*`KzIfiE$>#Wl@pJO>W^cvuO5=d115X>T#@ z3~3cQhA7GWTV})T{Nmy(lW!Vz0~5e~?0V!;HIXyl7^NZtmUcWvR za>DXa`S&Z|%e+p_cG#+jthOCuW!*_j`zyPqy!;N3*3*E1X~EJF_#e<)L~K4qLf6O&n>Dr&**Nkxw-UKhS}2oj5-#Na?vy* zy{PHFWZh7Ua2aHGUl@q9Eq)#pL>GS2Q7qNvdCem-f-iNr&310yC-hiN&rN0YqLY}z zpRc!|BVb?e9vS_X#kpU^j#*5M(Gz?B$vA2fBg39V##Vi&nUUT z$IU(1KhEF@ZQ15~EB%>_K0Q6$ckdo?3gRN&L-2A4FftG&G=L%jjn_xT$KQvS6NYP4 z($@YAeE&l9X7&o*IX4BYJ)p{lty`aSp=EWYIWe?N|A-PPn8~9TG^3Ycf6k*<3+!Br z4(l|OoKqFJ7p&yLg9pThhmz$3#cT{R^F+m7%ir&!m1KDIAoUen&{jM1Jn8T4?VWK& z@p-uae!XISnWayu4!Ud-;u_!^#hE z*TABlQtpy$;tYxXKHR6s>TkOx4XzCc8Y?&VBT8!8`V^g$+y#H$ZmPa_?;fxFl9Sl- z)Mdlkus8k^TefVWv>K|+xnB8b^5$giX_R0BessId?#Js}*T*o}?JD=KuYmUUd9wW+Go;)jhn$+|@hXpK;yrg?{2Qyr<3 z)RHyNLbvV+@i-$Xsb1tFusAzPXezs@enk5yQ>>52cFr~5D`5I;0lu5+z;Q6ts>a64 zZeRur*_{QBoDw)uZ>m~rYim_Kt7>b-`duPxP%oPx7Q_R5CS+T7r}+5#CN48bZcyCq z<>h4x;+Bw>mX?xeql-HbLqPD>lyG4GAV~aR6swmBb*LJveDXC`?LXzDkc>BTn`tw$Fi6QC7k_$tgF#_tD8F!e+qc zjxQ`KYDP^+4I(H*KHQY)8(2%-PUvIM^)P%cfk&$ZIp6&Pa>5d{kE{VmNVUw;xVPKzxsg4gHKK%UoGgs6!Bqt|FpUi99 z4|46B!&$KS(j7;2Au>@*I5=dB`Ot=GWEn*`--Bm_mePu5qLFLGLdYV7a03^sKF`)D zRz9*8`n#*Hz3_7W?&A!8ujAtQPy~sqf$T--b%a7q0&)FSyf|{bDPHmJy?d%AWk1oM ztO#ydNe+d@Jocm=1r5qSvkVXOQ1j=NL)Qo$CO^_+qW4R;K9uc`Oq}vfIQ#5d-t=i?S#hDJJRRX}@{6Jl1rLCGU}$cT;<60AC-)#j%PnjZx%uI_xC@j2&iYf1q3B((DqR2xTwy;ls^e z8XF%xe3%3v4NAc30)PJctEZNPSpIrsK!4Nod&#G%Je{4Lfo=3WA|5|3Md{qIX;U;D zcS3x5$ROZ@=z{bp1tF4TI1Fo+wzb(2$_&~c;X!9@6U63cN3?~&N0JrHev9fk;^m}=OyUvqll`{XSQA}0N5|p1k9|Do zPZVQX9$nc;F}JDfgps?Miui(|?NasAx0HOI9@VP<>qt?hdE~kCKC!3 zeW^5pIB-8(=Q;g&)RT<9J?ji7w=^oB#o~YYw^)-Gtg=>O^M;gznP!oHKiQh)5Gg6{ z6!+-q3!#DvO1Bq&Q0KT2jpqKn>u8d9y}e(-j(q$2M+YIEpJQ^%{L4PlBEInZMSsr` ziA-8xwEuCp-Tf2!CXmdWo3j?WPTwj25#(wgvz+0c3!Ch(V`XOUDdSYz0v4GauqrohJmd-@RiUm> z^b(we6LUDpFT_2>IMq`0u@zkQ6m-@?F91DT0^TRoZ+ueZo6B*71~_I!KL<)Q0(?2O z@cR{knOsq3?8o0SP;Mj*37eZGO?nI5P&oG}e>eb`MN-)Uylaj59_;D^Wiq^-7&(0b zRw@e74yfPQS#TU&;VF9Z@xi@opLhwSOrnt=QsTO>sw%hXW;J**+XFtm2MHojPtVdT zoyJTXd%N(PAAEM(jdtzFzabVeKb+J3ySqdj5{i1VDp8|alC?CD7XnVDgMDKhaxc~d zQJ>+Y(X-ap$K}PB`Qh=q+#5#L21ULeX#@zjy{hggeK^pdsC7*ty$|dV)rXlm-O^7)SW--Me9p?Mey?rEt>cf&J#-i=fLoPBBk_7VksL z`*NLCKH@VtZWUa*fsQ;rycPeAmWS}5)6ClikH|+nL?uE?F~oXcDVM|KPmRC-OK51h z)Js8V%JE8Pm;edbyM#kE#BLoEkn36#k)-{B_ zg625ZAL%h@09x?dA>#BMs&ts@n^Iva)Dg_c*Ozlv!zaPyG3PCQ!EaxW#~;!N2&hv(!piCmcLw>0VmAmsrxyQY zxPmi4NS_TGVhcM&q3)kYYto>ZeK#@1#==*xN3|l5Que}yC&Zx&J0d9f9NY4;w)SQr zJ}tyPDy~?qE)=Y;ED|6Bjjr!aT*MF14UzsE=m!mOQYI7PILGXq|D;#uA`Y=f$ch=g zKA|gU%=ORLbP5=4CTUGzNQ9YaMAn+DbxuZR6SkdD+z{^AF}vRiP!!Z-3psyp$a%1RiH8;<(1AQ-IBbX z)6bht4<9;o7hW1EGoDRozV(qva(N=rN3vuZ!)ns($Av0+Tr=7}gSI^I^}P-g0mk#A zYVLxhvbRuSiC&5N^Ni38;0C*$>}m0~L`m(R?FzpGF`So3i7k$tL_RHLmUU`kqRb*k zZT?h{t_wR#Iy$k6rXjvOYBQ4=U?@Uc;g?JDArTU4FrdZUU}9=jazQ%+5e_3A7i467 zip_zCob!06b5ENkT`)Fur ziUuV23ha0&{k3?%{oCFoU-)StVK|4)XYC>LcKP`E86aTyIrM})jTx3TdN!5f1%!93 z>S55HenJOB0Ko2dJ((wJGBl(QI96YCESazij9|j{s{}QsYCXYuK$w#SeeNPcb4cnO z)XFw%7}~ji|0P{rMgkfkXaRjPY}^%25V43GcOD_6Vl*ao6#7Vyl{~Fr7@B+t0igXM zwskpB*PnB)x~{Gt-wYCi_s^gDgtWjs4KF4R;I6~Ea{m&H7@~_2QpBmbo;wSfLhw|W z*3&Tl#4)-CR`)qVG!)+=49qmJzz~#=Fu@=+Jb&<##}jDdMQUp5P1<9;JE%lX@+Rgw z<^0-ksqql@{kGkNm$GrwrfcB;AlkH6kCZ{~Qgth;t9}1p@ZZVi7om+3B^H*}Zxm)i zmIA#OOU(~+@AQFp1^`H8AI;md4G4c8#uS~d6PYKzvMo65anmL?1O}bq7T3CT{_hw7 zeGilxLd5vfkrzPRoIQKqh;L;QODc&#bt8awb0VF`VtY3|J{PIjX!i)jLkQgg=l?gj zJfGobbQ!TLDDAs-b5MGcAV-0Pj{#Vyy-6txk8Kiu_=e5`y4@HecHV`pcW>V&cNp#R zg93dmJ?hIBh1pJ;!-tJ|3O!qm@5tU|`%x+IzpgUIA{#r@Fez)>b<6x#ajjPL}W6%)Y&r-?gQd>xzp@{%2yZ z_<8=t*+x80j6m6Alaq;0Y<=?&Un<>l7sAJrCr_Zl_F4(mFD=zuIBacH8>dz<_;vSb zu_wOoU7?-$sK-4$SCAi?Hn~bKxOr)*=i_$uoUY^~f+^t|4GxjaBu~)Iz^qHf+5& zWj8mYmGgEDSmz7;o3ih|yzuE;Ni#eSs*hKWZNvM6BRt)~&%=|cc#up%k4qBSueFY{ z&E5z?_FA9?Z4bC63|6)Fm~ekxq`ZVgsh3(x2zv}n`tx45EYO?b@qYk`N=rKy;W}|a zrg}>wz!X5xtB}`$c_)Js?L#< zxIueX zD2-F2-Aw402(zGa8G-U8=@dLK7|Hhqb>_cxrjZ}gv_s2mbZ+hoLg0*#XA>=-L5ule zC4>yr9{Bs#oF%Y^!Tcai8j0o%Ed%ILq2_Srj3VoK9lDh(L|MDxZ-KanWAHzZ-)P}l zJ~;q!;vf?3aJR8u>xte#_^M!$$ug;V5M|)TqP-?6?e{vVvGFw-)Ww5n%P8@;@7(zw za^p(FH6fdIAP~lof(#7ox3NgsE6OOUYpS!hW;>~KY<|r_#Kalh=dKd{57|8ukuzH} z4E%0h{Pc|dG6C-q24cqBg7#cicS5EtD#~-9F>Vre#rWB0)0KPUl zwAd86Zw}SS8eTmYC872;mpQ=8DfMg2_Y5RFS=s|9LgFx-wsB` z6wAHv2M~i7C-VN#FNwE>u3bNz3#_g3t)B-nE)bwU-W5J_MMjI_Ggj>RSQ7>W-=QyE zR#v{-W_BGpuEIF-d9P0wG`sHSBQy;369Xm z>gqG>ltnJ5W%+l}MnC5|s;0UCM$Zrcpid|n;Ep|?&HNZe8ScDW9vX#gZ3G*G*t|$3 z`+y4$gr)ZN^_}gn4X;a#NGWaXORr??#R)frp+jU=T=dE&LB6*>l)fJGP6?ZTp#CKV zR*#gVmGkJ?vt7~;>8)FAJ+N^ z@)oDE zlKML^%Q__K^QM0e%J)Z`%_Q-HNfKxq)*txbo>NX~88;dr`3q45Oz=P;xg?Peu`Z8WfvG7 z(g^j}illyl^x%y`yCU-G<40yeLE6M-8T2W{TTTh2>QY=!SKmNG6BiX#I?tr+&sd** z^s8C?S>MjJ8gBiP|57>jt{h|kf|sRWC=tv97bk>Q*s0cS20<$7g8cl?U;s`I#6|Mj z{*pyvGtqK=$HMsV*Yw_{u0q>-BsK{egpq|x!2Idc?8u3K9iHKc>_-9n03HZITBe#X zSAb;i0J0Ip39Ka1Zsbz{>m(HD3~YjBvauE|%Yo@(z$}E#4;?;yR@~yhVD-%AB&hjk zF?`XHon_kW0})^h3paroA+#^!iyd{hQX}HZK z!=WQbCeQ+L5wt~O!0ym+#{tM6KYuQL`t-X!b#(jp*Pwa^AG=D9?{OG_4=(fs{KJC4 z0i0*t)b|!SwvCrgs0>U?Nl95D*p(|vf{7?6E4z6uV}|bb^U=wX9%SKrp>Ox)^+)ug zLN~>I$b)JvNNX;%}K(1o?%N0R)B1qOD04Ps{lo9Akm)-0}#-L9U(*L*(N_8J! zY#Fv*6|PbiWf!u%#Uem!4Iy3w?*iemLKpuozB*4sX1K~5OzgV&_>aPU zr-N#(F0is4J?l2^rKLfLf(!vfj0@%_OyX+1f(!}WmU9ia`4VS7^VJc0KhZ7F_wkPF zN)Z$Tj7~$;AG0=}q2@Rv5?q(a9jBLb009i70*P55e1Sc}HizKken!y z3X+kLA;Ox#L;xdADLU~+D;uQ`eoJy}IB;<*;I; zlZy+1acc~Lw4&_)YzWe!ayU7dQTMlufI}2==aZ~(4+;_QB^23j=hhcZRB_HNE)Mx4 z-(xE3VGjYm%rtB8;(HU;(39#pTkYr4bmfSS^8UkBs2>O)t1jejL-`4e$iX;M^VB9O zo!sBCx7yOKQXq@VkJwkYVNSa<*nY6E?Gc4tJ$M4B_7={xewxQH*+RfEi!K^>chpiv=xxZAGr z($pV~@z>pPv#E4js?XAqy1gwwlnOm3y;(_CS8n7EO8qW#mm_$o$7^ox!04XpRL5u=?C(NqX zukU&@y4(lZ(%Th$>{Y{gDXDc(cd>PTY~SyfpHGw2?dhZEIn$BhvUcb|tK{$ep~$r# zQYF9$k`1K(r@{m-!nBQw*f|_-!hwcd*nv?k9J6zgQw+J?v}q^yjXe#IG%~XQ?!0__P|uwN%zXyCncU~d zcGLOK{Gk4itGRgRGs!0bt`?-)-xoVfUP<5fUcWT6*R)@*C~VD(xL?KKNHB)PzBFL~l0P|gQxPGNMtN~eHtzaMT_^u9WNQ{W z<9jr*&%4#MPXj(X!wJSj&K1-wPd@5=n?4yLP=oO81vqqbbsj6_Ky<0KpmD zw4|k}U^^WW6l_WU^Pgnv3br8FkvAgswk~=w|6ho?i4a3r1fdx%oP5M6#R$5OIDneV zS~?4evJIU9aUMb!M@%{$I0G_j1)^KyQ&X?e6F-Lu?@Vk?h@5=D8Xg2HYK$a zd=a9jjFzm56&Dx7^??|9*+MfjH&=)VAZTV91Bv5uLJ`}=WXfh_|InLXBd`OZf{e&f z|C82o|BU^5oPM*JSlgy7{FrFuIlJEwGfEKWK7IbogD7<_LPv-<(I3Ai6<8~7 zP_^sr+qZMzd2RXjoc^LS^hCWe3Z6GitOh~ZgTx``mseTebyGgY#qWeB0P6&J1af<> zxzOON`S?0o$?hBVr$ot!+RPEB!IimauNAJdsQqtV2r-=1S4BKE;Qf24;`v{D3G5DG z!U?HlB8510CEaY&7Iz@eR-Nnlrp0*`FMogk_DNW1$KlTqupRRqPQbT>5rh=ikZ@$X zlGiL34h9H6yggZjxzJCK2no$4RqhwE@&sB8A{dHXxCmK25;x$6r5LMlLR=N581v!7 zABJMePPkiPwN!2=WS+&$X+0CoqpvVIq|>%7~HB?+W=iL zc2|c}QiVz|y*(bqmSo{J2ZUhlZrLSFjPQd7{vgyNyxzq_l81+jA zI?^O8#J6T`yfE8H5)jlL`1o8yBLQIZ2g>HVUh!};p?aV-`TW(ZEHt81+c30v`1tWB z_%2Ui(*B-)@aWMI9v**yi(7CQMK>hM;_(ishen9|a_Qth1C}CM2R>y)H5S!RHcV(c zZ2e0oI+bHu8xaT6%(1BHUR`kn&!OA8PpA}tUOme+P|U;@@RI(N(=j+9G?-eVCQKOO z3Scp|XuZIK`UVBjfsXwI!~B_1C)Nx8@C*6|r(+GIRn=5oOk>}q=QEVO6Dk;2{Fs!s z9fJXA;a76n!%Ku(_13?9`S=MLr`q7!R>-CQ_h^(L6tU)NfRpim=R{#gS*dBcuE3D7 z8|erpL^xQ8k!m_}B^GBvo8TKf+fYu(Wq2e9N$6Z>*MBggdX7skP8rqi zBXmS!RP9@iB}Ruj&bYf5YZ35)Xv2hw$RV)z&LlBuZ%O2jG1^9aAS&fur0-trwa7iq zL-)TANp=3(#Kj4h5e*>2wqFh!Kpp!*jxc_E?(2hIp|I_sV}7cwb(o2}A%PC#u{=%W z6)^gXv>fAfq~kl&v!RQ{U3JpzXEAIHPVB zC50Pj@HNy{fIPOCFgLb^S?`bMKYqGpP(5Yy*Bs#%0|>lEMn<-dlJZGtsIMV^wBMdB zo|~pI zF;Pcq=lLBr4>k{sHMhp^wUnBiU9YbT3nD(1@WltE?V;$F*VUy;*B%{w&QEs2CM0${ zBO{TMLT|9@3#?B#yleN%m7MpOR-jz*A}n>tL%tefkv3Zk(PT&wjb5U{oQe>ozSd72#Pi90Vzmknk*y zNSt-%`gBCf9GbI&f&`iZ7M$L%f|z-L%OHvvqzn!?q2^}YxaZ|HP`zp1u6S2-9^cXm zK{6W{-8Vem{!Wr#6=aU&vW-p3jSeG4-8pN45%z*kIjDbF?zy?SrYeC;M|R?VA3AjC zO1gUewaRGs)%~ie(w&0)hV?7t-+D^&i(&Eh?70B0Ydhh@GI$(1^rxk8FSwWLa96=J z(VUyU2_W}IOd*SlGnLE?D~h_5wj{?>Qa3O!HJqd2)gjoZ%#AcYdXuAlm9mlXsnKcPXdWSv=d`4Era$H zLUOioh%{O_gdU)$ z%yvr(9-glSblK*%iJ^a)=e?Im5W-L;JP3H)f$eHY5)lCi!1J}qN_34%Alf{*oE=pd zzMCLg8Dt>{f)&WU=RsgZP&FQj~E;W3xUkS$$lFqfaZ3?q1 z`!`WHM7VECcC;itQvxN~xpU{i8^jKc&oP}?EO=@Bcu%Qq;Mx=nN-^mlus_v9LkL-* z3K-1L9&pBH$C#q^%_cz%3=!XWmU3!*oQ0piNth)ok}2$Se8LOn5^9%~>Dgkk~qEb^I@} zbt?>QeO`jNJ2V~}oAxUAzFIC_^zd)_8!Yh^A#nljBOJgM^McQ)mNIe_5Bgv^c~Z+` zpO|YdgQ@e#AP2SanmF#bRdRg%bip(&sp&R6D5cUpQJP$|f4ArK*Ry*``L|1eLV-a0 zS}K^fZ$FJ3iPrpIC+iu3bx@@8OzDB$;zmrB_faWL4L19NE@uY@SLox>4wxkZ3)N_E7Ui)Iq~s5l zh4?{OQ4m1`DY6kbd>`5he-{A(;e}J~*k&h)u#PCR#i4@iGv0 z916n!$$MOR4TMTeXA#;b@r(xoOZ}rGwT3n%e)9VCHL&Q*GVw(=ZhTi)R~JmV?-c#* zJ1j@H;NdrGeF5`dE2fXhdSDh0v?T9^ghbH;=tIP(32X<5G=Ujl>z^OD6H|x!`ma~! zU>;1_0^K$Mb5U)kFU8os1b8-71q+>`LnoLr z*vF{dyf^yQ%P3No-J5^a>g5CI7PNo%e6G1jJ_QQ=10Qo-29u^_idi4)HgcVVoajE?jss&0O8uI;%{Z zc0=v=*X=Sg3XvW!i5EA@Q+W}|kodhodn7y-kHv+YYBLt+JyV;9vSthN5GXyGk#yUb z5%dc9B!$BCt@~Q|UbSS&a3QkuYiam+9&|tEXt(G*?j;e@ufw&8cHvjl9s|5+VvWG| zLCtCfZl83pGbA5&Xez7gsQTxHTKH7vSD}6tt-miSo!*fsmz0pHt+O@vZze|pk0wgs z>G_rwfAHMDZsRTV#QTwPOs`%^Q>2Z3l(e~M!^x!<QaU14oIfaNNr#L6&?f#=|4HoSUge0Tpz1&@`D|13J^4pPf?Mn*;idN(7~`F)|-pmn3Ji%LnF zb<70nu+CLq*Hg`xOY`@a51*#o{P!56Qd*yMa=~onSi7a?UmTIo42T7d__TzCgx95a zDjKX`*W#;hrn#ctU17%Dtf!KP2mPsk6}BJ(VrgG`2XR#UvXx5f#u+qG*aUKKJuzr2eY{#heIsL2Q^d7u_?m~Bd_5_yOE-Nf&Q2Y(Ui8DGkKog08W zlv(vI>d0vvM6`)tkl2()rvLioskO++dtsiQqdA^AC-#Y~6JK7}H2h3}fRon&Cn;UBO#VP_(F@`oEF||FMf-c8-MYV?cR%Boh4O+24(lfjbw4$7^P?3pMSk zI(o^Hj6;vO*-5^|o{*<;EAXH*#a5m5EG&;BwsNYGk4%!Q^8e64UD`%R1kK<8`9h8- z?+d+c`KWOIA@Q}TWRF}9HzZqLTKbsNRxj;GE^$=zAqUsGFfvo*wvj1K4Tv?x8~nHi zLP^oju-nxIyQYQMHE%MCJ>k|8nnOmL!t#Qo)Vj6w7RiYA7&9{oG6?1lF~1|_wY-Oz zII$kV7wEy(!`#5nU-@;*t(@_6;Yr~fI%``N&xH%%x&l`Us(eS8WajZ&;myrY563UL z7Cme>{b0U+N8r?hlU*P__(kE|`0CODf+?udgM zVfBb-8UX5x1eX&tL%Hhw7!V>xA~5IFfyh?h413HA7?{vo_7M+9fn5I!k)Q7{!d+sm zfXtJ$^PUoqoPmP$B~G3RWAv*;mL6`3YISO?3#bduA*b0U#!fT-;{S)LuYjs*-@ZO{ zmoy@vQqtXBinItwBi+*7AR?%sl$4Z&v?$%6s30XJ4T5wj4Wi%L-uLeN{$n`CyWacG zIeY(N#awgE#nA5^(I)xBw81JkDClEfUpa&xL-x$jY4)HiyyZHH{lo=)0v)xKB+d;$ zlYtll2`)XLot=poDu}#*yDQ{Yeyn(Scu>$1gdGXafQAfcyR#lVGQH zA^)jF3;eGTJy)L|0m=c>Dt%_uA(yzDjc@)m5zje~B8<2=Vknq@%(^qeG?dW7KL7IHwJ+ z9N@S^JA8AsVf**F`55!C5{souFx^n>&FJffI)kc)MzVt?tYr*G<0^VPxDu3Rrr1L5 z`MZbYr>*c;q(k^HHRW%IaO$g%P^4Cb&d1+kpb#TG-WmYRQu`{l|PWao_TVCDZ z+^TtV{#*47FAol^KcHH90+D~qPmYqDoK7pi$)Lst=(Puk4B??8#aNDd_-$Y$BXlAt zgYCNj&&wI4ask^#8wCD4K=)s3T{6sU|CeH{H2_wkUpl&_V-AuHWWb_wb*(Vg7OHqJ z)=WrQN$$)?v-|Vs6>;$f@IG*^;Y=rh!CvT>9Qyr(WOqNxJVajlgkpVl2tR%g8epsi z5Lq7Rz<)ipMVUg5L|nR&gs8orKjCQOKw^T*#E?a5+dxB2FZ==82tNU~+=E=m|EJasZ2Sf23jfQXfwmQBp?bM(c1PIbF}{z@fr)}f?li=nIp4e^f`fxM zxCn6jThoDn1R+wM=@jEua;TykAH8@)z)#hY$~Jw!%=eZZA3i*QCTFB#Es^#`1vw4u zLVA%dw&qzPx%c#tc77-+2&Nz{Q-D$P)&>7M{sEi@#sUfed!;}dhlP_fPA2#iq3}Ti zYH4cU$B*+s@c9O{)ou$uHz0TY=$G7?2lV56+W?;>Lgs$%9#s`H@0YRNg%?Hwfa>Ik$ z^%&7}AmH)+2{(v9NJ?fvdrw||KImE0n1zDXJ1|x}{$1f9OoyT)TuHHjSO92AL%=(t zE73V{#1&1r6$_XtG?P}~+(u=55#_g0~0GN_Pu*MMx{+~Bu^_Z z2ZfHmrMri&sj1n$;C6fMviZp9fH24Le&IZ4WW~rh-fyuVR&`bY(SoP)9-|)or+Rw# zZfxUJG#64@ekU#l>mk-hWHE ztpDm&v4I)*-wq48rob!HZi@HM(M@UFp-uwY5Bhg$VFw>yS3Lb)am`xfTE@ z>`-E?uPqrWMpjeA1=6gCvt{cmIwukx6|G_3H4-tU#NgkNwpcJ^NO8>nw@@OU%a?q6 z-x)k?jG#Xl>)8W&UwTE2&yJ7hfoli1AL!5ChXIJmJk1$HZ%0I7pb&{s1uUtgTcAmU zT%TRA4deR4bS-eQp_yZ53}0qgq66YaxFRElRD&#F)}g|20k+82wy?Dm$maG?G8Xa1 zKR)d=56xu=rLXb5*Wd}d+Hl{*ppp-->}AZNj9hqiM{d+-kc9+pe;7!zc)*oi*xKp? zcJ)NvJ#!bm{2@9x1~R+;xxLn8x1=r|;&w&*JyEFlwvE++FVQFjE`u6YG}3hJ(5(1(-;E!POGBRDw$ zkkOlr?GhGzG;sZ)#6SOe1M}?kbPVES8^dyau%w8j4-l-t+Mwmo658iq&pqFx<;z%z zm(|vi3YYL3-15^H2GT|jaG!ukn~&6?Sx0A7t%eF-T&Y znc0)bKJw`s{oW5L%5}KC5GS$;2;5r6hd$`IukUxygL55)Fpj@k#ji~il=v;D*{v(f zzUca{AGQTmsjdW`(D|tbl9q>BHjBoR%HzM{Y{Z>BOJn%Y!u_~Y3 zJCH66&|z76X#zWlBl?7Q8`l2ap@^*$6=wY0tmlkzUC=={eB3yU^eH z=ZtaP{EtGG$T749fv4(ydiA=P*J{Gl1urfb(kMty zK$k@w%*$U0MFEcI_y^d$lhe~Lg&G$j^7#1a(@>HB&?6PX#SgjCzs3CgJ8I2!v}Eqz zl-TrX{$!1$>i|R&Gf3S4o}Y3m8T=OATRPME0}#}ZSh0fK%qfTUn={;Zr~|Ts&@e2f zkzd{X>F$Q1za`5aao^%WKSaEbRaO=uyu!rB9xH7P;{k^cMH>r|4Do<{b|}XI7@H|{ znqHb~s5{b@b&fu&tJU#R)n2-CF#c$N9|;JdTzpea4eG~G5GW!xe+pMrr^TA|BUb%a ziKmb)KuatGaHAnqnEqnIF#CfK02TE|FFq#3Tn_UbMD$L8$PB%YFP}IC+tSj~0$&-y zqTAZq7^+G(okyH1I~YUJa~@y9xT=yvtI6{I5-|?+rN9X!y>#huTU%&WGd5h6(GAP9 z-!hCfB1Dgh{{Xeze)8=#DCr?2zLkX!&u#lp_IoPGO|s9>U+@6JiP$?*()re?%r@Cc z0^at)ivZ6MKz~9shggk3j8jEBh(I8LE(q}b^8xY>@L06%G7d zuSqzvZP2WJ{~}cQz!)M?B489>ApAeXD%%0uakvo&rFm9Xm3y5&SRRw@;r4%iQ)6N) z+`6#-kWEL@r~cATIvdC)hl7(@9sUd^nUn~y%RG8$J%ENDD4CG?G_}ANLgq`S4tHjv z8IU6|5um_u`RY|g60;hgtwGz*VYM!oc}WgB#t12u?>zu zF9vY6Vb*|gZ~(D`W+@_e1wuk&kxj8*gMU8Yjt$U!i3@XGA% zJk#6I7D5c{u&(e^dl|=N_1kH$EFi~&6c|Vbo*>`bqLqvMO2UW{>iLTo{b2DOz+fU` zAs@63-=vGVUx7NgA6WO>pfmRp$SL3>!C2x7-}i7zG)6n}jxaTBKb7FMuz{}yJ=ZH7 z9I?<9_)}98zuezH7xrPYCq0O14gUGoAZ!!G{!dB2fa| zdH5KR=nzF-CP6{+2VD!9yr4F*!hTm)R?H1`a7A>KtC9~e&K_!Z7s^U*?Aj=iApN=J7S7sj1PPeN7@PW+5gw~5C^$xGQG27R!E(|cLP&WdKK=xlZjj<@Wa4 zKzO|9=Iqucb^X2Ukg|WA36!y*U{Ck%R}6B6iy$Q7g zEl4M{Aw2?ea?qW$zCFSoBpsy6q5iFjd=9N2#m>oDDsP9@kv2pCw<$HD_v6Q$ccV*F zEs~QPm5Og{6JBi7Uv3U~98v};7a+e-76OPUhmj45*V)pa)t2my(NHJKfW=0r++dS; zblXA3Ytq(C-sMBQK$OLIzNM z0>MdE2?;vrV3i2Mf=$o)5fYlJ=QP)kr~`to!90|Tq2yS1U6JrNogma~ppOsY)3-+s z=8!AN%G&9=`S|#l8q^p8jo=G}5rx zlnUngAeRYPNZuzGV7GB|s4&`rE42&J63|x6j8iFu*?|TG|5v!FJ>}#jUjB zlE4ltFYg7x(lh}Zd|(G5(K=|Az@&tw!}q00mcVldD+rx$G$8tL)}y|0nPUYkAAo5f zD0O_T%>%Gr6-;wy@L#Qmkctfht?zF-B3=~xV^1+Kgk##{&6{~@^PJ!3_il&C%x5}J zLURfPXi)2X8pk6>1+Ktt#E7vSOgJ>J$wN4cNELv^c0FSRHAlymS&)gnHygC4fe0ug zGLKM0ZP=)2Iv#KPU1076mk^X9IT5iLh-dhKaS5^opMZ~9BIKxhO4<&-4R*a#v^`a| zP3y{NN>5DTRT@g+ScGkjAV%J%qjXOb6BR)<0N@{R6JXiV!i<`zgq=jbIzxqVQufb7 z7$-ANPnevYtpyASh-=5=Aq>-zTsmulZGuyg08No3kh;3LRT;}c*$>jDvatx|&0cjir;;ZrN#J^EU ziz&QRI|!CwwS#tcH{eW2mnQ0ei03&Clun@L{s{uyk`@_iP9)h9b^?_guOHjrY5`z; zlTFp-2V&KPegtf-8)qi%CfH>W-u-EC+0& zE6D<3Ca4xcm%vK@vTq}DTb|&`WH}Wi0U_ZoAB`sWWopu}!*6kXethirPusL~D%+lL zaDdlC+kRY=7FpQbStVLAOi!oacYC);+T%*B=azX zrW1Uv0tkezg6M05JQIx1v8^%Vg@6d@5`-?R^(jO+4bdYq2O0CMDGedoxC4k;s0A&cjn@Kua|TmeLXIgJ${PNm1MYEIao zxm(vb72N`8oWC~A{~&T`$Q&{tz3&0RQvjOh+b2wp{)5YcS-cob_Z%<-gpf4iXv)iq z)IgV(+>~c2gLclPAK(+ehT8PDvro}1b=7NYG$L#ai2dGMzD@w;R27wIPrQZ%(&M8x z?KdmX6;ezh6BUWG@cRsczk;f&1VA>yRYU5b+Th#(PQpFcu^g|y_WSa(0N6cf-c*2G z9+0KGpp=Tp1!Q|DUVD#p+QRVw2am|PBWfgY=JeO-o+(t^0lX5~;0K!z{QT#7PbE5j zi-ZP?*L06H8v^SPOd_OdKt+cY%$yjkY*PsqVx%XwAI9EF`()qI@y}2b7;gqW#E1?s z1TB`Y0gB}*5l#VZm)cK9zC<`-NN5D|1@JW>NfXjt4N~KO982hgRa|pouN43z?;EHQ z24()>&kz8S{>rNZHU9k#A#PXK3GV0viU9K73*c`7l7d_hr7anv2p(=}S;2y7a#$?n(^IilJ|NiYuIBs5Kciv8WCp9SvDu(;sDX^blWxUzZ2> z045%;ocI|Q-Q(g;g^{V9FsCa&FGmhpS`GdB#UUL(<2oMM3G}6QTKfQhf1nV?LFft> z@y!HR>0^Kku^i5D zhDs_HS1AO25c-0W0BDH-Z47=rTwFA5eYPKQk|Nl8xmBJ{~ChI@z2< zU5g_$+~3{W8AJ2N%I{~3K*RGZ4C5N5jVY3f?MNyLFSBvTsa%8cl5YVZw`!;gEqyH$ zcaU{oU+UR!h-ifz5aMp6x^BZx2q^@C=eeI3XI+zbOZF38|}R+5Ll5s0yGAK(^H3EeY5=9NLk}^$$1Lfr^)j{ z2P#W4|6qf_!0e%q$NugKM+VE=sjYyN!I~>ioZh{DZ~2rf7ZP8Hnjw`(h6_Px4vz-b z49YKXUCv47p(z>o=s+Do`+~EJ{*lPb6*y%RukCOKSfsAMkdFV+*X>!eGx`im>M>;G z@Z|qw5|F1S_wRwUx5c809bdig&Z|qTiGsMBOkJn##q_}epy_&l_E0;4>uK}0Lv>@_1Df=zv(U-1_kk( z<~1dNCibXfa^QDnKycue0Dbl{jO2nia?_{jg*)e&jDtQWpcs=xqB&0(A9!zMcI0fV zcy9o4!24j-9@qq>`YY!$e+dfYFg_w9yUKqW2rl!u z-n<4&H676k_xhaVdfL0z?HkyzF6N{w6`+%yF!N{0?Z;j0XhLhRkM__I!nAW2 zE9n-P3h+AeK=1}w46Gq&5OKQr=-uovKg&GF5_OKs%+!_45LVon8W#^^mTI2dFxE*K zq!bGX3pt&`Rg3IuMso^{<6lE?xG3i>i|xHz2|WU@He!?H!h z1tTT@xM>Oz^?xel-C3Yloz9muA`<ubGC!Hf`J>5w!QN9XB_H4rcNCOD;Y z;u|FeMGxd)P$TGXT}Vh=<(IZAUj?718nr5=J~3Ttks^WH3%~#j;y~z|>4jM}{$G_Z zNh}d!j+Z~E-gA$>FF)4`M>J2^N#Dx5vPzTfO%wnJfT^x)e5jCT1(YNiJ6eF{F`%!` z^5z<4f)ySfAYz2?v(3EUxDm5HUTHMIJ2wa0L)s9|^XOLW%$d(#dkW4CUJX0@LGA5r zx4M0-W)zTWVPjhS>%q$2)0CbHEZOuqUL>&#?a;``soEU@_3y#cqsY=q6$0Gi4g)t^ z;s=U5x_5wEKjR7wzi>~$%7y1b+gfW-lGC;V9^rj4Q8?ugVkM-dy}}7r$$ve`7Uhc- zxH%Uu;nsfQd9$Q-E@;Kil2xlB#i`-rQ5`fsE4k(nAoE=Roc{`KPCO=lkL5Bmz(v_)EQ!K=2CP=1>WxQK|l5NwVidHAY5S%v+JnsAd#A4M_n- zX{dRhl_Wz~cqCi8Y{xD`7Yo6iKBxgfj)lxDOisQJrMI&oy#rZ4@6G3)9&0rlOyVaa zPuk_|_T2u2kdo`}V6YWX_%zLw$LDq}pfV$!`zdGuXdgQpXL~o1$*_-%W0ape`8?!5 z+hMk$Klp`qQx62f(yyY;VXjYdp;7kd&8*8`OJgv@gn`0Iz$B`D zAmO%;dR=Pu$#;qTB3W-_3u6+O1<)eFJh?$ef=J45ZPiXsO%y-7aO~amrfr_rIOpZk zNWYqd_zLyrOsNW6Mg>uk9pM(+nKB(AcCd9dVso0e*X>r<)+X$W%5-i*0J9%@iTHtx zTT%5&g^SIcmBI4pX!bDWqo$A)G?`>itYE12K{%S_Ik-Xv51Te2sarMPs4loIjvYt| z3Si5~3>b(p%pf9}knLYSkK9>w*vl>)=>!F+6@)6P)zRucI*yDyZW`mP6 z@}Yfq-=eI9#Grlobo{^#E36175*`|ZbbS2j#5D~w z-~FZXjq_kCJONZJ;6J^Y2rRcYu(#BU^P;$!%WFC)K!P$E7TNOh^8@OcC2dnc`R7311NZ8jUACj5eh zYpM;h%e9V$_X&E?8R6c$pG; z-8XyNtImh*pZv+iAGKnB6z6R>}Bt~m%n z@Yrwf1DA$TPe)$lsZYM`(uFp))rF}@wZ7DETMOm9l(vvoODv1NQn%fzH9QFdlB{bC4>I zUT$@@MVHD7edO6;Rzp>4Dg)tq_=4dJC)cy)_R`M-tizvHim=j&%1G`g7SI#3bKk!u znUs?Gt6`+!R9*F&z1SaiH))~16F!=b`O}lP=ihr?gobtz=;-JV9eC=!iB-uT5)Tk% z!RpFYd>+s6UXcG2?PfuNUeE%oMvk}B(JO;>)hdIDu$ojg0xcUS0FH9(dC@-B$Sn|HMdNToZ zaTLV1>u9;9BzN`3K2cJ728)0a>!}^&#W3q!W~cDF_foMS>8~|5hyuP@+R158NlEof zL&tl48B-OPue0zIbv@z-f^HsII+QXdXKI?s-0oPW1w}8WX5w{S(I#mtbPnk&+Td3A}Vnr9>#6%}{SQngW{V~MYqCdPy)W1TxC7Rh-sG#UTcXM%RAP2=QNWPe> zM7Xv_*;Y}g(L3 zR*;oIXy>{y#jr>NsKpPf(|GG->$UF~QW&e0BXOk)6?x_NjD>`tM8*!V8pvf9Q2a$E z3O&$r_cJ7XD~7sY5tdd~tbjWLeX=PvKFKr0A{l}-Ts%I18opxJ3dm+pSMHw|rOI~g zC5Ez(a6~Q;cI5uJJ$O60y{E?3Q_+@BEb<-+iJQ&cOT;UR*N(DH2QFf0l=|KJ&Ve1c zLRa5_O_WST#2x0RIkr#qi4<$2)7iKc=IHO7pED4KX9!?hTD2h}#&4jOGN(dluX@txb9A%eaoE)T#^*?_>mq899Z=aX$aK zFGYEKZAz+r)qTC;0hyGPR^Yad?bItPVXHJxzf2znt#R)j#+7OPL;th~Lw@}lJ0;Fc zegR>3w(YRi)z1bBoYT&U#}Bl&>rzinkd-R8Zu2yGwA3Raoz2j!$712>Qo7SNRh0PeDpW!l3&K)FW)()L7IE+g(49!1`HB?YvsPQC z!r!`o%CGTRW8b1Gtsrgcq{kL_3lhG|K>zn7z`Zz0f7e_7T0uNR|L4yj?y(w?@qm}= z<~6(S3KQ(Tw<`q&$(TBNK_f5_I4+G-Qhy?!!$y;rI8GFDhz<>u~lDM5x`IQMiPmTmodet30Cpzf}2QThq+JKV4%I}FHNiFtiz zt7#QL_XZk55a_8~AE2jw*2Q)E<>u!w-ETcntttHh5S^`)somvygpNyA#Zr6FtE)XP zrx3j`2^~qw(i%#3FJ-s#0X$!Q_$+hH&pl-6%ou{6E27%xN!i&uB6<&jh%z;Wa2Il0 z61dZhkNLN*hxGn_e9PO>P5$DX2y*FLA_B=aDNPm{da zvv9Q}H@C*XSLhU^O`G|sCv@v@-$9Rq;A0QASu)n$WGw6C^Ps}8O_NZngT#Mt+Z;ek z5U2oZuCT*)M`R<(IK7vbwrv;A=&z^eIK-L3c0xiD$KLaBLgDril-hmIE(d0CFKHvX z0_6O4-#3_tziVED*_ajJ6d-r{-Kwg;`0bXCh41N7Ptic~%6h;;`kjW7-kz+rmFU{o zhsB0J&x4=hgdtofXv4FGSpfjS4>o!`Aw%b3b_SYQTNEG1yJP}f8|g(|Co!<vmsJ7zDI@|G|tt|hb z+oLmoWPQ_u)dVIKaX)I_d5;wnOOSLcWNgdb;Z=m1sJz^CtP7SCrG56KW9jXnpmrI` zX}Jv^*J8}1DoiD&aMDB4j}o8MZ5xhW%rOcc0g6oiOjTgc*X+o9M|x%2v+bxqO*}hj zzy~^GM@C1(7sc+BkFoZ}KjNo%5{v#78?O~fbO>_Ui=FBh(UslxTTD|vJMc`GP0VV^G7RgD}Jo}_#vf-yBPnr zgS*er6V-mzkDkkSK_|zr!iusekDbhu?57k-Mqf0L9mMFLc$zth&g#6^2~@JK_jAsA{roMf>|0-Tfl0lSM^GxS|y*q)9SiLHKsf|>1r3ccIEhD zUK~#+q~LF>U^-1cR4t)hSDFp&219$RmfAU{u@RBdU3}t^OYO_CeaD6C7wef*sa8fL z`6t9_{rjZ|s|h8FV)dUf`$;hzpND`}5O931T)Tz`C`hvaKht#FR|c|)l;_TxO3}Ps z1+#*Us`{1VPUl<5N=gvp$>j`a>Zd$?8V)=|m8i!w{OB;Z3I_#<5(cWLxA!Wh1;A@c ziEd(!f_Ou|3t|Xp1b-lCEiNm22QuP1rlv$$n&U6CnFfB)I50kZdib>7sonJJ#$?>D zo}eJ(18$D+&|Gd)8@~Epm%KiAH zJv+aukn|+^qZ?vRhNYgC7*s)l ztdrCJ&BVuz;kcY+dfbQ@mf%{vde}LbLDvlx_b14a12$C`sFiublskN&;-QmfV%x$D z0huUllF|&!dtDbqYsBH^NJxZPCACUEneCefjrb?V9#+Pq zBF+`lk9Hi}hV>cINKJy7-%?~LuB;|#RC9GL{%Bv>>#*Qc+NWf$WP)F3z8!kxj`np_ z8|?}m9o^d#%o$fvFNsTK`c6$s1}-^NbGJhx;S_9^P8HqXo9BnS4@XvAJ^kzQ`qc%c zKrC)50vL7x-6=QBgf7vd`Dk>eLBD zf2x>ddh!3v^rzXNnc6N`?QDq%Xp!mUWRDH@xrKr^#V!8LiuUzdF^X)fW8*+&pPWLO zj4G}`F(QsX`j*zK+S8AQe+;>|O;Yo8&+s{7(Mw11i-unvP`(_!j2p4qt9`D4UZo4G zE}_6gI=Da(zO%>&X&ms5j zMCIAbn2?A^{P5DS^`2CbG7}H7ge8$1mNhE5U>Cw&(bmvbOJUl`-!d9>yE13eV9>SB zDHtn%T$vTt`P0Aa+=#ENGw;!$ZD8;^QfQ7q&{ zZBNehRj5h9>wbz}(%-{7!Ut@nypqWu3ol}o=zrgbF}k-5%cZLud3qXf93<2k=$kgmY_asbG$zHU*YM7BSpyiL8n)v-(}{hezXEIEuS=;W+VNq|<5Mt~qlr z=T?YZ=@o!Uj3SjtLmje$()j;fL8Y>%HngsF7vaz7=%`!M3@#@6yuaBVv5%LMdqLX; zW6ruOZ32uq8zhbk=xi2`tO()A*NgqIyrZP{X8d{}7UVF?l$)!W4=~9{*kdE)n8M_k zP^!<~T2+q6!9OK_!ptASg+K7>EoNGOZhQZ`c}iLl{MeP_1a(u7Cnt^SO?doTW@Eyc zFS(>}AEj8SeFsCZycn|*1BT!Vk2)?a`DJ(XM-i_lHZa0b)2^caSP$z}QoggI59}Ou zfzjGH=-fF{OtEp%UGQg+8i0S|>jv8b#%e!68rsN#pFhU-)q*cm*C4^~{`$QOVObIQ zq(g~Mneh$|4vH%)uWM)!fsLC#I=dWu1?n&R0l^QNBiSx$I$G{3b>VSOw_oIgN8s@^ zi+0Cb%vs3@IH6DuAKy?`RK&oPA5bt8{<5{cPw_w$uU%6fD`u6OulsE{bBXWZ z${viXxjjAWU`t~qHs(fnLJ3Cg^Yw;GlQ=;FTa!$`zZPhb2IJ|ybUP-}un&tv`f|Wi zQvl8dp&%^^)A_abBzl-=*f+Z|srLvlr-Y-;;uc z0-O~(7Fh8|Lw|oeZ&La9k;;pQ>*3@%%*uPGr#-n%`iMWNUhS>-L(cPLqfEWGmX=?X zmc;k?zQ|laXA^3u&CNxF1B#p^d{$;=xc#dlG**3wZE;k7v3YQ_%CAw$MXhK`%cSZB zHAc8qS~HQ_e~EH_eFvnYzSZKT{kuKX+7!wcZ{%qTE*_mpO7%VJq@Wn5zS?$$(YUlW zk5xPWJ|R zGTF;5i7&hT`Nf|&eQVfIMc*;8zenzI9G2KR8KwU3>pK18jD4CGz$EDEVq_1DFF4p* zvsz_4G5+M-`=K!^TAaFGBUUu~5D6b3eoU~@Rx(?cql*84@nYqwM8n2GKzUy5?6($i z&KEk;rhRx)HFKrwEr~X?^dB5FUiSI#Hs*8jchBoJyJ49WC$2{r=MeLJ8eO_GkNJ}3 zR)XV=$6qga;jO$MTV=J@!`zdq3|{HVNRSjH3)YJGcXh_$@G`_-cj7qoliEEyC&iTC zBYpdw>?s9apyLq}T->RWx?FkJ!Eav(9VXYWiZ5rz+*F20vc;_2T+eUiWVgqd6tlcC zas9QuCi9`~fJXBLnf5D2^RN2e3}J9}Vwu%fIXQ(X+d1!Zm}$HnRXdRXK^4MqA%N%8 z{ZlzUnIOs+p7H~0k)4BI+3|-79gLpqtxn%K8%s~{mdF~5D*H{mU(0I!udR{FJ)F>O ziChurdu09t3CS`zMXjzM5Fb-yQ;iRdXpu)67MAJn=}@p(PCi;CK9;M(<27N9=FKnC zw;a0iT2#-X<>|7_n^kTTuj0O>k|Rw@KUAZ27?u^G%zJ7Ir@ONaV^ZGUw=SV`xoI8^ zdj@><68WlhaZ^IFERWJ>s3L1h=^`_0?zHifH?42P79}GETLp{v4IC3|>Y@z!oI14+ zm=lR^O~%Mu?*AKe_^D(qYMEBv+2Uf{zT~|1 zV2(5Jb$$R29F5m+Z0(}1TZj3hkl?_c7B}A_>Zxca6OF~vV?KNp8b8Ivkf@lDS8I_wRmkb? znAFGUws?jt%N8BwE_$Wgzj;`za+huL?l9Jo{!mH5>o^}8%r5a6&Kykbh01orIm4vD zUg5ib-M-j%!FE?q=W3%&--?P{yBL|r*Eh&c>K$};`nzT{3L1`qc@$tmF7RI$9f6xy z@jJI)oTkO>b%%w$cRFp|l8U@H8uE%oJ|xzxbKQi`SsKOpo6Ymq&sY1-FHBushCq03=brB8`}qNPyNZ+^Qu%HLYspL$ z;R)-#y&t%emtnkt?wxhPlPs^Cg^Zf@m@sHl`Ejh)p>m9Z%O3WT>%`3Z0lgUWI(f#v zzb+ARk!>GoBo@yTL2lq-^ zJ8IWmiVqFCO8pj+TXwI>_}Sdc&@j(pF%fgLd@8Ciuy%KzXwWlYHJ4;tT$(UbzNwoz z-GZu*Z{u?nU76c+dbj77_%{0ZR*7c5@aj-{E@%{OQF=b(y3B+_svVK>+4`e;^gCvD z?HspUB7B+wCdIK%8&*XXzVdg>H*UIBn$3Oj_Y2_W@nWz*t7j24c}5WOefnMI$A{@* zy6=tN7V$JsjB*&=U3x67^4S~9_0vqAnAD;q`H*nFIHqQp?vC@99c^jfRr zku-GxPRY*k2W(vS4(0x9zL+LeQfwey92pM*L$a#|Gi?k zc~()C2Ag1hjg6<)4q^vVO@}%K6u4CIRQ0?>J`#~RH!bwLclkCorrE5yGu+0=O+;TS616Z{lIcce8&?{|sFpQn6yg}CxGGIv<| zo?|Ckd{MeJsooI#hn%AJb^_8+Jbg6bRY}|75VIz9TF_y>Q<;0&{d7{^`YA63= zO*d#)P?l~9+s}pC5_WisK4lPsWv_;xciwa^h~V zd0fFX8~Ja81KcwsrTW=xO7s zlW~*zu^A=7dLePGy~EtCJ8$J&uBg217GvD&=xx^cQmf>d$0E_%VCS^eU>tz6aAY69 z>e!#M`}9L!!N$iG$`|o4ZYd}%j-!2KFXf3br|3d<(c}l+t+`kIp)@j`rkA{ijA&z) zO|WeCk8Ug}zoZ>buvK?Dl#zM=0N-3Waj17)pLf&=Bk1Nd3o0yWo#Gd+tmBZ+w`nG{ z8>C9{VT+*aZVP{))C8d+#E1^=3v209zIrC+Oh!r~)MK;9Pt2yC$+@V$RLL&2~PF>AJ39oUE=0j zoXSf4y*;82?khG5&dDj5fq|H|$1$FIH&o(!QhuXV-T#ffhO_YOr5fK?@#AJG5;8pG zdvNov%STk&k#4t0nk&Wi9Qtv%h)nr6$qwQE{jU*BjrS`^lixLvQD?XR{NCH)PLIqQ zzwh5-_Bl(ETC)fgCn%xqh8&<6D?4U+h!#kdM2A+eEC5|Y<^(^YC7*b>4=U3iK-4%6 z2y_Z6VXPT@~epH&z3@cn;}u* zM^m4B$eS{qiUi+6ZNmgEyZ+1$7?y&oLjk!)>#v_`$n;fGWilw|K^#~7>ea*gisoi| zfRMSDoBV!Qj*N{tPC@@b(#35?%Zr-YIX!)Ltymv4PYKCJOESre6Sml9bJUzy3TlL8qEHZ<>^FAd^r%kbXHl z)obk>4>_KdgINc@S_N8%Xm2N+X+Tb0>G^xh@Zq(QP8fjW3ZrmwK{gzOQ|sZce84~V ziEG95C6WA7cVB>4Q2ey-($7I=bFe9?>hokM&_k__`$;f23D-L;m8 zUM2kt@IS19y?W391<;HSnWpmR*WPQ9Qa!OJku$CjT=rRtw?#2oaO^I-ugE5t{HAnf z*^#?;j$4!O`e0%Gx`q0UxS9s!3+4BJSt9Y`=bCJ}QyL`N}a zT{OALF54KqWEiFe+v+tec2eB=%``##ujf<(t$)})Z_m$DWQ$`E zB{D{Te`YwiM#TRn9@+SS3(^I@pRfQDBd^6N2U*y68@AldU$WMe<>9mDM5tZnCt*9W zbDc8F*GVxick3hXs^q-paNx_ug!UCLz!9yavhqV3`SqNsALs%kZD^N;EbDo$l6*;S zi?sTvv>TM2i57$W(B#XavAG#MNF)an2}rF7c~S}N)Y=|+fAG8^{o}G9Yh?KKt@gC` z(YE{fb8c?*)K0p8cg}e2(}AzAJbD%Rel+?^cKnjkQXRuz+|PW@F+SP-L_-POlk1Dg zR>=Ixw0X^t852GeQ=cn3GG|JJ{89#f0<$VCUDU>zRzmF=W7YUJ4hqwYc;wL;%On4` zh|#A?3JLIZt9$!}r%k1Q-^dE>=h?ZKt{L&pHqpn)BXso_i6~U1I6)0HZ`i>%!>T*w z{I$=JH)?z`dnYve-VKyb#H>jeBG|B0A2$3PWp(S)C>l63LgBAQ*! zkD1{^F+4e<<8vznkmTp^QsjU$OJd{=cmELg5s0Rk6F8`1)!xXXpL0y^9}DS^&C-Pf zIY3_Nt+zsbv5}vuq+~KoiM$$3;w=Ajdu3kgOoPva@7rd=RJ(aCN_Fl0a;$q(ln`RD za8{iTjvC~U-x@_{R=v>wLOQN-NA${K(~3nYH#+M0;GtMXpeP~vj=ZG@M>&TAa#C-e zI-bvvAuG{p78WGK*rS!LVsVu5ar(~{bs`%SD!ze{-&8^j*Gz{1E=Pg5R!0 z$Y);QlUi|!Sss6tf9_ME(EYTIiM@lYE7>8n!~2JV*aI_s=$QCtZ-?ILp3guyAt`S_ znImxzWw#zglk{be)mond3xVbX{YWnONXL&PW`{+h-zRsg{i7~qBE|R#L#6#@qAEE& zsx-xgF!;POeBOKN$=x5(JA49t5gQ-u7NYUapIUAhdj0^Ev#00gZE6?!p6yVkS9we{ zJkPa7R`qXCpI>-&j@|Ao^5N?(-y9-Bluh(L5 zzQ5>>@4Y+!BXZ$W{f|6n6AAX3>*^nFnVZKCv&G9#*I*m6IOP(IprIVeujdDSHu-wp z1gmIR^`DLBkNjr^vamib{y;!q<2bE_#BX%Y;tP?zb2Qm^$@v9EDMigj7_U}8vy`}y z${!8JK2zL>G{v+u!F`{5_a+MECbETp`$-G6Y9t!~xnHcmAa+7*9h{cYUnINMBmHv+ouetDxd zG{BB?#Q)kXp8wx=-^hB|0L#L{HefM)m-?p`rdzSmmoGG!7M8VGgo&1MJ2o6$w+E533JL?UqAj@xWZ?XLpdJb`>r5z*rLX#l4jpeie1(e z+h*Y6s_#4tO|xCZ!Wf#E$S;PNu8^3w`}?kSamb-239vk$nfd$u4Jdv939s4>ymy(hVS^E%oBFgfS$Q_$P&u=J{+N6rY`T?9(ziyyF?CI zFh)`0v6cgA6d8z9xU`>g+QfMoadTE^j`sF)u;&~c9NId%4KXHJB7vRH*3bQT8}Vv$Gpi zeSgWQO!=6ckPdS`j}QYAo5l5~X*blXx*ThK(r5@V(ZvD}xg3dIA{RzP?#x`b_nUgzBBocn&VC*9z$jTGJA*J)Ws_hmR}bQl0+1Je!Pk26vJVNUx%@-@P9ai$KF3Wf82%+xd!3ltaC zv0yrB*tE3lNOiUXkJ0vCS)xhSdW@C!0L#IkW{04Tvy<#nZ@4spG7n5$Zy623-;E>J zdM86Co`hCDZTY#l%-Cpi%v;o5n&#o`Ta}xbA%M6^y*j z=Fq32bANo0q?j%l7ii}T!Cf6p>E8?5I8LXy$nu*@rq}pU_|ON{d^&Kgg^Nn?B2(05 z5n$T?US9Qp)r+cLMw|((EYzYtit#u{O8U+(*;`-Pk^3i(Q^~+<8%=D~Ar5yh|Lqd| zjyeucH!@$(Jo(zXpn0et=9&@6u79)BkEao7IjVFQ`)tg{4%uAh?>NA#^Ob^G^{}uH zy=L{1i`V8pvPw5r-%#Z84odG$3Bd}NUw^H+*2m#%LXtRH1ihVeAS}QeAu~DW%xPi?aOR^k)z1OR}HWfi(9X7Qzstk6MgD< z?y?LWkMM(WH}fLC``_hn4C{ST4$4a?(>C6OlTDw;yW*7Rn5FfZ$nZE zDh21h6eNvoK`+kLb|me4vGL}f-U&ek;WheSgkL2dV*Lz55ii=K)z3uV^MC| z4t5&L#jsJzO{&RyzP>7(v^Ao$b^g+;Rmxk$V!@x1DZkeET8~#^>WupNP-+CJs6Buz zgUqm#{b{nDwi!cslogW}{f?$OWDxgjWvv=80oEsE*jW;j19sutnJD^2vuS z4AqW=`-Qd%ALv__3`d9obBaWZ8dRn^*5|F(sY&u~gCy_@Tmvni?eObxm+!jNqGmOn zNQj)OLE1GeBW&Y_ZIy~W0s0T;*@ARFJ*N~tGln^#pt`;L;Gwf~ObZ2fRqf4VHii6B zJeXB=-Se^z?za;0b^?c9i>}7Lf?$k<;li}OHd{BMDSN}~^9!LF2&$wM* z+x3m_2q!Mz&ithiL)GX$NaVMIM&#)N(?XtQ7**UGk;i1A)&kkKd5N2ULDG5^ngN!oUU@^ml9Mt89)xEK&XRZ^P><$5Jad8iIyaTz>&F?19g9=?0 z1E$dJx<~BzHB(vsJ{>W7x1gRaPqJ&)h_l!s>17aLcj&e=w}|?o64IfugKj@F1s$TP zFm1VoIlUTZY@!N(M&CYdzR_~%>U@t|4j<{cm&xWcPj5Io9S!L#%@Ab}(v9dk20UIg zqIG;83ofD2XmePG=#h)k8mvMjHW5lA<4vnejcNzrwnG?!iDU*A$zM>jrqiG$-M6?v zPspiZyJhIALg2L?RUG|7$|;OS7qtvU+FDy#vsdSZC**mn&+PE%;+FBWKbJspTUy)V z&I`?q-J&#;mz4klGSO(}nDuGideHF5zL@d%*%e_G$i{^@UzQ(8J!j5ylg-rJQU zxtr7WvpnAL+Sl}e$F8!zB{!V)TV+JPo|t|2M2oT1Eyv=Lr{Ogz4nZOrxL^?|puR~P zGl&MpxaRM4v4YVH!eL8+WC2#rNg*)P)I;q;X6DKZ@Bwl`WbM<3<17Mf^o{Nqb9|vw z6lmmrZEb2yTZ8;+iTz97Q$lvLQY@-_o@g3}u#_9n$_2d{`lQD%>`*4T%RKlk>s$}+ z)trfL74NT#)lV1S+UAkM!_}*JBxN->hI**-Qy$l;dAC5yTHJ4C$#m3(J}Tul>y}-D zJS$t|7i5fD<3vWZ12$HBQba}eFAefh%Ew%-^og{^9ieq5YzT-PmhlJB{iEo=2GBR3<1@+Hs2z3N$? z#OAjZL#Zq{v0^^upKX<}hCnN!1vU*@pmeJ$zY{10SAWCKFRSWjf+O6N$#rNQf*57KHIha&6dm$D!5o%W#c@yMpI;-$KzeB*Ry zdaAzqqe7aW9L#Ikcm&0`Xbm>U!V`tx`Z3+HTcx%L9?CYU{z(qC;F2o!IPSaQPTSS= zJCoN~$E+ML+*QA$Jh+KIfNXGn*2I^&f!;`KuYJ(=lApXra|^i_mFz1tl}txAePkEp zQ;2DM?X~Zz zYDs%gpLu$)z5%&`8}x@MNGR%*1cU7s@~8S>Ly@CMPvUf{IK_fes9RgOQ}4ISa4WMj zw@}2(vYDGu#G5e3n^1ILW?Q=*GkLXj@rBF(Zn&O>>P|^;$!fPpeBIMfxDX1{+# z?Mn0f-edl|Iv&|qoXUwdU|!@}DDdA;7wE{)G2m-P>c2WwL2O=vep&1N+Nhg64oea_ z>lz_@oQujVDDoRrgpO&h$T?k>&2>GUsYqr`u1L{^mNpcFh#SWZm%oAs(eg z*~{i<80mGCC>50`Gd5FvWT$HbFXkq4Tt9<{8pSvFP@SG1oWB339MAySleJkc`8@EEAK0n2yNii9VCMVsvZtf4!Jt7_0-Mky*rl-t$xUtP^Xc7 zTBA$pb#J?><+L1{zrxQE&_}U3?M2PhVrEg1NusIbs@ndTk%FHGju}5b??EwW<{}`( zK$W1L?UcTgo5aq<^YR?!OLU(K{g4u^4`eeBe{-A_i@?>)_zIst>mp)2M6yArm%$2hMYW@ z?J>-s6=Ni4BXO=%)#KFcga6i@wa-63dR5C%GW*30Y6!NIGY*xgUplNFpEwkJxFPRE zl`yNAvcBoOQQl95x%?;n`?rTaRFYI~yOu5FoHK6P)mN~u)B5l;|Hp}220qX28`>}J zJ#ebzvBtKKjgt|k_F>n`2EXTQ;4K$ewq&J}p!;iGGI&LUsa<2bbN^hqVuzlugkxrr zm&a=l$M)h~>pqs4&X6)X@=Cn4 z_UAGN$sJse8Z>SOI%&=r)yi@t%PuQ&8?~<-O!wT;ZgrfYU+z8gPPcl$7?4X zC-@n6OT4r?r=|FOkBc2&@{C?1CC9GA3^`P7vTO`FEHQs$BaX_m>9uMMwO_IsO7{(L z&y7ur_&TGem{WA*zXfs;D!b{mT;^j;$QiLS@{C6Xe~^XSgaZ9K5&^^T0SUwY2T$td%&lzK&lpX`!UKY)#_Ax=Q2-8-#8;>0N zVMeb`zogkOp}V#FIj`6Sw|&JtJRQ-kX*@2uF^cTULi_7?*>yO*RwrIhNbMWV=2{U(`5EDw*DG&r}fR#P{=k^7*_t;ZjK zfaF=}{`XJ}i%hZHhbvD)Wgc;E$zk!bS1_RS+8=TQ{Mh{8cYgDvNJ?Xo;NSV9hF;Ol z*!IZ|L7n?b9MStlB&WFN;d{|H;FocG&DOBrQ|!doIPYvowiTu5@j^qVt9nL^Kp6{r z0Qn<*4|`at;5Dva+H-%_v5GmtimBvctI%HlO|g7c zl(Fri0$VAW#(26Zs2|U~dv1`>$Dz!bB;1%iV)MyeL-5In4Kw|rlLrr;h}MvDl8MN@ zF6VUp)$NSdOY=9rJ3KpUXm)aRQa@AlkfW9a$s>S@Do{75F*?(OP45|5XXd5R3DOPC zKLLWj6ReB$KPZqgsx?KXTO*Y(ZDXkrRTrUa9Vdq=a|)K7+(Q0nDVB%q!Brx|t&()l zR1TD(LLjoMfRyG8#EPbT`tK`BNCot>h5LAKJK zFM`SXz5(f~t)*|BqbaRFyGw@ikW<=T-`Mr2-A=&MP==50@J4riNB%=;!3#{{+YFjD z!+RFz!jDihvwD&11z6~KvXYqAz+I22P4r*raYn{PaMd8tn z-cnqytRY4gZaJOwHk}t(|1?~6{B!-+bC!^BWv_7hZ5+h%Oa zPflL{R`utNw5FP*c~$!P$~4bQD_^Z=J>INv?dIv2#Ud!XlW$7%>ZNe^GE-8SdyR^G z0Lx_1P)%u1K$_ff?IWaksW*paU9}tn#Hm!xqbGf*^amAwcuI(}Yf>6BB|9H2NSo<% znu^ejbhi+t;P;;4DKXk2A@1U+TWi!4wj}IS$}z=u)2e;`W2$R@OY0%N{Ra!i>(d<1 zZ~Df=Wcxt9lhLB}D9>Gk9Qu_8f69F}A1IUuN^Th#e(9aO4C#Ux4zY|4SZU;s*0<~<6IJa$0>H|vTyOxnBkgO6wU14qiJlm(Pq=Bo4?af9G#E-?bCKhcD2l{ z=Ha8`BOMV*I`*geQ?ho6W=tCAuoyP!(1*J1Iq!UXSax*sc$W4}d+J*#qP!N6At12x z#->Lu6!99&O7}MfCvW$BzNLYr>u`fRNQk!O^lnQdH}sCGitDL#ev+0^o+!)BZSV=S zEiz|&MxH#-6gkamd9XF|y+)Q-WKiwVuWXyXD%ZYxm#)&O$Ho8i=I0lTvxjI^>Y{&M zvgu^xN!u8B)z^_lyLLKV6FDdfqH;t&r=Z=wkE2<}TrA?#1Fzh|*^ANR?+W^~JqPN4 z=-xSbGWo&7=@&gs5tOwBfulxQb&t(1>_>HCtj>ds(=0)I-%Lw2dh?xu0Z*N8mhSQP*DRHDvK&Y__vN|p9s zMFu(9>80=q&WBn9>XQj8$rg8kua@`jq!r7ves?z+*-jwqDQY5e8|$zih_RCUTIc z)OE@n_K9%REutP6^|$!CrY@i-P7|2f|Hpcfu_5kr2(kv#uULC#dn(2L4q2zap!v4> zZi%&Zk5@}7vB!Z}`^LQBh#bl=-W;x9Z#!~I<$R9WS9xYd3hdgbZO;??|L5K09~DPx z|EKl^zok|F<9yy@(L;%gf*+8`!*|FUNmoAHH!C>tywBQYRfCd9$O?qTeTpyD3BMTR z{V(N=z6x$)T8SSGGyV71SlwyE^)B^la4JeraD`|^!e+7m2-z7i4fPRfv zYHI3J0V!4EDXCJSNDPC}CUA5lUyjF%q(sp&`=c|*>V7{k=f-cGRv{^Bm8tw`S6HW7 zSX!0RMyC=+V@+F95Ba=1^>2*AVzjFH8ceNxL%@Q}fezL|d1jDlUe4AZGeJ*TXyl$s zE+lZCJb6+AGGSwoNjvA4MMGJ^7VLdJud^WRQhS}>kIOmVw&8yj1#vkaEsKV*Mc_zD zm-$H(B4H`B;h6urzE|4>3H;>6eHnQ~rlN-HmO^ z`Bw*NL6FIh=AZ25@e2^Fx(?-WJFqZYM-6?uZ`I(@X?YzSrGj#Da-Y9@h@q;-6D*^W z4)5d45B#KdxEng&hR9C9Y-*#>kS{4@#i4ko5n%YL?h}CM?zJ?x|WR zlS@J<)hv;1FZy;f!)9fiKMSDW4DFoNn@ug)wm&P2#oWjauf7#Yef{pP*bLa5U*9Ex z__+}(_R}Ei8;ELlV8f4>rr<^SmHl--8mXcOE9m9O zsa)QL@dtP0Cg+P~cQIqO-`~f_DSDjE)(@u#p{$mJgRn%&ASF?@1$xZLLfyUwrKwjz zkrHKegeDf+*QNYcJzp&iN9M_jIRF+}MR#(8<&{3_m=RkSgJL3U;RDK7P!iCPCi*M3 zf zIh7HR;K~3^+UG~FgTWTO$@z13O|DHHI736x!OH^$B87!teT--xb)GFt0tciWNZ01cKI~m;cJ-sW-xPwHCrwuJo0n1G zIb}zyUPPgjFX5=io(ADjSNWAaz>9gXCGOhPg{DKam#AaIB9Vg15RnmZ7o?2kSBs%$ zjC|?S&dBio~F5PAT-B2TMf8Akp!8)KG<*#HHq^ zj5mlRI#=CylB~Rc?!dmJ!agP*&~t6Ra|U#;*5J2>f|$0AjUX|4@87>K5vQ`GrdQ9< zk#_A@CR+cNP*4X6kt(yqw&&<}f{-j1NfNxF7=%IS>()SLp4G0YEQMF;^5FaUy(QDN zjD?cs_hx{Z4)L!q(V|?0tPz$T(q{;%+E8ZR2#_b&_uM%TPXEleYD(avuErL$vp1eV zt(Yjm^?I%=SMc+rOJXc4bF6-|i35X0z2~V&QG6;}(9m8FL8F7D6df3P6@~_`U*%J( zujW6WgvQFzFCKr-GozVm_K&U0fnv92nNFyaS4Ps6V{=IXw^aW9X1lw{-+;k@IFQnP z0c|XX;v|?OoTcZF{-^2F7LQ?8;Vpy3SXje46WBOH(W1j_%u1$+$awuGqZ0K^dq(T>OTb3ae38gKl4T^d`?#;316gIR& zn*aLW$HJY&xDEH!D1QJX?RcR!= zTuv0b!35-iAN^71xH$;%%D*Q#cY#jX&c#HJpxi#0Yps#p{6qG9#XQmKTZ5!$)4O-J z*lc1-mwp(*h?@}lLb7MuMI9u$x=>cx{q*=VTbConv*?@OOUi!ySQJyOBym4-w^?q$ z{M0}ycl3eFHPoEB0}yq3KRR3AQ=m%S$ff^W|KIV&X4tCyAE)B~)jJ43KLln}9BSa{ z$&=L{!J!fd@dl)=@qV1JVZ=GL5H>m)emX;GX(GQx()Kmoo0r6PCC7|RFZ8-L_An8k z>EQBsPHZ8!FGtltECm$}K>(a58}dUyh%^$6AEO#r+^SM}+v+4lJR9AmUhXOqH-AY6 zy(x&_i0cxzZ3gq*&@r2`=fnM6FNnF#ln<=E=*)5ca`f*_0o%w^IgLRqs$n{OUMNRo z~v&Xm;Lvpoj;31L5>@2`M%luf{G;i zYI%Y~{h*;?Blg`1y|yp@^ZqNn1CrL&q)7{xBVJ=qvTlF@62f9cmNr00*YijEb&vrQ zz0o$%ozwrVh76{#VG0yk!=O(w)U>B6Dr^9z563A5>@rGZiJeGfC5Cfe{XRrwZy7ly zAOm7%VC9ahQYy$4;C+eVR~zL>`aOQ!I4uw5<-HSn3`4`+4H((Lbr{ zfB2)&9gk8NoHLE!J03W@yx{Y9u@BHRj51hk!B#g^&uJChJK2CzT6!24aAA+sv8YYB zRnCsKG~!=T=p9FEz0Mu_!qoxD#1G0FC=FCxl_Qdm@J*4q(2J8y?|768k8U$~K7w$X z(D~yY?lbkApw0n%JU2v4f;dbqEu)p7H3!mO^a;jE+0mf!`*D4ac|Hx^)N?fXiX>FS zK#NJx++xrmTS-ukqkql~CD^vObdLvNr@@L4iAP7ikMNkVd>!X!>8nPGCicGaE65^a z+ThSQ&Y;b?WGHkim=dJWn}EEj(uprfKcN9ab#+=3PfdXY8_s&HS+k;Z+!#XSn}Z>M zJ`8uK{RJA^kdi6pP&?NpsXY6BFWY6*>VduiGFRx?-biR3WSAhBCNzC-cYdAt_o#Rrt=IX%un$>F$;G|36 z_V|Zmy-v#gu2}4E8uq^PSq@<)UZy_luHZUL%g%`bReBpfRdZyci%c4PikPmr)7?-ZxYlJO? z++zcmoomHB2jd=^!}r8(KrS9#vXJAyCf4-!ZTOoehx|M&vzK5i$c6MkIE6J1o->B3 ze}o81Ttnp=o9Rs@?O4_zL%KT#OFCk0Uq`Sgi#62Iu!$f)QnvyLg^wz5gcR_w{v8*ynSl} zMv1jW|8+T>8LY&g-b!Dk5wDarm=tSR$#XCy@9m}YI-Z$2clKRq+AR+CLt=dH-no-& zsJ3>eVtMS@q&H`lL9%Uz=*z5Bzl6K@?!APfY3^vs)ff~2=BW!*<0!s5T|?UqUTOpw zD_!9G@4}`{T#G_28$k=X(vjm=4=JS<99ezBE%F{?$7Iickzc?v%Y}E7yYuKH$=h#V z|6T5^l3nTNvYQxK|0@R#6l?HWoPpM#1Mz=&#OI($%y!zg^Mxhv@~VsM)~mzeA_W(O z=_nJinNAj--AqhO)!+G?__m++=ZniV|A3mX=+e(4CKeX&iJ+jtou?PN-55pi97~dj z*N5a+RIPYQ<4Zg_wnK$myYM+Cuw4ZQeRI^;1I;{@m?@*4T< za2(kYRCMqaJ`MY?j_~KRZ9k9;cRd2^N-ux5W#z+`?5!GT;j$xcq?gr}2iGDW?8cYD zkcv+7Zk5F^b+F*?E0@Q_F8^p1To_ebkLPBhnN*Uz_+1Z{a9AfUu<*$3QP6_3Wag@YH-)C!|b_jH)4-neEGI zb#+pv`Nd{2lU$gdBEL27B4}@3hLzh3;Z}G&iVbGt1Bnahsj5Sp@=2Hzv0b}tTU1xX zQGh5WHl_p-ztb?^>rI3_5LQQb=!UIv23dB5axd{w|36Ju#K^)*pNWzZZjw%f&j2dh z(_7`vx2xVJG<>BRy72U9K(O&&8@DpYc4%s8IRovIGZ(+Vw~6}qv}6ryNEn<3IlPV1 zm0$KP%CmaqDdo?n#!}Z;&)iE+ZvHpcU*E7T%y(MlOM~YVEuUMhka8w!&Km0 zkdKq38@kXl(Ty0Xo=fQpMI2ts-u!bdp1DDyYW2dT#VsL+JhLt&@VV@w@A`UvLi^ zPgV2~?B?CKb{sy@eCFMqo#$SMvFRCa+C71`4jcIKtslS>)P)D;ckeUwUp|VJQ4p4U zozFWgnn&RlRxSuLsj5}~e7)^3)%&>|*P^AWj^R=G^tA^yaWv}B^!vqon?=bW$!9R(Ah|h!T_fGfKDCG!6Y-;UHQHgkC_n)aPTQqQ%*&iI+_U zo`p$$a41fgnVWM{RTrJ_^ZxKhnnQdK4)?Ij%mEb$7TBCXi)^A>1RSRZ+t6P-n79ab z?X&JVP#!UnFkzjwC!R?t_Z)Aq%c+OB4C4*r{gQch0J8B!NOkT+b;n*soy6y0kWpO=ObJ$QuJZ+1dM ztJ&}O?bHItIw%};>&x{$NIqk4pR2a^)3B#>d28n1g~Ejjr#;}Sow%;HYNOSK(u{X- zoYIr2tl=a@9o&nUcmdT4%G)Mj)*aNAKgMESeGybdje0%TJ8%(8Ki_I~n3K&0dLJ^d zsWSWablch-Q4O8$ILoB_~r)>rBFty_|3KJe(Js`5ha zdv}W0ckVlP?-njcf%K6rh#fkm1uZWi36>!`T+6tpeHfTT6k0zyW-pfaiSFE4gW2Gn zVInN#cGadB<@|TBMFn<+5WcLyQBG=|P`mGwIiPWvXeV0ya*^ecL2?9uqvEA=yO3(r zPw;1CWF#JIU!os0!%*~x)A$L;_e+ZKB67oCW_ONnpIAq{D$pd2FnG(%7c{v&bQoFv zgHTBAFX0N9y|kx?wm{p{NnXJ(9Fg^u<$e8MEkpg!F!L&sV;h5TAZvH65GVg|vML@S zPSS=Fh?8~UiM+ENy9j@bL=+Ih8w(29M!-hA2493785@sX>eqB_u*$>6F*E&7R6BvZ>`N104uvAPvBZ zs?j<;G$cM7gcsuVgeU#9rqrVfDYObv#8;rT$P_@!GH4PBV8YPm={WGbd@;0M`8X)#>U4{_W}{?k6(RHJ~ts%<2($)xjBL;yb)(r-nnk+Rk(&V@ESUu zuJ+7I)K%?0>*a-tR8UNBzWKpgl0>(V>I2_n=6=;GHGt8;W`{b$(i4nQlSR*-Pc{E} zAm+Ex4~L5_fF=E5Kng5qB7_%4IMiKm28eS`+_G#F&`7iuIL?$dJM0bkT=k6el&2tk zyBUZy5wK)E0S6#RIWYGz`{`5YsT{hV5+AnvD@D}NdwZ;6;3;#W(=M9MP*=AG@338K z@J~|KBy8=+m>s&c(3>ZsTv82x{8ZIC9~BK#H4N_dqL|eNmx9Gyufc6_AJww6^#m7FT zh``z*LQuBvCIiL(*{MXlrAv*tRron+$?MW2B8Xvr#NV=_i9rPmGeiOmfEg|hY zH8^F!?O%A}9(1Ew%u4obQhAv~Pyud;E8S8EHsgwa8?Hw_S_c-)fM z5T3vka=}MP*fXML9RZOP7A461ZD)q-;mnA|@To*ZZ8QVS^HFt^kf3umP?kj2Hne=6Tt*KdYAiqVm4*LO= zbI~ZPCP0WpS(jQ2>&?{ESPY8Ez$`==^MEgeeubJs4JD8$9{3@$h}Qz(&~YNFJ>la#kQj3VuSvKa z#BW?|QMr!%NoMmvFq}6!0vbnh!5w)G<+ZssC`kn^Boab(7Vh<%iAGq$@;dU#c`O9N zMJ2BW^BZR;Q5CH7~wgcq5@Xr?)UsEW{Ic1+L zW~OE4QHRgm?>Vvocm`1?ezg)l*cP>=8WzPlzHqLM;|5_`i>#`2S`R^d`*Yr#!;%Rx z{97P5@o>7Yd~v6}ia0)zi8B0yGvTJz1X8ovz=!G)peU?c2k_dx9JEJQ=RWFeSJb?&c1E6njBsrs{6aQR*9n5GPs;~vP37xx=%q^AeC(Z6qj8ahAu`SX%=iKkW~hDR`F2s=f)9khnTgN%(*W=b&A+PmWG# zdDa5R>+7&ew5{g>RhA5@sRn0Z7hcXBDhn%!(7MM~u70~~3d1-OcPi%$;GBsFu@}}@ zdDc-fyyQ=x_dZM2asH-9ZA>NmVaEUgIW(uJoK*4$!qbJF6)zeg4sFUmKB|`?m7WJW zQvw4<5(iKWpR=Q*rZi+7Te-opkT*!|+^(+I)`e?R0#1k8A~ z7tvo&i_6o!9&+1PdSCJEW#C^#pcxg#bh&PWTrMJY$p$Xs!dv$_vVwSD9LhAr6?(#a z<|~R8)~3BHCLSf8w*>;#L+8|xz%M@HCSQQ!HI0y_%!Clti+AT1$9+4%v%$%eiW|~2M|}se|WGA1;{dmi9U{guTfsY zBsbmLT{2nJO8~-zJwPs_a|XyJ2iB{KcVP?&8Ytmdd02$2k(OZor`wMj7K;82dxZQR zkO48i`1-L8*zzEfb`dU_RKt`J2Lx8#h`C>=|NmYvFtbjPylwFGBI|KY68_WG MHqd&p-#YMr0DTIj9RL6T literal 0 HcmV?d00001