From 105ecb09e912f235c29b5e0b7120c718701fb3ba Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Tue, 28 Aug 2018 17:06:49 -0700 Subject: [PATCH 01/19] Extend region sizes to cover extended rank if originally at least as large as rank. --- src/common/common_utils.cpp | 2 +- src/kernel/lib/context.cpp | 22 ++++++++++++++++------ 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/src/common/common_utils.cpp b/src/common/common_utils.cpp index 8426f595..b43d76ed 100644 --- a/src/common/common_utils.cpp +++ b/src/common/common_utils.cpp @@ -41,7 +41,7 @@ namespace yask { // for numbers above 9 (at least up to 99). // Format: "major.minor.patch". - const string version = "2.12.04"; + const string version = "2.12.05"; string yask_get_version_string() { return version; diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index 2ba23e4d..19633ba6 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -348,8 +348,10 @@ namespace yask { step.setVals(_opts->_region_sizes, false); // step by region sizes. step[step_dim] = step_t; - TRACE_MSG("run_solution: [" << begin.makeDimValStr() << " ... " << - end.makeDimValStr() << ") by " << step.makeDimValStr()); + TRACE_MSG("run_solution: [" << + begin.makeDimValStr() << " ... " << + end.makeDimValStr() << ") by " << + step.makeDimValStr()); if (!rank_bb.bb_valid) THROW_YASK_EXCEPTION("Error: run_solution() called without calling prepare_solution() first"); if (ext_bb.bb_size < 1) { @@ -392,15 +394,23 @@ namespace yask { for (auto& dim : _dims->_domain_dims.getDims()) { auto& dname = dim.getName(); - // The end should be adjusted if there is not - // already an extension. + // The end should be adjusted if an extension doesn't exist. + // Extentions exist between ranks, and adjustments exist at + // the end of the right-most rank in each dim. See "(adj)" + // in diagram above. if (right_wf_exts[dname] == 0) end[dname] += wf_shifts[dname]; + + // Stretch the region size if the original size was the + // whole rank. + if (_opts->_region_sizes[dname] >= _opts->_rank_sizes[dname]) + step[dname] = end[dname] - begin[dname]; } - TRACE_MSG("after adjustment for " << num_wf_shifts << + TRACE_MSG("run_solution: after adjustment for " << num_wf_shifts << " wave-front shift(s): [" << begin.makeDimValStr() << " ... " << - end.makeDimValStr() << ")"); + end.makeDimValStr() << ") by " << + step.makeDimValStr()); } // Indices needed for the 'rank' loops. From 48c9c4206804a471a0f6cab699f0eca283fe30ad Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Thu, 30 Aug 2018 14:17:51 -0700 Subject: [PATCH 02/19] Add temporal blocking up to 3D. --- src/common/common_utils.cpp | 2 +- src/kernel/Makefile | 2 +- src/kernel/lib/auto_tuner.cpp | 3 + src/kernel/lib/context.cpp | 554 ++++++++++++++++++++++++-------- src/kernel/lib/context.hpp | 25 +- src/kernel/lib/settings.cpp | 40 ++- src/kernel/lib/setup.cpp | 107 +++++- src/kernel/lib/stencil_calc.cpp | 23 +- 8 files changed, 584 insertions(+), 172 deletions(-) diff --git a/src/common/common_utils.cpp b/src/common/common_utils.cpp index b43d76ed..f44faad1 100644 --- a/src/common/common_utils.cpp +++ b/src/common/common_utils.cpp @@ -41,7 +41,7 @@ namespace yask { // for numbers above 9 (at least up to 99). // Format: "major.minor.patch". - const string version = "2.12.05"; + const string version = "2.13.00"; string yask_get_version_string() { return version; diff --git a/src/kernel/Makefile b/src/kernel/Makefile index 1abb6671..7611c2b1 100644 --- a/src/kernel/Makefile +++ b/src/kernel/Makefile @@ -515,7 +515,7 @@ REGION_LOOP_OPTS ?= -ndims $(NSDIMS) -inVar region_idxs \ REGION_LOOP_OUTER_MODS ?= grouped omp REGION_LOOP_ORDER ?= 1 .. N-1 REGION_LOOP_CODE ?= $(REGION_LOOP_OUTER_MODS) loop($(REGION_LOOP_ORDER)) { \ - $(REGION_LOOP_INNER_MODS) call(calc_block(bp)); } + $(REGION_LOOP_INNER_MODS) call(calc_block(bp, phase)); } # Block loops break up a block into sub-blocks. The 'omp' modifier creates # a *nested* OpenMP loop so that each sub-block is assigned to a nested OpenMP diff --git a/src/kernel/lib/auto_tuner.cpp b/src/kernel/lib/auto_tuner.cpp index 1c49d0c9..20b80a16 100644 --- a/src/kernel/lib/auto_tuner.cpp +++ b/src/kernel/lib/auto_tuner.cpp @@ -303,6 +303,9 @@ namespace yask { // Make sure everything is resized based on block size. _settings->adjustSettings(nullop->get_ostream(), env); + // Update temporal blocking info. + _context->update_block_info(); + // Reallocate scratch data based on new block size. _context->allocScratchData(nullop->get_ostream()); } diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index 19633ba6..69a20796 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -58,7 +58,7 @@ namespace yask { void StencilContext::api_name(const string& dim, idx_t n) { \ checkDimType(dim, #api_name, step_ok, domain_ok, misc_ok); \ expr; \ - update_grid_info(); \ + update_grid_info(); \ if (reset_prep) rank_bb.bb_valid = ext_bb.bb_valid = false; \ } SET_SOLN_API(set_min_pad_size, _opts->_min_pad_sizes[dim] = n, false, true, false, false) @@ -91,6 +91,8 @@ namespace yask { max_halos = _dims->_domain_dims; wf_angles = _dims->_domain_dims; wf_shifts = _dims->_domain_dims; + tb_angles = _dims->_domain_dims; + tb_shifts = _dims->_domain_dims; left_wf_exts = _dims->_domain_dims; right_wf_exts = _dims->_domain_dims; @@ -192,6 +194,7 @@ namespace yask { _opts->_block_sizes.setValsSame(0); _opts->_block_sizes[_dims->_step_dim] = 1; _opts->adjustSettings(get_env()); + update_block_info(); // Copy these settings to packs and realloc scratch grids. for (auto& sp : stPacks) @@ -330,7 +333,7 @@ namespace yask { // Step-size in step-dim is number of region steps. // Then, it is multipled by +/-1 to get proper direction. - idx_t step_t = _opts->_region_sizes[step_dim]; + idx_t step_t = wf_steps; step_t *= step_dir; assert(step_t); idx_t end_t = last_step_index + step_dir; // end is beyond last. @@ -367,13 +370,13 @@ namespace yask { os << "Modeling cache...\n"; #endif - // Extend end points for overlapping regions due to wavefront angle. + // Adjust end points for overlapping regions due to wavefront angle. // For each subsequent time step in a region, the spatial location // of each block evaluation is shifted by the angle for each // bundle pack. So, the total shift in a region is the angle * num // packs * num timesteps. This assumes all bundle packs // are inter-dependent to find maximum extension. Actual required - // extension may be less, but this will just result in some calls to + // size may be less, but this will just result in some calls to // calc_region() that do nothing. // // Conceptually (showing 2 ranks in t and x dims): @@ -384,13 +387,13 @@ namespace yask { // \| \ \ | \ \| . |/ |\ \ \ | \ \| // ------------------------------ t = 0 ------------------------------- // | rank 0 | | | | rank 1 | | - // x = begin_dx end_dx end_dx begin_dx begin_dx end_dx end_dx + // x = begin[x] end[x] end[x] begin[x] begin[x] end[x] end[x] // (rank) (rank) (ext) (ext) (rank) (rank) (adj) // // |XXXXXX| |XXXXX| <- redundant calculations. // XXXXXX| <- areas outside of outer ranks not calculated -> |XXXXXXX // - if (abs(step_t) > 1) { + if (wf_steps > 1) { for (auto& dim : _dims->_domain_dims.getDims()) { auto& dname = dim.getName(); @@ -401,7 +404,7 @@ namespace yask { if (right_wf_exts[dname] == 0) end[dname] += wf_shifts[dname]; - // Stretch the region size if the original size was the + // Stretch the region size if the original size covered the // whole rank. if (_opts->_region_sizes[dname] >= _opts->_rank_sizes[dname]) step[dname] = end[dname] - begin[dname]; @@ -412,6 +415,12 @@ namespace yask { end.makeDimValStr() << ") by " << step.makeDimValStr()); } + // At this point, 'begin' and 'end' should describe the *max* range + // needed in the domain for this rank for the first time step. At + // any subsequent time step, this max may be shifted for temporal + // wavefronts or blocking. Also, for each time step, the *actual* + // range will be adjusted as needed before any actual stencil + // calculations are made. // Indices needed for the 'rank' loops. ScanIndices rank_idxs(*_dims, true, &rank_domain_offsets); @@ -446,7 +455,7 @@ namespace yask { // If no wave-fronts (default), loop through packs here, and do // only one pack at a time in calc_region(). This is similar to // loop in calc_rank_ref(), but with packs instead of bundles. - if (step_t == 1) { + if (wf_steps == 1) { // Loop thru packs. for (auto& bp : stPacks) { @@ -500,9 +509,11 @@ namespace yask { // If doing wave-fronts, must loop through all packs in // calc_region(). TODO: optionally enable this when there are // multiple packs but step_t == 1. + // TODO: allow overlapped comms when the region covers the + // whole rank domain, regardless of how many steps it covers. else { - // Null ptr => Eval all stencil bundles each time + // Null ptr => Eval all stencil packs each time // calc_region() is called. BundlePackPtr bp; @@ -536,6 +547,66 @@ namespace yask { run_time.stop(); } + // Trim boundaries 'start' and 'stop' to actual size in which to compute + // in pack 'bp' within region based on 'shift_num', which should start + // at 0 and increment for each pack in each time-step. Update 'begin' + // and 'end' in 'idxs'. Return 'true' if resulting area is non-empty, + // 'false' if empty. + bool StencilContext::trim_to_region(const Indices& start, const Indices& stop, + BundlePack* bp, idx_t shift_num, + ScanIndices& idxs) { + auto step_posn = +Indices::step_posn; + int ndims = _dims->_stencil_dims.size(); + auto& step_dim = _dims->_step_dim; + + // For wavefront adjustments, see conceptual diagram in + // run_solution(). In this function, one of the + // parallelogram-shaped regions is being evaluated. These + // shapes may extend beyond actual boundaries. So, at each + // time-step, the parallelogram may be trimmed based on the + // BB and WF extensions outside of the rank-BB. + + // Actual region boundaries must stay within [extended] pack BB. + // We have to calculate the posn in the extended rank at each + // value of 'shift_num' because it is being shifted spatially. + bool ok = true; + assert (bp); + auto& pbb = bp->getBB(); // extended BB for this pack. + for (int i = 0, j = 0; i < ndims; i++) { + if (i == step_posn) continue; + auto angle = wf_angles[j]; + + // Begin point. + idx_t dbegin = rank_bb.bb_begin[j]; // non-extended domain. + idx_t rbegin = max(start[i], pbb.bb_begin[j]); + + // In left ext, add 'angle' points for every shift. + if (rbegin < dbegin) + rbegin = max(rbegin, dbegin - left_wf_exts[j] + shift_num * angle); + idxs.begin[i] = rbegin; + + // End point. + idx_t dend = rank_bb.bb_end[j]; // non-extended domain. + idx_t rend = min(stop[i], pbb.bb_end[j]); + + // In right ext, subtract 'angle' points for every shift. + if (rend > dend) + rend = min(rend, dend + right_wf_exts[j] - shift_num * angle); + idxs.end[i] = rend; + + // Anything to do in the adjusted region? + if (rend <= rbegin) + ok = false; + + j++; // next domain index. + } + TRACE_MSG("trim_to_region: updated span: [" << + idxs.begin.makeValStr(ndims) << " ... " << + idxs.end.makeValStr(ndims) << ") is " << + (ok ? "not " : "") << "empty"); + return ok; + } + // Calculate results within a region. Each region is typically computed // in a separate OpenMP 'for' region. In this function, we loop over // the time steps and bundle packs and evaluate a pack in each of @@ -568,12 +639,10 @@ namespace yask { // Step (usually time) loop. // When doing WF tiling, this loop will step through // several time-steps in each region. + // When doing TB, it will step by the block steps. idx_t begin_t = region_idxs.begin[step_posn]; idx_t end_t = region_idxs.end[step_posn]; - idx_t step_t = _opts->_block_sizes[step_posn]; - if (step_t != 1) - FORMAT_AND_THROW_YASK_EXCEPTION - ("Error: temporal block size " << step_t << " not allowed"); + idx_t step_t = tb_steps; const idx_t num_t = CEIL_DIV(abs(end_t - begin_t), abs(step_t)); idx_t shift_num = 0; for (idx_t index_t = 0; index_t < num_t; index_t++) { @@ -589,119 +658,137 @@ namespace yask { region_idxs.start[step_posn] = start_t; region_idxs.stop[step_posn] = stop_t; - // Stencil bundle packs to evaluate at this time step. - for (auto& bp : stPacks) { + // If no temporal blocking (default), loop through packs here, + // and do only one pack at a time in calc_block(). This is + // similar to the code in run_solution() for WF. + if (tb_steps == 1) { + + // Stencil bundle packs to evaluate at this time step. + for (auto& bp : stPacks) { + + // Not a selected bundle pack? + if (sel_bp && sel_bp != bp) + continue; + + TRACE_MSG("calc_region: no TB; bundle-pack '" << bp->get_name() << "' in step(s) [" << + start_t << " ... " << stop_t << ")"); + + // Start timers for this pack. + bp->getAT().timer.start(); + bp->timer.start(); + + // Steps within a region are based on pack block sizes. + auto& settings = bp->getSettings(); + region_idxs.step = settings._block_sizes; + region_idxs.step[step_posn] = step_t; // override. + + // Groups in region loops are based on block-group sizes. + region_idxs.group_size = settings._block_group_sizes; + region_idxs.group_size[step_posn] = step_t; + + // Trim region based on pack settings. + bool ok = trim_to_region(start, stop, + bp.get(), shift_num, + region_idxs); + + // Only need to loop through the span of the region if it is + // at least partly inside the extended BB. For overlapping + // regions, they may start outside the domain but enter the + // domain as time progresses and their boundaries shift. So, + // we don't want to return if this condition isn't met. + if (ok) { + idx_t phase = 0; // Only 1 phase w/o TB. + + // Include automatically-generated loop code that + // calls calc_block() for each block in this region. + // Loops through x from begin_rx to end_rx-1; + // similar for y and z. This code typically + // contains the outer OpenMP loop(s). +#include "yask_region_loops.hpp" + } + + // Mark grids that [may] have been written to by this + // pack. Only mark for exterior computation, because we + // don't care about blocks not needed for MPI sends. + // Mark grids as dirty even if not actually written by + // this rank, perhaps due to sub-domains. This is needed + // because neighbors will not know what grids are + // actually dirty, and all ranks must have the same + // information about which grids are possibly dirty. + // TODO: make this smarter to save unneeded MPI + // exchanges. + if (do_mpi_exterior) + mark_grids_dirty(bp, start_t, stop_t); + + // Shift spatial region boundaries for next iteration to + // implement temporal wavefront. Between regions, we only shift + // left, so region loops must strictly increment. They may do + // so in any order. TODO: shift only what is needed by + // this pack, not the global max. + for (int i = 0, j = 0; i < ndims; i++) { + if (i == step_posn) continue; + + // Shift by pts in one WF step. + // Always shift left in WFs. + auto angle = wf_angles[j]; + start[i] -= angle; + stop[i] -= angle; + j++; + } + shift_num++; // Increment for each pack. + + // Stop timers for this pack. + bp->getAT().timer.stop(); + bp->timer.stop(); - // Not a selected bundle pack? - if (sel_bp && sel_bp != bp) - continue; + } // stencil bundle packs. + } // no temporal blocking. - TRACE_MSG("calc_region: bundle-pack '" << bp->get_name() << "' in step(s) [" << + // If using temporal blocking, step through packs in calc_block(). + else { + + TRACE_MSG("calc_region: w/TB in step(s) [" << start_t << " ... " << stop_t << ")"); - // Start timers for this bundle. - bp->getAT().timer.start(); - bp->timer.start(); + // Null ptr => Eval all stencil packs each time + // calc_block() is called. + BundlePackPtr bp; - // Steps within a region are based on block sizes. - // These may have been tweaked by the auto-tuner. - auto& blksize = bp->getSettings()._block_sizes; - region_idxs.step = blksize; - region_idxs.step[step_posn] = step_t; // only wanted domain sizes. + // Steps within a region are based on rank block sizes. + auto& settings = *_opts; + region_idxs.step = settings._block_sizes; + region_idxs.step[step_posn] = step_t; // override. // Groups in region loops are based on block-group sizes. - auto& bgsize = bp->getSettings()._block_group_sizes; - region_idxs.group_size = bgsize; - region_idxs.group_size[step_posn] = step_t; // only wanted domain sizes. - - // For wavefront adjustments, see conceptual diagram in - // run_solution(). In this function, one of the - // parallelogram-shaped regions is being evaluated. These - // shapes may extend beyond actual boundaries. So, at each - // time-step, the parallelogram may be trimmed based on the - // BB and WF extensions outside of the rank-BB. - - // Actual region boundaries must stay within [extended] pack BB. - // We have to calculate the posn in the extended rank at each - // value of 'shift_num' because it is being shifted spatially. - bool ok = true; - auto& pbb = bp->getBB(); - for (int i = 0, j = 0; i < ndims; i++) { - if (i == step_posn) continue; - auto angle = wf_angles[j]; - - // Begin point. - idx_t dbegin = rank_bb.bb_begin[j]; // non-extended domain. - idx_t rbegin = max(start[i], pbb.bb_begin[j]); - if (rbegin < dbegin) // in left WF ext? - rbegin = max(rbegin, dbegin - left_wf_exts[j] + shift_num * angle); - region_idxs.begin[i] = rbegin; - - // End point. - idx_t dend = rank_bb.bb_end[j]; // non-extended domain. - idx_t rend = min(stop[i], pbb.bb_end[j]); - if (rend > dend) // in right WF ext? - rend = min(rend, dend + right_wf_exts[j] - shift_num * angle); - region_idxs.end[i] = rend; - - // Anything to do? - if (rend <= rbegin) - ok = false; - - j++; // next domain index. - } - TRACE_MSG("calc_region: region span after trimming: [" << - region_idxs.begin.makeValStr(ndims) << - " ... " << region_idxs.end.makeValStr(ndims) << ")"); - - // Only need to loop through the span of the region if it is - // at least partly inside the extended BB. For overlapping - // regions, they may start outside the domain but enter the - // domain as time progresses and their boundaries shift. So, - // we don't want to return if this condition isn't met. - if (ok) { - - // Include automatically-generated loop code that - // calls calc_block() for each block in this region. - // Loops through x from begin_rx to end_rx-1; - // similar for y and z. This code typically - // contains the outer OpenMP loop(s). + region_idxs.group_size = settings._block_group_sizes; + region_idxs.group_size[step_posn] = step_t; + + // To tesselate n-D space, we use n distinct "phases", where + // n includes the time dim. + idx_t nphases = ndims; + for (idx_t phase = 0; phase < nphases; phase++) { + + // Call calc_block() on every block. Only the shapes + // corresponding to the current 'phase' will be + // calculated. #include "yask_region_loops.hpp" } - // Mark grids that [may] have been written to by this pack, - // updated at next step (+/- 1). Only mark for exterior - // computation, because we don't care about blocks not - // needed for MPI sends. Mark grids as dirty even if not - // actually written by this rank, perhaps due to - // sub-domains. This is needed because neighbors will not - // know what grids are actually dirty, and all ranks must - // have the same information about which grids are possibly - // dirty. TODO: make this smarter to save unneeded MPI - // exchanges. - if (do_mpi_exterior) - mark_grids_dirty(bp, start_t, stop_t); - // Shift spatial region boundaries for next iteration to - // implement temporal wavefront. Between regions, we only shift - // left, so region loops must strictly increment. They may do - // so in any order. TODO: shift only what is needed by - // this pack, not the global max. + // implement temporal wavefront. + // This is needed when 'wf_steps' > 'tb_steps'. for (int i = 0, j = 0; i < ndims; i++) { if (i == step_posn) continue; - auto angle = wf_angles[j]; + // Shift by pts in one WF step per TB step. + auto angle = wf_angles[j] * tb_steps; start[i] -= angle; stop[i] -= angle; j++; } - shift_num++; - - // Stop timers for this bundle. - bp->getAT().timer.stop(); - bp->timer.stop(); - } // stencil bundle packs. + } // with temporal blocking. + } // time. if (do_mpi_exterior) { @@ -715,22 +802,25 @@ namespace yask { } // calc_region. - // Calculate results within a block. This function calls - // 'calc_block' for each bundle in the specified pack. - // Typically called by a top-level OMP thread from calc_region(). + // Calculate results within a block. This function calls 'calc_block' + // for each bundle in the specified pack or all packs if 'sel_bp' is + // null. When using TB, only the shape(s) needed for the tesselation + // 'phase' are computed. Typically called by a top-level OMP thread + // from calc_region(). void StencilContext::calc_block(BundlePackPtr& sel_bp, + idx_t phase, const ScanIndices& region_idxs) { int nsdims = _dims->_stencil_dims.size(); + int nddims = _dims->_domain_dims.size(); auto& step_dim = _dims->_step_dim; auto step_posn = Indices::step_posn; auto* bp = sel_bp.get(); - assert(bp); int thread_idx = omp_get_thread_num(); - TRACE_MSG("calc_block for pack '" << bp->get_name() << "': [" << - region_idxs.start.makeValStr(nsdims) << - " ... " << region_idxs.stop.makeValStr(nsdims) << - ") in thread " << thread_idx); + TRACE_MSG("calc_block: phase " << phase << " [" << + region_idxs.start.makeValStr(nsdims) << " ... " << + region_idxs.stop.makeValStr(nsdims) << + " in thread " << thread_idx); // If we are not calculating some of the blocks, determine // whether this block is *completely* inside the interior. @@ -788,20 +878,219 @@ namespace yask { ScanIndices block_idxs(*_dims, true, 0); block_idxs.initFromOuter(region_idxs); - // Steps within a block are based on sub-block sizes. - // These may have been tweaked by the auto-tuner. - auto& sbsize = bp->getSettings()._sub_block_sizes; - block_idxs.step = sbsize; - - // Groups in block loops are based on sub-block-group sizes. - auto& sbgsize = bp->getSettings()._sub_block_group_sizes; - block_idxs.group_size = sbgsize; + // Time range. + idx_t begin_t = block_idxs.begin[step_posn]; + idx_t end_t = block_idxs.end[step_posn]; + idx_t step_t = 1; // Always 1 for blocks. + const idx_t num_t = abs(end_t - begin_t); - // Loop through bundles in this pack. - for (auto* sb : *bp) { - sb->calc_block(block_idxs); + // If TB is not being used, just process the given pack. + if (tb_steps == 1) { + assert(bp); + + // No TB allowed here. + assert(num_t == 1); + + // Steps within a block are based on pack sub-block sizes. + auto& settings = bp->getSettings(); + block_idxs.step = settings._sub_block_sizes; + block_idxs.step[step_posn] = 1; + + // Groups in block loops are based on sub-block-group sizes. + block_idxs.group_size = settings._sub_block_group_sizes; + block_idxs.group_size[step_posn] = 1; + + // Loop through bundles in this pack to do actual calcs. + for (auto* sb : *bp) + sb->calc_block(block_idxs); } - } + + // If TB is active, do all packs across time steps for each required shape. + else { + + // Determine whether this block is the first + // and/or last in the current region for each dim. + bool is_first[nddims]; + bool is_last[nddims]; + for (int i = 0, j = 0; i < nsdims; i++) { + if (i == step_posn) continue; + + is_first[j] = block_idxs.begin[i] <= region_idxs.begin[i]; + is_last[j] = block_idxs.end[i] >= region_idxs.end[i]; + j++; + } + + // Determine number of shapes. First and last phase need + // one part. Other (bridge) phases need one shape for + // each domain dim. + idx_t nphases = nsdims; + idx_t nshapes = (phase == 0) ? 1 : + (phase == nphases - 1) ? 1 : + nddims; + + // Make a copy of the original index span + // since block_idxs will be modified. + ScanIndices orig_block_idxs(block_idxs); + + // Outer loop thru shapes. + for (idx_t shape = 0; shape < nshapes; shape++) { + + // Restore the block_idxs. + block_idxs = orig_block_idxs; + + // Make a copy of the index span that + // we can use for shifting. + Indices start(block_idxs.begin); + Indices stop(block_idxs.end); + + // Also track the starting point of the *next* block. This + // is used to create bridge shapes between blocks. + Indices next_start(block_idxs.end); + + // Step (usually time) loop. + idx_t shift_num = 0; + for (idx_t index_t = 0; index_t < num_t; index_t++) { + + // This value of index_t steps from start_t to stop_t-1. + const idx_t start_t = begin_t + (index_t * step_t); + const idx_t stop_t = (step_t > 0) ? + min(start_t + step_t, end_t) : + max(start_t + step_t, end_t); + + // Set temporal indices that will pass through generated code. + block_idxs.index[step_posn] = index_t; + block_idxs.begin[step_posn] = start_t; + block_idxs.end[step_posn] = stop_t; + block_idxs.start[step_posn] = start_t; + block_idxs.stop[step_posn] = stop_t; + + // Steps within a block are based on rank sub-block sizes. + auto& settings = *_opts; + block_idxs.step = settings._sub_block_sizes; + block_idxs.step[step_posn] = 1; + + // Groups in block loops are based on sub-block-group sizes. + block_idxs.group_size = settings._sub_block_group_sizes; + block_idxs.group_size[step_posn] = 1; + + // Stencil bundle packs to evaluate at this time step. + for (auto& bp : stPacks) { + + // Not a selected bundle pack? + if (sel_bp && sel_bp != bp) + continue; + + TRACE_MSG("calc_block: w/TB, shape " << shape << + ", bundle-pack '" << bp->get_name() << + "' in step(s) [" << start_t << " ... " << stop_t << ")"); + + // Start timers for this pack. + bp->getAT().timer.start(); + bp->timer.start(); + + // Adjust start/stop to proper shape. + Indices shape_start(start); + Indices shape_stop(stop); + for (int i = 0, j = 0; i < nsdims; i++) { + if (i == step_posn) continue; + + // No adjustment needed for phase 0, 1 shape: + // [hyper-]triangle whose base is original + // 'block_idxs'. + + // Phase 1, bridge between phase 0 shapes. + if (phase >= 1) { + if (shape == j) { + + // Begin at end of phase 0. + shape_start[i] = stop[i]; + + // End at beginning of next block's phase 0. + shape_stop[i] = next_start[i]; + } + } + + // Phase 2, add bridge in next dim. + if (phase >= 2) { + if (shape == (j + 1) % nshapes) { + + // Begin at end of phase 0. + shape_start[i] = stop[i]; + + // End at beginning of next block's phase 0. + shape_stop[i] = next_start[i]; + } + } + + // Phase 3, add bridge in next dim. + if (phase >= 3) { + if (shape == (j + 2) % nshapes) { + + // Begin at end of phase 0. + shape_start[i] = stop[i]; + + // End at beginning of next block's phase 0. + shape_stop[i] = next_start[i]; + } + } + + j++; + } + + // Trim to region boundaries based on pack settings. + bool ok = trim_to_region(shape_start, shape_stop, + bp.get(), shift_num, + block_idxs); + + // Loop through bundles in this pack to do actual calcs. + if (ok) { + for (auto* sb : *bp) + sb->calc_block(block_idxs); + } + + // Mark updated grids as dirty. + // Only need to do this for one shape. + if (shape == 0) + mark_grids_dirty(bp, start_t, stop_t); + + // Adjust shape for next iteration. + for (int i = 0, j = 0; i < nsdims; i++) { + if (i == step_posn) continue; + + // Adjust by pts in one TB step. + // But if block is first and/or last, + // shift as for a WF. + // TODO: have different R & L angles. + auto tb_angle = tb_angles[j]; + auto wf_angle = wf_angles[j]; + + // Shift start to right unless first. + if (!is_first[j]) + start[i] += tb_angle; + else + start[i] -= wf_angle; + + // Shift stop to left. + if (!is_last[j]) + stop[i] -= tb_angle; + else + stop[i] -= wf_angle; + + // Shift start of next block. + next_start[i] += tb_angle; + j++; + } + shift_num++; // Increment for each pack and time-step. + + // Stop timers for this pack. + bp->getAT().timer.stop(); + bp->timer.stop(); + + } // packs. + } // time steps. + } // shapes. + } // TB. + } // calc_block(). // Reset auto-tuners. void StencilContext::reset_auto_tuner(bool enable, bool verbose) { @@ -822,9 +1111,16 @@ namespace yask { // Will alter data in grids. void StencilContext::run_auto_tuner_now(bool verbose) { if (!rank_bb.bb_valid) - THROW_YASK_EXCEPTION("Error: tune_settings() called without calling prepare_solution() first"); - + THROW_YASK_EXCEPTION("Error: run_auto_tuner_now() called without calling prepare_solution() first"); ostream& os = get_ostr(); + + // Cannot AT if TB used. + // TODO: fix this; need to keep block sizes the same and alter rank settings. + if (tb_steps > 1) { + os << "Cannot auto-tune when temporal blocking is enabled.\n"; + return; + } + os << "Auto-tuning...\n" << flush; YaskTimer at_timer; at_timer.start(); diff --git a/src/kernel/lib/context.hpp b/src/kernel/lib/context.hpp index 686d49a1..b086f5e1 100644 --- a/src/kernel/lib/context.hpp +++ b/src/kernel/lib/context.hpp @@ -222,12 +222,17 @@ namespace yask { IdxTuple overall_domain_sizes; // Total of rank domains over all ranks. // Maximum halos, skewing angles, and work extensions over all grids - // used for wave-fronts. + // used for wave-front region tiles (wf) and temporal blocking (tb). IdxTuple max_halos; // spatial halos. - IdxTuple wf_angles; // temporal skewing angles for each shift (in points). - idx_t num_wf_shifts = 0; // number of shifts required. - IdxTuple wf_shifts; // total shift needed (angles * num-shifts). - IdxTuple left_wf_exts; // WF extension needed on left side of rank. + idx_t wf_steps = 1; // max number of WF steps. + idx_t tb_steps = 1; // max number of TB steps (may be less than requested). + IdxTuple wf_angles; // WF skewing angles for each shift (in points). + IdxTuple tb_angles; // TB skewing angles for each shift (in points). + idx_t num_wf_shifts = 0; // number of WF shifts required in wf_steps. + idx_t num_tb_shifts = 0; // number of TB shifts required in tb_steps. + IdxTuple wf_shifts; // total shifted pts (wf_angles * num_wf_shifts). + IdxTuple tb_shifts; // total shifted pts (tb_angles * num_tb_shifts). + IdxTuple left_wf_exts; // WF extension needed on left side of rank for halo exch. IdxTuple right_wf_exts; // WF extension needed on right side of rank. // Various amount-of-work metrics calculated in prepare_solution(). @@ -364,6 +369,10 @@ namespace yask { // This should be called anytime a setting or offset is changed. virtual void update_grid_info(); + // Set temporal blocking data. + // This should be called anytime a block size is changed. + virtual void update_block_info(); + // Adjust offsets of scratch grids based // on thread and scan indices. virtual void update_scratch_grid_info(int thread_idx, @@ -499,6 +508,7 @@ namespace yask { // Calculate results within a block. virtual void calc_block(BundlePackPtr& sel_bp, + idx_t phase, const ScanIndices& region_idxs); // Exchange all dirty halo data for all stencil bundles. @@ -509,6 +519,11 @@ namespace yask { virtual void mark_grids_dirty(const BundlePackPtr& sel_bp, idx_t start, idx_t stop); + // Set various limits in 'idxs' based on current step. + virtual bool trim_to_region(const Indices& start, const Indices& stop, + BundlePack* bp, idx_t shift_num, + ScanIndices& idxs); + // Set the bounding-box around all stencil bundles. virtual void find_bounding_boxes(); diff --git a/src/kernel/lib/settings.cpp b/src/kernel/lib/settings.cpp index cd0dd45e..577b73d5 100644 --- a/src/kernel/lib/settings.cpp +++ b/src/kernel/lib/settings.cpp @@ -303,7 +303,7 @@ namespace yask { " A 'region' is composed of blocks.\n" " If using temporal wave-front tiling (see region-size guidelines),\n" " then, this is the unit of work for each wave-front tile;\n" - " else, there is typically only one region the sie of the rank-domain.\n" + " else, there is typically only one region the size of the rank-domain.\n" " A 'rank-domain' is composed of regions.\n" " This is the unit of work for one MPI rank.\n" " The 'overall-problem' is composed of rank-domains.\n" @@ -321,32 +321,42 @@ namespace yask { " when there is more than one block-thread, the first dimension\n" " will instead be set to a small value to create \"slab\" shapes.\n" " Set sub-block-group sizes to control the ordering of sub-blocks within a block.\n" + " This is an advanced setting that is not commonly used.\n" " All sub-blocks that intersect a given sub-block-group are evaluated\n" " before sub-blocks in the next sub-block-group.\n" " A sub-block-group size of 0 in a given dimension =>\n" " sub-block-group size is set to sub-block size in that dimension.\n" " Set block sizes to specify a unit of work done by each thread team.\n" - " A block size of 0 in a given dimension =>\n" + " A block size of 0 in a given domain dimension =>\n" " block size is set to region size in that dimension.\n" - " Temporal tiling in blocks is not yet supported, so effectively, bt = 1.\n" + " A block size >1 in the temporal dimension ('-bt') enables temporal blocking.\n" + " The temporal block size may be automatically reduced if needed based on the\n" + " domain block sizes and the stencil halos.\n" " Set block-group sizes to control the ordering of blocks within a region.\n" + " This is an advanced setting that is not commonly used.\n" " All blocks that intersect a given block-group are evaluated before blocks\n" " in the next block-group.\n" - " A block-group size of 0 in a given dimension =>\n" + " A block-group size of 0 in a given domain dimension =>\n" " block-group size is set to block size in that dimension.\n" " Set region sizes to control temporal wave-front tile sizes.\n" - " The temopral region size should be larger than one, and\n" + " The temporal region size should be larger than one, and\n" " the spatial region sizes should be less than the rank-domain sizes\n" " in at least one dimension to enable temporal wave-front tiling.\n" " The spatial region sizes should be greater than corresponding block sizes\n" " to enable threading withing each wave-front tile.\n" " Control the time-steps in each temporal wave-front with -rt.\n" " Special cases:\n" - " Using '-rt 1' disables wave-front tiling.\n" + " Using '-rt 1' disables wave-front tiling unless temporal\n" + " blocking is used.\n" + " When temporal blocking is used, the number of time-steps in a region\n" + " is increased to the number of time-steps in a block if needed.\n" " Using '-rt 0' => all time-steps done in one wave-front.\n" " A region size of 0 in a given dimension =>\n" " region size is set to rank-domain size in that dimension.\n" " Set rank-domain sizes to specify the work done on this rank.\n" + " Set the temporal size with '-dt' to specify the number of time-steps\n" + " to run for each trial.\n" + " Set the domain sizes to specify the problem size for this rank.\n" " This and the number of grids affect the amount of memory used.\n" "Controlling OpenMP threading:\n" " Using '-max_threads 0' =>\n" @@ -367,10 +377,10 @@ namespace yask { " and reduce the size of each rank-domain appropriately.\n" << #endif appNotes << - "Examples:\n" << - " " << pgmName << " -d 768 -dt 25\n" << - " " << pgmName << " -dx 512 -dy 256 -dz 128\n" << - " " << pgmName << " -d 2048 -dt 20 -r 512 -rt 10 # temporal tiling.\n" << + "Examples for a 3D (x, y, z) over time (t) problem:\n" + " " << pgmName << " -d 768 -dt 25\n" + " " << pgmName << " -dx 512 -dy 256 -dz 128\n" + " " << pgmName << " -d 2048 -dt 20 -r 512 -rt 10 # temporal tiling.\n" " " << pgmName << " -d 512 -nrx 2 -nry 1 -nrz 2 # multi-rank.\n"; for (auto ae : appExamples) os << " " << pgmName << " " << ae << endl; @@ -420,15 +430,19 @@ namespace yask { // Called from prepare_solution(), so it doesn't normally need to be called from user code. void KernelSettings::adjustSettings(std::ostream& os, KernelEnvPtr env) { auto& step_dim = _dims->_step_dim; + auto& rt = _region_sizes[step_dim]; + auto& bt = _block_sizes[step_dim]; // Determine num regions. // Also fix up region sizes as needed. + // Temporal region size will be increase to + // current temporal block size if needed. // Default region size (if 0) will be size of rank-domain. os << "\nRegions:" << endl; + rt = max(rt, bt); auto nr = findNumSubsets(os, _region_sizes, "region", _rank_sizes, "rank-domain", _dims->_cluster_pts); - auto rt = _region_sizes[step_dim]; os << " num-regions-per-rank-domain: " << nr << endl; os << " Since the region size in the '" << step_dim << "' dim is " << rt << ", temporal wave-front tiling is "; @@ -444,6 +458,10 @@ namespace yask { _dims->_cluster_pts); os << " num-blocks-per-region: " << nb << endl; os << " num-blocks-per-rank-domain: " << (nb * nr) << endl; + os << " Since the block size in the '" << step_dim << + "' dim is " << bt << ", temporal blocking is "; + if (bt <= 1) os << "NOT "; + os << "enabled.\n"; // Adjust defaults for sub-blocks to be slab if // we are using more than one block thread. diff --git a/src/kernel/lib/setup.cpp b/src/kernel/lib/setup.cpp index 1a2a3e07..04dddde1 100644 --- a/src/kernel/lib/setup.cpp +++ b/src/kernel/lib/setup.cpp @@ -913,13 +913,68 @@ namespace yask { } // scratch-grid passes. } + + // Set temporal blocking data. + // This should be called anytime a block size is changed. + // Must be called after update_grid_info() to ensure + // angles are properly set. + void StencilContext::update_block_info() { + auto& step_dim = _dims->_step_dim; + + // Start w/original temporal setting. + tb_steps = _opts->_block_sizes[step_dim]; + assert(tb_steps >= 1); + + // Determine max setting based on block sizes. + // When using temporal blocking, all block sizes + // across all packs must be the same. + if (tb_steps > 1) { + TRACE_MSG("update_block_info: original TB steps = " << tb_steps); + idx_t max_steps = min(tb_steps, wf_steps); + TRACE_MSG("update_block_info: max(TB, WF) steps = " << max_steps); + + // Loop through each domain dim. + for (auto& dim : _dims->_domain_dims.getDims()) { + auto& dname = dim.getName(); + + // Calculate max number of temporal steps in + // this dim. + auto bsz = _opts->_block_sizes[dname]; + auto angle = tb_angles[dname]; + if (angle > 0) { + auto cur_max = bsz / angle / 2 + 1; + TRACE_MSG("update_block_info: max TB steps in dim '" << + dname << "' = " << cur_max << + " due to base block size of " << bsz << + " and TB angle of " << angle); + max_steps = min(max_steps, cur_max); + } + } + tb_steps = min(tb_steps, max_steps); + TRACE_MSG("update_block_info: final TB steps = " << tb_steps); + } + + // Calc number of shifts based on steps. + num_tb_shifts = 0; + if (tb_steps > 1) { + + // Need to shift for each bundle pack. + assert(stPacks.size() > 0); + num_tb_shifts = idx_t(stPacks.size()) * tb_steps; + assert(num_tb_shifts > 1); + + // Don't need to shift first one. + num_tb_shifts--; + } + assert(num_tb_shifts >= 0); + } // Set non-scratch grid sizes and offsets based on settings. // Set wave-front settings. // This should be called anytime a setting or rank offset is changed. - void StencilContext::update_grid_info() - { + void StencilContext::update_grid_info() { assert(_opts); + auto& step_dim = _dims->_step_dim; // If we haven't finished constructing the context, it's too early // to do this. @@ -955,18 +1010,20 @@ namespace yask { gp->_set_offset(dname, rank_domain_offsets[dname]); gp->_set_local_offset(dname, 0); - // Update max halo across grids, used for wavefront angles. + // Update max halo across grids, used for temporal angles. max_halos[dname] = max(max_halos[dname], gp->get_left_halo_size(dname)); max_halos[dname] = max(max_halos[dname], gp->get_right_halo_size(dname)); } } } // grids. - // Calculate wave-front settings based on max halos. + // Calculate wave-front shifts. // See the wavefront diagram in run_solution() for description // of angles and extensions. - auto& step_dim = _dims->_step_dim; - auto wf_steps = _opts->_region_sizes[step_dim]; + tb_steps = _opts->_block_sizes[step_dim]; // use original size; actual may be less. + assert(tb_steps >= 1); + wf_steps = _opts->_region_sizes[step_dim]; + wf_steps = max(wf_steps, tb_steps); assert(wf_steps >= 1); num_wf_shifts = 0; if (wf_steps > 1) { @@ -980,25 +1037,37 @@ namespace yask { num_wf_shifts--; } assert(num_wf_shifts >= 0); + + // Calculate angles and related settings. for (auto& dim : _dims->_domain_dims.getDims()) { auto& dname = dim.getName(); + auto rnsize = _opts->_region_sizes[dname]; auto rksize = _opts->_rank_sizes[dname]; auto nranks = _opts->_num_ranks[dname]; - // Determine the max spatial skewing angles for temporal - // wave-fronts based on the max halos. We only need non-zero - // angles if the region size is less than the rank size and - // there are no other ranks in this dim, i.e., if the region - // covers the *global* domain in a given dim, no wave-front is - // needed in that dim. TODO: make rounding-up an option. - idx_t angle = 0; - if (_opts->_region_sizes[dname] < rksize || nranks > 0) - angle = ROUND_UP(max_halos[dname], _dims->_fold_pts[dname]); - wf_angles[dname] = angle; + // Req'd shift in this dim based on max halos. + idx_t angle = ROUND_UP(max_halos[dname], _dims->_fold_pts[dname]); + + // Determine the max spatial skewing angles for TB. + // We assume that the block size will always require + // non-zero angles. + // TODO: adjust TB angle to zero iff block covers whole + // rank in given dim. Do this in update_block_info(). + tb_angles.addDimBack(dname, angle); + + // Determine the max spatial skewing angles for WF tiling. We + // only need non-zero angles if the region size is less than the + // rank size or there are other ranks in this dim, i.e., if + // the region covers the *global* domain in a given dim, no + // wave-front shifting is needed in that dim. + idx_t wf_angle = 0; + if (rnsize < rksize || nranks > 0) + wf_angle = angle; + wf_angles.addDimBack(dname, wf_angle); assert(angle >= 0); // Determine the total WF shift to be added in each dim. - idx_t shifts = angle * num_wf_shifts; + idx_t shifts = wf_angle * num_wf_shifts; wf_shifts[dname] = shifts; assert(shifts >= 0); @@ -1020,6 +1089,10 @@ namespace yask { right_wf_exts[dname] = _opts->is_last_rank(dname) ? 0 : shifts; } + // Calculate temporal-block shifts. + // NB: this will change if/when block sizes change. + update_block_info(); + // Now that wave-front settings are known, we can push this info // back to the grids. It's useful to store this redundant info // in the grids, because there it's indexed by grid dims instead diff --git a/src/kernel/lib/stencil_calc.cpp b/src/kernel/lib/stencil_calc.cpp index 75c014f6..2273f28a 100644 --- a/src/kernel/lib/stencil_calc.cpp +++ b/src/kernel/lib/stencil_calc.cpp @@ -42,19 +42,26 @@ namespace yask { auto& step_dim = dims->_step_dim; auto step_posn = Indices::step_posn; int thread_idx = omp_get_thread_num(); // used to index the scratch grids. - TRACE_MSG3("calc_block for bundle '" << get_name() << "': [" << - def_block_idxs.begin.makeValStr(nsdims) << - " ... " << def_block_idxs.end.makeValStr(nsdims) << - ") by " << def_block_idxs.step.makeValStr(nsdims) << + TRACE_MSG3("calc_block('" << get_name() << "'): [" << + def_block_idxs.begin.makeValStr(nsdims) << " ... " << + def_block_idxs.end.makeValStr(nsdims) << ") by " << + def_block_idxs.step.makeValStr(nsdims) << " in thread " << thread_idx); assert(!is_scratch()); + // No TB allowed here. +#ifdef CHECK + idx_t begin_t = def_block_idxs.begin[step_posn]; + idx_t end_t = def_block_idxs.end[step_posn]; + assert(abs(end_t - begin_t) == 1); +#endif + // TODO: if >1 BB, check outer one first to save time. // Loop through each solid BB. // For each BB, calc intersection between it and 'def_block_idxs'. // If this is non-empty, apply the bundle to all its required sub-blocks. - TRACE_MSG3("calc_block for bundle '" << get_name() << "': checking " << + TRACE_MSG3("calc_block('" << get_name() << "'): checking " << _bb_list.size() << " BB(s)"); int bbn = 0; for (auto& bb : _bb_list) { @@ -90,8 +97,8 @@ namespace yask { continue; // to next BB. } - TRACE_MSG3("calc_block for bundle '" << get_name() << - "': after trimming for BB " << bbn << ": [" << + TRACE_MSG3("calc_block('" << get_name() << + "'): after trimming for BB " << bbn << ": [" << bb_idxs.begin.makeValStr(nsdims) << " ... " << bb_idxs.end.makeValStr(nsdims) << ")"); @@ -115,7 +122,7 @@ namespace yask { // copy of 'bb_idxs' except when updating scratch-grids. ScanIndices block_idxs = sg->adjust_span(thread_idx, bb_idxs); - TRACE_MSG3("calc_block for bundle '" << get_name() << "': " << + TRACE_MSG3("calc_block('" << get_name() << "'): " << " in reqd bundle '" << sg->get_name() << "': [" << block_idxs.begin.makeValStr(nsdims) << " ... " << block_idxs.end.makeValStr(nsdims) << From 955a825107ad3d58876cfbc5389fcd4a05af3ec5 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Thu, 30 Aug 2018 16:38:54 -0700 Subject: [PATCH 03/19] Extend temporal blocking to n dims. --- src/kernel/lib/context.cpp | 57 +++++++++++++++----------------------- 1 file changed, 23 insertions(+), 34 deletions(-) diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index 69a20796..169c5779 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -957,12 +957,15 @@ namespace yask { min(start_t + step_t, end_t) : max(start_t + step_t, end_t); - // Set temporal indices that will pass through generated code. + // Set temporal indices. block_idxs.index[step_posn] = index_t; block_idxs.begin[step_posn] = start_t; block_idxs.end[step_posn] = stop_t; block_idxs.start[step_posn] = start_t; block_idxs.stop[step_posn] = stop_t; + start[step_posn] = start_t; + stop[step_posn] = stop_t; + next_start[step_posn] = start_t; // Steps within a block are based on rank sub-block sizes. auto& settings = *_opts; @@ -980,10 +983,6 @@ namespace yask { if (sel_bp && sel_bp != bp) continue; - TRACE_MSG("calc_block: w/TB, shape " << shape << - ", bundle-pack '" << bp->get_name() << - "' in step(s) [" << start_t << " ... " << stop_t << ")"); - // Start timers for this pack. bp->getAT().timer.start(); bp->timer.start(); @@ -998,44 +997,34 @@ namespace yask { // [hyper-]triangle whose base is original // 'block_idxs'. - // Phase 1, bridge between phase 0 shapes. - if (phase >= 1) { - if (shape == j) { - - // Begin at end of phase 0. - shape_start[i] = stop[i]; - - // End at beginning of next block's phase 0. - shape_stop[i] = next_start[i]; - } - } + // After phase 0, bridge one additional dim at a + // time until all dims are bridged at last + // phase. The 'shape' determines what dim to + // start with. + for (idx_t k = 1; k <= phase; k++) { - // Phase 2, add bridge in next dim. - if (phase >= 2) { - if (shape == (j + 1) % nshapes) { - - // Begin at end of phase 0. - shape_start[i] = stop[i]; - - // End at beginning of next block's phase 0. - shape_stop[i] = next_start[i]; - } - } - - // Phase 3, add bridge in next dim. - if (phase >= 3) { - if (shape == (j + 2) % nshapes) { + // Select another dim based on shape and phase. + if (shape == (j + k - 1) % nshapes) { - // Begin at end of phase 0. + // Begin at end of previous. shape_start[i] = stop[i]; - // End at beginning of next block's phase 0. + // End at beginning of next block. shape_stop[i] = next_start[i]; } } - j++; } + + TRACE_MSG("calc_block: phase " << phase << + ", w/TB, shape " << shape << + ", bundle-pack '" << bp->get_name() << + ", start= " << start.makeValStr(nsdims) << + ", stop= " << stop.makeValStr(nsdims) << + ", next-start= " << next_start.makeValStr(nsdims) << + "), shape-range= [" << + shape_start.makeValStr(nsdims) << " ... " << + shape_stop.makeValStr(nsdims) << ")"); // Trim to region boundaries based on pack settings. bool ok = trim_to_region(shape_start, shape_stop, From bbca1c06d4bf910fdf6b53eeca92b5ba44fd8b27 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Thu, 30 Aug 2018 17:02:49 -0700 Subject: [PATCH 04/19] Added some testing for temporal blocking. Doesn't yet work with auto-tuner or wave-fronts. TTI test on MPI also fails. --- src/kernel/Makefile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/kernel/Makefile b/src/kernel/Makefile index 7611c2b1..c6753c82 100644 --- a/src/kernel/Makefile +++ b/src/kernel/Makefile @@ -764,16 +764,20 @@ py-api-no-yc: $(MAKE) $(NO_YC_MAKE_FLAGS) py-api # Validation runs for each binary. +# Currently, temporal blocking does not work with temporal wavefronts. val1 := -dt 2 -b 16 -d 48 val2 := -dt 2 -b 24 -r 32 -rt 2 -d 63 +val3 := -dt 2 -b 24 -b 16 -bt 2 -d 63 ranks := 2 # Run the kernel binary using several combos of sizes and ranks. yk-tests: $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -v $(val1) $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -v $(val2) + $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -v $(val3) $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -ranks $(ranks) -v $(val1) $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -ranks $(ranks) -v $(val2) + $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -ranks $(ranks) -v $(val3) # Run the default YASK compiler and kernel. yc-and-yk-test: $(YK_EXEC) $(YK_SCRIPT) @@ -810,12 +814,12 @@ stencil-tests: $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=3axis fold=x=2,y=2 cluster=z=2,y=2 $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=3plane fold=y=2,z=2 $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=cube fold=x=2,y=2 - $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=tti fold=x=2,y=2 $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=iso3dfd fold=x=2,y=2 $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=ssg fold=x=2,y=2 $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=awp_elastic fold=x=2,y=2 $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=fsg_abc fold=x=2,y=2 $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=fsg2 fold=x=2,y=2 + $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=tti fold=x=2,y=2 all-tests: $(MAKE) clean; $(MAKE) cxx-yk-grid-test stencil=test_3d fold=x=4,y=2 From 08cd17514e6aab3e556cd3860fe88434f7f3ef20 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Tue, 4 Sep 2018 18:42:43 -0700 Subject: [PATCH 05/19] Enable auto-tuner with temporal blocking. --- src/kernel/lib/auto_tuner.cpp | 16 +++-- src/kernel/lib/auto_tuner.hpp | 8 +++ src/kernel/lib/context.cpp | 104 +++++++++++++------------------- src/kernel/lib/context.hpp | 15 ++++- src/kernel/lib/setup.cpp | 58 +++++++++++++++--- src/kernel/lib/yask_stencil.hpp | 2 +- 6 files changed, 125 insertions(+), 78 deletions(-) diff --git a/src/kernel/lib/auto_tuner.cpp b/src/kernel/lib/auto_tuner.cpp index 20b80a16..742a0211 100644 --- a/src/kernel/lib/auto_tuner.cpp +++ b/src/kernel/lib/auto_tuner.cpp @@ -30,6 +30,14 @@ using namespace std; namespace yask { + // Print the best settings. + void AutoTuner::print_settings(ostream& os) const { + os << _name << ": best-block-size: " << + _settings->_block_sizes.makeDimValStr(" * ") << endl << + _name << ": best-sub-block-size: " << + _settings->_sub_block_sizes.makeDimValStr(" * ") << endl << flush; + } + // Reset the auto-tuner. void AutoTuner::clear(bool mark_done, bool verbose) { @@ -78,9 +86,9 @@ namespace yask { center_block[dname] = dmax; } if (!done) { - os << _name << ": starting block-size: " << - center_block.makeDimValStr(" * ") << endl; - os << _name << ": starting search radius: " << radius << endl; + TRACE_MSG2(_name << ": starting block-size: " << + center_block.makeDimValStr(" * ")); + TRACE_MSG2(_name << ": starting search radius: " << radius); } } // clear. @@ -262,7 +270,7 @@ namespace yask { os << _name << ": done" << endl; return; } - os << _name << ": new search radius: " << radius << endl; + os << _name << ": search radius " << radius << endl; } else { TRACE_MSG2(_name << ": continuing search from block " << diff --git a/src/kernel/lib/auto_tuner.hpp b/src/kernel/lib/auto_tuner.hpp index d7dbd11d..7e175d37 100644 --- a/src/kernel/lib/auto_tuner.hpp +++ b/src/kernel/lib/auto_tuner.hpp @@ -84,6 +84,11 @@ namespace yask { // Start & stop this timer to track elapsed time. YaskTimer timer; + + // Change settings pointer. + void set_settings(KernelSettings* p) { + _settings = p; + } // Reset all state to beginning. void clear(bool mark_done, bool verbose = false); @@ -91,6 +96,9 @@ namespace yask { // Evaluate the previous run and take next auto-tuner step. void eval(idx_t steps); + // Print the best settings. + void print_settings(std::ostream& os) const; + // Apply settings. void apply(); diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index 169c5779..e3e1dc71 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -69,37 +69,6 @@ namespace yask { SET_SOLN_API(set_rank_index, _opts->_rank_indices[dim] = n, false, true, false, true) #undef SET_SOLN_API - // Constructor. - StencilContext::StencilContext(KernelEnvPtr env, - KernelSettingsPtr settings) : - _ostr(&std::cout), - _env(env), - _opts(settings), - _dims(settings->_dims) - { - // Set debug output object. - yask_output_factory yof; - set_debug_output(yof.new_stdout_output()); - - // Create MPI Info object. - _mpiInfo = std::make_shared(settings->_dims); - - // Init various tuples to make sure they have the correct dims. - rank_domain_offsets = _dims->_domain_dims; - rank_domain_offsets.setValsSame(-1); // indicates prepare_solution() not called. - overall_domain_sizes = _dims->_domain_dims; - max_halos = _dims->_domain_dims; - wf_angles = _dims->_domain_dims; - wf_shifts = _dims->_domain_dims; - tb_angles = _dims->_domain_dims; - tb_shifts = _dims->_domain_dims; - left_wf_exts = _dims->_domain_dims; - right_wf_exts = _dims->_domain_dims; - - // Set output to msg-rank per settings. - set_ostr(); - } - void StencilContext::share_grid_storage(yk_solution_ptr source) { auto sp = dynamic_pointer_cast(source); assert(sp); @@ -530,8 +499,7 @@ namespace yask { steps_done += this_num_t; // Call the auto-tuner to evaluate these steps. - for (auto& sp : stPacks) - sp->getAT().eval(this_num_t); + eval_auto_tuner(this_num_t); } // step loop. @@ -545,7 +513,7 @@ namespace yask { } #endif run_time.stop(); - } + } // run_solution(). // Trim boundaries 'start' and 'stop' to actual size in which to compute // in pack 'bp' within region based on 'shift_num', which should start @@ -674,8 +642,7 @@ namespace yask { start_t << " ... " << stop_t << ")"); // Start timers for this pack. - bp->getAT().timer.start(); - bp->timer.start(); + start_timers(bp); // Steps within a region are based on pack block sizes. auto& settings = bp->getSettings(); @@ -738,8 +705,7 @@ namespace yask { shift_num++; // Increment for each pack. // Stop timers for this pack. - bp->getAT().timer.stop(); - bp->timer.stop(); + stop_timers(bp); } // stencil bundle packs. } // no temporal blocking. @@ -984,8 +950,7 @@ namespace yask { continue; // Start timers for this pack. - bp->getAT().timer.start(); - bp->timer.start(); + start_timers(bp); // Adjust start/stop to proper shape. Indices shape_start(start); @@ -1072,8 +1037,7 @@ namespace yask { shift_num++; // Increment for each pack and time-step. // Stop timers for this pack. - bp->getAT().timer.stop(); - bp->timer.stop(); + stop_timers(bp); } // packs. } // time steps. @@ -1081,18 +1045,44 @@ namespace yask { } // TB. } // calc_block(). + // Timer methods. + void StencilContext::start_timers(BundlePackPtr& bp) { + bp->timer.start(); + bp->getAT().timer.start(); + _at.timer.start(); + } + void StencilContext::stop_timers(BundlePackPtr& bp) { + bp->timer.stop(); + bp->getAT().timer.stop(); + _at.timer.stop(); + } + + // Eval auto-tuner for given number of steps. + void StencilContext::eval_auto_tuner(idx_t num_steps) { + if (_use_pack_tuners) { + for (auto& sp : stPacks) + sp->getAT().eval(num_steps); + } + else + _at.eval(num_steps); + } + // Reset auto-tuners. void StencilContext::reset_auto_tuner(bool enable, bool verbose) { for (auto& sp : stPacks) sp->getAT().clear(!enable, verbose); + _at.clear(!enable, verbose); } // Determine if any auto tuners are running. bool StencilContext::is_auto_tuner_enabled() const { bool done = true; - for (auto& sp : stPacks) - if (!sp->getAT().is_done()) - done = false; + if (_use_pack_tuners) { + for (auto& sp : stPacks) + if (!sp->getAT().is_done()) + done = false; + } else + done = _at.is_done(); return !done; } @@ -1103,13 +1093,6 @@ namespace yask { THROW_YASK_EXCEPTION("Error: run_auto_tuner_now() called without calling prepare_solution() first"); ostream& os = get_ostr(); - // Cannot AT if TB used. - // TODO: fix this; need to keep block sizes the same and alter rank settings. - if (tb_steps > 1) { - os << "Cannot auto-tune when temporal blocking is enabled.\n"; - return; - } - os << "Auto-tuning...\n" << flush; YaskTimer at_timer; at_timer.start(); @@ -1118,15 +1101,13 @@ namespace yask { enable_halo_exchange = false; // Init tuners. - for (auto& sp : stPacks) - sp->getAT().clear(false, verbose); + reset_auto_tuner(true, verbose); // Reset stats. clear_timers(); // Determine number of sets to run. // If wave-fronts are enabled, run a max number of these steps. - // TODO: only run one region during AT. idx_t region_steps = _opts->_region_sizes[_dims->_step_dim]; idx_t step_dir = _dims->_step_dir; idx_t step_t = min(region_steps, +AutoTuner::max_step_t) * step_dir; @@ -1143,6 +1124,7 @@ namespace yask { } // Wait for all ranks to finish. + os << "Waiting for auto-tuner to converge on all ranks...\n"; _env->global_barrier(); // reenable halo exchange. @@ -1152,12 +1134,11 @@ namespace yask { at_timer.stop(); os << "Auto-tuner done after " << steps_done << " step(s) in " << at_timer.get_elapsed_secs() << " secs.\n"; - for (auto& sp : stPacks) { - auto& settings = sp->getSettings(); - os << " for pack '" << sp->get_name() << "':\n" << - " best-block-size: " << settings._block_sizes.makeDimValStr(" * ") << endl << - " best-sub-block-size: " << settings._sub_block_sizes.makeDimValStr(" * ") << endl << flush; - } + if (_use_pack_tuners) { + for (auto& sp : stPacks) + sp->getAT().print_settings(os); + } else + _at.print_settings(os); // Reset stats. clear_timers(); @@ -1780,6 +1761,5 @@ namespace yask { for (auto& sp : stPacks) sp->timer.clear(); } - } // namespace yask. diff --git a/src/kernel/lib/context.hpp b/src/kernel/lib/context.hpp index b086f5e1..76efd0c9 100644 --- a/src/kernel/lib/context.hpp +++ b/src/kernel/lib/context.hpp @@ -155,6 +155,10 @@ namespace yask { // MPI info. MPIInfoPtr _mpiInfo; + // Auto-tuner for global settings. + AutoTuner _at; + bool _use_pack_tuners = false; + // Bytes between each buffer to help avoid aliasing // in the HW. size_t _data_buf_pad = (YASK_PAD * CACHELINE_BYTES); @@ -311,6 +315,7 @@ namespace yask { } virtual void set_settings(KernelSettingsPtr opts) { _opts = opts; + _at.set_settings(_opts.get()); } // Access to env, dims and MPI info. @@ -658,10 +663,18 @@ namespace yask { return _opts->_numa_pref; } + // Timer methods. + virtual void start_timers(BundlePackPtr& bp); + virtual void stop_timers(BundlePackPtr& bp); + + // Auto-tuner methods. + virtual void eval_auto_tuner(idx_t num_steps); + // Auto-tuner APIs. virtual void reset_auto_tuner(bool enable, bool verbose = false); virtual void run_auto_tuner_now(bool verbose = true); virtual bool is_auto_tuner_enabled() const; - }; + + }; // StencilContext. } // yask namespace. diff --git a/src/kernel/lib/setup.cpp b/src/kernel/lib/setup.cpp index 04dddde1..6186b2aa 100644 --- a/src/kernel/lib/setup.cpp +++ b/src/kernel/lib/setup.cpp @@ -31,6 +31,38 @@ using namespace std; namespace yask { + // Constructor. + StencilContext::StencilContext(KernelEnvPtr env, + KernelSettingsPtr settings) : + _ostr(&std::cout), + _env(env), + _opts(settings), + _dims(settings->_dims), + _at(this, _opts.get(), "solution") + { + // Set debug output object. + yask_output_factory yof; + set_debug_output(yof.new_stdout_output()); + + // Create MPI Info object. + _mpiInfo = std::make_shared(settings->_dims); + + // Init various tuples to make sure they have the correct dims. + rank_domain_offsets = _dims->_domain_dims; + rank_domain_offsets.setValsSame(-1); // indicates prepare_solution() not called. + overall_domain_sizes = _dims->_domain_dims; + max_halos = _dims->_domain_dims; + wf_angles = _dims->_domain_dims; + wf_shifts = _dims->_domain_dims; + tb_angles = _dims->_domain_dims; + tb_shifts = _dims->_domain_dims; + left_wf_exts = _dims->_domain_dims; + right_wf_exts = _dims->_domain_dims; + + // Set output to msg-rank per settings. + set_ostr(); + } + // Init MPI-related vars and other vars related to my rank's place in // the global problem: rank index, offset, etc. Need to call this even // if not using MPI to properly init these vars. Called from @@ -239,7 +271,7 @@ namespace yask { // This must be done after finding WF extensions. find_bounding_boxes(); - } // setupRank. + } // setupRank(). // Alloc 'nbytes' on each requested NUMA node. // Map keys are preferred NUMA nodes or -1 for local. @@ -967,7 +999,8 @@ namespace yask { num_tb_shifts--; } assert(num_tb_shifts >= 0); - } + + } // update_block_info(). // Set non-scratch grid sizes and offsets based on settings. // Set wave-front settings. @@ -1023,7 +1056,7 @@ namespace yask { tb_steps = _opts->_block_sizes[step_dim]; // use original size; actual may be less. assert(tb_steps >= 1); wf_steps = _opts->_region_sizes[step_dim]; - wf_steps = max(wf_steps, tb_steps); + wf_steps = max(wf_steps, tb_steps); // round up WF steps if less than TB steps. assert(wf_steps >= 1); num_wf_shifts = 0; if (wf_steps > 1) { @@ -1038,6 +1071,9 @@ namespace yask { } assert(num_wf_shifts >= 0); + // Determine whether separate tuners can be used. + _use_pack_tuners = (tb_steps == 1) && (stPacks.size() > 1); + // Calculate angles and related settings. for (auto& dim : _dims->_domain_dims.getDims()) { auto& dname = dim.getName(); @@ -1115,7 +1151,7 @@ namespace yask { } } } - } + } // update_grid_info(). // Allocate grids and MPI bufs. // Initialize some data structures. @@ -1145,20 +1181,21 @@ namespace yask { // reset time keepers. clear_timers(); - // Init auto-tuner to run silently during normal operation. - for (auto& sp : stPacks) - sp->getAT().clear(false, false); - // Adjust all settings before setting MPI buffers or sizing grids. - // Prints final settings. + // Prints adjusted settings. // TODO: print settings again after auto-tuning. _opts->adjustSettings(os, _env); // Copy current settings to packs. + // Needed here because settings may have been changed via APIs + // since last call to prepare_solution(). // This will wipe out any previous auto-tuning. for (auto& sp : stPacks) sp->getSettings() = *_opts; + // Init auto-tuner to run silently during normal operation. + reset_auto_tuner(true, false); + // Report ranks. os << endl; os << "Num ranks: " << _env->get_num_ranks() << endl; @@ -1212,7 +1249,8 @@ namespace yask { allocMpiData(os); print_info(); - } + + } // prepare_solution(). void StencilContext::print_info() { auto& step_dim = _dims->_step_dim; diff --git a/src/kernel/lib/yask_stencil.hpp b/src/kernel/lib/yask_stencil.hpp index 9470c0d8..a5d2f7e7 100644 --- a/src/kernel/lib/yask_stencil.hpp +++ b/src/kernel/lib/yask_stencil.hpp @@ -64,6 +64,6 @@ IN THE SOFTWARE. #include "settings.hpp" #include "generic_grids.hpp" #include "realv_grids.hpp" -#include "context.hpp" #include "auto_tuner.hpp" +#include "context.hpp" #include "stencil_calc.hpp" From 459ac6e8892efffe16830c92d4b5d3d72dc3c6b6 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Wed, 5 Sep 2018 20:20:36 -0700 Subject: [PATCH 06/19] Enable temporal blocking with wavefronts. Allow set/get API for TB size. Add debug script. Increase make load limit. --- Makefile | 2 +- include/yk_solution_api.hpp | 6 +- src/kernel/Makefile | 14 ++-- src/kernel/lib/context.cpp | 152 +++++++++++++++++++----------------- src/kernel/lib/context.hpp | 8 +- src/kernel/lib/settings.hpp | 5 -- src/kernel/lib/setup.cpp | 40 ++++++---- src/kernel/yask_main.cpp | 13 +++ utils/bin/analyze_trace.pl | 127 ++++++++++++++++++++++++++++++ 9 files changed, 260 insertions(+), 107 deletions(-) create mode 100755 utils/bin/analyze_trace.pl diff --git a/Makefile b/Makefile index a647056b..8fb3c016 100644 --- a/Makefile +++ b/Makefile @@ -77,7 +77,7 @@ include $(YASK_BASE)/src/common/common.mk # - vars starting with 'YK_' apply to the YASK stencil kernel. # - vars starting with 'YC_' apply to the YASK stencil compiler. -YASK_MFLAGS := --max-load 5 +YASK_MFLAGS := --max-load 16 #YASK_MFLAGS += --output-sync --output-sync=line YK_MAKE := $(MAKE) $(YASK_MFLAGS) -C src/kernel YASK_OUTPUT_DIR=$(YASK_OUT_BASE) YC_MAKE := $(MAKE) $(YASK_MFLAGS) -C src/compiler YASK_OUTPUT_DIR=$(YASK_OUT_BASE) diff --git a/include/yk_solution_api.hpp b/include/yk_solution_api.hpp index 97d1665a..6ec6de8d 100644 --- a/include/yk_solution_api.hpp +++ b/include/yk_solution_api.hpp @@ -189,7 +189,8 @@ namespace yask { virtual void set_block_size(const std::string& dim /**< [in] Name of dimension to set. Must be one of - the names from get_domain_dim_names(). */, + the names from get_step_dim_name() or + get_domain_dim_names(). */, idx_t size /**< [in] Elements in a block in this `dim`. */ ) =0; @@ -202,7 +203,8 @@ namespace yask { virtual idx_t get_block_size(const std::string& dim /**< [in] Name of dimension to get. Must be one of - the names from get_domain_dim_names(). */) const =0; + the names from get_step_dim_name() or + get_domain_dim_names(). */) const =0; /// Set the number of MPI ranks in the given dimension. /** diff --git a/src/kernel/Makefile b/src/kernel/Makefile index c6753c82..b5403b81 100644 --- a/src/kernel/Makefile +++ b/src/kernel/Makefile @@ -515,7 +515,7 @@ REGION_LOOP_OPTS ?= -ndims $(NSDIMS) -inVar region_idxs \ REGION_LOOP_OUTER_MODS ?= grouped omp REGION_LOOP_ORDER ?= 1 .. N-1 REGION_LOOP_CODE ?= $(REGION_LOOP_OUTER_MODS) loop($(REGION_LOOP_ORDER)) { \ - $(REGION_LOOP_INNER_MODS) call(calc_block(bp, phase)); } + $(REGION_LOOP_INNER_MODS) call(calc_block(bp, phase, shift_num)); } # Block loops break up a block into sub-blocks. The 'omp' modifier creates # a *nested* OpenMP loop so that each sub-block is assigned to a nested OpenMP @@ -764,14 +764,16 @@ py-api-no-yc: $(MAKE) $(NO_YC_MAKE_FLAGS) py-api # Validation runs for each binary. -# Currently, temporal blocking does not work with temporal wavefronts. -val1 := -dt 2 -b 16 -d 48 -val2 := -dt 2 -b 24 -r 32 -rt 2 -d 63 -val3 := -dt 2 -b 24 -b 16 -bt 2 -d 63 +val1 := -d 48 -dt 2 -b 16 -bt 1 +val2 := -d 63 -dt 2 -b 24 -bt 1 -r 32 -rt 2 +val3 := -d 61 -dt 2 -b 24 -bt 2 +val4 := -d 64 -dt 2 -b 32 -bt 2 -r 48 -rt 2 ranks := 2 # Run the kernel binary using several combos of sizes and ranks. yk-tests: + $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -v $(val4) + $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -ranks $(ranks) -v $(val4) $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -v $(val1) $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -v $(val2) $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -v $(val3) @@ -795,7 +797,7 @@ api-tests: $(MAKE) clean; $(MAKE) py-yk-api-test-with-exception stencil=iso3dfd # Run several stencils using built-in validation. -# NB: set arch var if applicable. +# NB: set arch var as applicable. # NB: save some time by using YK_CXXOPT=-O2. # These tests are focused on the kernel and not the compiler. # For testing both the kernel and compiler in various combinations, diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index e3e1dc71..6e9ee26c 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -45,7 +45,7 @@ namespace yask { GET_SOLN_API(get_rank_domain_size, _opts->_rank_sizes[dim], false, true, false, false) GET_SOLN_API(get_region_size, _opts->_region_sizes[dim], true, true, false, false) GET_SOLN_API(get_min_pad_size, _opts->_min_pad_sizes[dim], false, true, false, false) - GET_SOLN_API(get_block_size, _opts->_block_sizes[dim], false, true, false, false) + GET_SOLN_API(get_block_size, _opts->_block_sizes[dim], true, true, false, false) GET_SOLN_API(get_num_ranks, _opts->_num_ranks[dim], false, true, false, false) GET_SOLN_API(get_first_rank_domain_index, rank_bb.bb_begin[dim], false, true, false, true) GET_SOLN_API(get_last_rank_domain_index, rank_bb.bb_end[dim] - 1, false, true, false, true) @@ -62,7 +62,7 @@ namespace yask { if (reset_prep) rank_bb.bb_valid = ext_bb.bb_valid = false; \ } SET_SOLN_API(set_min_pad_size, _opts->_min_pad_sizes[dim] = n, false, true, false, false) - SET_SOLN_API(set_block_size, _opts->_block_sizes[dim] = n, false, true, false, true) + SET_SOLN_API(set_block_size, _opts->_block_sizes[dim] = n, true, true, false, true) SET_SOLN_API(set_region_size, _opts->_region_sizes[dim] = n, true, true, false, true) SET_SOLN_API(set_rank_domain_size, _opts->_rank_sizes[dim] = n, false, true, false, true) SET_SOLN_API(set_num_ranks, _opts->_num_ranks[dim] = n, false, true, false, true) @@ -163,7 +163,7 @@ namespace yask { _opts->_block_sizes.setValsSame(0); _opts->_block_sizes[_dims->_step_dim] = 1; _opts->adjustSettings(get_env()); - update_block_info(); + update_grid_info(); // Copy these settings to packs and realloc scratch grids. for (auto& sp : stPacks) @@ -516,12 +516,13 @@ namespace yask { } // run_solution(). // Trim boundaries 'start' and 'stop' to actual size in which to compute - // in pack 'bp' within region based on 'shift_num', which should start - // at 0 and increment for each pack in each time-step. Update 'begin' - // and 'end' in 'idxs'. Return 'true' if resulting area is non-empty, - // 'false' if empty. + // in pack 'bp' within region with base 'region_start' to 'region_stop' + // shifted by 'shift_num', which should start at 0 and increment for + // each pack in each time-step. Updates 'begin' and 'end' in 'idxs'. + // Return 'true' if resulting area is non-empty, 'false' if empty. bool StencilContext::trim_to_region(const Indices& start, const Indices& stop, - BundlePack* bp, idx_t shift_num, + const Indices& region_start, const Indices& region_stop, + BundlePackPtr& bp, idx_t shift_num, ScanIndices& idxs) { auto step_posn = +Indices::step_posn; int ndims = _dims->_stencil_dims.size(); @@ -538,39 +539,59 @@ namespace yask { // We have to calculate the posn in the extended rank at each // value of 'shift_num' because it is being shifted spatially. bool ok = true; - assert (bp); - auto& pbb = bp->getBB(); // extended BB for this pack. for (int i = 0, j = 0; i < ndims; i++) { if (i == step_posn) continue; auto angle = wf_angles[j]; - // Begin point. - idx_t dbegin = rank_bb.bb_begin[j]; // non-extended domain. - idx_t rbegin = max(start[i], pbb.bb_begin[j]); + // Shift initial spatial region boundaries for this iteration of + // temporal wavefront. Between regions, we only shift left, so + // region loops must strictly increment. They may do so in any + // order. Shift by pts in one WF step. Always shift left in + // WFs. TODO: shift only what is needed by this pack, not the + // global max. + idx_t rstart = region_start[i] - angle * shift_num; + idx_t rstop = region_stop[i] - angle * shift_num; + + // Clamp to extended BB. + if (bp) { + auto& pbb = bp->getBB(); // extended BB for this pack. + rstart = max(rstart, pbb.bb_begin[j]); + rstop = min(rstop, pbb.bb_end[j]); + } - // In left ext, add 'angle' points for every shift. - if (rbegin < dbegin) - rbegin = max(rbegin, dbegin - left_wf_exts[j] + shift_num * angle); - idxs.begin[i] = rbegin; + // Clamp to provided start & stop. + rstart = max(rstart, start[i]); + rstop = min(rstop, stop[i]); + + // Non-extended domain. + idx_t dbegin = rank_bb.bb_begin[j]; + idx_t dend = rank_bb.bb_end[j]; - // End point. - idx_t dend = rank_bb.bb_end[j]; // non-extended domain. - idx_t rend = min(stop[i], pbb.bb_end[j]); + // In left ext, add 'angle' points for every shift to get + // region boundary in ext. + if (rstart < dbegin && left_wf_exts[j]) + rstart = max(rstart, dbegin - left_wf_exts[j] + shift_num * angle); // In right ext, subtract 'angle' points for every shift. - if (rend > dend) - rend = min(rend, dend + right_wf_exts[j] - shift_num * angle); - idxs.end[i] = rend; + if (rstop > dend && right_wf_exts[j]) + rstop = min(rstop, dend + right_wf_exts[j] - shift_num * angle); + + // Copy into idxs. + idxs.begin[i] = rstart; + idxs.end[i] = rstop; // Anything to do in the adjusted region? - if (rend <= rbegin) + if (rstop <= rstart) ok = false; j++; // next domain index. } TRACE_MSG("trim_to_region: updated span: [" << idxs.begin.makeValStr(ndims) << " ... " << - idxs.end.makeValStr(ndims) << ") is " << + idxs.end.makeValStr(ndims) << ") within region base [" << + region_start.makeValStr(ndims) << " ... " << + region_stop.makeValStr(ndims) << ") shifted " << + shift_num << " time(s) is " << (ok ? "not " : "") << "empty"); return ok; } @@ -586,8 +607,11 @@ namespace yask { int ndims = _dims->_stencil_dims.size(); auto& step_dim = _dims->_step_dim; auto step_posn = +Indices::step_posn; - TRACE_MSG("calc_region: [" << rank_idxs.start.makeValStr(ndims) << - " ... " << rank_idxs.stop.makeValStr(ndims) << ")"); + TRACE_MSG("calc_region: region [" << + rank_idxs.start.makeValStr(ndims) << " ... " << + rank_idxs.stop.makeValStr(ndims) << ") within rank [" << + rank_idxs.begin.makeValStr(ndims) << " ... " << + rank_idxs.end.makeValStr(ndims) << ")" ); // Track time (use "else" to avoid double-counting). if (do_mpi_exterior) @@ -599,11 +623,6 @@ namespace yask { ScanIndices region_idxs(*_dims, true, &rank_domain_offsets); region_idxs.initFromOuter(rank_idxs); - // Make a copy of the original index span because - // we will be shifting it for temporal wavefronts. - Indices start(region_idxs.begin); - Indices stop(region_idxs.end); - // Step (usually time) loop. // When doing WF tiling, this loop will step through // several time-steps in each region. @@ -638,7 +657,8 @@ namespace yask { if (sel_bp && sel_bp != bp) continue; - TRACE_MSG("calc_region: no TB; bundle-pack '" << bp->get_name() << "' in step(s) [" << + TRACE_MSG("calc_region: no TB; bundle-pack '" << + bp->get_name() << "' in step(s) [" << start_t << " ... " << stop_t << ")"); // Start timers for this pack. @@ -653,9 +673,10 @@ namespace yask { region_idxs.group_size = settings._block_group_sizes; region_idxs.group_size[step_posn] = step_t; - // Trim region based on pack settings. - bool ok = trim_to_region(start, stop, - bp.get(), shift_num, + // Set region_idxs based on pack settings and shift. + bool ok = trim_to_region(rank_idxs.begin, rank_idxs.end, + rank_idxs.start, rank_idxs.stop, + bp, shift_num, region_idxs); // Only need to loop through the span of the region if it is @@ -687,22 +708,8 @@ namespace yask { if (do_mpi_exterior) mark_grids_dirty(bp, start_t, stop_t); - // Shift spatial region boundaries for next iteration to - // implement temporal wavefront. Between regions, we only shift - // left, so region loops must strictly increment. They may do - // so in any order. TODO: shift only what is needed by - // this pack, not the global max. - for (int i = 0, j = 0; i < ndims; i++) { - if (i == step_posn) continue; - - // Shift by pts in one WF step. - // Always shift left in WFs. - auto angle = wf_angles[j]; - start[i] -= angle; - stop[i] -= angle; - j++; - } - shift_num++; // Increment for each pack. + // One shift for each pack. + shift_num++; // Stop timers for this pack. stop_timers(bp); @@ -729,6 +736,13 @@ namespace yask { region_idxs.group_size = settings._block_group_sizes; region_idxs.group_size[step_posn] = step_t; + // Set region_idxs based on rank settings and shift. + // This will be the base region for the TB. + trim_to_region(rank_idxs.begin, rank_idxs.end, + rank_idxs.start, rank_idxs.stop, + bp, shift_num, + region_idxs); + // To tesselate n-D space, we use n distinct "phases", where // n includes the time dim. idx_t nphases = ndims; @@ -740,18 +754,8 @@ namespace yask { #include "yask_region_loops.hpp" } - // Shift spatial region boundaries for next iteration to - // implement temporal wavefront. - // This is needed when 'wf_steps' > 'tb_steps'. - for (int i = 0, j = 0; i < ndims; i++) { - if (i == step_posn) continue; - - // Shift by pts in one WF step per TB step. - auto angle = wf_angles[j] * tb_steps; - start[i] -= angle; - stop[i] -= angle; - j++; - } + // One shift for each pack for each TB step. + shift_num += stPacks.size() * tb_steps; } // with temporal blocking. @@ -774,7 +778,7 @@ namespace yask { // 'phase' are computed. Typically called by a top-level OMP thread // from calc_region(). void StencilContext::calc_block(BundlePackPtr& sel_bp, - idx_t phase, + idx_t phase, idx_t shift_num, const ScanIndices& region_idxs) { int nsdims = _dims->_stencil_dims.size(); @@ -783,10 +787,13 @@ namespace yask { auto step_posn = Indices::step_posn; auto* bp = sel_bp.get(); int thread_idx = omp_get_thread_num(); - TRACE_MSG("calc_block: phase " << phase << " [" << + TRACE_MSG("calc_block: phase " << phase << ", block [" << region_idxs.start.makeValStr(nsdims) << " ... " << region_idxs.stop.makeValStr(nsdims) << - " in thread " << thread_idx); + ") within region [" << + region_idxs.begin.makeValStr(nsdims) << " ... " << + region_idxs.end.makeValStr(nsdims) << + ") by thread " << thread_idx); // If we are not calculating some of the blocks, determine // whether this block is *completely* inside the interior. @@ -887,7 +894,7 @@ namespace yask { } // Determine number of shapes. First and last phase need - // one part. Other (bridge) phases need one shape for + // one shape. Other (bridge) phases need one shape for // each domain dim. idx_t nphases = nsdims; idx_t nshapes = (phase == 0) ? 1 : @@ -914,7 +921,7 @@ namespace yask { Indices next_start(block_idxs.end); // Step (usually time) loop. - idx_t shift_num = 0; + idx_t cur_shift_num = 0; for (idx_t index_t = 0; index_t < num_t; index_t++) { // This value of index_t steps from start_t to stop_t-1. @@ -987,13 +994,14 @@ namespace yask { ", start= " << start.makeValStr(nsdims) << ", stop= " << stop.makeValStr(nsdims) << ", next-start= " << next_start.makeValStr(nsdims) << - "), shape-range= [" << + ", shape-range= [" << shape_start.makeValStr(nsdims) << " ... " << shape_stop.makeValStr(nsdims) << ")"); // Trim to region boundaries based on pack settings. bool ok = trim_to_region(shape_start, shape_stop, - bp.get(), shift_num, + region_idxs.begin, region_idxs.end, + bp, cur_shift_num, block_idxs); // Loop through bundles in this pack to do actual calcs. @@ -1034,7 +1042,7 @@ namespace yask { next_start[i] += tb_angle; j++; } - shift_num++; // Increment for each pack and time-step. + cur_shift_num++; // Increment for each pack and time-step. // Stop timers for this pack. stop_timers(bp); diff --git a/src/kernel/lib/context.hpp b/src/kernel/lib/context.hpp index 76efd0c9..8293f9de 100644 --- a/src/kernel/lib/context.hpp +++ b/src/kernel/lib/context.hpp @@ -235,7 +235,6 @@ namespace yask { idx_t num_wf_shifts = 0; // number of WF shifts required in wf_steps. idx_t num_tb_shifts = 0; // number of TB shifts required in tb_steps. IdxTuple wf_shifts; // total shifted pts (wf_angles * num_wf_shifts). - IdxTuple tb_shifts; // total shifted pts (tb_angles * num_tb_shifts). IdxTuple left_wf_exts; // WF extension needed on left side of rank for halo exch. IdxTuple right_wf_exts; // WF extension needed on right side of rank. @@ -513,7 +512,7 @@ namespace yask { // Calculate results within a block. virtual void calc_block(BundlePackPtr& sel_bp, - idx_t phase, + idx_t phase, idx_t shift_num, const ScanIndices& region_idxs); // Exchange all dirty halo data for all stencil bundles. @@ -526,8 +525,9 @@ namespace yask { // Set various limits in 'idxs' based on current step. virtual bool trim_to_region(const Indices& start, const Indices& stop, - BundlePack* bp, idx_t shift_num, - ScanIndices& idxs); + const Indices& region_start, const Indices& region_stop, + BundlePackPtr& bp, idx_t shift_num, + ScanIndices& idxs); // Set the bounding-box around all stencil bundles. virtual void find_bounding_boxes(); diff --git a/src/kernel/lib/settings.hpp b/src/kernel/lib/settings.hpp index 87d2ab19..a2ee9606 100644 --- a/src/kernel/lib/settings.hpp +++ b/src/kernel/lib/settings.hpp @@ -856,11 +856,6 @@ namespace yask { virtual bool is_last_rank(const std::string dim) { return _rank_indices[dim] == _num_ranks[dim] - 1; } - - // Is WF tiling being used? - virtual bool is_time_tiling() { - return _region_sizes[_dims->_step_dim] > 1; - } }; typedef std::shared_ptr KernelSettingsPtr; diff --git a/src/kernel/lib/setup.cpp b/src/kernel/lib/setup.cpp index 6186b2aa..c6020eb1 100644 --- a/src/kernel/lib/setup.cpp +++ b/src/kernel/lib/setup.cpp @@ -55,7 +55,6 @@ namespace yask { wf_angles = _dims->_domain_dims; wf_shifts = _dims->_domain_dims; tb_angles = _dims->_domain_dims; - tb_shifts = _dims->_domain_dims; left_wf_exts = _dims->_domain_dims; right_wf_exts = _dims->_domain_dims; @@ -460,17 +459,15 @@ namespace yask { // are no more ranks in the given direction, // extend the "outer" index to include the halo // in that direction to make sure all data are - // sync'd when using WF tiling. + // sync'd. Critical for temporal tiling. idx_t fidx = gp->get_first_rank_domain_index(dname); idx_t lidx = gp->get_last_rank_domain_index(dname); first_inner_idx.addDimBack(dname, fidx); last_inner_idx.addDimBack(dname, lidx); - if (_opts->is_time_tiling()) { - if (_opts->is_first_rank(dname)) - fidx -= lhalo; - if (_opts->is_last_rank(dname)) - lidx += rhalo; - } + if (_opts->is_first_rank(dname)) + fidx -= lhalo; // extend into left halo. + if (_opts->is_last_rank(dname)) + lidx += rhalo; // extend into right halo. first_outer_idx.addDimBack(dname, fidx); last_outer_idx.addDimBack(dname, lidx); @@ -974,7 +971,8 @@ namespace yask { auto bsz = _opts->_block_sizes[dname]; auto angle = tb_angles[dname]; if (angle > 0) { - auto cur_max = bsz / angle / 2 + 1; + idx_t sh_pts = angle * 2 * stPacks.size(); + idx_t cur_max = (bsz - 1) / sh_pts + 1; TRACE_MSG("update_block_info: max TB steps in dim '" << dname << "' = " << cur_max << " due to base block size of " << bsz << @@ -1292,15 +1290,23 @@ namespace yask { " minimum-padding: " << _opts->_min_pad_sizes.makeDimValStr() << endl << " L1-prefetch-distance: " << PFD_L1 << endl << " L2-prefetch-distance: " << PFD_L2 << endl << - " max-halos: " << max_halos.makeDimValStr() << endl; - if (num_wf_shifts > 0) { + " max-halos: " << max_halos.makeDimValStr() << endl << + " num-temporal-block-steps: " << tb_steps << endl; + if (tb_steps > 1) { + os << + " temporal-block-angles: " << tb_angles.makeDimValStr() << endl << + " num-temporal-block-shifts: " << num_tb_shifts << endl; + } + os << + " num-wave-front-steps: " << wf_steps << endl; + if (wf_steps > 1) { os << - " wave-front-angles: " << wf_angles.makeDimValStr() << endl << - " num-wave-front-shifts: " << num_wf_shifts << endl << - " wave-front-shift-lens: " << wf_shifts.makeDimValStr() << endl << - " left-wave-front-exts: " << left_wf_exts.makeDimValStr() << endl << - " right-wave-front-exts: " << right_wf_exts.makeDimValStr() << endl << - " ext-rank-domain: " << ext_bb.bb_begin.makeDimValStr() << + " wave-front-angles: " << wf_angles.makeDimValStr() << endl << + " num-wave-front-shifts: " << num_wf_shifts << endl << + " wave-front-shift-size: " << wf_shifts.makeDimValStr() << endl << + " left-wave-front-exts: " << left_wf_exts.makeDimValStr() << endl << + " right-wave-front-exts: " << right_wf_exts.makeDimValStr() << endl << + " ext-rank-domain: " << ext_bb.bb_begin.makeDimValStr() << " ... " << ext_bb.bb_end.subElements(1).makeDimValStr() << endl; } os << endl; diff --git a/src/kernel/yask_main.cpp b/src/kernel/yask_main.cpp index 7aa4b9ed..6ecff0c5 100644 --- a/src/kernel/yask_main.cpp +++ b/src/kernel/yask_main.cpp @@ -383,6 +383,19 @@ int main(int argc, char** argv) ref_context->name += "-reference"; ref_context->allow_vec_exchange = false; // exchange scalars in halos. + // TODO: re-enable the region and block settings below; + // requires allowing consistent init of different-sized grids + // in kernel code. +#if 0 + auto sdim = ref_soln->get_step_dim_name(); + ref_soln->set_region_size(sdim, 1); + ref_soln->set_block_size(sdim, 1); + for (auto ddim : ref_soln->get_domain_dim_names()) { + ref_soln->set_region_size(ddim, 0); + ref_soln->set_block_size(ddim, 0); + } +#endif + // Override allocations and prep solution as with ref soln. alloc_steps(ref_soln, *opts); ref_soln->prepare_solution(); diff --git a/utils/bin/analyze_trace.pl b/utils/bin/analyze_trace.pl new file mode 100755 index 00000000..31fc39b1 --- /dev/null +++ b/utils/bin/analyze_trace.pl @@ -0,0 +1,127 @@ +#!/usr/bin/env perl + +############################################################################## +## YASK: Yet Another Stencil Kernel +## Copyright (c) 2014-2018, Intel Corporation +## +## Permission is hereby granted, free of charge, to any person obtaining a copy +## of this software and associated documentation files (the "Software"), to +## deal in the Software without restriction, including without limitation the +## rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +## sell copies of the Software, and to permit persons to whom the Software is +## furnished to do so, subject to the following conditions: +## +## * The above copyright notice and this permission notice shall be included in +## all copies or substantial portions of the Software. +## +## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +## FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +## IN THE SOFTWARE. +############################################################################## + +# Purpose: Process the output of a log from a binary built with the following options +# OMPFLAGS='-qopenmp-stubs' arch=intel64 YK_CXXOPT='-O0' EXTRA_MACROS='CHECK TRACE TRACE_MEM FORCE_SCALAR' real_bytes=8 +# and ran with '-v'. + +use strict; +use File::Basename; +use lib dirname($0)."/lib"; +use lib dirname($0)."/../lib"; + +my $in_perf = 0; +my $in_val = 0; +my $key = undef; +my %vals; +my %pts; +my @pwrites; + +while (<>) { + + if (/Trial number:\s*(\d+)/) { + $key = ($1 == 1) ? 'perf' : undef; + } + + elsif (/Running.*for validation/) { + $key = 'val'; + } + + elsif (/Checking results/) { + undef $key; + } + + # writeElem: pressure[t=0, x=0, y=0, z=0] = 5.7 at line 287 + elsif (/writeElem:\s*(\w+)\[(.*)\]\s*=\s*(\S+)/) { + my ($grid, $indices, $val) = ($1, $2, $3); + if (defined $key) { + $indices =~ s/\b\d\b/0$&/g; + $vals{$key}{$grid}{$indices} = $val; + $pts{$grid}{$indices} = 1; + + push @pwrites, [ $grid, $indices ] + if $key eq 'perf'; + } + } + + elsif (/PASS|FAIL|DONE/) { + print $_; + } +} +my $nissues = 0; + +sub comp($$) { + my $grid = shift; + my $indices = shift; + + print "$grid\[$indices\] ="; + my $pval; + for my $key (qw(perf val)) { + my $val = $vals{$key}{$grid}{$indices}; + if (defined $val) { + print "\t $val"; + if (defined $pval && $pval) { + my $pctdiff = ($pval - $val) / $pval * 100.0; + print "\t diff = $pctdiff %"; + if (abs($pctdiff) > 5) { + print " <<<<"; + $nissues++; + } + } + $pval = $val; + } else { + print " NOT written in $key"; + $nissues++; + } + } + print "\n"; +} + +print "\n===== Comparisons in perf-write order =====\n". + "(Will not show missing writes.)\n"; +print "Values are from perf, then validation trial\n"; +my %nwrites; +for my $pw (@pwrites) { + my ($grid, $indices) = ($pw->[0], $pw->[1]); + comp($grid, $indices); + my $nw = ++$nwrites{$grid}{$indices}; + if ($nw > 1) { + print "^^^^^^^^ $nw writes!!!\n"; + $nissues++; + } +} + +print "\n===== Comparisons in grid & index order =====\n"; +print "Values are from perf, then validation trial\n"; +for my $grid (sort keys %pts) { + for my $indices (sort keys %{$pts{$grid}}) { + comp($grid, $indices); + } +} + +print "\n$0: $nissues issue(s) flagged.\n"; +print "(Not all issues may be problematic if using temporal tiling and MPI.)\n" + if $nissues; +exit $nissues; From 22196a9ddc6a609d4e0f3fdfd7757312198c69d9 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Wed, 5 Sep 2018 21:36:37 -0700 Subject: [PATCH 07/19] Fix div-by-0 bug in grouping algo. --- src/common/idiv.hpp | 5 +++++ utils/bin/gen_loops.pl | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/common/idiv.hpp b/src/common/idiv.hpp index 7a30bb2b..cbcf0c74 100644 --- a/src/common/idiv.hpp +++ b/src/common/idiv.hpp @@ -50,6 +50,7 @@ namespace yask { template inline T idiv_flr(T a, T b) { + assert(b); //return (a<0 ? a-(b-1) : a) / b; //return (a - (a<0 ? b-1 : 0)) / b; return (a + (a>>(sizeof(a)*8-1)) * (b-1)) / b; @@ -57,21 +58,25 @@ namespace yask { template inline T ceil_idiv_flr(T a, T b) { + assert(b); return idiv_flr(a + b - 1, b); } template inline T round_up_flr(T a, T b) { + assert(b); return (idiv_flr(a + b - 1, b) * b); } template inline T round_down_flr(T a, T b) { + assert(b); return (idiv_flr(a, b) * b); } template inline T imod_flr(T a, T b) { + assert(b); //return ((a % b) + b) % b; //return ((a < 0) ? ((a % b) + b) : a) % b; //T c = a % b; return (c < 0) ? c + b : c; diff --git a/utils/bin/gen_loops.pl b/utils/bin/gen_loops.pl index 50b75f40..a2963126 100755 --- a/utils/bin/gen_loops.pl +++ b/utils/bin/gen_loops.pl @@ -244,7 +244,7 @@ ($$$) # number of full groups. push @$code, " // Number of full groups in dimension $dim.", - " const $itype $ntvar = $nvar / $ntivar;"; + " const $itype $ntvar = $ntivar ? $nvar / $ntivar : 0;"; } } @@ -327,7 +327,7 @@ ($$$$) # Index of this group in this dim. my $tivar = groupIndexVar($dim); - my $tival = "$prevOvar / $tgvar"; + my $tival = "$tgvar ? $prevOvar / $tgvar : 0"; push @$code, " // Index of this group in dimension $dim.", " $itype $tivar = $tival;"; From a004f276fb97fd3e4fee64c9ac58cfff438c4085 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Thu, 6 Sep 2018 10:14:38 -0700 Subject: [PATCH 08/19] Timer improvements. --- src/kernel/lib/auto_tuner.cpp | 5 +++-- src/kernel/lib/auto_tuner.hpp | 10 ++++++---- src/kernel/lib/context.cpp | 15 +++++++++------ src/kernel/lib/setup.cpp | 2 +- src/kernel/lib/utils.cpp | 22 ++++++++++++++++++++++ src/kernel/lib/utils.hpp | 35 ++++++++++++++++++----------------- 6 files changed, 59 insertions(+), 30 deletions(-) diff --git a/src/kernel/lib/auto_tuner.cpp b/src/kernel/lib/auto_tuner.cpp index 742a0211..9c41a05b 100644 --- a/src/kernel/lib/auto_tuner.cpp +++ b/src/kernel/lib/auto_tuner.cpp @@ -137,8 +137,9 @@ namespace yask { // Calc perf and reset vars for next time. double rate = (ctime > 0.) ? double(csteps) / ctime : 0.; - os << _name << ": " << csteps << " steps(s) at " << rate << - " steps/sec with block-size " << + os << _name << ": " << csteps << " steps(s) in " << ctime << + " secs (" << rate << + " steps/sec) with block-size " << _settings->_block_sizes.makeDimValStr(" * ") << endl; csteps = 0; ctime = 0.; diff --git a/src/kernel/lib/auto_tuner.hpp b/src/kernel/lib/auto_tuner.hpp index 7e175d37..be22676c 100644 --- a/src/kernel/lib/auto_tuner.hpp +++ b/src/kernel/lib/auto_tuner.hpp @@ -44,8 +44,8 @@ namespace yask { // AT parameters. double warmup_steps = 10; double warmup_secs = 0.5; - idx_t min_steps = 5; - double min_secs = 0.1; // eval when either min_steps or min_secs is reached. + idx_t min_steps = 10; + double min_secs = 0.25; // eval when either min_steps or min_secs is reached. idx_t min_step = 4; idx_t max_radius = 64; idx_t min_pts = 512; // 8^3. @@ -76,10 +76,12 @@ namespace yask { AutoTuner(StencilContext* ctx, KernelSettings* settings, - const std::string& name) : + const std::string& name = "") : _context(ctx), _settings(settings) { - _name = "auto-tuner(" + name + ")"; + _name = "auto-tuner"; + if (name.length()) + _name += "(" + name + ")"; } // Start & stop this timer to track elapsed time. diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index 6e9ee26c..e80868ac 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -1054,15 +1054,18 @@ namespace yask { } // calc_block(). // Timer methods. + // Start and stop timers for final stats and auto-tuners. void StencilContext::start_timers(BundlePackPtr& bp) { - bp->timer.start(); - bp->getAT().timer.start(); - _at.timer.start(); + auto ts = YaskTimer::get_timespec(); + bp->timer.start(&ts); + bp->getAT().timer.start(&ts); + _at.timer.start(&ts); } void StencilContext::stop_timers(BundlePackPtr& bp) { - bp->timer.stop(); - bp->getAT().timer.stop(); - _at.timer.stop(); + auto ts = YaskTimer::get_timespec(); + bp->timer.stop(&ts); + bp->getAT().timer.stop(&ts); + _at.timer.stop(&ts); } // Eval auto-tuner for given number of steps. diff --git a/src/kernel/lib/setup.cpp b/src/kernel/lib/setup.cpp index c6020eb1..7ac91f8f 100644 --- a/src/kernel/lib/setup.cpp +++ b/src/kernel/lib/setup.cpp @@ -38,7 +38,7 @@ namespace yask { _env(env), _opts(settings), _dims(settings->_dims), - _at(this, _opts.get(), "solution") + _at(this, _opts.get()) { // Set debug output object. yask_output_factory yof; diff --git a/src/kernel/lib/utils.cpp b/src/kernel/lib/utils.cpp index 443099ee..71e301e6 100644 --- a/src/kernel/lib/utils.cpp +++ b/src/kernel/lib/utils.cpp @@ -34,6 +34,28 @@ Cache cache_model(MODEL_CACHE); namespace yask { + // Timer. + double YaskTimer::stop(TimeSpec* ts) { + if (ts) + _end = *ts; + else { + auto cts = get_timespec(); + _end = cts; + } + struct timespec delta; + + // Elapsed time is just end - begin times. + delta.tv_sec = _end.tv_sec - _begin.tv_sec; + _elapsed.tv_sec += delta.tv_sec; + + // No need to check for sign or to normalize, because tv_nsec is + // signed and 64-bit. + delta.tv_nsec = _end.tv_nsec - _begin.tv_nsec; + _elapsed.tv_nsec += delta.tv_nsec; + + return double(delta.tv_sec) + double(delta.tv_nsec) * 1e-9; + } + // Aligned allocation. char* alignedAlloc(std::size_t nbytes) { diff --git a/src/kernel/lib/utils.hpp b/src/kernel/lib/utils.hpp index 9791984a..8d7f1f9b 100644 --- a/src/kernel/lib/utils.hpp +++ b/src/kernel/lib/utils.hpp @@ -154,6 +154,9 @@ namespace yask { struct timespec _begin, _end, _elapsed; public: + + typedef struct timespec TimeSpec; + YaskTimer() { clear(); } virtual ~YaskTimer() { } @@ -163,32 +166,30 @@ namespace yask { _begin.tv_nsec = _end.tv_nsec = _elapsed.tv_nsec = 0; } + // Make a timespec that can be used for mutiple calls. + static TimeSpec get_timespec() { + TimeSpec ts; + clock_gettime(CLOCK_REALTIME, &ts); + return ts; + } + // Start a timed region. // start() and stop() can be called multiple times in // pairs before calling get_elapsed_secs(), which // will return the cumulative time over all timed regions. - virtual void start() { - clock_gettime(CLOCK_REALTIME, &_begin); + virtual void start(TimeSpec* ts = NULL) { + if (ts) + _begin = *ts; + else { + auto cts = get_timespec(); + _begin = cts; + } } // End a timed region. // Return time since previous call to start(); this is *not* // generally the same as the value returned by get_elapsed_secs(). - virtual double stop() { - clock_gettime(CLOCK_REALTIME, &_end); - struct timespec delta; - - // Elapsed time is just end - begin times. - delta.tv_sec = _end.tv_sec - _begin.tv_sec; - _elapsed.tv_sec += delta.tv_sec; - - // No need to check for sign or to normalize, because tv_nsec is - // signed and 64-bit. - delta.tv_nsec = _end.tv_nsec - _begin.tv_nsec; - _elapsed.tv_nsec += delta.tv_nsec; - - return double(delta.tv_sec) + double(delta.tv_nsec) * 1e-9; - } + virtual double stop(TimeSpec* ts = NULL); // Get elapsed time in sec. // Does not reset value, so it may be used for cumulative time. From 57bf0046e2a6cb275d6467bbd68693ffde4a2f47 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Thu, 6 Sep 2018 10:14:58 -0700 Subject: [PATCH 09/19] Cleanup test order. --- src/kernel/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/kernel/Makefile b/src/kernel/Makefile index b5403b81..7f897df5 100644 --- a/src/kernel/Makefile +++ b/src/kernel/Makefile @@ -772,14 +772,14 @@ ranks := 2 # Run the kernel binary using several combos of sizes and ranks. yk-tests: - $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -v $(val4) - $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -ranks $(ranks) -v $(val4) $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -v $(val1) $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -v $(val2) $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -v $(val3) + $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -v $(val4) $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -ranks $(ranks) -v $(val1) $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -ranks $(ranks) -v $(val2) $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -ranks $(ranks) -v $(val3) + $(YK_SCRIPT) -stencil $(stencil) -arch $(arch) -ranks $(ranks) -v $(val4) # Run the default YASK compiler and kernel. yc-and-yk-test: $(YK_EXEC) $(YK_SCRIPT) From 88b86285e3e5dc21184a8b1d1243968b354dc305 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Thu, 6 Sep 2018 10:15:31 -0700 Subject: [PATCH 10/19] Add URL reference. --- src/stencils/Iso3dfdStencil.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/stencils/Iso3dfdStencil.cpp b/src/stencils/Iso3dfdStencil.cpp index 2086a16d..fad3561d 100644 --- a/src/stencils/Iso3dfdStencil.cpp +++ b/src/stencils/Iso3dfdStencil.cpp @@ -25,6 +25,7 @@ IN THE SOFTWARE. // Implement isotropic 3D finite-difference (FD) stencil, nth-order accurate in // space (where n = 2 * radius) and 2nd-order accurate in time. +// See https://software.intel.com/en-us/articles/eight-optimizations-for-3-dimensional-finite-difference-3dfd-code-with-an-isotropic-iso. #include "Soln.hpp" @@ -41,7 +42,7 @@ class Iso3dfdStencil : public StencilRadiusBase { // Grids. MAKE_GRID(pressure, t, x, y, z); // time-varying 3D pressure grid. - MAKE_GRID(vel, x, y, z); // constant 3D vel grid. + MAKE_GRID(vel, x, y, z); // constant 3D vel grid (c(x,y,z)^2 * delta_t^2). MAKE_ARRAY(coeff, r); // FD coefficients. public: From 1d65e7eb612e89852a089b488b724d2cf36fb55f Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Thu, 6 Sep 2018 22:59:40 -0700 Subject: [PATCH 11/19] Add more sub-domain debug info. --- src/kernel/lib/setup.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/kernel/lib/setup.cpp b/src/kernel/lib/setup.cpp index 7ac91f8f..99dd9aec 100644 --- a/src/kernel/lib/setup.cpp +++ b/src/kernel/lib/setup.cpp @@ -1356,9 +1356,17 @@ namespace yask { " scratch bundles: " << (sg_list.size() - 1) << endl << " sub-domain scope: " << bb.bb_begin.makeDimValStr() << " ... " << bb.bb_end.subElements(1).makeDimValStr() << endl << - " sub-domain size: " << bb.bb_len.makeDimValStr(" * ") << endl << - " valid points in sub domain: " << makeNumStr(bb.bb_num_points) << endl << - " rectangles in sub domain: " << sg->getBBs().size() << endl << + " sub-domain bounding-box: " << bb.bb_len.makeDimValStr(" * ") << endl << + " valid points in sub-domain: " << makeNumStr(bb.bb_num_points) << endl << + " rectangles in sub-domain: " << sg->getBBs().size() << endl; + for (size_t ri = 0; ri < sg->getBBs().size(); ri++) { + auto& rbb = sg->getBBs()[ri]; + os << " rect " << ri << " scope: " << rbb.bb_begin.makeDimValStr() << + " ... " << rbb.bb_end.subElements(1).makeDimValStr() << endl; + os << " rect " << ri << " size: " << rbb.bb_len.makeDimValStr(" * ") << endl; + os << " points in rect " << ri << ": " << rbb.bb_num_points << endl; + } + os << " grid-updates per point: " << updates1 << endl << " grid-updates in sub-domain: " << makeNumStr(updates_domain) << endl << " grid-reads per point: " << reads1 << endl << @@ -1539,7 +1547,7 @@ namespace yask { auto& stencil_dims = dims->_stencil_dims; auto nddims = domain_dims.size(); auto nsdims = stencil_dims.size(); - TRACE_MSG3(get_name() << ".find_bounding_box()..."); + TRACE_MSG3("find_bounding_box for '" << get_name() << "'..."); // First, find an overall BB around all the // valid points in the bundle. From 71afb3f4072aa60356c3881446fdbcc6312d2bc0 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Fri, 7 Sep 2018 08:30:15 -0700 Subject: [PATCH 12/19] Properly detect and skip empty sub-domains. --- src/kernel/lib/context.cpp | 6 +++-- src/kernel/lib/context.hpp | 2 +- src/kernel/lib/setup.cpp | 44 ++++++++++++++++++++++++--------- src/kernel/lib/stencil_calc.cpp | 14 +++++++---- src/kernel/lib/stencil_calc.hpp | 8 +++--- utils/bin/analyze_trace.pl | 27 +++++++++++++------- 6 files changed, 68 insertions(+), 33 deletions(-) diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index e80868ac..2348a808 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -875,7 +875,8 @@ namespace yask { // Loop through bundles in this pack to do actual calcs. for (auto* sb : *bp) - sb->calc_block(block_idxs); + if (sb->getBB().bb_num_points) + sb->calc_block(block_idxs); } // If TB is active, do all packs across time steps for each required shape. @@ -1007,7 +1008,8 @@ namespace yask { // Loop through bundles in this pack to do actual calcs. if (ok) { for (auto* sb : *bp) - sb->calc_block(block_idxs); + if (sb->getBB().bb_num_points) + sb->calc_block(block_idxs); } // Mark updated grids as dirty. diff --git a/src/kernel/lib/context.hpp b/src/kernel/lib/context.hpp index 8293f9de..12ff910f 100644 --- a/src/kernel/lib/context.hpp +++ b/src/kernel/lib/context.hpp @@ -37,7 +37,7 @@ namespace yask { // Following values are calculated from the above ones. IdxTuple bb_len; // size in each dim. - idx_t bb_size=1; // points in the entire box >= bb_num_points. + idx_t bb_size=1; // points in the entire box; bb_size >= bb_num_points. bool bb_is_full=false; // all points in box are valid (bb_size == bb_num_points). bool bb_is_aligned=false; // starting points are vector-aligned in all dims. bool bb_is_cluster_mult=false; // num points are cluster multiples in all dims. diff --git a/src/kernel/lib/setup.cpp b/src/kernel/lib/setup.cpp index 99dd9aec..954452f7 100644 --- a/src/kernel/lib/setup.cpp +++ b/src/kernel/lib/setup.cpp @@ -1353,18 +1353,27 @@ namespace yask { rank_numFpOps_1t += fpops_domain; os << " Bundle '" << sg->get_name() << "':\n" << - " scratch bundles: " << (sg_list.size() - 1) << endl << - " sub-domain scope: " << bb.bb_begin.makeDimValStr() << - " ... " << bb.bb_end.subElements(1).makeDimValStr() << endl << - " sub-domain bounding-box: " << bb.bb_len.makeDimValStr(" * ") << endl << - " valid points in sub-domain: " << makeNumStr(bb.bb_num_points) << endl << + " reqd scratch bundles: " << (sg_list.size() - 1) << endl; + // TODO: add info on scratch bundles here. + os << + " points in sub-domain: " << makeNumStr(bb.bb_size) << endl; + if (bb.bb_size) { + os << + " valid points in sub-domain: " << makeNumStr(bb.bb_num_points) << endl << + " sub-domain scope: " << bb.bb_begin.makeDimValStr() << + " ... " << bb.bb_end.subElements(1).makeDimValStr() << endl << + " sub-domain bounding-box: " << bb.bb_len.makeDimValStr(" * ") << endl; + } + os << " rectangles in sub-domain: " << sg->getBBs().size() << endl; for (size_t ri = 0; ri < sg->getBBs().size(); ri++) { auto& rbb = sg->getBBs()[ri]; - os << " rect " << ri << " scope: " << rbb.bb_begin.makeDimValStr() << - " ... " << rbb.bb_end.subElements(1).makeDimValStr() << endl; - os << " rect " << ri << " size: " << rbb.bb_len.makeDimValStr(" * ") << endl; - os << " points in rect " << ri << ": " << rbb.bb_num_points << endl; + os << " points in rect " << ri << ": " << makeNumStr(rbb.bb_num_points) << endl; + if (rbb.bb_num_points) { + os << " rect " << ri << " scope: " << rbb.bb_begin.makeDimValStr() << + " ... " << rbb.bb_end.subElements(1).makeDimValStr() << endl; + os << " rect " << ri << " size: " << rbb.bb_len.makeDimValStr(" * ") << endl; + } } os << " grid-updates per point: " << updates1 << endl << @@ -1610,15 +1619,20 @@ namespace yask { // No points, just set to zero. else { _bundle_bb.bb_begin.setValsSame(0); - _bundle_bb.bb_end.setValsSame(1); + _bundle_bb.bb_end.setValsSame(0); } _bundle_bb.bb_num_points = npts; // Finalize overall BB. _bundle_bb.update_bb(get_name(), context, false); - // If the BB is full (solid) or completely empty, this BB is the only bb. - if (_bundle_bb.bb_is_full || !npts) { + // If BB is empty, add nothing. + if (!npts) { + TRACE_MSG3("BB is empty"); + } + + // If the BB is full (solid), this BB is the only bb. + else if (_bundle_bb.bb_is_full) { TRACE_MSG3("adding 1 sub-BB: [" << _bundle_bb.bb_begin.makeDimValStr() << " ... " << _bundle_bb.bb_end.makeDimValStr() << ")"); @@ -1626,6 +1640,7 @@ namespace yask { _bb_list.push_back(_bundle_bb); } + // Otherwise, the overall BB is not full. // Create list of full BBs (non-overlapping & with no invalid // points) inside overall BB. else { @@ -1779,6 +1794,10 @@ namespace yask { TRACE_MSG3(" sub-BB: [" << bbn.bb_begin.makeDimValStr() << " ... " << bbn.bb_end.makeDimValStr() << ")"); + // Don't bother with empty BB. + //if (bbn.bb_size == 0) + // continue; + // Scan existing final BBs looking for one to merge with. bool do_merge = false; for (auto& bb : _bb_list) { @@ -1806,6 +1825,7 @@ namespace yask { bb.bb_end[odim] = bbn.bb_end[odim]; TRACE_MSG3(" merging to form [" << bb.bb_begin.makeDimValStr() << " ... " << bb.bb_end.makeDimValStr() << ")"); + bb.update_bb("sub-bb", context, true); break; } } diff --git a/src/kernel/lib/stencil_calc.cpp b/src/kernel/lib/stencil_calc.cpp index 2273f28a..5b2094dc 100644 --- a/src/kernel/lib/stencil_calc.cpp +++ b/src/kernel/lib/stencil_calc.cpp @@ -55,8 +55,11 @@ namespace yask { idx_t end_t = def_block_idxs.end[step_posn]; assert(abs(end_t - begin_t) == 1); #endif + + if (_bundle_bb.bb_num_points == 0) + return; - // TODO: if >1 BB, check outer one first to save time. + // TODO: if >1 BB, check limits of outer one first to save time. // Loop through each solid BB. // For each BB, calc intersection between it and 'def_block_idxs'. @@ -67,11 +70,13 @@ namespace yask { for (auto& bb : _bb_list) { bbn++; bool bb_ok = true; + if (bb.bb_num_points == 0) + bb_ok = false; // Trim the default block indices based on the bounding box(es) // for this bundle. ScanIndices bb_idxs(def_block_idxs); - for (int i = 0, j = 0; i < nsdims; i++) { + for (int i = 0, j = 0; bb_ok && i < nsdims; i++) { if (i == step_posn) continue; // Begin point. @@ -83,10 +88,9 @@ namespace yask { bb_idxs.end[i] = bend; // Anything to do? - if (bend <= bbegin) { + if (bend <= bbegin) bb_ok = false; - break; - } + j++; // next domain index. } diff --git a/src/kernel/lib/stencil_calc.hpp b/src/kernel/lib/stencil_calc.hpp index fd488db0..fd472eab 100644 --- a/src/kernel/lib/stencil_calc.hpp +++ b/src/kernel/lib/stencil_calc.hpp @@ -119,12 +119,12 @@ namespace yask { virtual int get_scalar_points_written() const { return _scalar_points_written; } // Scratch accessors. - virtual bool is_scratch() const { return _is_scratch; } - virtual void set_scratch(bool is_scratch) { _is_scratch = is_scratch; } + bool is_scratch() const { return _is_scratch; } + void set_scratch(bool is_scratch) { _is_scratch = is_scratch; } // Access to BBs. - virtual BoundingBox& getBB() { return _bundle_bb; } - virtual BBList& getBBs() { return _bb_list; } + BoundingBox& getBB() { return _bundle_bb; } + BBList& getBBs() { return _bb_list; } // Add dependency. virtual void add_dep(StencilBundleBase* eg) { diff --git a/utils/bin/analyze_trace.pl b/utils/bin/analyze_trace.pl index 31fc39b1..f6372e0a 100755 --- a/utils/bin/analyze_trace.pl +++ b/utils/bin/analyze_trace.pl @@ -23,9 +23,10 @@ ## IN THE SOFTWARE. ############################################################################## -# Purpose: Process the output of a log from a binary built with the following options -# OMPFLAGS='-qopenmp-stubs' arch=intel64 YK_CXXOPT='-O0' EXTRA_MACROS='CHECK TRACE TRACE_MEM FORCE_SCALAR' real_bytes=8 -# and ran with '-v'. +# Purpose: Process the output of a log from a binary and compare every grid write. +# Build with the following options: +# OMPFLAGS='-qopenmp-stubs' YK_CXXOPT='-O0' arch=intel64 EXTRA_MACROS='CHECK TRACE TRACE_MEM FORCE_SCALAR' real_bytes=8 +# Run with '-v'. use strict; use File::Basename; @@ -37,7 +38,7 @@ my $key = undef; my %vals; my %pts; -my @pwrites; +my %writes; while (<>) { @@ -58,11 +59,15 @@ my ($grid, $indices, $val) = ($1, $2, $3); if (defined $key) { $indices =~ s/\b\d\b/0$&/g; + + # track last value. $vals{$key}{$grid}{$indices} = $val; + + # track all pts written. $pts{$grid}{$indices} = 1; - push @pwrites, [ $grid, $indices ] - if $key eq 'perf'; + # track writes in order. + push @{$writes{$key}}, [ $grid, $indices ]; } } @@ -103,7 +108,7 @@ ($$) "(Will not show missing writes.)\n"; print "Values are from perf, then validation trial\n"; my %nwrites; -for my $pw (@pwrites) { +for my $pw (@{$writes{perf}}) { my ($grid, $indices) = ($pw->[0], $pw->[1]); comp($grid, $indices); my $nw = ++$nwrites{$grid}{$indices}; @@ -121,7 +126,11 @@ ($$) } } -print "\n$0: $nissues issue(s) flagged.\n"; -print "(Not all issues may be problematic if using temporal tiling and MPI.)\n" +print "\n$0:\n"; +for my $key (sort keys %writes) { + print " ".(scalar @{$writes{$key}})." $key write(s) checked.\n"; +} +print " $nissues issue(s) flagged.\n"; +print " (Not all issues may be problematic if using temporal tiling and MPI.)\n" if $nissues; exit $nissues; From 07cb19405b2b44439022d428224c2286a694ed28 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Fri, 7 Sep 2018 21:18:13 -0700 Subject: [PATCH 13/19] Add step-condition feature. Ver 2.14.00. --- include/yc_node_api.hpp | 40 ++++++++- src/common/common_utils.cpp | 2 +- src/compiler/lib/Eqs.cpp | 47 +++++++--- src/compiler/lib/Eqs.hpp | 31 ++++++- src/compiler/lib/Expr.cpp | 44 ++++++++- src/compiler/lib/Expr.hpp | 46 +++++++++- src/compiler/lib/YaskKernel.cpp | 18 +++- src/compiler/swig/yask_compiler_api.i | 2 + src/kernel/Makefile | 1 + src/kernel/lib/auto_tuner.cpp | 5 +- src/kernel/lib/auto_tuner.hpp | 5 +- src/kernel/lib/context.cpp | 124 +++++++++++++++++++------- src/kernel/lib/context.hpp | 18 ++-- src/kernel/lib/stencil_calc.cpp | 22 +++++ src/kernel/lib/stencil_calc.hpp | 34 ++++++- src/stencils/SimpleTestStencils.cpp | 42 +++++++++ 16 files changed, 409 insertions(+), 72 deletions(-) diff --git a/include/yc_node_api.hpp b/include/yc_node_api.hpp index 4164c7b4..bf6bd7ad 100644 --- a/include/yc_node_api.hpp +++ b/include/yc_node_api.hpp @@ -81,6 +81,10 @@ namespace yask { /// Shared pointer to \ref yc_divide_node typedef std::shared_ptr yc_divide_node_ptr; + class yc_mod_node; + /// Shared pointer to \ref yc_mod_node + typedef std::shared_ptr yc_mod_node_ptr; + class yc_not_node; /// Shared pointer to \ref yc_not_node typedef std::shared_ptr yc_not_node_ptr; @@ -173,7 +177,7 @@ namespace yask { the yc_solution that contains the grid that is on the LHS. - An optional condition may be provided to define the sub-domain + An optional domain condition may be provided to define the sub-domain to which this equation applies. See new_first_domain_index() for more information and an example. Conditions are always evaluated with respect to the overall @@ -181,9 +185,14 @@ namespace yask { MPI domain decomposition that might occur at run-time. If a condition is not provided, the equation applies to the entire problem domain. - A condition can be added to an equation after its creation + A domain condition can be added to an equation after its creation via yc_equation_node.set_cond(). + A step-index condition is similar to a domain condition, but + applies to the current step (usually time). + A step-index condition can be added to an equation after its creation + via yc_equation_node.set_step_cond(). + @returns Pointer to new \ref yc_equation_node object. */ virtual yc_equation_node_ptr @@ -265,6 +274,17 @@ namespace yask { new_divide_node(yc_number_node_ptr lhs /**< [in] Expression before `/` sign. */, yc_number_node_ptr rhs /**< [in] Expression after `/` sign. */ ); + /// Create a modulo node. + /** + New modulo nodes can also be created via the overloaded `%` operator. + The modulo operator converts both operands to integers before performing + the operation. + @returns Pointer to new \ref yc_mod_node object. + */ + virtual yc_number_node_ptr + new_mod_node(yc_number_node_ptr lhs /**< [in] Expression before `%` sign. */, + yc_number_node_ptr rhs /**< [in] Expression after `%` sign. */ ); + /// Create a symbol for the first index value in a given dimension. /** Create an expression that indicates the first value in the overall problem @@ -452,6 +472,11 @@ namespace yask { /**< [in] Boolean expression describing the sub-domain or `nullptr` to remove the condition. */ ) =0; + /// Set the condition describing the valid step indices. + virtual void set_step_cond(yc_bool_node_ptr step_cond + /**< [in] Boolean expression describing a valid step + or `nullptr` to remove the condition. */ ) =0; + /// Create a deep copy of AST starting with this node. virtual yc_equation_node_ptr clone_ast() const =0; }; @@ -594,6 +619,10 @@ namespace yask { /** Created via yc_node_factory::new_divide_node(). */ class yc_divide_node : public virtual yc_binary_number_node { }; + /// A modulo node. + /** Created via yc_node_factory::new_mod_node(). */ + class yc_mod_node : public virtual yc_binary_number_node { }; + /// A boolean inversion operator. /** Example: used to implement `!(a || b)`. Created via yc_node_factory::new_not_node(). @@ -709,6 +738,13 @@ namespace yask { yc_number_node_ptr operator/(yc_number_node_ptr lhs, double rhs); //@} + //@{ + /// Operator version of yc_node_factory::new_mod_node(). + yc_number_node_ptr operator%(yc_number_node_ptr lhs, yc_number_node_ptr rhs); + yc_number_node_ptr operator%(double lhs, yc_number_node_ptr rhs); + yc_number_node_ptr operator%(yc_number_node_ptr lhs, double rhs); + //@} + //@{ /// Operator version of yc_node_factory::new_multiplication_node(). yc_number_node_ptr operator*(yc_number_node_ptr lhs, yc_number_node_ptr rhs); diff --git a/src/common/common_utils.cpp b/src/common/common_utils.cpp index f44faad1..72a75410 100644 --- a/src/common/common_utils.cpp +++ b/src/common/common_utils.cpp @@ -41,7 +41,7 @@ namespace yask { // for numbers above 9 (at least up to 99). // Format: "major.minor.patch". - const string version = "2.13.00"; + const string version = "2.14.00"; string yask_get_version_string() { return version; diff --git a/src/compiler/lib/Eqs.cpp b/src/compiler/lib/Eqs.cpp index 6da72c55..1ec308ce 100644 --- a/src/compiler/lib/Eqs.cpp +++ b/src/compiler/lib/Eqs.cpp @@ -166,6 +166,7 @@ namespace yask { //auto& ig1 = inGrids.at(eq1p); auto& ip1 = inPts.at(eq1p); auto cond1 = eq1p->getCond(); + auto stcond1 = eq1p->getStepCond(); NumExprPtr step_expr1 = op1->getArg(stepDim); // may be null. #ifdef DEBUG_DEP @@ -176,7 +177,10 @@ namespace yask { // Scratch grid must not have a condition. if (cond1 && og1->isScratch()) THROW_YASK_EXCEPTION("Error: scratch-grid equation '" + eq1->makeQuotedStr() + - "' cannot have a condition"); + "' cannot have a domain condition"); + if (stcond1 && og1->isScratch()) + THROW_YASK_EXCEPTION("Error: scratch-grid equation '" + eq1->makeQuotedStr() + + "' cannot have a step condition"); // Check LHS grid dimensions and associated args. for (int di = 0; di < og1->get_num_dims(); di++) { @@ -280,7 +284,8 @@ namespace yask { // TODO: check that domain indices are simple offsets and // misc indices are consts on RHS. - // TODO: check to make sure cond1 depends only on indices. + // TODO: check to make sure cond1 depends only on domain indices. + // TODO: check to make sure stcond1 depends only on step index. } // for all eqs. // 2. Check each pair of eqs. @@ -295,6 +300,7 @@ namespace yask { //auto& ig1 = inGrids.at(eq1p); //auto& ip1 = inPts.at(eq1p); auto cond1 = eq1p->getCond(); + auto stcond1 = eq1p->getStepCond(); NumExprPtr step_expr1 = op1->getArg(stepDim); // Check each 'eq2' to see if it depends on 'eq1'. @@ -306,6 +312,7 @@ namespace yask { auto& ig2 = inGrids.at(eq2p); auto& ip2 = inPts.at(eq2p); auto cond2 = eq2p->getCond(); + auto stcond2 = eq2p->getStepCond(); #ifdef DEBUG_DEP cout << " Checking eq " << @@ -315,16 +322,20 @@ namespace yask { bool same_eq = eq1 == eq2; bool same_cond = areExprsSame(cond1, cond2); + bool same_stcond = areExprsSame(stcond1, stcond2); // A separate grid is defined by its name and any const indices. bool same_og = op1->isSameLogicalGrid(*op2); - // If two different eqs have the same condition, they + // If two different eqs have the same conditions, they // cannot update the same grid. - if (!same_eq && same_cond && same_og) { - string cdesc = cond1 ? "with condition " + cond1->makeQuotedStr() : - "without conditions"; + if (!same_eq && same_cond && same_stcond && same_og) { + string cdesc = cond1 ? "with domain condition " + cond1->makeQuotedStr() : + "without domain conditions"; + string stcdesc = stcond1 ? "with step condition " + stcond1->makeQuotedStr() : + "without step conditions"; THROW_YASK_EXCEPTION("Error: two equations " + cdesc + + " and " + stcdesc + " have the same LHS grid '" + op1->makeLogicalGridStr() + "': " + eq1->makeQuotedStr() + " and " + @@ -342,7 +353,7 @@ namespace yask { // Example: // eq1: a(t+1, x, ...) EQUALS ... // eq2: b(t+1, x, ...) EQUALS a(t+1, x, ...) ... - if (same_cond && ip2.count(op1)) { + if (same_cond && same_stcond && ip2.count(op1)) { // Eq depends on itself? if (same_eq) { @@ -731,9 +742,13 @@ namespace yask { des += "equation-bundle " + quote + getName() + quote; if (!isScratch() && show_cond) { if (cond.get()) - des += " w/condition " + cond->makeQuotedStr(quote); + des += " w/domain condition " + cond->makeQuotedStr(quote); + else + des += " w/o domain condition"; + if (step_cond.get()) + des += " w/step condition " + step_cond->makeQuotedStr(quote); else - des += " w/o condition"; + des += " w/o step condition"; } return des; } @@ -855,8 +870,9 @@ namespace yask { if (_eqs_in_bundles.count(eq)) return false; - // Get condition, if any. + // Get conditions, if any. auto cond = eq->getCond(); + auto stcond = eq->getStepCond(); // Get step expr, if any. auto step_expr = eq->getLhs()->getArg(stepDim); @@ -881,6 +897,8 @@ namespace yask { // Conditions must match (both may be null). if (!areExprsSame(eg->cond, cond)) continue; + if (!areExprsSame(eg->step_cond, stcond)) + continue; // LHS step exprs must match (both may be null). if (!areExprsSame(eg->step_expr, step_expr)) @@ -935,6 +953,7 @@ namespace yask { target->baseName = baseName; target->index = _indices[baseName]++; target->cond = cond; + target->step_cond = stcond; target->step_expr = step_expr; newBundle = true; @@ -1350,6 +1369,9 @@ namespace yask { if (_bundles_in_packs.count(bp)) return false; + // Get condition, if any. + auto stcond = bp->step_cond; + // Get deps between bundles. auto& deps = allBundles.getDeps(); @@ -1362,6 +1384,10 @@ namespace yask { if (ep->isScratch() != bp->isScratch()) continue; + // Step conditions must match (both may be null). + if (!areExprsSame(ep->step_cond, stcond)) + continue; + // Look for any dependencies that would prevent adding // 'bp' to 'ep'. bool is_ok = true; @@ -1389,6 +1415,7 @@ namespace yask { target = np.get(); target->baseName = _baseName; target->index = _idx++; + target->step_cond = stcond; newPack = true; } diff --git a/src/compiler/lib/Eqs.hpp b/src/compiler/lib/Eqs.hpp index 1365cc29..4a8e059c 100644 --- a/src/compiler/lib/Eqs.hpp +++ b/src/compiler/lib/Eqs.hpp @@ -439,7 +439,7 @@ namespace yask { }; // A named equation bundle, which contains one or more grid-update - // equations. All equations in a bundle must have the same condition. + // equations. All equations in a bundle must have the same conditions. // Equations in a bundle must not have inter-dependencies because they // will be combined into a single expression. class EqBundle : public EqLot { @@ -450,8 +450,9 @@ namespace yask { // TODO: move these into protected section and make accessors. - // Common condition. + // Common conditions. BoolExprPtr cond; + BoolExprPtr step_cond; // Common step expr. NumExprPtr step_expr; @@ -498,6 +499,16 @@ namespace yask { return false; } + // Visit the step condition. + // Return true if there was one to visit. + virtual bool visitStepCond(ExprVisitor* ev) { + if (step_cond.get()) { + step_cond->accept(ev); + return true; + } + return false; + } + // Replicate each equation at the non-zero offsets for // each vector in a cluster. virtual void replicateEqsInCluster(Dimensions& dims); @@ -590,7 +601,8 @@ namespace yask { typedef vector_set EqBundleList; // A named equation bundle pack, which contains one or more equation - // bundles. All equations in a pack do not need to have the same condition. + // bundles. All equations in a pack do not need to have the same + // domain condition, but they must have the same step condition. // Equations in a pack must not have inter-dependencies because they // may be run in parallel or in any order on any sub-domain. class EqBundlePack : public EqLot { @@ -599,6 +611,9 @@ namespace yask { public: + // Common condition. + BoolExprPtr step_cond; + // Ctor. EqBundlePack(bool is_scratch) : EqLot(is_scratch) { } @@ -633,6 +648,16 @@ namespace yask { return _bundles; } + // Visit the step condition. + // Return true if there was one to visit. + virtual bool visitStepCond(ExprVisitor* ev) { + if (step_cond.get()) { + step_cond->accept(ev); + return true; + } + return false; + } + }; // Container for multiple equation bundle packs. diff --git a/src/compiler/lib/Expr.cpp b/src/compiler/lib/Expr.cpp index 7bc70117..dd52b897 100644 --- a/src/compiler/lib/Expr.cpp +++ b/src/compiler/lib/Expr.cpp @@ -116,6 +116,15 @@ namespace yask { assert(rp); return make_shared(lp, rp); } + yc_number_node_ptr + yc_node_factory::new_mod_node(yc_number_node_ptr lhs, + yc_number_node_ptr rhs) { + auto lp = dynamic_pointer_cast(lhs); + assert(lp); + auto rp = dynamic_pointer_cast(rhs); + assert(rp); + return make_shared(lp, rp); + } yc_bool_node_ptr yc_node_factory::new_not_node(yc_bool_node_ptr rhs) { auto p = dynamic_pointer_cast(rhs); @@ -239,6 +248,19 @@ namespace yask { yc_number_node_ptr operator/(yc_number_node_ptr lhs, double rhs) { return operator/(lhs, constNum(rhs)); } + yc_number_node_ptr operator%(yc_number_node_ptr lhs, yc_number_node_ptr rhs) { + auto lp = dynamic_pointer_cast(lhs); + assert(lp); + auto rp = dynamic_pointer_cast(rhs); + assert(rp); + return make_shared(lp, rp); + } + yc_number_node_ptr operator%(double lhs, yc_number_node_ptr rhs) { + return operator%(constNum(lhs), rhs); + } + yc_number_node_ptr operator%(yc_number_node_ptr lhs, double rhs) { + return operator%(lhs, constNum(rhs)); + } yc_number_node_ptr operator*(yc_number_node_ptr lhs, yc_number_node_ptr rhs) { auto lp = dynamic_pointer_cast(lhs); assert(lp); @@ -421,7 +443,6 @@ namespace yask { lhs = lhs - rhs; } - // TODO: truncate (or round?) division results for indices. NumExprPtr operator/(const NumExprPtr lhs, const NumExprPtr rhs) { return make_shared(lhs, rhs); } @@ -441,13 +462,31 @@ namespace yask { lhs = lhs / rhs; } + NumExprPtr operator%(const NumExprPtr lhs, const NumExprPtr rhs) { + return make_shared(lhs, rhs); + } + NumExprPtr operator%(double lhs, const NumExprPtr rhs) { + NumExprPtr p = make_shared(lhs); + return p % rhs; + } + NumExprPtr operator%(const NumExprPtr lhs, double rhs) { + NumExprPtr p = make_shared(rhs); + return lhs % p; + } + // Define a conditional. EqualsExprPtr operator IF_OPER(EqualsExprPtr expr, const BoolExprPtr cond) { // Add cond to expr. assert(expr); expr->setCond(cond); + return expr; + } + EqualsExprPtr operator IF_STEP_OPER(EqualsExprPtr expr, const BoolExprPtr step_cond) { + // Add cond to expr. + assert(expr); + expr->setStepCond(step_cond); return expr; } @@ -839,6 +878,9 @@ namespace yask { // Could allow 'dim / 1', but seems silly. return false; } + bool ModExpr::isOffsetFrom(string dim, int& offset) { + return false; + } bool MultExpr::isOffsetFrom(string dim, int& offset) { // Could allow 'dim * 1', but seems silly. diff --git a/src/compiler/lib/Expr.hpp b/src/compiler/lib/Expr.hpp index 1cfae6ec..e18a8477 100644 --- a/src/compiler/lib/Expr.hpp +++ b/src/compiler/lib/Expr.hpp @@ -39,6 +39,7 @@ IN THE SOFTWARE. #include #include #include +#include "idiv.hpp" // Need g++ >= 4.9 for regex. #define GCC_VERSION (__GNUC__ * 10000 \ @@ -542,7 +543,13 @@ namespace yask { } \ } BIN_NUM_EXPR(SubExpr, yc_subtract_node, "-", lhs - rhs); - BIN_NUM_EXPR(DivExpr, yc_divide_node, "/", lhs / rhs); // TODO: add check for div-by-0. + + // TODO: add check for div-by-0. + // TODO: handle division properly for integer indices. + BIN_NUM_EXPR(DivExpr, yc_divide_node, "/", lhs / rhs); + + // TODO: add check for mod-by-0. + BIN_NUM_EXPR(ModExpr, yc_mod_node, "%", imod_flr(idx_t(lhs), idx_t(rhs))); #undef BIN_NUM_EXPR // Boolean binary operators with numerical inputs. @@ -897,10 +904,13 @@ namespace yask { GridPointPtr _lhs; NumExprPtr _rhs; BoolExprPtr _cond; + BoolExprPtr _step_cond; public: - EqualsExpr(GridPointPtr lhs, NumExprPtr rhs, BoolExprPtr cond = nullptr) : - _lhs(lhs), _rhs(rhs), _cond(cond) { } + EqualsExpr(GridPointPtr lhs, NumExprPtr rhs, + BoolExprPtr cond = nullptr, + BoolExprPtr step_cond = nullptr) : + _lhs(lhs), _rhs(rhs), _cond(cond), _step_cond(step_cond) { } EqualsExpr(const EqualsExpr& src) : _lhs(src._lhs->cloneGridPoint()), _rhs(src._rhs->clone()) { @@ -908,6 +918,10 @@ namespace yask { _cond = src._cond->clone(); else _cond = nullptr; + if (src._step_cond) + _step_cond = src._step_cond->clone(); + else + _step_cond = nullptr; } GridPointPtr& getLhs() { return _lhs; } @@ -917,9 +931,13 @@ namespace yask { BoolExprPtr& getCond() { return _cond; } const BoolExprPtr& getCond() const { return _cond; } void setCond(BoolExprPtr cond) { _cond = cond; } + BoolExprPtr& getStepCond() { return _step_cond; } + const BoolExprPtr& getStepCond() const { return _step_cond; } + void setStepCond(BoolExprPtr step_cond) { _step_cond = step_cond; } virtual void accept(ExprVisitor* ev); static string exprOpStr() { return "EQUALS"; } static string condOpStr() { return "IF"; } + static string stepCondOpStr() { return "IF_STEP"; } // Get pointer to grid on LHS or NULL if not set. virtual Grid* getGrid() { @@ -944,6 +962,7 @@ namespace yask { virtual yc_grid_point_node_ptr get_lhs() { return _lhs; } virtual yc_number_node_ptr get_rhs() { return _rhs; } virtual yc_bool_node_ptr get_cond() { return _cond; } + virtual yc_bool_node_ptr get_step_cond() { return _step_cond; } virtual void set_cond(yc_bool_node_ptr cond) { if (cond) { auto p = dynamic_pointer_cast(cond); @@ -952,6 +971,14 @@ namespace yask { } else _cond = nullptr; } + virtual void set_step_cond(yc_bool_node_ptr step_cond) { + if (step_cond) { + auto p = dynamic_pointer_cast(step_cond); + assert(p); + _step_cond = p; + } else + _step_cond = nullptr; + } }; ///// The following are operators and functions used in stencil expressions. @@ -984,12 +1011,19 @@ namespace yask { void operator/=(NumExprPtr& lhs, const NumExprPtr rhs); void operator/=(NumExprPtr& lhs, double rhs); + NumExprPtr operator%(const NumExprPtr lhs, const NumExprPtr rhs); + NumExprPtr operator%(double lhs, const NumExprPtr rhs); + NumExprPtr operator%(const NumExprPtr lhs, double rhs); + // A conditional evaluation. // We use an otherwise unneeded binary operator that has a low priority. // See http://en.cppreference.com/w/cpp/language/operator_precedence. #define IF_OPER ^= EqualsExprPtr operator IF_OPER(EqualsExprPtr expr, const BoolExprPtr cond); #define IF IF_OPER +#define IF_STEP_OPER |= + EqualsExprPtr operator IF_STEP_OPER(EqualsExprPtr expr, const BoolExprPtr step_cond); +#define IF_STEP IF_STEP_OPER // The operator used for defining a grid value. // We use an otherwise unneeded binary operator that has a lower priority @@ -1021,7 +1055,11 @@ namespace yask { inline BoolExprPtr operator oper(const NumExprPtr lhs, const IndexExprPtr rhs) { \ return make_shared(lhs, rhs); } \ inline BoolExprPtr operator oper(const IndexExprPtr lhs, const IndexExprPtr rhs) { \ - return make_shared(lhs, rhs); } + return make_shared(lhs, rhs); } \ + inline BoolExprPtr operator oper(const NumExprPtr lhs, double rhs) { \ + return make_shared(lhs, constNum(rhs)); } \ + inline BoolExprPtr operator oper(const IndexExprPtr lhs, double rhs) { \ + return make_shared(lhs, constNum(rhs)); } BOOL_OPER(==, IsEqualExpr, yc_equals_node) BOOL_OPER(!=, NotEqualExpr, yc_not_equals_node) diff --git a/src/compiler/lib/YaskKernel.cpp b/src/compiler/lib/YaskKernel.cpp index c59c75f2..8538d31a 100644 --- a/src/compiler/lib/YaskKernel.cpp +++ b/src/compiler/lib/YaskKernel.cpp @@ -517,9 +517,9 @@ namespace yask { os << " } // Ctor." << endl; } - // Condition. + // Domain condition. { - os << endl << " // Determine whether " << egsName << " is valid at the indices " << + os << endl << " // Determine whether " << egsName << " is valid at the domain indices " << _dims->_stencilDims.makeDimStr() << ".\n" " // Return true if indices are within the valid sub-domain or false otherwise.\n" " virtual bool is_in_valid_domain(const Indices& idxs) const final {\n"; @@ -531,6 +531,20 @@ namespace yask { os << " }\n"; } + // Step condition. + { + os << endl << " // Determine whether " << egsName << " is valid at the step " << + _dims->_stencilDims.makeDimStr() << ".\n" + " // Return true if indices are within the valid sub-domain or false otherwise.\n" + " virtual bool is_in_valid_step(idx_t input_step_index) const final {\n"; + if (eq->step_cond) + os << " idx_t " << _dims->_stepDim << " = input_step_index;\n" + " return " << eq->step_cond->makeStr() << ";\n"; + else + os << " return true; // any step.\n"; + os << " }\n"; + } + // LHS step index. { os << endl; diff --git a/src/compiler/swig/yask_compiler_api.i b/src/compiler/swig/yask_compiler_api.i index de448f37..4ca24999 100644 --- a/src/compiler/swig/yask_compiler_api.i +++ b/src/compiler/swig/yask_compiler_api.i @@ -55,6 +55,7 @@ IN THE SOFTWARE. %shared_ptr(yask::yc_multiply_node) %shared_ptr(yask::yc_subtract_node) %shared_ptr(yask::yc_divide_node) +%shared_ptr(yask::yc_mod_node) %shared_ptr(yask::yc_bool_node) %shared_ptr(yask::yc_not_node) %shared_ptr(yask::yc_equals_node) @@ -131,6 +132,7 @@ BIN_OP(__add__, +); BIN_OP(__sub__, -); BIN_OP(__mul__, *); BIN_OP(__truediv__, /); +BIN_OP(__mod__, %); // For boolean ops. diff --git a/src/kernel/Makefile b/src/kernel/Makefile index 7f897df5..9af4a3c4 100644 --- a/src/kernel/Makefile +++ b/src/kernel/Makefile @@ -807,6 +807,7 @@ stencil-tests: $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=test_2d fold=x=2,y=2 $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=test_3d fold=x=2,z=2 $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=test_4d fold=w=2,x=2 + $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=test_step_cond_1d fold=x=4 $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=test_subdomain_1d fold=x=4 $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=test_subdomain_3d fold=x=2,y=2 $(MAKE) clean; $(MAKE) yc-and-yk-test real_bytes=8 stencil=test_scratch1 fold=x=4 diff --git a/src/kernel/lib/auto_tuner.cpp b/src/kernel/lib/auto_tuner.cpp index 9c41a05b..e41a435f 100644 --- a/src/kernel/lib/auto_tuner.cpp +++ b/src/kernel/lib/auto_tuner.cpp @@ -71,6 +71,7 @@ namespace yask { csteps = 0; in_warmup = true; timer.clear(); + steps_done = 0; // Set min blocks to number of region threads. min_blks = _context->set_region_threads(); @@ -93,7 +94,7 @@ namespace yask { } // clear. // Evaluate the previous run and take next auto-tuner step. - void AutoTuner::eval(idx_t steps) { + void AutoTuner::eval() { ostream& os = _context->get_ostr(); auto& mpiInfo = _context->get_mpi_info(); auto& dims = _context->get_dims(); @@ -102,6 +103,8 @@ namespace yask { // Get elapsed time and reset. double etime = timer.get_elapsed_secs(); timer.clear(); + idx_t steps = steps_done; + steps_done = 0; // Leave if done. if (done) diff --git a/src/kernel/lib/auto_tuner.hpp b/src/kernel/lib/auto_tuner.hpp index be22676c..63572d2a 100644 --- a/src/kernel/lib/auto_tuner.hpp +++ b/src/kernel/lib/auto_tuner.hpp @@ -87,6 +87,9 @@ namespace yask { // Start & stop this timer to track elapsed time. YaskTimer timer; + // Increment this to track steps. + idx_t steps_done = 0; + // Change settings pointer. void set_settings(KernelSettings* p) { _settings = p; @@ -96,7 +99,7 @@ namespace yask { void clear(bool mark_done, bool verbose = false); // Evaluate the previous run and take next auto-tuner step. - void eval(idx_t steps); + void eval(); // Print the best settings. void print_settings(std::ostream& os) const; diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index 2348a808..6b9ca3bc 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -213,8 +213,14 @@ namespace yask { // Scan through n-D space. TRACE_MSG("calc_rank_ref: step " << start_t << - " in non-scratch group '" << asg->get_name()); + " in non-scratch bundle '" << asg->get_name()); + // Check step. + if (check_step_conds && !asg->is_in_valid_step(start_t)) { + TRACE_MSG("calc_rank_ref: not valid for step " << start_t); + continue; + } + // Exchange all dirty halos. exchange_halos(); @@ -295,7 +301,7 @@ namespace yask { int ndims = _dims->_stencil_dims.size(); // Determine step dir from order of first/last. - idx_t step_dir = (first_step_index > last_step_index) ? -1 : 1; + idx_t step_dir = (last_step_index > first_step_index) ? 1 : -1; // Find begin, step and end in step-dim. idx_t begin_t = first_step_index; @@ -414,13 +420,11 @@ namespace yask { min(start_t + step_t, end_t) : max(start_t + step_t, end_t); idx_t this_num_t = abs(stop_t - start_t); - // Set indices that will pass through generated code. rank_idxs.index[step_posn] = index_t; rank_idxs.start[step_posn] = start_t; rank_idxs.stop[step_posn] = stop_t; rank_idxs.step[step_posn] = step_t; - // If no wave-fronts (default), loop through packs here, and do // only one pack at a time in calc_region(). This is similar to // loop in calc_rank_ref(), but with packs instead of bundles. @@ -429,6 +433,14 @@ namespace yask { // Loop thru packs. for (auto& bp : stPacks) { + // Check step. + if (check_step_conds && !bp->is_in_valid_step(start_t)) { + TRACE_MSG("run_solution: step " << start_t << + " not valid for pack '" << + bp->get_name() << "'"); + continue; + } + // Make 2 passes. 1: compute data needed for MPI // send and send that data. 2: compute remaining // data and unpack received MPI data. @@ -457,7 +469,7 @@ namespace yask { // Include automatically-generated loop code that calls // calc_region(bp) for each region. TRACE_MSG("run_solution: step " << start_t << - " for bundle-pack '" << bp->get_name() << "'"); + " for pack '" << bp->get_name() << "'"); if (do_mpi_exterior) TRACE_MSG(" within MPI exterior"); if (do_mpi_interior) @@ -477,7 +489,7 @@ namespace yask { // If doing wave-fronts, must loop through all packs in // calc_region(). TODO: optionally enable this when there are - // multiple packs but step_t == 1. + // multiple packs but wf_steps == 1. // TODO: allow overlapped comms when the region covers the // whole rank domain, regardless of how many steps it covers. else { @@ -496,8 +508,32 @@ namespace yask { exchange_halos(); } + // Overall steps. steps_done += this_num_t; + // Count steps for each pack to properly account for + // step conditions. + for (auto& bp : stPacks) { + idx_t num_pack_steps = 0; + + if (!check_step_conds) + num_pack_steps = this_num_t; + else { + + // Loop through each step. + assert(abs(step_dir) == 1); + for (idx_t t = start_t; t != stop_t; t += step_dir) { + + // Check step cond for this t. + if (bp->is_in_valid_step(t)) + num_pack_steps++; + } + } + + // Count steps for this pack. + bp->add_steps(num_pack_steps); + } + // Call the auto-tuner to evaluate these steps. eval_auto_tuner(this_num_t); @@ -629,7 +665,10 @@ namespace yask { // When doing TB, it will step by the block steps. idx_t begin_t = region_idxs.begin[step_posn]; idx_t end_t = region_idxs.end[step_posn]; + idx_t step_dir = (end_t > begin_t) ? 1 : -1; idx_t step_t = tb_steps; + step_t *= step_dir; + assert(step_t); const idx_t num_t = CEIL_DIV(abs(end_t - begin_t), abs(step_t)); idx_t shift_num = 0; for (idx_t index_t = 0; index_t < num_t; index_t++) { @@ -657,12 +696,16 @@ namespace yask { if (sel_bp && sel_bp != bp) continue; - TRACE_MSG("calc_region: no TB; bundle-pack '" << + TRACE_MSG("calc_region: no TB; pack '" << bp->get_name() << "' in step(s) [" << start_t << " ... " << stop_t << ")"); - // Start timers for this pack. - start_timers(bp); + // Check step. + if (check_step_conds && !bp->is_in_valid_step(start_t)) { + TRACE_MSG("calc_region: step " << start_t << + " not valid for pack '" << bp->get_name() << "'"); + continue; + } // Steps within a region are based on pack block sizes. auto& settings = bp->getSettings(); @@ -711,9 +754,6 @@ namespace yask { // One shift for each pack. shift_num++; - // Stop timers for this pack. - stop_timers(bp); - } // stencil bundle packs. } // no temporal blocking. @@ -854,7 +894,8 @@ namespace yask { // Time range. idx_t begin_t = block_idxs.begin[step_posn]; idx_t end_t = block_idxs.end[step_posn]; - idx_t step_t = 1; // Always 1 for blocks. + idx_t step_dir = (end_t > begin_t) ? 1 : -1; + idx_t step_t = step_dir; // Always 1 step for blocks. const idx_t num_t = abs(end_t - begin_t); // If TB is not being used, just process the given pack. @@ -864,6 +905,9 @@ namespace yask { // No TB allowed here. assert(num_t == 1); + // Start timers for this pack. + bp->start_timers(); + // Steps within a block are based on pack sub-block sizes. auto& settings = bp->getSettings(); block_idxs.step = settings._sub_block_sizes; @@ -877,6 +921,9 @@ namespace yask { for (auto* sb : *bp) if (sb->getBB().bb_num_points) sb->calc_block(block_idxs); + + // Start timers for this pack. + bp->stop_timers(); } // If TB is active, do all packs across time steps for each required shape. @@ -931,6 +978,9 @@ namespace yask { min(start_t + step_t, end_t) : max(start_t + step_t, end_t); + // For blocks, start and stop should be one diff. + assert(abs(stop_t - start_t) == 1); + // Set temporal indices. block_idxs.index[step_posn] = index_t; block_idxs.begin[step_posn] = start_t; @@ -957,8 +1007,16 @@ namespace yask { if (sel_bp && sel_bp != bp) continue; + // Check step. + if (check_step_conds && !bp->is_in_valid_step(start_t)) { + TRACE_MSG("calc_block: step " << start_t << + " not valid for pack '" << + bp->get_name() << "'"); + continue; + } + // Start timers for this pack. - start_timers(bp); + bp->start_timers(); // Adjust start/stop to proper shape. Indices shape_start(start); @@ -991,7 +1049,7 @@ namespace yask { TRACE_MSG("calc_block: phase " << phase << ", w/TB, shape " << shape << - ", bundle-pack '" << bp->get_name() << + ", pack '" << bp->get_name() << ", start= " << start.makeValStr(nsdims) << ", stop= " << stop.makeValStr(nsdims) << ", next-start= " << next_start.makeValStr(nsdims) << @@ -1047,37 +1105,26 @@ namespace yask { cur_shift_num++; // Increment for each pack and time-step. // Stop timers for this pack. - stop_timers(bp); + bp->stop_timers(); } // packs. } // time steps. } // shapes. } // TB. } // calc_block(). - - // Timer methods. - // Start and stop timers for final stats and auto-tuners. - void StencilContext::start_timers(BundlePackPtr& bp) { - auto ts = YaskTimer::get_timespec(); - bp->timer.start(&ts); - bp->getAT().timer.start(&ts); - _at.timer.start(&ts); - } - void StencilContext::stop_timers(BundlePackPtr& bp) { - auto ts = YaskTimer::get_timespec(); - bp->timer.stop(&ts); - bp->getAT().timer.stop(&ts); - _at.timer.stop(&ts); - } // Eval auto-tuner for given number of steps. void StencilContext::eval_auto_tuner(idx_t num_steps) { + _at.steps_done += num_steps; + + // Steps for pack tuners must be incremented + // separately for accurate counting. if (_use_pack_tuners) { for (auto& sp : stPacks) - sp->getAT().eval(num_steps); + sp->getAT().eval(); } else - _at.eval(num_steps); + _at.eval(); } // Reset auto-tuners. @@ -1113,6 +1160,10 @@ namespace yask { // Temporarily disable halo exchange to tune intra-rank. enable_halo_exchange = false; + // Temporarily ignore step conditions to force eval + // of conditional bundles. + check_step_conds = false; + // Init tuners. reset_auto_tuner(true, verbose); @@ -1140,8 +1191,11 @@ namespace yask { os << "Waiting for auto-tuner to converge on all ranks...\n"; _env->global_barrier(); - // reenable halo exchange. + // reenable normal operation. +#ifndef NO_HALO_EXCHANGE enable_halo_exchange = true; +#endif + check_step_conds = true; // Report results. at_timer.stop(); @@ -1263,6 +1317,8 @@ namespace yask { double otime = max(rtime - ctime - htime, 0.); if (rtime > 0.) { domain_pts_ps = double(tot_domain_1t * steps_done) / rtime; + + // FIXME: these are not correct if there are step conditions. writes_ps= double(tot_numWrites_1t * steps_done) / rtime; flops = double(tot_numFpOps_1t * steps_done) / rtime; } diff --git a/src/kernel/lib/context.hpp b/src/kernel/lib/context.hpp index 12ff910f..6c700638 100644 --- a/src/kernel/lib/context.hpp +++ b/src/kernel/lib/context.hpp @@ -278,6 +278,9 @@ namespace yask { bool enable_halo_exchange = true; #endif + // Clear this to ignore step conditions. + bool check_step_conds = true; + // MPI data for each grid. // Map key: grid name. std::map mpiData; @@ -305,7 +308,7 @@ namespace yask { } // Reset elapsed times to zero. - virtual void clear_timers(); + void clear_timers(); // Access to settings. virtual KernelSettingsPtr& get_settings() { @@ -317,10 +320,11 @@ namespace yask { _at.set_settings(_opts.get()); } - // Access to env, dims and MPI info. - virtual KernelEnvPtr& get_env() { return _env; } - virtual DimsPtr& get_dims() { return _dims; } - virtual MPIInfoPtr& get_mpi_info() { return _mpiInfo; } + // Misc accessors. + KernelEnvPtr& get_env() { return _env; } + DimsPtr& get_dims() { return _dims; } + MPIInfoPtr& get_mpi_info() { return _mpiInfo; } + AutoTuner& getAT() { return _at; } // Add a new grid to the containers. virtual void addGrid(YkGridPtr gp, bool is_output); @@ -663,10 +667,6 @@ namespace yask { return _opts->_numa_pref; } - // Timer methods. - virtual void start_timers(BundlePackPtr& bp); - virtual void stop_timers(BundlePackPtr& bp); - // Auto-tuner methods. virtual void eval_auto_tuner(idx_t num_steps); diff --git a/src/kernel/lib/stencil_calc.cpp b/src/kernel/lib/stencil_calc.cpp index 5b2094dc..5662c589 100644 --- a/src/kernel/lib/stencil_calc.cpp +++ b/src/kernel/lib/stencil_calc.cpp @@ -708,6 +708,28 @@ namespace yask { break; } return adj_idxs; + } // adjust_span(). + + // Timer methods. + // Start and stop timers for final stats and auto-tuners. + void BundlePack::start_timers() { + auto ts = YaskTimer::get_timespec(); + timer.start(&ts); + getAT().timer.start(&ts); + _context->getAT().timer.start(&ts); } + void BundlePack::stop_timers() { + auto ts = YaskTimer::get_timespec(); + timer.stop(&ts); + getAT().timer.stop(&ts); + _context->getAT().timer.stop(&ts); + } + void BundlePack::add_steps(idx_t num_steps) { + steps_done += num_steps; + getAT().steps_done += num_steps; + + // Don't add to context steps to avoid over-counting. + } + } // namespace yask. diff --git a/src/kernel/lib/stencil_calc.hpp b/src/kernel/lib/stencil_calc.hpp index fd472eab..f6105e09 100644 --- a/src/kernel/lib/stencil_calc.hpp +++ b/src/kernel/lib/stencil_calc.hpp @@ -166,6 +166,10 @@ namespace yask { virtual bool is_in_valid_domain(const Indices& idxs) const =0; + // Determine whether step index is enabled. + virtual bool + is_in_valid_step(idx_t input_step_index) const =0; + // If bundle updates grid(s) with the step index, // set 'output_step_index' to the step that an update // occurs when calling one of the calc_*() methods with @@ -238,6 +242,9 @@ namespace yask { protected: std::string _name; + // Parent solution. + StencilContext* _context = 0; + // Union of bounding boxes for all bundles in this pack. BoundingBox _pack_bb; @@ -249,12 +256,15 @@ namespace yask { AutoTuner _at; public: - // Timer for this pack. + + // Perf stats for this pack. YaskTimer timer; + idx_t steps_done; BundlePack(const std::string& name, StencilContext* ctx) : _name(name), + _context(ctx), _opts(*ctx->get_settings()), _at(ctx, &_opts, name) { } virtual ~BundlePack() { } @@ -263,10 +273,26 @@ namespace yask { return _name; } + // Determine whether step index is enabled. + bool + is_in_valid_step(idx_t input_step_index) const { + if (!size()) + return false; + + // All step conditions must be the same, so + // we call first one. + return front()->is_in_valid_step(input_step_index); + } + // Accessors. - virtual BoundingBox& getBB() { return _pack_bb; } - virtual AutoTuner& getAT() { return _at; } - virtual KernelSettings& getSettings() { return _opts; } + BoundingBox& getBB() { return _pack_bb; } + AutoTuner& getAT() { return _at; } + KernelSettings& getSettings() { return _opts; } + + // Perf-tracking methods. + void start_timers(); + void stop_timers(); + void add_steps(idx_t num_steps); }; // BundlePack. diff --git a/src/stencils/SimpleTestStencils.cpp b/src/stencils/SimpleTestStencils.cpp index b0eda471..ffeb2510 100644 --- a/src/stencils/SimpleTestStencils.cpp +++ b/src/stencils/SimpleTestStencils.cpp @@ -416,6 +416,48 @@ class TestSubdomainStencil3 : public StencilRadiusBase { REGISTER_STENCIL(TestSubdomainStencil3); +class TestStepCondStencil1 : public StencilRadiusBase { + +protected: + + // Indices & dimensions. + MAKE_STEP_INDEX(t); // step in time dim. + MAKE_DOMAIN_INDEX(x); // spatial dim. + + // Vars. + MAKE_GRID(data, t, x); // time-varying grid. + +public: + + TestStepCondStencil1(StencilList& stencils, int radius=2) : + StencilRadiusBase("test_step_cond_1d", stencils, radius) { } + + // Define equation to apply to all points in 'data' grid. + virtual void define() { + + // Time condition. + Condition tc0 = (t % 2 == 0); + + // Set data w/different stencils. + + GridValue u = data(t, x); + for (int r = 1; r <= _radius; r++) + u += data(t, x-r); + for (int r = 1; r <= _radius + 1; r++) + u += data(t, x+r); + data(t+1, x) EQUALS u / (_radius * 2 + 2) IF_STEP tc0; + + GridValue v = data(t, x); + for (int r = 1; r <= _radius + 3; r++) + v += data(t, x-r); + for (int r = 1; r <= _radius + 2; r++) + v += data(t, x+r); + data(t+1, x) EQUALS u / (_radius * 2 + 6) IF_STEP !tc0; + } +}; + +REGISTER_STENCIL(TestStepCondStencil1); + // A stencil that has grids, but no stencil equation. class TestEmptyStencil1 : public StencilBase { From 5f855defb4af4e40e3bc2df4882f78b43b457974 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Sat, 8 Sep 2018 08:32:27 -0700 Subject: [PATCH 14/19] Revert version back to 2.13.01 since 2.13.00 was not merged with master. --- src/common/common_utils.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/common_utils.cpp b/src/common/common_utils.cpp index 72a75410..a84797f4 100644 --- a/src/common/common_utils.cpp +++ b/src/common/common_utils.cpp @@ -41,7 +41,7 @@ namespace yask { // for numbers above 9 (at least up to 99). // Format: "major.minor.patch". - const string version = "2.14.00"; + const string version = "2.13.01"; string yask_get_version_string() { return version; From 27aaea79452707721b08506022aca3635c9d4114 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Sat, 8 Sep 2018 13:23:58 -0700 Subject: [PATCH 15/19] Update stats output to account for temporal conditions. --- README.md | 1 + include/yk_solution_api.hpp | 39 +++--- src/common/common_utils.cpp | 2 +- src/kernel/lib/context.cpp | 148 +++++++++++++++-------- src/kernel/lib/context.hpp | 73 +++++------ src/kernel/lib/setup.cpp | 181 +++------------------------- src/kernel/lib/stencil_calc.cpp | 105 +++++++++++++++- src/kernel/lib/stencil_calc.hpp | 16 ++- src/kernel/yask_main.cpp | 56 +++++---- src/stencils/SimpleTestStencils.cpp | 2 +- 10 files changed, 318 insertions(+), 305 deletions(-) diff --git a/README.md b/README.md index 1065a5f8..be761726 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ #### Backward-compatibility notices: +* Version 2.13.02 required some changes in perf statistics due to step (temporal) conditions. Both text output and `yk_stats` APIs affected. * Version 2.12.00 removed the long-deprecated '==' operator for asserting equality between a grid point and an equation. Use 'EQUALS' instead. * Version 2.11.01 changed the plain-text format of some of the performance data in the test-utility output. Specifically, some leading spaces were added, SI multipliers for values < 1 were added, and the phrase "time in" no longer appears before each time breakdown. This may affect some user programs that parse the output to collect stats. * Version 2.10.00 changed the location of temporary files created during the build process. This will not affect most users, although you may need to manually remove old `src/compiler/gen` and `src/kernel/gen` directories. diff --git a/include/yk_solution_api.hpp b/include/yk_solution_api.hpp index 6ec6de8d..00c7ee6c 100644 --- a/include/yk_solution_api.hpp +++ b/include/yk_solution_api.hpp @@ -447,11 +447,10 @@ namespace yask { virtual void end_solution() =0; - /// Get performance statistics associated with preceding calls to run_solution(). /** - Side effect: resets all statistics, so a subsequent call will - measure performance after the current call. + @note Side effect: resets all statistics, so each call + returns only the elapsed time and counts since the previous call. @returns Pointer to statistics object. */ virtual yk_stats_ptr @@ -826,35 +825,39 @@ namespace yask { /// Get the number of elements in the overall domain. /** - @returns Product of all the overal domain sizes across all domain dimensions. + @returns Product across all domain dimensions of the domain sizes across all ranks. + Multiply this value by get_num_steps_done() to determine the number + of points processed. + Then, divide by get_elapsed_run_secs() to determine the throughput. */ virtual idx_t get_num_elements() =0; - /// Get the number of elements written in each step. + /// Get the number of steps executed via run_solution(). /** - @returns Number of elements written to each output grid. - This is the same value as get_num_elements() if there is only one output grid. + @returns A positive number, regardless of whether run_solution() steps were executed + forward or backward. */ virtual idx_t - get_num_writes() =0; + get_num_steps_done() =0; - /// Get the estimated number of floating-point operations required for each step. + /// Get the number of elements written across all steps. /** - @returns Number of FP ops created by the stencil compiler. - It may be slightly more or less than the actual number of FP ops executed - by the CPU due to C++ compiler transformations. + @returns Number of elements written, summed over all output grids, + steps executed, and ranks. */ virtual idx_t - get_est_fp_ops() =0; + get_num_writes_done() =0; - /// Get the number of steps calculated via run_solution(). + /// Get the estimated number of floating-point operations executed across all steps. /** - @returns A positive number, regardless of whether run_solution() steps were executed - forward or backward. + @returns Number of FP ops created by the stencil compiler, summed over + all stencil-bundles, steps executed, and ranks. + It may be slightly more or less than the actual number of FP ops executed + by the CPU due to C++ compiler transformations. */ virtual idx_t - get_num_steps_done() =0; + get_est_fp_ops_done() =0; /// Get the number of seconds elapsed during calls to run_solution(). /** @@ -862,7 +865,7 @@ namespace yask { application between calls. */ virtual double - get_elapsed_run_secs() =0; + get_elapsed_secs() =0; }; /** @}*/ diff --git a/src/common/common_utils.cpp b/src/common/common_utils.cpp index a84797f4..07c0b929 100644 --- a/src/common/common_utils.cpp +++ b/src/common/common_utils.cpp @@ -41,7 +41,7 @@ namespace yask { // for numbers above 9 (at least up to 99). // Format: "major.minor.patch". - const string version = "2.13.01"; + const string version = "2.13.02"; string yask_get_version_string() { return version; diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index 6b9ca3bc..cbb1513e 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -301,7 +301,7 @@ namespace yask { int ndims = _dims->_stencil_dims.size(); // Determine step dir from order of first/last. - idx_t step_dir = (last_step_index > first_step_index) ? 1 : -1; + idx_t step_dir = (last_step_index >= first_step_index) ? 1 : -1; // Find begin, step and end in step-dim. idx_t begin_t = first_step_index; @@ -512,7 +512,7 @@ namespace yask { steps_done += this_num_t; // Count steps for each pack to properly account for - // step conditions. + // step conditions when using temporal tiling. for (auto& bp : stPacks) { idx_t num_pack_steps = 0; @@ -665,7 +665,7 @@ namespace yask { // When doing TB, it will step by the block steps. idx_t begin_t = region_idxs.begin[step_posn]; idx_t end_t = region_idxs.end[step_posn]; - idx_t step_dir = (end_t > begin_t) ? 1 : -1; + idx_t step_dir = (end_t >= begin_t) ? 1 : -1; idx_t step_t = tb_steps; step_t *= step_dir; assert(step_t); @@ -894,7 +894,7 @@ namespace yask { // Time range. idx_t begin_t = block_idxs.begin[step_posn]; idx_t end_t = block_idxs.end[step_posn]; - idx_t step_dir = (end_t > begin_t) ? 1 : -1; + idx_t step_dir = (end_t >= begin_t) ? 1 : -1; idx_t step_t = step_dir; // Always 1 step for blocks. const idx_t num_t = abs(end_t - begin_t); @@ -1162,7 +1162,10 @@ namespace yask { // Temporarily ignore step conditions to force eval // of conditional bundles. - check_step_conds = false; + // NB: commented out because it affects perf, + // e.g., if packs A and B run in AAABAAAB sequence, + // perf may be different if run as ABABAB... + // check_step_conds = false; // Init tuners. reset_auto_tuner(true, verbose); @@ -1173,7 +1176,7 @@ namespace yask { // Determine number of sets to run. // If wave-fronts are enabled, run a max number of these steps. idx_t region_steps = _opts->_region_sizes[_dims->_step_dim]; - idx_t step_dir = _dims->_step_dir; + idx_t step_dir = _dims->_step_dir; // +/- 1. idx_t step_t = min(region_steps, +AutoTuner::max_step_t) * step_dir; // Run time-steps until AT converges. @@ -1307,7 +1310,7 @@ namespace yask { yk_stats_ptr StencilContext::get_stats() { ostream& os = get_ostr(); - // Calc and report perf. + // Calc times. double rtime = run_time.get_elapsed_secs(); double htime = min(halo_time.get_elapsed_secs(), rtime); double wtime = min(wait_time.get_elapsed_secs(), htime); @@ -1315,83 +1318,120 @@ namespace yask { double itime = min(int_time.get_elapsed_secs(), rtime - htime - etime); double ctime = etime + itime; double otime = max(rtime - ctime - htime, 0.); - if (rtime > 0.) { - domain_pts_ps = double(tot_domain_1t * steps_done) / rtime; - // FIXME: these are not correct if there are step conditions. - writes_ps= double(tot_numWrites_1t * steps_done) / rtime; - flops = double(tot_numFpOps_1t * steps_done) / rtime; + // Init return object. + auto p = make_shared(); + p->npts = tot_domain_pts; + p->nsteps = steps_done; + p->run_time = rtime; + p->halo_time = htime; + p->nreads = 0; + p->nwrites = 0; + p->nfpops = 0; + p->pts_ps = 0.; + p->reads_ps = 0.; + p->writes_ps = 0.; + p->flops = 0.; + + // Sum work done across packs using per-pack step counters. + for (auto& sp : stPacks) { + idx_t ns = sp->steps_done; + idx_t nreads = sp->tot_reads_per_step * ns; + idx_t nwrites = sp->tot_writes_per_step * ns; + idx_t nfpops = sp->tot_fpops_per_step * ns; + p->nreads += nreads; + p->nwrites += nwrites; + p->nfpops += nfpops; } - else - domain_pts_ps = writes_ps = flops = 0.; + + idx_t npts_done = tot_domain_pts * steps_done; + if (rtime > 0.) { + p->pts_ps = double(npts_done) / rtime; + p->reads_ps= double(p->nreads) / rtime; + p->writes_ps= double(p->nwrites) / rtime; + p->flops = double(p->nfpops) / rtime; + } + if (steps_done > 0) { os << - "Amount-of-work stats:\n" - " num-points-per-step: " << makeNumStr(tot_domain_1t) << endl << - " num-writes-per-step: " << makeNumStr(tot_numWrites_1t) << endl << - " num-est-FP-ops-per-step: " << makeNumStr(tot_numFpOps_1t) << endl << + "\nWork stats:\n" " num-steps-done: " << makeNumStr(steps_done) << endl << - "Performance stats:\n" + " num-reads-per-step: " << makeNumStr(double(p->nreads) / steps_done) << endl << + " num-writes-per-step: " << makeNumStr(double(p->nwrites) / steps_done) << endl << + " num-est-FP-ops-per-step: " << makeNumStr(double(p->nfpops) / steps_done) << endl << + " num-points-per-step: " << makeNumStr(tot_domain_pts) << endl; + if (stPacks.size() > 1) { + os << + " Work breakdown by stencil pack(s):\n"; + for (auto& sp : stPacks) { + idx_t ns = sp->steps_done; + idx_t nreads = sp->tot_reads_per_step; + idx_t nwrites = sp->tot_writes_per_step; + idx_t nfpops = sp->tot_fpops_per_step; + os << " pack '" << sp->get_name() << "':\n" + " num-steps-done: " << makeNumStr(ns) << endl << + " num-reads-per-step: " << makeNumStr(nreads) << endl << + " num-writes-per-step: " << makeNumStr(nwrites) << endl << + " num-est-FP-ops-per-step: " << makeNumStr(nfpops) << endl; + } + } + os << + "\nTime stats:\n" " elapsed-time (sec): " << makeNumStr(rtime) << endl << " Time breakdown by activity type:\n" - " compute (sec): " << makeNumStr(ctime); + " compute (sec): " << makeNumStr(ctime); print_pct(os, ctime, rtime); #ifdef USE_MPI os << - " halo exchange (sec): " << makeNumStr(htime); + " halo exchange (sec): " << makeNumStr(htime); print_pct(os, htime, rtime); #endif os << - " other (sec): " << makeNumStr(otime); + " other (sec): " << makeNumStr(otime); print_pct(os, otime, rtime); - os << - " Compute-time breakdown by stencil pack(s):\n"; - double tptime = 0.; - for (auto& sp : stPacks) { - double ptime = min(sp->timer.get_elapsed_secs(), ctime - tptime); - if (ptime > 0.) { - os << - " pack '" << sp->get_name() << "' (sec): " << makeNumStr(ptime); - print_pct(os, ptime, ctime); - tptime += ptime; + if (stPacks.size() > 1) { + os << + " Compute-time breakdown by stencil pack(s):\n"; + double tptime = 0.; + for (auto& sp : stPacks) { + double ptime = min(sp->timer.get_elapsed_secs(), ctime - tptime); + if (ptime > 0.) { + os << + " pack '" << sp->get_name() << "' (sec): " << makeNumStr(ptime); + print_pct(os, ptime, ctime); + tptime += ptime; + } } + double optime = max(ctime - tptime, 0.); + os << + " other (sec): " << makeNumStr(optime); + print_pct(os, optime, ctime); } - double optime = max(ctime - tptime, 0.); - os << - " other (sec): " << makeNumStr(optime); - print_pct(os, optime, ctime); #ifdef USE_MPI os << " Compute-time breakdown by halo area:\n" - " rank-exterior compute (sec): " << makeNumStr(etime); + " rank-exterior compute (sec): " << makeNumStr(etime); print_pct(os, etime, ctime); os << - " rank-interior compute (sec): " << makeNumStr(itime); + " rank-interior compute (sec): " << makeNumStr(itime); print_pct(os, itime, ctime); os << " Halo-time breakdown:\n" - " MPI waits (sec): " << makeNumStr(wtime); + " MPI waits (sec): " << makeNumStr(wtime); print_pct(os, wtime, htime); double ohtime = max(htime - wtime, 0.); os << - " packing, unpacking, etc. (sec): " << makeNumStr(ohtime); + " packing, unpacking, etc. (sec): " << makeNumStr(ohtime); print_pct(os, ohtime, htime); #endif os << - " throughput (num-writes/sec): " << makeNumStr(writes_ps) << endl << - " throughput (est-FLOPS): " << makeNumStr(flops) << endl << - " throughput (num-points/sec): " << makeNumStr(domain_pts_ps) << endl; + "\nRate stats:\n" + " throughput (num-reads/sec): " << makeNumStr(p->reads_ps) << endl << + " throughput (num-writes/sec): " << makeNumStr(p->writes_ps) << endl << + " throughput (est-FLOPS): " << makeNumStr(p->flops) << endl << + " throughput (num-points/sec): " << makeNumStr(p->pts_ps) << endl; } - // Fill in return object. - auto p = make_shared(); - p->npts = tot_domain_1t; - p->nwrites = tot_numWrites_1t; - p->nfpops = tot_numFpOps_1t; - p->nsteps = steps_done; - p->run_time = rtime; - p->halo_time = htime; - // Clear counters. clear_timers(); @@ -1827,8 +1867,10 @@ namespace yask { halo_time.clear(); wait_time.clear(); steps_done = 0; - for (auto& sp : stPacks) + for (auto& sp : stPacks) { sp->timer.clear(); + sp->steps_done = 0; + } } } // namespace yask. diff --git a/src/kernel/lib/context.hpp b/src/kernel/lib/context.hpp index 6c700638..6f81fc9b 100644 --- a/src/kernel/lib/context.hpp +++ b/src/kernel/lib/context.hpp @@ -85,12 +85,19 @@ namespace yask { class Stats : public virtual yk_stats { public: idx_t npts = 0; + idx_t nreads = 0; idx_t nwrites = 0; idx_t nfpops = 0; idx_t nsteps = 0; + double run_time = 0.; double halo_time = 0.; + double pts_ps = 0.; // points-per-sec in overall domain. + double reads_ps = 0.; // reads-per-sec. + double writes_ps = 0.; // writes-per-sec. + double flops = 0.; // est. FLOPS. + Stats() {} virtual ~Stats() {} @@ -105,22 +112,21 @@ namespace yask { virtual idx_t get_num_elements() { return npts; } - /// Get the number of points written in each step. + /// Get the number of points written. virtual idx_t - get_num_writes() { return nwrites; } + get_num_writes_done() { return nwrites; } - /// Get the estimated number of floating-point operations required for each step. + /// Get the estimated number of floating-point operations performed in each step. virtual idx_t - get_est_fp_ops() { return nfpops; } + get_est_fp_ops_done() { return nfpops; } - /// Get the number of steps calculated via run_solution(). + /// Get the number of steps executed via run_solution(). virtual idx_t get_num_steps_done() { return nsteps; } /// Get the number of seconds elapsed during calls to run_solution(). virtual double - get_elapsed_run_secs() { return run_time; } - + get_elapsed_secs() { return run_time; } }; // Collections of things in a context. @@ -221,9 +227,19 @@ namespace yask { // Each vector contains a grid for each thread. ScratchVecs scratchVecs; - // Some calculated domain sizes. + // Some calculated sizes for this rank and overall. IdxTuple rank_domain_offsets; // Domain index offsets for this rank. IdxTuple overall_domain_sizes; // Total of rank domains over all ranks. + idx_t rank_nbytes=0, tot_nbytes=0; + idx_t rank_domain_pts=0, tot_domain_pts=0; + + // Elapsed-time tracking. + YaskTimer run_time; // time in run_solution(), including halo exchange. + YaskTimer ext_time; // time in exterior stencil calculation. + YaskTimer int_time; // time in interior stencil calculation. + YaskTimer halo_time; // time spent just doing halo exchange, including MPI waits. + YaskTimer wait_time; // time spent just doing MPI waits. + idx_t steps_done = 0; // number of steps that have been run. // Maximum halos, skewing angles, and work extensions over all grids // used for wave-front region tiles (wf) and temporal blocking (tb). @@ -238,33 +254,6 @@ namespace yask { IdxTuple left_wf_exts; // WF extension needed on left side of rank for halo exch. IdxTuple right_wf_exts; // WF extension needed on right side of rank. - // Various amount-of-work metrics calculated in prepare_solution(). - // 'rank_' prefix indicates for this rank. - // 'tot_' prefix indicates over all ranks. - // 'domain' indicates points in domain-size specified on cmd-line. - // 'numpts' indicates points actually calculated in sub-domains. - // 'reads' indicates points actually read by stencil-bundles. - // 'numFpOps' indicates est. number of FP ops. - // 'nbytes' indicates number of bytes allocated. - // '_1t' suffix indicates work for one time-step. - // '_dt' suffix indicates work for all time-steps. - idx_t rank_domain_1t=0, rank_domain_dt=0, tot_domain_1t=0, tot_domain_dt=0; - idx_t rank_numWrites_1t=0, rank_numWrites_dt=0, tot_numWrites_1t=0, tot_numWrites_dt=0; - idx_t rank_reads_1t=0, rank_reads_dt=0, tot_reads_1t=0, tot_reads_dt=0; - idx_t rank_numFpOps_1t=0, rank_numFpOps_dt=0, tot_numFpOps_1t=0, tot_numFpOps_dt=0; - idx_t rank_nbytes=0, tot_nbytes=0; - - // Elapsed-time tracking. - YaskTimer run_time; // time in run_solution(), including halo exchange. - YaskTimer ext_time; // time in exterior stencil calculation. - YaskTimer int_time; // time in exterior stencil calculation. - YaskTimer halo_time; // time spent just doing halo exchange, including MPI waits. - YaskTimer wait_time; // time spent just doing MPI waits. - idx_t steps_done = 0; // number of steps that have been run. - double domain_pts_ps = 0.; // points-per-sec in domain. - double writes_ps = 0.; // writes-per-sec. - double flops = 0.; // est. FLOPS. - // MPI settings. // TODO: move to settings or MPI info object. #ifdef NO_VEC_EXCHANGE @@ -364,10 +353,6 @@ namespace yask { virtual void print_info(); /// Get statistics associated with preceding calls to run_solution(). - /** - Resets all timers and step counters. - @returns Pointer to statistics object. - */ virtual yk_stats_ptr get_stats(); // Dealloc grids, etc. @@ -391,9 +376,13 @@ namespace yask { // TODO: add MPI buffers. virtual size_t get_num_bytes() { size_t sz = 0; - for (auto gp : gridPtrs) - if (gp) - sz += gp->get_num_storage_bytes() + _data_buf_pad; + for (auto gp : gridPtrs) { + if (gp) { + if (sz) + sz += _data_buf_pad; + sz += gp->get_num_storage_bytes(); + } + } for (auto gps : scratchVecs) if (gps) for (auto gp : *gps) diff --git a/src/kernel/lib/setup.cpp b/src/kernel/lib/setup.cpp index 954452f7..56bd60ce 100644 --- a/src/kernel/lib/setup.cpp +++ b/src/kernel/lib/setup.cpp @@ -1254,17 +1254,22 @@ namespace yask { auto& step_dim = _dims->_step_dim; ostream& os = get_ostr(); - // Report total allocation. + // Calc and report total allocation and domain sizes. rank_nbytes = get_num_bytes(); - os << "Total allocation in this rank: " << - makeByteStr(rank_nbytes) << "\n"; tot_nbytes = sumOverRanks(rank_nbytes, _env->comm); - os << "Total overall allocation in " << _env->num_ranks << " rank(s): " << - makeByteStr(tot_nbytes) << "\n"; + rank_domain_pts = rank_bb.bb_num_points; + tot_domain_pts = sumOverRanks(rank_domain_pts, _env->comm); + os << + "\nDomain size in this rank (points): " << makeNumStr(rank_domain_pts) << + "\nTotal allocation in this rank: " << makeByteStr(rank_nbytes) << + "\nOverall problem size in " << _env->num_ranks << " rank(s) (points): " << + makeNumStr(tot_domain_pts) << + "\nTotal overall allocation in " << _env->num_ranks << " rank(s): " << + makeByteStr(tot_nbytes) << + endl; - // Report some stats. - idx_t dt = _opts->_rank_sizes[step_dim]; - os << "\nProblem sizes in points (from smallest to largest):\n" + // Report some sizes and settings. + os << "\nWork-unit sizes in points (from smallest to largest):\n" " vector-size: " << _dims->_fold_pts.makeDimValStr(" * ") << endl << " cluster-size: " << _dims->_cluster_pts.makeDimValStr(" * ") << endl << " sub-block-size: " << _opts->_sub_block_sizes.makeDimValStr(" * ") << endl << @@ -1316,162 +1321,10 @@ namespace yask { os << "Num stencil bundles: " << stBundles.size() << endl; os << "Num stencil equations: " << NUM_STENCIL_EQS << endl; -#if NUM_STENCIL_EQS - - // sums across bundles for this rank. - rank_numWrites_1t = 0; - rank_reads_1t = 0; - rank_numFpOps_1t = 0; - - for (auto& sp : stPacks) { - auto& pbb = sp->getBB(); - os << "Pack '" << sp->get_name() << "':\n" << - " num bundles: " << sp->size() << endl << - " sub-domain scope: " << pbb.bb_begin.makeDimValStr() << - " ... " << pbb.bb_end.subElements(1).makeDimValStr() << endl; - - for (auto* sg : *sp) { - idx_t updates1 = 0, reads1 = 0, fpops1 = 0; - - // Loop through all the needed bundles to - // count stats for scratch bundles. - // Does not count extra ops needed in scratch halos - // since this varies depending on block size. - auto sg_list = sg->get_reqd_bundles(); - for (auto* rsg : sg_list) { - updates1 += rsg->get_scalar_points_written(); - reads1 += rsg->get_scalar_points_read(); - fpops1 += rsg->get_scalar_fp_ops(); - } - - auto& bb = sg->getBB(); - idx_t updates_domain = updates1 * bb.bb_num_points; - rank_numWrites_1t += updates_domain; - idx_t reads_domain = reads1 * bb.bb_num_points; - rank_reads_1t += reads_domain; - idx_t fpops_domain = fpops1 * bb.bb_num_points; - rank_numFpOps_1t += fpops_domain; - - os << " Bundle '" << sg->get_name() << "':\n" << - " reqd scratch bundles: " << (sg_list.size() - 1) << endl; - // TODO: add info on scratch bundles here. - os << - " points in sub-domain: " << makeNumStr(bb.bb_size) << endl; - if (bb.bb_size) { - os << - " valid points in sub-domain: " << makeNumStr(bb.bb_num_points) << endl << - " sub-domain scope: " << bb.bb_begin.makeDimValStr() << - " ... " << bb.bb_end.subElements(1).makeDimValStr() << endl << - " sub-domain bounding-box: " << bb.bb_len.makeDimValStr(" * ") << endl; - } - os << - " rectangles in sub-domain: " << sg->getBBs().size() << endl; - for (size_t ri = 0; ri < sg->getBBs().size(); ri++) { - auto& rbb = sg->getBBs()[ri]; - os << " points in rect " << ri << ": " << makeNumStr(rbb.bb_num_points) << endl; - if (rbb.bb_num_points) { - os << " rect " << ri << " scope: " << rbb.bb_begin.makeDimValStr() << - " ... " << rbb.bb_end.subElements(1).makeDimValStr() << endl; - os << " rect " << ri << " size: " << rbb.bb_len.makeDimValStr(" * ") << endl; - } - } - os << - " grid-updates per point: " << updates1 << endl << - " grid-updates in sub-domain: " << makeNumStr(updates_domain) << endl << - " grid-reads per point: " << reads1 << endl << - " grid-reads in sub-domain: " << makeNumStr(reads_domain) << endl << - " est FP-ops per point: " << fpops1 << endl << - " est FP-ops in sub-domain: " << makeNumStr(fpops_domain) << endl; - os << " input-grids: "; - int i = 0; - for (auto gp : sg->inputGridPtrs) { - if (i++) os << ", "; - os << gp->get_name(); - } - os << "\n output-grids: "; - i = 0; - for (auto gp : sg->outputGridPtrs) { - if (i++) os << ", "; - os << gp->get_name(); - } - os << endl; - } // bundles. - } // packs. - - // Various metrics for amount of work. - rank_numWrites_dt = rank_numWrites_1t * dt; - tot_numWrites_1t = sumOverRanks(rank_numWrites_1t, _env->comm); - tot_numWrites_dt = tot_numWrites_1t * dt; - - rank_reads_dt = rank_reads_1t * dt; - tot_reads_1t = sumOverRanks(rank_reads_1t, _env->comm); - tot_reads_dt = tot_reads_1t * dt; - - rank_numFpOps_dt = rank_numFpOps_1t * dt; - tot_numFpOps_1t = sumOverRanks(rank_numFpOps_1t, _env->comm); - tot_numFpOps_dt = tot_numFpOps_1t * dt; - - rank_domain_1t = rank_bb.bb_num_points; - rank_domain_dt = rank_domain_1t * dt; // same as _opts->_rank_sizes.product(); - tot_domain_1t = sumOverRanks(rank_domain_1t, _env->comm); - tot_domain_dt = tot_domain_1t * dt; - - // Print some more stats. - os << endl << - "Amount-of-work stats:\n" << - " domain-size in this rank for one time-step: " << - makeNumStr(rank_domain_1t) << endl << - " overall-problem-size in all ranks for one time-step: " << - makeNumStr(tot_domain_1t) << endl << - endl << - " num-writes-required in this rank for one time-step: " << - makeNumStr(rank_numWrites_1t) << endl << - " num-writes-required in all ranks for one time-step: " << - makeNumStr(tot_numWrites_1t) << endl << - endl << - " num-reads-required in this rank for one time-step: " << - makeNumStr(rank_reads_1t) << endl << - " num-reads-required in all ranks for one time-step: " << - makeNumStr(tot_reads_1t) << endl << - endl << - " est-FP-ops in this rank for one time-step: " << - makeNumStr(rank_numFpOps_1t) << endl << - " est-FP-ops in all ranks for one time-step: " << - makeNumStr(tot_numFpOps_1t) << endl << - endl; - - if (dt > 1) { - os << - " domain-size in this rank for all time-steps: " << - makeNumStr(rank_domain_dt) << endl << - " overall-problem-size in all ranks for all time-steps: " << - makeNumStr(tot_domain_dt) << endl << - endl << - " num-writes-required in this rank for all time-steps: " << - makeNumStr(rank_numWrites_dt) << endl << - " num-writes-required in all ranks for all time-steps: " << - makeNumStr(tot_numWrites_dt) << endl << - endl << - " num-reads-required in this rank for all time-steps: " << - makeNumStr(rank_reads_dt) << endl << - " num-reads-required in all ranks for all time-steps: " << - makeNumStr(tot_reads_dt) << endl << - endl << - " est-FP-ops in this rank for all time-steps: " << - makeNumStr(rank_numFpOps_dt) << endl << - " est-FP-ops in all ranks for all time-steps: " << - makeNumStr(tot_numFpOps_dt) << endl << - endl; - } - os << - "Notes:\n" - " Domain-sizes and overall-problem-sizes are based on rank-domain sizes\n" - " and number of ranks regardless of number of grids or sub-domains.\n" - " Num-writes-required is based on sum of grid-updates in sub-domain across stencil-bundle(s).\n" - " Num-reads-required is based on sum of grid-reads in sub-domain across stencil-bundle(s).\n" - " Est-FP-ops are based on sum of est-FP-ops in sub-domain across stencil-bundle(s).\n" - "\n"; -#endif + // Info on work in packs. + os << "\nBreakdown of work stats in this rank:\n"; + for (auto& sp : stPacks) + sp->init_work_stats(); } // Dealloc grids, etc. diff --git a/src/kernel/lib/stencil_calc.cpp b/src/kernel/lib/stencil_calc.cpp index 5662c589..cbf37746 100644 --- a/src/kernel/lib/stencil_calc.cpp +++ b/src/kernel/lib/stencil_calc.cpp @@ -730,6 +730,109 @@ namespace yask { // Don't add to context steps to avoid over-counting. } - + + // Calc the work stats. + // Requires MPI barriers! + void BundlePack::init_work_stats() { + ostream& os = _context->get_ostr(); + auto& env = _context->get_env(); + + num_reads_per_step = 0; + num_writes_per_step = 0; + num_fpops_per_step = 0; + + os << + "Pack '" << get_name() << "':\n" << + " num bundles: " << size() << endl << + " pack scope: " << _pack_bb.bb_begin.makeDimValStr() << + " ... " << _pack_bb.bb_end.subElements(1).makeDimValStr() << endl; + + // Bundles. + for (auto* sg : *this) { + + // Stats for this bundle for 1 pt. + idx_t writes1 = 0, reads1 = 0, fpops1 = 0; + + // Loop through all the needed bundles to + // count stats for scratch bundles. + // Does not count extra ops needed in scratch halos + // since this varies depending on block size. + auto sg_list = sg->get_reqd_bundles(); + for (auto* rsg : sg_list) { + reads1 += rsg->get_scalar_points_read(); + writes1 += rsg->get_scalar_points_written(); + fpops1 += rsg->get_scalar_fp_ops(); + } + + // Multiply by valid pts in BB for this bundle. + auto& bb = sg->getBB(); + idx_t writes_bb = writes1 * bb.bb_num_points; + num_writes_per_step += writes_bb; + idx_t reads_bb = reads1 * bb.bb_num_points; + num_reads_per_step += reads_bb; + idx_t fpops_bb = fpops1 * bb.bb_num_points; + num_fpops_per_step += fpops_bb; + + os << " Bundle '" << sg->get_name() << "':\n" << + " num reqd scratch bundles: " << (sg_list.size() - 1) << endl; + // TODO: add info on scratch bundles here. + + os << + " bundle size (points): " << makeNumStr(bb.bb_size) << endl; + if (bb.bb_size) { + os << + " valid points in bundle: " << makeNumStr(bb.bb_num_points) << endl; + if (bb.bb_num_points) { + os << + " bundle scope: " << bb.bb_begin.makeDimValStr() << + " ... " << bb.bb_end.subElements(1).makeDimValStr() << endl << + " bundle bounding-box size: " << bb.bb_len.makeDimValStr(" * ") << endl; + } + } + os << + " num full rectangles in box: " << sg->getBBs().size() << endl; + if (sg->getBBs().size() > 1) { + for (size_t ri = 0; ri < sg->getBBs().size(); ri++) { + auto& rbb = sg->getBBs()[ri]; + os << + " Rectangle " << ri << ":\n" + " num points in rect: " << makeNumStr(rbb.bb_num_points) << endl; + if (rbb.bb_num_points) { + os << " rect scope: " << rbb.bb_begin.makeDimValStr() << + " ... " << rbb.bb_end.subElements(1).makeDimValStr() << endl; + os << " rect size: " << rbb.bb_len.makeDimValStr(" * ") << endl; + } + } + } + os << + " grid-reads per point: " << reads1 << endl << + " grid-reads in rank: " << makeNumStr(reads_bb) << endl << + " grid-writes per point: " << writes1 << endl << + " grid-writes in rank: " << makeNumStr(writes_bb) << endl << + " est FP-ops per point: " << fpops1 << endl << + " est FP-ops in rank: " << makeNumStr(fpops_bb) << endl; + + os << " input-grids: "; + int i = 0; + for (auto gp : sg->inputGridPtrs) { + if (i++) os << ", "; + os << gp->get_name(); + } + os << "\n output-grids: "; + i = 0; + for (auto gp : sg->outputGridPtrs) { + if (i++) os << ", "; + os << gp->get_name(); + } + os << endl; + + } // bundles. + + // Sum across ranks. + tot_reads_per_step = sumOverRanks(num_reads_per_step, env->comm); + tot_writes_per_step = sumOverRanks(num_writes_per_step, env->comm); + tot_fpops_per_step = sumOverRanks(num_fpops_per_step, env->comm); + + } // init_work_stats(). } // namespace yask. diff --git a/src/kernel/lib/stencil_calc.hpp b/src/kernel/lib/stencil_calc.hpp index f6105e09..f65fddc4 100644 --- a/src/kernel/lib/stencil_calc.hpp +++ b/src/kernel/lib/stencil_calc.hpp @@ -259,7 +259,17 @@ namespace yask { // Perf stats for this pack. YaskTimer timer; - idx_t steps_done; + idx_t steps_done = 0; + + // Work needed across points in this rank. + idx_t num_reads_per_step = 0; + idx_t num_writes_per_step = 0; + idx_t num_fpops_per_step = 0; + + // Work done across all ranks. + idx_t tot_reads_per_step = 0; + idx_t tot_writes_per_step = 0; + idx_t tot_fpops_per_step = 0; BundlePack(const std::string& name, StencilContext* ctx) : @@ -273,6 +283,10 @@ namespace yask { return _name; } + // Update the amount of work stats. + // Print to current debug stream. + void init_work_stats(); + // Determine whether step index is enabled. bool is_in_valid_step(idx_t input_step_index) const { diff --git a/src/kernel/yask_main.cpp b/src/kernel/yask_main.cpp index 6ecff0c5..49d6273a 100644 --- a/src/kernel/yask_main.cpp +++ b/src/kernel/yask_main.cpp @@ -301,8 +301,8 @@ int main(int argc, char** argv) } kenv->global_barrier(); - // variables for measuring performance. - double best_elapsed_time=0., best_apps=0., best_dpps=0., best_flops=0.; + // Track best trial. + shared_ptr best_trial; /////// Performance run(s). auto& step_dim = opts->_dims->_step_dim; @@ -340,31 +340,31 @@ int main(int argc, char** argv) VTUNE_PAUSE; // Calc and report perf. - auto stats = context->get_stats(); + auto trial_stats = context->get_stats(); + auto stats = dynamic_pointer_cast(trial_stats); // Remember best. - if (context->domain_pts_ps > best_dpps) { - best_dpps = context->domain_pts_ps; - best_apps = context->writes_ps; - best_flops = context->flops; - best_elapsed_time = stats->get_elapsed_run_secs(); - } + if (best_trial == nullptr || stats->run_time < best_trial->run_time) + best_trial = stats; } - os << divLine << - "Performance stats of best trial:\n" - " best-elapsed-time (sec): " << makeNumStr(best_elapsed_time) << endl << - " best-throughput (num-writes/sec): " << makeNumStr(best_apps) << endl << - " best-throughput (est-FLOPS): " << makeNumStr(best_flops) << endl << - " best-throughput (num-points/sec): " << makeNumStr(best_dpps) << endl << - divLine << - "Notes:\n" - " Num-writes/sec and FLOPS are metrics based on certain\n" - " types of statements and can vary due to differences in\n" - " implementations and optimizations.\n" - " Num-points/sec is based on overall problem size and is\n" - " a more reliable performance metric, esp. when comparing\n" - " across implementations.\n"; + if (best_trial != nullptr) { + os << divLine << + "Performance stats of best trial:\n" + " best-elapsed-time (sec): " << makeNumStr(best_trial->run_time) << endl << + " best-throughput (num-reads/sec): " << makeNumStr(best_trial->reads_ps) << endl << + " best-throughput (num-writes/sec): " << makeNumStr(best_trial->writes_ps) << endl << + " best-throughput (est-FLOPS): " << makeNumStr(best_trial->flops) << endl << + " best-throughput (num-points/sec): " << makeNumStr(best_trial->pts_ps) << endl << + divLine << + "Notes:\n" + " Num-reads and writes/sec and FLOPS are metrics based on\n" + " stencil specifications and can vary due to differences in\n" + " implementations and optimizations.\n" + " Num-points/sec is based on overall problem size and is\n" + " a more reliable performance metric, esp. when comparing\n" + " across implementations.\n"; + } /////// Validation run. bool ok = true; @@ -415,10 +415,18 @@ int main(int argc, char** argv) os << endl << divLine << "Running " << dt << " step(s) for validation...\n" << flush; ref_context->calc_rank_ref(); + + // Discard perf report. + yask_output_factory yof; + auto dbg_out = ref_context->get_debug_output(); + ref_context->set_debug_output(yof.new_null_output()); + auto rstats = ref_context->get_stats(); + ref_context->set_debug_output(dbg_out); + os << " Done in " << rstats->get_elapsed_secs() << " secs.\n"; #endif // check for equality. - os << "Checking results..." << endl; + os << "\nChecking results..." << endl; idx_t errs = context->compareData(*ref_context); auto ri = kenv->get_rank_index(); if( errs == 0 ) { diff --git a/src/stencils/SimpleTestStencils.cpp b/src/stencils/SimpleTestStencils.cpp index ffeb2510..724d0e56 100644 --- a/src/stencils/SimpleTestStencils.cpp +++ b/src/stencils/SimpleTestStencils.cpp @@ -452,7 +452,7 @@ class TestStepCondStencil1 : public StencilRadiusBase { v += data(t, x-r); for (int r = 1; r <= _radius + 2; r++) v += data(t, x+r); - data(t+1, x) EQUALS u / (_radius * 2 + 6) IF_STEP !tc0; + data(t+1, x) EQUALS v / (_radius * 2 + 6) IF_STEP !tc0; } }; From a156d49b64a08f72ef15645025c5a3d304a01a47 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Sat, 8 Sep 2018 17:15:14 -0700 Subject: [PATCH 16/19] Fix time-counting bug. --- src/kernel/lib/context.cpp | 33 ++++++++++++++++++--------------- src/kernel/lib/utils.cpp | 33 ++++++++++++++++++++++++++++----- src/kernel/lib/utils.hpp | 19 ++++++------------- 3 files changed, 52 insertions(+), 33 deletions(-) diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index cbb1513e..c0b8004b 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -707,6 +707,9 @@ namespace yask { continue; } + // Start timers for this pack. + bp->start_timers(); + // Steps within a region are based on pack block sizes. auto& settings = bp->getSettings(); region_idxs.step = settings._block_sizes; @@ -754,6 +757,9 @@ namespace yask { // One shift for each pack. shift_num++; + // Start timers for this pack. + bp->stop_timers(); + } // stencil bundle packs. } // no temporal blocking. @@ -905,9 +911,6 @@ namespace yask { // No TB allowed here. assert(num_t == 1); - // Start timers for this pack. - bp->start_timers(); - // Steps within a block are based on pack sub-block sizes. auto& settings = bp->getSettings(); block_idxs.step = settings._sub_block_sizes; @@ -921,9 +924,6 @@ namespace yask { for (auto* sb : *bp) if (sb->getBB().bb_num_points) sb->calc_block(block_idxs); - - // Start timers for this pack. - bp->stop_timers(); } // If TB is active, do all packs across time steps for each required shape. @@ -1016,7 +1016,10 @@ namespace yask { } // Start timers for this pack. - bp->start_timers(); + // Tracking only on thread 0. It might be better to track + // all threads and average them. Or something like that. + if (thread_idx == 0) + bp->start_timers(); // Adjust start/stop to proper shape. Indices shape_start(start); @@ -1105,7 +1108,8 @@ namespace yask { cur_shift_num++; // Increment for each pack and time-step. // Stop timers for this pack. - bp->stop_timers(); + if (thread_idx == 0) + bp->stop_timers(); } // packs. } // time steps. @@ -1394,13 +1398,12 @@ namespace yask { " Compute-time breakdown by stencil pack(s):\n"; double tptime = 0.; for (auto& sp : stPacks) { - double ptime = min(sp->timer.get_elapsed_secs(), ctime - tptime); - if (ptime > 0.) { - os << - " pack '" << sp->get_name() << "' (sec): " << makeNumStr(ptime); - print_pct(os, ptime, ctime); - tptime += ptime; - } + double ptime = sp->timer.get_elapsed_secs(); + ptime = min(ptime, ctime - tptime); + os << + " pack '" << sp->get_name() << "' (sec): " << makeNumStr(ptime); + print_pct(os, ptime, ctime); + tptime += ptime; } double optime = max(ctime - tptime, 0.); os << diff --git a/src/kernel/lib/utils.cpp b/src/kernel/lib/utils.cpp index 71e301e6..c1161521 100644 --- a/src/kernel/lib/utils.cpp +++ b/src/kernel/lib/utils.cpp @@ -35,23 +35,46 @@ Cache cache_model(MODEL_CACHE); namespace yask { // Timer. + void YaskTimer::start(TimeSpec* ts) { + + // Should start with no beginning. + assert(_begin.tv_sec == 0); + assert(_begin.tv_nsec == 0); + + if (ts) + _begin = *ts; + else { + auto cts = get_timespec(); + _begin = cts; + } + } double YaskTimer::stop(TimeSpec* ts) { + TimeSpec end, delta; if (ts) - _end = *ts; + end = *ts; else { auto cts = get_timespec(); - _end = cts; + end = cts; } - struct timespec delta; + + // Make sure timer was started. + assert(_begin.tv_sec != 0); + + // Make sure time is going forward. + assert(end.tv_sec >= _begin.tv_sec); // Elapsed time is just end - begin times. - delta.tv_sec = _end.tv_sec - _begin.tv_sec; + delta.tv_sec = end.tv_sec - _begin.tv_sec; _elapsed.tv_sec += delta.tv_sec; // No need to check for sign or to normalize, because tv_nsec is // signed and 64-bit. - delta.tv_nsec = _end.tv_nsec - _begin.tv_nsec; + delta.tv_nsec = end.tv_nsec - _begin.tv_nsec; _elapsed.tv_nsec += delta.tv_nsec; + + // Clear begin to catch misuse. + _begin.tv_sec = 0; + _begin.tv_nsec = 0; return double(delta.tv_sec) + double(delta.tv_nsec) * 1e-9; } diff --git a/src/kernel/lib/utils.hpp b/src/kernel/lib/utils.hpp index 8d7f1f9b..ace3e1b4 100644 --- a/src/kernel/lib/utils.hpp +++ b/src/kernel/lib/utils.hpp @@ -151,7 +151,7 @@ namespace yask { long tv_nsec; // nanoseconds }; */ - struct timespec _begin, _end, _elapsed; + struct timespec _begin, _elapsed; public: @@ -161,9 +161,9 @@ namespace yask { virtual ~YaskTimer() { } // Reset elapsed time to zero. - virtual void clear() { - _begin.tv_sec = _end.tv_sec = _elapsed.tv_sec = 0; - _begin.tv_nsec = _end.tv_nsec = _elapsed.tv_nsec = 0; + void clear() { + _begin.tv_sec = _elapsed.tv_sec = 0; + _begin.tv_nsec = _elapsed.tv_nsec = 0; } // Make a timespec that can be used for mutiple calls. @@ -177,19 +177,12 @@ namespace yask { // start() and stop() can be called multiple times in // pairs before calling get_elapsed_secs(), which // will return the cumulative time over all timed regions. - virtual void start(TimeSpec* ts = NULL) { - if (ts) - _begin = *ts; - else { - auto cts = get_timespec(); - _begin = cts; - } - } + void start(TimeSpec* ts = NULL); // End a timed region. // Return time since previous call to start(); this is *not* // generally the same as the value returned by get_elapsed_secs(). - virtual double stop(TimeSpec* ts = NULL); + double stop(TimeSpec* ts = NULL); // Get elapsed time in sec. // Does not reset value, so it may be used for cumulative time. From d2fe9c2ed3226acac1b6ffbbf37299a75009cea1 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Sat, 8 Sep 2018 17:15:39 -0700 Subject: [PATCH 17/19] Add step-cond info to packs. --- src/compiler/lib/Eqs.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/compiler/lib/Eqs.cpp b/src/compiler/lib/Eqs.cpp index 1ec308ce..b836b145 100644 --- a/src/compiler/lib/Eqs.cpp +++ b/src/compiler/lib/Eqs.cpp @@ -1340,6 +1340,12 @@ namespace yask { if (isScratch()) des += "scratch "; des += "equation bundle-pack " + quote + getName() + quote; + if (!isScratch()) { + if (step_cond.get()) + des += " w/step condition " + step_cond->makeQuotedStr(quote); + else + des += " w/o step condition"; + } return des; } From 089fbf7fbfa0836d9a45d43b219d66bb31230fbb Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Sat, 8 Sep 2018 20:42:45 -0700 Subject: [PATCH 18/19] Reduce AT search space. Work on #108. --- src/kernel/lib/auto_tuner.cpp | 20 ++++++++++++++++---- src/kernel/lib/auto_tuner.hpp | 4 ++-- src/kernel/lib/context.cpp | 13 +++++-------- 3 files changed, 23 insertions(+), 14 deletions(-) diff --git a/src/kernel/lib/auto_tuner.cpp b/src/kernel/lib/auto_tuner.cpp index e41a435f..173b698c 100644 --- a/src/kernel/lib/auto_tuner.cpp +++ b/src/kernel/lib/auto_tuner.cpp @@ -59,7 +59,7 @@ namespace yask { // Reset all vars. results.clear(); - n2big = n2small = 0; + n2big = n2small = n2far = 0; best_block = _settings->_block_sizes; best_rate = 0.; center_block = best_block; @@ -188,20 +188,30 @@ namespace yask { step = max(step, min_step); step *= radius; + int mdist = 0; // manhattan dist from center. auto sz = center_block[dname]; switch (dofs) { - case 0: + case 0: // reduce size in 'odim'. sz -= step; + mdist++; break; - case 1: + case 1: // keep size in 'odim'. break; - case 2: + case 2: // increase size in 'odim'. sz += step; + mdist++; break; default: assert(false && "internal error in tune_settings()"); } + // Don't look in far corners. + if (mdist > 2) { + n2far++; + ok = false; + break; // out of dim-loop. + } + // Too small? if (sz < dmin) { n2small++; @@ -284,6 +294,8 @@ namespace yask { } // search for new setting to try. // Fix settings for next step. + // Assumption is that block size in one pack doesn't affect + // perf in another pack. apply(); TRACE_MSG2(_name << ": next block-size " << _settings->_block_sizes.makeDimValStr(" * ")); diff --git a/src/kernel/lib/auto_tuner.hpp b/src/kernel/lib/auto_tuner.hpp index 63572d2a..a60fefb8 100644 --- a/src/kernel/lib/auto_tuner.hpp +++ b/src/kernel/lib/auto_tuner.hpp @@ -47,13 +47,13 @@ namespace yask { idx_t min_steps = 10; double min_secs = 0.25; // eval when either min_steps or min_secs is reached. idx_t min_step = 4; - idx_t max_radius = 64; + idx_t max_radius = 16; idx_t min_pts = 512; // 8^3. idx_t min_blks = 4; // Results. std::map results; // block-size -> perf. - int n2big = 0, n2small = 0; + int n2big = 0, n2small = 0, n2far = 0; // Best so far. IdxTuple best_block; diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index c0b8004b..616bee96 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -1121,8 +1121,6 @@ namespace yask { void StencilContext::eval_auto_tuner(idx_t num_steps) { _at.steps_done += num_steps; - // Steps for pack tuners must be incremented - // separately for accurate counting. if (_use_pack_tuners) { for (auto& sp : stPacks) sp->getAT().eval(); @@ -1164,12 +1162,11 @@ namespace yask { // Temporarily disable halo exchange to tune intra-rank. enable_halo_exchange = false; - // Temporarily ignore step conditions to force eval - // of conditional bundles. - // NB: commented out because it affects perf, - // e.g., if packs A and B run in AAABAAAB sequence, - // perf may be different if run as ABABAB... - // check_step_conds = false; + // Temporarily ignore step conditions to force eval of conditional + // bundles. NB: may affect perf, e.g., if packs A and B run in + // AAABAAAB sequence, perf may be [very] different if run as + // ABABAB..., esp. w/temporal tiling. TODO: work around this. + check_step_conds = false; // Init tuners. reset_auto_tuner(true, verbose); From 86cd38f66584728cd0c49d31c86b66f815ee56c1 Mon Sep 17 00:00:00 2001 From: Chuck Yount Date: Mon, 10 Sep 2018 10:26:29 -0700 Subject: [PATCH 19/19] Update docs and change default radius for '3axis' example. --- docs/YASK-intro.pdf | Bin 704829 -> 694275 bytes src/kernel/Makefile | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/YASK-intro.pdf b/docs/YASK-intro.pdf index 584c1026ff72012cf46b97615286ba9bae36b48c..a4c56e863e789978b81c37fdaa7ea30deb2584b9 100644 GIT binary patch delta 422759 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%0D^(u_>{_va#BCF zGxRn;R7rN-74er8T~bC!b=4{9HKQ$yJR^wLDx^EJu8}U<_?~zmSl_R;{t%^mxV_=F z$}#CEPts#3o|;cl*_uq4!nmQ;NNCCs*?ny~9tRBy>{^HzUJIE+i-k+)5rFDARMxhm zd!!>>Y#Z^9uBeO`J@#VBbea_8k2#9hI5F?2m>s%ZBpDr5_rs(o|1ijPS`r{f67iz@ z&~V9RQ}^x2eON{5Tyi=jDf>AINvhE?$(3{Mv|V-g z2b2_vnEh8IX=)y;T|)Re9$>*G+Uw{t7#a3$QhzE5q@-)fDGJmgmLrS629&chV318_)d|d*cviXSz@b3t&YzM^&dHO2G=?Lc?X=<@XVq~_s zkYiz1;}*=!X9xZPJ{9~-E{VO@7*qUc(x^CdfC7nyj=QW|y^KpqE+7(8I8>)=>ReN7 z0{QBe#C6tp=J$3%<9Ry( znE*cTKi^^IP{y`ShFn6DTECt~zr9?aTkXHooMAopyq^64&#%~80MGZY(TfjAp>^!g zg*)2{%r2Kgy;ma**Fp*-O5%S9CP1ws=SpF7yC)h5-#%|ofV;fa_d2=PU0Q53INpC) zG0cLROe?E5+kW43{opk^k_+Oj{zLE*VqbS*KM<4@~NlBt@>JMk@l|QVP8=0{ejU z_hn80aF9zFK+k2?EWL%a6sh!HDDoagNw)&b84a=<`!Tr=> z;$;^NOMA+7L)3LUY-@%T*0KL9=J0Y4;_$}QpEso8N5bK~e7hzL%<2tnt?8n@jv6R{ z+%EiI#Sn~&#}HAUR1;Pn(yx3Xwr6Eld%AKs-&CI8(zb_9PomX<4oZlb&;w#Z$&`@H zU%vVWv@722!eu2kEzu{{FbT*o@z9Nr{P&%rT% zVwpN}n=%ULnqgesU@9d#F3;A%a3QzgNWPD_g?GUcK7nfLpg}vII7qp+8@1f5Uv?;e zP?)Y+olXyT{MEq6DX?s~dLP%{8NvCf7~-2*c>TJzdjR_wuj5xSSaV|Ro)5sMzKa$6 zs)@=egdfazO4JB*h&h_bOE3RKL#VW1lDI(y65QD+I4#G& zvXaWf`I_tqj;*iUCGBi8+sd&KOLNWy&nv^L#`a!=-@(D-q8)H+ZA*GX&<; zwa74&!I`ypL2-0Jb#&!&A3PN>q=Mr|91HuFwSV>4KOtLEs#>BpwMS z^B{A>2KM@d%MgGkticg-%3-d<5nh2yq6Z19&@M@`SdAf4Su!hQH{*Xk1yA5QFG#;P zWlk@6(d1GwwpYvIeQ|5Eto-ON%9VfPKQ4%Qfi$2a5C*5= zw1#%+0FRT4!paL6+U+!SjH8{vV#s|~GEzyxePZ8ShI2%4mo&z(!9G&Ka6zxL!b0YK z^nG=k5@BjCzo6kTu@fO`w(P6Yo73vz-Jr!p+zx;j=_r+9zjBK`BHD74BgQEwA-Zy0TWk55fv`5%&wW>rT+IOO#%J7@F2hE(hGBSa+!T~G z-uNbAIbH{tj{Lc{p1OsheDb(YF>MEk&kogO+u*5QhVReP^i1+kaQo}}<7CHM-eeqx z@FG*4&(d~%*`evBO3hob?Xb;OKHxvpt0e!cxmRuvk2Q;TKkGgTt1C;QJ#mpmLd5!` zLK^_16IX-63VvABuwD;Q1zec8ph*?%Vk6ku1kx?ano-#M<)MZyLt!-DwR2rcegW;w z$_Imz2m(3$v-qZGxVOgu<5S;&iyVck5Jjuo{<>MLOyFpeOtB63CVo?Qj#fL*e)$27 z-kek+rU(`iZpmVV7tb;K0B&hP^Hww$ycmFY$Dh-41!isBhj^rbC{LZ{M5c)#&g=K6 zW6$rEMnSl0ID@AG`y6(8is%8q z|G}vS5*hu$;%TToWs=RNnmaU;BU@o|Q~S-o)$P=A3+l%C?$vTeFxo2ZgJ47Un=JH-=EiBIRh!cpp~tVn_mks7di7xW{0Hg7Xg%ZYh0A;4>S68b2>u5!za`gnO{Lw^EkfGGV_8W7>%I{y zhJD>#mb0Y5r5VI_v*Me%F>QP}j(>zvIE)sWsZ>jPkI94Z7@lt*N7PD=|2vgM95&Hg(4_Fx6Z zMv4g*7dJ7zwA|`GtuSbJ!af8AxVf~b{kSK2t9A7|@XzHfTd})1V^F%$x#&T2$KT&> zUhxGwcCU3c2$WyxNO~p-JQ=S4canvIEE(+#B9!Sq2Ep@e(|E{(un*JdM&uygMc% z1x_Oc&F^OMFxTHY{h%g;-Gj&tuSFoZ8#pi|aq9pVp%<9q8Ke`THP zyaa9y-N;7Yg011}u3$lwrk;WYj&j`VfE)|qL`58l9@ag%{e!? zmr4!1+k(szBjY7I5CG5XH4JBOl+hT^EW0T^k2A_lu|v4CMHU;#XZQD$-e~cDi`am? zBKJm~_x1@sLk!Aas4O8UiY63kB(iM8RU)_7uyOqz^_px+t^nK3M;*u2@8`iq4uWl; zcey&ZxYnl#mQuJ)4FY_8eI>|t@5h(xz1n9189;>Y$lcLrSlIJFO{=2` z%--Y7u?3!UKC1*d`oPYQS~V7jN>Ci#bVi|HQr3(|N21x|)D=}uCu+3x916$H5xG&qergWO~kF|-dtGOHWbM@>At4=gmQ8X@&cewcs z?h}`R)ng2essKKpftT<1VFq$TxnrfIVb7@3H$A%o0I%=QGZ3Hti?EyA>#q-o@6W-o z;?MHn@8Zw(cX#_8fv&H;+~P@tk3GIehwq1{yKcX)+lQx{=cRas@6VULQF{UcK-c@> zU8jK`ap7SW;N$l8c1V?f>+|ue6Co~Z_WKp&bIa%J5ODR`Im(g6fL_hp-ML$^y6w~U zEoCb-`ZmlU@I(D<95J}GneSA_p$)nM8nj?EpARj=+*X<#b3LAE%=mt6fU0Gfr6sp1 zO>``FNM22*BRgWlFX?+M7Ob4_iIk!GJJp;W3!^7e)jHKY#c6uMM!D9L304Ia$820| zR{Oo!18{FlrQEHRsWibM<6OQ&J6-I5Z!9MRW?{Kn9NgH1^Q}85%%`#KrjJ$9oKt+2 zwm-9=@24O{x0ugb1Eqcb6CB&sTD3ita8m6)S_M~)Ig)^M*%J4&7c7taXAKThmHeXc z#;3un0h4CDC%vJ(s}n>|1ImM*qONj1aBFC02uNO*4G3T)U&<6K*Q#c>>qxjTc9dO_g5Hw4!*3KQw{|Zz8 z1TdDN`a6MZYY+T(1P$s`@v7ZA<)doUM>E}j#Bc3?l-cZA>YNe3fydG9UV1MUXYj`E z-ZOh(&YQpZ4gOYvkrp)gpqR-;a%aaUnqyk0dF*sjdk6dK8;>8To=^Hh^~2s{n9wZ_Ck_P zSRty^vB(h4c0z0<&Vj)?%*edJnbw6vwwx}i{fG+|i|9Mj6e_XaqoN_3c>3eV3b15P zUP4Stg_1enNm>DynfUs1sc;T@@=c@9=as`oGf7=gWyDnZry=)k2K|P?qj7_CxoUqB zo+=Z#a&gLQfwB^_F_NZovFk;Ea2V!$_FDmmyu$9d?WpS9R6S=3NvhUKT~AMaYZ4o^ z0X(FNJ6-Lnp+Zl+dD0A}q~TnD1@Kd$&Mu>l5wC{Pcy74z!C6UfKK;;muD#-)y-bF> z++1j>qm)Bap(EBUR))LD?DQwOdH8pM15f{ke1T&5a}sUR9#Myi}R#q2{RCd|iQMuNI-&{I4Rh zoI2yj_@Mw*Wcod($DGm14yy(cD>12|si-lj$xT;EmsJE;{Kr@g&?@YRFu@WD534Ox zS6nNqqv@z!lu_4I0M?b%9M#yuEA}hSlW9uQsS7HQE2uLft`(FHtl`0q>W{48=i;Bo|J%xz+g%06J z=O#t#CRHUNuts110t6pb)Q|p7jt&FQZb$_Z1%(cy`+wS~(Fw=TLH+{ z%xHclg*aUY{qA{)J)^HH?t80?&k+O1gP<-&g2YIqb8wKNK(=0TMO*D+&d|O^;*Xr~g*nVt2W%wOQE0X=_-Y zXv7rK%&D`Rp9znB=Ahdr^o_eT0}$H4ZJPeCF_M}5X_Kdfig8=^vkeSZ_Bwu*)!m)X z2-V^~ObF%R%Fpv;Z@SOnKy*7QVnDb$&Ot%IIUsfgrR&k_AQNgq1aObd?;VB*z2H_{ zb3;zU7 zK2mtf_nM%#F6pJNhW%zgdK6kJ@8ZvwKYC;eRPpqkbE2+|W6GJh$oq~R(#rAmHz;pJ zaQJBJV@{@FO9OJOXovM$&75RhmYX&s>{52d+I0mp&~O9tqwet;IgKg|0aC|Z2^mzG z7wrO}fme+FH4JIz3y_e4tka@R&u1>-S}sS`u0hKK0$nmx`2fEWT+tL3`eX}o`VD?G z3>)cNJ>0m`pll)LBFGu-Tusyz?^%2ZOh{NI7XZ-(5&Xxu z)Te-3z+S{Eb-(37Eb2>w~WMBWzsH)5wYtYjlU%f(gwc(Sr|A` z68BBfQoui*OpJPj`7pk>c73`?>W^mNa;$~>h`D2wlUjwH@pTxMDHw`1&oU-vSa(8S zOWj5CAjyi06Sw(Gs&6&kD!N9PV_=W!)h;QNv%u9cX9kG(1R&E0W;XWS4x2IOZ++=a zVS{J$>KlfaBFcR>s~KEV%e-~<&N+U1lvz|m{ri@S=2|Aq!9{)m)D%}nf(S@a4OzPO zRi6}Zr*f*zr8J)6^mI>tg{^nNd#as?zmNx2AXflb08(eYiTVWw?a9 zbT&!M=#YL9GGLanhz}5v&zb4jkLUn=p9CGq6kuIZBm&A6=qE|YByzXrOBmkrdb8c@ zOb}n{pDBJwMfe(jNRo&k#jk6msXzJN`j1IZP<$0>_6iIGxY35c;a2ovOsq_^o&3l{(~-?0Dz+YT<5=c z2ZW8C>3?~Y{(@xgVF zKtaJ`)R|#&f~vayK&*k0bjE6^R!Tl8^mc0%wxuiAEzN%|dDwup>)ifS+g`C(H#b)n zwVW?yENFMir||YV=lK`kbNB8{0W7}KpFe%O9D3Y$X1Y%{osoY5{~`y)ANn{O4r%Y@ zQUWu*F8!4d27M1RB9dJPyqok~r>44>yl{rmx+BE&jVGw$xA*XGGljskGaxy3M93{! z-o1pLP6r)E5Z>hdZ{&wm%Jfc^E+iu@oFFHc``+b<){X%O)F``AmW*>68$hSheA&=z zDD2lmfHh974rYzs6UVP8AdH7I*TyVtA|SwSl77p?MU8=RoNd&f(pUqt6%_o?*MZ!%OZzGxR}GPMT0 z?oS0cGnT*LZ9o(O?GA1-MF6YfI+S;TfY0hEbB65aMduw}=-U|u&E7^wN0mlZXu7uC ztEwKyv#t>{mYZxa!*Ar(cQQtOXq8^rkHN4otB3U+kziy^4<|K0;HVuw&%^!U=1+Ia zoC&X~3jaU>LxJKE4miP$ut%9DdCxyYLX36Dd*JDTC#=|$-F_EzCJVAb=c0Jz{)_V$M(*bZ31h3Pr;uya27;mg7fES=)>X3< zZ&4+PZ|>S9!8zato$X{O^?)bf=r}aP2d6-37nBxSlRVN7f336@<&tI?s;Bu)&j;ad z^ravD-Y!u*TjvvGNDeTMCNQ#%Cnw@NVF-JVS0|*~!zWu_yP=KU6M55j#F=m4im%i! z02>HNanM|YmWvdPesoCh#ek<-V4UqYvO~Ao#SbDiBIz3DFnJ}Ynb(#LU*3QEJS?(c>pcWg5ieZtIq&{;hY3)M%l(bF&yt0;V+&HH|pDFp`#nMG8IfH zK6+_(*LkNXckw*_?chZ{_wh+ielPot4aU->9OQIhthzBgH!X#^yVJxZz1{ZMeZRXs zG`Z~5z5yM=paTAVFS~vyK>2{x-=p2K7kxiy*MwH?S+!w*wSq2Xui^>jq8^yvA_R&QkRUH!Y1d}#gSh=b zQhi~yKD^TDK>Ou#z?jj{KtHvwtf0_6UMehgBGp0J#5NxWoJ3n!i_obm24xze@wy`w{?^y*OUq zIe@Rt7)Gcwtv~G`s^Lw*<(QUu%4o_n0vp#mT9e;%g8p^Cv|psC0+5pv5mfWVRVT}U z;0n>3!nx<9J`o`U!oB85uuWM5k(eL@|HvT1_J@;03c)7K!~=nnCYiA;t0oB@DQ z`#gs36vH(sO^{HD&_(JW;AH)w!pRts9EoLxvq=w3(`j?UlqtosfmM)72Uv$J!wm*q z(qlEj&BBiqV>N+#g+Aa^r459Nqtz5cG~t%RSq#bdWp5=70wqSY7-8zctq`pX&>h*Q z5`F^nrr9vgNEi9=j`&j|UFbDQUjX1$AwJ{o=zAl6V-QwCdVjD5E}vHnV)|r9BwArz z*eE2N0;Mp{l7LXNI@mk$-$FJCj$E`7x6o{nTct~l;HrdlVXTo>`@M!9nE`hGa0@4M z@K@nDMkM>T4m|r;bx@8d`xbRr>?C#pbm8uOc;W5?dg1Owxq&+a_DDCOok*<%>OMuP#%&aVMaXrZde2X5{LvLqkjbYP3k}#!=mE` z<%e>ZuLJcK96f;j!d`f=@&Li5hNdBe4Q;Z3MQydhOq^{*&i+y<;nuduhX z;Rigt_RZ>gt~mZmYsvFDJq)6_;c7oVjLAy_^3nGw+*9BI@_UrCWbJVvT%1GXMnsVK z8~%5|pZna}BRsaq?%Irc0rwj18ZwFZTJO3HlgnA$6`&^Ox&9y}mVs41lQ1sjSdXsa z5U*5<=8FM%3R$*C@^4NDJ|b%?AWs`V^s~deK&b7 zvH_zBVjn*!V*-Q8<}n=8oL+abVZ&Yp^;KM=bKY$$nc~``k$n{sv%)9UebwrUV<=xO zqGM5;1>kF3n4BJIfBHpV(o>aK9ie2~y*z1Rk40Q(Y8X*f(}O;r8`oW<89RL3HR0N_ z4QY=!0;XRys1r^Ht&ttO`xi#|L`SQo+c#&q)7R=~P8(;iqM~BXpx&s<*T>fT-J{dh z$J_S((yrV#cFU@+^@fVd(w?@g*~>_}IL+|&3lM{}eb=hy3D^91h`q_YG5TVeat)b< zBvHS<=Eva{#R$Q&-BOf(RuqUvc$S9yk41x01SW*fwo*17uE?1zHG2?-T~ zKEsY7LtD?1?sqMo=B?oPDa}zAD?*0uWnXqSTp+Tta%vQWAd!1qPE}rq1nEVohQ<@- zEg-X&q4F|6_;~qP{VJlrV*;PXpE6BZeF9o*WP;h|k7c^j#1)B`s6TsqY8uSp$EF>y zQ-)Jrbl;}kIRncJMPw2MvJ%zw)$u3WzM(b#Wb#)7JKzEdq&h{@#E|VhppbAp<*N>2 zEmy3WkXkIIte6|SKCG?~o_0OXRt=Q986YY_{Ir|Cc(`x3&>}%5{-V=l1T)|J^?1}v zTh-OkpaQcdC!S5276OEhaKwGUX5uFFn-5+6Z#CEocP(eJlbM>Yw=G&{Ek`52{(!>| zVz}L{_Mk!3Z;osu3f4iT@}DY$#cm&593?((VLnsY%HGl~9TWTd`W!Es%Sl_!-+*WB zY8IOMd3;J-{pD@DVFDhf-*#ff1X^fP*s&yPo*T!oEist-W(0}L#u~3q?(i0^*Z*v) zgBt0E*EI`$9k_2cX=XwzpA)fQj|@Cty_x&2^YY?w(wltEy_>hpTRlnEhd?g+Y<6#{ zJwbKH*;^7%@}rXli8Ba8)qJwN3IO}Sp1u1x8}Dc*J886R7(G3LbQqExSn~nHTckZG zB);;H;}9^&A!+%kW17)2j5F5`7+M_>#RoL#Vy+MMlnp`I15#n`x5&r0&{C<{kUp*`QUFZteQ;** zD#>KjgFp40V{Djl1Dr4isL>J#wB$*o5yz&Jahy{KoFfLalBsdAQmF`zVO&C_L4Wck z%!tlFx);E`+QIi#FY&T%xRN|N_CYqMn5eb3Pe`M{-P!P;Ylx}V;^B62F%1s|M@GmW$IL50*q9!TXjUFMxg7o;uDH24QOX z+5N_?@(;~tO~34ok&||kSKVh;eh4X1r_$1YUf^5tH0I>r|~TTFKmMOjtQ3#D0TshCO$0 zBj^=?-60WGpE=xAA^^W(>=@z=R%m(kATjew4OGji{c`QR{eu09ef_4@y6O7m=2Aukvz7U{a_VUlcp*I@E6MP}eDs0yS#lh_@*HNHKY*?nyY2HT{n6>=zV*e;!34LEu%|aV*b}2CAAf|n4nNfI7b=i zE#5!yBF!|}*)0=!*JO{2lB1gT&nL+nbsvo`+XS_;H<{ZdRL-T9h&7fR{rEbdN{c>edsUaKNgn;tiY8c`w`oD<-ZSNXl1) zsXtB)D}{~>3$e_s@l~ezD~qW*if)1LJs@kIX>J4QTv3!tcEEEFvN!SBVRYS~Lkf^8 z|Elfd+CzQaYAB@RK%-sFcPjCD*HG;7tD6ozwZQdn6#vqk1BzEE&wSAvrtN5d9bETJ z=^PF&HlSs!m}hPzh0gf3_F$!`wiE7irZlWcC%Wg}{K2GkPzjk!@d=p?=^J_`AQhiT z&J-oMs5u9LWq!~ggx?(kmmHdm5)RpD*yIme!(CHi0WbBeyv@VBUa*;d9KXAL zFM#DA)R59w%3K?Y++*$E!w*RwZyUF`1S8%K1l#fGhx_VnaCRe0DyM3BeT`Q_`UE5Q z8{sTI!R^Zp)nGuE2(Vnyva{5b2+`U0cmSDDB`Wr!Y0N0Wy5(70VD2hR5b`-`5;stI zu0F3>bP+C9XrQA&C2yp7 zKguRjtVa4_%1{K6YQZjWxIS40Wg6&|{818cwl95LBSP4u8&~7!U_C*s`{ua^FhI)a z9FTj=WX#Vt5p|1wO$V$1h-(vVQY*_05m&QzsBCxDwC1cBD3fgD57xyH7A|b^5~-6i zfmYNGMF>(Gm7LgD&dO3F5HX8Ho+XdAPf{0Jq-;>lH9K2;EaT(*6-9H z$VY%bVlyNrm#?K-R*XU3#BZhe4bV(&oK+Y)bDHohU3C8I>7_c+p%43+OGbOHXMveX zf^U3aL&QFVPpi@)M~*>}7cY9f>y`LtGW6_q-UP;L5u@blTX(cvscaRvHWzMcEePwNR)Pcq zL(bRiMlgqXu6xn-2p)M=`)JXAcs1^I@`r(BB*m~aSnm@(aays0nso@HM*aeWWBSST z$qI9PWATQ^`|E6eu6KQz2-tUAf0p~V+$|(uIGrpj-%~)(-`27Gycb*QQ@WvTKxg>% zq1VIxm!h^&XiC{3au<=Flrwh7(Xro=C`9ydXm=o+tz}+o=rb3(fN8I8~PkGl|N4ymY>7N=U+J1zTDh|1V9E-a<2Hn!T$cD z-ZA0dFqk}-?{vpul#z~`%t)Mq^`0XB3!L*n4V{g#+fui9r0Plp^va!EEyttI)1U8` znoUR@Q8i0Orbud$l0+=al=O5V3rMrfhCVQt0L9XB7@Oj1;iM8OMHy7DW^zSK)H2~p z%A?ZTWQ~jFHk?9)767OUTt;KW^^cmYm<)e>^`;=zDSW~2ryjSRTk z2mWS8)RtD-A{+Iv2rfJVR5)A<1k7E1eFpH!zHu1T2l9NYnq$&#Cq>vt+D$6%LVg>S zKP{qfs}l#k*G_B95`oUc(?--b#p>&|ul>BvrRjDEq>;c50swmq`D$}9m_dcVdIci> zmy(3COJVGQ$~n8RWZ|ul=vMHd(l?7vXKjx?ZDR;3eUTO;)eWB zJ+_uHPxE75{7oPEx%k$&PzNT4JaR-(i3mEKKQV7FwRTwC++;R-tuI&{0~nmdEOzT9 z=%9PK{3~Y!A0WNM*W$(}RP>3VAZz{nrnra`jW5bXTMT7I|g)GWNQ4=bKr32cQgReW- z!9UxfzX`c#{?zHGV4#ui$Bo$cl>x*qS^6?Pu<8Nt=Aj-vL#UO>dX=8fRA8wD_D3_R zmJW&a?E36QMe)TN`p zqB8On+8^P0abfNubvM4XsVxd zdapfO7@vurDWFj+qoYo1o@r82Axfm6QKD#HF*tpyj8nH9>*F}8C(mc+^MyqT=_;@4EW^ZR^1{6O&xuczFV2|s0zlr5qPk}}?MeRgu*a5yLLrm4-DN-{ z3*W>2?a(sm?lv6jMykaD_TkpN)Xsq>AP6c)Xd5NfkXVA^K2(DLtS|2ve9>6EnNh!B z&M80_N$ETWodm5+OyR-HHh(HcFh{+T5}`?%qcz?7kW+p#*U%+XJ`#I`Xl9CYh>2W+ z89?u-RE1G$ILmA?cZM2n13JU?d#x~-2Um6|haUC%OI7veGV+baRyNt@th}s^nOW)2 z%cTrK670^!HC;W);_JKA1pD>n8=}hEpX@w?q4!5fr#<+lrYcb?`5fc&X2k#%%xT?l zrV&nY%xW0~7m1Fd23j)Vgc`y+)&|y!HGuM0m=?I+XAQ;S{cOA`Ue!4;3-z<^}WA=2k5~|0&*soD4^%XgDkO#`P)l3z7M^-vAj_ zvD_VNmJfef6GCU`49sM*dxUB1krgE>Sq888Ala)%oUs}LZ&2MSI8%;<&%ZA`^jOCP zIrE)o+i)z~S*7%sIzFMdu|qGfWH9oxM>Y}_ofS`jhK^Tsrf0o(w$VI>UK)2@nY)j) z$@J~Dki-t;S3dNas1)p&UD(xNP5=t4<4o|Sja-MNs!OJGU`byxM$SnUp_*_?$>w@~ z`^tL!R-x9hjlBIdyh11WH#YY%HZMe?jcm#II1~zPg_3G*<7t_^MRvaO24I-w-7Ggm zZNoO>U(VFw`qhLgBfgn<4C{AA(5n-KPV@RmOmqjhuN=K@Pm1;{xt;sP766@Nd7ER# zVa0^=!T~eP3@bk8H}dN%wN50yyCQm2_U8*E6A(w%r)-nNWE>UB>C|Lk?33v^V!^X> zP6XctiZT0r0M!BcVMr#Iy3y%Xz4t%fK7eh^_k?*AWRyhg68Q`QGprWp$H?gNy}gnTM~O=lanjd=6Ic}(<0+ebwwh1@0QYS^cGH?`AMj;542_d-xY}xpJP&`@6gq<(;ASmYa z{I6h4z3B_t4otmFdV|$6mER&*rOh40T@Kn}{?ZzEM+e{VZUZ**q~cr%o~N$_B=PS($4o5R3uR=^p1!onS!N5Ss`^=^f)8?9 zgnGmfZs`iNt6?>`lTA|2M(U4|&3fv!wNmHubqkin#X~U~)1V3dYR>O)H*v496R9JK zJ^tW@$>VVf6|{)cuwAA{57KBT{ONaP<+6jgiX`2aSa`ZpOiRm~rEkMZij&HFheY{ZWBI=T>mY$Pf$z)6Yv zkr~l0R=eG>-#8wy$Zt!jo0OWIeJ$JRZGL28($?~YE75HG+7qEdJudMG7{fBykL1c! z=OtdASLQD7#|BtHEh}5L)@GcbEHLL`)#1BA`69w)I7qrsxtQyzS6L_1G;*@LtLmG> zmCwo5%hyjgZZT3bX3J2IJ!GNgEX!v>dtaGsscneAPXk=Ej`A1o?on&8Scn1};^Ss| z@@Yq8P#Eb)<{z5!r=l@O8W4F7h(TeQ8FwR(hv|3T3FywL%WjjssUzAgrjkJ)Z^=yf z;|c#<)`PLR%T`r+ku35xINH4CBvDR}W4HJDj>`XgJ?T+-^<0#igQ<;Q!bz)Azkoj{ z@!83BECy^Wj$Zd}H4?8|VJG~Suj75N@lqbZcPqLPp>yWg{tec2h&iA7a@O!E7WRkh ztT3;^)TP`$}5V@E(}w@kUViBgAZ6sWi>cRi--vc#OoJ6-Y# zr!l*M@u}KGo+?SGiDX`N_vSj!HM+-jd{Xa_K^FjvTIk+5OQ9FJwRjI^BEaEdLV zraWE7tf6II?IgdOozG>|{Pg$5EMPKF`zH@djQaFu-;LWcTkGnueM}fcj$wf2sqzAi z-T=U0?s--*SdAzf7}Q_BLiSOiG!QSr&<}phdEsx$f7<(dr9aC2sG0kigGXziy zGcyI9Y~|4J>A2kH-{tXo3%prM)zQujKl?-x?Y0`W?Y;8uvRx)oDIK<(%Hf%3cFky< zSLt^6KIU;x3Nwh`JxNpVVHYQ|(|H>jH;J3|rcz0`DlUdmZ`IXd6(Bmz+})J>lmoC} z#IcWx#d#GP<+#&WMUX9=G{p5ciKeBO91gyK^7F87B=9>KUy4d>k4g8Kr&G9Si;`Hz zEaQ-GYz!U@21lOVtq zg*N>s5IPcC2mg}C#dEu~u$*w4}=N;42JX1*HDcuei zt(tqzV-pD_ zg-+qrNClil1G|*ge491vQ5kTPFL4zlC5-b8e%_o}Lmoi7m*Gb~QZB;MP6>|gP}pO9 zE~T1?T3q(0%fCXJRK*mqKJ3!|G4DSaq;OQ0oOqT}D84(%IYBj1hw&Hrh2}vWNr6_1 zf+!f$7DMBX!$5n&HdAz5TDrrB-W?i>@Yj5^-&bv)_3&@(ZaH$6!pGIdgJW2DjiFT)G~|I zCKhm|Vz>jLEEIPDf1PCV?vjW~jC@USoqR9}DkL;HR_iA1Q2Ih+)6o{W;bKVzV9D8J za7~CYHPPq|zIc{a0sy9*tOoHcJyAaq8ZzM44Odg~6mkPCBSGQEl(H z91bmz@=H00bB2wI>Kx?QS;!Zp8>lLwmZJy1RP2jYcy_$*J+^q>t#;H-Te7!`vyO0B zu*JISTMp~I!dbQ!@?%JSBIf73s4>3x=$PuYmpG%{oG@6(^?z>7XXp(p8R zIoaMdH0?*th_d0yNtol#zqDa`vkJWI5zmsc2eUEoTp!}3TwNnI{I`T`pfnWx zn4-}2G^jEh!v#P9WSyofX`OXGytwVeu{Fb7SRW%l2BFQSPWu&F_1+8@%h_6IWsSFW zhe>LS3?_a}Uw2exU4IBP`9K+}9W`HnJ@aOBSuyFS}RXe&qHBZlmPd@aCh2$>k`NdyDgl;xJsCCiJPbXZ4k_!PT8% zqt2uL?v+n~ng8ZY=NMu8(iy%=C$5Co8*$lwv(3aC(0eB%Vlg~5*FzxiaFY}<9f~Ec z8Lkxo2yTqqxgl#uf8ooeuRGhv-Gwz>BG!`}vb7_s#M)<#P(xKScQ>BA-(RGpZcUQt z!q8cEbL<{+TCR{^>#jgqP%AjM>YXT$q;`^o?9hd^#9Bj~Vdv~0Ib>>HE7_ltHV5HH zb54Q#PNE(Pb{wEB5IIF@fl8dKH1dmLv7!tInBa|^pGz$x@tEw>)`7VTNo9X1@WXQb z5*d?VO^b3$_xoe?i^1oyW$0-m*P=1LYm3t&TTFn_D>yBTz0scHU;Q}lFmr@a#>?%a zYJvI|$(m1#unq*zDhDDm-}S;dZ6bQRqk>1^?@b5EGk$He`}GEb+#wjF zPYH_&fQ2o^8%>>qs(I_RswGBqj!Ls){c)k0a5YZQX^bw9Nm^(r=DQbUqnSgT+kH?U z5d9CZo&egXpf3$I5h}PZQsepw`Zt;-0LPRp9E4C*)-DErNLSV51bbbaj9gR<27I)2MVnv! z9WQe4{Xr(w@@WWLTx=e*kO!A0;zql}QE$q4f+cxe;IlDSmZK%G5H*GFZW0ve^Pmm2cruU+0l+~FVH!@ zej|7PKDdnE^5;*!w(94UcD653qJK)-N?HvSn(}yV#;Mu64f_RKmQ4e+#^x~@cbysH z_(tleEEBSN0GYPMQxAWLxU@zO;5WIICx#T0I2r0eW$@VnPZq@%^Rv)_eN?9gok17m zI>GkGtL==f!Dii4M2Tf1cZs|}(?@D!C0=D9SwPbR7+;j)7Yl@-WF$l5Ij(^y6mz}H7bo}egj zIWpdTk26Jf_z9?-Fx3p}jw%q+rU8d|M$%I>&PC$o7n&ZSWpltcR^>Ey{a*!3F3c6Z zM@)mvfgDf~79Nb9 zs$v~K#loDJ@#t2H7cq_;pNJZ=FGdJ0Di)AfDEQyDjPiD$1QATjpK^|R1MFALMTN|O zE1e~gDA9Wu!B(n|tM$Lq3y4 zLMY*zxNbZjf&=5%vNl`;d{m+_G;S0Xw|Gdkw-kFqmuUauMe-<##8B}vj5A5j%N(2X z!AET*^43b}904{CHe(LQOQ-FW9IGSkx&c-=Sz6QOS*Xbe6H2=C;5=?OnMd12RA8T{ zbp@pfI*~QT9)i)6!c&%!=_VM2$Fz@6CoW|OOgJ#vU|v8tCBSehaVSqzEv9ty51e0Z z`$Pr>{-a7ZhpH3*d}P$i^ZoguN<@y1$T=$}wq7t!WdKG7Lprhl135s(zsSW9oDeSr zISk__FN_-x9QMJj#=AQoGu~OctRFpqRt+HKZck)W?X<_&oHhP{X{p%#bhELRz3i$9 zmvwjdpxkFsAG&W+%g4b>!;xa+Y2!2FUE}G3EVTMD)6Rs61U;x|4_5>2OfQH?cFC+P z3#x?qgsiX)t`zxyvMH$_OGE75IP1k}_hA}6&+fA#?5Ta0@Q<6;#>iCkdOp0@0~#=m zI1NO<8KYFUx7#_HqcuW~s)3{BB+iQ&)GKrdVu+4BST-%dw+Pgf1!~-|AYVlmVAH~R zpiK$8^aZBAuD%YdX>H8x0TS!3!pACM;*mt?$PxC>N7y%i6NSRdi34mimg@D`y}u4V zXGz+L#AbbO|W1SR|lK{B=-496*dJ+q@$WJQ(8iU&a1c*z_2Gif4<^}bvIt%C+-q*zK}S|eVbO+}T;KiVu3jX6PhkTrIP?u6WiGk`lV_z!nV`&2 zmMb?X|Eb{oT2-=8h%G@er54pHHChX5QKo5EpgwIKvqg5XEVm0C#VPP!eABYBm(?&U zzg9&uYe5M+ZB=#JvzZE7$$2R}!$;2}D z&if4sQ~bYiN}`d*txZ^l0&~NDmg8~U1^x^@42F@M65{EN^2ylC|Mz0=2`l!BqiKk{ zsvL+igj~`+-83}k2>YS%^4WK-D-}-TE4872yY!m5Dw@Df5XPx%*luo((5()z{oH`i zuWB92Ts5w7z1#+FBQ^(>>qE9DMjj{&F7wku-%v zIL@jX#w-Lb+eMw}S=|m{-pgcB_oj|4t1~P-^g*MGfquK8Q|;zc%&Iz+;^WSmp;vWQp-MlGn~q!h*B^*&2br>LOLnqoj$QJU}M1>t(d%CZfkA!=E zINW3mz4s?0f#i4IL6T6=YrJ#dfboZ(zNO2TEJ4`^_oL{t#miSDdQc9UX#CQ6$9Nm3 z^y94zl)nQb#>GTXSkJ%2J1Mi(+nU+#xZK(2ltR^vxS^%k(8n32I#O zDiAFcYUoPR&=oLrg&Mj-4PBw%fEOQtaVV>@&(G9OS-*9W;9=!6U7x0uSD@3K+Hs`m zD}Tqd$+KSh;gKWg`#XNo+|l)$apNntEqw0ZH{VfSUdTI_JTiHI)~p2PgJl)9kM5kc zE-#Xv_*tyHVkNM!2=)UGYKAiL4W2ITBp6!eFa9tywJSN4cV@a zNMB@Q=7uspKR;T-X~or9q5`<^vE>*QS!p6uwZ6a#Fs6e=0$)0#h?$%- zJylid7Btc+G}4oQ&`4ij<*Y)^sz_CR6<123VO7HR$4f87gnu+9EHqT6p=$ zeV*9y@^Ug}R}Tf{daIY-h0NB@g+&^S7#Ay9#ThOYCuiz5PI~NBC0OPgjg-y>J?{?k zz1J464W@sRiW=i~r~T%JLMxgT7A6hFdU7JiEKu`o$d>}}4Bqq)vb?;5m%?N;y@fM5^`-q9r@T3_Hwo*zGPdtxAxj0;WP7g^)!tb$6UoVD`t$ z{43P*FBYSJ905=zFv{{+S8XjFiy#x>CW45rJ?8WXW|oJ^OqMw&nk-eOomULH%NRBs z#z#lc13ULM&tCB0%{^t+u}$qC9bI_i*s>Vgp4ctCoLg3P@6`{yIUYTvFUiRaBz_Yu zD_M>2d&lqx0xNvNRG_wlOt}?!%V-21L+I2^WEF&e8xO$I4@V#5QC_I9VX_usa?@pR zq*yKr=0)<#YvpmS328NvaV0b4X|9&EX^|O)jV1FjE;=F|WmkrlruRjb#=6V5`THaN z*&9kWl1#GUF+aI70Dot6EStg><}o#{%>tdL`}{z*F4q`U2#@19q* z+`X)5i+fYi_3j--ce?K`Qb{ix>ykQ2I?<9x@+&?$;8jSw+oW2NH`3Vl`vrD(OZ)40 zJYWo8=U9u1zH{Kko+Yi1FFx`#s{8UjoXI(VI*gCM_k;iF-lBgp=f^)mkIZ{?qTXCL z@yx=dH>_W>FzgL`OMd;(q0j3|Pc$#Oc6ryz3`dc#bdR|woc|1ZD~~h;tZdnyk}dy( z>{<`U5nm&6oa|I0N}Iwl3lIw#h8J_7(*!b@7AX}4c3}ATrWkC0FqLUbmT_!wW*e!gk(1kKG`GPJ2|hhpfUB@w z`4t6XI$u~{XD07bvWbuLwUn+s{#7V$nmy|`*WdV3)9j`r(ZbR@S6+EXSz+`DJNLoA zw9lMAqj}DUk8sB{|hO}gVf zZ$8q;dOcw!4ps3c)QsISFG%7%afir>m7?60}ftXW_NvtogEA<25P%t1{j&WcVuQLF>_K1|HVSXf2Es@Z@g>#%J|J&#-?AR zT2zgrIvP&|$iH^36sIkJCH(KsW%2J5J8HCYON}`>h}}to3Qyo{mhiNZ7ZuKQ=Xb?7 zqOB6E@`4)XeQGJ6tBzM@@l(|K+#-IyFi&Y$=V{Bi)%bFr1B(jwKIOEfEmX$ zG40sQmfB@S42i{Jt=KFs5=C*T4I5V_`Eir2PuSQ@nOQ?+^e>hfn3=+Y%)rtnBn%dP zV5~H{|C5yr;TZZJx<`09k)3d|eTjS75800r53yYg+1SSL$FaO*lm`{ii&r|u;lC&0 zCa0_~>eKbEcquA><%^^mNk=-bOYPEfzF$)PVn{9&i{!atr`#v5lx3L+Q1oKBvW#6I zJ1=-f;&>#<*nWus)ri`r4yZhK{u1Jo?%%9Trl!dTlqh+UJy;p^Nt!sHrHS)d9cnKm zXbfQLkqipuBn(h5SL-@P4by}&5%7pvV!OoQfk>D?o;Y=XB=N=D=uUL6@bb`LVm-T= z>r58kgokHhRJiw}b{5+tTkftZXXuQJ5GKGkUfawdbh+SX&x$wV_vY#T zX4J{9V7IV*JJ$^x7dW~dg^U)O(?B?3Kl^XS=U)nbvDkWhiQ)5IZ$#{~z2{T;6l(bcUStG32ikq;%Lxe(&XcpysiXzgc z#rJBQHIbV78g2{;z~r+)G#%t4V`TD?F|-Uf#+*;y8y}Od5!;ynbQ6mAnoK^aK?g~* z!5ZoanxA}?21OnX0=Gt|NHm)jsI}`-CI?bVH^)a_a@V>Nl&=%6PBL5=U5=RzD444w zrr5=QkYY}a)fX=yBaGwn#$R-tpL2^=kDN>{W*!Q46qRqCbLT6o`<9}ths#Qe`X|lU z-=mIysc+Ncdi|6`b3baF-MiuHB@bWip5zHcj@~2gx(2jMB%cKG1yt+6@aOx1eC>*!U$-NAAE|Pf76L{<^0eAf3``=$exhZM zIjkzV&6(<3+om=>x^&Ua(`>s3+xDzE^1(CL-ah9i&F$-3{@2gh@i+c)W?NfXLAB^j zyw-4;@se@;=x>`QB)*lG@gnxYD~A7n%zepU%|w|m^_kAxwp=!bavUZ8yx=9M#&LCKk1IF)0HkCURhV7x(4DM;2{)p}D0UmHn;z;4F3SlkQ-05d}26$1YxqA#$b(@KmlnscMQqoPx=xKB(B6Q``(`BkPnQBcowf1CO zhOHhlj@x>ST!ai4Aw$nZhLgy!SxN?=krUzLbV`YxgW~fJcZSRK(YvuNtEuP>hVzZcq~vA#XX=O59q@K(DHyj zJn&f$OTN@|UG{n1cUqh^HB)7lFJe$!f~IeDWI~IKi)NceK#$LV3Rish(DReWRo^mq z-Ji#*i;k=|P8df~?9}^zeG=V%$DMm^Z2Gdh$5vDgcW_|f$f5ea5@Df|cIAx)_YXC2Pv4(^|Et$+GVxSKCqEV2b}mza z9?;7srA;oWEWM|+{yl2b%tG|vNMkvcL@inH^Kki|++n}?D`4|Q`M*gpbR8D_*F z_&EJ*__*+Yh5oHFQdwWg#;DF?6iKn9e~SSWVxZ?(dXVBKNUbAC{aX;mn1aN=<&z5t zLP!dNu>@h0aS%>I*7$hc*krU%acsxFf)UbjB>Y>_$K|`2=;(op^L^g<^L?IS7^gZP znWK(5+S~oj+}x~=dpBbjIKAN)SM*%df@wqRxAl8}_gs7ToF5Gs$BfgVz+q3#nBu~# z8kaUsMNuT(`tr=Cw!)%{q2IARIhijV8GNQ5WAGrx(jpw+{AjD5#`*ldjXut0m#3uh z4utITzaGoZ0CQkzrHT#1M3~jA9n#&PY(7QVBqy*IhQ$YSXpXQCluuZFCh!pen^kK2 zUN91W><+T7^C3^10A+-uurH@zKWwLr(4O3CZihG9DI>H~2XBYECAktioWf4#HK8#; zD)-PQ*cG_I!=5+vlx*O~NEyH0%nhQs?vV|Qlpy+j{GvfmFto6B)=y>)4$dE3^2Af@ z_E|d%N{VMr9C`{uqfT)uxfW8^(x~C9)Oog%3Lr{Zr&b09x+a%GXFqsa{6W|?nMDe3 z95u4oGRCu^&lT`@Vr?+2qW01i@FD(`1}qXY_s%jO>Izr zeG63If@zU3>oaV2W_HO*RdyXS6?`lPg|T|9*W{E}>K}w%IY*vtam{P5*#-xN;In7* z`7SJ&XN*qP2U-gu_Y8FKtKfNVC#ic(CA~d@j-D;qJKZIz=bi_l@z6k+I4?zw<9?pGgFXVAhrvK&T?y_tPczF z=ue8SDOEETl{L@z`|Tg09}&5#&mDEy_G%eLMMZ08bJxP;*?(aF_Bi%$8Vc!ujYaH# zqPG=JK~8%FWwH@_87j9|Xu5W}wu0S?$b(T(7^chi!E_lJEfXXJvt`|CKiLWm9L^2y zh_PprhquTabvzt(JY3T8a9~>;*d)gjp;!+G2&Wq2`{x;A(*BYbdE9h70&m&l-^{KE zUV!5fuD4y(@sL5Ss`4&#tfZcQZZ$uAc!Snmm^UshF{`DgFeF_!Ex$6NdN`>Ia5W{K*ilg(qiF8N6ut z2QDKyoJ!tGNiU0#Odx%m6+z6T6@0TbwG|#fWLv)}Xp}@evL#2~tcf>&i{BxTFCsZ8 zEOzlDcn7H-w;p_yig0*x&DDd0qSuV4QUJ5C7}wD7jZuS4V#-<=HIsVr3T|qEMWY9z zQrz*G6nA`P)cotnbk69)-o@Oyl;SkRl(mqu=2O<(C?aq&MPHP+&x~_sRtCd(rm}r0~t_)Hx1d~fh zw&od6Ks^ZoFhQ>s@TLq)wO;^vK%|H31*JkVgnC^0T85KyM<>Ow({g?paqE#?a6L}A z9w%InGwd4Wd{f7_T`7ey7cnYwp)R;k*MZ?z%u1-MfSl3=wAMv`h!VLz7iCO%aSp(Z z7sKYDfh#gHDNnC6oV?C3TxS@rGYr=mhU*N6GpOZfBwLFa@a7EaVlpTMGLk7xhDuJ6 zVOD6(h3+6%k8@|NI9GYssSACLD-{y-Rni?#A<8EAAx)7w?2hUZm2Qvq(31<} zrU|ShE%N()?(_{%Rr&h#JL!P5+pGq{jaPMEGm)VBgo^!Js@$ zgQ2?f9={fAPGbV7TMtikRJ*FZ6aB4@MpvV^)h|2i72a3RskTwYYg>v6Z7C|WS%arG zszMuS@`LDY=^@?H%@D0&|Iq}y_3*C)!*9`?EI?BF$+ZFi|`aO>!~!50EBlJe%%gYS{m7$t z-SJa)jPbeg9I8WZ{NE(wS>y9JUw!q>SKfSs^dO9XUjA0BH&SC=q32h!wZ6*iscegH zO7>jOGS4^V?HMZVKL}a6sAx9tC>QMg%3g%2IWHDIV9x44SSovog72iYea3VCKGh3# zclyFcL~_H@=#IqsjR@PJV<692d-k%Zd$J&8-3rtIyVcT>yY zVC$iOl`p*a%ni59ez>)Lean5j*}7ftT{>fSL6K1^{C#76hw)qElNXLouTAXC3%|xd zHL4e?QADS!_1HviQn(`HlI)pWYj}FbjBHXj7g#qR)EzvsWla$jx7RFsv!gW2exZMN+myma&QhaSED_Bjt5y==I(1?K^dTmR77(q2?p zG4wRMIXB}E&ph{P6Jth4ZXM2FJm$AEW4uo?YCytp@Ri~iHsr$Z9>TVD(vunc?2hlN;^q_6TJAl z*;3k-_LW%@!3HKIWXmAP@B*5_ty4?d#?5=Mb#So%r=4R+?ibN%yg#^a7=SB(GAb%bTLi%v&gQ`7evkEx){Sjj+n!o!wjB zSLxj<47fLBZzfBD0;-&U4hky= z?ZG-m)qEW(P;^k|`()ga&P0O}&>A``m)xFV&8K@U7n}5~XQ*dAqZb0~Znj$fi)sdH z1PNl91buob3_HPwa5NlS{BWdAT= zPFn{2+#89vxBqs!+WA)R_8SX-3RV?;yXN+7wUzL$ z(-#REpXr%q(71q$vsSn`LCM`|D{h#K++oHIlZStGFX|uFqh&fQB`0$>tJg|ZB~yMP z6YT&okl_?ErQvw-S8#ap&cOLS^wFel#0dg5sIypjjitJjQBik)6+drq(PJxiKR4(K zr_Y_!^0U^#?XB%^yu`kqxVB?Uth8w6L~aU+5R=IMdaNsvd2(#AVmW_x~3X6is zC@zIn=!mE)b|j}mu@uR3FUv)a34>!V0CT_D;d0bF);KsuBsn8w9du@1Byq_OX@>bQ z%xkPYjFsSjxUG@B(W9g|2*+q8fR2-1W1U&%KBO_oA$4h`hP3 zAtLi1a6RM)-$xy`y>DT;Ysk}}F=%)=iG78x$pEei!%cBTOGjSLE2S%iT%lCQOhnaO zHD4`OOB0nz>P)5;HFAx7qu405Dznr$>fqu+hZI+TIa;?pVmO(`NV0^93^iSm6mFb$Zk&?XOh}O>$i@mWU=XuTlC;8F zlfYUPDA63gs|Me-)@``kASpz`l4ug8C;5nPWww~koWZA?26h$A$oR|YriqP{O`TZ! zM?LhxwtkDNS?_w>4i_9|rFbRlL$XL~zFoe5?;Bo|A%^EQS;c2~s{+TfikZ12WW_3R zTB{+DsW*f&8>@G4v8=n(KuN3v?X3(}Mk|Vjs^n-IC3nT8^iI?tKT0)3#qCgzk*HLP zx=I95A^}P=0%J@ll^TV@t8h0_iDfiLW71$Mg-czed!-2=b%QswU|ykBb3u#FaQUsegx?)M-84H{L&hxs=LYh-9{ zN4tR$>U^4`?nb+)D`;Q!VD&UQTCG*7XdzS@qAtX0Nll4LB@xYBUA(S??rz<~x@kI@ zJgwymNKS&A;S0rsEA1QS10*Kq@JXkC5jc^4-!PfX@;ya|`^J(*vuMs6(;Iez|61g4 zr5Yk%jmhRDYi4AkEhV`_ zbZ&BKba7I-ZKQFSd6;!%a8In(&8)29QBS$z6QD8g&iUbevffh`U)IS z#(J&+UOvPJ4-&;}5`eTxT9u5GZ&<*TcjE#k)et7L1#rpu4}2e7e~f3P>=U?3@mib< z*V-+|Sj{_&aof8lx9iYu%+Q2?*u?m*IWJ8s9B7Y^CeJl}m7{_;HnJjtp$Kn$5)Wl> z&=<_{NkdA9Jki{j(l*SZWxKGcS-&P@c-(!2gJ}f0Fb(#&^GSh8w`jv43@tU0pPU3WbI?9{Hr#eze zYHC_}Vnpv|iGLC@-)~TWMj<=7-2c63WwF92xQFA7bL5==4Y9JZcP#4pJ^K|Kjt*E+ zXwF?aVD6&VUhMNmiTUq@+P_7Mt3Msbq;+gf%dX28FIts<8zN{KwJ4Xw4o#8hZg=uy z(jrv~T#d1`P3&1o_(n66$H+a@!stn?orR`%$5;n|eLr2eh@E@@%Rs_pUh z=4D;h=DK?hx~u$uDUyDdH8tECvFzywW~8LVD`7eA@Gxy_;|fE<(nW0i70GN0>rvFb zduKj!^C*<`WYEgnxD%l5kjqu&I_Uw^y%EIJM?)g|P(`24PpJt@M~bk$`oMbY!1kfZ zNkr^F$hV?uG%|Yf^44AT^}DuSUNd9TeM3J=pG-`+su#_Ro>I{ugx>Kxb6hPO&JErjWyc)8^LWzI=keIJ$>8Dw|I8m!>qt(vzg%t-#3_1*+lV9m|@)D>tqQ zP!0brTltKCKTQ1f^c0N@p6F9vLu}CH;zwOnY4mwwn+^?c&v~vK%;ifT+~JVRPq&a| zqChW)5XqwiOI6?uROw)A1)&h-|01WeOBXM2Ku-~eZy#}RoxKdy>w?sKuR{{w7lhNY z0U^Z(LjlODo7VW3<8S06>VrK!7qn@(>iu(`r`LEP^_GCfI8-7$I}J% zR<|g*LD1sOIH$zXJ1ZRl9aE-$9~z#1=* zXc0tzl6{mocrp&hx)XKgeDmO#@i7uEA~Yf*x`PF&w1swqENj#{D;_L|x|ICuy*uz7 zKL!n!tXi??CAj)!uiGwGy#&@miV;XjE224Va1qS8K!;A!2A9BGbjOQ{Eb|lWH;j-|KD)^h z2aC&m(#Pj%IQZ9^;MB#?UbkX?%Z-y3BN}HjN`3b3wQThLwsG3Doofs4P1D9cko4#S zWS5u+L;uxKNbBBgv-NX>YMI(Pa(2tWtWc>KBp-vr+|dt0PoG4`M90X5kw|YU)P%`@ z*r+yZaY)|c+r5w;gxXpY3P~F^N;^2l8yxQy-4|_eo>@@ZjbGA&(nj-RHNnw%A#Ht( zIm{%aZEBQu@au3$+NO}SO(AKU_%a5uX(q=jR<{JdB6ES8{@LvB1TIdB2#LEM;sQtD z3)x@H6U~!~H)hPrdFL5i$~J+te>~cMWnSh+d6ZiJ;Oxx6Owl%V`;3yB@64M_a_M~e zATps=ZkyaYa4^d~VPh?3aW{N4_;@6e!a0K>&3Lc*l*uN@tZidM0ji7m%Qgkp(0J<=R$hT7>A`_u=C2e*{Ow>oqrcwUAok$&t`5BtFRRJV}> z2drpqDE_d2^@bti@?P&m5=idC!iUm^5AWNhd;9q6nB+I641Hx_#(immM-$x$?OiMM zh&wW!x@Z@DxA?yLiujT0VaZc})Z>%2EqLFmBC#nlKC)Nj-I1S1`XiOd z#6){}q>{>4o|h}8nDmyBNtX1a$d;Ls#>|&gYl0`C)jI-vFgP876F(p_7JH0lRQ~Bi z175t)Ngp?rlkalAu~S>uiv#Xj+|8KwQRT2_CXRmYAEQSO9ns^XOk=lyl>uC1LeEp zMk!OFx39s5GFcBT1EEHw(n;wWWKb})4m{R$I(?$M!aG(F=DV^3J|F_(snAIkbkn;p zGY8)P(z|RoTSTJ|A6`d)n)y6<9vjVV;s+8-CqVn2j!N87538rCiQOJkmYS+0mc>yJ zVwqwRi>yuH_2U!M;^N~p*7SfF>jhCqMsNWLL{7n-EdKULh=|a_Dmo$C(fZl`Jzpv? zr_S%0SsrVTinqrN$Z7XrbJCBMSlbx;PP{FzfDY|4IX%M}8?(rNni~~s@7yBYWsR^H z6?}2l=Y&Khr92EJ`Gw@r#ZVFjb#$lRAzCJ!P6!=}#_=7qX_-ukks@M-rVEELct}%p1O3G+%k=f}Y z$Osr^ePCmd`oIFp;P`ms=K4*|?%!^%PoLlY`UiD)4JhxrZr)2Zy~~FT+T6ca*UHve zQ6;Th&24#|qV7!3Z#%Jf*(jRx=-Z1X^_tXNN*h-Ez?>O>BRWh;mRgL&!<;1@a+|le zYU6dOz1XAK?c%htri9AY-R|zmzY&vU`i6WAdg2i%)@@L0wPp%tO2W&)iE;ih_ZUu) zC~$9v4rGM6=~rozQCEe>uCINwV$#^5m6OH{CCR6+;$tToSQ0*3_s-i}H@&wIsMG+J zCGrvIlO!R3r#lww^>Hd&91Tk>Q)vckM)PF`Qdz{MW@RQ*aOcrVhYLtY0ci^-4hif%*5_bJkO!KiBS?WjXe z4)XhdaWW!wK7E_2_?fS8U*qAoyTNU^i#~_DAJYwR_u{SY`oEr-P5 zT7%YtP*#fB91(7j5^8Z~O_P==~R%NLGX zoKe+UMRo9dZDy?gxQsQtP{C3is1KA&6a`8Lmb)!bL|(GsmZ1N(MAv`k!80nEm+DUi z`?$8>BifFgQ+V)c*}FFodfrsJHvjs6%(~2Id~jCF4Ic&crP7L0-r=@^iY$#f!=NpM zGqd*Jq_VX_W!TcBc)V~OocuV{9nR}2Yb@M6Z$ zoRfJg#kJY8SEW<)Hou4ska|L?Qc)V}<~F9t!uFaY)FRfvOXH3Hq6KKo+tS2;OH`9$ zJ#IOzt;Ja$dS1*kfbtv={x+mAr+EjIMdt1f+TSSQ>HexLTtQN&olC|K)fRNf8u^eY zM^n}44;*N=ZD(v%xOMm!bVi_i&{Qh~J?lR%O&6y)Mxo?28t9CfsJ<5Gd6loBvgLWu z*-(1`mc$tg9hYb^6P(1;&TO84CNtQT%fDbf)?T^7uGT#LO!bO6&&1;~_$B-@9?Ryk z2iPb!M;^sav1+!CeTQwhH|~L>c};!`TK5(5QKUyHZoQ6DgHcu#%^@A(4B(%D0Uj?q zEn!%&aQ(DFrzMfDXt<2i*jMZRX?hJOy-UBEUGezu+d0-@5FvDeNHhX}wRY=~#Ujg5 zRvnhD>RQ~k%J?<0Ho*=}57z)MqIsL3fRJckc(5o=#6dVw>eP^gKgG&(Pwd=j-1*rt ztgxMI6xA-q^YN&6COtcC>xjb}x3e;~iCa6!)g<;yD|TCvB`GPA7-B7v21BGJR%)R_ z7NA}g7A8k?S;v2^`alZ~>-C{&bvRI`=Fp4~Ad@MJ_w2fRUDzY7S zV<*@jr?;ASeT$1AKHgCi~dPlv}K>1ygXz*ejIn2I{V%ElZK3a zY|C96-9w$ecjPmni#_kf&+fSg*0la}+{dUI5i zN@drFA%h<3NPd;oYLsfR%NuhR#MRbgJk%&3%xk_Sq^~^QAUDb)aA;XTYspDNEE_&w zvU&UJ#S8TGexG}P=)?=y%D%pOG;hO%^&iZBDTDYvU<1RBe13(U7!aJ#Znkk%_>**nIclAeWNK za`*lFez(1F{4=a)$4>g$Njw&pKk9oveC>NP)-GRAB_CLS)skIg{wI9LzGKJmFkA{% z>63>xY3ZSlftkR3laFiGqglmeU*f+$r>NaFS_A0k{oTr;2;r>Hlf)3=g*lfNa4 z8tUmm+4lPxIpcjkN;tv)oit7UMU*=W^>oKZ>ElhN^mr{wik9GtNKbd9MChYbNhlT^ zTD~{zY%HjM#-sW=C;}J!4R{IRmjPr4ESH;ZlcS|n5!{aX;JG<9*dv3WQWcCWc|QX` zHDfSVeRTj_365o_kNwWhkjXXgPkr*uO%b21dGWc`vzJi2Qu^{E?|r#%!EfV~NzAwP z_cLE$vTA(I@TpS=kC^f9!(YsPf5DUqj~9qF=if_zv%$kfqIi_+)`Y2|q7q|~J}#)x z=zv1c@`~s&ef?*Ja;GQk3+08z`~zPBAm&R1<{>=B$kt=zml#{0KYW})#CDt?rwcys z)qBZUJA3iDrMTyt^2+8|du`O!6DP5qy~|d!yI5zMOuB7+mu&Ok3j;r_ zwpgrx2BPD(FJCipQ~R?Y4onsWNO=GX|Hw&Cj{8eGFqHwLxOlpY7Ko9NY1sNDHA;B~KYuj{(*bveaGmm4_UmCp2Oa1uNE z!Q6&|c3RknpZ`8sx<9MyMtzxTVpH+K>H*IuCB zn)RYTfDBup-r#e?Q&Mbk;Wk@%992`3DNT)_1&@rJ4;wpW-976TKe5Kny)Ww{y(&%l3-6oX z=zXuz-~Ph;rrzj%U;VDu=OUlfe8=v8_Z@Sya9sZZeYs%(+2PCQ`WnM}Nj9mX(fjIE zDr65cpc}pKZ@jVc7_T<H!81b%Sm{8o!4w(LC?*H&M_IvcY4SN{-`3K*R_#xc;A>YFAwM%Bb|Ne_L z@}U(e?Dxad+0}Db*gT!*cE-?tO=U`;STwg7@X+&IIeV>mrSD#2Lr-1o-q zpR@G!Y2*J#{Vj$U#dPhKzE^a%`MG&F`(6?nj=+ko z_wcX$)_F&c`4LX}7OTPezRH$QBqL2r*FE>as@GSu$*Y>~=rkq^olvXm$xR3BB2l4J*zHRumJvfe?;1h1}dq4!V&)3N0 z^Z8B4iegcT+aPHan+dKsYiuldsP0}n_g8MHktlXE?tt__JRC!RryW=csGmoS<{z>_ z;Q{4m^Lm*WQn)!W5oZgZWeMj>hMv+oJnq6y4_32u)(<~(=COAcZuP#&zPlt6OeiK0JO#{uKQNXf6vp?z2yB0mm@SP9TX}f>!9yFrUu0c>iq*4C5a<{VOUAmV zk8j^~Kl3?I zsE=C%^&1%!trl+pl6oLn=#FqJy%mDQTpYSZ*{cvm(aM{F2@+%m2btlUSB)84A5>Fd zB&q2cJM`ypcK5-%>Zb1~9qDCc0HC28Nk3rY( z{)K(ZmOvjc`pm(w{YQ5kIeNe|4uY1meMe#!Hh{u^3-4Jv@%YYzr`!KFGq{dyh|mMb zK!f;h3X&uT^gwYzH9rDI;Z>7=h;33eLo#qWZ#)o18nW5<<(4fZeKWE6E`aX);pHe0 z6_FK!j?=AIBdu1(ldZLy! zf0C2yx>1H2^&3_(Z#vDgX4Tb^#G@<>`<`HbPfL~jt1vT$tn*($QAR1%vaFJD9VkT+ z<}Y10{{RI?=!^@fV%N5k5~;GGFo;9W6dth9tTRspLt(v>s$NT+}P4TLXxH zRXT-IXp*{D@wMu;xLK77WBASKS@;0dO{4;Jz?Oy|@Eurrge0w^_cXi-Wm-!6b8p3K zlwTSz##S!F|M{F!-N_RDRuAiaAC(0;VQiZ<{4Q+s=Mx*Vrex zP<*>D^wq81_KCM<`wr5IHLyBd%rL@#UD^6oC-!W;aN@HaKL))fJqhL1f}6};t1_9w z^%xUgcfx>?!YX)1w-IcRf_%v>{0HYKFprFf4&Xr(pb5c`ZoxfI{>FU!7d(SA*b)2! z8zohGm#z30$!9%}9^mC?pUVi!&&U6}xb=$Fng9l$kdP8%godLk8R?=rat~>L0YUIe zrABsuI$e6>;hIf&C~ED`IBHCPUGe6(8@7JE zFY4Vh6J`$jXzg3W*p=PvT9?&RYdaQYnKNFTIA?Ru_eTsVDJXBA+HuO=@6>Yc93Zi7 zB7%f{1yo$i(lrt^xI4juyTf2X10=Y+dq{9U5ZoOS+}$;}ySuvvcb6aTz3;vIWPSfy z#qM3ZtLs#cF>}sLx1=g$GFCP8K%?BcemZz&KT_x_`xlm_(93)SBYD>P;&jh1u83tt z-+64~Pa-~AM7HUUQHf2738q7?;1p2}cYg-Ho}A+a{BZP4CtbEb>5H`Yj0F*bzdJREuEt^92)>x#zYb^FVe~a(R34rq11= z&@T1VyNA%8tgaqh1lk$v9_wevm&Gs~nX1WKu*c{oBk?2$5s_p{rsMG`wI(X=PqqWa zUr85JMSNj}WG32elSo`*dcxM$PE>w(T^-yWUN2c*`w`=FJl5`~2zR1h70T6;cw{iQ5_s4PTyk@uSaE}?3MXOn@E+xJn_L0fLYVQU;)F(2NPO3?4bi07 zA1t_jzw?NPc!IcvU0q@D7)xUj7$c}HZ$*Hj6$=cL9PnhOq)x6q1 z$9Da!9HT0%LJ2*xtsEU(%6l0FL@k7C-o^Dp`PBwb2Jq%u&gP{H+6@F#U_o=;%5nGb zy$&wS4Um>^N4R)Mb@X&gYasp%l^`4s`9v6cQwkV~Q1Lq<3fq3wKk4tWJyl}~7$n>8 zBeD6}Jz+2JWv8~BGpK}FP?8_aZlqphl}=comGLNPGBbB6BCv20GG?x6A;~htx}w(> z#~jz8r_j+1yJDJ5IL62Vu$)Ow8ZYdbYFvcNAH&DCfAi)2^6i#4%N}P;FCM=^YAJYefw$&2*CWYPfz*Ft(Oo+|n4%qfBG1xAe z<2jV&jt*j3s{oO1q?57dGfJx$DW3#Lfy9OeTs@*s05fe)04J^InNG0OGpSxwwpMu9 zY1cbpZ3!dI6;qc86#acZsA`}kG*yrM2n*~IW0Kf3JB_z%37iyo_caB=&Uv0JO{J9v zyb!7eFH##4_^r6QM?tsqpd|RntAN@@FhYs9 zEZ<-Wxn*rzHw1q}7z^q2kudS5WjTV`1@4@CnZU%v2nYynD#Grfa%;cLLKBh+pGyFI zl=NM^YE6XFi*dxPzp;T=F>J0irkQ8-R&YTIm04#7 z-BmM&XVB^cl_2Y63}`hq_wcDkvjHN<)AC%fz#lBO)vpNV9 z^f1XB_R6q%hOoKLp@v^{V#!*>)no{p!P{06V1_JZ=f?v0@Dx}gmm0S%fe zS$M8gC{^$(NpMOTSCM9wR`b&bJkMH4l^rmfk}v){Bk3s_9G7q4PVDMDi6T4prL0fg z{i$GJb)+1b_0;vVy~y6jF-PbVRmh+siW;AfODU|J~*Xur{( zonIbc4A{3skt56}w%F6b$xVLT0i=>%91!0qTtZH@yFD)2Myg8p|~l-^3y{3$DSN1d3Hg> zd8X!L94ogsfR=2d2IOz9RQ1CO_j$a zBAGvma*B1@FWMngXZr@u)KBvrTGTJrH{J?qG!6!c6b~^pISpB#c(thx%sG^4W_3Qt zjh}Xwi>NqM#ubG`pAX!w1$ag>`)vS8Bj>~9K2lmWg*)LB?M252e6Ckp?y1+epySHx zdn7p%52fT=_Nmlqy*|5TM#bY(dQP*h#uWrY`_3p0=N2Wax^U&f4zli(C;0mX^XH{K zgoY_x2g;gWT!%u|17(xh;^8ulWW8FRjxYAmxABp7jt`8!XVxD;Fbce-<2Wh}pxb8(VEX=Yep!e1SWPB9>G`LsfJ_6+?SAK7nqdb!T{*vM;>t6& zxw~L#eG=o=0iaood{FIPR+M|8u%9nK97AIMs6WjpiJLvm_`CW!yP)~>lBB5yS*d3^ zZ`!Drl>OUqq01p_#>^d6^|NC2lY2G4%Cv$@EO++IEzH$CKa<=O5Wk4dQqnZWm&v5U zNKH$9QlA^Mn@v&QqoFFFbd;i~xS68y%d)O^kdL#4PKR-1M5={RXXG5ib)Dx#%LV396hy6~vqvd9{e+ZqZ2$IRRBU$2diz7gMG7OOL#pAIrwS!eqU3NR%~5yZ zJ9~6vr^Y1HYS$of;Cg$Xazv%3psFg5Nnk`vR{r3Vpzit*H_b z#{sqb$8U1JuF`AQi?_7#@^R4(wtm($#q)fnWlldeMi|fceCx)wDH-4SUnlKj8F?}L zYIY^I$m6LnZWcIG6b1)Nf}C^JN6Z&*DnX>d()z6Dmf|9x}!i=!0@G zRLC9Tq1Sw70Tbu7@eln;&5Qf=$y^=}dsBrIDh>;bgrzvg#Z>faIj)lNDk1Uv@u9i3 zjAM2gG2*nOdrBu}`O0G^5pkt_ojcFrpFIR*&MWBN%e&0R#W&L5*7mtZugJGZE<`s9 zyMDAqZ(*sj=u2FhM<|vZFls?7M!@`9q>-30tX#0n2Ut=Y7XNU?sO1Pe$1YDAs4<$i zX{J?3JyYARbmTsEK5$OGi^=U@(+mGlom%8P#eII`kxjD#U(;v5mAGZe=NcH7KT=4g zaJ^hdr*fuNBAZu|>JdjqnIeZqz0WeNm{mgbTtg=(%;`w0>XcN8jJu#g^OUSV zruve#2IFEM+`#4*^m&f@IMSX`k#M;(7%xnOCZkyGKw zP_35zKzm$N6K@bSIgfMoOeA&MnGM&Fba-&e@=#pE=X?dS&oQ!`h;4CE8rZrzv9H0i z(|H`USsEXJ$$EcU?=*E;-xqt{v!BotH&w7r5!7sb#y3K(9a}n|O@2yLs^sR5nJPKe z0BFS4G_W^}khx+}>pxe7cN<84%P{(!(v%p{?i1SuWHm~~W^Y(EXwEfaboZRA7i<46 zp#OZ?a`Cc0)`*L5#Sn{8viz`Y+w{?0yjjymk+|I0BX`#NmnZ6PT+cBQh5E%7zxLH< z_)6$ztQuDamx+oFhf}ww{f3g+JLu14Cpn`iduF1jrQC)@9k|}rRuw5WXf??w9ZyW%TV8ss1OaYM zsv1Sh@dejgdrhiMu1ehZdDrBZDQ?{jSJ*3Bdo!SpDz=~X?O2Wv(!M%f@wCQ0@uIWY zt5*32sVn3=6xftAby1qZ_rr(x#w&Lo=l8!KQ+BWS&+(v(2+KAeHoT#c>QBEvV!I{n zeNOiHxJQA`puu&}M_YuNDSjgcVh1u@I)_p1$(n6)LvDhu$By!kM89-AzOCJOaxv`g zttN8}Ssargb_NZ_I>;q7?6C7#U8H%LZ7gO^Z0FE7x_BP2pWRG3tL%iTUn~t}lxOxB zXURxt{AlKKFL&ehka%D}`_;&WUwVp&o5+&VH_O3caIhPKJ+ZjqZwMm0HwN5>ICahm zSF{H_a2HBaL1#CgjuQK2Qv5GB%)ZEVvz}IF*L|5!D*rf4Vf4{tgR*RIX!x35$Z}N<(7|e+#WYWOx9-_446vI&@Xw3@ai`1 z`l99E??soaA?)4o64m#)F92;HsiWl$8S~e&cHXaW-A?z__W#UF=E=0g<-L0ew@zYF zGw0aqoy^LoR)CRda@#xkII?tkv1CzkG?>6^by`I~;qV|eegU-Xj5ZN3+M0GRuqLZT zn+UMDjwH?3$qZ?50Sl9BCe2)D!wo4%9!pJP$@^6^OBP&?4^#Klz*E>!w&uBxb@J1( z%@(VUn&Z>{4C`{-jCAgO_3D{g^p@!FVW*+|(3Wlbkd|%h==e!Hy{H(+ry5tJPYY*^ z=33_U5$eMlPS0g^GW7kL7cT{!WA$@R)V!3k+%8HiLzwdDL-4an!MuXYpl_`U*Je^n z#`coWM)7L+AQ>6R0!5G-xxX{g8`qKP1|{3OX;he z&{7p4lq>wx*X_5^Mr^{}EDX{|L24yZV<>jG^#q8b9iy1Ll6IJQVML-9W6&3L1!9cd z^Hsr9OHbRXmn&PA!jtDQOXYSmtEw;C5*K54Bg}Ns+1@4r{%3O33q)c(G{V}=I==m5 z=8Ap%iK_hGHR)RA1cw}#2%;%zz31r8E~F!$H~RuXoRPWj&jvR+n&V$vk(3|3=V;FA zq$83XmCbxu=_yFrh4xyVKN*c5(Uh$HU3e!K(wC7g9r9|0n+W#~W&e;e;?yVQgViMu zWz7M9dES`$Z+z{}G^2P%#4z_^*yd^=HxwVw8pt5@O-QRi%^dTtm%RSJh>uzV7sr=CbnMQFt+v604iEAm;?i%ug)SFBg#- zxJ}H9f-CIhYN)n;XMnU~a)Zz8bh%x(?C zD$(w2Lq(cTd@!ZTnet~b+G3v!2Muj4-x4VlPn9u{F)AN4Z6fQFfJ`mU0#)75fb>$i zkm+$*;uxQ(NZKn~6`i<8Ss>>7urTE4t?4^F@|Kct!d7JxOU!n%{qh-bPz6!=VvzWk zF0$J7NR89pVy8`IkPR(S9cDQ2s@sPeuCUp$i2pVP^$X5q z?2lgVLfet`i*RNJ?qb=|)*~*39SJ&Sd^BZA_&}Ij(fD>Lv|^Nvjd02PNR)L{n(gh7 znC+-08}g9&+tEi;)PAwxF*M6lFc*}qcenQL;0|hjahV@3P}IGGMgd915J}nmhbH2z zOqNZf1scULhJ#2Bk0pi6=fPeBwZNvAXuwcmdti%jPe4Xv?YYZvfYJ3?4)am0LI&9-&N1+|YTA&CQdbs;|o0_sBI2TTEHqLo0St_+qh44K<3#?8EO-b%u% z>^`Exs*39duohps67CfRIHN|)cFoz~-C?x+OT;J zvMbB1W7I^B@$1e*myZWjkJ1$XhdEex9)->}p*C>p1J`1AKT#f~13cb~2%u-A!i|mi z?3#SIU?urW7MstDr7y9(f3G9%@i*o>`3T31Gj(=-)ux|zB2Nq zioelk*fGFoSKz}1@k+BharzUcDWXdZ&)w`5WL4ayJ>5*D))OTV+w-d%osP5Y@#SeH zf4D3mfRaHBi+W8Pcu%tK0ZVL3zN~_FEZljIa>_5#h>ZHbD0Vv@Nnx-PG3l~@z%|Lb zd%&MmEwu9ig;_vk5E=Dc*hwbFvV7^1WXta6!DR9~zYyvLHBSh?Fd#lEXNTY(#xsh& z%N3NtDEG2w>B`~EMnmrX9+bJIW<{BX(x#ougQ9VK?_$&!o$6U}u_2>DP2(TE4^iMv zq;?`hbdk;!!IP218^2L8%Ylz@VFhwuf2xp@t+MC{8Pj&2zgz>Nio7L9S1g%NH;(EB zq5TvkwUsc04jd$ooCC;M97T-7dK*!HvXk118Fovg)RU=75kxh7SL_E#hL#=68xdz4 zM>XQP2Dp_HE!(UP!B|hMy#T+{dE0`W(|P2vl_xjx;H~a3j4l6<^R`91zaa7$vwaDA zeeV7G9Q0jIXlK=@ufM>NY*(3J{szFm{M?Q;JFX-o|B1D)JOp>EqcHybTo-NW$Vl#A zcfEy)|B`0j*b(+}_adU4-fk}3$y z^w>O{*fjYIrg1skGyMsrJc44e@UmivVxe$-Vd9y4aP@&Zp1A$FC*inoxso0=;QJ+_ z+co(BF^RVo{_PRP@OQur)~Z_r8ZM%w<<-?c(-H01ovnI@nc9A_*KzX zSUZnabfHPcWXv7n;hKVrC#alm7lTlpNW|qGJM$fP$7;=e)z{^2Fo!#{U;~b0sk>c? zHxGJr@w~$j>jB|h6#-o9WMMY}Wc;t*D+T_>{|8mL)^B31=%vQRo%?as^JeFmf~$5i zg!-p9W(#tmGHbS>U(8^5(6z6PfO4^FwPBdpLo>42Bhy~1DT){&j=k=r*Vwxd9;SJu zOzXBh$V{Xc{#PGj`-`uK1K8`bL1fC$!-k0IRuR4q^_LR}xzn3O&h)^!?8qbjLwZR9 zt;YtNDTMRKus_rMGvA-&1lMQeog4HTD{Lx~TTO=v@Bf5msFz-zli#hmkbjVPLN#a@ z;Ez#4Hwf(}DE!`kCi-WL-x@1Is@@GkhY1cp;f>wugqIA=zY|u7RMeZ0R+BgUWGA>@ zBd~5_tCfWO3u`a%_#WuW)T9Ma2y@77+^aCn#fZq0#==SFR$g$O<@ z!|@UopyMgqZPn+cgVtk)@b}=dTOIWhhJhx;vC|##;)A&&_+`5~?8OUnMDXkFdNpc% zk{YxiuoN9L%9@L`!3$>@tqy2F zFg5dxgZ>lXgr(l7la9tas6!(IuWVgV3P-(t6wNP=smdpv0)bx7^d$yIJs~X{?myw5 zVcCT0^XY%WW9cuG`)${C1+((B*U^_C2f_iamn>%A<6x_Nrflaa)t+Fj4DS`_fDn#+ zRk|vXN%v~dz*7GekeabGdj-1hcdr4hJpO!G`Ler{2mJ`~2>CeP&J}N`09&cxhhwg~l~a-CdBJ5zP-LY# zi!~Nc``*zLXzO&z{R4W+(drhW(-)i(#Em*V5NF7a-^j1R)V>-uQ;r1h?F?sAe)SWT zE*Y5cuP3mt5C9Fz01r29CBri{GgC4fg0_iby6x4dGKMV1&bh=h4g9)3+!P3Ei`psJ z8wMUTMKn)SqKpPYR&Q)kOB3GGv3eO1l?_6qWa0IYKZyd#!O?D=>Y1DH#gK!i@_Z3mSX##}QI@9R%WwDs4f?xCXlR_Jz zdRP1@tFt7=4dzf(n)O+}(3f=aKQ*BV5KM1Bs5eK%F=lPO4UA9MgvJK`tRM~k_24W4 zLePIz^k)V75nh}|8=vN!6gZY+LjOfS{Vnums4Nt7-uIUh5eiy25J1EK8wyT-(SS`yUgq>#S7u4OL1myY^tV5#YvIW< zRA(m5C4#xs!MF7&kXk+|gAr;x!g`dDW)vm;oRb44?&U^j4xN6qkR?mNC+PCNcO1B# z@4aUYQ4$gU5&`J)k13;u=!pe?1bpoa=sF(7-@P^^F37C~{Efhxf(iciHsXK0i%4Pc z{pFWpVuU`akgi}bN&0h2nsNCt>A)}~h+JQ>k@6WV2l()$jk%CZQ8;(W0;6R--GJtJ zg34a0DJHE6n0s7&+S?6CxL*_>%4v}u%89SLV2SpKxa;bl7b(&E+M`vp)ON)iIY>XE zM_u{5L0rR-sA(`mM%i|CLnYkwaY_N=rvPK+j)h`A8J`T~-F3_-<8G5e79u4_=udR_ zDcUyGmk%OYL3t7s=WDeFWPuDz)sb~44b^LX#HK7OfbtM^E*p!0rm_D3ozqW90f`~6 zcx$64*N59KJ@!(~VU-T~?N|*>=5JX%E6(OfjrH{|BXB3^J!qJk?hmkQTv#xGr|16RuV_n%0C;m*}t~#W~c)N{ebB)y|wx@!A zKqw$A4y+>(2C@?D?1mA!YF#+ur%Ul~!O5LbUpw{{Nb?cp&Q~DcbH_M;J;m_r9;S=w~eOv6A(((`atkFp!z9l)*rB4uxe<*KITRmACS5r33gY!@pY8+Id}tfbp$q-x+bPS=?jE-GayElZQ zJ)=8$knUb#nN)XZ_8FxCZ=TaVrpQ`;2abH9Qf}FfTsiAybl!9XKxecmLwmSFJcfkc zMT)&FB!vVO(l5<`Pm#?Z4ITPl{tM~T!v$HO$v>5gfE)=XutRA5D+>H4Dz@}dpLWH+Hy_a9 z2VTUNM&ZxKHm!`{k4PpM_{YxUcjP$*INDt`^yShLY=JvMrqaG*=y;z@+0x6CZisw( zr30jWCD2Jf1+W1m6#^m&C}tlvc>>r-#(n-!2@oUSzle2UuMs2_1f-8Bx9>%U6(74S zEK7s=Apht!`;Z0qLhfD$_2$1OfCym2h_tp1bDXV7HS&DfJ6k5HG|Y89}{GQMGPyR81J*4croGr3 zyEbeXh{7sqv|~!9Ts-V=1s;FT^UOOE9yWwsY3;bgJkDewQl&(eD&Y14taPbH3mkD% zbbZ593N<`?S3Fi%98%8x99O^;T>;!P6YJNzJl6w$bAF*S>Jdo>itT=cA;?aNpWq5I zmPM2t)9Cp7fuWb3-7fkDeC6dSv#K(dF>_%ss~X1e{UNO`vmp53OD0Oz%gLq!4vn`d ziOgTWbhp;wLIN8hUNh)`<2#;B!w+Fd+&r7RvYEo6F#2`@VfU)1G z@M(s8F&Kh@JEgxSdVQj#srvo|G(t%`sJUi3T^gjvk2lJCQ?e+N&_(xc-IBnV=)|&YCWE-Nf4$PXNHIdJ$62|(9 z{OFBcqngYj-0rJ8eY!2(IOol|AIJ+%`06dZ3Ti!x_KnVPe0tzSTAt!2>tp+;yA)0r z~?)_`OjO1&wsxa|=rwiHF4*S=*k=OPQhX*};`qVU;*Gsxl zy{FK=ktbTa7Hou}wbFlmZvWJha6~)6WZ$VK%!IMC(jKJIQyITH$CJVbH!}U&`4aac z$_(b-lPw>1G)$Zv!B9BWhB@Z0#RJCBgz=%q&e+Tdx#r!}eH+~a{D};lL z=9~GIVDnBc!&vchrqm$uv1kCt9A2E`n+KuKUjQHOO|AUyt4Fm zKX`l^%c8F_4y%<>s95_fw@ zreOPE;LC63196Dd99gpw`ocl~2PvK}O}Q$}ecUr^aru)@ic_D8&tp2N#WZEmI5xy= z{l`U%k_W1O+{`5A*AuCYR4Le72Xe8`d;=Bgx5^m!UAAqHn_eqh=9Iqxb=ImHAq)Jf z8k;F}&C53`d~HfHU;l&pSeO+>({kEw8J8>~I9o-`K>rEF47UvpTc+$TF$U8ahV>Q z5m^ap#FiM@EkB}Gs95@O+QfMWb&|#Vg}M&-~c2iTfiCjn%2gwVM2}T{Zm*elMCJuqoZBvbJkEF5&cy z?Y@cpIapucZ`h&;-Jc!*P|VdpSw1IWgt(3Nm(QgxV_NIE zF!Qls*|O-vaek~6CI6llq6NhB27kz^4wrPm~w&;`7zO5eREs50V&|W zu6ETI^ZMG->)rlwaRFI9$VQH+|78WP7WmlAsa@0>r8M?kxhkw;aeP^d`A&WTucje+ zgXvVGx=LWe)UD=xvUM%2IDuxMugS@#$~G-V(5P$h`?8 z{fgn02}>XftWrUUqjCkczG@|?v*V$0Hqs0`{ld4qgDcEcqki;NdT*^}Aq<9?rV(BM z>sy}=p4P}6^i&Cq*$ftrMLM5`uJn8*RCm@RQoG7qP*cv6&hUBGQq>Y2Wrr*h!WMZm zZuE_xa_Cf>7>uP|t0;`7U1!~>pZpB^WOZ15e5?gD3Sj?Ar{!j_^Y??9Ccs$<{~H(y zPsYLj9lj}R+fd8A+&ba1CGb_yeErok8J9%@-R1bIE4>v_k10lv&eMfzM}~D$_yvgV z{`a)R%@JfdWuQdlxU;1W32~!xbaes!5Mh8WvW~20V+^|qjQET$C)SnJ*<&myTfJP7 zHqN|DzF4&YQ>t1&Uzu*|MRaY{530wu&b}y)QNLsVJ)z!b$itpIYi#P+6K1x^X?{I+ z-A~tzHcdNR)ctIrr_7sr{LGrwl)|Io<$nc_TS$ec|Fdh$mjC9O!S!^cfK9r&i@uB+vGZH$bYNuOATwVqS(km_HZ@u2-qkj5h@U^ou5ryj{7*V9yMVXeD?VA1JYS=*09;KN zU{@bz)g({WM9({ zW4`d&N+xf|-ifC=RCWRVWiW4A0EbeS^lzE{U&J{wT?4{s!lx%3pa(D_emrFBj*f-0 zPJU2h=#_OhY4PbGX$>)>b;rO0aB{}c*ogSbkyp21PR<~mZowPf*tD1Z;%nEotel+j z|3>*yTP5$y#`%k?kpCF{ufYp{qh-dl)0SNc#j2H<7Dqh^_vPCjMRk83u56yas74^g zzRWGfYC-ko=>Y^E_p(*#(cE<{XppY7Rf-j`E*!s80rg@c+lc;tL>}i5|J5&4@-^aW zSE8x|weK+-u?p8IQ6x!y>su6YO9rV7ePr&{1;M*WvYGYR>Z(tyRudtP4&xj{ue1_s zNDa1Xsj)k+OJtH0<$^=` zN@CSWssT)u;#52UEOhqhqbqg;8irEr}=26D)06JyG*C%*I27G zs;*mPkA=>~ChmAX?eDYEm!z5XrLxic<#df!;Ur)QPw1PfBYX-@H)DPkfv!Xbc@b`i`mhiwjygJr?72UL%8eP=|N(=bpV;r)2y^s{A>2GNIB_@*!dxD*D9j>r~ z-^BKt4NgN8reERkG`~Z~KbdJO$k7&asC%#=$K7L;i*J$BV9)vApnEb8Oh0}$^gFud ztS?Y=Do7kwSQ6=a$N*g<1BX7fPwB~dx1Fln`gFF;adkKYnjuCE-7MG!KZDB$yIy5E zx%kp{)sj0VDcI7-QVr5gt?G3RgOp(A5qE>^-%fNtlJc;TN#rri_C@6=bkNv0B$-QX ztFc6U@)#f13gP+FLzCyM*SGh7nE4X9OFY~+%yJT?vV#ABB?kx0Llia^K$}f6kzUvV zD;b65hc$R3Kfb4!j-s=>Sd5~FmMC*>C@oL!(@adKnc!VWd#9L#5!HR-AW80oWV5e&3inxPIsn431hLx)hI1?HJe3FCy^Gv<~m>dGl=B z^9{ST{wV#AK~9XWKV!D50QnlFh9#3 za{V)2uRqLo@H398*A=VaiT@d~s;y~C;3<9Q4b~n@mBZ%(+CW$8Me}TJSYj$4WDKAk27V3F_r&YNjUb6z8VbK`-oWs2YA`0NEyS<@ zmc*Ox{C!rg5k*1X6_zeH1=e#-<|pV;HU-WZgfz4F4{5SPy+v>n2Gu{9(?X?-?IZKq z=^|({qV9?tX69AsWqiByN4YTZazAV+nkK=ADx`m-Vf*|d9*6Mn)t)|m?f^bI9V-eJ ziWV?56Ll;$fFa8JLerk!u!4rEbfCp@z*|(agYoKk#N51oX7)Jmmb-L=l9-WA20L)i zzy6KpfRZR=+$LmsJI*I@!^~~2cz1-sw>!|aL?bg3Vf>kpZTNqvuyx!gLehK23DTyq zk3yTit%96~1m?}jV8~LuQAfO5h`;~Kc3M|#SC6?de~BPHJO-|!Rjv)#mI+|@6!4c$ zE4)3OCp{=6Fu)}$Z8eBBF>H0vS)H{n6U@mgwQ02ro~-k{D*&sR@;t<9YZfgl_2aJ0 zEbC>~i=>;aN2pP*yFz@~YZXe$unkSE3=qMhi~NiKMfEKEnK+Da5?Mk%;dbXB7%2Fa zQ+Le9Jm!1!fA>?%@Q_5Ep{Zc{VuVx6V(JKK;0UR1r1#LzAfzTNYy zVD+x_x62)9x;t6bZ^6IzY`uZdA1zWn7WyLD3i!Ai!YYHt8>)u|b3980KWkXVOX7+R z#QVb^7+=UlaU6j8`(>qO-7Zqq@?Ab!BhfNTR630}16XYpqQ|P#te(}ux`(8y4Y1P; z-~UDLh&3^3+a+FxcG*1HxfkTM7pS5dpBRKJTa_Dst$1Lbz%G1;slqgg347V%wC@R5 z1c|Pit3jKX{`%K|#Eorx-%%>yw|>I}yd!YBpI_G;R64X5y-dh(pfD+67{^F2-7_C{ z)5@aOL)s0k{jxQzajg@L`S{c(@cSBhv;k&!$s69|Sx_WO;Ni*Z7k{R9d|iJ?e`@BPJ%NL2A?V9C+vG0BDaHy0!FQulO||$BK!f$I z+R}3@(Zpk6pA`oIj@OKVr>ZUj3QQ*?x@TZ3xh@M6)Q_N%AJF9BeXVq$c!rWuEu-_F zP>>o%g+EcZmqeM5Yjkx8w=6H8j7JT4Pw0o6U>>K2+oq%+v4j~;&?Edeh9P!5d1qUK zH-f%Bps!M=xO(mMk2Z_k!&^Du0-`KnAzqT6WZTA8RiC#^^5t%=Y^a~(G|N|hJK z+oFh3^azO>%UQJ@{{c1BdT+9RX$RuOFC7x%#Xba8osW40Ie>?0jqHsg0R#>B_pbe^ zXe_HeRVG^J?#ie|bIzo4!3!lL14NgeOLRs`3ah) zW2dn_06#vy-CJrcJ^N%3&B>S=REe>y3NJ(F%NeV`DaCw7fpaJyVoWVoiIJ)Hy-4Bi z{r+UnhM#Bc&B*EVO6kzUV=cK@(AfPBx3@#p6JOF=Kp1OGfSg-XGjJ6yeyn9-Y8}43 zQk?oY5*l@d4}ZK3Pk||x|Hk&P{8x~&PVKx?q}sdvIeqe^lUb-kFjW^6l<$wSr==J& zYFP81T8&rVd`0^OM=KTJLy#BVLpbL5&O9gMld#>A=M}9kZG`_!>3TJbZqHnsanyW*s21-*Gp9c6HcA!xcZ?6Yac3YWw zfHQ0hp#jDlSWL;=HC!&J{IdRr*8y}5$pHhcp70!Nj-DQQWG86=x=BZ$C&DZ&3xxvK z$8E!5F?qy-HnB*=xr(t(K_t2aa|J6b;mbUt;B3Fm_U;Hy=gK#G5`=TAdoqt|q=;Ew zmIR17ZI&R!>~z2q!dDhHQ9=%5;JqBEtI~`uth<~%K@eS)wAXD0NCj|MuN3zmE$&BeJ%^{_krp;c~X&*tsCS!)pKabO>AMl%lD|O-1 zz^3CNs3R^jwI_owbNMIz5!0F{;}J0|EhBUdyrJ;%NoQwe+q(VaaD2;A@IH5_QHjcv z|5~NO>uPTs&uE1;pn?whiVzA;riiOS9-3XQ>qBFWPvNv++P0AK#yS|PzE_FKiamz23TJT;}xkm)+M+ZZ;T#Z$v|o;tw(WMjLPLaT#Yv-jpQ;T9OKM$&~NZ zyP7VqMX%KR8{2+E9%{2bN-*n2_(@% z?~$jl!d&+j>7)(%gw9$Ks^p{_=|uWaE>;#_QE$44#~eyr*`K@PJR#jARL$bVL13C< zl8-+I3D#M^a;?iGzDIYknD~codKR9^X#Y1lNbaxN9`x4L@ z{)iy+4N;nkL-$RhGYpDg^+~#qZ^%7skw|Qj=(v`^^~fzS)kD^(uo!V>~ zzu}YrPMp}BNikS>-AD5w;jP*&X_PZElEP=vX^e__*KFWYAjV-2 zp7%_WSR?@!YY1&lF|K>Ng2ED0BfQ`qe{zm;7B_ALevaOOxNZZp!W&mDns91L?IFEJ zba=ET*6z@$ICm8Hu-OB;Th3}`|H{_xklxDT-EVc#nWM40SfS=G&zIlo&v6}QsvGRB z%4^v13M?os79^YO4jrs4%yR*Y4ZA~4t$XQ(1n&L$n)&m@;;BRIcI-hMae`D|Dt?W{ zVpZ>(p@^M>t`rh7=dhE`HwV7u-EQ=ILy!;e1Uiw=$sVW#y2H=WA9y{YfbfDH+vcFs zZCp3R=kKK(I%k)8TCBG!Ze#^BpYpV7Pl`c_)*B1ANKfo5`P1cYoO{45pBv+fe*)Z2 zmX!4#mCC_A3k*M0>?x@E2jiNQ94g}u?Tw@&V)U&de<4&# zTXOtb86WD!YV&>^O^~@{lt@TKWijGP8Nd7kpr493AQ#Us*`%wJJSr2k&99!+K8viE zSjra651-V*qw|$O9hab14~j<14jfmc7L|-P{%D&GHI8QHTO|po(-y~bNNQvqj&qI^ z{r0pI;UU?QFv$W@>(rBDO3q|y$d}vcxRCQjrbv|#Ra|Ut|Y>;pn?gZS;i$PH39qcYL0vI%Sx*!`9JPxw-n|UyH zu$NCNqd2Buzra$!ej!*xI6;2$x)Rh#;~quY1+#m@1Gxl%b)tsVjktnAf_Fj@L3Dy; zdaVg!FhS$IorSm(Bz{K}0EI$!!=;N8?SzBeld157@acGUEpb-)B$sb?k3>HOGFtxS zn@?@sO;GsO?`NHC+qyMiIhN(iPL;oh)?!&U7VB;tzQMO*j^$SpHacI{ZEK z9-iZfa@GkOXzOlx5kHlEdu4AqmW9hs!P+`p;faW-oSY(7*P7lSAJaQI5w~@CLm?m2 zIyninb=?0y082o$zY88dK=AN^f`<1tJUmSB@NmJy zBLoj0E_nC|!NVg34<9Lb_$a}{M++VvC3twW;NdZXhsO$k9zI6!@HoN4;{^{-5IlUW z;NgjahmR9He7xY{69f;RD0uiJ!NVsD9zI3z@Tu}zc`ci!yR-XV5xFgpwNy#quv$K0 zD`NXzY)ns2&rI+jH8MaWsUq)ekT9^&SM^lqkhM6>MyiKVVXMr3$7W7{i)k^dB2ShlGYjq zU*VVe4Stgs@vHnAzs~RR68E*cfVWmEAnUrYB~QzVLqo z;s1tz!vBqg{~L1|dBKD?L)5B-_ggT1ev9AcclZne)56nCGdh*Ze1bmY?J2c|O0uFY=$chCk<*RGvats0g2S zlWu||+^74<;_4bdmkhuc^u#K@zF5UKkm^Z)^_ZdLA$c$(@Q^Ri*A09F`nr$rW0h3i z!c4(fzJu+==*r*8C*|+u9Ql-dTK+*kBmXGpR`g^tWXbXixlDd3zmm&2LlBdoJ?DB{ zpBr#PZp4kb39rOWxf!p_&3P4W!7aHJugX8-)p&Jo$8C6RUZ1=2hP)9h)|$8AExA8` z@6H2x0Po3zc?2KHNAO5qi}&Vzc_KdDj}PV(xI0ha{kR7o!X3CHug9%q_xHoUg+w-=(Id8{1 z@Q%DQ@5UA0i}&CI`A{ChWB6!3oJaA0F?=ky<@US}kLR&Gj*sKRcsO#Ux?0nb4T41? zSu*UF!PcN^&c@b+eT&VDoyXRcUB%|ju48M)ZenZB?qF-dim|n1CD>ZAr`TG9X+B4_ zUxuwMd&SC;C1jG3A27v`AJpqvoxshEnGaP02k#7)W`-=GUfc2mU$a1#up%peWC?4s zMwX~f)sZFCYhK;ShHQ`}?8pvT!X8|kAxqQ+)9*#~sXnrVGdUwmG^1w7 z5}l|MvP5UbOJGBm7)c|MB}UU|WQk~sMwW=BSY(Mf zibIx2paf)zL`p=K7>~MR47lb*WQoZ%8ChZ~O+}VSq9kOA6iPvsm`>A?B|f1~kR@i) zOk|1KG#goBF3m-jm{0TBWH8hP$P%;US;!Kz!S<)=nd_OeB#dhp<_JE2t+HvAH~+!3 zCxdyb{5s`N3|r;b71*_oky1HS$cpDWBwndpP4aOY;$#eUsMnO-3sA-)rY7a zBtxkQrfgHGsi+>1O)!hCP>))pa;%P;vj*x*8$?w^Q^d+8?03Y?eTb$Xc9fc_&g(Lj z8aa-!2dEZH!PDEw$ECJ^Qaky?TRHImr8taAP{d(GTv3OKcq^i%$`iMT9_xXeXd))R4AU&Lht5tj``Ts9JM*;qtmR1$~_YA)4Bf7EK;i8(Vx z&I5<>W8LJlqU|C7gme0_gOJ_ibArDfg6tvkuHOgo6YctnZiU5vb_-f7@hr1lucX+n z)i-iZ^G$ndiXuKE#daZ{nkNytnJ7m3dJWBFsfHd?hUptO)CZ+aX(|!V2vT|~jVe52 zv(_%jM*KB@OLQ!R#WPSr7LGzX94cZ{94dSmw{o&Fm43`=T;-QVZI15qn|N{0;pabQ zq*M=6Qut9NMb659kkxC~mY7{^Q>gXr>ps1AX!Y2nn7-*P>7ifaL^tK$T;Eda9pq-I zR8e;fEscYR#gB-L9-a^r?Pji+sZSbM8U%)iMa4vix!EZ;>NCccRsADF<6`1tA`Dq_V?%yLI(5;?QN4skm-61k|M0lKi$DmI3or1bI@1Xd2 zx_BtwUM?Lw`FOk4QEF>7vU#UQLE&+Uk)h#A3OQD^FmjWefg71U zQ^C(-(tSgJBy-bgeJszf95UuYvX35H^p$DbZnyTGe%Y@^cyp(lwM(V%R;DH$3EaB& zaQdS;O?&6G_c}WD?BGzh#H*>V9=dr&GS8bgy0v_;A#kJg>9MZSBgQ|=Ub$;P@YQk)tw!mZT;rT%H=-{`R-W%+0FYcPTn*(y?)u0UE}OdrN`&Zw;elW&Yf(FT?w9c zW`qq5RVJ)jo%SGp>G8J#marF9sQkPzFv zapTaq(XLUi$H_G`CaQ7ls7UqM#<6iRVPivo6XF}c8Af#!#UR2fU2%xgSKkm5Q%}!; zP)RFY6yMkTij>w;cY<-_#=YwV;c@TzdO1nnUfg6uL?)=Pu zdA*&3O`mQ>J39w{y{+9blfG3Pr|$65yPi;UeFGnd~giI{kx{F>T2LV z;#t?v`UXy4);74&p{~CzePn!3TG(;K;h*kqv>ScJJIvki_>kMx2Dk?Y>^d>I!vmw( z9LGwdv~A~iFP8^zTx1ry#%=JkC8u*t zy8GXJ>>m7VbBiOJU*3?rm2_NCermy>S=Gk)me*@AwewG=DgB2Y4K0a@sTJi?yy@jO z%P+t1DA`(0uap#h1B9^$+AwB3%zA{Uh+Z~-j$T7VSTHtPPobe#+<1r{*u+amQil)Mt5?zZvcdiVFOHy3_pCzN|~< zh${6OL}V_#aaKRM%UVt9hAN${j8ayo{@Q!|D_UV2U^tzbD?Y#ODy;3Z_n1qs)m!bx zw{shJdgYZCA1_=pOxkH{x~=T#%I$QeBZ|gmagGSfHoxhDV>#0867g(rM3C+ zkoe~1IGj<9Wg;B*st^u+6(6Nzg>dNoUkQh*9v!rw`hlSkwl-gXI_u~_xuaLX-LE%~ z`{m4pp8mAWHDSzvs7jVuXAVr7x7+oc#oF0XA-jX6Q{C+?1C|#|YC^&W9*A3 zWjDqzcQt)#a4mL!U-j;v&mCnPw|MuOW}gjrIo{K(IAmZO>t*ToZLS&AaMzr6>yqf! zs$rbT$>P{n<QwNf6MeAj62j~#a0)Rauwd3{}GLX+LykB_NsQ8&?~W#H^F{e3!E?c1>< z+kg1U)$PlZCO9Oms;WfXX>T#O#>rKV4!IrfHoUv{vG3_d=PtS@b*t;_>olZ)ai0h4 z3zvVM(>!K>e{#J9{VMkp9S*KcIb5&TH`_+Gnz<%%*w@i(EY~00*!iJF%*$Esqqo1h z((~l(+TTa)|J?Qyi!iB`%hrDLcHeNgxidQ_^y~4x^v<<&4cN3O`^)iJJ2IAxt?~1M zPb|keHg?Z6jLsM^yUxLk2dOy@`S ze89kq{x#QJeBO9f8`s{}qrSKN;w4gnIa0y13XC?abLyhBU)p`-EpkFwMXxbIPMG>H z3CZ=9y4s0ZtK#cn;r2n1!=v%3YEZU!SKQnLv2Eg}xO=-JO?Y}~iLKk4T_ySB{|#cR zJ6!&M2Z#S{{#fXG>Ef-{%YLp|Ic$i3W?z4+7EdRpmbI+n*8IWDBVAnDed#->z+%;d ztcd!a=chRLp482M)}uqE+s_78P5)+x;qLSRlY(h4MjB;Y9?p-IUfDOcx_#RN;~OpS zQ*i%x*MipVHT`QTTgYlwcFNA48P}r1Up=jVZahbc@^8N3_-|e=_lGpfSirW~bh~!y zX}MFKX&2@lDp(qQW_z`7zO(7L!6|2I@~vBL-&+4XsP#`H?jQKUH#e=(mdj=ihY!s< zdcWqvewI&8v`C7pJ|pNw)qE9F?Bx%T+kIEESvq^Td3m}w^lTRH z9qJL`;o|Pmq?wCn(+Dq@VICpjE?%L3-l3jNo4AE~hIqY2j(wxUZU*R`P1#tjX;a6Y zQJFborN#f49KSPI$Hc~qWB_l0Tf?d0&#F5QQH6`r)J5?Y*Ld8dR7}_TrQ0I_}qyN6Uxrksp*rGD9v!+642|p ztVyBc={rKJcL}|@?UhxFN=MH=O4{AB&fTHgANKzCa+5B4F888`hwf`~V4subP{HkE z4`jyxE4`hkSAYF|eR?wBn}ddbo}L>vw{UzhuG%i=)UKmi^oslP&amkA^XJVzIANd7 z?Tt%pR#)|MYiZYah?7yvbw(kzJWTRm<}N7p1XH-9I2Ei z)J-@x^V-B?!G`Nniel3*Th{BU7yR|C+Ak??Ss$hH>P@tAYp4274efv5q_j|;^4cQ~ z>f3c!j9W=7#&5IL-_X6)ng-RpYW|e|WXrF#$8&y=uk{Z+#HZAF>P>#tIn`?6_h01Q zX?VTPr`eVL{J-58Y$^%*+O^5|=aX-Yn%ma& zV`KLH)XBSiH%8t5ZsWlhK6ejydRqeT~3J$Sp4hddzRzIu86jv zfl14zS=wLlyA(Oxz326!0n-*AdReVe*6tQV_Jv>FKEiYDl`$KC&O~k>wxQZ(t71h- zF_@^N=!Lv456tH0iBur}ITa+&_?LuQcSX_0)&?I!(*DQ_ZYU*?2AVX}77|`!*G*A( z|Ls{TMfz(#kkou2As=AQWj%ZzXKv%V`C|0O6mx&iJ&(TW>#(|gP3KW}`v+{?t?ylf z`|X)_w31yx(@`gXEH0Wn^ggm&Kl@~}^JL}L{_ITC31Od1T{P5b^ww2=pWPiXIPc2J zpzX$uj&A+=tA<-98g0F>q+ia^8hUsC&(g|X7zL>b=|5l15paI9%l6nCNA#FWS7&@a zo%`7;W}(;@w_Oh`Qr6_9m{u%Xkj$@p*N(yohLTmtlm`JCVkUxV^8dhPX89EPYd-UpG>gUU1uC| zbi3U@qsyC_Z8vUOKgpu*(%c4}uYO?@6-`wSTjr(I2k)B0zgAMY<@A?b%x%5j<3C&o z+TSy!ea``Z#S+zc35{)M)HN(rXIOffov+zAX`PJn@|9_C66LcVYIx3#?|7sdds)%j zF6hYCaC;Tz4;QPV^{*;FE{Nq1bSvNdgW=(xHB3$Mw-1PJ-Yb12)cd*RLjIS^o_i#A zxYW2lIe56J>Os+SmHYeMW*&WiNGAMtbMG5pPlM%utNZT1iJrgy&)p4aj}A_6tbTj# zt@m?J&E>)x%a+%sH$3Y~s)*mD-*P>CPR#yt4ULa)a}R6u>-0OA`yYJR>e6|H)92`w zrOx^#Q@`i^s8EQ|5spomI?K-AxaHP{4)J^Q{Ju=vu*Ypd&WuYBu66Xl`%`a$_2Ek_ zT_Qw(1&FmWl7wpzVPfHt<6;PAC}l`uaAt5s?Q3Cl)R3#WB3&yc!wJqiMOghFzFL0V z@S<|3i9r;kngflf`Y-TZ;N9j)(ijjh-vV!UIWvj~UoZG_Z$R$HXXROsH;6$xki@`Ybay zv8Xb+pja=XB-g+JZUB>kiJXywEQ1e2DnmL$B0~;CJVOC^kU5hfnV}NMD`qGGih~B6 zbAdPy$kJ1g#a8>Ke`;Gg<3UKJl-}hVCFx4Dxu*#}OrA8;X}%Nwe&`?|7U~Rh7~&kE!yjf4eJxH+-GsZ&`f$?%yxXO`d3bac-EO|Ne$>rG*uOMv7JM9l18z|6XxsN$kOe z9kas=!~8s44>+BiT^7yN;F0~ea{j@+xw%;Ap<;V}#|2w9-jpuyk^&R9jjEC!m(Ndsml1%?n{MgwKKbf9=5 zkd?tuxlpY^1!v9W~Dmr`%=XZC+O)|%5S*nvTF*Lqx2?Lg@ZVTprUA0DR&8e?^8p`gs zIL-;^{W86N@ug|A6Z^h59uCmBy|~gkqvhwseuh=b&zsFxc^zG4Hr11jRU@2Rzb0fK zL%h*eXZlw>jbX-VlM#`KskGF1(cTc^kvG39B=ePVf?3kRlq8OwrFv~RwqOyp@`9{ zwNk5S71s*I4F$!DVuieOpYzTHq_^$Y-hRK^-@Tt_IRCS6&pGEg=gb5k0ANAzkWoIV zsxspCh&O>~q5$Hbtt_t?1IfZFfZexZu7t|E+DSKiIwoK^0MK-#a?<3|HOGre0M7dX zqW0B)PV!_e`QwTc0Hg==`=*rFG%o#e%_4w74glfAtVPZKzM{<4ST`oqs9DRGIu>u+ zst0hV0&r1t{Bswbn}5a&V8`~wZ{{{H@k0zavAqr~V4Ayd<(z~?PwoatmjD`I-t6Yq zPoCNP9JW`4>3Q=o!dz$6Vt6Tr6Xz{jy5h`#k&3sltr&o4aber6X2195KLFf_<+W!P zHLvh%8dTkwe;4L=EN)&jTYq6WmfeQ^F=YGOmMjgffY-2nA4~UNKigkkzmozaW1j^( zFxd$c&phMa{NhYw(br&812ex|IO$vFzWV;7PhQ;JztixbdMD=90ELjja%!Di4-ip* zfa%v69#m@jo)IEgjIazQ00*g9j)Dm!n1)hXEPjJ&1UP;RJq!YL(QZZC z5RTt~_O5~Yu#J=OcZ`?^F=7lH5nhD3;y!e5K$`i;P^$FhL!6&~V1!1PBJ6_w{NvDni0(9@ z4jQ>;a4Y_9*pD*W%M}Kn7iK8_{puTFKZ_UEDf#y+py8!X~qfy{rUKUiil zUj}RO-93`O7jlKPa9z#N%C8Rj|LMBQz$VyWAO9V+2@j(C654BFpRg5It`qKuecT0D z!>gfCScdTnV4t`N)1H9)g%kL$*T6odj)h9OX=oGi&3l_L3~Z`jK&em+4j~0J?A`pY z^yvrlgZZCgI3xV#-ziU@frtLB_J0KxXzxUqucrn*5+$&J1sMg=$Y_ODup$S+px{N9 z{-*{a0brLQs0JZg0;EDJG7Zv@>5z`}Kn5}cGK1gX*~FLyS;%b2M&>{cG8giKUqhb4 ze8@)@KmoE43XvmVWbizUgd$`Sj6#l5SPaF;5-16N1rm%#j#gL-rN}ZULzY8%@Xwc= zs0JeeIhVkw1}+AJyav3%Gne$J1~M-T*9K3+LRf@cq;N4TMz%p4(hvUNCvY8HkGx*t z5?F#<3QLj8U|H~ESPsjPH^7%wsRko|M{pzZMz{%ilfw0|KKKFL3^yY;zy{<-*o54q za5HQUo`O#3L~emC$gQvqxeb1d{4w%Ra0}dmycKRmZins29k3I*6L}JDgWHflfuA66 zhue{Nz%Jx2xHEVH?o_xN_8|8tybJC^-VHwuz7IcD_%qmx+^g^&xCePJ{5<%7NBBAH zL+(>}AKZ_;U*QArK=3_y5FSE4q;NkxjC@$(FW?u!cj1@t2=Wnl6!|CwkO75V&=q_K z4!{9qH#~-X3?4^54o@JTK)wwJ;UKaHdXc?w2zdy8h5QxrEjSE^kx#;t$RqF+@+s&; z_QBJ^H{of8&%iUtU&FJ=XW=CGt!7GxE>K-@{k%74kfsM}7_8AiseN$P37q;9K|>`4{*L@;kVQ zya<`4u-_7s@yv1KIg*FvMx(Z_$8yc6%R=Q2 zKrfbyQ_3xObT~F##Aykh`n#W5!LNd|@C1Pqcb~Z9RKv*^0Zvt(ss#A!-%$UiiMs5I zP^d@y1^kqIj!N7ywj;S$x!0u9rpXPHCe)0t8e4ympO>4Hot2s4Nl#044^J63G&w2J zHN@$#C&b6u2FJz>vPMT)BF!dagh8*}nS8oOduZkyBTY)T7<2VWfy za7m^=I|C4TRVLeC6^i?-aQt6|6E24*1RyFf##L6%D(-?Y9|gb?AW;Eetq@BMwiGT@ z(Yk-YRWUyhTh{9HVTp2=$q^WH&J*s6Qg@e5Tjna8txZdXF0Br|I`m;)e-{~3OcW0t zQ!%28g4&Rl8i;fUXi^2U3j)#>A9`HnSQDmLuB7w?`?h{R39#6J&l2*HfLIn#DeXGu z2c+fzY;km@_H}OUF+q#Zt#5U;HeZ91YsP;*b^(`EF|UEiv4UCOJV$`X$`#l!#!)fP z(dlC1sF>$Ny2`QC-;Bp-Ygyw)XP+$)iEc%}><(07j>=UZ*tpJ$nE4JC?Cjj=2<)BM z`2AETV^dR840gD)!i5!LWfcobaVRmKwA9d;!UAaZEnsafXlDJaSm5Z~GF$2ER;7Or zO4f>bI5ExtRj$s?idI)eYjbO9sP?je)Sx)fFs)G;Ad0TMDI68ffGNC^;wx`*hJ;;R z-&n>v=4vjtg{J*-j4vF65fuZ84%UMztRUc+96o%t96Z7swa48i!Cr_Yg54Fn@2{V?AZz!Q{Px(bDEn5f^`Eyz$JwXOQ#G6rGWpc z!VXFq8XBDr6x8I#CL7ABk@*|YA9C43!i8Iaa~u{MlhN#g%i<{ud!0_UI=6rHNYH|T zK*z+!P}l)2wgVt}+&CXTmeMzn5lgYM$2_-b!rIU!5la&gzEC0a}LJbgX+oyM)431BwfS zb&cOIemP$xRFmokT;-@|O1oTS)5I=`Y??H!vDbu$%ch3L1C-D*UujcUBBnL=Ishak zma1e7@SKpcTtJv0<&3N?R}tTZIyrC?SM zA4-u1a`PCc4#jmSaf;~zHe5+7NNPzV>8XL*x(JIpfH8+~8Z`vE^~6AIU0AAKiS8jC zT^h+2%F%&2q)-nxO}^6fDvI1YOcCrG)ap>LkV*M`Fj z!tVUAJ1^|E9tfK4Pm)>T=37YffoQwbLwwy9OCEC%=uLT}BZx2DkC|b2M#v5Jk>+lL zDG#2)FabTO#W7lN>=O={g7zL#bHEt1A132bveg)y5{ezhVtYvZ0Sj|<2YBXa4{*#G z#3Bz9O<1PtP@;b-lsNc+l_f@p8;J^4X9+bTVl0ob!U4i!c}WLB`zIeK+CTotY)2&~ zwZ4I4k=`Q5cbM%jq5U1&qiA15`&+b6qkU*kqWvzkyZ1QkckUTx-?PJJ|8iHf{efMv z_B(bBx8J@i$^H}cOS{M}%x?TMxot^Z*3dOObf!GxVf$gvVb1d_ z0==eQYQ)|3IB|U2{w+0Ka9ofsaP40c(|N~v>iE3wbLu%$a;EkSm+`v)b=rMknEgPv z+3x8s>GlQu0skL_4?jq>pF->TfHlzl3=V`f6nqRluePV#kD+~~-C=*Z-E8ke`xM$+ zjs%ZT>{igLJ z?CY_bw*7ne2lk)a&rA0Z(>0E3q-(gZu*MtPW9&a_A7}4CcOAC47HwU-uif9ynT$@m zHF~&RB|7b~F~jXV=d@cQhuc%rjKkd#!%~dNLnD6@lZ-=L5e}y@!5(3Yi#No?4mRM! z!4PSQGT<{puQx>KHCmlsRH^m&#L(mWLvJ#67^x(7hZUh# z5%PcICX5ZxO*lOb0e%zey9T@kO`G1>LtMAGUqTjCr zy;$kxQ0U+H47ism@k{@==KfwkX8hd_hMIr7Vq#{vL5u<|fN%`#1H9_FGz(nJ4Jv=b z7<_NQFSiE2{wH20|CCXO?Z0BkF`Dx4wo7gy8%PIfKux@eEJOV%p|Wg3-h`nxctpu` zADku*5=$ZoAueJ@&2^C^k$7T3g`~ys8O(ED$$7WJ^JD~kMMHn_xdrW0@CWz+&VqkT zBH##q=Hh2R+{3<+BMD?EDI{azbF4iM^X`T&=*2uQV3~K|BREIYWE!3io#Zw=Tr24` z%ojt-$YxqYFY<|?A~(=TGM76<&J&SD<7svXeg|)J0f-@c;RKgPyI}>4hu26Bk+}P~ z;hdcwqxb!7X(;QURapTK2*-qTSEqj}>tOHSS_g7dXx&_z9sET8RNjv{?eYeB>i^lC zTv-Rf(^%6W*elPJo8*3Z1#EMx=0+(0S}jO4o<>r>@Q-K z*)kI~$Z#5tC^Mx&9r6}Rb~)w`g}#Q*!uij^3HS)h=rOc{Y)1L2gP#Cpmr$2swFV#- zG8a17*C!N?A{L=kSm|WR%5jvcelM4owFV@Ap>(oGUPx{ej$M40PyEh zMk#gXNiI=^m2w1LHgZ1B&!OR829-(GrfOI5Dvw6eP;B6AHd-jj_CyvIvNl}Ghu0VV zsi+IB7}eiRYnWvtT^T&7(&Eggg9J4srWaC!>!luzAzzyuo9u9BxNA#irTXcTRJDi@ zbU}GLZReI1`%BtOholWn9$UPmm=+hO)6u075yW3iYE#-$+Ecic;^d)eJmlUMQ97EE zlynsg=BsZLEHJy+UrdQ)H02XXW6Do|Q>U~Km2{^3p+l1$QN<%Y?GB}cLySsir>F(< zq^H+zu~P@(6nxzHS0nB{S!$L;olr{ru2#`l{s&FkH0 z>J$3EUteEl26%}VAM`^-(d9_Y&B@Ep%gawr9-5pS@@HpR2U)GrQKCwJ6jj9R zWIjT2SO(V+78xC79h8@6At9gDnw^!W(#nZjTEE;NpOK%-N*OvQefan|TS8G$@v&Q1 z9vMAqv@LOHM;pl^%j(9EwU_E0gJN<_X7}J|hp(of@D6!$R8CIvuoh4G{B^Yxf-g;8 zmz6mt)?Pj=dB(^wt247pGE#>o-%ydhI5TIOOa6+Kwk?0NQtsv#=ZrF$)M|4?e%i>z zBT}!ubc&bVw+1=^ZkHIi1|KuVzTVzGvU1|ilA`LW;-Wk1tTde___ z|8d{L@~3N-KV8Yb1G^vlvul@XxCSJDCkC0mxvD=Vs&eMyoaII4=1`oKp}9_LB)6-# zPu^I!Yh-a%by3OAiDYG8FD;TkloLL{HcpJ5)RY(OL zq)D;#eZp(W8|wE}p!gmW-&Z*degp2l56%`Ans9@MTvy#F(o4Y>vg z3Zo{XXD%DBOa3vJAGroGCfYR; zj~jPp-@~7bt16Y(E?B*K!NQd*7t+&*<>ND(XSKGp5ZB>nNW!d^mf5W>^2x&_;=>Q+ zbMl2xKgC`UybbYZgxA3cxsqLYs9nU}suv@;yNL0@2z^8+C(s9hE8*Hu<$Ap5vrK1| zN$$@oVSNrs!|cq>Qj`Pw_$M=$637Vo`LXL$b8>i6O|l8kS-vty$JP~H^ssUF;t4uV z_#EP4is^MgN*k7H`iifRrZj;c3zSc%oT)owE35r&H*+hh6$ zI~7@o%Fe6w5w`<-wA+kS7h|Wk7!P&FjEorbc^>u%{*JWQ%4-NNw=RYyJq-;bYsmvK~ zal}@ZjjlABIHJ`?T1rNx<(ne)qeqc4=cvq-%&jxl{Mr_w8jd@zA$SRI702)fXMpRa zniLfg4OW9kHBL3g(4=ZGEL6=gtWqsA==604A1Wu#z!b8E81}H+NV~uZ0;dwWTJ20N z)vA9qdVY(R5Tjl6;O10BmW|TMVp;;FrHCpEwZ%r$dtSbec)i4>C^b|c*+^mLQF(j6 zhxU?-prc+r1zm&0luyvHF%sz%-=#>VGbt@@PB?0B(nF#xnn!C_#S5;5__bdf~9t5zoq7hj{C%ym4{SQATaLYxU2D+v5{( zr`&~l!Hu&jLXDJxS3R-?Z+z^#J8riiQo=zsolfa+T0(2-Oxi|QQ<35&6)(|v{)JXL zyTjns59h5v%d1S;*^PaKIGLsw-2HzuDy%U#k)hNKn$Le3D|oTuF6NGdXZ{0 zS~Vp0*Owk=UYICtjyQHK(TBPQMlvu~tKPl_-C#LKVyj zgmS#7QfsstK?{OFp(psh6sa}k3r++W^#t^GJrUTzy&k;E;Wo!{Ge_w(Q+t{ks1eq} zT7maA5xm^>_p!?zQr(BikCkX@G!(o|PA6W*QARo{CdfPvVu zfhHuV;&-aKw4EyJy2wR8k{UNTFTbN|;*R2xRkcNM|ZCJsaf~tRx_?G5oGUP}Xam<~y zFxqVKM9Fu=lsX)#*&_=NZ`gV`FW)mfF}^fLzAHA>6m7-5fU86tg{ve2&-fx~cvIwL z+ibePu$-uajh0sVb&hI-7eYd?A#z+5(#*J^_tFm&xUtg=pw``tAJDPB28yO#c>6%z)(QnyoVlVlxu$MZhlm=_IXNZ#M6a8X`7!c7AVLRot+liXpIE<#~ zd^L}+b%UsBCy(pd(q+d4-ZL&Q+{<^N(1-u(;!!@gzlwj}+`pP06pqO!K2|do+{nYEH#*z}ht9OB6uo(beiG6;L`_)~fQ5%l5E$Te#6H*KGcD z|0KG)|7Q6{-pzN(pUEfs*JCSe-JTRq;kr$P+k3$nTCcjE;0Y-am#Rx}tK5TJwnl41 z+#F%P>NkAJwq+2eQLkDLmg0y zYPFzMaYTsJ&~|vj00wrA;M82Z5Sn@~1C(T!WdDtc7rvG|`hP2TkPe!U_SSyCaIF7* z>cks1SEC9&rLC~+IGBV-vgId!v-P}sY|=gpXcVCKTp)$(?l(Q zd#RU;!v-*akFbksO$T18Ijv3$180#=D`+`EODOY62BNG}lX4q3unhcwga#F|W$MMF zh+U!ZVA^QHGe_vh>l2OMSl*!kq+bxf&f&se$sWXG3&<**YrWQA%}MZlHhqQ2#=+N5VT- z>6_OZ>K(4ZfeyOa1rNLEW_=`H_ANN7S*Mez!dE^brphUD*)(N-qsWu}hiJnhITojQ z2EDhxc3^j(L+K0PlA=&@+wrOA13&u{9u<$;LqsiS4!uE329^$g?&9yU!UMvwivx9t z$FU9rJsj_syu=1J2wSh|)ZM1JLznu*1|I>;mm0+eAb)ODJ#N6!xxH+N$~}x-N8E0= zB4u<@rg(C(-xi#TG}+kkekLB5ZirzvyRCq_UQVOC;bcmItN?d_AJAC8gnjw_u zM2>Tb8Gl3~lZcP_$qlG+2vxDK+Eg9zgbsCN-xDZZ+(gsuP0ayx;fxjHz^WCwBObf!AKy63>tF=Vv}YVA5oYW>!|#cmHo{rnoajIxsU9X-rdWnSW#; znJ~9pZ?J0ttwg(28>L;YO~@J(n5WGSv}iV$wnh!B$?%}?;xHff$#>MaM!Q;Eyvya4 z?(p%dw>b>WDsZbq;gDBVqY=iG>~8TQQ|X+JRZF6c1*Bv;vAg@21xyM9(l1~y`ppG) z88Q~2S9Rf>+Kty;zN$x2KGr93I)C>Gx|X!I9v(M-#@(9)rFx8Cljs6>BwW{CNpe%4 zi0|Z-m+xHm@Y}WMS@S!-5NC_uAg(=jfXnT;QFo%z%Qxah%u$?G;r$(->UsFUmKn^f zgiC_8Fd{fMIZL@tS?XElzrM^Kuw#IzN4=dxr^Mjok`=s<@9+4hUc!PEN`KN7hzr?# z4VD?v{5!IRh*T;yOS~l65JE)as{^jpk$|Ci1sCGD3Wj@6Gi~?j)0SvUbOXOG^fs0~ zvV^!deu=9hKEhQSpX{0tzs5ByzS6ZMZf|O2e%1++0U?Ch+7P<;GK@BMC*X*6w|r(q zv*|{9o~@R)5lG+?eqP8=iX@mO}m=5Wc#2GCjYcbXrMa_2ktJ+b;Y4 zgYe$pXxo5tm^E#--RZ8ZC>!eW<^?Z(=iawL>Jz7r4!gqPRxd5=TN7|aLe+mlxfi29 z)EPBni5>vqb__?{6lf8rw6Kn@B5Ua6Eedbq0AusSfB>C{PpqQ}dVeELh`GWO=SK@q z7(L8K5$nB=@9E;I^?aAa+qYEkwfs_^=RI1>jjqiu;&OR(56CT?bepsjRgf?NTDk$5 z#P>Ht11{lZQJ?}>dY?W{58&4muy*a1%{ReX62w@20t&#xKhr+#-tAj<@w;$!Rs{=2 z4ZrCCCo<&B41vQa%zuf5=glfs#R8T$s#xPwboc~Y9kT-KwiueVm5T$#264LBEQ+i> z$DZpc36m^D6hzBf{3}sd!xO#`ipU@sNfyCsV#(!l`GMR(elfS0w=|jMt^qcTG;TBj z04zf46m3YIf;(Ui%n{%DIe{7XjF7=78HlvJ#BweyIl$R4{eLmi4ftQk9`Sl7E4+wM z$ZjDPp2(_m1-BG|Zq%w)8O%A^1I`(C>dxs--fSnajh31k(`?yWpL`NC3BL15mQnZ! zUeH|Ae9m1WFR>9`_h(n}(%Bx5OFV@aGh20rhUqKoOBLrW2U%%9csH+EFS`c~J>}ybB&1j~w)M62_Tv9|g zWQ)1bQ%piX5w#*tghug7m@lGsL@nKZNME6IOCBR0UVn^X1EwLSoV^899oy11njis! zyF+kyf=h6BcMER8ohG=uy95jF?iQSl26uONc;uY>-|x!zWV``m*6dleYBjxg%Vv*N zMT)4)b0OvUzAgOa%i?+SJDXRqrBbL@{3)zgcMmd)GNE@jqu5zPy&-_m=-`q~Al!=g zPoz*C?XE;FjZd*!7SV~4zW(|NDKTF){4i!PA7Gpq6_ZIvkW&qEKEXmG zLJ(J{A5?NT#t`G!B(JAE;}-&s{5^3=e*WI>oD}|L!bqi(5$Kb;LkpXMbSxuN*xggv zm{<+($fF_7ZHuESm0dA2eZR{GqyPd3(EEM-!D<=XnIZUDAIG5&ITC2LO%8=-q^n42 z92z-zrYYG1%aJQoD`0ezI*J;b3c=eEgEp}PnuW@!X-5`O=kPq3nI(Z9`Gr*1dL9J? z3x&pDG<1nF4XEJ}I^sNEDt6~r#qE&B5|$KIb$YOO-crqeW>$B7KfOVCE+Y4V>mE|n zkH1--AJ&H6Ryk2%DAVFRbwbUJrNW4CH>}Rzxl7a{cH)TphONNfo6_%VHWYGtH$LpEGuS6kxWYX9D7s2hT^hs&&W_`p?EEa8VY`x39-`1Z8Oo($JGf?x_f zfW(y8_o6Inw58dm~76eCccp7W3M)36Qhvx?N9Gnc8YU?Vd~Mt-78k zfU~W(I1I1dS1qkz55hp%2f`7)4C-+6Rp4?}wgwY8B|WfIXU$hVx)@|N^om7ckjV?h zam&J(DhLtKcVEwiiK>f1U|4wm2=eP=WffshY8ovT7*hq9dbY{RmTH>1oG!X3tMzg8 zWN@cYN!qAz%JfY{wK2`aJeMLI*J+nmYCYbTB@e*kKJC(&lwrd`OT+f>S})Y@1y)-o zMdE#U?(|+9$UE%s%R3vq*H$dz%=&$PrgJY&F{Rv6nR#hPbfW2{9o}0eF*(i^9F8KU z0mUh15!VM$&BAn*(9Ka!wM{)s{jxU>aR`}%T@4bvDdn|^i2Ll8&LgBt8&*wg)nG~~ zDN1vzElUg~IPsHUgv|rYilGs;!0|z8`ly|$c-JY{TCE+XHsIz)Z5v#U&bgCiM%~r0>zS~7^&S}~+ z?jE?qS&kj^RSu5v($5&w*=v7+_XkhT`kK_HlCh({_6eajmCZjzRFaw6q1EUlN?>RS z_3S>EZ-?3qU80t_;Dfg{ql5C`64$S6{>kIprArWn(QIOv^B}K%yM6hyvv*h1S(@#_ z@4^j0rXZqQ<0=SDI0p6V;351W^Lnr#ykKhv+aa!G8~rBVjV6{&kCvsK?k9SYu@+02 z>MomRoi?ylaVm|XxV2eJxN=I$l zpwWPLmD|4QrsM~L^0X!{90d5r*HBxo#)ljL{FT*mNGFLaJH!T2F7oXKeR>$;v^;rT zn|x6rV)zQVao-e^BIJqwtT51ot5<=mNXS5Gd+HM}Fct-;o9kSEj@y#=F?XqDxzE#+k_ROK>k&m=Y-nI;ALisgw%D`W{Cuk_H6T zAPu1As880ufP)#u?@O|D56aSNOwBhNKGye+&Q?vTs*{blzSF)dz-O2et;SxRkHABi z2rET;x6zh$Y2F?jb!&&SfCF}C?FkKJfzrzew%B4|g57Ezp5=pJlmb5Q>sW&pb==U+ zj6omk&vsZIE0z)nhf?s8SuQx5;>*8doUU)uLk7<@S)ejxu@o`oFZ)dYZdAKIHyaC` z!U(LKL`9K=SB}HUCpd^FPcG1gy-dJRFDq@}m2{rZqpKdo)1XN)J-}hAFk7X1ugJX7{iAdRhjYBJUbZl|6GS>DUeHX*f68cijUCp9}jBr zL~43;B2<0_JST2ncl^X-*L`VwJZUlX0}a|zi%xE=)oLkyQPHa;ypg7yM}jS^MGsp_ zS|9Yd84Ta^3cm*G1!ZFZ_EjS|Uo0;#3}b$6t+Wm7h`~DK#q{$TNBn?8?as>n;JFs` zawUEs?0Ns0Wfl{CH_#o;rt#n+EezI30fXdbGQ|*xM;V^^?C!~kU5XINS_Ge|aUhL| zfkf2TF_S+(lWv^|r!^7gzsuz(S@Qg48bYPiZyNF^eeb%g!83{)AX9{YbCte-7{pjb zROxfmCfI{H| zb|w2F%nsX*yLTy8K#THB0X6f08>()lRN2sbIa63js#1wQ4K7Q`-I^28UjWki_!z#^ zvcBllbyU<@e6w2%K&`^4qPmS1fp#iI z0JdY8p#-_;+2mY+0+l@J*Gr>HGXs5koYB>|GKma7*VwJ49#i44SxD`}-1mcf*6I-} zqHYeH;wA=rC$r1JX~AR0v+$*A2k5!`KIWPt4gDgt?glg+K#3($X?DfrX+tJ1GCTsl ze4F{v()@Ej=CY#KZANfM8M`OvC!U?XnIs)O&YGVhtF`Y<_?%n0FhhBG!C%aB)$H1( z&WlB&Rw^GW2CW|4RIJS<6cDpU3%5_ds^@LObx3;#!`hQvp_E{ug;-eDBd6^|-~2AM zVB8ba&9JJ;1cp^>1f0#vRNcP!{+1?Zg2I9i{E>nHhtyrqcsV-h+XXMAP`VnuQZ9Wl zOs~Oxy`1N=5(4^0`)r%b6@-8wW4EiWGPlAWvWdsld%3%p+a7mu5z125cv2pzluJC) z$uXhFP_GG=7?Vkr>6VFM9w0`{r=XzY5`wM2CeMOb3B-2U){7~bkWFL5Q%^cNt zqc?l)kc4Gd z)0nRw0NC3L640SW&Yj&>g|pluOAl2Qovd7~jTlauc?9!urHgtGw8p^?+(9l z*6qyqFm!fBE3R{}#VHFJD<6>X$_HHsSC$CU3StZ*g-U#%fU*!To=}s}4C*n@SG zbcn_*(5Q`VnjvQL@iLyKv_zt&Qd8qAJo2JDH}D%fOkG7vHzZvsP2Com&dA^=2kcHL zY*lzYZ35;Zy`zdUF)r9I!M9325zDv~eypi1hO8>I88YZKh20ib{Vr32Mvd<)L{mo9 zcjuM;2K-*7q9%j(78qnfGwO$B92fZ0p5DPB-=CtZb11!c=#J7veBN2eiMjpeaQBH* zfCDu8Go}1>P)Uj9NF%Dhh$h3Q7hZ#TBBAisOZ9%#;)UCQlDL*6k=~*RLCqK4W=@;J zV8Vr>(4eRdHEly3GeM`zr5*HDoC^>vZAA|@s~SX63u0avzwtbSH23QRt4<*C75RMR zTNhbc;Ps=Aq%sWM*rE;wY=9Gs9GUeybOGR1iH}te+2f94mF8;@b=RF1g$EijNAjd4 zjEOQkA|@~p?bT#{^M#B@69#j&J+%<-OLK^ebqlT5b|Gj&8SQQU2#=pCG!QzBMdya8>8vPwC&Bl3if=5yx3;d8ca;_LhzeN`(A*Hd{O3nUNj zUfNZqX3>5m_|D=R~Q9v0o>-)WBaH(ZNub;=b+?u-| zY-b=Xm}KPoNs{0L0!BXD6#8RyKKhx~#mo3RL>Q%Hy6}OK8Z1u5#=|R^R#K?##wE4# zgaEK6$##hqYJN(7st!`Zq>gBGx3}_NZO}|YUrDh^N6Bh_pnokUm3U$^nOKx3!(;gM z>*o&%f^Pxk#lo0 zAi?IRV>)_KQPTQoXdqE^IJF3zf9G|1q;Fo&-mB(}CCf?vS?mTkUK=fG;Og#DT1cSm z8YY-qabDK{Jb6(IqL09MoWWTqOD z^&{FJ6a5{;%7rD>67FS?!c5ZLp1)BNQAoQeXkm&2r_Vko;uK?8^ob_Zj`g|jq0@Z> z+k9e52sinq#Zf?nO09XvnrAPS^^Gy`$2&WOMOeYZB0eGhz_&gDcU>K^d|O`{6U6&Y z>E((1h%M6lEx~YzFxN={L1F6Mp?k#~<)41Y8^Xz-#scTnizT)o#$g7Oht002U|quD zf4_)Pe?l}8&J423Cd``evNf5r5u@`_5MaYn?!B&r3kR#`(rQ8=@3yL}o*5AtVLwSd zTKTpIt3wMUw)k~a%1kusqFxL?_|hyVA4gGl-Bd$qcm+)` zpgg!d*aZe0Eo&0qI@jEc=v%JMS6YmSeGUrHJKg%^y}xOw^x6DF_;VULz4iF=BIgJF zuMVt`p4JuB%^OR?rgBiqzX&|4*I1VcFg$*Hl@l3rnpjdiw#^9%_II=+gA=Er-Ns42 z_`Bl82qG?1WY(*rt@LLFR*1y>J`O#0fFKn|SACYqJE@RJWdUxWPcEp#3DjfxV{k6k z3&Yr`O;?E%#=BO$yu=Es73d2=Y4{rrlu73gWbeZUk}|Lnw(i|cZs2sgD{5)&%0^go zjrXMPG-s?W&@tZYxiQWq1f~j+3U4tm*TO|qy3w*dEW{r{O!uQvhN&bZEQ_{G2~hJc z&~YsAmo6`~GyxVzdwdPb_fS0i&z+V+iQ8krT_is)3cFrIiEOxaE|Fzi21HXUi+Js60>oz5!EYd<0*uOEfuPa10I>TX9RiVd&X*2 zEZ#mLs z)F$mYKJ=@pb#zcD{VO`X7dG}&6Jk__TPbzkz*r2630$)CEu9m|z-NTkhTj#ZE#9kD zG@`m}S*I?CiR%4OFTxcEld+f^+ijszERm*Y^er|QzO?go@5}}5pn3bI`lqj5+m`4# zTFpW!y8)s}Ve|TFt0q~LV+@J+1N)GMVdB4|KaT^W63*)^&L1_UD?>PEF%3IM(-n;` zQ87hJE-w?ECu(>KebD0CvURhzk?`WiP1fO&XqEDm zsLQ1LH#zl=C>@TS8=dDV?6WxY2I!51HtQDD)Qyn{XAb`SU8fslCt90M=7dlwcf{@e8KU}!Yls_`tIvy;6jeJs zrmZ(^=cyME18KIyx?T{k)f633N#ele48`|NmMKenKp@rUmEp&Jeq`1ZD<{K*KT!N3 zdPnT6!fErm+-a23+PsTWXM}FB)%0gT;FTbdOb*Kr)G5mjlAa|+abJMjYMR<}4e zVO@jUKu=S&x!mn!UoJgn8#=nK3t;7(GjGI9wt|WH;X5}*LDq5~L6~!pmut;@C41V< zx2z|tRjIG&6H_^7bY_@@)X1Lml^pid9oNIONW-GnRKq)fUf~K{nhy%)HTVz(N zhx-P8y~H7L+0MhLFcq>ey@oP+-!9&NZ@-6BL)g)w)u=(4ke==!#`vizHnuvO(6rr1 zl!d{I@;G+bz;MEGFCb`mm|D=`zX26o=6RGBag?}Z{Z9Jc^E2|D{tyYF-J9;t8uak;D$3HnRAXKJeVvD+qu z5O4XV$2slpdjA0vqHh6M8Orc?oRQF6hMkjRa)MssUXvbwb3##|bn>$Doenmpm;~*f zW;@+mqXhgosW{|@RCRX&VvfjsWH!RiesES=X>Z^~AQ|$UU6%vPZC9(dS^Yqu8kQEx zH-!#rR;Xu$VYRRU)D&LtjbG?rSXnTrt^ z28I9egnyEMLg;E57II*9zSZt!^!CeGyNG24XfP<{8S-p`3yVbgV%Z>P2!x) z_YwZ3_K)-_?stQ;Lh~c3ACWgre~cH*9D0}J_L4`X3=QH^IvDs|67Awwl5oVGJ7vU_Y(e>qX)AvD$^`tS&rxTn z#vav|plX_4HhRA>dvK?SnnfWZmrS&fqN1-aq^4~1u$vI1tf~l4FJ>41T`O4#gfET*OVCrT% zN3LA+X1t`($2C4vlJC5GBeJ4HNUiC^!314o?QJ1or8BqU!B^wQTnm!vhtp8JeYfuF zt5;1O*asqJu8lSD;&S(^k@QeCrV2$##Cf0XH7zXT5$Kq5ju zS%{SDtE@z58}w5NSFvmHl0|pWT38KZ5~MrYIhE-+IHUjiJ3mHkkK*cck*~IPRcO03 zzqREfITSS!>eEEjOUMiO{3}aG2%lJ%pC*=ndYQ?qck(xIcenf#LtR~PpU4wObz$U* z;V^iB!S=+S1-ud4X65SCJ97)L(F;<18Cc;yl3zy9y;B-!9A0SH;PO)NRWNEO6uoT@ zDG138a`g;UYY9Y#Y-`4DYsP}yVA{}HC>fs8wI&vI4rIhBTcd7Chp;2L+&A-h=iRao zDr;du?3lS>;7W}Kd{1A#)8Kvr_EwH569|Fmz>n@Jj0ooXE9qU^JMMyeqq3$sC?Bbs zH?RvFn`>~r^s@#~O^#^xMx_z${4(iHBhw-ZNpa(3nz`Fjj8@WxZDqL~+}H(WY;UZ* z@xbkIpD*N(icycl%71&zT+E0ebR^%t+!6}DSX-{S)X&+xhQCa|n~`cyaYer?h+F{d zd6i}OuD%W`_l|(Kw>K}v}C7az{bk{O4NI%*$J=jO--PteI zlBrFyPCbQr%{zym$VL!rWpAq==qzZ8Ja*EoZN(i|beT?P8g^rSXZr!Yvw1B~H`mv5h_-{4D;|E+R*^cand#TYq^4G2&m9e3WTh zk>|nQ;G-OI6CSJ00LOeIJmiRpM3DEX>KCyTbD$V|o)~7%@vXRrXp)R+WZg*ZW6bKn5L+`W48vGUgv-hQ>wBI|e zbE#VYtnM;gta+rKOBKSuEgoM`c!p4OW5a5*Xg(<8o-EZxuD z_O&I7I(1?kH%*S|tGUgc0Va<4sS3QlGl!sXQD?+ZnL*h_J0f}`a9JIw#*@>kV-a_h z+yOQWJU%(OsUUsouXQlAQRq^b!nu?@C8CW zD#ZLp*Y7#(pCw?A(5_JGrL$0sU^I^g`Q@xyk(H_x!9fPtnmv@I+KEK(opgrG4izC& zO{!V29>W=Oa@xKFv`#*aN~VMI1|OdHS1MK{D{$DHksdaF`u5tf0W|a%?*zf@_-TRI zjC&7+xfna%!OAZrm%8%qI4CZ&-vv3Y(VxO39icj6ZI>kW^*tT5O$`R-av|%m*82Cc z>!p8^;7U9_@|RVwPtw0{y8*d(K4 z5>#MIFn$?CLH?=d>VY6+>g$pQ5c+wb)K6^ygxo#Ogk zrlqRLSRdtkcNOq33Os6kw#|>zLaGLR7G(Nic=GbGud7g9X%x3+)L^`}6A+k7@<^N* z+O@JGYo5^WUT_S{-xbL5a9o>zWp*y!kiU`5I?Ab& zmIu+**cEDg>$&2>zHSk<`^xjW3uM0LZMy6(H?_{K?gEcvM@O-*o`65sSM6l}5p z)&517<)iP8=8{>gGYLBqGAhEmKj(*d^~FXQ++}!X(oem3ogJYpljh>ke(({P#}cFU z8Ev0$24IGc6N}J}sgET@9qlW%H`EfPVqTAjd&}vRcJ_t159VaAu4N@UK!V&)!VF&b z=mLwA>FFQF<_8Uv$@_`H(2`^7sks(Zmx|g{cKwsR{7ZWmzie$H#K+V5$y8<(AAgt> zHuKiFc@&GuT*6(1-!>}oIx1JQCwEr1JXepx{Q@q|c?-uvgBCA(O+R0(1f>w^>fJ)S zY&2M9c8CHOFM2O{)~bYREHk*KC4HM0eTS{wlrn~7$oPhI1?AN*YuPQu(p5Pdyn69+?%Ye-JZ^_6r7yxfu-6m2#oaRvNejo2&xcJ6@Q1|raevnp zk~e>L|J2O?;H%l4vG%3zskeWR|D;XIsRf`9?$6~{+AY?U)6 zoHw^$r<_k=lbS;NlAnF4-R4nrfbk&Yrn8K+2kJ?{P-d5pDTjH6|MDJ>gB1E71gsfe(R=QPJms!*#y8i z=Kq}5Q`w~oFx-%qIi9bnpddLh;$^Jn2FJ$EbWGzS%NU#0a8bX&Wga$m9E3gXwQVgj zt;VS+Fx7F?y=t(`jcQ_!EN-vgn?B%w7W86V$WGvSjeE{N*aUUhpsd!aV_43eOw7{E z5B1eNUftZs#)`r#k4X`x@<}`iQ3BvBDYLdpqKwMV>S2VYeHmiY#<$bu zug#!os^?7?V1sBMDQS;q^};TQ@2+b`2J^`zjq8Siur8|VrIi&}FXIMuk(cKPyj;q; zp1vFRh((+--BaKKm9_$`)$T)QOnHxy>St#6viFZ3=Na3(TO<7LY~F8`#~PPc&=TJ1 zGCU696LwHtd@wtm9%-ZC|2Ul)R^GFMTkEkD@ahWEDaxd{xE$b{T*yC-T*~?S^-5C0 zFcFo9L2@jw0QW+Vg2GLa!_CIW3Az z4#gT!T`F_$j7f8AWShZFG!Uk9@P+u4Sml_afPwz2X+Hy7Q@cuRuSotKq;kO-J~_7> zp&Z+71^w+{$*69(mT44SDZg`kqT}QZc+mYAW{Y>{tkPIs0aZili<{ z-nm*0X4LKuh-G5)Lc6H=xmV8qAwN?y7vhOv<>UEhf2D5v?U(hw1OgpS{=5vS;-tu?N9byxB1UYI!{*7GYCf` zR&X=>7Z}Ld{EY*$Qk$!q#(5&#(D)kf?!}8%55GR(o4w`1)dZ**m zk3C*8L(E~wv~554?e;knP>Wq^!R@=upwO9GW_Mo+0H#PTyf{w@ukqHO74E(BErUHW zJYS1F`2(LTTwe-En=ZB<^S5q&3KO2ZX;xR)-kKb%^H@5LCZ009)nr~h^;VE^K8^gG z>H0Wgsyh@Hde9DP3vecgd5qIji7(&P+&=P{rh8c1(|A@>s)pddJ}3|zKhWGbT>^_EH`-@D@I`}zLMhE zTjBw}!e*;AG#lTb2&)Jrv3))!N>q=^y1irM1-RRoj39?Ir;;w)omS#fG*VPjPFb4e zZmsqcW=pc?2tB+eJ>1@o58uM>$3%|@lN-8|mb%jr@7o)~mDjEp;00)bYqaUS)blVW zDSw>%TD@F(o6bGXR1_tHR5B{2P#Wc^N7de>yX-@tK|^K*gI+F7+F;l=iN<} zhYP+;Sq0|!LezanC-z&8bH_mDu{zbK8Nt!FZZzdtrU)j5Q1?kEG07$ehni13TZcGq_k_7buuJJ=e@rb0 z)|1DK$$yO7ye|y(KGRJTpF#vyXpA+zVfq%M#Vv=v*``R}B3)mlhOjzat}sktTa916 z(8kQ7W!<`^jK$w4ht&R}@b zaa-t0of2a&Ksh)wb_;lvN)-QmZD-&E0<-IvBE; zOGwz!R#Mf{)K)nHN{TMg9}g_Uq=siP=E~1iDlTS{k}_gJ2MY&*I8{wQ+^uEoR75m% zWN*j9T9{L`bTlNJBPTtl>{N;?3hI5^$nX^V zn;XZ}lvG>lbK5hIR1c~l6VS&vHH<<=v%}kK zY@z&Rn23jb=J4}OiDj7O(6vPFQ?ta-XUP=Bl6dMqKob3eO6}77v(`|&`$|?*gRZ&! zlmy^7o2k;uz-xJk&YbnY($E5b%dph4+_B}vU4Lrio?NQ^>6P-3IA4%z{kKIvLfM9P zmOXZ{X1-`UMoqr2azboRCZ{A>m>iY^svdYROhPXCGwIp2%_>6f=KEN) zz>Quj;)d6ZQ|)h6xE zb-Kd}*Y;T)mieV(b6Cnl7$G&y2k88HvNyo7hL);RgF*Kk&N$9}d%T0BE5E>v8jttJ zw(K7L?g)nRFOVj~W3m67!|nWouv8z2thPWvRC}NEQ8!(QO38@Bo7NIJjRy7EzI8cJ8KDN_~w)`r&x zzE$($ZrrfquC|CeZc{PCHKKt!(`HR4!t;7?!8yW2jc?qiOLjON(_(NR*0{`x|(@-BuP=f9d=$Uw^B@PGR7^* zOiQ_TSI9!x*nYkIOniPE*K}4btIg5OWK(L9PAlKGsHu~xE2+gc-Il*gsF_j81)L8c zTe&@=f}e2~Je=id;|UZ5nh&F*25{oNcAr>GsKs0pl*yFNdksUMF2ye@>~ED&fRtqt z0tfTLB}*zio${xk4SJ9zO#)wu^%mbg}0VbgK+QmnyS-3zn>z08t}6~}U3 z%a2gk*vx8_mddZw1`H-;c=f<<@2aGWEkU>O z;MU&Qjj#8U9>&+%y$U_-CdO`YlO7>PL8o$dfv1?p1BVGSMt5D)rlRfZ)_f^Z4Jj8j z{*xYk4#TYlw@b8Hzoe!CG8(DYLq*RL%8Y481yNPRi{CVn(sh$iS8~Tmywog~&Fmr1 zxufSdrV*NKZ)>e9T;1{#tM1x7#E!EAp$5?0ZzDB!mvQ-l>Btz{t6>5qjskf+GEEM0 zo_Yn(6Cwv3^l=5NoP4MOw&vTg#0ZbCONn+`18p2O1C49RXa05oDwMQUiYx2x-H*XI z4Cw{?u2H4%;yR`9w=!O3X|wJM9bx6e8QexA;YKVD1CZmo95u$>jpYI9!n&sP;P#ON zn35b#w0pWrJ0rIYjT-TuH_TPrv7?xYp#cx1iBc}omgul`+?InGxOygdVGJw|eZ-on z4IH3@ZztdEc9sHi z$sBISJj_mX?PmS$;=MCCEKjZ~LVyM%0O zUG~|l#HwRxhJ7TbQ+Hg>O&imV&pcr;N}R>K7J3G~V?_dta|Fy7xd`C}8gjTnZF`Sq zEbjC-v6EuM!RY2Gt%ukwwJW7ku6m(E^6-l`0(C_QGc_IW%Y+U=J$RSUmi+D?+fZl} z`;{1iwD~98tMb|R`KmJ!t{saCg?RA~_T}Y*+_|Qwa{fq^&)|};K9l^}tU;4_k`9!k zAR9750N*2}&pO`PzGx6?x)($cS7&FIClrCVuy4k1uu8M1a`Vi0qjijEwTNjs zwGvjBG3%|MwHbb+RlAz|jB(sh6eAD;XYo~@gaqX6hXOCj^7YZ9Av zqSU~GJZ)BRop6&}sfm0_#8JT-5FRV0jwtSK)!Qey@8!amATURC&0vh25|Cjn#C9H7 zEgE{RCFt4=yZQZcaN-mudk%ULG*^)C$|prNK60AH4Ppr6GBH7JlY<1YK17_WMjo{Ax6pJqdWNVaaV4o`{r z_fH*`$S29&!FWS54IfSFUwy6+K~WP?AeKFiTJ&c$-l+NUoHqE z+=xQIJ9^4y5oiLmY4_uoTk?!y&zX6ol`Fl-I9}Gf{;T~Mho%hq* zn{u%jx-ZOhc9vRa227J3QFWAZYdvXa>(IxRKwl8a-8TqA3~TE*=6XhWz6MQz*X2jz zTDj+^%Agg8pc<(d3XHQF9FrN1*T)!f7PbjmVLb;?QBuzZ`o@`Qm<}Ot?WvL z#%m^YRrG8T+8ejamgLSFq9bCh0r`o|_ivHrp)SGOI$uv~e@^vHi~?Se2_x3>kUd#_ zqeRa@(0n*uVkCEF5QOMP6GK?F%pc0a1!(?-{?q^bU}R5oJO}#Vh-=-NVeOL5EwS3? zPO{iB+8o1tV&KKFcxvR;fmfpX#OO;Xde$Lxrw8#G#%NP^w?gj8;Cm`^)&|{<*#+DZ z-|0fEhOK!Z|5K$PZc2bY>HH6mehd0(*qRq|D}(Q?NN^yd8ZzBN%k9P z!4(XbZ)C2V0@MSXh&%;XAfFf@rkB0hnHb|N6bXX88 zz>2?JZT-Qi5o=U9DO*Z`AT_`wkJF64IoxPBXBdROC&@}k_eCuyzzn%L)e|$1jFJ#N zJHH4?C#-xo*?8}RBZ;Q$>XN@|HnDQJs=~^DUU>HYoDK54UJE|6IoErt_4{Vv%@KU9 z85bvCTw>e9u0?@*AkB&7x;gEN_s8kq*PaiH1p2Ek;{3q`v5`+qk=nnW9FWvjO1#)j z?CB~oS0Au2LiLH>!M-ntyy+JD%y(0D!#ZGPvWocoMd*s8maHC@4XhIR)5gkVs_QH5 ze%W5(9_N@><~7?Du{%uL2wRwE!$A4h6>eyT_u2p^Fan`Z?(=x+oAz!AqLy9!HQgz? z+IrSDw}Hb2@vs3zm`rtZ{<8dgQ#;_)H|HJP=T7-|fnbbiK5raSpYom1d#sQDyEJ~1 znv;@|knwFRhy*Iq_uE!y47eBq9_0G3?|B#;3-8}J=eI56KdJzS{Te0on-H+}=5*$; zD2#uDptrD#o*2T&r#~t9@$T1uA&PnbE%|;!^UwSAmh7)#Z+ZSs{%=GcDbSY@%|GW8 z9A^?D3=Db_Aq>n1bnrktEPMT5--)39g(T@i!=M5Gls|UKLk9{nqWR_^!ErKfbw+~= zA^ba$=Z356`A>j_tLv19g}XO+%Wk*38$@JxI|ueQ64Iau@@=wAl3)I6GAyJ zgoHY~ntxAnc0KP217|>Jtpz%zkaQOe`VeUlN;xVwIzzxI5Ii}~);oj1aS^OID%U#$ z!Ept0%katZT)(Y#eTRg?z~lI)-}(K0(49*#5aj9->=dN_{}Ebx7>qDL_$YIk!Y;vk z2*}Gsxqt^d2%orlF~lb5Z-HCbF(~+i_fNoz&>x!E>tyk?z)i4>AF}u2p2d`Y*zAnv z7WJ?9^S^HAXhZ3eZ4AOw6OQr2H`rDk|8;ITk8R%l=gH*`(1}XP^HG11QXp!^&>3eM zo`ByItxe}^gem(XQiSF8e0U6apW3e(ZfsS{!g7_z5|QY)EE_dhgq6oZdv66U_OP#L7ec*5 zGsPAs!uH4j((>C)WCG%Dp}+DYuM-jT2>S;Gzs>OfL!@E}K8kKFk&FQ?Y+F@b6qn4`|Ia;j0eFqk;|wq8G2{9JCnl^eEU7Knqs!s3SjbE$ zEh&XUBOq?9kmW1S;LKGShCmb-X^&)Xx^tMQR-*@WHBSWE-L7hZFj)P0A7k)Dcujzt z7Pr!>)1KrnQ~iGU1FzD%;SX(pfR=qy>OaLk75o|9iE`Q+H)1>d9ow4LQWFM}v5fY) zwa+;Z7Q6nEj~#eF{2KxO$^IgJ__puE*}EFwZ+-~JWwh!1n=H_qG_z}*3fPiBwM8N1 zI6Go_`9@~v?I}%v=MzGn4vEYe2d#oI_gqKhmo^+^H5bVFyw>^5^o|;Hn_qvxscLT| z(DXUizhrVUhzzflmp~-sGG8&er`L2019ozGY8$)#-9r%f*iGEzd{Ol%SwcWtlhub^ z?SFraW+&&Xs4of<;Vot1%Zdb6==rkRwR97L<%a3{$70%_ghyido?wW6t z5)fdRvG-KMbnE^%NLojLK?l5HAD$;pgS`2#9&=U^pS|~Pg*pfy==K`2SAE}n>_V?5 zd#iBIX*mE3$sVIG0?FPQ1ct2s`hUZ>9q}*^ZrI7P-ZmZ2>5d4T;-2Nw(-=9b-nIPabSm@kyhdx3u`_t`F;!Y zXcnYw$X?pWr2oa6kqn|UYsl8&IY#c)Lb5ey5I>+RYRJ~*Y510$gtwDVjQ7bGTzy1N zK>O{l@8uyYH>FGO+*pzIq&Kv)rNHZ&^cL~*9(`bM1>&x?F1Y5p@o7&koss4ffg6gQ zc9;2A0&^(*?DSg=Lc!xb#s>&|0WnZv5x7?%aSav4nH!F8+^f3|V`ZBVu~u8Q3(H7SpLF!-8Zdj+FOh`y zPtlwIH+!%n&+kx_#W_8WcVLPD&m8n2MaXX?N8r~akyH>Zel_#I8OL8kf5bQA|Cgcm zE%p2>vXuDO1xwV292zBnkI*ySdNpEOFlmej$G=hdi3Y4>?jQ{Y`cR-Xgf-w}ny&hfV^jt1dLY`W%l|ZT~%# zD}MhEA$*IM`ZMe;nuzLA?ZP$A+O`T<>3Oieg1T4~YkBE?aVfs_NI$K7ez)5;{(xj5 z76hW$gXRk56T#nOK@-T>!+OAb#`pRjIp9b(vl*h|9{Vq!#Uq&w6W+e(NE%A+RZ^j_ zOVBO8HrC>wCWQY2u7H8#{~_-Zgyi@zHOEp>PZN?LX_z0YUOa6BY~H>7zk~9Hv|f>` zFzfnu{s!%Ev{cU^tMS05z}9(E?sZ60+v&ECv)5s&N1mQ9%GU3MZO`UE!R8$9f-#0F zb2Vhw(OP)gj<_g79C>_vLyb;qYge{AL0X#%Q;pe<4D}62QN=9!Bczvp^}Ye{hW2(O zsO&?15z_A8Fs~mzw>7}tn!gY>%F&<1g*|R<@HPFRMjL$O|2M!!ZZj3W$hyfk+9<>F zUzC+x)@b9uAueocYlF23;E)!LpzBM<4$h$3*ojRvv)@3Z21 z5WPZk80B&RxAdn-?+ET>;iI^}9Kt7m+r}Q%KQnxMOUcd{vZvGdJp?y7WEU0aMFwl^ zN@(m-UFz(GFYkqaJN|D(`p?$?3rIv>{$GrJ1yCGcvoG#Wa0~7h+?}Aog4^P5L4yqv z+$C6W5AFnacXxLQEbj35fA_0;_kML>)vM~$^E?s%Q{*&CH&V;oyQJ~mu zR~+)o{CNE%tPuD(^?@oaAkrlk6K!Tj%#&Y%HDqsQC8PT8u&v6w|6p%aD7`+U_SSKp zbR0{G|89_jS56ysj$3jC!%m_Ob&8vFWztrn7Ilo9YDL*rA`|sH_wG`x#s2~lQB}Al zmoUsE{u^ND26`7UOe7*vVYxpnVt}w;xK$jmFSs!su#dRo?6JGJF>SHSxu>k(m5H)s z-LhoqnAUT=Wqqi|FU$HcjbGLD6gqafb2O@U6z@;$L}TZ`O@? z?JV@)*R%f%)(d}$dMiYs815#tT_vL%!9Q2I4mAG333r8q}ZWTh&K9$g8kiy zf>mKRXh?`Di_1If#+*Rc=#lOf81rj1CKC{J9L{hjf@spa9t zfkf}vcy!fEG4o!D(a?|-Omuci(rz-{ivf-2Y8=3}z&vBNEFsNRwKnixhmmw%?l1oZ z(}j0k0wJkso$&m+@}tvd=CjfRw$E*pBJ99?BKfGqIU9Ui&m1^e53y18Ja6`i?nbx- zRlVO@m^1RFX9^)PN;;QAq^T{kwZi=AzdQZD4gY&pQ2t&p>pxsj#S_fMxN|w4v;VBQ zi{qZjL}Oxo6J>nTxdF|i&j4{>&qj_&G+?cC^=dZlKqv7*@uGJ*aaQa7Q75<6pVa2x z`iMAsH~IoRlczb{S}vhf*Zx)mYWAC!5qZo(rNn#W(L3vMOJ5$?o0HIjIUO2PC}|kMSST{H@Yc8P-YMl&{x{2gA0i+eKnO1e zv4Zrg?trLsauxcvf zxpr8LSHS#~Jb$r&NPhaY;XFQidOG@jst}pbMqp#|476D#@-uT7;T|5Xk0NhAu{2 zghmr(-mG`?+S1!mj)A9vFzA%*BmzTvLyCMPKFETUgy2ZMocPn=&CLd%f-DI+)ky(@ zt-=~83*f2Lpz43*pZ%rmKp(d#E0Z326DayAHsJ5hXc%7)K-%d}`q8a;i)dJ%fa_Tt zhzk9Qwjl#gHY$#yLK$3)DKQ&LZrzK)WgJS#E*XWNEB!C}yWL?8+Gf=G{ia^KU)CRv zoM6RYv@_DQHB6fi`CT{}S?wVoc51O-=1k=5T#v(1MF(yUQX6$%Rz4 z1^;%0u?Y2JL7oUbx4ijn_!_X-SnQRHo*_oYZ}Qwbb&pt9q9naR_m6b^Biz@>=8)RR zuiJsQ_W+b{CsUox zKks6M&1c9dt(Y!%JR=|aV;o-ljLpctNySgkE%>;NAe^n9hVBr?9ilen+CrJx2a+%E3>pTKT$J~=4?@1W9ruQMR?`o~C)gDE zE4=kFGL@;-Z|+Ha%W$8us!Fa&gAPf9LRR4Z?PDW#1Z~J0Z{t#p@SujlyHpk9mF>bJ zfA11E2<0>w{Av)&{g1AS$KyPJEjPo@GIL?NVcJ2lWQNvx`nsxFGxb?amtax@uI?wK zotdaEftldQ;r+S=L7S63StlMCn#O3u6oj;it^ivI2`Ty!g4Mt9)9@c!Y*sHGbk=osv$@+T|#b0 zo<9dt$T6>=FlTt+)P9p3`VGFMl|u;%vDw;s0E0EafFrY@9m2+!*j*+}`5$}#56k6I ze{SdOF=9&&_~ljf^0U4=GFRPBI$3^N;ckD?GbhcPt)Iv?03 zh^e8NYq|BhYJ%;lg^THPhWph!GubCCAgHleXAI4av0f;duG_uy!M9aYGE+BHuyK7K zLOR+T*?<6j#k7lC8~g>;HUW0Ul;C{RYBTi$JnG?LE+`0akY*B~Peg`T^!IS=Z2cF% zZ|<>gzQ}^yFcR>$2GqjzKjC_*|Np}NV;jHTyi(*3Z?oA&=;0_R$V*CE=FglcT)H|m zhUNaOL0_#MiLql8!?bI&hZyPM;q-0-z%~qFxkJYE2=iP&jLPj^qL1yE?b`QpNS*%- zYEQ_vKtEi9_Pq7W6iQ6}wJ|_`-+$s1>Tlt*82QESx|_cfK1$Is>Mlz0L&FPAmgmb! zrZ{_&7S&nu@4nNxPi~78nN6y-Xt6G`^s*#T@%)6;V=UCaADLxq$*s7l#)9*gfLKnV zcyozqTbVS}|6&yb^R39}em}Owx6_+(=Z~^bn>DBm+vX)Mi4SWWN(?W4LVS^qo5oRX z7MIhMISLm}Fx}-nI(Hh^oF*506dARVlQ)a)?^MzdbGE_o`tT*! zF>WVRgtRKvXjYG)VFfuc5=aXwY9$~OOas#Z|itZ=39cb{(PdG*}c5f?d9U@x`8OI zxNN-*6x5mQI6Apv@`;D#V)C5*)y>$IdY=q5QySoyXR^%*>l6Z$tR_F9>J*BNa9XBf z{p7Mt{m+r_CXu923h?6oY)0_3i(QCrjsYa;lh&v@`4PGfd>e(D@WBX`1b3*d|7}Md3Gs%Wu8TK|ETJ!>dvCulX05iY$U0IGL$P6AD2V zh20!#TdBXnqhCGD8U7o6iNoUrN5)3}OF6YDyo&g8iZHMIpVjA%vA7 z$msmgKXk$)Z9>ELpFSUS95QC4_Bg!&1fno(YN=UWuDO2rP6I3|&$(ZQMj3-%?8vQh zx00Q;HUe&7^sot1>oMP4%pvh9)LczWOVCgy!;5=wLgXn_)qSX_qJQ+p#qwfdeHP!A zks(G5qa=5FCz&`Nue-mm|~mw12|Vseg6Z}lW7hOsMkaZ2^t=4;VbqhEs-T!963i( zhNGB>@P_-wUUaqQLbq>V9>Tc5HACq8+l#tq!%t$fMRI=vU7%GxL#{GJ0o15;OhQ@z3gjG{ARC*gostih6tHPB{xquDVgCUe z=zrKD8T}GpEW`l*F9w%is3B1)VD1#*vp;1)wcvEy2gQCtUa=xqM>^F+c=~6nQz=F2 zPtq4zQgB~y7M&AB#v7>P$#U`c3B#f8?B=u>%SM?<+8uU#{YN+Ie1LPP*N0&g`s1-h z4RcxS8`wjy;MD7#{`b~hE2rxlgx_NURPj@r+$YCg*3UCLy*3x0K;HPniArqxEZ=n9 zy-zkprw&z}M5K_TgmHBgFz!_91POdy76)wt`ecfPKlO)Fp`0;o7m&9Qea1k`%f65^VmuAgIPjXEXVKHTPTYJO|*O zM2L*|9Qhv7VZD4MvfcWRTG46&$LOvtw{#kDoqFn6s%<2vwFX|fl|y=yP37on+uj}C zn^;Fj=)At<2}{!DQv?MN|9p1$UIKt%uYI&~R1bjn1#o?VWUlEAbHzy|edR{D&JAt& z7wCD+LlhSYIM<$bVNt_uvQ0!3XyE`LW;V+r5BxIq$Z^OcJBoLZf}+rM&?Sn%MuGs_ z?e{)~gTN&9VZiobNRZkhey`jHf~-P$N{SG0QChT~k1p?eXaLx~u3HqQ&atX85U7lv zAa;2Xi2Lf*CJiLW6fB0FAvOKT{7ZSyXg3KR(O2%A(%}a1AeE{s@t+K`eZwActlNYW zMj?>1p&%+GZd7|gS7!BqI2}++!7Ji#2#d0o!>d8mEHR~7GJFJ&!vsr&W6@J| zags>F$83aj2Y}{So0sfb%vo82j1!&fT5J-2Y(XU3@`XUhk00(pdvtjU%Nw8mK(H9U zU*CLRCN$ERIWNL^Q^qv(u^8>0v1H#7>+qGOFz9!0pX)yZz)x8 z3FmK8VdviVLQxy`X+Fk*aIKq-jTOd;YWh^#iInf8*%n8Wr7nl;=#wVzn*SP~#4{32 zNIHZxPa-$|I>Am-=0()hL1;BACO=cj&}l6)@XfnAPx<9GmG)<>VR1X38v?qZzb z0_$Hn(#aLm|I?W)6Uma5Td=F~hRIR) zxY5xtOO*`>hL0(^sa8M>uIlL&l4vlq`oI=}zOtT3E}fT1+T651SWT*AP&yVzyE>*A zZVp5_lu5iux94MIi!xXAXv@R}6!zN^a~15{3f33h+EO&dGhP)=ai%>?Y7vfjTM0&4 z`0h#>*kXN8;Q6KC|Dn5389%5RB2AV<`{P*Q(x8{K6$^5qOt>jIXO{7zi;fKP5{izv zyfzGTQN1m$U7j6Nn%ktNE#%)^eOpW)MZ?;@y5!p$B})w_kW_VLz^0L$sRONZl_07B(GTYZ6f33-sVzy2Nh} zU46i6PlUVN^AyL?}cQy2z9!UJs`_>`LVy0rbzm1ZIObn+TZ%# zps*5-GEMvOpL3Z@dm6!4hc8&3Ify3@WDaX@^s)GODk0>g-mp=B#aSCSo#Vu^86OZ` z)St;5c7O}RXS_FnRK^zLm<6Q2zNx^qXbsM9-W0~u@<~El-+@_AfDTTK=##3-(qKZD zw{gsVDnp$ywi*eqs>Aj!7TW&It~D#qlmWwY%=AYE?-RA!{LkSyz7y%;k!&x7%-IA6 z73%p21~s#NId0P)Pc`+D;niY7brYXresv3<-!yZkXS)yp?p%zun%%si<8R0SdDQ&i z*;rJpNNYB}IP5EoNb6A0*UVjM`%MdYkC9KIWg@mrf=OMC4J3>Wh6XbkR zwgwOqoXIcX%S=?{SeE%D3b#7A!788;7GWKi&O=-3tKV?nOIN^Ztua&uBj`xjEGl&Qnj_wF5HVSx{pw)_BP(cLzKz}8xAMGpH09mD z?O#y8E!qwZSBH-hjyBVK*Rq z>bKifo#&M+ODAt?y(Jhk9F2rIe_Fn7_vNmIwA%5(KA&E84ba6fAf;(Gmm=g{0qI?i z^ZePIc{8SM^H*>lgWr`V+(;vIW#s^2KvSbR$z)9uXukrq`{J$F?R}U}HxYW-N>>?r z+3W!Ly_pVUnN`r8KfuAlPfMr>V-|d&r>2pckg>^*7~1LR-$7%Xca%%bUl^YBZ5I^^!>KpNQz$p<-lGZr~y6`dg1 z#~*_YxpjDELMr^>HBwqB!`k-D!_m2?EOI<5Xrf0HUcqAshzXy=zqQi&Nb#vBl7}yT z`$2aQ_DMQXUb5*j13241PrN-(+G??42_Q_UYG5edC2CJGW#Z$y<-0XOL{e*9bxauGd9nN*nxR zq<+t&F15pWqZLjxx39+;{dPMY4Zqd_u37W=Y7K&u4}pfM`aJd>!s8xo-vT3VFipzY zXZH>IJu`DE*haO;IA?Ke2u_qu+NQNcIA)U+BVFBlZkXNi8yy%OY>kQIya~2F%I=Gv z59DAz7nV{s470~;A}FB@B(d5Ixr2JY$7gK=TN@W&ebchGEFSKj;eDfvj8?Az*p1=F z3*Pn&U})z-)0sB-({-t(2OznAENrk!9X_`6{E#KDv|J23Qq3sY&AST>RZ(v%2{CY0qUzT`Ty%`9g`J@JG6GISGk!8#CXV zB{h%u*YZ~q<=tf^(0}`dC-Nc6#w$=G52@B9*%lD0GXKt;m9eI%kJZZt{G(Mhe;4i2 z+$6xsW=$vo;WXeQlL1kVHHxRwoFMa17F}! z@Zl&wk->*GBbh~3v*2V}@u(q@aqTDPw8U>whIp50##9O9zE0##YB16yhpGWzr;$5L zSmPMx!S>&8!@qVD8~f=UfKY6Qz#ZIeJDcHObD^3a98@U{WLx>7Jj^ZcRK>f~YVcze1;lHx^?$z|}$ULuB}ki)upngm^(@ zc2a?m*l---`=M(g@jepc!`4AHLty(giwa$EbMK+r^kTlxfjS99fsL&;NS z6j*6!6F(8zzVYPx)}H(Iv~a!%e%F9b4MSB?404= z!@X<33qg2Y4SZn`5YvJrysitr5DtjB!|`6#2VeNUBRp?!zs((JSTZuI`+HE=fDjBe z8AZyUBG9%3EH)WU%DrP(?`H&>*ErBNHuOexPmtfG~JO8d9bdk5JI| z3@kP}j)I^9+r|5NED&f&$y4qX-Vq{=urAvL-+Sg#90l)8&~{uv*ykaET@u^&i*kwq zKytT1W4$#bzS9WRyIZXH)GQ%ugj0q-;$u6DEU85S5abZSH7Ajck(bmfy6PjndM`KhhKr`yi_MsYCMG2C?N za7m)gyz%oY(P8M$G~+&r)`kiXbkbf1#MNIy^BMZmiNuqQ06*VoMB*Y$GoJN)8AKA0 zM+6H+iPb}Q5=}C9(y_K%Q$f0NEuqY&5uK^?CchDctFRx=d6VSIFd}fu^IXen1eG!e z%BF4w&9B5B*(^1uc$4`-ZyGu77EX3yKI9G5k@$j9Iu8X3ZFD*hisOOOAKG?-ZLKSy zZ127hxpuG7gS%r4*wTJR)4U>nWt`aSaAF2JuO1{`Lq+z1J=kZ5XGGQy%yz*+M%U$4 zzbv#AB+)=dCwfJ!u2F34xE+^bQ_%=7rBJ6FYYvn80ur{du7z%PQpF zY0=B3!oU$P#rVLp2@NGBFbwd1dVnizZK=bo-M(uIHdNoQe296b^^JNPt-M0X9C833 z=nXh92nPA)5T`3DT08y-xyI1eOWiw&C%6v?OBvw7xwLg$gv2yje8rQh_ zet)o3_^z#HAsmaoow*u_zD0H+>&=kW{qo&TI6Y<;lea~HY{J4Bk97R=g@!j&<;clJ z|7z00Zqy$Rhi)%to^>GkZs+AeSvW0bYX@V@#{(m)-{OL=m8i0d2prr>?Y=$s-DW+h zaqI7Qf%OFU1CsCP>k%!N!rl;?7e?M}WFu{Vc+mGDy+5Jv&OD%;b)JAR1tUYi%EAds zyS{@zhrOd1iQuE|YhfpKiC3akoUzn0A%(&Vn4bvb1#TIWZchOoCXy6F`Oj|X^0b9r z)2Tw8(?LRg(>MxhAyco&OlwPwg`bmRWu<*Z@g#he&n$1?cxplRUm=NG(Y4a3Ykqul zA0hD`Bh=1CQWs0AqSiG<6sVC%Qa?v@R@+djvgIE$) zbTz&2MVy%~FnxY7v4=~O%SYz04`S_D64&&?r1>$i$I(#8-^ZfY{2+TEmj{U@rO2tp zQA5!|Xj6m+#8QjX!Dv$?ipNoR(-Uh`1W?3Mn;WgNlju1EXf?fpX(3FQQYwR3Qy-$3 zFeTm(8)1oA(@T4eSktSj6V8MwUpOo##96r%6?Cran}E z6JnHH6^yogH2O@RdTe1*s7f(FaEp-F*AYI)DO=ay#59 zCA5)3hru=nm%?HRQzvX3M^ew6f+ZnzBtCScCUgYQ>ovp1OjeZAw=i5a%?4dCcPWK;LG-M^m_tf_bX%v~weg`9} zDRR~WmexpeL^EF~NO`_;NzRqcl0K2t=l;b6Cz`Q^x~6z&{?76sGuAXynPYbSWMG!3 z-`L7$CDhnv{p$mcu{+3PeCub(w(+UAI{R}SgY-HPEu(v--DJyRzmNriUscggUuG#^m}5JMBJc!8cqOiH|KTTt`WEo~{~`{M%~ z9Q*_Sg6a~Z7n5yC(u0oqL37FS@Ig(~+IbfG75cS}FsHXMNQNZFKdA zz}=)6i9nsZv)y`Wx%2sc+e(9*n|*PKL+oI?LRc{2dRbX`j%NW^!5IN}pZTSD2XuH7o6NfPt`3mvfZ~bY5H1_pn5>($j<)DD3$Zs<*}R z;c}Xip%tDCoyFhxMckPomq`@@FUi*@UQp^bYqUOhk-G3?f(wV+$2M(G^FmX6xBZ#f zDU@8bnhoivm)Bd_Q}EBUYjs=%pXR)`_dYlN^3mXRH@l;HTkT%DAyKNZx&FIf3uw6E zdHw#jvp`m6lr+ne>x_3!*}|Hxb;kLKbAZa=`g(tIOhy(e(qiuL_Q38$yTffRIdP(O zbVZaJ^~=_C@$cejIO|Rt-iF+xV*FH0dnCEDWv}EO#7};$fa0%Vf9zkF`b>Lwphbuk ze9qL0juLxXYry0okE>tIi1Z75PXG%Z!8LKF%ND%PAIPlJT$;ynl8D1vt$4@3CJ5N{urgdd zx2~D%yZbTq zH;Vh~e?(|!TN{^tlywehV}2QFao6A23;(Wbm@{JClC}dkIsm z{ZQ}7=B;v$K);P>HH+G=$pEN(q8;l=?jzE_LVLcs8q7`5ZFE3Gxn}m_~VqM&U?~1F9#K?HELt~@0 zH#vLlYaIb@g;nCsWvIDAXZ#>y@|t44RGuBEOjImCm#=Q+_-78aX*!&YJl>>! zZK|HhU(4Ef7;+KoAeq2BD_JcH|32Cf^w49`maB+Hx`)fo_*3_FYvpDwI>SoXR@b;( zTPWSaVD(wPC0X;Dq+3TUPUli-+d8B>&W?1eORT&Z^6LE&yjro$0R6!f5|YoFT;RTMP!kmA>>rerH{p)12^F( z)qhq(LVDw4B%GwElfoQ%%f9lSmVQ%fNnP|w@b1WP{mtG3t|l6+_+LlVmUrUzyvEzOIqS|O z<{nIHpZlY8tZ~(uD%Z5A5-J~9;BBloSYvEE<7oppU1quBrVpX}1wPU4d3>VOk?)XXmqQ85>vgdK7Fx z^KBZX-rOuT3{HhcmFtts=yHL`-AyUSEbt9uyaZ;CpM}A~LdixfT@q?HM8~-A9IS1W!!0l`K(j z)lt`T@+^%c%ahdDYW7*5@nkpaj0%pqzs)3Dst-Pq;;!`vMCKlqTGc+*8i=?1(QNM* z19EoyxkQ1&8p?|nsdAP4N?Jq!aE@3CZSuUw%-T8TJF4%08Beb_qQyZ1<5<*3cc;Wk z1Vy$US%;oKBS38o4mqUK8B=1fg=>7!y;O`LY>uK$+8@|-R!29*lh7xNfj?o={@{WL z-A^>ax*>xNEhm++DYv6)kYA^Ou|IPs z%zKOUv5b!q)JD`*I^zk2>p#x(Nw+|YTCmK|Zi%^!p_A&~i!O(h)e)ty? zVz=m)j5?@}=8e1WQUMxBe^WT9T@-w)&#e>!5)Nj)6OQPMezl9UHw=a|rd{DK@n{bk z^X^=JDyQt!%+eQ*0^%tBqi|;l^2sZUg}K>@3;NcsD6(?a!}cN6tVubWM0NGPsyecx zD?=u2QdDq#6+ng1QD5YGqwpyt@XMtTGFIIY(nM7*RQqv!I`x7`0zs%vV)q`bp zs;Oh|rYO@crpI8~eY`PI4N8BQ#r?z|kKka8Z}jp=w@(;?3U~|Y^O)^He`(+QK3M!D zg&M4^BQuh!X4cF{x`XaaYE(x&1F_BkVSFOa9iLBg$H>B#avRqgwO#nMUi6`Q2j~`~%?9${%#cLTZKqnpX+}5zo>YE#QMT3wLfP%y- z=yCtviN8`G20(>psbFAT0EqRL5cjyc?r#ZHf8lYIvlAiMKUQ8V%Fx-OsdV;(4U2FQ zZ$FcEa(h5Pe}{O~J6kQ`;mEqqFfc|7(>AQw-Vu_|`KoAucqeO-rnNC2iRv@0d^I|o%G(;)}7sv-yDm9ZH6Dn{s7yh)S^GIb* zC6iGDQ>>TVu%YkeUxgvo4Y6pXUg%lp6;bP$xwS=2e`s&2xUwU?8g4Khhs_8lml_bv z&1-!t=Y+zp(cKxo{N+!AGGPb(sk&u=pk!w8xumjWyrM0x&K!4=2Tuw8n$%dGrHAx5 zBXixI9=P5c+D_PNWt|Jp{YyiE+T$S{Z&oI4q8|HDlcZ>7Z8*6`{h>sv4>lQR!etF1 zNr#iIgNiD~QkjAuE>%O%qWS8VjMj=ctkiuF^|M}xtm5^Y^Ur#5VFba(`?dk&?eI{^ z0%#;9B^>?n1MHz;x6B$m-cL-?ZT>O%VvDZGTfnRWp*-`f6#YIww4G^YMC(P3$*1`X zM(tn}&HXN!`-OU9YW3C$wC(<%g9-^0i*je*%GH+hTv6BkCDwOx1G)HR6>D$2aVsTQ z6^=~&%T^--)wqAdp1cH&Q@SFO(-wIZI_)g3Y1?i$)_iG!iOFyW58#dbXsh~Tue(Fb z@(LI&=ZOhQGrW6#wRpTW7;ECBE047Ig$c6$P;b|CWEXt+wYK%g#yYshs1k|t51c9r z?lv-`>vS}Y8|sauq{Go~tJsi)j#x<%h-i1~xBZ z#dZVfJgNl2;cM<$8PlM9{dtM6MKbxspcequnFvR{hx3I~kM|ZRf%Nx9_GCUR)1~T$ zuJPdX#C8j5=o*J%gFaUPCcZjZ&KXs)s@Y&U_koX@Pv6%)?6lfs|$d;*}E z(NDNx9Fdi|pkZ}$?FjR+K*uMbLA}5nxE=f6xbTC}=wTE_pr~qbMulG*-s^}p>v+5C zV(fe>^3xIB^XaR!UC8y>F1z~rs0C2)?5p`xnubKT?&}M*)c(?!jqn@9wyMbn?nw#3^vhJj$)I~4tNAr&s>ZFgNJJNMuBFRwoi=$E(;)u00kBZ~7s3|Tta6=W{ zuO~QgslsTfjyX!Eee$DEF)c-%V@A2ivljDL`xvIUXXbe}h5+5?ORmp9svCd;ipLau zCFQAr#Y?}$nrvO;YV~}^DUQ<7BC){uW8AOedQth~h35*Iy15;^#Mr$DLryvZC%w9; zh(*6p-DuFZP@iFfet^3)uSUrDh8B8*S2(cw%})`$HWp9+_ zsi;iFGZ6Z7N1k^->X$J3wVM{GvGZol4=GbKPd;9V02vyv4sf&r}gK!%^(QGO!z=?|JXkOkzPmA4-rplEAl9! zu7eI~1quJ$jrCB-^X-99v_1q|!#xN|-*kk}{yBD}p1XSX)#UEq8JTnQt9yt*F8Gkd zjTz!GpWsKQsRH`QAAdyyd#KHe(yRjnF0^8y1c#PHUk;$gR{}p*#6nzFfTl!lY-=G{ zmGB(ASQj8tvldZk#mLuDCC8^TAQ4^aY%=ZFdro2&!pOw}xY&fpg<&opgD#(h1@rVM z6nmSGzHNZ2Z&4I%S#M87Kj5{0r|1KdtGc%_8Q#a)8BZ~=V2|hnV=h<72H@g##!{FbI z8JHI3(F3~|g8AqjWh4&1ZZ%-UT+p)C);`CPlofxQ$)Zr{%lYv+FP;wFfK?CMxq)&> zKl}$6eC2)9+AoR#nj%_~*41!&6)@TFk4BNTnP+MrpcL9hgjfHwz@FE)I@~_^=@yga z!2iNC^$Z-TQ9Wm?@d=Rzt&lcXq#Y9{9A*ciNQ+zXYP&-t{l#_1?w8^+2PN&e{=ZS9)tKf&nn#6dt=1t&O5qq0Mk!^oS3o^auHi2vn9=yJ0Z2ad`219`8P6G+Q9PHg}`w91 zdwS=dFuvtO+%vu%DQ!2i&nj*4p|X0}F7LIun>F4m<-T=K7jGC>dJ)5v_k06Cq|w4b zJ)qCjRA(luq(S3Cb8&Mwu1UlHfP6{N1iU_m`n}TNfl=e z6JL_CKm+!QQ@Uh>$${gLzhaeyn3wjeitpzDC@kO_R$_pqTsgf%7XX?Gc<9r`y0T_=W zpYIFW?E~#&$8%slX0FnM~8 zfW|vlYyS>@P=YiJw>xB6Y(8k!k1}-a^XK^s%~mvive5!Bhyj&z%et89y*@tDVDE81 z_P2AQiEOi_V5Q--`MUiCQ2h)6M+S2?f^JWAx^ek5ti=d%M?L+qK@&obY<&(mBE2J) z#~*Qg^RKaSG<gKt0-U_IR6^3Xk+o(Rl-;1!)C@Nzo`){>*U6fIegl$M;Q zHZxgcS}(me_01rRxndWj@6M1zH2T`>WvzWjHaQ@+7+HS~3|{^&-)Om9YkBj{Lyr!)Q|8Yl~n zA^|p5LVh;vuk5F9gz+&(ON-xN&k{ zCv|kU>Q~88N(Alm-Pf5D;k&e9bT*)*W#E@#Ja?>a1VP=+aRoK_tKdhs86pP~NgQdt z%Ar(?ukifB-*~g#;J`=e2fi8+%{mj`xsoUzy6{h)TyqAfWU#0yGKPO#evua~eTv;U zYh0-}^xIVbY+qB_HwD}5_yE%E5$AQ^3PLqQZgz3<>Va+)aeWgV4?g^&ZwAFRBl*Xc znqU7+h~507c1-x4{!b?)$3*%%L=?F93t(zwo{?ofKd+z$=1@c<18jJq?*ClizuYZBsvh!3_)_&PEYHJq;ge8(D)YC1l?yXgAe2`^^ue6=D)`pbf?5DoIsD{}@3 zD&*XYZvJ)38)2P0zY8Mx+6x3@@^}t{!Y&~gEv5)9#;wZM`7H;M`Y9$}pYw`(3X*X3 zBdJFqF8(t628;J02WajJ(}{d!@#u_lV)bAt)W^TfN#y!t8ySlZH;=Y ztBkB(?5Z5aPqtt128CQaFM(6sMX z2(Tu9EJH;o>*f&DquwZ0q2T5<^kB`RX{GsMCrLoL!q#P1{Lq+H|0|r`V^Q!1;ZsFgPc|;S7WwFf?`JT}Tm|WhF)p@-L^M;`{rziW zS5xuIR^X8)2>#mW*}Fs_hs+hvw*MI!1mVgvCsalKBJc+TPK7n#O8HK84Sr?1BM80A zZ8pLP{+PPB!(V>Odv*kbcf98ac^vZF7sf5`75h}|1)$SQ@g=Cp=7;f8sr=zn{Dwj% z*8xKo7@;Ea<%Z!8)eD6lYI3dtbaIXXa&n$8lyJH)WIPyi_GB}Q?Z9&uZ!-a`GON^u zQ_R!(vzRBB)L*GbB+nO4IQWqjd~tmR)-HKN(#%oQp2*%vHyVE+Z@B+p-i#DabZKtR6u+TmiM5fu!rqjEm#%9a;h$|D zHNj+#*vA=QzS&BZHe`G07k+Qj8zQjOtb^(ct~cV1{XNg@ht&Z7$VZgO&hp}?E$&%| z9?j{FA8$VZr8lT{iJKNjfnz#voEwN$e^2x|z-#Nv?9-;rQC830Cd=$wt|vx&v?oHl z|D(@6%`y6>ZgI%g+4YR0NWLL(r3L?G*J$@jT^dUqm0N_N59^bht?5VDA*4;rcH3)eH<3%;Pz4Z<_;i<$={skjfOZ@?qgT=JID>_#VLaYxW+ z6#zb_fGkL}xE)DE;zdX>(--CyLMi(-?$`!Qb$kMLc{K8X_Kkj|nG@+^RenS1kbH6Q zfV*M+x)ES8BjW$&f1vz^)FJKj{^|h__{`5fc+uIftgU{JJS9L#^0Y|s-KN`SW%5``8+lZjZmRIMhG_EW;EX?GI39U~N5WIs;S$gOLe2la z?M`{6Aek`~G*?~2a~6sW0sSuAg;{PU zk4LY3FV`e9O1FF&QAf546T*ceywLqFotSvGE2AvX2vC(d282=4&;ine-*6%gD&aH4 zCIU(4{KP7u17#g1OZ)2DrHgjNMu=wrWY471eCrFNIY?`&8_KGat%-`%M#=J0_jxT# zadkA;%u)Q;uM;IQ$B8W<;vd5o`J6j6TKI|m{r1Ric`Z$137gJf6xMm-!du$?(eH~q zjTUDCM|;-DZ4muxxNJ7Lr~$1WA$OKZI$UUO`*k3zH|5bzxeUB~05Cogd^} zDEMeuf3bt@j+$FfXySuv+Ah^2)ci%{GcZXoX9fG?%1b26b;P%M5_nddDc1_jH zpIP1OlhwVeSA%0_-tBT6l@L#ph!VGWA^vKRtW?jeCu!-@apEC@qq0rtV6p&s&>lgI zhjTINk@V>q|EtjfPg>ZXB66=3!Z|xXi*9M7w#i4W=WwIazBrWqpa>ME(&GhJ%>T<< zu<=vFmx1yo`QFsX4-?9S*YG;yN)tmBfVr-p-o1wqf{%eWWX6GHKADh2d*6mJYB-9< z5sLI1pUNkCsJHy9T>$9kzO>M}$0FR;GjBknaX&B%jm`Dwv*$R1&^yL!W;hEIDBfS<@8qW!N*L43nY;YjGPoLy%Acf#CkeG}6VkJ->_5^{E88 z%wCzytYHq$D4b!4Nr7LlS}dnqMZ*8f*q|sLbJ1sr4I-)O3TDRU^~>f9>Ehr=9NcQX zsL_VR?r_-hlF`p*oP!8Z1tRR&l$Rj%HSnTx{_Tp*4K{*9+=y`)@sC<_aYXaxD~{ynoHCS$jVS?=bqDkH-4m|s(_l-| ztuf0n#7FYMBem+ba_30{2aHf88kbBt(JVN!?b z>M~%FHuC{$4O(X9^jZ=%+?DE)+Vlx5q86OrdkW)6<{7>4`NtDRvXF)380!tzWiow) zVv~)>K`5_4`xE}nULc#gCECB_^$hm{~8p*$54wc&mHU$VUe1dT1jJ z|3vVrN9rqzXUDrdEW*L3@(p!q3M23hx^RCuJ&L=-Yx`8xM`K>jw{iz78P$mBA|0Vl-9%7ox(l@$ah?2aSs0_O- zuT9Hmer?KbhQBBCsVI0E6f?;qspWXPOB2a;Oyy-TLkCzrp$!9=?zp!PRc~hhPw@s} z;ETeeJ});LB?+)$53{L}|C6qc5*QoBP|&l4)$InJ$TQZZSI#yCh7|I0@?#2C@grSR zy@Gjvu^*NbZxR0g7XW-#iI<0NQiBMFV26Y{|Kt^>^I0_WUj>gKiMjV*vi69ZOBp6h z%d42gJ$7r(MuO%BLkiVnNHLR1 zL9DBQF5eJa;E;h@-f7TuA|iF_f>jnYi)O)+TcA|vq&P&Cy#8FKdLw zL+393-y8wn$T{Ooh2P8aoS$>->y|lTo)Yag^4SRfKS9sp&GVxTO`>){;Ub~vLROjYS4zAJNmMj1xkn2 z&tWTf-m|*Ci`vzFnFm03OUGLAktg}TQ%y2=LgI&chbdgY?1U;5S>B8t(LNyQuwg&q$s9pk;YK>nEA8~ra9At17#WY~_(4>MF%{*^wBw$A(fe#F3X;FTU> z(1o~e^s60~N^SvZggSFLWtJhT65Bk#AW^fNkK`41P$%lw@TpxWe3~`8#^&K;2h8-W zy-rf!xC*)z1;xxM^RWS{{DhZ8U8nRn6(KqG#c1vTi(6K6;!l@DKm5lm&bl(-zd=H3 z{G(P{uGxwq1FaKg0Qez;`adn0I*fg(9H3CF!OJ#RF`nbgW^9^Ombb&Ld0HEg7^or* zZ7b>5Vt<0KgnK}`CmZ@bEWI=$lusBX&fcizHW9!GhB-dd;|x*3IQX1T;CQR zCW3qH*aBjolxXalX3u{&uTwf?j1IRhkj|VlI`TMokrF@fMXeQA<+p0q3E~f0XKPI* zTgb=3W_kNO)f+G5MZ03HK>SHY)VGR}}5&6S2X`$+ycRGaAOTU7uOyFN>R6%eAyaC z^ysvDO4jg6o;?g+44TGh3i{Pkm#)yS=2yI8@BUO<56y2mVT*|`Yo}xTD`?4U z_M+qaKA&x$wDh>#ye|j|1`$lb1mFMsE2X9vFX{hl&?5iA4DcUbYN?=7g9=URWc`c( z=7vY^5Ixug^hyhyH3eOZA>bz}++!~ZJcPi0o&#}IsS=}#T|6T6)Xo9BPXqn+~y0H4=j|!5I(Q*{}}<- zIo*Fp@PA4SBwkww$ROD-U~q#+?QkZwn(Yi15$d!`q%@o=q*_Tz&GIzi37JqnwRI(^ zh;$T2MR14z7xRu^h^qlKM(F>5ex<5vz+}GYy)I&GA2Jj^b`|Cm_LWW>{3U5ZQ=rN5 zA)dE%hg0Ph{-X=rv=pc`(c<{=VGu=sMC+=`=TKnP=<<{%L-zd8j6Z9Rlil%W5YN=_ z<^mcyEFzQ+7vcYro4oUr|Jlp|`iehIQFki9${e%9Ko^-Lf_=!K|0y_2?HMccjX5p1 zWMAsG`(e9H5=m!xFyjAs1S8CBwMTf6$CO44gJtO`v|4zca2m5V!^ADZrbbR2Vi$vE zb8!UD9;-7c+A~%%;gzI>CscLTR^X!Pv_D^mSJk@?>|g+ukyyPu&MEYEs*$HB zWhW;-wtu?3YHlDPB3Kt&S~p%5j zv*Z631HmExO0JsXAVs|1Mh@3TX5>Q#vwtI5_ZpTRB1Z^r`hfmOtgaAre0yE(~)lr+kn{cn^8Ry5AQo3o*XW&p3>>bpc2(PICr|&#t+FMDgDn-l zz+_nw`owKdQ~bFSuGCy^sb*VgZAGybh^Ej)y=%tB;$*TbvDH#RfG^jex3aR-T2pFj zHc}81V>F<*DE5GBGDiLJk0lym|5yUut9b=3H4F5i4|))?0}c?gw<0~7C`qCSWrm>a zy{wwB>ouUi`}Q61e9-RuK&wJNiWu{-F+x?!ROyIR7^C^K6v0~*&5*`}aV`DTkNg!i zk>4By^}g@@XuPLMjcfeFWcG$9jogh|@^$l_@S$mrh)}?3EWSr*?diE}QRChGI&B{< zWLCsn4T%f;5dbRu+awE$l^sL-8%0@ds=KW}AgYn{>t+`e9hICJJ?w&gAEsmT1~&61lh4&yHv zw0JGg;yx_%^=4{yn7V*>JLd<6?rjfk3D$h%<<~- z%5)7qH6AX)^0aS+(MiE_VzSIiI}e@$19qwP!$wUb3G<{G3X(zk#q%)y(9WxU1irGg zE2)3P`{>kF6I_~!*q&oYj^t?4<{f>qlm1AR(+n-j8%|VyD6!=&$eUU_)%`)3NOn%X zuSxJS1++AA_Bks~dmgD$gT0gIzO(y5MQ=*)Vn&6EHV6LEZ?{cP*m+L6R~;HyO*r=* zt7$Q+FJ)Ncv@FYl@1tasoWPcA>GKZZc|eVk^l3Sh}aqo*VLwN3eVVr9T-(soN|!eZ=b zO$!sF9jyKF=29Z+v$qV z6FD()Z|_<}-PBl@zZ85mr>BloZf-P7cz~My*N8T_Hr3&jxJs2Kd*(Gor)M{68k1&@ zc7UO!0NDW7o)ywU9~1Z53k~{@RQGBXd7F1{-kgd-a}$sbG{YoV=>OhKRN@~>Rh=YA zu|0_)_$_OKGUH@p%KS~zq=7fwH79+!9>12l9Thn&iS_4C3IU_FUy`Ij(Q){ee`lsR zJMgQLR|2bt?~`gPnP|A;ed_#V@#6brZvcjFGUC@2qS&cpqOlo?y(WM05yu3cxf&n- zoQR=swb(r3e{CN#@}uP}y+rocBBh=jJYp-hz}$%{27FgHS5>3igwRQuu3QUXm!iVw zrdtU)D!a`$VaUsNJ7_v%lkjnw9CIXOLk8to%O8TTrQbOTkg{mR*l(Fe7^Pl*{{qkt zpFhx%%l5PNwkKWjyprxsHW3@2nM z3g7CAA)M2Zyo2JWwL&U(DctMCD7()P&BNEgRp^pg$d4>2k4{gwjv&g_chP<3zU?pc zhx(rHWAPAT`o~2VhtS$Olx_&qqaP4+|0-=I*Q50~8MXCc`K&|++tH~C=B|ZT>OYj5 z!I8pWm2XeK5gAud?_>v!AF(2<#WwA{09MLEeWse1|sya2b6oJC(J$P+b*C;O+k#*{u%7epnE}|6pjyR@ zEHN1auH%_^7?S)Rw-Db3+0Do#BR`l-Ug?Yl?=MXfx?jx>*54lgd|3us=bo?3NX8M0 z(eW#5|1i@(JWwXWy$3s1BUD@}C!;$$zb&cQTU*|G=;ac{h8M`7XcP_2`w8KQv3B@+ zv^Pc8aG}b?xToR{ui$Ct?o5)%ew04--F;Di8LDqsv2rqT0w;{kQ-wYD7)O%Ve(Pv} zY}hlmhL!rN2>zIENaqPK(U`{d8L_rorx_3w%f&DzmiM0P)Ih;{{L%AgQkP!-BWE2v zk{N>kNLATS@GU$`+HzOMbH*bAPp;H{)AXc$H*uA91PS$uO}0>$fYL$dNQX0NWn1q2 zEZU;%Z=$W@j(1yldr#)k=$On=-|Xbg+_bPzM%ZCyGPu#WW-tyQJ7w;QoPg$<;NygQ zG&Db~Pk2h>D)QP)=_tSD5Y`(qd{7v&K_a0EW1;f`-Dm2c5WlOp{?adrs12-lCcK@xFUkGOlhDISBMS^ zJ_&_r_!g0Jpp#t7R*$PdGi<_E2p4l93yftkp0{fsE1J)jML1SR9ZIC@^drtlBruZ>-cs04SdW{SwsO6$UU}F?D0S zq5ySM%BjZ97=0oLLIYP&Py_(PN6t`}!EF~*IDk~fLO)Og+gJH-CcuMo03@}8+@hEW z3#-g2;|Ys^!(55vCxdPCH#oJO+@2-2S2oKPG%`f^@5s~A?Oyb#QBe|WowZ@>YJ8(Y zf;Wnggv!c3Mb}}i8q@G)z`ecA|6@3kmr=1CvN z(hVF-J3B=C0EFGzZtNBEpZ&g9aF-{v_fVH76J02Wr!ODf(!?+f=Je3IQiDKI)R;B> z;?3r!fjROo9h+B?HFuFYYXmu#ik{DrBVxO}igdb|%1y^aufZeZfP9bXE_d;S_89;P zC+HDxKtvV}mTs_O8C0@Uvx~k7KT^mYB9A{R77St`oryJw{rnuO?#GTlnv7(TByTl? z9t;!bvg!T&A;T^zFY2ZV@M)^xU#dCqQM8JGlyhLx3-mrlU6V`o59#{x+QWxyyox1d z%(7-;Al*-A+(Yte<4nZmLdo?P!_G1e@0ps*g@S8t9MLxpFTz>O&yKnqk)k=zyG3#h zLriyPb%+9sGNL6fv^me-NzA(?kD3d8J7lz(B>1~@)Ji_1tw-DE_BHPq`QRY+-D0yp zf)Nb%9Wiq{VdKRqr5Z2&*#7b#MjX|+(ct=ltHCzn_Njc*LN{O=5rNlw5)a#BNx*z( zeU91KFSfLZ5EVPk2KqTv6>oVqEUG(tkG$BNJcnA=o|k9N|euB^;Jvysf-I9}!J? zh+bb89kuv&3}VY=$Yxr4yt(PLPWgJ=Uzwl{?qYAS0p9`O^T_>ZNeJE(kmL*RgQm9f z&@#@Dm~NUtsjyOLCAumcKK%!tLh0CFSN%IA3atbwH7#|s5?qx#oD-UIH#}WMxd$YZ zY1vCv9pldaD(&eFDINP$jx!~V+2X^)lNs+JKacalIM0-4&WCgQ z&nMsqkaE~|vkAYE{jr*02dRB8)yASKV6@?C@1XjA!R4`->|o@r^PXLCGTKGP%>x+4 z88k1nI(*(D%$EH$n_qtefbA;4=x5t=_N3`OarDsLmRIU0pXF4&s-%gIlZN)1Mh3m+ zL6TS=4_9Zg6qMmHF;68njk4|2+(@^`3x1yP7=Cif!H*M&&|yIj&8I2Lr%oWH78i*q z=5y_js@*G)V%4O8tw86t{i0sSPZ1Be?C%bMa23za8FJ>0gXi@v89$erq5DzsWezP^9) z&ggzirR?+j>-0$h(a7JKSmE5I*f(81LCn5$6WoIdbE}FLNVMu;XS*>0E`}?%Sb%?x zx0)n-Gh(vCYXeL@=TU&%tb{@Jd>Do zO^5j(A@?KS=*lKN7uMgV%F>>}gA~ky)M_jgs-6SJ)Xr{9?<;8k^NbvrzSH+h_@0cb zLq^*-8~#>nLTiIF=EHh@yj}(d6KZushQwdpp}e|XmxIr0Loh21eIk*l+SqN@Y8=l{ zOEBB^3|mJ3Qha2akOmO8)A^40n``uVpzHi@x8k|^+U^&4w+KOGsr@^PWsTNE;bRrL zO2LMuI%B#4A#WumFLnO+obc5u?btMLDnqH6%dZK$+@)+@Lk^_S!I{r?Ab;LtDk?J? zmu-$?K3YD;X73>7;WI`$-E2axSm)-1bwnFyVTpVHx~P;u`h%oN6G#hTg)f zQ&oTU?WwBI@PRB@&K5*j33l5(ow551#~T*gr^l4nQ3B3VZ4KrHu^vMxe%h@v8JN;G z!_F;k34A#$lu*I~cGb;N88LO!b1Y0mYt&Y;^XbcFI-LS%r}ufw_% z_HD-VZEK1cpiveLl0jdY!S8ZDGyT=bij=!T*ZmqXVthjl=tZEvzgt3xqb!1V5rxbM zK^dKq;(A63((p57rQ9S)sUR)IQ$IsKQ+Q#V*8E|%>n*=}d9>dHV-0-`^pPb(&%xM; zuMSi*2)7e|$UmHMUy7F6mb=FA0PQ5G?$f#A^ug|m?jqhDcBzZ=5yP66e6C|Aj2Zhu zxy|TU=@I)EkZ>};QMy4Mxl}PLZ9Gzm3r%Kz37syesp~jm_)CJH`}1pU*!dEu6t>hA zf)5_P`;PZDng^C2rhE6djltX8HU0Hi#tSMY=_lM%FEI&i|BsPge501DlB<@h7H%D% zZ?EzyMR-MxDouZp9pVQ^zwOKI|7e%FNZ9;#5a{xb>zXeBzInV&=0cGz%{Sv)s5=}` za`ZqvNs`O1ek6kiT|)La&^=VD?Jh^ zcMP;k?Ia<}-#=mykszAIGQ78s$FjyF*w>$%ysKXeB}f=hsYaC6HVT78J{zW^AYQ#M1_wIS&1~ ziWQkStg}-%$6OcSBh5&rGqrB8<%V)!P`%}W(iw&EkcZftJ8f1%*~oGy6?Z}657ewq z&u_gE2CMlYetm=$@E=V~ja!%_Z-rQRfo)}PWJ``!YanifQ4o2VnXL<}N-(JzVt6Fb zytF;iW@TuM($8!se5`?O{%qEp0{*_nzz*jQ`yq-aa@Yj6aR$=iiNqdyEVv`%0U{RP z;gmY_h!hwr>%_HeZcd`iEgMe@4@j|$DwAJR=e>vw+ko)&#S58dRa}&J_H!%iEowwt z`*ThTv*feyL^MbI1fe3zhMfhskVnauG};Dvkr0KyGDcfsMp>R-Na3hWuSA`?LL+xe zOqFl@?6~%OMzoO~cQ>KHS4vr7vo=Hcdz?XZuUa7a{5xf1G^P~nye0bI0$~2f50*ju zvNB(@z3b2(7#_te${g$wuY%Y36)(kX74YVmDo9w>o%N|5rl7j2?E&zsQLD^s8TFeHR zTOB?5yvFl{ZCm$-@HI%Sr*H%6b_@m6dhA!Dp+%y*Y`-?6z6D<EZvuw*qh&R-7FLJK9eO+9sQ=8gEL2^Cx5=(VS*YE7v8qH?e35$65$ zy+em<-0RR~Q_6smA+5GapPA)8M?LUz`Zqd^{5Ra|8E8dnZDWLwY_lVJhG1n2D(~{BOjdt%zV1?sP$W+V6MhrFMg=ujuUqAKD#nf9Y@&V zHpk|1HGL=SNhjb7eX3d#o4Tsmi$7ulf88k6$g&_0uVw;tY(+#yAJK~p=7y-i?IMDK zixnqOkP{p_I#HM-d+ej?;tk5|(RE!Nk^B$7cUvTLW(PIaEgV9s=G z&Ri3=gJ|c=z0{aQt^1L{s|$@rBTTNL3zqHlgW`eJoJawCNJ&PI>8b&xzX&nCo6nG7 zSJ|weF9sdhy_i&N&Vv>=BB+SZrxh&At)WoUf%k-k<@-5>6i~fyN(zb!BNq7Aj4~(3 zZOX_W`{)VQf8XjFM5Q(;dZEfXVpA8gGmjKu zSbwN@P(!jM%Jh88z6=G^*5erPA*1>LnRu{N@{#14#{E5)p=S5ukJs4*vtC;h`zgTj z2G1EVM4UJ5Fx%1%LlFFKAfGul{idb$2cd({HNS6vr+@L+1hYS!=jRsj3H4|t^H+xQ~KVLUbQ@Y)bVLWbOz&P_vrSR<^%dt?Cy%=(<6oIxUUMMAQe`1|l` z>6g95mOzV)2Dsfh{?P%o?x< zD)LEd#Ped3T%KjV5%6uTwOxr5Xtm*uCi$hiQFE|`B#7jVgr%kSJx9y4e`#P4UE|n* z4t?934tV45z4yDmrW9~w;IXV68WxD+tdS#dq;Z5QVK>*m7QCCmvOv&d)bOaVSDSB@ zW>-_WPewtOd55mjc9C}DinbZ{0x_Lwuh5ZYXx29hoNMmwi9(x8G33C9~FLgy%YD!n;GK*K0O1F zWfyZ9V3Yh zUh$7Z1iUSo5See+#?bMxPtZLA-oxLhL+P1qnfXwD6}L^r!#{wuI6RC6mv5}IQ?+x; z_xk;k+BSd6%G?9x8UeRU$jq0IlP$oOh^7uu%U$Zbh_xd;xEw54aoQLV@IZgmg_h_0 z3r}{x<9h44{`lVDFyPhV0XoWj&5I(Zsj>ji>XuZBvV=tWJ*DI>QX>-^`1LcJSP~H- z#(@ltlsQ8*;1{1-T=t}dqD74+i1k#yvB1zJvR8{ZWQ%xmauQn}ZFq9(K%Ok#%-IdA zT-jckA1j%me6Oi`exS(AbIfZfW|hZrINvDKee=1(`gi+gzk*`2oB2qtuG*{C@9MUS ze%J5iG(M@oYHNyGlhB1HkhJDA)UH;p5z1$fyXiKOB^45?-+3u~1H`Zp@nL6)F?@s#`&wTn?5&CLFBT%z}&N^Bg*ocCjW`~q~x600rLg}3!ulF?Yd0YaAVxulzEDN zfk1gqBb;a$YCI@)oQN816cH&29jHtqc@K!H*=OU}ZT1dsfoK6m(5^A&FHw2N#%N9x zESPw7Q3@f3ua*e6&Iq?bO_q=0LP19F6Gjhyy5U)mBu6}D6Eja@nkfKdN_LPr>;Wja zpCchTh!raRq+T&XY&fyH<C;zKTb8#=d$f;vTP%>L+2Nwrf$#UpKSJ!^Qb^%$H}?od=!3e`^~y;L`YwHgPqUw2D#ea%0#HN z8SaWsXAOXDZx8kU6C=ipxfM$th?tZGD@)T8s4$yJTw!jL)7ya{>y#~eK|#seuw z%o0&G@*0kQ3tuWDkDg^(Q_nsB0d<%BRs`{?FZ}^D%(ex$J6AYVp`hl;<~*&sqn+~n zTrN!3sYkl0?Syuvg=JZX?@vo=)$`$c??W4xU=rX$_0|2ulj|L>>m5cMG&P`e&;RZr z4@^~7pYIgZ#gh69?xZ2)s{*UZqk}s+dAOLUoj^ZG+IUSsjSEY7(?AyesG0WGICogo z7FM=j25f-UFD$c8bEGy|_zv9Di+wULj)enANMpY~{~ZU(bmI>C$}ctT`vN|sD(0jK z9PvN_!T6oKxgpb=&jM6Gj`NrArm<%3UM-AXPqI^0Ot;J)n2a)CiJe&`s>;U)2bQtS z4X_1%`D)Rw$X*j1A^Eh`$Xhiq&8M6;Jzt36T}c{M*8SdPxFk)34uDYqAn=byUY8fVY9?Jsc--kEctKLf_9jIH}Ed(vG@I)SB%OEN#t(3 zPKjX!pgvx4B9EF7G&MT9N+FF`>{z=xm}g5rpXrl1eS@XFi64qa)yEVY6J+{RM}it2 z>Z~mUR~!=~pXbSvQDskG_1URi3mLE{A^GMpky2}{HL-n4$SMbnVn8vG$Wu7;C4sBN z)d1(dmJ?{O1aBA(-zG+hW(%@#3pF9a!?Hk$jVC z{738U=+g^@oY$+qy%7eDYQ1K|iS@+^1EJ^MiPXxqM(_EEY<8vBD?~oQXVW29Atu4g z>E|~Zhc+Y|FO07SHP2N%w+oemi9p#Z|9<*`+SIwR)@Y?avOyrQE9z-U{k}BX4NLqq z;MT@2_JtB-4og>K+Em9jv1&?>k+GIz`4aWAPA;h4c23B{lA3P{s_t6i!*11o@{F^f za{YdB)kf=LdOB}lfI1C}G;L4JG7Md4E%U5vQAk+jwKQ>h@Er z9u&pFfiJ~%H-g2XC|oR$Cu&5QnoI0?&_eXP!0Bs&;-}Rooq1T!h1~3#S69-lxu(Veq$h&YQa%icLJfq20HOhZz@% z2(*TSoDgH<>HOWF0LRrh?$|GVVml#dMkH|b&={#xvP@K{(KTu;?d*nS*yxj1 z*co3y?CVTWG&kspS1_&SR_M5H;VR;wU&!+el}OIQ+iKe7fvXYa5U~DJM>hE{yhu5@ zuXh$5BSLRG6h1vYAA^U{o<*-);8X9m_t8TOf=@IgWSu;3wC~4!x!X9EQXBZcci*WJ zHf@$uU!D5=Fct0S*osbW5Ax#wMoNSZz4w8koLoDj~_5y;>GMGZv^8v&v#TgBHmG3Rwj* zWU@@n1NbuFb)+=;q||{)yHj^)BUNBfC8{^(-gWhLrRYC9VchtBUeWcyOsealpqub; z+;`3BhNA_jo4(eR6*Z2ho{zbC3qZJ3P^+XUh9W>s0AA=Hr%zh$ob=yY_ZApJ7s+)T zea2?VC>P#*W+>VcyU@JbJ+Tb3eNLw*O>dUVN8MuaS+2({Vtl#S`|Hv`7JG4*Sn#}3 zFBger5NJjzamHBl!B#m6hhu-pEGbG?>D8E-wg?S3+<~W^e~f&eolLJRQe%H2;{Fvg zGVGgi47lP@%gqrqz6u|xu&o(a#g%}h-qWK>AmF1xIYm9mVa~Rr_+8`!JhwPj$C+S^OerlYC1;1WKKm5!X{L>1PXpbkg&I| z67a(&9)`B?tV_H*2R3j*Kk6>DUA|wLv?eqoI2Z-meUlH%=*%z&LA*NwF<&S&wl5_p zC$ZY``i!-&YLs-5=P3C+F%-?8=^l4%7ZaqrO!u#`)9$amRX#y!!G)Qa;`b+(sLR++ z^p@7|*BL=Vkx|;ABPo2bu@oFkTb*QbnZW%Hosb6+m+SbYUyX~5^LkNvaRqRubfbE! zrnUshdV@~9LOhMkmt*S5!YeK6meM5plO(fM%vXn^Ogc;tbV5i9Jqa}br>S^ey*}(% zUB45~+BOIZ^ZDBG){|IxQBKF&b@$q}H2bM0)qNEH5}T7@)1Kki4uLE`I)`pmBS1w+ z^eL&~2C=)%M((MhCZ_LM)wils9BYvMktF9FAefE?Qn&}o7_4@fj=P8UiNj0+)ZtjH zTS}So(TyZTBBYx|dxz$$6MiN+UM)z1Ha9$deIQ0 z<;q`B)1!@-=`RRP1-}SUFHjb?e2j|J9=^zQTU`Aau#*2h;t~Up@Rrb4ElDD)(-p;^ znBFy`On~)@uiT7g>O)&xCv8#PzM4?d3uJb22hXYVwi2&!4TntQ z37;oEdS}{e>E!?$a-xX=1*9BiaNa8x-dC+I`fi9X>f*ARAY+PdZli?;FIMKamR*-3 zKtrzkjnFIqap-Hi3G7&hi5*lvPIXju9nnC0O_{rJ>U&G3C!m5%M$Tgd3Du}1hhyF3 z9}42AXpS)+067>T=I&UJjEnqZc*7mZDCxjFRiaqZ76xs=+?{wpQnjsr!GdckQ`0seT$0Z+zAR$Mtp9=_P2Y`ds&JUOq8Tas`MvTXq@oWq*O2_34L1m z6?klk<_D-rP{8?HbG@-yzN-GH4OCPmoQZ=VKt*oMP|-@4)&7NqvOW~ilNyf*}6ap!VaSBC>M3+iLl&eSTp5=9s z7fBRcj=cCqq@cv45x-80^1%x86`U3OC@IC2ZORC`*S49L1Sed%+QQpH&%o+g^A!;2 z);+|F&A-i$d*jT*eYLr>UYb*1s_lSIIq!Bml55R#GG&n*$&RmgRU?uZcHisaZxwwWvV9F*5uI?-YN9;L1I#dpZIlR1a zC@b4`r+J0ROC*!>S1|efm5=^tu^C9>VoOup36hpRcxspZmI(ST1_hR!!#jVXv^?;4 zHQ}L^)N#lY<$bWQoc4mce8=>V*;1hkBbbC8MT)Jas?AJ&#KUCe}(OgTd0BCr=o$Zyk#A4TCilkA zBA^h0;-yaQ;E6V?t91Q(qdiY5x|OrNv-2JdPbM}S%+Y!iOtoaHbXaTv*c$#PJ<{cV?9(3&Z_&!`J%&Oy( z;Jn~sXa9x`*7<0+CLMuqFhlOwP@0eCG`YvGP1QmNxLa!dsI}INOyPrQ9~Xx$TBM)H zYN;HIMwTctcHTI>AB>xcP?JEHjKSL}1HKq{LcWD4MVZ@Mxm=)S4Nq@RZC z#kMQTOr2UJ5OdH4V-T}U6lX4XA%=uqG3|H{2Y@Zzgj+jjFPV7ogBlPM!-QV7?ruchzEukH^bEM`?`b@IGFuZ@8}JpM)@qY^LWGi~ym z3P)}S|Iwcrj@)|EF~i)y(IuOWeKmOkk96TQ$daU`l51NwzR_0eo4m|qzGOFQ)5k+S z)-vJAJ(bRqJ{bkW^Fk(VktCyda0f8Sh9+p;N#pvr@$`6Fkln~L(#|l^yS}B{rEuGb zhl}U4Ok2C(k|(W8I(x87Spk@2W5V&Q0sG7z=o)4}Z&>%rh-U&tED7~vr8>i@-V8=N zArvD{R@&^&Ulw%kSl0#E)&=C)5SaV^aGS%K#S@5Y3-iXn(Ppy3gyE72k^#+MC=Oao zS+-`e3s~scx*>dcWx~RBh#e!F2SKXD1;xThXK&ZN%gc%-Czv*&UFMHZGA@3dWPR`) z0+TJbn(m$t-=IgmiJrhqyzX4TbR7g;zSX|cKGAD}UVJD#72CJ#ZM2>u8}=mb1Ift# z>R&Fw{ydCH;opZ}1pTi1f~kysBHj=gZ6@MWCdlCt;3pE7vPTZ#L~6{_9>Q}J;$s^m zt}!!y{jzoLh;7k0Y@(jJs8{UK%Q@q^V{(k`|6!c6qvtr#wj)a+t^5waCRC%QdZj=U z0aUV*;tAxRT{h>TlIZ$TmmL=W?z>NXct54zFl@C_`Ke@ZzVhwsq<56HcsxY-?ss+? zC>hQo!rQ~qgneW#0?@bamO>=?IfYjQ%`d%cDfl>zlA+QxBE|n70AWC$zYw_)Oa*J% zMy4r}&z-@vMaJf)G1DTGb0ubO?Y!KT%yrbY%qD7o6LUB5L+T;oG3sUFWNaTnW zOE7t&kvW5*OUzx?J-L^2bT-_WYYi82ldZ{#38@LSQ*%Xro-sGHAhDpTm^wdwe$5i* z($KQpb-6ndcjR8T-pEBI3xuFA+8HkpsGdJ8UZAa@)yRxxXp#!oQ(S${3Nr*-O$A~M ziJlODOeUGsD3Z@4IUzPkX<|O5iTR2Pv0T7HcQ@b}Z2-Fz84Jg;(FQ!D4OG-9Folez z8`n3Ijn$qSReNewT`}D19CQ#;#a<-~y_g`9Hds<<6u2!hkBTrQKW4~H{<8fjA$m%+Bp30e}{w&vP)i_`ws{K7z! zD(c&E+ERUl4KjUrbd+oJ1_FT5xjOov8&?&6a{q(B`+fO|ZQH?wXAllt(RcKb6^}vl zf35s3h`(|9!V4DPU&?PRTz5e)Sa|3)uxRhE%RfD|tNiwNn@c|ig`GhBe)-ihJh}XT z$GS73NFN`7-v4ok2o_O8-hlP7+LTmaj!G;@UCOUW(E@Ie)BkRl8Eb|6<6Sj%tp<8tRoAM!d(GX$*Z3s2LROuUn3A3& zEljLPtP<9#*JwA3w`lh&Ki7J+_tp1*G#z4j+R%cAp&6Pim~pZ?78Y3(buKcNAcP~a zXfpC-f3J^2?{yfYNQ9`a!8m6@O;q{hAiW)2Y^|_U$(;IQ7HO)>PC3YgX{jhCs90PH zE2T3lGwU-{rp6+_QdzCQo%R0;ckI87O=?kM{Z&5L^+3_XmdnGVK-NV)n0v#2CxvF* zr|7gPqOJ>sgn9oT!sSqGk+-#irjIquu_%N9oj8V7VI&fZ77Q4xnDC+6iGmJOWW6Q@ zAC=%^etf48MU4kYA6X2wicr;F2zqjaeDpSY5gaDGxv(~o2sWg{uMlM^F1@}eXu-?**o(O*ZlaEs%&P)nsO%?{+&%@ zB(84_)iU~;NtbVcS9)Rpd-O-li^MQ$9Mbi1mrj}o7D3}u_&mi|ca?pz1V>8L*%SY`5j6WI7NyYcBd=2AQ;io}sS-{|8fqLCqL~4 zp}9JpQ%SOAgj-5*td&yD+aD;50k6$lf9-}Z?*D!HA3p%E>Q{XC{IjkaKjE@}+Q>!u(GM=Z z^4E)&Jb$Bl`yDr4Ftep)S^XKi)~-2l)oMHiGz>Y4#y7jWwj@7of_dEN#2Pd&cv zT@UR~d+1(vm>l$u{O%ur_^CHE6Q=haE*;hJ6iK^VR;c`mcN08Ik@${L7+*)UyG@d) z#zzLqRrGD;IHNrN_^E%OYbQYeKN0oWl4s*<#|-hBWj#=$q2PiYKd5?hsv;AEk}-c( z=hF(-=cMxRU$~EZ;V$9>0d7TFvf95w|(BFK) zXlWsw{1kAi> z;7)Q2Ns{P@k!EHwY9iCJr+G?wYMRf z3NhzHEwlp;NfjI*qIMFR*wg=ib_ymyJ3fe*Rj-?B>h^kg_Ndtl@GKx&9TKOkFg^O3 z{#*Zozv8&DK>B)u&}ze_!PcYS0;;zGt<$9&x@g z&phAK@8j>&NW($}e;gfeT_4$^gIF{lYGqpG@yvL6YUn)XJo$pqB4&}iEVP`?ht8TlA;-gWI3pPBJ??eqH3BP445Wb9@~N$U0WAJSZTDE zO#|)i1tDHY6AYR?C4vAD7Q^$&kQEGtEK?SQWXOb~X~>$Ef7Xqlt{bKx^Hzw_3|%Hj z_>~yS(lt#Gpc=sMWSOR65PU2WiRt46Fq=rjD>j=5!G}#SVD|1b>i3C8d%*2GoUpYN zi%##0S$%!6XrDD>!s78qE3v9azoIbJof*ZCLSf@{KN&lC2i0<;s_)+qH*Nbp$-jYW zu0b_7d`4l4e-`w(jtOMpYmI*97F&W#_o@Rgbjdbj!yiGW0nKDpiKq~5J~Xx!*@RdC zZy6v%yhGWxBhuEfm4IU_0Tb>5Eua>l0Yw0QQoio@Z)aj-L=gG#&ogTiO-FxQzG7eb zxjHTqEI-5SJ>7oq-5+JBxB6n`kNUp(j{`ebNX0cswOaV0|c z5#^dEcNYy=lAf$6y?fBC9OOO2>Mk;D#dN$^m4P@mV0j0HuLQStV-bcnQ4p5M2D2eB z28^c0@MDBA%2;)zIXWPk0aOh&(MEMkpo+WqmqzX7s5YARs;5_jt0gi=H*ob*qna~E z(PR0se-e7fbNKV<62DMdpq^)51{Tvx`DM})b+NgIzLrM;>(%DfferL++->6BbPvDB ze42iSf0h0V|C;)W`5yf~|Gs+E9KzzkLD_&2Vi;{D9&I6De%6Hq*JdS|2nBUZG+31V zy>F{X(piF3po<|%%m*WVg=*oLX9-%SAON&Ve>nvsfqAO-?yLI@IsK#_`)mZ_jDQ_#Io6iEgYMV1M^IRrw`($camlMu%)+>;hJi@hQx z_JE#U7rLIL#}?UcTc4#L&?z0BWQ%Dc8VvoW8hMiZj1$QIO4gC+vC^>;6tD@F2HD_7 ze`b)mq2_$}N7ImnwekD?JIBKI&&Te;Vb&@(fpbO)vDeW8K>4B-FPNx7FkT2aI~sL` z#|wN-ynu$wcP3Cpq}NU*3IUi~Qt+Xu;YeG+3`fr7VPfA#(NK~QBRm&2W%Xg-#hlk3W$UM3OfIC9@T82nI!Em3b+ehCx@rjn7W|;JNQ{;uQ6nzG~Z|`-P5oELP*(wz1DBMtJBOs>7!sh%J`wS@1^>AZC zE9M);W|h7iT+UuDy~WbVK3JX;SXN*uL6lKvV_KAgqA0NxD^Ms!4Wpw}nglSw0<0{t z00z52>LH`HAd1jrV4SD+kd`gTf5N%8xLzcoQS7o6Ns`k9b?!{^PHY^zYympGphv&h z5)RE}HynT04bVwzx1zcRg9C9Cg&))VoZV3rg||T&7h0jG+Bh_y=VA24AcMiuMiu%V z9d4#>k3cVy81N$9ye!D{UI@Qb{|RTf1tn+z(=GyTN`Mb&7;o)}B1UEYf7dFl>uh!c ziA6+8DVzihXstn>(f8cPpnBGXv%U!u@AmB>S5VW-6TkJXt2Tper@Q*T zk8*e_&N3xO!_>v_RJ2 zo0P}+2X6-<;s!n#BeM+7$XGWc%a6d5@?g|xl$HUmI@CaZGV7evf23olpP5fR(oH?K zXv*V{pXM%m9C5T$`roG$^f!olVl-8QIoctDA~Z&oSYw0I*jP|Tg+|B6HcoCVDW%4x z%96&8VYew88h#l5e^Kn`N~qpz`L085DvG3sqmS0_j_#}9A3ae2=g^z={P-|PBC5hb z38;ygb_UZhBa!o+iKJ8{W#xx7wif8ZkjeBpLyG+T{H6So{91XV{EYm$@_F7E-Kqjw zZ_czvMpOr_3mdL%AR7|RYP));x<&0*nJwxz^%Ip+_j$0hf2XL*?y46bdh1}Eu!Crx zUB$yUDvL&Q)SQcns)Z46S5Z|HRHTP|w99hRRm7zZ5yi9ST6YH%367}zUx*2H;)nz# zHC&`$M2yo1bqsvwL(0=``ARAhEH?jabq3KfF1hxxQ;5#c2oW-ufXwoX!o)ZObtQ#GWITC)d;eiX-gva*nQIZg>G#t&_E_ z!wS6xa%%w;B53Xoy?KQ9x*{T3tESl-HEs6Nm}bWmZKK$nd5S&2k}0;GCE1{t(FZHj zs?PfiEwU=6u`%MY7Ur+<#1)I{Ypja7Y}`1@4j(hnf9i-9KXCY_d|rnJf?g;c^EhZ+ zAJ6BH96{XO;e7is`1G(d`Cs|rPKV9&rk4rKJma}OqBFjSpz?WHRvUV#CRCD3)QQvx zEK`ydi6nx~#4=aufNjTv7PzQ_N-BtN!fe!N{C8w)oip6`4HDB+;ZP_Tj@0HTmQ%?P z9{PbNe^G6VezkPl6O*nwXXLU&mw}cEx7=_|)pqNOgSX!D=qz1`)I5=hT)h9vg(Frh zx%_`}RX5F@_}I-eZk!QRl~^V#UeR>s{7$R$_Nn$oQ--cP{>9B_jsb7hC-nO1&F6Gn zF!Ri-ksWVleKrc9}|9$Eh^cykqBFBG6`j2}Nq3F%I3!b2Pg6;|E7Wp}}R`muAXb3)M5i1Fb zpv{EDSqWMKYKY^}wdU}(=J32Gr=x4lVXJ@PrKd5GukSC7Ko7j?haiJg;_SfLkvV}m zk&Zw|s2?g1=?}$ZUWtlJf5|1(Qf7_3QdzG&EbkI_i@RhwEN_tiMpA0ch1!+c z4H~5Z=mzZEFx)@f0l(H}Vk_|uaU7<>nkEqg-!TEd`Z&?2=2}I~wW5|$dF*d$;sow2 zJK^&Uf3KWIWTbowMvMReTg^Kq8{5@qV7pfhjB-#o4G&>Gv$2w$gHGrBMuNc_0nPZ4_5}D!p^TOVS{F-Oz0s@+QJ$OlL!+-uf$d6+k7)q zEUH$wny3a)DFGk_rrLH?e|_@HL*;+1`ry{b-$-qX-mu`7M<4pm(mTM-kv#`M6%c;` z$Q!pk5MQ?Zw=cf(oBx7HIT32^+s;^tkSBCSD2B(k%{xk^Tcz5a}t-4 zihk6=U$r&9SCg3+llgsI$6e=?&C4UZ*9DpSb` z%EaL0#Q9=TxlB32z85|PPN+HvQL3bC5Gf_jARtsipEFJz1eKq8Mr5@BV&6baOk@ph z5UOflt8SU1meuux2G9-L=rGnB5Lc0@IOuAa2)+y)!62M9SY%iRMq2~7#37w9RHPGz z*A;4b-Jixj@7qCOe_d_zm8A>3bq*XY+g&s>oL9|6Rehv+XB3~}4sdUC{Tz+7Zze}^ zNo>M6FyNAoX=9DV!5J6B8W~Nt&hp_T%ARpCssfGpU>mMgLA-1`?7(CjdJF(1>U50n zpb$vH1cri;q7tIyAf?1<4pO$am<8M~(HPfaAv=b!!c(}$klk9_k~=$n%eD??D@ z!dT-XDIyVqS!RhT33H{z)H3EuVX?%AoE6&eH9u^hi=?Uq+SZw`F{gqjWAt!yY;<^H zoH;!UKyss32n2!RVQ_wjweKp z*h@Z&Y}NB(y*9qpI>em20}#j1aNzNOGaOiH$%@zt3`ucaN%58iQBaVL?iglOgu2Go z?Fvw0DKu%2&9$Qa9u#(_Kq|b?3y60Y!z~qmFfc~Qe|vsf&v168vDMQTPt9DIvhzjM zG+j}l1Xdvj)Dl>E@L&y6p~0@Ul*erhhv6}(PA4%T<8{)ZK@NA}h_=2?XF);J8_UH# z_;I_6z%FV%^aji@SLh`UBDRIr!$`-JdSAHKiAXS_FfL|-f;Hi52I{50M&3k^CA%e-*h_jf&$Q@&Cy{| zJGwIZBl*Y5&lNtV)GOPgy-_-fsj*n9wTf3Le_2b2AVlVa0h(e7aZ3;c`vcC++EWbJ z^uSoH2M7^&{!@af1Wi!nT>!Vsb`2lXirZ%MiB#)m0z_>DK~YowhJOX2iMU4;-L=xT$kl z>%{ZT`^AYJ7jHU!DZ+`f%Co5tAx6G}-kUF$>NZmJTzfm`>Zu5|>L%31ZqZ-8PiQ!=`n-lE z+$GhQG;|DEKjcu|`_+H1{iM!_gxOFJxud&25#Vs7qo;{sIL=v*6&j|x_|sseS{tY?;<&O2=+n|?1dr~ zFBHLEC=$l6A$}ZtA#@gto;zMB;>=V)0Xoc6K8!l$ex_WEtkyu5s7ZMWner4e2LVD$FeLED@60kG-5 z^{1D9c3|CORO6p|pL+hcPyZI-$wq>p&`Rq;@QgE;8HV;9ilF(ZcWj*5XX%mD1ZuBB z<3piHv^ByTvJs>hKxheue+x>YJSd)#eOe`Zv5j3W%n0M_|B!({%r=v4MlV(}|7`rp?jed6KPYl*7Z$SwsDMa)z#xa#uxva{{aiH)J z!3ad>-bm!p@{#e~l1PXY1CeW3_i}~ZLvsF4iF zj8CR3G~ei=Fbdu0nZjmatFT?@72Xz(3mhS&gq6a2VT*g{e;uJ;5K{t7_&A!R1eV&@ z-|N0ZW0CqcAXtW_MV8Al1igjcN^hro>33+hmp)FD1f8Z2!e=z?@C@W!x}s_{RyA5g zUxCI>llGh@?REdqh?NkL+R-!kFDu+Cys9!%tGs_f<1yzw_#RqhShVshUaHku zD;TY=3{~ouf9~#X`lAB}z6jB|FAhO7f%-yyhUQ)=)0qiUEA=Dc>-u}}#jWH)l`ycf zD4)AbpPeYOPU^rG*#!cnDgR(jvXtPhGUN0Pi=H5O0-83maqsb5>S~cR*>nIGl8$$o zb*Qj(yc_OK1|PtM6UIhfGmqD2gW0(5=A3Cj!rBol#qg zrnAoYtq9eFM%_R(gIX{oi4f@?pxFXLV>-QtN6$iOoY(8l0Lo?sdMGA27i&*Z z$`X~Pe-+Yum8`7XL1qDfF3)7{VuH5GQAL`{V!^2aL0V3@8&3aBJPd&9YCN|)35HolF*TesMwOcg*% z_zp!1mV!o}N}cnaWddzc7*bUb_^PTlG*!E^e+muPzO*xqcRQ-x#Q^clTPNX`jM@I) zoz-|SYG)Yj-rA|-kzBaL&t$yYA$c=%h`m4`Wxh!RJ{X3d77VuG4eHk3X`vtfct_kh z9hBxf)bl_iBp#5`L}=|aLGuubY1V;Yr`g7v+Qo%m4q6U)^n>zJ@YGx72X0{Yo_+#s ze=o1?TSTU=Eu&SMZ-Tfx8qew9_*K-c6jZ+kW50x@l~cb4IlqLEzIXi!9_}eJ820c) z{^&8zWPa;NXFqJXvv-z&@3pfqR?wIfvxRw^p=ZL)afV7UE1C67KSRSyB9fHjT+usW zCmVuM^%es3635Y6?gO6ovjI)29t?sA1yQNN zo#w~SzJhsOgy`Hn_qN^CjR*Uk=!nh1IKGy;5_iemMFf0crVpBQ8jua2T;;pM37;JI z$uXad&i8I!!Y9Xla?B^ozGh3sC#ybL^T`2Un6LX}(ADD*E0o7 zZq1U}NF=6aHygm9G2ew}fec(}!+ci|sfd9Wv_@)TkeKz7G3$kEY=$@dHNbuKfKr#` zkre~u7H&~NDO%ahaS+F!6t8?ze;j{O91WHm=#%0&^owK8HI7gf2cvNreP-ON>&4+m z?Iy^UTJJ+@J$SBl;W=2W&4PmjKy);jA`nPZ7^JJd0@AqRMugpn^R$;cpRj{C^mNo; zb#ObA?E&k$swWLjYMjCZ&R=}xijsd}GxWRW&$kLW%6->CNj$ElM6mPYYG4bY&s|^;y1JNqrJUHDlpS$HG~Ug!3H<=Q~m* z-;prhNj3NkTnxj7GMw+g=byX9G10A>opeUsB%D%70REF^SO{NZe<=5{j$7nPYpb>0 z>a}Q#B3nXXPxr!}Hio^pD~u8PWVd0sOFVpS$|HU$K!YG3SXF z$jhn4%wlo5EJhMEXF!Au4&rQrzRE$c!rAD>U?z_FnK)KAuJS7mI9wlaOKx5%77Oms zv$M#lI~a|HUR%v%TZh2}lhe60M{$)l1XNUd8zLp{R7aFBlvPj3R8O~5w_r66+5jP| zh!w=ELlU_9e@7&+Qem#w1uqQVL>Q};4L=&8B1w1!t;+9&AY`{hK@5)}S{S?h(jZOJ zJM$$No|Xpdmp5gNN(s0+fC%;p;xS{q6FxU+vtuVQ1IP8+VccPGt&YG?_{_$hB1?LL;iqs#=-eoaVS^a zro`v-7sv}E3*$@qW%3ezMPymLH~nJpP3z6ri^;>m!^wBj{poNmo!9fBk@Q%7B0WW4 zpdXPwB&sUwlA%)J1S;>d;e;v?YIKl7MSThttteEY7|k3MfiBu&hnM}j2PJ<(whR=W zJV`ndmJy`zY_Gx4LzMvj@VgGY4KlkjbP;1U9 zFQMLnTB8#Q@Fdon+a79_R)HTiYxZ{ZK3N8?|oNe$3SFqV)w zl?^6ns45Y)g&3qQ#GnHB0A);|!ledu&DJ`!^%|YTlyMU4i-svAbO$wO)|+)s$D^#;YQs|+!-E3Dg_uau$b6+X`K6bCyayJ4{$Jj{JU*%-U9_ss z>9h56&gp$ir}yrpLpteB2!TMFHDQrOA&@{=1R@D&govz)D2sp#E-0uouH$ySC=eD= zMszZc8_HZ4uD(IJzd^^DF*DwIjMq`S^Qx+sH0b=^{PSKXeNLS|Th&)zef4eieV3|( zbK2k{Rd8Mre4*ig$M}&&56GG+dazmpr`I|udT1|352)sh;X`w3-ixf073KHOI+6Kn z_xm^gdgWtj-*anwo_zlL)sJU7kuYK^tc3g{nOmN`rta(#Z9x5pfe#SQuby*s<&tYzKQC%ZaKW3ZmYmih96*2vAFj0g%M#ZUG8@uL+uv zU(FB5pMds1*Oe9|xNlQx5#zv78h;VbnpKx_MY@Km#-_fXQkR}r+ApjkAu9=t>+_if zfb!;c1C6lLz6!RxjuNI4^OD+Q%+MlUvY3y|ns9hL=Wl&%RA=Md`J={+88P4NVZ)EE zY##npq^WU#;i~ip1cr?RUorArL7lhl|RgqH?gP z94IRLi^{&DvbVrQZfs%wX8&+;k~l8d;$Q0DDBdA%2|j81w~E&oy=ZgVZB>&iKC)?C zXcj_B0!sFI!aQ-FG*3HEH&5RsbctP3m$pmSrSA=Y_eNy07&BNlG}tD!YL|qUM6U~6 z7rZHWkMxl4?&$p$d#aw0p3yxXc_Ml!{OhnaniuB$`9dIH2<8jXtQszN4JicjgxfBJ ztY75Ss9&T^1Q%I%rMA=wok2&+WUon(+Y{8NY0qv6nQ&MMIy=1NPKTG=<)9im2Q^QV zv!liA%!%d>E^s`A2~IhF-eGtB>2g?3UQHfCKTxYl}B1(}_~14UxS$ zn)@9QAxQ=~N@}yFvFxIOl-eTuKg%l*9o0GeJEn)lk+3nJ5$j(yHSgjXi>)M9_#%;i zvY)sS#YirvmDInJXko~@W3ns6O|@lt{ZwR#C!jG`gjL0;m=uQd>%A@@MtK+148a?Z z86Wx#0T=KG^g5wTa=~asl(-n{0;Ng`kqWZWQt5^Yqvf&9n>T|Z+D$az?SntStZ)h- zEYXI;C6(EwdJd8UK-BFw}h4cu?N4 zVdL7`&^@p3n>Kn_`CV7saH36pLD$o{vCC?WySBV?e@o}T9O+)ZYU#L<0edJh zar4xsb6V4p>oYWV1w6C4VCwQB8`yt zqNTWlWxlA)6_q6tlQUdHvo;2C;U)(JP^Xt51FVV|lO@bGGFn;j13%RN1pAf?$mYlF zn+^`}!gz7~LjGF*CVn^10xUi}!oR?u1D>pPrrv>BO--(li_i2O z#c3j#5N4B@26FOARsiFVqb^{7heHo^T%!D=ne?(|xASDO?kA4>WU^M1N#)I=U>2?e zjFm=YVYDQoZXzYFfSBV@4U$ObZi%DmF%pS*P7ny$vd%@sO+c-qnPq4;0HiplG+eo& zV#}68hYy=#QO~0fE2EY^h8Euj`4ySlZ%f~ES%s6#Gq>P*<{Zg;4UcAjEw4`EaAUF6 zAg{?vLYsV@av04uF%t|5CaVsbtXe!xs~G+uX}w76U@hXwtVLP}YshXR>H#O!J=mz$ z!Dgf;`hv5%jn2`wg1*6K&Kc`-_Ej5IY1xRrK~F$FV1p-Z&^FacP{c}94bHEf=vwC^ z&KH~mPL}v&=2j-j^q zU4ux?tKwA0MT*{>4fV%Lg)9?6J#HK7bD2*tnQ^j;K`-mcI#?2GoZ%E!=K^{`bpfJQ zC@P)%Kvf(}!-aZkln$owuTTYD04p`#Z)02`&E7>Y1WN@ZhHx!6R!y zm0!$^3xgiKNV(WM*QODGByf-`EN~CfFnaM=@j7?9%>8Js1_HlYFOgYWuhxrJqq{~R z8-%B-LwFB!dx_|Octww|21N0O%6XzcR0FJdgO5H*-59N`0bab3b!8wbhNXH?D>Z{A zsRg#6R$-3V0XtBq&?&A3Yv3BRPFO3hk+#F_XdAPGzg5^N{tWCD?~Kl+jv$qrqrglh2GuR`+v+*(K;M z(=1qk&UXYBG0#XJZ&P_chedQl4cwSW2#g3kR;N4h=T z?zH!xZ_m1atkoARYij+)@g>P3u-tNp!B6ore6sSM_I2^fd%Bv~l!S19X2mbhhf3|S zuU^bt!-msauIiq7J-U@*C0TEH6l0}P^VQ23vkDkVv^l>la_rFOY>l~e0eK6PreK3d z1^i?#GBp)2SjjI>%?nq4+%iM%(oc)r z8w%xo$Xg?ko9X13U4X>pbS@vzWQi<|A3{p1SC>6;ve%GxDma;nlaiXE$CAoGpu_SI zXHPAMPI=(jl=C&j)&{>dtvVL4kSp-Jjo z^$wLGjiWlBb9qOFb9sl@uTx^FuSRi~WXBQv79q!es4Oxk;U5oGV{$T+S~Mt}?FU*7Mg1 zFLKA_BgVgT--}VL8U;~(#1NGu#<+PHs57n+wh4Qg`*lyjr_s~eCv}Ix5$?F*4fZ4M zWARJ&OZgAR3*2|2TT8=q>F8GBvP;df>@n5y=E#amGRUkEr~)s9csXPssw)G}=%Fru zq(3(BQL2tiV|q*-%Bg-z56vb{(yC!8rp{z9m*%M})Q##+RZ=Au(+biZ*^aq1c0)XN zA)XD@qnsyyS=Jf|`i4{3lA3jz~U9g=MD{z~NqFRvPn zF%56lXm|te=aAlD*6R&|D$6lRFyq^QNuY-uB?AcZMplqjok35lXT&^!An-gPZAO{I zfRxPND0)aj-QT2VFg8DxlDyL-*ez`$t7*}!lsHX=-RdS4spLqjXy8I>9%eA{d+IR! z#`H}G6)GH;U1)E&W1#^56C&7d|LGtPIjX4A?Y|J?fj1}(k;Hx10-FL<07m~$6AcTQ) z2Y7Gxq%j-!ckm>B`VlO0;TPhW=JY|nioE6^7>15#Utf4*;dWc`?drg}Lz0*ElKii& zt@(V4hJg=`80$fWk;Y&=U>aP1{hPIPlMzZo179rd{Id_49_Z{~ve8HrOoV}xGcO%~ zrjboP^Wwv`Bab|v>3!*$vNL$Pc<{XX7P=;S=K6F; zeVcqAd!Mk+@PK?$bCNsBzb%V$%3AMaOrk~aRBGXH?Php~R)`yCv#orqc8=kGxL4Y% zJ&KO$-q5~fct`n!`B40={(mW-OGe{hj$8mK74bL6-GOA##I%B5^X3CFOPSx`>oeA$G&-dZ-T-hi~8%8ooiAW`xFx`WtnA zNnXT>H>M=aG8|2D)47{ChC7DFrVL)@M&zG{K|fL5*q6&VOt}cmL@1vt7y5q`si88~ zo*O3Zxjc#_Py>z5(3jof9Zw@RG~`gN*I+NHr$H37CG|SLt)9VuUvhlVSFg~Z&z5@V z_tlFjcOl+=D>ckf_ZiBKq;wQ~ggL^UdvQQv2$MF#nA8!E872Z{xFxgizaFo2SA-6o z$=n5Zo&98Z=8q@}GyiC+8k77!qf5UFC$(nU3C{U4Gnl_%oO7aIQ;i+&wY;ZiVf|Fz z_?a)rY(9LHad66iHssIh^95bu`hr0#U(n|ZM8L^Es({wIOVGMRGRusXaXVxqr{zp3 zqwLkDblx0#JK{0tS*QJ!)1i=U)^$jBLz%$6$6X&ax5&>+OiG`^IOL61)hJ}c z>qMhfZ#PD?5nV(-R5w&#YuKl1qsFMI+1hGsHMLqgjh&`{PRly(di^?ey?MQ5tA3|? zoAEZ&4)b2=Y3<9(OX_j+pQJyS|E^Cf|1b}@Jw}t=U?>D0vYNDR7b}mGx5$j_C^RCg zlra4T*UcfaCB?qjI& zu#6#+G9N>KGgI0|W6FpY7+*0W<1skqhz$K;yh|ddD9ln`U6pQ{j+w3-paD(B9E!^r zLa4FV<=u#<5)8uh$_sc7vC~lPcICo(2g%9a@3brZw1hFQe{d)W#cpb3EaXC!On$+D zX|R2e2EUYz+&J(hA@DRc1SP@dflrUr)l2@mdIKhZ6NfGJYA&p0E0IGeIH0)1~UndE=1O83s5fu&1HZ`o#X0CqiY|LL8 z`+aX_#pqzw#+I7QRnI8Vpli8Y!ba2kR&U;TJzD<#8_$nvy@HIAD5lIG;89|Lf1#rU z{y2hvd&35OPGVz}*p(jq)aX@YsmPQ?roItJxl%#CQcm(W}Q z08b1H)S~UzKVpEukTNVZ++_ILprHW+g5;FpIw0K$;qw4a1KnT%Fn~t=1rAxc&PT{6 zvHE149F;UFoR87fCQ6#9FdLN58ynJ})AeXMSxhnXRx8E8D^doLdxxwjL149R_EU6@=?C$COr8!h zDG}JSNu^BrbeREv_?Mf_2Okp|)&k_z(3q9%q4k6fJm0Q-0pgd<%?Bud3e{vhPCX8R zm%6*2&zq#a>eXihDtMdFD503}IGdHkb9$wQbi)@k6gZ*9#LQIWC-{0V zb%e%s`kZ|h_Gxw&T4q3y0S%C80B^G&|D6iqY#M(v--jFn0nWPnJ93X2g?Dr9W$qx2n zd*dt6SyVp5yTRNwGOd#OIq(m+;`+J4W3+xQhSk~8YCDN3{sY5*N*d^N*co1LcNm?= z(IVi6rAJhKq|pEk$I&q$p+zaP3SI8ue3|(bpf58-fTQG@Ww|&jxVrsBMVr3ReqKqZ z)m+$z>>PC1uDTi339$`Pfp|lyRPCgPP!mvO ztyWPqnljw>qa{v&&0uecQdvqjH1QGqo5LKn z1%~$L?$NmZ@Aqh2-#x5ZGYmw)I_YZC&e`4!>k5udEFFJ3#!?Q}yvvr%%z)$nm&x`jm1C zk2G9=Iz@`bUwR#kXZOmx+3PR4_(#`c2$%!@+L~k{lG~edds}XwKhIxseChtu^Oqin zE_r_bear_{H8oZDlFk1ltCQ71Qp(gN@aNx?)zwLKIoYP21JHoQ&m-iyt#`q zJT81mZu_{Vs-_Yb2qi80RAUUv{2FY84a{;NVM%0k%ENPF*;YO5&|j}ddK6}dvWSIR zorasuKt_8EEjk264FK^|XZzBL_C8GG<9*5YQ}ylb=|0>Ab+x`)NE{ym7Di>pWj4cq zJ?ob(+x^AH2R6V@GPV^DKo0Vme*l;{4Z2`8(+WJGHB}n647DIdv6bwaFlyL;o53CUr&=6}HuGvS&G0MBR$Xh0c@Sw&pO11tv2@A@%F-syjb z5X^|tM3^7M+;8vC+=N0G{2SqD7+5zwb3St?U@{+J7{oB_Eg*o$W^>Ad`6yI>X0@8j zg5^S)+pQ}rmw=rBy|U69ehD{Q0bcSRg}g^0&8J!3`;+m0IfAA~7DmvR2#iLCMNkA9drYQj5JD5@j~I;+#bZCt z#6SeSbO6gHG+lFj9E+J4zuF0)PqovJk^G4F7}ZE$w--J>U(F~~H;SpPA$d*t$S8(} z%rP4fZ(w*I^T!_+l(sy7u)h1|@n%;k;368ERxnOGBwV#|W1g;VdJZV1zq=^l*m`b}(=WxDNBI z-uj-f&+DxWhc!KRyF9A02h-c08)Z06Cc$hNIo?){SpFTBz?S!RItsgsl#oqajd+sQoer?mp&M7fT{JEpPef-c_ zBT8?**|*@11y!{Rw_o0~X9!teU!B>&j$o4*zYU-%<Jecr(eYzXthx27hqb=>MeQDvBd>I`s)1eZx` zB{Wfjlf*WEu}fqo@Nhf>+aPqgG(AS6*5k0-wQgXu>3XyPdF(c=&SKN)Y!*g#A4e|% zCsTe%_6UZ2mhyO(vi2u1k-?;uvUs!;DSaL6v#et>2>64MylYB<=EB(a-AAC3`Rd$} z%mvE{>wVYke0KlN=jK1V8=XlXgI~|fWIp~l^X_|pZyR>)c<=rP4&H7?f7?$eNoEss z0k=~Ejj58`dANe#$fL>pTpmSv$YWZoV|rLYU;$5RE@9%r5EzrXCgT8(KyklHcF>Z_ zVa9+1Ouz^TF=j5D$-L%#k%O+!(n;np^T1!y&6!;=hTet^v9Ae>-(r%vMuTnGv8V^WX2E$z0gG z>33hg{K}utytj16uB9E@cP-iU>b=P|~cI+3Aesb>N|GaGM z=0!`kZ=HAbrnKvcTW)#!xec418yEm1@W7a@If*$<^T0d+@GlJju)O9Z;)vHAK5iNK zg0<3Pe=9vs;PX+ORerL^n&%PsZng<|)7d=by;&75Kb^-tPir6m|`q z)m*K4A3vuFY)Dscow#{i{g(fH z_{B5jo*B1yFSzZ>5%NiM>pj1{?dKnE9;y+It^pA2+;r!}#Wyy)!!vH2Gxy)N&hWPn ze+y4-jEuPY!9{JmyQeu^ai#s9Wp#nct1q{AKf7x9ggegMoq227ecjW>j6}cFIUEkH zTtB6)s(${sP|ec2=jZa|bz=y6uw3wP>gsJ_xFiJmkS&C|{IJCVc?WEzPrA7WY+g5_(>a{S@y`M(H}N5t4$xhwB*q>6X9>y3>@8< z>Ut9fUVH)?UYF+D2OxiLFf8S}Ufd?4tpXg*LKn?23_P;dt5-RXl`$Zo!x+d+!g==4vDC$F->eU8!+ftKphz7_Asqfo6XN;Di8da>5CY76%%S z36Tibh%m|yW05QA1z~R#keY%@kK5-IP%XX}4EfFG1*X_FOnqylgoy6zotlrxi_=#qgj_;m6 zcEyxvwzn?uFgcHOGHAdh793&OJlugTH=9ck##oZzjS<%A_661d%X%EtUByw=PJ$<%MIonrV zh37y5KwmAczzB5P`Sa=PzW73OeE;{4?cdMN2e}OO3rUU>ur)RPdjWnS!K2a{JZ>Z) z@Pe1P`ACBBjR<)$BCZj)i$_I`C>o(3CLkjL%wi+x1(F#*0O)w+WknA0Jme5b;ZFM+ zL!@58l}dm2;Te2;OaZTMCn>ey%A_3+z$7`0Z5M9ngLL@$e30}xN&T!@n7NQPzV;gW z41%Qj-{6~soQUf!ztF+N{)jAYuB`BEP7VULa}aeG`2jG}fcK$ylPlb`k} z=|tkwzQ%q^W^z=9Qu7oKDKz-aflx5IQrlXbK=)s1#N#yf4zR`w}09ge;i1FO`^NI>_HEC+xvDpFc1h+W98wKSUYPvJt~<}}ojPgnAAYv!KkmDNMjZSD z^BLy!EuajnNKLAXHbqgLzsZk=d73?Fn7x15j<6^+$FR(R<_OCKSj1C;jYMZhyMw$LFYNlJS7L&J0Bi3#Qu|=;gShkvNj0| zjCi)`%x6!t)psvj`inKAN3Z_H(i2PA-prWcS6x;So_O_yrmm(ye0t~h>C)C9>DdmqMmg5HGH&Y^Y^GT)xfczb){ zi8GmcheU=2R1NcpAXK-kX<~07 z+|1O>Otu&IZ4e9ti&Kqtbxn1suDYoj4I9!t1hr~AwWtHZSqQq^=1{P_+!%ih4zCH8 z3XK91Fvhz}WfK?oD0)8Rfeft``ER6bJMGgx+^6Yx3iLe`DC$ou>Ch~dEYv)7Y5ykK z&S$QCW@GcH)lV(EYEM%0IB8d~BHygcH;tW>%VSelq((2B6s?@r)qU%|g-_ituw*iBpQ8NTnR)0#-N8iAu2+INbO)Kh&}WXg(5wZsaNv;^ShgRj1N@Rz@29@qti%(uJ9N~Fx?%;#8c zh=D1oA=~`0OI|OdRv8+NAXHZ79-<9OQYjXnyl&(!_i$P%=r-FVy<2}H6TT#gnUco7 zBECC67D73pwAPlDNeiPwO%}~D%;$-#_it#qx4ZEL)BB@4Cq>y&`?@-Bo9XY>51BoA z%JOlgy^brNS~os)`OWRFr+t$*wCywj= z#-wD}a%**mrMw3Cx)?GeyeY9XHqu>9>1ucc~WL4XZt0@n;%)tPZCs$K{%e zk_)nkNii`KNzUt;Mt4s;FpW){HYp>|d>D@Clk!Z)$R>Y!^#*?9xEfaWM7(!djbEC; zzimleq-5}4t>jo%^e$yGR0%XgDw(%x-h_&ccXx%0>61@Al~P!9`hyQ=uBy(-S+IP@ zNt(E%b6)DW1?$f}L)ZoOIrXgt%Pv})EpOPddvfi9(gJJdIYmXK6ZEH^9amV9ol{wW zpDqjIL*rr4Ox zmXe%B^a{jiW1ilaoJYWN$a{okmD{8Yg@0vdMn=hydG^x#U~`ud{%!dEaK+%swKtxZ zSL}bespCU=L-<7az3{u?H*cTO_4RK5-t(q#ZF5d011Bc3q#{SJH_38^iB30BVzPq| zNhTAuXbo9}DzFvMc@`eN9pB)I_DMptbhtUnNM~A@0e`0@7HZe^W|I`iBu{>GU(mZ|}_FXLxRGO7acfi3kX?qg8 z!cM&w+H9e7jI~BqC)2qy?W1(!#4+QonKoNS78$RMuNZ$|ygYtP7XMv#t8GGFM#g`* zgmjolc@K^k2YNO6e0Sb?OA_5=pBtNZT9Sw_iWlne%9RQPd)b4@gghG`^;;G0|2Ntp?RtEb4k?(d^RD0a&zb zwKmoV>SMCqrjd10au#DLT3r_Z)DbgC4*pT$sjwnsl zqs6h&vbqI=QwZK0(=o7xo6X;_r765m8@~6-@O|=qR7(>biK&#z~XwHLl2v9Qe_(+|n_Kf>ze z2c#9J4uUlfN-H3~@>zfXGR*oUl0z=2n7=)nZdd58bh>j4ElaFVWQ)zT%uE;P>1;hM z(a|bKXECbDB&qgPB~?mIg$?RN8?`yojiw3d5Pb7S2);wBg?Nc3vScJdERH?gv3-}k zaC39>o)<6K_VP_jU3*`=sO>8EELPI7%hhsqXX&httL3dNx4wU}ZR;!hT+45LuK$|1 z_c>3=<$(j<&N~8gX9vC&TD3PYPpldlpmQrpB?~HYHYHz?%r+OL=;=(jakdzT&9Kt{nUc9Rd$dUeg{WFW#9Snuv9~?ZjYgbNf zSLLVjhH0?JT)cnHQxVIxDR@ zjg_P>N@a7C7bmmD4qED}fP=qnz{XbF=wcf!v(YI) zYO0=^^x(&OXc9FdY}3@MLVP{$^qZxt`HM-bqX$?>9~Q3$2P{@!tyn#Se_a1;bMtqe z@Q=*q44rS2_)poFjN$KmJj?panu@)}v+A~&&%fr}h!-^1E^f@J-ID8-&T@q-UTsne z6Sk&Q6)AriLoPACz;=1!oJsy?NAQcMz%NpW0;k_;jxqcj5;E=lwlN`-zhzZPm(tUX zlg8?^)L@(JaE#5<=?qGq2^R*;rP5A2ZL!lU8MWvWGjrx<64ISdSLV}vl4H-=og?MsOrJMCGd*3ONv12)+4Q+K zGLe6uAuN(*_M~(&-aej(o-VaL)Gr;o3_+fAfp%grK;b2m~i%M zDKtB}OH7G<9g<%*tDCc&0x7zsl;#_DUOMOenw<2S&F7zYpl`u~{)3)Nf3meoen6hH zV&j4eI1G<#y0*9T`c--5Jzwwe+`XwrmL`98bSF=lo0UD(Ug?r@}`b?RlUuH1#Oo)#jl-7zr~Z&_zHuLX2BXO=V|#m&iFdc zPl3;z{yA=^_^XK-(r?3C4u>z19+jRyRVY1wfYZ1RtkeiJCXy8uvzMp&(%7=(HOYVM zN+X4%lzP9qLqq#C^m3VQlqnpORUK#8MMRol=L_oCbRFt>#)#3BI;=9NO;%6FvN##b zjfRYK*6t5%Ik;|4s`RiXDQo_!1#1S*N%#SMYgTWdV{v}5(-&Bq$F4u!ljmAoS(r9` z#YGKlH*l?oxp4t-ZG-*a++~!u!pVQYWWnE2XL6Rr91@cxX0Z`!p%6N$gV3dX;?S*> z1}XJWN|{Y263!E*ZlvI}HxFNMzysgVl_>5=VvD8tGBy7;%^7f_Qde5}g7EaC;dxKd zS$eZkuVH$JjaJDU{(dbiUPqHBWn?%eS7l3OT;mf6(ar_lv*_%K2XpMyZnb}y?PhD1 z#q6+{Z?I5{#k|u@yUaAlOwFdj6q=ht(^9A@h2CVK{I-{+q#8^qCPP+giX%0}ka{a_ zJ!(yKs)>$;4M=KzDostB3}R2FStvZAays27(_ERRr^zfGbd;9vNK2Q~_M=wTaD6<^ z=wU{0WONOq%NZ?UG?!7fCar%zZAY3kJFPX1rDdgAEhLriR!oeVBWLI%s_LR47!;`L zP~Edcua@~C8n$yWdgU!+b~CXpRWfH8gYp+|`43oT=SGgainO0X`5B^?yEmDk4Z36S({{kklTMq>Y7!WV5=)U zbpWbnqd2Ec0iG&m`nyok{Ne_ zdP)pKdgZTMXLIS?#lca}DtqiAF;NklgX3yjIgC7TnCtz9KWN9jN!jJBln-G!kLJyS*6X0n>+BDbj{Jd;)02tr0m6Bk z#c#pjT+FV(XMc=5OOHIuIP*ugoqY_?K89ym{Mi(fc$R+x{jOnupgK!Ab)MNq4Bw+F zQG7b-%tvf1djp=%!>7=5T%>0m^z`Gi`E;fFEXvJP=ywTHt)MP=W_plOV&^?ox+&~w zc8%r->Zoifjw-Y0sPJ?vK7~MnmY2k7E$L&vlWy0mks*FRE{IMz1nYAnXx4Fs`_tcqr zJM*udcK5Wq3l|rSEtY4Dn^`lY||O-)}qeZ6{O^}mm%(KMR=kEZ9plJxu0G@AbTQjMl&Vom928cm~VG>xXwG@3@! zXc|qUX*7+dFOwEkji!Iv)G(Sx)BhLgibcO(^y^wc{{3uFUr0(ZFT=bX^HuP4 z2DEt%a$ERQ$P*x+g*0bDd!CnJ&gqw6%MzqtLhNU*g**ZAVyv%1yaw}H%o~7y32}cS z-hy~5;%$hpKnklMF9n)aklPVYK)eb#ECo8erUB@e0v(QXI;BXV6!|ZMzSlx-hc;!< zm*Z7fUyC*T^MPg1m*Xv%w_(2O%tu^*fS04}yvEGGv z8;n&>mP1}g>VQrQa?*l4EC;*`@&td#S77}LtY3xotFWH`D`Srm{`o!rA;vVUk@k6Bq5W}z>xd`XMo)^^Uj%L-yEIyXTdZ2m?#MT| zQA^Sufm5P!d{f|z=p63~Tq2VkF9}?ZX`>-#$6o}lCAwrLa2=T*ZKEe+lWu<#xPeqB z8w76ANy&};)7G-Ye;PIYT*Nhi+tb~MYq5R<;ySFq2ys2)S0io!MklcM1+MB)#Z?`u zxT-@Hmt)$fI#h90hbpck?di7(T-Bk9t2$J1i*;=J8N`h-{F^v$c`1mSW9qFO&&xsF z&Uwo#K|BfY#Jp<69Wm{bQAU3i9}`obihY+MJ`TrHX^xL+Gcg9w#P(jqry|~q_%y`7 z#&LZN|N5A*%rW)mh%DbC3MnQlr0Au>REux25Yf`Ief4fQ^3 zQ24`XsodoWi7N0GJ)*7rgU*I!T6 zf8_86GLeUaP~jz=SKV+_4R)hUq64_4~DE%g`Ut4ZT+AR zZpThYJ|WXI)O`T>@!<%K_@oPJxHfyyHcQcyg80OTbEp~eA=$akrlZdmkKo~4?mpn9 z2c=Zy?L>YSE)Jmec^Yo`ax9_Z5n z<$U2Md_Jn<=10dFE`e&Xe$-P3&YY2S)-NRW;hgHm*%O)R!*$R5bR(7v?We@~>d4ep z9{y3?#?FL@e+JR_BmNfg{gEVyjD9v>b7OpfOQOmW!tsA1u`!6VX8`?&e_OO4BZm8P zB~^XT9p_c*%nyiMl}g2V4C)b)h;tjUW`quJ$>ZG@`KTJT{lYRs)FU&*C$t>I*yzJK z91^zWdzHv4(TTIU8>NhBIo_-D(K2qtJ;D#pj%dSYLM}#jE@v5>;|lRf0gkZ_V`V5p*4TdBJ!+I&^&)wl$;`F?@+YpjcP2y&3|Pb`jT;9Ngqa|AwokLANA(7P^a1{ z;x%4eGrPrlG34D}w3bD@^7Gd-Zn>q=nbRAyGf?fVdVyDrwFZ6JFYKO=G6%&vqsAT{ z8QiFU)y@$=R{g3+L~wNkz7DACia+WpZZfo<508ImUx6*68girT0kP&p;)e%o`an18 z92wf30thE}484f8SH2XK_mXxSU%Av|uW7U~6RLo2MxbvyFn z6)S&LU(}Ydu|&0Dp|E%_&XVpZ50QBt?@M1^tFbG*DrM|S6YtYQn&?M8uKx$^7+DSY zZqP3@~C3e{HaLhg~*T=(Z#G#G!Cz8AgJkJQy!q^`WNEBZg`0g?5smQ>@@ zCQ<{XWw2U0v8E2{_`cN%Pg)CKiQRKj?!>TtveXG@^u1p2k&X(iCELwcNlK7I}2jZr>p1gDj#BTkvqTnHRB zV2RhZ09*>~nsNL}lv(Ar5oM@>=c+8#$N?X@K**}LXZe+`g^q^d+6)FL-S z`dbKaDR9o|FM_8oTp^mEXBA4?jM{&z7CPh7HehK;D%Da8Q5vpQu7fJTm%!hmsP3GY ztGqa4sKx7U89pCsrOH<+@`b3mCM>DeScoMT+KNBT7q)bw9K%OlhMriBttwIC=BS6% zp!cfWN4!%VqbY_Hbv$m{SY9Gtt$e{8QK>|pw+Kt0trxEKO4JGGt2sLI=TU!#x%n-n zxM+Hb;_C7$O9K8tXrRZdEDQvD0zr4k7w{J-mEGNn)3>H8)T=nXz24wPucttI+Tt;&p?p(Q8@Xc8A>(>CHace-QClr)Vlp0fsS=h zTOa81E46)|UOtkm%h#)P$I^f43ckhr3%5BSM=1465`7`hp!^0G*+JchIZ! z`90pC65?{yxs(Q9hu7chovZYEy^42zyVv9KdX#RpR`GayJA%F*E+CHK@rK;K?%smR zpbrLu5!^~B==ONmyMybLK*k4fgV3W*3ys z!A475QA((|s-U~y=U<~Vb#?-G$~46pX!rS*Mqfu)pxfP>uPk+kg1!!)TWNNqjJ?YA z(mBP^5tQD(o}O+WNY@$ghYFPCfj(uudqC*}IYV5dyjlqbl#Za+9rETY9$#+{XgObT z`#nle&<9UDpotftyH|hd@dnrXLLng6K7iVc=qv;eK=r{0(#c22=MZ%sWv3??@bq=|}F`V_opgw;`cb|tlR)qV2zk5K*^-WQ27tJ3crLJ5xMOt&y1N7D0z%dKO1rxkcn$cY z?i?{fZdWMOQ&w2$^%wN}*7ZJE|gJyC$#W-n|W)V(aoPr#AygVMLb{Mgp((em(@#=pVcgq*<#<`C??)HJ7s$+9n zK{cSl2snwjg!#()fXCO#p%)d>(+2|ecHx8t((QeG^7isd;UyqpAqd{TTGJQtE#S2aw?mloRhCCt8>*hwYU^$;jCd2~GbgsB+PSb6ij@oM8tPoj^Oc%9S0krc14Jv8rIk)s-NKfJN~f~4#ksVpxf+JA z0^}O+dwo%>;MLYOApd#;b(?3te?hja-a{ zO^q%m6!Sq!rz_fZSzU8=zEbI|Yvu~6aW(;Yu1@IDghZfUW3@_!t6GV(2sGj4mgedq zUaG1q8-P|b?;P8>zye#F03MV0k;RY4k#>JFKrL|SSPSLf;ejdgyjdJ^Ja{beNc*Jk zN=hHb|1ZV zAH8-T9?eIu-s7*{Bib3gejmMlAH9D6r@MZKxjA%-b>lh_DgO#jwcfZ>t~c%+izk0s zd4fD$UMw$?=RsZyt=$m)_+DL&SzYvg`VEO-4CQCsAif!l(}=u}oRBj)WDgnXAB7fr zU@?Jc&YU4O{_g7~>_?MWshmwn#c|Cbloj>rJM!-g{3G+vge#p5&Y~h{rP3k%J7<}n zZ6pkYAnYna+12b8BC&mJAKBN+M7o49=~C$=;D44*0e)Hv1Aaz2LnN8Vy@bjkIRtp0JOKD+c{AW! z^Nc zwi$4jwgvE3?J~gIv~7Sd*RBM7l{N%;pSBP1joN;|H)$^?OuJpX1Mn-fI|1LNyOU7e zUAnu7q&uklKHv}OD+$vt&|gR-{Y83^PJfAhKj63NKLY#@`jdeF*#M&$mK*wsWY}af z5Na}-EJQL{O}T(iG0gycrs;of!0$2r8{qeweggPorXzs=)bumJpEmuRFw--p-vNHY z^dZ!LWcm}}Cry6={I90J0{*E9G;jKw=`+Cp4#tzr)ciQ1<|F1O0Dsc_3E+P+pCruu zXN#RsOM)epNR~89E8xp4=K+4c6~?tbW_^q>>*KbugxXSV8HCv;*|L9$WXrLg12yw) z^8v50Jq!4AwiAH=-u3~s`Ox+;)O=$56V#lvON82GyG$gz#;zgEuC;H5nl1J%P;;Rj zY-hj84z{!JN$`NL$-?6p$w0fS7FTU8tPC1o< zCW}l(sO{ea{(aBE zS%a%qAroBA#R>#wwIzcnkU}yFpuMF@F#9k1+p~=ajAU z2L05Gc_!xNn7e;4@5X!^=DRT8jrktT_w$$Y=pC5fkNKmRKaKe-nEwXz4|vW9<_j=y z#eD7hb?eu$i!tAh`8AmD!Tfg24`O~F<_}^1DCS2o-X?-J9sdQ)2$~%OIvWeRNdsG@ zgIy;457bjaz982CWWc2i*cX>%Tth~BLcz26Cw%k(jo^PlX7C0p_$C40nh4&M0iFTg zK(a_SY(R72*g2KtfhSFaWwQ|9U0+OQkeOr_nN3Q_98wC0fw`od%=;XwU$&0%Pa}OP zXonf|pTVtEPsh?+I)^%GI}Osy==Jmt`T%{5zChohpD@M}*(6rX7BDAkhqdqp$tW$5 zHcJmkZ_9sHxm;cgv1^ySPkvN>Mn0waMAx8OrR&z6&|4uE-EWdj4pSz?`YMyl}&0t?Yr#z?1$`w_G9+rgnt%_;vXZ# z#>-TcA!@w!P<;6>=U|zEWfIkIg#X(r0k4Q@310NK*JH~3uPmmlg};XQvStN(U1TJx zJsy8wE*KkMF073&7Y{2}KNnwKbR@o9$B2Q&lv`zDpk#=j&LA;JG3B-PnEsHu3*yV` z5674NFJV~&zBZQdE1e?sS!j=d_X~JT!1n|UkKC_M=&>(TzzP9Z3ApKV`fU^NfPjw( z_=qspuvWlM0k>g4z7~yv zIG8PJZxrxB0bdgEDez*k0WeL{r;MgfH!1NCt;hz_*J zmp7C6d2(qQmL-UL4v6_`UA=&t1-w6=#-(p!c^F5RohM*Oz#pq{s})<1h3I?^9D08m z;edM{>4c-lMshLPPOgCy$L-`GxsN zQ$WG{wtG}~xsdbnwE{k>!tD+LMg4X`Z%3MdLW&(vs_+Womsg1TE1p*2PBA}rUM!%P zU%SSl)RRa(9Pn1)1y_)4CYO<25g8oRDbh1UzsT`x3tgJ^ey(A15M0*Zb&i5Yj3n4x=w9DDYu@aBK90;<2P zL-z`g-YaJI-mnU95%c4glkwiTkHvfRH}_%LjGkFAg4e07j;ioZF-PybP{5Nayi3G~ zyF~oC>yUs#>VraS2QLs%aCh+N+4JdcA<^9)0ry}V6Fkp^eauY$sc~4JTx1m-*1JWU zdjunL21X&7}EsCM~B`w1K+l zD(a!#G(<0?+vrvFM!KKgN$;f((nshK`ZRrszE0nxAJCKZ6qA{mIaq%>%Vha%CM#!E ztU>S~IKS_975%$wg(p2G;y-$VDiFy5;h|JFmdM^|U_zM-jc&Q3s663!l>R-Mre%}5fH-6r}dg-w8 z^~1`CVs<<*YhV3w{EqJUocQu<*PJ~QUl+E1UD)LH6Y+iCu%Cb3=M6FA-W2im%^R_e z7Ivg*5Z|Z5=|gDhP2quW3Jtv_)`qu440%gv?5(3C&BeDwueU|7w?(hFcgO4D?Zfdr zzx~cg)ZP(Rey3eP5x3sWjJLwOv08`p?w$Wh`HuK~=evi7mG2u?esEZMa9H`r!^%g8 zm7g3|J~piU^ss;OGsDWy4J*GitbBY}`R!rl-wZ2%Fs%I1u=2@a<^oscKtw=5j1U$P0oepZM2v`th=7O)s2N1|0c3a#gHDEV z7*w8vJmkyAa|Ds+^EoQWIG~8=ARscR$S|ns_n&k7<}QB;m<^IZPJe&(sp{(L>gsd; zs_O20J1(9W7uRv|l(=}cxOknoc!Rij)3|u+xOn@xc;~oym$-PhxOn%tcv@V%M_fET zF5WvX-Zw7ZFD~9cEdN`b@}yI5__Ay(>b3EdreedG2UKt(T@3ZY})W*9l3l+v8<_YiB+Rq%9SvxyI4|w zS*$`zLrUsiK!t?Fem}2PA<<%wkG^|i8{vPnpV@0+iPxhX&U#C#?Fuu$%Dhj%{6md{Gc)%U+l&9m-d&ef0@trFQc{CSbpi3 zUhKaVdXI~3cNrCSSA@D8Ky5DTdr;1MpXV+@Z7%p5jj|?Xqo(#1^UG4_?dyNqp|I%p z-uW(Z?NCWvN_N!P_(1Lv`q}-Q_dz!E6M1G^yFdDw@w`uM+FlwG^V^661-s`S_E{Ry z7w1jvJoAd|{O1*{yFm7^U{btuL%2;(1^ZbK3mM= zPvaKZU{A|;TZmaVFgLD^#3Fw=La30Rm;C(p%9Wzc$-;VR&&f(x?9c4ac%2W2hPLFp z&-?aY!#NQ9>&2^ISr+?$LeE+Ad)gXFi`^RDC%hGkzhlzldt7J@!e8*~ftYhJJsdG;3B~gSx1gB{RY(`QMd7(wLE3aBYtPqwV!v|ItpZtNd)OuwPWJBG?IzxhJ<@NDIC1SaQ9@ z#S({Oj)g254DoxE!h~0XJc89 z^H~_=G3bS0v_JvNV7pQ+l8It1I^u^+(@-lyS z`ic;@RLQlX&^osV&3l(V+-}8gzj8gk3(p<7hvnWix(B}KM=xMsQ5Ge7j3USiE;Y-P zYrBh;xGVj$qvHbPC}J(jw$0@yF}04gOWqc$5{2*{CDx8*z3q5p9LFgf&x*gR5!>(O zJ*VQFrTt0N_&0xxYxO0!Tvp`%3Q5jm;W`(% z=-A)Yaax{~=sgNii+vFrLw(M3FRH9b*y?!h8mcq@rwrOM+uj!HIij*(khhC&c?G@a z9{E4_0+zepxvy|>=48}TRUDhkilpXhd)S9UH3-eW)^mTIvUok3W@gSzY<=$5BKS$( zW9N4za!xsQDqvesJzbknO*D$K?3!Q5f^5FA~^h$Pq9zA2BD^rqXUu+38UARqhulUc5k#px{#kP#R z*P^UiTmFA?p4wjeaecYEk8(jN$XK@=+=IIG&loSweaB1ke0Fq6loC^-bH^QHxp1G_ zmeaHNS-l51%+0?vKwGxCO6p6A~evo385y-TSwarpgzZoA06&yb&f z8M#vs$zS2K5y|iFT;9GS>aIaW+c^@|x8{F&rz>hsaV)-dDl|Ehmn zc(F61zVn`0jB<)_530P~w~9#YKM@z@A7-6BHy8Kc@Js67^e?rP)HhUf&R&{*%7)l8 zV`8(4Tu$h}a%&dedT5{WX>(w@1Cj5O7u{!_{nLujc4_6d?J~k+362%>Yh`GKLjS)u z?Nb)Mvr~BCf3S|UU6J4Tcm50i?D>DcvU@(EeG0!t#6f=H!1wL z-9l27Z){zR?{bx%6rHsz_%7}{QH7AuccKa>v`^`MU#Fxc{JkF5ub3~am5hJHe*w1O zeMRK1LLrV;gni1c6y=#q(ZB6>dHSsLjje+2Rm8bmN$p=&#qJvuJFi{ZM&X}Q(>|B? zvu*oT5&ByAGW#tN{$C!)QYwC@b|JC%$NZO8w*8IsZr`ir_uf(I$d&m7y4bSv{F{pV zcHiatcA(ui`u|b*zgi;y?KOYi`6YctKbx=E-D6@Ol~z53>S_lbP}JFvL_dU`ScHMKM)^z9Ev%FVYw%7&EBZ-0~xvHuwJ z@2tn@e`oEpq5pHIf4nWtx|K7zeExUw5{Ug=%&!mj@RxA-Uy^8+QJjDO)ei4-`HFo! z>VLK0I{*J_+ck@DAEoAHe;+0C@5teAg2#VbshA_?%XP#ZJ@zVZ|8HFSQn3Fw4&D1K zoDW|1_dYv2>jmf8E~P14!V)Q>foLLHiMHYzajm#cbi|&$#BE}j7%oPLG2$-qTd`5R zDE=&76dZk}pC9BKYvaW0ZTB)m5J9Uk^R&`La4C;T~t@qP2GQ>x~m&inz~8#P(4+; z>ZN+CKB}*}S@l!5sQ&6!H9!qigVb$muo|LBh@H%hZ?Q!RAbfMYMjbY zLE2%O;giVrkbY~SPxrMt*5O;)^cl=wc1)^t+jq@J!k#i+F&>nrPo^|ke#b=vygI%EB0*%_=o^GTY>r~xTH`C2^3*Az;(pT%Yx}Cm8x7XL|>vTum zNq5%Q>n^&h?xt_lJ#{bLTldj@_077UzC{nv1NCisupWP+hv|EChQ3#i*Z1iO`hGo8 zKcFY+2lZtAke;F+)>HK~JzYPdXXr=uOrdanU05XS!$K?tiwkzrK)7KmO@s&b(n=Vx znYJPUc5{tLgza1_l3+jAiAu1cjv^U$)LEFYrCuoGHY^%8HB5M6SHp!5wlxAe*_R&{ z_FEBPEAxND&i*Wdu(ell%q>`c0h`+vUL+(HcZ^^erJ=lNt`=UPVdyl9L8{daKpU6*;@~Qk3 z;b-zQgrCdLvGpJFAEE(l{~OT|_W!+T1Rppf8p99%B~sxF{{VSFhQAg~5h~y2AIa5#8W_*NPk9gB?V7_~CWf+EH~BH^Lt~i8T0RXK@q!@_Nw& zzS%|egnxDw>G08Rq8I%12GN^*6?>(rG|>khdz0vY3$N`VZieUfM0&bP7yaPDy`cA2 zy~Qo?=_Ke*%}F%f(+RXhMrnIx!7Z6$GWcblct|Z!3&a%g%)^4XW~v~*d0I>Z z=PVM_!8^;vBjBD@Vg~qUwWtmbS|c6>53Ln{Gr>i_6_0_Bo)fdcNxv75gO^^$zB{ZP zNZD!af(}+f35Tu2Vm7$xbL9ET`WoeYXPrSgKWQNz12?(EEO1kTm>!RaZqyHC;_S1^%ibGQnXr#V^5QwZuGdSsn2-_^hr7fYa)K zA%7#?2>Bc9#$rDBEfwiabyMigbTiQjT-RJY1HNk^7J&0wiiP04R$>vj?`pA__)jbW z170JRf(6@)WnjW<#jn7I*NNp|#ExPGSh15>31;k!60X2BD1 zqrMS(Pu)|j0&DgXzXo&m#Vc@k zZTdEZU{{ndOb-*k0mnWl9tNk*6jR~EM;#9JU{PSjN(hNhUEn=0nAC^G10M53Cx$gd zO)Lqb7M4V2+a%EjOC{#kWad_rxz%EB)gldxSMR(#!^KL#Zr|S`6_1QYRt&h#UHWM5F4=66o0}}OZ+F6+Ts-~b;M>YirKj? zvvWOW=laaT^_f*0Fsn9TK5fW++DNvPEx~les;RQIYz?NnT3(G5V%Vn4u+5l5LtI&( zS+co2E6<7+%#1CW8Cx+Ywq{O$Y{)!#HS=JI0oyVIwo^Xk1NZrrUo=qx6#xSURS*oA zqEf(sl~rYMAF*UdRaI35(-Bv8R@GEBFkOT(yQrF~Cit$Fss+9y_Pl}Fv$3kD>Vfs@ ztNP$O;?OkJP&EYK5tH^%ja6gtU8+jOv4~aERa4aztVi71L$y#XzJw=xe7U3^<4x@HS?^!OVa|zw!naNm8*eG{1b?q}|Qo5pcuMe2Cd_ z3bWx@^@w^zJj^`UlzDI}^WZdVrZp1`_?Yz=_-l?e2jLUe6W~GO$49MatY^T0i><{7 zms!iegU?#eLjSe(YlOs-vzR3xXO^7JEIG&eo%K60*UGZ8kY~MrwO%~IjQOaw$=ZaJ zZPs>##GZ4QJs-8+vff6@2iAuO4_XItl%v*h=-*l2qx>`A&?lKgXETS+VGey%C+bA7 zXOd0=>k*$m#Z3AXGifGs=u^z0narNQWcHlL?D;ga=X_?*XP7;o(hYS(@EUPwCUfXQ z=Fn$!6Ws*q#H0&qgDRb)@JqX;o6x=$07)KcbhFz+M>Y-p*;@PFl zvs0O8r|B2g_6S z@V@8$P;~cye(XIi(tU29TMY3%>U&fS^{w!&0GHBH|EW&lsI^`7gmN`@wHJnKj_b6j z>`C=B7xO)xjZR{*(Z#q?E;dFO_sA8-y~e%rIpaQKf_&bXY&;~hlK(S#t6Y!4-2?I^ z{i(OAs^M+y#W=>h-uqWI(U;-7Pp$IZ@0+34_!jzqma7e5Z(+6rItpoa!@3917y1CK zhXSLVHDPR&J|36^Oa*2FbFt4ntQP^x9jtcN>l~~HHaZ~v73{M$D!v}^?aq29)^7vv z0sDZDfx}2YiuFn0w1aaD4A`CYb9^pTpLkIHxQ>4@rOvKQLkYZLd>i~_+=8QIG z2Syh&&Fl^IHwQCDKqriWPRKAPnp4af=4><5TwpFUS7E&t>nw8vW0SeX%r@UJcO&1s z$hX(r&)9@~+2%6T;Sd3JIKnt#erujJb1b)iRf*v<_cJO(C)9urMCxnRV?^Sq1goW4 zjnNJ|p`+D}(ZfMsvjby*gQ3%h<(tyfUqR$x2gI}v{y`g_1W>tn`YoZnIFBxc*^2wIr?wPBsa2sXf|Y7S=9(hV4Y zO|gy88ly=1|lQj%&P0?=rLXJK<}oKR}s;j~pB{C+aWE8TzL5zas-{0JRL{?V%lW}-KdV7a}2n&I=N5W@Mr)y(~b_&D~hL%_a`2;SyqHAWjN zmC*q@p$l{%Vk_P>pm$WfKfyZ~c?aj4e+0oh#+yN~I(jEMm_k6>490A$8v$vV1n&aG z3Cp~z7;C**j16W7#-meA~x(j#0YPHKjJ+^ zh}f|A1jC7YzqRHP!nW!?YpwIH>jV~}}-;CoN^W9$n7+dgItg1rO2!$=1rJmxz}@SXIX z_MJ0xFzqt@CJ^u&VP6izU)4b^2MruFb&-X9EdZmAUl%4G-M7YtvhTwl5T-TDg&i{h-p8qA?+P~Sq z&HuW8m;W9A2WFc8BjBLbjS%(){}+0)|G1tNUMK(PKSeMT{bvYPW%CfDhIxb#>CgN> z5-hi=7(VC#rc#LnJt&}m3CTYOQV3>Zpc)}i$Erl|gDVMvMrJieb1Rh);Q-%Jf_F@y z4Z-Rd=)ef~C%J854)z|g#s|7s>jG)k#z1d#Z~*;hU@+n%BEChwM)AOySYOj?0vYg| zby0qlig>-iL^CZg1-9wk z47Lk)G!ui}2*DnI<_1Pz2Lt@Gf>z^N0uik`ky@KEtLT()60mf7v2+joN zLZ3_Hpx``nN^lX5wVV*XPPyCpx&&97{R5f6g5WyTcRl$U>IwumBL0dw!}0}d5Q19~ z-;Q_<#DT~-DY%mmvCrV!ggoPoTs{Ur1J>!_dju`O-v$tWcO8TKbbH3fx;sH13?9~B zU_7uF#{LWboSwJb2j+8qnkNX6|9qx}P zh10+1y{fo>8$tiTXiT98<8twt=N#n}D-qUm-;J=dy92^h4pTT3PS}z|iu9Rol%^)w|AxMmblKeVJIc=~Gd+DN z#h8z9wF@&VxzBEeaDnT7gu8S8Ks7P`&R1s{)s}SGTs%nW38|Dqq1@*_MkVBY#rY}y zla;+{UE|Gjo)DF9h65^^K^&)ytsz* zyvr%y^Red8S=);_q|(-UhSAx1s7*R~Fh`Tm@LslY3$=`UG=;QPt#tPk(%sR1fzHTH z$I7CdXrIS;>l4s3+~b9GrQ35@e~sIUNnUg?y_ z7|FF-!6mO?tEQtr?(U5+fyxo5jATy#obqtV$34>!PR{u!Z{_whOysvbH&V!XntMJ) z_%fx)m+j%4XCd@kT>pzaE_(*Gx%)c4rj-AfXB>q&r}h;iHgkaqD)2Dq#eNRJUunZgXsdERg(89y90)&dIS^4_zbj{o~Y1vXR38gP~U{t)KkE^h{yI3kHHsy&zANHx8D7nvkB)p$*tOrtte#M zb*NUZml3|019nn(s$Y`+)9<+cV<^Q1`*Hj1WcKm8e3ifE7NBeD%9&5sf*E^r&Le!q ztMWCf!|nNdZchqt@z8atXOR7jBFlk2_vShnT%Uo=bv-zJ9;bI;{r9YYx8SW;v*oYj z>kA8%|HW6~t(mvgaElS^E>I!84u_T5Hu#FW zAK)w4iLc;QtY6Q1b-qR)a`+W{2mDC&q7e1xka|Xx_6OEenIGQdcDRY_@D1D8LDJnW zPG8UZ|8oA?eAe(X*`8Qk1`W<*JkGpYo4JDe`a{g6hivM7PUj4N;T~!VF+)xcavpYb z8&W^3(%EYsWi~sM^Pkkmk%ho3Y0P5^daGitaw7~}r2EpxMR&dwv-u(1K3q_N8Pn9H1<{xdca+3j6I&8no~^zPW~=r#qbUIkabKbVzcHV2f z9lV{qop~R$vKZy;LwwZ0b&adN>uJ|~*FRmST;I69^`v`x8EuTVREp8j=wx&;x`s>B zKj|EAV{dA7sopodJG{HRZ$*yJ&zG`Qqf&dml;nEc^*E0Dz3WFIjp@cyA}RTu@ z%|#A!>NP@}3ZNd>)@i)T3uaE_jy<-sOUKx!^@EaI*`ZPqjV!hbJ?@qoeJ`#t; z32_DnRY|7ES~69(k!f2j`IAXmzDa)aC~TxykCtFqJvwMlIeO1-2ut8MCa zXxZw24W#Xcwpy)IJJm*LFJSvNwHaEbTA;S5Y-r1|eWTh6ZL*rKo(G#LH5=PksRhtR zsj=9560`}}z6RW=RBzQ^%}}eL4aN3JYB{tesQyr?()e)Kj%F}iOgo7wVdLtgWHln!`kF$GIh!VPSh%#N{640}|25?x1a=N-C)S&v1 zuJ&`v0Gi3*SakHGqu#_oJ5@u~gPy8dqEF~36Itt~dZ@nW zK?ZO?Gggg9pD-2t?Jzj^T*5)SuqNM8Scu`!ugB4G@jUBY{mp70cJJpeIO^*CEO)SU7$=U>YqmqRtd)_oif;yk-q zrxw`Fb>5xu1%-(-IDC>=J#hruY60Dq5TDUm;2ilri?NzphOUu+kV`03ty$-*AWw5j zBi2W8$VZf1LwSggK9<^3^j*2W@6;JjM`Hku!joT2≈Xqr8nU>i)p{ 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ℜ9@ zt@$W`22yfM&gl*yes=mp($k@W%GJ{uxNCLcko50V_yxZ_ z4T_)2(GdmL7z_e4Y-TH>O722)%WZI=q}|Ug2ihoBa+mX#o^CywhEg`C0Q=PBro=EC zV0lSou^EEKvo6xnj^UCS8r{nqXJ5#aTbNny$I^`xM$h~!I}scV?J?Ir`_YxHmYuXO zHLxm4{{l_;=5DJn^!HFVo=rN>2fB#Tmennu-F zV<`B|w`7TVd|_mWJBpCku!UTpB=Lwkm`{L^XuFEu3PPK#MwyX@tbB##7lEzN-w$fOQe=Qj%j9(zbb3c!Unm#E}U&>r4+;nUvD zHkGK@4$R&S$-+TkQEVbm>+!A;)l#V^cpSxeZ-XPnRj-eS@!I@FnMec?mHvqoT&oxn zm*x%G>y_-)Bvzr^(7rGtCjFoxEMn$>|E1_c+i)InJ|OuMO}JKxc4x{Py4Nc?t4(h` z;yzw9{;%i*fL)hxJnEoUO4^;xgLE)a4vBp2rS;0eBJI`L;U(mxS}dr}efB4h6y zQ>(SqSs>H0-o9i*4kcUetZg}T#(GY+B@gy#jODk$2R*K1Nc&ve0+crP(A`(00>^T54MA6~3e6R{_g|^DJwzf@%w^6oD z7CYanEVHGf7@;h~SwSZ{NAI3o5f)Vc|38ihsEcLEWo*Yf0*8&5G_4{`8a` zvp}bED>=)7hH0#4XpL#Sel{`%shGhHoI6UGHgPax8gH);X(T6vGTYl4(TxmsC#b5< zbtg3Z!&2(Ly^Eql9P}!xnh@et@SPV-7m{~!O=y*q>&}k%a)awT<6|G=gMHtFD-Vro zLB=#;#!(5(uU|AlEu-W04) z2{);ZDr#ySmENdo^+dojggOjW&9kofG`@y`dcj;0^bq;p~@Y94}MzDgB z6mg;?ga!wWP;T0d=?gn^&52Pi1_Oh(G3mkbn&m-g1yMC*} zLl_EHAE1p04^r2)RXL*CQV@8QhOW0~^ut=-(!`h1&UPIPH!p8%MH1U*(AT>h6_s2M62qem&U(LRZRjfE@}0FKL5j|O)#Z~u z&!&s$&iNO*eY?8!~bdh^l<(6aVzQl4dp zg3`Nu7>Jl~RMGdoRm53rlx;%1ar{vx@e`S_y^nGD6Q0ISM@>!*bMtv2M|_ZP@c%+5 zd&3PG=E~-Jl7>fAsI}dx6kTh7i}lmnK!01er?(|#;AJ=JG#+9@9kFldAdA*dwCSD( zfggn&BYeJGK7^O(iU&AZj@lp7)&#W#TJF`>AFqjyIhz)gMN2dUK?zGa2kvOGY%0Fn zW7ibL)Y%tFDs`pbj~(-vuXvOv+Ag%jp5;ZSmr}J$cTSw-jz{pG*o&Ko-QJ~Xr?x`m z!%%q-td`9pY=OYnQ9tw?z*GBwf0?Ds3WT~}ct*cLml**Tip)DMCG&{UH+0M5Y4x>7 z6|1m7ip--!efBjpB6yC3kJ`;@7#l5W+b3GI=f1+wG+a-c;t7yO_zVYMRH28s2yAkO zkZSSEkG@z!TX5?vyj(z>b^1}eq3xnLn(e|*Dn+(@;p^U8Rm1^zCv9k6w- zJ(*G#IBxaP)%2c~s4WUZ4HAIuaw&_UJ=3CA-)yO>^Qm||alZIC2XJ7$JZ@13=l2^v z8!zRYYxJwG4YMGQOf@D}4J4T+XYv?N&bn`vRyb}Qx7N3v$@Dy;j~v4pJ8zZNw`DT- zgKPoem9&cE!DRHOW9{Jkr7lk(F&{#m6)W#@7x%?QlSxMdTTLmCcW*)Z(d;yV!;6#; z^kdLG!XDT50B!0v=)NhE(dr78he*VGyqOS@_=gZOESdM74pcm>k+*TX1)n}*Jp8sd zsfBtWXeJ^k2X4n%mH43csKYmnJ_N^}mE@1FY6Hi?L)rqv*3WY%WH!!M1xL~YkvKyM z_}+W;aa!diAMlawjEkNFobbZB4MA<%L-!JMwPDw>lV$1JVr?N_tdBTXOO#ZDzK8dS z2cQNZCeW`B@8Dnj#Gdd*s``%v*g`CUd4md=qlr3f2G4|8nxe)I$l;##_U} zxvA<6;hObL)Bgi_K!?B28u{I)$yKMxRi}*-?xW^7I_ zT=k#-x3|8>W>ub}-pb=-WMwg`vKTQ=MobnXCW{f1#fZsb#AGpIvKTR0jF>D&OqRC_ zWqGSm7Ng)Oqu}VB3Y5#|+`{7l?kplWiwMmkGMz+b7Ll1nG-eTrSwvG7p3lPbPQ0Ck zH?#0&7T$DHb+YbMooc+U34a>v-!u7t{oc%9fA3(d_TE3Q89d(l_h^QrUd`atUc7yM z?eBZnO6#9aEi0yrXHg$Z#8Od3tY)c3 zJ>AMDZ5KP3`|K8b_!Bio2!vcK#vLghd?P=5@UgXADFLJpBb#7H?z z4ilr~1Q{Vl%Sm#Q7%!*FsbYehE~kqyIaAIQ;qqDetcZ|vWVDzl=gawGid-ZYizvBN zt`XDZR=HKol{@6CVxHV3cZmh^HTjxYDC1z4lqci~v42*clwXQRs3ATy>KhHjQGcV6(O4Wa7n_U4r{+>~sW@() zGEa%mtY6O)cJo{FJMp=B#k?ZEFmEa;PAXIRif@#^sw>W@5YdP}`6C#rYVAvsAU zsN*t9*?*N?MyoGXqI^yzsZ(-+N>-=kB9*FA{z(KknR4Sz#3l@P1YN#)T#pNop(3v^F)bdLjt zbdIH-RzLN{1(pVApi82m_=%;F$YFU@>!HTvkDI8d-&h{g+Nhbg=!wsCSCifw|NfMN@m;V8C=a(|*%v5k>a$Y)Pw~g1jZGzTqVd%Cw zXt;TD9vaS4ZxiK0xllx+;TDNWXtSvl(Khse;GsFz_ zx%yn(xbxf17uBqLe!ID;{_W;LcYduoP~;K$MPZb48C0?jj|x!}|2-~Rine$5%73q) zdJ{x^loeI=gAF9w`7!Z?Xm{tAo*U?2dhW0HFTjy~Xp4xFq8yP_jo5jVSgS3XQH$H_ zeF~!Dt>1|*DjpG~h`CC{T7BZj6m^Kl*2Jb~uY73!La6*===utxGRnPyXu_G*MVYrj zk#`EMHz`ye(d{wa+I5?#+vMTn$A65H-|6<8ZZ8fG3!fk_>o!}rH>}nWy7e6yIW*MB zr`urNmeXww-8L8>Hf4g*Lbq*n+ex=QblZ1)c<6Xzpl*k;A<`JF+c4cu*6j@4&JDNr zU#Qz9yvVBh|%rqx{Z&pwjb8*QQaQb?MdC9nlyC$WFu9#4u9SLs9UFQ zuT2^gHqyAR+gny^D%}R?w&0`*p%G@VZcFL5f^Mtnw$7wUwh*&{Zky`1rEc5lwhL`N zv)8045tGb*x*eq3;kq5G+X%~SGfKC!bQ`VPMY>(_hhObhe`rhnq0RFrtx4SZTE8;> z(66NM|I=39^?TuY|FjMGlYiDAj`KgDmyD}FYYXYNpl%ENp)LHUZBgA8(QVKl+7h}g zuG?aNXiMt$kw0yN|885xx_(Y&=}V>=DZ)e)bNhv2g;*!Hh@H&4-(sfyi8v{eMY{M= zT&8;5qCN!5U|B|1@iKnZ(^EA(eLinL%@Zl|q-WiCoAu;f`kmf&yMMR;(bM}G-rnZz z-}A(kU$S@o_I}>u<>}__-|_aDp5A|mx1Z(d^Y!ue2RwcLGTuJY+pqBU*FAk;4R7Dl zbNs*^-t~0rX-q0cUc*nN>@&=Q%Lq*=wwNP3>m>`Z}}MJ!-Gor}nD@ z>Y$2OZ(1{1^$s)H_tYVEm{}9Yl&N=SQgvAGAj+#}nH#TEYt=gS5_94WYNOi3ykVA_ zt>&n?YMy#d%~uQ5LiM~gdsa)BJug$s)e5yrtyXK)3+hEZLx20j+ymS4h`D$_0RI;z z0!k1A6=W4zL)MY?WFy&Bwver;;+?42y{OLpsl>zNNI6!9$w(O`XUN$ynp(L;u8?cw zI=NA9kvrs0xm)g$2jpAwJ$XbPm7hqvJSmf8vP_lf@|^rpX3ER*n#{4TNf?IVYXlg9 zMqwk^C}ET_Dt{PNj2cEAqaF-2HCh<0jCMvRqnpvo=xg*h1{uSQk;Ygf%!o9ij2Xsk zBidMKEHPFXYm9ZqMq`Vy!`Nx;Hue|?jJJ&Uj3dTT;}gSfoHUY*WFyr`H_jP98kxpr z9U+%RsL3KnjHT<{yX1>8bfj~h_=_kFZ0R1F2 z>#1o{<=0P1ld6DzDwqOsv&3$9tEvHOVAWN0a}ALpgrgU$RmoeueyVQfV`lFfp9P$i~_tDl$5NGyc?uG4Ok9&fDm zcoVJ1n`%A&nAYRXv>tD+^>_=d$6IPW{)E=!t+XC*t@U^tt;gGHJ>FjH@eW##chq{k zlh)&%wI1)H^>|mU$Gd4g-d*eQ9$Ja_)JnXUR^q+267Qpx_>)?R_ti@LDXql&X(j%& zR)6CCwGtnomH0rd#Glbhe2`Y+gS8SLqLuhit;C0EB_67k_;9VnM`$HJQY-OMT8WR= zN_>n~;$yWEAE%Z0c&)@IXeAz|m3X*T;t^VjPt;00QY-OET8U5AN_>h|;!#?OPt{6% znpWb|wGyA9mH14p#Aj(G{;XEwv&|jm4u3Jn`$UmLI&&Aco~lPH(XbvpQCjErLoC9_ z$0tzhAgeZ)((0gu2v9dwuKG>gQf?pNBYg}X(?{LE4}aXT31EQG&9}&-gKB}&2#1tW`=p*{L#E%{grvqyrKW9mw%{Y zUSsW&nQ8uHI?bQW%jOmHs+nc}&CE7)%p0c5{MEc}{_?PK}!T~s;hS9RTb{wcL^2jsjV-#{}RmWRnW&wr`sgh@qy zK`1KudSN}6w2COGE~!kFWL>{jU#YLvDfNv?Rw?SVI-^|bhDx<`iu_(W__Xu#JR0G$ zyi66huJS9x553@{ujBjb>-c^~RimoNW7Ie53x9OTE1c^twTp8-tPYEOmTnRGQ7oUr zo%XKzsd?P|%(R=InKzzswY)H6~(7_RD;xXRZmS;PpkTBuqv-AsH!Shm48%KREVmf+NyS{ zgX*L@tKO==8lavbn}@0}HBL=aGt}d%gsP+}tGcSXs;wHRMyjD|tR7XZR7=%VJ)v5w zHmbeqqHL;<>aGT=A!?WkSL4+vH9<{OQ&eeHPW4rjRD_CDQ`Jy4f?8=^uW2Kmfsrv{ z9=vT6+nF`*V`(VfWq)ZTzF~P(oMmY&eqd=L&a*TX7g-(?nJmqOlcl-%m8Atr^9Hm1 zT$YyNmT*%gOleXd7-G~1>yB1iv{`^?C-b4f+oRF~sS?)Rt&Zrm!c>VOvItcoSO!xi zipgSB3G1#`H(5%SqDqvJWvCM6(6T+zbrq-*m1HHVL=}{NAAea*R-;PPkTs|hO=J_Q zL|fUGD$!oHr%H5`9jOwXWoN2HSJ{;+(Oq_@O7xUHsS>?qZ>q$T@=2=1Q}QXQ#MAO= zs>A>}fGY8fe1ahm(Nor z7R$v{iDhybRbqu)L6uk~SBY6D)HPIzCFT;U#4^c_EFhlp%9II73_6 zIiJqULVxFFsq?a-^RlV)veJ3kN9Sc%P1B702u--ly$ip3?gD1KRGo?sj}Aed4*k;=RIBdJlaOy;YRn zX^Sqs!`HvY!VU|6&Ceu$TXg9c*tF7+G9<6f-+$MqW}s=5@DaA5z5z9Tk+ji|8d7cR zZR=^Pb=Q_sJIc&0MZ&X|?g(q^$%Ny@2>m3(7S>`bf7gepA~8444*8TQY=~Z#`7l^ zwEH=7&$k5*g?8>Z=)(Kk9^c-h)Zww8{M^UZZqB|EPyXa{tE#=$rcz^mt6y?n&VOZ9 zFDv)pk!RMV|N3-`^Tp=>a=b$MUwR}&eKG85*Z$I*`n~r}VEwcs<0kA`?Gyji<3+x$ zVH>r5VlV`^St-4fg3d)_;HKmsiqjz4*(_6)pFTIrq!-iq(#+t@75Uj|&z% z(b{${X5E1je)~E^HETZXo!HM4mR9e7OQ}i)nmzYg@#pr(e7riY^PK2yN49N9nLDd# zftSvlu3BT`<;M?A&HvlB+Bd)5_k&?Fj$VnD{xITWD-ETk0}(1kqLK?=e}B)X@74XE z9ysa>Emw2&+p3U`q0$vqFw2GYJ*n;;H(FlQP9!Spu#2sqZypAwkB^^Z zCT;6v>u`JBW-M&>cOU$$4}UNs@=rc_vMtCu-^wbVE#US?ntARUkfs$S!CwsdsP=d3 zzqk4SygX0)*PYkLbZma5y?g%VhRfbQePH#NxU(?>rkz;b`R(FAxmz?CvG>MD`_Fa= znOGzBtFrDIGtXR_5$WI7Z}4{$u6`F)eQC=U>zcnPlI-(70vz8DevS;X8^a~e%)*);!-1KlHDDcdV~+4^5%CXMTN{D)oN zuCLqd%k;(ttA4)sbbrNhQv%w2Ccpdboy-B_7d<=p%Z@(A-t%XEira8QZ7J4l>!jyH z*S$ZgX#-dI_>}5{dtRtEYJn}<*N-%I#goPYh6ayrptD!0`?J?zofZQ8*Hl^j!nIn% zW$|DWUxXC5J#x=R|2wVc202{#Bycx_$iq@4xM^rpBysb&8)&IQPTH z8+umk@y5xtV%;hgxct?wue!W3*;cO5Pk!I@SzEN@izQpF*|UD2txBpGcX4KdbFp86 zUjx zj(=fPO11CW_1?EI@qD#*b*jF;u=|s}@@1H{ZjN2G$`LZS5dBwI5liYW0z^FJ*k~JFn9Y*MIz7h1wVKkKQ`}=O?G#k{e6+ z$g@Bcw6**B?evQ64jrrAXY1ZF)1C;KdScV}k3ILo_Myg`rStF4{dLm;d9p(1K5m!K zM@P%$y`5;{U}TrAfHm-fq;xAEn@M+9=6PUZv1&x=0!k5o3vC5`{k?^{sI;~S+r0Ij z%rtM6ZGYbKxkUnBj~>#pZ`GI1R}RXpaW}YFmYrC!WwkH-o{_rXB&fAe3(aL2y9rn2^9d@v_v$eS^9X9?) z(xGKXYtN@XWGaN~f-f!kXrS4qQQD>WH>Q4ja({Zyu5y2!$rA@m$QKlM^2p4U@6zETx21DFZdh~BEARhw_}RRzW}fODS^l!kerVc=fdk|t0Yw6nQj4trrP;e9`yH%Z z_kwG|!V^9FUVJ&?#qqB<>2fM(`un?!&3_nH{mPC_)f@OuEivq~=4B?7jlP=q(^`kV zY<=*&%lYh^Kg7gNZum~Ok0(|vTqP=RvtG+4_HWm^$l-$r_jMh0d}}NB-09`#ZYgRT zd9hXDK_!lFsZc(#^`)AZ4rO;ZQR~#{dULx}snMa*;QpC?uk1|U@Up#Wc*4A@lYe~+ zU5+aM{-)>;tM++o|Jde>w?_?)58EEJ^ZniJuNDsfZArcH2X1}e^Z2rgpN&j-x%Bge zha1gn?|pjZI~nEAzq!vI8b7U%Qs^mzTneXmZ7JGgD#loDswJRdZrLfv|?dBXmy zI5UrjYW?H*%ows|-^#va$Z%%HE`KAtNrMO#?!+)imSoR5BwJBgBTU5cMuQ-;_`)>C~Jjbc&ttiL)BC;}KLN3wb%FAk*1ePS3cXm}j|W77Vkl31Dfz~pyg?7=&kF*~Cjk$<2DN!s z1vyEO&pQJt6WTraaN&!TbojHR`rdTU)^h&JdqVnDsRv<^BO|C=e1FgFvF)ytb&rkP zV&sc^*u)#^;~OUh&+g~`a91)DEKy?oov z2;IPwebz_d)3vuT^M6sUk47U57i>y8B!E4u&75#hOI`vK=#SqDEP7T=dTu!kN<|61 zT}j=W$x-EZ;@H^J>9sk1C%KScRaN4K z$K?lpu+%>n$3IQhUfxI7U;ugx=+>Z9gZ{kg&VQ0~YJY1qaM(ZtD*&uxH_*V~ zZzuQ$guj@=7hqk7H4K3K5Z!A`h#h2g(i85rD^AorE_LJl&aPV0Ra+b7=W}l~>J2hE z@Gq|?4?pzZ6Uj7PaTY%}&ox|YEW=aig?#27_2e!!Xt`5b(C~pjEEZjCzV{Q|M>4cI zp@Jx|i}iWDDA(0UeXQ>tZJMH!Fz2Da z@hJCt3j+GVwvxuEq(r@@DX|p5UnLi9;;y;ZC;yFur*3jmA}y#!XtXd*D3@0SwL@ed zL5gX|B_>Bv3`^HaTk1oz>KB+>$qR{jYy+g!%b6eHDSt+OPpi}QbC^d+^w1II`JP{s z(w)8D%{E(xIA8P=PqIT+pVghUxpI+{B4e`WW|jUS;EV4z-=?_1;3gZ!OXPma9?XC@ zZyx0OazE)DuPuD}f^p8r_a@3MPa}ujPwm_s#SCc)3#l?L^ccNYcwbfDDGv~=1t4}V z6!YzjlwP&D&6Yi6AM@0Sp10fqe&;;7pmq@%;eXs>&u}l?T+n-l`fbBg>sR>Yi*9NX zYMckkU6n5M9ig_ml{--Rdw9kHfV?RfAk#a3D-YO`JJwJ@_ah1-WB(_q77YMjbF1t> z5ozD4fC5Vi5Ch8UUkeG9H4_D_n*Tbr$gn^10Jh2l7{~)K=8C32`EUp+T0!*SlzGYbbr;;Njb0}kI0Vf++-k*>Qc0(mWH+;;1I=IBQ6B{^mA!c;eP3!n9w^N_54`*u^7SU*s?_XH*sdsTW2VW z`-hV?k;RyO%~jaX=*|i{t+MixGiqTS=Og6jO|4IhD@!-3dpd<%R%f$c+aekLaDT3v zF6QI{VYB*8VsQV}8W0$_VAO)ax=tbjfFYpKYq0xe1MDmSbHH>1>~#NG>GK!k`vQ@< zs}C;*k4y(5Q-H|R>n}-x4u6!1fcCfPU{F5H-?7!ni+B|LXKo%2K0!q9qYAFR9>C7^ z0bqcV2wF@SvK!(Iae+8M4nqhK@3lo{HwY0D1X@QSzToxM1!oWN=Lw!Ehzb9UzAiH{ z`5FCtgSIMkcKfZXNu1hFPJI1?1)v5Sp9?H*B|>wmQ0Fh9_w8C|(J z>-LgJlTgl2w|95BUhc9Vi^)`*s1{*xQR0V(Q( zV@@slT7kimv)rKt$-Yr1=N@i@8Oq&>=eT|83O#GqgzG0)h15JbZ8`USIHD+%o9BUy zwBe|^`lMOI?XQ+K+ka}6r#z*LUzf;CwDr!im1H8)Gw^I$EHjL8U80R>fx+o!WUFn? zb(}i$UFJJ?uNA*8fBup;c8|e6HS`ggt>I;JGK;U|HN@O9%J;{)dU{c-d>ePtGZaAO z5LmJ{H=e{&UxA+=ND3G7;te&R`oG>O=X|lz-oi1aQJAQb9)HvKVs>$ck8)0C;BkI> z+oU~FXUKL__6aOQ07E-NnV%?6orA-T>7KiS@VY*odu)iwSI&y>(mzn_(z+pC6vNv6 zv+4OvCdM3@5u$An+2*pWd~JgO5#_rb7cS%m2TOc1P8BU$GLnp#&sn6oSDB;_zV!>- z`fgk`Gf2SXOMh2|q^sXZ$*1Lnw=5CkZki>_zyy5vslGlx58`R9_Vd=JX0!+!2}&R* zT0D44hq+99>GGpX_6?NSESn?Nrp5;Kx-D7$w#*U6?khpL4YeK~hgvL-a&Hbce~co- zO93+cDhvt*B2)iuaQ(a_{JvL`7umF$e13CcCOQ=B#(#|%@F~7qEGRZ$V=FHp`Mo0? z1*SFyK5dfKrA5EGeql?cmB~|H*BAo;rwv_LQP#lTJh=!21iuzoK46Hg?&Xlca1w*; z1p{q0=v=_-4&a$9B#5#tLh4T=dvB1pmy3^sw`-8%4{U~$p%6@UAsaAyBe_FrlSELP z9;XAh+JDUShtq^gfyG)OIhH&6AyzWu1-9xT$co+LzU`avsaZI4gpP-uHzh2IiYcVI za=mNd^G@G1;q~<5Ip1)__S-7~-uO!LwRmntGezYRGhHvexyn;(WKa zwhBBbZi{;_;NR?T4TuyNMYVF=OMjm5apfhFMo*6M_gZ+Fs*SyhnVvby z=vO%ZF}ox~_R5fgUBU6zK#Wli3>ixwMrb}*(zIABzF(YV9-VfFGJ7g~`4LpIA(VRP zZP>k|GJM?SAdRU{9}K+LhI=@(Odmj_|`W+N!VU#bodBqWQPRPg|bMG8H+Q95O=;t;O+Hwy648 z>s@EeZe}V9fIn{)G&j^PnH(2*&+#^a>woOBny$v@#QDPPD1*a?k42O?UL_oEGEII+ z^VG21vR9mj9WGL8y2SZ%FopTd)l+jUd*NZ{iDzb5pGhy$5_xN!@N)ib1z|dJ&ulN0 ziKSzY$a;-e63*PjCG;*HBRv>cf{`a~`!)a-heVr1#x!4z>QG7XX^K|@7m=y*vsK+x@2>gB^J9y`$Z7iR`k=C;W+F;Q2`v2PL6f15Fj-?5(q>0D`2a@Y;-wtDcc(xg`DfUSb1o9sNRgMRjQJMo50X3I^+yp1LHB1Q)0RcCb zRs$w~HZU|XF)vJIZfA68F(5HCH#jjeK0XZ!b98cLVQmcxc%1Bfdt8*&*8f`j8DK=Y ziijdI;|QXF_bZM%2zbK_3hInn4j_uR6N;LbRI)5X%}b@09<{7arRIQCpq7|+GtDk) zr}P}HG&`Bu&29?M``vqH5HU}^pWpf8{k?C0&vJeDe)fH@z4qE`KY+wU6b3MmEj4ps z{{vS-#*whNh@#5+r>6BAIIQnjnXw3+=ghGqJ#T-chpp`GZptp1rJ`*zs%(Olxc z?;uJS!!p}-Y?x3qlZf9$tIkoWL+l+(hqNM!?oJf)aPIW%f)n#Teub$05h5`&cg`$- z({q7&VMM9#68Wu|STJe&xF@m$i8|Scd=F2`E-avUs)znF&|dJQY4axby2l(%GwBQ=i zp=a>!KRtVHLFgCtXQ4da$uvE0R`xxAn;%$<{+xKf_b=Jg^OEizF@xxnGNQ!!1$PwA zs*a_R$Zs#p7tG8n*j3pWV@Ya2?8lFzo7;n^}gnfmAy z-S5}chO5SSyw+3Y<%7`o*{Vme2uF24eT?C1O^)}`WJ=(@R7An*T_9{n4rF|PiGEcH z!%<#MK4kQH%m*{(D0ir3(?k*K<0JgEdP4XJgW)W-)hlUkiW&i)tRX2TvXLp~h~Yx@ zA~_N<$wsW}I%?+_*2bfE6hfnEF>NM0ZNZ$TqQ-X2ridb_E#=d0u$?Ms z6=h?sp1U8n7+=cYX#lC61ZtcR}gaE#(ETE%yNs8K7i@LukN zenK(U>1Zj39tMvg7xcF){f$21IF6-Wm`wqF&KEJy2dD&N$;8YSqn;d7J~))t=-*=g zr?`q^(9TATJQtGpqp2c`0;wTgg(TzYEZPde93 z4(W|TpB0eI3A!Y#dKKM&jn*GQe~DPVK%T=RIoG3ca$OdpO<8&|<|%oReqJ0xpQ{yb z#(NcdFH&5Dmc85-a+917so7CavTSD+Rzz|pq$nAqP`ns390Pg1z>&0p-lYZlc@9N9 zkOVLEvP60ovU-$OizvB4M3jh<=w|Q33y~{JyEn=$;#*Iwiap3IZ!dFY0ekymnFDY+%Ju!g5Xcc)Ts$a!xqei=2& zpjrDNE3Z6@Jo5C))Gg2XHL~<_4D?;D>4&QSP-t8R6<}A&bT1sa0MzZPGFrQ?9{YPq}AE)osPR&D)C)6%=KpJw7K7?^hfZiO!7;@1=6j_m*OF3Az z<-C_hvw`~YC|XXtMG!P4nX+gQr(x`eG49b=!!(-Bafqz}&sLhe7*wJ3csp4j{}8&9 z63~krfwUHb$gW?dnG^@Q6D1-rBKIg3V-yK$91d!Ylgyxh)^0SkI~?O(4cRS#UX4K* zhPNcpTdu|DBlU5b8%}P&!(FnwC&Yx(Br$L~UtLUWP>|qfYwQSh2aN zF%>;;zz**~`NDn^g)2^kRzD!D+7fz>k3hFKb0gYDTlr2Nh}F&KLabF8Rl;g4#r|tX z!w~QCtp=E7~_!7 zYDix0E&2F^Zq=6X}OnTJbOGLY=+mQ77q z_i5mNk&h?jrdZ!vp;xxh-jgaU!+w|fMw+3*QZ7~L)zE7B{=M>*NX|#iG{I^^FDRP^LmsD~8v)ROZIHxm@DF^j4u?S}up0LuSN5`rHu0Byg|A?L zPvsZ*2mXv>MJ}Y~!oEqSSU!uC&-iOTfEM3>fD|^PuMgojyhBHM3eUm_kJ3Jj(F$FD z02&xVUqjpXf!?6UU_b8T+d!{?_VHtU=DM_Nq#!j#$~j8u195+loxZ1!`Dd)xJ4llD z6m}D1c$7ErA%2@HVFzD>=2mb#c18r>&Z*i$dQ;Wk!Y}hve2`xP#Vd+aq}R|PNTBwA z`*rGz(%_o&^N(`vv*Wk;JgkyDGrXt6ALY6yM{Ukkeutao7-S!}sKf0zjIMxT3t^wb zU`OXFo(jrAeaRWn?AEZY^1SPdF{3T$!wMeD19(4ZfTBCqE|Qw))y6uz=#PfC+-<+J z3xAW>gE!XNp||3?JNI{X@J&1R_d>aUqrL0{l8@JFdUp9uq1T%JPFQ0dZV`H|#qWhR z@`P1^*ZIAQBLu%$v#z(|Ana0)HTA5&+Y-rejGN?%gWH51r%EMn#U3t%zWMXlA`F(M zk_-6=&jRhF4$3Ng&6Ram!7FuG@=_%|4JZ93ddX|&YBSo4hcCBOgo;Rv;X(R;g#(l? zvR?Trjo=4`Lf?kN`!Il|7afk=M8&eicKF9KrHEd@PQ|?#v7V@Ro<39F-CkJ1Mo5*O zofW$)9QAf9&+ZU>r?s%G(qFb>m-Rv^=_x<1=oGw>L(sXkl!!ac1T$s5;^E>3+~c&~|zfWk=#XnnW+dmy{mz zUfe1}Ah|{!=_R4WP@FPrs8G>%Na!^1LC`VWvn0KT(aHN@Io3no36t@Eb_qAL6|@r? zRtDaVUKgNOIfDxN3p~3bmE-TBoSN9PxJ`zFrgI{<0VUEGI1L%T5pHc z3!G2$MOU0C`+!!QQ~Tsuph|2|WQ86Fawi_b4(`G>yjyYm1L6)O?{0mtcY3lFwND^S z0?9sNv?i)8cMBJ;wkiD+H(fSa%1kn8dl;xNTDZAfG+M?LWBFmnWH&i zuJsD6!xoSYH-Z&7mF3F0b!9eWU4fg(L3L-p8(OnZ#mZ1`JN*KG-HF3{688Bz_~kv6 z{S1*eE?B_UI9Fsi4?8jnHwxKPQ>?D!=J4-rG#>TBFjHB3G1@GHl&vB_1Q3Jb(C%oO zsCI4)b;b@|txm4S@cZSB+#maBH1@Z=!L5SbZ2*#|m=A1~odx%asUDIgA}AVO zxOW%H-6!_|PCiwCL-unJa*+K?_U?$g;c+EkS9n>rB+%9@?2KT{Nbc(4u!H_;zlJF} zVO;RDpW)LY9A4KtKFMwMZ?(gSt<#d=m%j%6dI`F48YyY~0dOnIpXNPUlKw5fidyYJ za*hAN3q01sYs1`jY`eVa-^9P=iEM%0ynd^_k)?+sEr_&#K3=Z<%|LPlw8G2YZwR%& zCDi8K%2p=USfbkB8S1k4yF=aY54AZMIwRS8N0uIoWND?m-zg-IME&kaTaCHq)S+6B z9;ruiEvlV|J#Zt{sV4&XJXUF)V*fgy0;S%rsYSBRCeR`MkUE=c6X~-+k=SE566s&* zqd<#5k-DFM9J?AL#==FsU9~$}-OFeH-W-2#E`Ox&S|oR!yt{{Bk9LI|pqI7U79N_a zPWL!i;4md!`EgW!H$a{{r$z#YK{Ct*$(rzJVBO+sjmO)jRm8z6JPKX)KJuGlEbLnn zeJ;NV;6D2Vp97V^PWA-F@lpPlhopra$md{BlW;?SkfkC-pr;+Fr9E-~h=C@`uLzP> z(@V_QN5^2L-Sq%Z0oRc$NChI`>FqA7fP z@4eRhBvAnDR&$*AQSfz|!#hco1ljDSJ~gGnz>B2?h3DHJ6ryZU5q9n|$Y8Fv9P1Ft zTT#lQyevr@_(>5i8sP?Er_;C#eyVO2N1+RUA7h;Vsar(tySm4(tb6~yrC0Cu)a!)a z`*_`Z`Awd+*AuUM+aR2KuK?wVz7gl01KNIxhH?}5oCH7f9JFr~bpm%i1s`ilmqYBN@w7QzDFm2 zkRArz3F9mtsiLXV4J%E^R0cQn;6Y;zRsX%}uWE9=Ju{yaC!b9{YVOjeyN?u=Ms` zq6yeb^Irz`LW zPPn%Xyw$CI8sU1Lq`qtsZKl_A>sS!wIX0l1zRunBRj&4(S3Y;6C;6pO1HFzFf19`QtGq+BfS&AhBW!O5_y}*} zfAT*CyNMr#r+bi}RQFi0B7n`Q2{2lri6Zr%;KN94LCt^`iqe0?Ek|OE!dPk!Y(>%f72HWAwk9*M z4e$r(bPHetS%8TO+fqyYd+dT3V0(ofC>Gd}TIt_Gj%|RQDIVAb_$^ML1YkEx1a?>0 zgWBrfV1G;ON$r4tR_Xxk1-uMf(h=B)Ist9!XD-Rq8Q7P)08H6oeVuOKyP8tHtrlI?*pEq`)L|*8BGU10Q{JW=`X>e*~{) z25=S41g@q+;2PlHVQFRoA5!=*&DKA}**yoiPT_i*3*12S^po(6B|b)X0XHh#L<{v3 z^jBI0+^ld5E!L02w%rYUT;UV61h|dv(LaFQlK2#V-3xqL;ooSf{yuE{eZXhwe&BPo zOn(o)zyrV?3U^X5@Oj|7u#wAwE?NOBQCLb3>c?P-RsqWtzCf$>cj!fhFVPxcIjsd& z0FT1=c?h_d9?_*mTdyC1mD>P(g&qa&S6E4p>2Je3k@zZY1RkVKz(e#`*t*wfGw^lV z0(=91_!g}6R^VF-57Xnox9JJ}O**3RC_M>$hn@l+1HM7;($m2A6uwV?(_g0#=o#Q~ zg(v7);7QoZ*Koc{{5$Ocex&eY+KHRzDS94wTH!xvmwu4`Nu|Iuv>SMq%7CBH3;L@# zmnD8iF9OdgJWns_2XMzK2VPM41y$&k^e@_f3;a^yMcN1a3b-HM*UP}K=@sB*h2PMA z{T1AIDuLh80pR!as{S(lpzsPE1pY{efIk8E(a-c6@E3X$_^ZOJ^p?IC=eooyIt;9) zxAi@wE39qP{gqAk|37KdYUPyf?@ zrvF=;KI2cD{->Y*Z*BUX|4}xb)b}09%{;$Bf5`ot^L&^LB!9<07B<#EzOb&nV1ow2 zTG(L?#$yi`U~esi2JX}rnHrj6V~(irLMGHmM!9rPxoqt4nRUzQpWT9T_1tS)&u%`u z^xRW7{YL*SANHl|e;6Qy{MEub1>`S(`^#Vdspnt6K|o+oa7bvwutwpHBbqdgY!=l# z+Jvl@F|n=UTDQST(6(Ls4jnsn?$Whe_Z~3cB!AG-mr~RE^&c>BQ2JmRIxJ)Oh)fze zYP8)kX6(4zZif~8&pq4SA9_pvyY>FRSuIUU!qm&vJ$nQkm;L&=GCO4{5dZ8ar1*kmPZVuC5n zVsaf#wV29z%y2v6D^o2Flk1XyiVsoo)hZr*frnHFsRFjLHrZiW-Ir+tD&Qvs4 zQr|ztl9K12m_Q}|^%1R)n5(g+poAOuW)%^Q(~?RA83QmVS5r%BnyZN=RgS==#iV6V zaAgd)r=>=k&5pzb7pLS}a$IET>k5ijMJPpehudrC znk70MXajXcOh0FFKXknULQKyzp*OMAVR!LTbZL?^k+X8oFVB)DQ=C&wu6mZfmi*!= zPApB+Vi%2=XD)5p)K-Ci!@g;nsW{7SF}wOiS{&J_%}TCwnH|8WJlmv&k z1zQprPBJQhZ~AuaJy?NJEK{8F%{7-Mhs-X$?%PPv$DDF`+pfcPi_vdwlRwS)N0X1T!2%Waf{7gy16yZhZl zIgzDgYZvcu38&1d^yV}gDRYXvIW^Ut7HD#r+USj3#@L#FLBZh-)AEyC9R6>z^W6FA znU?h7W9+81Vy8!cw&__nyt(tc*W`I(u7)XgEmC-5B2rViP|9&Nh2@LAfy)qsf4)ko zCzSgcp_M9yP5oTK&H-+8_?yjtuu{4HjjW}D>(xBNbS1^#_}=q|_Zx=Spjg9z4Y49U zYfN#m{|$NlV1bH@`&mr=ik-#T<$6($#T0BQuFzt&*y4hJG^ck(%k@3WBVGMgI53HP zPJ*@y>RV#rWy4EsyexB!y&@PUeOZ>hRIo^K_H~rBM4r9E1goo3g-n%+^2H=yD4n6` zrNXGnM^@N~id3#aC8+n@awe5#^rkW8mJ4@Uu)CvJ)sYQHZ*IB4on!NsHXzODPAhVk zj`Nf@A}3gX=IkN)rxYsF{Ya~kl4Y;04{DPsgMl0uTU-k)bIm2FNmsHoL)#8%LUZ+0E?X*fN0Pg}H z0~=^OaIq&vqiA3suuNU0^0#Vx$px+izYCTrdyujRDSMEz2Pu8Da$@Zz?ZwiT(dfEt zcaxSKFDEzEc9RYk+8S*+F2~W@?VfPFCtQWF4Z_u)aHX~YSwN=0ytHR@P;x!IGhGJi zV1c=9D(ye4e`AG;bhE0+MsLc--AIW}ZlZ0%s5W6#n=qOoiqf*8L7lV(1HC2+eR8R^iSxZI@8``iT$3~iF1N8y*)_NnS7s~bm+BB=0 zqZOsBf9S~ySy|Dt70YAA@>t1FvjR<87itf-fiu8Pun*cvK)nQvD*-(uXo=JkZJEUi z3PWh}gwbNT{2fxQxmaG>Jld9APn1yx*aFqD&J+kuCH$AcGxw}5wn zjnv1TW2-Ovh(6jdF-$W+yIb$JT05$+Q&)G`e=N!!HfY*0D0!yV8e(cqTfiEI+!{k} zjj4LyqQL^H(~9Z>^L)kc_o&mC|A@ei9tHAp`c`cMOw@}L20&TUxXxjn%s8|p%T5C}% zf9eI5L%y68l-vh$9|lIISP5yagxpq2QzGOh4pP|86JLSY3i8%i1>Obr)ha-(L9IY> zpcWuA$OOWQYR$2lt3j(k4}w;LR)Cgcb;5SV?~fPbyWG)bahFwHwshImWq%jHy&@ar z6i%Bzg@?lz2n{hdO%4_YTrUFnSA{zjf6i2BQ`p$nbX>r>aRG0R3wU%~z$4=V?BfE4 zjtl5FE}-4GfO5{UHI5HB6(6uVK44UQK-c(yF7W}K;saX82PB8EgGW;Uy`r$M!j1}C zD2(FKr2$lLACD!o5j%iem6`93K5s5JaB1{C=5ix~CGNMe?x3ekd@;Jcc~W$Oe>)}C z9kevRY(NV%l6R0F$J-M8-trsoXY=df*VZr5FV3%(pT#fQFU%Nf3^oQD8yNkKMx(FM zU=&6&hL!7QZSnFZ8s-};17CwggNg^s-?CJfR(S@pQP3cAHPq5YdS+ivcU9(6dXCBU zW2U8?{oz&kSo*RnG@a73`bN0Af5oSl`{^TG-Q&|;^)klVOPC*Y;LRnL;ndEum$NRD zmPSekzJiz&madHSgbs(SV=poA%9RcZpVKFzPiXIu9{o~(1Dqa=zy3tT*M7lBqFn3J zGwrVDq8zS{GNMO0(jhtN?^lTKqH9`eh3F;&hrPnTNOVsdA=CYfQXSXJe~}64sTE|F zfhtEPS&mF~$~70=WVsj_xXU$H<(l76uB4YaEw#jK_Lk|T%JjOi%%mI3Oj2bgdCF++ zGUi%k{LYeDl`;FBy{Sy|KTsy-H_OzLW?tX;fAeq!4dRm}Df8uJ$!ST;13O*I=j2C7 zXT?-ODSXm%kBW8X<<7Pg?R)T`87SQ^}zDH|M+N%j`jx)DoJXmSr!QZ_7(9 z9b_AnX30)c!Gq)qm3G?pzJYa{#Wzw&@51W}{^;tgQxA zSoe{-5l?PLbA_`Rf2Cx>*&fA_f1VYOW=Iaw(~98&kzp-GB5bbZ-~=cAjE6s!|GS0E zuddQ{@gWRUmWSO>7U&U$SvOuK>wfeo~YFSHELum6 z=@?pUqx<81w}=u})XJi_weiLTy}kY&R~p{ZbLa`Sij#)t=?Goo76z)mM_;aQ)HhKe z{h&ov9n?GM(@|?AIcYZCg%K3dW;)6a(M#;tA5i~aL>^LKqPIC73gv`{Hv*;ar43X; zuh232JDq3de;|(IBL0An`%u-P>O=ZKJx9NT(r74UP!V#YIEItO7;TKUQ~R*$v+A>Y zbF`gBb7(FtpjGPs()f@*qEoC1e~~3dYC9>Cda3{AVGU%q8IpX9&aja?a}wM5KHeeb z7_=(+z1BdDAi)7j`fF$-Wcn2CqC@m9y@xixRlmL7e*{ZElE?8vUdj*h!~7KQ;OF_G z@DYF4H0^G~>xPTfCv|`QG5uNe8%fQ`1m8CSYcLq=d6d4y{Mv8=_u=cFAa60C@0qvjRYfvYnSR{4`9p3P2?JYwS!-ndi)zhmt zRPWY1>qDSh8l12u)ESfnZIZvYT&VuWV4M0of4AMxo|E)7M{sj)&jWcB+u6zad=-5@q6$I4RC)q-EkxGecXTJ*1Us?`mHd zf(;3V_J$z_r(vF9z7P3mzTw6r*BW1&UX@ezSk=Mmw$-WCQ>&L(AE-WA{i$AG->;vC ze{0$vV|36YjBz36e;++aTc97$VT_;91-ghe{|>UyxE?pfh@;iIrC{7cF!IrGnI?kr zc?#rT#M`-)_i-g3;J5f~exFbCWx*JITToBzf{|h(=J1%XzN39cX z8BWaRer*}%vtB!`oi_+WBSQy6reU$+e+?haXM)cFKo;@Fox=P!`kH;sB8-Cl zoU#q^s7TaC8)CHvG)w-4n;0YR6Ha=X_t8}`0Gc*OJ1Vw{@!CeiT0?LC5ciD(e+Ci( z{39h(GWW*XeLyp?LW$ZggZvwJ@-b@He5Q*4{eHs*AECVuJJ^ebc9_TTCC(7xkXBFe zAX)Gp%$E=j#18xjnqL98v%BG}wn7XNr;s*{9^wO-<6fF3_VN>0m+sh)GdY7dX&q=0 z&ww;~&=m17wGaiO1@w6&ea}m{e-U=>Rjf@*F_8>ffXJoe!huzPmqSHcUIaazPRqHN z61a*h>4;cET{%yCtxnq zp*7vfN8nzE{p7@64-r@RE-{TJ^9Jo-{FF$hVU(v8ihjJV`idc0>ja7Ie}Oeg@$F$G zAFEH4p)*$e0`*pZZ%V%ThBH1(WL*0|`$2c;=IZf2fz_vJKBO}M)@?cV(g6CH!})d| zZqP-#LDxsocCpKFT5rq^*i7%~*kRQ#u$5ctCZ3_!=i$)s+vWfFWLR!kYM5=f3un_+ zSk3!rEj>oB;xu^@=T>FfgnB*gWCg(@}N__pwxj~s=@-fJWM*hA&h`gw2qG>%p znf4-66XUQ25%EKVf3OazvJMUY(K;l!3YUCql~rgj!YW_lK!f2M1|6@!ckA~-gnh7b%26NtM(Vid&%qtQf(0TaY6>R&d;!G$E6 zxW+ZnXBN>vA{s~05TcRkdFNL5Fn}??_r~s9w{CY2x9&OTJKuM1^(e-~WK4`LWYB>q zz2ksxLSLXLvjgJk?_=*!@0d)+J^wRw{!g}dZ4_&guA5YS^Rv| zbW~%zps;>DI9PQJSD9?LH#|8}xfEvEHyagtusPMKs@TT7)xPao((uDflB8q!PU z@>+PdmD;*XiA1TSBF+Ub_Nlm);SxP`#(c2L(}jUlN*ludE#aKbtK0D!uok9Gy0;ry zt2x@1e<}N?#s=&U_2$gVlusV@4Po^P;y=^j+KK<5>hzIn?>@gW;w$<`_Vo%QV5S~# z4{jV*6|&Atg(rQ86-FykPtk{kPm24VTtx<-goE%TS-8O(s>M>~hON7_rW1G@o?y0E zG%XP~yIo$nv#T*=PM9s;riWlNyyR(b>!N4sf2Uo4!M2MRPYd0$D1LN2YZVozyD!og zKW5=+dn$>qhyA=O)jGN7xUkeo|gdq$v4 zUZ-r8JZ7^=@OotTWZ5*GD6(IrKMhQMU3`pR^ieZ!5^ig5}0sb`zX9z7~g&q=M zHQXUdU5)j$0Nrp&USsXzDUH&oTJOCnf4fssEa%Rhd#**1oc841I{tJSrtsGjHlJv< zKU*K#aA$q!89OYgEsm$vVFmK_1JsJGi1h`WcGRllNn}fwZf!fzC3^i zh5Vrn!@&NV^W9J8y9*|4O!u(ax+u!haEGo=soX)O8ZP1WNFHj%f1K?n%j#qGfBWNh z1!nsUK7PZU`1ogGwtx!tZ7^H(4rQVL7iOEs9s1?2ppejm|MY*Rnx-nNTGRTFA5p#}r4 zU@#Ey2ZDZ8mRzzdaV)D!qDzv*e|%C+1Wl;LFH0h4aaJ=J!B-;^$&+aY<0@ytmu0`yVW5MI_qMkimLPp%jT#!Pe_^qK%VKgo zC{5!Ylp42GSF#zoUaH#%;etikD)>Zy{o{KCMfAAuxyS966!D(=M~djf z?qc}?j$?y=K?AIJKoorge}cf`0gHwGORF8*l_=Z4(w9X=Jh5KzG?r}_5{zIO-6aqN zC-Et|j7t$?1`xH!#xFY7KpN^tH`)@4)lSxCn6fZ3wE|dxU$>(j5M?GxVa~dbr1@RKZd9C3evvy? zX5<5RQ7bOE0Os_<*gGJxKS2%@gnYP(wJ~ql6z4gQ;4tzv(A@y6D zGNXIaN#qIt{_e3;f9VfQ=Kvs`qfg>E4^}w38})F<;uE+5?mOIh_yX=~_G<1Hd@FY+ zzK7d}w&CC7XShG%-S~ZOKmLsK+Bj?*!cT9dZIjUeH-tCAqz2f>iZrHQ7l-inhaQDh z*;gBdoYP#F!CDO;T$s)#W!O1-x)=}@EA>m8%PA@*_209Te+qARo9^~H72XB_^e$ZY z9urY-MSTBeiLxe!$38{$*uG79Hr>ZTzh!J6N{#&sdEn_D``5OhlXJ38YIy83B#eE! zDdfzPPh`eE)e~t`&>3;YrE}PDP(lTqGCAT2XRIRSDkjNfa`-F2AD-VZef!LGvkI#iO_tmtryp1ED}T5D75ml-8o9 zwT#A?ZFZ}jv$J-K-DIYg>K)Hbjc;UbHHmOYSS-If0X_ps5$M9b0o%n-7_-Mg1 zb81Fuf9W~yy7g1DzLuWjuU$|5`K9_NKfmOta_q*+tYt4@f%M}y_Rd;y{tK0alBn<8 z@yPjqsKgZ&$99ltBY&%R5Azvhy@xhQY+z{YGo2UBh~)x$pkL|_FdRQj-Gl6St2g>qn4r|x&!~A;X#B)_X?vUf>*{*jC06)USSpM7yUAwNDz_A;%r2vR#(!k_Phm3SRuDT})vqGo4j zf9pcpAtsr)H4t!B;wGC3^z8tET5u-84pmrS3U*x5VNL)7$M^GMq!Qddl|h43kb|!dX`;+>!t~MjS@@KpOG)Uh|> z(y^pM(+s+mD;s8jA2f&uvvay)O|=8ytaeSN${mE~TFlLa+JrT;*@7&i)DXBR~8qDRiS{T*%Ky!so%Gh@Vd-@9b@M@zmvqh;~N@7H`5t5;~< zF!#;Xlg?PSy#ALvz;3@CdxwFwLf{UY7k2}_04!^7Yb%SB)DzTc$*JAnMdlT;E4y!I zZYtl>eP?-N_apMK_c{4F*9+c1f6IUMeklLjJ606Q=eD}yU`KHX3>t(^n&oZT7LhK( zJbcKM2qGmMZP9Yd5FXeZjY_#8eBEZP(he-=x~)>hoTzjTVTW#YSLk4{hxSh@4uchf z)XIl#N>97V?D%jPU)Hb%fF()c(|7GUN!Sg`KV2Z&ix^~d7o39V=pi6#e*^-dFbyaT zc9hkm>|#vGj)ab7lUv7XS<|tLk#vL%v#f+4ICR$ryHWQb_B2S1c93wkw{?P9w1z?2 zy~degr18jU*oc;wU-ZwR#d`|8R}frl@4xY>Gq%;jenmNc@TS`?IrYYzAlgLVsTbb1 z?)fvR`#QFs`IGlfZxtlLf5$I-ccjODH`}QO~oQnSonu& znlZ(~jxh8$At$6H$YP-&i3AVgVa(&Ehp5YS9-EvCL!k)b!x*9=e>_Z`i(+^{w?PuSzScW_ zge?Nzn%b~yNaa({3#<{dI$!E%^zm}etJ~#c-^fStzeSi0{3UOi& zabg)dfoOtt2~pJ(@#9D+h91M@&;DYvDU5gNT&Th@R-`56A^g8O=dD=%6~Tfn!_*Zh zO)cIE?_8Kvhwxt?7Lb(S>llJhu3#93bulhhV>C7+Pm)iR2jsKm3+1ciE7a}sR`pHW zo6_GMvJIP9OVq3>yc$i$7DUgAT^PHtWm$1)>*o0Of6Slk?^t)+rPElTLV_qoWmm)< z_Jq8O;B&;0>aZtmniaPesX`8tO4^dmn7n4ELoGp!+_^Php=mBKg#V^{A{Cb@RpA`I zx6Kul5i-$CYlg`@M!kUAkcw4gr#3zuue5@EQ%c)$H(q&==+#J>L>R3Z1pvq)#MZkS zbuVvIe_s)pO6H<5MizLHmw4K2ci0@1Imcvl9F^lk_*c3cX;xr(NwtNA!K^8-;}{KQgGRnFI8-C^WbuTn7@h)Ihxkgq( zq&pW}`O@Qeo%2}d)N1ScKVCAk+vgD-Qo8cnfBF-O_RA$p*R5Z0#%aBjyzJb!Hr(?0 zmDk+=%FnM_v~EG1S0u01Re$Kc*vs2~_TaUb|LPlE5S6cv)#*P$RJze+4{kqIVr{ps;i!~!G z)?N9<(|*w>SS3K=_drR!XDEpzD&bZ7(b8S8oC#=Kvf8p#4)@QTwh4{`GRdVHl=xhom!b4+!-PD>W z43GU4B*LmvZ+`xI}$_q{{Rz9 zdjzdQzwNJ7Ju^I%X9$nzw)SX6csp0&l(r+p2)O7zQp+SzwA*l0;-`jdw&qKLe~9R2 z*sv7UQP2fARIq@OXf;6^jfj9q0XH;xwy2{L$c_n#K@#hi^#!Wo+8`R7N^Z-@j_uhD z8UZe3&t{Mgd1jC$z`P--?rVdt< zE#|I{Mh%hpwtPsRmKS|z=lb6uA?yyYjaO-eiN_}=n6)}43$I`6M8yX;r@ zuUK(Ebxr$S^KX9h&70@l)lu#_`OMWXzPS3#{z>mIUi-7N&%EiTx@F0R4d;IM?z;gO zWxz!*_(c-6<9U;$AeqQP~Uz?Jngwuf6h&q7(Y;Y zSNc5hkIcS;=?R2O1SQF*hKSKUVE+$L8>~|vK4o@oEj?L!wZzP29V*hC_LQxK%YY_? zoc?4{<8mVOC|RhbvNpmfG%O*C=jjv z;2Q6uhBxf0jx-BNJrlr{e@YeN3C8Vk+MSeH1Ue%NE`c$dk{J$sq{Rk4lG5UCl^~Uj z3k;EI&sLjFQGydCmEP$>Lr55v;KK?l@>i8vCK~$8{;s1=BG1t^ z2Wu}B?jFm~$e4u>f6dm#9nP1WZwNb`?+bgKp9>Z*kd%8jxAK@D!hW5D`SJe{e(hm~ zut#^;I-IZY9_)EjLFVQxQ56Fa?AzBUj*URKQH?!pdUWg{R8ljO-81^TpgH+;%+}v^ zE21xIK4hxT*IVOK*lm}Iay}FFF+I$5P`8)s;fKtaJm+wi|Zu+GJ5-E}!WEx60cTe~6hOVR-OTQL0L`qy(FrZ8adtWUr(M zeA(CsXzK5VbU5scDIG8rIQ?VN9@3{CCd|tyK)y;!i$-~og4IOK6U>b$g9>56+S~?R-WO5vB44KXCMxqXJR9=ydA&+O4={A~=!`L?XdJC?4?pbD2yy;CBTAen}L=R30=+UQHydU~?SK@`Xr&Dik;+ zpVR!Zf96*x|1h2na(uGx%4h+d=c-7=d>|6o8Q2?OfSBdBwNjdx*Q8-Q8Hr;%HjCCO zNYNd-0Pp2RjKmq@$KsgCi16Oc#bXwOpEQamg8(!{)i=7MMiqr97n1*K##Sg$h*c&- zwyXl5S#{~*8(6i$;=U)3*wOlbKQ%sW0h&Ude~l6^eT4AAO}QDvN4!AO37Wom^o_wg zj2iRrNZW^(eP+~b?!veA8NU6EXt{a${Jb&cy9 ze|1fgJw;d`tgtQ>mWoTIrLtvObb9Or^~CIzPE#9yRCH2oQnH#kDtionoWOELB^rzc zl7UR1nBX&6_Cn!N_4h^k*yst#^P*QqSGV3Ay)(Ks%H~**wpoNi9*Q+(F%Ge2$YF159JSjxjDlDs`)e=pjr_8Inh_9b?UeF$H!r}If93L?deH;6mL zm&BdoUePT2J5ntmZpqf!UIHHN(=KfI1PRf>=8kyH5VeF!g1ro>CN!!G%_7_3BGyQQ zVKpbYtTtK8CNr*l9w)7dJkCk!JW_319-|3HM0QdJ2M25LlN1w&#J$DS*w$U zb#)pXJO;w8vr&SGVKiuLHwd>sb?4<5_1}5MsIe9C6i&~ZQ91g@=hrvmdrrP!@|>Sv zQ-5Vb0#r4)tLyM-8JKi1D@m0?$IxpOuqXt_7?Ls=6=+T-qJ6~ zyKoUz(F{bJJZ{e{?*i91J&OuUe_hKwOMP3s)~;Y@>om`_&H?X0`E2jE%U1+%En3@4 zd^8Zph-RH0Z&zD15#}9;mTZYFSt;3NyM_rTvt2YpWjUwD&W~xDe^Nl>OOaBsR4p+j zrDxS4Mwm|al&6o5lI1t5rYk_`%Ux!fVa2>nI_ZAC9- znzj7LXUx*IDXAb9wk*D{Uvx{J?AKpdG%)x0xmUMc@!qPJn8;DYB=1N3zQD}BIoU}5 zqU{c_B~bhae+*l1ZRWVead4QTkZgOQ=TYv?ac#AI zyr(&WPob_Pf6IR03}TT%1HTi*e7wRX@GhX?K zwDZ79>%dCO!Ac$I6MgP{6XrR4RuDp5ED$coCoV=|D+ULr4Lua0 z15|%tec&a7hnNCi7o!43!ezn@!d`(9l=A*ZNE{tZDX{oL(;lQKN(vOCy%V-La`n-n zR;c|4BjDPRyEsh~bp3Z5{H(FPQxA;WfVYL|+sVR@UV69@4&w_B>wh)@*x)kA99KZ* z=*61ee|>HAwkTB;s=^F`KEZyhI?GnG&r&zqHmZ-BhwU7b@Fp~SDxs;Js<{*O+<8#xnwGnWVrCR3Wa;p3KahaP4NiktB$=f^ zH4}@sxxq7@j~d$waLSNeG#+54#ugA$od3kURWDpWTG?eMQJRraU4qofjC3Jf)c&gsKJ^BV2vtE0fTFOHW^potSu-_)1Ve zI${@er$M+3Eyhef;5nR2H}CKu|CdVUR#>+w)Hn5-FYoL0_o?mW_O8z3Vgr2(e`AaL z&W~Nvw_0D_cdNd(@4>$9eb2SaJnC#erv20ohL2}EkL~Cy&ni7x{jI*Ej}62FrA6^Y zr5|@Zn7^lUPyF-z=bhHJDF~Iu*ExIGIy+Gi2iv2t)X|WVX*FbBG=D>$YR%(({)SRM z-&zV~N~mE4Co*AE`(cK#0W3BQf00g*^L~xjB3i3PYuPyQ%1}BU>+8@vnd+2y2}vj% zi@Rd6IEt0xOcb|jnS_=}rxT=9)SeB zmpH}LX~THt1XVGJdv7mDegCKrP6z#DYmh{@UonDw#8>qb>?LJkgT@&5`}C6CDkJz; z6|&@x2LFWt;pWxBL+gOu-3HCOy>r1e`*Kedz;`0Q*dVfB+9yjK=EMncTtAK%ZZNq|V*Gx| z1f`|$thL5g+WLu%jOUY)wbaq4ljFb0P`uu@@T#ghe-Rn^#Sgcv!q3)Me>nt3zo1Ox z{rXv%?=SD$YiwsOdNE_<35br_5FIhJSnmcZRVGx5Bx;a&0iaTUe{M3TGGR`XW(yE9 z#B-SQL(UD$k`ll3!b5IZ-d%$n+9;+?WXdn)PjWNY#O+)Ed7bbdse-YoKA&9d(@z_# z@a}l1(zHcyTjD6Xj=CU^b&d%zY%;nv>)xq`$N_w zN`+Ekt^2s(slmI$e~*M;L$Bf2LLcBgA;)aURd!LDatZ?LZY3SN5s30S!p$SV&C@c^ zOLE8_Ns@5^#rxw_Jgvp!Ni7s9mW`-wYwv7pD|d#9Hj{DAwlgeiVnVinyYb6>nD<3| zlrQb_`P{BhpwQ9)fNX!3%BEA4^2ahGD?Pty65Z(}ri~jO#hzm0Q5%HQS~ffA6L$NJ&1W)7Sl4JH zsr9V7v{4{5T`D}8^?hZS9udR;J@^m*7`ayje;260AWq;fZ+4Hz zEXH5CAD*CoKEM8$u-0H=&yx1IGHL&SC*z(!kSOhFe{7LI7Y;xyOJpzn$fPxzqh2%E z_#xxq)gZ!{mEhGmyhQh~6y}0TkorA^ZP*+LU{8RtiH4Us(~{FELIfwX4R30}E$LiK zOEwouS{dUlmUh}=Vd#+6?=sFo6M4NZ2yQh@&f~H6P%IV>h139rB^++tJ&OZK&T7eI zSW{I^Rt0Z~x5ptAV-Ex0}qpD3cs`syy? ze+va{K?|t(a}jV^7xpjs-UaP^+ZbFe{5y-Ix0=KuP^p?)SGQN z2E9({Pf8XOnPUVq)nfO;2B6JSe>FXYO& z#=5r04HZGw7~X%27iA^M)vEFc-vwK@J8F zv5*xy#Lh$&bQwv$`nw@`u>@)%Obf-}c}&*upah?NP|{mrW3=YbgDK`i{pW!NqVyry z>I}hoNr7cMF4x?ZqKva3RlhA^hD4aFQWRX}f9P>J<|d^b2Q zpyh$fBti(h5h|0FU6q>3WtmWz&q59F9V9$JEhoS0??YffE`hKBvcIq7c(-O$ z_>4aOQx1;HzJcYxb`M#E5{XmBDP=B$)E;Q&t-0#?UMd%lf5N63S%^9>Y|^NyLrm#3 zYU;f3zB0nzRqN`e`z?HCRfJ5_|K8T7oIMBQ~0*<6h6OP?Qt15eHChb6;=;^w;dA)c1sfl zu_aDBxRzO&1vN`+RJwRm&G?#`&gnJR2-j3zo4Gr)q2k$^1L4EIw}m6&!&P60Z7}?= z8S85oudTe*cSq%YzTf*cR_+tt6pzKt-kk&AV|vW`f0GtsctD#SvJgI@A}(tERh0o> zHC9)QPOC6)q8cfEHPZL$Y61qn;fe}`Jot9t*JD+9mt@A^2l0}rkQ)nwFchzC%iZ_7 zp+5qm5-J!o$=~Ha=s)3C`;kLzwMisMkS9o-~F}s zjnEL6e}dBTJ*NNE>@;BKY@v!sRJYG0>=-zS3RQ27n=-5qu20=*p$4usCGJfTh(dhi zpAR8*?67Dtlo~WxQ%{c@e|+@aTOXOZ;%*6@Eq-KUXW`pVf6+7fnd=JsaYJGJaI>}d zzh*w3X?f(Ia)9V~H8W+>6%A8<1O3nK&?BLtfAt!JeIiwiN=}~8y=PK7- zjq6$sXAAA4aU>GYjDEWHu;ZBHTZhhtKBS$iL*&glaVa(`>*TB&8Uyu~+GIdgokn|6 zHX|QyZcf`mZAL+_Z=GtqQ(b*$BpnjlRBE{Ri1Nl%eQ1ui(~EnZ?Q}@02?xT`=+4;k zf7rdT$77pgnixO!(H+27#_Q`l4&6m1hfUe7DsETB$$p#6M^^ZK3Zv7ZUXTSaY7Iljoe@)UmUbH)P+r1apo|p33+@8oC7p~sFDv2(A zjyA4lKlIoYt(STkXW*=}ZoTDIRBQ@rceA{v-y>C6^`;C0+x>1|9oi1T2~7s!>vo>4 zgRwmypkVZYLuKN7LFbDkY4c(jwBMbQK)Ms|i`)m?YO6cv?r_g>FNQj`*?q)Kf4Ki1 zLUA41aXMLK6X)b5cmx1`8XSI_Ad7=ZT%`ki^#?MhCu15P6rPsZeb1w(HyqL{{1wSI zSXNji_W}61&xcZZBmCS+;NOY4Q7QR>@4J1Z8>Iuepugu|=IYZPbARFcH~y{mTi5r# zQ-a=ztF^#o^xf)uSgWNtC4gs0e+Fk#Ji~Cjhf+W~3swcHVpvsG67y8p46-3J$Mj~i zLGQ6CNZhz^s))cPp?wO3V=*pF8N!qe_dsvfFM0v!gmZ&iu?}nwN&u_nonC_I(9h9# z>X+;9)ob*8O`f*;T#pG3Dmxo{d_4%tVl>=O5K;6>c`of91d#}Y`mA5105VrNs*C#wS zPaY|uGGuZ6iGv%Yhz`?nNo)c)K7Ntse)6E_-`v0BhNrQoJ$RhcldV%RxkbM7R=urt zDsrl~p#zf~uv$nm#gHV;e|Ss`>#smVa1mG>#<4INz9@V!tPY1`@o=~z?(xSlqfCwA zI&}bL@^$K9>>I;%Iu-6Q;y~ol#j`!06zB2qoJZsw3=V)7etf9tTpT(%4vuy>I0su1 z_VZzp4x3bAqhAzFCL@l%!7dKs;UqVS+rpjT)EwH3GCJ^Zf|lh_c*v`MB8wxfDV~KMy;QH*o9=DfN9_~$rT4YHhkcp;I(NM7U)VR`8<#7f2}XY`?Iz1{6KV~Ng%iH*jqVN2^VBCDD2fj@1;VUT=xxyFA=kWEY?;idZR`^F2FZq2^1K&t?iz8>V+T1ythCvOC ze324Mb~q$*@M0TkNX|+t?+^Q0*uMmOn+1BLpga(s0Y=iSMht({!GV#8`p5x%9k^GC z<^GA<+X@>B&)g=TpG4bnDR4*Ob{{(b6fG_nf-#`=LUeQtjS2X){{BH;)~kh9<=Db% zaTWM%5L?fK^<@_Ce+DM2KGR%^S+NP*^id<9hEL!<$qWzldS3qvu#iw&dcnS}+H=7y z0_D`2uvz+75*B}8d6(4g-46C+a$bD93%#4}0>Sh6>I+0LvbcgdA*PdE0+w;7S=lc(oF&J0F zHTDA43M`7%fw|J;XLV2bo~>4ebs=9?eT{vY^Ovp_^sRr+`{}jLjk+%S3FoH7Hr>mX z7wE0d?cV*ClQoP1@Sp;yertQciQiCtNA<(i&ssKCzfp6z=F=J?3jOm%)z2K-c6Wkuf3@K4%)Qc!|TwJNDjAc!xDE$a2dUWW5850Ci zg7RqhcN>rTuIZ?O-&hOR)*GcRU}{CMP7mL-1(p(IdcyQC=6s<3>m$fH(Gf9c>u z&mMiZ>GqBlE9Sl+=t+mcGVhT|k9RLdV*Ez-ma|{FbmFqBuG~5Ay5Fwry#7TidHdJ} zjRuag8LZBVN9Xk)l70T)+sKaWc@r+1HV0uARdDX7sXxQqSQG?bFx$~w8Oa1ql6Kl} zcC&xz+|DN$o@W`q+pALnqYyUbjlE#rwy>xdL}(x9NfjzLhN*OVqeryDCy#5L6@e+3 zNnmJ18@1A%^buM`^RWx>DW48B34J9vD2Hk$^g(lY9Gb(vA`{@}5^B%cVk%CCG-Z(< zB#p`7xabAZ`O#wK%cJAAMBw}n`!%O|>xWE4hkFL+rcWi$_#%m6kxM;MIn zQHT&25xjx2yarJ5n|FJGw(zfQAFX+#jCb?c2lwCq0s2vY*8ldN!nd#QE}Yo2K~8_} zZIL&__C5aBzdjCsP=+s@opYdOR$wQ#i3S)dGceqeD&fIi=A+R2k)yt&;y*%PM07zW z!j2Kn4V@dAD&#{mBa5ty_=TZWyop6{G( zm9!W}liU>sXw!OiSQX~uyUXSoYMadd$S*nfq>{!9|MnF*A47CPB|bx*EL>(#fLw~u zwB->RTh0;;__0hHgMru^h&cmfhM;!y13O=T=h?aY&tpiN7 z2^rz=6J8Dtk*DNEuYvVP^?3tSgPy1epEpzo!7tKY%w(i>s7$QGrx#YBnu7p1 zD?{Q65|F*%uAX?siV`1sN%4RAAb6r#CSF2Mu@C+`iS*#ifj~|2oGolo33@C9MIaM1 zq!-(dqItS|`aN;DBYA6YyLw%|`^wM=a06vReZe>vAStBPl!_S~P7x$dvTx+_1%S5^`HLqid+R|Z} zhdE4dh?MCK^8K5RH>jsVilPKvVZOZ5-#7E~Ap`!KZ{41lo8|RN{`zMu$VHDJ_yF72 zO(uJI_U_!HkFJWwwmGRyDd~^_%{w{!B^YQpn(AF>f-<8#m>};j9vK~iiA*#}FkO^Q{u=EZj;|5LMG+K-cy%|MGDq%%iiu@0M|+d}$MD_Y2*RmI5~GjSGL zhz@A<=gx43pyd?=f^zN3BRY3OG~VjkXph0EiaO3pSnp1Eg_$!fsc2Oun8<^az((Dh zdeNHS4aKgaX0{q_%_8?K|9;Jy^=d(BjD;<43f3IX?QJCRF&I9;$kw4BDRI|eb?Pbn z2~B)83^gnVAjw&SiUTw&uw@xbZsP`9MGYhU3RL&U@}K^DQKYEfqu#5mWI06BOK<(u zP4H%OH?%gXqHP|q>4!B%JRXMK8iie9(QMsU!%5%zA`=!0BdHrLTdhLUM&{fmrMWg9eiXrvy6($*XDeOs^YX z24iO0HO-d+?ArxQRb0qRd=Fqql_`dJnOFLxC%GLPI)ehfUY@rMz(hNtQ^Zi+m{s8r zHR^v8&o)qj^G>f6M1q^Hfl|>b9)2d)KPzdR@`W5yif#wy`Dn**h4rqezNJm!@WBBxi96P(#~UfnF^L5U+@1PuK|bUiD>2xK4{#)9fe0x7GJbbJZB}! zfOrkAkfWxeDaZ<-Z>o*C65c68t83nxxLE`>_j@HRPiA&n zKZP>A-2CiG6|Kukn3SON+BNHPFB69I*?) zMG7~L5U*Z_k%LCG+-CK9MY&D5OtUEGe%`wM!A4n?jX4Ry^0e?0 zGXxz_+vCKI6(`^!NEvK%&?}DqBj)P!89oX4u*fJ5>Op9D?cAl*1wY~oezqU^AcbMdPPei(n#-ouCYmO7#K3k^6&>dlb&csj`9MC--J8~Ag z`d;w7U>MdTmj{<4gC<{4@=&;2I4R+6B7{2$0ha!2G&)#gGG@^KzkMq}_*P88a+0Ll znSXtjg@5z<0ouzOpk8e1Crz=jFlI_~RV!m*EAbjb2OB)}i|xfO0s+zlCKMJJs!l3b z^2fBRMfh{;RKI%pztsCHt!Tdz6P4+_D@790tot~F5h%_8SUNvi5j*JaOvjeoaxtO> zt?F7u#kkC7da*550%TjDgm6(0D+pLGB4nw#djJC+gydw@0_}WTyg~`1Oy#^3A^)R$ z+nexvr&g~>T#~nNUI_FkstxeyyQOeL6&5Kz$wCaav_i{oSosi3(|%1*$OblOm0a0tD-Qt9Uwp^AEGo@{m|!eWD8h(LU-Ay+}2$C zi1_MYO+E>O%n*5*TbdD?N<;>8O*OqlJ>j*-ssj>Cq1&U>68H@5kq-+MEn2`Wnn0fsTS30XF!B%i(lXdz05c^G z>Ia$iTe$Ky9S6HQHl3`hsbyu2v2}C&%F@3jJPR6{9>qNWooxb3{FmH~14+fyrOd%gg`K`FM=}iRc9hCs&B1A_kKWd z!VpBe8ZpcuL5q1M-3?Ceyg4O3>l z2bR>8<8U*sN$o(3F;~RJuO8xfP(8FzG@-)4sAuyF*4b3Wo6;5Ti<*?EN(6 z`!In|MRBHw83+1x+?(+%m78x4XmU@+mB2kw90)FxKR1tsoxQC#;;aX!yX>5g8yBSi zl2^}>(9$uMlBO-~chHEL;5jgrvkxoD;opMBq;hik5>=GnfKDGiP-jF?4H+;@$IlEv zuCOPM8ezS_sSXfs^+Dfw_<^Kdx5{o~D$#J9&VKi;kpLEg{RE$i9mcijmJ=J;#nzRV ze5|7Ce#t@712YrL=Ls@zuSc5ExwIU5TWpo~+1X2vH-l=AL33Ak#**^tM`avdFK8JT z6oeJW3fwnKf~S2XGSsR;XIjqENI-P1yhrJsFJiE1^cgLoBOd`=l=SVIc}2?G*=`nQ%S3j zSTmBh7rGhiDPqt)46A-~Ej|6YJj2 z9uhl?+O}LB2zElk7wMr%?Bh`*Tmyz^_|}T4*F<68$pH@^20++CY*&br%tbCNq$ z0(i=tqOi=rkQ`GNh3c(S-Rmki`?H1zUcxhb&yjGO(=IU9Z)9&|7vX=0hKV23+NP~y za=}QbX^VG{m#t)o$xUM%x;Q&Hjdq)wv*UIsJOvrzMX?ZAKj@Pu}IvS=V0& zU;nd?rW4bG={r9ljHY(Cxwr4$CD;qW4NMi&Bn~7dy8og>Xgm!}(v@Bp;dMvw1=HMA z^qw@x@}Mdl|6`^`!HBIbW?QUmA_|hXbv}h{wTc3@da7h1I%Li_d$2Gk0cQ|`D7%42 z&t`qewytr8ze=xs(`OVgjT4BYXZFY*jJj4=B?T|SC<`ObJ-wjE_4W4euV%pdC%{vu z_}Nx@Ve$aZ(W}7)YTK#wx`6imxw;d}_cl653d0+gz&dZB29(N-FJV>1{CG(!&qOHM z_qz85IT7<|f5mYW9a3K!7PK^E?W*-L{1!g^%rse7M1-iVP}|DylxJcddc zY2n~h_~lz-|K&u9_LWG%38Ton-<-$&URetL(iG^qP;8KKOAQ>4>-o%b1HzH2eNN-8 z|8;0L)^a;8wfyaqg{&444fGe+aF4*)_SoG$e@7xvvX-o{s7Mu_=#zSg!B8r{W}+*s z`J~nux6cf-wyoF|8fR>^R_myI{03?pDseQ-IA^z-_Hr*d2n8}CM!@!P ztkhiA$F%8rh8H7>0h=UHH@BRnUnHkby<`x&oa&>Z}9b^k5t8 zr9-Q*i(J-?&E3j-;|I&EOZNhCEvrb~nLBT-%+G3V9y`Zgz8magtQS;VaM4_h4uZ^0 z0>O<-0+Ig1dF^ouPw=J@@6$qat5r6li^&88zThb=)7X*OS&+B_g`-uQ9{$KnQOEEHs!S2F1)4E>IgSI|*EmI~8 zx%VgCK51yt+U7;Kv3(uWlpPd#nyWtVA)+=M<@*Fw<(1tEsSdGhY{RTm%B@S&koJ5R zccl!s3mB!(UQ|7D&5RkH{*!}ZB2tFSzC+IF1)Ip4$Nw?9Y4&d?2bJpeT{?H%P$Fy~ z)Z%V)JYci+Hf@?~+jz}4jJ(7uUl1vU4$G(G=#evr=v0$_1Qb0+Bl>moR`1Ez8`K#z zcs2ItGr)tCu>bB#=+WPT&rLWTml0tM8RAdRa)tjl^iSU&QIB5Ws$4`Ev|@=qc%D-B z_YhUB)Ec0{Q>_yeB*Ci>^=Gd9*%&HqES%c1sjEE=njEopjuiCM(VUBCie;8PnROWs zQ8rC(OI0yTdYbOTW-L>l#p~Rd4ZEUUs{Q@j`DruRNW#r$$mLoql5#db+bS;ifbIp) zqU`v;1@T)R>X8E@uAxs_>#+fngB&JFTJfcNyd`a@1(pPW^-FECwo*1jhd^+t8#P=S zk;)Rnn+3%WBK}|ID|4E=) zz38}eJ9q*`c5f=1w2H%9C-mOh+-gdkY|z>d)z*$kV7nCMUZks1{1%$9Q2kW-4>nOo zKl9V_AQ9D){6PK7?TEXX>ae#Ts&W#2i5zhXV(5OX?}Ap`HA(-POwVAWoTRxIYadP8 zG5V8Cjv)X~NCm#Alv65SHoaimKAmJ32M#GT;RFW+aX6s}HSU4HjC=eSHUioun_cUI zJDgD%iP|wqBb54b{t8rsE29<}_LV1x@x&U(hFS~0(GPQI?=d=MB55}j{Y7CJ`ED={ z(cf^O%AoxyH*Rv~_0&HzBl(8(?q^U}@4nOSWCfiBMhyod5n7B&fm;+nVedCoqPmn+tX5N8Y6ok!Q-zG%56y!#5*|g>nOTNqwU;&-BLO z&&ilpjAH;vt7J4`aMK$%#OW6Hqrb;}5*`7PUL+nDxt2HV-4mB0=gH5fS3#Kj~B{`@9?X-;6lc`JxPw&Uz*e+Rec_RZ3f<&P|b7Th4 zbP8F|&0?%>w)Fmh@4d9*U8mhE3qT-(bo=K>)UH^6P{imsjyqr6l6l6BjJ-qV>P9sp z6?hnRsZErrgHIb($W8oO2c<%PFPL*$6$iSUOXuM8qA)T8c&0n3oLk6mdy zmShzkF9pon77nC>+FF#1mZvf3Kb1$oT)vPfeTu@461q+B2EEBm@W3-z?@&3*!sLDqo)juO-K}0 z-$$TEZ9yXrL?sz(*@cy*+(fC<5&9QSd-yfc^Ub3(@(#iy>JZO7&hIh0mCZ_^pIJT} zYNZQIp#PT{&!fJ8VA~Vn^}$$ASJI^<<>w}I?&S<``@#57(#WiMH10J1RE{mh`>b&9 zBxG_gznJP9&JR~6HCB3pZ!aP4JVR%k)`wCk=tmc-zgrmOo+9!{+~T`5%B3peYNT3T z?mpx8gv=!!pAA>v;oY^MaTOf^#@5MXhBOQJ$)p^rsFVm70&@rx1u<-IK|GL%lIV)+ zFMdwON(?Sap+NER^T(WygG|aBF^NuIv%i0;B(+Yn)ZB(_`H@q?NwXUL%*nxRS+kx^ zd#ZD{+FxCpEB>U6y_1%n+H0F$Ms97N>d)5y#N%q4pSUfiv$}zNNqEu#(O-{NQ04K|bL54M+pfgqx9D`g z&D-rXZ*j9#KWzVRkL545xAITZ^)XmVid-sQ6{n)*)X9cb`_eOS;tH#1W|G@h3p8cI5*XVt_@ zjx=Pkex7VR2uI_7Q928O&8V<8&p;K>>KHLc3i2{tNfZ7=ru>(YEOA9~nb9=KQ6r|; zk~tDn-Kf)8EuJbf5guMtbULw0O1W@S=%5|#)$@Sl8;?%NQXCFQ_eVAWX=Z|$UL9(? zwy7yMw$$XuwV09wnEbgn|KT8S+fIuKOXS6TF|Lb2zIKPQxm{|#cAKmV{dfcl&m#p2 ztwZgf_dCBz(jPS&mAP8F?Gnbj7&`+b}_+I2mUxkoI2}8r7+-%J1>K%B}9l zZ{3!rgt)3QOpXB_Ba<9m-JCQI#lJ=F5;Z2dA<|dTc)UvSi~HARQt5Jav8=}$t3=cj zSXrzqu_yn`JR6X>{nicp8(q2@TIeqfgyCff> zkehTU#ua6sF-%t*Mv#F>h1-}t&2T_Yck|}@zQOJcavta&@VQ?o_*!W@@G8c$%Er_` zUD3*7{Iq@9E0UA<{b06vIr-SmOwEA6Y>gRH3x0<1XXI|vEYBF*RgXh*P<9X2ObMjc zu&A$UqB}vi`1V_}0Q-5MA(z_^7%PQ_Enq^GI-CH!MkcI8IhU;6&oncwY!TN1%W#kxW zB*zuoP|DL}a9OE*iCN5vS$Jz_^!F~Gf?N-;FfO4zeyiMeoxR?npjK?>HqU68V=}wH7IXI3yYF znnOXol;(;5lQqWs#y2TZ?Asr%+tJW=>$0OJztDJXu1rgJe`GZ`gEM$0OPQrb%wCpj z$m)1N)%EV!I-Xo4=a%PS;}>0Ul}~Y_Rt1vOrCYIW5wZnw%PZ77M9Z7BPqc$IlGuH0 zkMV^+v@5FmtC<~2Q56evqrQ+1suFg<0vxH7R})^L+ga?NQRZPp)xbZtqfiz|jOo6} zPkuY_m0njVB-kgATtmxdGRa5wKyE!ur#OtVp53O=$|32u4>FSc2lGb#oLs7hyaN(Y zPz5a#A5L$6F4!J%+R|)%-Z3utpCu;|p?p(0=#;RoXeWg4j7)(1DrD_lO)%$No2=QW zJnkRb7v{b&Gbh_IFaxi!24ihlD^eXgryj~i)pZQtSl!!xv4(lf=)!cYa|0jkRv2gJ zY3gU<3RX$?ZTDRZO)Jz#9roSTB=7*JF!Zl%w8Y!==z^r~4I2CY6#%@%urwV+jKE## zMm@4fCyU#`_*lf8EYSUyeWqxOx>d6vw{qC&3NFQ5G6jJdH`zzaKQu*Fu%s4r7g@)- z+u60+8T6asE;y%b_mrC~8}JV;3W_lQ!?=I!ePZalX`t9k9Yvz`m_O%P zBbWTz&uz3%cDADFsj1o(+gjQu4>3jSSbLpLmtIkKGPV9SVTFsaD2@6KlSX3ZcWLT2 zj@J>NR?;g}lNv{<<#;x?YUHt$57SWg1DOiS+6mijg;WyNFw7&pR~L&Uff3GEkFJV< z>{JW2iQ9*E=jx6}6!6^;ddJN_X!LhN)$3z4OYqVbQMYEZys3fA92`H!B1sE2tN*zE zwJL_**wDCAE56#|xz0p=t2^*%ditjO@xIyD`3tR5*4ODnj; zKGMY2T8Pf@-QcX7wGt|#&yUEi%OTHrp_`L>W|GM!{$ER~-g(TBLNnE@z!~l9Q7^wQe`{o~1(;eae%W1g=Yy<83J3J;BD*S|MkS zrJrU)m98W~C}4U<_a(d)h4_*vR4GpGWcCTN#;KYexjZ=HzZnV;skm(H8qKFi2d0kBNF&)-&;XdO$8P7-SmXuTwN{`!Ntt4^MUx(fzV;QpcaO}|tW;eUK@^(^s-^tzs zE*F0we?nSN;?sPTjtwP6MQ!IeXI-3a7*O?;9>yl}%D|V{Q@f<*&PKuoJ)P#4*sOFF2~6giV(|#i8hnJuHarNIdu# zC7B#5#$wCHP-~L9yb`c#Vbhwat|8>}Xfxh}8jJ>2Arnnj4F)X zCtIbFT3XWDFKc#`oC8-ZV~kY^KFsMqIc^|v)88|>M&wwJVZE3RmPIF*=H}V%~&&?&qw%%k_J; zeqef;62>e5iZ1(posgJ$qdpNHg3{d>I-%uAK5hwkKM*OcY3aOgn&I_T=h1S4X)_76 zt8JPW6ulT9&ceE6tMI&G2v>gMQ#wKU>l8m0mD)EPU7Xo=rLHEPDOaQiZD+C!|mq?+Io z_#MdJg?;{!5`j$cjr*| zjH9D;?yac~F3{_72(NyD{^*yidN=Qs9i(yS8rU6gmgKh}GCw)Kn5yoh9M%zU*`!?F z5_duRJvw88ECGdlmRIXC7~8J@7}W?aAcE2c+)3?VHlrist{I~ptQi{97vkK_ZYn$Y z|G4P>tJxX&uCqrUm+8|GS5VL}D8vDYJq2c2k9oyA30kOY7+3eBKUppa1HaH8wR#bCJshWCi)8(P z3z@U1I^Ix%xh4=hd1MpJatE%f&VgT7#$*w^70LRHVjI4o3DU9KGMwMK!1Tuz2uv=jHFE@Z4avfAKe0 zlwf;^(H8|)rO6W3D+oyFMw9vS>1}9flW5p&4oY&RNqv&k&##bQKvn;Q=Om%ZUmKA`6pyV#R6ud{gr(~%&|fKk;^x6C<}04iy0hRna-Bur>2v7v+kmmrN^=7GPi09g z8llPpn7LrmHk2fQ=g-q?dXk6x=71%xWtJCe2~E za(DluUtslBKgzD$`!0H&CZj0B{7g+~V}&xD9Uemvyr@O|>yol@ zF3F`PcfD)?w81=`v#bxgTO*V&AG>zq6gF@n@X__zTcpxxy3AzuXBCwzXORA`tzQ{B zGGt^#&gW~RP#_;Tc)xuw^wj|FC4nA1?f%}^C31i{T!P7_Z4A;6YJcVovb(o{g1p)R zw+-xz&piXWSZ2;NCeCC575tmvoV)r2&4>{htiWsl#^RJ^8LIn>U{F9s>YGT;GCvIu zL(2oP@E*yipbjMuVB$1C~c2zw^1b8utd z!9LuO2$_beC%14?D2`tvMjr-(+}pPH`?)o{Jce?8;V2OdqIda8k8xU&WjLpgeN`R4 zPPrGr?+iYU)R&(=00KBZ9Hh#9S~nePS!sjK<{&@8%I*EMz_wr=vOvZ^O6X>+rSYmt1o z0and(23P-VEA$stt~k~)+c!3N&W&Gqj5gL6*LTB|&oP%<-7yBrl*|_y!=mTrw6^9& zMAaF=&bG)5?R4K+JQhBN75>y$7uOKL*_;bEoM)zb3!uwYv=nz(6-<;>8ffwN=6W{+ zpqQNOX!G<|Riz|YwK!ikyjklyPB_hW)j9T~9Y(4DrY%><!R`2_N4jHVTHD>}8DqXp(AJQ~1m(8iX=xePQRdXV<~!kY|>>CeKrlq;{AA=E#Dj zSpl(`5Mt!pNp_O~G+_!1uP^R@GlMs0`@R(V-88x5$H2>B(SDVyL=V=2xsFa{I<(bi${)>%D?D9X*}v}OueH56NR{-jT)qU%|Q;~x0C zZb}D>#1HvbC-cPTQJ(;R5q~h?l=6r&@T=tmefC?t2jro5ED!XPkb*Ty4nq}{H6u}e zOsF(nC7>l!EuTFpc&vm?l_U8u-8r9ZB^myKYr!?&A{{5+y~hePxhcH|?!kOvOQ~nb z6?s-y9y9Rk&zVbpEfrA>3H1xD28HjNPW^u4Y-GtMm}?0O)F~aLgt9Y`td~DRjTShq z2^WxClnkO@AqUwZR}SKx$%221J)RbjTd4-BU(E)(RYeEVA#MfPA#VlVp|1@_%AoEY zU{DMZU{LA%)0&g^8KhhN6=`-RosxM>&ocL~oOxPtrgSQfEGesYCf$?}W1TC=mem=A zcY+!9>;zr6&^vu)hOIVWq76`56aBSk?3D)6dN0lA4hKTjJLoheE+ik3n2 zvvi=39?S0o?d2dpi#Uo~K)RWl5l^2M-Sd01-^}v2%JGFfN*KVs+cQVV+`4#jGt@-& zL0qFc;>WBj*O7q-{d0XK0u@mq<<~!tN;QmJsU5XtGQ& z+hlg#ZuyS+eE4Ig5n;OIca!jD4p7bN&j4G7Y}n?%uYYCQew_ugrqW-6KA~*>-!oMka8`d&)=FXs)J0Vz(Hq_pg&%NgpnRK)+Lrs*$n* z>B|xZ9G$uHJJN_7L!h|VmR0P<1jIJOjSn6t`fOEB754O7>VmpMgx#-=RTQ6)D`Q}$ zuKQBlJp$i&WNqV;jdx$<=>c^tZzBM)J$6f?z6;G|KsTa$@XM!5eCHM9h#rNuQTSWD zDtZcoy%wHtvYwLeW(3cJ8mzPS@pp|rnBi{QhP0hZU(Ice4t3U8#cp(O4($6yE@@qz zX6^2kUxbNaSf8TvCTY_wX;<0F-J`E<%5IBHm6JnhAEC;HOiRYrOiN=9N+*yPdisev zc>M>ZU$Opqjr)nYb5tM=T{?xONRQgkS^DQZUb%vG0#EVJL`^s;W2;8j-X{HZYJO^d z+N&gkL?l_sVzhbcGrzO!hk94#H$4qg_33z*Bi}W0%~6*_o_6t3qNZ~o>|p5%ua8KM)8*>^15WF3qv0kmp?=DPDMJPDq>!AC+rkjoPjYUM=Pa zC*859NoL<)f6m`OU#%eYN1>lW#; z`@8-R?aMuns@HJzlbv~{7WR{m=<@sGZ%wa%!~t|@=tnT|4RvgINFE{pEBGFEGvNT! zyTkC}rz*DS04E5X`o|Jt90<~ld+?!LTkJRwy{}DYhWJ{D2%t2w_A9iz=zdJM-#h#I zuk71&|6{H?uz1D=1Ey~eXzkIF33h1eR%r<^os8nN+WG&cJ@dKp z8*Y+%U;XILMd{Af!l?zqDO-joJ_ffhoP1QoCLG{t-=E_92uEuFs>U#TtzPHB`3CZJ zN(&^%BU2u7k{@zX9=4K=`T)LP8E3bz*Z*Q?1UtC}zV%#0zJ^{tw*S6-0Epy=GlM6+ zhRN{&nLuwZyTEra`0Xp^{Qf;-*n#GAaZ`w|p~#n~?{^yf{yk9Z3wE+Y8F2ol`uZP8 z$pxGCTlfoHPfah8@wX3s12z72EfvPlUzIb4h>An%gADnMd^uAjv&8*h*vBF+#1kdF zXxyogsT{{mZS?rIs9QfGzDLWlTQdToxr|2(`+XsC`AP8>-ScGyF7F(X+)Vi0llc=*1;oL zt&F>*5v1V8-Irq>hodBV4&@f*-OB?}C%PqmQv|$4zjbvO`bqOc+@L)oK0@?woco+Z zgPi0~dCfh6^^rfi$S)_d>)Vl!qQqC{5-~M_fuw0bU73q?wx2UpBlQJvNQexlkkz*s^y1&_-_){X(7Tv zV*wC6@U>W2Y(=o_c?Ebb(Hr7f7((z*<`lokd?YIi6cVp1*8Cq~4oK(mHI4xv%vaI& zOFzMQ4;vH0wV-Efb75UR5L^Wyh?d3QQpSVhvagbso7hUcadFb>%xk5x6ywt89tSDC`UzU|~3TSNWI-op~ zmzY)oWuIU%j&L8yLii2MBx08~x6$!C6tR9=q_jK*Zq| z{_@;b{$M}58ByRzoGmU6_8nw5`@hPpmn~*M55!Hofmzy;{*!6s=_voo1!Lyj4p>+dmNC@Qp*UjyZUV4eP zVGeirQH6l5Tcg?olw0|CIKRg3s9(+?zwW}Mcq7gx*w?lz4H}+7kv2Hjkbc-go;Kh| z)>kiUZ3H!2iAM}_Y&gGzuLIKW?$NSE79k}6ke?)lQYEEw_49+>epI=yd!Rk^ZKKb( z1lMw+*)|A5ei7{6{{6Bw{SM+U)YdfyF!uF89<6pN**Bgg?$Af}*G>55&p}Aul_mv@ z1>>;@7xPx>+;2SIjkBx;!5rx-?n6F7{lY#ZUXnhGYEb$Nf>6p&9)Mf`BdI{}6AW zm+>=rV}^~r5p8Jo1%t0Uo`Mqm>*=JLyz;w?(_C=ElCLNOAb3N32C7vO5to!;ct6ii zV%KyU{>UJ5;XFW-dI7V_Aisu!H#H=m=q2HA#2n$Zta%T$V2KSL!p+8iEMEeiR$IV!KYTl#gx&tE&b3UXce%5pvU4p(9C{(*Xt zKE1TOalh&@zUUEF4ZxKFICoh@y+5zmy#+$<*YHg8kOTbedx7IFlD!Z4_sQFA9tfhl z-xsH=rL8DkFfP0>H#|GfUI?>Jd zApoBArUmK&?~V7!ZO=i~0jXA2oTFkyE+)I^7A5KJmeY?1j|}NM%^HPbSJWcbNw4^@ zn(3fLlNRA~H2_0|$I?2?HMl%|{xu#-&Mw}bc`Dd7%L=+EOD>A|v%`uyMN@elQW()kj(~LKj~T zTGkoo7NBNQ7kcH@bXTd}iVuqr5NQ(FME;0FoEb_rXG}E=)RyISlt_&7?67oq8&}Ss zxj}!G<&_Gu`qyJ3=UNM`GD)*3>8gt`~k#VK58tC7yUM#9+=U$6WF ztfeGsC_2g#O|hB4;gs|Y5GHJ6X=6^i@=l$SI8BfUK#ptAZ)?w2;5N(n>Lvfn*Y2G4 z&v$2V;*}r})*(ldwHivxxwh)KxX#>j+o9)n6z1Hb{mgN%a0bcf>0Yww5D5(eXLlQ zdP2&(#-d#Wt-iP|zmkVSGfN*>?>(4HG7N{E8=i<|kkf00c(7G1dxO`n^HbKPd3Gc_ zwj^_%GiBPKohoU`{3?oco92lhsPmEIOUu|8Kh*X_BVm1{PZ+EZ{_5Olz-wm$q09fs zsxS3$AU6c%X;ox!xPm^4eZukMHIy?IoObnfrbv$kWRzPmEeEd#DY3~xcesTreL)^2 zFxnFNo>|87rZv%4;AN=Dw+xQ2%CEo8uB~?~scJrbFE6`|ub~D}LSS%1SI#MJ7Q- ztRjL>rW|pM_dc)t`Cm6#e0&Hp@OgEeospBn&FXS|F?pGhfnWpW?27j(0cmYZbX@7&9#I+^q7`&MXb&Z$cy-nLz=6lZ^>>h!JBPi5)X_$~LB8q@De zrMB)|eL`8Q`J=&L#{Lmzfxa@tNPr!0OOq}JTtI!FxbG`P0|)PtRZ=)jLnwGg-)Ah zegzX-u_eI&28)4p_JT;)(}wPnstYsX@3(<)K(QrX6|RdiLhkpUxkBlOh8TfW__4@j zt_@KQLp7wqA}kri0FjZq7MxEh>_8LjZ;C{g?=C|BTYCV2E#ucR8O4)iN-%=!cMZ}$ zG!UV9>{{$d7w4}L=db#|)*Sd@3&xa4lp)?-^`A9oZA!_IU`K0*gKn~3v=CN5XMOX- zQSR0}Qz4j{tch{NOqt)Wp|%87n_sM%x5Qli`d=z2Tiqp#@|G=k?A}w*pfCJR*%u&T zJQ)!qdAv%+qYEGZ(I6F@a&Sb(ouX$nj_u5`^bYAJYbHJG|0z8Iv3DUY>=$Qi6E0~fLR-|9xDAG z*3Po2&K_FBFHqbH#a%XTMT@&r++B*hJ3PhRHdfrNxVsdmxVyW%Zshd*gY)4`W|B!h zWHM_enU&;T*9sm_8K}cumNmuYiG7g}p_9&=TF=GK257@ZZ0pQahW*v}LcUY3yxm8v zIM-!L3Lbop3E8ucf?MJN9)k^H@6fodO%C$l$(yzR@#TkaAg&FnBmKS`~D0#^HQ zlWIlE?f_h!dN_97uR+qNS1HneUMZ1tHhPGKovF%~Y`q z2qLYlcdvL@#gn@C{idn(dr6*VrgkQ?3hhOnndFJp(tGld)KgF0MG5;Wp$*#=en!r}jr5Ul3Dme0+_$m+? zYLJ&u-J0>uMCF1Nwb zG{a=W)WcLq5>t!p@Sm|hV_~9D;>mnX&;4Zt{l_%W>JvNS!RIkbvSkrQaXa0}%`oKQg4MAM(z9$pU^R~9<&#LU3~1TU2zr*!@KnqiT5 zBrLM4T7`y_|8?7{_q~-4o**u{b&;s-JO0tkI8}P!*m8hk`7aCC_#?L1K{0Gptz``v zqEWc~w1)h6JiLxKj;~woC}`fDEBE(3`QX2+^4x{Vce+=b2}NbzIo$L105>|o(CR~^ zWYfOH#ctsT#;BuDQE{kxU3)Zg`TVbLsET8h60i2AQ|$WdxtYdMtd{T4lC)jAL!Nc&Ed404vXTL zh&r<<^b3-}t3dlsO=$f6>-1Rk5##&$kQiana`G#X2jfa|Wfo zP=78~{A|@OCacx1#^M3#kmQggWq0j#ZPdP>c~S2S^oH^f{~%60dtOh&am+Kqm)VH( zL1lo+64kh)t~?E#V3Z^#UbwoqaqDN4?GE$j6U6m+9Y8;q@SurjF!V;1P~U z)|=d&FwQJ~pVz8}Pka+HMxSR!iTmXnlT!cuv26oKDU;=FdPcw^p^IGm-5kR$eV0AT z`5k5dRr{JzuBU5LV>qMyu`p8Qx-Dg*pDTrW1M{-h=G+S4pnh<;moArDvY`8hZ~NcF zG}??0ZR11@`W;^!%sI2n3UZJ;1J>;TMQzfK4wc525-#yEd6TFmN%rTf$90oxZZb5f zjlKhACsAKf;ut2emv&n@74P&j>Uz`Iu|z*pAdR$}8B-rUVRR2kn|gG=t;PrBpU?8` z?|7Z4eQGjLCwq|yzmMU?_^O|sH1FI_Rgs%)Ni}Utw*I%Ku5!(hf7^B7pE|d^S|NwC z=U2j=m-#RMUj}{$UbmHbuSmCa*+NdfR$qmBj}ai~L%0VHzYKmEUhfm7Ry%r@3%6^9 zY~N}3RU|A}mUCk|2>2ob=*=wPcvr$!xChi8kAhC11O1U|t#{ZZbg1r6Yv{H7`A+9R-@al`;?Hpd%UKvT7$L+p z*ozF2Tbvf7;C;hTh*b-K!`vP~3WxTe5VFv)#Cc9Ybts?n->B>RoSsRjZdBVFGuqs+ z?ZrOeZLtUVgp=!@HOPtHE95-n0aXwO4%&+4KUt=2t^V0bcqRnJ{9j{VO-9Ed6s3T7 zw#JTyMVUG*>WuMYodDyU(n^JN4O8XHQZNK zN8oDmpb%zC`bI{oZ3tI~yX&nFMT=8-TM~XUSQ~!VAJUZERZ$D9 zB3o_+tJnISk@5A$)+Sb@Ba`e!@JE!~xCWwRkGpuWY^0(a&EF9f9^&yyZu(q9qdLvy zH~bcnQjM50!tRKdZOV)*tS<0k&FP`JweqFT={rnlRZ`vdqqJLoCG|#s*suA3#cKot zKd?Njs?oX;Qr&6_^p*TMxHzB9wm$CfQ4UU3YYOadUAKr@Nbee_(0@+L)p!(~N0~jX zOiu>z{ig{ngyhTebp@6|6q$`_uEA_C3B(LkDu~FepCs1~7Imd3{)HRz#bu<;o&}?u zlDKF@d@V^(65t(U9Ol<2yLJ7SbC(GSHLs&t$K_&}#{w(NT%lNLw7pD>GLHG-ofho7 zS@ZQPHh7j8#1{Fyzio29*T=z!^amNUzE22M`mb0hikKl6=iWr~?#F#FUE08g8X06d-i1GOg0@iN=#bk*fvPMU0gm&MG#IMqDK zZqXm|MXwrJyMT*w4CzNkRMkNbLbXLVlW2YNld?EcS9;;rI-{6c1Pr4T5h&tGBXh@{ zZ*RvxKI-zP-WsWMt)N|TqX5A9q~R!a_3h6l979lhkoq5?Pn)PDDDPCBOPS0EyK~TS zs?D6_Qn>U3+bUW|$-VpW=1g&WU~%wS(UUEkftb}lfd@B*-<(tF2&8r zfLxTl+_970NJHabW4Q776a@jULyG~rL#X%qzpz}D?Dot*jaPV^E&M=qWOR}IxY&<>H7cW(FWJ=6`D>!iEVF^U>YAw`> z^B?GHeHGX(rX!Qu0C6Rhh;kH*CS!br$il(#>e?QCRZPQt{s#t0fm^_L<7j2WW6-?tAB`zrx zbH4aX&ox1gI_0qdDGq>i4W&{l*km-$uGpP7qG^Ry7Azp% zJV&VK|Eg1$Zfq-_kKf&DVEaGV-{OVY<3EQP);&*PjKnIgDe4^Y!PFN| z!nMNYxl*|_ey8%AFLZogzkVG~C&4pG{uBx?2|M^{5SIG)p8&dm;{fddOwNq1aT+Zw zEdpB93W`G|7&8o%jGMfsmu~Ty;!-Og$og9DXY%RE_dP z#NG)71nSR|m|z5zFEcP1m~3YTh|3Q@gY|smMXQ6m7AAtB0_YH75ku(1dgT@I%#%UU zbK8OH3p2sf;zdgf@mK9p!wll6Z#Ga`Ay>s)J!Xs1t`9j9X38$yN3Cr*xm&?Z~K4o z^+$8JtUnUK4$ku-%hm78#RcUlQ{s@HA@}%PVYl&OdL#E*(h0kSexUus=!Lik48uI|XJuX}C>RTWGNix(f4v!<6+v}EJmQORfD!YF+zhYY0(%lMPZ?dic6J3 zMDPwO|DB7y)1<`6BUbidl#pXYwK;Gsa0?<3WlCM!m#Hqc5*p_GrXv>T&6%=R$x%HB z?!;;RO5pwKz9g?L{E_kjwPg7vuS+{I;XQ22o&!MIHfdQTWwxwb@N6mI;L-UET$JrB zXtfX$_dK(4X()d8YV0O|KvtWa#S2JRIX&OGrLy2 z#{ZyNYUwa*yN*`kkPEz5JmQY(9!1insBNiRsY@K`USE7a7?I6z-!*Ol4w;$LfGwZw zz4bVJV(dYC2M(${Ixp8^GQVd4L-w$q!sESGk%~PnJ1`0hh>VMBQ%f1}BV9ASn3HI% z!FMKBTs-@U|EHJF=taU>TXj*cfYq||O)nqseRAoN=mS54M8(DMu)KTG{le1K>UN9d zY(S=Xxhy+p;$GQ0b{+jNl_bjA0O_9Tg(Sl(RXnmG^yh)=2vq`ss=)}5s^?XtC%SLu zUcWD;^20m$_VCfNAr5vtv%R?RucIG|&PcBut$w<$BurP2ochNt(QMx{kwokFKMI{8 z7?Is2jcG1~7Mk?V?m`k+KC~gDa6KW;}Y=Nlq>vw^(n6;va|oFOkkuTv{aW zBix?~MPrg8mM|Tgv)Nx#$REHMNi@^<%jxtty0M~udn_hWyMiaS>E^|GReypTYvuR+ z*8QB54*C>{xP{_bwgY$R$DEBd9agV-pI*W7R&~aVYz|pnjOR@tU_R_QXXo|AUq-H~ zU}T|hRtIvXy{JvVu*p@JGiJi0wN0cr=i_Cgd|%Rg)m@}gVDrR%(;9rHeBSz^;`082 z#PnwLHi7YB&(?Y~m(4mWOFYs$L!>uFXTb&0&^jqY7kk((ut|lm+BqKbOb5!0`fq2?}z$3R$Z>U8zFqqbVOur2b;hJ2|ck3*ND0;bauFq*W;m^;HwrAnnfkhWM>@bOojeYzI zc*%80Y|ygeLx+eL&VKbVhnh?M@JzyyISyHzwDjbC)4|ax?wTS%h}pK}$ifxV%xC3~ zvF0B$!xh`jW7R|b7%}W&F5VFR(UNg2cRMgEXbE^m{%}LM^YpKM|NSj=^c~CayZq0= ztK|J-kiN6W`F8|B%H&7bBeKrzIiX)@l z`SI*27@@e&{?9Eu#AMuxI`+di{4?swV>t9}!7D=zyAyqX-WS}Z9y$3rLfpdgY+c2- z{b&@xje;`%4BMdxb7Yl!)e`g<-mOF)i^9&WNUnq~lZ1uItypY!%9W02hOp4nwe4o$ zE7G@_ek#dZw|uQlV4&O)W`PKakA<2^JZfM=?wWmT5+>tzp*BkWA(U8W7MgE!3{Ab> zWBSYwdr8;EJq;<-k!egp;>>q9SgzyY_1dPXyJN${w z@-(L@Y!>>`&P=5+|Ba7lyi2_Po64sCV8>fLCWPqI!=Fgjo~25fS3bP)F4cMuT%Qln z!%Etlk9l);4~bm8*yPzzeNBP7i3QoidWd2@!sP%#PyS&$^0nR`%F|tV+$4sENuDR5 z!-zS_ofCJPigR5u>D%1zdtIm{{E7;hsZ`0yNeK}WbIS>I@a6r!NmZzrX;F~_FCenm zLxvvOGxt^+%CD`?5QPL_FD&y) z;(AH$JhMbIhleU8U2f@q3$l*YU4rl$KCf_y`yz>U?Pkaw5 zS#UHq8ue`#<8AD0;OuijxLCs9iTq#lCfs3Q7MnLRrAoi0wbn~1#eLl;>N@=>z7;Gs z*m7$LaimP>iW?R--jmFqwuJ`#=yD%N_5@MCesK{_QX8+bZ1pVqN#OZ{rN<>D_Z#lb zQJ&XPajU|T_(9ee;dWCu)F6e7w8LwM==Jkl9MR1Kz1c3#RlfAo%L{+!NB4ERl{~*& z$xRttF`M9>K7wCWhQI{L%Q1C`!Cc|gBnRDHJt|sOFyFqjZ{8$vtVu3#BglRM-7oOL zuWBzUv|KoaOptKNXxN23p;J(>{fh<{Z+Xk!j!(=#P5_mje!ymYCBasmvX^5lN3hJ8 zBH&`WQJiD6KGoCwDMi}O@FdOOhmQT5~Y~r!}u%47xYl(_5nTxb(VRS8?@a68x}t?I3#@GL%UT}} z1z=w>kvCVkF>Q(pbU8>W)di3k3eB6%M+cISvbCQ^!6zfoOc<$EtCDb249lYYieLf1 zyljKbi$sL2Hm2u8{yXMn13x};ncJ++$AQLOlZ~OdE`nP@xy=jUxHC*^D@Vo_<$~;P zGh`$pbW;Mdy80imVy5Lgd~$3NJm=iq#cnPsARxIbDU?ne&edN}d*nd^-^-5tZ0w(u zvz3EDZ5t#Z-GEIus9zXiZ~DzJMlNL-!)tFtsxbVW!Vm>VYyd$SG#Ghp0{%sB9=>eC zJW?4oz*Z}o6yXfiD%f%`le~@Ri`wEQ=gXdbfgiwd8gmh%`z_Ik#YX$Z4E#O$n1u67 z0cnOOD%UkMA@4uLNy|2mfE0=Rh41st;SrJ7^^l1rfgoPAXQykr+OsOc2b-ArZGj2% zACoi&pOLOmXJVc}pOzSD7nU{E9_}2;R~WqJjbj~A|C&i)wOtHdCAUAuB_GQ@v+T#g zHgt1a#C*>|tYH1=D@MyNPS{M-zVTzdmY~th=>aF5%@7?9E!jDx=LSGIs6V`9uYO zFY_{MwYF}@blDE6%1jD+|MdcU?UYJb5knE@?-b-+8dp)Iy6sg*lMw%oEUBa9&*~ze zho`(hcIdf;-bG=J&<=UU!z&3$bBX!>7Eh}gK{6=|{MW^%Gk6nXshvKfg4bN>|Kttr zK1Nr$PBN5n_}(E0x%Sl0SgP=PU(5B0Ecu5ZUP3cH%m)EwJ4IyH{2Q zG3D9-N7!_81?JJJMghZf?dg+CZ75KM{c7E*!;I-?vyZP8av7EUB9pI#@`ZB1(!gA! zzw`bok${5XDV-z$t@>@CXL&|LvyE0h;VyVqMU(d+BE%#@i&-NQx2$3zYBAh}S6_Dk ztyb;~12RB<9l*`3Fx^aGHKIYG-jp!%qVEnQ>6;dxVZh-C>^gs$s9XDcN0*Y}sI#w; zsamEu+fH&3w)GBu288;-zOKOtJ=c8v_n`K)3@bF*6Uz>H(%hyY^@r|+5e z*=<$k-jbiO>@rN?7rq;PQDC2YSTxRof@mzkd(xoWODNVL+Ucx1#gbp5K?-UBkyRT* zQ4-Ps$g1N9%-O8*WJu@dhxeMG$$xha(y51)iyqQHMF?{jVL9#FY)B9MOF2R7{n(Tu zTbZ@RvY)+QwGLx;Pbuoesn)(LcA^6}!b_=MTzw&femNOAI!PK-N0#);1lvyiLZNA% z<=XgzINl}}b{kd|2mErGe~+_-tQGJ$X@Zzz{+b`4C|tVAWRhAbgo7Suh7EIUmz*B* zhL(w3gjl$JnzGezYYDe9JIj9^CStPEBW8}!`xDEHo&6$Sn=NF8tWkM?{`dy`EyYS# z$%psj;4jOK#Vo49+dVF;7nhg$#ctK@c!7B@OML%RQK-N*%)986MRU_rCetqTdImCU z`Oceu>oX2a=lJljU7xJW!A|K}_vAcy&(5V=q6s;0dl=wAo=^}aw>XT9FJ!t$7P)$F zQw|B-b_Cb>RQ^Ep=u| zT99F6zfg15tyDI>nW%8uEJw=BFqnn=RC~)*_t`gz50kCwtHng@wUZ;$6|2$k&)1gf zdxt>egX-SQI9v0a1JXx?mMzledjZ82Yy8;M#ZjkO|Gs+uxZPh&1hD|bB2wA=%zXyz0kuo@*NM_y1CXL&^0 zG&t|yiE|@TFZ@S%@C3ykS6#lt{a+y98+kR%GgS5S2$xMZ%mLdPZgJ* zKou7+L@-^eku(|R+2Ioxf$dZ;#*>t#f(#9B zhHyO=maK^U?zc{$x+uIE%UEtw%gN^K_k~&0U#%c)jzA6D?##YDm_!o1ad0Flfj~qh z!AH*?qOHK`a7BOzii}0;BTAc47PhbP)lXNhmoD<)5>^e}(L3uFdA;^Ps`~QMan~># zXl2x|sh-Q(w1xFHW%BqQBIKCM$&4ZTDFdD9tVd|RwKUirNFVcCa~LP*4Gib{~b zsn-*sA?YL#2bJ@wYC#KOi!1>U20@qn=K(bVH$nJu4?h&;-vbi>4}}gzg2sPhgC66h z6%9oK&yV4Wbaf{qE0<t}(LKMJ&4*2=l&wvMidg^yh!%gqCx(Q-t5KVe+bU|GZ-ct6 zOGAvAVDC7lrYlIB|4|Q2a*PLT=|>dhO5N;@e3oVGZ%woR+&&2lM#t@|J`r{Os@|EW z0P#jb^Ta?&yq^5jrV$? zo(BzD)&WJiIDUpWk0c+R91orI2}>T|=pH)nX*c=ytK4MPeDp3>&tl*FB|dKksg2%u zHIOjI9c;iX8zp8i%m}#Tu&(M1cFa7CMGOMp=~>O&b1gIm2Gfb6eH?;3qO5<^HIv4Q zQqg!Fe4WfZO*6aly8i#RH(je6x`?={BtAyLeMN^O@|cz5K=$?$@o|-)S+}l$GIfm5o`J z*tbN>l_GDXx`e_NHf|BM?A#OyYQ6_R=;}4Zw%=r|!W_7r4@jIoTyt5vuq={L!D7C2KJg_6_T&4CpVE*wi ze*3+;>2ZB84Pw&j@3X1Jye`Og;pb}`=Lm7$^hifv>!Mo#y5F5HgLXF-2fBdGX@(}X z3)*lWQoKhJsgKx}yG^KfZl5i#G?ib&6~eSzaF{Ta+qDE0UOFTbDh3TK>v$kxs)gWzc8$8s0*&(u5Sfbuf7Z-EQ4p^*jxMC6wPsQZ+ zeqwPqRx!viX1dhae~7@&Wp=>y=;4Tq@S6=$(%=+yBmVv?=h8hNL*mPTajd3EVD z%#UdDP&Jy8&Gc>DnyU&r8pvabaB2EC`!^%lt|gk1W$LmzR1ZemO@V-p4BC)zWA^i* z;1r4?)4F675lV&2C4|kpGPmB4r?A4dpv$TIhRd6Y*SU0CnZqmmc_j7{bn}8RMSJnm z8XRlx;!~xauCEV29=?NhXiazGC0{L#B~&;7l$=SkH1|9JWXB6bUDz- zR30*(oAS+H41Z#=Xa`Kwzo)L77LTO}m{yHZMwm5aQp)Y=@fb44N9~!ksxi~xnQ9ylKwAKctMAl?u-h$Ms>Vh+)Oa6#OC zf(2wZ*^djkfieXti$c}CXs5`m>j`m-I`;Xri!oPoK9|ha315r6`X%iXMh^|{@=V+; zXN$`EjpZX-=MBduZtOh$yx&tBQ}0s&Q+ZR{QwdYkQ`b`?Q)N>$c_&IS40@|}`|hr@ z>-P4=8RrKrlP#02lkGyzhK|5l*Iw67*U9_bTN=b0*zt>?#FV1Op^B9u%6PKe`Jrat zzBgZ&ct&5HyuN>bBk7g+8v9!Hn*G}4t0zdFlcYFmvFCE*^-TF3_*(nw@C^3V?xHYE z7D}!jH5@klYdF%p=djOr^LP_?qyLQi-1S=is^kw6YC@{aqu0Gx;-S~PSMvg8JSe}- z{RdV8;LAigllJBk{{4=TTe)?l=TiTcv93!O1)p+o>W?e2&ogrBj+67aSEZL6l!sW? z>ikYA$F@$U*R+}UZdA5Y$(Sd!Moyl0Z&W>}knyNqsYU~LKmvG+6-rfqub4NP!Jo&k z4=U8np1HP1t&dOCu%9#XtzH-(E(x6Tw>Pf?Ll-ui4#0?i&wJ$T#_^Wkx$pFI-EHnI z_F?(NVwMBg_ncuPu zLpRXgnD4@-azrmf-!Z*e?)?9$NQd&eL*7YVq>gg(W|=*bGq(O|L7m&%7Tea>3D+cm z3rvqR-IFTU(Y5&t0*|crKkG+bDcl^_@BJ*){yf)z`ol0ws3vk#k_Qh)nE%~tM~IeH zv*T|qNovHI6N{XS7!yzT;GWahUO(ot5cT9&AA2T!C(k!B@`6dq;z4c%AOUdvcbSCm zMQN7tV=f(I!E;n%X>1@mHnTB27MWoH3*1)h`S)sAM=C{C(O zq58}9w`o|#)T(a1&aaMfS$P@%8T;AIE1^UDUF-e30i7&to)K1uXw{S|9(^80)w z4FqE92Mj#SrIf(9hc4Vpw7>kwcrjA+C}%om(ZyJbvlOr%Wu-Lv7nRSm4(2MUJVNq@ z>P(6)`EulT2gjQ>k^49Ue@yAh<(DofWtht{t$9p%XZJ#)59f9p?oU zeW;*3?SC*@*TP*0BJTID?Xo2!92=~ujd!Xt|FVs;-dkMTPX0I+XvaJ~zN~7CmN9xz zueo$;i}4Q(Sckss{J;YN`}Ju|n^h2(h!8ruwZdgmog(DGxol*TX0SjMxYQ0Pk>g|H zLxv?s2mez4E&h8jj57?R45y6lm?74=)uGmzF1s%)XouQXpXHu~pEbPJy{5mW{M-2n zuVo$3`#!Lh@wBFqgGewEE)sGQHX$Jt3bnGe8np(s+O_ikHn66twYMeO{M~eBJ`W5d z-200WWw%B8(qlnpg#fI5vv!iZbg^^ z&$}37iZbid+cfR4L;sl~a}_+!J(lfn=!z5UrFq?&(1NL;F2ER*TRV2Fm?F@ID92{3YTI{gw38PnId+o%WbmiBY znp&7}Lv2C}h+^2F_wkYvXovENXk@)uk~$@1;+HO~qY3~i+JE+YEDkEjMaip5i))-H zJ=HTu^y4G5jexP|z2O|F6sv9ED-B!lu#$4RZq*9np4^`0&PV*Q<{fPt@ z>aJaHXFmWzY$C>mM#u4uM=`(XyQ)TRGM29)h)!Y?tuArsU< zi#wC=2`~J@->`1X9rBUSEZeHsu~Pn$zIZ&6Ce^^}rYR;uL}XVP9^-%38i;2v7b@#FMQW;r0Lw`1K#95i$H2?=&(|&iV=>o&Zt^Q0q&iZEwI`h2w95cA&=3V>s*u@8FDWAH8D0TPRIou3`qjYQPzZM*3czqe(r*Ys83WT)w+dqqQ!*}#?4Q^1u5b^^l6d?w)F$st@0$PQ`uII5J|%@JhxF zLcI5ChVAN2Jv#%tx0JJL-3fGH<5aAY zqo-b)Nb1z^t*O+(i~oMf3hK~_tIVG;%qxa7IcK4SYo4}<*#H-J^9#$tXG6&A%WgsW zsBK`q02f3{s{6&wkk;;#FOEyL@n)Td5W`_u8gHWz$+gWANIDJq0^rW`kLr(iFiMN) z=1IT$X8ktV{Gzhzza)EydRh($>@LQ-8P>!0*Q*ohUn(liJCJ`g*^%ko1b?(qeLTj# zTX2ytbTf!(bpMgDld|~;qHXS$6x!~KuHEU}Fz>FN1lk_q<{es|HGDKD)hfjaUso!x zCuJY=!fq>Hj0_8WcU}!mmc^q8?_(;SbCSW8{;6#&FQU^lq3;Z%BSwHO{Cjt){I$Y+ zcPp1nAO!a9D^a<5Y&$jxW|cjD*Is=xIOI0`*rYo~!=hPwUUx19f7dfEg;rktIc#+f z$A`Wq=9gHMZdqf5&LSgX(nj%%cKD_N>jbDSe77H;BK05r<%>tS$`0#wrl-7G0!o?4 z0=3()WFfiL_wX zt`-lJgj=X(E<3g-BFcr1$>tp&KOYo4MzV**3ZJ`E>KT7MMQqkee zkr|MZ@!z?e%)|8|0+P-%e{8}l#$KE+^RV7K^f0n7$uR#r#V`=%D>&?HNf+7uskQaV z_RTCl^_hXJ`bty8U>{io=VnpZ;ER+%q+(A{$DhqlUWwhXH#ml$>cYEGZ@2*XJ>qxf z;r5*+&8}bF@HZre&~?Gx=r@9fNOfvNSre((^zrmHGLgW4?xJNm+d~YvNfj(hAlQ^= zERdj09Q*z699n>?971Q({oPOf_*CnihEKka57#-3Va__4whW#-LxiK@oP&)(hbvYO z`8-|L92_>HYRc>t!bl-E;(SA;E#Z_zT_kp_ESZFFCbq1qkc7N1;-ws*M#~wSE-4X& z+OKR=Hm*jWEJIwZpxio#{X3k#=x$%L;UFp(cA=K z??8Y%93iSV7hg^cROhc4GtB^vI-BK~+yO{^S+44mt2^n@cdjS_v=>^RNC9--u<;+& zKbeiH>pg^VYpKq}rs$h8D?hzu`i*M@_zx))DNYd$jkLDq4)}m$gioDcGBJ+KGZEpJ zxhw{?UEFi+czmjmEu|*Xf()1!qg;0RMSK89F>b@Dz7}D7tRo}lOhR~GOh#k4BdaxA zd%>gDH4|o>J2r)pO4!bH-AOyB&NR908IcmFG(DUnm^I}KtfMb_XsPhLsSI0HLCkxR zEtpdSnUM_eZ@+vdI^o{HJ~VjLp2$*8( z8`S_N_L0iSj}e!tNe~OwrEvE)Vm3f&nZ3>Vw35r|WoLlv3S$uG0JjqV?O3;1Xdaz+=ZJ;NnmF4M{HKI_Swbx6>04#Jh9+r#$#X{6}%CBp|z2>e@v_>K6Ig zEceF~w?F5Rx-UgH{+*;hVGbN`^5!_{f1PncV>$o%WeUMeOJ@3kNGae^mG=N@aVP=` zQMwPjJF$2C4@_684@uddRbVz1)WDP*75Or*qqZ416@jUk!cdj)EfvbLvN_BKvc`no zXO_l9Ug_=ERQH63_)BMJ@%A&z*1P7^Am>Yzs8K!owO;&m7! zlAw%uThThi5pz&Rf~_Pt8iX&y24<3OB3lkLWdK)7H&Fn~p{9gjJLx9M={t3w`P2DQf*Qp!kyV?i)7a9|Wrd%~Gy z9pMNG$S3|x1RMeSB0~-ClzyOCjxzn1javGFd^yfk2>d3EM#l4V?>}&mG#Uj@I0#t= z2h0cx1LBE9oe@TyKtl;cQs5X6p$r%Ji?jk6Prx1soG7h8!4tBF1y+?-pyY|!;{dZu zPmu8h?JnkifAJeiupX#Y+Brc_*coaB7UU&;6Te5^8ooyXj*`Af z*rObgaz-4X0;R@dk=?)7sIfWlP%-Opn|rJi3%lB+h7Ze+eF4x&|O^8>v| z-zDIYu?m~~?Ef4=jwuF`PvDT4!IEJIjmL9{%@E1BfW{N>$XP{Af(yTaH>ABOkAn)) z!Gh8+6vt8jEXgXBq80)6{;5JW;s0q511u#?Lg^K~#|oyA&L;B;EF_ZQ0XqXA#RPtd z8>|s_&}4kL3XyW5A}s=8FWOKkH->;?QY1WUsdr(dH?`ii{0%c3u4t%NmS?i$SmVI8 zP}8RfO2`0)R_qENRt^iWAImZurigQd)o5#3va5yfkL z3EGcvEm4^YYRqdLCHjQe-Ex37FzC#k-Ly?N7oH-ZLm)X`)oRK@NeO=nz7*E$6)GPs zuj`ZtY3L|?l1k;tmLg=52K+=5+xuk*IdW2jF_zx$x?E_`kweG<~Q!l6vT^tiBNXA{F)()gM6On zZ5+Nuj>FaM;dyvwHIINDye&vDs?zjrvJglS- zArC&jAY5&J6!-zFl(B){#(AOr9|7}^Ox^da^OufaU&mwxD*$qTNUgWP;z|9~E$QlP z>chpuwI0Ep{KIDTAU^9}2GO6IHvjMb>WQ2-dav%64pljZon01gsIBUoG9MQEADt?G zs|9;NG(M?Lf#LnE-sZug@9D1ZlYm$*v9@nPDf!*VYxg$G%Y)S44;z1|%XrME%#4>T z;y+$MZ*Yrv(VUxwsIOo2`9W-X7`>BA^sNeu_H__EO5vY=UmLO zUY4WWCGw23&zIDlTOs;vkTk`Z4^md4rX=Vj}qypIk&Oj$3JRSB%3TXqWQJa2H!t zZMP_M4z$Aak{p<%6rmhb@Sl8v^o%IAG*449H6VXn7rfPH)vzNS8f`6?@IAkMO7m-_ z2tnmy#x#P8<~2adT|4yIcuF0KjADDz;FSe$ZVA62Yem|*ObQ}Wg||MM%U0yNwgH5^PY^dy2w~5}ncrL& z1>{O8{kI!A;GUxK1t~aa*%;^Yn{w$yBU1XAdW1lXbDN@ymLN>jO7BjoCyC$~MC9nX zOClT$5}fTXJkU*FKc|O}T2;d3q&yO0U{0+F%+P@JHXB`NM5?=bdnGMt8X7HE2b*FB z$eyfqcgw%BzhxwSXSNIJ*r)Y3h zR<5`o&$a365+X+(h^pSBTi*?k?vZ?EwGTG@`B{Qsp~47Ebwpc-1Em)fNg-p>X(ye| zZ}cx)u|2zvBpgUPQ?6~nDhqNirF%{aZ^5<6WqN`m2Kg592YIOF9-ph$Y<(bT2Z(VS z6d*KY7_rm+4l%kMM>UybX+OAX8Yo@I$Mv9|_RfCaMD*&$ULgZl6sNbnMY_D5=8EMez*33Kt?BKobZ zr8G;znB}I2X4!G?-p&4>wA+Ve+pj1mN3JE??_XuP+S?D0_79siJEr*VE>ey17wpjK z_aY}EU%jshX&qztLTOcyID3&|@?;646mc!%@C|`L!}FXaM7Xr5%U6&Z@cOmn9fu=t zP(BSVa02DLc%izwl_$i8-^r8j!cMZh;fxEvG1z|xN&eS{sA8UvNppYIbXJ&@Waw&I z21Fv74f%OW!Q9`N{9v0>DtwNgpJEKCFxVnRZ8ZCsy zV2WMz|HeV<+_w9liGN6x?mn!<`x1=eL>1w@)56jDpx3uz*Z*nlyTh?=!@r*vMN;ufHbb zDMNE4(|4pyKSl$i(`?zQn}XPwE$Z3I$b&SutMB?NkE`eB|6$RmnO~fr&-CtP@lc%K z<|%pq=r32rvmlF&6z_~cXkYG-{s>8Bam?H1T+n#Md1}HdkJQ2_qgxEjZzW3CxSsUc%xwH)GIzW4M!JFj5Nr2j z(*Vz6L#C3ad9v%J{4ZwWxxu5ZkCP@M6x@6yH}p$wV=G%7gYT^5=0mv_fejl+n5XR# zc$vZa-uKtO(v3>ATJYrg9y8U%6)cBNDw>GswWauLxy$1+bl0m)clX zeqvMh%rqxWqi1-Lw z>+Y1;(XHLGeZzh+XWfr}U4fdJMTRPgPn$Lt$%Y)rv#c3Qw-hb16CFsW{+d0pXN$H& z3;d}3{&9~Cp;ne4|Co=JHdo>PBKrkCe>YsW8q@i&5sN0$3t3Aao-OM2EtFTZ6-6lu z;jquDMxUe(-V8JJhsK((&YW(3%{XR*zZ6}Rpnu#q&rJKVm$^bmZHHA}*7E^2#$NZ0 zX`Pq~jYf6wbm$6K2WP&t@*1s`fCMu+fh!ROZm-rB%ontcUJ!)TNW<7aU!=@;NSCZl z`nO^~FG}R7$y6+4?-x&CeG{QKX5M;UgUimP)iPpjD>bVjDi4~bRZiMCGviaj&SHD{ zQS~|0TM?tJ_)e8;9Ovhls)8#XIPhD={dtXr0i8ssG;{RgVO+wUce$~(G1Ke?9@Qx- zTbH!tvXZuW*wOy$%~A8*I|%|`V>seC(^s~hc7)(tpxBCWlxYkIjVLl4C%O;N=Q-v3;9esLx`Qssir z^~{bBS+QVVCTk4L1lkB4ckWfEg%xrwHL3|lkr+>o2b+u6p) z3c*_Mh3Oq*)S$%u#;-Ko4tFedvfGE}zU<7C%paRo!9IQ)HZ2O-e^SNuq}6hWa?pH} z4eW|+pfMk~uz*YOb55`~GI}Rj>#DRrVreDhaK|DB=j^FnAKVm@?!Y=k(--jYwi%~L z8uz;UMcQp^fnb9l9@4Y2E{k*b6&EV}>b&CKJcu%z$1U`+LAgFjSNdtLVd&PX{;rii+XSR#_H?A>n>#rRx9n~}GBQi=?9O$#^ zL^)pceIsCR9{EkS{ZekXiY`a7{c7}g#y^{`hU;zc1`h>vM^`JTBppe%9CaAIRDCGv zbVG`2+0M@M59eiik{j;oE$RzAjxG<9-m3l)*D8}MzV!|oE0qgBL0c^2&83-orq^-C zVE%e@J*k+DYF_->)7JCPEHMg|Ml&5o9vOEU8Ebo(yuH^VE zLiNa2`OEO^N^2|n&((TviSyD7_=Q<)L!o-Q84F+8pMhsR(h@qb1un)}vk_3W?zWTD zel9iF4{S#_q27ZB+xE(ra_p&HU33j0jd$u)_rDzA4ywrImX-B6I7*uC3mlbf7;j1% zD8-k*J?;GU-O=*C)sedBn0d6w(@KA%;KiCfJw#SN(f)^}f+$T$a&m-ldzi2Ab+6C)dA(nLtkp+KDT?v(y(=;@N{<`fcQz zzP^AaiJW)x)Z7;|1F3HXGmxBs^26C5rCe zOY&kHo7kb}xK4ns$W$aP#fNK*qg6hXv`d5}tZZ_{%vghHl-+81BG+h9ZYM#vOxCfnyw|^R<{34$NK$(O3&eD-ZPv_ma-_wlLoPBaAyhN> zO#!VWrcmL8R+evKZPcx&CZd~WpJ_fL#H|wBKX;tSX;mt5^U=i5$80>x=z3NoJ z&${($@9UtPCmoqd5|#t+v}n(4Z_27_r#~HUIC3G3n+d8vLYOI$^bakIxy8pR~1COwX72D!-Ol2bX`~7;!?Iz1Dtjj5g+c6c|V! zerLqHIp|~(5}#tfJKEmKa#$?pxKerEfqv>+^zqL<#lyp+&z9aqw_UW*OGuOLR!gRPtT2^bl!TpeCbJLf3o5yPBcsS(EaNn+~-ZeySSf=sw_YSkMLsogw2NEO_Af;SS=1uQ_nyl=;4kHoG!L@>T zKWRJro%CX{hfY>HmqIcgY%H`a+W%;6#jMK&vi~Z($pJkL~?3@ZdO4%6QlPC*ey}Wf|_0l~1=#GQl z%FPv)wrdbUM^;c^EZ|}36M-ON9*0qziX-!N>s!Remn_rY4Sz(vZgDf7_!bwp{JKTk zXu2!%p{XJ*+TswmELX&Fx98taw|=2t;oSGqRz6s@UjF40(!7peZvUM~$<+Ne(ie9c z)?BGw{NTUlX3% zxMw3!O^7orS~I!hFCIoXX{-n}n?xM&Oo$tL*%nd8hI;nNQR$&#+nQ2^-RNcHWYGAr zI$Xl!9jcayxQbVAilH>$!3Vyh$>FDlB*h%xUfeQ!FYObe^Y&KPk#W0I1Kpm!ww06A z-z_R#V-eYq)$P8XR%BEm%hhCbdZKbfd!C=;l%{6#lIeQFgt-WVibQ)}yqr~&R$Fs98GZ&^j%^X^fyqMXp5>a^}%E=@v zIVj<=G&DLoY?atW@V8d_wDZ*l|EYChxVO8{*_C$mBUE`xw@M6E+|8S&%u8_awAB7G z)?`clXjnO(ZCJ^z=M(oy$@tDK(x^Z;=k4BvA*|PkA9eH%x7-;6@et-*Sw@f!W* z&GJiKf3kQ$BTOk;GCg_S)wTC~UFOS|M-=S)2Ly-i`1!6%ReF7roL*YEl!Xm{8@jiJ zxACPi2ZM~(x$EbhB{2EN{iBPrToxXpRsDQnpr>HYvl^H6r9aOAZ*_lybB0-^ z_$7;-jcq#`d@C@Ty4nal5z=rI7dQL{Xbn?pKr!A%Sp7Ko% ziH#n-N9{FsV3uZoZj*^v8T%jK~8 zy`m+yAog3QJFGhlmkwAwKW@mfPi6G+oL;ldDlKXJBn2I@(DESzA z!6#dNvVbo`eNT?Pxs|c$5;o`SVoRLV;sbR5Yi=!fR;uyymy-_Er^F?%jMf;#E<;$AJAgv$4LL)1x*sX!{#@ z{KZ0P(kZ5xoa%}V?}evG#1&{3?MIlwSmQ^qJI&D2w~mr{?2M3#B~8rtr+6->`+(mEx? zk((mZU-+o-Tl#e8#RCD8&mMPHD5n;^{$c@@rr%LgfJjf)=DL0a=UjEnUf1AyxacRM zZgla^#$&fTOltxzIm1$gH}SfsT}3iHB;V@%p2B~sH#xHCSswFut1nmbI?C&g@@}6T zk6kp5wV2XZRfv+!bU!k3+9leny7}x_;>WjRQG9~F_%UnEh|;a{i*puFW%FlZb@Kh^ zL?B@$1C7to$)O$=wyK*gCN({(=w%5dt%pl>7d>tr`BPKdLA#q%^4s#Qb{~Bop*+bn zzS5u+>F&kNkDq0o#;<9xjEDSqB~G+(n#(*{Yjbwqy-gveS7p@etK2tzDb;J-N$hSX zHmiO-IrYqcCg_`fGY9(1;%bfXsvYrb<@6O@#(=rxEZUuj;V0Ohz5KuZ_Jn)kc8ps5 zK9+r0Jg(FiPxE-sUOc|^IFZHz{6dHcm7rPMizkwQ3dR_wQJswGlB5aWOF+aJNzrhT ze?n3;JgPW81fRP2d3jx_vpBrmSu_fB28G3;Lgy%*c+8#xoH+WtgdNbh_?cc#UI zwyz(q{*$njZamPUeI$>yj+%-3TkV0R#v@}K-med~21c`-v++8ko>+Ez{Nbg@JohUAp z5KO3!UEMUUkiIKZJSVZac&!D+ubA3bXz~i;le*F(anypTP&7a?bdcJR$^X>!Qi98+ zNXF3e3KMPQT2WaZo2L^}l{+Fr;nS_p+Fxgli8j^SIiyc1EH+}=ww@OYIxR>g$qtnZ zq0;`sREt-*5HHx&?_`)*R%=QeDT=!@cA3lmK;-BXHlr=YoGXb0H>WN&k`68NOOJQc z&}1ZSsBHUuI=VP6X>?9tXt459cw6zfXrEV!_DiUs)}EBge7E(}x|_X$#hIBSSuB+c zI`jJASN&2}pGfhboU4cP3X50R!e(_7^NotvdZA_yak&O_@tnHZ%97Kq08hd}OI~;omoi1zM@LNm3&Didso$juYSlWfYHfTz# zuMi_X-RP@*l-7{@^es~UNtW8z+FT1ab!jgeA9^0~q=4xW38l^R)=1&`jfVvcnxs?f z)S7ki+WWF5QcC>%E-r`-{I)=ke;q_%<}|U{rcE$rw2f#*9MmGP(rRd-951jk-gdQv+~ zx%dXtFUd4an)u#oUlNuP?gGz5ckU}@jm%r7`+jF}DW|bGW?*rd+P|K#eZyc0d}i|E zI^E071iSTyDRJ;&$--u?=u;daVZM-}48KL((c@gq;p&RQ{3)Fcv*xboNfx!RlZpub zl&Ge2rlyDs>}lbKid6hjQBA?d^2h*ot8jV6;~7qIjGy-(pO0!kXucn9%@)!k)p6(a z`*WoiH(ANU>G)$iGnxz^i=o)q!_*b&GOizMArIeVwF|?MXH%SoPN5h%9)FY{Jz!{3-lvjz`PLu__o&GJSWCTh*(6)&*ch50HfXFO1AK515j z+{=<3dQwp)BdD`=76Mxj059Vd{lJEbpI(zk-er9fX0PZl#Uk|ip0fn`WxY3Sk}ss| z)7f@H)fK^-$FiRqk=LvZGgM^auT-mRvLIWfHjHc)u)%`{_9YbyA;N*jT27v~UlUod zI#tx!U}@5Ws9^sXqOSPqxLZ{1K|2ig6bG~s77JXE(%E_t{0}R6j(J68{@7zJ=S(Y% zhjv2T+uppzJ@;e(WOo9^z^>LZ$0NjXtmUau4{(Y~_+3SXj0c^Q=S+)`cAQr+r#Lp0 zhh^=;67npaY62w7XU*#|<2s`}meB%H8)Ni=xt-1_S~lvok0d&{3)5n%i^`ushmgm- zO&FBJbdbWC4Oe2hqKz&n-?T#fR%j@p9Qv`78l5U`E-(AFu_gAKZx?VqBB^ULgc>@XzDvsA|ERW0o5#jP^m#CIK1%a-yf*W* zcf8tkHimBVq3(xAy1Kjvew#Dlw}pbk3xsjCFZ0={(xhXCWJh`KOzXK;9pjDBr$&q$=lGT%?? z(oZ0(0!x?o^EA?W(x^_dONGxYolaItsEAoQKKA8Bz>Ss)&`z3by98>N?dAIo&FU<$XgvJHbxt2V{M~ zM{W4m<*n~~N#^h#JK;v%Plsy5GW&uD_%gAUI7_GN9yUuhtEq3V{h|O)k&{eeOKW+g zHQN&qo#fahoipu0FtCS&jVV^~zlNM>FRvH`;sDuW$?Q0RvIgAY0DnfQb)GZ5C2kFZ z{-h#RMnY%nQzHzP0i*(XKp}Ao0eOVYVOz&zdF*+EfeYOLYEZq z{CAIaH(AtUzJOQnl3$IgZ8CI~U|?U4;0!2Bd3v+pj7COwX9Lt^@ik4b#+<%HNm&_W zlL2zR2w>n2?NK<+A9bweq}c<&yO6LVkT1eJ3oNgbX-Epaq@*zw#K*z&aPs%7jh{0m4@$ z#j1=4Ru_doVCmdtdLzza5xC)geX;%M3vne6P}*`vD+HITCs30t6QN|bhg+=(-|cLT zr%I6RyIFFTL8serr7qQmgNvwwPdVNAdEzp|Du?!cM4H~w3 z(ybWLowl^`D1N`w9>2`N(vYsr6>4Ky@X6>{&Gi&2hIo%t*2WWJS_dSmk%|C{#7hGbo3J<1BFm|zpg3b(ZEYOtr zc<9;&uI?Y^88%XyzX4d^Cco8SQK=AEfM0!GGeA9^;f@0aH9B!CPmmOJjP364Y!OC; zqtsJ;TtRY92gwEnDcF=Q=(C(qT%!`(l@|QbCc+`;%+C$w@%RcmKoe zjl2nB)s2~D2K{>KC3{P{+jM!8%vCr0mpO*Yst?H-LE$gx9HykJY=(zz%FCYkIr-fM zd7!4Ab?K&2xHp}_6lams7K>e5!vytqa0)2oB=L1R=$*%Q$jj&UoTTMP`_b{&0D(av z$_P@cD>BHm8dtvBY58fqJGG+^Gtl9#fdC}}P>IZx4L}?}{#YmJP{5ds^q=+bis%=1 zCqNlx{>-R$OY5PvDsoIaI<=KUv7UI6t1k`3bZJza~-mRk7ZKKSx0U z1Iz)n-KrjA%wZI1s7Uj|+a<%*%5OZU@x!-oxrbI|(g!?xjeqPR?TK{lEL8Q&duB1d zahLs5XeLp5tGB<>J6ykVkkC)!xJgxh^YUOgZ}m>5l5u(F%geM zQfQ1vQcj4+P-=|FqbL+1AYfJi_9qgM7$n>Z1Qewv1T>aXjxsQb1RRo5j);bB28lob zw?qG37=Spqc1Q#Yg@?HbVBmrTJ{Chj!We->U;%aDa(D#hFFELcXop1LQSjgb80Npx zia-F2fQGpQiA11LFdqX93#T0t5R3@33G^MGD7>Xo?Bw`8hS^}Je!2J`1(9fbn z_8b9jLL!JaICVfZfYTENNP+ri!k_a23`2m8MIlfaB+N1>1cbuDH3ou2cxpuf#v&*N zV-b{#V1f7k>kt1h}<8m?Pk> z0~qq(R`}_E00K_Hca1~;RV4n|APxgBvtTR^UYr1ihtm^a1T5tm5D^FSI|_kEQZ9@~ z!6O*RVJZENC*UX+0hJAw15kiBziJ84|8MP(C^Q-#NMI`z6N1JE-l(9ESa3ZJvmg?W z$N!b*|0f5akbq48R+wym6bgxgw^9JZ!t*=|1+vt?2mc(4!NK!93WdYKD=NTn2w18H z7y+U%AqvD6+=QSdA;9ti3I!S(xLMJ_Cvc5Hjv~T?6^;6r6yQVrQj2SBD4!esR$PI zH}J6#79=A$NbWr-F-lFappH<=Q7S^d9-xo|tOgkLAHQS4ag9=N7fnE+qm2IJ;;9j_LmrB&+wc5u(I) zaS3J@ML=St7>j{+(F7dLCJARBd|=Dux9-@RJMbaN zbN|1;k4OA}d#jHg->>)Y7&*KCx{Su*z)dbb#^)7{5JW)!|62clUtavOvza^JuT{mh e)y>Q`T58ifD?0*?ieE?r83NRtvegpP_>KtzZT=~6;3(pv%o z0s;ckJCWWAJwOQj&WX?czU%wzTZ^UZZ1&8ax#pU3cA}x*L~*agJ{g{oi8fL@BNv@q zeC9Sv`wT0C4DU@|ecoG8ssH{hhw?rn$tZX0@1vabfB%*#!<~71CPWr0r>snS+0)Cz z)(Sy;**B@sNL!cV))icF`Ki@M*%kJl15d%%W--in!yaf3TsBhr3e9BDzIXrjE*`l? zJNf<1^~-O6%o?k0X7BRS)Ou%`p6W$+x(&U|{`%@Hhuc|6E_P70bXgCwGk--SYH{?mU}eyO15Mh#7l1ZNAoS z1odd%=W>2H(#Bk!D zpx%Xr0S6^q{imgt9-Du7LSlTL@!t1I(CTlsiDX(nZnOHp32IV;3NgA2^JeUA|!CdCe^B+F|-&+@zJf-@&{=oYQ9! z7v@VnMI-tmXnbjV+hU9Ssj+%yRnjX&b|Hk@TSmvAMS2x zzMK-VRye;U&oblN9#~Kvukp*Meb>^BrIz^}UYvO2{0zG_BI!S}yORQJy9ojtUf*(R zIX@b(Ol1i>(8N6Ut*kEXr{2p`ILA^Y^*_NU(WA6#1ym|zUBfp{Vxb=p=_vK&?*o3{ zo@7h*?w<=TNX+_O$&R?gF&0wwxGysSZeS2@@7?9;w4v&gxV}KoJs#$awsJnhg8Fve z?Tj3X?}Al`%+1@E|B?wX#%z~a-0`?rZ4_<2t<_EN|R&faazyQm#`BuqGBu9en5DNXQKaqL%=#&YN% zb!)6ElKvpAr8csnHj)PFJq<_-f!i)Rt&<+#SHEl{;f|Ks<|y|nnf-3v^*Y}3g#9Sk zVr7kDf*(x(q*jQ$ac2ZJqJcDdR%G6RS4D&%<)&+e=QbP)SEIL)?&-zNA+e1mmKO!o z9Y&4#LwQ*1gz&n`ewyZ9XA_Zvslmj`CUW_-29q06W^YR2$7Jg70A6hAgQ?I+tZgLj z?j`Je)nzO^Uh?x9#6Bk!XnIsk0P5 zN+Av8J1&s31Wf>q_{+qm`l?(E@tL&CPU8mV0lsr9U;P)Y!||Z(${V30c&_FgZtTl= z-|J4DpEzzNWXLEdPE&vx+g*Xl1Pa`f={u$K1d-^uC`Qyb$`^CF4na1x>jU3nL zwYU2=-wa+DzJst8Rd=|CN@KisF>wWBoE7uA2-V1Xjj5as&TbhGCwsZAEuzSEH~|rN zaGj>y4_x0blZwrRqVCqQpm^!e(RA(i9mOsifYL(Xt}Eq&aCY-}7rGd1E2RCbw3X;0LLEV0Wu#6d)Kt*$2yOeMP zQUQqMP(&`C^UsaV6;M?`MKfKa6&li9HOZnkjn~lMok68>T%&EmLF=WsHeZ8##KAo@ zm2c3kCRss+T7n|_;4$>&u~;Z}ZS3iHNCB`W1+HBx-@^`c7{;WtfKV`-4{BPA^(Xx4 zusqimtUP*|S6#snwMBc44uOC~7Hg4cKo<<7KqzSue=vJu{cWIn%q(aE^SG~rvu&-& z(#})2k?Hn@|55KdL$QrM(a)i|WA{ssp!qog_0+52QJ2R1G(pi=iYPrtfWrqZr&nUZ zE;Rj06Ys*k1*Mm~QHE(e3vi4m_ zR|x>0%@2?P7YBCxIDw-aQPWIpR}xC$?C|}pKc#AbAGwi#{SXas&d^~N02U-tw9-HFbx6`8sc>>y12`5^kfzC)!MIDU+y3vu zCH^^#Jb>Xq0_ebHs2M!r|8_I+FJf**uA+`fHuVAJ_Z0AoUNDKZ_s;2ah0P#ggI z9u11pLet^w!u`Ra;EENvLIbS@S5m+TeFaUXVRwK;MlTD2plX47E=AU&%>aATDLyi= z`#J>LjuF%TEX~FsXk(b?K_S`%ZZIFXo&zR#QOHK^FpHVCH3#IV|1v?rZ+Ub5ZY6-O zj2wsqT~<7rE~;3I3d{%;g;N)g{J?~ffq=iK$-+>Q0fblNZ`@!ws7@C8Sm59TxJwe; z#gJ8kenVWz`r320Q4d7u-CuL2Ky%0?z&&uG~Ktte&LQBgkiTnf2pq`SbRCIaE? zI{|H^hn~fi2iy8vx@7`_>r7x)P)qlNS-}k)U5>gX!baQm1kB6;@ErVKY=ib z0Oa8`~%F%!hKr8zN0Df?5G?b0D&@$fmJTBPLR#YTo7F@YV9_iSX1Vm9U zxH&E^*Aq32ey_q&NsQc=mxWETCV@!X+MuGZv0qNDm0Fko-C?NTirVC2r}6)ejGtl) z90C@Ezy*5$uK^XJOF;AO0QdYrZE>*yYaAs?*D6JpfGiiWrkKF2^bUl)_3N8s?n$G_bgsX%I%TfZ2zyyFs&_-_cF%T|{P66sBDfVAR zWTM~L1CKb$BOL+@hMjfN3RqI2EYTxk&_l&qA)K5Jz}h;+h>M6kkdzw3KrGqm5~ndG zvCFN07y%fT!MezH(P0OylKMv!&&He~w1n8mMnN!A8YobP+I$8qhU1`RsAzgNx_Jyx z^$$9Bp8-00K?<|cmd}GM!gT?9$|;sGXukt3A<%uiBRe|9r`{C_>|>|a1DWIlG#chn zP&Fgd62K&fsJc-8D4k0GNBaE~VH)iMP}mh{5X?AmA3f6sV77zp?^!T>3=x0Nl)(aB z0SAUDlj122LJ$H3eG2p)Yyj*RD^oz%!;L{aX$n`svygxSJ+ODNT`I4@fsPwegy|7y zA+)Z~ZGV&LfE^-SAT;z2K-KqcmOT%11zO(cT2LoVWjy-hhX%0T>gS={nK>@S!4>*| zhs%`6(v7uJlEteoHaGJ##n6l8>y&dGf!*v^5}3hbRGn@8fo_)h`8@~=9Z>0k3i)+a z8(_Y^AZqI>JFS2}SUlEcL1P#|V`v>bz%ID{4Djwe#bie9S_%QC*g4$|OA8<9+fhuo zlyDgilAh&n_<=$X;P`nL#E}Ll@jw>Jfqc-RfFd#v#?~At9fEw|xpam*eIp&^3QK{Z zfO(au?;ISo=W)tA=3ump=T3H3kN&&?%F)zQ>_7eqz_$vbL&tszO!&G98(Yy_ z777StirgK$;wU#sO?@&NsN-Gb7KW~YMzi%47l6K_B_BUp*p7#%VxU{KfhWc5Jfsb5l34YX7hd}e%0DVvRl!xvJO#7F;J7byjoFGr%^$o&8u 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

HHATF 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

)vQ#lGFQruJwBd6d_Hc^}ex5_N~sQ!t#5n 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 UGIhP&06&!!(4 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%0D$j<2Pz!Cf-<5&<8W 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˚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 e1xjDnuwZzLfv1QuEJnfQK-W