From 181e5167b69639e0e79e544172b62c8d1f70e1eb Mon Sep 17 00:00:00 2001 From: "chuck.yount" Date: Fri, 11 Jan 2019 14:14:41 -0800 Subject: [PATCH 1/8] Allow conditional exprs to contain YASK vars, not just indices. --- include/yc_node_api.hpp | 127 +++++++++++++++++--------- src/common/common_utils.cpp | 2 +- src/compiler/lib/Cpp.cpp | 4 + src/compiler/lib/Eqs.cpp | 133 +++++++++++++++++----------- src/compiler/lib/Expr.cpp | 10 --- src/compiler/lib/Expr.hpp | 35 +++++--- src/compiler/lib/Print.cpp | 4 +- src/compiler/lib/Visitor.hpp | 29 ++++-- src/compiler/lib/YaskKernel.cpp | 42 +++++++-- src/kernel/lib/stencil_calc.cpp | 5 ++ src/kernel/lib/stencil_calc.hpp | 8 +- src/stencils/SimpleTestStencils.cpp | 39 ++++---- 12 files changed, 282 insertions(+), 156 deletions(-) diff --git a/include/yc_node_api.hpp b/include/yc_node_api.hpp index 5e477661..b0c62fc7 100644 --- a/include/yc_node_api.hpp +++ b/include/yc_node_api.hpp @@ -178,20 +178,22 @@ namespace yask { LHS. 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 + to which this equation applies. + Domain conditions are always evaluated with respect to the overall problem domain, i.e., independent of any specific MPI domain decomposition that might occur at run-time. - If a condition is not provided, the equation applies to the + If a domain condition is not provided, the equation applies to the entire problem domain. A domain condition can be added to an equation after its creation via yc_equation_node.set_cond(). + See yc_equation_node.set_cond() for more information and an example. - 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 + A step condition is similar to a domain condition, but + enables or disables the entire equation based on the current step (usually time) + and/or other values. + A step condition can only be added to an equation after its creation via yc_equation_node.set_step_cond(). + See yc_equation_node.set_step_cond() for more information and an example. @returns Pointer to new \ref yc_equation_node object. */ @@ -200,7 +202,7 @@ namespace yask { /**< [in] Grid-point before EQUALS operator. */, yc_number_node_ptr rhs /**< [in] Expression after EQUALS operator. */, - yc_bool_node_ptr cond = nullptr + yc_bool_node_ptr sub_domain_cond = nullptr /**< [in] Optional expression defining sub-domain where `lhs EQUALS rhs` is valid. */ ); @@ -291,35 +293,7 @@ namespace yask { domain in `dim` dimension. The `dim` argument is created via new_domain_index(). - Typical C++ usage: - - \code{.cpp} - auto x = node_fac.new_domain_index("x"); - - // Create boolean expression for the - // boundary sub-domain "x < first_x + 10". - auto first_x = node_fac.new_first_domain_index(x); - auto left_bc_cond = node_fac.new_less_than_node(x, first_x + 10); - - // Create a new equation that is valid in this range. - auto left_bc_eq = - node_fac.new_equation_node(grid_pt_expr, left_bc_expr, left_bc_cond); - \endcode - - Specification of the "interior" part of a 2-D domain could be - represented by an expression similar to - `x >= new_first_domain_index(x) + 20 && - x <= new_last_domain_index(x) - 20 && - y >= new_first_domain_index(y) + 20 && - y <= new_last_domain_index(y) - 20`. - - @note The entire domain in dimension "x" would be represented by - `x >= new_first_domain_index(x) && x <= new_last_domain_index(x)`, but - that is the default condition so does not need to be specified. - - @note Be sure to use an expression like "x < first_x + 10" - instead of merely "x < 10" to avoid the assumption that - the first index is always zero (0). + See yc_equation_node.set_cond() for more information and an example. @returns Pointer to new \ref yc_index_node object. */ @@ -333,6 +307,8 @@ namespace yask { domain in `dim` dimension. The `dim` argument is created via new_domain_index(). + See yc_equation_node.set_cond() for more information and an example. + @returns Pointer to new \ref yc_index_node object. */ virtual yc_number_node_ptr @@ -466,15 +442,80 @@ namespace yask { `nullptr` if not defined. */ virtual yc_bool_node_ptr get_cond() =0; - /// Set the condition describing the sub-domain. - /** See yc_node_factory::new_equation_node(). */ - virtual void set_cond(yc_bool_node_ptr cond - /**< [in] Boolean expression describing the sub-domain + /// Set the condition describing the sub-domain for this equation. + /** + See yc_node_factory::new_equation_node() for an overall description + of conditions. + + Typical C++ usage to create a sub-domain condition: + + \code{.cpp} + auto x = node_fac.new_domain_index("x"); + + // Create boolean expression for a 10-point wide left boundary area. + auto first_x = node_fac.new_first_domain_index(x); + auto left_bc_cond = x < first_x + 10; + + // Indicate that an expression is valid only in this area. + // (Assumes left_bc_expr was already defined.) + left_bc_expr.set_cond(left_bc_cond); + \endcode + + Specification of the "interior" part of a 2-D domain could be + represented by an expression like + `(x >= node_fac.new_first_domain_index(x) + 20) && (x <= node_fac.new_last_domain_index(x) - 20) && (y >= node_fac.new_first_domain_index(y) + 20) && (y <= node_fac.new_last_domain_index(y) - 20)`. + + @warning For performance, sub-domain expressions are only + evaluated once when yk_solution::prepare_solution() is called, + and the results are analyzed and cached internally. Thus, + sub-domain expressions should not include a step index or a + reference to any other varible that might change during or + between time-steps. See set_step_cond() for the mechanism to + enable equations based on variables that can change between + time-steps. + + @note The entire domain in dimension "x" would be represented by + `(x >= node_fac.new_first_domain_index(x)) && (x <= node_fac.new_last_domain_index(x))`, but + that is the default condition so does not need to be specified. + + @note Be sure to use an expression like `x < first_x + 10` + instead of merely `x < 10` to avoid the assumption that + the first index is always zero (0). More importantly, use + an expression like `x > last_x - 10` instead of hard-coding + the last index. + */ + virtual void set_cond(yc_bool_node_ptr sub_domain_cond + /**< [in] Boolean expression describing + where in the sub-domain this expression is valid or `nullptr` to remove the condition. */ ) =0; - /// Set the condition describing the valid step indices. + /// Set the condition describing when the equation is valid. + /** + See yc_node_factory::new_equation_node() for an overall description + of conditions. + + Typical C++ usage to create a step condition: + + \code{.cpp} + auto t = node_fac.new_step_index("t"); + + // Create boolean expression that is true every third step. + auto my_step_cond = (t % 3 == 0); + + // Indicate that an expression is valid only when step_cond is true. + // (Assumes my_expr was already defined.) + my_expr.set_step_cond(my_step_cond); + \endcode + + Step conditions may also refer to elements in grid variables including + scalars (1-D) and arrays (2-D). For non-scalar variables, indices + used in a step condition _cannot_ include domain variables like `x` or `y`, but + constants are allowed. In this way, equations can be enabled or + disabled programmatically by setting elements in the tested variables. + */ virtual void set_step_cond(yc_bool_node_ptr step_cond - /**< [in] Boolean expression describing a valid step + /**< [in] Boolean expression describing + when the expression is valid or `nullptr` to remove the condition. */ ) =0; /// Create a deep copy of AST starting with this node. diff --git a/src/common/common_utils.cpp b/src/common/common_utils.cpp index cd1378a9..5040b96c 100644 --- a/src/common/common_utils.cpp +++ b/src/common/common_utils.cpp @@ -46,7 +46,7 @@ namespace yask { // for numbers above 9 (at least up to 99). // Format: "major.minor.patch". - const string version = "2.16.02"; + const string version = "2.16.03"; string yask_get_version_string() { return version; diff --git a/src/compiler/lib/Cpp.cpp b/src/compiler/lib/Cpp.cpp index 4a967a98..a16ccf93 100644 --- a/src/compiler/lib/Cpp.cpp +++ b/src/compiler/lib/Cpp.cpp @@ -34,6 +34,10 @@ namespace yask { // Format a real, preserving precision. string CppPrintHelper::formatReal(double v) { + // Int representation equivalent? + if (double(int(v)) == v) + return to_string(int(v)); + // IEEE double gives 15-17 significant decimal digits of precision per // https://en.wikipedia.org/wiki/Double-precision_floating-point_format. // Some precision might be lost if/when cast to a float, but that's ok. diff --git a/src/compiler/lib/Eqs.cpp b/src/compiler/lib/Eqs.cpp index 8a067d9b..4ba34aad 100644 --- a/src/compiler/lib/Eqs.cpp +++ b/src/compiler/lib/Eqs.cpp @@ -39,10 +39,6 @@ namespace yask { // and its input grids and points. class PointVisitor : public ExprVisitor { - // A set of all points to ensure pointers to each - // unique point have same value. - set _all_pts; - // A type to hold a mapping of equations to a set of grids in each. typedef unordered_set GridSet; typedef unordered_map GridMap; @@ -58,79 +54,105 @@ namespace yask { PointMap _lhs_pts; // outputs of eqs. PointSetMap _rhs_pts; // inputs of eqs. + PointSetMap _cond_pts; // sub-domain expr inputs. + PointSetMap _step_cond_pts; // step-cond expr inputs. + PointSetMap _all_pts; // all points in each eq (union of above). - EqualsExpr* _eq=0; // Current equation. + // Vars for indexing data. + EqualsExpr* _eq = 0; // Current equation. + enum State { _in_lhs, _in_rhs, _in_cond, _in_step_cond } _state; public: // Ctor. - // 'pts' contains offsets from each point to create. PointVisitor() {} virtual ~PointVisitor() {} + // Get access to grids per eq. GridMap& getOutputGrids() { return _lhs_grids; } GridSetMap& getInputGrids() { return _rhs_grids; } + + // Get access to pts per eq. + // Contains unique ptrs to pts, but pts may not + // be unique. PointMap& getOutputPts() { return _lhs_pts; } PointSetMap& getInputPts() { return _rhs_pts; } - int getNumEqs() const { return (int)_lhs_pts.size(); } + PointSetMap& getCondPts() { return _cond_pts; } + PointSetMap& getStepCondPts() { return _step_cond_pts; } + PointSetMap& getAllPts() { return _all_pts; } - // Determine whether 2 sets have any common points. - virtual bool do_sets_intersect(const GridSet& a, - const GridSet& b) { - for (auto ai : a) { - if (b.count(ai) > 0) - return true; - } - return false; - } - virtual bool do_sets_intersect(const PointSet& a, - const PointSet& b) { - for (auto ai : a) { - if (b.count(ai) > 0) - return true; - } - return false; - } + int getNumEqs() const { return (int)_lhs_pts.size(); } // Callback at an equality. - // Handles LHS grid pt explicitly, then visits RHS. + // Visits all parts that might have grid points. virtual string visit(EqualsExpr* ee) { // Set this equation as current one. _eq = ee; - // Make sure map entries exist for this eq. + // Make sure all map entries exist for this eq. _lhs_grids[_eq]; _rhs_grids[_eq]; _lhs_pts[_eq]; _rhs_pts[_eq]; - - // Store LHS point. - auto* lhs = ee->getLhs().get(); - _lhs_pts[_eq] = lhs; - - // Add grid. - auto* g = lhs->getGrid(); - _lhs_grids[_eq] = g; - + _cond_pts[_eq]; + _step_cond_pts[_eq]; + _all_pts[_eq]; + + // visit LHS. + auto& lhs = ee->getLhs(); + _state = _in_lhs; + lhs->accept(this); + // visit RHS. NumExprPtr rhs = ee->getRhs(); + _state = _in_rhs; rhs->accept(this); - // Don't visit LHS because we've already saved it. + // visit conds. + auto& cp = ee->getCond(); + if (cp) { + _state = _in_cond; + cp->accept(this); + } + auto& scp = ee->getStepCond(); + if (scp) { + _state = _in_step_cond; + scp->accept(this); + } return ""; } - // Callback at a grid point on the RHS. + // Callback at a grid point. virtual string visit(GridPoint* gp) { assert(_eq); + auto* g = gp->getGrid(); + _all_pts[_eq].insert(gp); - // Store RHS point. - _rhs_pts[_eq].insert(gp); + // Save pt and/or grid based on state. + switch (_state) { - // Add grid. - auto* g = gp->getGrid(); - _rhs_grids[_eq].insert(g); + case _in_lhs: + _lhs_pts[_eq] = gp; + _lhs_grids[_eq] = g; + break; + + case _in_rhs: + _rhs_pts[_eq].insert(gp); + _rhs_grids[_eq].insert(g); + break; + + case _in_cond: + _cond_pts[_eq].insert(gp); + break; + + case _in_step_cond: + _step_cond_pts[_eq].insert(gp); + break; + + default: + assert(0 && "illegal state"); + } return ""; } }; @@ -155,6 +177,8 @@ namespace yask { auto& inGrids = pt_vis.getInputGrids(); auto& outPts = pt_vis.getOutputPts(); auto& inPts = pt_vis.getInputPts(); + //auto& condPts = pt_vis.getCondPts(); + //auto& stepCondPts = pt_vis.getStepCondPts(); // 1. Check each eq internally. os << "\nProcessing " << getNum() << " stencil equation(s)...\n"; @@ -317,10 +341,10 @@ namespace yask { argn->getIntVal(); // throws exception if not an integer. } } - } + } // input pts. // TODO: check to make sure cond1 depends only on domain indices. - // TODO: check to make sure stcond1 depends only on step index. + // TODO: check to make sure stcond1 does not depend on domain indices. } // for all eqs. // 2. Check each pair of eqs. @@ -520,16 +544,20 @@ namespace yask { SetVecVisitor(const Dimensions& dims) : _dims(dims) { _visitEqualsLhs = true; + _visitGridPointArgs = true; + _visitConds = true; } // Check each grid point in expr. virtual string visit(GridPoint* gp) { auto* grid = gp->getGrid(); + cout << "** SetVecVisitor at " << gp->makeStr() << endl; + // Never vectorize scalars. if (grid->get_num_dims() == 0) { gp->setVecType(GridPoint::VEC_NONE); - return ""; + return ""; // Also, no args to visit. } // Amount of vectorization allowed primarily depends on number @@ -550,6 +578,8 @@ namespace yask { assert(fdoffsets <= grid_nfd); // All folded dims are vectorizable? + // NB: this will always be the case when there is + // no folding in the soln. if (fdoffsets == soln_nfd) gp->setVecType(GridPoint::VEC_FULL); // all good. @@ -560,7 +590,9 @@ namespace yask { // Uses no folded dims, so scalar only. else gp->setVecType(GridPoint::VEC_NONE); - return ""; + + // Also check args of this grid point. + return ExprVisitor::visit(gp); } }; @@ -662,13 +694,8 @@ namespace yask { // Analyze each eq. for (auto& eq : getAll()) { - // Get sets of points for this eq. - auto* outPt1 = pv.getOutputPts().at(eq.get()); - auto& inPts1 = pv.getInputPts().at(eq.get()); - - // Union of all input and output points for 'eq'. - auto allPts1 = inPts1; - allPts1.insert(outPt1); + // Get all grid points touched by this eq. + auto& allPts1 = pv.getAllPts().at(eq.get()); // Update stats of each grid accessed in 'eq'. for (auto ap : allPts1) { diff --git a/src/compiler/lib/Expr.cpp b/src/compiler/lib/Expr.cpp index 57fd895f..91a90871 100644 --- a/src/compiler/lib/Expr.cpp +++ b/src/compiler/lib/Expr.cpp @@ -518,16 +518,6 @@ namespace yask { return expr; } - // Unused operators. - EqualsExprPtr operator BAD_OPER1(GridPointPtr gpp, const NumExprPtr rhs) { - THROW_YASK_EXCEPTION("Error: operator '==' is not allowed on a grid point;" - " use 'EQUALS' to assert equality between a grid point (LHS)" - " and an equation (RHS)"); - } - EqualsExprPtr operator BAD_OPER1(GridPointPtr gpp, double rhs) { - return gpp EQUALS_OPER constNum(rhs); - } - // Define the value of a grid point. // Add this equation to the list of eqs for this stencil. EqualsExprPtr operator EQUALS_OPER(GridPointPtr gpp, const NumExprPtr rhs) { diff --git a/src/compiler/lib/Expr.hpp b/src/compiler/lib/Expr.hpp index 61e6b292..98e7eb40 100644 --- a/src/compiler/lib/Expr.hpp +++ b/src/compiler/lib/Expr.hpp @@ -68,6 +68,8 @@ namespace yask { class NumExpr; typedef shared_ptr NumExprPtr; typedef vector NumExprPtrVec; + class GridPoint; + typedef shared_ptr GridPointPtr; class IndexExpr; typedef shared_ptr IndexExprPtr; typedef vector IndexExprPtrVec; @@ -79,8 +81,6 @@ namespace yask { // More forward-decls. class ExprVisitor; class Grid; - class GridPoint; - typedef shared_ptr GridPointPtr; class StencilSolution; struct Dimensions; @@ -1129,26 +1129,35 @@ namespace yask { #define IS_EQUIV_TO EQUALS_OPER #define IS_EQUIVALENT_TO EQUALS_OPER - // Catch use of the old '==' operator. -#define BAD_OPER1 == - EqualsExprPtr operator BAD_OPER1(GridPointPtr gpp, const NumExprPtr rhs); - EqualsExprPtr operator BAD_OPER1(GridPointPtr gpp, double rhs); - - // Binary numerical-to-boolean operators. - // Must provide explicit IndexExprPtr operands to keep compiler from - // using built-in pointer comparison. + // Binary numerical-to-boolean operators. Must provide more explicit + // ptr-type operands than used with math operators to keep compiler from + // using built-in pointer comparison. This means we need all + // permutations of {NumExpr,IndexExpr,GridPoint}Ptr. Const values must + // be on RHS of operator, e.g., 'x > 5' is ok, but '5 < x' is not. #define BOOL_OPER(oper, type, implType) \ inline BoolExprPtr operator oper(const NumExprPtr lhs, const NumExprPtr rhs) { \ return make_shared(lhs, rhs); } \ - inline BoolExprPtr operator oper(const IndexExprPtr lhs, const NumExprPtr rhs) { \ - return make_shared(lhs, rhs); } \ inline BoolExprPtr operator oper(const NumExprPtr lhs, const IndexExprPtr rhs) { \ return make_shared(lhs, rhs); } \ + inline BoolExprPtr operator oper(const NumExprPtr lhs, const GridPointPtr rhs) { \ + return make_shared(lhs, rhs); } \ + inline BoolExprPtr operator oper(const IndexExprPtr lhs, const NumExprPtr rhs) { \ + return make_shared(lhs, rhs); } \ inline BoolExprPtr operator oper(const IndexExprPtr lhs, const IndexExprPtr rhs) { \ return make_shared(lhs, rhs); } \ + inline BoolExprPtr operator oper(const IndexExprPtr lhs, const GridPointPtr rhs) { \ + return make_shared(lhs, rhs); } \ + inline BoolExprPtr operator oper(const GridPointPtr lhs, const NumExprPtr rhs) { \ + return make_shared(lhs, rhs); } \ + inline BoolExprPtr operator oper(const GridPointPtr lhs, const IndexExprPtr rhs) { \ + return make_shared(lhs, rhs); } \ + inline BoolExprPtr operator oper(const GridPointPtr lhs, const GridPointPtr 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)); } \ + inline BoolExprPtr operator oper(const GridPointPtr lhs, double rhs) { \ return make_shared(lhs, constNum(rhs)); } BOOL_OPER(==, IsEqualExpr, yc_equals_node) @@ -1204,7 +1213,7 @@ namespace yask { // (_context->temp * 2.00000000000000000e-01) + (_context->coeff[9]) #define SET_VALUE_FROM_EXPR(lhs, rhs) do { \ ostringstream oss; \ - oss << setprecision(17) << scientific; \ + oss << setprecision(15) << scientific; \ oss << "(" << rhs << ")"; \ lhs make_shared(oss.str()); \ } while(0) diff --git a/src/compiler/lib/Print.cpp b/src/compiler/lib/Print.cpp index 79549d05..ce7f63cd 100644 --- a/src/compiler/lib/Print.cpp +++ b/src/compiler/lib/Print.cpp @@ -441,11 +441,11 @@ namespace yask { // Comment about condition. // Null ptr => no condition. if (ee->getCond()) { - string cond = ee->getCond()->accept(this); + string cond = ee->getCond()->makeStr(); _os << " IF (" << cond << ")"; } if (ee->getStepCond()) { - string cond = ee->getStepCond()->accept(this); + string cond = ee->getStepCond()->makeStr(); _os << " IF_STEP (" << cond << ")"; } _os << ".\n"; diff --git a/src/compiler/lib/Visitor.hpp b/src/compiler/lib/Visitor.hpp index 3b65b215..fb3cd706 100644 --- a/src/compiler/lib/Visitor.hpp +++ b/src/compiler/lib/Visitor.hpp @@ -38,6 +38,8 @@ namespace yask { class ExprVisitor { protected: bool _visitEqualsLhs = false; // whether to visit LHS of EQUALS. + bool _visitGridPointArgs = false; // whether to visit exprs in grid point args. + bool _visitConds = false; // whether to visit conditional exprs. public: virtual ~ExprVisitor() { } @@ -46,7 +48,16 @@ namespace yask { virtual string visit(ConstExpr* ce) { return ""; } virtual string visit(CodeExpr* ce) { return ""; } virtual string visit(IndexExpr* ie) { return ""; } - virtual string visit(GridPoint* gp) { return ""; } // does NOT visit arg exprs by default. + + // Visit grid-point args only if flag is set. + virtual string visit(GridPoint* gp) { + string res; + if (_visitGridPointArgs) { + for (auto& arg : gp->getArgs()) + res = arg->accept(this); + } + return res; + } // By default, a unary visitor visits its operand. virtual string visit(UnaryNumExpr* ue) { @@ -88,14 +99,22 @@ namespace yask { res = ep->accept(this); return res; } - virtual string visit(EqualsExpr* ee) { - // Visit LHS if flag is set. + // Visit RHS of equals and LHS and conditions per flags. + virtual string visit(EqualsExpr* ee) { if (_visitEqualsLhs) ee->getLhs()->accept(this); + if (_visitConds) { + auto& cp = ee->getCond(); + if (cp) + cp->accept(this); + auto& scp = ee->getStepCond(); + if (scp) + scp->accept(this); + } + + // Always visit RHS. return ee->getRhs()->accept(this); - - // Conditions are not visited. } }; diff --git a/src/compiler/lib/YaskKernel.cpp b/src/compiler/lib/YaskKernel.cpp index ea5c1f8f..b127faef 100644 --- a/src/compiler/lib/YaskKernel.cpp +++ b/src/compiler/lib/YaskKernel.cpp @@ -557,7 +557,9 @@ namespace yask { os << " return " << eq->cond->makeStr() << ";\n"; else os << " return true; // full domain.\n"; - os << " }\n" + os << " }\n"; + + os << "\n // Return whether there is a sub-domain expression.\n" " virtual bool is_sub_domain_expr() const {\n" " return " << (eq->cond ? "true" : "false") << ";\n }\n"; @@ -573,16 +575,40 @@ namespace yask { // 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" + os << endl << " // Determine whether " << egsName << + " is valid at the step input_step_index.\n" << + " // Return true if valid or false otherwise.\n" " virtual bool is_in_valid_step(idx_t input_step_index) const final {\n"; - if (eq->step_cond) + if (eq->step_cond) { os << " idx_t " << _dims._stepDim << " = input_step_index;\n" - " return " << eq->step_cond->makeStr() << ";\n"; + "\n // " << eq->step_cond->makeStr() << "\n"; + + // C++ scalar print assistant. + CounterVisitor cv; + eq->step_cond->accept(&cv); + CppPrintHelper* sp = new CppPrintHelper(_settings, _dims, &cv, "temp", "real_t", " ", ";\n"); + + // Generate the code. + PrintVisitorTopDown pcv(os, *sp); + string expr = eq->step_cond->accept(&pcv); + os << " return " << expr << ";\n"; + } else os << " return true; // any step.\n"; os << " }\n"; + + os << "\n // Return whether there is a step-condition expression.\n" + " virtual bool is_step_cond_expr() const {\n" + " return " << (eq->step_cond ? "true" : "false") << + ";\n }\n"; + + os << "\n // Return human-readable description of step condition.\n" + " virtual std::string get_step_cond_description() const {\n"; + if (eq->step_cond) + os << " return \"" << eq->step_cond->makeStr() << "\";\n"; + else + os << " return \"true\"; // any step.\n"; + os << " }\n"; } // LHS step index. @@ -620,8 +646,8 @@ namespace yask { // C++ scalar print assistant. CounterVisitor cv; - eq->visitEqs(&cv); - CppPrintHelper* sp = new CppPrintHelper(_settings, _dims, &cv, "temp", "real_t", " ", ";\n"); + eq->visitEqs(&cv); + CppPrintHelper* sp = new CppPrintHelper(_settings, _dims, &cv, "temp", "real_t", " ", ";\n"); // Generate the code. PrintVisitorBottomUp pcv(os, *sp); diff --git a/src/kernel/lib/stencil_calc.cpp b/src/kernel/lib/stencil_calc.cpp index 4b50cb87..b89abf7b 100644 --- a/src/kernel/lib/stencil_calc.cpp +++ b/src/kernel/lib/stencil_calc.cpp @@ -817,6 +817,11 @@ namespace yask { " num reqd scratch bundles: " << (sg_list.size() - 1) << endl; // TODO: add info on scratch bundles here. + if (sg->is_sub_domain_expr()) + os << " sub-domain expr: '" << sg->get_domain_description() << "'\n"; + if (sg->is_step_cond_expr()) + os << " step-condition expr: '" << sg->get_step_cond_description() << "'\n"; + os << " bundle size (points): " << makeNumStr(bb.bb_size) << endl; if (bb.bb_size) { diff --git a/src/kernel/lib/stencil_calc.hpp b/src/kernel/lib/stencil_calc.hpp index 7695cf0d..ff756112 100644 --- a/src/kernel/lib/stencil_calc.hpp +++ b/src/kernel/lib/stencil_calc.hpp @@ -172,13 +172,17 @@ namespace yask { virtual bool is_in_valid_domain(const Indices& idxs) const =0; - // Return true if there is a non-default sub-domain expression. + // Return true if there is a non-default conditions. virtual bool is_sub_domain_expr() const { return false; } + virtual bool + is_step_cond_expr() const { return false; } - // Return human-readable description of sub-domain. + // Return human-readable description of conditions. virtual std::string get_domain_description() const =0; + virtual std::string + get_step_cond_description() const =0; // Determine whether step index is enabled. virtual bool diff --git a/src/stencils/SimpleTestStencils.cpp b/src/stencils/SimpleTestStencils.cpp index 826960f8..d278e979 100644 --- a/src/stencils/SimpleTestStencils.cpp +++ b/src/stencils/SimpleTestStencils.cpp @@ -518,50 +518,51 @@ class TestSubdomainStencil3 : public StencilRadiusBase { REGISTER_STENCIL(TestSubdomainStencil3); -class TestStepCondStencil1 : public StencilRadiusBase { +// Test step condition. +class TestStepCondStencil1 : public Test1dBase { protected: - // Indices & dimensions. - MAKE_STEP_INDEX(t); // step in time dim. - MAKE_DOMAIN_INDEX(x); // spatial dim. + // Indices. + MAKE_MISC_INDEX(b); // Vars. MAKE_GRID(A, t, x); // time-varying grid. + MAKE_ARRAY(B, b); public: TestStepCondStencil1(StencilList& stencils, int radius=2) : - StencilRadiusBase("test_step_cond_1d", stencils, radius) { } + Test1dBase("test_step_cond_1d", stencils, radius) { } // Define equation to apply to all points in 'A' grid. virtual void define() { // Time condition. Condition tc0 = (t % 2 == 0); + + // Var condition. + Condition vc0 = (B(0) > B(1)); - // Set A w/different stencils. + // Set A w/different stencils depending on the conditions. It is + // the programmer's responsibility to ensure that the conditions are + // exclusive when necessary. It is not checked at compile or + // run-time. - GridValue u = A(t, x); - for (int r = 1; r <= _radius; r++) - u += A(t, x-r); - for (int r = 1; r <= _radius + 1; r++) - u += A(t, x+r); - A(t+1, x) EQUALS u / (_radius * 2 + 2) IF_STEP tc0; + // Use this equation when t is even. + A(t+1, x) EQUALS def_1d(A, t, x, 0, 0) IF_STEP tc0; - GridValue v = A(t, x); - for (int r = 1; r <= _radius + 3; r++) - v += A(t, x-r); - for (int r = 1; r <= _radius + 2; r++) - v += A(t, x+r); - A(t+1, x) EQUALS v / (_radius * 2 + 6) IF_STEP !tc0; + // Use this equation when t is odd and B(0) > B(1). + A(t+1, x) EQUALS def_1d(A, t, x, 1, 2) IF_STEP !tc0 && vc0; + + // Use this equation when t is even and B(0) <= B(1). + A(t+1, x) EQUALS def_1d(A, t, x, 2, 3) IF_STEP !tc0 && !vc0; } }; REGISTER_STENCIL(TestStepCondStencil1); // Test the use of conditional updates with scratch-pad grids. - class TestScratchSubdomainStencil1 : public Test1dBase { protected: From ba439ad604307f273b6ec87708b528738fb6ccc1 Mon Sep 17 00:00:00 2001 From: "chuck.yount" Date: Thu, 17 Jan 2019 08:34:36 -0800 Subject: [PATCH 2/8] Add 'trace' and 'trace_mem' make vars. --- src/kernel/Makefile | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/kernel/Makefile b/src/kernel/Makefile index 0ea0f25a..27c43920 100644 --- a/src/kernel/Makefile +++ b/src/kernel/Makefile @@ -417,10 +417,16 @@ ifneq ($(filter -O0,$(YK_CXXOPT)),) check ?= 1 endif -# Turn on checking macro. +# Turn on debug macros. ifeq ($(check),1) MACROS += CHECK endif +ifeq ($(trace),1) + MACROS += TRACE +endif +ifeq ($(trace_mem),1) + MACROS += TRACE_MEM +endif # Set MACROS based on individual makefile vars. MACROS += PFD_L1=$(pfd_l1) PFD_L2=$(pfd_l2) @@ -1008,8 +1014,8 @@ help: echo " "; \ echo "Example debug builds of kernel cmd-line tool:"; \ echo " $(MAKE) clean; $(MAKE) -j stencil=iso3dfd mpi=0 OMPFLAGS='-qopenmp-stubs' YK_CXXOPT='-O0' check=1 # No OpenMP or MPI, internal checking"; \ - echo " $(MAKE) clean; $(MAKE) -j arch=intel64 stencil=test_2d mpi=0 OMPFLAGS='-qopenmp-stubs' YK_CXXOPT='-O0' check=1 EXTRA_MACROS='TRACE' # TRACE is a useful debug setting!"; \ - echo " $(MAKE) clean; $(MAKE) -j arch=intel64 stencil=3axis radius=0 fold='x=1,y=1,z=1' mpi=0 YK_CXX=g++ OMPFLAGS='' YK_CXXOPT='-O0' check=1 EXTRA_MACROS='TRACE TRACE_MEM TRACE_INTRINSICS'"; \ + echo " $(MAKE) clean; $(MAKE) -j arch=intel64 stencil=test_2d mpi=0 OMPFLAGS='-qopenmp-stubs' YK_CXXOPT='-O0' check=1 trace=1 # trace is a useful debug setting!"; \ + echo " $(MAKE) clean; $(MAKE) -j arch=intel64 stencil=3axis radius=0 fold='x=1,y=1,z=1' mpi=0 YK_CXX=g++ OMPFLAGS='' YK_CXXOPT='-O0' check=1 trace=1 trace_mem=1" echo " "; \ echo "Example builds with test runs:"; \ echo " $(MAKE) -j all # Normal full API and stencil tests"; \ From 99d2b97350e3366312e502513ba5e98fb18ca2a7 Mon Sep 17 00:00:00 2001 From: "chuck.yount" Date: Thu, 17 Jan 2019 08:35:09 -0800 Subject: [PATCH 3/8] Fix bug in 'get_{first,last}_rank_halo_index' APIs. --- src/kernel/lib/grid_apis.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/kernel/lib/grid_apis.cpp b/src/kernel/lib/grid_apis.cpp index 1b677d0b..f08359c0 100644 --- a/src/kernel/lib/grid_apis.cpp +++ b/src/kernel/lib/grid_apis.cpp @@ -63,8 +63,8 @@ namespace yask { GET_GRID_API(get_alloc_size, _allocs[posn], true, true, true, false) GET_GRID_API(get_first_rank_domain_index, _rank_offsets[posn], false, true, false, true) GET_GRID_API(get_last_rank_domain_index, _rank_offsets[posn] + _domains[posn] - 1, false, true, false, true) - GET_GRID_API(get_first_rank_halo_index, _rank_offsets[posn] - _left_halos[posn], false, false, true, true) - GET_GRID_API(get_last_rank_halo_index, _rank_offsets[posn] + _domains[posn] + _right_halos[posn] - 1, false, false, true, true) + GET_GRID_API(get_first_rank_halo_index, _rank_offsets[posn] - _left_halos[posn], false, true, false, true) + GET_GRID_API(get_last_rank_halo_index, _rank_offsets[posn] + _domains[posn] + _right_halos[posn] - 1, false, true, false, true) GET_GRID_API(get_first_rank_alloc_index, _rank_offsets[posn] + _local_offsets[posn] - _actl_left_pads[posn], false, true, false, true) GET_GRID_API(get_last_rank_alloc_index, _rank_offsets[posn] + _local_offsets[posn] + _domains[posn] + _actl_right_pads[posn] - 1, false, true, false, true) GET_GRID_API(_get_left_wf_ext, _left_wf_exts[posn], true, true, true, false) From 0e717b3a37e0b96ab38da2a07430292d264da586 Mon Sep 17 00:00:00 2001 From: "chuck.yount" Date: Thu, 17 Jan 2019 08:42:53 -0800 Subject: [PATCH 4/8] Remove debug msg. --- src/compiler/lib/Eqs.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/compiler/lib/Eqs.cpp b/src/compiler/lib/Eqs.cpp index 4ba34aad..c4c84425 100644 --- a/src/compiler/lib/Eqs.cpp +++ b/src/compiler/lib/Eqs.cpp @@ -552,8 +552,6 @@ namespace yask { virtual string visit(GridPoint* gp) { auto* grid = gp->getGrid(); - cout << "** SetVecVisitor at " << gp->makeStr() << endl; - // Never vectorize scalars. if (grid->get_num_dims() == 0) { gp->setVecType(GridPoint::VEC_NONE); From 262052e51001ad35a36b332c50758f7b4778ea34 Mon Sep 17 00:00:00 2001 From: "chuck.yount" Date: Thu, 17 Jan 2019 08:43:26 -0800 Subject: [PATCH 5/8] Improve checking in API tests. --- .../tests/yask_kernel_api_exception_test.py | 2 +- src/kernel/tests/yask_kernel_api_test.cpp | 54 ++++-- src/kernel/tests/yask_kernel_api_test.py | 166 +++++++++--------- 3 files changed, 120 insertions(+), 102 deletions(-) diff --git a/src/kernel/tests/yask_kernel_api_exception_test.py b/src/kernel/tests/yask_kernel_api_exception_test.py index a48086ba..f2ab9c1b 100755 --- a/src/kernel/tests/yask_kernel_api_exception_test.py +++ b/src/kernel/tests/yask_kernel_api_exception_test.py @@ -339,7 +339,7 @@ def init_grid(grid, timestep) : print("Running the solution for 10 more steps...") soln.run_solution(1, 10) - # Print final result at timestep 11. + # Print final result at timestep 11, assuming update was to t+1. for grid in soln.get_grids() : read_grid(grid, 11) diff --git a/src/kernel/tests/yask_kernel_api_test.cpp b/src/kernel/tests/yask_kernel_api_test.cpp index 80e1074b..f1167018 100644 --- a/src/kernel/tests/yask_kernel_api_test.cpp +++ b/src/kernel/tests/yask_kernel_api_test.cpp @@ -113,19 +113,35 @@ int main() { // Print out some info about the grids and init their data. for (auto grid : soln->get_grids()) { - os << " " << grid->get_name() << "("; - for (auto dname : grid->get_dim_names()) - os << " '" << dname << "'"; - os << " )\n"; + os << " grid-var '" << grid->get_name() << ":\n"; for (auto dname : grid->get_dim_names()) { + os << " '" << dname << "' dim:\n"; + os << " alloc-size on this rank: " << + grid->get_alloc_size(dname) << endl; + + // Is this a domain dim? if (domain_dim_set.count(dname)) { - os << " '" << dname << "' domain index range on this rank: " << + os << " domain index range on this rank: " << grid->get_first_rank_domain_index(dname) << " ... " << grid->get_last_rank_domain_index(dname) << endl; - os << " '" << dname << "' allowed index range on this rank: " << + os << " domain+halo index range on this rank: " << + grid->get_first_rank_halo_index(dname) << " ... " << + grid->get_last_rank_halo_index(dname) << endl; + os << " allowed index range on this rank: " << grid->get_first_rank_alloc_index(dname) << " ... " << grid->get_last_rank_alloc_index(dname) << endl; } + + // Step dim? + else if (dname == soln->get_step_dim_name()) { + } + + // Misc dim? + else { + os << " misc index range: " << + grid->get_first_misc_index(dname) << " ... " << + grid->get_last_misc_index(dname) << endl; + } } // First, just init all the elements to the same value. @@ -138,35 +154,39 @@ int main() { // Create indices describing a subset of the overall domain. vector first_indices, last_indices; for (auto dname : grid->get_dim_names()) { + idx_t first_idx = 0, last_idx = 0; // Is this a domain dim? if (domain_dim_set.count(dname)) { // Set indices to create a small cube (assuming 3D) // in center of overall problem. + // Using global indices. idx_t psize = soln->get_overall_domain_size(dname); - idx_t first_idx = psize/2 - 30; - idx_t last_idx = psize/2 + 30; - first_indices.push_back(first_idx); - last_indices.push_back(last_idx); + first_idx = psize/2 - 30; + last_idx = psize/2 + 30; } // Step dim? else if (dname == soln->get_step_dim_name()) { - // Add indices for timestep zero (0) only. - first_indices.push_back(0); - last_indices.push_back(0); + // Set indices for one time-step. + first_idx = 0; + last_idx = 0; } // Misc dim? else { - // Add indices to set all allowed values. - // (This isn't really meaningful; it's just illustrative.) - first_indices.push_back(grid->get_first_misc_index(dname)); - last_indices.push_back(grid->get_last_misc_index(dname)); + // Set indices to set all allowed values. + first_idx = grid->get_first_misc_index(dname); + last_idx = grid->get_last_misc_index(dname); + assert(last_idx - first_idx + 1 == grid->get_alloc_size(dname)); } + + // Add indices to index vectors. + first_indices.push_back(first_idx); + last_indices.push_back(last_idx); } // Init the values using the indices created above. diff --git a/src/kernel/tests/yask_kernel_api_test.py b/src/kernel/tests/yask_kernel_api_test.py index f2341b08..2c74fdf9 100755 --- a/src/kernel/tests/yask_kernel_api_test.py +++ b/src/kernel/tests/yask_kernel_api_test.py @@ -30,58 +30,69 @@ import argparse import yask_kernel as yk -# Read data from grid using NumPy ndarray. -def read_grid(grid, timestep) : - - # Ignore with fixed-sized grids. - if grid.is_fixed_size(): - return - - print("Reading grid '" + grid.get_name() + "' at time " + repr(timestep) + "...") +# Prepare an NymPy ndarray to hold a slice of 'grid'. +def make_ndarray(grid, timestep) : # Create indices for YASK and shape for NumPy. first_indices = [] last_indices = [] shape = [] + point = () nelems = 1 for dname in grid.get_dim_names() : if dname == soln.get_step_dim_name() : - # Read one timestep only. - # So, we don't need to add a time axis in 'shape'. - first_indices += [timestep] - last_indices += [timestep] + # Slice in requested time. + first_idx = timestep + last_idx = timestep # Domain dim? elif dname in soln.get_domain_dim_names() : - # Full domain in this rank. - first_idx = soln.get_first_rank_domain_index(dname) - last_idx = soln.get_last_rank_domain_index(dname) - - # Read one point in the halo, too. - first_idx -= 1 - last_idx += 1 - - first_indices += [first_idx] - last_indices += [last_idx] - shape += [last_idx - first_idx + 1] - nelems *= last_idx - first_idx + 1 + # Cover full alloc in this rank. + first_idx = grid.get_first_rank_alloc_index(dname) + last_idx = grid.get_last_rank_alloc_index(dname) # Misc dim? else : - # Read first index only. - first_indices += [grid.get_first_misc_index(dname)] - last_indices += [grid.get_first_misc_index(dname)] + # Cover all misc values. + first_idx = grid.get_first_misc_index(dname) + last_idx = grid.get_last_misc_index(dname) + + # Add indices to API vars. + first_indices += [first_idx] + last_indices += [last_idx] + ne = last_idx - first_idx + 1 + shape += [ne] + nelems *= ne + + # Define first point in ndarray. + point += (0, ) # Create a NumPy ndarray to hold the extracted data. - ndarray1 = np.empty(shape, dtype, 'C'); + print("Creating a NumPy ndarray with shape " + repr(shape) + " and " + + repr(nelems) + " element(s)...") + ndarray = np.zeros(shape, dtype, 'C'); + return ndarray, first_indices, last_indices, point - print("Reading " + repr(nelems) + " element(s)...") - nread = grid.get_elements_in_slice(ndarray1.data, first_indices, last_indices) - print(ndarray1) +# Read data from grid using NumPy ndarray. +def read_grid(grid, timestep) : + + # Ignore with fixed-sized grids. + if grid.is_fixed_size(): + return + print("Testing reading grid '" + grid.get_name() + "' at time " + repr(timestep) + "...") + ndarray, first_indices, last_indices, point = make_ndarray(grid, timestep) + + print("Reading 1 element...") + val1 = grid.get_element(first_indices) + print("Read value " + repr(val1)) + + print("Reading all element(s) in ndarray...") + nread = grid.get_elements_in_slice(ndarray.data, first_indices, last_indices) + print(ndarray) # Raw access to this grid. if soln.get_element_bytes() == 4 : @@ -92,66 +103,53 @@ def read_grid(grid, timestep) : fp_ptr = ct.cast(int(raw_ptr), ptype) num_elems = grid.get_num_storage_elements() print("Raw data: " + repr(fp_ptr[0]) + ", ..., " + repr(fp_ptr[num_elems-1])) - #ndarray2 = np.fromiter(fp_ptr, dtype, num_elems); print(ndarray2) # Init grid using NumPy ndarray. def init_grid(grid, timestep) : print("Initializing grid '" + grid.get_name() + "' at time " + repr(timestep) + "...") - - # Create indices for YASK, shape & point for NumPy. - first_indices = [] - last_indices = [] - shape = [] - point = () - nelems = 1 - for dname in grid.get_dim_names() : - - if dname == soln.get_step_dim_name() : - - # Write one timestep only. - # So, we don't need to add a time axis in 'shape'. - first_indices += [timestep] - last_indices += [timestep] - - # Domain dim? - elif dname in soln.get_domain_dim_names() : - - # Full domain in this rank. - first_idx = soln.get_first_rank_domain_index(dname) - last_idx = soln.get_last_rank_domain_index(dname) - - # Write one point in the halo, too. - first_idx -= 1 - last_idx += 1 - - first_indices += [first_idx] - last_indices += [last_idx] - shape += [last_idx - first_idx + 1] - nelems *= last_idx - first_idx + 1 - - # Since the array covers one layer of points in the halo - # starting at 0,..,0, 1,..,1 is the first point in the - # computable domain. - point += (1,) - - # Misc dim? - else : - - # Write first index only. - first_indices += [grid.get_first_misc_index(dname)] - last_indices += [grid.get_first_misc_index(dname)] - - # Create a NumPy ndarray to hold the data. - ndarray = np.zeros(shape, dtype, 'C'); + ndarray, first_indices, last_indices, point = make_ndarray(grid, timestep) # Set one point to a non-zero value. - ndarray[point] = 21.0; + val1 = 21.0 + ndarray[point] = val1 print(ndarray) - print("Writing " + repr(nelems) + " element(s)...") + print("Setting grid from all element(s) in ndarray...") nset = grid.set_elements_in_slice(ndarray.data, first_indices, last_indices) print("Set " + repr(nset) + " element(s) in rank " + repr(env.get_rank_index())) + # Check that set worked. + print("Reading those element(s)...") + val2 = grid.get_element(first_indices) + assert val2 == val1 + val2 = grid.get_element(last_indices) + if nset > 1 : + assert val2 == 0.0 + else : + assert val2 == val1 # Only 1 val => first == last. + ndarray2 = ndarray + ndarray2.fill(5.0) + nread = grid.get_elements_in_slice(ndarray2.data, first_indices, last_indices) + assert nread == ndarray2.size + assert ndarray2[point] == val1 + assert ndarray2.sum() == val1 # One point is val1; others are zero. + + # Test element set. + print("Testing setting 1 point at " + repr(last_indices) + "...") + val1 += 1.0 + nset = grid.set_element(val1, last_indices); + assert nset == 1 + val2 = grid.get_element(last_indices) + assert val2 == val1 + + # Test add. + val3 = 2.0 + print("Testing adding to 1 point at " + repr(last_indices) + "...") + nset = grid.add_to_element(val3, last_indices); + assert nset == 1 + val2 = grid.get_element(last_indices) + assert val2 == val1 + val3 + # Main script. if __name__ == "__main__": @@ -242,8 +240,9 @@ def init_grid(grid, timestep) : continue # Init timestep 0 using NumPy. - # This will set one point in each rank. init_grid(grid, 0) + + # Print out the values. read_grid(grid, 0) # Simple one-index example. @@ -302,9 +301,8 @@ def init_grid(grid, timestep) : nset = grid.set_elements_in_slice_same(0.5, first_indices, last_indices) print("Set " + repr(nset) + " element(s) in rank " + repr(env.get_rank_index())) - # Print the initial contents of the grid at timesteps 0 and 1. + # Print the initial contents of the grid. read_grid(grid, 0) - read_grid(grid, 1) # Apply the stencil solution to the data. env.global_barrier() @@ -318,7 +316,7 @@ def init_grid(grid, timestep) : print("Running the solution for 10 more steps...") soln.run_solution(1, 10) - # Print final result at timestep 11. + # Print final result at timestep 11, assuming update was to t+1. for grid in soln.get_grids() : read_grid(grid, 11) From c6f3050d748a76040781b89ab7c835cd73672deb Mon Sep 17 00:00:00 2001 From: "chuck.yount" Date: Thu, 24 Jan 2019 08:14:51 -0800 Subject: [PATCH 6/8] Refactor sharing of solution meta-data between objects, allowing grids to outlive solution objects. Needed for reliable object lifetime-management in Devito. --- src/compiler/lib/Expr.cpp | 2 +- src/compiler/lib/Expr.hpp | 6 - src/compiler/lib/Soln.hpp | 3 +- src/compiler/lib/YaskKernel.cpp | 20 +- src/kernel/Makefile | 2 +- src/kernel/lib/alloc.cpp | 44 +- src/kernel/lib/auto_tuner.cpp | 72 ++-- src/kernel/lib/auto_tuner.hpp | 23 +- src/kernel/lib/context.cpp | 90 ++--- src/kernel/lib/context.hpp | 225 ++--------- src/kernel/lib/generic_grids.cpp | 24 +- src/kernel/lib/generic_grids.hpp | 98 ++--- src/kernel/lib/grid_apis.cpp | 15 +- src/kernel/lib/indices.hpp | 404 +++++++++++++++++++ src/kernel/lib/new_grid.cpp | 53 +-- src/kernel/lib/realv_grids.cpp | 41 +- src/kernel/lib/realv_grids.hpp | 61 ++- src/kernel/lib/settings.cpp | 105 ++++- src/kernel/lib/settings.hpp | 671 +++++++++++-------------------- src/kernel/lib/setup.cpp | 178 ++++---- src/kernel/lib/soln_apis.cpp | 85 ++-- src/kernel/lib/stencil_calc.cpp | 48 +-- src/kernel/lib/stencil_calc.hpp | 43 +- src/kernel/lib/yask.hpp | 11 +- src/kernel/lib/yask_stencil.hpp | 1 + src/kernel/tests/grid_test.cpp | 8 +- utils/bin/gen_layouts.pl | 4 +- 27 files changed, 1221 insertions(+), 1116 deletions(-) create mode 100644 src/kernel/lib/indices.hpp diff --git a/src/compiler/lib/Expr.cpp b/src/compiler/lib/Expr.cpp index 91a90871..aa685a61 100644 --- a/src/compiler/lib/Expr.cpp +++ b/src/compiler/lib/Expr.cpp @@ -749,7 +749,7 @@ namespace yask { } string GridPoint::getGridPtr() const { string gname = _grid->getName(); - string expr = "static_cast<_context_type::" + gname + "_type*>(_context->" + gname; + string expr = "static_cast<_context_type::" + gname + "_type*>(_context_data->" + gname; if (_grid->isScratch()) expr += "_list[region_thread_idx].get()"; expr += ")"; diff --git a/src/compiler/lib/Expr.hpp b/src/compiler/lib/Expr.hpp index 98e7eb40..e31bcab7 100644 --- a/src/compiler/lib/Expr.hpp +++ b/src/compiler/lib/Expr.hpp @@ -1205,12 +1205,6 @@ namespace yask { // - A variable within the global or current namespace where it will be used. // - A local variable in the 'value' method; in this case, the value // of the local var must be evaluated and inserted in the expr. - // Example code: - // GridValue v; - // SET_VALUE_FROM_EXPR(v =, "_context->temp * " << 0.2); - // SET_VALUE_FROM_EXPR(v +=, "_context->coeff[" << r << "]"); - // This example would generate the following partial expression (when r=9): - // (_context->temp * 2.00000000000000000e-01) + (_context->coeff[9]) #define SET_VALUE_FROM_EXPR(lhs, rhs) do { \ ostringstream oss; \ oss << setprecision(15) << scientific; \ diff --git a/src/compiler/lib/Soln.hpp b/src/compiler/lib/Soln.hpp index 736c0c0a..e07d3979 100644 --- a/src/compiler/lib/Soln.hpp +++ b/src/compiler/lib/Soln.hpp @@ -91,7 +91,8 @@ namespace yask { StencilSolution(const string& name) : _name(name) { yask_output_factory ofac; - set_debug_output(ofac.new_stdout_output()); + auto so = ofac.new_stdout_output(); + set_debug_output(so); } virtual ~StencilSolution() {} diff --git a/src/compiler/lib/YaskKernel.cpp b/src/compiler/lib/YaskKernel.cpp index b127faef..9d2d0e81 100644 --- a/src/compiler/lib/YaskKernel.cpp +++ b/src/compiler/lib/YaskKernel.cpp @@ -336,7 +336,7 @@ namespace yask { ctorCode += " " + grid + "_dim_names = {" + gdims.makeDimStr(", ", "\"", "\"") + "};\n"; string initCode = " " + grid + "_ptr = std::make_shared<" + typeDef + - ">(_dims, \"" + grid + "\", " + grid + "_dim_names, &_opts, &_ostr);\n" + ">(*this, \"" + grid + "\", " + grid + "_dim_names);\n" " assert(" + grid + "_ptr);\n"; // Grid vars. @@ -448,7 +448,7 @@ namespace yask { if (!firstGrid) newGridCode += " else"; newGridCode += " if (dims == " + grid + "_dim_names) gp = std::make_shared<" + - typeDef + ">(_dims, name, dims, &_opts, &_ostr);\n"; + typeDef + ">(*this, name, dims);\n"; } } // grids. @@ -503,7 +503,7 @@ namespace yask { "\n class " << egsName << " : public StencilBundleBase {\n" " protected:\n" " typedef " << _context_base << " _context_type;\n" - " _context_type* _context = 0;\n" + " _context_type* _context_data = 0;\n" " public:\n"; // Stats for this eqBundle. @@ -518,7 +518,7 @@ namespace yask { { os << " " << egsName << "(" << _context_base << "* context) :\n" " StencilBundleBase(context),\n" - " _context(context) {\n" + " _context_data(context) {\n" " _name = \"" << egName << "\";\n" " _scalar_fp_ops = " << stats.getNumOps() << ";\n" " _scalar_points_read = " << stats.getNumReads() << ";\n" @@ -529,9 +529,9 @@ namespace yask { os << "\n // The following grid(s) are read by " << egsName << endl; for (auto gp : eq->getInputGrids()) { if (gp->isScratch()) - os << " inputScratchVecs.push_back(&_context->" << gp->getName() << "_list);\n"; + os << " inputScratchVecs.push_back(&_context_data->" << gp->getName() << "_list);\n"; else - os << " inputGridPtrs.push_back(_context->" << gp->getName() << "_ptr);\n"; + os << " inputGridPtrs.push_back(_context_data->" << gp->getName() << "_ptr);\n"; } os << "\n // The following grid(s) are written by " << egsName; if (eq->step_expr) @@ -539,9 +539,9 @@ namespace yask { os << ".\n"; for (auto gp : eq->getOutputGrids()) { if (gp->isScratch()) - os << " outputScratchVecs.push_back(&_context->" << gp->getName() << "_list);\n"; + os << " outputScratchVecs.push_back(&_context_data->" << gp->getName() << "_list);\n"; else - os << " outputGridPtrs.push_back(_context->" << gp->getName() << "_ptr);\n"; + os << " outputGridPtrs.push_back(_context_data->" << gp->getName() << "_ptr);\n"; } os << " } // Ctor." << endl; } @@ -849,8 +849,8 @@ namespace yask { if (bp->isScratch()) continue; string bpName = bp->getName(); - os << " auto " << bpName << " = std::make_shared(\"" << - bpName << "\", this);\n"; + os << " auto " << bpName << " = std::make_shared(this, \"" << + bpName << "\");\n"; for (auto& eg : bp->getBundles()) { if (eg->isScratch()) continue; diff --git a/src/kernel/Makefile b/src/kernel/Makefile index 27c43920..d3e07e43 100644 --- a/src/kernel/Makefile +++ b/src/kernel/Makefile @@ -1015,7 +1015,7 @@ help: echo "Example debug builds of kernel cmd-line tool:"; \ echo " $(MAKE) clean; $(MAKE) -j stencil=iso3dfd mpi=0 OMPFLAGS='-qopenmp-stubs' YK_CXXOPT='-O0' check=1 # No OpenMP or MPI, internal checking"; \ echo " $(MAKE) clean; $(MAKE) -j arch=intel64 stencil=test_2d mpi=0 OMPFLAGS='-qopenmp-stubs' YK_CXXOPT='-O0' check=1 trace=1 # trace is a useful debug setting!"; \ - echo " $(MAKE) clean; $(MAKE) -j arch=intel64 stencil=3axis radius=0 fold='x=1,y=1,z=1' mpi=0 YK_CXX=g++ OMPFLAGS='' YK_CXXOPT='-O0' check=1 trace=1 trace_mem=1" + echo " $(MAKE) clean; $(MAKE) -j arch=intel64 stencil=3axis radius=0 fold='x=1,y=1,z=1' mpi=0 YK_CXX=g++ OMPFLAGS='' YK_CXXOPT='-O0' check=1 trace=1 trace_mem=1"; \ echo " "; \ echo "Example builds with test runs:"; \ echo " $(MAKE) -j all # Normal full API and stencil tests"; \ diff --git a/src/kernel/lib/alloc.cpp b/src/kernel/lib/alloc.cpp index 9b5d87ae..833bad3e 100644 --- a/src/kernel/lib/alloc.cpp +++ b/src/kernel/lib/alloc.cpp @@ -55,7 +55,7 @@ namespace yask { const map & ngrids, map >& data_buf, const std::string& type) { - CONTEXT_VARS(this); + STATE_VARS(this); // Loop through each mem type. for (const auto& i : nbytes) { @@ -119,7 +119,7 @@ namespace yask { // Allocate memory for grids that do not already have storage. void StencilContext::allocGridData() { - CONTEXT_VARS(this); + STATE_VARS(this); // Allocate I/O grids before read-only grids. GridPtrs sortedGridPtrs; @@ -231,7 +231,7 @@ namespace yask { // Determine the size and shape of all MPI buffers. // Create buffers and allocate them. void StencilContext::allocMpiData() { - CONTEXT_VARS(this); + STATE_VARS(this); // Remove any old MPI data. env->global_barrier(); @@ -245,11 +245,11 @@ namespace yask { map num_exchanges; // send/recv => count. map num_elems; // send/recv => count. - auto me = _env->my_rank; + auto me = env->my_rank; // Need to determine the size and shape of all MPI buffers. // Loop thru all neighbors of this rank. - _mpiInfo->visitNeighbors + mpiInfo->visitNeighbors ([&](const IdxTuple& neigh_offsets, int neigh_rank, int neigh_idx) { if (neigh_rank == MPI_PROC_NULL) return; // from lambda fn. @@ -269,7 +269,7 @@ namespace yask { maxdist = NUM_STENCIL_DIMS - 1; // Manhattan dist. of current neighbor. - int mandist = _mpiInfo->man_dists.at(neigh_idx); + int mandist = mpiInfo->man_dists.at(neigh_idx); // Check distance. if (mandist > maxdist) { @@ -282,8 +282,8 @@ namespace yask { // Both my rank and neighbor rank must have *all* domain sizes // of vector multiples. bool vec_ok = allow_vec_exchange && - _mpiInfo->has_all_vlen_mults[_mpiInfo->my_neighbor_index] && - _mpiInfo->has_all_vlen_mults[neigh_idx]; + mpiInfo->has_all_vlen_mults[mpiInfo->my_neighbor_index] && + mpiInfo->has_all_vlen_mults[neigh_idx]; // Determine size of MPI buffers between neigh_rank and my // rank for each grid and create those that are needed. It @@ -306,7 +306,7 @@ namespace yask { IdxTuple my_halo_sizes, neigh_halo_sizes; IdxTuple first_inner_idx, last_inner_idx; IdxTuple first_outer_idx, last_outer_idx; - for (auto& dim : _dims->_domain_dims.getDims()) { + for (auto& dim : domain_dims.getDims()) { auto& dname = dim.getName(); // Only consider domain dims that are used in this grid. @@ -324,9 +324,9 @@ namespace yask { 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_first_rank(dname)) + if (opts->is_first_rank(dname)) fidx -= lhalo; // extend into left halo. - if (_opts->is_last_rank(dname)) + if (opts->is_last_rank(dname)) lidx += rhalo; // extend into right halo. first_outer_idx.addDimBack(dname, fidx); last_outer_idx.addDimBack(dname, lidx); @@ -414,7 +414,7 @@ namespace yask { // to be so. // TODO: add a heuristic to avoid increasing by a large factor. if (grid_vec_ok) { - for (auto& dim : _dims->_domain_dims.getDims()) { + for (auto& dim : domain_dims.getDims()) { auto& dname = dim.getName(); if (gp->is_dim_used(dname)) { auto vlen = gp->_get_vec_len(dname); @@ -448,7 +448,7 @@ namespace yask { IdxTuple copy_end = gp->get_allocs(); // one past last! // Adjust along domain dims in this grid. - for (auto& dim : _dims->_domain_dims.getDims()) { + for (auto& dim : domain_dims.getDims()) { auto& dname = dim.getName(); if (gp->is_dim_used(dname)) { @@ -480,7 +480,7 @@ namespace yask { // Adjust LHS of interior. idx_t ext_end = ROUND_UP(first_inner_idx[dname] + max(min_ext, neigh_halo_sizes[dname]), - _dims->_fold_pts[dname]); + dims->_fold_pts[dname]); mpi_interior.bb_begin[dname] = max(mpi_interior.bb_begin[dname], ext_end); } @@ -495,7 +495,7 @@ namespace yask { // Adjust RHS of interior. idx_t ext_begin = ROUND_DOWN(last_inner_idx[dname] + 1 - max(min_ext, neigh_halo_sizes[dname]), - _dims->_fold_pts[dname]); + dims->_fold_pts[dname]); mpi_interior.bb_end[dname] = min(mpi_interior.bb_end[dname], ext_begin); } @@ -538,7 +538,7 @@ namespace yask { idx_t dsize = 1; // domain dim? - if (_dims->_domain_dims.lookup(dname)) { + if (domain_dims.lookup(dname)) { dsize = copy_end[dname] - copy_begin[dname]; // Check whether alignment and size are multiple of vlen. @@ -600,7 +600,7 @@ namespace yask { IdxTuple copy_last = copy_end.subElements(1); // Make MPI data entry for this grid. - auto gbp = mpiData.emplace(gname, _mpiInfo); + auto gbp = mpiData.emplace(gname, state->_mpiInfo); auto& gbi = gbp.first; // iterator from pair returned by emplace(). auto& gbv = gbi->second; // value from iterator. auto& buf = gbv.getBuf(MPIBufs::BufDir(bd), neigh_offsets); @@ -793,7 +793,7 @@ namespace yask { // Allocate memory for scratch grids based on number of threads and // block sizes. void StencilContext::allocScratchData() { - CONTEXT_VARS(this); + STATE_VARS(this); // Remove any old scratch data. freeScratchData(); @@ -815,7 +815,7 @@ namespace yask { // Find the max mini-block size across all packs. // They can be different across packs when pack-specific // auto-tuning has been used. - IdxTuple mblksize(_dims->_domain_dims); + IdxTuple mblksize(domain_dims); for (auto& sp : stPacks) { auto& psettings = sp->getActiveSettings(); DOMAIN_VAR_LOOP(i, j) { @@ -851,7 +851,7 @@ namespace yask { int numa_pref = gp->get_numa_preferred(); // Loop through each domain dim. - for (auto& dim : _dims->_domain_dims.getDims()) { + for (auto& dim : domain_dims.getDims()) { auto& dname = dim.getName(); if (gp->is_dim_used(dname)) { @@ -866,8 +866,8 @@ namespace yask { // Pads. // Set via both 'extra' and 'min'; larger result will be used. - gp->set_extra_pad_size(dname, _opts->_extra_pad_sizes[dname]); - gp->set_min_pad_size(dname, _opts->_min_pad_sizes[dname]); + gp->set_extra_pad_size(dname, opts->_extra_pad_sizes[dname]); + gp->set_min_pad_size(dname, opts->_min_pad_sizes[dname]); } } // dims. diff --git a/src/kernel/lib/auto_tuner.cpp b/src/kernel/lib/auto_tuner.cpp index 1dfbd4ed..452873d8 100644 --- a/src/kernel/lib/auto_tuner.cpp +++ b/src/kernel/lib/auto_tuner.cpp @@ -31,11 +31,24 @@ using namespace std; namespace yask { + // Ctor. + AutoTuner::AutoTuner(StencilContext* context, + KernelSettings* settings, + const std::string& name) : + ContextLinker(context), + _settings(settings), + _name("auto-tuner") { + assert(settings); + if (name.length()) + _name += "(" + name + ")"; + } + // Eval auto-tuner for given number of steps. void StencilContext::eval_auto_tuner(idx_t num_steps) { + STATE_VARS(this); _at.steps_done += num_steps; - if (_use_pack_tuners) { + if (state->_use_pack_tuners) { for (auto& sp : stPacks) sp->getAT().eval(); } @@ -52,8 +65,9 @@ namespace yask { // Determine if any auto tuners are running. bool StencilContext::is_auto_tuner_enabled() const { + STATE_VARS(this); bool done = true; - if (_use_pack_tuners) { + if (state->_use_pack_tuners) { for (auto& sp : stPacks) if (!sp->getAT().is_done()) done = false; @@ -65,7 +79,7 @@ namespace yask { // Apply auto-tuning immediately, i.e., not as part of normal processing. // Will alter data in grids. void StencilContext::run_auto_tuner_now(bool verbose) { - CONTEXT_VARS(this); + STATE_VARS(this); if (!rank_bb.bb_valid) THROW_YASK_EXCEPTION("Error: run_auto_tuner_now() called without calling prepare_solution() first"); @@ -90,7 +104,7 @@ namespace yask { // Determine number of steps to run. // If wave-fronts are enabled, run a max number of these steps. - idx_t step_dir = _dims->_step_dir; // +/- 1. + idx_t step_dir = dims->_step_dir; // +/- 1. idx_t step_t = min(max(wf_steps, idx_t(1)), +AutoTuner::max_step_t) * step_dir; // Run time-steps until AT converges. @@ -106,7 +120,7 @@ namespace yask { // Wait for all ranks to finish. os << "Waiting for auto-tuner to converge on all ranks...\n"; - _env->global_barrier(); + env->global_barrier(); // reenable normal operation. #ifndef NO_HALO_EXCHANGE @@ -118,7 +132,7 @@ namespace yask { at_timer.stop(); os << "Auto-tuner done after " << steps_done << " step(s) in " << at_timer.get_elapsed_secs() << " secs.\n"; - if (_use_pack_tuners) { + if (state->_use_pack_tuners) { for (auto& sp : stPacks) sp->getAT().print_settings(os); } else @@ -142,9 +156,8 @@ namespace yask { // Reset the auto-tuner. void AutoTuner::clear(bool mark_done, bool verbose) { + STATE_VARS(this); - // Output. - ostream& os = _context->get_ostr(); #ifdef TRACE this->verbose = true; #else @@ -176,15 +189,14 @@ namespace yask { steps_done = 0; // Set min blocks to number of region threads. - min_blks = _context->set_region_threads(); + min_blks = set_region_threads(); // Adjust starting block if needed. - auto& opts = _context->get_settings(); for (auto dim : center_block.getDims()) { auto& dname = dim.getName(); auto& dval = dim.getVal(); - if (dname == opts->_dims->_step_dim) { + if (dname == step_dim) { block_steps = opts->_block_sizes[dname]; center_block[dname] = block_steps; } else { @@ -194,15 +206,15 @@ namespace yask { } } if (!done) { - TRACE_MSG2(_name << ": starting block-size: " << + TRACE_MSG(_name << ": starting block-size: " << center_block.makeDimValStr(" * ")); - TRACE_MSG2(_name << ": starting search radius: " << radius); + TRACE_MSG(_name << ": starting search radius: " << radius); } } // clear. // Evaluate the previous run and take next auto-tuner step. void AutoTuner::eval() { - CONTEXT_VARS(_context); + STATE_VARS(this); // Get elapsed time and reset. double etime = timer.get_elapsed_secs(); @@ -248,10 +260,7 @@ namespace yask { csteps << " steps(s) in " << ctime << " secs (" << rate << " steps/sec) with block-size " << - _settings->_block_sizes.makeDimValStr(" * "); - if (_context->tb_steps > 0) - os << ", " << _context->tb_steps << " TB step(s)"; - os << endl; + _settings->_block_sizes.makeDimValStr(" * ") << endl; csteps = 0; ctime = 0.; @@ -335,7 +344,7 @@ namespace yask { bsize[dname] = sz; } // domain dims. - TRACE_MSG2(_name << ": checking block-size " << + TRACE_MSG(_name << ": checking block-size " << bsize.makeDimValStr(" * ")); // Too small? @@ -346,7 +355,6 @@ namespace yask { // Too few? else if (ok) { - auto& opts = _context->get_settings(); idx_t nblks = get_num_domain_points(opts->_region_sizes) / get_num_domain_points(bsize); if (nblks < min_blks) { @@ -393,10 +401,10 @@ namespace yask { os << _name << ": done" << endl; return; } - TRACE_MSG2(_name << ": new search radius=" << radius); + TRACE_MSG(_name << ": new search radius=" << radius); } else { - TRACE_MSG2(_name << ": continuing search from block " << + TRACE_MSG(_name << ": continuing search from block " << center_block.makeDimValStr(" * ")); } } // beyond next neighbor of center. @@ -406,13 +414,13 @@ namespace yask { // Assumption is that block size in one pack doesn't affect // perf in another pack. apply(); - TRACE_MSG2(_name << ": next block-size " << + TRACE_MSG(_name << ": next block-size " << _settings->_block_sizes.makeDimValStr(" * ")); } // eval. // Apply auto-tuner settings to prepare for a run. void AutoTuner::apply() { - CONTEXT_VARS(_context); + STATE_VARS(this); // Restore step-dim value for block. _settings->_block_sizes[step_posn] = block_steps; @@ -426,19 +434,23 @@ namespace yask { _settings->_mini_block_group_sizes.setValsSame(0); _settings->_block_group_sizes.setValsSame(0); + // Save debug output and set to null. + auto saved_op = get_debug_output(); + set_debug_output(nullop); + // Make sure everything is resized based on block size. - auto saved_op = cp->get_debug_output(); - cp->set_debug_output(nullop); - _settings->adjustSettings(cp->get_env()); + _settings->adjustSettings(); // Update temporal blocking info. - cp->update_tb_info(); + _context->update_tb_info(); - // Reallocate scratch data based on new block size. + // Reallocate scratch data based on new mini-block size. // TODO: only do this when blocks have increased or // decreased by a certain percentage. _context->allocScratchData(); - cp->set_debug_output(saved_op); + + // Restore debug output. + set_debug_output(saved_op); } } // namespace yask. diff --git a/src/kernel/lib/auto_tuner.hpp b/src/kernel/lib/auto_tuner.hpp index b49218b9..9712b29f 100644 --- a/src/kernel/lib/auto_tuner.hpp +++ b/src/kernel/lib/auto_tuner.hpp @@ -28,10 +28,16 @@ IN THE SOFTWARE. namespace yask { // Auto-tuner for setting block size. - class AutoTuner { + class AutoTuner : + public ContextLinker { + protected: - StencilContext* _context = 0; - KernelSettings* _settings = 0; // settings to change. + + // Settings to change. May be pointer to solution settings + // or local settings for a pack. + KernelSettings* _settings = 0; + + // Name of tuner. std::string _name; // Null stream to throw away debug info. @@ -75,15 +81,10 @@ namespace yask { public: static constexpr idx_t max_step_t = 4; - AutoTuner(StencilContext* ctx, + AutoTuner(StencilContext* context, KernelSettings* settings, - const std::string& name = "") : - _context(ctx), - _settings(settings) { - _name = "auto-tuner"; - if (name.length()) - _name += "(" + name + ")"; - } + const std::string& name = ""); + virtual ~AutoTuner() {} // Start & stop this timer to track elapsed time. YaskTimer timer; diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index 90eb756d..078f296d 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -31,24 +31,12 @@ using namespace std; namespace yask { - // Set debug output to cout if my_rank == msg_rank - // or a null stream otherwise. - ostream& StencilContext::set_ostr() { - yask_output_factory yof; - if (_env->my_rank == _opts->msg_rank) - set_debug_output(yof.new_stdout_output()); - else - set_debug_output(yof.new_null_output()); - assert(_ostr); - return *_ostr; - } - ///// Top-level methods for evaluating reference and optimized stencils. // Eval stencil bundle(s) over grid(s) using reference scalar code. void StencilContext::run_ref(idx_t first_step_index, idx_t last_step_index) { - CONTEXT_VARS(this); + STATE_VARS(this); run_time.start(); // Determine step dir from order of first/last. @@ -69,10 +57,10 @@ namespace yask { // Begin & end tuples. // Based on rank bounding box, not extended // BB because we don't use wave-fronts in the ref code. - IdxTuple begin(_dims->_stencil_dims); + IdxTuple begin(stencil_dims); begin.setVals(rank_bb.bb_begin, false); begin[step_dim] = begin_t; - IdxTuple end(_dims->_stencil_dims); + IdxTuple end(stencil_dims); end.setVals(rank_bb.bb_end, false); end[step_dim] = end_t; @@ -81,16 +69,16 @@ namespace yask { // Force sub-sizes to whole rank size so that scratch // grids will be large enough. Turn off any temporal blocking. - _opts->_region_sizes.setValsSame(0); - _opts->_block_sizes.setValsSame(0); - _opts->_mini_block_sizes.setValsSame(0); - _opts->_sub_block_sizes.setValsSame(0); - _opts->adjustSettings(get_env()); + opts->_region_sizes.setValsSame(0); + opts->_block_sizes.setValsSame(0); + opts->_mini_block_sizes.setValsSame(0); + opts->_sub_block_sizes.setValsSame(0); + opts->adjustSettings(); update_grid_info(); // Copy these settings to packs and realloc scratch grids. for (auto& sp : stPacks) - sp->getLocalSettings() = *_opts; + sp->getLocalSettings() = *opts; allocScratchData(); // Use only one set of scratch grids. @@ -98,7 +86,7 @@ namespace yask { // Indices to loop through. // Init from begin & end tuples. - ScanIndices rank_idxs(*_dims, false, &rank_domain_offsets); + ScanIndices rank_idxs(*dims, false, &rank_domain_offsets); rank_idxs.begin = begin; rank_idxs.end = end; @@ -201,7 +189,7 @@ namespace yask { void StencilContext::run_solution(idx_t first_step_index, idx_t last_step_index) { - CONTEXT_VARS(this); + STATE_VARS(this); run_time.start(); // Determine step dir from order of first/last. @@ -219,14 +207,14 @@ namespace yask { // Begin, end, step tuples. // Based on overall bounding box, which includes // any needed extensions for wave-fronts. - IdxTuple begin(_dims->_stencil_dims); + IdxTuple begin(stencil_dims); begin.setVals(ext_bb.bb_begin, false); begin[step_posn] = begin_t; - IdxTuple end(_dims->_stencil_dims); + IdxTuple end(stencil_dims); end.setVals(ext_bb.bb_end, false); end[step_posn] = end_t; - IdxTuple step(_dims->_stencil_dims); - step.setVals(_opts->_region_sizes, false); // step by region sizes. + IdxTuple step(stencil_dims); + step.setVals(opts->_region_sizes, false); // step by region sizes. step[step_posn] = step_t; TRACE_MSG("run_solution: [" << @@ -241,8 +229,7 @@ namespace yask { } #ifdef MODEL_CACHE - ostream& os = get_ostr(); - if (context.my_rank != context.msg_rank) + if (env.my_rank != env.msg_rank) cache_model.disable(); if (cache_model.isEnabled()) os << "Modeling cache...\n"; @@ -303,7 +290,7 @@ namespace yask { // calculations are made. // Indices needed for the 'rank' loops. - ScanIndices rank_idxs(*_dims, true, &rank_domain_offsets); + ScanIndices rank_idxs(*dims, true, &rank_domain_offsets); rank_idxs.begin = begin; rank_idxs.end = end; rank_idxs.step = step; @@ -573,7 +560,7 @@ namespace yask { // eval only the one pointed to. void StencilContext::calc_region(BundlePackPtr& sel_bp, const ScanIndices& rank_idxs) { - CONTEXT_VARS(this); + STATE_VARS(this); TRACE_MSG("calc_region: region [" << rank_idxs.start.makeValStr(nsdims) << " ... " << rank_idxs.stop.makeValStr(nsdims) << ") within rank [" << @@ -587,7 +574,7 @@ namespace yask { int_time.start(); // Init region begin & end from rank start & stop indices. - ScanIndices region_idxs(*_dims, true, &rank_domain_offsets); + ScanIndices region_idxs(*dims, true, &rank_domain_offsets); region_idxs.initFromOuter(rank_idxs); // Time range. @@ -698,7 +685,7 @@ namespace yask { BundlePackPtr bp; // Steps within a region are based on rank block sizes. - auto& settings = *_opts; + auto& settings = *opts; region_idxs.step = settings._block_sizes; region_idxs.step[step_posn] = step_t; @@ -780,7 +767,7 @@ namespace yask { const ScanIndices& rank_idxs, const ScanIndices& region_idxs) { - CONTEXT_VARS(this); + STATE_VARS(this); auto* bp = sel_bp.get(); int region_thread_idx = omp_get_thread_num(); TRACE_MSG("calc_block: phase " << phase << ", block [" << @@ -830,7 +817,7 @@ namespace yask { #endif // Init block begin & end from region start & stop indices. - ScanIndices block_idxs(*_dims, true, 0); + ScanIndices block_idxs(*dims, true, 0); block_idxs.initFromOuter(region_idxs); // Time range. @@ -901,7 +888,7 @@ namespace yask { block_idxs.stop[step_posn] = end_t; // Steps within a block are based on rank mini-block sizes. - auto& settings = *_opts; + auto& settings = *opts; block_idxs.step = settings._mini_block_sizes; block_idxs.step[step_posn] = step_dir; @@ -982,7 +969,7 @@ namespace yask { const ScanIndices& base_block_idxs, const ScanIndices& adj_block_idxs) { - CONTEXT_VARS(this); + STATE_VARS(this); TRACE_MSG("calc_mini_block: phase " << phase << ", shape " << shape << ", mini-block [" << @@ -1003,7 +990,7 @@ namespace yask { } // Init mini-block begin & end from blk start & stop indices. - ScanIndices mini_block_idxs(*_dims, true, 0); + ScanIndices mini_block_idxs(*dims, true, 0); mini_block_idxs.initFromOuter(adj_block_idxs); // Time range. @@ -1100,7 +1087,7 @@ namespace yask { // Update offsets of scratch grids based on the current // mini-block location. if (scratchVecs.size()) - cp->update_scratch_grid_info(region_thread_idx, mini_block_idxs.begin); + update_scratch_grid_info(region_thread_idx, mini_block_idxs.begin); // Call calc_mini_block() for each non-scratch bundle. for (auto* sb : *bp) @@ -1132,7 +1119,7 @@ namespace yask { idx_t shift_num, BundlePackPtr& bp, ScanIndices& idxs) { - CONTEXT_VARS(this); + STATE_VARS(this); // For wavefront adjustments, see conceptual diagram in // run_solution(). At each pack and time-step, the parallelogram @@ -1322,7 +1309,7 @@ namespace yask { idx_t nshapes, idx_t shape, const BridgeMask& bridge_mask, ScanIndices& idxs) { - CONTEXT_VARS(this); + STATE_VARS(this); auto npacks = stPacks.size(); bool ok = true; @@ -1479,7 +1466,7 @@ namespace yask { // the grids' local offsets. void StencilContext::update_scratch_grid_info(int thread_idx, const Indices& idxs) { - CONTEXT_VARS(this); + STATE_VARS(this); // Loop thru vecs of scratch grids. for (auto* sv : scratchVecs) { @@ -1525,7 +1512,7 @@ namespace yask { // Compare grids in contexts. // Return number of mis-compares. idx_t StencilContext::compareData(const StencilContext& ref) const { - CONTEXT_VARS_CONST(this); + STATE_VARS_CONST(this); os << "Comparing grid(s) in '" << name << "' to '" << ref.name << "'..." << endl; if (gridPtrs.size() != ref.gridPtrs.size()) { @@ -1544,10 +1531,10 @@ namespace yask { // Call MPI_Test() on all unfinished requests to promote MPI progress. // TODO: replace with more direct and less intrusive techniques. void StencilContext::poke_halo_exchange() { - CONTEXT_VARS(this); + STATE_VARS(this); #ifdef USE_MPI - if (!enable_halo_exchange || _env->num_ranks < 2) + if (!enable_halo_exchange || env->num_ranks < 2) return; test_time.start(); @@ -1601,11 +1588,11 @@ namespace yask { // Exchange dirty halo data for all grids and all steps. void StencilContext::exchange_halos() { - + #ifdef USE_MPI - if (!enable_halo_exchange || _env->num_ranks < 2) + STATE_VARS(this); + if (!enable_halo_exchange || env->num_ranks < 2) return; - CONTEXT_VARS(this); halo_time.start(); double wait_delta = 0.; @@ -1737,7 +1724,7 @@ namespace yask { auto& r = grid_recv_reqs[ni]; MPI_Irecv(buf, nbytes, MPI_BYTE, neighbor_rank, int(gi), - _env->comm, &r); + env->comm, &r); num_recv_reqs++; } } @@ -1788,7 +1775,7 @@ namespace yask { last, lastStepsToSwap[gp]); else nelems = gp->get_elements_in_slice(buf, first, last); - idx_t nbytes = nelems * cp->get_element_bytes(); + idx_t nbytes = nelems * get_element_bytes(); if (using_shm) { TRACE_MSG("exchange_halos: no send req due to shm"); @@ -1801,7 +1788,7 @@ namespace yask { TRACE_MSG("exchange_halos: sending " << makeByteStr(nbytes)); auto& r = grid_send_reqs[ni]; MPI_Isend(buf, nbytes, MPI_BYTE, - neighbor_rank, int(gi), _env->comm, &r); + neighbor_rank, int(gi), env->comm, &r); num_send_reqs++; } } @@ -1926,6 +1913,7 @@ namespace yask { // TODO: track sub-domain of grid that is dirty. void StencilContext::mark_grids_dirty(const BundlePackPtr& sel_bp, idx_t start, idx_t stop) { + STATE_VARS(this); idx_t step = (start > stop) ? -1 : 1; map> grids_done; diff --git a/src/kernel/lib/context.hpp b/src/kernel/lib/context.hpp index c2b7bc76..95256822 100644 --- a/src/kernel/lib/context.hpp +++ b/src/kernel/lib/context.hpp @@ -149,43 +149,18 @@ namespace yask { // This is a pure-virtual class that must be implemented // for a specific problem. class StencilContext : + public KernelStateBase, public virtual yk_solution { protected: - // Output stream for messages. - std::ostream* _ostr = 0; - yask_output_ptr _debug; - - // Env. - KernelEnvPtr _env; - - // Command-line and env parameters. - KernelSettingsPtr _opts; - - // Problem dims. - DimsPtr _dims; - - // 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. static constexpr size_t _data_buf_pad = YASK_PAD_BYTES; - // Check whether dim is appropriate type. - virtual void checkDimType(const std::string& dim, - const std::string& fn_name, - bool step_ok, - bool domain_ok, - bool misc_ok) const { - _dims->checkDimType(dim, fn_name, step_ok, domain_ok, misc_ok); - } - // Alloc given bytes on each NUMA node. virtual void _alloc_data(const std::map & nbytes, const std::map & ngrids, @@ -217,14 +192,6 @@ namespace yask { bool do_mpi_right = true; // right exterior in given dim. idx_t mpi_exterior_dim = -1; // which domain dim in left/right. - // Position of inner domain dim in stencil-dims tuple. - // Misc dims will follow this if/when using interleaving. - int _inner_posn = -1; // -1 => not set. - - // Position of outer domain dim in stencil-dims tuple. - // For 1D stencils, _outer_posn == _inner_posn. - int _outer_posn = -1; // -1 => not set. - // Is overlap currently enabled? inline bool is_overlap_active() const { bool active = !do_mpi_interior || !do_mpi_left || !do_mpi_right; @@ -316,8 +283,8 @@ namespace yask { std::map mpiData; // Constructor. - StencilContext(KernelEnvPtr env, - KernelSettingsPtr settings); + StencilContext(KernelEnvPtr& env, + KernelSettingsPtr& settings); // Destructor. virtual ~StencilContext() { @@ -327,42 +294,17 @@ namespace yask { get_stats(); } - // Set debug output to cout if my_rank == msg_rank - // or a null stream otherwise. - std::ostream& set_ostr(); - - // Get the messsage output stream. - std::ostream& get_ostr() const { - assert(_ostr); - return *_ostr; + // Modify settings in shared state and auto-tuner. + void set_settings(KernelSettingsPtr opts) { + _state->_opts = opts; + _at.set_settings(opts.get()); } // Reset elapsed times to zero. void clear_timers(); - // Access to settings. - KernelSettingsPtr& get_settings() { - assert(_opts); - return _opts; - } - const KernelSettingsPtr& get_settings() const { - assert(_opts); - return _opts; - } - void set_settings(KernelSettingsPtr opts) { - _opts = opts; - _at.set_settings(_opts.get()); - } - // Misc accessors. - KernelEnvPtr& get_env() { return _env; } - const KernelEnvPtr& get_env() const { return _env; } - DimsPtr& get_dims() { return _dims; } - const DimsPtr& get_dims() const { return _dims; } - MPIInfoPtr& get_mpi_info() { return _mpiInfo; } - const MPIInfoPtr& get_mpi_info() const { return _mpiInfo; } AutoTuner& getAT() { return _at; } - bool use_pack_tuners() const { return _use_pack_tuners; } // Add a new grid to the containers. virtual void addGrid(YkGridPtr gp, bool is_output); @@ -468,92 +410,6 @@ namespace yask { // Return number of mis-compares. virtual idx_t compareData(const StencilContext& ref) const; - // Set number of threads w/o using thread-divisor. - // Return number of threads. - // Do nothing and return 0 if not properly initialized. - int set_max_threads() { - - // Get max number of threads. - int mt = std::max(_opts->max_threads, 1); - - // Reset number of OMP threads to max allowed. - omp_set_num_threads(mt); - return mt; - } - - // Get total number of computation threads to use. - int get_num_comp_threads(int& region_threads, int& blk_threads) const { - - // Max threads / divisor. - int mt = std::max(_opts->max_threads, 1); - int td = std::max(_opts->thread_divisor, 1); - int at = mt / td; - at = std::max(at, 1); - - // Blk threads per region thread. - int bt = std::max(_opts->num_block_threads, 1); - bt = std::min(bt, at); // Cannot be > 'at'. - blk_threads = bt; - - // Region threads. - int rt = at / bt; - rt = std::max(rt, 1); - region_threads = rt; - - // Total number of block threads. - return bt * rt; - } - - // Set number of threads to use for something other than a region. - // Return number of threads. - // Do nothing and return 0 if not properly initialized. - int set_all_threads() { - int rt, bt; - int at = get_num_comp_threads(rt, bt); - omp_set_num_threads(at); - return at; - } - - // Set number of threads to use for a region. - // Enable nested OMP if there are >1 block threads, - // disable otherwise. - // Return number of threads. - // Do nothing and return 0 if not properly initialized. - int set_region_threads() { - int rt, bt; - int at = get_num_comp_threads(rt, bt); - - // Limit outer nesting to allow num_block_threads per nested - // block loop. - yask_num_threads[0] = rt; - - if (bt > 1) { - omp_set_nested(1); - omp_set_max_active_levels(2); - yask_num_threads[1] = bt; - } - else { - omp_set_nested(0); - omp_set_max_active_levels(1); - yask_num_threads[1] = 0; - } - - omp_set_num_threads(rt); - return rt; - } - - // Set number of threads for a block. - // Return number of threads. - // Do nothing and return 0 if not properly initialized. - int set_block_threads() { - int rt, bt; - int at = get_num_comp_threads(rt, bt); - - if (omp_get_max_active_levels() > 1) - omp_set_num_threads(bt); - return bt; - } - // Reference stencil calculations. void run_ref(idx_t first_step_index, idx_t last_step_index); @@ -630,20 +486,14 @@ namespace yask { const GridDimNames& dims, const GridDimSizes* sizes); - // Get output object. - virtual yask_output_ptr get_debug_output() const { - return _debug; - } - // APIs. // See yask_kernel_api.hpp. - virtual void set_debug_output(yask_output_ptr debug) { - _debug = debug; // to share ownership of referent. - _ostr = &debug->get_ostream(); - } virtual const std::string& get_name() const { return name; } + virtual void set_debug_output(yask_output_ptr debug) { + KernelStateBase::set_debug_output(debug); + } virtual int get_element_bytes() const { return REAL_BYTES; } @@ -691,22 +541,26 @@ namespace yask { } virtual std::string get_step_dim_name() const { - return _dims->_step_dim; + STATE_VARS_CONST(this); + return dims->_step_dim; } virtual int get_num_domain_dims() const { - return _dims->_domain_dims.getNumDims(); + STATE_VARS_CONST(this); + return dims->_domain_dims.getNumDims(); } virtual std::vector get_domain_dim_names() const { - std::vector dims; - for (auto& dim : _dims->_domain_dims.getDims()) - dims.push_back(dim.getName()); - return dims; + STATE_VARS_CONST(this); + std::vector ddims; + for (auto& dim : dims->_domain_dims.getDims()) + ddims.push_back(dim.getName()); + return ddims; } virtual std::vector get_misc_dim_names() const { - std::vector dims; - for (auto& dim : _dims->_misc_dims.getDims()) - dims.push_back(dim.getName()); - return dims; + STATE_VARS_CONST(this); + std::vector mdims; + for (auto& dim : dims->_misc_dims.getDims()) + mdims.push_back(dim.getName()); + return mdims; } virtual idx_t get_first_rank_domain_index(const std::string& dim) const; @@ -735,16 +589,18 @@ namespace yask { virtual idx_t get_rank_index(const std::string& dim) const; virtual std::string apply_command_line_options(const std::string& args); virtual bool set_default_numa_preferred(int numa_node) { + STATE_VARS(this); #ifdef USE_NUMA - _opts->_numa_pref = numa_node; + opts->_numa_pref = numa_node; return true; #else - _opts->_numa_pref = yask_numa_none; + opts->_numa_pref = yask_numa_none; return numa_node == yask_numa_none; #endif } virtual int get_default_numa_preferred() const { - return _opts->_numa_pref; + STATE_VARS_CONST(this); + return opts->_numa_pref; } // Auto-tuner methods. @@ -757,27 +613,4 @@ namespace yask { }; // StencilContext. - // Macro to get commonly-needed vars for stencil calcs efficiently. - // *_posn vars are positions in stencil_dims. -#define CONTEXT_VARS0(ctx_p, pfx) \ - pfx auto* cp = ctx_p; \ - auto& os = cp->get_ostr(); \ - pfx auto* opts = cp->get_settings().get(); \ - pfx auto* mpiInfo = cp->get_mpi_info().get(); \ - pfx auto* dims = cp->get_dims().get(); \ - pfx auto* env = cp->get_env().get(); \ - const auto& step_dim = dims->_step_dim; \ - const auto& domain_dims = dims->_domain_dims; \ - constexpr int nddims = NUM_DOMAIN_DIMS; \ - assert(nddims == domain_dims.size()); \ - const auto& stencil_dims = dims->_stencil_dims; \ - constexpr int nsdims = NUM_STENCIL_DIMS; \ - assert(nsdims == stencil_dims.size()); \ - constexpr int step_posn = 0; \ - assert(step_posn == +Indices::step_posn); \ - constexpr int outer_posn = 1; \ - const int inner_posn = cp->_inner_posn -#define CONTEXT_VARS(ctx_p) CONTEXT_VARS0(ctx_p,) -#define CONTEXT_VARS_CONST(ctx_p) CONTEXT_VARS0(ctx_p, const) - } // yask namespace. diff --git a/src/kernel/lib/generic_grids.cpp b/src/kernel/lib/generic_grids.cpp index 03c5a757..9a263ec2 100644 --- a/src/kernel/lib/generic_grids.cpp +++ b/src/kernel/lib/generic_grids.cpp @@ -29,16 +29,16 @@ using namespace std; namespace yask { // Ctor. No allocation is done. See notes on default_alloc(). - GenericGridBase::GenericGridBase(string name, + GenericGridBase::GenericGridBase(KernelStateBase& state, + const string& name, Layout& layout_base, - const GridDimNames& dimNames, - KernelSettingsPtr* settings, - ostream** ostr) : - _name(name), _layout_base(&layout_base), _opts(settings), _ostr(ostr) { + const GridDimNames& dimNames) : + KernelStateBase(state), + _name(name), + _layout_base(&layout_base) { for (auto& dn : dimNames) - _dims.addDimBack(dn, 1); + _grid_dims.addDimBack(dn, 1); _sync_layout_with_dims(); - } // Perform default allocation. @@ -46,7 +46,7 @@ namespace yask { // programmer should call get_num_elems() or get_num_bytes() and // then provide allocated memory via set_storage(). void GenericGridBase::default_alloc() { - auto& os = get_ostr(); + STATE_VARS(this); // Release any old data if last owner. release_storage(); @@ -74,11 +74,11 @@ namespace yask { // Make some descriptive info. string GenericGridBase::make_info_string(const string& elem_name) const { stringstream oss; - if (_dims.getNumDims() == 0) + if (_grid_dims.getNumDims() == 0) oss << "scalar"; else - oss << _dims.getNumDims() << "-D grid (" << - _dims.makeDimValStr(" * ") << ")"; + oss << _grid_dims.getNumDims() << "-D grid (" << + _grid_dims.makeDimValStr(" * ") << ")"; oss << " '" << _name << "'"; if (_elems) oss << " with data at " << _elems << " containing "; @@ -147,7 +147,7 @@ namespace yask { return get_num_elems(); // Dims & sizes same? - if (_dims != p->_dims) + if (_grid_dims != p->_grid_dims) return get_num_elems(); // Count abs diffs > epsilon. diff --git a/src/kernel/lib/generic_grids.hpp b/src/kernel/lib/generic_grids.hpp index 30e3905b..010d7e03 100644 --- a/src/kernel/lib/generic_grids.hpp +++ b/src/kernel/lib/generic_grids.hpp @@ -33,7 +33,8 @@ namespace yask { // A base class for a generic n-D grid. // This class does not define a type or memory layout. - class GenericGridBase { + class GenericGridBase : + public KernelStateBase { protected: std::string _name; // name for grid. @@ -52,36 +53,42 @@ namespace yask { // Note that both _dims and *_layout_base hold dimensions unless this // is a scalar. For a scalar, _dims is empty and _layout_base = 0. - IdxTuple _dims; // names and lengths of grid dimensions. + IdxTuple _grid_dims; // names and lengths of grid dimensions. Layout* _layout_base = 0; // memory layout. - // Command-line and env parameters. - KernelSettingsPtr* _opts; - - // Output stream for messages. - // Pointer-to-pointer to let it follow a parent's pointer. - std::ostream** _ostr = 0; - void _sync_dims_with_layout() { Indices idxs(_layout_base->get_sizes()); - idxs.setTupleVals(_dims); + idxs.setTupleVals(_grid_dims); } void _sync_layout_with_dims() { - Indices idxs(_dims); + Indices idxs(_grid_dims); _layout_base->set_sizes(idxs); } public: // Ctor. No allocation is done. See notes on default_alloc(). - GenericGridBase(std::string name, + GenericGridBase(KernelStateBase& state, + const std::string& name, Layout& layout_base, - const GridDimNames& dimNames, - KernelSettingsPtr* settings, - std::ostream** ostr); + const GridDimNames& dimNames); virtual ~GenericGridBase() { } + // Get state info. + KernelStatePtr& get_state() { + assert(_state); + return _state; + } + const KernelStatePtr& get_state() const { + assert(_state); + return _state; + } + std::ostream& get_ostr() const { + STATE_VARS(this); + return os; + } + // Perform default allocation. // For other options, // programmer should call get_num_elems() or get_num_bytes() and @@ -94,8 +101,9 @@ namespace yask { // NUMA accessors. virtual int get_numa_pref() const { + STATE_VARS_CONST(this); return (_numa_pref != _numa_unset) ? - _numa_pref : (*_opts)->_numa_pref; + _numa_pref : opts->_numa_pref; } virtual bool set_numa_pref(int numa_node) { #ifdef USE_NUMA @@ -107,19 +115,12 @@ namespace yask { #endif } - // Access dims. - const IdxTuple& get_dims() const { return _dims; } - - // Get the messsage output stream. - virtual std::ostream& get_ostr() const { - assert(_ostr); - assert(*_ostr); - return **_ostr; - } + // Access dims of this grid. + const IdxTuple& get_dims() const { return _grid_dims; } // Get number of elements. virtual idx_t get_num_elems() const { - return _dims.product(); + return _grid_dims.product(); } // Get size of one element. @@ -130,25 +131,25 @@ namespace yask { // Get number of dimensions. virtual int get_num_dims() const { - return _dims.getNumDims(); + return _grid_dims.getNumDims(); } // Get the nth dim name. virtual const std::string& get_dim_name(int n) const { - return _dims.getDimName(n); + return _grid_dims.getDimName(n); } // Is dim used? virtual bool is_dim_used(const std::string& dim) const { - return _dims.lookup(dim) != 0; + return _grid_dims.lookup(dim) != 0; } // Access nth dim size. idx_t get_dim_size(int n) const { - return _dims.getVal(n); + return _grid_dims.getVal(n); } void set_dim_size(int n, idx_t size) { - _dims.setVal(n, size); + _grid_dims.setVal(n, size); _sync_layout_with_dims(); } @@ -157,15 +158,15 @@ namespace yask { return _layout_base->get_sizes(); } void set_dim_sizes(const Indices& sizes) { - for (int i = 0; i < _dims.size(); i++) - _dims.setVal(i, sizes[i]); + for (int i = 0; i < _grid_dims.size(); i++) + _grid_dims.setVal(i, sizes[i]); _sync_layout_with_dims(); } // Return 'true' if dimensions are same names // and sizes, 'false' otherwise. inline bool are_dims_and_sizes_same(const GenericGridBase& src) { - return _dims == src._dims; + return _grid_dims == src._grid_dims; } // Print some descriptive info. @@ -174,7 +175,7 @@ namespace yask { // Get linear index. virtual idx_t get_index(const Indices& idxs, bool check=true) const =0; virtual idx_t get_index(const IdxTuple& pt, bool check=true) const { - assert(_dims.areDimsSame(pt)); + assert(_grid_dims.areDimsSame(pt)); Indices idxs(pt); return get_index(idxs, check); } @@ -213,12 +214,11 @@ namespace yask { public: // Ctor. No allocation is done. See notes on default_alloc(). - GenericGridTemplate(std::string name, + GenericGridTemplate(KernelStateBase& state, + const std::string& name, Layout& layout_base, - const GridDimNames& dimNames, - KernelSettingsPtr* settings, - std::ostream** ostr) : - GenericGridBase(name, layout_base, dimNames, settings, ostr) { } + const GridDimNames& dimNames) : + GenericGridBase(state, name, layout_base, dimNames) { } // Dealloc _base when last pointer to it is destructed. virtual ~GenericGridTemplate() { @@ -282,11 +282,10 @@ namespace yask { public: // Construct an unallocated grid. - GenericGrid(std::string name, - const GridDimNames& dimNames, - KernelSettingsPtr* settings, - std::ostream** ostr) : - GenericGridTemplate(name, _layout, dimNames, settings, ostr) { + GenericGrid(KernelStateBase& state, + std::string name, + const GridDimNames& dimNames) : + GenericGridTemplate(state, name, _layout, dimNames) { assert(int(dimNames.size()) == _layout.get_num_sizes()); } @@ -306,10 +305,10 @@ namespace yask { virtual idx_t get_index(const Indices& idxs, bool check=true) const final { #ifdef CHECK if (check) { - for (int i = 0; i < this->_dims.size(); i++) { + for (int i = 0; i < this->_grid_dims.size(); i++) { idx_t j = idxs[i]; assert(j >= 0); - assert(j < this->_dims.getVal(i)); + assert(j < this->_grid_dims.getVal(i)); } } #endif @@ -347,8 +346,9 @@ namespace yask { public: // Construct an unallocated scalar. - GenericScalar(std::string name) : - GenericGrid(name, _dimNames) { } + GenericScalar(KernelStateBase& state, + std::string name) : + GenericGrid(state, name, _dimNames) { } }; } // namespace yask. diff --git a/src/kernel/lib/grid_apis.cpp b/src/kernel/lib/grid_apis.cpp index f08359c0..7bf9c1eb 100644 --- a/src/kernel/lib/grid_apis.cpp +++ b/src/kernel/lib/grid_apis.cpp @@ -37,7 +37,8 @@ namespace yask { // APIs to get info from vars. #define GET_GRID_API(api_name, expr, step_ok, domain_ok, misc_ok, prep_req) \ idx_t YkGridBase::api_name(const string& dim) const { \ - checkDimType(dim, #api_name, step_ok, domain_ok, misc_ok); \ + STATE_VARS(this); \ + dims->checkDimType(dim, #api_name, step_ok, domain_ok, misc_ok); \ int posn = get_dim_posn(dim, true, #api_name); \ idx_t mbit = 1LL << posn; \ if (prep_req && _rank_offsets[posn] < 0) \ @@ -47,6 +48,7 @@ namespace yask { return rtn; \ } \ idx_t YkGridBase::api_name(int posn) const { \ + STATE_VARS(this); \ idx_t mbit = 1LL << posn; \ auto rtn = expr; \ return rtn; \ @@ -84,14 +86,16 @@ namespace yask { #define COMMA , #define SET_GRID_API(api_name, expr, step_ok, domain_ok, misc_ok) \ void YkGridBase::api_name(const string& dim, idx_t n) { \ - TRACE_MSG0(get_ostr(), "grid '" << get_name() << "'." \ + STATE_VARS(this); \ + TRACE_MSG("grid '" << get_name() << "'." \ #api_name "('" << dim << "', " << n << ")"); \ - checkDimType(dim, #api_name, step_ok, domain_ok, misc_ok); \ + dims->checkDimType(dim, #api_name, step_ok, domain_ok, misc_ok); \ int posn = get_dim_posn(dim, true, #api_name); \ idx_t mbit = 1LL << posn; \ expr; \ } \ void YkGridBase::api_name(int posn, idx_t n) { \ + STATE_VARS(this); \ idx_t mbit = 1LL << posn; \ int dim = posn; \ expr; \ @@ -160,6 +164,7 @@ namespace yask { } void YkGridBase::share_storage(yk_grid_ptr source) { + STATE_VARS(this); auto sp = dynamic_pointer_cast(source); assert(sp); @@ -193,7 +198,7 @@ namespace yask { } // Not a domain dim? - bool is_domain = _dims->_domain_dims.lookup(dname) != 0; + bool is_domain = domain_dims.lookup(dname) != 0; if (!is_domain) { auto tas = get_alloc_size(dname); auto sas = sp->get_alloc_size(dname); @@ -239,7 +244,7 @@ namespace yask { // Copy pad sizes. for (int i = 0; i < get_num_dims(); i++) { auto dname = get_dim_name(i); - bool is_domain = _dims->_domain_dims.lookup(dname) != 0; + bool is_domain = domain_dims.lookup(dname) != 0; if (is_domain) { _actl_left_pads[i] = sp->_actl_left_pads[i]; _actl_right_pads[i] = sp->_actl_right_pads[i]; diff --git a/src/kernel/lib/indices.hpp b/src/kernel/lib/indices.hpp new file mode 100644 index 00000000..dabb51bc --- /dev/null +++ b/src/kernel/lib/indices.hpp @@ -0,0 +1,404 @@ +/***************************************************************************** + +YASK: Yet Another Stencil Kernel +Copyright (c) 2014-2019, 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. + +*****************************************************************************/ + +#pragma once + +namespace yask { + + typedef Tuple IdxTuple; + typedef std::vector GridIndices; + typedef std::vector GridDimSizes; + typedef std::vector GridDimNames; + + // A class to hold up to a given number of sizes or indices efficiently. + // Similar to a Tuple, but less overhead and doesn't keep names. + // Make sure this stays non-virtual. + // TODO: make this a template with _ndims as a parameter. + // TODO: ultimately, combine with Tuple w/o loss of efficiency. + class Indices { + + public: + + // Max number of indices that can be held. + // Note use of "+max_idxs" in code below to avoid compiler + // trying to take a reference to it, resulting in a undefined + // symbol (sometimes). + static constexpr int max_idxs = MAX_DIMS; + + // Step dim is always in [0] of an Indices type (if it is used). + static constexpr int step_posn = 0; + + protected: + idx_t _idxs[max_idxs]; + int _ndims; + + public: + // Ctors. + Indices() : _ndims(0) { } + Indices(int ndims) : _ndims(ndims) { } // NB: _idxs remain uninit! + Indices(const IdxTuple& src) { + setFromTuple(src); + } + Indices(const GridIndices& src) { + setFromVec(src); + } + Indices(const std::initializer_list& src) { + setFromInitList(src); + } + Indices(const idx_t src[], int ndims) { + setFromArray(src, ndims); + } + Indices(idx_t src, int ndims) { + setFromConst(src, ndims); + } + + // Default copy ctor, copy operator should be okay. + + // Access size. + inline int getNumDims() const { + return _ndims; + } + inline void setNumDims(int n) { + _ndims = n; + } + + // Access indices. + inline idx_t& operator[](int i) { + assert(i >= 0); + assert(i < _ndims); + return _idxs[i]; + } + inline const idx_t& operator[](int i) const { + assert(i >= 0); + assert(i < _ndims); + return _idxs[i]; + } + + // Write to an IdxTuple. + // The 'tgt' must have the same number of dims. + void setTupleVals(IdxTuple& tgt) const { + assert(tgt.size() == _ndims); + for (int i = 0; i < _ndims; i++) + if (i < tgt.size()) + tgt.setVal(i, _idxs[i]); + } + + // Read from an IdxTuple. + void setFromTuple(const IdxTuple& src) { + assert(src.size() <= +max_idxs); + int n = int(src.size()); + for (int i = 0; i < n; i++) + _idxs[i] = src.getVal(i); + _ndims = n; + } + + // Other inits. + void setFromVec(const GridIndices& src) { + assert(src.size() <= +max_idxs); + int n = int(src.size()); + for (int i = 0; i < n; i++) + _idxs[i] = src[i]; + _ndims = n; + } + + // default n => don't change _ndims. + void setFromArray(const idx_t src[], int n = -1) { + if (n < 0) + n = _ndims; + assert(n <= +max_idxs); + for (int i = 0; i < n; i++) + _idxs[i] = src[i]; + _ndims = n; + } + void setFromInitList(const std::initializer_list& src) { + assert(src.size() <= +max_idxs); + int i = 0; + for (auto idx : src) + _idxs[i++] = idx; + _ndims = i; + } + + // default n => don't change _ndims. + void setFromConst(idx_t val, int n = -1) { + if (n < 0) + n = _ndims; + assert(n <= +max_idxs); + for (int i = 0; i < n; i++) + _idxs[i] = val; + _ndims = n; + } + + // Some comparisons. + // These assume all the indices are valid or + // initialized to the same value. + bool operator==(const Indices& rhs) const { + if (_ndims != rhs._ndims) + return false; + for (int i = 0; i < _ndims; i++) + if (_idxs[i] != rhs._idxs[i]) + return false; + return true; + } + bool operator!=(const Indices& rhs) const { + return !operator==(rhs); + } + bool operator<(const Indices& rhs) const { + if (_ndims < rhs._ndims) + return true; + else if (_ndims > rhs._ndims) + return false; + for (int i = 0; i < _ndims; i++) + if (_idxs[i] < rhs._idxs[i]) + return true; + else if (_idxs[i] > rhs._idxs[i]) + return false; + return false; // equal, so not less than. + } + bool operator>(const Indices& rhs) const { + if (_ndims > rhs._ndims) + return true; + else if (_ndims < rhs._ndims) + return false; + for (int i = 0; i < _ndims; i++) + if (_idxs[i] > rhs._idxs[i]) + return true; + else if (_idxs[i] < rhs._idxs[i]) + return false; + return false; // equal, so not greater than. + } + + // Generic element-wise operator. + // Returns a new object. + inline Indices combineElements(std::function func, + const Indices& other) const { + Indices res(*this); + +#if EXACT_INDICES + // Use just the used elements. + for (int i = 0; i < _ndims; i++) +#else + // Use all to allow unroll and avoid jumps. +#pragma unroll + for (int i = 0; i < max_idxs; i++) +#endif + func(res._idxs[i], other._idxs[i]); + return res; + } + + // Some element-wise operators. + // These all return a new set of Indices rather + // than modifying this object. + inline Indices addElements(const Indices& other) const { + return combineElements([&](idx_t& lhs, idx_t rhs) { lhs += rhs; }, + other); + } + inline Indices subElements(const Indices& other) const { + return combineElements([&](idx_t& lhs, idx_t rhs) { lhs -= rhs; }, + other); + } + inline Indices mulElements(const Indices& other) const { + return combineElements([&](idx_t& lhs, idx_t rhs) { lhs *= rhs; }, + other); + } + inline Indices divElements(const Indices& other) const { + return combineElements([&](idx_t& lhs, idx_t rhs) { lhs /= rhs; }, + other); + } + inline Indices minElements(const Indices& other) const { + return combineElements([&](idx_t& lhs, idx_t rhs) { lhs = std::min(lhs, rhs); }, + other); + } + inline Indices maxElements(const Indices& other) const { + return combineElements([&](idx_t& lhs, idx_t rhs) { lhs = std::max(lhs, rhs); }, + other); + } + + // Generic element-wise operator with RHS const. + // Returns a new object. + inline Indices mapElements(std::function func, + idx_t crhs) const { + Indices res(*this); + +#if EXACT_INDICES + // Use just the used elements. + for (int i = 0; i < _ndims; i++) +#else + // Use all to allow unroll and avoid jumps. +#pragma unroll + for (int i = 0; i < max_idxs; i++) +#endif + func(res._idxs[i], crhs); + return res; + } + + // Operate on all elements. + Indices addConst(idx_t crhs) const { + return mapElements([&](idx_t& lhs, idx_t rhs) { lhs += rhs; }, + crhs); + } + Indices subConst(idx_t crhs) const { + return mapElements([&](idx_t& lhs, idx_t rhs) { lhs -= rhs; }, + crhs); + } + Indices mulConst(idx_t crhs) const { + return mapElements([&](idx_t& lhs, idx_t rhs) { lhs *= rhs; }, + crhs); + } + Indices divConst(idx_t crhs) const { + return mapElements([&](idx_t& lhs, idx_t rhs) { lhs /= rhs; }, + crhs); + } + Indices minConst(idx_t crhs) const { + return mapElements([&](idx_t& lhs, idx_t rhs) { lhs = std::min(lhs, rhs); }, + crhs); + } + Indices maxConst(idx_t crhs) const { + return mapElements([&](idx_t& lhs, idx_t rhs) { lhs = std::max(lhs, rhs); }, + crhs); + } + + // Reduce over all elements. + idx_t sum() const { + idx_t res = 0; + for (int i = 0; i < _ndims; i++) + res += _idxs[i]; + return res; + } + idx_t product() const { + idx_t res = 1; + for (int i = 0; i < _ndims; i++) + res *= _idxs[i]; + return res; + } + + // Make string like "x=4, y=8". + std::string makeDimValStr(const GridDimNames& names, + std::string separator=", ", + std::string infix="=", + std::string prefix="", + std::string suffix="") const { + assert((int)names.size() == _ndims); + + // Make a Tuple from names. + IdxTuple tmp; + for (int i = 0; i < int(names.size()); i++) + tmp.addDimBack(names[i], _idxs[i]); + return tmp.makeDimValStr(separator, infix, prefix, suffix); + } + + // Make string like "4, 3, 2". + std::string makeValStr(int nvals, + std::string separator=", ", + std::string prefix="", + std::string suffix="") const { + assert(nvals == _ndims); + + // Make a Tuple w/o useful names. + IdxTuple tmp; + for (int i = 0; i < nvals; i++) + tmp.addDimBack(std::string(1, '0' + char(i)), _idxs[i]); + return tmp.makeValStr(separator, prefix, suffix); + } + }; + + // Define OMP reductions on Indices. +#pragma omp declare reduction(min_idxs : Indices : \ + omp_out = omp_out.minElements(omp_in) ) \ + initializer (omp_priv = omp_orig) +#pragma omp declare reduction(max_idxs : Indices : \ + omp_out = omp_out.maxElements(omp_in) ) \ + initializer (omp_priv = omp_orig) + + // Layout algorithms using Indices. +#include "yask_layouts.hpp" + + // Forward defns. + struct Dims; + + // A group of Indices needed for generated loops. + // See the help message from gen_loops.pl for the + // documentation of the indices. + // Make sure this stays non-virtual. + struct ScanIndices { + int ndims = 0; + + // Input values; not modified. + Indices begin, end; // first and end (beyond last) range of each index. + Indices step; // step value within range. + Indices align; // alignment of steps after first one. + Indices align_ofs; // adjustment for alignment (see below). + Indices group_size; // proximity grouping within range. + + // Alignment: when possible, start positions after the first + // in each dim will be aligned such that ((start - align_ofs) % align) == 0. + + // Output values; set once for entire range. + Indices num_indices; // number of indices in each dim. + idx_t linear_indices = 0; // total indices over all dims (product of num_indices). + + // Output values; set for each index by loop code. + Indices start, stop; // first and last+1 for this sub-range. + Indices index; // 0-based unique index for each sub-range in each dim. + idx_t linear_index = 0; // 0-based index over all dims. + + // Example w/3 sub-ranges in overall range: + // begin end + // |--------------------------------------------| + // |------------------|------------------|------| + // start stop (index = 0) + // start stop (index = 1) + // start stop (index = 2) + + // Ctor. + ScanIndices(const Dims& dims, bool use_vec_align, IdxTuple* ofs); + + // Init from outer-loop indices. + // Start..stop from point in outer loop become begin..end + // for this loop. + // + // Example: + // begin (outer) end + // |--------------------------------------------| + // |------------------|------------------|------| + // start | stop + // V + // begin (this) end + // |------------------| + // start stop (may be sub-dividied later) + void initFromOuter(const ScanIndices& outer) { + + // Begin & end set from start & stop of outer loop. + begin = start = outer.start; + end = stop = outer.stop; + + // Pass some values through. + align = outer.align; + align_ofs = outer.align_ofs; + + // Leave others alone. + } + }; + +} // yask namespace. diff --git a/src/kernel/lib/new_grid.cpp b/src/kernel/lib/new_grid.cpp index 559554bf..3adadc54 100644 --- a/src/kernel/lib/new_grid.cpp +++ b/src/kernel/lib/new_grid.cpp @@ -30,75 +30,76 @@ namespace yask { // Make a new grid. YkGridPtr StencilContext::newGrid(const std::string& name, - const GridDimNames& dims, + const GridDimNames& gdims, const GridDimSizes* sizes) { + STATE_VARS(this); // Check parameters. bool got_sizes = sizes != NULL; if (got_sizes) { - if (dims.size() != sizes->size()) { + if (gdims.size() != sizes->size()) { FORMAT_AND_THROW_YASK_EXCEPTION("Error: attempt to create grid '" << name << "' with " << - dims.size() << " dimension names but " << sizes->size() << + gdims.size() << " dimension names but " << sizes->size() << " dimension sizes"); } } // First, try to make a grid that matches the layout in // the stencil. - YkGridPtr gp = newStencilGrid(name, dims); + YkGridPtr gp = newStencilGrid(name, gdims); // No match. if (!gp) { // Tuple of dims. IdxTuple dtup; - for (auto& d : dims) + for (auto& d : gdims) dtup.addDimBack(d, 0); #if ALLOW_NEW_GRIDS // Allow new grid types. // Check dims. - int ndims = dims.size(); - int step_posn = -1; // -1 => not used. + int ndims = gdims.size(); + bool step_used = false; set seenDims; for (int i = 0; i < ndims; i++) { + auto& gdim = gdims[i]; // Already used? - if (seenDims.count(dims[i])) { + if (seenDims.count(gdim)) { THROW_YASK_EXCEPTION("Error: cannot create grid '" + name + - "' because dimension '" + dims[i] + + "' because dimension '" + gdim + "' is used more than once"); } // Step dim? - if (dims[i] == _dims->_step_dim) { - step_posn = i; - if (i > 0) { + if (gdim == step_dim) { + step_used = true; + if (i != step_posn) { THROW_YASK_EXCEPTION("Error: cannot create grid '" + name + - "' because step dimension '" + dims[i] + - "' must be first dimension"); + "' because step dimension '" + gdim + + "' is not first dimension"); } } // Domain dim? - else if (_dims->_domain_dims.lookup(dims[i])) { + else if (domain_dims.lookup(gdim)) { } // Known misc dim? - else if (_dims->_misc_dims.lookup(dims[i])) { + else if (misc_dims.lookup(gdim)) { } // New misc dim? else { - _dims->_misc_dims.addDimBack(dims[i], 0); + misc_dims.addDimBack(gdim, 0); } } - bool do_wrap = step_posn >= 0; // Scalar? if (ndims == 0) - gp = make_shared>(_dims, name, dims, &_opts, &_ostr); + gp = make_shared>(*this, name, gdims); // Include auto-gen code for all other cases. #include "yask_grid_code.hpp" @@ -123,20 +124,20 @@ namespace yask { // Add to context. addGrid(gp, false); // mark as non-output grid. - // Set sizes as provided or via solution settings. + // Set sizes as provided. if (got_sizes) { - int ndims = dims.size(); + int ndims = gdims.size(); for (int i = 0; i < ndims; i++) { - auto& dname = dims[i]; + auto& gdim = gdims[i]; // Domain size. gp->_set_domain_size(i, sizes->at(i)); // Pads. // Set via both 'extra' and 'min'; larger result will be used. - if (_dims->_domain_dims.lookup(dname)) { - gp->set_extra_pad_size(i, _opts->_extra_pad_sizes[dname]); - gp->set_min_pad_size(i, _opts->_min_pad_sizes[dname]); + if (domain_dims.lookup(gdim)) { + gp->set_extra_pad_size(i, opts->_extra_pad_sizes[gdim]); + gp->set_min_pad_size(i, opts->_min_pad_sizes[gdim]); } // Offsets. @@ -145,9 +146,11 @@ namespace yask { } } + // Set sizes based on solution settings. else update_grid_info(); + // Mark as created via API. gp->set_new_grid(true); return gp; } diff --git a/src/kernel/lib/realv_grids.cpp b/src/kernel/lib/realv_grids.cpp index b3c7437c..7b3f350e 100644 --- a/src/kernel/lib/realv_grids.cpp +++ b/src/kernel/lib/realv_grids.cpp @@ -31,13 +31,14 @@ using namespace std; namespace yask { // Ctor. - YkGridBase::YkGridBase(GenericGridBase* ggb, - const GridDimNames& dimNames, - DimsPtr dims) : - _ggb(ggb), _dims(dims) { - + // Important: '*ggb' is NOT yet constructed. + YkGridBase::YkGridBase(KernelStateBase& stateb, + GenericGridBase* ggb, + const GridDimNames& dimNames) : + KernelStateBase(stateb), + _ggb(ggb) { + STATE_VARS(this); assert(ggb); - assert(dims.get()); // Init indices. int n = int(dimNames.size()); @@ -62,9 +63,9 @@ namespace yask { for (int i = 0; i < dimNames.size(); i++) { idx_t mbit = 1LL << i; auto& dname = dimNames[i]; - if (dname == _dims->_step_dim) + if (dname == step_dim) _step_dim_mask |= mbit; - else if (_dims->_domain_dims.lookup(dname)) + else if (domain_dims.lookup(dname)) _domain_dim_mask |= mbit; else _misc_dim_mask |= mbit; @@ -127,6 +128,7 @@ namespace yask { // Does not include user-specified min padding or // final rounding for left pad. Indices YkGridBase::getReqdPad(const Indices& halos, const Indices& wf_exts) const { + STATE_VARS(this); // Start with halos plus WF exts. Indices mp = halos.addElements(wf_exts); @@ -144,7 +146,7 @@ namespace yask { for (int i = 0; i < get_num_dims(); i++) { if (mp[i] >= 1) { auto& dname = get_dim_name(i); - auto* p = _dims->_fold_pts.lookup(dname); + auto* p = dims->_fold_pts.lookup(dname); if (p) { assert (*p >= 1); mp[i] += *p - 1; @@ -158,6 +160,7 @@ namespace yask { // Modifies _pads and _allocs. // Fails if mem different and already alloc'd. void YkGridBase::resize() { + STATE_VARS(this); // Original size. auto p = get_raw_storage_buffer(); @@ -216,7 +219,7 @@ namespace yask { // Make inner dim an odd number of vecs. // This reportedly helps avoid some uarch aliasing. - if (!p && get_dim_name(i) == _dims->_inner_dim && + if (!p && get_dim_name(i) == inner_dim && (new_allocs[i] / _vec_lens[i]) % 2 == 0) { new_right_pads[i] += _vec_lens[i]; new_allocs[i] += _vec_lens[i]; @@ -269,7 +272,7 @@ namespace yask { if (old_allocs != new_allocs || old_dirty != new_dirty) { Indices first_allocs = _rank_offsets.subElements(_actl_left_pads); Indices end_allocs = first_allocs.addElements(_allocs); - TRACE_MSG0(get_ostr(), "grid '" << get_name() << "' resized from " << + TRACE_MSG("grid '" << get_name() << "' resized from " << makeIndexString(old_allocs, " * ") << " to " << makeIndexString(new_allocs, " * ") << " at [" << makeIndexString(first_allocs) << " ... " << @@ -288,18 +291,19 @@ namespace yask { bool step_ok, bool domain_ok, bool misc_ok) const { + STATE_VARS(this); if (!is_dim_used(dim)) THROW_YASK_EXCEPTION("Error in " + fn_name + "(): dimension '" + dim + "' not found in " + make_info_string()); - _dims->checkDimType(dim, fn_name, step_ok, domain_ok, misc_ok); + dims->checkDimType(dim, fn_name, step_ok, domain_ok, misc_ok); } // Check for equality. // Return number of mismatches greater than epsilon. idx_t YkGridBase::compare(const YkGridBase* ref, real_t epsilon, - int maxPrint, - std::ostream& os) const { + int maxPrint) const { + STATE_VARS(this); if (!ref) { os << "** mismatch: no reference grid.\n"; return get_num_storage_elements(); @@ -316,7 +320,7 @@ namespace yask { // same values in extra-padding area. // TODO: check layout. idx_t errs = _ggb->count_diffs(ref->_ggb, epsilon); - TRACE_MSG0(get_ostr(), "count_diffs() returned " << errs); + TRACE_MSG("count_diffs() returned " << errs); if (!errs) return 0; @@ -345,7 +349,7 @@ namespace yask { // Don't compare points outside the domain. // TODO: check points in halo. auto& dname = pt.getDimName(i); - if (_dims->_domain_dims.lookup(dname)) { + if (domain_dims.lookup(dname)) { auto first_ok = get_first_rank_domain_index(dname); auto last_ok = get_last_rank_domain_index(dname); if (opt[i] < first_ok || opt[i] > last_ok) @@ -374,7 +378,7 @@ namespace yask { } return true; // keep visiting. }); - TRACE_MSG0(get_ostr(), "detailed compare returned " << errs); + TRACE_MSG("detailed compare returned " << errs); return errs; } @@ -492,6 +496,7 @@ namespace yask { const real_vec_t& val, int line, bool newline) const { + STATE_VARS(this); // Convert to elem indices. Indices eidxs = idxs.mulElements(_vec_lens); @@ -503,7 +508,7 @@ namespace yask { eidxs.setTupleVals(idxs2); // set vals from eidxs. // Visit every point in fold. - IdxTuple folds = _dims->_fold_pts; + IdxTuple folds = dims->_fold_pts; folds.visitAllPoints([&](const IdxTuple& fofs, size_t idx) { diff --git a/src/kernel/lib/realv_grids.hpp b/src/kernel/lib/realv_grids.hpp index 2a3a99a7..11fcd957 100644 --- a/src/kernel/lib/realv_grids.hpp +++ b/src/kernel/lib/realv_grids.hpp @@ -34,6 +34,7 @@ namespace yask { // Base class implementing all yk_grids. Can be used for grids // that contain either individual elements or vectors. class YkGridBase : + public KernelStateBase, public virtual yk_grid { // Rank and local offsets in domain dim: @@ -61,9 +62,6 @@ namespace yask { // actual data, message stream. GenericGridBase* _ggb = 0; - // Problem dimensions. (NOT grid dims.) - DimsPtr _dims; - // The following masks have one bit for each dim in the grid. idx_t _step_dim_mask = 0; idx_t _domain_dim_mask = 0; @@ -83,7 +81,7 @@ namespace yask { Indices _allocs; // actual grid alloc in reals | same. // Sizes in vectors for sizes that are always vec lens (to avoid division). - // Each entry _vec_lens may be same as _dims->_fold_pts or one, depending + // Each entry _vec_lens may be same as dims->_fold_pts or one, depending // on whether grid is fully vectorized. Indices _vec_lens; // num reals in each elem | one. Indices _vec_left_pads; // same as _actl_left_pads. @@ -178,9 +176,9 @@ namespace yask { const Indices& last_indices) const; public: - YkGridBase(GenericGridBase* ggb, - const GridDimNames& dimNames, - DimsPtr dims); + YkGridBase(KernelStateBase& state, + GenericGridBase* ggb, + const GridDimNames& dimNames); virtual ~YkGridBase() { } // Halo-exchange flag accessors. @@ -295,8 +293,7 @@ namespace yask { // Return number of mismatches greater than epsilon. virtual idx_t compare(const YkGridBase* ref, real_t epsilon = EPSILON, - int maxPrint = 20, - std::ostream& os = std::cerr) const; + int maxPrint = 20) const; // Make sure indices are in range. // Optionally fix them to be in range and return in 'fixed_indices'. @@ -610,13 +607,11 @@ namespace yask { } public: - YkElemGrid(DimsPtr dims, + YkElemGrid(KernelStateBase& state, std::string name, - const GridDimNames& dimNames, - KernelSettingsPtr* settings, - std::ostream** ostr) : - YkGridBase(&_data, dimNames, dims), - _data(name, dimNames, settings, ostr) { + const GridDimNames& dimNames) : + YkGridBase(state, &_data, dimNames), + _data(state, name, dimNames) { _has_step_dim = _use_step_idx; resize(); } @@ -730,14 +725,13 @@ namespace yask { } public: - YkVecGrid(DimsPtr dims, + YkVecGrid(KernelStateBase& stateb, const std::string& name, - const GridDimNames& dimNames, - KernelSettingsPtr* settings, - std::ostream** ostr) : - YkGridBase(&_data, dimNames, dims), - _data(name, dimNames, settings, ostr), + const GridDimNames& dimNames) : + YkGridBase(stateb, &_data, dimNames), + _data(stateb, name, dimNames), _vec_fold_posns(idx_t(0), int(dimNames.size())) { + STATE_VARS(this); _has_step_dim = _use_step_idx; // Template vec lengths. @@ -805,9 +799,10 @@ namespace yask { virtual const real_t* getElemPtr(const Indices& idxs, idx_t alloc_step_idx, bool checkBounds=true) const final { + STATE_VARS_CONST(this); #ifdef TRACE_MEM - _data.get_ostr() << get_name() << "." << "YkVecGrid::getElemPtr(" << + ostr << get_name() << "." << "YkVecGrid::getElemPtr(" << idxs.makeValStr(get_num_dims()) << ")"; #endif // Use template vec lengths instead of run-time values for @@ -865,13 +860,13 @@ namespace yask { } // Get 1D element index into vector. - auto i = _dims.get()->getElemIndexInVec(fold_ofs); + auto i = dims->getElemIndexInVec(fold_ofs); #ifdef DEBUG_LAYOUT // Compare to more explicit offset extraction. IdxTuple eofs = get_allocs(); // get dims for this grid. elem_ofs.setTupleVals(eofs); // set vals from elem_ofs. - auto i2 = _dims->getElemIndexInVec(eofs); + auto i2 = dims->getElemIndexInVec(eofs); assert(i == i2); #endif @@ -1029,6 +1024,7 @@ namespace yask { idx_t first_alloc_step_idx, const Indices& last_indices, idx_t last_alloc_step_idx) { + STATE_VARS(this); if (!is_storage_allocated()) return 0; Indices firstv, lastv; @@ -1037,7 +1033,7 @@ namespace yask { // Find range. IdxTuple numVecsTuple = get_slice_range(firstv, lastv); - TRACE_MSG0(get_ostr(), "set_vecs_in_slice: setting " << + TRACE_MSG("set_vecs_in_slice: setting " << numVecsTuple.makeDimValStr(" * ") << " vecs at [" << makeIndexString(firstv) << " ... " << makeIndexString(lastv) << "]"); @@ -1083,22 +1079,17 @@ namespace yask { idx_t first_alloc_step_idx, const Indices& last_indices, idx_t last_alloc_step_idx) const { - if (!is_storage_allocated()) { - yask_exception e; - std::stringstream err; - err << "Error: call to 'get_vecs_in_slice' with no data allocated for grid '" << - get_name() << "'.\n"; - e.add_message(err.str()); - throw e; - //exit_yask(1); - } + STATE_VARS(this); + if (!is_storage_allocated()) + FORMAT_AND_THROW_YASK_EXCEPTION("Error: call to 'get_vecs_in_slice' with no data allocated for grid '" << + get_name()); Indices firstv, lastv; checkIndices(first_indices, "get_vecs_in_slice", true, true, &firstv); checkIndices(last_indices, "get_vecs_in_slice", true, true, &lastv); // Find range. IdxTuple numVecsTuple = get_slice_range(firstv, lastv); - TRACE_MSG0(get_ostr(), "get_vecs_in_slice: getting " << + TRACE_MSG("get_vecs_in_slice: getting " << numVecsTuple.makeDimValStr(" * ") << " vecs at " << makeIndexString(firstv) << " ... " << makeIndexString(lastv)); diff --git a/src/kernel/lib/settings.cpp b/src/kernel/lib/settings.cpp index fd56c46f..379e957b 100644 --- a/src/kernel/lib/settings.cpp +++ b/src/kernel/lib/settings.cpp @@ -28,6 +28,20 @@ using namespace std; namespace yask { + // Set debug output to cout if my_rank == msg_rank + // or a null stream otherwise. + ostream& KernelStateBase::set_ostr() { + assert(_state); + assert(_state->_env); + assert(_state->_opts); + yask_output_factory yof; + if (_state->_env->my_rank == _state->_opts->msg_rank) + set_debug_output(yof.new_stdout_output()); + else + set_debug_output(yof.new_null_output()); + return get_debug_output()->get_ostream(); + } + // Check whether dim is of allowed type. void Dims::checkDimType(const std::string& dim, const std::string& fn_name, @@ -66,8 +80,7 @@ namespace yask { return new_env(MPI_COMM_NULL); } - ///// KernelEnv functions: - + // KernelEnv global lock objects. omp_lock_t KernelEnv::_debug_lock; bool KernelEnv::_debug_lock_init_done = false; @@ -221,6 +234,52 @@ namespace yask { return bufs[i].bufs[bd]; } + // Settings ctor. + KernelSettings::KernelSettings(DimsPtr dims, KernelEnvPtr env) : + _dims(dims), max_threads(env->max_threads) { + auto& step_dim = dims->_step_dim; + + // Use both step and domain dims for all size tuples. + _rank_sizes = dims->_stencil_dims; + _rank_sizes.setValsSame(def_rank); // size of rank. + _rank_sizes.setVal(step_dim, 0); // not used. + + _region_sizes = dims->_stencil_dims; + _region_sizes.setValsSame(0); // 0 => default settings. + + _block_group_sizes = dims->_stencil_dims; + _block_group_sizes.setValsSame(0); // 0 => min size. + + _block_sizes = dims->_stencil_dims; + _block_sizes.setValsSame(def_block); // size of block. + _block_sizes.setVal(step_dim, 0); // 0 => default. + + _mini_block_group_sizes = dims->_stencil_dims; + _mini_block_group_sizes.setValsSame(0); // 0 => min size. + + _mini_block_sizes = dims->_stencil_dims; + _mini_block_sizes.setValsSame(0); // 0 => default settings. + + _sub_block_group_sizes = dims->_stencil_dims; + _sub_block_group_sizes.setValsSame(0); // 0 => min size. + + _sub_block_sizes = dims->_stencil_dims; + _sub_block_sizes.setValsSame(0); // 0 => default settings. + + _min_pad_sizes = dims->_stencil_dims; + _min_pad_sizes.setValsSame(0); + + _extra_pad_sizes = dims->_stencil_dims; + _extra_pad_sizes.setValsSame(0); + + // Use only domain dims for MPI tuples. + _num_ranks = dims->_domain_dims; + _num_ranks.setValsSame(1); + + _rank_indices = dims->_domain_dims; + _rank_indices.setValsSame(0); + } + // Add options to set one domain var to a cmd-line parser. void KernelSettings::_add_domain_option(CommandLineParser& parser, const std::string& prefix, @@ -515,7 +574,7 @@ namespace yask { // Make sure all user-provided settings are valid and finish setting up some // other vars before allocating memory. // Called from prepare_solution(), during auto-tuning, etc. - void KernelSettings::adjustSettings(std::ostream& os, KernelEnvPtr env) { + void KernelSettings::adjustSettings(std::ostream& os) { auto& step_dim = _dims->_step_dim; auto& inner_dim = _dims->_inner_dim; @@ -711,4 +770,44 @@ namespace yask { #endif } + // Ctor. + KernelStateBase::KernelStateBase(KernelEnvPtr& kenv, + KernelSettingsPtr& ksettings) + { + // Create state. All other objects that need to share + // this state should use a shared ptr to it. + _state = make_shared(); + + // Share passed ptrs. + _state->_env = kenv; + _state->_opts = ksettings; + _state->_dims = ksettings->_dims; + + // Set _state->_debug per settings. + set_ostr(); + + // Create MPI Info object. + _state->_mpiInfo = make_shared(ksettings->_dims); + + // Set vars after above inits. + STATE_VARS(this); + + // Find index posns in stencil dims. + DOMAIN_VAR_LOOP(i, j) { + auto& dname = stencil_dims.getDimName(i); + if (state->_outer_posn < 0) + state->_outer_posn = i; + if (dname == dims->_inner_dim) + state->_inner_posn = i; + } + assert(outer_posn == state->_outer_posn); + } + + // ContextLinker ctor. + ContextLinker::ContextLinker(StencilContext* context) : + KernelStateBase(context->get_state()), + _context(context) { + assert(context); + } + } // namespace yask. diff --git a/src/kernel/lib/settings.hpp b/src/kernel/lib/settings.hpp index 6113a980..c979c0e3 100644 --- a/src/kernel/lib/settings.hpp +++ b/src/kernel/lib/settings.hpp @@ -27,315 +27,8 @@ IN THE SOFTWARE. namespace yask { - typedef Tuple IdxTuple; - typedef std::vector GridIndices; - typedef std::vector GridDimSizes; - typedef std::vector GridDimNames; - - // A class to hold up to a given number of sizes or indices efficiently. - // Similar to a Tuple, but less overhead and doesn't keep names. - // Make sure this stays non-virtual. - // TODO: make this a template with _ndims as a parameter. - // TODO: ultimately, combine with Tuple w/o loss of efficiency. - class Indices { - - public: - - // Max number of indices that can be held. - // Note use of "+max_idxs" in code below to avoid compiler - // trying to take a reference to it, resulting in a undefined - // symbol (sometimes). - static constexpr int max_idxs = MAX_DIMS; - - // Step dim is always in [0] of an Indices type (if it is used). - static constexpr int step_posn = 0; - - protected: - idx_t _idxs[max_idxs]; - int _ndims; - - public: - // Ctors. - Indices() : _ndims(0) { } - Indices(int ndims) : _ndims(ndims) { } // NB: _idxs remain uninit! - Indices(const IdxTuple& src) { - setFromTuple(src); - } - Indices(const GridIndices& src) { - setFromVec(src); - } - Indices(const std::initializer_list& src) { - setFromInitList(src); - } - Indices(const idx_t src[], int ndims) { - setFromArray(src, ndims); - } - Indices(idx_t src, int ndims) { - setFromConst(src, ndims); - } - - // Default copy ctor, copy operator should be okay. - - // Access size. - inline int getNumDims() const { - return _ndims; - } - inline void setNumDims(int n) { - _ndims = n; - } - - // Access indices. - inline idx_t& operator[](int i) { - assert(i >= 0); - assert(i < _ndims); - return _idxs[i]; - } - inline const idx_t& operator[](int i) const { - assert(i >= 0); - assert(i < _ndims); - return _idxs[i]; - } - - // Write to an IdxTuple. - // The 'tgt' must have the same number of dims. - void setTupleVals(IdxTuple& tgt) const { - assert(tgt.size() == _ndims); - for (int i = 0; i < _ndims; i++) - if (i < tgt.size()) - tgt.setVal(i, _idxs[i]); - } - - // Read from an IdxTuple. - void setFromTuple(const IdxTuple& src) { - assert(src.size() <= +max_idxs); - int n = int(src.size()); - for (int i = 0; i < n; i++) - _idxs[i] = src.getVal(i); - _ndims = n; - } - - // Other inits. - void setFromVec(const GridIndices& src) { - assert(src.size() <= +max_idxs); - int n = int(src.size()); - for (int i = 0; i < n; i++) - _idxs[i] = src[i]; - _ndims = n; - } - - // default n => don't change _ndims. - void setFromArray(const idx_t src[], int n = -1) { - if (n < 0) - n = _ndims; - assert(n <= +max_idxs); - for (int i = 0; i < n; i++) - _idxs[i] = src[i]; - _ndims = n; - } - void setFromInitList(const std::initializer_list& src) { - assert(src.size() <= +max_idxs); - int i = 0; - for (auto idx : src) - _idxs[i++] = idx; - _ndims = i; - } - - // default n => don't change _ndims. - void setFromConst(idx_t val, int n = -1) { - if (n < 0) - n = _ndims; - assert(n <= +max_idxs); - for (int i = 0; i < n; i++) - _idxs[i] = val; - _ndims = n; - } - - // Some comparisons. - // These assume all the indices are valid or - // initialized to the same value. - bool operator==(const Indices& rhs) const { - if (_ndims != rhs._ndims) - return false; - for (int i = 0; i < _ndims; i++) - if (_idxs[i] != rhs._idxs[i]) - return false; - return true; - } - bool operator!=(const Indices& rhs) const { - return !operator==(rhs); - } - bool operator<(const Indices& rhs) const { - if (_ndims < rhs._ndims) - return true; - else if (_ndims > rhs._ndims) - return false; - for (int i = 0; i < _ndims; i++) - if (_idxs[i] < rhs._idxs[i]) - return true; - else if (_idxs[i] > rhs._idxs[i]) - return false; - return false; // equal, so not less than. - } - bool operator>(const Indices& rhs) const { - if (_ndims > rhs._ndims) - return true; - else if (_ndims < rhs._ndims) - return false; - for (int i = 0; i < _ndims; i++) - if (_idxs[i] > rhs._idxs[i]) - return true; - else if (_idxs[i] < rhs._idxs[i]) - return false; - return false; // equal, so not greater than. - } - - // Generic element-wise operator. - // Returns a new object. - inline Indices combineElements(std::function func, - const Indices& other) const { - Indices res(*this); - -#if EXACT_INDICES - // Use just the used elements. - for (int i = 0; i < _ndims; i++) -#else - // Use all to allow unroll and avoid jumps. -#pragma unroll - for (int i = 0; i < max_idxs; i++) -#endif - func(res._idxs[i], other._idxs[i]); - return res; - } - - // Some element-wise operators. - // These all return a new set of Indices rather - // than modifying this object. - inline Indices addElements(const Indices& other) const { - return combineElements([&](idx_t& lhs, idx_t rhs) { lhs += rhs; }, - other); - } - inline Indices subElements(const Indices& other) const { - return combineElements([&](idx_t& lhs, idx_t rhs) { lhs -= rhs; }, - other); - } - inline Indices mulElements(const Indices& other) const { - return combineElements([&](idx_t& lhs, idx_t rhs) { lhs *= rhs; }, - other); - } - inline Indices divElements(const Indices& other) const { - return combineElements([&](idx_t& lhs, idx_t rhs) { lhs /= rhs; }, - other); - } - inline Indices minElements(const Indices& other) const { - return combineElements([&](idx_t& lhs, idx_t rhs) { lhs = std::min(lhs, rhs); }, - other); - } - inline Indices maxElements(const Indices& other) const { - return combineElements([&](idx_t& lhs, idx_t rhs) { lhs = std::max(lhs, rhs); }, - other); - } - - // Generic element-wise operator with RHS const. - // Returns a new object. - inline Indices mapElements(std::function func, - idx_t crhs) const { - Indices res(*this); - -#if EXACT_INDICES - // Use just the used elements. - for (int i = 0; i < _ndims; i++) -#else - // Use all to allow unroll and avoid jumps. -#pragma unroll - for (int i = 0; i < max_idxs; i++) -#endif - func(res._idxs[i], crhs); - return res; - } - - // Operate on all elements. - Indices addConst(idx_t crhs) const { - return mapElements([&](idx_t& lhs, idx_t rhs) { lhs += rhs; }, - crhs); - } - Indices subConst(idx_t crhs) const { - return mapElements([&](idx_t& lhs, idx_t rhs) { lhs -= rhs; }, - crhs); - } - Indices mulConst(idx_t crhs) const { - return mapElements([&](idx_t& lhs, idx_t rhs) { lhs *= rhs; }, - crhs); - } - Indices divConst(idx_t crhs) const { - return mapElements([&](idx_t& lhs, idx_t rhs) { lhs /= rhs; }, - crhs); - } - Indices minConst(idx_t crhs) const { - return mapElements([&](idx_t& lhs, idx_t rhs) { lhs = std::min(lhs, rhs); }, - crhs); - } - Indices maxConst(idx_t crhs) const { - return mapElements([&](idx_t& lhs, idx_t rhs) { lhs = std::max(lhs, rhs); }, - crhs); - } - - // Reduce over all elements. - idx_t sum() const { - idx_t res = 0; - for (int i = 0; i < _ndims; i++) - res += _idxs[i]; - return res; - } - idx_t product() const { - idx_t res = 1; - for (int i = 0; i < _ndims; i++) - res *= _idxs[i]; - return res; - } - - // Make string like "x=4, y=8". - std::string makeDimValStr(const GridDimNames& names, - std::string separator=", ", - std::string infix="=", - std::string prefix="", - std::string suffix="") const { - assert((int)names.size() == _ndims); - - // Make a Tuple from names. - IdxTuple tmp; - for (int i = 0; i < int(names.size()); i++) - tmp.addDimBack(names[i], _idxs[i]); - return tmp.makeDimValStr(separator, infix, prefix, suffix); - } - - // Make string like "4, 3, 2". - std::string makeValStr(int nvals, - std::string separator=", ", - std::string prefix="", - std::string suffix="") const { - assert(nvals == _ndims); - - // Make a Tuple w/o useful names. - IdxTuple tmp; - for (int i = 0; i < nvals; i++) - tmp.addDimBack(std::string(1, '0' + char(i)), _idxs[i]); - return tmp.makeValStr(separator, prefix, suffix); - } - }; - - // Define OMP reductions on Indices. -#pragma omp declare reduction(min_idxs : Indices : \ - omp_out = omp_out.minElements(omp_in) ) \ - initializer (omp_priv = omp_orig) -#pragma omp declare reduction(max_idxs : Indices : \ - omp_out = omp_out.maxElements(omp_in) ) \ - initializer (omp_priv = omp_orig) - - // Layout algorithms using Indices. -#include "yask_layouts.hpp" - // Forward defns. - struct StencilContext; + class StencilContext; class YkGridBase; // Some derivations from grid types. @@ -480,96 +173,6 @@ namespace yask { }; typedef std::shared_ptr DimsPtr; - // A group of Indices needed for generated loops. - // See the help message from gen_loops.pl for the - // documentation of the indices. - // Make sure this stays non-virtual. - struct ScanIndices { - int ndims = 0; - - // Input values; not modified. - Indices begin, end; // first and end (beyond last) range of each index. - Indices step; // step value within range. - Indices align; // alignment of steps after first one. - Indices align_ofs; // adjustment for alignment (see below). - Indices group_size; // proximity grouping within range. - - // Alignment: when possible, start positions after the first - // in each dim will be aligned such that ((start - align_ofs) % align) == 0. - - // Output values; set once for entire range. - Indices num_indices; // number of indices in each dim. - idx_t linear_indices = 0; // total indices over all dims (product of num_indices). - - // Output values; set for each index by loop code. - Indices start, stop; // first and last+1 for this sub-range. - Indices index; // 0-based unique index for each sub-range in each dim. - idx_t linear_index = 0; // 0-based index over all dims. - - // Example w/3 sub-ranges in overall range: - // begin end - // |--------------------------------------------| - // |------------------|------------------|------| - // start stop (index = 0) - // start stop (index = 1) - // start stop (index = 2) - - // Default init. - ScanIndices(const Dims& dims, bool use_vec_align, IdxTuple* ofs) : - ndims(NUM_STENCIL_DIMS), - begin(idx_t(0), ndims), - end(idx_t(0), ndims), - step(idx_t(1), ndims), - align(idx_t(1), ndims), - align_ofs(idx_t(0), ndims), - group_size(idx_t(1), ndims), - num_indices(idx_t(1), ndims), - start(idx_t(0), ndims), - stop(idx_t(0), ndims), - index(idx_t(0), ndims) { - - // i: index for stencil dims, j: index for domain dims. - DOMAIN_VAR_LOOP(i, j) { - - // Set alignment to vector lengths. - if (use_vec_align) - align[i] = fold_pts[j]; - - // Set alignment offset. - if (ofs) { - assert(ofs->getNumDims() == ndims - 1); - align_ofs[i] = ofs->getVal(j); - } - } - } - - // Init from outer-loop indices. - // Start..stop from point in outer loop become begin..end - // for this loop. - // - // Example: - // begin (outer) end - // |--------------------------------------------| - // |------------------|------------------|------| - // start | stop - // V - // begin (this) end - // |------------------| - // start stop (may be sub-dividied later) - void initFromOuter(const ScanIndices& outer) { - - // Begin & end set from start & stop of outer loop. - begin = start = outer.start; - end = stop = outer.stop; - - // Pass some values through. - align = outer.align; - align_ofs = outer.align_ofs; - - // Leave others alone. - } - }; - // MPI neighbor info. class MPIInfo { @@ -900,52 +503,8 @@ namespace yask { int _numa_pref = NUMA_PREF; int _numa_pref_max = 128; // GiB to alloc before using PMEM. - // Ctor. - // TODO: move code to settings.cpp. - KernelSettings(DimsPtr dims, KernelEnvPtr env) : - _dims(dims), max_threads(env->max_threads) { - auto& step_dim = dims->_step_dim; - - // Use both step and domain dims for all size tuples. - _rank_sizes = dims->_stencil_dims; - _rank_sizes.setValsSame(def_rank); // size of rank. - _rank_sizes.setVal(step_dim, 0); // not used. - - _region_sizes = dims->_stencil_dims; - _region_sizes.setValsSame(0); // 0 => default settings. - - _block_group_sizes = dims->_stencil_dims; - _block_group_sizes.setValsSame(0); // 0 => min size. - - _block_sizes = dims->_stencil_dims; - _block_sizes.setValsSame(def_block); // size of block. - _block_sizes.setVal(step_dim, 0); // 0 => default. - - _mini_block_group_sizes = dims->_stencil_dims; - _mini_block_group_sizes.setValsSame(0); // 0 => min size. - - _mini_block_sizes = dims->_stencil_dims; - _mini_block_sizes.setValsSame(0); // 0 => default settings. - - _sub_block_group_sizes = dims->_stencil_dims; - _sub_block_group_sizes.setValsSame(0); // 0 => min size. - - _sub_block_sizes = dims->_stencil_dims; - _sub_block_sizes.setValsSame(0); // 0 => default settings. - - _min_pad_sizes = dims->_stencil_dims; - _min_pad_sizes.setValsSame(0); - - _extra_pad_sizes = dims->_stencil_dims; - _extra_pad_sizes.setValsSame(0); - - // Use only domain dims for MPI tuples. - _num_ranks = dims->_domain_dims; - _num_ranks.setValsSame(1); - - _rank_indices = dims->_domain_dims; - _rank_indices.setValsSame(0); - } + // Ctor/dtor. + KernelSettings(DimsPtr dims, KernelEnvPtr env); virtual ~KernelSettings() { } protected: @@ -976,9 +535,9 @@ namespace yask { // values as needed. // Called from prepare_solution(), so it doesn't normally need to be called from user code. // Prints informational info to 'os'. - virtual void adjustSettings(std::ostream& os, KernelEnvPtr env); - virtual void adjustSettings(KernelEnvPtr env) { - adjustSettings(nullop->get_ostream(), env); + virtual void adjustSettings(std::ostream& os); + virtual void adjustSettings() { + adjustSettings(nullop->get_ostream()); } // Determine if this is the first or last rank in given dim. @@ -991,4 +550,222 @@ namespace yask { }; typedef std::shared_ptr KernelSettingsPtr; + // A collection of solution meta-data whose ownership is shared between + // various objects. + struct KernelState { + virtual ~KernelState() { } + + // Output stream for messages. + yask_output_ptr _debug; + + // Env. + KernelEnvPtr _env; + + // Command-line and env parameters. + KernelSettingsPtr _opts; + bool _use_pack_tuners = false; + + // Problem dims. + DimsPtr _dims; + + // Position of inner domain dim in stencil-dims tuple. + // Misc dims will follow this if/when using interleaving. + // TODO: move to Dims. + int _inner_posn = -1; // -1 => not set. + + // Position of outer domain dim in stencil-dims tuple. + // For 1D stencils, _outer_posn == _inner_posn. + // TODO: move to Dims. + int _outer_posn = -1; // -1 => not set. + + // MPI info. + MPIInfoPtr _mpiInfo; + }; + typedef std::shared_ptr KernelStatePtr; + + // Macro to define and set commonly-needed state vars efficiently. + // 'parent_p' is pointer to object containing 'KernelStatePtr _state'. + // '*_posn' vars are positions in stencil_dims. +#define STATE_VARS0(parent_p, pfx) \ + pfx auto* pp = parent_p; \ + assert(pp); \ + pfx auto* state = pp->_state.get(); \ + assert(state); \ + assert(state->_debug.get()); \ + auto& os = state->_debug.get()->get_ostream(); \ + pfx auto* env = state->_env.get(); \ + assert(env); \ + pfx auto* opts = state->_opts.get(); \ + assert(opts); \ + pfx auto* dims = state->_dims.get(); \ + assert(dims); \ + pfx auto* mpiInfo = state->_mpiInfo.get(); \ + assert(mpiInfo); \ + const auto& step_dim = dims->_step_dim; \ + const auto& inner_dim = dims->_inner_dim; \ + const auto& domain_dims = dims->_domain_dims; \ + constexpr int nddims = NUM_DOMAIN_DIMS; \ + assert(nddims == domain_dims.size()); \ + const auto& stencil_dims = dims->_stencil_dims; \ + constexpr int nsdims = NUM_STENCIL_DIMS; \ + assert(nsdims == stencil_dims.size()); \ + auto& misc_dims = dims->_misc_dims; \ + constexpr int step_posn = 0; \ + assert(step_posn == +Indices::step_posn); \ + constexpr int outer_posn = 1; \ + const int inner_posn = state->_inner_posn +#define STATE_VARS(parent_p) STATE_VARS0(parent_p,) +#define STATE_VARS_CONST(parent_p) STATE_VARS0(parent_p, const) + + // A base class containing a shared pointer to a kernel state. + // Used to ensure that the shared state object stays allocated when + // at least one of its owners exists. + class KernelStateBase { + protected: + + // Common state. This is a separate object to allow + // multiple objects to keep it alive via shared ptrs. + KernelStatePtr _state; + + public: + KernelStateBase(KernelStatePtr& state) : + _state(state) {} + KernelStateBase(KernelEnvPtr& env, + KernelSettingsPtr& settings); + virtual ~KernelStateBase() {} + + // Access to state. + KernelStatePtr& get_state() { + assert(_state); + return _state; + } + const KernelStatePtr& get_state() const { + assert(_state); + return _state; + } + KernelSettingsPtr& get_settings() { return _state->_opts; } + const KernelSettingsPtr& get_settings() const { return _state->_opts; } + KernelEnvPtr& get_env() { return _state->_env; } + const KernelEnvPtr& get_env() const { return _state->_env; } + DimsPtr& get_dims() { return _state->_dims; } + const DimsPtr& get_dims() const { return _state->_dims; } + MPIInfoPtr& get_mpi_info() { return _state->_mpiInfo; } + const MPIInfoPtr& get_mpi_info() const { return _state->_mpiInfo; } + bool use_pack_tuners() const { return _state->_use_pack_tuners; } + virtual yask_output_ptr get_debug_output() const { return _state->_debug; } + virtual void set_debug_output(yask_output_ptr debug) { _state->_debug = debug; } + + // Set debug output to cout if my_rank == msg_rank + // or a null stream otherwise. + std::ostream& set_ostr(); + std::ostream& get_ostr() const { + STATE_VARS(this); + return os; + } + + // Set number of threads w/o using thread-divisor. + // Return number of threads. + // Do nothing and return 0 if not properly initialized. + int set_max_threads() { + STATE_VARS(this); + + // Get max number of threads. + int mt = std::max(opts->max_threads, 1); + + // Reset number of OMP threads to max allowed. + omp_set_num_threads(mt); + return mt; + } + + // Get total number of computation threads to use. + int get_num_comp_threads(int& region_threads, int& blk_threads) const { + STATE_VARS(this); + + // Max threads / divisor. + int mt = std::max(opts->max_threads, 1); + int td = std::max(opts->thread_divisor, 1); + int at = mt / td; + at = std::max(at, 1); + + // Blk threads per region thread. + int bt = std::max(opts->num_block_threads, 1); + bt = std::min(bt, at); // Cannot be > 'at'. + blk_threads = bt; + + // Region threads. + int rt = at / bt; + rt = std::max(rt, 1); + region_threads = rt; + + // Total number of block threads. + return bt * rt; + } + + // Set number of threads to use for something other than a region. + // Return number of threads. + // Do nothing and return 0 if not properly initialized. + int set_all_threads() { + int rt, bt; + int at = get_num_comp_threads(rt, bt); + omp_set_num_threads(at); + return at; + } + + // Set number of threads to use for a region. + // Enable nested OMP if there are >1 block threads, + // disable otherwise. + // Return number of threads. + // Do nothing and return 0 if not properly initialized. + int set_region_threads() { + int rt, bt; + int at = get_num_comp_threads(rt, bt); + + // Limit outer nesting to allow num_block_threads per nested + // block loop. + yask_num_threads[0] = rt; + + if (bt > 1) { + omp_set_nested(1); + omp_set_max_active_levels(2); + yask_num_threads[1] = bt; + } + else { + omp_set_nested(0); + omp_set_max_active_levels(1); + yask_num_threads[1] = 0; + } + + omp_set_num_threads(rt); + return rt; + } + + // Set number of threads for a block. + // Return number of threads. + // Do nothing and return 0 if not properly initialized. + int set_block_threads() { + int rt, bt; + int at = get_num_comp_threads(rt, bt); + + if (omp_get_max_active_levels() > 1) + omp_set_num_threads(bt); + return bt; + } + + }; + + // An object that is created from a context, shares ownership of the + // state, and keeps a pointer back to the context. However, it does not + // share ownership of the context itself. That would create an ownership + // loop that would not allow the context to be deleted. + class ContextLinker : + public KernelStateBase { + + protected: + StencilContext* _context; + + public: + ContextLinker(StencilContext* context); + virtual ~ContextLinker() { } + }; + } // yask namespace. diff --git a/src/kernel/lib/setup.cpp b/src/kernel/lib/setup.cpp index cc6a69ce..ab69aef5 100644 --- a/src/kernel/lib/setup.cpp +++ b/src/kernel/lib/setup.cpp @@ -31,37 +31,42 @@ using namespace std; namespace yask { - // Constructor. - StencilContext::StencilContext(KernelEnvPtr kenv, - KernelSettingsPtr ksettings) : - _ostr(&std::cout), - _env(kenv), - _opts(ksettings), - _dims(ksettings->_dims), - _at(this, _opts.get()) - { - // Set debug output object. - yask_output_factory yof; - set_debug_output(yof.new_stdout_output()); - - // Create MPI Info object. - _mpiInfo = std::make_shared(ksettings->_dims); - - // Set output to msg-rank per settings. - set_ostr(); + // ScanIndices ctor. + ScanIndices::ScanIndices(const Dims& dims, bool use_vec_align, IdxTuple* ofs) : + ndims(NUM_STENCIL_DIMS), + begin(idx_t(0), ndims), + end(idx_t(0), ndims), + step(idx_t(1), ndims), + align(idx_t(1), ndims), + align_ofs(idx_t(0), ndims), + group_size(idx_t(1), ndims), + num_indices(idx_t(1), ndims), + start(idx_t(0), ndims), + stop(idx_t(0), ndims), + index(idx_t(0), ndims) { + + // i: index for stencil dims, j: index for domain dims. + DOMAIN_VAR_LOOP(i, j) { - // Set standard context vars after above init code. - CONTEXT_VARS(this); + // Set alignment to vector lengths. + if (use_vec_align) + align[i] = fold_pts[j]; - // Find index posns in stencil dims. - DOMAIN_VAR_LOOP(i, j) { - auto& dname = stencil_dims.getDimName(i); - if (_outer_posn < 0) - _outer_posn = i; - if (dname == dims->_inner_dim) - _inner_posn = i; + // Set alignment offset. + if (ofs) { + assert(ofs->getNumDims() == ndims - 1); + align_ofs[i] = ofs->getVal(j); + } } - assert(outer_posn == _outer_posn); + } + + // Context ctor. + StencilContext::StencilContext(KernelEnvPtr& kenv, + KernelSettingsPtr& ksettings) : + KernelStateBase(kenv, ksettings), + _at(this, ksettings.get()) + { + STATE_VARS(this); // Init various tuples to make sure they have the correct dims. rank_domain_offsets = domain_dims; @@ -83,7 +88,7 @@ namespace yask { // if not using MPI to properly init these vars. Called from // prepare_solution(), so it doesn't normally need to be called from user code. void StencilContext::setupRank() { - CONTEXT_VARS(this); + STATE_VARS(this); auto me = env->my_rank; int num_neighbors = 0; @@ -129,9 +134,9 @@ namespace yask { // Exchange coord and size info between all ranks. for (int rn = 0; rn < env->num_ranks; rn++) { MPI_Bcast(&coords[rn][0], nddims, MPI_INTEGER8, - rn, _env->comm); + rn, env->comm); MPI_Bcast(&rsizes[rn][0], nddims, MPI_INTEGER8, - rn, _env->comm); + rn, env->comm); } // Now, the tables are filled in for all ranks. @@ -205,7 +210,7 @@ namespace yask { auto mysz = rsizes[me][dj]; auto rnsz = rsizes[rn][dj]; if (mysz != rnsz) { - auto& dnamej = _opts->_rank_indices.getDimName(dj); + auto& dnamej = opts->_rank_indices.getDimName(dj); FORMAT_AND_THROW_YASK_EXCEPTION ("Error: rank " << rn << " and " << me << " are both at rank-index " << coords[me][di] << @@ -236,11 +241,11 @@ namespace yask { assert(roffsets.max() <= 2); // Convert the offsets into a 1D index. - auto rn_ofs = _mpiInfo->getNeighborIndex(roffsets); - TRACE_MSG("neighborhood size = " << _mpiInfo->neighborhood_sizes.makeDimValStr() << + auto rn_ofs = mpiInfo->getNeighborIndex(roffsets); + TRACE_MSG("neighborhood size = " << mpiInfo->neighborhood_sizes.makeDimValStr() << " & roffsets of rank " << rn << " = " << roffsets.makeDimValStr() << " => " << rn_ofs); - assert(idx_t(rn_ofs) < _mpiInfo->neighborhood_size); + assert(idx_t(rn_ofs) < mpiInfo->neighborhood_size); // Save rank of this neighbor into the MPI info object. mpiInfo->my_neighbors.at(rn_ofs) = rn; @@ -283,7 +288,7 @@ namespace yask { auto rnsz = rsizes[rn][j]; auto vlen = fold_pts[j]; if (rnsz % vlen != 0) { - auto& dname = _opts->_rank_indices.getDimName(j); + auto& dname = opts->_rank_indices.getDimName(j); TRACE_MSG("cannot use vector halo exchange with rank " << rn << " because its size in '" << dname << "' is " << rnsz); vlen_mults = false; @@ -291,7 +296,7 @@ namespace yask { } // Save vec-mult flag. - _mpiInfo->has_all_vlen_mults.at(rn_ofs) = vlen_mults; + mpiInfo->has_all_vlen_mults.at(rn_ofs) = vlen_mults; } // self or immediate neighbor in any direction. @@ -312,7 +317,7 @@ namespace yask { // Set wave-front settings. // This should be called anytime a setting or rank offset is changed. void StencilContext::update_grid_info() { - CONTEXT_VARS(this); + STATE_VARS(this); // If we haven't finished constructing the context, it's too early // to do this. @@ -331,18 +336,18 @@ namespace yask { continue; // Loop through each domain dim. - for (auto& dim : _dims->_domain_dims.getDims()) { + for (auto& dim : domain_dims.getDims()) { auto& dname = dim.getName(); if (gp->is_dim_used(dname)) { // Rank domains. - gp->_set_domain_size(dname, _opts->_rank_sizes[dname]); + gp->_set_domain_size(dname, opts->_rank_sizes[dname]); // Pads. // Set via both 'extra' and 'min'; larger result will be used. - gp->set_extra_pad_size(dname, _opts->_extra_pad_sizes[dname]); - gp->set_min_pad_size(dname, _opts->_min_pad_sizes[dname]); + gp->set_extra_pad_size(dname, opts->_extra_pad_sizes[dname]); + gp->set_min_pad_size(dname, opts->_min_pad_sizes[dname]); // Offsets. gp->_set_rank_offset(dname, rank_domain_offsets[dname]); @@ -358,9 +363,9 @@ namespace yask { // Calculate wave-front shifts. // See the wavefront diagram in run_solution() for description // of angles and extensions. - idx_t tb_steps = _opts->_block_sizes[step_dim]; // use requested size; actual may be less. + idx_t tb_steps = opts->_block_sizes[step_dim]; // use requested size; actual may be less. assert(tb_steps >= 0); - wf_steps = _opts->_region_sizes[step_dim]; + wf_steps = opts->_region_sizes[step_dim]; wf_steps = max(wf_steps, tb_steps); // round up WF steps if less than TB steps. assert(wf_steps >= 0); num_wf_shifts = 0; @@ -377,18 +382,18 @@ namespace yask { assert(num_wf_shifts >= 0); // Determine whether separate tuners can be used. - _use_pack_tuners = (tb_steps == 0) && (stPacks.size() > 1); + state->_use_pack_tuners = (tb_steps == 0) && (stPacks.size() > 1); // Calculate angles and related settings. - for (auto& dim : _dims->_domain_dims.getDims()) { + for (auto& dim : 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]; + auto rnsize = opts->_region_sizes[dname]; + auto rksize = opts->_rank_sizes[dname]; + auto nranks = opts->_num_ranks[dname]; // Req'd shift in this dim based on max halos. // TODO: use different angle for L & R side of each pack. - idx_t angle = ROUND_UP(max_halos[dname], _dims->_fold_pts[dname]); + idx_t angle = ROUND_UP(max_halos[dname], dims->_fold_pts[dname]); // Determine the spatial skewing angles for WF tiling. We // only need non-zero angles if the region size is less than the @@ -409,7 +414,7 @@ namespace yask { // Is domain size at least as large as halo + wf_ext in direction // when there are multiple ranks? auto min_size = max_halos[dname] + shifts; - if (_opts->_num_ranks[dname] > 1 && rksize < min_size) { + if (opts->_num_ranks[dname] > 1 && rksize < min_size) { FORMAT_AND_THROW_YASK_EXCEPTION("Error: rank-domain size of " << rksize << " in '" << dname << "' dim is less than minimum size of " << min_size << ", which is based on stencil halos and temporal wave-front sizes"); @@ -417,11 +422,11 @@ namespace yask { // If there is another rank to the left, set wave-front // extension on the left. - left_wf_exts[dname] = _opts->is_first_rank(dname) ? 0 : shifts; + left_wf_exts[dname] = opts->is_first_rank(dname) ? 0 : shifts; // If there is another rank to the right, set wave-front // extension on the right. - right_wf_exts[dname] = _opts->is_last_rank(dname) ? 0 : shifts; + right_wf_exts[dname] = opts->is_last_rank(dname) ? 0 : shifts; } // Now that wave-front settings are known, we can push this info @@ -436,7 +441,7 @@ namespace yask { continue; // Loop through each domain dim. - for (auto& dim : _dims->_domain_dims.getDims()) { + for (auto& dim : domain_dims.getDims()) { auto& dname = dim.getName(); if (gp->is_dim_used(dname)) { @@ -459,7 +464,7 @@ namespace yask { // considering temporal conditions; this assumes worst-case, which is // all packs always done. void StencilContext::update_tb_info() { - CONTEXT_VARS(this); + STATE_VARS(this); // Get requested size. tb_steps = opts->_block_sizes[step_dim]; @@ -485,21 +490,21 @@ namespace yask { // Loop through each domain dim. DOMAIN_VAR_LOOP(i, j) { - auto& dim = _dims->_domain_dims.getDim(j); + auto& dim = domain_dims.getDim(j); auto& dname = dim.getName(); - auto rnsize = _opts->_region_sizes[i]; + auto rnsize = opts->_region_sizes[i]; // There must be only one block size when using TB, so get // sizes from context settings instead of packs. - assert(_use_pack_tuners == false); - auto blksize = _opts->_block_sizes[i]; - auto mblksize = _opts->_mini_block_sizes[i]; + assert(state->_use_pack_tuners == false); + auto blksize = opts->_block_sizes[i]; + auto mblksize = opts->_mini_block_sizes[i]; // Req'd shift in this dim based on max halos. // Can't use separate L & R shift because of possible data reuse in grids. // Can't use separate shifts for each pack for same reason. // TODO: make round-up optional. - auto fpts = _dims->_fold_pts[j]; + auto fpts = dims->_fold_pts[j]; idx_t angle = ROUND_UP(max_halos[j], fpts); // Determine the spatial skewing angles for MB. @@ -591,7 +596,7 @@ namespace yask { // TODO: use actual number of shifts dynamically instead of this // max. DOMAIN_VAR_LOOP(i, j) { - auto blk_sz = _opts->_block_sizes[i]; + auto blk_sz = opts->_block_sizes[i]; auto tb_angle = tb_angles[j]; tb_widths[j] = blk_sz; tb_tops[j] = blk_sz; @@ -601,7 +606,7 @@ namespace yask { if (num_tb_shifts > 0 && tb_angle > 0) { // See equations above for block size. - auto fpts = _dims->_fold_pts[j]; + auto fpts = dims->_fold_pts[j]; idx_t min_top_sz = fpts; idx_t sa = num_tb_shifts * tb_angle; idx_t min_blk_width = min_top_sz + 2 * sa; @@ -619,7 +624,7 @@ namespace yask { // Init all grids & params by calling initFn. void StencilContext::initValues(function realInitFn) { - CONTEXT_VARS(this); + STATE_VARS(this); real_t seed = 0.1; os << "Initializing grids...\n" << flush; @@ -637,7 +642,7 @@ namespace yask { // Set the bounding-box for each stencil-bundle and whole domain. void StencilContext::find_bounding_boxes() { - ostream& os = get_ostr(); + STATE_VARS(this); os << "Constructing bounding boxes for " << stBundles.size() << " stencil-bundles(s)...\n" << flush; YaskTimer bbtimer; @@ -645,7 +650,7 @@ namespace yask { // Rank BB is based only on rank offsets and rank domain sizes. rank_bb.bb_begin = rank_domain_offsets; - rank_bb.bb_end = rank_domain_offsets.addElements(_opts->_rank_sizes, false); + rank_bb.bb_end = rank_domain_offsets.addElements(opts->_rank_sizes, false); rank_bb.update_bb("rank", *this, true, &os); // BB may be extended for wave-fronts. @@ -659,8 +664,8 @@ namespace yask { // Find BB for each pack. for (auto sp : stPacks) { auto& spbb = sp->getBB(); - spbb.bb_begin = _dims->_domain_dims; - spbb.bb_end = _dims->_domain_dims; + spbb.bb_begin = domain_dims; + spbb.bb_end = domain_dims; // Find BB for each bundle in this pack. for (auto sb : *sp) { @@ -699,8 +704,8 @@ namespace yask { // Copy BB vars from another. void StencilBundleBase::copy_bounding_box(const StencilBundleBase* src) { - CONTEXT_VARS(_generic_context); - TRACE_MSG3("copy_bounding_box for '" << get_name() << "' from '" << + STATE_VARS(this); + TRACE_MSG("copy_bounding_box for '" << get_name() << "' from '" << src->get_name() << "'..."); _bundle_bb = src->_bundle_bb; @@ -713,11 +718,12 @@ namespace yask { // Step-vars are tested dynamically for each step // as it is executed. void StencilBundleBase::find_bounding_box() { - CONTEXT_VARS(_generic_context); - TRACE_MSG3("find_bounding_box for '" << get_name() << "'..."); + STATE_VARS(this); + TRACE_MSG("find_bounding_box for '" << get_name() << "'..."); // Init overall bundle BB to that of parent and clear list. - _bundle_bb = cp->ext_bb; + assert(_context); + _bundle_bb = _context->ext_bb; assert(_bundle_bb.bb_valid); _bb_list.clear(); @@ -727,7 +733,7 @@ namespace yask { // If there is no condition, just add full BB to list. if (!is_sub_domain_expr()) { - TRACE_MSG3("adding 1 sub-BB: [" << _bundle_bb.bb_begin.makeDimValStr() << + TRACE_MSG("adding 1 sub-BB: [" << _bundle_bb.bb_begin.makeDimValStr() << " ... " << _bundle_bb.bb_end.makeDimValStr() << ")"); _bb_list.push_back(_bundle_bb); return; @@ -744,7 +750,7 @@ namespace yask { idx_t outer_len = _bundle_bb.bb_len[odim]; idx_t nthreads = yask_get_num_threads(); idx_t len_per_thr = CEIL_DIV(outer_len, nthreads); - TRACE_MSG3("find_bounding_box: running " << nthreads << " thread(s) over " << + TRACE_MSG("find_bounding_box: running " << nthreads << " thread(s) over " << outer_len << " point(s) in outer dim"); // List of full BBs for each thread. @@ -818,7 +824,7 @@ namespace yask { while (do_scan) { do_scan = false; - TRACE_MSG3("scanning " << scan_len.makeDimValStr(" * ") << + TRACE_MSG("scanning " << scan_len.makeDimValStr(" * ") << " starting at " << bdpt.makeDimValStr()); scan_len.visitAllPoints ([&](const IdxTuple& eofs, size_t eidx) { @@ -874,14 +880,14 @@ namespace yask { return true; // keep looking for invalid point. }); // Looking for invalid point. } // while scan is adjusted. - TRACE_MSG3("found BB " << scan_len.makeDimValStr(" * ") << + TRACE_MSG("found BB " << scan_len.makeDimValStr(" * ") << " starting at " << bdpt.makeDimValStr()); // 'scan_len' now contains sizes of the new BB. BoundingBox new_bb; new_bb.bb_begin = bdpt; new_bb.bb_end = bdpt.addElements(scan_len); - new_bb.update_bb("sub-bb", *cp, true); + new_bb.update_bb("sub-bb", *_context, true); cur_bb_list.push_back(new_bb); } // new rect found. @@ -889,7 +895,7 @@ namespace yask { return true; // from labmda; keep looking. }); // Looking for new rects. }); // threads/slices. - TRACE_MSG3("sub-bbs found in " << + TRACE_MSG("sub-bbs found in " << bbtimer.get_secs_since_start() << " secs."); // At this point, we have a set of full BBs. @@ -900,13 +906,13 @@ namespace yask { // TODO: merge in a parallel binary tree instead of sequentially. for (int n = 0; n < nthreads; n++) { auto& cur_bb_list = bb_lists[n]; - TRACE_MSG3("processing " << cur_bb_list.size() << + TRACE_MSG("processing " << cur_bb_list.size() << " sub-BB(s) in bundle '" << get_name() << "' from thread " << n); // BBs in slice 'n'. for (auto& bbn : cur_bb_list) { - TRACE_MSG3(" sub-BB: [" << bbn.bb_begin.makeDimValStr() << + TRACE_MSG(" sub-BB: [" << bbn.bb_begin.makeDimValStr() << " ... " << bbn.bb_end.makeDimValStr() << ")"); // Don't bother with empty BB. @@ -948,9 +954,9 @@ namespace yask { // Merge by just increasing the size of 'bb'. bb.bb_end[odim] = bbn.bb_end[odim]; - TRACE_MSG3(" merging to form [" << bb.bb_begin.makeDimValStr() << + TRACE_MSG(" merging to form [" << bb.bb_begin.makeDimValStr() << " ... " << bb.bb_end.makeDimValStr() << ")"); - bb.update_bb("sub-bb", *cp, true); + bb.update_bb("sub-bb", *_context, true); break; } } @@ -958,15 +964,15 @@ namespace yask { // If not merged, add 'bbn' as new. if (!do_merge) { _bb_list.push_back(bbn); - TRACE_MSG3(" adding as final sub-BB #" << _bb_list.size()); + TRACE_MSG(" adding as final sub-BB #" << _bb_list.size()); } } } // Finalize overall BB. - _bundle_bb.update_bb(get_name(), *cp, false); + _bundle_bb.update_bb(get_name(), *_context, false); bbtimer.stop(); - TRACE_MSG3("find-bounding-box: done in " << + TRACE_MSG("find-bounding-box: done in " << bbtimer.get_elapsed_secs() << " secs."); } diff --git a/src/kernel/lib/soln_apis.cpp b/src/kernel/lib/soln_apis.cpp index ad966dd1..f2c53d72 100644 --- a/src/kernel/lib/soln_apis.cpp +++ b/src/kernel/lib/soln_apis.cpp @@ -36,43 +36,45 @@ namespace yask { #define GET_SOLN_API(api_name, expr, step_ok, domain_ok, misc_ok, prep_req) \ idx_t StencilContext::api_name(const string& dim) const { \ + STATE_VARS(this); \ if (prep_req && !rank_bb.bb_valid) \ THROW_YASK_EXCEPTION("Error: '" #api_name \ "()' called before calling 'prepare_solution()'"); \ - checkDimType(dim, #api_name, step_ok, domain_ok, misc_ok); \ + dims->checkDimType(dim, #api_name, step_ok, domain_ok, misc_ok); \ return expr; \ } - GET_SOLN_API(get_num_ranks, _opts->_num_ranks[dim], false, true, false, false) + GET_SOLN_API(get_num_ranks, opts->_num_ranks[dim], false, true, false, false) GET_SOLN_API(get_overall_domain_size, overall_domain_sizes[dim], false, true, false, true) - 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_block_size, _opts->_block_sizes[dim], true, true, false, false) + 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_block_size, opts->_block_sizes[dim], true, 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) - GET_SOLN_API(get_min_pad_size, _opts->_min_pad_sizes[dim], false, true, false, false) - GET_SOLN_API(get_rank_index, _opts->_rank_indices[dim], false, true, false, true) + GET_SOLN_API(get_min_pad_size, opts->_min_pad_sizes[dim], false, true, false, false) + GET_SOLN_API(get_rank_index, opts->_rank_indices[dim], false, true, false, true) #undef GET_SOLN_API // The grid sizes updated any time these settings are changed. #define SET_SOLN_API(api_name, expr, step_ok, domain_ok, misc_ok, reset_prep) \ void StencilContext::api_name(const string& dim, idx_t n) { \ - checkDimType(dim, #api_name, step_ok, domain_ok, misc_ok); \ + STATE_VARS(this); \ + dims->checkDimType(dim, #api_name, step_ok, domain_ok, misc_ok); \ expr; \ update_grid_info(); \ if (reset_prep) rank_bb.bb_valid = ext_bb.bb_valid = false; \ } - SET_SOLN_API(set_rank_index, _opts->_rank_indices[dim] = n, false, true, false, true) - SET_SOLN_API(set_num_ranks, _opts->_num_ranks[dim] = n, false, true, false, true) - SET_SOLN_API(set_rank_domain_size, _opts->_rank_sizes[dim] = n, false, true, false, true) - SET_SOLN_API(set_region_size, _opts->_region_sizes[dim] = n, true, true, false, true) - SET_SOLN_API(set_block_size, _opts->_block_sizes[dim] = n, true, true, false, true) - SET_SOLN_API(set_min_pad_size, _opts->_min_pad_sizes[dim] = n, false, true, false, false) + SET_SOLN_API(set_rank_index, opts->_rank_indices[dim] = n, false, true, false, true) + SET_SOLN_API(set_num_ranks, opts->_num_ranks[dim] = n, false, true, false, true) + SET_SOLN_API(set_rank_domain_size, opts->_rank_sizes[dim] = n, false, true, false, true) + SET_SOLN_API(set_region_size, opts->_region_sizes[dim] = n, true, true, false, true) + SET_SOLN_API(set_block_size, opts->_block_sizes[dim] = n, true, true, false, true) + SET_SOLN_API(set_min_pad_size, opts->_min_pad_sizes[dim] = n, false, true, false, false) #undef SET_SOLN_API // Allocate grids and MPI bufs. // Initialize some data structures. void StencilContext::prepare_solution() { - CONTEXT_VARS(this); + STATE_VARS(this); // Don't continue until all ranks are this far. env->global_barrier(); @@ -99,22 +101,22 @@ namespace yask { // Adjust all settings before setting MPI buffers or sizing grids. // Prints adjusted settings. // TODO: print settings again after auto-tuning. - _opts->adjustSettings(os, _env); + opts->adjustSettings(os); // 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->getLocalSettings() = *_opts; + sp->getLocalSettings() = *opts; // Init auto-tuner to run silently during normal operation. reset_auto_tuner(true, false); // Report ranks. os << endl; - os << "Num MPI ranks: " << _env->get_num_ranks() << endl; - os << "This MPI rank index: " << _env->get_rank_index() << endl; + os << "Num MPI ranks: " << env->get_num_ranks() << endl; + os << "This MPI rank index: " << env->get_rank_index() << endl; // report threads. { @@ -189,36 +191,36 @@ namespace yask { } void StencilContext::print_info() { - CONTEXT_VARS(this); + STATE_VARS(this); // Calc and report total allocation and domain sizes. rank_nbytes = get_num_bytes(); - tot_nbytes = sumOverRanks(rank_nbytes, _env->comm); + tot_nbytes = sumOverRanks(rank_nbytes, env->comm); rank_domain_pts = rank_bb.bb_num_points; - tot_domain_pts = sumOverRanks(rank_domain_pts, _env->comm); + 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): " << + "\nOverall problem size in " << env->num_ranks << " rank(s) (points): " << makeNumStr(tot_domain_pts) << - "\nTotal overall allocation in " << _env->num_ranks << " rank(s): " << + "\nTotal overall allocation in " << env->num_ranks << " rank(s): " << makeByteStr(tot_nbytes) << endl; // 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 << - " mini-block-size: " << _opts->_mini_block_sizes.makeDimValStr(" * ") << endl << - " block-size: " << _opts->_block_sizes.makeDimValStr(" * ") << endl << - " region-size: " << _opts->_region_sizes.makeDimValStr(" * ") << endl << - " rank-domain-size: " << _opts->_rank_sizes.makeDimValStr(" * ") << endl << + " vector-size: " << dims->_fold_pts.makeDimValStr(" * ") << endl << + " cluster-size: " << dims->_cluster_pts.makeDimValStr(" * ") << endl << + " sub-block-size: " << opts->_sub_block_sizes.makeDimValStr(" * ") << endl << + " mini-block-size: " << opts->_mini_block_sizes.makeDimValStr(" * ") << endl << + " block-size: " << opts->_block_sizes.makeDimValStr(" * ") << endl << + " region-size: " << opts->_region_sizes.makeDimValStr(" * ") << endl << + " rank-domain-size: " << opts->_rank_sizes.makeDimValStr(" * ") << endl << " overall-problem-size: " << overall_domain_sizes.makeDimValStr(" * ") << endl; #ifdef SHOW_GROUPS os << - " sub-block-group-size: " << _opts->_sub_block_group_sizes.makeDimValStr(" * ") << endl << - " block-group-size: " << _opts->_block_group_sizes.makeDimValStr(" * ") << endl << + " sub-block-group-size: " << opts->_sub_block_group_sizes.makeDimValStr(" * ") << endl << + " block-group-size: " << opts->_block_group_sizes.makeDimValStr(" * ") << endl << #endif os << "\nOther settings:\n" " yask-version: " << yask_get_version_string() << endl << @@ -228,8 +230,8 @@ namespace yask { " ... " << rank_bb.bb_end.subElements(1).makeDimValStr() << endl; #ifdef USE_MPI os << - " num-ranks: " << _opts->_num_ranks.makeDimValStr(" * ") << endl << - " rank-indices: " << _opts->_rank_indices.makeDimValStr() << endl << + " num-ranks: " << opts->_num_ranks.makeDimValStr(" * ") << endl << + " rank-indices: " << opts->_rank_indices.makeDimValStr() << endl << " rank-domain-offsets: " << rank_domain_offsets.makeDimValOffsetStr() << endl; if (opts->overlap_comms) os << @@ -238,8 +240,8 @@ namespace yask { #endif os << " vector-len: " << VLEN << endl << - " extra-padding: " << _opts->_extra_pad_sizes.makeDimValStr() << endl << - " minimum-padding: " << _opts->_min_pad_sizes.makeDimValStr() << endl << + " extra-padding: " << opts->_extra_pad_sizes.makeDimValStr() << endl << + " 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; @@ -259,7 +261,7 @@ namespace yask { // Dealloc grids, etc. void StencilContext::end_solution() { - CONTEXT_VARS(this); + STATE_VARS(this); // Final halo exchange (usually not needed). exchange_halos(); @@ -294,10 +296,11 @@ namespace yask { } string StencilContext::apply_command_line_options(const string& args) { + STATE_VARS(this); // Create a parser and add base options to it. CommandLineParser parser; - _opts->add_options(parser); + opts->add_options(parser); // Tokenize default args. vector argsv; @@ -318,7 +321,7 @@ namespace yask { // Add a new grid to the containers. void StencilContext::addGrid(YkGridPtr gp, bool is_output) { - CONTEXT_VARS(this); + STATE_VARS(this); assert(gp); auto& gname = gp->get_name(); if (gridMap.count(gname)) @@ -345,7 +348,7 @@ namespace yask { /// Get statistics associated with preceding calls to run_solution(). yk_stats_ptr StencilContext::get_stats() { - CONTEXT_VARS(this); + STATE_VARS(this); // Numbers of threads. int rthr, bthr; diff --git a/src/kernel/lib/stencil_calc.cpp b/src/kernel/lib/stencil_calc.cpp index b89abf7b..50d0b80c 100644 --- a/src/kernel/lib/stencil_calc.cpp +++ b/src/kernel/lib/stencil_calc.cpp @@ -40,8 +40,8 @@ namespace yask { void StencilBundleBase::calc_mini_block(int region_thread_idx, KernelSettings& settings, const ScanIndices& mini_block_idxs) { - CONTEXT_VARS(_generic_context); - TRACE_MSG3("calc_mini_block('" << get_name() << "'): [" << + STATE_VARS(this); + TRACE_MSG("calc_mini_block('" << get_name() << "'): [" << mini_block_idxs.begin.makeValStr(nsdims) << " ... " << mini_block_idxs.end.makeValStr(nsdims) << ") by " << mini_block_idxs.step.makeValStr(nsdims) << @@ -57,7 +57,7 @@ namespace yask { // Nothing to do if outer BB is empty. if (_bundle_bb.bb_num_points == 0) { - TRACE_MSG3("calc_mini_block: empty BB"); + TRACE_MSG("calc_mini_block: empty BB"); return; } @@ -75,7 +75,7 @@ namespace yask { // Loop through each solid BB for this bundle. // For each BB, calc intersection between it and 'mini_block_idxs'. // If this is non-empty, apply the bundle to all its required sub-blocks. - TRACE_MSG3("calc_mini_block('" << get_name() << "'): checking " << + TRACE_MSG("calc_mini_block('" << get_name() << "'): checking " << _bb_list.size() << " BB(s)"); int bbn = 0; for (auto& bb : _bb_list) { @@ -106,12 +106,12 @@ namespace yask { // nothing to do? if (!bb_ok) { - TRACE_MSG3("calc_mini_block for bundle '" << get_name() << + TRACE_MSG("calc_mini_block for bundle '" << get_name() << "': no overlap between bundle " << bbn << " and current block"); continue; // to next BB. } - TRACE_MSG3("calc_mini_block('" << get_name() << + TRACE_MSG("calc_mini_block('" << get_name() << "'): after trimming for BB " << bbn << ": [" << mb_idxs.begin.makeValStr(nsdims) << " ... " << mb_idxs.end.makeValStr(nsdims) << ")"); @@ -128,7 +128,7 @@ namespace yask { // eventually work on a separate sub-block. This is nested within // an OMP region thread. If there is only one block per thread, // nested OMP is disabled, and this OMP pragma does nothing. - int nbt = cp->set_block_threads(); + int nbt = _context->set_block_threads(); bool bind_threads = nbt > 1 && settings.bind_block_threads; _Pragma("omp parallel proc_bind(spread)") { int block_thread_idx = (nbt <= 1) ? 0 : omp_get_thread_num(); @@ -158,7 +158,7 @@ namespace yask { adj_mb_idxs.step[i] = adj_mb_idxs.end[i] - adj_mb_idxs.begin[i]; } - TRACE_MSG3("calc_mini_block('" << get_name() << "'): " << + TRACE_MSG("calc_mini_block('" << get_name() << "'): " << " for reqd bundle '" << sg->get_name() << "': [" << adj_mb_idxs.begin.makeValStr(nsdims) << " ... " << adj_mb_idxs.end.makeValStr(nsdims) << ") by " << @@ -205,8 +205,8 @@ namespace yask { int block_thread_idx, KernelSettings& settings, const ScanIndices& mini_block_idxs) { - CONTEXT_VARS(_generic_context); - TRACE_MSG3("calc_sub_block_scalar for bundle '" << get_name() << "': [" << + STATE_VARS(this); + TRACE_MSG("calc_sub_block_scalar for bundle '" << get_name() << "': [" << mini_block_idxs.start.makeValStr(nsdims) << " ... " << mini_block_idxs.stop.makeValStr(nsdims) << ") by region thread " << region_thread_idx << @@ -243,8 +243,8 @@ namespace yask { int block_thread_idx, KernelSettings& settings, const ScanIndices& mini_block_idxs) { - CONTEXT_VARS(_generic_context); - TRACE_MSG3("calc_sub_block_vec for bundle '" << get_name() << "': [" << + STATE_VARS(this); + TRACE_MSG("calc_sub_block_vec for bundle '" << get_name() << "': [" << mini_block_idxs.start.makeValStr(nsdims) << " ... " << mini_block_idxs.stop.makeValStr(nsdims) << ") by region thread " << region_thread_idx << @@ -308,7 +308,7 @@ namespace yask { DOMAIN_VAR_LOOP(i, j) { // Rank offset. - auto rofs = cp->rank_domain_offsets[j]; + auto rofs = _context->rank_domain_offsets[j]; // Begin/end of rank-relative scalar elements in this dim. auto ebgn = sub_block_idxs.begin[i] - rofs; @@ -459,7 +459,7 @@ namespace yask { // Full rectilinear polytope of aligned clusters: use optimized code. if (do_clusters) { - TRACE_MSG3("calc_sub_block_vec: using cluster code for [" << + TRACE_MSG("calc_sub_block_vec: using cluster code for [" << sub_block_fcidxs.begin.makeValStr(nsdims) << " ... " << sub_block_fcidxs.end.makeValStr(nsdims) << ") by region thread " << region_thread_idx << @@ -486,7 +486,7 @@ namespace yask { // Full and partial peel/remainder vectors in all dims except // the inner one. if (do_vectors) { - TRACE_MSG3("calc_sub_block_vec: using vector code for [" << + TRACE_MSG("calc_sub_block_vec: using vector code for [" << sub_block_vidxs.begin.makeValStr(nsdims) << " ... " << sub_block_vidxs.end.makeValStr(nsdims) << ") *not* within full vector-clusters at [" << @@ -570,7 +570,7 @@ namespace yask { misc_idxs.step.setFromConst(1); misc_idxs.align.setFromConst(1); - TRACE_MSG3("calc_sub_block_vec: using scalar code for [" << + TRACE_MSG("calc_sub_block_vec: using scalar code for [" << misc_idxs.begin.makeValStr(nsdims) << " ... " << misc_idxs.end.makeValStr(nsdims) << ") *not* within vectors at [" << @@ -587,13 +587,13 @@ namespace yask { #define MISC_FN(pt_idxs) do { \ bool ok = false; \ DOMAIN_VAR_LOOP(i, j) { \ - auto rofs = cp->rank_domain_offsets[j]; \ + auto rofs = _context->rank_domain_offsets[j]; \ if (pt_idxs.start[i] < rofs + sub_block_vidxs.begin[i] || \ pt_idxs.start[i] >= rofs + sub_block_vidxs.end[i]) { \ ok = true; break; } \ } \ if (ok) { \ - TRACE_MSG3("calc_sub_block_vec: at pt " << \ + TRACE_MSG("calc_sub_block_vec: at pt " << \ pt_idxs.start.makeValStr(nsdims)); \ calc_scalar(region_thread_idx, pt_idxs.start); \ } \ @@ -615,8 +615,8 @@ namespace yask { void StencilBundleBase::calc_loop_of_clusters(int region_thread_idx, int block_thread_idx, const ScanIndices& loop_idxs) { - CONTEXT_VARS(_generic_context); - TRACE_MSG3("calc_loop_of_clusters: local vector-indices [" << + STATE_VARS(this); + TRACE_MSG("calc_loop_of_clusters: local vector-indices [" << loop_idxs.start.makeValStr(nsdims) << " ... " << loop_idxs.stop.makeValStr(nsdims) << ") by region thread " << region_thread_idx << @@ -649,8 +649,8 @@ namespace yask { int block_thread_idx, const ScanIndices& loop_idxs, idx_t write_mask) { - CONTEXT_VARS(_generic_context); - TRACE_MSG3("calc_loop_of_vectors: local vector-indices [" << + STATE_VARS(this); + TRACE_MSG("calc_loop_of_vectors: local vector-indices [" << loop_idxs.start.makeValStr(nsdims) << " ... " << loop_idxs.stop.makeValStr(nsdims) << ") w/write-mask = 0x" << hex << write_mask << dec << @@ -688,7 +688,7 @@ namespace yask { // Returns adjusted indices. ScanIndices StencilBundleBase::adjust_span(int region_thread_idx, const ScanIndices& idxs) const { - CONTEXT_VARS(_generic_context); + STATE_VARS(this); ScanIndices adj_idxs(idxs); // Loop thru vecs of scratch grids for this bundle. @@ -723,7 +723,7 @@ namespace yask { adj_idxs.end[i] = idxs.end[i] + rh; // Make sure grid covers index bounds. - TRACE_MSG3("adjust_span: mini-blk [" << + TRACE_MSG("adjust_span: mini-blk [" << idxs.begin[i] << "..." << idxs.end[i] << ") adjusted to [" << adj_idxs.begin[i] << "..." << diff --git a/src/kernel/lib/stencil_calc.hpp b/src/kernel/lib/stencil_calc.hpp index ff756112..29edce67 100644 --- a/src/kernel/lib/stencil_calc.hpp +++ b/src/kernel/lib/stencil_calc.hpp @@ -32,9 +32,10 @@ namespace yask { // A stencil context contains one or more packs. // A pure-virtual class base for a stencil bundle. - class StencilBundleBase { + class StencilBundleBase : + public ContextLinker { + protected: - StencilContext* _generic_context = 0; std::string _name; int _scalar_fp_ops = 0; int _scalar_points_read = 0; @@ -65,7 +66,7 @@ namespace yask { // Ranks offsets must already be subtracted. // Each dim in 'orig' must be a multiple of corresponding vec len. void normalize_indices(const Indices& orig, Indices& norm) const { - CONTEXT_VARS(_generic_context); + STATE_VARS(this); assert(orig.getNumDims() == nsdims); assert(norm.getNumDims() == nsdims); @@ -97,20 +98,9 @@ namespace yask { // ctor, dtor. StencilBundleBase(StencilContext* context) : - _generic_context(context) { - //CONTEXT_VARS(context); - } - + ContextLinker(context) { } virtual ~StencilBundleBase() { } - // Access to dims and MPI info. - DimsPtr& get_dims() const { - return _generic_context->get_dims(); - } - MPIInfoPtr& get_mpi_info() { - return _generic_context->get_mpi_info(); - } - // Get name of this bundle. const std::string& get_name() const { return _name; } @@ -281,20 +271,18 @@ namespace yask { // "Independent" implies that they may be evaluated // in any order. class BundlePack : + public ContextLinker, public std::vector { protected: std::string _name; - // Parent solution. - StencilContext* _context = 0; - // Union of bounding boxes for all bundles in this pack. BoundingBox _pack_bb; // Local pack settings. // Only some of these will be used. - KernelSettings _opts; + KernelSettings _pack_opts; // Auto-tuner for pack settings. AutoTuner _at; @@ -316,12 +304,12 @@ namespace yask { idx_t tot_writes_per_step = 0; idx_t tot_fpops_per_step = 0; - BundlePack(const std::string& name, - StencilContext* ctx) : + BundlePack(StencilContext* context, + const std::string& name) : + ContextLinker(context), _name(name), - _context(ctx), - _opts(*ctx->get_settings()), // make a copy of the context settings. - _at(ctx, &_opts, name) { } + _pack_opts(*context->get_state()->_opts), // init w/a copy of the base settings. + _at(context, &_pack_opts, name) { } virtual ~BundlePack() { } const std::string& get_name() { @@ -346,13 +334,14 @@ namespace yask { // Accessors. BoundingBox& getBB() { return _pack_bb; } AutoTuner& getAT() { return _at; } - KernelSettings& getLocalSettings() { return _opts; } + KernelSettings& getLocalSettings() { return _pack_opts; } // If using separate pack tuners, return local settings. // Otherwise, return one in context. KernelSettings& getActiveSettings() { - return _context->use_pack_tuners() ? _opts : - *_context->get_settings().get(); } + STATE_VARS(this); + return use_pack_tuners() ? _pack_opts : *opts; + } // Perf-tracking methods. void start_timers(); diff --git a/src/kernel/lib/yask.hpp b/src/kernel/lib/yask.hpp index 74374b86..75a5a95a 100644 --- a/src/kernel/lib/yask.hpp +++ b/src/kernel/lib/yask.hpp @@ -154,15 +154,8 @@ typedef std::uint64_t uidx_t; #define TRACE_MSG0(os, msg) ((void)0) #endif -// macro for debug message from a StencilContext method. -#define TRACE_MSG1(msg) TRACE_MSG0(get_ostr(), msg) -#define TRACE_MSG(msg) TRACE_MSG1(msg) - -// macro for debug message when _context ptr is defined. -#define TRACE_MSG2(msg) TRACE_MSG0(_context->get_ostr(), msg) - -// macro for debug message when _generic_context ptr is defined. -#define TRACE_MSG3(msg) TRACE_MSG0(_generic_context->get_ostr(), msg) +// macro for debug message when 'os' is defined. +#define TRACE_MSG(msg) TRACE_MSG0(os, msg) // breakpoint. #define INT3 asm volatile("int $3") diff --git a/src/kernel/lib/yask_stencil.hpp b/src/kernel/lib/yask_stencil.hpp index b5356875..57faa0ec 100644 --- a/src/kernel/lib/yask_stencil.hpp +++ b/src/kernel/lib/yask_stencil.hpp @@ -72,6 +72,7 @@ IN THE SOFTWARE. #include "realv.hpp" // Base types for stencil context, etc. +#include "indices.hpp" #include "settings.hpp" #include "generic_grids.hpp" #include "realv_grids.hpp" diff --git a/src/kernel/tests/grid_test.cpp b/src/kernel/tests/grid_test.cpp index ae05af13..00770eac 100644 --- a/src/kernel/tests/grid_test.cpp +++ b/src/kernel/tests/grid_test.cpp @@ -70,10 +70,10 @@ int main(int argc, char** argv) { os << "0-D test...\n"; GridDimNames gdims; string name = "test grid"; - YkGridPtr g0 = make_shared>(dims, name, gdims, &settings, &osp); + YkGridPtr g0 = make_shared>(*context, name, gdims); g0->alloc_storage(); os << g0->make_info_string() << endl; - YkGridPtr g1 = make_shared>(dims, name, gdims, &settings, &osp); + YkGridPtr g1 = make_shared>(*context, name, gdims); g1->alloc_storage(); os << g1->make_info_string() << endl; @@ -91,8 +91,8 @@ int main(int argc, char** argv) { os << "3-D test...\n"; GridDimNames gdims = {"x", "y", "z"}; string name = "test grid"; - YkGridPtr g3 = make_shared>(dims, name, gdims, &settings, &osp); - YkGridPtr g3f = make_shared>(dims, name, gdims, &settings, &osp); + YkGridPtr g3 = make_shared>(*context, name, gdims); + YkGridPtr g3f = make_shared>(*context, name, gdims); int i = 0; int min_pad = 3; for (auto dname : gdims) { diff --git a/utils/bin/gen_layouts.pl b/utils/bin/gen_layouts.pl index b7c33370..b9352f43 100755 --- a/utils/bin/gen_layouts.pl +++ b/utils/bin/gen_layouts.pl @@ -276,8 +276,8 @@ END my $wrap = $w ? "true" : "false"; # Creation. - print " else if (ndims == $n && do_wrap == $wrap)\n", - " gp = make_shared>(_dims, name, dims, &_opts, &_ostr);\n"; + print " else if (ndims == $n && step_used == $wrap)\n", + " gp = make_shared>(*this, name, gdims);\n"; } } From 17ed7f51ac85afb1e32e06c717435a0355b503f3 Mon Sep 17 00:00:00 2001 From: "chuck.yount" Date: Thu, 24 Jan 2019 08:23:04 -0800 Subject: [PATCH 7/8] Added comment about column change in CSV format. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index b816ed51..beccfedb 100644 --- a/README.md +++ b/README.md @@ -57,6 +57,7 @@ YASK contains a domain-specific compiler to convert scalar stencil code to SIMD- for functional testing if you don't have native support for any given instruction set. ### Backward-compatibility notices: +* Version 2.16.03 moved the position of the log-file name to the last column in the CSV output of `utils/bin/yask_log_to_csv.pl`. * Version 2.15.04 required a call to `yc_grid::set_dynamic_step_alloc(true)` to allow changing the allocation in the step (time) dimension for grid variables created at YASK compile-time. * Version 2.15.02 required all "misc" indices to be yask-compiler-time constants. From 09cba028188d1e7e28149da73862504d85bb3bb8 Mon Sep 17 00:00:00 2001 From: "chuck.yount" Date: Fri, 25 Jan 2019 07:51:47 -0800 Subject: [PATCH 8/8] Add deprecation note in intro. --- docs/YASK-intro.pdf | Bin 694275 -> 1215799 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/YASK-intro.pdf b/docs/YASK-intro.pdf index a4c56e863e789978b81c37fdaa7ea30deb2584b9..98c14207cdd0453f3b5153dfd13aa3bda67aa7b1 100644 GIT binary patch delta 723075 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

6nuU%%)kCa!c@RzfK?Jl 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

lSt;oZiuTW_E86MQgK#8fM`>O|5fJ zm$!}mIP1M=S=yUTnYGXTrWg0)?cVij*F1lGr+=%$?Q^HAS1NrY+G5oH!y5S`xlaBc z`4hQW{+378-^t(0J!wagw`~3*n|f0&LvQNGcC}MDkZr>wd9MM!)0aoxo}Twnb*)J~ z9ebNf2F24T*}8gRaWn-0rI|JMuVCyyLH$Qi{dHS_|7RN1-#6u6Eo$MuJ^sI7>|a4q zt$+Tp3kXbGT0{RKq4 z>N^gDZP~a1|+y!+W7$SlMe~FM|CE*i&HN2Kxlq zOJGlh{b|^5fc;I_AB6p7*hj-YOW7N)2Y-H5xrm-{pMx-6VXuZgANCEf4~2ad?0K-S zgMBdUP^1f*tf&{|pz*D=qvp>4cICYo7Bwye%cCVu{2N zP;!}^(pbjPRcWN;EbJ;+SA$bCVE;8Rb{@osaL2xZh20Fj*3`Q(dLO`gGFoy{@3&y3 zZ$Y|AOEj7CLyNHxr-d40JqLF!8KtGLu>W9bUGfus<%BhejlW>db$_tm*12UCDY1U) ziIiEtfSm-j0;}V4YgA^jI|=MEoWIv?t%y@XiA7plbSGhTv=+j!<)0j z?jKdzo6MPv38`A1;`MS?D1J_J;Jl#OxNK1#5{# zb6<$QiA3Kl0vSfVCuJlPu|s6zwgxRBXrXsCbCH{XF&64wLw{>1FygmShb+Api2v2L zx0m9dnQEDa=E^;GX4?3Pv|e4beMZ-c}zW{>cF)0j7{$nE--0n zJ!2cGrIHG*Yd@-P9BCJ5+?(!ZQ}=&rFSXX+s(9X=srI%a?P?!p=7-HZT=k#P-gLMc zA;s{RJui;M7k`J>gBEkhW1>`)i%KzD%oERu#bTLQDP9n3#fC_`f;5ZNbB3r$?h<|jRE`Qqr|*;Ib-7{**T8XDC9afWVmHC@junw#i$x=-z5vQHAZ43~4e z&Y@3n`+xl$uPVk-sqqV8Kk*v6fqRh8@T%kUbU!^}{KAw%-Ki({44{H%NF(WP8bc3qpHW6%rkV5=nimO`rq*0^ zC4G`^raNggeUT>6WO|G$=n0xbPe;O8)P?5?MSqOtsKSxi)W2}dUFwcm9fzdLm^;0> z|I4Q@P$7MZN~oNs(=2*QNhEO?C0WvyuA=Mc7P^h@;#zVqO{9nDajK*zX)b-ugtF-q zl*O}x!I;n8!*hd4G=-+o44O?}r3Li$$^E8Jwz7e9fcpav0UkMdQdy-n26!Cs1mF_j zseh9vKQ_&p20RCNA@FkGD&UR4F99C}J_dZcr0kK0Z5uclxEpW};9kJFCFPGlX7>Xg z2s{LMIB@=yN6IJJ1;As0i-3!POQ%#!nrxQ?&jOwgycl@JBjt}&+Eu{ofHwla2>kLR z(;qLhUjyC>{1)&I;9X4GBzrILVc=5=JAW>4x3cmXk2yVo`vCU^?hibu?D5HE&QRbH zz@vc20FMKn@Yq8ok2od3Q-P-e&jg;s(Ns9|ffoWV0bUNg>T#7y74UlC&A=}M*GyA* z8}K{8JAwBA@2}ttI0u1`03QcF1zfMNYftBLcN2lT0H*`@0PZ>cvB}fiKEVBe2Y&;P z04|t5J@3=*c;Jb^Q-I5WD}ZMK&jnrpya;$H<9_Z6;MKrufY$?WVtkWZ4ZH=o2Dlb@ zdnM=2tpnZz{4Vfe;NvsOADQf)Ryah!E^soi8oMp-M{?=LR@ek}ZwA}^INaAHo`+pa zZmRiCI`?g#=6>oX?)^T)J=tfuUw^up`-@w+rGJk5yj!{dx{cfX?c6hdKIY3Ho8-PU zy#=P)(^9xcvpBgKY;mubNmsVQCeZUXjgy+e4)>#7xd-e9>d*I0&~?pX>^qW{QqZ>@ zVlUV5_Zr}oX7QEHV09+9R|`x*pKKO)X%=IbfwG#x7LOv=Q%);v=5D$saes5Esnbo( z;j5d$lE?7gEiju);{ke^w(

5S`+g@Cj+lZnBpgBFD*6IZG~-E9H9mvfL(j%R};% zHPc#ZZLqdjZ&`b+!`5j#(ayAU>_K+EJ>H&b&$buYtLzQ-7W*xGkA2ua?Ib#xPL4Cq zo#!rftK7|Qjl09$?;ZnmR8p8iLf1&t!NhTVMfA{GPzQR)6kQhV%TPkY_9<$Xv|H<+^@|~bTj54W0o1S%9y*1c}APv`Wmy?m@AF>nlX=Q^YUKC9B<5d z#(dG32ep~r!6(f7S^{(JB)xnJ&TV%Vq6?smLS_grHZ#>Uyb zGVXnL?0e>p*!Qct#(%zF?T?Sk>*|@Y<(K_ZtbcZ0od3~S|7)`0pA3x|eR)(F!t>+* z$KJQV>r||9&#YOq-u3Qxtyyo9B#E6QNs{)FB*~HFIFh5?PCH4P+>#`zRB|LoJGr%s zgd~Y=hvb$dNpj0Qm3!JGxg|;Zp82n_?RSUdQoir^{oddEJb!EcYt7}Ed1juOwdPWv z`i$w+XKaU+MK z=+Y&7kg_J_P|iNqW!TP;ze%ckXX>*pI6xZk0GyT>26Un$_;l<2;+Z=$<=ynx&L zi{0%DxaTCgD}T&QbYD@vfV)eg#$4ICfcq)9ZL-Bh%swlW%U5+F(-%hoaUES~zAy4rPH*HW#j^V39{(p};hMP92ieq?X!%bUsjnVvT zS{ZKIxT=i}H}O?9@?YD)aMKo5>l*UwOq+Dw^pICiODu)zyApG~`t}0u{fX}DOB8U| z$>*lH~PCt8bEnfcO476+HcPBmzjLP-aHkcBuRy(S+onML9SgWOC%W6U$+vbe z+=IL}LaN99#V16n(ldqZj{0i_^?AGKxvq9UX1O)phRk+T-Bfmt+r@pH6>*<*pJwN| z&$!R9;_kEVbL;}Qk2{!^bboMnvCCtZ#(yqjSH>#FDzeJ4ZLw|aYHzmpF*Vwsc%QH; z{#kwzc8y=uFG^!vJ$jMYX(^M<<(6K-5g8N7p>!4J$-Eq|#H;d}ye@CZ(|9x9inr&T z`BS_n?}IniBY8HT#Ajf3-7@|a-^91^J>+vHpUW5XReT**C+y`1Eyq$;5vzn%#(%1S z^%u3QdR8N=iPhX{Wp%K+Slz5%R$o@!O1Cnsc2*~=D`wpFw+34ytT9+|G0U1~EwNTx z8?3F?E^9wlCd5TiQBsr@70KrTVGB0-8+&x(sz#BdsWjDM%mhhCqsSgaE3M6TE&_KJhHV=KFeUBWJHm$xh1 z)$Ce!J-Z=|Nt)TMB9oY)yc!#M4?H_E8GKx13V2RrD)F&&H4S`hWIA|uFE!_$3|v>XGcB)9~YSoo)h_)p3aWUA=fy1`V;W6k-6a6k$+FY$3^CW z=R`iEr^iL+lPiawUI0EevJgBwvIu-!WHES7s!c` zYvkHuAB~H^0~!A`P}n$>AA&2DcuWB<rgy28j+(a3cr%ky2{8^*~oRZkt@Z> z^$*BZ#mIGyk*lha>wj8Pdew}4*P-;P8~Ls`^3^c%-4M#h^!QNkrBIgX5wzeHtYX$h zWFcx(k3J3GDLS)mtT#Q?om%BAHk^&2{>w}@k1eBKT`t>2cQ&wXY%dv>Bwm=8;AN?u zuEuNg2HsM#6F0iI+I_uc=Bl5!99InqTVbyHc`NDapLlMSxqs^CeSs_e+-h^x&-*ej zysz@Y`#LYYHF@E!%?oc`UU=*C!rPD+-gk6$lY1j!+ssuz?|WSRld$dPs-L$pFWyag z@qUvR@8-OCzs-v`H!t2TdGT(|i}#1Tcz5K*yE8A|U5Db;y&i8SEVh2DQJi{PddG_@ z`1(_ataK{%wtw{McYWT*PCZjWUL&uiva_i4^t_#Vn1SDr>0Qgym_FgVDbuU3W!{SV zE(lvv5A|^><(}B#yeD=p%M^vMzWEMj$!o+-xV}?g`{_ihikpF?;%;4Br{V5hd3X09 zgq{BFgj|bfendFC{3duZRX?M{r)SdiT^)XS*V?DUv48gJxUAhe1nVcP9xsdD3PWGz zCamTBSR~s9ir7t|@NqqVc(rJF)>0+Ro+$FC{T_E3W5fPj z8tM5HPGbST;dxAzF|V}fpZ0zH5)S{95)MBJ35TDQgu_ovLbZy8C%IKV4hi$GM-F`o z>>8MI9Dfr2-mguv>0g!Okns1ukG~8@{K+yLaS~-X;-t!O#EF$*Q0GL;5I#?^4B_{L z%aD9q+HO0~Iz6o4wA~ir(_}GxjP9&$*7xBvaVyT_0?*j7k@4T>O`T)p>FYuqqxlQhnd*nX(i~P+IPQ-~hfpeB~wsWpi%qbDd?Ib&;oia{Y zr<_yXso+#}u5zw+syNp=*E=^jH#$w6rhm?T&O@>Bv5B!sp5-}SlBc{vUJ&rmGjDbS9(`_*Lc;u8s0y>o4tQ|4ZKEPs@KG8>NWS;sC8&%*-3W!lO;AOp~M!+ z&*f6N(v;Y@@;mv1+%11PLW!N{Tz_zs6077?rV^{_RCj7PHBn;Coer^gViRKT7AUb2 zUUFWERrD%*RZwEJygFXJ0wuOqZB*Z?@6`8dr`oN4R6na<10IM#29Y2d_`zAhIl(2t zWx*A}Rlz@kYlD%&=ybgWP#raV}1t9nn%?w&n0Jzcwd^#X|yQz@gBBJq6F@5}jY@?JuZ*qOwc z3;?}+dQN;Ox&-#OIW^c>|3IQNwlvh$wFo;0U*C4v({sspF_;iJN1<+sajEzRHD+=W zMq8StK4?_qkqx$KrMC_%4LbQ$bSXcp%_n18&}On^gG(FR9hg_Zca23SY*gvLcjbi) ztVSB(Z>}Z@)r+i(r4!zwh!B(ZY-K@1)q8^J*l59XwHpY!~ zs*(8JGS^@|MgR8aew$gs$L>{TAVp%-l;TXDF$*YDFOe@YkS zRcYc;SE{>Gbv(!UL;ZM8z%Cl{0a_fW-iz1(LK(*z$K=4|z^=up#i~WEMVCc1|CaOF z?7dJ13it8- z;&{OBU!;cAX+Mb>9vOd~T-nhY8~4><*+FAHT~ea^&)qi4)u$U{Fg_$>c%0rgE@+cYRLx&rV^YWaltPPHxbA6q{UXDt7 zyN<1I+6soZ0`3M1MH@1^bKPG}ak)d^^>rN^m z=aOxNfyl z^pAmLW-Sp;e~}yNyy83>YHB%@O~bk^JtYuROalsi9Q06eQrlK1Z>#y*On`cjaB|M+ zNG`C(D(p*`k;7mcezsyek>@W=zXn1P5q}<9v`DEj0)a?FJuMS@Rv!8)u)Y53W0@N| z>&dK_lli_#Z0?Fa^FG$Ts;9bxmIFY}iuW{VUi}T|%pYe#9{xb0!~RqJXWkkP8&+CV zR-bO4jt-;KA4gBW=Y|J!Ha>BXc+gs~s6WLG`(!MG<1n2|W9HnSuV$l(d2UNM)8kto z<(k+a_OZ%Xezyljug18R-+GWBdObGar{wL6KOPi?n+& zBbVrVnxE7SYcEThDV6p)$Dv15FPpK!sfG`_hjInXgN#-GkZh+a zRB0%**%z6*F3#nZWE;JD_2_KvY-6!|f4NSp#JBNtV{|fe_@Shp-{;r;K0}-B*(D8S$5Z+9j2b+PS!d*Pzi!V$S)%5#(=%x)%Rmgz6z`%hNnxUw9Z)HMn{ zdjX&vFXk`XFL;5vuL`fsueQC}uQ8+*>z|w}+h&>g3{*7hDyfh7`1Dk?G-r?PVo0l8 zXTAA8bXTowI#(6gWsuf3&Y|$Bb{8>JRoHb*ch8M3`Or!G=oJ{uCe8oxEnBJR*-(Ql zWG%0?YF(G@D4ha2igo{{i`(hc_Bb6Xj`@VIBFaHCklzIrUhT zMZOst9}hLu>Sa#c?D7rk9p+TTYVrzRR-7O;$m0GkNeFy;=kHQVwo8xNX>rHP8Gt2wLQ-{n?mDr!Eu0XL_lxEnP zqt__MW0WPAGv>2L5+BTeFfPqFFb#@+kEQn$3|x4!OwCN~Ks+8y+EF@ZC1d&l{gbI;OS-z4re z9-EHcHxqj+S#_`J?s|!CY!(Qir0p zj&2qHEw;AITCg+NcD@OJ$!*?EE1qroyG3fTf644)y;Qy6 zyz&9%5@S?ny{GYae;$@z^njfF?fCnROU4I0sKQIh|)8~3*(Cs(DT|L@#l5S^aMDoyB2sLgQ~n( z0adTLuid?C8>g=a=l6hmYtqZYi^HoXkk|Xm^nmj!9Wn~Fd_ei(2;WX;u`>G!>3nQJIos2_mv#UIT}Y1X05vh=OzATb;0}VL1AfCQ&Q`p|1&RrmV<*D7vC&7&6T!1%Cp@^F?B`LcN|%{Y!!ayi^Zx$a# zhv;h8HY4uL$J%D>6F>1O#p_Bk6vzZR2^jT%U-fqd^&9n#=v7r?Ru{HJ_V>;o9=Ka9 z(58__>>>?l;5E$tMK?Wen%~}x$xb#<&Aln(&i&#D%si>^|6bxQ6V44csFQBjz;7uh zsP>(jp)~c5Q<3RlQE4stD5cI;kl(d%(?pPSNV6arvNjcu(o267CqwFc#OHQ!ZdUcc=n9Pw zpr~*Fupg%#e}A3f&a*T0Vo{P@(CNNv5Hc>w|GsQckI~HF^)kx$SQibAcbD4l4J0xU z&8Nf^f@Kw;HuF)M!eaQ{Xb2yM;ex4!m6^0n=PxfgVlQO1vNQ>pn%pr>q z9L`ub95vg<+Ph^nKkjHSD=b8BH>cKFraCIX?r zacYI7528t??k=CVqe;BLPK9W$z#qu0>a)vw?EOw=mjn=oy-WK@eC(66pRABFt)x}9 zG)?PM$eYEeNb6h3Tlp6G6~f;T|01>N{&+*rLLf%ttG^#iNu(cA?$7QAlUlbcs=RC8 z-cscCK3Y)-Q)G2R;bzmAU|nx)Ds<|{DOS)>xlUy{^Vct5#lbUxw3IptS0 ziygrqzb<#vV}mpmV}oAEe&clOOQceGFIQn*w?TyCNZ}~mtkTRr)jH+*aYcp-1PKzy zqh1z=fToa(C?Y%~#6R8?*vJ)9+zx}L!i#bvJZW;93*!^=^ftwRc)NWWyaN(d4T>{6 zBg}eLAyg)96D0+VGU)~P$ zM>PE{K;=^6;!)MAyZlFZG7X9a?s9Y`Zf+4x>$BqEU?C zF8n6{ZcfHg-ISN`kVd*0FBkZ@;BOz%G)TuKJ@yWL5UoMhfp7&+2P3_Kb&=WAqqEg` z!^xp+g~U^&GkI<9?2Gj>{3-RFyvRzP#YFx7BKj%89jRYa_u9HWRZ5&zV+0%ZC>V`f zMkl?+GGIxsbQEJr)icT15<8O_S#eE#;Cf$V87-`}P;@z}N*x#T6E4tJxMmY^^%HY< z3dIpDZ6hsQ=s@{~LJn>`RJ3f$78?#VPP8bO?W#2XU8~ZSX1w4e+10ZKR;A5TOyXl) zA9J#8qg@|5`#e(~M;EYqCi~2s)FyCg;z{KPx_r4~z5BE!ee&+kW~+#ahyj<%S*_I? zC*NtJaUVC|e4;HK#}rWZxhA-ryA$@~xm0;0vO~T+y`%J#xC}@!=f|5)s?{10)0Zct zH~C1IK0KhLA)dx)qNbg{lv_vep9|_(@F1V2jR}7GesN`4;WDAq1l5N%G+^I5dQRH%r zYYub@ujQHy_yKS0!oXHQE}J#VW#1d>6#p{u4G1lINp79Qll!3chJy}&aIns6%6O2n z&TPthV6l#EihMv~Tv$@|&u$uBlJl=~0~IdtHbvk~9VaH!Tt=8E83}5z6)wD{MWnh643abI+n<%Mwkc~vTN{YgnOULcgss}Vba9X0xA(@GFh_R5d!heQO%6&9MfFW zVcz@l3-VrDYcyiCnFD@u5ZT5E>==wV3`TKYZf@@H4+rvC^T%p2%7cneB#BFUv=Rc1 zIL9mLA9cQ1LUa=`^|X708ZnRiyguHUvEK)#A8Iewo-!N~%+|W1AGb_6skeoi)SWPN zTHZ#P18rS~3U!2@nyYqBDqDQz<8!no3y%Nz8P>rnZrQkMUfG>B5pC`(?G%w-Uqw2N zBPGr}-TZLRH}5>3aL>1~+>!BsL5ia|I`Mvr(>jF3C?uSkhYFj|DN%08Lm;BnQZy3Le*uTfzPvX3|#L#idYOXybElmY*4obi-xBf z2Sz`R%CWwyBUXvjfX3^@&PTjO^HKA$|B2%HX_OcXD=cQpUy>2+NgT^gt5?Y8J<)Ay zTiZh|;D!;d;1Y;}x?qa26T~GUFh1|V(UK+z(?s&7pn%{T_-Sl;2@o{+26>ta48VZk zgD_yYaln!w_~0&t9eNNa>@ZvsA{{z-RMG_LiaX(hBoZtMf(27Tf#i2M5+n=agfEic z;YqM81QQm5yRddVK(s+IFx+rpGRbwAE2M-(Nm)1&)EyO&Gn@||m@CK%W_aOtXNUkGsBY}wlkakLXJYLHfX?B4sK9KXrl2vnt9Nhs^B{i&3;u*9 zNh|nAV(=eHaU^bJFgeIA$RBP850np+iEhD>&@L&Cc*UHc7CZ*ejSUtBp$DW&h~6z&lXtSi|Acg2@b z7wnH|ftkQ3IS-?cZo!_=A~_GMk8DAaa4R_vua9j3pMWXJ53__~L7NaO$q&1PV1bw5 z9OMtbLk7wYc0g(*0k=u^AQsxz#@82^_v!@L7Rv7pf1&XzGXw71JgR9Wz*$i+k_cbtdrcdychnhBn>a%G+~vO zDjk5dktG=r6f|_HxupNb%u>GVT=us+lNhx$PM zdT;%DSN(bi{dz0?`p^0{qsV=Lr)8gsWuL5NABSZhp=IBTML{eT!sy$umW+s=j98T< z<7uK-hg-%K#~1p5R4i@307|P*8_g;V_?LtE`9P*CD(^SW4WWq)_80knGE%7H;CIJ< z$_T&k-2lre9>$rAZtmx!jf~vNy2CWSAp=XZgOF6~!Ao{VfV}p$F_0GcCO}2*EY8+- zjWZ=u?$LOeM@w=p#L@3pHeDuY9Kfu0OH^=?{WmkE@kNW0zl9jGaDbs?NU!tV#^)Nd zba?F9 zZFf(eqLH_Ovu^Y5xahrMd*}MGSiJ$8>{Hj?JiIUk+LEVLGP)!~^Cel7FEEO)N*3sa z@`ku;(OEttK20f8$KrPm=1_K#`tOEy*~u{*E$dAThSAl7d%W8%vz-_v)7x;}oq7Su zQF!s3X0fe9>exVF+HGRXH%Mzi&RR^4idskxKv$r;L_=$xmDn_{0M`H1|9kTl>e}O? zIC>q+(<+*t^M7*~dt9yR}VoyCtF72WuKg z$mKQMx*ghbOuT>YKe(Rb4`A(%|DA7|UjmkUH6N&b&k8gk=s3Aqt-zP-dgI-qJQjFa z#%$-xyo2(tPtId`ZbsSXIU|QT+zCSWsB3J2;jvu2VeEKC0k#zv9jsIbz1k}HfS%#a zRIArI@C@6A6S48)=PuZnigJQy}i8AW9f0!42rZIZGqhe&hrD zB;6!&d0E8_{EdDZ&?etaluBXr%i*$PF(MZOd&3XYxjqVsK9jY_N~()tK1vzl%pQTi z7|ea68=4oDQHDiq`nZbttW1k3Z?>yvJkP?^2iKr_@>%LUnqIuMcpv0HcE3P1HSK?qaOQTYUMw>OUGF5&~vDl7YqXoCZAX2O5<9{UsZ|Oc& z^nq=--{bd_A2HtClH1XbXm7igg7B8_E}&XaiqR%CeVH0u9owoL?RWdlbInJ3w>7dl zS#z@^^~-t`)#GoD!p^y9$R>PE->gP_W21}sin4tiU;gru_B^S5a?9NEm(v!ke<}R* zXwhbc#Z0s#(Tasp#$Ti?y-t!tiVMSrzNcYs!$ph9%$&IqWq<$hS;%X#HP9dag zM5j+}WI&57xVTKLVX`!(p^2Kl>vZ#H+2{%A$)C87pEwt}zTn+o6}iuA--iZvkGJ2u zSWo&MBo@>i6c3vZa|e3|FOKMsBnb0Beu4N8^bhCX`+q3^nEny} z6a0tpkM19SD)FRg^M{~5t!c9AQC$&9zqeh_SjSh3s24Clcz%om9nYTd?#MSVHwZUy zH!ozQk}wz#1;`j5e@RN>f^39-f03LF6s)a4=#E7Ezd|>%9=7)@W66g;l1aI4U5pF9 zf1>~3{*nEX`9+^G%SAt(d2j-E%+LM}^5X;h4*_#gE)!zsPqH-glp3@4o=(V6u~+ZE zL_hBgfOvy>2FM%7`5`Wx{Cnw0_-sm@%5m*tE3-Ov{YOj<9Zt!3Yc7H3MC z+SBA-gkYGBLR5(dbZYKbdIO|Py`n_|D>@36^s#&lUHZZVd2&LtA0>&FABwzfaT0jg zi`dw4L+Gjs6Ecj@Z8+)LYQJ-uf}*e+Fh%b{fDukG3Y-Jh84B)mnM{CG|1tmfCGWnx z&)wBj!?%({wXK_$rmzKk%Y5l$+gOQQ_z^K2BQiw^O!(ors{@46i6=^9j`#P$NNtj1 z8-~%v!7Bt9S&^;%ldeCi*}jtFh_pyf^x15aAMBo$r zNBEiPVhHk(Cn&2dEG=|ECYqZkC^(1$iY>=*(mKdTgSnQ>t>ThH2Nt5>UOLucP0l`2 zi=hWl2cTO0lJR6$cMnkNVe6;@NVPH?Rb2BAT*H|g_mSF zD(IL*-GUA`vCMwjN|a_bv`uKRm5;h=PY94t9r_h1>=%OQdmD~85nJaq#SlOOu^H23 zqHgtGi2U+0FtciQBb4-Zj7S%+($ZWhquk2v-vcDo=us-e8~+8a{lS6G)fxc^;N#>O z5{Sz%b;qy36p>j&do!v@mS*m~9;xu5J(yZf$MYF={YBkJ=CoMzz96+krIP}3FEPg@ zX!NdD^f{_36U1dXC2U3pOiT*g z$R*6v(3qZ7YORx22~Qky^5-gwpLnmo(-d%!Te`Q186qxM7^ZF{=;^XZ=}CsGHFn)Y z%n$x#-MdoSrF>qILC8J*3(!oT*_=7Ck84y;VBSaC8WFJgO7FuxN?fGIpxoM?>|7_L zwk|^Yo`<*(j|)`f%+uL0lW6OO8%o(OO=U|ynnoVk%30fM7d{D8#F~)FckLKLf5qSZ zn>4Y_Yhv+`#RwZx<3|6c#oNow*;q}u0l>oa{3QPV%6;Tw zZtVN(h7HjCW!=$Ediz#_@m{+m?*UC?D{BT||HPwKKD90{AQjj04*|Y5-;McRdXMTx zBub6iL&vFr<+r;|`!@E$*ml%=Q%*xM;p5(pE^-?w=AQ0M#~^3>YL>$@i`ya%K|!0t z&m`HV$y~D59GsRv026rMA`3jkw34aU7f%xMm9e=zh;BZfC`I;b!|Z(c~AEE z!N8pcp!0=~|r%Wr?QVs1TjfiDYZ*>v&|P=Yn{QGC_y zoxj2ggSJo9k=7_1>6;!+F7DN=Y#GgAKRx?4QU+8lID2k)lArL!J(2*cksA$@kaC%o zC2go2Ms6H^Zi#TlGqx^P-u+3kuhVCB(iI_U%O4;gTF>}Yp&3Dgvm!M!njOGwm~g~I z?24{stK{nuka)jFu5_bK7`WGVgU3lq?MdoeucYW_q(X6C5WAlFN?n?;_LUa?(QGV7 z8%$(@)Jp<&K_Ihuugk||_i2XC*{9(n=pz}?YMxN@?c$@TwHCdE+frHTn5#uNm}9h# z%7!UcYSCFr6M-sGDk3$@n_PZJ7Xvf&`)iG6o+%nSFh~2K&qXZwVn)qx@LeJ%3s0fu zgXEO0{Rn<8icEg>1f5|8sbY#Zjo>AI8jgveEb}m!m$l>AA0$7j#Ww>pLSWnTB88 zy#DpHxs#)vB`jspkxGA02&{E_<5<4y<&4}Q!rK(nXu$v%>%qYX9mb4K?+UfRb9d4eiSGNb<2(npeO|nJkggKmd`1G-A zxwk&#bMG^||B0+W{gz> z^p4~0(TL^eGuJ4SjU7){GXG`%wP`)@OM03?Oc6-)6f7oYH4=f`~)ql#XqpY_2PkN7X2 zAJYrE*{wesiXAmRsyTd>wjD`dWYCI7SJO&sZC^)gC_bFidEc36WPqcgmFPzuac?_~ z8V7nO^Q`UrYV^djb=!W;<=C%gf_h^6*V|FF>zg~{z!zG>E<*;WHJYZ#*J)GzEa3G1 zKHFjZ*i?ILsrK{W?#hVEA&&#%Nj-tTo;YH}ft$Ik9*d|zlW>_O( zz`zWx*7R(T!(#LF5ZgJGWkkvwCESo~aqFv~wkV~>pY3_1)`xQ$CdlIJpI>+Jb5lSg z#1ta8A8A6dM7yL$6?(g;IV70e0kAh}{xtmCR&6j()R3y&rrM&U_lXq#7@7xSz?mou z5KS$xm{Ds<#kth96#dfXRi9+^PR_f2F=13&V0Td_2?f z8+xQwyI{jA#>`kEj~OH|P1*OuTbb$m-Pr&8`kwRH**g?VPU2J9O_XTcGC);*%~$2$ zKQeP%`}`%ph?4MoJSNG?9MZ)1GN&jyFU2m-hRvZW4so(ZLZVf3}K8eF#8;+%Z8d+*uG zBfc}p#gxEn#J70)fn|BE96%TsDsH=?68~Ilbl?%FF?(fEo742<`<#8(9%9D|5fM?F zliZsfJR$bZ@Fkhw&3{rP>DP?rC2#bmN9o_RGzJlXJ)%1+yI4eT6LfWke88PQSwu!z zS(&RgS5sYBoD!CMW8z|;*BHiZe8CIt+S)QK(ArkS0*x1c_h+RRfB^vkP9W$vVw}BT zee`hi76R5QrgJQK>LrZ2qaWVH0! zMXR1&hw+TxUeKV{N?+B`I^{hYck>J%q^Z;KlV5<&F%Kt(QDTHeec+?Nswh+SugT}i zUmP6KB@5Lg_{vf40KCv%Bj1_kS%n*O>a8cmLc%vEB%fqQXNdgft-_5T1#QZwIKMV4 z)f-m90#6=`%Oi0SUV#^PmRAymxTie?P5KEDrSI#0{=vQIVWuXIBnMQJOeQK0JzD8o zCJrEH+U|3O>Ha?JT4&sptN3yXPydEuZZBH%Dkb-_!%~zYAVS08n?a}lskz6!Ju~LP zRPnrs%o=~pLVmV6K{Y*RY-!2zz=BEBEs;_bV>~xPQhp`5eXn;jIv&vI%e%eUGrb<8 zuxi)%#eXMNeP*)cg_4S%qbW#0n9mkt#&kuq`sDC9d8}?)pxfth?>Mdpo5ZkDVnaoA z-Lb^db4KzjV3JcIEcY8_TbL>-?L5dz_Ev(3C9AoXJZJyv$Blj>;$4EYfg7985|)+= z(dj=yU89Z)YH8*tzPyJ{zbDENUZ44HWCR-VKoV~SBE`0(vf{fiYI6|vbF1vzpm%h) zEKjFJFb@3v;%3~5dLPwWFuhG7E$)csSH*fRTKL%)XjP3-Y0CA{_V&7H{FW5oyfu`| z1BXdt$HMz(pNtE|YUBG0I$5lsQd~y54wVge-Ks*ZFh|Jyv_wG$+cGh|`^Dcs39|`s ze|=5B|{y)s;-+ zx>D`!LE;TD#V@$t1xHVxr6oK+)NtjtHp@V{TxnIy7~_OyPX`ir;LVVgTw|I_yU9Dl zx!FfZcA4na>V^r!xl(S7>m5aYDe;`TJkYNjnE@eNTJO4-iqN`Q!e1B=-9IHROgjfE zkv?7jTqj+n&~fYBd^>pDm3|>ryT|&^&PJ-~eQ;v~m@X4SC1N=JIVveJ35*u<)ep1XHzouoFq zPQ(x?aw)&&l%Ar2r>42lzN`LGUxO>(W|J>o-}*!TJLYYNvgD#IEV2I1=CN!R$JXcq zqK^I(0;=dZM8WzqK9pMTc;brgU>Xt3)qSA4d}YY?-os$_XIhy7rxef?EQLYF zpc;ueM^-E_A#k;XK`tU`*mf8GJ3af%OEHO_# zxy(o^XN15U;?Q`vfUKm@oq1g(PYSI|5Uy8mo&f03MQ-J@2%_gOmUWiaO;9R6iGhCcxKEsOtM zA?V$gU=*pJAoq96ufj`^w#;SUY}yg~A73Loy!fXx;>PgB2RtH&n58}K`Q^k)Iv5w| zymYHC0S{c1aYI4-O$+GRN7aNRJW2q2Y}_SxDO1`i;ZV3~=F!hB|Fu2<7e63z*_&F~ zodrJ^Lni+zFadw^Lh#-4i=!74UHY`CPZe1oAI^)#df@oLr-dL%M9w6t=Itk>PYI1M zCJ|H(WSemp9|dW#XmW61|FJa*^b@>8OD~sD+Qb+aeCh*cIoC9Cwq8@8d^vz2!eUIr z?^i50H_4(h+zmvFaz@G19vmM%!@24Ce~K`JZM(~GI-lbL+S{P?<}35QzwOi0x{!^I zWwg*VC|1pJY1POw^ly3SW!$gNwhWg`-IlwWZko;dgFy5m^%Tm6&=)ZdnCow+{;<0OqWuu9rGmF2pFpUhOz$QX-hN| z-`$;GZvhf{u(h|&9qH=zzWf-uW3(SlpO)laG0TfbsB%IRu!{EqEzjD$K)>g=_t~Jy!56@%oHr*K+O(1{l2DMzb zgjC&Sh#AkLvM+yL=2&h7^~K)j+3lu{WWR7lsbZ$8uxvsyULn9b{kUUzI zDiAR`V-}~25JcWh|Fr}%5m#2@~3nm}?V%571 z&d`X6X%Cj7DL6=ZZE=D6sy=L+DLA>~Y5TvRm?81T*+Nr^e-cP2>XD;22Qo9#LAGOw z$=Muxy<+l4R4r)bJ4Iq<+v%@SHz3>??KOVrc;lpvW2uozQW-%5H2uu7-5J}kWq7x$ z{ht!t^S*ZTJOd->@3I)*(chJ2I+Bn|UeF06dxxPxcm5J{<8G>e*yy5l=VhDjDRkw z(&oj|zZ&SJ$>leX>^=={u*cx-Ds%s6Q*{@mJ3Mx}SDH8GW?A54k%BKO`tE5;u33;f z3a{1-xq#$VLPX^0nAQ2%Y#Me;pDJmQN*5>bV!W5Lps%67NLJehU6llT0ykCr^o5-U zc|Z|p6N~;$wH)LW1@5lrc6Ha?P}`p>Z*Vwi zL+)@7J*7ow=EFli?YTp_8Jc3fHI7c$8g}#!AQDKV&lB>wpV?>U^C}GQUnw-;ge>JX z($j(QWlC1LFnup~zg|78jDEn6l2d~iP25gbA(OL@pC@ZN@>#{GQBsz+bj!~$F;oBU zUI7}oqV*xOl4I8xZYHtttlXMV4IVL~j6c4kUa^^Gn3>Hel(M_=(IT$M{*~;f@iBS+ zEHf?r6QUaXee4isZy|zwkJ1k2dcU7dUiFom+fP5)8_7?;2)T+-Eyr=j-@c!+Q$@#) zr1M~#W0#5F+(?=C{Yr3QXqc?Mn{^P+T8fr#^j`XzD(zhfarzerSOO&;ULHZvdyuo4 z9VVI~=)ECGfbYFA2*hIu;ua8m6S(*dK|DM>|49-s1o86=yh*&g|C7rrXb2MguUtMZ z!}O&Llu*XEd?9W_5a0X%sNv$_d#nB*jm98MG)pIo|7z#0O`-I}Oce6;_t_|D=^5x~ z80j78Xdvo0^>2OoKi69q{`cKmBma@o>9SD53Euy=_WxTU@B8$=09XcqTR>bK6V1)t z)$)rYCYpDSae|87zJP5a}7pUk#}-1&Og+Y_3luP8m{& z{NVF|Eq%zen8yy@ffrWmAA};tKR-iL+53Z%8MSr)b*cF2I*DYLH~)gR(&dPdhS-r# zQqgck3J8jJy#JRw?R=5|h^c&i=(w4_w~yHnq@^#{TKV={9jQCx!OjZ7xZZsK~6>zo<>%L@PV!0Ap7uqX&Tyu4ihF$X=sCBQAj zFT|;A>16G0!v*3I;^KPG`~O<##2@vumQ3qig5F2bFuSGD9 zzLd>LC_6R!hu<_fk_a*AKh%v}`UvD?Tck7V235hmZw zF&77Hk{Ojh8B+H#mTwk+KtFEr07fm9R)M#L=SnX<;oxIh?)y6Z z*4cKqsch*84(PjG9)g$_7rd*?+FP#U@xhvjQP*(l>c^u=G z+yfOr+Sub1d!a_^`($yHLFK?HX9JBmQb(nU||oJzVy^9^NrVdouL8rtY(eji@1}}3*y}M zF~?%JHA-YB4)D3ZFia_}b;Xuqs7k~^cPD*kF$O*OW{*l8Tu3s9&DJf(Wx(!MP#J@=#IR=Krczr5W1iC@ z@zc(VKl(!`pYcX=Rr~$1v%E111Z?$HaZejnH@?KB@z7^8L%=oz=rFTEGfhn}ZrDBg(8x}dVLgf#I+)%|j(*$lX8?+RKXpgZ>nx8_>-Tthtn8%@ zt&8m(ZK0IFmD>QcC>hj;U7oZ)wQ(!}tC9k*d&d-oF$wCtC&aH!yjl|Hi%*pkMg1JR z3pPW}-8z3BkY*SHu(T=bINYhVzjq;{)XJ??ax93*^8llK%{)vzJHjK)U9y>_HIoa- zH}WIT>`>`6Xsf3&By^J$@sEl05cjFX7W%17CWMmI)%~?-pY*~}!=Ovm9&iLOY?=Hg50o+oTFnhjQC%=JD6aTR&fw1)$4(HvqN!R2|myYoYB# zg3@c!9*iXew#UN8Kc1+wGV0O-xt^6xk<0F1W}i9!AsoTIkbYK_>%vSa%$Mf5q1P(d zP|^2=@7=h?9ho{W)0o5BkHD0qc#ljBJBImS4Qu&_!nAHfvk9H40U#-TkD^ zDaFWa>!(DQ+)>+vyFMWC(xZ7pMmy;K_2>CL@26}j+7{fSvRKA!9p#Xi9-mobkz4TN zV_Pe_!Q{8Qr_94C;1qazpr4U0*WfHsio1(uHx4L$bdOvQ4QPsFX%T2w?aWh!dd1S( zeE3fl!v8YRe~EXmaZuI`p4dB;=hx_w^X$I!tPkkG|6At2i@%B}=UkY!BeVa1bo_UI zZ@z7`4RHdh1?-_@UC;*B;tTsid71vNVi*X#CG4x-uYj$*Q?D11TB`rk`v308)9dsN zOvj~ZAAwf^LWwg2keu+UGA`&(%a{B-)1f|_3;6_)O8IEX)AMGQPKp|QWVPj4lU}hY zBhKIlIm$0bG$-0Vj=wLPBRO|)t^JyJYINN7%SU0a30dWIXro<*jrhTVh1tJX7b+vt2XNIq1)5c>2B!1p}tyf}T(lz+kdHEU8N zR!ekTWCJETo||~dqx$<;4k_}Ws-cD0)I9sVS`_};cwrw9eIxf|hE*n7Hy$k7JJVZXDgfKg9)L7dWnpR%pWgI;~|>|y*e?Cgbyo2q|ine zHS?TYN*MEj&y-C!CkwsPz4O=y8NMgCN1nkt%lSe-YVJn;I&_oh@WWkM zJkZjrx9u=@XBtl++3UIunc%jM@1fTYGpW;cZMg(cBFt~F+5GkxTb9pX_r)o|_%vs! z$!a{qM1S*EnLS^F-)DLNwJar$lSH8PXLLcYaHf zFeZF%?#bW!DXX6jZX#K%6YIS7rIpmRskd5WLy3N(9rZummdszEfKixCITs3brtDMR zht5~oe5{g9WAf3@&(qg3KF&7UV`pi$w$LI5#97{(JxZbZ7s#^hiwaqFfR~oNyhaBd zb+R;5DfEvkYw|X459bbM3yE5qtM3P`o_sse0=jhrb7Ghm9w8lQ(f&&u2&}o&F0h+C z)&|DoY3HaRUZ<~(Rb|5eP=}iX)ig$!J&RFq74e3?zcULYA#r6RYH7E{LhIS%=1k88 zc>kO+dZ~JbsZ}NMb!w}8lbh$Q%8EPFuEp@FimHU`9VJZ)`0JJfh0r_=IWq*RpWhtn zYrENz(&;X={6s?+a@On?_o5E%6n?)@I1ejiV`?0xFqUk~bPaJeiuUJUAa;TY*IWt}% zSf<-_OmOAYx5+jXZa*fkrRUNaQ`l8xE-T#KuUbh`i)%xzoi509kcqf$k;>5t5XLlF zYgyDo`x8!rxiWbI(o`F&zq-dn*17c;xY!H*SRXI!=vRe5!JQ>1{tQ~a{8KS(guoF) z`Q{z?Q^6vJ$4VrQ`2{1rD|%R!O2yOH*rOJWD3AKyqAn+Uti=UT8Z|DlOf}hdLe5L7 zFjh3m|3gn@`NM#q8BR20aLLmHFpRy@D_T`2_tNr+tn?gqX=$EqP0C}Yvh=HZAKLz} z5N)IQ1TEcJwe^3o_EkZ30Kt~HyE_E9xVyVv+}+(ZK(GtJ0>Rx~f1b2745C|UJ zZS(fMm7lHs*sYq6uIZ1Nn(FH6ndx&5vvhou*^Vx%tgUh_6WEY-*yoU`&Sw{(v#GhY zye(2uwsh`lpsl^c0drbBq@%g9$Mg{2Od3|OXX0YUSWhlrR_uL36h3dST&-lRzI;MJ zn5yURYY2+YB~-q9<}Je4j;pjk4;8vlr8k9&)JrivPKB>v8CB3yZy-897v7SYlB*qa zCpyUHlZ>1x4*cr4&U0_@BxNuhu_-XN)ST5mTx*yEX=;Ua-yK>Rv7(Z z?F7g&_ibNu@rdf6X<`N&&=>ADG18-gHpDp?UC2E*Aec zpbG?PDW6E3ZoR*++>Sjwdtv5kNVkPbGd0uaGj;tld1cS9Ta5CzvG-55qaen$pUuwf zWO6o2jS@bV3NX;(8y3O05P~5&%8u>XN`x81mWf1nt5f^BOC9Tp@BW86M5jw9B_4Iy zy@@RG4%5km7Y;aSIL!HZf)>63n?_qvW+x{T@$&1LhAOx${)qj7%*)nZ79Mk(p%#+|+)~?% z6w6Sp#RN;9NUohW+6eI#jbzFZV;V?pnZsK_anAFcl`B=(ektZss=D&|{f>Rveyt6% z`@RWB1H*aWz^^?mg7al0eRerG>U1(zHL^##_ig`1{ytCthxVLj^8mkSmzmkb+&06& z*1To3P%z?j2B0boy&~O!W(URm2~0eb)1=VLWb)gnC3+13HOy$Z>k?s(3*bIG*BHo^ z+k*cSKT>3EbwYJj!P}A6Y(egl;8YP*MGFJy&0_8CF!_#7K4ghZhQR%DLky#p6u_FF zws6)fCz4ea-Ayx1P_e}O3m_glZ3U=uPZ3IorvQn3_MGEc5$N%{Y@jjs&{6XEE>gU# zjW|!xp6n*+laZ)T2!n|UGj{x#O)p%{l&d3<9mC}&7fD`?eO5CfxTM2s2A=}@B9_7& zR|5R}J#Y}2J`JUd9gn^I`9w$$VVg><1J>jIfJi0OM*2RTK=1pEe%p|J?4^Oe4S)E!5A88PMfXhbO6vmV1rpd@I(w5?is1LQN zqjBh4Op?mgGhH>^uz&JitaCwnY7|iL3uoDU^*y7BZU$A4tB8)z+Q#uhxj$^%$dMU! z*ZLCrZ`Vtri$w7AiQmSLhgmdXPk$+KQ;g>$&vV9esoZMuYef=Ber z9Oz*3SCU7aOJ+z$KYJ)8v^ZKYQulWe>-p`Xez3O0g?bCv1za7Hr7BM=iG9RAS}rOV zA;H>!w~CZGcW<${75VLJ?)uZlK=P2^=Il+XfL^p$s=e->Ghmsa(J)#Em|Hdo1WapN zM&L}O>6go-;3%c(7Y~Anfh?MqML4Lbne{RyI2Ftu**G_;_Ue{(ICsEBMvZEjI2^Ck zAG*cB=r!P^re!$}cWP#xOc@S7&@W9uC)xq%mzr56(}AOv%AjTW6DK7#^T!|@Kvkny zJNgQk%D|}_-3Y{E)+m)J!hr|IYFIYoxB{-zh{^`XfU(+pv><>S1E+Dc2q2P?Q#<+- z5KWg_FIp0arfnI5BM7|JD=xqZN*mQJPQd9&J1Ub=1N=-K)h>?0VFPqBCl!TjAxGgH z14|j_RFJ!HDuJa8Ni{ObIMF~_1`91}(`W&JWm*Fhc8N?gjs{SM3A;$99mfKwpNgbI zErZ;ILkI8%0eAr6ICxmaCeZ^xGR-|Z00z@l3eJc2o;={aXb=+^SU>0s46Gj9Nqdxw zh6M)J4(b8V^!Ahhz3O{zz`(jeJK(EMv|8GuOmsrpqe3)h+M`5t5U{&`&=jz(wPym@ z*4T3aY-{eR0JhclJ_Ag(_H+QI8hbVXQ_VeD0LWB*?+YMbYtI0Xud(Ljqtbn^l99sqM1SQ^3udK^5TUk3n=0 z(71l^GtgOc&k#_jvF8Y=)3hwX(PQ$6z{z0t$im5B@`%PEO>NhY{+?>Du_py!Q@8BF zIZf5C4i~yd`h13cvP!eqDF4GML4AaxC|*>GJmCN4_@1VINLe&3E|mug7Xp1CeSXJ2 zd8Ju=lK*j&@V|NfpB?{eKj%oF*RfBUX%-#ie=NkSSCAK}3QOhrgbSU21ATSTY<4(& zS&$cWx4o~R51Brg7kt0PF0^IKn`#~|pg=a9D$`N61HM2PC-Pvb^eZ*7#MHyY$E9>NK3q|s?ag|M#MfQO9 zl=cu$jsw9%&R7|-@ld5_q`zXhj0p}z z3+m;c$ecN}*yM=^c@iC<5GO27X5OAT?`+0xPX-oqDhajJF!F{{$3UC`937dRUPowj z^bcMfW!z<)pRIm!mpyCIf7Q%PeydE8P*jdSQ#SwE$eqs^&zOE%qs)00Ya3%3v)_qS z?q1GO*TfOQ74fJ=7dH8x%9R+cXjd@|=$Ao=_9-8b!}a*4B+gB4{TzMzK2}DV_1=FA zyYTS7Us-tZI(AU#)&aWpEqBYraNk-nevWYvU&t_ifM3{IeG*)-QwG^Qr{)CyDog0N z#m*43ehzVhVuDtOY{Y2F#?jiIeZEVDwa-m20fn#f`IqjGYM1AjcB_Hoe zzd&x>7IExTzLDu_^9;Mds+^PM`p2B#Bb7AE71DW{RcEz6=*{Ze9;u|qZ8FrHbXvF1 zpvPe{{W*ivWE|v;yns;tz2iXE*wLah@ffE3PWki|d8x4FJzTKxCTseJelcv?Mrfn} z0?qq^+d%xi=?z(0(kWBd>p^Gpf~7p|J=}0MYcmLb!L!`vpES5qR=WGq(B>Ojx$Jv5 z$*dGcYlzXboujo--toVX+^i3EU`wdU?^@wp@|++k7X&FUDeEXVW!YYp+Fg&@a;O|C z>Ukca^d@E;Yg7E?=}n9(QU1@k{L|JUnexW>B|y70wl(*I%bcEu(bt>4a#o1t*e7& z#dIkrGM#7J$fSn?S$w4jSxn{USF|9kN90HPK=EG>m=MH&!nwkaeemz`oo?!4P=V-y z@MlpUN)Xh=H}r#<(3y}vm;$+(&w)5wkVm3Nq(`hrsNNvRLud~;fT0gH7|{WAvb zed0YrssT%0A7=L5(Yu=@?Z6M-kNCOlhx5pHFe>=w2MD9ruH=t!erPbsGyANXY~CL~ zF30@e(LWGIertG<2h2Xqe0w0eWPrHt#LdWuM1@9C&$yq(7@zrZct-yY9W9H`lOSz? zeHVv*C~*}&Y3)BmG=!#fHyg|X#Rt&n3jK}NKWG=WY_W10BpERQQ-%tM3Wu*PLQG;aZxY?(l+_z&c<#2oQpD+eLQ8hFWmc z&J&pYJNdFB9(}h>m<^+Epiy_mJGcH&a2oeZyqD-yzE>+>!1R61ea+gx`U|(wP^PA} zp3Nj^`J}db$KX6371`{-;8@V<6gZQWe~^!Flo3ENyR6aEx-2^15@h{zb=GsA#`v?c&LIoTMcBT~w)+?S6J|?0XL33qg+RHS2bpe#sDZcWux^>(KqJ zWkbNy9)r^raehR;tPvr|pI~w3AvY3wdLrl4VO3~Ft3dCxa>MYnaxCX}<#hG+Hfoq zaW|>X=jM4j#89NXO8xw!`gf~MfbKY=^dY5Jm20Rg#s7i5T*j%GTSG0;ODUJ5 zWfk%&^(Rz1wnGTV#9)XMnVPOYsSrOXk7_xIEmtbB;j1_5x-%hiyye@cPal#6S>f%m z<+d5E2KKs}#zNZ9W?DaZ2DT9l0 zC424W=?cG_Dyf#niBtOeIiGjeVmKZCT2nd?>)3s#TKQ^FBckP9xO@$}eoH11HtqsN zNrx53W2U`)GoAQ)$!FhNu*DFkMm&Q`aI^ez^j`+Q{a1fEkZQgm8Sd`4S&=8~6lxw{ znPACA;o_Z;J*z(*D$^few_zV=_}?=`N;X<ngW(`}g?L1msZhT|8YMW@;qYMK!9?af5QOVc4e%IP z0YYmI$3Zp<8wo8P`Uz}KMMwmP28RG8C;=*@oFxQ}B0NL&gqljIQK62)`9rZ43MWDf zKqDq%ltOPo2`8eILXAn_BqGs5@ljEHgSCWa#)6fB)sUdYf)0nZ2!Tg}mxAIpC)tWu zBcFwW##%yo9JGL7U2?ns_at>mbNOF63StDg0P};PAx;oxbMZ^SCHy5n#0$a=g4Ba6 z!1Uk|usk>lj0hHk1evp6Qe3iKVqEfF5?s< zf`h<4U{UZESQo+uNdV`8LF8Zph!2Dhq6@(Uvx03Qwh%gq90UR44-qoQb!T-)cjtA- zZ@_NHX@_YiYe#FxYlmBfGDb6oYlb3(A%r>&{R}p&BHv0`Yz@6Iu6>sW?$Rop1NVw+>!i*r?&X6_3}Po6vF4_O+S;yFqD%k zFLJ(oUmt%R^!ahz=XAFSiSK!}xJ7+crW5@R~ zzQj{qE{!M8c2>En*m1Hioy4Ak%S(uNKG4uSm7vg-P3%-7J5G1i6fLN9Ny-q8rMzrW zX5z95$zQRM_H>$KT&0;zocT!EP|PwTTt6CvzPuzn3sezm zd4zP6`Z@@k#JZiK#y8_(pzsGN@U3sZhl#;%f=*{Q{zMLd>_4(6S9vpz*sU@a7*it` z;Ib7~9+zzcd^PY?8KZfmHbEdMi=r~KqXB_X`~5-UVJRuRb}MDW#rVa=z?Jwr%#BFHX|_w&+t+p6iMMfLiV<>Gc|{ZsvL*NfAWcbYV@MWjMQ~b`O_zt<1xk{)p3R_0$ev<*+C;K zT-G9w#-tt;J2JzJS(V|V^h9tYh6&j2KTi!ngNYiv@R5(=GN-o?;xP z%gZYdR8O_UV=mNoMpklxx;aN(J)FIP-zrsZ*OmonokLy=c1Y)NJ9bi7Lu>5Ti=~AQ zIA}j5YGs|n8FkX7uzNYhEKU;SfCBCf08aTG-cnCX?0I>e^1`r5AkKOZoS2!<>xo29hq{`<+<+ zXuZ$yE*ZE503O7aBXBvor}m4F{)d(QOx2qi`Kcu7{fH|dXVj5bt?c#fiJUkv%>fdU zb-!$1%IO(k<(*~FddpwTIG^q&@`Fp3c&jOL5Q8E+Cv-C$L$24jkxQpssbVYGd}6mg z+5bTmC(Ae3$7<~@jBp#&^0#+c$Cs6&&cyeyf1^UcKYRN8Sm17XhHt9tB;GL? zPi=hbTpYQ6Et1!a^{|IV+(C0bNKptrp8#bt4#uklyve}9?+@jL>bBEEBdLtkrpg(> zAa1sAO_?>zH;|S450jg_qT+16ON&%Ll%ABlxn+y2G^zj`YcK$5vL+STdfAr_-L`6q zj3+v879`zvdid7pln}(t7bBo4jE^B-6y)Zv-;=t@<`A5!UT|`7aT#xKxPNgQsI@1e zh}Ye{-j19g)_8ICjmb4lD6+vGQ`8U~gMEn-@J|yI@u0AZe|qvz9I*1@T+xF~A;-&c zI#+KTP@5i`ikkwZ5xZ~1lhQmXB(ha{MBAHG<^RGDpf&U42d*T`)PV`COW9~QEWJu; zZ3c~+2Ri&^q_SB*Z4nfaQ!ume*#UoYi#6Bx^a~csduHmp5}Z0rX@AvT@X1$IG7#YRnA+wH4MNvT*qtgY>B1sKH8 zTQhmYTW2SXd8*cJ-jpPqB$6E!d5%|3j-MO@m6Zilr55f=H*0EW)Jh#xw51#u8y54~ z^nUFk9DD{@_ z5`^8s@}G|zZpw2^5&StOzd+YUp0nxWJeE6b>rpBTMl^4kbNf;la{u4OcfbG}m8mo=okvSkHR+(~>fXQGWdErAI;u zHR$zEh7SenInOz>`VR(gglvi8?u(bdX)MCFlyI#qTNhmq!iS*grvk6ufT!`zO+7lP zP*$_;wukBsr*HD__w&)wjc&a+t5?2#+>M|s%J<&|u8;48k;^*)wky3Ay&UcDy%(R% z0uM~C<-yA?`baNAsiVl00G2eIbRhB{mH!w@WmMl{9fk1<$x&vfxlp>zeM2wK+{5t7 z@7ec$YT*rq9E__21jc5cAvfRRN`T+ zjyRJV0jT}mr8`?p#N>_gy3 zUqQuCe+C>IdemW2>8uiw83>R?Xm}BfAzoi3S{0h1Q_^Bzy7OW#JKb5K?uuv_Iq3Il;n0R9}MTW}^n;f73<;FTOP-ujK*>kKc? zF9%khhEgjMk%MWDE1w1&YW$PQB`x%=hjp&Y!c*lKbQ&l|Zp!U(IxJLMKSoNS{N=qS z;kNZ-0VL(964yJmF0y_Tw!?Ezd*(;o(a8VT;@tJxqit(}yMu0ZfkXr7*u}qVcGtR0 z1Qc(UTUUbJt@GD9_KqC zi97rw+aWQ$gWvSGsJH#TZlfPx`(eL9$$4RD9)K2n1_E+T;t)m!?v!KO!9(_buZkFG z`u)kWI%0aa!7N!K)Qz++!#N!(Z8lzQ1$)I-Z!QFkNN3F=i4-%|4+)F1{1j)WM5jMA z)I)?pLw{S_UDh{6XSTnLc$uBpxww8`scrlLP%S9=vO@D)m@?}hC>R6i5=KE>48f6r zwg!#l1rk&MG!vn4J7cvSJAdTG^Kd7LXN(j6oa)#gSlQt6xzIr9P{`+|70Nx+e zT+0|3T?L)cpJzXHE$2^l>-|vK!qT-e%tD>0c$#wwLi>*Ac^}zGh$tALFA{$56oU^% zCD#9;QL|edd2G{4Z^@<%n;p58GTuXNr|fO?wgKC4%r}-!bK`@K?ObsxY;Bf&)sLWJ zLl?ZBf6}X_U3f#qc9L=|EJ|erX8T}Hwz&W@AxDFw;&ihQ6n^FIO3gIa;X?)lwy#CN z2c?jDUT8DaMK6sqYS4jK+8;oTL3Lw@lNtLiA@e8DUTfEGiJY1L#IpGZeVCw;QC(!ivVra=G<$C!P%X0t%OgSDWU#H72bwfgu(KK5rU zK<>mB?n8U|lbD5jqvON+9jSDiXn@Vepn1+gQlQoRT)naJPWk!nk-++y1a#^ikIhxkh<1nq2(HLvNf{LvKlD`h207^&h= zqG5}Z);`Cyj~DiN6V^VbfMHM!Pd;Ny`c4X{5)z2>v2h(>5%CD6Uqo@!k1vKC80~60 ztXk3nwe<_Wuy31Rl#IdbJDw?Yd-^zj;)mqb1;gVc3$MTe-<63B)C-@x5+1gC2H;iJ z{hh#B7!=IzF%?K_X|MPias(F1%$>DBP?l4+#mg+RU8m98C||-?ya5>?zUaON;tjLI z^`C?(|I%0rM=+Be4gB^ej0ocz{rWpj?TYgaG5+3st=^b_x+bwP-FJCr0AokxfQ;=K4JM^_VE~oOUM{5Me)9#{yQD%MnSMZvM-v+8j8)#Sn(*&y^oW_i?0X$d zbb2G!wqE;Vsll=@e>Fj@H}6%YM9wC-VkWMX$4--_&M!rKFB=w#)4~qRZAL6VTlx8w zn(4{R7&h6F$~`2I*D{BAX?$Qp@NPWT5TZhvszG|Y=U{lsl?^f>$z}+W+^?P6;L-f) zom32D=5&4OcQI?|DTkT+h@{2J?T5m3G z@Y#=+QImWwwjDSUhXIt)>n)P@gDpBo{Xq~)p}kXf`U*)=ADyp`v_`{IZ1?kv4MVB9 z{Xvrn`QoBZH9RPMJ@W^BMyg`(apRdU!s>iA?|>wkb#wE&EyvofBW882P)jM^HWsz} zC1zP8v5F7x(t(HIR(K$!8eZ)~qVMn;vucG&BWpF;ZJ+eikx zUq+OQ0<6rBx$-8hEZ+?6^*N+~LtH0M`yUyf(r2me0Af&@gkmKMZ5cNQqfTh4_k+9| zFkpG}zDGJLzrC#I^!|dp(_`2DPifajxk`>J#bqY~_(B?p?Ak>-qIf zT6848!)+nVIKcM4KdCn1%;7XUfQXB#u<;b?>v;$w<`qk(5Nvl8iE*H?dX~^*tN!HU z&YT+OiY|yg^+13HeBC?D}?gN@MyO-JRh|3S)Gu7T???8|TM_-@aM+jrF( zH3cej%PF}$)(HBSEZLw_G0f$^ba-QDM@VobYOn8Z>1E;&RZ`Qad^TMKo14e zTglb?lrM8|k!Ir+)4s@eQ#Lm!Q({kEr z1-$J^O^*~>27JvD(lT+KxM%GU5?KYAx2syUG#|a@ z^#y(7&D8O1iC+4e+i%%+^oINoh9jnrd$EQgnu`vp#)V8ov`{i7K0`j zPgBth6v-0ugH9dv`LPUk32(@r5lG~_f2n66P2zxHWxBM=Sn@I)H*LRb(KF_;FF5V# z{BXL~3w|gQW;X28`FBa(s4BM*fYE#SJg5u{PUjBf`%T>p#w14C`pUvFrD~LstKNAQ zP5>cnpzGTQ%`d&%F^Zt%SB#JJ&Vf7zcFuGCyj$_XE7l%PfbH#QZO4EFqvFq5XR54m zpgVAeZyRknWp7+2Gvdrd!r#olS0QKKxSU2sLIQsfl7odP$CEL|5aq|UX!fKUzd6aTo(EpfvdMc<@> z1l+=J_9dgZzopHJzvMZMhsmnpJ`#bh_gi09QVX|S%CCz%u6)^Fi5fYXe~#CW5$bbm z=)hF%db-x}zt*Fp4|be1NkTycHDr2q$a?jux5;|72063W#nPyrvfJ2_m7M~f%n#BI3V*xO&jya#9&M`&u`q*CFhf7seWrX3NSb$qn|FlC4#rYo4&53pS(I-!C#V5Mg1LUS3u3p0 z5SE9x$z~I2duv+7GGm!jFF?zk<}T~v8hG(ww`4*=VIhQwONqoBD7xH*I0|W0@+V1V z*Wl$=4ca)@DIn8ds3&D7E)a8!4uTRVKB$sUy9w;#BDMGa31o0vs>H4QotqeBugdhI z&LX%R42en32;OnvWE=$179u^`#SPD6BiG0>D$~8LJgR9#pv;cXTM?l4lIvD7l*#G= zq1V8`&0y{5i7V4}BpfApt59F3XJw*T6U|{kmtvj;?KQMwx3XZ26-?H`Yn>sOs>~Oi z5D7W+bVpG+ZjSAF5$S3eiYPO7d=u(-T%wSbKUd5{p0B%_Lx&(p8_qyr1bX5l!Yh1q zE>5(ztv$Rbk=%2r8`{;EofIOaGlBE@P(p$be&q?{QN`>EYv}zbD#-*IyDz2;1`-L! zTmvNp0`8dt-~fQk+VAd*nnmWq5$ECEuAiriH(5wj#1JlUnd!EhXAEr(%!kR?)X&6P zY_bv?2F+qipeqPQtID63YT&cbCR5m46(HaDrFk}^$~z_zSkLdoJ|dE+<=mx7yRff@ zRpE!Y)~2*{a2Df}|^(azm#TCaah#eSr@(#SXzw+Gp?d-?X#dk@%F;Yt$vH6WYPR+|*3^RKcY(cR}1>?26 zVfOpvB`ZEdK%kzH2``GSHDTb{nMY)r+Z`oa(Tb*JaZ{BCC0F}VCj2YRl)N)6i%O!y zvTch%nhOXscK<#>MhNru_uqlYRrM+>d9&Cg4oz&A^L2rg&8v>P(2>4X?xlmxZl5XV zsAvm@7>m}@ruVbS>|e%x;yK0}_V9Ctzp`~~yM~-rmR;IEzZqE3l8?vx+(D6(BMLot z__6DL|7>2N0Z;0umDQza56gq>5=tj|a_L5US1t>Bl^U+X9MIKXh4)35V2!k>|1?=V z1sBdjGj#j2T&_(4%|8CoyKpDl29@#hKHLv0LbDLbs%n1BDEYPh4msEu3S&}1F!%>i zJbVMiei&=N7!?le%G_bYcZKGIbC8vi^M=}=|N(pnP5 zDG4!nx%>1|a9Gf$VQ>QkZW`UsjDV zP+V#YXVZ{T^12GCf-hfq1*qB;M!92t;OJ$8%sgzZW4agGzTw`i2VdV2b;~MLjShHn zf0hzLTC;2a77WoSs`u5kx3eLtc*2h_kU+Kb`?_#HGP)utFb0z=gJLH*ril23B&KS% z+HJYeZ(fm=S*i<()5Vo?6>sZm)cbdK&j^2%yg!MGX3Q*ucK4F6U z=sxcwXT3%@^UX))Pr4TW_T7N=KOHA4O-GgN!UdDx!FwB4@_Z3N7WFbthh@MwU?8p! zjSq$nuCGe0F=9dc;;hKmHG-?}6<_<2w}@Y<>7Zjx@*9=Izc+PwpSm;8sgL4)`^UTg zDI=IyENvzfU~6rJz)5<{$bf3g!2gpH8ia??Ybm6mEzK`1#%5jE@QC{{)$#9LBCueX zmz2%3Nl>S{DGiL`9BQt>^P>H%gE83$pBJ*rWJfin@B>1IG;&G1>rEZ23e!CzP%v_h zT_I#6e_fU#h6D$f%x-A%`fLN_B7%jMG$}Rp*81BU%G!qJS4xs7F8H~*@e|=`H>gbS zD++~S^k(%5kyGO{wSpcB$dMLsSB)Oz&8-&pzseQeqzaOwncv8a?LPW z9@-n972snWtVkV2K%IeA)qgJ9t3t{KDte7RGDH5gmWo-1NSf;SUFgXBF}FLuM`6T& zxyE8Lm{e+D?qVmk*uluxWTp3x6U51?#{@S~OaO&|Vc91`v?`FghQM_bM(q3`LtOz2JFu7nHttZ!E+^MoqHL=1aokhQkGKAUQ)U3qS|HoT5=L7h=z>IS}6bPxn)O3d(s z3GvTG7`?z0vYo`(l_wrJrCW{lO6x~(Y03=Jt?Q|FmYY+_WsDXkP=^OYSi1Vn3g{uYdbX8g?iPMjqLOl~$F&s?4N zRSIs&ABlL3+A}!QJp*W)fd(=DQqX6B${SDUk59q#gqm zN@U=fL(uIU*>|e08dSgIHxhZ?yk30Q0gUg#)y&ea;c+0Nh>%i!LA<{h-1+?PrVPqOyBZXsC}#&1K5TU(}Upw0`su3-G)8J?i_CrfOongn-gqC)y$YundS-x73Tm9iolsIs54KZPjV`q>}p zD^e$->pDokzU|1N%%Ehp>ff_Z>A6U=-w`;)_xAqmW1a3i4|9pIJja6P_FthZfKY59 zd@rbt%+-)+PHpLc@7LWjxl;?%--ZHi`89&eyZB64-<>$u;Mfhxz|ZkamuUQS!PM{t z59)W~NB9ig_MV_MjH}7$j~r`R46-#W2G3uO45^@@1-(0yY7^};{HFbk$2w*YWw=e0 zTHo-R_fn;&8W}cxC+(SEzcP{G$~PXvZ~5GU)%w~d5WmAR)oL)NkC&AXDx9irdl~!p zkeMrpUa$?f?euV#s&g7L-@*igNex3w%NuhV;PE~=I^Fd$SjRE0wF*8e&tUh6@xs!C zk)48$mB;RokqbN*rML-S~^@Rp`MQ2F@`eKosxpiq-|s5Bx%_sLkw-#i4jo zn`B@3TYZ6=5um~|7@OyGx}QozzUohj zlbUNTHJ0B}<|yo7it@Y=E#CavjgEewO1a#s@!=y+m-eJO_r06>x?=y@Ky~O~VR2NK;%&i*>940Jkr)>>WEJp`L!w#)Ywx zf%_B@e4WD`&Wc_)a{VA?xDUySCuj3yo>{7ru_*f70G-c9a|l76Dv`y=#VL~chACpa z7uZK&R;1qz6N2yX^WDm7{H^zLkN+H`a}<&P?qP5j>YA!%wC(g&y%FXIQ7ZMKCcHwW zqyqG@FN{S!KVfMLhot;!3iKH<)IHA*ysBiWZctln4^A6SMDOceM<-hk+9P6?RI%@p z{`1C_7jvSdpU*$C^Q4iaTPCve8Y->vjLXtuJ3ni_cpf#=xXEgbPUz{nPVLr<(2^8DT~^ba!G{q+lB9e*8IS!y+j-&)>q*UUY5RyIw@CVla!zceM1vONW6 z5{MN*jEd9&B&7*oIEGs6F;EfdiO~rJInWgV?N!mr$Bz7cEDuJ2mk-e3UsDDab-a3b za+e?b?+T0sixY=`Nmm1v`d!{bVn0$keR?ygj#QGNTW>hb?y^2M59uhgzitP(dN+Hy zqsd*4MbW2>e)r|dOM&nbMz#REZe~L}qOKnZ-DXtdrtmQj>X~B+5pLv^svzt!I=I zA-c47MoNavq^p8}eAaYMPqFvYw&}bNVwrFY+8r_deejjaXIa%W#)J^v;OXnY_L?jF z7oE|B!giZGUD3@Rh5U4quNVQd3@OB6KJv3vOMxK-o?QWGpT(+Uaj+%u9l!4^ZvbZr znvMjGpr)}J)?Pujm5XN}_It_e{gMh9rj#bSmI*l}dq_boooVr2TcQl66@5}(oe60N z^0-H@Yj-?sv*Uep4Mw-7>X9R++xNoum93;s#(JFZU6^?EUK`grF+pqJn03yk=}~Mf z^!6y+Yi2TJP3wNWp{)TfJh@FdbPy(azZ8!4uRZhO3krbDe5*!vY>f$!`z0oBC=KW- z3n}K9IIkS@qIZ%>sz2Mx2ubVebiNNbj~eh5B@#!Bv#2`^qG~hIS)&+QVdw{JgaBD7 z4azR;*kY=`9x;)~2O9)Z3@#YFn>IY<=iA%8BRJD0XPT$jJ>+5Y771utRTp?hf{LR1-q~E$(TlY`%jy~4-(&*|&C)Td2 zY&6uNwVvHmPtDpeyD~S6Z6{`IMe43P)lghA7a(8w%N%`ipEE}UK_52gpPZC64r^6& z)sJ}-n-&}#!|mBs^T$j34WfVjKz{76xAT2kO^m9xe2~HS?JdB$%^bn;dr` zx$gExN4K7CSaeTC4Iqe*XKu8&BF;dOQx5HOoRGNkHHYe%A}pPbEaP9xAMDLMY-N8Y zcsQt=xnOb~ZK$bjhE}U(O3!}}nSZ9osHn~f(qS-z=8IM-zSB>Kgs@P8L!+w&X}r+cz>oPby|zN#K-~&X<~k{~=RY>z$pD zE|FkYM8bPO8ltLPh|FSagJ4uT+AoL(QcjX?%7lZzUI@>)2sf1FU4q~K=_%Gs9%1II zBgx-Zu~YDwgGW&lr%?v+v=2E01tbF_yhwHBXHcB@jkiiK`x>F|pGHQQjOH?S42h=} zv9Q617{JW*bqRmZEcK%0Jz~}-IWD71*$1;aRr5XcO*%Yz1?3K<;pa=^VIt@Rbk>a4 zFZ3kkzQG4y5$?Rq<=pXv#M5XvL=ges{k6@a(f#s|NXAZ|IG@&LBI)?y_o+1+U7H4? zi7wR6Ut1E;^hehSnU6SmDmMnUI*3;%JPY)b-4^Ae{T(@yh0;wUUuEM93L@zR#^%yY zxUK;HM!nT?x14KdjzaH#RTZX5pr5LRHD}txSCVH0%XeX-80M)H>rjuUbl_^LC^=afju(tYiDE+;by)!bx=ycwm-S~X>lh_}YxDhQLI60CDLHHCIO&`VzLeycD_Q7*3C z(ut;nfA=RsURAfagOcI7=p^w@DZ1mi88l^I!!cOX3O5!Z?*;q3t-?xQzf)x5-M_1w z%Ytp6{>(V5b_yHe*m@P!{mu>nbvs?oK7Z5RW9w;g$*3-?x4nsN5(Iq-aLP{1q$whK z%XSTrrazH{4HN;sgWyh~CJ$W~E58dbOSyezOw%Xu;lbziaW+vh>-MUZ-Zz0Q=%YBM zgz6*chF>_fG<6B|mCRFs%-z@}B}fRPRqdVJv7OC({pYy6ZU}9>MzkPMzK1EduhZ=<-;@RiH8sy{MA@$Z_+_342ap3P& z>ocbjc6IGXvw@Uo=0>dKqs)(!Qqr?Gp zD9_cD^nt(4WFX%1gG*uJ^ia$WkHuomOWdSjvsTSlc!F^G2>H#+93l<=5A9mPua3Q% zb)Euha=et9>m~-TG?YfVLBg8@BQmTe+bx-0eQpzo8K%{3OzG8?a6T((zE{{Dcnemp zXGX6J!QBJf2J8-4J{u%(f<=8TNBo{r2>n*XaQ!6HSfBt-((=QyN}OFB${_1VL{|4#4GHg=a8lhaMs3vNPq%nrSx6qU zO-Zej6Z*gh)BLA|`EC~b?xGgHRG5#ec4*}FhpN9SL+q0i;ixP-IZVc*ClBSOpHHf| zVH%QYLqIOXMN!aFDXWZlq?z8h6fwJvu?Up0tfpU}qnYTOgTD2%7N9-HwTcZ+V@Xbi zaekE{h6cw{dCFl4!b&=E%1{&G@nM>V$+OiRH`y>V@&lV@VA|yj78epeT3KE^oa9V{ zniU0JX?E7fE86#W%kUnKfX9$iz%Ppb20=i+zcHx-?h(6xL9u#Lx&++N%A3!*8zGUyKA4JcC~V4wJ>HlLP%ev?Faze`hw*(ibV1tI$&Ykf4($v+)!kLq)m?qxw_57f*-}fg)RJYXb=b0m zjSnneu{liJmXOV5FbM$yA;*~5I6yKCNhV}BhcDTGR>-g+-#W9)5VIk}kxYOu`DQj@ z;L|2-vLOk$weM9`w^~9n#In_{>Q~46|Ns5h`;X%AP>*^yb8+$Q%H*WyY+j8OuEZN{ zdPas$aMVvV7AYI7wSDQ_w7Q#xY(k}Wbvk#b!ZA_Os^S%ykuMImZRx8Q>&Au$BAad< z^e^y#&TwuC@BHwYh4p;f#!*+MC(+PXBSWS-QkFju>y6l~igiK5I{KxHqNSMCCD2j| zKmqnX9z~;R5((*cnt)Pe6a4<7E|gR$!_^JdI3t5)bRn&-B9+QDjC2gS&uD^)FIHWn zxkx_}AB(}ivS_LR`sCV=5KW7K34yp1NhTD3Gyf)pBFYVZUWKElI|&jNkd#2o1Y$-I zGk_QaY6y_T!7`Pvezk1nE2LccG92KlN@@ibm(+R&=TNn`ivqTG5~99qd(qv=jyI4tuFAN zxBk1A4XjbR#b6MyuBS4EU2;l#xT~ zjWMsPJn%3E@7HZSWyFo?H(I%Or1jEHX;LCurB+Gl{AG`uN)9P+X~YVlr$=s!bE3Ma zQ&q*wGMOq(G#_nEzfqL9cZ!%KN&$&5Yj;d`{<5gvlTzL)lQGKFE(d9Ur>d|+e(a3x z7n`={!XHX?UEA5RYp~X6v57`O5m9X+#i_{Q zdQZG15eU_EZoo8bQv0cYgV-b3AGEp*ZQylmFSZTBya$^EznY08zLNWnjMxW8@NzW(8N#@CPU9G@H~(&OpzO-;|o_6==%tAFkN!kn}4 z5b}eu8b_@TqZg4gBBwf{U%q6~ybu;GR8D*o6;RNURGW_!4*TbSirRz5haqOh#qq#6 z#Ekl^eNE37;nVszy;X$Ia|&}sXMuf4^^CDPKVBS9pOQ3vq&m52*{FGZDZXr1#cx&a z#R{%5YCldgMt?%}WcrQ>7Rq2U-04jBCKIdcU16_*KuP(bmZ54SU!6qi*5BOaOj#6r z{kBhU7{6;n&2J2UCYCHaPj%;*q)0q3l-*<1QS}Y|$^4Kf;9G_|+OJMq?Yq{*XxdST z^&T8s6w1HgAVV4Jzr**F-^JRohgANV#H4VY&J*f%UQws>iaK4g*XewFElK;Q|B%t#@VDt)L*`&rntdd&lTZVd){uEE7}WxOhdJMH02U6cQ2}|_96G@ z3RuJU8^k~|ZSUWc_a4=7c6Zqv_$}HEg3xXqutz*r1I1E{U6C5Bui`{hVMM-9-Hz?S zj;r!}yr-vePZOHFbDbyFh&6`bk7@I|J%#Pt>89Aaxy^-EH` zF(cP6gv=#>-LrgIj}%m0%7T82&Fkihn+w`qOhxTBv@%zu2g=eJxsuVH5Kmj|1lHX_ zE9~oBJsqVCWTHJ>*gqIrjbgghEr3+L>fwD}^ZWlxSzMJ;RbX8i2gJpNkZ;wcYvET2 z5U<_<2udp=300MXSRsB#W$+mI7KULA9>xD2l|5H~&%X{Sx<}i|Je%nek!6|k`BDPn zl18E>)l(2ta~&-OD@q25u4T1kkjs$wfs7i$f?RkiMoe&MOKPszk#8wPt!n;4lkXGUm|}FMaMUFxR_D@@}Yc=_BCI*XufOP&9Ko)T@voStXOnv=TZ1C>J*^ z%`eYyn4OT{d;xn=#nkRYs}ZKQe=3d~)4hj#MHfO@EOu{fthXhmD6y8_F$%kJ`;h}j z4&2DiJvi{G!lAWv@d=8BbD-?)9Qcw=GnfQrh^Ydg{XFBJ6$X!(;VZM&;mFa7s%GEkOZIv;yMRiVGK zGsf&BDVAnz>K>I}sN}F%g4(WEZ51{dDHvadIt*g)BWVM?jCRYSJt5OaXThwnXg}s! zt|lIpt*TpMI!C0hQ90s_#t|vJ%n|8-9=P)NX+F-g{;pA#5$&P0$>PN8%Y{i>(+s1XBH$1c(50%a0D}Nl_u{yeWBYwEr;~$#; zD{%xuu@;#0x|8#N&fAgm*Ka_-qkiDi{^J9R4h@_BXGHylapjDVNPrVUMLIRIgV``wNioOT!L4PNm%Eu^62}s6@5n2AQl9%0EqcP%m-p#5chz81PPJ^Xzu_W?VzI$ zbk+hfU;}GKeS-{r<~d0IVgTMj6!g>RGjBxhAaq*j8C1t1uy>22;z98qkreY5r64v9 zMhDyft`^jy?`n}}LzI=m4Yjw`;%nep`-rMPzJg#rajCoeGK9H?nT+PMzz{w_#Ve_z zB=7AR6hyy>9z_~|wdds32d%FKg!&K*d`PS|TZ`k6R7veI5M!^Pg!9x6^dzW%ZlBPC zr0ELk%JrbM;#tdJvFg9neI!+Sk1*L2K7WnVNIZ+GQ|oQRy#`w?X~X6M~B8 zFL3;S;H(9%Ilsk#zlMWXaaInx9A1QJ#wsk}8UH-XUYTBhz`9^%SRNvsF+rrWEJQjA z9D%Iwilcml8#qV-Nw_kHAq8ZxZ)g2(_T*Ok?PQ6AKoT-BPE5y_;3mG`3neAh7HY&{m{G78O#MLc>;YzWtiOY~< zLgb!}I?<5xML33vYg+`ve`BRCACA998_b3)uiD&*;=$)j_lPpdnpm9VB_o5*l@5b% z8lXMUkBW17f+4e_I7NJ4Fp3Hv(q=^pm>qV1mw4q-Ms#C1)`$NX&r@!!4r|9gr|N8s zt$h|;JAPIK-PiK*5vafgU$y|w|$u%DCEYNyp< zDbYamL=j$`wjC>CX)*o#G+`v*^$GWhVq%JG{ZdiAhhE}9ucEb3mprs$1+4|=T6F<` zEj;h`1zpjJ_S)gBKQUZfy}{&fibXr?d-$c&!z<8n~W@)Ug?T+C8ZZz_y z`e;(A?XF3$sZ+x48js0hlfoX^>T`IrYcroTDgh-PkHjIYiV#*`rDZIJwPM>;SaJUP zAAn70y9#_ZFJZEuGuNIDO*!|Qr<=}yP>0H!Be|Sj1XcwK8WpNNUDU==O=pU5WO*wj zwvr-U7yMiUC#Av_eS0t$bXp0A5$*6-_!_O%3(*=N&r{^r$xs8$`E zxr1_I_1L)H^&mP6XDo2Glitvmg(>2(+Qe6wL)AUO)D{PM#cMlR^a`Ob7lo->;;~{a zllV%JIkc#`f!gPxg3&6+IIW>ooiXmfNhY+lpB? zI@i6BXZ!I=c0eM&(;1W$fzIse?7c4M3iRygZWvE6f{Ic4!Nfo!0XJ*`zlchlbE+$TfZ8=7@}wn9CVoRip5NQFeKpW+O{Ia-x4~T}`5Y zdsgZnwkMi>h^I&J7r-;L2g_pDs(xsT1v4wNU~^uoiG>W0)*lFeom5WN9P~_^532r) zIW4IA-Ns8=Fs`-U@My9AKuzdmu||Raw2`VKqI$cx;u}?#%Q46<#My#paFQnIlpR@n zhmB?ve;aLfTWt{8>v+hY*4Z0|8tn}>mcprjHCs5`WOUbf+Z-ORqtp#iPa^z-A33}p zN49mm#bsa(CM!mNU^U=9d@o$Ho!AI=9rhb-M`sN5VF}Cv#-T`C1FpH)kb*x^_o`WN z%~=Lpi+`+`y@w{!l4Yw7J32BDNLbb+d4CIexrvjV6repa42%y4q z2EGuu73)q-%uQ)D0*&*zS10Cjdg-*6Uq=wA2)aZe!ZQk{Vhd zfkcnblyQYS>`E?`DKxoh%JF1zhSyq_ofH!%25s2?qp6K<%x8zknZw5=rOF zXA%~KK@Y}5auzU;l(3u6q^3gq?bFnBIcPCgU634qj!2o$6f0xOk&4w)2uh#W)gu-0 zqfnW!%2436wuK8xN|QcxSqi1M*0+x}D)@g?sI{#ykf|%3C?8kLpPEFZ>zW+oRJ-6h z#i{qzD8;-+y$bj@I5`YX5hdxmW}M=rIcW~n5mk|Q6=i@}1_7-Lk#~%& zDEKbM;!zZj#8N+7iiH`Hv$)jY2-f_K7kEQ|6*}rl|GEq+LcgFnnm{u)SS_bZ?^pzF z#@HX=jH}`$H_dS3esxymc**_R43>raAC|t?!h0+{Tc>T}Z78Ywu>&e?XTwlDolSR2 zNJ4wCekiM~ocT=8RNzc*sxzBxoJ>yJtDvh#tz~|lgMSf#?LCmvd!}-MGsVRhEQw2h zy9(VeJx0W%1w|>9OtH7&#AGzV=9a+f1TDB^n_FNSTSC2+h2ac`?Tymg>M-W0~IMr-hcpy;*f-@X+HtuZd7;jj#{s+;N zj(=!M>SW;BUjwz2r{HX4sHfRG12XS<|npI!y`AN1>WYg}+=@ zs6RURDvLjr9KEG5Iyo4Mj~re%bYL+0c_F$gU9&1-MW5?767Q{^9IuOy>>pTveQ>Nc zIlO-`G0@`kG!N9)^f!CAqqi-BKjUA8Z;R}L-J0LKomb$qY+YKj4j}D;msA_F zU#-U(a$y2eC54g}lcQ0wxGEH&rQgPw?j}h6V5uDcQ4!i^n0?NP( zHc5aISgBrHj+$6lHU||3YOp_(9A<{1Dc+IrmcF%^;s*Q)yMZ*&W>jZ?y%+y6n1i$E z*6OHzAIpIa=L5BYTBCCoY|MKxW6iN&HT=E-Z^%C4%u&%P?$~qEPbFMZ9-$6ZcYByv z-0mSCZKyd`)SAIXvyT+jYbEZO8dL=Ng+wWj=s4C2%&AQuCYFyO%0d&ET)YdfTS^cj zbCK>XErE`--$)Y_Lvr4KL^fL2Rns-toebp08huT17f-=&C|ZeR{Ebju9qO(jZcFvn zIe0-Z+HEG;NQo996!!$}_C&rV-kDNZqltsxNJh#envyPG*r7z#PIzGmuT#`hSfi## zpTolbIKsLp3%vhe{G^jVDIZKd#%QbbvYKLg>D?c{qS}Qv|3Nu_ezNG4^D=+3C?8}} zkLhNi8k|wCk)fIdOEu<2S~W5d(K&F6<`iF0*tuaH&-2E$v~Djw43GGS12wJ~P0|!j zh>C+Z(B!u5Aci#NyD0-jlJM8vsy_XH8X5(Xx2QDzWBe#(g;tW*ag7aYhM^bnQz^_6 z$w~WU;B>_-tdxd-)mjhe1B`*wRR&>2pf9!ut2QQ-Mf(!?QD@jxlC6dLMS zR;Ng}=7NP}nb}qhz($pMf)QFS# z8iG)^Zq4&dAQ&{cCQZ}Wq$VVQGvjg~ORv&1qVl~aBJ`4f3Q+whdxD`gyVwzo`>k%l zK#7c z%??=xPca6Xfb*!ue?t6sIFHrX?P}bAAlRT}GS)gcnLHn~S~{!-X4NWdH}YOdj5Rx% zS!E^MiAnc=ba`f4GpS1Z2(@KIxqn2t52vv7y6Ub{OD7#)dHz-ZC5}RpWC-#bgh39v z+(8?Q9{~7Xg0-R}D@S~dBpAtMwRvY_#}?s0t}J{CSEXCfoZSN zSbAasXl9YG0L^FwPiX{Tpi2|HeuP$U0_qDJAq+Er*t8~JLtqATU=b*<*t7%wV0PX( z3qCia@EM+)1s9<`5eW0i$uLiOC#8xSp@Q+pRYX#;^HiO-dVG~b8z{O6i|ZXsn_K00 zOb44?S85psUrzxs;Bxq61AhD61PgUrS3sn{`*j)!0hiM&8HhvEgh6oITz&zkpTyr` zjSPu@!{z+K3y{sJ5xu}zGML~=nxUTkZzS@IFedhWv>Kp&d_9Cfu-tzE0~gL244i!y zJaj&&1X#s73m(oJImI(+V}(if7UEW2bz0m?MdR{Z)hI{BU9GnqYi%VKy!BPxGS(5P z8oO5jV0 zR)iy{@Z&`|2D0Jj;NP+Ys(7X4aK$SP*0{4pHKN zgtz~qwqP;{RuiMx9GoDCJQ#7g&G6V_cgh}XX@)Xckrss!7uBpZ9y4Nza-YDd8JZh zo)zvrT$^jFN#)v7rSnv@HI-~_gZI9FgyDdj{}Xtf+76YyBoF56-y6+8>=IGfF5VI*L%g+1=D&0uDo3BNz-U|C1f?@u^c zaJU@5PCR3@7%3XE%lC7^l$+<>sbH|q$@9)S1lhUyIdF>Hp}t|8w%QeZ4;H|GY;NEa%j6JOA7T)K{D(MzC&3C8-~w7hv-Q z+Md&&UqvJbGF_c%^l$$_CcOs!L#uNQn8DNdDh%>ZttvUg&ykqgc^1)s9LdiWQ6G_t zPgJ{`y4jPqNTux-_y>H=U}7oom$=U#i}`5DH9rq+q&|4x%Q!>a0`-!=!vLhiITFW@ z!Y9SFo=^<`ec-_s9(IQ0XMyL;O3x#4S^l6~wpe81N2~y~{%kB9jzz<)yP!D5atWnE#C(yPjfx`3&b#sic`T6^?ZWQpPb(KGhjvd`< zd=?E2FpIs?S}0AZ3`S%8;CDMFc3ejRv)5^H$wneO-sbV=#+v|C8Wg)n#HroSm$tn6 zT50PGMv14OK%}mJ>E~}uO}+k$pWQ&xG(mGJU%V5(;cwv^2C>zD+M2g$u@x3Q>KJ{V zM{jCDtvS%PF6QF2H%>L`uZ&LUuZ$?Iy!)E9v^3)tiKSS;Z#`{eS;8p0EH1AJP}{a| z-%jG9$8PgT2KE0S>TDfdc`jF%ozFzv)sWYW-|05@H6q1x1zH{o_wuzb3-`)W22!i5J zU5q>7+dZScU84p~Ke+p>O~8JDTQCbo!2`j?sjmlLPSoCi51w#jJ_2|?0z6}{?XAUm z3q-fi1jwPm!U#zSUOUv540ug%+5vvO?cAyFz?XsGgYWnaaP65>VDr~mGe;573f%DR z(=%{I+&@o3ihK)F=uvC}9^VO%f2$tfgH6C0{5}2^ViWZs)OlJ}iZ%NZ{&>dD2qMk# zVFX&J-Kp|_aLE@A^&3@hp&6Qv$7Kbr`c|2tQE$f9);O9~)@~`RD$HL4$#NQu(Ca%XHrw&(3Aa`s)9Dow&a-%AN z+Is??K0g^`O9e2Z3_7K^Gbzz4z3Rm!(E;L2q50;z7@0;NRft-65MUrBR+Dlzj^n6 zO}F;{kkzW^j+IKp9S}ZSu`g=yX~GBdru7>W>w6RH*C%=j)Eo1riqZB z8{U|n4~3}VZH`&sJVWi$Qm`^}IZ;deQC%fkC?_-^RNX_pdRV>ORNNR!&llAjpx&6y zvqg9dE#E4W(lf4Bs$-!x5Us=xl+P@G2Tz-iAnxe6<-Zc53<5vdd(&Xt)v~^&WA{)a2lZYOCk?iajr+T|KDf0m&~;sV_kn9N zN5>w%u~YH;d6Uhj$WDO{#sZ57?q7A&c$*QY8pjX7)g7AW$VM`T)nI8Y3gv7%D9+;aOq?XKx>=mMsHDW;b!m5e z7TC{=6WmU60@F)-p%N9498tt9T2&Xdfg&1tp{Nga=(W4_@)UG9T-hvZsZe7%!(T#b zP8bBqM%nTc)W*^gl$k5Dyv0O+!xhhhKU3CVoj=^*Gyg^NfIn!CSyL+<*q7Ar@gWUOfK-l6WBN9#hvw_oee#3QoD;rHS`*345@xzrgf zL=JxKrl#{ZfBj&aU~^dGLD4C)4v#(1chg|^M3;}CNLLgW0|A5Vkt2!H36jX}dQgj3 z9s*p;lih!ofNg7j0J}de!uw$^wV$Tiv}t zPJeqgD?{9t>j!0tpRKy(oBKZTyfKq)Z`wucO+2WE|{2f)0+9ij?)6bO! z=?8bQk_%BSv`UDtKxxsg?TH|1dh>-$82(@_v-lk|ypo}vP&A&a*(SDB$x$8oRYDXF ztoi@MeF>C*8`YU^-71x~l2ogt(!Ou4)-Ls;UZmbPyWO_i?RLAp@3vxNFa`s$F<=ss zAuuE%B$;{HLmr!t-55GB$w1N}Z^H0iNZ4kQb08rzlgx=T*%$`mmfyWqrEYb50cJ91 zOrqu1(xton-}nFjz28M=o~yu9)rBSSS+AJB6g$Izm+ZB;2%UdL!ahA;Fqvr$p{ET% z9G=QB+jey97|9w*N=ND~rK#&m8%}L#wDlgDI*;d}*S;nC4>nJ_`SwjUy98{5WOnk2*= zTHAPk(d#9LrY-LqF{P`AnqutPPk#4Zm*j))RoBor4d0*#|hYoZdo-EQ@HDNO9 z3TqGbcJJ)<$JZWPc{8jpjhZs)4oh&EUtK6}TaneH*`)-jF%`$J>zVrKMhKTvZ9Rv^ z5_e4AyQkUgcGD)oWez$#VUNFaU9M@vB3Sx=%Nv?wgH0Yk1WVdsVXd6O6bw2R!BUf7 zeE@M`FSM0ESI~0vB3fD%v;=QKwAA}HMjT0qfsd;Y212WuyDV5r=P~HSa~1haXhL%z z7%PdN3*3EL-Y4z1H2?R|{Zpg0z0g?~ya|sl?V;~uEY&Z9YCHJeGOTo41-D%^5-T)+ z25FA7_QG8YSh)*g<^2*?-n0}e5epkU2U!>|Ha!j6utuy1VGwet#;Ii_jFAaz9cDfb zFOtCWY{g%M==o$ty6#f$RnJ*3N4)&%D+1^J{kNW}v{%Lp3`)poDUH5iVBcWRHLH`6 z)wfJ^Ook=k>_ALa;Hs{`Q2Nl<54E0u-TS3OMb0J~jjWyJ9IV#nwt2eu4tH)Tc??T| zlf(<#J_c)O2kZ-{VGX&K;-(qm=AIeMOmYY}#mnNR$Vs>7yW-~Sbl=7;`Fsqal zY9;wvNxoK+LvaljtjsC#jUg1(pz)Pkhd{b^PP(@IroKdym`cw=e6|TuDRvW;7WXKh zz3^ys78lEQgx+ou$)`v!2*+Ebb6U`f53>ubY>_Th3eklvPvJcncJZYd_#o2Gr?jNR z^vsN)yfezXtl0F7v~g88np>}bNB8JX!<%;39=f~s(A~;IchBNIWmb=7nClB2WCD_i zz9l3=Su^yKyhx=^=Rta7>J&@R6m%@E{DV{j-p-bgs7Buhr5d%A?4?}esrJKPKd|$E z9V|vi4)(QAL$0wy;u?);0`I_~k;rSVmbHb-A;>n`cU2nveS3OKTRJ>{r|!7*cCcdn z_NipUnj2RtY-9CwQ|}FvkZl|+nidU$o(!r{-ErV zE$en%>V7w0-Tk(}htwLi^B*;tjcQWQ8GqC}nG>vuo@8#k6xX4DF0K8DfzcIo8}<)M3m*uxU)P-Y-+NWWdFJ5{Wm z3+Y2`p6b=PgBzE~!zqsbYmMNspcSIkMo3mk#InI%YQYnC`;%_tU&G;~u6_ZpJ^=QE zHlP1zwFJw5&q&54a!%1|!dFu!y}S_W1`T7w$L8Na3}V~Ge zQDzV=vw$fZ8aw|9c8bQGVqJf_0(p=wU@G3uf2v5Akm8blqzpE2S>6!7)Zs>BQrW1C z5c{tC+(de!Ct*~pBzvKcw2tMvx0XGBai={R@Gw??!EOh?MxrMwok3SUY_!^4-1NOW z3SeUWsp%BO3VMpQ^NiJ`VJ)n;WmRJ96hRWA2Yl1%&`NF%udDtV5CFtiAsMjL#ditQ zQU=kbFo+JsAfVS(m=SkUdoRNv&@sp$(80?wi2PCpVM5{;)$3IzOTgxfuq61}{M#(c zG5EcID8)hiBj>bP4Hq7zP|U=@P{h7)Fo@zt$mbrp_#0v$w3&!Oj9}NxK6e_&C7&Cw z^SN7|#?8>@?#3+;Gh4bl3hAhtjK6H#J@B&JuCk8TWgKszcD614a>cfr9C*3bsLRy5 zuHt>mbMERPQIS8}*R=P6?c49$p7xZtbV2xkvn8fKzGdo;^>H!3wyg}C_xY_mv%_ht zkY3fceZAM#Jk{O3E(6)^L`Tntf*DX<`-h{UzOC)avB9#()>YJw!511d8fA}YIQai(1^GjR%atb$0W9@=8bcI zPr6y?h*Ladgykm!yJGBH3f`b-^_(>5QNWrn2hbU1eFdJQX5U&sn7Y9Af-j!CqA%V^ z>L~U6QzV6i&METsH(9emg{$>ipe0S5ofF-h`foMxXcuRrH5%H+aW+PS|NCt^KzppL z1^TI9AyfpKsI0kg9USZzFJimkugb%J{-Gv*s6(sww?jNhLOf9uFY1ubRD`{}a%qGS z)O@C|N|rDAwkrPqEMF2@zW9H^^2uIPg{M#Ic%N1D@S19gV$k{rof_Pt=G=`QU&?Jd zX*5@7@#=$MBWUpXUew6@^=V!tX{RW-M2i96PO-8nnBV8cN9JEf9yzpmiF%uV*9L7~ zL%t!8Y+j3O^NNzqOLo2qeV^n`@vZl=dC8(|^ZcD}R-{Wv@vZl5^DY-w4tm{Qn#&6+k2y%@7nDA@9=TT=ahX`4z#SiE2snmuR`SqG=9{szb6W7nWjuo?D;uBGwD zvJ!9XRN{?=8T)0eo?W(j_N!XGx_Dz3Y*Vs&9chGS&mUpb;H&e$LtBEfCj2u-R=;5Q z9;OT$#qjBQ2Pd080$U9&-%8lC16T&@s#(4Ua1rCMAdZ#wPNT=k!T+>>*{5*=TE2Fi zD6`sZdvmHGs3syWTX&aUA>PCC)y}p?UanYo6Qx%w#4^jLzO3O>Up?x$^0~j=@E2RN zp3Y63O=AT|eEpr%Q@5^(?Eg^b=91_8Q=2z!G$%)zCMLX&mWj5)ij27b(1HEHeD7y` z-8*~Is|Pw9Vr$om#B7XRw6nc;6#TNZa%I__OU13>?NxK2HJi3uQ`t8E z$m+3L7LK$+_Mekm)`zoYot32wlyeQa4oz8kLE1qAMU@OxSt^v~t^8S%Zw8&J|5FrU za9cSk`3A8UAR)6_?hSguo!HGa-oJ5?_uu*?#kRD{)ITXv|FwvJ`bW>G$Lp#8^2p(n z@HBWn9*?gq`u!1~mUWp;R@TIX zg7(7nO?{oW-22#n;a7B=qPIvKgSAu_Pt0H92~5?+6DcX4_y@%3*IMA$Gvvevi6>HW zJn;{bORyHj6REQmc#HoIui#kg;fD`*U9-NG)slqKMCHd0_Se#H$7=D!LksD*ZNoXE z;uY|P^@qAP-nE#11N&EhY)_lu_L_`>+Y)eimS^8+jlVp9*^IJp{+JI<6*gKqn)3x6 zsqrHN9s5?dQaG6%m$Ps0s#K&PVdL&aY&6!e@lP`rDV7K;TEV%5G#$);c&!ZgNM(`jw8TC|OuWhyr zd}_vJ9U-L`v)KX%KV7Z%l4Bdh>=HYe!<)VMrIfMg2u8g+4%GU5jtFra z)>9o$u2XQbfN&D>!NiPxHMQ^n21ZM$jVQ#Z-L+YJ}Uchr#ht#NF%el>e zw1qL5g8@;3)SK@)eXRtkl1Ff!xDR0}7?4Nt6s%|`s^}?@(ZZ_Cpece zm-PsAM@1g2EF&GIFgzuUM0*x+Sj*Hji=`_a=t_q&93V(1&PlQ{Xm5hYQDoetbbFIB zl1!+%dDwWSHnf#PTUnADX#>)*P=<$p93lSzP%nwiNP0mpEyThl$1(0#-K^J%+olFMKG0YNma8Ke~5;?N)n@jhgGU{>gps# z(Ikp1D!TD3i*|#8?~5aU*}p%3FO?yFj8de6EcH77uLj0QqO}CzMpur!LsVAQlKdnkJ%OJrSts3BaaAzaen zcA>%TdJ4~B7`%&|=z8Xyv;zx2i#8QNdk^tqlf-`-i+}X`0ZOYbqfMJ+-V_JSE6V7c z+w_t=P~~Po?XZxcZ7j1DfANnM%n!$@bhk_Blq5y|UX1F!^R!L$2g%cdFYf*Fp(1M& zO$OG^u_#gNvU_{?EF@}w7patzsFgCc?-HjaCiQ#S2D8wn>RBIH!7?%@_@!d>BznOr zVs-HSKcpUhL=wYeW@}e5j4Z|`UBxI@Nrx$AAg zQWCVd5WMQLlA66)vQKGLL|{?@FQayT#u$@8ujEMpuz!~YYv}q zFb@g!r^`dS4Z zCi35{z!SvU&eWu|7Nb7U6U*O%KuZ3(YdrBf4XuAyx( zTH4a-F(%g!?FXX<`W}~CWw5Y}g=eYz)1&1kG1V?u1T}4CEDp|QHhEh{6M?>UdwX|D z8aZ7TWB3Mt_zOpC8OH?pQQ6o(6zp#a_V)){2$O9V{Gn{eOv4Rji+!-+^bg%{xN*0e zOh4Oo%<>)bmfDoeP3PmSm&rIfhTRRPE0~*c;}!y5)|Gy?(shiqe5V30tyc@G+k0w} zPc$v36HRrwqXjO3_K_s;4e?di^`}-edr_=FZ%})GvpumDYsAc8dQhuJ?yz3dw|26< zBUsA#AbrOP($Ls881CHE;Tl~T?aMpOEtBnD1IubC+R9m+oWQm>yHZ|8ZGwzaFsQrR zl1;po7hOiqs54jvlQTaMAKb~{gey~qtRZwUji1ANmqpjX!?g&)Z78}fCZAPM^hW*7 zSBtKHi%jy_O5Lf;0QddPNg{IiIfL=2mXQX5y80+uU4)YwHE_X}4ceSho8c&Bs{S+n z?ggve`PteU;?Jt!@1t#IK@Xl(YhalM8mFiie7<^0TImFP%{X3ySUX*tk#w?_PXsTP zY0TvRHk!NpYT^d**~KohY`HvN^nV-8*-bQmy;@1!K#I@ScZqoVgUvZo6cO<8#MeSG@8MXKkj}sa=Eorn$8N(R<036>QtPyL+PRMcdFnAPWFfVwt zthZAxI|KjICY}aoFbp>2nX*$G&k|UFfC=Eg4S>KS=3{ixQ^YS8LGcj+wdJP6=>J!o zxeG5g2Og=Ij}gU3D#R`I(`iDr2zt}90J_CeA3$FcKgS>V!Y8^9j6^p~hML2Izjse> z?~amt#n8G<4|SHxowP3-I%4A^9nnz1&kU_xF$4~L2nlHo?1-_kREw{1q~NxHXZjjS z+k&xepeNawj#&a;H`7x6mMs$S^Sn10vF0-=)TUdjr@;>V<=V<8v@Ywov@Yvbv@Q!g zJY)7ycVMNt#f4dCQGr;RlUD#E4XWCL=cNm?wzd`9TU3A&&9s@;;ekSc<$`%1&>F2Q zXEPA^lSkjZ?e;$%Lu?mUk*dyr<0o(L?Y-mVi4qPm3UV^|bd&JurlqIL*Vbhnm)2#$ z=0xkVZk?g+din9t!YpZh=UG%DKVN8ZWmdkq2^rG*m08nVpx`HTw8dl*p*z^x+J@r> zk!LL?HSiaL{C9e9KY6?pJ{gY4_)YKJaof8`k+?K8qj>4W$vfclWiGyd3vS2ngLvLj z!}HT+y#(kNoF~YWOVAv;v=GiORHOq}UG=ko<+p2DhZ%`oA}m({Xr`W4>5OK^Y@z;hN*J@i3P-EP!ZcNl221dpOlg|cpA zQ_^3E*dY%i3DOiPbOl=0wm8_>Q1cexG8qd_8$@-UHgmM@ra(T~Xp3YS9sv_82#mlP z9NFHOuhg?LF(#pU;^Oac2L9I7*k9IAeWq+2Tp1iJ1_uX&MFJ^*oxEK3VunH?#-u^| zp&m~R#J=I7X~E+mdro)+AUsUohN?hDofLEaF#KOF+PiF45xh%J`k{&^_Kk$S1#BKc z&p+5ObHmi64KqLCreS7gW@g+la~h_G8*Z4Xp@x~68J;lb^8WRH_vxfNoiti$?HR8< z@~n1e?4PC1Pzx^|VAj7oDlleCl(kBY{<5^(V-Q3BGR!vBvzGm)Bp_1m%2QdF*FhE! zp42IPqB zf-*Q*I7yK_n=p?0rumA7DIjS=OH^UkMW$dYbIfBJJ;eVd$FzKWOQ=k%e`f5Aa^G~9 zw&-%kIJ>CGdyQZ-q9kBdYypAKGG~>| zp(EpQWjL~_P&+p~-TrBS<^zu1H%y-8EVK26X@3ESpQk|49-C~t9HqYJ(89s=T1)Gb zTMo7^% zF1{UAQ&s*Kmyp`K*4QfuK<&wiYh|O!#E!J`ZWMeR^lXX@ven2u^yUqq6*@nps@$ARHokO8lq6&qhIt`oxf1y%6&O{?pCVr=G34O#n~hSkEDgBV*`l;B z?`QBPx8{+6oC+kuqMeOYgCa+yB{M0SI9H-IT}y zZf*viuxfrDulncWo!7y-XEaXYdU;zn`~7(t4a!TSl2+x7cy@|762WHAe75w{tVN&8 z2Sr(rdp7`2x+C5zK(*0c(Ji_43F*7K1L-c}Y_`^$^MpDoU~Dw}CPb=8;0Xbc<&KE` zbl3B2qP=L?$uQkW?P3zFs-b@+(Q2UsHeB{GP2%YXD0M!|Xs#Y>}vT}GTpC{kzo$@Apd8S)_$#@nmo-q3-` z2IL4c%Pp`W{!o-cHx&Evdev9xVfKrioS%Ht&ZIyA#9k2Ktx<|<2Bx&R_OCMS2+w$? zyANf4j>|0#t|%LeZg8~ejFrX*u$)jsv7Ec&v#Zf%t~?GgtO)8`-onZFK|FmT7$78A z-M9zyx{8SvaA_#4o?<;jJzV_L-?TbQN_%;Q`I6WbxbZIb`1T&YkTCCmhkx|E_JH)j zRCF-`NNto{z6*o?ZFFC3sEz|9f{bey-qZKDm(MIm&(3(;7{ePu$m>C_Bb=FVq(Nb) z2EEbaoaR~m@?(n!vkSBY;RpIWanq+_D>^X5JSB}2sszMb)yMbZ`{>e8GKmJ+Dh`u>RIW7y3t3V z;zlH7B)dgq&3cOlSEU2eRjSwtMeC7hTch^y;6&nglzSR`7v!X7K7N!WoFAfpD8`sX z(b(9%b_b`}t9xG@N7m8+%86$XDuDII^MLj?e)Y0}PW`V+seJR`g7IgU5m&GFpX;u{ zn5=BIB-r_Iv(jN-q?35x6gCw*9GNWOEF4ij$Tf}7I)Fb&Zu#YR*y3?WtI|Oo6OF3F z5clo2j+1^u!zj6gY-ZM^|c!Fg+v(tLmF8^XqYmGQ~f#YM_(dt+=uKC~*@PbI)vdK<46VDdVEw}5% zw}~M+g%r`d-7p1>!Ky$=9L>rjAW*ZI(_)@Gk28Urt-C(65e;{ zZZx)UR=jvzAY6~s`+cSNBo#2XymX0JO99{M*!%a$9kP9kGuF+ z`+4VW`;j|APd*`a)JV_}vs)1N)ITdC!L5)BWAsT^(1r4a^#ju{gkd+ehQb8I*08c3 zQDu-}wYQE1b3zL8I}^s((cM6>kRVyIwE1yx=A?>~-e_h3#v zvsdr6R@<0)OD=05F{jXfH*u^RlW-0>p|#e z%UW0PEv0X5Jz)UxFLIty5_kV+EkmPUV^cgvjp=0Pc3~rg#sR zWOEIR=<|M@Gwam+Ce<6L8zVj;cit~F?>O&df=BmBXY4fp(B!w7q&UJ_b=$F9w2*vZ zMU!w65x2g}TDdF*v+bp7T48;@%Q?)2PYYZ9hMo}+BA%?1}y(e@ghal)qwFWdTEGC?+8t0$5uP(YF4w}?b##5vD zZc=kF@LzyyH2#q8))|C`o?>iqZDXdQta%ur_z~D0qQUCn3ubo<{&$ zH7+JVnhbMLlo>`BRyMbpJUnYHzokdYXkrA{_N@u%7SkRaz|@C-UZkOnn|P1fFrm)y zrOSdi>R8k!OS$JaB~pVruO>}S8m5y3qP4@JG|*CbwHt-aZeOsl+p=Y_2|F41O)&tJ zuPhL*oEcgD`aM!D%{Tu_Jx-pPC1iorCh^2!E<1!<+l!l~qE#yfN$V`Ik%i0cZlfNt z?X3H)JVADhp1d;=$?V@;T#2S*PY8FyuETw9E^95w01 zAqTVAMu&E_vAWqO)wLu_9bN@uEqk|Hm|Q6wA!i@J(FH>|KTD zBZ@@#&xlP!hP!O0AQzK%E5k~txOQFr?XKM0bKqfSYx>o#ii|V~ZN?z4f?~o}qNr6r zlMrKx+6(*hq-ImzNQjHMU;XeSIAjEOf-Nn2sdyEJ0_mjM+D*qp^t>K8#h)p>(yWt< zouD5->r#ALovR$Vrq^^^a#$zo&#`5yZYv&Tw@rbLVA6VN9{*ZfRUGDuJDgjX{`2_{ z-`X9NoSRpzLsHY18VHKJTqN23B*&fh_K+nr%cr4dMTetu?xm~grRx&lGSlYd#zt4N zXLM<%e_R=ngE5|KN~aYNQ7M@KZSy{=@;;EurIJ@3&y`bp@#{6e^*mmq*pFubJy|0uSAjg)DccjT?g%j zWcphm+agymKEUaFcsHCrx@gOn$U38%;k&28CcV##X*N}(%ipg?aWb86F zvMG~J=c|ibe@0P*r1#k{VWJ!JTGes;adP=dwO?6b@h%+c^LQ;%%A+Bm=ht&}Q3V1- z9r`orfb|!TlR*+c}@H`I@yC_r)f4 z{?_BTa=l!uJ-U&u_rsE#=z% zl?FOP_gQ`l8{6|`?-T8lT+3#NJBJ;wMk>Nwz|QAxd2WHE^Uh%=u^7W}j4iWkeR|!g zc@BC@EzjB5a>etH#)`5{mj&cpBY(2sjrV-3Q(t$2@m+M)#aN zfh3%Hn{w+C>n3Zo(!8I8*DUQrfHxoPkc*NtZi5%v$BNC@S6jyf%hxElq`&~5NS)tw2yXyO@-t??~YFoz64tQA@ z^VipqENh_IR)lfR3lpB?#oSK*54k=3LEAv?<%@&f3yp!^OW4PpUO>UIOe3M$Lv`T_ zl6xkceN_tH5d+!%zhCZZ!}RVZM@Rs#C1ED-LsPVl)4WvvoBvW9^WKR!6?`B;(V8ov zZ|{(?`By6nTeyX~6?gw1ZB)17qy3k=_Is}S!$VR7uA8aQYTS(1MZL9O+`ENlow@d3 z`8Ls){EgP#zvhZr)T_)|U_tf1_oF!w5rv z#ruzda%1=@nE%m*^GX847k*0Ao9QTk{0TijGvMngNq-iqV?!7^@zeL4gCau_03r!hl zAHH0ZaIrk#9^uOV7n^V^OB{57F+Tu*z!#Y1`{8MR2I$Wd)cIY|qg!`;CIXR%kk@&^ ziqzr;|6M7@UwvZ9Tbtd{z3^a|rbvZv#qubo*f0etn|_c@j8r;--q>?k*tWw08o&#? zDB(`<|GQKdCF%kI@12Q{wJ7c{45sq`FpZ+T9YRNd3a)dM971_TfZzBq}=7q`b$zcsVd?pN)+hk7J##RFk{ zRHn3hvEB6k-3|AViTwyQ43Q&(A~;FdFY(axpVlE7y(=RyxzaD;izAj3+=Q?R2i|~` zPm~jgXqyZQKb$g8khA~nI!P!>d_$=S_vQE(R|L-|MYs;lSs{BI*GX*=V*h`L0KA@8 z)NiOsS}$na4%JzRaGp;adz{CgKJQfKqkd0nrak^tA6f2Gt^0pi{}J=)Gsf8m>q7{x z>!*x92}QVH|Iy_1|Il(Njz4|K{T(DAJquxh%b$<>;^$s^P7Y3mj4Eaf^EUB28QEt` zf48f)c@5IiE|vyv1ZS6@>RDii=ejByVk}=NkLS8d8pi4u|L9t4OR$_xE~~9|?s^bb zvaOXjoYgO~=QY&T#_WsaEbV4z=ROcxe!D*9*U~1R$zrmyB~EvWv$9Qha(*vsxV1D! zHp#V~SstkO!(zzg6}Qf`oIeF-mT`vDR|*>{m5iO*V-SITHw#-$?@OLdkwL%<+`lHjGii~xc@w`N5iv9=OaHtdp7!3@chy&M%XKMhYID)~$;;AKC$|6JaDM@3+Zc}1&0>#p`$XX7<+dnp@7!!Ty4a;9%sQ9F;G5kCF8hA z52@h5&Ca?AGDW&Gi!RyQc-ZdJoXS5i@g;h<28<(d_*Wm0WgVv*%6RJ(U6ok8KJ`!u z%qz+MCcm*jwhkQlqQR^C-$(~))nAiXpp3L@KxK;>L&ueML&Wvj!9L!b9B*&CjOOrS zzq3IlC`-hZ&nGwTq&4fp{TiO@_Dk{a+9<^-R;g&!X2Cw^V#i;lUo3&$dkjXROt>~!qcaQb=vgnjSZPXN0;{B?U&3e8ytmrhY+3CPL{njPkI z%{`rVA(n{68CEr44FlWFkH3%lS&yAIzq9k&5wkif2~^jLF1v=5X=3}0(<38&Uy?TP zwGnL}kyDdPC~l&#xUchT)eth$dzzw~SD-o|cVSy9PjyDeFBJRsk}X$2Ht*@*Qm!ho zN@eEyRb6k*@~LIo%JlEh5+D~XcZwuudx2Bl9&i0+0ES()@L~p{s$71BRE5dzY&Gv} z$ZlPcZ&YEdD(G5b^lBC#$=dz*6GG1PO!}^Zha7LflZu0*Z13`nxNff1>R*$rQsi0P z`nZ$b-CLK|j9W_?{`Tqi_Tt%O!0N1@|2T<)bO%>f>GG(focpDt0g%-vJ)Y5>%9$|C z;XWul*j0foE!m!JPbsnd&aBw-+a4*RgEh_P+5ud*F!&t46D^~9#!dMVa)|aqP*ySP z7Q7JED%kSCy+3t_GZ%+Dx2*>_Xb5=;3kKU%@j;MLXO7oZw{}v40&( z<9$GGdt2-lHM{biJhN->$R$=D%Jl6ssVf5MFpMOJ{f}H8d4##&_EdUjG>J<0OF0e* zsyUA|RAyByElxiyFUXI5%4r>}Yi4y_09CZya^xWo#`8_ zl;rdKh;Wp)+W<& z+bwvamb9F=D+>Qxj>ib)**2=j&2_BvQD^V)*31II(~nl`hEMcF@yHe3QBd$hCe4oc2zk@0H)0XtE!?` z6UK{fvJU-gM#Bk`XYu^CvjxXM!xfv{?G$vy;G@|3PMO4(v!hxR`1X?Gys{95r~q?4 z!_x%o8PJPb=kckW9f;r^o|=hto~qi{RftiKYn#0wv#K}G&#**#O8(Y6q&er%Ct_yp zI1l|^-cW9OsoVP|@<#55-E@-Vsb-m;;usTbzEwwrKL<`fwC!IIi?-f>Fdfw#Ys}$R z*=ijwN@PP%h+?lg1}WycE@QKZlXvlGM5^L1eBh6nCza`QcXEuR_Jj&2lLF~p;)H>2KTKNA0#R? z08S|!`CgJb_H$-Wv#sG}sgANDdSgTX%&+L@_rq>=Esmc@DB9n{bMeXqJ?XaZgFe|l zhB|qIP1WhF`Nw|=?p`3%?Y$Xvlez@+`{^er?cdVM=2V?KNLV_Bt@h|Ol~Y?cw0%81 zS0;e8)0YOiD`&Z%UK9Ro-@1EdMb3~O0%(!EpSM~b5KRLfoLuv!cQ0XEljl%#XD(Kw z*E!zoa%*|E5hFkhYdP`TviCDbXtd>g#CmZvTdMWpcst?>6uWWI*><9ZD+lnc$>9@w zsI*&lO|^~1qNUfMwa$3&7EGr$Yk{V$VPlmWu0Ls0MvaQ{u2!6d;Wxa`Bg*#KOdO<@Ne0@jW$uPRBZ@gn%60Mr%{{C)z*IWr=Jpo* z_S-q#-%Els!s8eaG1)o#j#AH$gzw!a0S6{Hwve$BFdDgkTo*T_Z7f*D~{kKL&GmU|0wycYNgH?Rw*s zj*#1e__7$ZU9p8u((V;NhmK`|GSCLZls*gxh`ZkCFxEe8D1>U9blw1g+=UAV*{U32 z2JD|OJZS<`;lWUgFgkWZ%F#z|-cU(&k-iAas$o$G;7gvPI~R|?M!>L@&~Ub2jh4u; zRw+_4syKYhlkZSAISayL2F_|{zQBZ;eD~QEDDtJJielRaL2Uik8BG*(2R)J=)Zeiq zuAUiNy$P$Y$9>`Yk*t9IRZtQ&%6uX&Az`Zb6(@}pw`IZTu+`@ztnGfNb?N{@ccJCq z(d7z9$VM|*($GjXNLivWigcsYcIq$0i>E&M)Tryfv3PjhamdNUsdwGIh<=bVc429! zFr6ygE63p`58;wf)u?7PWIv@wfxhBigdX!{xe;B|<@3tgg=7G$B6krZdT1_X12~<5 z$4Q779vBFrAx2F1E|JxCj1pfUf8^Qe{c%{sz=-1d#>0{9zlDj8*3yr2hUPI#d>dU_ zhD1U(Ct9GIk#u-+cb^qfpaGlk3vH-*DPSay|EKfPu3IP;r1TNqw!5dt7K1Xy`Qhb# z>kLV=0H8sS@5%<;Ta0L^M!M0=GUUJ!pG(p$B#5z7{|)<#o&=}-)8{Iy@{>_VWtB<> zVVTx^Du*g9$C#9{a&K!!O2fxov<)1$ z*dbDTp##Ok`({OXlBJp}8tTdsof%J8t@Du?PgbVb=jHZ5w{r(99fq7X!DkEwXI14T z`mD-I8(RICnOap2R}Kb3q~x-U6tAs1M7fcl1GU8|8CUbIwUk9Q4W%`CEtp$$n~j~t zon;7$vkEPCkw6ngbuPec zHJ&vx!(bR;^8^}_63gWaB|JwmQvLVuN$>ru%5nHlFm7$ZEIiLGu@l4F;GF{=zh!n7 zJ->4uVDMl!9Q-sm?)nh|V${ABb-?r1e$DI``ob8oQ8sz)!T+Ws#OB{Z{eqbhhM*m8 zsS#OOhMc4%Z|jm>SYT&K5K>4KDRq6wrbMz9LJNpm6~Yy9J_Xz$cxhctS5pYS3Pny5 zDluipH%d}krm_n!Gw4#INJSNOOeas@7qZd-lyj28(_WSu$0=fk@$9ssdmPi|yJ|;_ zok z>hxU&&&_;!<%t_}90q=zGW);V-jIpZFWuTnR%8gddssfjerzVSbvvSg){$a2U9Od|CFV`0w2JfGr(fP(W|^L>nnDi9(SQ zY(0)-AU%lK1%G3HP-B2G6)3ca1u?d*2RyR*aIyIS0-*-&TyH*Lg5EHQK5Vo9$8}`# z=(a}xD7O}Jb+YLqJgEQ#gO;0VaIvX@ z#@L|7!2fg!*s*hHMZ&Gtk8aY&ixCZWwZF<0g)}dn2{CDEI z9X}HRNU_xcJI`rknKuZQ0w5g!9YhBmq*&t3L%6}p&1OQP3)sQuZm{>}!#B_y5z+gn zSbK?r$qjabw#BpfHB_f3w4EoP>#|G_4(#Q{Ebn(Z{sUpXk zZZ0Cn+Wk3(8r0ovMk6BqeuBXKf)DEa6k8p*)utq4o*3%lIsNBc%2GuABLHpl5NePb zv<@2!e0Wv%<^zR;4>VCOKRBXtGgmf{&*kF}j(#%(dchqdiX07Yp8g$;78Ac4coU1-x zs`KW`wOJY(#JS@XU}k1!JnxB!kcWkXjfMq=EC{&l@$oi=iY-)h@bS2gDGJEG{D5xW zpbs@bk3&P25h>6f^Qez*tXV$uT8e|}cLdSp&foyCcGB`b5_`Bk(q*!&Z zaI6&T(XDY}!p#7d8gb|rB56^P4=urVxEKm7D`E08)ID7-eLBkX-5Fa{&Yf>0i1OhZ zvjOJ;bl2NaPPS%(hBvuSZ<{S?cEY7s3_;UQ2_H7JHM$O$+!za_l_7zBIRMFfL$ zIuuTerD9W0Xnd6Cv(l8ZF{?P`CHz$8G8LG@}`QCX~g4WI^kU+gPp6q@jXdIf+r5My`^|?a#Q~x}(uB zw3clm2i-i0_2BTbdze$06QK=Nv^|!Q>YP=BgxZQ!JBRp8EUOkENl!wis@kH46bb>8UbJFjKJ>A-%|Yq0ln5`beHhFVg@POgU%$x8dxE(o`j{n@#qqTbYk7>=5N{ z=47>OqK)N^AUy;Ut#;o^i02C_gF$9t9R;)x4ov2dL9F>mB72D3PDjUpQBxNv+CSUtTt7#Tp5FOt!&iZfYbfn#R%^E zO{GWSno(zed#_EM1gAEAD;g&}VfcCQng7~HJ(KGpZpmH16qGB^iG{g2rl;z8rK9?Y zdUpGnb&!2UHgPQ0Zv7V+@m&nQ zpxt;66Jfk5gto#u!Xy{DE=c4EY-ZV%QzMvfDW9|u?;YuCpgm9)m94w&Fs=Q~Tbdo2 z#rfr~9#gW@csn#;N}cJUvh5CVQc8XIN2O_L-3G`2-_EKkC}Mrw11i_2KBY}(#REj_ zKc8!rq=klADN_TNain|f5>DrlXwYp-G%^|r4t~^XQ?$K)I~&Zjqd&uoJdexy)`n^- zebHzxeV0}9XnZ}WPDIbQ%fIVeX6JI#eV(xPeD-{HYDLdU!i&cXO&EgG`+-0nhthw_ zIh5lHkoh7`pnwl0G`vrhS-u&Hg;IsyUu+2a{D}FgBp}pVpKF^YqRmejd1XC2Z&={? ze0j;%p=m}lLVNBB{^#dN$ z^ln3}XZGxl=v+0}w zbr-kurrfu69Ss&oOsdnCmj1MHEKMF=wG1-_vLN~+KN z8R{5{TwJQDsdMg4*<5OT&sKr4?Jp1mFb4{nqMmH$#G+zBS@>t0Y1%rY#73b!o*6vq zn=MJU@O=LwjJ8Y(2So;Iz#@e71Jq~c!`tS^JgEx{MGXgGvu+_4sW8OEAyS^er1ozW zxV22A$M-;f`?TABX$nEg9HWm6~V-|)(l8fVNc;^!xu4h8=_y!i)~eiew^R-JU6 z73G?;YYnnGTDid^{v|j)w;T?`9!7iQbzDsCn<60Zdh_X(>NPD^0U_>Ren`ALwr?Px z3)`C9d(`~&PFlF&)ZoJt`>YuwpsI}Go5(qZ`b2b==ko`H*$DxS9P~tf&!!>D!IMp?sdT9N7Ec=G;iGg22ep30y*-MpBFlMwqSZ(rg zHjr5HMQ=dviFGZ^YF)IeIQ5Y13F0*vb=rFQfvEQT6{$Fi_D~NHHOx>C#C6K?v}U4C zT^t%dk@3rR{pz|bfjH)$8Inrf>bQs05+~j*&}&UT&wG|E?zkZ&C=fpszftx|i8abn zsUu-a8gW0i#1J_ye6P%AC`K9*)&IV?moYFfS6^IeSowpPLAC+07Tb7#61jG2Pv!f< zrMUd|&KZy=Z>-l9@Jx6JY#cJb=5$7_0YCjDtFQTSS|J-=;BC>nqJBWlN(?p&rjCE* zWhna5zN#ZaI3$~!@3$<~c1U+4%R1R`BkC2PS9~#r{u-TAu%iXb#!{y~T~r^*Sj>qy z9aA4;S5Q6OW$ef?^`3`&gzfb+r_lV+lc0nvD>dvR-yfgU#3z~s7O)kG{^1jbCZ@uZagc4PXu=M`K4@XN~9h*Cf;gO^qy$;F-Sg?FbCO z;pH0mWPtetiu7QV=fwkyd^Y$o5(jDJuG-kh4u;YM6+zPN)gUlAoDlq7g=7=m5nDRAR z9DloliSw(cXCXtmjBP9fl{q(M*W-NBBti+I`=aVDavm&y8Pjc8sGxW)0Qw zY!Q`}1TgZ60K@Mn4shYWGkNPn5{uS^_?DM>TNSsJ)P|vdsU<}3B^TrTYV@5GBcUW5 zJwf)nND4YS*_YZ-Q4{@M^0x4B_;B>zPA2kNta#rIq4~>=s?YIu9v69?_qp#c2ie>Q z&--$>H!8laC+ph$*+Z463@hwS-}A-uDOfa&f`LBj2pC?U*}_Uy6(h?CN6d1mimxB( zmHWgzKdCJnlGDD`l=tOeK1&jjJJ$C}Vwy{3Q8}_0(a`B`6GUWwvrBE(HVWk`lZ?lVrx$kNpJf>}T@AVJSi6WHew!9g*fy!hQnxo`Sy9&<(dl%7S?h$(^w zGYnXCe|Z*{B4Tok>`TY|*g5~=C>a)O%lj}xQI*gvx$PFwMqwtwml58%CCC8I?>oV~ zSfu_fQY}KpqGD9o*N%xKO;1_#Q@6%I0R9zelo|Knug~Ls4#udme5lSk&sAi*Wgxvn zMz?Ty62n7I= zp!aW`j5UpYT;JvsPEyM@`{_jLI=YfcCFqBpwd-F8sT}baRl+6czN=KoaB#5A(p#i(Dvy?$WwZeOe3l{FA(h8!gx2lJc4xP#mreKgH)yvLV5VErs}0Q1 z@Xtk}3@qw}5e($QS-9yCpNP<~B$kS;_{ zO-oHl&G=hQ;fF%zuialgLZw2^LDPYa(5BGYXv4@jJ&HXnJ&rvMfmngS3N#fQ8mb&h z4q+BfI|b_P1{~G<>{%aLN5!`?vjY>$ALcqyI&tN01 zA-4GVXVd|M1e*kl1Xm9Uu*UKx>Ck-q=2AG4b5`r#e44#vGd6eL^Ou&%A#rScZqD+6 z`^*Pe2OT^j$vQ5Fl=DpJHwTQ^?eO@8kK`QJ>h5^*bdA`Z)QY#Ax|qM`@*mkSRdJs! zRx$E&XU0r{8pFzc+v;h|wl^y7@NNVaS@id3uW8<(YyEH@v$)U%A_2Smn|Jq~cp6eZd- zuHdX`Tympy%!5il8#a?d7GvCaP%@xeF?MYDW=B>%dF$`T3@z6CEe+w?fTggPXA!n- z3q311$^lAnQW_GFgjRG`(i}6`dv-(U$Hrbz%=*>bu+12${5ejQPaLe&ul@N#)kg^& zLtm9YFOlrfZ?&pAOkGvgoU@G+$xC-$qT%a@efy|7jcxBf{$mcl5&2dH?Q7FZ9YU}G?)=Is4vE`BpND|$s&y#ayQY-3g z6e@h`@~*~!&|xktzQ|;I%Fikl+v-0k`mJKV{Z^!)R>exhE|*AQ)~mUi3Z{ru6~uI- z6QB`KV(9F2=Z_)`a9)jpm0k&6)xgFHnpS|=b`(^_r7EQPoxCjJ>-7~|l3+}=Le1jq z?NQ8Z2^UY*gB4DfJT@F{tkYc{Sli;6#LFUybK0yK*g);~8@gvdD$^KqPRhH&Q?Ia2 zEcVFWCXPgFyR{%F0xcim$`X!Tn+ZCVZ9k5KCTEk4Gd0H*+39v_ce3x`__N)lk867@ zn~t|?;aX377`@#&303V}c`{>m9{=Qz*lqH?_3BmK3Cp#)VwX5o;!3QP@9%8!3|pxR zOlyq+5+|>bakOgSqL|25+gY%!Tk}DIZT_~2yEJb@To%a$Ouj< zE`^?2R(d~ivY>nWF`s>jY}}KjIW`<`dBwEnWx=3N{`>?LzUC^$jbrC3g<4IdPwoI+ z)#D+4o0_7IGFYXFQ#UzBw`mCDJxTMpcv~6ZQZ;u~b}Y*r-W#HAr7S;{0fPZ$})OZsOEdRT>|d50-&?J;-6c-z`Ax za&q;J`V^h0Y0T$jVkMQL#QYaZ(Y;ZKVP)9n7vJw_sr*BxOm0i&*>~T^OqpD*nBk2J zQ*8IpG`FLn^}Pz?982GOD-!3-s8Llbu3jdUB30)&RbqTC7@kS`!VX9p^}RAsKY&?A zy>uVvnD^9s&rQG%x1C#Yy2b@6uFQZGji6Lzq9X6wTS6Hh4aah+tQD?jVZzu2osjEq zs9PabiPGVFB~=nhReo7jj=z1yk*X=#g`d+3+l>B-H`Pso7ka zF$cNWXSD~Qvn7t~r_r^G`mPv9l6PCQ5`KG&#+|7*yRs3zt@;CT-U&g$p_ZI|DxN{! zuJV!d?fNeFIq401_obDryFk1a64D!Up*fqzHN6>Ab@z_0vJtyeq75`>ojbCUj^7Q} zuTi)>XQU%7r|hY|iq>_D`1WypHb2w_LSmn^e7#6wq1yw~|+9ni9bm zpLNTUAm^7O3LQ6!l8(UEQy4k#B8R02Id50Xl8)k>5t7sT1+VNoo`r+z>f_oZT{rnu z{ytMQ_hrI-9XG;~4#klad4-LbCHKk3vy6?H2u5BS?bttOe&dfDY1=?nSB!Z!*jU-m z{J9uU-J2y81BJRPBs-jLEF%)D1)S0l4@r=yC#n1+>JCFqojh zGRk=k)qdIpMzu{k5~tX#-W^8F3W$HEPWaRX`%v{UdfwjXGWv`y> zX`x$m4@)wO9R_|r=0J4CC+Y9rcyZoK!VXcvMx^bFgY(oc43&C~eC=otfwZihVk znz&%Xd-a>=Dvjr=ndd5)=gJST{`WTj^VL`O?%q$DVd<*XrWDBT5VeWtU;XCYEP8k8 zH^RA8`+os|K!3kow(O8CcC^6<05z!zga*<;R5c7$WmXmIRa8A)q=N_hWXBZ-_P3sd zWqosl1tq?}CyuHongJvLx|2wf2YT55RT_Gc`lJE$CauXw(2smfK86(1jwHeWl0s78 z3o@FFfg$7)xdcPWb#fhsf05hdHVn6214d8}^}tAKQ42=VAQ}XtX*dmsF*Fy=1!HLe zS^&n;BD4sMrzL1@m_QS0M@XZcXeUUgU1%3rPP@@$3_iVRFIYwU(!Q{o4yVIm4IM>C z!CE?%?t*p9k6v?!m1d{b zO2mtJmRD32RarifAQD)9(Nr{L1w?bvoD~!;LWA?OYC)%-S(NT0{ zMMNjji4_%}h)>uvqPytMiiyv}XY5(gTl8izqMzu;ii;GHf5J+LL1GXqDZUV2uu@{E z7|Na#!^Ln`T8tDU+4Eww7|mkESTUBpAjXUFtc*w%sjRG+Bqp(PVv3l;%8RLDDytx- zi|On|F;mQBabmWZ&0Z37#2i*p%oTIl%i=rn9jhe17vHm2#1G;J7B3cwMXa*;QT)iN zh@Zqy>{XE_f6`c0v0N-?)x=7%l2sS0#cEbVtQBinO|f3AXRnEkVk4_1HjB;db+J`! zWwpgG;urRY_*MMM>WJUOZ|qI6OYCBG#U8PT{X^^%``BCJpg73h7U#q{R!>|M7uh@F zvbfCZi>u-)dskc+f3ODVyzk5S1u}9Ga*N!;D0YwBf5YgZQynz9&UCrXJaV0J8c8F; zOY_tG;G@wr8VptyqnoKW)*FMRH`SYhUvI8A2cfsnTR?!`UT+V9dZL~PL3)y&1i>P& z$O|DNzsQekyr3uuVWO}o4B;YLL_-cyR1}2>QA`wroFYcVK%^)kNwL^Oe? zMKjS1qQwW|11KU|i`Gz7v=MFK8PQg>g<>L6B*L>INhCpx=qx%zagi*Np@irmdO%6h zOZ0+LqOa%+&x!t`Ka>^&#Xxvo3>JeSR(vVGe}osrFfk0uh!J80log}IC@3e!h%r!J zj1%K9UQZAc;6*V}OoTWwSxknP#8=`gs3@k1Y4Ea`A!a}&F-y#XSH#!iYls)$h;N{> zm?!2z6)|7ThgZb{u>h)yg<>I86N|-Ss4kX>B~U{w6U(5cjDN4m_*V;K=PGy|W9J&E ze=XKw^n62Xz-U`XY{F>!rr3hfwyxNQQT88VJ4V^J#14$IZ;PFnGwO-mm^0oHdogF! z7a1Z0-W6xXS!f_GhzrnAToRWcL0l16;5~6oT!TjHei3^&R9eQ`zUW&zX-FF4%gsnL zAlf2r5m3)v&s|{NIBy)r;s1>HVGR7AfA{^*`;_-ZO7F9;;!x7kv+sXC_CFu{5BV6; zTiMsTNPb$HRnh7}ZpZbdR`RbOdO`{eg|RRNX2X0~0xMtxY=^yY7*4}wtn7h!h~?`H z%-6w}==(%+M_(7oNxn}dck*>ZPQ+))k`sO1C3p1okeuZEOmZjR=g1xLxL%SIe|^0r zcl7mqIL6ST9zCiAT#|@F3==)M~N8eD%Nxor{ zJNdc-#nzsP9ew=}lYD~_JN*qsM#zzO@QqZ;j8e*sR?3V~%8XUYj8lq?SBgwficD0B zOj3$WR*FnfihQLMnWhw(t`wP}e-xRi6q%(I`C2J5M=A1+Qe>`D3iB8!!;{HT;!qLlebDYH~5vrH+IrWE;EDY9HC zvO+1cQYo@ZDY9BAvQ{awPARfpDY8K+vQa5APb#uddP=%fWX<1HWV2Fae~VINt5Rf} zQsft<$gfI~9ZHeklp;HoBD<6#dz2!3l_L9;uk2UK98k(+C}j>RWezE2epiYdQHmT@ ziX2ml99N2*P>O7lifosP?3SK#_-`t5N-1($DRM?Ba#ksFPAPIhDRNOMa!Dz2St)Ww zDRNCIa$PC%hf?H*Qskymf8@4O6gDGWBN=42~ zMXpLkZrPrKIh)x1mUku9gCb-*oycmk*I9G+0c*uRWF1&X)`@+>y0Lz&KTBZ)*g!T2 zcfp6*5q6XvW5?MEc9NZ9r`Z{HmYrkg*#&lyU1FEn6?TkB-)&!OZr)tj`VA!nANLhZdpb)FQQ9T5de{ z;pb8)2mxBK7NY5zN8_4T^J#`=YL@2LgchI$YWDRm4ae3UJ88d%YA0{s3*d9;1-+pU?uh!~ zET_N#7zl%4e=vLjL*PqX<-=e&jDV3a3P!^iT=U~#JWPO8mu2Ij)IFb}@N=tH>`k&UnkHp3R!3ftfpj4Hpv4)_gr!Y(O^;eflnKKpWBo`W|gW-=~df6WWwEqs{3Dv;}QRThR|`Yx)swLqDc%X*)WJ z?xuU_e_pze?xzQ620cg*(ckG|dW0UO$LMi-f}W(O=xKU}o@E9-N6#~pUZ5B0C3=}& zp;zfOdY%43Z_u0c7QIdH(7QB~-op??7-fuUOlKa(nV0$48>|j{lhtJnSVPu`z0W>k z?N~3?oAqIR*)TSSjc4=NckFw%fGuV}vMp>Yf7`}>VcXfSYzO;|?PR;yZnlT*W&7BE zc7SEDgX|FdT`R9u(6(#8YCE*ww4K^6ZMU{Z+pF!<_G<^U4DFzHNc&wotR2ygYR9zW z+6nEXc1k;~ozc!}=d|bwT8$zS8O`0Knje}mWIZ}PhQAN(!;Hm}Fu;r02uya8{> z6Zm_)5r3aI=1uU?3?Cohqa|;}Kjf|XN4yRHn78HaczfP~C-ROwiFe|i`6s*!KDzR5 zJeharJ@{w5C;y!H;=Oqv-k0~|{do!>f4~RwL3}X(f)C+e@}YbfAI?Yck$e;%&BySu zd>kLoC-780kx$~2`4s*YpUS`HbNDxWF8`L#BdYKf}-RbNoENz%TMk{4&46Z}MCGHowE~ z@=Siu3tqyf@#%a9pUG$O+58H>%CGV3{12nE@rlvJ_|)iXbTg8T?nV#eGoz>RxzWq$ zZS*leHM^SK%w)5>*~9$I>}h^(fA%u_n0?KDW`8rq9AFMK2bqJ-FU%q4SaX~?-ke~j zniI`Q=45k<`IR}|l>Yx5g(uKBGw&-~7uZ+>qsFn=(AHq*`J<_dGA zxyoE^t}!>58_mt;7IUk)&HTmOZvJZSFn=?5n!C;4%_HV9^MrZIJY!xke=nI=%&X=# z^Sb$mdBePE-ZF2Scg#%lo&^@MsKqSJ(k+j5#5!snvyNLQtdrI$>$G*oI%}P?&RZ9( zi`FIUvUSC}YF)FgTYp$Ltee&?>$Y{rx@%=x_x#`|e(Gm_&9D1Ce(v}BeSX7l`YpfT zFZ==iK!1=w*dO8#^@sVxfBiZ95&oS1NPjMWZhszsl>aGzUVlD+et!XfL4P5CVgES) zc>e@{s(+$?l7F&)ivKJBRR1*pbpH(hO!+q&^4h+<#@?Myq!>ZvmGjB0I_CG^*lU>I zcd`2HUD(4C*n6-~X43<#Eo%!InDIV?gKQ`p3P;#zHX4q~%zjMff34#(Z=H~N>!i$E zr`STa2u{lkaaJpa*~(erOA1Dz5R;O*BD2s zG0pgy<}lV9H)tt&)xEL2-frJ5d0F0}k{^meEv$gXVg^XV=!_p>_691}%V%@sGy6N5 zKnRE2=32COnd=buf0*kL_nDg>9J>pjEe9{w6A=)F6+qFfZ;#A9_Uq<8#Es?w#LebG z#I5Ez`<)`pKBEY?&nR-(XO!oAXD z6nr>qC2;P_&@w=1d0HMQtwO5+qt$3N(CF**bSN>MLZwXXVdNf zr5x+bu>XJO*Z(^i*3O|%nm7NOIWw3y<;{5u{wZc4J9AdXoLN(5vo|m^4VHPb9_C0p zJ7(p^W>1(EyZ)Pe_-Hm9gL&{_2F#va{$I<653(KR#nG6*vuDMZvHGxUkF3hWt~+XD z<#AKh9k;RSe|QHgj#OE5OvH-g7JBVl=&A47etAE4(vO^Z(+aeLtY9m|3bn$la4Uxu zVdb%(<0#-q*kX6`v+KRS{SVbS3ZF@gH-wK~Fg!x2Scg~}E zR|JSa5%fs*U2Cp0*UKEd>9JXO7v|wT=05X)dGLNde-_~)hs??6{%Kae`)FPk5hACE z{7c!{k(;f%|B37zxbolR=hq1(VYr!%B+(E`YLmK9Kz{2UO%g~mc!qpHK7i*)OVScb zlMl&9@I3jLbb&IYD;WXtWGtBg3FHT|6&lm_G!eSdB-#yn(C+jz=tn=NePICYPY1ye z`UM>de7|`f?*;HWuY*gg|nhCgB4@NVJR!g;vrq;{2emq|0efu zJGCj=RyeH(=|Lnyzph^=IrSU*4HBu}(r=Mm9u$n^_Vo7*B6&Ptc!rVuo)MnWk-?*;~z9jcoDO^wuO>y>-2H$u{rX-nYpw-umA9WV`o0ZxiyXx23lw zf7$KBjX&9AG&Y)$y+$*m1=(-3G7`xlBgsf2XE4)_BWE$w{!Ff6roBNjO=`YNx!KU{ zLf^M0T8C+Oe+_>Py3#+$KbEe_y3Yl7rE}#sFAYg^^~%C*uMj9F?@Nx5cYWITqEgJd z(R_5=+ghfqWoRA1hkdurGvpccf1MZ-gK4h}DTC*HmAr~crUt128W~MS%e!sX z!TWloo=eZI=h36|r}VsfK0Uu)Krg5l(hKWP>(P1>poa@@LpIRPJdUX)&9ai4^#fWg(ZLcUclS<2#|jt9ta8e2$uf_Fa%oQBUJwGK$!f+fgI2s zA31T2Qivo0BoK1pN{xg(B#J~qf0VpS<|$mYwIMIA+WL@Be!H7ruGa#jHE9h6<$W`S zNJo+cg-JKk4Oe!5(jSVD0c0Q)B}2#%D2D5JEIe!ff5lq8$TCU{O> zcPcH{U#zUHtIMlT3G(VwqX*Z-R;g=Z15l|vv?MKwm18W8#mX_B#$)AJf1Osx%CQcu zgO%gk^li|w{%Hmttb9Ji%CVo30$yXFF$7Fwx-kO+jakMV2sU;ayCB@yW9)|r)2+9P7LHtuOOIU-$- z$b)rWec*CjUaaEUflrRhkmK^paRtk9g&K2>c{rl^#zM#?$Cy`+F~4!bI0c1`GsXoR zmp#%LInt7Hq_J|OWiSs;!+pXG+-8;eaur+ag zHkBh9WRH>5k?S5FyaMu?CM7LM#RsoZQkN71B7Z|B>or^fkI|w6t$cXWiUa5-@>)(c8NOep(>z35WZ@go?0|IyG$q<0Mu%S5j!;Nu}8~0)hp`fwY_!(kx zM|J_?j7!E1Xoj^!e_!|rtA-)a1*?QP&=YHbA7BLL{5>#1&i!IJ_djAL{~eY{5BN!X zz*6Y}%cKXSNe}p0dO$j6_zSQcv-~Akftmg;ti-(Tfh}0;M8Hn0Z}LF~)-*-oI94Yn zoX0972rgl+kHnn-Mnc>vwF9tsl2FOM+5m6Z_iw?Q=BHL=f7pWW$wS7-dmP!r8IgCu z1MY}yudAJHMg~8e5vU7s4_>2C5sGG;k-_%WXJfoE6+b!MScl$r)3p5;UzPjqtp4Pa zJt?6+o#LlN{*}mz?+lZ12xJ^0G7d2rhcp?7bQy;{G7fPWhrBWl`D7e2WE?VO9I|8_ z5;6`2$T$=zf8$WFj6)$Z4u#4%6ei_xhNk1}}498EMM5dEDWIkC;(#R^Zfowx<_M;9b$$4^> z+`{1Rp%x9M5j2Vxq(xEPSW*;6AB|c(E4e;qKbsqpf3lJjNIA*xk@AuokqVOECof8F zOyVRrAuma8iYw3NX5?kb%}KoEmZXa0)|gRk{+PTjd90qpW^JJ!A$gIW(`IqoYuc=b zcrBYfQ@wu4%e+Eznm0i5U2mY|OmC3nd){E1v4#ne{89jspVNvI!AKB*d7h$G46#0D zd%Jche~y?yN+7;RN+LEQr4ZjI&mlG@SV!R4o=0p-ViB8>7Z971O7=Y<W1Ct~)%bA-YXKtpP zxmosnctfS)VN&sMsdx^lc!X3ur&K&rDxOO!o?9wTKnnnQcQ=!<0^~|30rt;{*nj<6 zOaA3iG?cn_{pKYIof8>1dtcC4KcI?G?GE(}AMEjdE5{MBBNEq&H zh>S#3#uq!MML>V@5Ars7htwl)krqZh%s%zAt`F0WG@16JBiL9ri_I5z#9fgo?qPhL zV5AxojY-C2V~X*WF%@I&a$|+D(pY7zHr5zxjdkJ=K?M_<(1k~E;Wcg=w~X7ye;wnl zk!jpBG3=RNnnTTD=5TX_`G45^4mc^Qtlv}B)04VqsJ{1BbrHm27zP+%7=|I|VF&^u z40!}Wf&_;wBcdQ8i>!-*AR;+Q29cbDXw_H)%$mSv6T=eigdktMuy|J~EmwZV1Y z`<}n|-tW=Bt|`vH>V|X9J*h%3e+@htSQdCHa3F9na42v%a3pXva4c{tLH;+hDt3`(TG)VX$McDA*}In4XrNf1WPVWx7hg zl>UAC<@BoQ)zbB~$ZX_(gnZA>kwbU(Y2(aN_S$!GUKccHa$c8)yP(sN#Z^LXW}yZf z@;&Q&mPFz+iMvTA9!xw)cH(!5-*Mc=84HDV#=`N7*m z-S1Kl&b)t5H^X=Lgzvruf4;jHe0Oj7?qc}vKJeXr;k*06clU?y9su7xFmR2%_Mo7} zo_aVu^-Or`+37ZW>IZqAN2uh-Nc4YBg8y6OR4$=ZaFf8z6!1}ik5$3PEX=$CX5JJt z?~R%FMT{~alKJ^l{b^W*-ALDW3#od%{{O8O|8sqe=nl6Kf~F8Of5it0Cqka-kY^>x z(}Fxhkf(q=CFH3fPaE=dAkQ%5=|Y~BA_a$$vVUxy)Oub&pAxy^tTS>_ z(YyjryjZ8nwDj||e}**-(Od=HmsSu%A~B$jI9{P!of6e6w2I(Yhaw@qAT$8NTd_8ka>;2dnJVQfsp+_8TAJb0pxYl!=TtQvURE{~!1?D2p zDCaSK5!3H7XPC3&`s{2@U}T1VDk_eeXAVSWXqugkyg0gRvcxz7^O?D3fpMY&p=&13 zog+P;smv;7MjYQbI%Y(Ft5?X+xMF;1n);#$f0N_rfA4UH!FoXY`(*{4R&%WX2LE4w z->Hx{&7*n7K109HLw`@jA*Jm3A2sw7_xigjhWPc*1RJxByA1tK4ES zOwr#-ac5PdYDQbm6?#Rpvi?ylqV+vk>-FlWYZbGO=UDx$epKHov4&6stdU060&4-~ zL*FASf0<)uvivFj6h3p9Uh&p&YZR}S(bhOhv`Ve*SWS@Wry^@z2UZnTzL8+ja?*ly_i`%NBEzt{>5MSIkJ z8R*N8zEaRv0DYySuS)1kp)VVKx#+73`l@REf5Q3&Rgd+!0X=S~#@0^mw?)i~aUa+g zV|z2U1F@YGdAg46g8p9<-a0Xh_Xs7h#VfVC0n_hO$-$cm9LfNG3(u+#_IkzkdSj3E z$ttos!_wv99G9}9=V&WhepbbP@92KqnZ|mIq%n=b4|LC<*{mlEIICPnt2rOoM!V?% ze`f^G(aZEY=LBcyJvz@>!Pj(&t{DlOUs{G^RO1Y@j*)8=aE{sD=xp@hEOQ{o*CYQn z&t!{fvIf=SZ7nOCx7k*0-qyC*dRukalA3H!b9kF$akgdE)0$(|XRB#i4Paq&EzY^D zh8E{sR-VN%>c&3Aw7P3Ow0iJbF?q!lLqGdy*|C(%h5#63yiVl6I=)iVCQ6#xcRq^fs*k zx>rU$qnO-(av4pM0qsA8FIpeHx(X=?@FEVd4r?aiyVZLO(XI}OxU#_pKZ@BM1 z-%{Uh-z&b4eAg1(g#3ga33nvSe@Zf#08J035Wl74el$TRJNV$^gq~@h|OC8A(+_Ka?f2psfp66(_ zN}wRnGcYDFC$N&E)ZYX?3nm1sbHrI3EDg>Jt_>auz8SobmYkNE);g_!+N89H(>A7^ zNP8#kYmPj#)7zKlV9a~wlHR5jVB5GH(Ynn1%hCw86-X^0wSd&}AlX2&fnp>a8HNFxuD4t$?%wf6~f>vxP^&stlv;)%4gR}?I9!Pr+(g8>ZARRnNA&^2Kg&w3Mkd8n)dXOR@ zML>!?NGBkjfOPU8oq==)(%FM_0n!CX7Z1`ENLL_TJ;+T!ZUSES_oe*)9*n{)|(g#Q%57G}vKOp@)NC}V}s;BRt4RAR~c{ z^dO^vi~=&sgNz0;8pvo5G6u*PAY(kpSRiA8jP)SnfQ$n&f6jxH0x1Pj>OsZ>84qN< z2blf!ysu zrURJ{WV#2r2gp4@?(rb^0=XB+y&hyHkeNVcdXQN_W&xSyLGA}~Kal%9$OAwg0P=tb znFC}FkU1V?e=d-@K<0Xoc|hg?ndd53&Tv5+F-F z$P+-G0P=(fSqfw+kfk1EIgsT*mV1yDKvn=*;Xzgce_07+r3YCBWEGHA9%MC;)j(Ez zkTpQo09oTf)&f}zWUU8T2V@;dyox4HUQb+K{f)}2xOxN*#u-0kWC(B zGmy8<1@tWIK@UK(>339YA&f+2KKU0@(>u zWEYTKe;(u+AkP4K#)IqzvKz>55ArOKXMsHHLG}RI17wc}*$ZSZki8ycACP@O_IZ%~ zK=uRK??Da#IRNB<2RR7jAdrI|067BWhzB_e$vJI*jsBu_-{sra3A$tx>UQi;7JLRBQ@SvFU<}O;=QGx}#!qGb%Pc zIp1AMy-^(+jOviC%&ez0%Ag!7ptjVNifJ(2L6c|(&80_a8R{d*@v(Y^aa;qa#2swL@45Ne`To3F? z!)Qu$oa<=^9iW%#4LVEb=}WrI`MP6d7&%5{9Lsf;A)4W@K*eFDt~Ep{t3X*DM_B{P z+BnKOP}YN@Tik#a_1>n~-safeme}6bf4H7^ppBieHg?61dN#JVC$_gYwzn^?js0lj zK&*{}v7-*f_6}n&qIZs7A$-Ph@>v7;?+N}pFxJ{hV5g$(yV)8bwbOU#ab7F)=6lc&11>MRhDYe-grgw7L{||b)xsXpI-;)qm}YZbk2X7_`m-oX%Q87nH&;e$_vO@d(;=TZ zk3ZGo>BdFl8YP$$@Ja9>XN`~eyh&!6hx(H7I=9o-EQ!|V%jvs}1KdtFe+td69%PBJ zlKlF8Q~ar8=6bN{#%vyc9S?1!e^IJ?Hnup%hXiEv)yZ)T_Ak~a4 z-tI=#yn>o&q~n_SbMaLDetK?wj4{{P&45QG4>G$XR=~Mk-w7v(^_hcA`WX));+~k$nF;=xq zg}sYhC0mZ|Mr=34t{wclR~i-1-4%4Y zVtf#}PG#(hqn_7m$VkR&n-fQW9oL=o8wF>_Q4bmV?apVQpMB%#e`^h`ea}VjvMi@Q zj2785&>15;jy?s~pm^08S#i|C?EMVlJdn@06h|+@deXeU7)Q-DwB&p7-Yj}0j_w#* zvYOW~N2yvnaqYwE%JTI=r;?ySc(SeqVExIncM>RbKqtbV)`>pY; zg~V%f8jnYNBGcN+8tSw5vBylrxK~ld6{yI{DaCe6d2OG!d$1jY?Iz}rkFxRO(*~81 z{--&na5a8pbj>{RzkI#igs+>!=O3~3RaBGD_*d<9Mu?AD*I>|-0%hQcL{E1xYT^gmIWBM?C-<9#6hyD^<{;tOBQBP4$ z)%U068;6WN9_n(YRx`F3OFh)NOikqVIL||!z<<9q=0LwIr~~=$8TK=~eZd$U z^(5ug`uum7f6+O*j>@U*-)WhV7xgSl{||_+wNyv&+KH?J1FOKtZI!WvR&l(U2%S%c z&Zj`{I$kAeS|`!UMztquY&nWD1b)#Xm;GxoYkL{ZXM6P; zT{NOzK(Jnku;8d%REbgsfO2~rWgsYQiAB{YWe_O0f5jbB0?M#B%B`S`z*$L=r)1%! za;X4)2(&BFmcscq&T+(G-ezNDA+7sjI9l~{t`L2K7CkGBI)pxLj91`DH`@OQw53Na z(TZ+0tZfgU;}VG~Jg#K!CmXgWNIqY0{mub>gs+>g8=DFJe6oS(ll6OP4Lm(i7_}Hr z!ix03e_h&naWo%W;pUK6wHTFU5qdyd!=n+z(1EGV6XN=G%q3aZR zGfCe#%d`yrOd!1misNWLD&dcgJ=?}n6Q~Fuef6|XjLx^sCS-p;tq%h4i~hd>9X5JgFFuincQ)G&OWrXj-T&ba!Za zf9RgjjL^M&)XzfmLJ#o_e;#@`^o!7f&?7iUkKs@V?=I2$s7|Wm>VzJt+NpLDspr)5 zdZfla`kk04CW*;nikK?y64OMPxLZsYhs0rVL>v{z#Bp&#oD`?TY4MzRUc4Y)6fcQi zikHQF-e@tX9>1nHNFGD#-O6qzame=;c3WV);*Eg6zRN~vU)tR=H$ZCOXwl{vDW ztS=kLT-i|O$wo3?c9NZC7ui+bB)iG(vWL7`_LR5CUb43=mVIPj*-!SD)8##KhP+qa zCuho8@_sp6J|O4FC*)H3q+BMSlFQ|0xkYZ3+vM}|1^J?UN&Zs4EPo|mk^dz>f0KWb zpUXeX3-Sy3rTj{MtxV-p3Cgb$RYz5%I;qa8i|VRwQr%Q{)kEE^da7GgFV$NWt3Il) z>Zkgv5;aLpR#Vheb(fl^%G85uuKJmpr`D?tYNL8uZBm=n7PVDvQwP-{byyuyr_^cn z0)J1bx7F{|JL+9^M*Uu$Rew_n>0~=Bfq12RFbMfv(x}JfEKA+f7R`@Slz8= z&~o*VdW=@9?P?coR!7w_+RmDDl6FF0cBvQDTeMq!qQ0Zkc0Icuy@RR>k52C1=XoVrt$f2#3nf|{uASF_av zYL0qJEmtelO0`O@R%_H+wNC9-`_z7Qz)rDK?SLJ$)9iG+l5N=`TiDW8wrx9h*mmv8 zb`x8_x5|S22=cQbv)YhZK4jJ$GHVT)6+vb_A+tV^*=WdY3}iMDGMfsS-3QsshCCKV zY9j7X?K9NgsB|6`e~*dB#X_-2EEY?|6Jn`&QY;fsiREI2SSePC)nbiUE7pni;*a7z z@xJ&#d?-E=AB*$i6Y;6|FY%f9llWZxSzHibh%e=EIYN$YSH%5m~eSt@@n zAC|w63*;m6QMpF0mFwhsxmWI!`{e<7P#%(pdxEi5Gs!{3= zHCl~P_p1BUOf^eAt`@3AYOz|Po={8GlWLiIM(wumQ+w1U^}V{R{;IC1tLmD%Zj)`; zrtPy6Y`>joe<#_=c4NEXCz1}^Wp|i+yE_~nWL#(*Tm6}#Srqv_64M>wj)b=w8yZh| zBbcUy4zhipZcnzSv6VS!-=mM^BgXQ%RD-(WoCA`%LHHN*_I5m;uFdhl} zs_9hm&b9KmWR)H{w=$fM9m{PQ_5^#PK414NCbJx;@_G8K{&;32gZ*hyB(`&p=ux;w z$+SzOf0PrToQ$I!1Lb%eaoe4JZxtU8|jzR4W1Ci-UhW>6BI z-c1e-4h@EOjiUgxD=joJG>OuorB-NmXf}z^)1gfy-NEhCj=YOn=d7!SU( zf8-oxQk23{(zb_r&HjP)sH&>UE1{uk$SXn1DiN|u(lx%=$SU#3LPAgq=L0qcIOC{7 zY2pS^gO8~xvdBS%@ABvyu@7!6noxDoOf;t&qLpY(HAP#|j%x9&x>9Y?UG$*3qNlip z>WN~`B^n@JRRZxRx6=$fxs|gNaxK?le>>gF?Zs=p*e%BVt3)+rC0iTCHgr9O+0SjF zDjel(qZ?G3Dx?gKSV~xfhV$we<6I9fqB7TX6OB|i*$o(#+%z}cklcF6uwCgoM%bl&M3r?l%aI>TY%8Hn)ab!x-x3y1B+M zH{Z=SZg-owO^xAh3%7+a(rxXwHb%Ma-44bbZjoDLjB&fTU5&ABiF>PYr{tyNHnO6~s zWusc7CANVoo<3O_twy3EXWyqQH9A9KzD{9pVRDXg7fUxwW=Gd^631@MD4CR8Z8VQcLtFj^Hc$*Z*f7_YlaEx7_!aB|- z7aXr*_h-ASD`-g^)o$hy><~NHemtd~V#%&hD=3L$y;Sz39O+RCM|vStXA*Qq!?Nxv zd$Q$OuUJDlN7%@o#~0C4&L~Y>n~Z3)13u_$AopSB8$J5_CS`F3@iE@95#acZ&(e__ z>+h4|Np5+GTEd)If2x-9$evZt^2jc!OU#vP>Kc!XjWUnSv=b>6k&U+g2FGos@DnCx zOVPZ-q->t&4sL(H*w2~8SK?dl@uIlQntn~Pbl8?YO|Fi#sVc|U@6!z&U4KX!99Lhb z8jwa7$I}H=i)GT1vLTZkj-dxpJ;3`X{hzr}IT7wa|G0_r!SsuPM$0*m^A!%h>v@5Ukfa6JYDNR;*<`STEM|2so=_>&ICg zrR%JY?cPqYlLTjVyGiQ2juiC9;mqzJg*gUaLN4p&e=7D?TCTM?^1ecK)OB^8>T}d> zPy-!xQ?8D>DUVlD8gtpQEtb8o1vS$d6KeoxOsoNoS?aCrckFkly?xd`OC9WU_8+Ox z{=oi-itO|DdFo<+YJWyu?LXUprtbEa_E*%y{>HvYJ?-!9@2S|nYG0*3_H~D-uj6z4 z)Za;Rf09@;Qk(#5M!J(uL!6K!=r%_=VH)OCajMWrr@B*}MmZTy4Z6e0a2X3JKxEd^zJ)_;rjzlfylEW7f0f4^Dw;<%%jS435;i0Zr|UZfkmz ze|h~vYQsKnDYaG0)pF{G%HUX{&db6#sLWlOTW3)v2b+P#NrVGgT&QS8Y|BeQtf#fNHBd)E!h; z%~Uhl|7xDq1JCLsLTCs+<$+I)z^4M{Q!+I{gwWQWYENYyyN_e94#>f^=O%b=fAb&2 z3<(^g=J5Y@^b`UnfT@2H#Z=^ok^1>|eVqNa{WiCu_1a*K{xH%LqGdu9iR8E{d+#|5BB>^`It36SmdDJau)nye~E+tY2bf4I3EJ%1vqbm^A0$Fqt5$6lS8^*p(9>{ zBVLYmMHy#;iQbicf+40?cLwf;1ZC0k0nSh8ibhhwsNbQCp-f9KUH^#Z+s z==WFlGHjP4JOl1*;B`${*9O+L59>Ms>pFl{oQ74L&M{vK>yTcp z0;|==YIP9v{olx)NDZcIw2Bd}QJ}Ixv|HCGm^TMmM~BP1dF}sPF5z|h6nlzh%!$gp z2KBsqBVzBQ*AXmLB#+ejf1MvFuLz&Sb#t$VKdaBfn)@;5WgyRvmtbU+dr;k~ zsyH&X58EfGj{S=LAGmYxht_>kq)rDurZOMPIJVauY!9w=4a;yg^#Iq(-&mmU{w%NT z={o{iM=k1J#8U6zx_wR@%||Q)BNy3IIhFfWX(~55(oFjW`&U%Qf4LqOls za;%hzSgEF6%yZ4MpSGW7Z@<~zObxPo?6>S6vz87%P1R3m&txH@HqYjFQr;a=h1loRd~f9^x|!~MejST=*gC6pT; z5*|)@;gR7{)HFOgJerz^$A-sJi}3jH1Zo+c94^C~G=4hC)nebGEyP~7T{-eC`6;!O zm)J)21V09 zoojSZ^UwG|fAi1yNb}G5So6;~ulZ+us`+PJ(EKyL)ciBP()=^N*8DTR)%-IqYyKHm zH2;jNnt#SM%|8|v^UqAw{4voG{$I&|ydsK)G% z*?_V*ib)sou8EQHG^3lLeB)^=aJFGuGC z?SXW&{eZoJV{~mNCc{olLA`P+k02#-rI*)jnA@t#d0QG=p$uLD#daTF9sTTntotj% zD_QsTf9ehMT#i$ff1{f5DykWYu?pK=JV)(O{q`7pEG65eb}6NXSA|!jvX#LR)4R-} zk2vQ@;GE+VKJHKU=agh$u)n4h`!DuoN_YI6TPV&glF4?0P8x-sN{*z;j^k9N>P|N2 z5Lui<)TLTZ11FbiJ9$n4)peS2ES~GEbk$0k?RRSL3o+)8Qo ze|J1Lg}J$yTV>3xD&}?r=9Y=M)xq5AVs7;?w+5J7zSGKS$FnMQ3V9|yoF3HDxy8AK zS~3lqIMm(QTS5$67Jd4 zEoCviGe;^Fen?mEB6kxWV$2_jq7XURh@7e;a%$+f+;*e5IBUF)vv6Dnj;o8~e_En9 zZP)#gI13ec0dG_lGpmo88hSjG%L@;@CPC86S@F zWIcGYj7N2e^MLBe0~#_*KDRsOXpI$d770 zITFnwu1-ZvR~a!~2iAfkbPM9)e*w;&&I%groMXLv(C=U9_(qLI^grzmx1L4q5wI_`Cn$S;Rg{G9V>XJ=L&+KH^{b+e%4Fu2?W=9Z#6dG&%0-GV zsRxp5`AClrH+f8*`%!k?YjqF}JZfa?n+}Av)*Ljtep~Oo0u^W|q>ebV%#6jqWtw>SRAf6r3{H)x{y+4A( zi{p2fi1O;YGhXh1NZG}Aa2b1!2;vNGJL6*nu;`@S z3p0HMYZqsQ*G7fcTtc@^>W;*Ph;bM;Ph6LG&u+LS_Avkp>JJ>xib{{^8Fzf!J-fKg z>tVGVl$pG_J?)KoY@UM`5lYIwkq3AD6U}IT^gl#h@Sy0>PCD<1&m@yZVCuZcHiSsZe; z#wA=xv&w+`-{!p|?|Mf{-`hXml-E$M?Q5va^aaE)wbBIOOy>h{bmC4Mv|?p`$p}p_ z?;Hwu&3VmHcnfl^*`bOmD?1ck`{lCu3Uh(j?_)sh=>p*Fwt1@dZ#a zy7mfBVm%;moZp2fj+d~@=VyfmNgL@IusDh1xQ$AllFRw56>oCk` z%ub`*9Q(9j70XWGPZ4M=J{(vQD&r%@ zEa5(IWv_Tb4j~U*Mw^JN`gudZ@}0$!x1O^h?&j6f_a)2U0%XD?*xz@*?`l(sr#N~Y59cYX`n>Hg4RNz|DS#J|~| zF-cU9sb|W1GE|F+QWA+j|6K}cwZf2(l?DOwvzdzdZd=xQIr(~ocJEfhFxR*4S+jbw zH-+vDo{7ZFdUOUfkxBz*R^{r0b+*7vvrn^fhfG6Y-l(HFfbqKY*d#bDZ+qF6IQRRA z?SbOo(GL@9mIY7v#^kcY{nbA2oT-^1WIrI3w5RCrA2fbl3r;RZ5Q^c3R^o6zM-c+2 z)V(oC#x22w4wSt5W@r2n+M%>M*Iqq=SxR`^QwNkl#5AGD8r5WQ3s# zgvJ`?Nr+1IFBHW}zPaaRhP;;;l@0Q>kmx*DrCOt*rDCQfp%P|>;QVNS&yx&gV1~H- z=#~od4TzOcr817=&1Ha2j51_N^D^BsPMRuX@~oUn{{>7)FDrE(OPT>n}c{}jq@qZI~Ul1*rFy6 zOqGCkAgu)46M@TmBVnj6mBm*=a&z^&LC-jk2I`}d!JRPi6C)}|UpUhJ^ZK2pG?P%^ zmJg1n3}VOmNMbuL>Dub3fs-dL!LfeL4qxma76QB-n<-PDM4NF7dH;&ah$JsCSkgmoFwO0&l_!rNRRFwf#V-3d5zu1-lW>uVd}2wg zS4o*_AR@RKFCwF0m&$)1)y9L9l8_?_BTRM|IJQ*YQ@5qP`@Q3Oc{g-n@s@(^TP0;^ zB_&0&X7-E)s7kbO?62HC485WbYM6}I{pJ*TjPFHO#mh0Rz+IBpWA*Pn+ltpCl3p6t z@Z9B@{Uu<-Y_r5WlLlUqPAslR%xdszkj=vL{ZZQLGg7=pBO0VeZ=-4XeF$o?|5VP$NVuj6_k7d9~P_xN=Pk-b^9 zdhJ;l_*aMwb# zYoy%sGyjjAmk~a2=#FCbh6Z6h_|-RL>=!|QPNR9#qcuZ< z33*BRg_)eIFOJ}d@2m1~3s{v8Tpjv&kwa~Y!7RR5!}SYLEd5$j7VWR1+orH(OLkx4 zn>Zt#T@)fZ@y;&~3o36xof5^TFs=M|b+PsD zw1E>fml-|a!`q8L9+KqlO*&G3dj?mz3Rk%g6CpeKm?EK~S8ps2RmW$Y$7kinXPL)m zb;f78bIRW4lqu$vvE`K6t&g;QtKBf-9$o0O;^;o&t`ShWW^OJ597OP27H$HP^9QrPPO^y1$0A@#>VNTmJ?=Pqnt%UaItJx~>ky(VDf`>zixkME8VLLx#2(Eos-9bL=_p{<26A>kHe* zna@CuHARum_Y%BCiF`I&m1~WhgS;GwaSlW+2Qrxhsmg&|eD{4x}ju z5^OoLV>yCvIihJf@*xLulLJx8fw1R5NW=&9#RpbC4y=d|h5o3z<+2xFN;_HSA-6CB<2$!~i&R<32xv#xN z(M0*L%_GxNIIT^3ivrKv*n1y>2~SCkS{x$J+faJph_TajlNJXAtE8lwHlY#kXJ8{y zau53w#j!or&_UB@Z8nVg(rJP;9$^L9-?_!(CLwaJLh7=%?BTnGDX8b zhB>wS@;CA|AN*2htAn)5TP_n5p@=`vF@zHlVW!hvzJ(8LYyvU@sXs|@>V6R|9d$Pe zdEq)ce+uY!vww?09TO85G7+&=L{s==2pJ0cTLx5>h3?J2SQLmf-&&xBDg!3f^TIcj zL&ih-<(iV@o~`PGl!LReycSkhryp%%45X3+7y64zom|D#yj^5Ov^a9?f^)$h(lfb2 z2T4x3^y1nqD5i#%6R`q?e>+33EDjkj24~Q=NoC!RgBGKHK~o*Zhr^N|R&B-~I2{Vn z?!70;OX!C5wa6rxEWX>Ee+K@hz2eL34!n>f_2PT&vEkn|^%8ipn?Ob2ZOHbG!(pLr zta$azrShD_fI#eU+a3QT0cGs)EM_cGl@szlzdfIqK4zpGi;Kp8{(>}R%$X4&{ zV#HKS?ln$S^vP6pu4$2ujx*Wj_bMgDw6i9-ssrtnkGm2lM@GA{MgV&zBxG9oF?Ku# zPNJM}=)$>Sh70*qQWdIhPgzyDW>#C)b5=l>c$TiPiAa5T9-JMUriYoTcuFO|$b7PsK<1N8J{tXPQ;~(@>9| z2jljCx4`k&!nUYo9~qTYMWAO}8JcE~v|j?P_1v z-aIoT7E?Oi0oGY&b379#O`=lt%O;&Bohnb|CWcHpz!T~Pt&|#jG4_I9m?#T92|{#C zG~%1ZnZ-GLO0-MV_mW!US5*!peRyRooSyZbNiIxHA&e^zeJU@5vCsA&RGN|M=P$+s zdErH!s1YT3%<@<>(r)gFMNHOJ)OmG9BjxyR()vlv2N6(kQG=3RUwD{I9u^CGS|~mE zhb0xD^Cy0j-U)|=4jSGDuG!;&R&yEW5cUs-=NdDzFa$?zfLjQeWU5e&BMG~h!<~#t zOKJZ>p;i4uL1X@hf>w?-)y?Bx)*!pwRT7?ROkYZG9o{ z4nGtLT<7^oxceY9q^Ap9?kOeQc@WkE7;~0#B!w4%13bS750>M=tNmwHgz3pmqPn*> zoo2O#sj|K*cI#9o@!~0mGl01N!J>`8H6H=B@6x;JXVq-6bhTN|!JbLA_+t^fAd>U% zo&g16WX8zN2JmFQkzEgb>!TK@xto2~poQJQf-jV>n*yM@?JH=_Bdam2PpTST}-@9-~=FQao9ZvXcU-311k_=Bq-T0r)2%So(mQ=)FOoyUCU5&MynQ@YD>Lvv`e>yJ`}<{4=m;MQ`Kj`jL43I0kUqRutWD^!^ebs zU|Q}TXgzCoT&d`ApnQ65xWjj$)_&)551_QYY=qi@T%WHZ|}O>yvy0=_Q%vy%OHD8tsy7IBO- zA61E)N6QUVUNAim=#~D~uEhO&XY^}pxwo##B*43MYp52(=kIH$a{a?k#E9D8@3AxL zi6i0qQ!VO=j5ZB?Z4_-XZA5JxZ8W%W5?PyK9&5g9okCdFiL^|KOxMe+^mMQG){sRD zz8@Abcvr}#*%YxZT(%}8;Kc(6%A8yI;%E0!KtR3%h9lVkm&MaLnQyYd+gOVAkP)kZ znkIpsF`Xnlo3Q@k z+MY%GR^wLtR6jpcc@3AH`Zj}dhFV|vADIkD+qyhUnd^= z%*B**+wVj>F*G3Br-QN@x|u!2Udz9fN03JxdNK5J2w@13;;d5!Ug!W1vGQKs{jU+f=~q3yT*Ph^L672%|`&h~_U(kwsr*VCuc_eb?~j z?#+9&27s{PRReAV`W>UAfFqJ4og?0v)4KIKP6uyCZHHS2Lx3_u_Um$FQN-mJ%Wsxn zEu$~LTt@Z9zau^KTK}-_zK+&G5Ws=p@xt)Ko#EHoS^@d%>AKK4>L$L$cD6AEh0`oMOM**S%7&60=EbQ~m5G5L(HAn zIdA|QhBd;_V7kxsPd<;Qcel{B>-Jq>t$nOrjN|AV3=t;Ia3l%KT^kO#Buw(25Pl!6 z*n#rbW!|?gl+C1cUa&4eWXQl&Xo18QbEyxbQh8qM=%N4qW*AlbIp$kP00m-ofGqGW z`-K>i|LaH6JESwV^`#Dx4v%j>0jDq55Zf@9k(XiVW8^RVUkH1qT8O=R=4OL9ksUOi7A8+|eQYP4y%TKAhS z&>ZxYj+gqu94Tc@d*1Ed2dC-DPg@*_C~B|fitjoW3dsLv5+%*=Lj*6mwMC@};HPQs1`CrdQhZ@?zU&Aol~Z(ht0PhV|?h8IiHP9iQK%BJ=Bj)uZbZ{mUw<&t4HRs+9InY{B-?06zdR=GMY+HX^X>z13G7)s@cA5k7!=y^|_4%~&mnnnAtRNh^c) zcJ-B0M~BCC?n2G2et~c~kfleJ(31WU$#J=RJ@BQj02}Qe@*LTF_xvMjch%;2zp_ef zv$?uMq9qk~brU?)54q2Ub}m4V#7q9Uye~vMbMn_*PelghT6>95&Q>|Ga;-y#E8m}t+t<|4+!PzJ$%B}?rF+hkLHOmu} z2MZxn&aJ*O_OT?}^o=06fMmP+Lg2n-nZACA01|OQ*C^@FES8Wx!~q$)kiSoS)bTfI zqZmAe++L(qic`BlFfU~PktSArqH%%2lKjwVq8wP|(h{WPh=lO}sI13_kly0-J>i}d zu<57ZP!DId&_#u`0#+RMZP~;5B6rq{z-dnFEy4|v(CFxeHu+|8%gc(M^oyGohOu>% z6xkC#CK|VxN6JCq{UFTfCoG>4w!sMNQ++;SgvBw!c2%D_@*WLk?%TsJ0J3cu{UFTl zC(QCEteFvZtNLuB`n;w3jHCLT!3e`teWu8NWXOLkym$oK&18RE-o%nR#GFzP@kf}W zmLcp^2GzXO9+{nbbQo=32%K_^d>YIycIkDdI5t%GB3f*n-F)jc#5g#A3h!iii`XZ! z*Fb@vlM_RF`)AAls9_=62NM5tCq7%?WHC`u4Hhg9 z<{L*22ZXB|;5k4reyV&Pw6Mi3&Ov1={>i0z2UB`r`9g12`bSPPNF%&S4o_8!WJ$Ip zg}Gd=D8A$;vmGtj7Xb|ejrVI+U(7V5^-WkQi>*t5rV<3A`1ZMju!-^}b)`g)0jmpp z0sU1Pi~dySq!z8wq}u@j=kg2&?(HYmMWs(nI|-Qm_s#*nDx$OmgCX10_o2h_5!={} zU)U33sXc9 zk|(uKa3ew*%l=?fc$+$cf{6TDsm0;L6{(2U*iIOeZdc7Fnj4~WRb z%xoRSbg@QWa+Z%b1%p_Gb9N7r7Bl?S#%BW>A7TxPC}tz(r9Wid8QcVMRWbi7Kh?J| z_5NZ4&r)fOd~unPsQps*#b!pPp!iTjmsjeoM%T0>uS67&v+w~vJnx~gHC<-i(xkXj zexiaiE%lFT`}m8GTi`*CU}*UD714sP0j^e?ZPF>8A0o=KGolT6ADO zqkFBo{~wZX1nV3wF7fK=R_nT^u}@~jUd-w%733g&42{8dhDnFEpQw#CAmQp5v9 zHx<7kjN+JSqwC5+P1$LN1NG}vsGeVL+ZV&)iW$BGUAHfO7PPU`PHqz0giN$QaP%$XmQ{8I*+Jw(_GgRcM zZME?B5D|*#rvemV?#EmiJynjHYn8{e2fN)No?dR&-#(o7wj{SN(;vxQ&BN;1VNq@y z<8#~=Um7jf)Ca+M{bgZfu2LjxmKlTwfyTwdcA8i~DBk(Z@b!WQ&EcW^LD=s0J8d(I zdEIpkT0SlHrHnnzf)0;A4`ll(yxLo>{qB|Z^FBwEnqF(w>NVu`4SWunT47pS*OvNO zGAx(uI||IADKU_(J6h4qu?@@%I$yl)+QBT$;TO?JN{Fj3^)`Pxa+miaBqQ`8CL>Zv zgDaH)9r;X)B*9vpZ{rLB>fdafEb?%G92|~YX0_l?^X3eF%ReK92HTdLPPO$h zA9N2mE?3@s54~Zzr`b+{+>NX-Db2?h>Fo&Ia*=riJY}daBHhbjk)7W1ZbxO=y)kS- z?<;geV9)Yuug>@M)O^1}ZhW;zU53rm!r;OS(2hm@z(B@$sf4_WnPCl1q6{)pLhU+( zyl42=iS2y<>peOXx+H3s0xA;ERg`UZ^4^C;O=rBkwq-XiX#Y+b7W<1dUkkze(Ha8m z(VnNq1~G!$UBTPkMgG4`+2k-7-RiQ~^cI)+Zt9-X|73(X!!rQ?I@h}Ay7PK|DDUiN zo8n7_@@B$Z<(Gvo<~B#A7@j{e7@TPQLZ`RQNjR-)`58&F@06+(GbHt|{UWdDH(aiS zTzsTAmKx+7I8Sd@&-g>9+BocTvfT@cB)5=D7u(+RYABT^=E__DDNeNi>i zsNST4bcACJ;81l;@#}3f5;(GOk8VD=xP!j>47H26B^1Bn9*$(HN~>x3we)F_Wc zMTY^iO(89!j)IQD0FrN0-^QryA$Aac{&)OXo@kB;jwo<)3DG#@=N9B=V1{$7I)?M0 zxRO9W6SBazlylRs0u&P`PI@gL($+ClcIh>J>kHanz*Qj2yQ-H|EDE0xB5-74cyG~w z=hgHFeDJ!=ugZxJI!+{+m0xMp)+{Zv&hRN`m>b?Y)l;2(U^w~Ey%OB8^v)waOt-@u zsn8&;lX%>oks84#0AtuAVgJ5&`K_1hyZsGA6`evR3v%JNYcxNF^b>5#dtd%@{}CW2 zQ_pI51A-y&#Jxq9=&rCIhH`e-)b81pz`w3bmS_}lmduKB{t51;aQ4P8^3OxUfkN#@ zeu0-eJoW^S?mS3#u|k8XZGSS4hv#sjrx-ngxych45LCl^1zf_b@tAF8v^sSIhQ676 zi;=odp2%u@@9VL zSfxlB@^fb3-UK~ueB>ugG9s%3x`Mix zHcGpsyLvk5I_VbHN*(Of8{UL;hNC8uwlV9`W)QQFKBu@FLWXgC*%JNsV0K?!i;yEM zFCnl^JhEy67i4FNgg`p&^4E%TtF5bG70X|#W@hy&-ct21(l}bRPnfn7O$E_jhXkEa zd+#f8!Z*GDng<+>o4Sa~pCpz5giVL=hJxXi`5(m!+ziO+AR`L%*-}~P_ULc(u7)wp zw8ph5n-BAv6Z1}YtW=~D7fyPU zD@L8i7T1w7GtE`Vex3K?Gk4miRG@Hbx=YgFg*(Jy%&K0N$gbigS55VNW_qe7#YM7C1czi$3 z8*-f_Q(5e_H*q2v%0KIM>4n+g7}CR7!Ybl`K!Alj_`(cR){ zbkyS5$f@{f&a_Ukww08M*vJOCNcZ??@pMkH&Xtsg*vKG)p*Vnx6Pp9yRB@B?)>wR# z7GshFAELBLiD)7YrNxMUk8i57Nr`D9j!hTsjZ>If7posSi?-v-%Q32Tx%odG7JH7l zaHle=c6yj>4F1!@r)kgP5T#!&^b@G1u_CFOa^zscWk9>VA%B*`UgsQ4&!efMSCh2x z(ZAZ+X=-p=U`M8X^mxp`V5mC63mSQnFsk;j`oWu#M9k3@MrA801G}2A-5nP-39eSQ zG;rs0n5IfhY!ofiWiFkqw43@e`^N>jlc#qyyD$+%l@=f;_^kaq%FO;QszuYP@3bKE z3sE1%7!VHv(U2`P==XiuIh@aRVlHbP5#cj0?d)a7D(5e&Rnzv`9rRsj3O7#Ej(bN? z78mg+Jh*T6K!(}m&4!H6zIETOMRD(qW9iMYZWT7!qJH*ZiR-~Q{Y*x5H12Xu39I!e zm+Zjzn%nZD<#QG5o)MyxhH#_!*~Ga&HV@G)W&mx)D|m_y(e{lkh618H;UsY7xQds8 z&WNU+s@K!UF;_<{`ItC@(fYMFU0yj^`WrtRXbkmo517 zr2L3?ug~7U@5>P~pN}tOB>?D*YL*TLRl(1Fmg0Z$Np?%2o3)F=8qsavFQ z3@F+SmrVNq5X;h-2=dBOh}(0*Q0ln$?PBYD@5XBpva;R*7K*dco$ma@w#X%sK|kdn9r7&CcgN# zP{oEIm#}!6J3^I$RXkswiTLy2c#&$fOd#s?7AzX~`9!c0gf^Sxe#H0DP+$`#lD)u0 z|7>;3E1GTr&*@^0?etlx?^mmpF>6Yew$3aOTParJgKWUNWqjb%GM94H6XPrZC2JuI zoB~OC%}HWhwN=u?8+C{~$6>FqT+?vx#Ij`&BlON=R(C{bTIjFP(nHJb+f(sVzE$q? z)jP#Iqa$$$q z^$aKY5nt^&arKkwTT85|g67S{pORIpafZPC-fQ0~X zM^nd5$4N(S$3(}%SBdv@+Em&cDfmZ3q{JETGRTHe%hBvHPcX<)$$__7Z|Q!hN#IFb zOIYP*<>uz1>q`Xrf|kKWAmFg2$COj-vO*jSaITV2vor$#ND;w z;ke1nYT>wSI>yC1f>EEaI*q$&fB(RKgB~^||H;yvD{A`T=_FIKU+>K7L1gS!WcPl1 zIMwGg_3{~Z3Zi#fFsrF}x=h<>Hb}ZouUcg~JPVDVSC{!yx8FXI#kLbB-D~)cFO;C$ z{5)x%$~~g>!U51I*sN)ww1!Mk3_-tvBTW5tX8l1Soo*}Tdf z8mJ=q8Xt5Tdu;%s`017k-rlW;it5!zC%VOBxuu;yC_Fj5LF-n#CuvRYIW$h6H+wws zZ)e11=>9zF4PA2}j%pvKV?IvgDJYzT*GNWcPDa5nf!I|O3J_-8wI^sS_F5QZF$A>& zImBOo0G-CU1%M0k%2>?wNy?Y{eQju9VUHiw20r+iiRjEa``Yac3d+usn6`puxhNKW znGd(BL^%$jjw`e5hd1!butTG&(a7OmRY_{@CjH=vXl}0RvA0$1zH_1=d9kI;*lQw? zyx|gn)a4ehIEzx1l)vR8-H>#j$g>H(|LLkWOJJ(+u)M|NU%$L`cL*iia+tgwf`$Kj zCK*kvN@Av$CrGFtf=YsX%-CiWlCl%^*lYwi7MJXKESB0iZ1z7tNPx1rPRN-xhuY8E ziO!RgjGg2%2ug|wv~bh03u`ph63gXIf42j)YlX`d!y5R^LqBH*y>A8-kA5yC-X_NU z^czIjE>Z($sEx9es8#4y&a*lt%_e=3*OGUD@3p+&syFK;R5M*I=x>pa^Gc?+a177* z%j9C(sxZrSs&0^68_6lX<0DrIF6d&4+7RSbnk6%16XS4;1aAw=>(d@Gn6h08Y4`(5 z2mT;=2DRi6$CTVTU42!e%r*jmP=Dkx zqgGxtd=f_NH9yE=K&N*~wcMAiz@BW|_n1+vaEl6*3=htn%Qc+PYAq{SRV8K5S+#&q zV>0UVr6DcHdS9)x-`CFci=34M+#}^v)Gi&5v>y(2!6%Z=-?2FRWM z?SNnliOfDs8BM8iCFqJnamPx>0fd=UJDgoJOyOx?3O0NG^|^Hl5}mAxTP&H3#Yb9g zW$xi6Kih1|=5y@KI2q*R5}6>?pt$c`03vCsvzs+{I8L*(28b6<63KyuHn+0SF#8Ws zgiGnjo?mA#yo?Dcx$QevL#N)JqW=^S{li~%D~>$kfe}~j`bp80RFWWlkwP}w#xg%N ztSLaK>sNXggqhp661*K6oQcb+^)N2W)1v&V&BP~-EBv;%{_Wh9MaUsre!2*b^aBWM z%W}3)sBvUbZ_R)-70Uy#=UW{4Ldd4foj@JKC%N|X*Hp9Z1vi0>ie!mDak|n3%_J~~m+}H0i(C}c!Hdo&~7kqer z@%)cDpUNdaNHqES8z+T^*?mY0yN)~lTpBg84`4Zrc`3qlfeK+G#dww*kqfDKDy?bs z`}&%J3-s7j>nlh76VpMQIo!rhrMN-GIF{p|QRYZu#VB)t61Vwh+iI*Rd%@4dW2+1v za5ydcRMVhN*2}^H;Y@ms6#6mpDTuX*{z;Ws+gI{H57ma}mLSex`b_g0hq~v3V?Ff; zGj*Sk;-}(bK;P8b@ckl|03Qu*xy4{h*1`kS$6T)7e9+HjXOd)@=Jp`fStH|q|LsZK zJ$JRBp2b2%I|Iw-Swu6xHFyle^mB4`-O74aj49g~HRyV7ja&YJtF#&1x3*3$z-L|t ze-QFD$Y$YM3@D^%kW@-A$%}>Ca!_C|jE;udis1u|F)RXT3dezQ$BARIby{{&wiR_! zb#pcEYYAlP=F)oWM|s+o`yEOLw-&G-3NEBTra~1l#jTKQ=K!GXJ$gl6fIOYxZO_f2B|O_#djapv!v+qmQV+tkHo>Lv0CTfey_ZiQn^np4B| z_q7)3i#{|G#T@l&{wHcbIdqxw^*o?!%=Ke=&Ez=Ca~UQ|rRCMKZdno?D@)TSHrBV?wa6)ph>FKlzi)sy>OM8aBBRqve6{c^6#u?)RTmnX&a$%} zNPHrTS4& zL8lIH?ON|kQ>O!%JtZ>Mu~oOy$mO-wiIr)aoJKtrUwl4NSCSUMoujq~Z;n#bY$ELeoHe_s86pW#;AHhFf53Om}213{Hj|6-n)*;_ck4d(fh9e%3Km>Yq`x&2 zKP_17r%ps84}B~DTlM#lU=?IA8|sG~rMCQ~Q#o6yMDZk5nD4#}lIhKPo7M6lL$~a6 z(KnD-HEqZOEu`fm&Q2_yGEz&XQZ!RbE><)vXGLRd)W>%{mL+m?$xiQc1pysnqI{>P z?t4jU`O_X_d8{WBQIpNGW-;%++}yS8<{CKc7s#4b__aR5e|D`n-t{L>Oa%>NZ{*Cg z!Aq+@dwhKCVfIg@$SuN-FU-1geu;wuonN2EnXRn{21bNj{X!?NGTJNNaL>0TZChj1 zl0hduZ)5cdG0c5>4%Nxm0E8yFCb>4B;#y@}-&?O``t^?HWVHD_pG9pn7u$4sC=%wb z@foRk>v*qSVeJbsxO2ow%Y!+{JHQHq_B{&u~R-Axkc2+ zfPZoM^Eq5CHP@U+X_R*`dO$YH*}Dq0kO7(7E+J4)i@Taj*-TRj1ju-KSzDYeaS9N& zak*_n)~7GkZGM|6iSe8CDq{oj&;)zTCGt`4hNF#Mc-P_8pCS=Dta7>;)pub%ND(Xq zr4fPhw(?LmqH5FC_#Sypb}#RN9lBGFg=R=cJdQj8ho9H}XhAXsUJSjc;PZq)%!yBp z>%uoPm!#H4U+6_4knEE@XR%c6V-YjtFZR%BVnS{+{CR{Zd21Auc4z3ZOvCchM!`O}71l+#SJc(VWub~WR8Ae3;C?Cv4 zJrsPuYUTr;g<0-DWbs>FX?E{@P|xNWtX=u*u!z^ovxHoJ{A%gS$*>-J+GKwnlW6l? z-RtcDzK{_U&U_y{r(0hBNbtBAo&Gf(fXEeHUmJAGnQuO3JvYCD4odWNyKQVLrTtx3tG^V`2`WCd>s|Tq zgpswf_Cd8huRVXQpglW<*wB?%Jz2%n z`_lvYouq?W)X*r*n12D>GE zxBH763Z5Z{i(~VNX?T7iXs7nQ&vyVQQUs_4H9ljQ6xwM*qL;pu0}^XiuzKU89+;ce zVkMB1k~k?pCHjomGrs^kG|u?&JY=ld$Dhx`GIwZ^p`V5)a@wT?bJ&Jv!7lfno3Up> zV$HO+B=*Y6B>r^Izx)q42W7U%n*Ap^bx5YBuDD}cWHw&$YK!p(t(^_ zr$%&8B+eMumTh-y?+h7q46?G^Dk-K|spC4tZ9%|O~=8}2mZGNk1D-4gi@ zPYE9g{fM4qM!OHm?6Q#Se+KJzmg8D7l-*iBfTy|@XNjmso4%A*d-qTpZOCD>TTwCDMs=48N^m+5F}%?G&LosND0#Ec%lsIWD_dxn;31K&|7v`{IPu zO26nyn(@j-X}*Ck+DF&ff%LYQ`02i(RHmD;TAF#T+0l=9PROwp&2L4)kUh&k@H_)w z$>7+ig{`cVsE_zKCekDHI^#zE&}(Au0Otv;k(Yd}d(2X52=fTqYYkmx35wFfKa4zW zH{nU&+johhvB%!eLqf*_M7mW{O8w}_zk8h(Y0@QGT^kFScA3N?vPflU7iYdJ{mKgt zsEzHrJlyy^|3dli)ET-k+SuRAvoJz7(V%w~?Z}E(Dz6x0nSzTSm#QP z7QTIOuc^$B@}tX%dP3x!ex`cFBJLjF%gR%CdR%faFd-G5U1|)EEslvm8}Rf*$3Wv02ULs^w4J-=Q$D-d5rq_2Wa--i=WP_W8*MSI%hp!ivf(`&R6&SNS2CGQUE+t^+>h z#k7z28SdpbUwpe^dRmqd!yF%b0c}k7mtiJ9mWMVeF68+QCjfb3Bu{4CRbE#M;c?p& zOD?l=Wmyw=fKF*@*;=@6nZJOE?xc;f_x1Q8r8k*;h5mk}P^;faf+6?i3DuxgCzDnR zP#wR=GGs%otls18iT$BN{ftK#ajetjOc>Xi%IQ^fCnrCKp#+vM62rO;V=y*jV7pBk z|64rA*P{}28B@`rm+OH;I*oS>mo4Nk-~D*~rn2cN0yvC1Bhw22x^5$-r@lykGX{t6 zfke((wZPwGVRF;aQZbVf6DCw-^b*0EczzVuJpG$c)|9uHmew^SI~_E7x)QCp zN#{^bpg#bwMoWEHO$>v?^9grd@+xAQq}cGgmS-!9LD0yVJQPU3tv~k`s#x2)Ms9h= zSy$yDm)`nkNVd_rV(Q4Z6b|pr-{Tf`!DmK@$!nh(%zrw=G*;cn)5O(BOm5JWUxP31 zz-mk1HMS|>1GxbCkH)ii{-AEOyxK}Qf4m0`a>C=Rz1Es%`4p`wScYPHk8qeQ0pqJP z82@gJo(fVjPfAGLHZ>RcUtJduyi|PZDG5`ZPzAI&D=IEFDg0tnh1f`xcusLH`u<(K zGq3I0>`=x-Wg`rts~q=eFcX8#;6R#l)$fe|?gIaVU-g@mA&{S_dw`NXY0Fq(6v?TK zbZ*dzB~)EJgSju!d6`l6`dvwgipY-xsxO$iCE+E^;jdMBLi5DGu*&vOGAHF53os{< z!0D%Db)x!Q&KzN7=c5RQD{oF=nkuYMA%U}VoIS!Y9Ze6RQ2!_>LKaG2$Yf)_i#a0 zs4~Xgm_pI$)V0#1XKgwjkQ6lgujA)(eS=~4OZ}ES^J9#mUdnWAAl!%_;))y}2 zDFRx<8JCrPjq_W2M-J>ad;||^5sjNB4lb4TZf50o^J{t#fb-r^;h7)-)&qfoE?}(p z6qGQ;BOnZJkoK4i4*Fe0NK1^!c+c~$G0deB1~gvz&avlTn~hptm(>klXkT_pNJ0Vn;oTaSlU>PY%JgiKk%MLZ!Qpc-k@bE z?k*T-r86BllRu>h$v0G|2u(#@CT4M;5{rm*U&rZ*jb5vjV-^%zG(f3DqJ9@jcpum- z12Dd=49~?oBHYSB#k_=gB(x2SGZ$@i`G1<3S}g4AG9yuEDSLfib=lkf>EcwdDplhoM{s1brtY2=MenIc(({*7kYjwD2QR`Dvcb7e*D z4tV~j!%=TS{iP{iR?CVfS2V-ce>Ol85aAYTnzT1inibr8-%FH>P&=r~kMq0ZO9R0P zPG!c5u|PA>eS}Yv57XuNfNS5woqF-hspD)9%&6I9lPHI|htitEw~Xqy{$UTT zUQ%oi6LB5mpT@E8AKwIbs1UyHGI|yHL)DQXGPwCGdSsB3BVS|)N-PGB5%w}7(R(6; z5WaOqPqfwGvNH_ZK*KKgySGQ*Jd79~@!kLWoQXaH817xjXH<{mHy=fPUjgeinjfE1 z-PIN_v%3)PSV$pH95vY6??{6s_+QG_q7DA@gmwPjzqvGMTh@Q0rG$;VfyVzTB==o( zhbsT?#QEs1WS!4nRo=hr6L=RGWwk4`(4?%0mL$9TeA ztd-J%oA!&QPb`(d$dg$MhIQfuSq_cs_tEu9cIiTKf<06|Nxm{#DE?k~X5PdUmr1gPyZbp#Q|d1fO1D}R}+P&8no!=Gn%q)&R4+~tBi!m z9$kpbd?DWCbL2a1_v-;je==-rzOsP>^*rNl;mbXBhAAEY+N!Vd_-nR`W|_!|`p!my zrHnS1-+0lIz*sOrvJ`h(RYg{u49V@kIYA8n;Sd!BX%^J{kg`N719IQi1i8n)8W_*w zwvpX?mH8LRY8ZZ78XYrhTmJ>(~&7t08UM(@yrDgM4A zME&n=gHL`;I1)q#RKCYJ2|j<1Flj`s@ZEkHM$fT}XZb@u>bV=-oh~5ygU*gix698#dZg^&T47(Bin&IAS1@<=_XNN3e z9ptxopu=x<723@s!^;KV`s&M-QG-FBHOsfXa$fP3=YFFGJ=MMzm8C5^u6DbwcI~g= zCzqK$qaOGVV!80Q58Ard$G)!L-8lg${6=M?`fL-b6nqo=vUps)TgKyu(l}95Si_!f zj?mS&C9et!H{fe>l)1;-iYDq&BP^v5Jll6j?xC-dyZ=Ah-U2F)ZQJ`z!UhsFxHbex za3{EXg1fs1cZUk@mf$YI-MtC!7Tn!k8kev4KIb0Y_rCMp_ud$D{l={ST4Qt#s(LZk z>Z&;fXgNqw)=6Gk`(lrwqi12&U{^-6jbYCVqQ4jZ<5o{a>Dkl!9kzmhxziW3wH+_l zxixGWun~e~{+LvPIRbya*I9w_9Ceb~Zj?IuYKR~ekfhVByB#JXn0a{_nOrewEWd&&xS%vyL)AWm&frp z*DLN)5;3zKL(CBg6zK@T(L}ZV_?8ukE<74;ZY3#h0Qz36ksfd4=P7`paMaPQOrsNt zj%mc~K4n?A>z*cjC1-c16d%nPuYAd-Rs246;!DX>GhLZBW-FZ+Yn$;4B;OcDo%;c1 zL2iSj*Vnex8F^{jj&`9F-G#Gw^D(out`Zl$e8{6et4|4eP}^RB2fM+qe-Fa(bbO>w zsVxHm-41M5?RR2kJy>-Qy%<5qLGZQJm56_o<*qp zAE(8u&sz^_-Qe-$U}XyWJUyn&x}e|77_59gui7Yo+J zklD@uH&TobK3>7UU=4eGQ-~L>7wt?^BvraAM5H19H8FtEZ|3;I3nf#UYCbkwm=yoL zJp^l=U*G{g`1!>d@w+F5b%qargE3)lcuuTcEOVqnkNg0K1fDq62BmSCYmJNafp%-d z6mtNpHJq#34t7Nk?<+(fFy2{GUad8Ag#4 z6}~4hCl*~BO`fLZ%|;lH3O;Yt>4(5AHuw^#+HN3RtJs$Nd87@+s*xUbN`-uw=R0>1 zfVbO4K+z@{@XQ{f_y++0a{RwIw1bb?TpK27;WRo6R(jwR`3;pB=BXR$HG020=@$xs zWkTk87ztVc^4SV|8Pw4%?CSFR1Z8cBBzu6YhzIzC|6jq7Xq0jLOfUOJ;c55_VUBlz z{0W-OI|5=Vi+`>haGf3U&qmi z*iwFEKWbSpQ!j@N=oke;h!)XmHlxvK^jcL6=H3y;=R@C_EuF7Y@6xO@TT$1U06W-& zouKCYHFE3?mmlIUJ^E{&-!4}56H$rOUPS#Ay1}FM&FD0M?t`q!tHBMD5D@ths=cJC zJqdRO@bUII2k}co)kZYgz9i6kPGG3V=NjGTRHV8%1lz-wOoY-lo^tTKJP;)qggb&6 z3|p+1=QjLHkP>$F=FDro#!Ng-r9u#MmIR;hEllOAKSyxTZw+rW1SFy1-x&V9fTkJz z=V+uO647G8PW+E0{{&#?ZD}7TW?;K5?n^R#%*8i3YxKAuA-^E=Jyl*>*9n5VNma{8&!I_S0NQKocZ!+7D_x8b0t$Tk_WYeo1gvqx&q$P z``c!s!CxYA4@P1b^}ewee;X%UKxh#3rmFL|Iep(lfKkvn@g29+TZnK0vC!k&{UAAh z|2vXN)GY7U|FN_Zd>2vh&p5OfbZ>tQD<@2s^jsTRINiRWCRl_TTW?j0vP#bg* zIpdMX&DnvN%yxJ`;l_Kiaj9-Cl3EcQO)l2xdFMXs~DgC-6&* znw~P#9u8I(D`7@_7<$ED{d1J|l;BP`?d7hw_O^p>{chXb&6;I-Pn7vX!M_9eGx6Uv zF+nU?WlSY`Inn=ejM;9IkiAX(GUirI|DW7v1`|Kxpa+i4UJ`zkTf4p}VQ<3ojp#ol z;7_!_ONLS9tWOA>Z_AZh6x6MhR0xRYi_OX{O0p|Md#Le?&HnG4-U9R-iEwJBqOQL? zz`sf|yg2c~Y&>wA1iz09#V+ag>Ejg6<24<+d}m>P%0G-Yay*wRe`_*e8D>~FmtlV1_^HxvZ3`n?&q{)oEOK_w5;IY=IqL&;;a0g^qM!MF>g>Ft; z(s}0F64X5cp7W>j;tz{I+?)4647M$ThWNxzPVL?)bZw+#Hp+TA$B=wCe8; z-@aqWix8UEP8Uusa81h0$1hA<99db2YZgz{)z|41)MRIpGCPgcp>X(-qQogoB1~dp zy%eWaBly(!5{1G?4330kE;?G^RiA_Ij@EoeYg_a5$>@rG>kOYqM(gzj&&m$BCs>`S z;vU<1ML|8;Tf3NO?Y67+48MiEP8#LV1u`o7R$4v+gxyH+AZz3#@R)(k)?@0Q z2Cb*@mXFZ6d&eKS@g!hm5mi|DxHp>2p5Lj3x@J>MP^K@!f$)UmOxG5h>spsE~0{bMZYO6A}hV>ze8~u?HAQT`iwh`)JRP`OeOk`;~p@%)&exH?*JI#mE(@&oAxM--TVUlfaM#`gupBakL z%MHG$nReA5_PUc7JY|$A$GgkZ=kVNLNbFy(Xu()6^C&pGvCt&)YBht@-mq z_Mb1U(`&0AHqp}|`0;0n>^!Zhs#}G9%8|vLjZ!#A_Ko#3BnV`v*qQXQwi&tr>k-D+f9-reAx8%Fm~Gl*ihGz$5N-U`27l<)y? zR}5h6B{*eYCBtji#1nq)r==~H zp>3qf`WPn<^?KDqE2A|XY!q6;u4OS5+|ge?AMz@?Fyj+RpV+Fdh^Ci2=RMT8gWDq3 zZODpG^dY<@tm#`G>Xx3zR7qwi*nt*+y(HmtC>(9C24>}m3*g{6!OiAxv7ddq(^SNm zPalC4>EMkn)+hJ96O*Z7-1@k%nZdFkCG?By3zm-5f_U*O=v8*U6RsLv_=`C|=8!&G z#XQx00yLG{Kp-oA36I9GBbSOt6xrOZ0&C79&B*<_D;kavD$hAQRAjWh-qC-{f`NKEkMFZ64c*$m}Bc8=x4ekv@OW?B&W$D|6(6 zRAdXQK)F>ev8=M?ppiZh_}Q*>w2`qYbrg=1C|sBkSGa?-1>(8v&S%4`Yt>4{N3Dg^ zHs~V0F}u5PW*2$VeP+M>hJ(qIg0KI!-!eJRV{dLRi zvW&b$r22lQq5f+vm`3Pod+EFAky|4~KcVbFgWW2_{(YL0V z@08^9PTUA;lsRo*bUqZQM;i0f=DQB+ZhU!oc58LoNSN^*i+t*=naf)hnw-cfE>c-P zoR&!}9#>KIs736m&lh!it3%SsiKA~vkYg4Cy*fcneD5)p?tCS53%D2WBW*`xI1o-c z#$D?@q5#OFhi&TF%0V&`4S{q~3NF6r&1O?dPL|VE(}>Q@+(DD3EsgcX($X4N48M9F zm+W5*JCRm1O_hDg!zA&#bNM#$derfWd#K~2lXcv#s%xsMi+C{ZHqM?GkS3ocUC$3b zloY-4l;>8R1ea}Jh0NlJ9*W7&y~lqh1rTt;I!xrRZAcH8V?L^OEs`7PU@&Ql^tWdJ zP{(Zfc@Om7w+-Fvu0Q5JE3T38c#B>VpHFR=oWo;T7@L<-v+ByYj?}`sil%u?xkz@H z&pFf%K)$6;<=PLc!ZZ)nX+x6B-G>v}OpfQh8h>H0K#V(uH!xE%mGfmL+)h5Isd3>Ym*; z+#I53M1_s^cJFLZ&kigy@LWqS`f7HXt9#X!fHf?g3r%R0tK*m-%<;TyXFau8QyAEY zaU^BW?(=VM6+N4@dHahg05|W2vb@b(b8dd^4hGZn!K4R!a$U_&~ru*fU&Z$3lFI z!&jvlPd88{3Wh!~ZW*smU^ESvRO>TZ@=bbXAR9KRT3yWY8(NB*7e=v-!I3nx-gl(g z_b_bzU!g9>p!GLMvQaB}QrTxQnmz+j^%BZ3ETc*|^%6linm#=Xq z9OUGbSmsv`t4v!PAF0%J7U6IDpwL)URKZm*d~rrLnbC9R9xiJyaZVnWVKHaVafTu# z&7^w5a(*~($r67kdvdT&ycfT4^pizI4KVj9C88z{S(4X0XWTtv+N?$_2ZC2RZWbYS zz@kB>d08PEC4WDg-P`9SwhTQ>vE?CbUa=Dv_l$9N0A?iq36lx>UP~<9*&SVJE^HAWlg334nM9c*5vf{~XD(_*`L;o8H`!{C(H<;(#sR+F{;AW&!2lH`C_1 z`ji>xi+O9Jg<->HPD^&@`pV{rC96f~Q;#N4ESR)d^~_tRS{qu1$(&vVs63m}=w3zA zrkL*Jhu0LRDpzl0(;OE5)0>$gW>rw{kc%fH|s5hBd8NMdF_O8OkCeA}E4+XyylL zrKCofZdk^j(F8W!o96}mO7q%PCNztm#kVPEx8Rx=PoswHQe9HtnyB4}O}8%7v&UBV zHmkJ;Olc1AN9=wVh3hCbS?WHgGg&n5$<0`EtaL`Ss82Lbz;mv&N2IB*_&aRFVw%(% z0-Q9}>i>YK5~RP$Ly3R6v-7SaOdgQHS`?;27GYwonpCf^rW>~#LFbj?_xd(Q5hBs3 znY&o3aLjkg(t(m}3=div^&8T%fMU`LGuJ<%3R&(>y(I!TjHggiLHzqE0YDjI_=Inujk3E zayuQ$XUvMl!s;XZ92=7b)|12O90Zz^Fqz;3PkeNuym)kTs;qc)2lt-Tbp2Ak(84qW z>PN@Yu(UdPu@KO#DSUbjjO;!c`~jI{8%SM&_ee>$*^O6tsYa3g2$+=ScAAhGu2Ez; z+P*;gFd@_Ze)|$hbX-QhMiKL9Qp6*cDTN>3Eg$VZqG7@eM$Dtr%toa5{z}?;!64FN z*she@1$2XV^*on_s_49PdLUcfIaCpVd|k1Y4jlfPD4XKeU2TZ|rLliAqOG~n^0n<` znd`cy5fE0pmu=>V1*YcJN+X~sipZTGy0?M%CZFmdwW9sigKt$b{trO6q8;x+uqqk* z1K1$rw1X16G}f}}o}=l+`W_Pt%eo#DiP}vkXx=C(WoNlK&~#N~6|I|Ib?rw@NtO?D z`k>+IaZAuaiGCXEM@`{s){hC#37=xXSAEz(LW*YKpzqy&ggC1K)fLZ`y-wjBSoQRcNc5I?2FPi5#uP_x+b_O}(EYF~RQYS-7miqjS~ zR+XPq4%&E47*c0zs+{l9R6(|w2|>0FoS)|*8z(gE^vs=#`)>H zQLpG7zCH&Ek(|zOGo-R^rv@T+|G5@7Hk$HIib7?i5sZggIf_W`q&<>HyYb5|w)(VQxpXkekQz!Hxvm=#x z#r$7M(+W9tU37jPit50bRQ1Bacg4M5MqEqaHi&w*%@6T@}HzXp<5ngBms_VlHn zZ9FZDsp+pD$cWh1YsnKyaf;L8)0X{mu<})eS%<_&vM6OrJwsOwnZFwEe2C7aK8~~D zyP-IW?Ewsjt&qm^uEl}Utja17Xf{x0SB4tEu z_0g^+H`hYsNL@~KjyDU@>y4v*z_pocxh%52c!P%Mbuo3`h9HlB(AjIEZksb)lXaKG zfE7bFqFxMFbl|6AqF-ZT5Oiy6azj>MdH>Q(Za>`2Y@fDQpMyVK(u+^)``s(>zNc$q zDn447)FZBHAkCLLhOPwvamNLm^%Jg06dpsM9#Q$1>vtPtUE+Yhi6gc5#*15EzDjQz@Wj-KZUt?4N<5KB{muTT37g>rC z6<6R}$o>gKFD!vY&5mJ8|{b$ zj)N|l?Rb`n#qwnB03I0P(7*vIvI%0y?Es_96D|c1{+++4pV)9Sis`)f^{t^uGDEJ- z3tfp7VwGHC%4g!sV&;<`CJyYAcD#mnL)c%~gKG#x=5K}y%;dJsr8X=>bHAR{F{y997kX zLTJ&bTUzCBxMEw3q-ubfPHFwG?+n(2EkDsuN1k9j*Vl*Ny?%>YuZOO+fgHiwzy57~ ztt{s1u1w#q)UG$Hc+P~LXk3)Aj{YeeN?3a}{uzsfh$3WudWlK( zl@wO)4^e)bTWOm+7JWDKH!eya6p2i~KXKL15&p2yU4CJ75r#SSH6w|1K_BDZ6M+EvY!wEC1D< zF1WmioO30V)f065G34>%E~TI?~ zwEwW$2)I&bzNby{iZ9_)Q6Z)&j*6S=9oRSga`#GFH**j1qnA$}!`LNkGFV^&$L#+H z5ugU6BbVM#g9FPq2wdN7DrdJy#HxmzQ_Jgo7$_ETi=!+@-}=82b+UCBDnI>`$(JV- z%t%fieAtJeL$H8|DlBBRNGy33tieLSfK!<^fvfrQxq!=i`s{&Gp0!zkwK-F3nEp*# z;UJTilZUvnWCT(g^#X-*9ok>$enxf1x>o3_@A|=;gp1N!9io|)Ve>1WT|B7R9#o`7 zSU$e;?2=oouqQ+L9MO+5Q(wrFlaorFptxmUq$LwKSZL3wOrJlnrPK)gmm2x)IP(WL zm7Np{T8~D;djH<^))P)3{C_5XecYe3KGIuZ4R&cQn)^Jg_y7I^3P!r|x z66$1S(dr^ImA{L7L;fRDyZ;E_pO1f3F*vFmcUWHk@!{)D?VI9s9%87LrepoBZIoiylgS)2N&xl&wg)j~PmRiv>01Z6#wF>bpj2 zcbOTvlKB%J|M#G*S5#f{GP$FBl%ZUq*^${mK@Mfn17{q6el_JjZRlRk(!Dj|$$ZF& ztglw_Af*D_jsjfco91Qvxiwto`udo+n?xxJ;`RDD{4T<;WJXYj$$QrIsMj#3ToovUV*=CvI1hFR$nU3)cf?0e|q z3FdP&=`|pHD!U}Ve~?@xgjP8w>`utJvB%VnTpyJ8 zPDjEz@|x4U?I+sKZkqt^jZ*zDi$tw7$742Dh|SrCISbcq_`G;3Vv-#aHqVnjZE*K! zfDQlDf-K|;D8(gmE-X!n$WEDv)5aZP8=#0_CfC8lh9=wZcpACMWz>z(#Arj;3DZTc zCwRmWJC0%xq7&m^*i{TCB6uXpX~S3U9qb%x7*BOPKN~ppYv7~}zDU;qX()9&IqrX7 z8{NJ#b@A3b(mFmaJSM^^Uu;`hifXzCF7|glWwmxf;0J((vyauF^5iy6$dl*3B=zkn zBM;;|r3|kiMH~JTS?xzD$vg{fwgx?2#7g;cFtxY zBkiM|ExR~3AE0sV4VHJr$}09^=)#<>pjl`-sx(&Nm;&1G3lTCu^T~H%8k1{!gud+@ zn8LQWf$O%vhxSO3-5$1t%V8UKuVlJDbKvQ|IiLoImaiS$z(Ln?Tm$-afkP zoUM%K(ig{akp0@{&b!U>V<--J}wwPUGk9&Q?c!hsE&7*_THxH{mm>7 z_jrFVc&PWPyZOo{!X+&DDLMrH>Ll{|&?e+M(6PnlIsWE|k#_mS{k6D?%F&8O5=utl zkiV2MGyHz1R>>%@rOv)|IYh)*%M_2{?PqFnJIHyGO+jTL3~FVlO4XgdsAzT%vr>-5mL zVo6po4;BAQJc@WxbQK7@hx@>;jfI^D&rKA%VTUmCGe}7CE+?`+&}r|UaTsWH$^&+) zAwNnfta!g1d>(bOB1#wIP49j+lL7q*-^To5-bb8_m7ls^)<5k_ewvrOv6v8Dv1(_7 zE?T(9!}tzS4w&Kf-=g%8aFCV^6NdaAI!06rNp9!hVr?6j^}LtrNpr=G3d|e&9@*U4 zvj4raXd;4NmRXuW}UqM`wA2&H_&n|yAliU{Y|P1dak3V4iB%|x}+QM z+B(Y52%!7~uOjUGA8eOiXsB0s%Wadf^AH7yTnCzjJLYzN#aiY%Se=fH{h)3pt# zHEABStTc>JG<)eP>R94Fm*=}w6qHi-S38*OblP8&cvO^sR+{9;f=Gp=Q;oBHaL*GN zjonQ`=l$jAHRk9w;K+<2yMVGUiQlsXA_q&NlXQ$i;O#yLoDM~b|J@~vN!OmFw7IB^t?SV9lL zAZFUlASzyQQhi1fJ6Sy5e|En6stzomt1HUnDPhCUF(PhSb-zLxWVoA(TxK0ElZ8W{ zi6awQFSg@$LIdv|?^P6|gCg7Xe0-jG;mPh>q=pOHoIe;*iG8BqdVZ{TqzM%7e7bJS zx8O4kj+DiPgzc|Ex1!t1Q?oRVogn~A(U#CuRn7x@XuT+w*fK8Y=umMhgNo>Q8Dlu> z(gv*s%j+kI*s+cj-y}fT(e1?lxFo*uH^kqN3yYMXpZ1mCB>}cXk?nR znYqZJu6M3#ce8*QA6uCu0;x#ekJda!7=*&S9x$$d*8OqWxZzha_AeiX@g#sDC~shV zykdZ<0efc6J-izkH;90V2!oLcKQDne&-4!yC(eT!1##XpQQkFC-U^Y*(>23>!GaE1 zX?1A*I?j>No-T_UCy(%wb@kP_<#~%6opZvJhKKgYhHNG-a5fcJnlZg$&}a`%^TD^> zZ#PxvD~ZkT!OSgMcR;boS*^aXr|xBptNEq;#(U>G5eXBSt==3Kn$buZ(^AQ7Lms5!BMANv_zxvWH&jjWG74fO`&>Y7- zT_L+`ITsWs(+F-17t5$XF#=W<-8)tkkVlv5<}94S&Qfi1WY$_ls2y)fraS z!eO1Jc*h0`i*rW44vTfE-TiaM#x%Z*@ZO5aSzUWi>3I*I&EaK_j!nr~-7!q@EX4>w z?^t_z{i;p4A3#;TH*s|QL18h(an!G!zPQuRVN9Guolq0!sHVMQof4SEY9S`2PLeI;Tn&d#VLWG{6l`wml(LrRUGnKS ziOr~NJM{zU^~{H?C*HEw)ckP_&&|K#5S*Z=dnRqTfO`8v39_#TTo<+yONIc~A49Ie zp7jL}4EwQH<-29GaYt8cLK*bby<&UiYmYciD=&4GV;+IL#iaY?W`;K;{_ktX1m#|$ zsl5FSho)+GULF&+`_(=IDQR~VHK|19R~m)ioUm}XDJgfUsj=V2khTUbd%U}N9%)HP zj28H$2f1#$X1Umw;dD4&WLZf9SR78=3bWyV>E=Mszy!y=4rs{lL6Q-(m8fEyDf12(U%D(Z_1)eX)vzz4Hb6xH4Z zk#PAd+q{{#W0R}fX#(<7RlBb9!|_q_xxJh^3N@jU3{2GL%qn6fdx36^Mec(c7x5+Hv?NQS{DRfl|;tL1Y<{zrO%9Iu7mcQVL=2T zB75Y#>u1NLdh|BU(`GDd_*!|Vwd9{pIfF_r4IZn<0o4z;tLC~|)~;IC4IV0Wu$2b^&jitOKh6>w1Ohesy^DgZOIX z$_2D)?P(@D!CK7``%2WK)QDd}KFH!jmU~H$V~D7I!E=78)iD=Bs#lUfMns3Sy8N~0 ztk&P|4~i8NGF@aDZuh;ViX9d#yB+)B5PiY3s!*Q_Dfj@du}@@MCra35!)DHl)E^$l z6RzQqnFbuc?A81cwZhmC{Ekm-kMUTK;YS(4<@{rpfH8N$=GV}d0nk}r6e+hp#}P$> zAa?QXPF9&!erndLKC6VP_}&M~R#`%!sMo}I7XGO27{ZIP|+@jGL(5@Mo$jWQ+;;*bD90!xENm}^{lMZ+;H@SIh08CHee zeKD}fb#d5!Jt#HD@}r2d{7ZFF!wIV$%aBo&|{W52wo|)JK*n{tm;s&?x~7s#~pf+v?Bas ziP1scV|}ZNu~!?dLvS6`{Ii-0zNs*n4mH69`)d$k&4{@=+GrK}aU=7&l3=>j57mI; zK%S|Xe7N&Tq4as&xkCp8t>!#=gqsRF=NFzozD7ao4QVZ?bUGo=_`?4bMsN+D%@^ue z0zAZ8(hL_DrZJAeh9ByB8@FTCG?E0$mjbW2CFsW%Mt_)nHipT?kLHW_d{;{z$E(cz z${b=hlN*Z>TPAEQqoN|PMd%@(FQ#+)9_%t&sl>d|6KM8%t0&7HRLNjU7F~n!HlI|k zG>s#+8dTuy!;xD3W_JR%ApVV#1$k>~1RyXeBajm+Q0vV6mjU6MmamwdUKSa@no91E zP4zO1nHVQ^f|@aY*@U!L&8Jrl=D{k30V;)5G-S{+pT?xJ$_?fXWs#n&(dFdlQ$pbR z=;XH_>tArqxOF_0kE$wRS1(}>Ia=tcoZ$>%nHbb1>^^ClQ8$MqSIan(K+6K9>({T> zvwXZR9;UQIc8swYRvO|FYXpjlJyNw;wCV4OKOt&c9#46=sS+kXI9>&~jRqXHEtHB; zqG_D(iA*AK?R}ZVH-#~mR8;ngd`58NxF>bHN~dq)bHseOH9~7U`O;XdFe9O zYF_W)YQP;C(Hi@#YnHq!1_atF1`ZvQd+802%#bZc%d(wHV47pts#E5MYa*69n#P=` zBbJ1l=U^<~9~nM(B(;mJmHZUjDCt`^u&I_fL}Uw6UPE>zb0)VLN~scS!L#W}K8=6i znT~yqtJmK-MZ66t;cQE+H{LmSZUI?zm#?Z;O+Vm!gDg62R@p1UfSch56KAHA4jaRS z)3O#Ci$Q2Xor=Mm#}=G>?vvpRgPHUE+v*Y;;tpMdrJGMr%m@7xr`PHXPb3-rPyKCM zh_kQ3!R7ik=MkPP_t7>x+_Of|pOQ>7PW^aNq<6&L-YeLW%&H27QKnF#i!$HK{|Lss zs{Vw9XIWN2T~rC14FneSV~5OV(`(Z1hfT~e+vRb5FMW$FN>-=v5nFoJd|c|I>46C1 z_&4Jam29j9$`PEMYU%6s>ul~pwCgZ<&Jb`mgKBo$ z?r5#+=kQf9v{K($#my(rF0$Xt^}(DK-h_>UJKrhfEo;0OjOYZ#oYoWyw#;nMJ49 zN{tZbe0AwO2J&xM?V}$OS3dB^Ox#MIQ*Z{gL6g-U+^97Q;y=aUTy;E%Gn~G9`kt`) z;bLx?=Y*YaMsvS(GpvPm86P~Pc~ZJF*owR?2JTomJX$So(O#xc-#UU^T_7(Dp1fN* zH1?SD4092213Zg=QTv=Iex?rDDKJuwB#6tSM$9TIsuod8D;>d(Q&Mz_DJYpQF78e$ z%5j(a2wi~4h7wFo?Bm&0<7Wp3Yfdq;YB{Pf6ybDRnfv2^uvRskQX7|!P~8x9fi$^m zFXoUJp?0^LSKUcns<2D~-7g>!cPcz(CWW`_Z))Y}0QAl&gIcwg%=lugbyXkr>(k*HYk zQ^HdMAT^zHNvW<9HEn1Vnx09~r^G8S`+WK^3C*s_b%EpAJu}a z{M_Oe`XjeD==q~tD-a0ewT#;wvd6RE?%WJ-4nH+|Bf5pH4A^|&zQ?&w7@&VLelo5q zer9iLZRu?L)uyq$rF){w(0rfvSaweItn*9^R0XZ{o{)LmK0bJ#3qGSgGtDgk1AqqK zA^!$y{Np3Z)7#r%{zYPXVu^YpFylvqeC6CYNn?p55;lafgyOdRa%w`ctW$0Dz1R4O5u!87CG{UXhxq&NOC#xYrb;C&!`-kDkq}4&@caT6c`_r&lemS1uo2cf9n4mL|w>U$c>dI zOGxMgD}_GLK>|TMW86LwX}<-G>GQc_Kj-fDoH9;6l9mmn93oPlx%Um5Lot`p-4LeMviD-(nb>WuhcZ z_lR2Q-lW0UBp}HYB~g;fzm7YiXj^iWs*JfBXVe;%@?nH?o|q+GZU11~31Rg-eN8^M zzN3^SOwf>%o_DC)Twc<@s9~~v*s}V?In12TvX0}UP0GxW*#n9{_h_m<5hE|!z)WPL zOVn7rP_DxeJ2@iyWyCG;(sPw_cA7?wn&Bj>`y;HN><0C=HdC#s?BqU>0{fAiva^ROa$Y-bz5}}+IUWFk{3HvkteR;ZrHLX z`PKbqj2xewtU=<0kJWESN7)g>3f%xOcq#fxLF(9LsLd*hZ6y_8l!YBEum7cQTqig1 zfI%6-%_7@0wwZHZ-3a+@Kv--@9Hl;fVMpaxXUo>uC0&ihS|>jV!osjpP%;H2j;P$M z)4GDP$R0;WvaW>k9q$f9O`qLBRJBaz6Qr_o$VfQSIiVqNwV|+f?djOOA9SYDJ>u#f zM>;UstqyCt^hyf=qdli#a7QVE^<%a+N)f5%5FO_|XajvRG>2v0%}UJVmnae2o{ctd z4s0W`EIpWuUmC{pr!qVs<-$Cd=U&wXb#27!TPCXDhFuI8?I5Cd_kI7AAV=X((Y-O9 z3E3v{P#P{>`FuG@N&M<=kyzZG;MvD5!9U4<=v-VfD`*Z-RPEv?kbNHU47+;f^H#=f zL)}6|720z&7k4Ii)ZsaHxS*nZ*hz$x({b^^%MPvQG`A-I8a54BlO`I0#`{N?RR@AZUU z`f&9gXK~8JTWDk4-9~fQQ9@HT`_Ulp_#;7-!Va;Olwz>os8&Nbr`3od$y#ZV&ch|k|_;GaKvF4L*S$U?hNf<=GX-tP&?XIS!_ejj zZG^jyql~_6?BP_8Ekyl7D*1*X(DoVHj4xezed21lKs2UKTq=lMOZ3iMHJqLE_Z`=> z$l#NpIce`ziVDpKW^eWBZibx%Q|(8jHqz$7@b^p9S$#uv;)%I>9K@zj4n>6N_FV{o2R3jF@7b6@zwypq<>MW$jmL+J45GyuP41_use;Ag@O- zgx;W)VGMkT-C6U8c>@GBEGeq(z7OOKS&L3g$dnJy1O)SRv)%-|f%5a%cdfz|Fi2zv z`oH_~cm?WQbN-+{{6URWm>h6(vZoq4=9x;UQ1_yGf5nW-M0L=N^==lwPfK|qJ8k!@ z*;XZIsV1Xn;$;?Z*46Z{I(yy=S&X#}goJmPZFpP#Td^waA6(6XdCN zM-mj(p-&}cpL??EN`LW0-mK03K7$~mGm+X7?{J>HwpmNdz9^^ev&Ww+V9x1DsDx5g zjMmec?}+A0n9spk_JR`}V;&M2y*(ejE%SQiRZ`iJQ4_k6J04S`Rv8)n%pk3Tz2Bl3 zTBG)H)_{HaqId{k-^L@QyovS+kfwN4PP;UL9Oda)XaFDCLBus z;B;(3Sr6RYyM1u*N&Y{f9C!?s<-Z#hc>K5z`jH{H|CaYRCSizNEPh@P$>_!1 zhpzB3vY-8*c+r`5GcfBOF&xDX#wl6Fq68mYd5Ij!ci;4J%FBujal4}rfQwf|xm)u2 zg$6xK_+fzzMTk;O|3_YAEw5Zt-vygX+OgDPk|cLl=`#ZcxD37_9w=a*{^sCe+LtyDMj*yDIl>M z6X7eB*V;8AYUcYe+V@|fd4z*$!)de4HtYN7C8{WeJF=k@qVcrcoSs!hyn?S&J69;& zfgdCmA6h!$)6!eZ%o;tziWq9R6yMU7E)ZbzEnMe)BQli;D`()~Cja5FzWs6Uk9R zYf!;vq8e8ksMr-NguX6vgO!aHlW$*xkSoHHla#5*s)4+=Kfd3mOQr#%uSdM@;}z`2 z%7tGW9ug^92-uC=W%BTGz5J*f1^&E6i~p^{?9*p#WU4p85N|@{pmj_XWZulRPyV_u zQ4oUs5GZd@I==5>++?8tKsLL9?RbWTLr8u@i21YqR$vJBr|R1DiC2(c$C@5zkY6DR zd?yP0AUC0u14rVqEo0}J-cNLOQc-pI>6hN@)1ar;LvP@QS6%kTZ}wg2s}JSxj^&tt zi#>d`l5NzLWz?5tWy8}8jZx;+#yqLz`2XSSuY>A%o;Oe!2_%64!QI`01$PMU z5ZobnaMy(p+}+*XT@Jzh;O_43b}paqTfg_OTeoUv>)Cm_XQyg+YiFl>y5+c>RFGGv zoIF>FSg=?~epGf0R^PWk7Z&OG@T!HpchXbgMlKZ^*=*Wjaw?{Qm zxH9-?|EsYQ*tHnDSIM@SDAFy=yR)bBOOQu*PUcJ%%>D z*>+sXF(@AcdW4C&xG*?HZ+!cgnMMcA2}C2n?dhS`+c6I z8&owdn$Pza8l%ilg2JRhDtxSbSFH9yT(tkx4CIun*%rixko98;YV)Bq@5sGKxFkcm z;t6gX!)Q%%$>?ZM&2wr0ZA#Ym#9)v}vUXz$4~vgTjF3n5MaG*Km{axw>LJDws*2SM zF(=jJLxvK#L4-qHk?O*ZvQA&5BcdWD-aZRO{0hQLcgrJm*=;y{0&(QX9JU&dT|*#T zqwsZ;tq-%qxi{b1#<%C5q@_J8bT=JR@3GH3q--+AA>5VTHZ@O0(_+|Zvs7gpq4Jlv zdzBL@&(hg5#ZvmBiCW5fw6ZyN zZoR}Ao%=ufWnfD=!?pveJ*@pA(U{+)F888zuY@Ob?H_I9%m+4L{FTV1Y;#@HY(8jI z`_owH{!jwLvj2T5cgrPZsaZwb>Ytp?-_WM>5CQ!r z%Z}CuFG@iYi^qdh?>*)f(zZF1NQ^<(cJC61@c{A4zQP7`o_y}buGoaOoHL1kg2JDp z%P5|m>e;Q5o*6O##h~Z&IcesLhCN0HjLz=4C$+{KEZb^3_Byd7i}9!vc3Xes*`vg{ z@)$7|G`@Q4qiAAU8rSza<5kg;CL~+*D`n8cdTc$@{z@CC3Wc}4N z>@+_d@t^(ya}Q^+P!2n1Jf~3wnJ*7_&jL>WUWZpSLo+;E>^&LBtpoNl=~q_jg4ZI~ zyh3ZrinnR_($r~QFD6+o9{>zO170kd6$;Dy$wfou)f(t&WlwiNfQ*x0aTr4041stQgcny=DwkTa`{LhArX z91!OH4;8F5AmdDdK z?}o?Sd!+|3f7ck=4R_PtXWYhAqs&6IwD$zL+Reu8Wls{s8}}_Q{MgrJB>NgSWg!VbXTS-Rif3fF$G2UhW z&Sds2?o3m!n_#lSRwEujE`Y%r=zd{cc4x$O0|1YN5K;$57ZA>dy{MHgw65TP00F!Q zE(})`^g6$CR@z-EO37Az1@5T{;P%g0W_<5{ei?7gNES5g0H5#$)T=3ZiM0$eMINdJUOtNt9n&jzV%Q?2=&w}v-n-AA5t58@&VD|> z$>^H*94KxZw2cd+ty`F^M$*6GRIYu^|wD%h1e&;E( zf7e%;L9EX%D8SQu4ip&uyN@8z=N;487gus0mE!DojZ^D?s*h`ElODHVxkp_#94V?u zliw4*F2p@Of#2zvHeO0ak(PWs7Bubu?at@IPgPW`ySos%rDV?=w%$j3y15n;LSDBR z@YwrpGzu%F4@4fb_=l^_>;>B~qV4S~T6LGxcec}p6hl4cbzlM0G3m|=dTGRATc%gZ zb9$A}@>_&{%U6o(GDMJJf7&zY$2?~3w9uIOz2x5l9K?MR)@?jl(nu?rj<(ZdeSK>Z z1QG7HWq0lx^q<{rp)oZOSwA|0_LxvXOleKoWv}!;?8~$K!<#R^=iy!MZ~5y6ybf7= zJC~wBhF_Dm>HrzN<1FVFh0gwOIwPezy`iVP5KRe-yON9iCgo1mAU?#;)U0>$l+SPD z3Ey;L@I>!NolNEp=W50ys4x#0*ogUOGDk)o9Fd=7)DdKV>qH%w9AvO$lzP29`9H|R z6}2-J>b~#}w4mJE1RVO?f9r&?&`L|&TuNOoDG!PG*8*^SfBL6ukeXH|_c8*1ouPTO zmRQa2g5IC6YX90mG;2?8#-DWjP=+sd%|0F;1W{YN{aH4G=~lN@>b3#@#QPe6$IZ*a zt}FfKiL(Dj$eeCBI$3ZIUas*B|7Mt;koRqzN7vRY!zQ~|6d)G2<+FFC>`~2oC=VQdV1zt2jX5#f{FPMrw+bgO1K!rUOb2dmkAg%pq=EY;Z zt$&?T9|zv5Gv|bafD8Fw%mk9|F5SI|2saQPV0dU?PzyxKq$s8htqdc>>zF0RyVC(` z%V0cNUPQ;vIy!7rxgY3Q&T6}8>8dRhW~$#77vt#Zd4lmZ{+rZ~DxWqvFpOz=8{^I$ z;q!{h$4qN}w7QL0wPft5SuQW&bZJZ4Nifvyz+lQ)wK(ml@$4vAqnjI9@-+6Y=-`|K zzk}Cza2MQg-=BGN=dpM~YqbqT@S9n;*PzbzT(+?lho!kP1|tj3a0q1t8Dt+wH~e?+Uzraku^lxe?%#?%6=%htJE ze8B-Nr|q$yiA$s42CP*#E33(fraG+Ehj$+X03S5+PNFQHZ@U3m&*>-^3005eKD|*F z11~?`gAbe)JJAZeh#O!rBTnqCQ@$@Q@&jk4cfpoZaoln1Kb2Vtv(2;xSy#RpWY z1i5NOkK)>3EzjS%zl*hsBLT_Jvxpg_bbs*z@IvTv>O{@LMir+O9hKN;$ecQhF)h(8 z$&Z4*ebHr*N72Qzq{sWa6tEN~o?|6CA5tfJ|Mv`At|w&^Z%fB&Rj$5qZnc+kPAjc> zM#~EQUen5Yi`1$@j?c29A*6_0U5qCzAOa)9y4h&&9U}7s%e;}O4H=EzT$i5 z8f)K$tloj1(P{nA$h*FKz&l@spaxfF^3lpfZq2-+d?<2mIJJFNOEb<@gWl@O#tJZz zb5Yp%+}Tb|Dk&L_LP0^DKe#qmo9e~&zD)14C>Vp5LLii00e?g(v@MfQVe}KeDEn7< zPwW)4izm*k6pqUBT|g z)IejtcQUZC?wv7oE`}}}kr(yiS3}u+>e_M&>O=DDJKfYr{?XaBh$v@9=rkt;2XV8> zZxzXRm5qhStEV$(??n3!He#oR&0{K{C`y}oCwLMadf2`ask5_+^m-Yw&f2Y(m_;319%-X=k}>;!Y_FmsR( z0LNEB^k4|vOH0@5F!DV;?+Q?byn<3(7!31j#eGw?JptmF5R8yVKP1aI3i%QvY<(i> z%PbC48Wxky@xqh)P1=wz`^kk*sKhiE_hm1aTUk38>q0v;anQd8TA&}kcfq!T$zfef z|D?03bI@DgyXLv@NhBN{wz$CShk)3Zygo(g_?{gZr$_=)31!X4S^_|BYzK!sa(HBZ z2cXfFk0n-t7muf%8Pq~A=y%b{aXf7n@gr2OD2)1dg74%(d=VF_?nH&NmcOAuZBo)GzhTM9#27Fvo%qYkJg3~32fAb?U!;Spw4 zop-8oEJ*-4)sK(IrL8~pG7A5D zXdW>joCJrprj`~4L&7Wr)5laD6}i+K$P^mXuu1jfdj^`aIDZ0t>!y`nM4bbMkmAr*$WhyF=fa8v&X8zzpsaCT=S^DC3FLJCaKVQ|z zMS@vA{0a&74L+eEBdh%}=bIf|96a1iQj0=HLPwWPMg|-Dr}>KlZqNW%p)wh>9+x)f9>jpXVI^S&rz9KnbQBVz=_ za%yqrW~7y;z2~26+7m_o5pW5ml=HGWx2kN(*oc*fWtZUep;8NaNE%VitfKY|4pM!~ z{N&N=@nc+F5)qAr@iT2c9K!#VC;hqgU4mouWAvM=l3Us(=%d&>1ZO`5EvegOZQ&S4 ze=Ws0n1HVQPoEf|Ea4arF?wZ|K8pVP>c*Q4AmV-AdO_k5mKgry{*Q*D#z2k7^o?51mTYs2<#uZU_$eAMr(Det#rdKqiN7goXS6 zDsj=>E)K}mt0eX!{-XYU#CT|UFh1tyG!KSAj^Rd7(6_{95ufN4EDyz-3DF$J4L?X1 zEF|a41@W*~N?u52-adx3LI6wwA7-0yj?g3~!Us5n4;{UoKjdp9mdJO1J}W;f57kL5 z=H-WYr+BBNn?^NC$gn*-JUg(Qu-qkV3@mOd`n2;CnNTgDEAG)f(_O@!3{9mjKEnsMsKbQ7Uk<;($+xt-v}{n_x=2dXsUXQc;WJ_Vb)`4Xi|3uEGD7?dAW?tU z`Py0kQ$rIEmL8lWzM0m8n6LSe$Xx$nrCo6;0Kf{Y>~;-2kEhyf>vk1(P;d*WM`A)^ zN}vlUB8ARObU{#%(b=?^#LR?;`>!N6cTZ124_4w|Ix%foWJvM^q#b{)>mF$79cW>N zp-mcW=8Ul?CflZou@@vWjsga`vIe*le&EMu^#McmpVNL&21DB*TNxVN zz#QgdS_X7YAe1D*mgv)9_HOytlP-N4#Kbx;kC+Dfp$+vbbdh*u(qLEku!CP1NUj2= z;51&$HqIx`gxmuL!7ya{w5z^-^OCOF7pK_@RthpG)-UNsr+L)A@Lz#Ds|K{+C;|v@BB~3yNyb7LVA`=(XhNSqkIlX%| zo7e$(CG-HKKneRlo+;Z3m@|sm=}bu$|Y!+0?kGF ztJg%P9yE9;8{pG=!U<)8RT-Xp*KQ>NZj0Cy2SG zi~kBL8l@Yj``;x9DvBr=eB$@Zx%m({fsP|hoQ*vJK^THN)2CM=d;5S2prQgTfbGYx zfEmeKQhwOE$vX6*@QQu{YTVE-*}_l8tbI6f7Et_t0yiI8*#uPdpI|XBKKhXRJV8NU z-(Nt#+(5(JKs$uI!Tx}JzAkphpnF{K<7R}0h3t8uSP8_kvEQ0 zH_Ct2#{SBW{cwJ>{#n*N3GyvlDj<_SIGO&H{)L`IJ-7uO)zKBA1<~4&1OgI9UhsVr z=tC01f)m;vIG;G72W;V`zmZ83{qS1p1FeDx8!)85kxLVOh;K)Cc7>+LMx{?er+2*s z9RQyh+fM-8T}-ui{$1l6we*=tyw0xRhj<;S_>~NrmT;ODL?s8#+#Sb|Sl-9=TTqxz zK$Oa0a~#ANvQDD(&^A_F7mUdoszI6;oDxoE z${LzH^grb=lOL#I%%K{=O1)&^WNL#nMpSvh?|P%7!T(8V{8j3e6-NzY`9Do8LyVg4 z@c)zg{oZRzII*c|FA5v3Aj9Z`A!`4B=(mvg3v=9M57|4%>Z9@ZvImg;AHmT5U`Vwc zlmUJ)^nO?9e=x*m_R#?PQQD#}d*I(8>2}b2hjU4nJx^>t3%=q16USurN&ZYsMTL2x zp(W}1M9p8Gs3!9OUs0~s^<-VqsBF_vCm#e-GD;9yTeHl%(;hBIR+HdPT9ZjpHBIoR zBQ6|10)9J-^9~0c8s659!=75-idnsuBPtexX7%3_9dySX8X;A~cZ=efB8gUBnYC&r zX(k!+8JDvZCxrGE^QF_dam^mcxO274IhDbmj#isy&&|%wPEDs;j|J{{9K(-_JaS{+ zScl@Y)Pxhs7c>lNeJFiNcRbwxsWrlQf_CFL3>>@%Z<^CQCUNibfa;*PEec&5XFgW4 zLbs&NDhj(zzQq~lGqi^DM#xl%bY6HuKgim=-kI3vjuKEnIc7U%t1tJ;L^!rOwi=ax z~&D>|EFIU$uJm8~M8B2*Mm=r{gl?1O5}!4*!}x2T!} zo&H=$-2b7ggGZbj>uBOWnpP2tKL&gqb}Io>&ya>fB?UDZl+*Sf1@I6u>*O9#n*fDe>KG?g+7`che579X)G) zv27>1(e#j=FP@w)?|ryGyYF;<0O#|2$0|Qjz@Dm~&PRK8`4Bqnra09D#t?YQ1O;VF z$eIuSm0%b3;is$}-Fm?IEQMq#`f@(XsGg~x!mpWNCQ_yv3k z3B_0#6)=S$wTEJBjJo-a;V@MbZo_dHw|7y6ODru27-m7K*1#?=O5uNsM*Z-fd=3_x zHPQgRpUQgF{7(@xhlO!J27{^WKbLU1C8~7%NTJFtM64j=O&oxNZrFfc9QQYx{9nYF zG9#o$H$H2lYU#=6I%%gB(i*tQJV#0h>ARU)g)sCXDLZiKAa6lvc{Wg5!YgZj9_Z*yFrFI3P4nV^Y*oqNOXfS!5#wQO zVQd*o$#@aHLK$ZtDvDL$o~Kr)R_EnZ^dUcd*_qo>+cyQK#2D(5PZ>?8u+B9}NcL(pY z)F&WS{e@uaIGH!;hD!Q>BM;uit{d>A(d>>L8Dyf?6>g0*nTuOf7=oXQi06~`K|eH| zV*I_&GDR)bq|}*lV&gza(cadrm+ zg-*au*bw$*1uB}QqzZ-V^`9L$2ReZ)KmbD_D*)2WJ1??Vt{0j1Vg ze3wwZ=85I|lR?X_uZ!0IbyPEav;Wghsplv7bE1cEygYGPR~yH(E_rY4liZRz92fi4x?WAXv5ehugoPt- z%M9))9_@mR>-aid=?r}?P&BJqQXRJEh=5L$4|PvnThH zxNu%~iL1!gOA2Dq?#kGegq4E5io2Aj_Vq#t(>JzCb9!;Impi_-_t)eZkc{1@21A4$ zRhUjp_++L|%^GH*5AjVv?1{FK^qHYQMs&YB%2t`aB?&)4z6huTsHVy+rpgd^_p5nV z2|ZN>@wcvGryN_zy`pl*+tLLF<91HRYlQwzsr3VUmn<-)ZRzr$qHT<)V3!{J630=RJTKGwkwN?*~t}StjU~ph!eob3LKMi2AM5 zB`%7JSk;jP@^uQBj2nP?GF|p!ACDZ6(#H97Gd4f;`w8E<0D-oyLLn|on)!C;uBrdZ zNtdDa+--3Y^r5fuBo4xZalcD^bye^lTI3EB9Nz79HP1Our%zpWPq@uvk#>0duW=dR z-7+vuiQDT)49$5|c$TU{noV31eAH~BYJBsBY)w#x$DIObzi;wpQue}K`nTURBg@9? zq#LlK*;l&kh3=2`l+5B3%^{@Al%*qa#Sl3W#h&q%cx>e_(R;h|L`Us#v{xhsrISr z+16Wdsjpzt``pJX#w*M>Im}2s9#b57O?^J@;STVf!|48H({ep?IqNr{l{$4ivp*B& zl}V>Ou&0$jjjkKj48%(09f@g!SsL5b-k0XccWIQXG71g0PxNx^AzTxh>hkKzoWk~2AOX`*! ze|63f)m@%(Ms~IaWai(#=za|TnLFd$RpL_F{VBfxy7&@`-9~9!*phE!)Xr2S_d8K` ze-AEzhoZQR#eSyvA0ZU6ue=RyM*3f$X*145&KdWFt;mY=Sk8ohE7gUrGGbf--_wk|fe4CTgdgeOnugkF&4yuPGj^$2kTQ)_P_(+P z@^34dW2ltcwKo}A#fQ=}<@HgEK-0tkJCozLp0m6>amOO={ECb@9On>~KbkHMbc(HE z({Q`+-2QgAO!hO7!9uNyAB+t>r7l&HBO9c~D7XofVWM-A@cAZqOQ(nF_vD^4in%Bj z=T2q*mz~Mhk#aH~*<){0yfSKk6n63BO{LHmT+`Ut#!Os#r_>a}MH7Pw!V*JRIADeHPC9B=PD(qv2SLJpR&Jv0+fs&ST- zR;xHiV$US-CmDv2<9W+Z=k83T3{{tW@*|cK86HJg8Y*PN>P?VI@psUpJuHlCcPb`;H>iBH_UB)_J7h)Sw3Q9u(HL-V6}z%jC(Lc_)mnG) z4`gyCl~xq>WAa5NVv9G1N2);-QtJd`%_~ZwB``@v_w!hJx>a;trbXt-_%JS|PfLOY z!y10=RlKh1_2M7+lv?`R@@{rbWfS$)jaPYN=fvNPOJ`Mr<}0a`y1|Vj5f0ulEQ~S&NLIfRl`O)C zWA(zPNWJToe&3A8-hWjAARkJaVyx=H!~b4x(O%i|loBzn=kE_czgBO8yOY-fY!C}n+_Byrmim2JLx*g73 zanDn=6NJ|rKTYoK-YU=5A~~4T>?E_@+keII=K6<(wfO}H+r?^tUk16=oQ7bb3sgyp zi_pEv?!jP9z4g-ZlD+Qxy+En?rar`CozST3ssGGOfA0I?0b`hSLUoB=D{*#kyZY&L zfql>1s&(&c`dZl2O7kgZ(%d?IkHpL_v7K}74Eu;1|AZz% zlbcebEht9%@=Y4BQp+l`_?+n-o0vbB8=0Vf(&cKm#ARJW2DTgT`V160QjPB`7hx1B zn-#Ii&sUCfbNPE1$n9~F*Wg)K_Up`m+5D-zJ{e$^+h%uJ&SdS#iXWDYJH=;ij&{*{ zH8?WL-yNqP`+_T7Z8mfh9%G?eHAn)w91#nGo5=!H)3|`Lntp9q%-@NT2tB9%jL6Zl<+YHX*Q((a=+;K{FPqIIXNqRRKKBYke!~%F#OiF zdp^0Q^6dUU1}Xd*T|b8uR+Oyk7>bN)q zPs-<)XIy9sxHIzy#s551S_O0{My95CWXjUk6@Uh#PFq!)Fu}s;KOD@~m$OG}DQc9q zST!903|{s_u3b$B*Oy%%H)Nj;dB`)tHAMk7P$!f^?2|^kFb!nuRX&UQWPgRo zPQv!Rog(eRw(L<;-N{2F+vjISypLKKfNN`X&qU(2R6tl9uY2gKUux7?=#n_=k)|_c7wX9ouY{v}gSx>h2#$b1l`MvDd#gO)?@WH< zZBBG=D3$^n<5&u6&IvqsUdNA4GR7i)eD&cqR{Q9^>vTd;C zzw#R7{neSEWYu7siGp|QUF`P0;-qAo$qnZ056W0`g=)Eu1_>C4tM1tmw^OZe58_*o zv+tYDlwUQl(tA@5>i!{;NZSVRz8f{NYCrzI{z=Ryy3Vkpmg3E785nL{XtObMg(T5N zTDS0fUUB}u=G=HY`@9$$H26_r`M$;?r3Gn8iWJZ%y}8Lb9EnE1e}+o({^*UA$`X$6 zJ%TaLDIhW~U$FR;Zr{n>Pq9PrV_a)}Exhpwx2xk|;6m<#@xsJ1A2bR4gF0iM%a(6A zp9|D{l=d#TFx;rY5Ee*Bxr#yyCK3)#rFL z1U_0N3*OXAuFo*zRS@h~6&gaO)lI_lQ}hC_)u*$OynVzEzseiP^}H2fAJ5`yjV35y zxcuzM_olzA@UHZZWFvYemiLsa8a&t}Oz&8L_CjGS-RfgBo5F!i?Dvv#oMq}q~y{@1E}X= z&JOJrE+1zk&Mx*vwSbs1vSe=-6XrDH`n9LI-|TUcwCeI$^AU=Ob|jB~33je$ z&MY3vH=Q@fRSbW58meA%PoLG${9{`-Ractx8|obA+hDBfFrOY+R+C<@CPuTC>zw$m zGU?Tg@fN6@k9~6K{JtW1F5|H%)z808v7KojYY*lcYF4RbX(wK4)4SUq&`n@JbCmLo zxr3}7uU6MS)!3#Z(b(7WmtkN{;Obcfw?L=S4s}xqk zN8<_Xn@T2de#cAqP&U#D$7of2DA=VkA#ECp-C$W97kjR-U!t`cp31* z#DXF&0l@th_$35{3#rpNM7H}lJbPx~`d4Q=(sf{j&o$RGVP#`&M}Y1c9ZaDYH)i?E z0-#q`=!=(he|l4xqt}eAr)nwetWR9St!W$Ru|M%YTRdCL^&IjF=f0HRB1|y5NFm=A z-*)^w*EjZb-!a36-(XvyqMjckX-h&VRm2oCW0vt77Hv4g?YVb(NFv%sVNL!KnL^c6 z>$HAnbcShkrXk}b`b2TP@o1lSsS+Q38R-0Q*uLX_>)jb6edIn{ewjoeBVTxLJABly zYc+4mubtgL2JUF^JRazvBIlMIi#h7Fm8I@0s(7$Vhk6 z%8EG?SI$CwABbVC;^EJTto0n*+o8+S#u*&e+gI+`sTRDr(tFrS%Bsbo%7UqTU}#A^ zOR(8`BChe(@H9x%8uV_>RE|~F4xPdOylzD-TeKfNvu{Lkt7+yRmF`BtjcFn4AbYAq zF?&Zx!A@*K-KtR&sd3!haAsG*xvOQ{->?R4I4F9A7(~7~L za$rF`_Z$|Y-Yflr*3nI$bhxryAKoE1f}aw!%4KUrC(sVkb#+O%aajS|Do<%8CnUWORS3mJe3_7ewJ7d zdy{jh#@{o(5vw7aP%$d{Lzlr_V^|}#VH?Q^)4|yY?d147ZKppolppr3VZpG*III87 z@AW2Z!M{uu-+V-(O6 z$<|g~;kK4lAJYPVm`{pD+Ah*%dQnE+)FTj|{sP(u5M(^4F4KP)sxtlQOn1X| z0*nL?%0kqIQK*msY56V1t*;N9XtutcDQ@UD6}{ToM<*eaYjW-MdRyjO#UId#DFl39 zKxh!Sr}FEy2xLvKG8mzM`34K!~c)v^wrJIu>?6q}Fg3Vh#B zE{@{$Tm(jX^VBaX5|2ACm3+2%LL+A@IuIA1s4$h4&)ht^k=_?qPE744u}Cd-w!T{W zvK;sOP5+FuLxeTUb*wbZndFdK_SkL!P2=M{QYdyUFGM>*u26*

?v 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
  • 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

    qeFew(dp=M^f?Y;`Pz3RB;xB-02 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

    -r!w8BJgNS-Xo_E}A@Ts&)ah5dcuKyr!q<4LB1 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≈Xqr8nU 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%0DP+`>*V(n;;BktO=s(Xnj{x z^5Oz!);#;q-`TT`I3Ao(*Ysm|x04>NmywK~h;!RqPh0Rulq`d8Hh1t~YPU>gZ9pG% zqo+W}-JFZlFDH6uZ)Dm}Cg}uPNlUskf5-ZVLRpo>7%}|5xU1h@)3B^zN;L22vpAu% zBeg*Mmz3*Ri~w7Z6APqd{~Hm$2OvM?Jdw1rGn7P#GV2*T|@ z)6OqHbzr(mvxC{a)jXI{0(E(M^}XnY21r?cWWSSv%f`3phlZuoCZ6*VPb-=+r6t?? zMP*ydZ%>!$C3kV9$k`XG@RnU$ntz&ap+<IbFs%qnc5mT_?L<+q>pA5Wb+xt5q0Gc7X9^*;Y?=i2Q#1AqDCmY6(mjj=` zr`KsuVlL_QDTEAgz4uWPF?su%@S1CY2})0`%GhmnBar9A$E*-(#_VG<0;PM-@Y3iz zwMm7kj6E4Rarg|ag6iFmAM}^rXrKL%nfKA|Be#La1=)+I53TGPDyhqwPh>Vb_(S<- zM8u&-pPm(oo6bR9$xvJW58Br9KAK3@Sl8Ws;@QUn{3Jutc5>gPCAkwk-%BuFr!jr8 z1YM@PRi8O_Q}TNow`thd>N8C=FZ9N1_p=O_JQlK;a$PJJVpJ5yX3Z-HvQK^tEtl1i zGRjCFab!oWy?1LnDI~`mm;EI0TktWw?9-!N3xX-M55En&Ml0-)G^ybc3+ZE7lRLO% zk}bh_|elv^*|X~Rps;sn>@+S zJG$)p_AQ3KhI2)e^(#^5-UZ{22pcGl>dsZX$(%b?B=5f81C?HL;Y-HLn;JvU)8h9E zTNbt{y?bFu;Ow*QfE9^Z980@Dxc}W3GdIsT>HPOHlI zh!IrqC`TF?q@a@r(u})C?b-Pm6tBdC?>V}37evxoJzchW|nB%5GpRUK;XGPYY{%N^+sk7JB zkt`x(KJW?ex+i82hr8`h`9HrbeS2D5?JlY-0!mx)6fqwPol5w4P56=7lgi@m@cK$$ zvEI(h4sg{Dt{*EeU+Az1leEGMC-@!|rZztwY43EjnXA4jnSJOSzkfl~?I{nbGWLV2 zL-|{+HPx5ztvzGcV~P#EmQirAg|+zjQlf=sdtk!L1+~WwJ^Qj{_52(v*=g^rI!oVM z>~}1H@Xn{qpo({eUuo)=66xusBrcrkJ!$*&Tfu>QaWZ@NggszxFpAs}@I-2Kj&AdA zo%{Z`?f#NJ+uVr#H_WTX=^xplSO)V9&a1OYd-4 zDn0E^mL2@w_VPEw6VJZ5sZl>4pe0p#;9i=3)j_jle_GAwJ8z6;Jgz!G3L>x87TT^h9nqHm3@5DKP7bjhn(FH{jEo;QZ2PSL zApQ<|q^K#=Zgpv|MNX%NUt7mDgBvOZ-9_HwWm4mZ?QgrL1P@%@#q+qXuNGA_6WG*c zqIMTQ8U-D$f_~<$8|8BQ=f z-0yr&MOFBe2ydyQ>7%)brk8`4x-%a#Aj^7=?R)d_30B0{#q#ww#M{95 zlps>?6baEDZ|7{`T~s<99B44BHgrRjrwm(?cMv4$NSF-E1m9PL^MAF8xs zZ#aI(K6-Kt_tQyhbYrZNb(HmiwEpgC$bf5GzrhlUhqbN?`8Dl+s?xjL`{?cuOd6~? zE3G#32lqX@h2)cc#HKFoj9HLD-8PlI7&ga~c#UqMu3gw!XU(e4pzbi+6f{h~W0E)V z4BWI{K9x&+K2qy^!mUY;5)_>-&7_D;{1p}CnGbX08#Ji)ZpMc1IEf+3k}NUu4N$*$)v z;zY$BN0)n=U&fu%&b-UKZ0PcdIlQ(mzy7TWbnG3J_a^6bpna!nbDrj*I$7|<1!cL3 znxZ)AR4kz;r6>FxF|H6s`9qbmz$eX5#t&)zo59Zy>=x;6Yj;!cEX2aI%V zuxI7GSX_gT^za0~Q1SIE-403@Jpv_-R;7ETgWceYHO3a9ege)t`J?Z3&h}gr-oE>$ zN1=XUFLYMTNTRBD)h4M<(nvwIDc0he!!@MeWn!2^*4f$1p>A3JthpK?SyhWaIzMO3 zjl-^c-&4lM&)DW<=0A8JUnh3WaB8*vep%AmmsO>LCeE*EseJ0v&ArQW9a>B1b(h5V zC-&T)`0N<>T8@AywS2zF(%86glr4P3{(NA^Ah`c${b3=4Sq@h{Pu_ZspJ#Xall&Ki zhgzb#?{zGAnya^pO1&4`SGR(8`?sP+UnkUx`lgxbS}NhMYDKc~&R|E1^7sq{W>5}V zpT8bzKJeg4La%Sc#Sfp>d3Y^2*m(wf^*-+3y1$qIo8qUC1if2_H$Obg-u;Ti5Tz?z z-PmuHlnpt)b|X#YuNFH=^3@pcQ=`>kYKkl=5w|2JJgBWa)xu~l`G|q#Nc!vVcU}ti zn#_q6`&#-s?Z*?{Lps_`EvIigIDTagnmZbj)m8EGQD%pSVVZRscln#04m{q`xLZnOs^ZeP#^xRg zj{`F*4StTxI6bDKLwgKo>b1%k6dOjRUK1L)TG!LCQp@_W#QLAd<2~JtxO-kR=T$jX zzpuQ;QP~0cr_vK%WJs#s==&I1=-b|;#X$XqCewC=~Fu_Ffa?5UG~wTt`7a zVfWsm*a3B4h0}@UJ*l1F=zO)SLiT8ze)Y@|J-K;KzpmF!W5#>FPe*fFTG&PGQ0v!| zuHJGT-cH40P>F=nKJXh3qt%%PCYbC#nfUxLfjk<>Zgr7&a1(LlR4a#Z_U!Le7ue3qR;m zrH)*yA8N^c-Rjpk(zM!xl{qQEw*53k>v{X^fkk+{(My37vvESACWl$2-`S?h3}g8m zIo4f1k7!@rE$Em$?7p_j)@<0$aV>)UD6f)0G@@?&YUPw%DJbV|U0`CwM2 z3QnQBy3yzau6yB?%!XWms>m(xJ9XOuqXAtFPUq%Z*Gqz=Gct~>-sMnve9IzhE?@fe zt!Xi?qoFnZHN2RpP@|y_ug)~P+ee+g?2@k{m1dUeu;bgo$Ppn%BEpNF55mF4;o|3Q zT-aI6#o^}SI1K!pxH!sO9Ern&4+w<0I0}XO{l*i>6wI%_UzFcGNH7e8!BV~fFB1Dt z4|!6Yxi}V!6UQNuQ*l5XZ47n{`{xgsbzCdnc%TbQ(IlsDaerZSycVRcV zzR5~2`9BibaR1wre?K9C<>BJsSIU@q72vN37K>1q?p4|UyA5~P8j4yiH zE14SFJ17}B2igO#!^4$Mn~NjF(c-{!lnl?G_W=#KxS_GqF%O6H;s`w15{630G|W|w zU~%e4P)PJ)BnFGrKp)1V;79Q41cVmyFcN)4LtX9v%0X1JhKWKb6dJ9j#?IpHbHU!) zot-5h6Eo~vVZtyRV;!1#N!(8=M-uDjKR;-DVDO#IC9A#dvFBpnDf{{RhqMfy8%&N8 z37)T6e{-;+*jHt1!36ws{JS9k`Tp;?(BKzoFBLG`1nofX;!BnuQFxs>-_TlC3D49l$??*)IfOHA{|sObxT_4C>|6;Ok>p-ogwK6@AM65v&{SFqB{>%!vgOv3|v zrWY&|3sh5erlK7ydIK%$g1xraN$fb^?vUu=>UWNX?DJ|{kUdG5)#_ZL{8V9#f0nCP zutmpqD8dtdQg+IW`&q=hX%WMYb%T-*79_(oUa_FJrd_zNHz$nrzMOLpTK_a47dpsa z%su(Ny+S@gY;P-u)Ro2!DJJ>Huax?BcY81946Km$JS$a}xmlb3bP|q@My_=UF z9;!Z>^y=B@{{D+)ru9%sqX#LQC%$uT!`H*o@$fW9K5zA+*@6Z5Xi?4=l%f><$b_x9 z^w}zZ;*5FbV{3#<&qVL533Qj*<`0{WtE4F3IvHi2K7*wUF%IR_nDXgVUo(|e+~d)~ZFXI<=vUQM3vFGVX&wFaB+X0;Mgh$KCh zT$r3!!hM~DG!=bmtyvg$t%UOwY2OCpsiqsIbot|1Wg#Iti;9CZ zi@R{oqwzdKwyxh3lXYKwBClzd$D@7oTv~fA3voMS?$HQ)ErX5w+@XRRtei$VG|`u1@P;Qd8tI_uW;XP zmftw2663fcY0pdjzAW>;p*n!^{G@kq?5<_CmI>S7$gX8MHMuty zi24it&-hY`SJ;2Vd|H0g`iwaEX@xPg8UH=Zav2r+{L=<|{pL;gjh0EJ@3TMU?0r!C z1mhB+U@bK%$Bf;Q!aPZaT5?iZ-7PZ?KBx&^gG5;^xKvi^i=%dS@Z$n^lB~3LN~Na0 zh_%r`L27qg?poI#gcAD110tuCvKU9?mY6-ktlx>aHS^ zUm(#?i#_)&tb;s!lg~X7OPlZh*}B=Hs(No-Eym>&=P;MDO_`KlkJF>=2 znz6i!9OidVY}c^PwKZrbOFS;%o*1m9n|sxuUDp07Vh3+Qf~=NWZgh7iGy_zR0Nq%v z5TMYr`)4!|@qBrS9$M!odG{_|zMxF*KG(*7;E8H;4*zz7p%#z{E4Xh>mf4tSrNu2( zZP4_>k!+R5M6y+Yf=rekWmSuDa+hEovd28uBpkrQi zuOO`BzI89yloLtuTAI06yC;s?Jw><+nV|Oxe$yQ}=$?49*vYFd;y~q$Lo<5R?477n znsn;7_q#3?bzjIj?P}m^C#rr%Web=fDZAVH}iSTuj zp($sAm6t+1=`sEF#y6&-uD1INV|gAUPd&e3%JXnc%#_{L%6B2bkL~T7H-UpR^R`lu zTWnH^9JaCkvB1tds>I=g??huBJ>Fl|f*s@_LpByb*00fHkf+*q7a6ibLDpiK$=eGN zew|-icMFHnA-MCc`I8&Q@k~u#OdKuNcy8?p58T^p!+o;l zSOu%&;LKN=%(zl7-dBxIZ{rY91vha_B{Sg{cu5sZ#Bq+d$?~3rqE-OjpN)ML900*@ zV}(40$l&EEA5(qn9`iJRLbYPo`ULIU6#o_RU(nq(j;Og*zCthB${N6;HzA;sG`*~F zTl;1eaar>H^OqY+79@Emqjkae%|e>Ptlzi%j&2>_rV$&5)Duaqq67UCT*2X8D*|dH zqG-0fv+XLT?z!H^&Y$Y$HRo68hI_YTy*3yQ21Q$34{a*mpsOcinATmc)qIY*G4Wo1 z?4bBPj1$($>#V=)vg_CEmuG%M0IMZLhOm>12Ev6u4|pfpcS%R>df}V`af$D>YNVj& zUab17mY1*q?CE55>_NH!>m%5&;ZcB1g5pM zgOjn$8qA*7*=UgAWE+XK5ya8M#%1;2p6dllff;8Ut|F^|R~u^K$O2{@f>!(9mpnb@ zQQB*9f8-@(w3YLHtHY)I@ULzsTQc0@0IbM3>SS_wE3E-{Wpnd{6$=y(U0Up60n;59 zAcqrv$<*$c8Fg|K0fG}yzk9^#BzgFF!m=h#DjwGJ!m%0s8T7`Jds7=9t}cisgXDM-!6}l^t0^g!3agW~zY1^{m-rOK zi=^%nr?X@jk`hj88%;)w3yS6y4uQMNw0uxDg3JX5#X~b+zxQ^&u)2!et(VpbIDi`0~d1L3zgZ<%UCY)wHR;x|fu7bjZ6SyqN{TRNS0qjn_bCx)%LW_ie}Gk|^7nq9%k)&JRt?XDXug1jv`rosu<%nDJ` zC1`S5=6GozowJe$&Pqa*IAZD7eT{7UXa4cIhkqi0Fv5_Cgpy{VR>F7RPGMOC`9k z&+7&mr*i$Uz@XN9B8z26(J=ma3I1ej{BFicap7onFD7yX5Y!$&N>14-$xY15ah9D0 z?7vZu=gA)v%(QoWmftyqXUz3dtYJT6Yu0qJLh$rBv?DVm!BavpoUMOsz*9hxbgg2? zu8A}9Gui$8gPwFnttTpAyBbEaF&mh-F+pBJ9wd?FdrqAl?EVv?{QRzhZu|)`g=Rq! zs)^bX!I%|{N_5H!{q4pcau6^JroUG3t$3VJ6E?lVY0=EM?BT>7#a=wYQxiV0A~;-8 z%d8GrCp}?5KdD;dIx^x~S&9vp^yz zDQ&PrWB%Xc>I*%DNGsRrQ8&&20E0x78*R|^)bgJ5sIE!3)7)rJ_UnH1;A=l4I7kry zN@S#b1HcK9O7~Jt0Eo%W`IY~S_kR}f0+7*_x|iDJ+(2>?bUv}wCwL-B zA#d@X&cbMx&>ScYeovzLJ7awS&37Py0px((?%a&F5wuRR(qefM=$-5195VW-_2b%F z5%X8IoI(FSo1e5K+7zGeQoWGkhmND);sxdsl<%o-^$k=9CRtSC^XtA1xOOy=D!Y6T z)}ws!p;JYw-FZZ7CT?cVo!=H)*bF9%)}Bzmdu;NcCpVDG@r0w*8d zz^|;qf4>k!#8nscSTnu-xz>7g(+;6qb7E1=;~ zlza#{ihQN%F9pexDWDA@0Ky0qCImDL#Xi9iXrLjb5HuW*{(C>ke0Urc4cLJKieP`q zeniIKzrhC(QIyaDG|WHd`eQ9L;vWzG<8XkF0Inob&IfQpNkbw~|5yh49rX}sBoa=! zcW5LULp_*!KhYQrB_hbNk$ma%uf^dB7^*FX@C1MpDnF z6$t-TQk>kZ=r=Kvsrq|3BsjL^S2z0U8EQr8NeNpq>zipm1O?7Efs{ z;N|fDZr!i_2Sfz56|evjlv-m^lsN*7MN_6(K*LfdCqTnd!V}OSJce2b0ZXy(NH`8b zEf|L+d+>iD2KX@4`;Nm?W>h3dpTB(utp6YL1K?056C?tOLQy&rP=#tj1O`r7s2~v- zaPgW#LGYys?!RH4Y=0yIpowzDKr&@1g(S~N#RsAkH4RG{=aEP(nlhsT8Ww_6#A-mq zQ<)G6e2a3MKuLn9G(VDnpiDZTF2iB|yJGT!L5w2&cGiFEKO_oCm7M?$hom$isKTh= z1iq2NP%Z=u$AfRW{`L=m8}vW1pB(yu{gGG%@~=H1YluZ)D63W^7Kx!k1gOj?>qKB_ zP`ywH24yT|Vgtb&4~M82kyy%-3yDV(sDcUzgp@e~39v*N=fN%^2~;w0*gsJGr~X6Y z3I9opzq2Bsp{Wo7Vjk6s32>@19Z3M_q;yP>h$s*Nfxt>#@d6qeN2xUdho_2qpmwAz z!;s*-K@~p;AbL~GhXN@Ajispn01-pEIusoIQFuC_fZ+A_9s?R0Md9gyhNUdmP;fNr zpQ`Ck{RfCxN(Vu~L7b-&j3NA6z5L!LG9D-^V?aYu;vLYyDe!NlAwa}YdMlveDLoy~ zsLluEQiDnv1RO#Bev$n86Ins|0jG=$p!~pN3F0UIVgwBYh=f=S2KYAl-1_@Po{)+L zVgMD57!J<0DDqi^stcqFY8v_vjo1|e6Dj9Tf~heOC2znuiTYPyuyWrkFil!o1TjAi zCRzS24aP%Hl)MZ&mx-X0Cmkk2OSDM^ZFmL@Ml{KQ1ruqnfOGY0&@5lefHjKK!il+6 zVC+y8tbmr7lLUCfY5;Fu4J?FsBpEctYXPrjEsU9#7E3%(2Y9{eVD|L1XkycI(D?Qo zMxY}`q>zQQ08Wz@7y|<>im3e(bcVcyA!vb!n;kGoVs{5@oEXsu7$0{634NVFf@D8v z>c0Zxd|$!L$gI^}VBAUpvK5DE)U-jsO35~%QkMj~*O=?v8WAmje+wt$AE z%rxLS12}F`@L@sRMN%AP&{%M4p-=|UaCk}~pq8L4V=&}0iz2!J8iqh27|;m+Mxp;5 zWiVK9IHEu~hJeLVRv3Ur_)j7J3u{0>3}xvHXjB()uoyg&GE8CxFnBU-{{l2%#9^?+ zkpxa5hd`24=|g~gH!5Ox-6X`){ur^Np!C6x3p*!zJS hZOF2J-9cgG;|@X%9w&;yQYuJ5gYZpOP*YFq{{XXo9D)D<

    &2F)eXGUUA@)8{L6p;g1cUWc-QN3fOy`3dw&G$mJHY; z*?t0mJ9^=GXN4UMrHJ2*LHH;2RD(TNLi_6m{Ka~f|JMB$uocvEMSRT%|84-mSS?&l zG;}LUmGo@(y&HFX3I4xxUwrd_0_$e_-u-W=_O=K3^9OQE2SVp&#NLwudN*W`1LSo( z#4veY?L0Vl0=k3U+Z{(wOgE|jwcl+U$I3gzM?~(Mts=e{Q|kcQVeJS5}{go zsE)qw+1*Q#;$ICL?ne8rcdJvTs71}>+|u0krCL!WNNqWHNSsh(dTnE z8TXL5UJE%IDwzR_L`eoJYw>Dw77F2AScEAnu`p#*$QdPdcHF#~{aAdJ?<0^_SYB37 zvh5ta3MQ$6Q`N5q7qCq}76sq&+S!P0Gt=l6XWd7-jrwq2Bq2$g~9@bA$FBO z3AMsnodS{96BL4}6Y{838D2H%ViMj;b^#7`=8|{=H@{bCjzXqLgbH#E8atC@kZdMCkTV6zNzcnAb>i%J{KE}K|(~mint<5df zGNHuU6D`C>UfDKGQ+yAi#3kw4PT51s z{x`25ws*_`uZZ_Vd=jeR@_otult@8X_kW4~Kh|q9?suoce8cz^vY~7QMLyH?h$Tm! zhLJ|jTpdJSO}XpUW0`&F8bW}9f*9TX)xK{ibvu@tg04peDKj{~9Er_S5Y~E%`HE8UX`uskA#+3tr ze!)Fo5u##>mFCubPksOKW=ZV0nBdzo4mpC|N~Bi`JET98q+_Aj+R*_>WwGmEnv3lt0;Wh_s0xxY z+{A#a4mgVtlYQuY{1+sv1KztJMn{Iz#NOc797~%=UA0WPp zcny?CMz7x+QMV&@Bi@17 zi`efC2Yi2OA7TiEb*je@pFli~_z^{o5wRAr4zUq&ozFi!r0GQ5h`0r@4{;FDj~GF` z+ZS;8G`kV+L)?qFAMp{ygNRQf9!7it@kPYRA&=XuIgNM*@lC|H5vO2~kmh~Fj}bpX z{0woLqE?QmMNAGrrnMmEAQm8&AlebD5mzAA2SR^tzqT2%4bc&#?YATLAi5E^AqEjg z5GN4tMZ6zzAL4_Ek0KrnxqK1r(}?d<)X5QTh~0FOboV1Zh)Z#N<=-P2{8jP7qKWj35RV`p2dvajBA!M(gZKvGdBh8d?;~DB{0-tXMS~L2 z2v}vXAm$(zAeJE75vvhbAvPkmA$B8fL39IF8+?c%#4*I3h+jh7gZKdb=>x+syY zfp`e-9#>fy*L~8%ipiW!9F!VRN>cHYw(MkW;j1kE@I2oOIOk>V6TLW z8az?oP|X7St_^lRJDe!!Z{SwK&RPw7VGW##YT;C~0?s9?;OtNbyL0_b(9d5IIo5x~ zvJB2&_rfV?{v{619dnp>1sZM;Z@mu6;LHQpfj?M@gEQjwaNR7X;tPNvoN7Y&h5ay` z%SPb@G!7@0FTy$J9yt5%LVF~~P|nf)F=*y56$fX-tE1@#u>-La@is&Uu3w)0`!0M; zjYBMnLh)|XhE#2EikE7!sJ%fnXN_vU*k3pAlL(+<}%HhV;4Y!(&H&N!`ZXzM| z69H?&6*Z}i#Izabi88oLS?Jy9CQIp9;^2mNHRRzARB#hH2RFcLBM-NrqMLunIkt|j zjy&AItv8W#aOa*c&UaSmzgsn5Y`rcf-2ncKo8(^SrnpNGn38#cui)$XPQI59^1Jy5 z_=Efrev*HkpW-jch%8wq$SP#@vQAmA>~7g1*;}&rWxtUtsy9^sqWVNVseW7ik)}uE z*X-0hp?O{Nk>G+mLdTDM2{ zr0%5dobE%tMQ_!w)BE+0=_mDX8!8MT!@Y+6hGz^X3{!^R8nwnOW3_*=-FVn|(s<5z z!FbU)on%bPO|mD|CGAOiH0h0GlAM*iDEYzU!^tO;&m~_-zL-3nVob?Rv8U9fw5Rl> z_)~VK>`OV2ayaE=%DI#aDHl_wO-56$$!@AMwVQfOe$!6VKGOlyVbe*|InxExMbmVu zF*P^Uo?4gMp4yY@Pu+i+x-a!W>fzLrspnEJq+U#&PBW(ErrFc#(%RE{()?*V)Apqu zNIRT%GVNU2g|v%l(`KVN*K9Y}ncK}hX1{r-d7t@!`LOw<`JDNJ`J#E+VzlI1?3Ox9 zJDg4EJgUY0B<-QN`Zwe1Z^qT%imJ=wo-5&CB@h)CRnMM?tuKH0D7L>)7t4R)6R~w` zODuoumbkhIDLu>;_AV;`Xh1m$yoWzK8$@{E|0C(MB?frQFVyMHDhtl zU&A^NJF!XBu=Wu#UoL7chm~)E(}q=SU6H}^0+!oYUVAm_l@lz#kL3@r{IOUmR=yFd z<*J>r_4?*m`ucx^vGvt)v#{pwxcWqFy)h%Mo)uTGj;q(i)$f2hHz!}?p1AsctjAfS z@gbHUWcf2JKaSK3;N;%|XS3U3{~p9|=ysF)$phpOa*!M%N62w9NnRzdlk;SXd`K>l z&tO0`m&|2wg2<;y%W^hHO(iU^W%)XmZ)CZf$B8uVDFVmUptem*qj0?`An0znP8Se4OR4#m+)Ya;()`jB)j>xO!b&eK4vH z{MV7#=j&?X>dmqB&8E2e3$gV(JLBpjQFW02&Yf7#fLmZ47_S}9S3PiEqu(0uB=?bh z-SkBf+57VlLS+!?`V{Lj8&2-nrXu`=}0-C8r}p{{z!zmY-qy+wt~rTUai{`i1)r zeecZN+F@B>S%QQG$(fZTNko!JQVfQX2K%YsM}2@5QU1~$1SKoPl@BQEZeCIpw+;h9Ox+i~h|GK(TQhBQM4%*rdJ5n-|8N! zx4Rpr-wxH=cMH?|h3Nyr^c`t*Lb?6XG&+svoibs1qtNZ&=@HhxCsglHF%-ED^Of$` z^YLUIrL<}r>7Zw%!%i&^Xn8V4cGOO+ez2Qnm2Lz6yv>Jt{d~A9MRs@o z%9gtq(NcT9k1A+c?axQ-QBlikT22bbriaF}$3`{ce=tiu_3?V@IIE}jQ$018_tM_A zm-g`)d!@KRMhV4A35Tz=BZUlvpivRU{^b_ajj=T;i_qmO(l~8q`d+ z1c-CJ2k47InbeporCr;~Anm;dY1SC5F&wNTmBHF>25Zh7q9dIlVfH?xTbO@7E=*q- zrXLT}?}zG1i$gION83iSlTA1WJ@3jZgpqS`*=S~^;4o*z*_OC7b1&|@D# z(T|zt*duo;OEbYuMKh&d+to;IS0k^d$Wb~v9QBuLY^;tB#%kop>Qyp!d$@fhYmbqf zBNUtD&T305jonwJkgfqVg;sxh3vGMJnn#j#Pm^_wFr}H6nq{Zz5lz+c>Qp_VX;I;Q znxC8C=}kk&_w9@@eNU*qv~}qI%NB&{-<1f{mxSs2!t}eL{axNMRR2D!@)1w;`JwxN zzdTG2!)wK&P<>^`Q2l?$0-^Ts`w)Wr2p4P1w-a1GV?*adchw!6%TJ=j%t6*#-W zZh*ilSOpAx4xb}#^f-cx=S26?Dr-^ipRjElRKU|9xJ!LHqvU!#OELrL=agKJyMU9nhsyQ1 zkIIcSRx2eo#3R(#Rn+>2lI!s($u*=OQ*wQpEsyIhPv|XA>Mc*{Eg$!{w(4&k)!!FY ze;>EhRV^>6mU?MhaI@;+R@KAps)vtTcBqzLRm)D*LTrD-=>x!RZUf^kcL~)DgsO0= zJ1-FGt8f+gs84GMDFNPHPbO0C+)zMC`}d_$^(8feML=&B!?HmimXGCweyk~L2K`wF z_AVr{_t<+dm~~?DFoX?egW*#)j*W-m>>iBrOan%9ANRo+?r;aj z@^m~MjN^Y9c}5t|v+yi1f#>GAVIt4Z^TQ-wjMsz7Jf3%fmAotO3afZ`-W^u+p1c>V z;r)0&SjPwQf$$R_#Ye$v$+(y-CNp8g z8`GF!zG=S6N|++zIJ1k{g*{_-HM_Dh=5M}4R@Q20 zy}>S718v40IZBz_k;`h_2JVoni(xiPnJF%RYu>F{ZM zT0~-g%rDYoK`bbuurL-D8L%i86&bNO78jYY6qXXv7>98pGnTNu{2iCwEA}6-M79tn6#?~S?w#Bw07TaMvkq6(!cST-& z58o3{V<+q+@?jV3BJyKb>?#W2hxnl=h`q75D1;y5$D%Oy$Nr)SCSsx}ii2^mD279E zs3?w~;-{hnj=&M3B#y#Sq7;t7F`_h%!*PEi4kzFQ@eEGFNumrUW3niVQ*o*&htqMo zD33F6hNytEaF%!$=inSs5$EANQ3>bcd{G$}-~v$vzs9dcRs06O5zpbb_^qghOL3`q z9>2ryM0NZgzZWmyN?a*w;A&hgYT{a4D{A3S_>-uO8*qcDgPU-ZcoDbY7Eu?s;WmHq z68?-oi+cDA{vzt*Z}^*NfWPDKq9N|a-J%ih#l7NX+>iUkD|i?Wi^g~XFNh|1883@h z@hV;wP4PNj7q8(>yd|2E@xGz_7bwrg*j;v)yx1f5h`fi%O)%6tGu1ltsdXlK437an z&&6{=fal}+!1AmRY_pZw3LLYw*&2U>W?Qo@pxMrB2N7mxvopA6ycrMa%mgz5A~6T% zfb^IPbI}@)#aPIIc`+|!#C(_!GGPHM0MS?o3qfWqf<+((i(xUyf+eveWW~~08nWRt z_zYynvRD?L!tz)ia^SQ0Eab#WSc$xq=YMl6{~L=h;0urkn`3jxi*Mqa@HBt6!8VW& z-@>;bKX$+lPyjn(M<|Hz_)s{jeXDz=1dr zO5z|K1f?(ulb|#X!(kAIpW$cl435N+PzFciXef(gaV(U>@i-pJ<3yZD{(3S_hG%gK zPJxOz4W~gR{2V`r$~Y5eLKT0UjkBRD&c(U#9DadcKsEdlzl7&;AufdKxCj@)3%D2; zLk(PlOQ0q$!(~tlm*aA%jVo{k)KUKLMdknMlJ8sxFOlzD5A|>(dC&T|nY?WS+)CcI zA#Nvc+X#1%mwg$3B`^C5?j$eU7XDm!LUb z!7I=Lui-Uli8t^Dysn=Y@v@;(%GVAg+cH^m)|{%_ur|PqrN&a=z6ZVsAp8~m70D0( z*ZTfzegD(e7o)5%(Tld&+rIt(wXy%&*#D4?F|)mQt&8R2r9^e331khqzSLg5{m>T% z!w8rF(_tPgg5|IVHp73fun&&HS-47(Jun}00^L9aJ_y7IK2)+xpu3U@fsd5z8t6$f zp8o2kWPG5vl3fCQluQVGtYp`~CnUSjcKwu$5A;{EOJIPK34wu1b`1<7nLyhORx&;? zM9D6JBqb99LzV0r_>^Q<+HSa#@qy2j>=GEEWI|x1l3fEmfKz{KUn;u<5~)lG45PB^ zzk$eTHS!MvV>B{jH8SHgGUGKe6ErdtH6oKVB9k>DQ#2w|H6qhABGWY@pKC;BYD8vf zL}qJ5=4eFbYDB)!h|JfBe5nyxpb_~>BQlD{|3M&GAu>ZDGVk9+H~jXhe=_M2>%JL{4Z#PHIF>X+*XvM1EC> z>`|6-^xs6}j7H?FM&z7E(8!!th+I^NTvv$P^(=)rn|b|KPbD>h z{OnggMbv*0FNwC|Ezw@QBR&vaL|5^l=qVD#ATd}B5lLbwWx+?qF>zd+5GTbcaax=a zXT>>jUR)3t#U*iBToG5rHE~_s2*%NIBiIhMgHDjllYxoaqBd|*SJVX|T8lPdh<4&_ z@QKc%Gx$Zkh=+hk5D63sbQ9gc7Cl4{a6~Wh2?T$|L@^Q4i{)Y)Lq#Dz^O<;@;IVF;mQ>BhD7HsV`rMF9`1ig8V2Ux0cR#RGdpa`b^sD3u;|1 zz861;6=J3MQLGZH#Tv2pujW`CeU_L-N1uNq=FrjSi}`f)uLOB#>ftszx;GB*=tUsv zFOT{c<4~9#)tGtv{Y~pq`+3$t`7e1pXk8a}18d2{;L-;53{e|8ow`!v(kqm%KMR z$s1jR>u>{Z!Y#NBci=AEgZuCR9>RYkGGoT;^9H;jZ^U2bukgma34fJ0<*)H(yg6^d zTk_ZW8@v^Nlegw=cw7D!Z^z%}?fE;r1Amuy%geiPN3cm=5`l5koC>n`oqPcioydmBdokTy;Uknff#Yiz;OcD#l z*Ww$oSS%CYiS6QNu|xbKeigroo#J<~OY9bV#9pya>=y^bL2*bN7DvP%MtP%x@vHHh zvD5h7*k$ZC_85DOea3#{fN_7&IAk0)ju?L!M~!2~apQz>(l}+DHqIDljdR9%~@z8i=2F*xWMOKy1$!hX>SzW#$Ysi|i zmaHx7$QNZ@`I4+B>&phRp==~ymaoXhvWa|EHkGf*X0o|#AzRAVI@*P;z zz1$!-%1v^!+#Z{bJSk7f)AEcwE6>UE@`Ai5FUiaDio7as%RBO}yeIF=2l9WReB=i|lQZQkIa|(= zbLBjFOSldtb+?A7)fd#%0B{>ff%Z??DC+wAT3 z&-M=c7yDQHH+!f3yS>ZaWB*|vvrpKk>@)T``;vXdzGh#yZ`e2OTlQ`Hj(yj@XWzFU z+K(J?n8O|67>?=qoMX;$=Y(_8Ipv&o&NyeCbIy6^f^&b-x#V1St~ghnYtD7&hI7-o z<=l4eICq_U&VA>B^U!$|gdhv@pa>d4Gw2J-pg$N0T0uML1cN~gMg-kpx?p55eK0DR zA(%0kDHt8h9E=HO31$su3uX^K70eOL8O#;T9gGd;3FZw>3{DD84kibu1g8e41*Zo; z56%eA49S2US_pe{u~6Nmv;l6R(4*!_XyCiT~R^_O>##)XWK)!sn*ZhIq@d+kkB z?zgw5Zo8ZQS`B`RC!!%cMF0g-?jG5Dy?T2;m0RqCRBp2mQ~9%f!P^rvct^yH-VrgA zcSL`6tOx3-kMGe0Nc#ybDmS1V(h{LsT-A~;q$OIlWL7OPs)a*EX_(^4Cd82*JEm}Bo4?75J^l$F{+SKO z6AwONz_jf0{~8;nvK{f_IO6ZLtXPGj4=?sei9EcxqaH;bcXZrwkD`uODdI?0F~<~& zIPQ|wzCxDT(zDCQ+{xb!HkSGd2h~lCetWu1>Q!)PUDtp^yOgDapvt~Lo9g8+^nm1Wy^R|C^o5h%S z&ATj%kKkfieS>^MSvKFNzL6}KZ?tb5d)ha_H<=amP4UfRMSb&qi&=T!65o1O&9~9F zgT3tA<=e$t`1bntvzEStzQe2)#Rd;p8{Z>}4f@JBS)MJE&&o<{r9Z#F09)-Z-;&e;xL- zzmdNY+u?8QZ_Ix2H}yAVzxrGH-(*HXM3$y)|+gf)y8Va4p{B2cy`1} zuoBog;@OGpJn`(0><01dZT8US_G?_)&F${|4QGmTl=lt}4Nl-|Q=Wfsp=@-4y5rKE zwbeCC($p|0r=CZSR!@6+&!BQ*+nK6dKvBU=B|UA0)>e>qkUrj1HU(KhvYH~S2+>^` zR)&uG0(*hTr8cV#1{=r5si$l^}( z(?@{!3vmV^_cV>P5O`0Rc|S+*CsfN(oLGTA7F484hZq*YT*yLeGzPM<>?}KES5L=0MeDU5H1 z6mqJ&y1CR!&CNQn4iKxJm&wDrums4ke>}6hzm{#z& zP=u{wtDz`c&o+NRakiChg_7!eQz^Cb;#5psOI>wpp{_c;o_Z~8oxT<}gpkU{i}T_X zF~;#YiWsZ$Y7{Zn;#-!!Sh9zV zr7SN?+j=7sydLE;h8mHnM&zUTt|>@0E4t5Lr|ymS+4 z6DvJX?Wz^#Q0pF2Yd~Gg0Hty=uJ*NSS#rh@k9i1kL>@ zYa(Q&9Bc{1TFa~-A&xS!OHk3eV%>%|6hjPzcPUyJ4&5m_m=Ar4`@eht_B{p27=pr3lA&!qxzm)2u45<@m267v=gH=*tdcEQIVD@N z@=CtWDk%8|dsfL-tfG={vPw#}rj_T(Hmr)0ZCN!X-)7a7>_Cj_$@kbxN=`5{dD2*7 zMk~40%<+SY7gvO=;Y1 zX%zDatqFwC7fLo~^ObDDzEpp*C0n56>+CBfTd{>ozRA8;@(s2~$=2)}CEKvYO1AZ9 z^CXQiyC-RsPbs;=pF_!&{+voa@aIzUp+C2hkNmNoq!H&)vJy*H^EXA!+*CDl)6~pO zS2OpynzI>d&St7voTX-Nwwk#)YUbv8^Wl$Dh-XlUXH@#A6iVSrp<~ z72*tx2vART3*{?7t#lUQ{fvnBrc+(@#!)^fL0qh_M6ry@)-ov@iT2Lz9ff61{i~g4 zNuKW|e=>}hG;6x`xiy1)?P_a{wboi^{ba4THdq_+ z7IGA5pou<|=(p}zcddKYed~es(0XK(+p|BjN7y6nQTAwij6K#KXOFj+*h}qY_ILJj z`+NHbdxgEy-e(`M57|fTqxNz8qkp$=u-`{6~!-E|drzofXkp5pHMin|*q?rx~KyOHAVmlb!vqPV-U;_fE)Lt^b$ z9haE8m163iimCfx24d<@Xq?NT>ED^re{BZ;BlGllhAe-DCMYxm3dcx=V-|&DtQvV? zHS#z$^7?AzjZ}=%I3@ElEisE#AY3)DUivO`arq~W0A)T@mP?jRp4Exl4 zqMFYLHJ`4U&va@&Bh`GSSMwRA<}-tu&x~q5GpYHER`Z!z&1VeFTPDb&dvBYVruRtk zre3k$npb~z3d&BIvQw_?ROo#jGa}8t(G-=WdV$9)U3m_*3X~!Yrhd-Ie#&B5Bi+7PAl3iYOoyBfIby{pRH*Htw4q+SF|rM9HRfL}>Y57b zO^L*iIxkY}2-8FA$Wv2(IZD@g$L!`|;l{eL0B(PNH$T-Baf!>_(k{g+?z8T*5OAM! zYtuG$-MWz8ZRj?HDEBq@HOSz$bX!73b(A{Zn;!q5frnWFae8Pv5 z^rwH;abAO8q}m?zz5ZlNzK6bTX`X8E5^1*0s?Jr9>PzsfX}0#xLouF+5jjNOC)>00 zd<3-+9}6!0>fNEodvv3(kH&DCU-bS?-D5eYd1n`?We4Bo{hhi8jgWaL)JapfnCezh zzoxUKG_}c8OECve;v+(OIe_X%P<=e_&ij9)IcIg=ky^TYZ$qW2EykOu%#icytXP`* zXihUm5t!gbcqz8>NeevWGMl)bF7T z!+T@b`(A!h56Kkkd%qImefK<>Zx{dr*kb0r$?JVrrD^Fv%s-5IzuMz{XQj57-oJk; zVtrUV^WGTtzDa5Jildd^nt8v9;(gywvsYHg$|_Q>P)}!NujsZEtFJ>=@2!sfZUeIM z0`AN1%TUN|>NbbMYK;_kliVaIq3k_nB~#1{t{E@`wCC&Iig#PNZD_r`<+cZ(+rfR8 zR?2&BCve;k+z%ka?c#n2uKSVu5v_l^o^Ef*=zi?>h0Jb0w;yD22e^rl)g9`Nfv4OF z?hNY3Eb<%PbN!rp^m6J7O{dT3or|e+nd)2tbuL?-3)Q(I)VZS6xiYA8MXPhgsB>j; zhqyx^d+HfKS7-bJO1fXtdCR7HF*=7T8>sR{RW?y&-;}rN$S-(WX(}_Odc1$3V35b_ z;MP)Y-Y-@ZP`^l!5pt;ZmuOTC)nD~e|EjP4B71VHxz&}YE2j2|hFHCi=S3gy_2lpR z`tLM*vgxWPCDp$}jEC;fhwLPYvdVFgO!>e(SO`lfBUl3)VLRmn```$iq^#g7+=hqD zp#0Kh8Ch1!F!Qk@tQ6&#m05pvR)@08CKO+{4$m{mV{)>fJXGd!^HQ1DeVWRrUGm;; zKJuiT{AmFy3%HbRxdlDTaSM^xIGc=GLT{hw#HN@TKw1zmXq$Dc6^~%gZ znl}id)mr>4^;*XN-HLyVQM0Ww2Db&p1pU1-SW4Mm0x)a}pHQZkmu9gkd5vLg4qL+x zu$$bajK3Oh!Ml;KozK_vBmAz25=BG}(Mt3XW5hzSSsWJ+jcB8UQO9U&^f4wFi;eBZ zX_K2-%{a53+1~7DCY#I5U(NGApD%~6oUf6uqc71n-S>lUm+ybFv}CNTD4WR6GD*&o ztK>d;-H-l!{;K|F{sjMU|2+RX{~`bFKxCj$;Qz4q9dJ@q+1{sma)Ry~s%i+sFbqSS zVaOTDARsvhK{7~2f*^=24_)3W5=0~?$sjpLMc2r>1`Nxh7|?Z1=q>_Fc<27Rrs-1G z)$hH}-+saV*;9X<|E(L&J@=%0tGanozoaQi3zN1dJ)iVJ(zRqeIX}5o@<8_B7ANmY zemVI9d#goKs-?6|8JaRPWf^;^ucmyK8k?HI9%skY5vj9NSEU|GeIxbDw8XTmw0db> z)5fIDNn4k8EbZ;IZ`kw9Db%na24mhcm&|usHGEesK#YGZGyk#;g6~^MX&|M6l=dMx zKyrZO_>eL{$^a?jL&^dv3#6t+ka9kxJdpB0%KMNCKq>&K;6o|`sR*Q^56K0R z3nbTv7q$QA+KIC>Fw*$G| zhqMCH3P>v-(i%u>Agz5!8z60fwDBQrfwTqE)`xTi(h*2UAJPd(Cm@}CNEaYofOPR8 zJ%RKD($k0Z0@4deFCWqyNN*s$eMlc5eSq}wA$@`L1=81t^aIilNIxIaA4q>7{e8#) zAOnAZ4DcZXfeZvP(1#2HG6={ZA2I~U5FkT*$WS0dfeiH_!+;C}GR%hz2QnPUa33-P z$Os@Ke8@;3BY}+cA)|qe1~S@*i~%wR$QU0o7RXp2V|~bYAmf3I_aPI2OaL;$hfD-A z5y(UzG6~2eAd`H^WFV7)O!gu70=XB+y*__rDv+r_ruvX+K&Ani=0m0fnGR&S54j)6 z{Xp*bArAm~0LTMAWG0ZAKxX=oSwLn1ndL)f1DOqEwhws_$b�^dS!cc?ifuKIC^m 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

  • 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