From 5501a8bfd2ed59b2ed098303c8ed541c7d7d7223 Mon Sep 17 00:00:00 2001 From: Nikos M Date: Mon, 20 Feb 2023 11:18:04 +0200 Subject: [PATCH] v.0.9.10 contd * correct Arc boundingbox/convexhull * correct typos in documentation --- README.md | 2 +- build/Geometrize.js | 147 ++++++++++++++++++++++++---------------- build/Geometrize.min.js | 4 +- convexhulls.png | Bin 106538 -> 119184 bytes manual.md | 81 ++++++++++++++-------- src/Arc.js | 57 ++++++++++------ src/CBezier.js | 2 + src/Circle.js | 2 + src/Curve2D.js | 12 ++-- src/Ellipse.js | 2 + src/Line.js | 4 +- src/Object2D.js | 18 ++++- src/Object3D.js | 8 +-- src/Point2D.js | 3 +- src/Point3D.js | 4 +- src/Polygon.js | 2 + src/Polyline.js | 2 + src/QBezier.js | 2 + src/Scene2D.js | 8 ++- src/Topos2D.js | 13 ---- src/utils.js | 16 ++--- test/intersect.html | 17 +++++ 22 files changed, 253 insertions(+), 153 deletions(-) diff --git a/README.md b/README.md index 9c4bb8c..1b9ea12 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ Computational Geometry and Rendering library for JavaScript -**version: 0.9.10** (73 kB minified) +**version: 0.9.10** (72 kB minified) [API Reference](/manual.md) diff --git a/build/Geometrize.js b/build/Geometrize.js index e9f202c..678e0fb 100644 --- a/build/Geometrize.js +++ b/build/Geometrize.js @@ -2,14 +2,14 @@ * Geometrize * computational geometry and rendering library for JavaScript * -* @version 0.9.10 (2023-02-19 19:31:38) +* @version 0.9.10 (2023-02-20 11:14:57) * https://github.com/foo123/Geometrize * **//** * Geometrize * computational geometry and rendering library for JavaScript * -* @version 0.9.10 (2023-02-19 19:31:38) +* @version 0.9.10 (2023-02-20 11:14:57) * https://github.com/foo123/Geometrize * **/ @@ -686,14 +686,14 @@ var Object2D = makeClass(null, merge(null, { return this; }, /**[DOC_MD] - * * `transform(matrix): Object2D` get a transformed copy of this object by matrix + * * `transform(matrix2d): Object2D` get a transformed copy of this object by matrix2d [/DOC_MD]**/ transform: function() { return this; }, setStyle: null, /**[DOC_MD] - * * `getBoundingBox(): Object` get bounding box {xmin,ymin,xmax,ymax} of object + * * `getBoundingBox(): Object{xmin,ymin,xmax,ymax}` get bounding box of object [/DOC_MD]**/ getBoundingBox: function() { return { @@ -710,7 +710,7 @@ var Object2D = makeClass(null, merge(null, { return []; }, /**[DOC_MD] - * * `getCenter(): Object` get center {x,y} of object + * * `getCenter(): Object{x,y}` get center of object [/DOC_MD]**/ getCenter: function() { var bb = this.getBoundingBox(); @@ -719,15 +719,27 @@ var Object2D = makeClass(null, merge(null, { y: (bb.ymin + bb.ymax)/2 }; }, +/**[DOC_MD] + * * `hasPoint(point): Bool` check if given point is part of the boundary this object +[/DOC_MD]**/ hasPoint: function(point) { return false; }, +/**[DOC_MD] + * * `hasInsidePoint(point, strict): Bool` check if given point is part of the interior of this object (where applicable) +[/DOC_MD]**/ hasInsidePoint: function(point, strict) { return false; }, +/**[DOC_MD] + * * `intersects(other): Point2D[]|Bool` return array of intersection points with other 2d object or false +[/DOC_MD]**/ intersects: function(other) { return false; }, +/**[DOC_MD] + * * `intersects(other): Point2D[]|Bool` return array of intersection points of object with itself or false +[/DOC_MD]**/ intersectsSelf: function() { return false; }, @@ -762,7 +774,8 @@ Geometrize.Object2D = Object2D; * * ```javascript * const p = Point2D(x, y); - * p.x = x+10; // change it + * p.x += 10; // change it + * p.y = 5; // change it * ``` [/DOC_MD]**/ var Point2D = makeClass(Object2D, { @@ -1090,19 +1103,12 @@ var Topos2D = makeClass(Object2D, { } return self.$super('isChanged', arguments); }, -/**[DOC_MD] - * **Methods:** - * -[/DOC_MD]**/ clone: function() { return new Topos2D(this.points.map(function(p) {return p.clone();})); }, transform: function(matrix) { return new Topos2D(this.points.map(function(p) {return matrix.transform(p);})); }, -/**[DOC_MD] - * * `hasPoint(point): Bool` check if given point belongs to this topos -[/DOC_MD]**/ hasPoint: function(point) { var p = this.points, n = p.length, j; for (j=0; j theta2) - { - t = theta; - theta = theta2; - theta2 = t; - otherArc = !otherArc; - } // find min/max from zeroes of directional derivative along x and y // first get of whole ellipse // along x axis @@ -2967,23 +2962,47 @@ var Arc = makeClass(EllipticArc2D, { ymax = p3; } // refine bounding box by elliminating points not on the arc - txmin = vector_angle(1, 0, (xmin.x - cx)/rx, (xmin.y - cy)/ry); - txmax = vector_angle(1, 0, (xmax.x - cx)/rx, (xmax.y - cy)/ry); - tymin = vector_angle(1, 0, (ymin.x - cx)/rx, (ymin.y - cy)/ry); - tymax = vector_angle(1, 0, (ymax.x - cx)/rx, (ymax.y - cy)/ry); - if ((!otherArc && (cmod(theta) > cmod(txmin) || cmod(theta2) < cmod(txmin))) || (otherArc && !(cmod(theta) > cmod(txmin) || cmod(theta2) < cmod(txmin)))) + if (!sweep && otherArc) + { + t = theta; + theta = theta2; + theta2 = t; + } + mtheta = cmod(theta); + mtheta2 = cmod(theta2); + if (theta > theta2) + { + /*t = theta; + theta = theta2; + theta2 = t;*/ + if (mtheta > mtheta2) + { + t = mtheta; + mtheta = mtheta2; + mtheta2 = t; + } + else + { + otherArc = !otherArc; + } + } + txmin = cmod(vector_angle(1, 0, (xmin.x - cx)/rx, (xmin.y - cy)/ry)); + txmax = cmod(vector_angle(1, 0, (xmax.x - cx)/rx, (xmax.y - cy)/ry)); + tymin = cmod(vector_angle(1, 0, (ymin.x - cx)/rx, (ymin.y - cy)/ry)); + tymax = cmod(vector_angle(1, 0, (ymax.x - cx)/rx, (ymax.y - cy)/ry)); + if ((!otherArc && (mtheta > txmin || mtheta2 < txmin)) || (otherArc && !(mtheta > txmin || mtheta2 < txmin))) { xmin = o1.x < o2.x ? o1 : o2; } - if ((!otherArc && (cmod(theta) > cmod(txmax) || cmod(theta2) < cmod(txmax))) || (otherArc && !(cmod(theta) > cmod(txmax) || cmod(theta2) < cmod(txmax)))) + if ((!otherArc && (mtheta > txmax || mtheta2 < txmax)) || (otherArc && !(mtheta > txmax || mtheta2 < txmax))) { xmax = o1.x > o2.x ? o1 : o2; } - if ((!otherArc && (cmod(theta) > cmod(tymin) || cmod(theta2) < cmod(tymin))) || (otherArc && !(cmod(theta) > cmod(tymin) || cmod(theta2) < cmod(tymin)))) + if ((!otherArc && (mtheta > tymin || mtheta2 < tymin)) || (otherArc && !(mtheta > tymin || mtheta2 < tymin))) { ymin = o1.y < o2.y ? o1 : o2; } - if ((!otherArc && (cmod(theta) > cmod(tymax) || cmod(theta2) < cmod(tymax))) || (otherArc && !(cmod(theta) > cmod(tymax) || cmod(theta2) < cmod(tymax)))) + if ((!otherArc && (mtheta > tymax || mtheta2 < tymax)) || (otherArc && !(mtheta > tymax || mtheta2 < tymax))) { ymax = o1.y > o2.y ? o1 : o2; } @@ -3123,6 +3142,8 @@ Geometrize.Arc = Arc; * Represents a quadratic bezier curve defined by its control points * ```javascript * const qbezier = QBezier([p1, p2, p3]); + * qbezier.points[0].x += 10; // change it + * qbezier.points[1].x = 20; // change it * ``` [/DOC_MD]**/ var QBezier = makeClass(Bezier2D, { @@ -3288,6 +3309,8 @@ Geometrize.QBezier = QBezier; * Represents a cubic bezier curve defined by its control points * ```javascript * const cbezier = CBezier([p1, p2, p3, p4]); + * cbezier.points[0].x += 10; // change it + * cbezier.points[2].x = 20; // change it * ``` [/DOC_MD]**/ var CBezier = makeClass(Bezier2D, { @@ -3458,6 +3481,8 @@ Geometrize.CBezier = CBezier; * Represents a polygon (a closed polyline) defined by its vertices * ```javascript * const polygon = Polygon([p1, p2, .., pn]); + * polygon.vertices[0].x += 10; // change it + * polygon.vertices[2].x = 20; // change it * ``` [/DOC_MD]**/ var Polygon = makeClass(Curve2D, { @@ -3781,6 +3806,8 @@ Geometrize.Rect = Rect; * Represents a circle of given center (point) and radius * ```javascript * const circle = Circle(center, radius); + * circle.center.x += 10; // change it + * circle.radius = 12; // change it * ``` [/DOC_MD]**/ var Circle = makeClass(EllipticArc2D, { @@ -4019,6 +4046,8 @@ Geometrize.Circle = Circle; * Represents an ellipse of given center (point), radiusX, radiusY and rotation angle * ```javascript * const ellipse = Ellipse(center, radiusX, radiusY, angle); + * ellipse.center.x += 10; // change it + * ellipse.radiusX = 12; // change it * ``` [/DOC_MD]**/ var Ellipse = makeClass(EllipticArc2D, { @@ -4331,7 +4360,13 @@ Geometrize.Shape2D = Shape2D; * * ```javascript * const scene = Scene2D(containerEl, viewBoxMinX, viewBoxMinY, viewBoxMaxX, viewBoxMaxY); - * scene.add(Line([p1, p2])); + * const line = Line([p1, p2]); + * scene.add(line); // add object + * scene.remove(line); // remove object + * scene.x0 = 20; // change viewport + * scene.x1 = 100; // change viewport + * scene.y0 = 10; // change viewport + * scene.y1 = 200; // change viewport * ``` [/DOC_MD]**/ var Scene2D = makeClass(null, { @@ -5110,7 +5145,7 @@ function is_convex(points) new_x = newpoint.x; new_y = newpoint.y; new_direction = stdMath.atan2(new_y - old_y, new_x - old_x); - angle = fold(new_direction - old_direction, -PI, PI, TWO_PI); + angle = mod(new_direction - old_direction, TWO_PI, -PI, PI); if (0 === ndx) { if (0 === angle) return false; @@ -5738,22 +5773,16 @@ function clamp(x, xmin, xmax) { return stdMath.min(stdMath.max(x, xmin), xmax); } -function fold(x, xmin, xmax, xm) -{ - if (x < xmin) x += xm; - if (x > xmax) x -= xm; - return x; -} -function mod(x, m) +function mod(x, m, xmin, xmax) { x -= m*stdMath.floor(x/m); - if (0 > x) x += m; - if (m < x) x -= m; + if (xmin > x) x += m; + if (xmax < x) x -= m; return x; } function cmod(x) { - return mod(x, TWO_PI); + return mod(x, TWO_PI, 0, TWO_PI); } function deg(rad) { diff --git a/build/Geometrize.min.js b/build/Geometrize.min.js index c4e8fdc..51f0eb1 100644 --- a/build/Geometrize.min.js +++ b/build/Geometrize.min.js @@ -2,7 +2,7 @@ * Geometrize * computational geometry and rendering library for JavaScript * -* @version 0.9.10 (2023-02-19 19:31:38) +* @version 0.9.10 (2023-02-20 11:14:57) * https://github.com/foo123/Geometrize * -**/!function(t,n,e){"use strict";"object"==typeof module&&module.exports?(module.$deps=module.$deps||{})&&(module.exports=module.$deps[n]=e.call(t)):"function"==typeof define&&define.amd&&"function"==typeof require&&"function"==typeof require.specified&&require.specified(n)?define(n,["module"],function(n){return e.moduleUri=n.uri,e.call(t)}):n in t||(t[n]=e.call(t)||1)&&"function"==typeof define&&define.amd&&define(function(){return t[n]})}("undefined"!=typeof self?self:this,"Geometrize",function(){"use strict";var x=Object.prototype.hasOwnProperty,t=Object.prototype.toString,C=Object.defineProperty,_=Math,$=_.abs,w=_.sqrt,l=_.pow,P=_.PI,S=2*P,a=1e-6,A=P/4,r=w(2),c=w(3),f=20,h=.01,g={},y=function(){},n="undefined"!=typeof global&&"[object global]"===t.call(global),p="undefined"!=typeof window&&"[object Window]"===t.call(window),d=(n?global:p&&window,{VERSION:"0.9.10",Math:{},Geometry:{}});function e(n,t,e){arguments.length<2&&(t=n,n=null);var r,i,o,u=x.call(t,"constructor")?t.constructor:function(){};for(r in n?(u.prototype=Object.create(n.prototype),u.prototype.$super=(i=n,o={},function(n,t){var e=":"+n;return 1===o[e]?(i.prototype.$super||y).call(this,n,t):(o[e]=1,t=("constructor"===n?i:i.prototype[n]||y).apply(this,t||[]),o[e]=0,t)})):u.prototype.$super=y,u.prototype.constructor=u,t)x.call(t,r)&&"constructor"!==r&&(u.prototype[r]=t[r]);if(e)for(r in e)x.call(e,r)&&(u[r]=e[r]);return u}var i={$changed:!1,$cb:null,dispose:function(){this.$cb=null},isChanged:function(n){return arguments.length?(this.$changed=!!n,this):this.$changed},onChange:function(n,t){var e,r=this;return!1===t&&(yt(n)||ft(n))?r.$cb&&-1!==(e=(ft(n)?r.$cb.map(function(n){return st(n.id)}):r.$cb).indexOf(n))&&r.$cb.splice(e,1):yt(n)&&(r.$cb||(r.$cb=[]),-1===(e=r.$cb.indexOf(n))&&r.$cb.push(n)),r},triggerChange:function(){var t=this;return t.$cb&&t.$cb.forEach(function(n){n(t)}),t}},o=e(null,Wn(null,{constructor:function n(t){var e=this,r=null,i=null;return t instanceof n?t:e instanceof n?(i=Wn(r=n.Properties,{},n.Defaults),gt(t)&&(i=Wn(r,i,t)),r.forEach(function(t){C(e,t,{get:function(){return i[t]},set:function(n){i[t]!==n&&(i[t]=n,e.isChanged(!0),e.triggerChange())},enumerable:!0,configurable:!1})}),e.toObj=function(){return r.reduce(function(n,t){return n[t]=i[t],n},{})},void e.isChanged(!0)):new n(t)},clone:function(){return new o(this.toObj())},toSVG:function(){var e=this.toObj();return Object.keys(e).reduce(function(n,t){return n+t+":"+st(e[t])+";"},"")},toCanvas:function(n){var t=this;return n.lineCap=t["stroke-linecap"],n.lineJoin=t["stroke-linejoin"],n.lineWidth=t["stroke-width"],n.fillStyle="none"===t.fill?"transparent":t.fill,n.strokeStyle=t.stroke,n}},i),{Properties:["stroke-width","stroke","stroke-opacity","stroke-linecap","stroke-linejoin","fill","fill-opacity","fill-rule"],Defaults:{"stroke-width":1,stroke:"#000000","stroke-opacity":1,"stroke-linecap":"butt","stroke-linejoin":"miter",fill:"none","fill-opacity":1,"fill-rule":"evenodd"}});d.Style=o;var G=e(null,Wn(null,{constructor:function e(r){var i=this;return r instanceof e?r:i instanceof e?(r=at(r),i.dispose=function(){r=null,e.prototype.dispose.call(i)},i.clone=function(){return new e(r)},i.val=function(n){if(arguments.length){n=n instanceof e?n.val():at(n);var t=!Fn(r,n);return r=n,t&&(i.isChanged(!0),i.triggerChange()),i}return r},i.valueOf=function(){return r.valueOf()},i.toString=function(){return st(r)},void i.isChanged(!0)):new e(r)},clone:null,val:null,valueOf:null,toString:null},i)),m=e(null,{constructor:function n(t,e,r,i,o,u){var s=this;return t instanceof n?t:s instanceof n?void(ht(t)&&6<=t.length?(s.$00=at(t[0]),s.$01=at(t[1]),s.$02=at(t[2]),s.$10=at(t[3]),s.$11=at(t[4]),s.$12=at(t[5])):(s.$00=t,s.$01=e,s.$02=r,s.$10=i,s.$11=o,s.$12=u)):new n(t,e,r,i,o,u)},$00:1,$01:0,$02:0,$10:0,$11:1,$12:0,clone:function(){var n=this;return new m(n.$00,n.$01,n.$02,n.$10,n.$11,n.$12)},eq:function(n){if(n instanceof m){var t=this;return Fn(t.$00,n.$00)&&Fn(t.$01,n.$01)&&Fn(t.$02,n.$02)&&Fn(t.$10,n.$10)&&Fn(t.$11,n.$11)&&Fn(t.$12,n.$12)}return!1},add:function(n){var t=this;return n instanceof m?new m(t.$00+n.$00,t.$01+n.$01,t.$02+n.$02,t.$10+n.$10,t.$11+n.$11,t.$12+n.$12):(n=at(n),new m(t.$00+n,t.$01+n,t.$02+n,t.$10+n,t.$11+n,t.$12+n))},mul:function(n){var t=this,e=t.$00,r=t.$01,i=t.$02,o=t.$10,u=t.$11,s=t.$12;if(n instanceof m){var a=n.$00,l=n.$01,c=n.$02,f=n.$10,h=n.$11,t=n.$12;return new m(e*a+r*f,e*l+r*h,e*c+r*t+i,o*a+u*f,o*l+u*h,o*c+u*t+s)}return n=at(n),new m(e*n,r*n,i*n,o*n,u*n,s*n)},det:function(){var n=this,t=n.$00,e=n.$01,r=(n.$02,n.$10),i=n.$11;n.$12;return t*i-e*r},inv:function(){var n,t,e,r=this,i=r.$00,o=r.$01,u=r.$02,s=r.$10,a=r.$11,l=r.$12,c=i*a-o*s;return Zn(c,0)?null:new m(n=a/c,t=-o/c,-n*u-t*l,e=-s/c,r=i/c,-e*u-r*l)},transform:function(n,t){var e=this,r=n.x,i=n.y,n=e.$00*r+e.$01*i+e.$02,e=e.$10*r+e.$11*i+e.$12;return t?(t.x=n,t.y=e):t=new j(n,e),t},getTranslation:function(){return{x:this.$02,y:this.$12}},getRotationAngle:function(){return _.atan2(this.$10,this.$00)},getScale:function(){var n=this.$00,t=-this.$01,e=this.$10,r=this.$11;return{x:Nn(n)*Bn(n,e),y:Nn(r)*Bn(t,r)}},toArray:function(){var n=this;return[n.$00,n.$01,n.$02,n.$10,n.$11,n.$12,0,0,1]},toSVG:function(){var n=this;return"matrix("+st(n.$00)+" "+st(n.$10)+" "+st(n.$01)+" "+st(n.$11)+" "+st(n.$02)+" "+st(n.$12)+")"},toCSS:function(){var n=this;return"matrix("+st(n.$00)+","+st(n.$10)+","+st(n.$01)+","+st(n.$11)+","+st(n.$02)+","+st(n.$12)+")"},toCanvas:function(n){var t=this;return n.transform(t.$00,t.$10,t.$01,t.$11,t.$02,t.$12),n},toTex:function(){return m.arrayTex(this.toArray(),3,3)},toString:function(){return m.arrayString(this.toArray(),3,3)}},{eye:function(){return new m(1,0,0,0,1,0)},translate:function(n,t){return new m(1,0,at(n),0,1,at(t))},rotate:function(n,t,e){e=at(e||0),t=at(t||0),n=at(n||0);var r=_.cos(n),n=_.sin(n);return new m(r,-n,t-r*t+n*e,n,r,e-r*e-n*t)},scale:function(n,t,e,r){return r=at(r||0),e=at(e||0),n=at(n),t=at(t),new m(n,0,-n*e+e,0,t,-t*r+r)},reflectX:function(){return new m(-1,0,0,0,1,0)},reflectY:function(){return new m(1,0,0,0,-1,0)},shearX:function(n){return new m(1,at(n),0,0,1,0)},shearY:function(n){return new m(1,0,0,at(n),1,0)},arrayTex:function(n,t,e){for(var r="\\begin{pmatrix}",i=0;iP,fs:0qn(a)||qn(p)qn(a)||qn(p)qn(f)||qn(p)qn(f)||qn(p)t.x?n:t),(!l&&(qn(u)>qn(s)||qn(p)qn(s)||qn(p)qn(o)||qn(p)qn(o)||qn(p)t.y?n:t),{ymin:x.y,xmin:y.x,ymax:c.y,xmax:h.x}}),configurable:!1}),C(l,"_hull",{get:function(){var t,n,e,r,i,o,u,s;return null==b&&(t=l.center,n=l.rX,e=l.rY,r=l.theta,i=l.dtheta,o=l.start,u=l.end,s=_.abs(i)+A=S&&n.closePath()},toTex:function(){var n=this;return"\\text{Arc: }\\left("+[lt(n.start),lt(n.end),st(n.radiusX),st(n.radiusY),st(n.angle)+"\\text{°}",st(n.largeArc?1:0),st(n.sweep?1:0)].join(",")+"\\right)"},toString:function(){var n=this;return"Arc("+[st(n.start),st(n.end),st(n.radiusX),st(n.radiusY),st(n.angle)+"°",st(n.largeArc),st(n.sweep)].join(",")+")"}});d.Arc=k;var O=e(n,{constructor:function n(t){var e,r=this,i=null,o=null,u=null;return t instanceof n?t:r instanceof n?(r.$super("constructor",[t]),C(r,"length",{get:function(){return null==i&&(i=gn(r._lines)),i},enumerable:!0,configurable:!1}),C(r,"_bbox",{get:function(){return null==o&&(o=e(r._points)),o},enumerable:!(e=function(t){var n=pn(t[0].x-2*t[1].x+t[2].x,t[1].x-t[0].x),e=!1===n?[t[1]]:n.map(function(n){return 0<=n&&n<=1?Sn(n,t):t[1]}),r=pn(t[0].y-2*t[1].y+t[2].y,t[1].y-t[0].y),n=!1===r?[t[1]]:r.map(function(n){return 0<=n&&n<=1?Sn(n,t):t[1]}),r=_.min.apply(_,e.concat([t[0],t[2]]).map(Un)),e=_.max.apply(_,e.concat([t[0],t[2]]).map(Un));return{ymin:_.min.apply(_,n.concat([t[0],t[2]]).map(Hn)),xmin:r,ymax:_.max.apply(_,n.concat([t[0],t[2]]).map(Hn)),xmax:e}}),configurable:!1}),C(r,"_hull",{get:function(){return null==u&&(u=zn(r._points,e).map(j)),u},enumerable:!1,configurable:!1}),void(r.isChanged=function(n){return!0===n&&(u=o=i=null),r.$super("isChanged",arguments)})):new n(t)},name:"QBezier",clone:function(){return new O(this.points.map(function(n){return n.clone()}))},transform:function(t){return new O(this.points.map(function(n){return n.transform(t)}))},f:function(n){return Sn(n,this._points)},hasPoint:function(n){return function(n,t){var e;if(!(e=dn(t[0].x-2*t[1].x+t[2].x,-2*t[0].x+2*t[1].x,t[0].x-n.x)))return!1;1"+st(r)+"":"/>");return t}function Kn(u,s,a,i){if(yt(u.onChange))return u;function l(t){u.$cb.forEach(function(n){n(t)})}var c=!0;i=i||tt;var f=function(n,t){for(var e=n;eP,fs:0t.x?n:t),(!l&&(dt.y?n:t),{ymin:y.y,xmin:g.x,ymax:h.y,xmax:s.x}}),configurable:!1}),C(l,"_hull",{get:function(){var t,n,e,r,i,o,u,s;return null==b&&(t=l.center,n=l.rX,e=l.rY,r=l.theta,i=l.dtheta,o=l.start,u=l.end,s=_.abs(i)+A=S&&n.closePath()},toTex:function(){var n=this;return"\\text{Arc: }\\left("+[ct(n.start),ct(n.end),at(n.radiusX),at(n.radiusY),at(n.angle)+"\\text{°}",at(n.largeArc?1:0),at(n.sweep?1:0)].join(",")+"\\right)"},toString:function(){var n=this;return"Arc("+[at(n.start),at(n.end),at(n.radiusX),at(n.radiusY),at(n.angle)+"°",at(n.largeArc),at(n.sweep)].join(",")+")"}});d.Arc=k;var O=e(n,{constructor:function n(t){var e,r=this,i=null,o=null,u=null;return t instanceof n?t:r instanceof n?(r.$super("constructor",[t]),C(r,"length",{get:function(){return null==i&&(i=gn(r._lines)),i},enumerable:!0,configurable:!1}),C(r,"_bbox",{get:function(){return null==o&&(o=e(r._points)),o},enumerable:!(e=function(t){var n=pn(t[0].x-2*t[1].x+t[2].x,t[1].x-t[0].x),e=!1===n?[t[1]]:n.map(function(n){return 0<=n&&n<=1?Sn(n,t):t[1]}),r=pn(t[0].y-2*t[1].y+t[2].y,t[1].y-t[0].y),n=!1===r?[t[1]]:r.map(function(n){return 0<=n&&n<=1?Sn(n,t):t[1]}),r=_.min.apply(_,e.concat([t[0],t[2]]).map(Hn)),e=_.max.apply(_,e.concat([t[0],t[2]]).map(Hn));return{ymin:_.min.apply(_,n.concat([t[0],t[2]]).map(Wn)),xmin:r,ymax:_.max.apply(_,n.concat([t[0],t[2]]).map(Wn)),xmax:e}}),configurable:!1}),C(r,"_hull",{get:function(){return null==u&&(u=zn(r._points,e).map(j)),u},enumerable:!1,configurable:!1}),void(r.isChanged=function(n){return!0===n&&(u=o=i=null),r.$super("isChanged",arguments)})):new n(t)},name:"QBezier",clone:function(){return new O(this.points.map(function(n){return n.clone()}))},transform:function(t){return new O(this.points.map(function(n){return n.transform(t)}))},f:function(n){return Sn(n,this._points)},hasPoint:function(n){return function(n,t){var e;if(!(e=dn(t[0].x-2*t[1].x+t[2].x,-2*t[0].x+2*t[1].x,t[0].x-n.x)))return!1;1"+at(r)+"":"/>");return t}function nt(u,s,a,i){if(xt(u.onChange))return u;function l(t){u.$cb.forEach(function(n){n(t)})}var c=!0;i=i||et;var f=function(n,t){for(var e=n;e59vL`9kn1u04s5KyXg5RfLl*C)KVq6SglCa)b{e*O!Xg*9e#2wRd5Jzppzf7`Ore5lH)U1xCkfA%PSdbWVfAf&aI$J zsFY*yD|Sh`9l4t}CuY#HqrWux(_^hPYNu6IX*7#?`zdr@v{5-?pQI$$5iBeuSKdTE zvZ5zBq6nGP@>kfAc&-Zbu&ao7EyavAD%rqwWcI0Tl0cj;`e@GfLq`dVT$S^|VSoKD z?;5_gsQi9b7BWrk2vpBN${dcoQJa*iWM9Tm#3zeY_+EQ@ucNtrU#xZiW5}D&<z>z81_*S(VgBJ8vXxK7*_a6l#C-+$L*fe9d-#&oIh&$%Jl+NWlNZ z)GCj)^nE_cy1YWBp;N*53w?l$^^vif?KM=m~}xL>JbeEMaw?S&4+WK4FwaG}H-*B~1Py&zP?M8)S!H#ORydUHH& zq8B1wvQ2G)tS<%~esKh|;|=9@c*Y!SW)Y+FF}6lrrHUu52FL&nPITiDdpW*HADC(I zrIp(U*jF%L(9fC--9#0W4 zVqd^WB3)L!TF&I;$oRHL?LM>GM7Kj2^!I^Z1jgVnrdi zk*mBLb45zd$Ik9!Kiz1j00Ff8r;G=J(zGw zmP`rh2*=Pxy7M9_qG8!5wh7x0@i&A(zl^Ky&5fEYGYLEBZjBvE2-)6y&rG14(IJ>J z@X1K*Tgi!WFh==ujArG-{GLjOk?h#&UeY<TvDNtd8+hlIGGzpfd)`s#iS-9#qZT~Kgehj~1dnqyV3er^135xx^OCn= z!|G?H-jbPU6GKt^FhgJa8eO~LGhx#B7Z7&Bi~&|jG*>8BId?|C-mQS}QK7_|xFK zue7L%=Mbl%w<8oC5l&H;P6e&f+K*%vvt*D<&M9josq;kNA=~koV~O1~{<}p(kuir#s>;)jQu`A{>$eTjPFB-U zvAVU1H+tS|bs&w_tAA8#Tzou1SLeAVj9zH!qo8@RbvaiyPefg47s9Zwn&ydcU89Jp zsH$4C?~`tmS29A~b~T~zg;0JSG&&>KBwMVY{`B)a*sK;>k1Q=0|_Ph!%@ zgnmt6-znMQvXw1#s6v)j(8x2WaA8QG_LF->?c50VlSMCy;Sp@N^Y#`TU+n(V0zO{z z30%Ry8eLzZ*o7|x-DL*=!-w?lyoXs=UJo%dsj1 zEJNJ<_JIqCiG?{Fh87yt-YT@p74Z$#gt5s9R?IrtVNPzaV7Pmqn2_#I>{(|E$&H{q^o$9U+6ZkM6BSqgvP62I(lmD3U_nv zeNjoMbw3oaUc#Nm)1`=Wc3RV_CJWQX{%W)J{=9k9vD3tGUp9cnsNmj4u<(!GFF2IE zEb7=Q2AT40kR4|8I;Gs0=!K1VBk0RMiHG(9!4p^)7s?OW%n;$stx|XAy7O{&$#Y=I z&tWa2*Tp5b{PZOL2W@-HBryP>z}(_{B#xr@oq@cvUlG1*P#-cD1#?IGr3V{_g=h1%AM1r*e{T} z2X&`kQAr0Xx@5DQJx|1kwu)wYo89_65x3VlYZ=ELd3(#6J~QkY(gdS02j*fZ(=PVC$4 zTM1u-xJJ7r-?#Pyr)A%9Q-ZlbdQ7I#a>#gtgqkhSLAS5#SufBh!<^$a|3T+{ybHI* z1K%$PscfK%Y0(4hZ;Rov(VLLFQf=VHV@09KvSP3|MH4rzd31}wpxb_ku6#>+XENmS zqyPj7G8pjYe$ZoXNDegfOLf45jkS!Hf%Pj3lsXRctbE0KC41uyew7G*hdO7myccCW zplwq=!VrDv+K2SdhUR7ixOYKDTNZQ9r2YL8lf1~D6o%bn`cdHz?^YBAU}~Jt@}rfn zo43K-nq6nM55*32qi`%8Zlo^sTJ@d8i4G}%e(h7)70gE2*0^rCoajPIkq1>@bL1DdFM#dK;yoaVyw=-dre z4F*7yQV-u=ra z+H`zqDtiQeadf{4}Bxqf&xRtqF(1xa&P#FUIHhyBw6vkG>CbZcPCC@;b=4q zbLm=4SMeBQ$IXD2G9-z{HL3XIqkZ0&3!&@=mi|Q4og}OlhDmW^bIsc?3h^Dz`%de^ z<)=rX2WXw-3gaUd`7K@&&E#oe`Sx!eR0R8A>JLOOv+fMe$ZS;ku`5^ ztVTVjy2_}j`C948Dvxkq{}Dpqnj~OR^+IeIyneZnH6Li*Q3oHBd}4sXZa2--tzBvhbPmM+?mTfZ zu45oyuK-(K-HwcrGO1_yQon4`7dj(yDw--U;jW6`Y>zAN+dK`c8boThen9n!g=W2v zu&8}yWdz9SZh>pMcjmaej3@?k{YP+C zibOeAHisG|q3CGX;rspJCLI%=;KX~5&uh*^!o&+QQT5s|WT{MYk?@Yu*Evr+T51=0 zuP3NHJRMdu93klNb`?Y1%a(kvac4^8?D9jccr)l~`LjZyn(;do-R{?39zDlAUYk63 zRSEiGr7S@NHEP zdsPhg@4Q0>C1)mVLCCmjtWvo;tdQ^V9#^d$b2I!4RRxWFzXb$8fc2bkyFo5fE`r4h zR(Ds)=>|F*jPOwh!s;#od`DlOi_(810bYSyFAx5eE!=RM-NZ{12!qb*<1LT50Oq1) zGSdrNwDKFb_?;=;9@m>ek00TVMh_(L(u7N$+&^b~beR&fNp?ZBZ-lV6yNj-_8K$!P zfFic;zSYadIf9&pc|Ia$yk`|U>};y+pI(@8Gj82eJ_-+?^^dXL6;(`9+?Jeme$hOp zaAos)$yiU7j8zhF-7WCsG(-)T`5g=Yvg1|w4NqK!|KyIkOxYuoMADiS#t+cIWGpYg zIXyyO;$t5ZQBxu;&cXNQd@2lm=Mj0vA%aBnj%`G~+8--t+^R#N(HyGOQ`!EH?`u%L z;mo-mcumOh^~$AdxMh;a=h5!->|wVJ0Y6*z=}k@QAyi2Z*4d2cp2dj>@v4X(lI?nt zLPmj>i4=A2%_8EHKOBY0yDm{*p*(-z@@^~uvrg`f-<3-RCYI=J2TrUa-iCI!CX zB<9Wqpt8ZLiP>YPkybAF#%M(5#_-8~G~kyvS3j9nJ&D(N^eh@*Ykp93>OiEhJvXr9 zH-19y4k1{HvNJDm!vfhIs)S$wviU5mflkPB`NeFJb||?O9-LvZmSkYLORD~Y_-gNb zj{w&Pu0jrKTZ30Ju8G8qTMI{-n_kVFMiS$Bf({nYxo4BF&-)B(N?)jN5&}G*^-C^O zN&{b>!9DN(XszE1*h^aOT4(8wJ)G<-)kZdbHT6WCS72a+-V=^n3i-I##a`xBiP+}C z(s%Qjwf)suuUEwrN)yQ)za4mh_4ynfEt7SRSG3D-)_W(N8G9bqaFwY*Pv?!kN@$v+ z4$#Po!TM>;o#VBiR))}=@B84IxA<}@8%%H^yU@|AzCM3apeggwd~#x0>Z|#OhpS7A zoUmTtxwh8Pbf0E;bq27Ky%mS8$*;DQ;UmNCQ0)(e7_ZJ-_Yk)}XZ$Cu!BK?!`<=^hrGOL7fjYr?B;TI& z3EkCE7XfVNE8CguN{0uc1_1_5%JNCkPK_-knmOJ9hL+-j7Hf!N5<}B+czV#)Y0s zkNF6?=&Pr^>i1O;_hU<_7`;8@x8~pj`Yhp6wp9q&pD)8#X4=o_0eg>}wDxCcz;BWt zX&s%8WJ`EAAs6LIW=&f+GZe;vt+x4s`s4=)8XPi9{KzejEtR-znqK{I% z3VFe74^1lM5kd)O@WrN%68 zIHjGR=@{L-$99YNr}L8uwi!%koX_q$tk|5d(1ozI{M_*2DkHZ-ajEhghiKi~2=pjZ zixq=_a|*iTb=}cf(-OnXZ`Yjj$yC~RjTqD^X_Uil>lRa!0Ng;eF;Aky_(DCgqHQ5) zT%a2^F=K`GRQGMMy?-dbSvN9skmUfz3J)R%wu<`v*zPz?hTQ5hU~*~{F+ogLt8$t; zMZ9{7?RE4~!q^Q!VYu&%Q#kmT4B}|XRl5)&7OD|e}JX-q#?YZ?{zfic9I#qOi zgLna?rzROi$M8+PBObDOryR(qnts`o(kDJe-1ux0ssy7=DmJ&I1De2WyeV{(Dm63d zCqJkk&qDv^G?(B><2xHXppCyb3JW@G}k0!q#QJg#%*nDbWop0!u_ z0(F8|Z$rQ*|DCUn4(U9wb_~;J>skgX$a3sVc z1os|8`ftvbgfgS`!TNm9{xWaYrWgz|(0;V!%cWPJjm33>6NM$U7Jqb)f!x1vUr(`l z%aM`)C|9qC-hcPq3ZhauovWqH!jgKa_8-QP-QvqjHn6(_)EURq0e_0DrUWZ1!>nt+;|EC*PhF%44i!u z$!95*b}9K2COJjj7Iv3!OgwMFS%}~C8h_^Xt9~0b$Bma!+Unkm}-^5J$2>R>r?(v z4*6tgVir+NKUFARHE@V=kLX52ze5{5y#q}6} zI}}3XVccW=*+KqUE_wyAGIBH3PH8^*hMa00t;N{sV|Oc&l+EgMUlK$kar^3c+a}`l zn=bLzwEL!?@Zd~Le{^+HnR%#$r`7bxA3dX-gdCjnPaKiTuN;JNCN!12n>TJ*G$J>e z%UP`NP6xJdrj?Xlc^E2hNE#eXeOH7;?=g37-Dd$wsTTBEzg{8^RN5BUf_o|~VN=3Aj@=sEHER1Og#^VTa=2key9UgT3NTtE})qZ2Pq zT;L*(nfW!33lK3fNv5~fsPeOg_PgX8zv0aazoeKrKD1;Sj`_En5GF zvY}w5$-XU%;g1?t=#0M8@S{%8t=frk|2k1ymlJpy{|%Om22*e8bhJAdzrw} z-xEDF6RTzdH}=&r;c*O`tN4uyqkB$r54){0<&VNN88DfUO`@~HGh)TyCY|3eJgp@p z-O2Fbc*@9+i=d}-`+Il=FOQv!^7|xB|@;T!n5Sn{9=Ztq$T7Vict;-cg zcdFn<@?v~uLZ$qU6LmxPUk}8x7}hW5sruEL_GS7gv>hw5)ph%@Zgn|h!+mgz1EWJV zPlql~&_*PcG`}ObK-<3&Wk4eTin6|?+{j7J`9vD5Uv}$>-^aBTGWF2T9~Er9=zxIC zl1pGzOvn{N;L7gD70UT+Y|M}Ph}uyLEc)ZDG4wWv7DnR?;Vt^|euyvD)k#Tb9ianV zQ<|L^`!e)#K^nctje@+scDnIiWc``8=&m`@sU)X-Lwxia*IhR^pRjQ1xtuLw`Llw; zo4~BqbH~XFkA#I9`)Yp4Ut-TJ^B?zx2+~N_XD&pvP&Y$gwHghZ9ljvD0czAM8C#uX zC-Ja5suWt?0fnLv{0|me!*buH)6)s)e{|d`nH)&v6li?!@O2$113R4`_5H(i+AvC|)Y{AV8}WN_&0CF-GN=TXSnM=IyAE})Ih{5u_Sftk8P zpmQU-MG*T62*sGDUNdozI;CL$vD0(rl!Ok;>EqUeGiW|u2)MqOQkw8K+3EF<%)$NS z8-fq`K0}TC!qPeEji8vwHvGLTt4CoM&eCX2B za%#UBF`EL<$_zeCL_nRQD(X#HY}BOf>0eUG{Fuk>&Sm|UnKo}_?R z^i0QkW-jSKBrrFx zm?5U`xqdA6gpURlO6#LCp5Dsj%sD?SepGhQ_?CH>Nve{tq(LVqZjc+cuA%znz1DtM z*6(y=qNF(ojNSV@6rfE|z-0TfgEnlEU5UO{YBjc*x^~Q6GC*CewMr$^Pot!glzvoT zGIG)?GYIpHm*Atxs>=XgYF4uGckQei01*srsC-rg1i1*SM>?TNYkJYEi*W30%?ZtD zUGQMryR3}TMcdW2SrVgpK8?N39rPO_bJf&2!8uGr(Pb4nQTfn^_jFoO(oq2;Gj*T6 z^)j%*ExHi5VV+PUpsC3V+@+4`F<#qy8!Z&<20s2R2fhqXMNT!_?PFw8&c1(uwsr5( zUdAW1?zdojALh(HzJD_BIIa%btuRa9Zd?7-OWmJ7&Q`g$*@=T0$g{k&1X)i>U&0T@ zj^;1(yDTD-CEfRXHTa4=K$yUba*Q8 z3T&#|W2c3aC!W1tM#w_R8~gR-kkOrIqZPlCiw)P4vOcB=TcxXJ94l-lN#=+8@7;E{ zeXdQ4T%jUXahrA8?0$0h^~990DxKNt4Cc3&0R?+9l(Q0O!rb3-My<>i13D@_LBfCF zy%rI!AF+D)3ANl1Ls4nvq;tqNeCv)E$K;2!o|z?4cJCtAHLS<1aI>sG?kc`ow^b!( zAl!kvQ3&)ItAE2dJEK2!9hlh*L7d}FIed@2%Yx(1Lm41-s1eQcd~(P1T%*bcX@4Ov z$Z_#ik0NX?H!`46_uM7uo`H{tR(y*SWNpe+L8I#J2eidjg0V0#x(ky#(30Zn7=j|- zt*k{#&TNDmF-(GtV)W*BwJUfi94FF7(%nwDlr7-F^zQz@sSGmX5gs@Vy_pTcz8Wdc z!wEeJ0Wo1^$)Ougm%#_9Nm^@;`QaTV`g~IyFOBaxQ*gAS=?;U~Q`0QTr=MPho$#qN zRpk53xrNgEAXQp`hjps0&*fboR##{gGL(YGo-ki0tWaH_qiy@O!F13E4&R{_3$MsL z!vM`{>eSnb!8?SMO8to@G`aaMPDL^Kd1w6J_#8xgtjLCB>?pCyavwOEV$zZC-!r!- z6|y%4gW0DUG_?GRe_;OFrfQm3bhh?Te|_)WO7c;!t%BC1Uua~qW3}C;^3W{Rv>)4A zYS}v@sG()*v{Co~f{RO_!^kpqD>3RdVF%Dp23b#LGliRxC&Zsra`h!*?zQndCg?ig zL+mF`+L(CYB80q&v(j0zT@N8kgL)CiWwF-sseV=Q6(QVqlo3F4Mfka7AG1;7;`2Y@ zLLFR_ErXz~ouPZ1RrBFBa-y z1+}(A*Q}=3l!eYax-uLE{0vu8JRk1&S8k1Kvkso}{(}B?nGgD2na0^S<*D=JK-;lc zJSJ`CY8!a+=jpy13x9`^;8**E)FoYSic0RCXB5YE>+A(a^EYbRY=2m=SmMLQ#<)5r zSqUkOQU4}gpr_ayUOQCvMM}#IkEn0D2py-xM=QaOUvSY?f^duv;yJhg?9lrecvrj?M~6gjjrwm5N?>*B$dTWURaH5eE3gURmKZ@iu~u zkbZ#czEFKCI9-qWT$taJQ9pSnk;ZlH;iC>m1A~K@6BhKCya=vbD1V{07ffSqpo)9c zd|KKVotW(DVl<_SJ_(0cW!wHB#^2@b$wThya~r<+l4 z7_M$u-x#_G))voU_*C~ohc8ohex+;UOK<+N(>G>7+bidPpAI{(y7nF*oxMTKXxy7h z`HLAqRcpS*%U4x$3#vWeUf%bmwsG)>EFr^}?7j0|wUf5fMXWeCvZZn+en7}Ty1o=Y zSHci9)ya_RSiP05N0p%CDOzDX8{m8|@S65e`-17Z>KpUO=UtX55|6n0%*EX4^8UQaBNZ#QlX1wfS+N6W06a9hvn%w25w;FK1jv(Y% zj&`8Vtq(m>UCBYo@{bz^ck?Vo)4E`mzE|oP-0ufIv#>l-_w8zYt&l$aWscc$A(K0C zBxS-Lkh7IO2N1e54H+`u+^tLn$i7=wtP|ZKZhJC|2SOeNzIJNU^KnO4)&A9QAlj&OuaHY?CkIoFWjUkN=w2ZLW6U@2!DdS-p%O|cu^WYv}9qS|c-zVTfT zNHD};_AhOIM3k*0spI6n^1j z1nQoHW1W=r)_IdXl1%+2M7@L$@{ri%fDw37aH0>)tI4((D?kHdpYre-cR5z}v3Y$^ z#KQS*UfQrBptbs=MMYtL2#KbbeS!;4#nmtFu8+X z3Fw2TEVFD@^Tjkk=`~ad`>c?)=95+J!XvBs6to0x49-gfn)l~J&s<6Wup{Zn7G=bz zBlL-Cn@A)^Pw>f^ONOsd#^$|3#^Yi!N&e+O>s;eKeSz)@AP!}* zpR@WlHgw}h7_k9^CLqhg!wINC`$P}>{_m!h3<{g&FOTiN3hIJI^NNdiUW!MJ*SaK= zLhxGhf~q6vOGCY*ZfEgP*mYR2p;2R5=Y&-@y@2hElF8N3>NNe`lGWjL9evHLVDFC; z`3a6Q?jnvx?jvO8g*NtYKivTKYP<@JSX*t<1&s!hOPp+IAd;Dcj;bpe;MA)A$T zdkSB4)o9AN%l+y*X7$UVHz)J%GHljFwN;$ZJrGbNBseMV*|gVc_-`t1K9lk$g=}V$ z05zh`vp+=@trEQ2?XN&_n?MnMdu=%TZ<}##8#-)BsUu6IhWC->%0|Lao9>U&IDvXc zlKhjrgMJ^9Ol~20L1cEuB^qbg=#EaOi6f$05~5ch(At$)f&rBklyhk-E*?Oqt5BGd z&3M$z^Vw|jT4as`ibmw@Nki?XfW@*T+I`Vbg?3ht&JQv)rl3N=>34JR%=r-0%!^fQ zk^B9Idc4`Mv7+M9QNQS}%9SFE&mT|&-6P7u3q|jIErbu?rjF+M?i;i&bc(cl;n8=d zW4@RQsBUJp63~_zp=xo5t%hgSj+@S)Q*_jGK1`cWK-!Z<2-7=sJ6TZA`$*~-y%1eo zOXZVaqSAKUFR?G^kk3tEh|GvI*F&Ew;Jl#S{rowMpsrzxnvv!+IqA|@T$=%VAHL9- zqoxzsmi@(#K)8tfQGT=er?Uf0cV~{Ko=xLC;V*#E3z*z5J`%O6^2#^rJXABTdfMdk zFWg=%L6u5S43_U3IQ($9Fw%Fz}GZw-|!ucIb# zuHkCgMG?F-MyBp(;P*;5EJ4~yx>gmren`+oTvQHy`I!n#ZMtM>NXR;R44vL$EGfyq zu}3I1W~5?46Dk!}R#u)6N}MNc2xe`ho)2hWkx}vz4V$YLN|5OyL5^Q0Q=%!>kqzduOQ4u=Jl9+DXu(+$FS);2|ctH7OD!H;hehuk` zdK2Y)Jmh1)St#Pq`@NZj6rF7GGNhulU^^}hDvi6Skj`SgD0Y59n|>-=xpp+ER&ZA- zb~Hd(_slHyF>?tf8Cq7W&rlAmD5QtV2%)X>YdiHeGU~c?=t2pF%At_Kk%2ST((gx* zLD~;_^N&xnFqgdY`B^{*1xf zP+)x{+2$^e|E$m^h5j&l zx<$9wUh2<>&t_>iGBmY(7|*5y8=5O&X-^rq_^B@c7oni=3uMxwQs#;wtx&$nVkz*V zeQ`FaBrFTqR$!whnXji8kfj#hHcZ%nPty+0i55)W^4f{ycL zU>v5np`oE-G)N>iF|i;r@+Nv~S_^?dxYyJ7D*8p}3V(h=>X1v`6>2^C=ntrYviDp7 zW{W?AXKJisuozV7W<`@Kmtk#DpIbKhLvbH%Vq)SHA;*jvh-2lfL(>4-U0rnv$lv>3 z)}V-VeDRpFT!aw)CS0F4VlOsJgmVM&adEeu3M9`EYPK`A#jhgoQ+4EJb93o`lVVd% z8-{x>pk{d4**+C=Uvv_773t(xRQj)z?zMr`LhpmMiBs~hU{dPQM>-Ty_n*I1Nfn&< z8BA(oK)=fTywQZ5x%XwQdg!u@$@qU}fqiTZ$ock7-50Z!EmM*~^V}>5vo)Rj^XE@P zu27fQsW}dkTNaOIirV*n4E$#-^-Ll%DZBY*0|IDKx`vcj2%i&#;X!pbdli>la~~?i z2kU2%cacDle@`w*fp75xsvH+2EG#WwadL&d@9%$&nuS#A_GP6pO9=g$4KZOhPNn33 zWpuA65arPiK=~rX=BC#(e5E zwtp8nQgEFCCT(R@MCY|PK4PV&ES8V5>uLq$6c%7#f&cQih=-=3tvja9%2ln-Q4f6t z7!bT-Y$|W^ly3&vE;vrTMat-}&hVFbBx#bo)WhLO(<=hSL#dTjD!v&2Zhwh~qGe)pJ&XNV4vH*Ec>AHrgSsh#k^kz2p2WM)C9Wb>s8 zb*|$WEx1Se-UHK%Uk6N~e=csHT;Ut%v_7k3U!Z%j4Z9{U%(CA~YRGVTwN9&Pi!%t@ zz^Z=EX0SgRoA9>q?q8_tR$Tx&<*asw<;Ljo!AfY3~lTBVySg@csy*e%^lgu&PdL@>;YKORW*Ro)@i_#O zmU|cEmw2#5WT5rUz*nLIiw6v3h%+9${An$L&@fW@Y7Zl>535qTbGT^1+F; z_x19wL`H*z?+ucBuL(tu*0huWQ?os67x;n}h?IaYtLiFwuW+@DNcTECPWt!; z$C~3ZtotzpGoE%AXSe5L&r}U=GS9^PVo#?OEU%X_`7`>?9 zC&c^{!!iM~vo|fU5~dad;fw^y2pw8h;n<1vpIR^fMq(Lx{WNw;z`Try+yQ1P?pv?d z^ro-a&#x<)y#Gqd^8(~*eQS*2p2mrFGIDjALHxEt*5Sl%O~Xplfb>Cb`pl77Tnve& z*h52M=Ul&OhD&z_d0)=Ajt!Lz8H*d$SXJt7r@b%S38T|q35p5P%S(FEAV(iHIb>iVT>wgdq(>^6) z=eGssoHIn(#58@1I=)wdv5O9+~nMn4O|5W4F!8HiB6^G5-;3zGE3)TiwJPIhr= z3JK9yoqGaYTne&? zzN#zEZIxB)qm?7ZO;SYqNt@vo`+rbI%Y4*lBhecND3O}|CVVO>E0<32K4JSb6y?IGanJ0%$U}y?5}CiRpcRJ! zvaeo++_-TgC*j^NDQW5Vyu7@&|Dz!vsj*Tk2ewHV+DP9l1GW)l6jSy;58&eiz3_sF zN$<&WiihP8K8px0gOZwB<%A1?uz~Um!g8W62rK(9VNpEUt*H80x20d#MGBC~gqJpc zeYy=LJTm_Oc4mIMBJz{YD+nh6kc2?o_hhK&PQ`~0m$^)!+J&m=nz^r{+|Ezd<)0@z zwU6Y=*LfdUiXY9n+D?`wZ#OKH>m{iPE8cYf<0YA7U-)|eyd+u74-$rrj}#K>nis)6 zf^-nvHQQ5-|Cjgp;zmzU>gecb{Fg7;8REW^h}@S?*!H*#SEX{EHeAdu#~}1C?6*b; zhei1b`y_#D>+%FA)2%-1Rs3!3?5E7E7{XcCi)&7OS(Ne59RQ%n8=Dd9)|$s0I>f^Q zeo!-hY4-p{g-Cxtnv=(uDFjt2cs$A8Zt&sX0a9CSW`v01GV@s<1}+z?tL&pXN<5-+ zFHq_R@UyN*d~`*Xs^nhlA!2DN@48j`H~Jrc9hJbEh%bk=d44A(^vpK3d5FimfL~FL zF$zZKW0Jd!itA}?CISY~E$R_9>OrMH8xI0~zl#(IVgK5}#ij`6GlS85{T^Ew|~ykz+Ar8hr{NEm+v@gf()ee;c+nh5Z0YiM$?^EJPzb-_aB)|6M`H%Abj()Fd?FL0(q`~$a~wF_#m-O z-c(pqWe{{Lcbw1!@TpMYV$d78^iKB(DiRRZ$Q4>|y}4LE5x~Z-c-vPs^6lS2|H#ra z~KWyvw^F$mb#OcQvS@eQRz_5011^wOjI~P3IEB-e@fZ_!T z&kwuG18PsfT>_pPBxL@Se__}Q)u532@OJ#l8|e$`Z#zEplJUhiLa;km*ZGH!x0lVo zJ|=X=*m~y^q2WtH!{4CjLa9b zYv}CbmH6@PCy6#k_>J@X`4=Z@!&?5^)ys>uOsNwvw=bW5y8RBlpl9qATwU26{g;PR zZwPDt4S`QVQ5Uq^wu+<6EzivhEM_X9c#gk3GW)MQ1cp%t0sykcKl!x?bNW*YFhDA5 zI{e8|jX>rhiHZOcsqy^v#gThTlm7^Apy3|@Pmy#u%U#_Ot!R{ywBG&rA37`kOQ-Fh z@j2#S?1o^@T^-R2WP>(Yd+@HVXL5wzq}=}DXZ%N$?()_5e>)X#ID2E_ci!=L(Nfa= z6A?f|IAJnbgD9L?=Df&pqQy)Q{cW>9jL6!)!1#g@NFsuaWV0Welxa~yR5Qeid0LNO zT3A?=6cr5@YZX3}Tu*b2rs22Fx=KdVy}YN5Z$rkVrIitO+g(1c$Y1Yc^bnBZ0_;v= zlu?O%53OboZ8p!!htfP{hl-Em7gDy(af`sIAcFG98YIA`UK1Xt`6Exi@UeqH$*F!C zQ;*Tf^@5yzE!JXf&8per2nvJP>J+T1@E!kTTYiA z@n=UO?#TF7+_q@jk&NFF+*8DPDX8^iEj4V+iD0cak)@TB33{f*q&&^vbZ3_nO*)!t z?S`t6ZL}F<>PLso^6LUGD%ThSTGX&^d&zBau}H??3vR81|00-~Yy!{1F8+tYPuT84 zUjIUe$X%-0TAMgizdgANzkr2>{x6OG*Ojc2_V z9YE*-!TInePtege9J`SlQ-Tjz>Hb3Le-@QT7Av@s0;(A4{=y_+_ABh`Ri^WUAwte6 zf-fKj5u1A;B6)8nhN8uiOzQq^FH-_pjN$)adQK3c?*@zG#af27)`WjAaO#YjspHIB z;CGnQZ}CBEF0_ItAdW!y%}Et9TEVh0w}QO9BE3pew!=BsA)DTKb`ig0r(y4a-H!|#A+!$a znG)dfLN$i7-B8I$O%70EN=nHinGoyl&tplvz<{$lLA$9e0`WF*sQXO4ed_X#YPv}N z$-z44{PYC67(yGLlvGFvnsIa3WK>y%tnQrKV+o}*y=?B8{v2l;@|x`-qoO;MK^Lt2 z^$#=W_W+_mAH?zAa*6~Pn&FSN0iWczn~*0AitdP!-G3(49zr&zA_UJn7$jYU6FFx& zFL(C#_G;?tCNd*xh9t&55R=w=?U~)ZbLYkR+JMl)c&cM-afL|}homGBGUpO8C|u~E zT1y__I<>z|q6o#yAHjN{m$8Rh#h#AE9J`0h47dMKB>R7ai#F&OFwRLr{&1Mib1qw% zyHPeq0$XIhoBg&ugfRAK1W#+xa#sxKWPg=L&`$p+5ks1>4?T>z;E|KlZ1cCG@40XRf_`7PFXR$8ztkELG5p`&%a2gk!8j4M1gzuZV}L9bLG7S_ zww2vB;j1#09?TE)XK3A}Z+rlc+{g0X! zYzQ8(&w9G&cw0a~*9kejSP>puiPxO1w?`9JDzyIGQ4L&b1(5_L3ubo_!4iSFIXPoY z4CHkC`0X*Z>lg89MrL_tvUq+~f=gw~ipcM!h%vsrB)dpD+8aF>W2}VYCYyUy*A^qs zeM#e0)RoV>iCjh(A=!Zxfxf+te*F0kzM_lX_cdX)j+)1a7g!DqW+(^wpJ5Rf48@>k z1?;Atd5h7vd6UzL~7AG+ZH zlF}j|N=PW(s0d0(H-aD`UDC)QloAUN1wjR*LqtJI1q39dyQD*q?*ICZ_ulcwZ~X5V z_l)=Meeay_+k5S`=9+V^ZT_aavW_nI=KLvENg7|adkA5fT}$>z>ZB+W#{}7-y^Su-r)g;xLYJj6Ina3+fA%ewJKC`x zxjXw(3c8EK8KW|Xr$__DBx)-`=&qz~#V>YeU99E3n>-7z=A+>8dM`bp7axeUXWC>B z)vlJb?f(;GA*wyuk)4m0s61}LlSCpF9i}wna_9W4v>;>l;Dci4Pt)|(zmGQygY753-e36nHrjispL*+$ z#o*y1%D_M#RL5V0mZ@(~dH*oH>*st({qQH9>uvMxX~#|!N+;;3v2ibsU>giTjXD5j z9O*0&D3Ggu25ygJ{rsuZ;-jXfR&lsBBNKJj8!1gITS3V=5R z|AzR&#CqakwKeQ}U-nbfbeMTxD5zZdDLLEmqNi7t z!R*ajaP7ZMH2=9fo942+0_pAs=h6hBxeEw|eGZt9xTrtlRxc=kfv){JPFW=o5OUpUhe?V5)5qrlaF9pB% z!j4ur2c)VRqtpG_kz`1TUV##w&5)fAt(m&emp6`uU-XZ+gOBZ!gC@cm9H1!fjU69a zn2VT2A`vZM^5OQu&RWpem#sm^h0fQJpbVT=8%y2OZ+8yv6=?^^nBz<{qraL?`gcW@ zinOWlkl!gle#Zb1ev~wDGXOs7Jr}yqv}~|LwHYjPObj}hVsGTTWyet1my4({d&dKn z>mT`Y52?o4FAS)-Ub`Xm@i*=*22&i-Qn7E{&eNNu(~q8$JTuGJH7&5WSID##jFG=1 zj;9{2aqHYQ^kX$u&cvo}Q?wSX)`v0nDe@OahPM8;N$vZa3r}Zd+GS>=KXnAm__wva zlrH;V10d+cy|6I1i8=x&Z6`%@?dbuQYr`p)H)~Y77(A!rymwHHY;xJc7!EEjuAFj* z1;2+lJM=YS^!X2>Hg5LeX@997%U7|{o1C0nos1UB$jDHVot>MDf@(qr#cBMRIt`L$um=)`PafgT}IW*z!oR8&;9xn&<-LaY_?_zh#9RJcFE zG1W+uV^vQSq??hIm0g1)G&P@<_AFZ@r@5zxPTFVX>(~2wa=i5CMnyA+7~gL>+^JC2 zn^3N5`24P(h%N%H0)JhIHKS6wfPoM1TB8NrsHjZMv^eB!CarI6HH?1o?*!m-KZnbV zg_V`_@%N5ABhkFU64E&ibM~LEQS*zh$X+w|=@}KfZa;}4Jh_c1th0?W^5Mg% zfKITHJ6KgdXH=q+wAf#K3fQHNGDm~^IT?dZLT!yCjkJ@$6kol1g$g60Y5>`fJa~sa z7@p+VjNy)zbAJ5*+=Z5 zDbL4tB4}k;Qf8~)`XeNfWp-1u9m~4crx%keC<=4c#m4*Oyiy9#?C_*1C@lp9<-R zqtBcPNlP1WJPlh`ayb!4UDVYWCd{R!~j zjQ8(PyuKVy-$vl->G?H|Rl1|lLLQc*;)+~KOy2Oh&HjN-Cebk4oJNsk@=u>WUAcZ; zzx_^s5sq>Md97%>%-ShZkh|j>@S{P?ekg4e z#+>-?`LZn~X#QO-R&Ij(#Ej}>?eepzyoQm*nuPg^auat?yaNV2GmB|&brtUj9DHh{ zufTS??yOo_Id^4VV+4g+g)V_}QfCUYmgH>RF_>HCxAf~5=Id7#3(*qh(f+?=yZpy%uB`^v68_4epz$i3TiJ}t84DgXnk38f6+!kdC?JXZ) z_QBGl#6$)Vp~sh6<%68mg52aju#NGz&MyRIJJf{W7=HFWKkBzAusPf*RHdNpE;8&g zLgR9QD*!^h9vak8c+LrEJH*YCze!TYj0%M=GX>6fCp!J839^C`6Azd~k4d-z9FM;{ zeD3@4g917=z6eUz2hg}i*=aLcj@N`TO1N^+3z|lOgk#;ATX@sz>8pG%H4?#a%&VOp zw~t=S4&BB`joD;E)=k69j7mT$G&rcKfQXAm7|LVm6*aZm3a>@Xr({vPo88&kG=Au$dJtv+gHqKUC~ zUXEoj_r=ka+vScRXVS?MUziMMFjs(E$)@VZEk8ebnV;%nrgLvGaIa?hms%>efV{y& z9_tD`*7a0{acPBFdlbt#b7pFzi-c$u8+V{PlEmyE3D5ri9j}+Guck}QWbHrWZTi_u zTXxHJt)^S|2(b1D8qQ>%$c6ii>~7e8ZV{j zpsOw1ERCIph)XOfDY70{h>`Twk{vr}V;x@UA~L@mFM>rY74b--&CD!_tRe}?N_(5j z#dWgwM}Jh)Fa3Pu@b%gD+{WwIukReJw@*xF?9z)3-22!qVI`BkjW6cyXj;jTCQr4o zNR;?l#>!7BMEm>qoyEdx2eZppuRa)EO;>x&6BQTN0E@jk6)$fr7Le_*5sDXe*eH*Y zEIfHpi;V{N*RLx&*xD^VfcuKbGm=UZ)r4P9#Fgu|Ew$PuF+MJ_yjuI6cCM6=u_SE* zk6JGp(pGZ!)3XLez!g{tN=Y%BRT$b*HFfL0`q#L}9|uW0$JZi>c-@itE*v=|@y3rVy7}fkeoy;X8TX+R!>=k#d;Y40WUjDDdxg-@(zSW5lqmzpT* z=5bC*CSoc(Vyis$av`fm`?c!XVH^*~p!C#L9LK)NG!l}zvFd7JS^J;dPo6%V0FBT0 zV6E{yM3{|@&0K(|f&xnJ_`u_ZTp+X1=T+PnFZ0*=UIR5c$$I(n-$&^~9>p3yRBUUI zN3or0O|FwTca9v|!m_48_5cn-${h5)q4P}6UV{!#o+aiqD&~iwhj~8kG3e3CjUR<} zoxJFLq7CnRbF-3`78=}Gu~7Hs0yoBM!x9n_LhVxT62`^#9`+fO+Wrvs+qiv>2n!$* z%m8*LPyl$PPEPQu4pUaSU=0jmQ){bkyqTF(6eePSrbl!MfFUP*aFJO-xxAzfIjq>a5#YO> zU296#X0l7EHL(@*ExKD#n$Zk1wlX4k*D0@8SZGDAPV`v>tGc=hoBPe5*45R$Et{hn zO&=8>-{?|(7*SLt{JM(roust%YsfYWYeRH&J03vO@?f`4m+HSNeJ%=)9Mf{}@qU`{ zQG4*wsn2T;YUG?T<+2{qCGMr&)>I5s8q1=3+ds<4+5i0cBkZ-HE3?s|d_`Tot8xqA z01~gN5~u2(?e6W7PPzDR6OIO%e7^s86@~w;!wL9EiPHv<6aiJ?U1MBaobk|kBW7jd zsjqJvNTx`>@V+WGv0gqIyiYMVWFQUfhB2!gRAFmqL+85R(aP=3or3>rP`TCo^lWU- z$lz^4G;p#6Gi?N7O47f6q0-aIIgyHG``@c^Bj+@x#C1Z+>Y!D${q~o6eu4;egxZ&+ z2k+INvXWA|DtM0FUOw5LMnp(~TVO^zYi%8xXhDd2A?ZN~O^dK?Yf|Xv&ocR!H|9F= zz@2cr<5j5N3TXR)XLy0y z7%)od9mcPLOa<113PC?IM>|tdF)=3!f>&#acy^8R6hR9Y)+a)Tl+Y@PVm^Apu};G- zzR~IbLYNMLVub2fuAm#BNmPhuljY92bTI;5<}<%_dP(Aoa#A#D9F0p3XMlv;Bt9-4 zUa@5@?r^1#=ErZfwK&M}N1zZ8T{WHBy9ON~@%P9RA{hPG>}<*k+2f9v(mt4Cv;yjX zwg3wn@`&+>xkUN_7Gc(6m_)gA-uRJoI@tZ24$M-#z7@sk1^vt+VZUnIT63_wzP4IV zH3iAYxP5DT`?8;()P*~P7@lj-iTe%?4upXS-~5=DM-Hi7^asP~VrD#I1tz82PPZDc zU2Pu0zmTe_8G!_0Z?dwcw#R}E;vvz*0M@u-sJ+Rkq+1Bh(8;(v=owprA2}?#v~qk( z$`eqSfyc>s^G4<4(#lF46roAz)qFuf*(^AQ5=l0dZ&J>@6>ga9P;QyS&vS`MMfV%_ zXSo{ygPg2`j}jenj;JP%=Pu}Ypm&c`a`o?VVuDOgm^?Jly{qL(yUmlt=z1K?n@hre zwBKhzOiuoFzALLNbpSYB7Wp8S!m7QTqHm7`!7y>Jva-_eMQUnX?(@X~jvw{qCLf&M z9nX}H5k5OdJ^MEg;{TU{^<$7@tRfoHae!Z0c9S^Wd;h#F%QD|dWtY;7IjTaS+*Wvh64dID?kTueC+7`wjt&E6SU_PYLW-v~g!$lVPu z{PK5m&#g!yuX_V2I2Z20>-HGAxfTCSTH2?fCDuM8D1MzWe*OYse&JXTlbqAsC@Y@N zQpcY7_{2o$&W`T^FvhFv>!R6ljqJfJu_rI;$9s5qQ251_?QHg0gu9hHk2tV5|0R0J z_Gpj;%!H)oll72D7M2PcD%SydC1%r131d+IG%*Xscr2@zqR&g!M~25TTQ!5I)V{jC z-3Ywl8gO_uwY967eG-zA69aZ>;yatYm(sO}rvQ!jEaMb@AHys*j8hvXPe=5$KRE-(9Pmg6SR_EeJtur0NsY+Q{ zigtPhtlHqb7Jk`c{@K;lnXXLqxLXvC%ww5G=G)#1-I5`wkVK1KcBL2cE-GFCrEPxe zno&vp{mC+VBmd_C~Old+9vJFxXR;RGk!uuRgLqb27CIv@gB*Ae6!euu7ja^LKOxz^9YFq+*pi z0T8)C*7J`IwshJ&T&Q4U#x=x)S&)7IdEa`q;K9oZCbs&AbbRWGd4GT94B>*wN7 z#Lds%bB|MV%lAF`wc007)o$asfJKX?rY6+;Eg@*Th)5J9o9bhE6juFa$vT z=~q5BSpC-v0EFc5$cTWx1&|G$?{4r$=i51q1?}exQ<9U5EkDzvqpJb7V|{vBK~|zB z1>P~nV5oqoDpt*g0J}{rWA7ki6A%(Y=o$6&p>H5 z8*1pNZ1Wp~1+n$xJJoMQy!eammP+(x5I`5Au)mdQ77btRMEYMLpu`peL|I;-X)UM< zM^|T^o?8AE*)bU>Vc|9O7UZi5kTrK^<&W*>|8zTT_VpqF$|7i2HOU{^!E5C;8}oxh zLb9tNC8shx?7H%m;pAM1{FlPAxs2?JqN$nL8kFd(W)Z60DQGU~lRqNk3cQEj4wTwW zLAFr=;#w6iBlqQ*wcOuK>Pe-rd=l4{2CmtHG;jmoHrp1ppI=wA@$*Wr-Y# z+$(m{`|rzsM4|@ezJmSEdZgxA|M#6|`b~-54#!=Ut%u%PDVPd(^t~4PaHrpvZdP`#D@X6Fm8q^S zxAtjqlS*%a=9ZQoYYPhtAkr9*YVNLYL{e2%MaU;2p-6*-A~6uae`$&^P~>zLXt?dl zI90qaTn!7GNJ`|@$gLydCF14QxYn_La}k)NQ!(mSuOe^>`WodImkfpdx18$PC0y8w z0zOGJt|DergJR&YG0qml%v9akSTGHhS!oFTo(?Y)>BgNS3?VwQBmGP>HnP%rq z4M%{6B$)!i5Y}ZB#H56@v_iIv&clq4c{MLAS)D(R-CJT5^2o>$0)YcTj_3DWNBq7z zC`H}Ka@|fl#2wIH|*+&UJ;(~H#lCE_r+_QxGabdDNk-Gw6ehH?g%nR<|L; z%dvHL?OK4zd=Sd%REXgRr)1%vwQmfaAKj)ZWNq45ET^x!#UY0!!3@F-D~wQU=Of`D z!l_4m-ZDhOr2w6Auwg&EwH;}voggevr7&|Z%eAlAz4k)vprvWNTc$uwj97a}(FcJf zkiRj&4Cf$ijxUIwi(6>3iLgQ;pgy>OJpT7IW=L7X>UzzL*Bl?di_6UwaTWGQ!mb(* zcl_;I&0Um~^Kg{twRYllQMP0ph!0u;=b+wEoHa0A5Kq~q1=2%rSr&}Ker+Wdgdzu$ zD-2Q|^4;2^nwskoXrDNiT9{_&oEw$3IuhXJCEwdJc~5B{i%`^`Bcq8jw~`%(Gw5d~ zC%Ix;nwzL@f4WAvzug%LyL}!~@|J!~iXv2bQzkHgQsBU)e zny>+Jg8v-)>fUx_`K8M>b%Yec8iI|qnlho&M2Td5JR7MY4bEONDGE1X#;C4;V8AHj z>U(%HD6{NxEKtz%Mxtk1am3o<6jCmPm{Ni)n0e+Q{9+#V3?Wo$R1Cs;G{tDJDw!Ux zU6!C^#%GURwR)Gun=0u|jz>tYu<%WnWoIg6?>Qa|dgS6@hmfL(D)X$dp*kwz#fum` zB1&S9mPDaGk8(mYs4Vt)2OG3niOWbmYMMc!6B|fPHrPNqI@))6r(VRANy=I9_D#*{ zbL7{=q_jrw{KTgf5d|YN6&OezUbqI{j!d8X`98XKQ~jHH*X=haa{m##2 z^?oRM-|g2;DTrixb`Fj#><)E; z5w`3V;bp9lQ*a6%ui}|Tl82UG+9?9}#An|b^5j!B&d!7KBzr7^?+l zCDWq`B45grnRIeaOC2}~0|ToY8@lauPwB1diz(^?OYhkxzYkI`fg^&*YcT4X-I$u1 z8g>8vyCYR>>RGye&5Vk-7BsUwLS(yJ;}95v!NE*8oK%`4W2cewY53ZeHL9Zv1eNWH@&1ezyuU0GIHlVA}d@qbGCufmzavp*6CBz8GeF$R1 z6$skgGnk#gKDL(=^~YX|5hTgUQst)}0N2v+nEg4qkDX8czLRQDP?c~mx#_uiphD*o~$sRTk(oE9aho~5*F67+ zPU&fc;sdF@?nQ2HE_azmvIqeX(hF{hf@Z>w&r(ap|K~>#*@RjR5s;XEL8q^isO6Ha z6cxPLTBFGr)qpN%yLw9<7~G)DBwnNj?Xa4);tEZosQ9Q53d$r_u z1vFVK!R%^N0UF+STH*krIT;FaB$%REk&P!~5PbFiz3zg@LijKq(KyJUtAc%$?9Z$V z_AD1Feab9SEMCOtHkkzhre(a=nCN=-$eh=?YH>0I2S-nV+ zKPJ!W&=UJe%>L-!z18L_x*cyu*Hz2u&$h(c`q~lV^NyIlHqxIS5+$*c{#)lvxlMzA zzELwK(!8u{@A(WlN+nT+&Ss6%KmBzQ6}<~~4}(1=JG*IbJM3(Kl{6Oh2~9De2x3ck zVk~v>pe?elI3L&WyQqYx0A- z^xlS|uR{)O0}kHTKE07R`+p>o!2J9Ev>N0|x9|V?At)elt)%Su_wf-Gh$3~v0AnU5 zbxzY*A$tNnE$fOoQ4li`3riNOoWxz+z+RN{7J?`rVY#RzQ^CXv{1n}!)VM!Khh7m> zn(UGpY<(w`AmV8MHD%c54(XJXlsrsKtRX?3EWPe35NRP>ndU4Gq$=abFFEIPRWHgt$x97||e*iLLQKZY^$6KmIZ zU5<|>>NQwt`0K^CJ5Qg~>Z_>WJC9VnWxMFmO}w_Y_VgmM&X0zxnZ+Yh@Z>M6J}of) zbT8MSa1yvrz(KXZO_BR+ZLick*5t3o>3Z@QZ)y1cGiPU4504v~<HaLVM`r`HI+>Kn4F!k)HH5^K2wcxW z-Gl~YXQlEt=99Q%?<*jsn{kj7kh?1MoBsAv({XIE9cef&SYtv=1tY&0#ysN*1k4+>kk+|Y! zxv(PIXRhcp^Jz@{VHZ2)AsWG#Eu)VNj(eabI=*qx-12{hpBrv(a)|?UDBbk z{6&d+^myTb$jn6OyN$?n2o}()g6Gz9w(aFY4JR*eRvW@jU4~a!)$F<0S%{ZJsn9r- zw2HqETc+XjBTQ<=wzqu$9;(4}BUt_f8XdB_>Kel=PKtwr z!;|+S`x(-@+ms?`N!yoFg<>U=Ds_8>q$_3c!#4~q@4~^lcl#Ok^1(X6R<*>TnKq z%LkJmi5?4Bk5%mh-k#Y!X!n+t^XhnQl7t%?|*aCdZjpk5AhyQ3ayBgEgJ>)TLPFZ^HL9q7fLli3_DXN7TT;ARCt$ zwX-u7&!lj>xm88YRhW7B(Y_C%cfN(htPM{DhH`Xtl$eUjAWhA(DP?%8d()CwFX?p#ge0tS zF6DhN7kc%P))R{$ZXfENv(S`fw+#;uqjal^Q=dG+WMpuCR1Z){>uG9Lu^+2)-Q9Pw z@+-^Yjj*%fE8jX_v(>u%(RVS!Z)svOG;K0-{1eOgcy05(lQ;%>8*P34Og12gS!>Re z<}-j63#h>Uhb-gC7HkKL(Y2FmvMDikDW3!KJt~TL^TXAMn|)zcx+WLjWh)VWGL4fz z+EMc53qqq2GWeOtRO#s9n=%>)u?xxN{)q(y$=iJe2wCPp&JLRxj=|uA{Gpt##lg?toV_}sj*@*P z9Y9RrO4ICmZ$kM;U41=R+>oOW7V2}RAJIogM?F=Scph`g$ROnNB_O_Eei-1A_Wb{g z;RzJj-g_6ErvfqMcZPVhPwR7w(oP@l*UtmfyJyDBi@!W3gt_4L)bBi^70n>TB`&Tf>+SAd2j<%!CHhuYoR{L+V*T|f306`{q*uk4MCp) z$Qz@MaUF`PgokESn$VJE&dkn6W@l#`M^eL!K%8N>`P8WaI;-ER;n~Qd?BHD6R+0P3Z_wP{hygYTN7SbOLVrVi|d-CHvsf#yglGf3{ik7 zwyn9vfB*jdey~dmZ(D1jjf3~z`JO`ZNQUu1$t^Ot_yf(zn7z4uR}Yd&RBY@wm@0Ap z(}APqEh|I9K@&1#w;1?J#%9l?XtDN%SbdaHscmgvpTX=G*s6!$Z9qy=F*IZZLePG~ zLCqc8=bS{=*YddwO`%aKA;<_cdZ(zvafwNA{;Y@3PotdMUIJH2{5sJP+XlW}aMN1k zz%M81y;~>{f!^O*u7{zK9_x!2FJdAiQvzN>JlzBjd)@E{{e0n9&Apl^EEMW_wQxbb z=jHM^xMuFt@^YOzg(oQ~8TH`7y)>qypr?uho2xJ591-US+Uk$qJ1ImDkB(M`;z&bF zTUJGsdsQ&;6dVZ$79Ow{jw#!oIMi4TfNT|I|dPxHgkh>NuWM!L8lm1$I5x_ei$A%-bzNRN^z z-lYRIb-btkIRP8_=CFE(?{8B>Z)C81K^>0hl`B^i;Mr_MlC_D{46;6$QBgg=<&`7Q zgVVday9*oBGenn8`VRgNkpOMkN=a2n|HGIZ2T#Iq!ym#j^)(Ka6$zxSH|91Uf#=rRmvI~F{7HA_Gr z4!*AiBRLUhfsfD8rO^w;*!{H|l=S-@C(>!*0t-oja=Q;`i~sBwIL z@q9qhU6<Eb z=da5pYcz1w^+G2V)wF`}ZLeWIo8?BP2K5ZRfHAkWIK9@jouck8TDT}j5o{nDCAxnG zY;2}&-!-xcvLy}LIlN4@`oXDUYs*u$U+~8xnv#+-Nj|trtq)9kbr=%bZtDoD&8~2= zn&zi9?7@7&W|0xN$;mnfswy^>4zw~mdwV(MMi1`aKi@Jy`P{~`PdV_$W?mE|_b)@D z=c9@gk&~3MkEDQ3=ro9+JdklD?<%VWUey=(@ zw3?>>7!y!~8~P^NN}!pvY!;i_vA$_F&y``L#V%KP`?AAh>TJ#cWX)hr*^@lKgL`UX zik6)WAp>~seh|l?p}YSEi4I$9@(hdXY}&`bFI$lUMgQs>S`&)6PW7PWJm)%aECM&_SXi&^U!Grh-@_*$ zq!(X#Vex?#Yh?1$u1*9RIR7NL5KH*t-9I+qDQ@I$uXdflZHQxy{`1Ej4#)8FP|Zn~ zD3A47yf6NEX#u!zGI1+D#E*VC3APvCO}%MRFsoiuRK$VQ4i68otia1`J%&gfL~6Y( z2Xy*kOcY%90CB(}EUYzKct<1*9MfalU4hsL@MK3GJ{fe?39QSg9PC-(%TU)%pmrc; z2MbM+W1k@CHXUzT=>H)Khx1+;@tEN~6vQL})9-9>x390UvC(FP3b5q2DC$$L>oeCP zsJzGX%R>$hn%Crya8&f{Pmq%0iim{#NC_okLtB{W;C|jt{Sy!sFNfRQB5*^LI-z@V zYN``vC0-I~`1|`?!xduC;m}jDp}b|amct_=lpu;ZIdP!;8u!tW5=np0XmZMSaiZ!Jc30|CgKGl?s_w zjsi`<;mbt&fVg!G_yZ7|3px8z%|L0*bMeXHg`SY;Xo=ZzxEKT%j$vUnrPyr_^Xeeh zBq_ZCaksgLcO7}S9z9Y@SFp6?fGHDC=XgoCNfjVb0fRNz1Pk@iSF$x}ZKdKYSs2a(syq@>qkkz|5!;SWYf(be0D}k%Gizp z-SeuVAaVxp{Va$L*u-tS1~dt2+MCM2{R_}8Xq%dzv(oFyR^3?zDVgj1`OaUF*K_~# z$CVj4mgc?v{(=)@D%d#rEjs)Y*fBFeMUIf)r~=FDDK4&i6Jam;&fq{%na#Y0SK(7Q zv-9V*XLr$1M-W&HmUQmyHbT9=&GBFFWEMGXvc$?@FMc3<;caok z@Lw;0El8NJ%f^lY$2>?D{c(K%NGex#XMADdflJjc;We?be6fV3lLP%8&haquMg&dE zg%;zzq*EAV5Ck&Q*%vsIi;K~KM*5l@LV*+@2Z5;N>QyAhK1xjQQt`*0#A6=N&zF?M z5vnGCA&J+Tl+I${wJWlkc8rRb!9DmBJt0m@ZS*K-kyB9c`r`BIYI*oGFrhQy{qC&} zd!$ZEMHLC5S1Hg1)%-k|OTCqKLE4C+@ z3Gz!cJ1zEn)#dzp(&cj~L=~9_GTx5dl&BjBngMtNxHDf!*00vawZ0@9t}>Hc88!QK z_~@PIa*oVNuJhD$9g3gzwQ-z=GKZhp&+Bxtwp~}TAS!R1_HuA= zprGF>E-r>q9QuOdlS<0@m25Hcjj>Q|h>(Rp3oaArKS}bB!o$NE0YQHi3|Vf!Xt9(|HLr33R(n)9x({wiMV3VT+J>t!?e?RB1tb?}U9o z4Fc~9A>1$VOz4W{&Z^#QTaxyzwt)dAXbEA+McCvFID8EsS6xaX>fg-3K=pfC1wbJ?#AhJE^ViW}v7ndS{NmhiG5eu`uXb^V=butqy zd`T1x&`%)Z+03KIkD(#98c^E6Q1M2R*Cvex(at;*vT)wgq;PH@j{9%u3x*|23yc`N zKx>3C8E{&Tdq4f+t~)Eoc=8vbXQiG$Z##F3 zv#Nel=o4=O4?8$t`M6j%pWwLICjwdi%n4G!!3)FXLA`lKaB6eH7b-ZRG;Da&_nZZ5 z$j2R2EeW=iJw{Rxed*0_q~s@goCRR0?gDTw9U=sCB=%_A=O4@E2DDu1)~lCn1&m))zc z4THyjSLuWEV=SVxvqt{NYCwuDi1Erby;Qu;iZb8)&nz(BHP=sVSVqcsrr7C@ij9S? ziJ(23*fKQ7(3HKLRWQVb@9MSPc%0!jtu~C(NmT!KhcP&^YZYlS|>kdVgy0T=#bE z00;J$+^Vq%){9HINObP0!GcJT%<7O!4LCoYohQpuE{67*}{1P(@pGD;gv8vr6E2TaWb&c{tYD@(H<;wQt%DB<@(elK1S}|% z)~-A=URy;yJBQQu0;eIitLg||?S>|fasp}Ir6b`)iEF`L$yqnC@B?=$yDhMuzR9XmMpFJ16{G0OSuMBd@MOOCIFFdu^stx#$xQydg{ ztZHCRD#rNi#ft`ZJ6gkeOw4cIo)5^L&3OGy^b#&^NYj=1h0g9w3ZN8fYQwPL5aJg;K}aEUq5W{Tu06e)X5UGW5sa?>sMaMEgt7 zzn%V%H2Tmq*zl7<3005c<`mm-gKKIBvc;W;KZaUcn|G43lctD;n)rc9)=yA?V&}la zZKa+Hhv@8Z#K+*^@f|nIL%(TyZM~<@aDP`*dCsBo%*dWRRl9MDdLR>gyMRv8UnwjJ zJ#=pYPy0hzXzP&D{pmDPx)DHkpI;QQEJZbuA_ea|q>M?JREl`~__1F>b~Z6ov5QCK z5gVSCtClY(@NQbKf&ZRlmJUXNCc8A{!%Is`-4=V5{+Y6Sb_;KWN>5UfuKwHf85EIt z0eM(-i}RDGOh@a6hK5liBbC;3yV7+5_EUtbJJSqsa7C!miN&4L!6yO45r-TVCQri;jdz{FgAWLo9a&qdfbneW{*jz3!Q zQv-DN{q*V4%%m}F6ksJ@`xDhf2!NggOC4)08Y?N?YrE?KHk1L;WQ_=*Qt}0o0Xc$T zZ~Jmq3CmmLA=bu6aKDXgB!UPF3JU5D&K7>YhuoyRYz4g(_};ocZTs_~KLoldHSy&vnv8_vvOjd;$Va0fFVCR#sGfM^XC6i(c*`3oHoqnoKD$TPu`5 zJ|QHAQ-o5;jku(H{loayo$=Uefe=<$l-rBl!=@KE({^!geL#NL1ASw#cEei_^g$tz^l-6VDzyE!s z6G-U{9Ps1Q)2Ca7EUH+bd@5PKGN72iL$#*KTa@G{qAdT<+@C!HMQLNIqBqYuGSy4?v^Zuv0#>Uu@L=6qfZCQ8+8Un!f z(Cu<_t6=lArR6K`5j9+d#!R3?C_??$V9uBDoI}G6Nt~^q6%ZhU?jSpFRDYyLLQP7) z!1RpihhM$wC^TX50`*{bRF}$!N(j%f`vY# z@Co^;#(22)Uu*Gguw4-Nc9#mcr_d{)DX|0af~bPqG_QI{h-0$=A(91hf94tp!JVA7 zn%0HKVEcLn+=0ZaMf^S({?c*zg8y%|WW9vklrS&fcysY2GSS`H*@<9HI4fsNQ!d9hAT%WZVZTll+ zb1`(PG4$xLtnhg6ESiN}W}D?z!aB9KEYIWbo)J_!EEj$h5M>N%za&dP1NsT%gJ)-v zOA}OVP9a2N&l;%A#>UJr5`DVW0vG^f@xkk*ojzFjh8`m6oXH1`pAbpQE0O0%8eTzT z7@conz#wRizqwoO5UT+7r6IqCOo zM3{gGDyxg^?>CHgndL&}UKike-~v=Jj=a%gBZ6eF#qBaRY>{z7PI}2zxS<{F-;r3B z5XialtOJKzp87D;!N zB$xgoPQ;W9(!^rm9RO~!M@LfiMBA?~PYk?{RI8#a3A%L)9NUwoHr$pI%WVSAONJcM zCk;zfcKtJRGPtJiGQN~Pi$}th6AUs!CL|{nRil-C#Lmwo2r2}e`LmcSSFipY7_dPm zKwx4P0rPp!z-^7_giZkPU|OKAEX992qqfLOJc0@(3^%^{xJTtm$y)6Lf9y(0^HiDlIOT1u!i#Byw%% zK5boDuArc+yx$3P=9fac)%oW6GVF@qTF5$@$QA_*3=qys)GlOg>gh{%y~EusclFG1 z%V~OOROIJK*Sr41`YJs%8m_49vL zz;KoraCwd|e`vD?a(;dN-D9=Cuo3g=Y+IYFtUCtSi0|!0Vx={^>!CB=-dmS*^=m%d zfjFqCr*gE=RKLNdb67`KQ|5>uFpbL=I~<8E0`zilvYX!PM&4K?A@Yaz3uj_2e=Dxw1M|8&=G&pd7onI5JXPd^x_klyfBoT0LQeZwLOa)g&+C|4e5Z zy^mNht@Ne<)$uY6PlC$_;|RCBsocEDh4hkIw_h_UeU6s&r8pbzUmzh}e_EVQZZoi* z^{0pno9n*!^bY&6)=bnEKi`$Rd9fOqow?0*fm6Lxc4PhQ0xx0OkLKY3=s6tZ!sfO!2KDkHa2+ zTkOyUZ~!LzbQrLWwNTUuztRK3~}Dzu4oL zbsdL2kh?A4oWih3@;kqz1d5iIzx>v7X@gJKZs?V}oSm)o!h7`S&AWuC1-N?V`l6-1 zdIS}`S_yfwhV65-QqSgUV%*1v*d4M)cIeI(&Az+io-84A{8R8K>6&SBz6ywsgfZ!}d^2`IOgV-t@?`C2VhPLgL!+*4C$SA2R(s_D8$O6GxXbu*TO{MloD zM@BZZd`usBxU+aNK9r2I%)}G~V$6wAP0c_zsvy_tJR@fZ;Ri3_G!xxlbh5ySAp1jT zdZQjFEy5KGU}OxRhZ}O12Fu8x30U|9H;_!mUK}k_Df{1%d8aig)GL_4fd9ENjGLc_ z+3FY4KGzph;e>IWJxc~qhX-yqvD|nL`M7^5KczRci=mScZ;jS{JWDR=IVa|D=a2e$ zBl}sH%de^Mg2(?65E%MZMM03L!n>y`XdKm1$}4P5_%Jam@MY8+y^&<98A^6&8M#>j zX~9J_q#oiCXe4d@9pEu4cc>%!+HezYkwN6J+`=kS5U{?)+ryO=*KdC&IXYe%@d>!G zdDOUO5L%KR#@Tdx;PurTPu1z(z%Wi6J-SiVsYQ=kYjAIhpHC@=OXA}jU!#Idh8G-| zMO#9G&}fC`N7wqB$(v4Gg#pILTfg2&zn)qTkl71am;L^|T!HL`k6c=O`Laye<8S^9 z((!o29GhF+xTzDYi9!~(FfI7rq2~ehsY|YKZP^cNpg?zz_J11zU)`9aQeaWtMzuWT zvEBAEXLBrv;E&TUcPET=A2%jjroc4xcwc^V5T-dkl?HF!F#r0srZ-3Qb!EJ&QTROn^y#b|XV`U_TeZ6XPFgmj!`6}fnS=+t$^U9HgtO0)pQDC3F z3HLK1F9E}_h+unHBbHg5@uD*e%;b-!`me0@J6cqF$NnBFd+n0S#4^q(@g*YOpxlEp z)B7Ph!`*lPjs$3Y65ROafjz#;2 zG)Q+VX(Ce6A|mk6B@F^1(kMK1N=buA*WF*wd)|9z?jOvYnZs}7`>DP6T5GR;ktudp zrB@QaFmWYO;7v-twgRW&Lb@aoit?0*;p4JwWGM?DU&-`;zXAK-H+;GtPUZu4V2ON> zzEOIQSa!w(I1PC&c3aD4Z|@#)Vc@W`V=$@B|!8@v2@ zVMK~t?Co{A$WbiM`#nd=us5jC97^V3a=BPZ76Jwt+XDf>V=)GSYoUl8OOx4q&<#QJ zTo`n`PpqkizV-E*s5Pqd{oylSVy<}jd2OX+Wzhqadx)1Q6dE?;ReWR;o9BSfn+FAR zQX3vV{x;Z*x`FWmG)BVVuU6bc>W7BM{o(jVqY@|d)OQO^15wQE9o4$}1TJeyij}M# z!Bi%}FRD$ixUc7zn^Lg!moRY}6TP@{b1lIr;H2WuyC0cNmV!=dAZ0i^=nWbM>$B}!yu5EfCRq$Z zJ9@uWKD2JZ@~#iG`p$s!Y6kc}lsir&0i1^P|G=Ab2OQAH7Afa`R;bi9ZUtZrTr1}u zn%?VqN3a6I=zaN(OkFB|J{(3IN%EfE!qnko~tC>Hf{)8+BlV z=$0t%<=B9eySFjb3$8og69wpQ8Rw9^rl+mzHf+V7ZI zn}8yIg*C$Rs>!8?~YbWkQGA{JbS_U#>`k?yEFELeQ^iQAU z-rZzWNG$EerPZ|6y?tbrv60W~anG$`pFPcNYC{z+!=@M^BUFC!H=FT;ZTmmvhI0-T znWiV0_$uwZ16V#9%xRt=Kl%Bb&}`CzEEpigf9lt(-4^$OYDa!j>_x_%aiAB16=)$y z2*teCyTG7zE}#9bX+mMmH@6_a*9I87%T;G!0R*xEdbnymaKuui*T<`4phbr2@L&-G zs|@c$GoXgb>gwtxX@(RLWDHiV_eA*SRv%yvpIsHoajMWPd(tSSnTsm*^t;L)8^)HtYzXN813 z4v-?ZK~M1F?;o%xngNf1MPOr%cr1h7vU{MN>owMeuwAip+&+=&;GiLIZrNEG+CE`> z1?Lmw@RuB`X7FHo!2`7Y<+j!rRHA#|?j+@FolP2(6v|<2D>buh*Zk9#OgumH>+h{T zuua?PyOx+r!)D`MI|8i1oiUw)jfEXtCo{cZh&2$XQNxcu+vfiZk`DG6OGHEhVFUjO8`RX$(C(Qz}bm5h` zHabF7C>sZ2uYvsJ!Xr!>mMluprsuox^Cz*`NC zcMS=!r}s6rs)bEkMdVc3@~Fr4ucbgM z!{hol{bExkW&wdc65%T^!a(P`_{9!>=fm|kr~x^Gvzu)GcmJGtD)3oizc3z@d$Q#{ z&;9*JCOHF{UZMBtXtOvey*3`>qL5E%-Pq)i-C$_B;BW;oy^n(5>Gz8u=&11wBcb(g zlty)Myl9oPvqRf)fyl6IWVK}I7SUh%1M6t}{XT+sdqWYS5bZ7=scw3N9&KhU)jOXF z+ob+B0^u;!321sN{zTrZuO=t5$>j)UKixYiQ$uy&BzNC| z>!o8aD=Yi1+bU|uNdy9~Wp_uM^7&$nod@Z)N_|drTNVAHVs?M-X+CKDF45DIvOV^e zAuP9`ml4(YipKZiyh7|-pO!BX#Fzc)6UDV_t8t?Ia_~YGDV>93V}u#)>kO&CJLDAB zo;g$6X*hCe*34BonkObTwVNqQq8SM46nlWg%=#Foykt&id!?!WwlWr4EC${$nmk~q zTlSm=gbxU!G+@w{2Xf^BUwsR;9G;wq1=wcdVqt{eCZT~E#v$BvL^ zDs~Pfk{7Oeii6FB*JQ9~u|8)H?e{E=;rs|1HmuN1Qdlru-7C6zmy^50yRA4}bJVXD z%6Ag~BH;MzTQ86k`D|-iLRdpAtjm}25GN<@%w~Uj+H7$z3La0fp%~DqF1i197vpg- zKwfY<Gv3w z=W$XkH%eh7KDEGKX>sRwW?w;a&@NLsHuiM;jktJKTU*}8Ni_!Z&F85_NTv4AP5R*D zk^Y@B31hR@)Y1|Xi4x%FmvD{ggA959Et3N*3S?%zkEzEbw=|AT70hWc|NdfTu(( zL<}Ii^#)u}#~!h#tT-l@vRJeb2sm*^G8l{WjTS?2zUl>OT(3Nb-kO7HgnO7C| z^%PRK268iTN&hDrQ^>^{gYI>At-4Lf?n~q8eB(*vF(xk?_X5)$HmtB?qK zO*AWn;z)u<2dzl{mWjS4XcN(_R4Tz@dV|JyDjRX&G${X0BRuRN9ORU%4f&gHo{o^0 z0{G8j6WY$qv1H}@I>WUv7fycm>Xk>KD0`tUFiDLG@Sz=C$j&y*G;Lx{gNL~})TuqQ z5KV0HWDh&)9&g|BUoYOiRj$iMScBWR+S(7jzzX07OkMpbg4Mrj@FU?9`$2CZe`iSl zk8io*nYi3Mr4iR%AdK}WFl^B?1(&>z%K3>}%%WaVIJa>u`q{Hf8Rqh5t6Bs>r3M9# z5%+8HC|aX&x^PX-aaW1*=#XVqLRH;m<(7*R@%}xdb=-?bcjPClNqmN0uy1e@)=sSF zyE~T$mX0`FyXE{|f2bU8y)t3Fi5h5a`S|#LcC=lR(BGMUZBlfDi7DixgnZexDL(*L zl>Lq2xol2H(sJ+gh!*@{NFud7j-!H(Tb$f3zqEgap3Qdjd2WF5H+?o^3rWP{q~AuX z^KvYFX5j2AZNvJ}8#5sxq2%)|`&-HcGkxVZU((FNhW%Q?sN|X?O3_`w`#$#T^w7h5 zLlP*V`8}Tjwj9>8x0G?Av&P?jK)o7=wu~aVi#={Ei>6oZajX=V$1hvq{cs(eK-_jG zdd2;kXpL|XXP3&TPVpDbTW)PKtIcyH%uq-^i;7Y#8oES9rH8K9Q#Q%*b-uyJcM+ay zE2~d#-4^^HWD9RHW82vYgNN6Y_%|?kJs`?}Tq37&?|NuXWF5Jb!$@fuw{gv_s66f5 zX847ZpR^upGZo{ffGf`0>7dP3N`B;<2&8Yc#sG=_wS`Q&D^~h!Ae2nBJLzJvU7T7= zL>;$LUpV>ud?kVz)3Hj9jkmo$J;o5~El)$(g6^m5hHE#TH5~2@WCZwSRSX8~9Rxak zaHa8|(|c`l)bCUG{x&X3$3Ho6XJg9LO~9}9`DKf1g(i$x`C z=k;WFiygQqBB%N}kdvU5JG{#dr`u#M3{E#V1ZmMpgYi@#ZP$Xq32$-#7gq+Uy3@mz zmkiQrwxXg*n@<+H3HO(7G=`Be#*tf&Y|bpxVkT;o_SMtE!kfDiH&@GeU74#IMm&eO ztIh(m>>e(t+6?tbA5k`sy}XmT@M#wWy2_MN!*DCrTfd{ z4uPTGCfIg-yX5W#Y#cbuuiGt}E%-$_m>?&!94_Ht(2=ZqRH6@0FIw0LTmpJ#X5niT zd{CERTQ@c}!7plA=cPy8Kwcq{0MwOR*jWXeeJrj&VFCPgGyIg zsgzqTPobhJ8xJLWV@L?r-M$kVgf8>XgLZXjjO)=|INv#LDm6zu2OmF>ty&Uzq(Z$m zR4D5!R{l6oTi&Q~9q@-4TUcN8CLFt*VYl-RUyQ%pEuWERGMhAIppc^Mva5I-8>?{l zE&)hy&xex%rvX`g9K_m36$X6N7vi}6gU5wcSYu!ld*EBZLXDM^lXGej!VOR?wixu~ z+}zx(tK-IwYXVI}7uQ=NKJ7K1jQLYY1ycx9zgm87-!}9VzFouQE~FltoIK%V?>}by zNFL0^Xy^VqawUIZd`9aISflLjdKj5#(H?I8*-%SdkgXHXx>YBtmKcgag z)wI>d6M~Ig4IC3+LeGtGlzgmmLf!qeP(WWEFy2myVpm9v0}E4(olZfb>Zj|C91{3h z=o!}WN+Vx_;qY=J_Lr>>Q4j$^@c?4>hA1}@I?$JWy!VQ@t=l2FTi1r#ymE~1>MH~r zg3>j?ZrZonWr;2SH@% zn=@d9#R;QQDt5uXF7~j7h3_a~B&ET9)Mvad&<*eQg+HAp%8#J40X%zS0A`J=-E5MD z+*Zs5+ay4zez$|8@9t!WVTRCSqO$|Cd{eT@Nwj3+W7^+4${2;TL5y51Eu_YO{~}S? z)ipYzar6y3;%7%!7c)Ei^WouPf2TnF^XGw3_yQZo?9TS7&ipH+YeFJb+x*GhJ>+Zx z0{s!Se>3>CA%3)5T<7Q4tkAXP(1y}1R-8Z7fMABkgp@&sMk+NXW>#VyuHX}vxyiSw zG2MT6`gQD?YF~e}lhH}v$ohzQ`KI~*QG#j~N8PanAD>2bO`4~HfQn~OR5SCwS*;c63=n zfz$o=@=2y5W|4|J)TuFSK$}|R{#cDtWa)RuO8e1dxQq{Zsfhv#yL{Q|;fh|slh5Fa zhs^{p#iDUHB8jhjOf5Eo5C0|V=%zN(*So5CAy^?z>Si_?ja~6iFvs0tdrFdCvRpat2KOgD*fq4%4Jpk3qtuQfm+)`f#4ov0AMi4}RM*%%L^7AwCnm#9SCc&vceR^C_+5C42l4hqpmJS|MJo48* zI6n8@@n(Ek#?SR-ql2OVjzUILNR!!{UFATtvJqbD3+F$ZfP574rOabo`T3mXCOR+F z5>(j7yDL0caQY*U|GiN!N$JdnxOWT|dz5jU$zUL)*2!WcAYMs6~59&OA2v z8e7CS*tVJBAn@Qs!t;fhUILTrZpP(0hr1YgrI9sHaJwh+U;K_g0e(kTXehbUrj|6Q7xwr5(Gmf$S3I|I2Uv7|dCQ_AQJM|v$e$l> z6Wd|Xw*h`nVSrA;q2qB4Sr3@$fN2A&Sje7=yUI`6tvyxD1L4O?I)vzOfU|}!wO{du zjxK=%d3wE>MH?!7e9CM>e!?#q$Zn{idxQQw`%|(1>&0d>v3l93pxv9Ha18oFNr1** zdz7`D;SOjr#J1rzM@MX?Ciw@H^z^TP*nBnPH50rFZ+{YF^TQIL-ft@_6M?Xc&5(<* z(+4AO($v)SPL&mkN;`T5O-%~$qxieM4l75%g}^VdldtKNH{$A0xZe3B{qSf)L99XY zezMx_1{`Fbor)K;-x(AMM8e(Hd>xApgwFKk-M4>Zr_GxJCHo6n*2Q5yk87dM*Uu^k z(aHoH)Y9}Oeq0F0u)D4k*wqV62SUDsvyYqja49bgUm^x$%TLhEmJ~(n^mkqSvRbMb z(%^E-=MOX3*m#{D12mQt#iaP!`)>vG_OD!Eajf6bMSh@xMe^`!gYzz@>bv*lCaxld znU*TvD_q`l7pFGv#RfFw1OqM%F;KZ8-gJe9R&z&PQ#UVeU|_(1j0=b~bHS@D-fZ|p z_T7}%uDxtBV-yt~X%lzL#MXwiPVlPIy?Z(ZTt-!IAjMB#mq$`lxj97xUP6>a=L^(V za6tO@C~BTGz!9egL?nFsh}a!0$%sFt(S%Aa;^I!bZ~4dmL%Rr$Vu3692f2!n7n$krxB0*}^2 zKz7gyg7ywz#Sv^77#=fd0HLoAgr=gZ`FKO*FoCcv3wl{YDPvD#QMFziL0mxIocdQf zDz_?#9&u5bEW9`eg|n`QmISD!@-S#${7P-f*w^;r-E{zE!=ahC4i9#QYVG64j|g2_ zx#%HA2cB%Fww>Bf(DZ*YhgNh#nooW_SHgw}Lw*o_MOBWVcX?RDc53#jTvtl&vHo*% z#HL@5uC28-Zr^~#V`-FSa%#W9j*CUCb@7PpIbfxT%W9ctf!MX&moqqb#aY#8CBbeN z8mW3EV*LD14m}$7e-VT0>Q`uaBd#|Aq8!|rn1zL}K-~zUPH6r&8Lr+C1ZDw#sSgIz zVh-WX!C57PIU(8sK+}fwXRA>i9Kuoj1!YxFvLyUB&>@8UF6eimjWSCkv($&U+*n+{ zh7#&_8tr<&%ERLt59dyCw1&(~mu~21=S)e;$jZyNz=?#aaipAKm+`QSo z#`y}W-IsTm09$XEdbb$~?f+d?0#{y~4{3T|LqpoJ5u~jhTXwbCTI3st4JL#GnsD!D z$LPXpp*jSSd*&Ta#g0NsgLaATmd4{hDtH&D)su{`jOCkJ@f|16^vo{oBtKFq(GYr% zR@>8{E*nvO`0&H08yj7A81HWt8%jV`{dub#`SWN?F{>!ZghP+r^v^liDj@nx`n(RO zT-xX$ATj{>`nYmpA!{O@2h1NWAw)yBO*EwHFb4+@I`9mBtyDZ7iw93om!q}HOHeVe zjwKq^6D=(%ix;^qmM^YgLR@AUg)U>`1T;!(czQ#9;aGX;^5rmioD1O+i7v7#VdR%6 zwRhft_Tz^Qr=c6RLN25k5V*!k(O^em4Yl87L3j?X4q4&x#B-(p=OWd$g`mDd&SE=J zQ(^ZQ&U2EG(~4mICGq>~&h%=_LeKalzwNt|ov-#k;0Fujy1hxiBsVvCIcoofm%b%$ z!~P}KM)yg_-DCJ4O`^E(A9xsoNrYwf@YMV z{<;tKFq$Nu$B+*}F3GP;zdrZjd7}ta`oY)M-WeGNccl8TZSrdREmtD zVQRac-9Lv;KiRyJWP6F8sMK*n%(3CXs&b~~d9vf%O%$1;_$PYFftA;usy>FqgcW;J zdJ$w#o^1Z*&OlEW+3MxWF_<9BX0$w zA@~%S)7J`pJw7l#!TWbcL={ZAdhT8TydA&Sx)CyS4~gf{xQnRke1PWz-}FC!tTl_n zN#dkUX+`Ar))7Wps2%>Lh_MjTkd zwBYgn8?Z#f*u`yTJS8S2MG`#F&x3A8aFGNL2dw-Y$6VvSXJr2NcB%_96OIAFbEYfa@tlvsvg6e*_FQgjNuiDT9XO zxqB+SLIN=F8S!g?@>)6N_}hhS$zhuDJ;A|CwmWwLKNyse83$P-j%izK4)MV~>!+ zb!|APQ2TQ;n6whd)&EZ{LHimV0TqtxM3%J@cz55TWKdgiYSfWd0@FxB)N|`*-0y~W zwF*XQIOFvJM=kO-0$~Co{{e=X3f`N{@W17Mp25fmq?C(b2>cFHviAXOJpcz58Y%x< zpi#Yjbva<6i{|ub>Wm+__ZrVNW#pj2B)0?b@erLgxIJ$PZB^o4Pn*tF*yr_HTDSaN z>fl}Rn$me4#zy#}^+N+66^vZ})e0eA4$2@{0R-VOGBQfhmeh6y=>=fLwrJEfoEU)0 z1v7LqfDA_P4(bGR<3iayWGTr0Ek#}|vJ@9-XqMV1F54|9<<7l<;<5h|8QoR)%_aIj zHSiJvRN$CL4-8y8sL{KlqN4}ezpG1YG~<)NdRX<+zZ1S!4_DY``one=Jgm@>9|K9_ zKZ0F5I>=;SYxdhKANV+sOW=WB$~?>hg>Dh>M4?3H^#KWQ@LLEh&pW~Bp$CRr+y_7I zs_h8vv+=u zRVJV#D2f5KHRJ{~6TpZkBM$Ls{3rLbTL3PBI!V-;KM`Ufm#+$IuJ88*``gdDtvbEP z>yXvpaE*|GoIi^IW#r@u^-)iMEif3J*6+%EUPCM&4XW3MTA~{a177~H8GtfOQLzkE z1a}y2$$Ow{5o)5oOLempnrl&8o^@&SMD?GRgPYcTbU$)~!Nh$ZS z#>p01Y=!QLdIDEeUm^c$q_Jz^7iQec$ID?jy5aHB;pz?@ptcIGuKbX+bX6{!?<`}= zlZ8o6Pn>pQSp3;yA#FO^HPkQt>ajz^7{RWC-uy=ERBX{s0cz)&h>2%!(T0`W5a@V7 z7V{APW6*HD1_xyU^JZM|ILU?j;Ysfl3~JhFIN}aC{ELET{=R1 zmIcN1ASUnq+S^T<;@42eArs{QbUG;(n6U*_3X<`KG(l%vXUW(aG9maSHQ&?t^-r>k zh*RAaPJJ0DUqBzqDkhc$Vf}4f-27Gm9`2XEjAE}M3PJ6nLaDRG^vxdezRz6#n^<#m zRgJH6#`#rQ9Zn9L1`DRGSf6N1QohP`YRn_N#Co@rMS~e?BRCk9T!{d~I99Rfkg@zS zP=cD!lCc6lyD=L1Y{OOp)cARF*qQBx^%VYs#A{Ms!~ZZb3U@*&pU1(V3V=MB2KbIo z7NZ(Fo6zIf55AY)>!O4V5;AfG74U2=NYB+^OQ?ZF3f}A5^_osK@k^7s^}Zg5yK9}$ zCNJtdeJ)wV$qF1#;AT_^f0L+M<4jdp%SO5e z7O%G-pv&O@4h9ki^pzE?IJrPe?7zT;PoCm{>q3*cU-swyUL{pLQbf7y9Z?}5EY{+dG^jKom zeHHQJP-VRYc^Ri5;vql|{yB3{lY=?~@AzaRXtD9^geU0qAX{-4QzOJ_fUAvr_U95;Tj+5Vkm|**LGf*q)*i z3I9@g7FzB{M&Z1cf7k@)+2T&7#^u%TG6*4mdL0mxX6fhTa#h5P+@=kyI|Tuai+-Ld z<1-S4|C4zguJj}dM8Jd2XW2p7Z8ii=EHGHG2gDe$X#6*uO)AWx!PaS_t@E8ezsM8M58<6-JOz*MMXp6)zx24?z|W?q$#6fxo<82Zi@0pi2}~RBa?8<8W%_AAoDi z*v2+k5heV*XFV!NK=>o=>=&`k6#ciTh!<29i?>^?aMrQ!VCxwlf*#Wuc&X>#FG^K? zc7FEqg`Ey27g9an0K@+$XIdzXk8l|K{0dsMk@0xYW&cTxikuvL|D@W%34;cV zM4+zfAS7g{L-R+F(+V3sYKs&tp|Ejkl|_I z{PGE^k)(|YA3$<|?yG{9BAe0jn?Tls{xoQytNP|^v`(DU3%^}tnvjc00(X;r(M{Q} zZ43$fmI|W3a(t@@i>pK#s%$Pk7%GGU;?DhoUrylX- z+@g!jmoxo_W7{O*$IFfPp1Ed#BCrnd9App#!ik8wEo?$1Y=7vx=mFzoVUVnns_F%3 zRbUhn!mRDJd>|sx89j2EAmZa2-Bx`4Wj0FQ9dQ`{m2lBA<<&Skg1GR8T1v2Nh_`J& z>*$qDYb`b+Vg`%h^3BKq)_t+&wfu;UeDba9?*iSWgA^z^Z{4EK)Hqo{1LWTQQWOq< zb237&?wewvz9w_mH`g0u@p*J>yMA|}-?QzHASDs={woBs(q`CiB>*^(Tuf-=@NwUJ zENJ_D2o@BGh9sSHCPYo=Gx@JLJz=+1{aOhQQHi5f-5U3$UzL*2{@i3{4uu^}>6Jc9 zfrbOb*IB@Oa~j*wn@-Y~GV{k>cXvSmfUKZsx3IK~`@JLXiTmRG6>e>-+f@dYq#$(p zs$gkTkwZnG#t8INM0$17VNmHxdad`&W@ zmJ_A0#lp&JcPikK$oyX|fEr2%Hv2!}Tw&ym8iC8y`h;q?+iLf@UtRM8T_X~T74Z~n z)wGlVl|O=Ec!>NFaK1O7#Lex|%he2n*5nee4U=#Z+W0ZYcG+h9#vD%6*EkMdTTL8{ z!R)sw-p8Zr(rb6MDZ%+-91H}yQpFRH&xX1~!0byfc6u4ijbv3zdwD-Q6F3uu$~3O^ zynIwKJ8ORA2{5@)Syalk?_Ht7k7Ktl&)Zj*mPQ9*3O3RYx9~^`fH8!+69bLSv1#`N6pfo%Hsp|n;5yU&?;h?*DV2mo#&T?IfLu>G+g%)xr}?aO5Sn>XhQN7fIvp^>pK_Y$YR`p;g~ zeHC*ZvdR$$3$N82ZRv9$B+@)l#|0M95&wSYJyQ+4Fm1_y6``25B!b+Q=mVA>J21%_62*S@|6 z&tWT!?L2^~=3tcJ9E2id=m-__n6BLzk09rEBIojYO&0?7PvwJ}y-CyGqeA1-v=ni2 zkPiC51T%1~cG_R7obukN-$PRCO;G@;U($&qFEF5c-x^`|I)b`<9I_v$R%O+1q_6Sl zPlHK_c%-=X^q(JdoGvo?_ue^0G<7~-DnOuEO%@cr9MN1|Te4zP%dC(~nX&w2@L7_U zSn7Q_0y5{vwH77%b1R7IM-8cf+5CtIQSg*3Z6%~sKBkZ8rSqhZ7$jnmO;G<}4-Q3P z(B}t->t8(!@h;z|3*ez|0GNCQY74BnI?f(aNX6dtSV423mIuRFRK};eIMwL=ovB1c zD^l8Y(AO4bqiPRb6hD*_l90^jW~V&_PyqzzFF`7bKuA>kDQ6JFk70N-1H5JLfe{7) z7+|2p0R@ImVHNh~>qa(%s(yj<%8@Tat<#?LXR9325IS+>EYG0KX#4se{wODZyBzTp zh)@3(d_qTsXP3)>;~+#StNoKyWE;e=Bj95LNk4~)8cZgSwNYN7y7zK? zc8*Sgu2ht#6GU7@Lk}4_VuDsxfAILP%MXTo=2DsOFb#nSGSRo{2wb5x>sVqj<(o8 z@UlqVt}=+TlNeg7zAm{3Q)=pV1`T13#xuY5>IjhGR|llr&weyn=L0-9z4!E!W**KN z`9$5yLJGNYmxx9$Ok-z{p@Iv#7V{h66?b~k#D81^0TNDS^z)M%bCcBDb;oIv2Q zci_p69`s~U3s_y4Iq+Aj3p^2%KHdbo&I|9MH5eK9dtUc;XjoI7PccZBY1_)&Zv0)z z)|ObCT+2|qOZh2cDtw_9eI z5bz0pOF6tRc$XC9`Cq38X|O7&gG9vgAoc6!MabZw^7 zv{AbtOQCjyEC8BT;GI$g4-F8NNP`X1^fD$dsZFQIBo$iikxxO^<*#qR4-saFmC-M# zW?HF?^{n|FhEq?6Uz4}Og{MMLcEDdBRJ*dkT;L2{uD!?G2-`5}Jxc;m9FmuTg`8|d zkdylcX|hO5{)41n;^*SIw6LEKXy5W1j7g7nzJYH!*wW!a^3zBd!G1al>KSBi| zD3w)N?jXSAVyQjwO3o)Fpy|hft4@0Vhp_fX;DWaRQ-KJAb0xQ^%G2Ki^gYYGmIGGt(IZUFX%HmBEB z^-x6ZAl-vjWl-hI0t4{8l7^50s?DsXXP12RdirvH)PiE6-_(%egM#nwYJ1S>HUmYre%fJ`_9-{q&~WGtlj1%z=SvvW^b{yK zssmT3vVZ;4n)qUt!k|9|M(YBE6an%BV6;ZyPi`2p1->5veG$wbR0@KRN6Wp_sgU!( zJS}TkTsX>c;p#v#I9LZcC`D>QHy?ek#P$WCajgN%L~0Z$aw?-vAgxUlw52F8sQ3U) zbO;!#by=f`{&>Z-_%ZF@<*fQ|?J*!Mbzj2f(DR)YK&M>OArrxh_ov@x8bwFc0YRzL zrg<`*HsUZ?w;~F~rIlsmuPt*p{Xm?kzT=gxSaAIGOx;cI{EUIdzcfWz272$^07C76 zg6O243L@IuOVTF_6}9Wvzs_6zurTB7t9G+SnlILCR=A;wOCD4|85tRfhugt090A_7 zMccZHlY(*L6r7hb7bm+7Djki1UHJlYJz?CP+L9E6^w6l*)~2AdWG_qczA&D~A_`a^92aL8t9d-5x+@{-DPFrl@G)Mpmy!3yH{^ckjM~(K;b9aevC$uAwF4PEYE3 zy0lp^g?^O}n(aCW8HBxmd(P?E8UL?%4qaUz4vY~yyK;pm0Gu=*SE1(Uhw(l4vLXTb zHs#Q8KT<75>Cj39YwnPrJQ;e5uLmoWG-wZu?HiebbL$PJ>oCS_xXiT2xEI=GbQfJ> z>@WxA4{oSAXh3=+y7xnoVGDkgpm_OkZ0o+5IxtZcEp0cbT@Z!EiZxd0vxw8{&*3!x4~v+mQVHgpUKerfwMit*vwMAJD>U zNrZdeHoegd3%oU8mO~s z{WxEuYEn=epjIGo3HTiG=T3G%;(2Be^92&SP?3MxP6D=5L!xi8unT5hy5lwZ2lZ5q zq`Trq*upjpP-P3P*YBB}Zl|9ivnzp2Y=cxU7kYi3?X4qEV#%sQmgURQ>(h#edIie3 z<6;h!e7{aV{&tG$1)`%`1q9U=z3HIJNa+_K*NGu7C_ywY=+4}$K0Kq;pers z4O#D3h2Nu>2Me};-Ozk}S$F5nIfu;Y2V{lgB{*mTD3$~|R(5T`E zX)imJoj_iyr|}CxxB~=gT)Q{Iq-ZEqn4cJl^4b5i{8M6{+P)oC00|QkXM%q&n68K# z5)DA#5$%~LlVERv!)5g5p9!9Aa7>AYh8P${fbi*ne{MPao<=@2M8Nusfb08sfUOcjMp=KS^RW*BxLo%hNZ zgdKv%oFdv7^yCOLiZz@uEtSE9Y>omjJN%oia?e`hzyiohykn71 zd5%gaf7%{{>aF#Cee4p-6Lg}v^Cs4Yp@QzsrtE(E?wWG#yE@-J6Cxvb`XSGHdv*mD zom$Vw2yO%yu@#ViYGDUzk7b)S#&l@7fTj2eLLulaZ+XjNy7i}XXrv4uk8IFn52QBI zCN$b7tyEI`3LVt6lexam&UAvbG&D+8#}msI08Ve%!BE8bD>~PM{;8ibf8@|8rzRz_ zZ!`XxxjL-;57JS43y_Y6%N&*5$E=&OxSQ)WUe%r_N!!{W%!qVc7b9;bX7(o!6!fp+ z4<41x4jC-aL(|W$aZ8N;}OL?Qbt5Ib2UB~u|cw5JC%ANWI6yup?g>Kqccg}T;q z+w2FmR~+kg{JKN%XQCC~E0TTh_|tS_#(FZ}_j~7#RbrQ*y4%_l25?-pt-X$`4xG_= zyAyqApX*7QZG{0#{zU+t_z>2KJ^ok@TCS=OzuEt5tSnVSGa!GRg)oOHg->_VdCwyn z43Zqq6+w_k!ZUQ%l>%k(>({Rwg9`M53uM{gLKO{f-1ba_T1;Yf>dOl@KNbACF?lob zhSRy(({oA;{uF^`EwwsiJwqiUf+8It^i%P{Ja2Ij1`V^eJ)oinJcI?VCU9pZB#io% zzuQ$P%Pidi`2}cz&_XnKz=pY53xSNZB@RN#pYTL2F0o{%wso(FSgU_!+*k(yc*eR{ zx=1Q;l@IJ}3XN+&8F+aK=n!Ne4SPPZl(A{Q-Lf(EJp z$wCdBPe6K@K&ZexGR7f9DKtUW3x0h>AogU1&4)_4DqtLTp88fX&-S7hBiCc@y{Ys9 zpRQ^*UaJe`PGp_&K7NanmMtPWWImQwR_NFB3%=Z$KO#XMK@a-X_S&Q{gY$X5&L9l1 zS&*&z%yQ}d(27vweg2n7&3*%kVmVbr1SpdO(KiUsKWVSB&v?B0l@MCfc1DLw`pR?v zxD93WgM@67ol=hSHXsc&U@%eZwP6L0d_ZZ{1dPK{zvDG0$kP>?`=Mz4<8y)V-?4gH zr2Cm66bHYq-mUkK2PPzB!ZBf2<-l3QTa1O}cDNhy?em4c&X=!U%dd`hEE};PeNJ1r zmTQD#0uR^+=6@UQ5EMpky`rbb)mXF7j`}t->2nWiRGQ7+pyt*W)ou5Z**A(kogb^Y z9{#n3k-G>w96~1b9ij*1p#qS~fF4wS`xdCKt=N@U}tg$;c2z(D=-R^cyjT=F1+uhLDEQ4XK4@V2>)aj~@I31P5%T@Of_DnsUM)FUBtU~i{`~g> z&D=87hIxNu z{7F3bFJdB#0UA5gX2QujT;ZTTvuwaJE76A*Ftm_uz4kL>(JeiU{D;rW8F!d|Z~275 zNd*>s=b9OpLjYaIO3kxkzN(n zmM#`Vh1RkYLE6t?R7b$mkYl2vjGcP_Xn3%|Fz2wuJk&a?i8g zWFu3LdkkO`?KWs|`eU#4fG#B+Alw%b&{`Z%b`)qDXvIrSK-3W+|8~N0=z?kCDkKg@ zWAKjyW{bjttJhrPzDChMq^1Xzel}Z-q+Wq51BmM$)KR&JD1u$Y%#BMonoA`1I94#7 zL0w9qKu1KH1(ueUJ}zEzk#*2){SrD=tjhSTx~N4$Vx&>xwOpH5v9Oju&Kap3>4 zn$O5>Y*cXSNY1gWC6wpu=4ne4WG&BR%NE%IhpOVey?%oO*6*#(?_YVrve*NObcJG}I^5pJMG*>t0C@llzfC;x`0pV z&!g)+iu3YiR`kR59x%Ef5(ip!wd^X#Ej!-)y#NI?1hm&gxd_4)7 z2qPC2U6&`w1WAp?CkyKq=)F2^3T4+{Su6x&(JIS(751XM#M}1xRym-j*zLrsdDc1%5g+TVCDq0 zVW1f-atarLiiAh=S?fa=ai`2%sNAmdXvrDg(<;jubihGbKyx6 zlON@}+zeuC;bc)5RrelO84{?5!0(S+V!iIX1EozcLO+x!5wn8lMA`Ph{VN;Bs}iJ) z!2@H&OSfkUP>xk7ukMR-{>LS*4uW=mqX5nvJM21q9}~^B!+eP1vmN`)1p&a59fRCDh9*DdwASuw?{z*{ofeeGa#hZj%xE6&%VbXCiq)@ z|B|@7y6?yw-MOR~oG5A15IozK2;s*_LhG^clHW$G2vC2R{u1~KfMoRR#a=HrCV2u4 z*55n6h$XAAOsUWJ0UW z6A)WHefl(|4Z=tN&-_wX5`MbJ@8D63{Do*+G%`}E{li6*7jvMW>%~_3=I&aYI?9O! zH+bdVgSIcWNF=%U?tLgZDGIeYYTsJ>4Zz3(v3Re~gc`fIZ{Ow%I`s!f3#6_BBJj(Q z4DP1dbjtEp&?!hUN!CW2A{f|5#A1t(I9+5?AXd1F725jnhj!@Q7qM@V&H3~R0a9Qq zUQmibEex)DZP2XvPRxUyLpR?!Fh$fY9DKr>DSg)5UoA;XZc^PFC-6*Fkc z6x&>zM2<_=!h+w6IJ$N0l5on*7i7A>sggtX49?|wS#4uSoYY~=BG?!^zo^?oAI-`vvK$q}JQ zfO0@G-v^%^Xn=*VfWi@hXup1?VKWcOm63Me5UKIi$>rQ1vEJ;G(;x5J^^>H|oGSV@ zi9-%284coOa$AaIHL&mi()wy${5K2Xy&j`K@_XKoqA+V*B~Vx8uhAFs=81$#+I#o- z*{=6F@Hs{)O=s{zKX0O>pQkQQWETv$jU-qh?ZSgS$xYHwR8&-XCITONaGeH@4h55t zWSq~@Lhff0C*eA?8+i}3Znk~YVqkbvs?uzAfj(dGeUElygSmj677WVi0|j>e4v_JX zgjk1PBtkt`hV~JJHii205#-IWTz+KUmuy~^G%MqiH7|D0$f`}t?Rpya`1X0seZPpQ zk=zS{97X+}c1WygM--R|LKd~Px7RDQj|5lz`FK^n3&kg z;#PL1$@KmO#muIN`LT>|UknFq#DYPO@Gd}N_pAPu(7;DtepzQGLuYABa3|(&V@7GB{6?& zb7B-qgYYB#8?zf5JTVJl@27~N-C^)!{=2u_yu9S`F0xhs)dHBBPUY{wlHF`!20gYZ zGeVv6S#4;Dyr3PmV6#l^xU&8+asHh_xw@3{rmX%0SN;pMFgT@yV>3Tmoar70#xG+I zVTqwht!u^x6SWIa6a#il6Ywof8GmGRwDE&@G2uOl*s3g^H@!mtvL_$4lJv=F) zK8YK>7vz46e7e$1WYrUTcG_v;<*EDm@*Pm-`oNr-(m@c!4wu_%&D>`XEw1U%$04pEZ5LJFM7cYfCxP)_7({z1DN4cLI!6 zF*U~}TnbyB*fxYO&(n+Dve?MMA}!;Q-~JJ7{?UBH#Acj&(i^AHnBzm!m8X&-?+4GM z=wNtcdV0DCp4J8A0qFL1_VTiZ{er*DKqS~rhd4QnH)$t0$kcm@O}mr(ZM;uqpo0S^ zGB4-{bg?Pmg8twwNi-RZxyQp|TPiZA9)AgAo04SV_{dQ+VIi^JYpdt>;5E~jiuGU| zCWDv7zam46UzR+Qt>k}ODe{uRDb20%a5)dX1AL?s4J+z-hM<`kd1T3Me;?JY*rX1_ zSL@TOfH32DXN^Q9CYTfi)oe+a%|H(&<(z!a%~=TKm`wdZp4 z600j-U7z%@Sk=!l6p4F9%O!Q}U$%!gpc#162}&1`*^HWf5ENKJiHVKY$mZu63=fds z@97_#ITuCpB!M)ql-_lAW=0mILXBsqwP&(BQhc+UYu~ z{cUW!%Y;<5pWdE>N@{p}Z*wuPuPBn?Qg1ocC%&3_8+$S(f-+jcyY=+c1SdzydslJr z(MO-U(j>(rn8L_EfBio+U1eC7+qR`aNf8M_LM27%?l1_EE|D(jQc_w_Qt3|V29a*1 zOAt`$l9cYe^L3y5!{dJT@!9gNZ^fKrj)*D@%=EtC{sX2{-4G?+)fIWVGPcQ{CCh{6 z$>nnPt0D^=_O+`N7E`@?g^wglmo5mAj}hMz2n#&&8jb_3ZFB|oMoVM**0|%Na_Y00 zlq0y zD{3G5T~b*Yc-vp=&2Ff2?29onJ#QN=XUFBqIzBM2)>=bGd?gT4LBzXAD_|ya^f7r~ zzuqOdb$U8AOD@)7?rXTyW+RTv75Y@krv>*PLN$hWE1|pSxhc5^-LGB$x{KtFg9+TW zxFlafVDmw(tI6jQ{cCOZhX?Hov&W{RZP#)OnSanjR1!$c4B-vNYCu8|LK=A`p91vC zDFXz@^~ME7uyK~~vtfP;=vylZF}(XY>HJsCeO@%n%w(%QzQYNIWpNy<)*^1=6{dfh zVjv1!0)HFSk%^Z;LX?!ly6w$CZYsi$BISJteqYFjO3nlF%Bc9+-;?R$U_U}#eIliu zaA$WZHseufpvQ&l&AdF!H&}1Y1}KQ&8!!{Vq=9vn0}35Ab!&f`s+c7IEdojC3) zD=KeBug5v=#QhVxaX*j)?JTbE4`msQvi7{N?fgKOzYoUsDKKGszTqqR&O_)OvCBK@ zCQHAF{n8t8*d$IjxxihoFVX8!!QUtP`WiEGQIgMoZA{(oD>Vo^I+<$GR^wmiK}q)- zE32!kGZtTlBm15hmTg--0Y3eW6Ds^C6$P^tM$ziE6~Izv6_EfL`gnBd#^0G{YP#>=R?m*?2SIR#Y>rw>$%ENU!y%?G`6QauGN&%rL)5FQv9*kWnAd0zI35UIX> zKftk-#Ce!R(Z7wtPq>cliQ0%}in57z?)_R^CF;4;Ek$3_N=0AtTRwb>zLXW-B}%^3 z983})NVq~u;wS`&sYQErOSErHc}?$(-4b>wwK#`~(IQYBVwy^cZaU%l1P-S1DnqfBEY`u%#De^URgp+6xR%aaDXxc3x*5s5m6kvM<6GQ{%A`72X^OO+^l1@E;B(ut>@|SgP@mq27a*n3I%DY`$ zCyjr9zV|7IQY=>Brz85RANI&5#uag<$TT3>Dp~_Irc_~AAB?3s!-1CuRZRBp7z+Q= z!yUw8!>>_{ zXZo{rz|KM2+OF3R`vwJH@m00_B(q)9p1lucV<^&K{NIwidhi=pN&_ATsEj*d`rr%& zZ|!oA(=Yu|KMok&J@O-hqAPz)iD}PW;-@=`q}XzeWvqd#C>$io*vLw3cnDjumSgpH zx{ov;7;W=y3s-UV-$>n7I&?e_A7f8a;>vNFacg&&@Sm4MjYdfg`8M9UR6EYfpHpT> zMfoB2|S$T4}srMQES}Os4=2vw_qa*7fRPvA^?GC}i zXZKiCbDJk>jE-mg3h*d)uB?q#-Vtf|xEfbo{n&h%Avq^Su;q7UB`BMB&sPjeP;t&@ z{6u0iy1Bub)300=_UOY?YMB~r?Dp0?O!A5EGk>uAVt+}`NN4~*2pQk>euQ@iBx}b& z=_umo9KTLV+74Z0`RLyUyvRqHbU?zkJO_FM|KKpZ`jR*XYe-2<)XI)BtJ1uy+No)g z=yLYdflztbvmWacshv*t6M7+Y!>eX^=-1nQN#j#v`Tl-(-XK44#liKz)myYmWk>G@O({dB;H@Uiih_V+6iD{qjsM@fURLZ zZN@8odD;&X6qnz!Mlh0768`U1;H)VrNJD*hmLFI4gJ=85rQGkD1_z$NZAVyXK7(i4wRkYUx(I9j;Q6)KR5MM&KXq?{U86^g;GNJi*i@ZssK z==a{klUz~R2v_Fmr7`j4b#(nIJ5QWJ8zeO2W8csq)QH{M%)vc)9KSnw*FXir2kQ?3kE%09!GXCN-zKN z2H3wK`S`|APOE@!#zktB*;vfSBK@d7n3TG@WfzPToW z%Y^2>+}qzb@X$#Yg%-$amfmm}M^8hEr~9MQ9>yjzN7!UYvFeMqM)Ze^8J# z8e=nAki7PmT%e<%pEn@>2K6nUA9ho-H!3q8O=HYkTy&YIMR~uy7G>|Jyx|Qs?IS3E zZ7q_o=2$lLB$(`_c=A&|egauBymQkQQw_;->OEH%7h_C1n@MHQ78#gL0K0LB@V4Kh z%$CVXk+psBiUY=byUisb78ce`3>47t{Qoy>fYSPd)i2@`i6W2DcSME>bDF+%slX#( z4%RrW5QBm5-3?_b!b|se&)UUo>mAQE`+rbeqB+RCYS}GjoWOjr^u{Ad>}c|WGEfmF*5t$KbG#yeig z5Wki;6s`Tm>g6w=ai;SbDc~(dKQesNUQV-zPHd{t3Tp!55>B`Sp?r?5d|EJq{4?M+ z$PIT5BGm`k+EUPwlG;D--xkO)HWgn`0R=6Hp_gC~NCoDtmNibyhYW;dHRd}!9^2or zX@s{wv8Zjg3(fDY9t~1Fo5=Ou*@?YBG29iY5_DZ*EGddpt;0d=^^^9dV4b@_aG0Cp zAD+VtO|dop={O0wm2J$O)qyh9QyX2d7~a=8#>e{M`9cAGFw^6k~?nwr_w)$a3C zzZxeQ=UR^Bw38AQW`QtH=WfLdPuK2Awm|oYI+lvtyQzet)i+w4O!h;(P^kJf9p-$$ zhXhfL?NXEu4tSd5cw|@o#ai|Dzi?pmisfdhLV5TS&d15q@&Z~4l7n_?Xzzxrw=)4c z$po1n9Twh``6-cojM4Mca83_?`DC|{k%ESozlM$o?>IZ-KIXTM0>i|j@m-8G&jY`2 z3_fx$@V3JfcyxR$!_068KE5i&ZLkWdm@_ZzX=_7=p3JY28`%XM|N0W8IXU)QVxCD5 zZHHv0BG$u;Jq$mXI6p!v7&u7`Xj}Zqm4MMso^FGnsHi9`gvovAwOritDT~`XfGfA^ zNI<>be0Drd-k=M;(5M3>7}?yNnvtBtoMZdyxVCVADYNK z+YptOI>|6aC=QXxKP9r4kTGKC(6?7F>BuelsN!bI8tPd6DGQy1&_{(Lm?KNcOn#Y- zIE_i`ws$Ah0X}B7p@U_NVF^SmLt1lNfVEkRZ^EbSe4%2UMx9jkqKKE@4GEhre(Nx| zEF>k9jY2b)L0$gz10K#pP{XfQZtd^W-@W^_o~$gh5c^I1IV}_e6<>gd0+?Fgr63s> zAR7?6nVY~izPmc0w z82b=18of~Jqh-K~VTHP${~F89cviL$!1|PP6m9`E*T@M1(u6^9)T7NyGu{hM+SLw= zvZEaR{3`L?0$5B=V+H)`={gA})6!vGiu>i|abMqim}n|q6TWqoG>t!YyG(zx)r!#j zI_wz%OeRh_5w!;k`wwS-8kGe4Zf!BO#oTX!?3&~cAKH=xhE*%Yct#?<7~CB^_t977 z8@*3e4hy-J#{pjXcql>t;le-X7aGy)q<#HfpsA^qyaEgi1o|@T(`@`>93<0}ZM`KKNLIrzq8&$K_1wf9VTTUz}?I&d%H zQ6_bLu`S_8`(mlG#Oi;Y>cnI5K~;tqsll@ZE* zl4QFz%TQycs3|C}6jRT|4 zff$l?JbkmQ^obYJIU)y8YI#C<75l*5Tw@XPt=-*uz=ptXuFhowDrh9-dwhmWe{fw# zjH@f|*XE!&E=o_(VF3ry9E?Hpzdl(P3&NyGnzhBnZxDE%SP2JiX4!mFn;HzV zrW#hQcmGJ_DUVWwbHJ^G7>0p(8q!B*rI0m%2liL(E6d{Wr*v&0COnHQBhREv8?^oKHd31>gSJ}VE6;LB*~-mDb4fO12T z6t?+ryWl*B8bk}c{8dgbc5!qEn4F7e$GcjmtD{A7@b3j27M>Khq=RcpF!BrJH{an# zLi{7(dWkAg;)$XsToM1Jx)p-H>5@x~-IPFF`ea}w#PmageKP+{?v)N9$#1eX7)_PKl3vvxTM^4oIBJd_2r>&uv6$n1cc0! zQvS3$PmkOcJi$`Q{>0_sLVqu8RM6win<5d6g2ATodd12^wsSo9Y5&uczQA?9HHlQH zzoBA}z)bJZq``4d4msT4U!1!yH+=)h?-|wqohBj5Zf{_;nStaI;qw;iHYC6XireD{ zLj=T!<#(0sGkCDA9?YcKc9T>W4%apRqWIHaIpwlb0CZQxN&<9t#@0fh#D;q*11u=c zK)Q(>ONarE7IJp58Swz4KLQ%j-p4d=q>)Jgn7$x@BBU_Z=w9C5Dkae=&SzzK`ZXuQ z-CNS@MH6>?P1cIeX56+^H~Kzj3_%#wGfrqEgblOVd^-DGII1pfS8Vy`&^dHJD0bdW zm7Z~FHw?KafX#ST`pcN5BC-&>XM5Y;Xmd(Gp=h!z{y4Py;yLEX#p$8Q6~e%0VhvyO z)uy;@H>|QgYNuQzUmj?md}TGsjUd+d;!k>EQ~j)*8jrlk_gz>Ruh;ITp)^!BC*nWd zDYApH{~jL0=3);;5bV~eU*cF_k>VCeNFBftuCZ(Jr$!eCt^UjDMiEd?_bx%WB z&`hrpPbDY6DwG_x(t<*4O1;u{It4CsFrx@4v2zq;3HG`JpB+FR;6lW4^B^{oF?0Dcy$uRCl3{OxWIQ&@21^- zqpo*2Q4FWdn9DSqC@U$lALfd~iF4oW1_V#pwPP!|wRueuZQ|RDc6WUCz+xpv_Gv zr;!<8{$?<=O=aL!+snl>Fm z;)dVWLxN!SWZ1;7l~ko9JZ_3`U$~XF)nih&i1OB0MDy`Cb!YRF@hdhBucP8b{-REH znPKzV7C+iwB_!urrTh4CBkDo&aJ;mA)Q7YOyAdTbe#RmsL7t@2Ajx_WduwNRw{3Fr zMf45u(zT3@mpRZ0l7k9z<=@I36ywOT1Iv9Iq@IWlX&cxGe_TDHS=5l6a%7*ur>_Rd znT_2;{Y_oXO4)|L!_Sz%JXNJ}UAV>|9|xJ14Y8GfK_{CHGT=w((lB0vJV`{!VSl`1 z0_wy85E&zsI>J|(oD@La2lb#zJk0+QEe@y+oi?YEH5;tR#45xp(CnnUsCQ81^H5^2 zbUOCDzrA9mF12e&XB~MaK3`AZ?2QpVflgApW-l6m8tl&Wm(#%_UWtI-uT|5}N-Qd6 zdX!d+aCA|TC3!h@++lx#M^dWFab-x3iCG~iDvDD+Q9XdINq#1nt^0dX;#rM~GD$UR zC9G8fTxNhRuiDj}V+QgG zLgY?614>H`FB8_*-X0QjRDbZ>65wMlet!NqXL0q26yS{HRe^DAgZpzc;XjBc5HNG% zM?yHjvIp#g93V<3Daql2ClhuM-c9azU>sq;)PJk-{NOoaA_BaU5b7qd4=G#2!~lm&Ei)baU7?v=%+zBb)MSB9@VPs@gG8Ju7jzK}7VSnQz)ff4<0P z=PARvJglYZjceD^uZkDyHKhO;Q`dm5`>zu_NVsNLqUQyu+A%UO^e=TLWoaR~ejVyE zM@Rg*$k@$@BXUS6B{l0^IFRV~?d=m=g=*(bYR1S2)p2T>rGQG&#jR;fz!z_jxOi~f9{q2r~7PXMc@9nCIr?{F_TRwU$QbAL;m085s znVtXMOsTR}S!_Xv|3;S0$`FQH;gix5wwfwI4Y=dSc`Q_gun6jVEK7>?=iAL>o*k}N%3&0-+1Ab}Kfd`MNMK*%*d~#3e(DIsj5yd{ii}CquNwaLh|WbLq)h zVC(!hLvlB3Czc0oY@tp~1PqHRAV*Ut{FQ^l9LRY;fddhY&*%QAJ20YcO!(N({}_k4 zZ_rChTy(hd?|{Ao)cfp~;~O~^?*Hck{N_eDM?gqF1~;@P zPe*E!^=yao4!H){YoGHWzI;{*AD<_o%U%_ypRvCl_U!S?Pu3RAb2mu|HLItUV}9p6 z6}othc@8zh_EdO28fjv^ffjRh0^ZB6_tn$&GW!e0)NCpN?I|fgUfFkbr{%tb!$Sta zKt|^$;9=wup`oh+D!hSj|9b=D(=mo&sSpowxfs@2_}~K6OEWX# zU=)c&7eamZwc^u6P(mPh-6ir>jP=9@c10HPQOhBsb%4&^s9(u~G8MFuh#v(+?j4J! zR#b4o-<1ux7h-=5zO9G_YTj^8i^dYc(ht=Kf2aC7C+iT02ntSP9QZ+9+{u*q_9I$R zw|X^K6OQ7}uvquZw)zTNtxfV?wSS)9jB=)*8dtlK#=n9u#5HQGCOfZf^0@!hTgpUy z$@+|`l&Z_Eln0-3l#cfcfu2WMic;p#6L~xdSI2uB(`;>>AKBes-kJDLO89#xIl%)q(zA2hZ0!secmWpjB!Wgx&rv*go4OF4KCQ(lW z!7PEs^N21LoTJnGUu4PN07S5(+J0WM%9bYimAhP$SnB>uAbEh>$sZU(W!X+Q)`MZ( z>qF0b$~U-T1O;du!0Qqb>LR}mE^1>x7rX?+`>K91qcvTZS;-4@jbo*Yu<{>gd^vZh z)GVEQ^0-(ZxJgCveLD3H=Bsw~3*gc%u(6`pW6z@sDc?XA~FX4Px+TVFqMFrdOTRCjeh z`qh@~VTPgX!->cVd#`1MUv(zTjyZS;=2AQB-^PReq5}Z?vn_*clQ`&YGw{yfg&~Ylw)_7g^9xQ^(sIds(b83{?qf}V~bzkA0Dk1@YJ8b zrgGk>_puQv`td`#Hx9KYCX3TroB8Ar8#^#*!0aACDV2fxYShJP%(pPL?-b3_ueD?V zm;l-}>CqE}{KJ29ZOEKEe~IS$b%3+Wro0P5+z>$ZUF(@lnO!6ktmn6|e|K9-{Gj&< z027G0KX{_;ZW;7*y#|m5kBa|;=$n(7)m4irdr}p#ORMU?&8Rqd{uk#4t3M(%g1TB- ze4x)v0U`h-`=B>NnDjDOgM!7@gS}&;{ZY#pmT!OugJ~Bn_!t`kE|c$o6aRYsXA9K$ zI9IR!3tEJlZqVpjsnd!wa{Ix=NM3NNuMa=;Q5)hq0Kd$qXieURWW~Jim`0tORi*Nv zCUl-}5u)~(iwd9Go_WJek@{1*{`w?Sq~R~U#AM(x}I`qS#4uJI^#Jm?WOY zhEoanZVn&!FJq2Bn5Ln^GfZyB$u(+R1^;xWvF9DYLRu6T>h`qdt<|fHr_y+JE#2hZ6i`A$xS@cZ;;u3V@p1K`?CGg5SIemhT{`1S>0FYq~0v|TX zYN0PhhngWaP=*Kp)JO=$&qt=K)On4X*Xn2UDE@O-msx|?16MWl>P4vAIz|X>mn>Z7 zpDwCCW0`hr+pWE0LZf-adm=;;{QhZG-jgYxpk8a;<*H_;YtSloWIUWF=a}O!sptH_ zW%dXqydX@#sS_eb(jODXaiClLDDBsLo1SxXgu#M#kB8JfqA>6_P%2ehJlz|1^)kN` zQBcHJ+6;u|B6F9CpY3|y05})6J-Lz%4=y`ovBGDNc5|!!9*7)4=&=%kVWCoH_^>Cu zf_&}gHPCCW3`4Bp6ZzgL=Tlw?x5p)eTXqY1-*RfecKTj0936Aw9|77{k!@ zP_J+&_{~lx+`!j6@~Nk%Vtv`KBfM;CPYPbN0s$!J`9i(8=h-V zBxh)RGU~?zz+wJqrS^R&F4S*^{w*EDdk0LF1Tm-4;h~{IUQ)OvzI3I-9$ta&JqKE( zQR-m$Dl!f@wv-N5TN7|8_BPX~2mx_{6ZH{~oZTBhSZz-a`rfy=vb~`L9P42rueA5sg9C*6u$L2jeJdo?A!Ts=07h@`G#`nc%oa_{F(*0V5 zsVLd?LIcS{9SE)kh68YndbX<($p&2Gochfuva$Ue+;6Var^VFhyg}hBZfRJ{EM@CBcW8`)s%+W-}s(h z<(2zbK#y!SHI7-22B0`Y`e-GmEb3kr4Idxh#KZ)XMllsUw>|k}R$zcIJ4)^Un|)?? zedJ=#jG_mR!18A)9aN;$u&G&V%cAwizqF)DYz>G7oF*mD{;i_pB!-vtq%3|Mj6Ym< zx)^0-WxIcm0zDMQ<%u4t_ikmqvNAQ9RTfN5Gz3!#cr6*mJTW)xcL_l2&L`KlK4$}F z7l?5P41yM1j zrFQ@EmFqsk%>w0qB(t}XwTV@*33nu7xG5#2CJ}2hQ&)!$i}k-$^M1xL=xoZqDqo#XwG!Y4SEI zIGLDp-}LnhZ8DSPBqSuXnXHYj^aMUMI*bUQ6Gf!mpS%`cVrySB z&V&~tzxDhnp}yL|YEOMHL-{5#ApyZ3fGo1W{rRET7vcvHF@B17`?mPf<{|6U6ubRx zJaUw z1+)#)ugudqyEf1-4aws=b;5^*8e6T0(Mfg3n(413e$)|6PE29G>q75Xp?p;|tZLg< zr_E(6iB;lJXh+lqZ@Km^oY@G3B0T>uAEca%C25H&|7R zJPi^o$D(e|D=BrqNItpAt+-KbJ(AxUXsQmbBjx!R5ztw=AFQXtL&uP6#JCmGUyC&| z&Zh@*SFK8m8?aNC0Qh+nj*KGVzWf9dYRr1s?T=ul2#p<>vnYp|yr80@0`i~<(2bzK zZF=`ulRc&zG^)_C9l;`NmFlCy7Up$>0+I}|(EV9zfcZcsCNYo+H7JRbsW`*<#^TpI zEv4%!HuUL9JCR|=FKuA==5xwE3J8N1$0uFtF)__FwhN8XY~IeI!I=vVp$6wzkne^6 zCO8wo`M;MCOcqU5PR;2qLdCK#i2CeH?{AB~Au;Wun9-t<$U-3hus%1v(=@N8iLfXB z^mb{d@>s^aIPe*~^l}BK4L@oM`pLhaRRxp9A}TjNMzq&z@9-fb>va@=?sQT~5-#l^ z+Zj3))%M4fN9bxLSN0u6Qs(Qrrj;s8pRR>;5V*Rw3}vy~(c;k%obV;nh+KUphCf+% zkEavRc&`4|6R;*hEYE>ZN`rzp$?tUE17s3~=DO{ju#xA7_rAKoBElxbeo^a$IDG&~ z++lm};RpwCBR&De7D3ga7E*%hP*Ugn>u+DbvcugBX=Ei-;c#)_!V%>*A56n}tZw%( zeqUc6OwlNWUD&}>(-iP^xO*Or;9??SIf#e7e5z6>?ty^_@;RwcW1YpPsbxfJaQ{ zxd6psGw~c{W@Hp92XtwYzA)tt5W%3^n|23{hB`%HQQ6p|AGPw#FfJo%ZF~aC#EiJX z2#p!wYq57si-JOPwq_}XYnN@{JNc9!WdMXuM=Oo3R0l7bE=Z>g4bQHX7)(H1yVowG zVm4mLP0YeaV9FzgaNUFXVH zNbZKvTl|B%>S}fv^0bH3=oxl%PBy+tg!Kz&YdrD=h{Eq2s!OM}(NMs*VIpMt_8MtO zC9nx16B4??pyvI%cQa7g{dag^)1`y4$U|YldF4(4_cqae|e2dT%O|p@$}4zl0X1 z8u&V({r>~Ck0C?|yXubg^aO)9+77r#lejEcTwzktzCmHHobRbFm&=*qAiH88V+u}r4+Hyub%@5{QmN^$M1WVhZ{oul zy9^^ECyz4{sEd%S!p8b(3%pKtU@-i5RWl%HYv{0{>XOv*p`%b_&WNPh#jhrhYZA=~c7J-ppoeEUfm0yptkC76SQMK%J9j|c99d5hMKJo zY0oaGiErHkqLulm8(0t{6SU3hAX(80>b(z-fQ>X&v#Zlva6;ux}WfH3qeV}eTIZ&9XTmbgy(3Z@DA5Iq3 zVpyl(E8czmnQ#jVv!u0Z|}U0wT*)3VjK?n9^4n$gyasyy=>+ zS=~EAnfd#-4}r4W_Hw^--UkF;AGDP4h>CU4#uYhYP-CV%j5nhRk7(JW1bVZ~fos&C z9lgvbO-ht{9N~bWwv4nPs@c@;($y>PJP6zly=M#*myB}vF!@VROa5;C5F6YV3{mhi ziPd+2Y3!33n1QPms{TccCGg(=~nPwlb77v7MAITRz*}g<>___2b26ft%zEXiO z-igW{sfDW>j5!o;#R*eTi+=7W-_3-+5FkR`5f4EQj*kG|{Yndao$VA=mtE2C6Y<&T zB~<4NfUko$I~vR-MjF9RgB^I>h^8O-zrp(4m=!?g0BTSN=;cGFti@oMqmabkvR2Y$ z^Y;6V35lp?DU1N;p;Of7KCVAsKTiZwZz%+wyxy32$xY-5u4%r0eiYp1AM%}LWoA%* zplG9(pwgfOdtag}pb>h@HPeU}B$DOD+r71LE}nP2B*^MdO1Gjb@w)Ysun<)g^F-tA z3`*`XRn%Wh-L~1h_k-5gLf!|s*69y3^CzGjM$D#8U!*_(Yx6lBzl7`kwXYnQns`B>ql*c!T)NgoTr2izFg1&%Y102Vyr0HqnP z2?5UF#j%`_I2DIHcS1RDGoV%G0oqHWA7k6qb1hj|wN}nUo7Zzfi&9bOSDp2g?2`u)#+u zj66X{3TN0&ZFdEVL!z5EWi9dzEXRX$*Sf?EkLgUAp~HgzV*#M8&sM*N^dXY_^yNe~ z2S{kS1zT+I0|^5$;Q<(C7pCSE>$VVO1@>=Hig3P`xu?<{{P-`b+AvqwCCP=XH8-nAt|i^&-=B;N&9b* zD5XSTuNSFtS`T%bE=fr)pEbJ&LXXh_wRdj|l6ZMMM4ZI#|1bK@Zw9k^QLrYk8GP z5CjLQmY{4P@gr8^vG_3qvQaa5K!gu|8mZqjXo>PK3{2t|6y&t{!2}58BLKni4=&*k zAuh8p)Edl2doc==>0rV^l4XJriR0h4l2^nhAIj{V;=Ur9y^%(znEqj`32WWiZpLo1 z7BsPKOOCT05_VrjPUlX&X}nhkn<-@1?kZ)Iu`lbbZ-4Zy=Evkhg2jo`2&=PrlKKkGKV(sURLM}{hGr@GS z9d7}~xma0Vi1`Z42eN;Y798@61&6UX$DgyD>~XBqx&sJ>Oa)+kF78mCrM>>g29k>a z7IJ_FV&pX$85uHw0l*vLlvP96FA^TEE`tt(g7K$fAj({<3ewg|9jJFcMNaa{w)N%u37mt!xzEVU$ zAf8StfZcAUSyHzpNCM}a;RhxwHeF$X6gIyDhUmF!SJ+^5LjGQ8t{U#2UexCeFWsOO z`ImQhA8dM&!LOx=`XwQv{wj`|~?y zm28rob@i)~Pq3ul&n{rxdCYQ7H{~X`LY97yPGW^psY&$gAn{du93^nA0PuX*w; zJTF3__;pzS$V%W8_mrEM?flat*8+_e=6mAbOJ1t{tQT10 zKbNsBV99_5gn0<-^Dpw1_dziZ^(~o}4DI>UbzoOwonQM`IIRDZ`;um4(fS0+LwBlj z{(X67rWt;S?VWPnOkd|I*FY#7lxv+{jvNq*9wGc4WZ7^epP*!X-QMwii#t0=Hz>!1 zGV_DkWfl`$ycQjwD+8A8dAvx*qS{&9>v_2G0$PH{;C|bOMN4~V^$t0AzBbpb@KDqVJxI}<^lxl2+Kr7wO9c|D>_%&Bxz3A>%+KktueU`J-q_z* zuX@iZ|1b_3b4|@Si7$#U*apT8saFY-Tl9ml>D~Wx0X%9>TtSogd@teO9{ctldBsh$ zv)FyGy@7pL2E(6`FVMSh)t80UJuHL)D%>t=(Qg5eQ9#nMprxl9(Ea-FvNMD!D5NwI zih1k4v=U#T{GNsit+4Y3$@!53!u~~g$nlSs22z*6!n1q@MLK(;oDM2gDfmtR{E7Zm z>JsD955#%NpG?J183Fsqfd)Ey|hleg$(= zJlQ`JwXcG~IFkqv(!or+CK%O80I`ixAxY7iO(h!-Ir;DdsOCqdvh0sCY7x3R+S%zt z%EbCq1ErXl*hnL6$VcJSh#0im>$33`mZrZ|{+{9k$P9BS>a)zZ-abR;_W2~rpHz=` ziOq^Og{|v1jz6pYlAN9BV9LMBXH_uVHX|0_q7ua)~vi~0HJ z#%rNBTZ&(dQe-wF2bgc#gUeki^k)9~sExRF5QH;Q$^8L2ToSbNH>xG}5p);K&hR!+ zO2GZu>++lrcHO-}*CKlSF1OAS##E08xSc5bzGy*`IRf}VpQ}!;^__)4i^yA|-GIuT zN$j1*hZJ4PxDY?7h}F2y+?t<2<2mlS~zTgW%vmLQ?v>Hc`WcL|42H&3=Y*|6^gGFEYgFiDg?VC~4$e-nIu< zU^H}eIS)OY=ga5@#0?>BHd3`K+)N4>qO>9n1PTh2_|$G|q)DnB4CXU`9*KLO9QuK9 zXE&6Oj~BU~03HRFgV4st2G(gtM#dIQTv+;yE!Yh~Obz58LKwDYmK?(53Nk0}Ep!4} z1g0O<2+px16I_E%hyuAujKJ8>w?>9d0M6X+qz&$cbZCfyd~Y!h{7&oa_b9knbf3;5 zCM`zs4*vS(GSM@oZwAuLly&I0VlWv;r%48fg=NEl5DWF4`{QtJGjYrrcpremago{} zL>QcJMZ_Bi5m9f^6ongP(mV3Ds1ecjiKeELLgl) z;+%je+IdNR4T zDIEQVKXJw){ANH*L5LBxuSTXjD=I3En=Vhq;CfofimuVq!WaMC&~zW5giN@_c`Ht< z9kR%X9@>>YZF3WIdZ{N+M+?5)JWB_h@}epG`p@9)4$Am>zY8PAOAPh`_>F&naVP?= zSXkt*-hu8IajZEzgV>L6=G?2r5bYod^Ii-Z4DY9Q;MEPyATpid@AMZ!BSgu0mihZ>yF84Lh1nMnK91u#)z+cO@rzNZp6*60>j#8sI*J&9;+nS1so z9Ah}2etDo%x)*Bxo5XbBp#LT+^vKBY@YP1W3Qv>4l(6XKnIl_KzAHoOiUg-Rbb7}djU3IsiCF+6p_JZlErb`p-g-o_$P((nfW2gfbq zS$PVE_(<9p)O`_=k@Hz2HP2x2?CwLkLlfEcHHuku<4-cCt@As=FCK%8>WCO&Y0AN@Pl-f=N&7<)EY)5dFn+8 z!(%%E@HFhe47T78f*u?)*F@M$5w-T4zRPv-^#i2xerW#u++GJE^=DYRF#_42#c4l4 z2DNf?&=uN&$oz|U^X{LFoq(k$8*-wk` zEx^dF#++pUWPo3+Y+TcUNP)-p&-;XkVd9nxN>BDU zaMlVE68Y^7;u>1 z?%igw-=W-uM~^8(R7o5h9F~W32rWkox6gcK^GdNsAWhZuXloV$l;DBefnoI!j9!rd zP(jEI?mvUcNNt2dV_|M#pj)${J_GRAwSjemFyR&(4yT6qZ)t&-7x47?9*0qF53TA9 z%=g90$)2VZFnc+VTUV7qs1>}=p-oMHOU!bP?j7FW?~-lN+ugB1ANDC~o_yf3<-?i0 zuNVby3y9Z|xNtx^APA`4CKbmW_C1m<3j7}MxnAkkSL6PT_pbb)q7Jz)g&!l01OD|C z9AQmx*bD24#nldnjH4tNB*&~KOl7=r5V&_Q7+%qix6XD3M3QyySt*FnAg-q9IS>}o zUt8~&)eFb*;NIjz;!lFfM5-P<xuVz%dQP!6Er5Kv0B?Lm4@_$k2lV@JClO z>cS|?&5fspwUSms4qbJ32;=|WmQ>G^Jd2IWG2MInuNtx-7NvHGtfYSDDuBxlvoCZ= z{6TT3gyZFPG~lH_Kus=6#iFK6Bj(sX#5Z>^PA4*XzSf0qbvS&syOV3Ri*X2v3@f8W zlrRFdzcke89T*6Y)pdIh#x=@7930`WR#}C%WEXh32v+i@?>hx>B!2pJ^K;&NxhZy_CfV3c7Un02mzu{c* z`OJNE?z}wo(Ce(EDb3mTT@a*sOjd>YHQz|Ik4vT5T^eAdrKR=S0G$^i{Q>}YMOTj$ ztVg544;XO+tm}Z`V>bZW%iwzysG-gou|FdOcGWP>MR&HiS(6H&5nw773qI zOM^J05Qf+HKNB27U+8+Wl5^ZaiO-*OSBtPQ2hIW_f7+NFp-Y9x7syJ?>5*o&?AAeP zeedlBdEqYy^CI1pmG~jb03G{+CO!QQj7vg);_lxP#__|_IytoZ{Ygki|5D?F7DolO zbl1zKjn=kGv2b;~->CvDt4k99+88J_bGOQURQq)BHm(Y5ioiL|w+Fsd^?aDngag|% z_lx5twMA7xwHC7<)nq{*jOA}Pbbi?O#hTrf(|nw8VL|ic5%)_p+a_y@x}XdS%Hj)1 z#}J?L*nK)u24i>!;ITLytZR+kZ$=NJ5$hK@oXE6XerXB27vP#8AQrmX7$^XJd76}j zMB3DpAspPGEkxPa5LZ9ZljS>XMTL7Fjn^u9ZI-{DT2q%!GmPVweoB229TU?Iigk(e z6GAk<(uI&b>)*y#B)@j}u>`noGZk*2Tb^iM*vOSrOLKfieHWzt`pK#52jv&YYx)NE zWk#!93$cIc)s|#vZ(+P$27-yRGGIGFz3ni5E?fl70%m1m2|QFE6F1abX{DKYrKP{! zAjcUHwOk?G{%I8BdF_ir3i6&#QF)$y=Q&j6HuCG6PIdi50k?ONU?X?}B9Urv^)ulT zQ1Od{BF!oE^YhQF-KP3o3{3m?;{hD$Ccp-R?PEU8C+yli`VZuO9&-{DF6#bor zE?w>TT`)b(zDahYez%r5O21q%q!!~vvRrI+WAO>TJ9K)0;*uOunP08d zaLvJL4*4V;GG{OAE;s(I=!@)#eOjut^Mrz2RGgPz!OmWi{}DU|s^(YO)wp5< zI66{5Q@!PjEcXZ)`L^ z_wwi+AN6G02M03E}tHIW87xCkMdcp<#Xdi;^P zdJN^}vNX{g|7uF~{zMgvQsdjewget_XUOST2{$uswXSN(RkAyA>e@&*Z^sf^0vlQQ z(z6m0Ax;L7{&v}{qQYB@&=jdeJv4cyArAmJw6dVF2a>7*q_ovWfJ$-C%tEXcSW z#_q^P$HF>100ors?LK+hB7E3s;0+=^HuXC0ijoOL~QR8H&^wEB)i$Jkgbi6 zMeMVC3ab`mi@sio$g-7=WB?vuj52M%A{>QeM>I4vBvt2@P=4w%us*QZ8ulU_`SyUS z#QPm=I^jAfP6!VVM;b^V;VJTn!TcBabvfg#x{y->XJZinR~x;GXei2QU@*S~Sube` ze}Z4bxu_L=+L#S*aQ;6t?a##6Q5hJK|E`~v&CO?!K@FX0j?Ifx+c`+=%*{@;uk-nOJ|F8j6+lY_Hz%T8D`cW?kTk_Tb;Ka@1@a7p zXFs>zz}3F+`o{v!F)n>!SfS2J$l7*@Vn#rpe9O2U{=ha!BJpLdD=}?7SBr*zMGE(Z4g%(A?5;T$0Q)fKEwtkN6#X>qW;CDzEXR20l6MdKEB$ZYb^&){VeDUc(J#(olh{C zP&C&t=dCeSz*(kY`u{&JiQ<3D+lpmZ2f$HlKL#{#9+J0iFJt>}lw43n*C6dc+F|6X zFJn^2*6j($j&_seSXLK1Hx=h?EQK9vdb|Jc6vIbN9;ti9q&8P7sosDnokMHbRCvR* zbuCrxmDA(fr328^ah*63g)tRhfa?%*uj@$6RpUPN1n64R>E01DF<2rZ{3JZHT@lrz z0RQuyZRZg~#-D^)9nybGKgJ&y8?hX8>R{qAVd2U|XA~%6zdE#gA)FQI`sBl#485ay zEaggJUjm<6r$nrbI(R9K%ZERyb#6cI$`rs5INUH$%gJv1DphBKVpZ@arT=vS!T%yf z)ChC8+JG7PkKv@cj?KKbyj)e~`N^*K$;H3Pn7C6V&fj5KtS8FgXcDj#Ib!_EKXqcI_##Vend2Iem*Z>4YR(80S zrubxXN+YCalm2)W zP=_Q+=a7j&N_(Er-!XFLM zmWab9E#d4wb0dd5_uCawlr70`x}6b|Jm%6z@QRS_*cA=!YJFc|-8F?s0UYTk9GX+7 zlarH=Kq{4z#eyE<>{&{XyT!p5k&iA2jBE%3$t1lTJdcxYT&K^Uzh~WRB_165YvbjP z7fB61@E;~+a;LWsk>*D)wUgYr`@&`<$z8(n@kET3^9+Aa*0TR{^`SkC`P*XrIqc=i z1xAkDPC9~pnfhf%%V#LDYrVYtPtT>CWK$bv=D<*6L9R{);+`4&ch4k{s7p9rbNSiX zDk5I;5R8*ZZkwws0fD!6Lv$bDy3)MFtO)!*Fy3Z?g z#xb_?zPr)w9%sTh48hXtVQIszjp>1ELa7Hgd+QnkY?OM)`M{bXRN2sR4DDnKAVQUw zGKLA`ifsxXTd{>bOvE^oPM+|O;GUQ|m`0?*`3Jt~>+%q$`+3h|;=}6XmG3;GV^@Cr znYM3aapmmUyQFygQz32C;{YCg6BwF7qzA*{JHp8+K|B2An{o4d{>h-mG@WK%L!+TXBXrSp>B znU7DylK-%0bA^``<{z%C=vOs`%_V=BhyRM-wDGvAKj!-UE{W z+9sbDFJ3SiSyiM4ze-IJxf;d8T}a_1to>;zF?9Pezl2Fp zs}VbWJT6~mI{WII)WdfQZ2!)9xYlLr>m*gr=~Ewma*Ihvg1_%Jc|O*f}~M>-qO;(AV@2fm%Q z3qK!-Z+v@XxZQ_;-}s%hc`ob2xzTk??Y+Va9DDW%L8#gz!Ye?-D(>JBlW-NFTpEWE z?SWZe@)KNkI;M8J?B|QKF2+O~?_-D+a@_(=ahGy*sr8Yl)6`-^DwOm|rajSB6 zcEYGJBT!2${`^d9RUf-_IUt~3Nt8KcUaoQSQseAACmY+FdP#b$a{T+q^=@}}|C(A) z@$}D!PqNfB_Tp1XyK$z`>*?%2zQ&O#VMXEeiPpox0?RoczUo4$v$>`|P2KO@Zdi*^ zZt$7=Dp{XErIRK{Hs8(!WhQ?{nV~lQE1gG{hS`*sdB(^kb+@~&#<@De9I5hxzf(H1 zXqXk(KynwqPOjB|?v^C_Nnwn}TFZtCj|EoD1sp;ET ztZf#ix(b346A##xOiK3O>KAC80eCgmO5EpIMIDkka1-14Ztoi0pBt%l*^Agp!XJgn zn1Atd_7?7Rd6LHU=C~eeP+MuDL*XPrw#QBk?GEEQz0k__ffGNuZ0HVE|6<>jQMM>@ z+J6Iaw};sK)lBn=bYK=lO2RjSuvvq8MGjFDMZlf!x64>Habd_$iW*0L4d5t^=C+8N z`$2MG^np&bGm}~mAEi89SJ)o%A$e$B-z2&7Hy8) zYP}nG+0o@fPDN{McYam+>=AHJFb^$ve2rkN%G+s@W+6f zz+&D=uTC?cLB%4lN_0nY&38Npqg}hHCpp`c1u49xZ&cv|b9G#rIX9AJ42Lk<3$vqG zJMXzj#Kop$MFs~~5&BWbm=n%FA!uxEZCVT^l;OAk7=T8q?BhK9m@Fr9zof)m2GC_H zwcM0gw+Ac|^R64~i^dyMn;WW&MkCjL9HcfDs199JjkWf;SZ%Y{ojqGytbO#0F@@j0 zcO1Fc8LvSa1^n--spU+gY(d)BXc>0FraA7aQ@kM;wC(tLcs>f*%KT}Qm$X`D>IY`+e$4$#f6$V?rYxl z&3_BGzlfUnpf*RKNVz{H{ofIMC4Wv3Yfiw}(78Uh)Nz+S*_%v%94UXYl~#$@4ECz=d|F~;Zb$WMtY&y~ zG#m0(MFWGqMMXtMx*_>nLlXFnM5=Rd44%zwy%i&zNi+ZPRdzAM=LK!emVlfG>beYi zV*%gy-|@9i)J&_;w?FQDTPKegk~?{qtG#F>+MdUE_BY0?}PG?g-azr_?EixipYslR^0;9Tfo?*&EH_9u3@jAC|^Y~b1 z;v6YXzM*0+-C-)uijA&^MO7p=yB!_;Oz-bW@O?HxwVJ!vn9T zS5ug=HHgqD3G-WGFNG@2j*?d?`Z8AC24piZ_VU!Jr!Q=2PM=Jl+(Ejwest>|vJAb- zmH8(W}AEIWcr8;o`TGXQLtLobPc9GJio94St^k0IDFB>*nnkgVrdj@V18heRz8 z3Z2sCYWjL#JBLH3rFQnVTv1KjiI103Vp{NWDgEx~+b!?Pe%#B!du%D@vY~dUDms1s z2f?!2XlU@$4@zq!lIG!H54?Ynw}b!m-KYOuT^(g}FCO&zAYpttl!ozPdSoOm&~W~pgkGqN@dLsV7|34tmZYAoIl!Qk~Q`% z+*rOP`Dqj_i&Ngc@8EUO3Y|nAUD`6P>n6x-a4x}%Vt>Re3is=;fDI2~lhT>Kii;2G z-OiKblehgm1QnG9NE%pkRh)aFAtN+)aBw*fTAy*fiOelxhi4kNOWAN-a{IAX85)O) znR%-muJ_D7g&xaCQf|Gx+(6NmbHO`1Wd3QEwRC8-+neOA!a5sJ247PV76ylLKTbaZt41?r^Am6lj17k5rB?j>-Xf6&%vW{QZkNTup`@e{5;NKT&_ z-<$>+cLRc}wHt8crW%&yvuK|_%oAaI0b5^#aB)63-q*-L$q*pze(-UskhT`5tamRi zv}@{0atWh0%QN^+kJ!B^R$0L-EJC!!Z}_JG#j3MEeE855M99bVW@(UH5%)I?UeeSS{;d>c8*W2U%~TcLtu=}Za&?Ldvkf}O%PH7T~!oKbU%{)#{dC8ZYW zA$xJwA%V>|#8APCUJOs8ibw%XF!;7HyZgydr}k9p=pIIp3tEpkT_94*_;B{^{~kdg z9>HD@LkH3K8z4194tuUsGXIv2%6M5J)AkDs^$Z=!|-I(SGUicG{ zhYzg_@8sw*ENEotJ?BvhW5m|#C|TqH!U+?E>!bQl`KFiQR3Lb_W;8Iw{rJ`y?nB1R z*LA~>ExrRO9oD=4;L0T384GE~yxl(<4rJZr_r8|dp1RZK`0cMu5qT0Wq6hfil>ZSs za^#o5BJEeB-$}^#?ldd^j5S{?SBaHT+qVytQV>f8&F>Li+)-t1SzFh#ncNI?KW}Q7 zCx5@@k-TU`if8>h>3N4k>Xwj0C)9n$PYts+^7(@URr^zwnp&%y zsZtWL(s&!E@NVs_Z9Dk%qPE)j1px$`SFAX@M0s5x6Hy_{izW)IMNcap5e4tx+-+xd z)X&t1UnKpNT%L8S#vo<{_iH?{xQh;Bpoo%1ulz3a`~BJ>(puY^J92sQUp1d$v)@6C z!lBbAo;|~6dsu|OrzOdRMbo|XAUoQ(HH5cvsD2^q8(tQuW{n~9bePvvK&~kko){_G zH(tqsj+L;j;o+o5g>(5kw1GBI!p*JWh}4~*koV1Yu)??mu)7XpSb~tipdH?F8x>dD zqbz$^P_5?BVlu@G7rw1~hc_!( zW7=%qB&aKg7sRV&X>Qv5Jk~QomD)ji4^oS?8c2wX8v|?Et3mFhjeL2CB6so}Aho1I zEjf~{Y?LLpbT_s(om5<#Di51IP|&xn&*PQ%I$otKBw-UWl`+qrReCP=q>Rn~6wdtO zmR*ZG0CT7gi~pz3pM&xHBES)$T?ZC&`5$0iwy|OpluqnWEjT<{ms05H=(r4^_?o_U z$kp9fL+p}}=96Sq6L2|wDAKb3=SSZgA-pEhTuiL2*wLmzVOudP_HYZg;1l4JhQE`* zDb`b#(C2ifuSCI0`>ZjDc)QqOK&>`xPX0Qo$V{>CUG`tJP@01ecKYB_AN%$yFkI`Z zg1&Wf$E=bb+VEI{iC{6v(K@8W`yu~&*ca-Io)T_eN@xz*rD%r-2M3W{=NR8^_sui=ZvbcDo;`cgiqL{X^T{)< zLmJUwVMsoUeNO1j-{){~CedHTnknLq5>R&yr;VK9 zZhWMRpUG|Mo^K&JS~R^<&};ph{@F9q$86(4n@jt1tw=XlIp5FJP<@G!(sq82kZ__& zk+77E2FO59@azMMJul}?h(aWUeA*y@Wn{LOp8%Sz#cqH`pbp($n^+vQPvY6xAhS~w zn-8-4+@>$-_va2@T*$w5*Fw7Evbd=NP1v(=s;FCgoyNA@UFTIN zNrFe+*RQ;X5398=a_`@-peS<9N-UZOLIO|<1WpusjW+IjW<-EZ!7Ihg1WK;U>gq+d z>X*v!M-;c!X|~*L_=$&<`Y8@tieD;Qc0kc@8O#>7oYO1gVae(FnFepolpgJAp;{7Y z+m%fu5W#iu#NiV2HhK;9CGjCq{MUSTX>w zVMJ4HSMCjox%ElsF^$FR$;KyX->g$hrsUI5V`8Ry@vjRNpR}+)7M3B< zcWFC0Bl>_==`+W`b%SBVZh+aRE2OhZcVTFdv`3=Lgmk2*P>QN|{pLoyPx*#m#Knsj%|S*it+K2gb4C{c zPeO!N_h1cc@7Mn-5Im(&bE>8dGoQhxs3^!&-5n$n(pO+IA^a28c7Q}Vt|?|rQp8`+ z)fbf1WiZevujDu}KxJvOOWA+g=K5+_#o2YoL{FuHO67x^^vxbWZSGBqw?Fm{^% z2_V2(lioI~nUYKK`G3DxkNCa)rPbBQJSMFm>G%1wRCPBjjab#OP&nBq7~?f)=Mh<^^0KAY|?V*+|t3%6ne>Y>8Ckc$TZ5^YpqF?l=`;`_W6; z7pi_Obe#&R_$BIoirQu&WDED_p?_a=0r?Y{ClM z1e}DBmn1#E|1N<@#3UBQ6@l#yi5Tr&1Y|9*78*S7OF*_~X__3RBFpt|ZH`;_nXrHH zA!z0u_4@C3do7)kK6*V0%NH+n(#e}yTJB(HpN#clt-3xz!HK}FPoF+L?N{LbC%Jq* z4AcXMJCsma^E>``-}oF@O>xsj1=Sn`3i&MBCacV?6Fl<;gdoO6x%c0pf=A0QTuXyG zTrxiYoG)X-U!ro{ap!>N3ol1=GYl;ms#MYPa2kaC>AI!@-xBl8>2htTf=-gPrb!UO zUUa&tUv&|92^Iwq&zmoZLmUR@X$G}!S`oz8Ex>+>rZ`FS{=2JRA`TZPe@FLk3QMqE zi6xL7yB(eg=z3xt7m-etuuGvN^3w58*ls9%Z1U{0?Y?4g+M_X}&Lz3)g!9d5vNQY# zsj)wGqs}>Y2(8CvVV5SLvep?qlO4SU zA_JCcHsLSPYuc49TeNmJ#VhpuVA#jQb4EfkQu&E= z<&+$HXxgf~ZOW>Kl>X7=j8pGTe{Y&VvXl9U9yn0RsRUra*esiLJTK^-#habGJenx$ z??(N1PZ|8Xodtf-cRL(xtY67giK?AKxK@AC^TKn8GL+q1%lRk%dxa8Zq^HI`>oX`h zXe}34V#j-mTI~px+EEjFp^4KhZgUMsm!ZVfbOisHChSAfKSHGtP?2dUdh>urX1a{m zpS=h86y9jH?ml8BK!}}&e9C1Xv3|TiRNuL4Z+eLxSy{|{+z{m5um)hP47B#@DRw48 zZy^$3o>k;NxE@dFer@L{oCc~W3KslCcW*6DSvp5pap_)sa?AdKD;_YhNPj1j^0^>i z-m%eaflo5 zBnFDYWiN{y-S(4Zklg|yN&eKXnY9hm1gCceIm2ksR38I_>_kw4hf4WjN0UiCJ#K3_1iA#I&oKX+K$t};PZrqlozP`&pfxnoqnlvScBOO+? zh|SxoVJ2<^6xr7gs}~5rUrI1tbkxE-L&; z-9yBQC^|Xi{@FZbW_AD%1mt0b*^$>r+)x#r8YT$peqb*#UhpQy_eIUEPf+UCez zve@a)^{)QOf_RII4V4D{rg4Ww_jGvgcKhq|;k1`-{v)JX9O+@>g9#HO1_3FxuCW+< zRN|8^%@tJBLg0>ACLSIQTfRVJ=QBEsHGLX>!!L2CmMlY)3MO%eWHX>0M<9_v0EITpJb!n zb}5N=5_8}qqFr?&B6WjfV>6@N2kx?rqUXGywTF>p(~~t|DnL=;+tl6-x<|f(1;Z7= zzJCAH>Y{-PTk7ov_ajk;hfIk3qF}TswyV~r)<=i1XeCSSS1E^Xa--1bV&RSU9ofnD z_up~Yc5c|J2Qw)@xRvqo1wd!35XBT#kqwzlv+F8`Iv0}R>Z%KvCJCw2u%bza-E+zA zRwl!dNaf_yYA|C4BRDw0FI>t}7St6p?yc$m;nAn7XAI(rQIDL1zh za8c#3XpfL&ng45YcB&GmzOWWh9sy8W|G}iuEIl)t4p5sbX_tX3LkH#QvBnaYjkEpw zCVNa?cR8Vv#oo6@h!g4>8V_9n_r*PS(Ud^I&#N+P|HoBQ1#X=No@Yh?%Hw^VSu<{m40*aB_+KU`(k?a zs*|oBx_N(xf6wLGKPBW@T^sE*dO0Gg+eq(19Yk3Hpd()5VW{7>C62{-TLayjo57Og zRfGS=G=8G_Gw@hPaVEZ7w|59V9XqI#P2#;7yna5EPMK^UiKf-OR>hW>mdd72U+I36 ztpyCZzaRQNfPZKRaj$jq1!R>j=qdB=0AQ-#z`%YY6e&MdN^h9VEAjbdj8k0^XYHAt zlec>A7?JYbbU1{OHU0RgS)1Q;_+w<(sO$3Ts8hEcyA-2_cXZ~(Y7JYM#iCYg+8y42 zK{cRZ7`ZiX-G83Ik5%cNJqK8LEF0XK>>~V<`ur03n{9twc#x3oFd*OhVv7Tg33WT6 z<&e2pBEYuofXfy3q?Q~@RY(AXWiffZTt?sjzHncyzyo>gw$p(p&AJR)C1S+_ZhiM_ z<|@q=axS_5L29eBKAw_;B>lWBeS?vfu~*Pvr4<3y1mJ!&Y}BnSJ@8uvMZ;UTB>HQ0 zI%cFGS#39XRVvTZ?_I&sFY6-<5g*^aeewlg-~CLEwz~?meVSXRtE(%Kd=7Q$*M~wo z%Dx)O-dkF7LAKgNarBzG{}+qhX>0LPxdzwzHQM|Rb!{-T+qAIn-MSotidMGgaGJ9w4jU^jy0Qo%VL=&o(= zd);=Y))d#${~k-}f0O;v3i|6|I6~ALq?dn%6sKget68;GYtmHQswjS}oAkik&!Le+ z$xlaCc2dZie2QHE&UsJ?=kVNdGda0kFN?#!l-LwYL=AfjLx=$X@R1(!^M&DgoTtG} z&5nSLszZZmu=4Pw>=q%nisI9S>Ah<*PE2m^NezuUg05Y!W993zkQ-&aRC0{u@XZ4q z`L$L}Bxi$eO>o4TMAOGl(vyZ=G@?0uOhig58YPBR($=aVQPahxFw{Vh0v;&fK^l(D ztN#!j_J7YNm+kF;cPJ|sS|(brp^Os>aFL8;2fR8WP$}BJEE4tp8G*+>sr~SQ2=cHi zu4`?yD2Y^s#2HOQd@=!I8A*W%{RgSuMqAZ&$WU$Xxpy2ESIaN;=CxOSiOjxXdL{2i z^p)k}rKq`)Eb#CgCf$WMU^O{js$y>g*askFvjj^SX0y&B#}pQAUJqShQg}m`8ZrQf zIAk8m8m>faLH*w8>k`Yf9ol2ldxrx!YIx$YJrc24@J z>pPxLziohEp}RmF^5_#tEk_muo9tF-CAumUuCV=t%LJdDK#>OR51C8B>jbA>7)I3J z3)e=ynGZ#GGH3x4XTY%0!1+?zy=}zWcN022LSlv47OG4;*06UV|~3Tn%^(sLq0nr%Yc`$09+Si~oxtV9C7 zC1~@&_Aw!NJ8(&trInvWX~bwbj7!(ZAadFqDyz2nC&>0LoMRCLvioCvpw0hfU49)e zexwQ&ulMTYQDI|YD>HU4zhUWyJ3ihV)8Q7G@iB9ttflR`cCGxqVfMWDis)`kTPFBa zp^%>Yfrf;e`_z$r6Q90*wZQDMe22>YWi)tFIC6wk$HIf_%;4>MJ^afN$@l+zM8`Yj zAUfF7USK-^9$-pZ4JRB=;aUj`K(=n;xVOADJ%=VGS&C!l&JS?&I;on634qs;F0pjI zgQnyzQIef{kcTn$c_T3?=^Mfd0<+Yj(gPEa@CaY}LlODbv>&fDeco0GhY6R)O8v2F zfGg(3d%s1L;D?}VFG<`6V|U{ApM%kltAyd2CXygA6sgTV+=<+?SN>~QRP1+$uz+lX z)#*g*!Or|OCOH@B5pu?Jm%`)T1SK&%IrM7#7fI%XwKbC!r@-*vnpo7v|DX!$>WMJ( z%R70>#ns_wyKASF!LR65qW}p?&r}EmM=&Olh14aENAG*V_n($VZF!P#dXFt}n62>`~r)nv_ONhwv&^8d5|bE>0V?Y(=B zlAK+bSPq_^=F>qsg210)c0^`eSzDS(EBZg1$AGV7;{Gi_i+u3Q_!x#l^i6bO&cqesb7#; z%|`dPw<+IBV%5-@Q$O0fe$2Ecv^3ZQ*ZMv@HMNH8xGoC|kD}&*Ax3tz?~?b_lC_2?58SRo^(bbhvWHE4aAt5I z^&+q7{Mhtop>2m6N8lyL6T582MMiktP&^Rff8pxYeHLARgKkzyb^$OfZdyzMJOStE zoRStz`!{sLwY5rG_lf48(hE+++r2~tI5ffq?fd+>SnGMyKgLS8i<+IsI*S^1Lh@rR z2OLfll1AZh11Y$3;8Ga!MjIN7zxd61fh7qkDasL|ccAkrG`lEsMXIUWqMNeg(x)P$ z@W)A=E4vyz$igO#)QluZZRxg7QYp5Kd7@IkPw0#XeL7W$0{zg#P^@w|$v1b{U`%)a;?*B-Ep4^>wx_~R3+vq=qx!-b7!dI8 z_LPyl0^O!{IWBML`VX$e5Za%B-gcOTqZZx&tQsntQ6o(;HSmE=7W{^E;bDsf}j?- zk44k_HrXEp6SjH^F7&ymuS`Dtcf1`P?;XE%sb*nC@%eJX#&siuXLv!zGqC4R<3GfH zwZ1D=_&XWd>7&w31}Nc_J|Hao1dw-lqwxtXl9=l?(sz_aGCp$OrQi-wZ;O6QhYsxX z&hK&za)t~&x~L96(Y9YUKZd~{Bt~X-WX8Zf;6MbGXwb%fE z&A+UhN#`BMpNIs(0*#$#)G+MzBgu8y5y1zEDJd)~QAmMlDsrr3vxPcjIcZG9WVO+K zhr_vVi(a(ZlMm*%PwQ;3R`3eT!%wn0#W<>-w9|0^{{7?xSi6Op7gGeBueitVp)spE zH?D@uHwTG)Yw4`#R`h|P20wku)w#_sk)IZhgv-y16;)KihFkvOT>gxA-%@f3y1H}A zQww>%3|w-dkt56-6nJ0w4 zxBKXkUZ(Q5bs-9sgRq{Ta2l=1zfKX&Otg!@RPaf<-*B#C!IJgu@608_ZHK>%huxf> za~NB-Z!NF5kNF=r4!8+~u04|tht>+p8~l-P8PCB9@TLa%S>Tie-|^|#H&*R8=NmQO ze6OVP$<3YJ<3Td(Ev&wi;?+0Q%7fxU`=q3#Ha8h|ZaDybEL4sAfQAd{l0)DFO!~@^ zNHoIR!k^I6&=7VcjAAe8lSBE4{pl2(>7Bg)MkWTL(-V876T2epGW&I^0aofAd*&G6ihCqisxK9P}EZ z*cde0-=J=99sc>0TOkz*iTF29{~YrdNi!^w40NQmX3X%~zFJAem&1{ZI!W{~cnT4#)OdWen;fjHdSm^7q$auw7|y88%6_qMyuYG>wvdsHO{jAlhgnvw zlAc~vXc0k&b)N^Nvh;|$;Dk1e%jSLl32jJ=*c+u6Us&5g zAC+roI2+3XM-U_xc}+pIO3|b@GPJb@LbZ)OHIHf=CNKU4+m^x zSH$MiKL*APZv3BL1+`gLkhn}qpT9sF9eA{^;V!n{xX$&12J+tYQ{njA=MIPDx4VSD%F_jP*`RerkXA&N&g;@>C-Ge}0@UR>}^|KAYr{?d@OhZ1_bRENnl_ekuq$;m}Wl|NB?0 z`%Ub>X1sqr{o}l(e>^A_Q5{42inS3eR9(Rfy;RzR>CaXK@esbggdVhzg z-CmES_@N8eGLkP2WE6O8Ui*z~o9*x-Bq>o)+(J8BjX)K79i3|rZrq>!wcVUNa1GAE z^4_M%sBl%1X_gqPzfDz4meL&|VPVOFAGe6Y%B^`n3@G|Hq$#Z3fKc-ILf7H?qubw{ z9eqW|dd`QF`x&gHsJQR)+}-COTBGivuYoZRKn3nku z`PKLs+YPbM;CvCgwx9w}1dO{}r&4Lp6ZBeHui23qkbJL)QG&0$uJzJ%1>ByZD<&G* zkJ#s5=Q~QYJ=bbE2Nt@nbciZ-@`_B>F$>^^#+W_>`gXXHaKRF~UU;H3CYaoqJB`nF zh?5ChDwM{jDa=VOi7j}3lA&_&#Ri6u$jIN#U6y8MCZfBYk|JPt+q$#aM{m_j-#U;UgWJ0ZT3169xPFzTt{)>!g?zNDSlEc4wu$SL0$W67>;vCapGE2g%@8&xQS^GP zUKhzq-z!iVaIfI}g2Kl{jOBbrsMWgvm@%9GA~m;sw#W($9_{J6Z1+2(;9&G~%db24 zmfZY!xp-)<@sO&T?97&>Rh?}UL|82l#E6rwH#fQ=mr_Kpty}02FQ_0N>NvtsSzOyc z9W1Y^W*x+}+D*4S2+j0i2*M%#A9-hvM)#^XD=_!^mw2zxJU)X390yNx1lmlFZC1jU zeMvsF*?%{0wJT@0z3Ny+1BcVL=hA|i<$e-PT%R*>cN&H`y!tj8^O4{`nV+sn^7*UM zQ5KrDkd#ynzw55 zIzJt6o1^V^4S^-WZwa@O3z5#szvEHp2-gR7Rp~RQPoI)Jr=qegNO~cHMO)(uro`35 zm2z?6ZI`!RUr>M@{(T|qfB@AUAxV&}S%%SqBgr= zXUxza53=vurlvOC@7J&7sgK~^C1?~5=KZ~nthUGEzsvN?bls)Xm2yK3-f8A>Z0U)M zqNS!b0kVpXBflDBj@|Hu&j0g}k`m0&Ck=YS$AKGiV`+wWH$0z8<$G8F55QA+6yZvJOh8NrNv??^TE*7h$r*k@HmYLW;(0>HZUA0&qV%qZxcZGQ0inKxnS z@W@>YE}aNO#-z(NiK-BS#ONO<`Zq$7=+CppR+uglPA(0J({M8K>(gxltI)SpYhn)aW2 zqS4TRU28b+Ka%R{=;?VN3~K$p^yvCyvCJ@IGS8YT0%VMktcMDy9MqtWSJ(N?Q)f+p zjVF}|{e{3ao&2x1=H&N7=ebTJw26oWwzebKVcwvs3+9QN)eu)}b}|6z#cc>olqr_b zty38cwDlER5vJVl_)<|Tw6i| zxjujlyXYBR>y!mQ4>bRTb$~@%v*vjmM_vj$vO*)pS~rvVlq33+TB%hDr6ze+XPIY7 zn(pC(?kZ<2{}~Ek6ZB|PxRR!sBOcfLmYl=wy!ToY_r0J%$?GO9yp36^_iYP$)XJZbQGnPAe5_7O~a;ucy4`NSWQB5X*YL2={0bBE&M zKd%8~J;a9d?O8kT3Z6Pnt(p_Q-UMu2B=fvWFj}|=$7QEBJ4@yYQ^(eW21Vqm*~P>8 z8{%^fihX4-3Kf$^=~)Py>*>;HB)48n|ME`xV1WUX{+DJ4@yRgVXV0UQo-7VuoC|w( zbn))tjBfTi`t3{WGv+2=BS|SEVjAaUhDk@QzgM#OFA?e#+?Z|8}=L4m5%M8`9TC3mput&NY( z4Av6MvVft?4tzO%wR2D?4kYUM-EnuH3Mu~3GD;bd4A=&zuXc=;!<}V!g9@bOb z9U*z~Zh-u~2fy31IJInM79-G2Lp|YnY(LS*Scl+S_IbX=mU5rd;I&k)eWK2zO?Ln) zofBKYVI#OI&IbO9l^H~?V+72&x*~@*S-|DayHkNW(RMod6WkMU2K!xff`h8c)RC}on2;-1&?52 zZd#zlx?!f9g9SjYZAyoe5)+>e-VrhKoZ92_>z7&H*Y_Kif0&bA*8eo)lGLK`!LPY+ z@uKtS>eJZRC(v0m_!GyRo7A82&Y@kR1H0vS)BIw*`swLEz98x?o(l5sf4sVm^}lXcucd)7Y-K{*i7&{ULDefYxpR=+p$3RgZcb`&t2 zeMD07Q;g(mtfuFFL=7~`E;j5XMKIfNcH&o1W#<7X+VdXxoPr-Reb!;za(c1xv*vu9 zHjJi$NfCgUPriH6hyL}as70RM@8AxK2|C9yvR3wOtxMJq?JCG}EVXa?%4=MKjWm9$ z8UWGI$UnN+lu3?y`}Aj8Zl}!-21ejNN$6*x3i6}MF|FN(7bCYk!=#KfbSJAZfmQ}h zB~ph9JE^S>2IpUQ_#8GpmUELwIr3-IMcp(G!Av_tm${1_`SdS_ymvhuW4ke)F}B+n zRr>^V`OS|!*Jf&=9;i9GgDF$s%~*W9WZ{ns>cO<5-(RDZnDMu;#e_8RBd`9@NP%vF zT};aitCnHl;t{Xj;a?Ta89&}ezj`s8CQr=*EIx3kBXP1wt5@_UL*D&A^sMtiOg8bIHMiv?fT1D{B)j@x4abt`*kA`bMh-KVHdRjo%esgUH*3t&ryRoxscs-HVII}WM`u(PI^CCePO*0S&Nn;;PK4StT zq3{1TD@DB}H1xn{SFO&H)~H5bl6vD+IH%(3Rhsq|U-zw-BjoC8^M;%BbdE0en_`xU zW0ihsnttCkI&!FDUF7ERoz$3N>?I&0!}01Hfaa}_op~5Ge=KJ)HHJjd9%s2@ zlQ$Tk*m&t)T1qO-`xvBGHy31u?j$PzhCCTHx9^if{-dwhj*@@7%Sm33I~nm~O^=|J z{~Uip{#ZN%SLWZkgW@<#9e4==RY4^_`aUc^bSp>KXQ(bbWSP^AIdOTupMst(ExAy? zK;GcR;D)q&|3cS5X36)F-lk$_8zML+!cf$C?7Kkm?I{(QUvBeq=X&VO_kY2mrD0$Y z`H`=eLF|)$E|VqWlf7|+nLpWT3v$^7Mbzp z=H|T{-jeXx;;%f8aN_64ALApAmH^YIEtKOm8L5i*DrmWh+w7egjkck)<~JQ9BM!v; z?GqDg2^5=iq^P)1GWkQ!nX}=e3Xl#BS?Y?zK2|C>TC2}m+KaLl<=?g+h5;ndlJ_r` z{c(Ev@F-PuKG;q-=f|UMhSrPcw5r4r147^TK#$@+6}5P ztfuc-h0ySDq%yP22-f<6*s%O|3y+s52616ttQ-9f4KuaJ&SKmf9=1AlXDpuVSg6#f z9aRzIy_iCju+0O+&uciJ?azqD<~W3*2&wx?5ez|UA!ucteA`F{%i-E5 z3G&ozvN~SBQTwng*I0}f)hzr>fplc>8;;S=kf)(Lca^SYCeOT?&UBx;8zY7NP^pIc zB_c<)=kFFS=pjb2Rir8eu)8a$a|u(Roxp$Va#(gfc&RBpTDtV}p#hAvQExGrfC>`TW_H#uN9}v}hSVMS z?+3~L`$3Ipejj(rQ@<+UQx`yVng!qmVxqR1z=mg#6^#QmJ{32XlWJ6gW(8k+F=Dyg zT!2`tmUzf0J`}R{77Rmnq5;I-~&FxrC;9jIKr!l)V3iR?F;Li4@SxE%{hOy$q%HL`f|9$G_Bw}hduw|BmY!4IO9;G zbuxZTx0oH-&c>!+RYEiY12(91YUT&f1jum(Fdpr3+CjtPM08;;bQia$fm`C+nesfXAn^-|qm9fhwpJpM?Ft3*Fv&4Sx zwAkP(BK6?H51e-w{IzSBJixV-B2`qD+M+Doij)!MiRthfIDp*)p3}~IWRBB~BSkt*vyq&|| z!BtXTLptd$L-XP};;Ql{Uf|FH(&#(XJua+*_o(+`@{__)!~??ij44W2JP_mByB0CDP#NO17e%hPDW zG9YW6jK$R{!PLT;vktel5c6#l_>zW5HAYSRg?T0Ez4|fc3QYz#BGpl0GXipqaJI|g zotyC_$IJ^Ln9K~j7ImU^Yj@J|wb8e$9k0fl?HsQ0;)gKF5Dmi}Roqf(i8|j8$$3&= zInX4352W`y#Ae7VJS>kPw$S1-M4b3Qb>uRsEDhHSO<9dxnpA4#T^g;`>J^bpPcD#d zoN#%1wAV#JY@^$;@kWD0yNi=o)q2!XZ6%RN<+Q-UUSe9fI&E?+EvqffAMYLU@R@sn z*K}i~+gVsLu`hzcrPWUi&UW4pnWih~8Y4xo_$o~u%Gs>G(!)k8v~6y-e|^!^Nhl)@hByk?>(0cN50+N#a_Pv z`n*+IT8+MYHd%Ksgj9SC{8s-LdW^Xa)1YfL#M0w>5h?v8C95rJt$s$}_7tW9Q3$OB zGa(Th-U^kpz>iF=3|4&FAq#O#WSfZ4Ds`W{{fo4^(xho`W)G9RT-^ZCL}Nyn|CUZv z1-0$Op-TElW+Auf6ubTWfv58KkZ=}(<%`B*cnya!FA{-YK^8-%UYAI@iOc6MZXVWn zc^Y>6uj1|Qe;HD-LLsc)Txm>W~-^!k5_aQmi*X#G1m?eHrTSole`q^-6Og9I3 zd97+T-JNjfgGyFIUR%Idv{ zUzNk@JXW}n#@e%{vL~9MvqNN`jiN^*(m2Gs3}ZZJPP{(0SDF=#$Hos)8?F7IF(vf! zn)jC3H?Sg9X38N)^IqB~vm^hNw=H{6-WcT$R5HmEIkp}!=|{yf65A26YF9XGey{l7 zqo*_f{ux4G@~3m0o{4+hC-d6hOVJEy?o!NhTS}j9Wjtn5Ad(yBLw@V%-Ri2U2&vnd z=SBoQQp}ZfN?FU+cR4MSkc_vTQr-%OBA=?(+6l-|u#25Jimw-bLc(BNZ*VKcn%}1< zr$3s_w|MN7J^TnDE3In+w(gO~$l5YEPkI`*%e@TE6dQcm7-0 z`ID>jAa+SIxax+qt85lnHdQlmX~Rh4Re-=}nW)I{y=Quu^Ji|7 zkAW<`Ft5OTr7|xq@NDs7M-BrQhPqGCg8%t*jaF7OgZ1QU`WVAuvwLGKR~oG`rT@si zb6KlSKobBL(6Fetpln+RQ!v(u9-EUh*PeIy{;N>xJdQ3Ju`kf=rSBmid0YW0788VA z-1atBK0?V+yJJjn+tG=3yYfYjj`D^C@A4#<57v3X5fS{V?hgfdjvv>pqQZB$@7@K7 zVH~Q?i~1952M8wxgj3cv-oSQ%$$Y@mRC2LoY!WH|H58~rn7LkiQQsWOaLcy5v74VG z@`SUX^Smn6!?^bBc)fQP<68F~I(C;^GIV=M!4obck`>6|b`Lv?w8R$Bn;m~dktb+? zVFXV~qR)o#RmyJ6Ff<$%K2*MC8#CiV^!jS`^@3}QoK1GK%2U1DQV#wONN23XpPbl+ z5Lj_&-#%ZwPQ`y+#TFXkv*QsZt9CZcXRI2XtkcjT^mrIT30z!a5W66gkw#(LUHI*s z*qkV*WZW&SbuQIhDi*q-EVrg|W2v~acJF7-7Ij|wn0K8{c8%mAi^AOSlhyKdE%v#! zxgV6}nGyJfAdH(HHM}^UL;IKQSsIlkHc)?nl3T(QsmiWu3S+*$WFVR|I*qSB&0LMN zai`=uX>jPU#T2zeuU(0NDD)?hN9|*)uRT8dN<3xPsrsvL|G)OW`YXyc`gbU4K_o;< zkWd-{0i`6Ak`kmtX`~Tp7z7N!qNPIw1|_8%R750Hx)BLM8l;)K-{IW5?z;cL{pIUA zXB`f{Gf%wx+0Ty8{_K~Di7H^$+Dbz+Bq%z7Doa;x1c6Ob34tvVorwGLSgN~xFE!4E zQ$s${1`av^T2(}Yz^_9niez_xpJwa)7P?7CZEpJT4_HzI{P%tUZag~uEFE6XC4H)Y z{3i+M0Xc$cdS*F=*W*F|205R zqY!Antf1B{sRWuqT!Ly92m|CZB0YQCd43#zlfeg%KwU_R)$zMC(_dLF6_qBZ%cr6I zQR;I)!(E8QadlsNf)eqZ)qrv#7G8hA(ShH2hT_D8h6Z9uv7U$JwGgSsGAj`F%RPb^ zRV!So(5bkl)d#Tr4|Acy2%iMblI$|ZueehDs!173sRtL(Y0i^MlWO466Ua>&emjpz z%e!D$MICf->dJk$(MB8cQ9nLFC_X+J7uWzqe`|oXb__ZRch@8^g6U|SgpHJX;0X_s-=wze3atRs%XKY^bb z!Ywb5A>MQP%!xX@fC#b+&to@+Io!OKDWD13_dEsC`fl0K#llbni*V05HMxOj65}fW z`HzvnHX5CfFxQ~!AEzgy*9#_tct|hAn|Hf|k8XWnp`p?BK)D;%`ciC_@AW8l;nu79 z{ApAaAgwNenfN%6JLV}+fnKMm0>8>qYkou9muf&UAL-#zn!dL*#)Adp_&g;YKKZj`t5UF@36 z^r>td9+DB9$Z84M*1pqxQqQaPj^%mGN-I;IEVXymoyLUGm z{qs-s=~A)>bXG_k0+Nn7o;dQ!6NEn#K-;^v9yqmxGrr@fRUuY~s)Y0_fTLz0UeX&i zH#@ryKInJw_o2$+PxerpBA%sO=dk=1&2z6%Xi_4jCkH`JD#$DgejIEmi|l|?-QlG(4>Rq*3-|gdGF|q1==c0TEEx zNg;%rRIN0edawLxr~Lh?wx;iZQ9{TK07K3kZ*ANV;A_d>eqX6_sd**=G+Y~pS*`)x zIu!H)CR>x5&n`-3NJe_&M>scCHq|z%Ov+AP=ge3Q2X9L1G-NT{;=`9GiuSGp0XUnOqh z7PUJBFAQnxlG{gJF;3m(LP$R4VxunuIqJ}F-!zOo5K6_o7D&4&R9)kINlMZG%mi51 zL+BJxQOr_5{zPjay(+-rg9LHk4N=b!1}1IwEyYRFSPZc@udDnTC+3b96K4jAHPn_b z^sR0U^pxgIA9*cKK4O~8&uzLr`T&RpMQp#F>2wE>E7SykA{P}5ftlZgA_uvH)zH=* zD5h)%yA-ed%|P*;Py5VA1^yS&D1AyuQl{KigpCJ#{|3OO=_8N6DpVmYd)43hJ$dn> z&FS)0X9YylJi#b~rxeD-NcxsK>kZdyc+nrph3Y07)i3>Fdha)%7F)LP7>W-3X79EL z@DpnFgAAl3g=sk zTLT5TV+jelkeal|bFI&*umDhyXO`HlBd>>0ofvv5dFW5 z>m+AYr1O=OS#&;BrSO~8^xi1r3u(Y_QN&&LJw>Sk2a5Xd{M>S{=Lt{B>Pc#+p|dKO z3WFd0LjPi!^zEI{zmdVto3X>>CPAYe`^L}9XIZL`?N>>gUL%Qrt|kyrVmR)0o<#`r zz!yofy8fIQ2~f_ZlER&!6#!v?q@@nQ+IRCCkW*Z1Aurlk?-<@T&9%_~90|^YQ$0IS zV_s8I3Tr+3@IegdWL`rZ3sVs<=4?Tq8sNc@>=;uTd>5>YJq6L9Q+R)xq{kBJRJf@X zNzij?{s0vm@PvWxeSX0#g|s(2Bk6Vy2&q>N_Mb4sTShNDZn|>~&hh&X=wB3|7M$HJ zOyr~?n>^;SX7tSVl zX^tK!W?HGBZA3;#9A2LUhirq$Sj}rvDpx}>qz&~lkYH&JO@u#S00F!RCM6I$L{>l) z4e66=CX@%AJEZe{yLSfIKL%~R_LJX=E^?Qzbk6%2pl$`#K;OPugGv{39Ur~Z_~|aY zh)BuD+`;f-iQuCE2)1ZJ!sw?>9q>m*eY%_JI?*7Tn2M|rKLn9bDzz*~nx}Z@{^ACB z3!-+x4Z6bbjx?AD^Hd4wRCgh{8X%@9-9Y#gtVZUC@qneS-sZ^CI)j9@Rj zCB$3%PKX>KZ9?{Peg%OaK{v`3-vZT0y@U4&jaPh+A&QB({63|Opm`V(`Pp09pV=pM z&Jm)4V|ck?-vw&3M#Mzp(H6@0M3a@`m4!=mjPn4lPtK zPUyWr%`H_VJ9f=7LY0moe>_csP3ik-p=)7ownqoM;5Ws@#{T~B$~PcD8j8F>+l$dK z=37MK+=?tDYDPk(4mS8+@Xp)JhfkU|fqbwuaQ^{lRwQKr?jo=o4G@dAPUDgv;GT^6 zpVDF1-J(w6J+0mA-nxawKOzpGtfQ1B9wonjP7*)jtoUS~!JQRzpVez^hq+ph2|RV= zI(lnvLJJN%h$6)`?ii83(+tDPQYPGY2hsJ3YrrZ(1{u$1KJ&5gnY0r%4*$B7h%)!Y zztxSRhxOt926c&aPP^Yoc&a6BX)*K7WF}+-z9magAu5Is37J#3;BIbn>c|=v3>AA6 zp$CaORN9mRH9tZ%4+S@cLkX#=o$&TF;U4@MT<050jHKF|gN3HA6IBzB{4K~mcR*~!ths>hpWjOiabq!TS7-ME zg#74<7OShli=Zgp?oQMb6?9Fkv~45castOKH)ah?VQRdC60%n9kQp*Qm& z@6QK^4!mq7qqA8pXn&olrjfkj$zV8rl1HbtDTr-R7Fi3F(mf8D8o&rX+bQhIYU&)iB5q(ZU>TPo|d_Kc|Rv!jV$dE729(-c>)4A<4tfpx7A2kXf?~Q zDatRR7Z-X~d;-R036v!ujk}Y?9I}Rx4y^FOE&%{o0cKNLj`5I2LuXlP2~OG0oE$cv zkLI0J46>!ieLYoUb zX+biTR&nXFY#@&?+1K zn}usT4EyL`MtUm6v~*{!33$-yA>C_@=$5|p%LAqa7D1%kr$0E(RLSx1#E-ZXsO##= z-VoQf2XS2441DIdIe!hp5F*L!=N0{(jE9w5TDs_*2fh?$%A7+HkT4m<+v0;XCe6Hl z!`p&2dVhPiJ6#JrQ-q}-@I-&yL7P*s$(lYyoE?R#R7CHwm4s6V-k-KTSF>tmS-a77 z6)9arf>WHFN@cFVu8Dxp5Jp8P8?If++M7ujz0Y85aY)U^Ce%k|4pAQtZE^W#p_gQD2wvx7b-BdXcCc8xBp~VLJ1_ifY zx?=^jF(GN{$<($S_{Dyi{`xb=FVIB9SgcQ_bPT z-O7*{=EB?Ke*CJ*xYs$e$!`BfMw#w5;2lyR-XUuJg<3(8?=^W5o=fG(a=0;H4h>@H zL&Zie={ex1k%z`SeBQqN0Z~9Yt$)ENHW`gNfzc?2ZC)T3+n8&@HWBA`voxPTRvWBUwb5AkXh(Y^;tmiKN;ivS0B@J&z8Q+j!g5tkym555f!Vi8i-gu3x|Y1E{n>!vL(=?cj*s zo}Zo^^0#gFV)0dV(Ki8q0~ZaVf^A$ld~D|CzRyh-DUTTF)kX!I_YFT51w}R`1ohDf zw-XthayeoAJ&$0%g;~!@0|m6Pl`n`JfDBsLttH)m5kh)B8(?bhEE*d;7_Ph>dC+?J z9;u)?Eem9JKI{S1=k%!*&>LhCMQDL02R->U@>L=zMx^LrvM28KY~9jgFkj@er>VgoqA|pBZ!C<90a$4Iz{m_@ zIjj=l?!mOQ37}-m?+}HP0y_j6oCmTar_Nt5 zb{V@O)b+u!)R6xhM5yN*{T=FACh2^Re!EO8EO_s~bV5HLf!PMVd zLq1=@P4xNolm|&5{yYSNKsIn3xWTX&z_w2)2za<`;ICd+w$0xu+{4585rrXIyoE(` z%JAA9?D~BoqFg+6yn(RaKM!k!jr)3T>q=ToULV}hBl<`wF$!gCBM}vH5c_zr%&cN; zye2X=^)ik~N9U6jC^)1mlXYrWmh4ufw<#g!s=1wraF5IW9m{Jub}LtJ7sP=_n1JEP zsJfH|)*e*7on~bG6K-^(5^S4SuV1S|GX8bkNfdB02w@()#2&Sby}?H`ovITZbsV7xRFLHBU-4pEbT(*@>ajZiWcTlSl8!`<``TM}a8+);Dt(nIFN zZi@1!@IHnWrwiLA6kk1S@3Q?}dne*LKAF}~t#=W3KpxZ!q+Z#&hDBrZbcO-mmb5GM zBIxyAc0}uAr&1~RdBX4CpKnp_9Z`kc#>-@2WK@OD98mhH97q6wS1C7nERViZ+^LG$ zHZT`K7JGng#|YD|OdlBz8v@=b!u629>kUY92+eVci|Zd(=$hX^recJZ+Wq7Xp7-B zE|xb5bpxpq^}A2`H;DE$9Z~j;tHD@Nf;1gf_e?A1>A3GjlKhK=FLOp*%$ue5&jX_k zkjlW(Pwbq{68;6AI9EfP^(9!Jin{uFXo!2^B{yV%qx%-g>QuLT1EZBh}ZqR+uZ&6@87#lbY zc$PiVu|WcaOAX$&@(R8X2b}YrWEDNi z$Z=3uR?%}T=q>EsRs+LkS~{b+o-@Nula2OZ0!umliJ`nrBl&H-r3bgPN$vE78@ou4 zB~e=nB+>F0@+J2!VDA$sI5|1##3AUC??3mr^smdWd1ykZhq6_LJO@-(g49x+2z_j~ z>|ap~t$^=bPBuHqEU$pO5qAK75k?)vOX^k2gSQosck}E*`uawl4Eu|k*`#|r3k5}n zWww-{)U3b*N;(8nJ{Pnb!qTmgB8k+kOUk`Uj<*E=iVcSd)xfYxw?5R9Avq;UX1VQe z$x4)yV_r6(URP6J@4eS&Qh)2xbC=S!g0QOrkUvP*XrccUhWzsyw#t7$BRdtLdT9=ov6u?u^z(83M>UZI>SUcYP+jbX>+>g5%uSm7tIh&LO?^H zJU1Y8F9OzKX<4KJTX%Q&98$^yC@+Xotsw+k^z?6KLSTEqle_=thcbq3^c{*$Fbcox z%8(Eu9*ngZV&bW1lb?;;yn=1VV>|u@wiyDvc-XFdJ>97OwbVwSX6o6N*za!3DP#WR z>Ss8Hn^{^jRPDT4uaIx86{%^C&}$#)wgj2T-&wqNN51ykt(gUhgP#aEV8~_U!4;;< zVfLSGJ9(!$Ytk#*$WA{6W`KvF@xX(1A2@ZmfgOmoE4|i4&kQrZQ*Io|3lN1{`F*D@ zS8NYHrpch>Mw&&Rp#b>-I_Bk{7}62!cBif9_tE#a?}a}+kqnTntgqB2UQdv{QpzBK zqA5P4y&wd}20TwGJfTT+r(l=YSN$e0@bXju(w7q&t|3YS^8F|GP0AfV0r_0H7T#s~ zF^AG>5w$ z<(cGI0r6lYQMcGXc1DWkzQBWsj~}5PG<3;i`C^2>ruEd|U!;xmd~QcAuV7OoC>jli;caY0A>r9ot!Oo618!1B!ZxmTt?#=9^6 zp+$-LRbDZWv8bc?nQYKCy;Y#^=nkn_QGoTLG#`cah}Z2j>c&7S_qSwZYQbBmqq4f3 z9BB?Vi~Hj4l520J{r88E5|6EFP3;`62S97HGx`ZghEwBO_9*jX9#5ojlCf1r+LRt*o54}o8NEj0(VmC zawD`=g`f#paP5>UwPR)WNxB-*Eg;0RPtx-K^CKL}0%NgCakdDQzWs(#QhV#1{qTp)i)r#q zD)WkDS`!N{Dt}}yjGoe-Cm``2mbe%Zy24OoaOSpXdUF3thF_?9PJ@um9-Z{TgP5!( z@3w>H=o?#$=M?_gl<#n1Y`#BG>M|N;8((xwp;jP_Xh-nOgMp5 z6nV+rka!VY;4bg$*jP(L?qcWRkAUri%5smv#^bKtXMXrUd2oYh`7Y9l2MS2;eRk4v zkN7%7H2TokLzPWd3}2Qn0D;@c;V>>EjZ#!>Nn4N2N7N|TP>>Hph@eIbBiA5-izZiLaox@w@R>P!p)etfXN!q9A;Ff?Mc2 zO{wztGHyFyNlouF?+6tW(iO{6ZsNPh&rCi;GllG<8MN6KFIisI{>s+D*TqIM*YkLI zrKU4oO4oJ=MeVCl8@=?0X52G#*d}S|EGwBVI4*EItr{Sq0elrseeo~=lTJZr09(+> zkRFKW5d1mbbK$}T%V`Owa#xHz!2gPY}V<0?TP25+4J2KEJ73FIDxfHglE#o0xg#}+RR)TXna zIgAdLbG8_5wT6+N9u-~Vbz~4eGuPZ2*JRoo^F@IqSo_GFst{oT0W=^!c&&nGM{2zI z4)?aKpj{D=`s-8*f}5@QNZye*;IRB3^W&4vid4-buC28z3Xf0H?QTd7RISeNI||AZ z(b6*~Jot(qM4+}3t6gCgUUW0(+e#_-fVSv1$JV-_ju19_FEK&AzD`|_?~Bk>>T?8( z3P>0{$+Bs(=S4qcdwQ0(PMe-y9?sG+Fajjnv!XoBFNJ|ASM*1phKP{`LHy-NInVUc$Qb_fak1x?S}62KqIj=Nt_?z6O_{Oclbne;1?=B5_6bPGBM-76B+G z+Gl2-l>BC7_xhWDYPEKy4sSrQro=c&C~+&3D>`!5BRm{sK-=KrQQC;wiHT;i#-7mo z=Znoo^|kbMJpD{7@$vG!d1pw{gEn)vUbCl%wJsh_`~Digi&-LO9MT62Jjc?*_6mAEQsaGl;@2>mCIE=8z{?G8(2R5A z6NAMnc)V_lTa}LgSY|GOQ;YP5fnX`3zq{g!U+zF#PlyfPR9oC~<8pL(wW|WkA~-Lg zh}Zx)BcOeiPv;;|K_!YgM7NeeS$a_;(1U3=Hn@ByvJ`899;%q9DPQBy=_!yb><3Zj7h6t10J{Z33@eHoE>2IvDbgtO?Hni?5& zsA)(8M@>(gcfr@g|5X!(UYru$8kuDRqjdL%hF#6TAPeGNs*Irr-&s3ZN#467Tb-QE52bw-O^c1C=gK*zv=3f57)~YZ}BTfrYa}3&8TSKcF zb~;FlS-w2^?dLP25Nl*%nf_03mdUsXpcoK!JNw$76T) zenm!7-IW4AVbnzS*#ZRdCAVr0&{`^DgA>8tYNJXRb~Ux2%=q)wGR}O&I)P+6}*_ z!E)I?*=+*vgMz-cQYNo7E8%qlHq_$D#V)JLEL{jR5S*a6!0h^tlr5>+stZwbaNC_h zC>2O(z~_kZnr^Q-yr#h*ABDA)ey{Zb(oiDSHZ~6b0EXr&y*Hl?O$V5IG5YFdMX>50 z`_0PLd08<}!_!B~^kp=N-i+l@2el9b*cKA#R)9+w_2>{tk@2svuY+*l0c2hdmRy59 z_Zljko2?%THK6CxiN`9v`rn5pp7A+wPZYjJ#1JAF^~*6V+Ip%Et3;1^n01K^-5OrR zw)A;~^0oq+jQz8( zH*bTRUga1Gg75*&2Mrays{rfBJdX6|{$}gk7zLR{Key`%VC zrZ0n>JGoUeFh>wT5FA=g{&zdRJJ8?(N|L%V6>}yoH_ovFu~;~T*Mj}_f2dC-zbmHe z^Lxri>}UIKaS-)c-NjoK(p!0ouO}375BOZz6)js_S4CFY^tS(!Ildu3*p_%0j30w$ zZ<@@zuO9I9;#r7INei%)wIOkNIdSIrtSFc3z{jB5BE__b zkIjCT%9iV`udi}kEE?8>gmX`Y-PP%g*kTWRm2r|CK!7^WA4_8oHbCT%h@<21dv#~v z6PbOLFJ(tGn|-9274k2yhy7=yXI@G}Q&UTK(G3|rK6OFTDWQV`DD;40Rfz59FalDR z0kDpfEkuDg7;ot46kFms4HL3lkzAfABX((IS*}qJG^e|nF3XbloUAHxYnjpvdr~08 zrD;0PCf13FCO9L>dIfbGwSp&vPk?@2(}Yco9MbP_EZuvLdntK-zbh@-m0kj1fwak? z*4=8Vjge4aeGTWt34-j2+fs(8$6+w2wttFgB0@+@<6 zUY%F;nk*IcrDJb6*$Dm>DMK%6cdD|C1d+1`v{1qQ1|7^)f%7B*_=4)}{{k8<3%YzD zWUXP3;t%Vzky@CY`SU(&$~(6z>v~FUiXG{s55=Nb$WQGB$f|(AMnZYlNjer&Gcoh} zD|Lqz_vY;NcYgE`Q6HYopSZwpzppb-emc4Kf$Fgue;7ds3ho?zWKH`RgR>l-)zpsh zL+&t1-L=a8j1vZ);?~)$8~po}&+(L1(fuo*Bk2sk`)F60Jli2sWI zA^Uj1X%CNx?YY^OC`R5lXXMPq3m&kKkk~^wNBL0rY&IjC2!3J1@E;S?>;g%rzCl$L zyp(LomtXKxDj67Xx{RX=$@Y+VoQU9K{|i|V$GD?&r0jwj>+#unUgxC)--m_^)vNGr z?vl}H^n4^N7br}Zki%c!S12d!ok+-xK24{fcM(r-YZB>xgg|f_q2lcKGKFc-So?P*R@Y~4XjS$EFVLu!4~Nqrf~Ta_+mNWWAlOh?*OM0`eo z&4n=HqmzA=^+IMFv#XyNid|C4m>(?nE>BcY($Gw%`RkP{ZJaY;w(o3kRBhd+0%G#sm#M@Z<{GQf8fl!A;hjokGVnAxdK{@>L z+m?h+TN}1F@-pr?KO|$}fAsa+kLr!4kd_2K$0J+(Q3)KCTvSlx6Nu=qgN-#L(F{> zKU*g-;P)xG0<^(-efBfgA1_sWy3DTjPj^lc8rfZBqo2@(15+{G8z{Jsj{db+4ZmdI z%A{lm(_UXPtjF*%**%Rs-dF2SZiqkAMBRnzr;vMnbZzJu`5>FQmFpEvEpf$JBLCE% zk+Vxr9k3NoiR^e*PdA|6`CVv-;uq9?p(p?4W1KF8cb@S7TZy=8h!A0N+`b3rGDAt}K%-IcI;qGLQC(q|Z-uR0*9p96O3AO8=|bZB zRf_laohdb{NItZiM7O~cOZqpk$q<5n81U*!Fg7_cF_A32 zR-aG!wdEh(^35L&fy0M#SPCHVppqrIm8+l^`}5~c4unU6cvp1rG1b%*raRn(x!+lR z3zruSqs}=NjGSx?%U_1DieYCSUw;L2y{9&DPco`n*zx-CMxH6?NZkMGd23Ef@0>fn zm*;%q*jz`;T#bc z+yR*B{Er*}->(utMQUO1uK)IKfrNJJs?3g)k7H}KgAKcaRqz1=>cbO&2}?~mY= zpVudyb0cFheHUG+BCkjm6}$Z_A=Mu1+@Nb2!DxfY0&({gD0A!W?aeBI9&|KpY~29+ zau_PL$?39y3t<(XlPf=?*K$2Gz3Cm! zZ?OMu7Tutpa{d}Wx-p9Bq%e$myC^#zk`9?7NPKDeturfBHP{S%NKNRnr;y^eB2M-r#x{o zta4oUke#;#KlTRmmHSV&CnoT|{fO#L%!DX(a(2zqWM>2J%!j#=S9gLM1w-$yj>PEF zz`UxWfR^bMx&uYTENd?n+5j%PO}ZBhTXWuT$-BtPxb#SrE5 z=f1&~;bQ_|#~_3^1L*5-DMq8U^Kk9*ld%J^Vm5veDDxocH(Qgaf7@%tr_QHw$zjbp4d=Re#oYOf9wHz>czGU(iNhZ8G0SC?CxenbDxB?5 zB#h)2>{*{pQ(w4{fsuCRM^!z!$R7%kl?85#P#Dd)F!Vt&zX_!2RaLR5qZ~#p)eu81>qTIl z#N9U3$C4%aM0sp}h1{uxNrL`)(IGlPjIG7PhNzS-4u)ffdC&ujnB%S^eX zZAyBFO(8KvNt#LFOQ~ARvjw__La#L+K9Kgd5OtTdqWZd)MP{OkICuWM3C9$HL%kn2 zEa*i^0bRihSucQH(WC4YohncE8ib@AIjtc z9pxd?l@an-u^Hey+*;=NPJK}?SeVq#YXuH{q0#uiGzE!HmP*}e+>Bl*(Ki^^_#CLh z9j%$6K%`Y2=7yT0B#D2F9=aDYBt)U%nkTfnDvhC%3U z_Sc+PdI3ExvKP462Qs${xXObpy$Wg$(sJ79XN=`1x{SYCIGpR?eR}Rk#;R96c^iF( z0y3$XJey=`E{2`#)tLyluMCF0ph!ZM9rUSmyjyO1X3oZqryHR6z=MQY&Hm;r%bv_un)%UgdoaORe{p2O7v(zCA#pivFTeA74*a_uXC0wR zuKn^uRTe{zzK26-!YDpYZe978DDHxHmO0w;!@9-tLZh}=NxS*cVOi0Qt9D&d8-C(i zUEh4uq~-?XtH1d-G|m+TcY@(MRJ@%gavo|ce|KGti4;^j8eMs``9dx&U|zBPPcDz# z&NYvoYv+Tzp@i+l?vDgPHEeKt&`xXlwnO4_?~&9`tLbcMluBF*U+c_ne{^ER3UiX ze;f9fch?gdN9T6ofFi|Ufy;E?NpjPY0yeYT%Ln?GvBg1w6C2*6uMQRr%JZMN24r8p zCc+Fr=dZbPhku-gH^Vs}*KHh}yxRL#;4B9F&!xfwABA3mc|H35xtE)xaB0g_D=g6j zyCYHZo+j!ci|+pCgAWk{jjtUuv*z3nCxvc(d(?aMeNFGvV(uHi;z5b*jhNxLtVs(k zvDq|4 z&BtV1$Lk&~QIYq&cG2)yCTSS2Q0sXxuClIxA&xY-VfWgk+ys6KytK}COJqyf5xU79 zr92pR0O}vJ^f|k4iLW35Ec2Mn+=lAIEC0VG)<*}{yX(!}Y+iaxkNSYm$RD9};PRaP zrn;WZY2h=sE3>U}w4N|*r8pMzTd`hN?z|$K2O$bAl2uT^XJ%%`4O?jEa#-RRR{Wmk zL;X|Le+6v%b!o%#0{Wq!9XZChh0ld8YWb`yO2o)lFkQhi!3#vI^>;c z^?K@DIv_EaJ->-m|9PA2G5gx?asbN>mbg)W*HR}Vk9My1pNAFaVYB3LmufGd;X!+QYRrH3gwi5!V`A#TznC#OftgToLFfU zz1{nQ_p-IUiGnk4-T0AtAzSeHczFJpWk5Hl|B=j)yUnGUI_t_8JhksNADG1aZMfpQ z64L&Zf$P>kg^jT~p zf#)ozUCOI~xvS+?)1MpWTKm)i(oC7)kBuqO` z-Qcu1xZ4^`z7@W?Z;FO|EHl8`3q1|nOi z0E>E5WRsg3%~zN=wmnr~aWm*&S;L%!Gv?-{Q8z`8t-f}tx!yDjkQ+_uwU6-6Y1J+@ z4~6t1DCZca%uCJ+Mi1tyu8^Zp&KhXcnUd^V`yzMH+)27}Cow*UdlUkObvi!v_4TRN z&Ty(9_i`xpS(X?~ZB>+jH#Y<2$X!6ModS`3yPt0bvPGfKm&)@i3wZ(CwG*9?8cQlo zJN%~}wDy&t%~k!jyF7hI$wOg+ z^}At(B^+(`)8|mA&kx5I+Suuef~7`I(glyCNFN5Q|I%zP@aJ(AUzOvVz%<%nT~V%` zVVwTCaHg|Y{Y-iwLhkXmq;2-YPtA^>^)8=_p-hI~v`V;g?14$pdQ7@Cm;^VCy4~Bj zUdSdL?6kGdB=8jMAC@1Etwf*J9F%G|h&GM?UAH;j?euGN;7%zDMIE84bWQK$@8NsN zrM&`9%^;eJ-0~=ta1ZO&bYN(T$(lubD+9OdX3~+LSCRFhZ2QNb(fJnY{VU~L=(W3! zI+;4-8cQc8gA05PKkAXw$-JngGk1*vu#;%;PAeO7T4o_0yzIFQ$=~)nk6GefgEo?Z zR`1RO`yUP0=TZ%7Nw?w*xCcx{2kFvpIxpt52c`kD&Tkq0l_K2;fkYI_^2=xF?ojIw zCErk}J8oY@ghJo0SgZaWvJo>EEVVlNQ6}0d=q2-J^-`mzx8td-g?Q~n-I0oXeT}a@ z4?o3zH=6Cg@9jNTvsl={m0%h@VD9hSwA*^}DnCTp+aXb&TvN!Ct})wXmN3&%S^pUN z=at{{9?DTAUv#(M8;=dtkM@@Er9`26xNB-^e)RR(;KMs4JCW=+zgGByi_J7zBh7rN z{Bur)@{e&vA1s3|InBLAwrwi9`t)E2lA^23$+z}rH!u+cE3wYR5r0(wy$c=I_;XY>)jZ6i zn_Zs=_UUI+vqgt&^PggaJ*p)nL7^%NdwW||mQ3U@K74)Le15FN4!p?Cr2#VTQStGq zGmFf?-z#-CEN)GBkTVZXhD`2UX@_73aIEa5Gy-JP6Q~$wfbp{nuvi{n*!5k{T@nMf z5_@`n!ydk{(U{*)I5*0EY8t??NFA^KH=i9-?a5Rc<-DlrOq1KToLzhZg|b(~2Pq2W zliKRhxXStZHq1uU#Kpsm%kZ5LD7MSoMn-a&`5_v|dm&la?~89optE8JSZW*XT0xf* z%>5hy3p6~JQ(IeG<}_3aH3R$*4-SGIN=X4de13PVe!6-ttz)3^XloP*SP8n8>NWtg zG8^O3LV9&(y(5N8J-TvSt+27-iwTt(cK>M=o;V7n#{p8^V^E+WBi0etTX79DtULZC zULX@g7->LWRN0v6LMkp&zEtE#6mj@=IU$*1~^v{nlQ$=W^;| zm+#vF2_;ZzslL@rO%m;rJP!r*51`yP?&2-X3L|vx#vt?;2i%8nSgm0WC?Y@9bQ)$cMhoe*7T z=2L(8_ZHU6`Z=>tDUa=_+5YBIU23^evcbCA__yTODebT09d>G$94Vi~N+f#T#0Jsv*F^4+Da9>&jh9TIZ|#_8|do;J${ z-u%t!Kky=7^(c437gmDeJ#`Ll39?&MVn4Mj!~M7dvp-szC~XB5z8X<* z)__BOCdywPg_7rj<0hXgx+Q;gusn!aEUd_vyZqeR-DuE5r-k0GJkXJ8t9f{Dta9=m z9!j1Vxq7a=&L_SybObN6@>b+&eIEXPZr?z@B5~&(^%E#`i4q!xnpb+uno+dIxL2Vq zWM`ST;~#xu+=2-{iY%zdK|@BK(ZBZvV|G0((q0QU1K}+c%!VA9^_7r(V)!59DCFTT z4H@{kCkr$b`hm>?9@q}_$QAQ}=@u3I#RoiCY({FLAN-tglLWqRsi~I${>S+`8onDu z0)EEn6#0TnxFML3H5k9b4KbX8454;B1UoXs?K`+3PIAbjP*In0L)<@yNQT&J+z^V0 zy_(&O8-hg>4c~qIP!t}riZa|hEGdvxBpp9wg&AoFNCgRCOf78wqO z{5lIa3wau3JruZsdmbaNUl;dLOB6DRD%>+ow~q_v@d^c`2QHjW2wBmlIJui-g~B6i*>j6hEHga}Jnd_VE<&BU3yhb3B96y}oJyV|~g zB+y>k~;<$+YjPyrl!RFVoBh5CvUF;p+iL7ove6xtjnZE1~L z87dSRcItRor*IgSA{959&>Sx?m_u#`2^R&mapy!ZB z$@3h)j}K>Hh+$A;Fm#48Y*J6*@jL|J(4Ze2zjAv57~;d}<9Q^*+A>&<=P`_&==aC6 z*7FF4u-88x;xe3Qc|M$$L4A;dA&j3M4}lz;9^T_2Sd?Ih@5jd;_jaSWkB4{+;$|s! zJj4}bqdNa>3bZSd|MxKvA++t#j_G>SZu>?fvyV$l?C<%4nC(v2qZ(KS>a0BSfT6qM z`l@m}lMt2k@kZf>5c>gA#l8HBd4sL}n&-4RqATQckzLcN5Z_w;-)89effu5T#6n>3 z9Q`Ce$;#bDM5OFFU@Z}UG;fdE<2L^sY)tIh@U8a4IqrgB(bds6`R)5yQQwsm+afY} z-m({YYaCA{K89uDjM_XxCBf^FAB*!npL;qRNyaKP(!b9P;r8f4>Mkt#cuTzlkX zPz(g7tM-pxUG>H73W`x~m>h+!*gE>uzQa-(AnWVraqzxfZh}`9z6fQ79Lv`7Ii2=z zu6?qyt7Yx^*n1sZ@HglyCc=14D$Kq{rQ5{Ofmp8(2FOx+bTwdTm8ZxKpa@`^$RBxk z7#R73lTYLaS{`}iKPc2EMAO2b|9J$r4ga$*|04|l9}bBGyDIq3*Zo;=LMTr>?{M-s kVE7e`QsmE-Z&(7hwn+wg@fXm!5QS1z)>JA~uzdKx0AjbPJ^%m! literal 106538 zcmdRWcTkhh8z*)Y1r-$q0UIJ+y40WuNbewBK{^RF^aKkCQk5z-^j@TQVgsZLA+!*x z)DR*ip@f8c#Ke=1j`2I~=STt{BO4vv4La4w z4-I_N*02GAm(Y~M4Ilc)nr-KA9#zu4`SQXe1F?mR-Acvxf)UxbYRr$LSWVw2j#a!X zLtoi&X1JWCRQBxQ2Zam4uRV16)gIDcicnAxe8hVG)A5^OCsXM&ra6CAiOMvOyLeYO z|Mr*XAiqrS&7k!5O4-}X2aq%jcGj^`09}7t*bO2dHSWWQ3*8U?eN;HIHeSt@z+EpY zBJu=s?C;}SUxBBFLcy`4}?CXMG9&*2W@Qxzpg1<12-#t^&|m>+ZTvbX}Y zQR;}C#BYo7=K|N!R?KxW2l%5U^I3^9H@ZhUiv7$lRxI|J@j-Q>7YVY=tG{o@2oZOz z3+Ee;IT;bM1$6_r7M;?ipGa-_gr~5yb!)+L_oQy4`5GH9&aIk}qeqHZ<3+7F)8~3c zZ|z|u8*6tYy508!neJFkiC%ICbYcGDKm)?Ef-TtRt9)*Qm367IG~1~R57#nd9gT1|NP8Dd3yoH&18r5*>|SSc&|G|MZIbU|LdS>zSx%}v>b7yCPS#Y2mjt|D%AmS!zm#Pn z-*}8m2(Cse)8Y-!?vZ!c_H{kj&XL)S!=Vek{Y%3;-A1e;OVg2QOrqCQ&-2KX8Zs56 z9X^`<-ncrda`hgnpJl(uzCX0)@^DdAx=^9jz;)P@b_NF90EF?hGh}F4GLSOKk3ue; z)h%J;(B+u6{xf%J3RiuPyn)sL-2Zt2!q|U_(V0q-BRa#QjZf7%f5jqyHh+0CgMFZS zD)NK7A3rC@ZhfQMiH)((%^@J&Ll$o%#MP|m&}7dE87W01==|yf!5hQwh%}6h$u)zP zpM2fuR*Q~3Vxu2~U_flx@`F=o4r89_^nOxs1g8i={c0sKL^yCw-q+I>z~p{w&s$*W z%Hy4?SJqda$_#eEtS*sOcjg;@(7lW>vaYKezgS`zbMZ1brJyo>9xT*7dSEQisM^q= zbB8w|wZPxrK(9u1tHV3dtS|L2ywESJ#sax6rN-CxNg&#>3_iY9v*K2%#-GBv(%rw*7Tw)bKOS?^fRr0KTxmm@@>Oc&m|FJrT*vUG2G zuV_KS$HO(Q+Je{LSgO^`sLhqqaGYx=$cPQ8NA#)kX%=m9Wm3PEi2eO4gDs(WkhzX+?Y#JIN6Ntz59)| z4qu4JAagyi>T{HeP9?%(p^q)Lw4x#S1u@7wr>zRP^utmO!cn1a9%D>-z$K<_RPmus znhp(y3DViIS%f=ju`T290*_#0TgzcTSKD+u_A^ z(`O9Wt2-|>%o{IR>%|9_L3L3jrbb)YBJ9)|+ns%P)s~b1ydwLpJqFP!K zisXhvuI4ou%NiPQ9Y7A121@K8U6A$@!P*~{^hP|PZ-}XyP4Ljh8dxjo-Pw&FXsbd>T{NiZ? zwRdt(8Xy;Y=8Y8jIF&LX$bc)c1J*v`uyn32kQXDTR{Dzq| z*{FWW4C$Qi5&JWA2YN_H|d8l;Zh>*|>9)gB^qx;z8EZ z(c*j{C@(m*OUuhba_~i2>D{*FEl&k-_N-P9=|(Cs^4xbznN=% zNM!`9Q2fDL;W8E0daTYd5BvHfkX8 ziWnELbxWJz#GPC@o4N-^JfZ%we3(0p_)!PcN^-anthbZ{Q<<_;>ihj;w2d)aOlaoF zhH<<;MIJPL(kvybBFJflb27$V9QvtAdcF8XPV)OjMe}fB_Rey#Xba8Ht4~AdIFNK7 zQ!O>weI|of@MEk zwf#PRid?gtXjhoTh#y<6%(sb5lK$Yf!V#ZXKN{27bs zO#GN7;CwMjBapDtL1_}xf%5C6EK0v11X5kXqP=CPM^quBBJgUwJ0}P;NiLk>u2>=(D|RvK=~Lcox|F3_}~uH=8Lg=-~67VgC3-5Z+~3Zcf#0z!GY#90$W^(-=+rE z5bv#>^%eWfq6ay}2E3{gFG~*B*(vmw9Wz!bfmU+Wt51t4IvX6mxCHviPwyfM_N7XnwbOo>}W1<3Lzfd#Q za~@!YhGo(7Q+C}(1s_~ole65{360f-)}^NJcqYWY$?aXmVh+aZ%3i&jUb(vWiGZD` z-jEw#&}aAIoaJdx?YCJ<7}d8?3ztZ~2I&$>zLHG9kOFStp3X#DWj1itJMV`PTrxI3 zj>D&4Oejn7HsxJ=V5_+Y=M!%yC#J0Rli<=5+aE0{LRLppCIy4O`}9kw51g`BJCi6K zDDi;nciQTYJ)7o=Dl4xCzrvDi*_Va{qmNS>6!Wn=+7Jq?X7yq$^Ty3vS1NQ_Z9-ea%zvoq2#e z{mgv&S~Tc{H|y*Rxh|;M-J1K!q{w7Udq^m8YCudAj2jmk!z$w*L_hIH7Ls_fOy2zR zo}A&z5K=qPgaoj{aNeamsi%2HpmV6DrkGfd)Vj||{}n3_%*xl1*q)J8O1b$<5I-T`AJ$Fy^G@09`~N&9}fb?Qe(Ik|&hGCCVFH7now zcRVJM!yX?yZoTXR*UPKB=My5e*(ah<73bFoY@emC6wb3K)T%&17}sByS_$=YXxl6w?^$ z?GoK50-FyEn`ZeloOOqQhtt5)i8@M>>;9xy{c$7nf_}&nPX>JUBA~nbIM5U;>yjA) zU+`>)GkWQD{xJVFm+5k?#pE~TxHPe#b#N+2=X2>R^}AqX`024mXuD;hEjzJGDRHtc zNS>6wu)8H*{le|F8}PX@DAc#q5llE-50}qluuS zvHDmuD6`1cJ^nVcsoXNeoEIjG%C9r$cb9uEUqFPU{aY`P3^<&d*wtz$lC~PDNq}e*73J0aAS;Dl7eCcUOOISw{J-R+v_Ai3(ij7&A4`ds=;1 zGd5wL_X5|hQNXs=aSuA@Wzw8-wDtbDvo>>s^dez{fw^F_0C!3fTYS9${8L#I)-_?@ zaSm>z-_$N0KdkZ19#m9b9-(Hm+?d38Ld=qo4Yjw+53m|pgb=Ga3=+l|S10PHYDelD z$lJ~D*6|8`Z*eg(xySFA`cONOuyJ0P9S^SsGn{ZK=e4&Q_y#)-wW@Nch0gl|VtaJS{;V{#<))5px^a9!#oK|y zuVBA}&(~6%k^7eQ4@a;+P5PT}D)V$Dwr0L=A)Xn7{9c@Rk#~IWE0_#W7cul5vN}6? zFWwq_X}`cZ$IZh+#ZUITBuU3uJx=H+AEmkJs*rTrHFbcYY3*m-m%6DmAZgEDU{q0+c5h+@r>s$jCeR%&F4jhXk7u!@^ zeR&5#`by?Ji&lU7SYa1MW_4=v7LHTivIuD=l8+7)9$kBQ4)@$*dvF3NbEogkf+-gn zsuNM`x#Nz@P7U}WU~g2ed59@RFddn9J+R#$tvia#u8~Pt&njdiW9=yBj0v9HHSQik z&=yJKkrb9v()3eB%K`LH-+EAdgwc>q1G zy@r+7-|~%e*?YNK_VoBNBvSr6{t<3o4ifP2w(P;tnf$K0;I6ErCtM_bQ4(GLH=lli zzk13LFv%7I+5E(*{FE&un&pZw^6KV<;K}8pP8kzrlB(YLN=)r~ZCCdJTtz&hiN{B=m7vjeLe4t`^tvfnL$k&( zcI#m+?2C=h69h-4fRk6FXRMkBRa{qLm+cUOul2!A%^`)AM#&c}h!+!D`xIM6xp;Xe zi^TO$7S#$g@3n{Pvi>sNcs)+FIk}uLndQ;VuI!UicsZl$?Gc$E`U>i8u5tPB!;g$X zteIbNnTHJ|X(n+gE)(>j{PUL`(N51zHV3V&%49pocQ?&@+#}b8A1m@l@#-v%NKi)x zO`jleMc5|U#r#tTFx*#hq;EH+=e4K3*Dou=ayvJ{Xf!bj+Qqf;PsI;3#3OqJTB@0Ctvzyfo(=7=$ecM$&3W}828NP2YB#-4cNi@cAnAE7SRk^GnJaOVs zHGDotQ%DwIc=7bEhxi$_FCRFNl9f*W;HrJuswV*wFUBv%EY-kQ<4rXw zhH)fLlu!IR^lB5_5w+;FyrOhOHi*7}I-gQfQ6<1LxE{z^aFG{oS>M5RuW=N{D&ziY z3IjE-)odTFIShm7G*?)os^GVJblx3Er8HW^N;pw3jy_*uDr|CY!by*r$b2d0VD4M#iWJ?z`=~B;j7^0A5!v!f&J9^ z+FmySpR2kT>W=X;!isaUqHj)qZ^v!EykwAHJHNj9U_b(7b}qePcQx9rv`MbMO)e!ldd~jIh2tukTW>jD>LYt~HO&EK$B7}y_RY?;-6K7F3)V-Szrf#t< z^`v0Rzre(t1g@_xhj8UDJZm-mohNSr(jTWt7k;Q$G$CYY)W_7cWU9Q z`5TNf;7Y7sjHq+F+xoqmotv{q!gKu8{V2BOG2tEr^yg$mqd*L2N(tAxPh+uH4u*h1 ziH~-|p7na1aFPs8!32+k7+m@zU6@MY5`?X^CG`RU;dclfSv2I|oAgThNFg#NC17nYQb(DYzfcD>{qAVvi zNC!=OC!&$B$EZDtpyl00Kg)MU_7nMwMUg!8OH8vrgC>3J_f6~Tao?d@Dm=a2uaG3l!1(BrdtHoy4wii~i&X6V)(#_2FEL3i5U`ZRX zmvR!P1D?bgtq-x}{VDhc!JH!38}brTzE2=6r3+g1InZnG5oZCL4L&s;iwPf;195WU zi0xAN^uSbq*#u+!fNT$A#ZZ9d(p5KYHO|Qdg7I7nVFy*pAirN?NqlhHGkMBlvz(ak zqe=K_A&(Unxe6K49N`nd_g7%Ge=BxiWHA+If6HTEV@@nVlvW{yQEaYlU!+afX9O2U z+wZ4~cGlurPo$)X>b1r)U-E(V?;++pB@C0AtHd1pK{dEBmiJnvnjDfigaHarE1Q zpQH_2Y3PgUse_)!QLUneW%Ki5H|jO?A_ZMXRY1OTCt4}9NND!2noUH@cpZXiWqOt< zaF>ow;m7XB$;5b4nq3oi;}-*EOVZIP%@=vMtt} zVc^;4IdE*pWRWPpLqhpyH+_&|WMyJ=N`1s-71!Atj}q4z57l;fWb!?COlnn zD=#UgU#l0GYK=MxhdMDDa7~=Ne359t(rSC{I)N3nDFGXhXGIyloQt`3aNAj`dsIDc zv?p@qEuLvNv6drSw7G@t<*v@ zoTGo8J^sg0?}JCny&D#$i6{&9j*9x|7K0l9$-&VDKi8=1E`6U8_z$cow+2?sqHZnN z$>wR6N6ek%<3ovK7UYLEe5a&$a&2|XGhnR{RE6Xec3}U+R^#RUJ{v}SkwaaFMmcs^ z;EPV&E_chSqk+Twbg6QS9*^PHH{>N_uNWBv!>!kY)SjAyFS9AGU926>Gc6V=wNf!7i^9D?Pn;3eZ;1qxzq{s4FS7x9`j??I+el#5Z1}(!WF6+{(Cl-iVb(ZK)rFLSU9)oWle9YI*9xao#jTC4B)UGoSoQa9V8bd*1KaE)S#8%RBF}@hu8PZ!$~6Ve zof5pyEfC@=I{vPXI46_3mPgibFB0yEPnm8$jx~eYuAlT6AQgI z3Jz2{d5EcEF2ixzu@x+rc&pc`)__&e5FVhG=(3=yJg9m%AR-_#BP}fzGRJTGPk~DF za%c10)eZ@fGDzb$+4qz*TAAE^>>Szy1J7f_>5^(WuFiW!rW+B-WA~=K`YoME39b%~ z8}ij+&DE-5U~B2^meEKc^|b5j4{w^2f-mixRPN8;?HZ9N1y`=Z=E0qXI|y)@^oFb-=!2TM0!|^FVsmwL1OJ>GVu3)~QPj-ET zvx8R9N-kT#80*z^^8hwJeJC1qlI=R}6jM>dv6bN7gHGT#X z${k68zRx_)8V}zI8zR^@AiDAMhyR`h=;Vd13)erLW@WWE6PmbVD<~jTl6?r>zpf!h zvNMdMEY-zKMjr}`wuUOgddkb$eG8HD!y8TENbBh<{CyJX_|749kZD=t%Bv!ua7jfh zujLI4Qka|NY)!37azk5nudq#|ltj;VZ92=nrZ_)4Wb1pnG*IyK!{?F0d1f4v>^28- z@P2YjVCSh%hrfyDKOfY9cBtR1zdc2L{Z===(~OTg>J4FkFTKiukPl*SsP$QbvHp;s zD%ja>>Q}9Pme~p!@Ar{wAGR(XpCMbG0KnFbz7+8uFTxadn7(#lv+C`@YHD1bTG#PHwYyTtz@8x31rO0%5a>?$h*Xep$GF0Un?Yp-V4}fdUyv>=TkdD;U%HMGKP3I$ZC|>}n>o-30~;f%X~&tniKi za1i>mjt8c(FXeM>Q0H-HCQ-^qoLM7+<*|={$CzhmEhvZ{NzDPm-s!~S+%lCX7VHI<(9%VCp%Z!N8)F{3Swx~Gm zczUzQ@J=pI09snJ*n6GD)jD38w2Cv zRxVQ!9O|r)?!|M6K1EWLVmn1h1fstuoloCe=e;&`H_4Wq%^aWDYD!LQu19}9Gqb_K zGI*NxfpbA8i9JqQRmQt-=!TVa-yfQiyfxIIYi8E|+M}s4KHF1-?_R@WhH=mWp~_Qw z)w8Bmeoc^_{V!K4`Uegy24EHa*_#%rR!*q=PV^wAKZ;O#T9m^mJIQcWtLEa#{voZ< z0b|u8PKWLOayB)Irrg3t1@9`BpC?^TJ%=b;0&}u1$@@QALDuz`Sdf7VG9F~D7gW@z zBI)#~g0Ks>yl<1rNa+heu>GLk_MLDT%e+*d2iXdfDWo()pWz$|Lo7J024lQPUV0A9 zDAU_kI|qLBbaZaQ#eN=Uv6o7slOt*>e$|{A=`|o7lS5~jFq?Q_g`O5Z$6SnD21Xo( zkCRy5LY*+xw=~M>79DqJmvGE8Ti?n{(+Sh<`BG7w`M_$cihvR*Gq)MtgJD*$V1@0% zM=o6|d8Yd|Hm!ds_1tJ|I-hu!)u|-P)v~d>eZyJy#VK&ZQ>l7v!UE#E=%bgH2J}g= z`a;8M<*N0!c23Y9c2-f_s59XVHTP~8MGHwdXWi|*TbG(K>1GguD{#;lV00R}Gs5*j zZzJVYyqs%^JgDhm+)=$`oA~$*NtnO1RZoV8Lqxc4j$Ju;Srxi9TzBkpkVY(rCCmWf zDp0{xzF@F@?lO1|9Uyy0lxB1#b$wTh%uE}H3pORtjTXl`js4JT-kKA?8?{(U2jhk1 z&|hjZlsk)6OU%5iNU~tcL7{|3liZJY_%laj;WypeEX6#>eS&%%R%&6LcWfPWza;T` z7jx1?uc*yQ4!@cwpI$L{aE;YZy`;Epbm8eD%MxzyJj~(y9l27p3PY{OS6HI-byVSj z?;gqx;-`w>V&D{qF7Cir21P%ZffhcRt$V)IF!~ zXI3Wo!90OlMOo3OSnBXnPM)Y2hS*SP-Ej<~!%)=C$kWsuU|FN1JAb^|et>qEjKU5a z>}q&$iO=WD#MWW!U0qV8|4VHTg0A@^=e#K?Jt=*bX%jc)b6zN$a#J&PM*5#mgte*=2@k4=)WYc3I7$k z5ARHLnsj+-2lr4*kXi?_7-y4cf7u2dEReMls>JPhP!X7Fe04UM zN;?~;fPDs>ef#_{a(!>_UM*Ei$hLxi_?2GOcWlY9hFmHf2Z3+kjqu2rInA^X$KVPZp;Y_oThyM+W&9I z^8T+LC@g3L3Gv>$r((bDR=)b` zu?4-@gqv?+kHqmmqMSrOXq0oElEqK8n#l!_3=s0L;cTUdXWv6^?5|Z1#3K+DPliLDWu6NSZE{llGt6fb+CfZBW#zXbA|k~Wd)h(!aVcVs z*|Xn5M;|&AGBh?eO8af*!b#PL6Qvrfs=rPv%e^mTfWDHr&hZ-k_RknEn}L~}No(V6 z1Aj=0WoO9*-Y-#&yPG2EYN^njlkqrTVf5I$CLLpkZ?iYAf`P>aXueDO9?hAV3e7%* zyW{S!Smgs7ya`ifuV245O;D73=kluf)J14k`QY1ciZ?Ll|GZL|q1}aVX^|zajf;*| z-U#+5trfMjw3sG5lzSKWsu1XZ^Ac?eoxf8U3>5q#O|=Fj#KvA+dwTv64-d~ovyW?8 zcV@=pHicn;r1NKLW`CbA{43RB8cBtPPXtVB=)L*rv#to376Q%4R!94m)r~(|I00yZ z-hhpEa*vJS*BfJcCKHcMA6wQhRgk&&a9LCOJK>Z^HS zjO(Xq&@d)+=J!rRQ(JTsP&0x4kTHT8T7?_POEAEt7TZQiNxYI*SmRhc(K09)w4=9ltCgdnHhFW`c~bDYGG!f+FIIs^ zHc{3;Z#3-h;Ub^Nds|}O6u|JqLd~05a^;&fhdKP@p(;M->wJHBrZ;}52B}ByM)4&S zK~nbLeGnG?B~KO9HfcW9ef9QMmjMrsX`w4>OEu=82$6P}YEqwgLg&dQr|F)W@AtEF}IJ2RF$Z#24p#2=nR3 zqx-KUq2#x&TIITpmnS55_xNY>W-UO2cAw@?6MNLJF}+ZgA014ASeZpl@4n0DRcA7| z<3t`XSnQ5sogPt7kJ$B}8MY%iA+7M)h?91U0Evdqc&j!YzvN@BH9@XqERQAGo$@9I zigHBV-W&6CW||^Fp@<9Kr1?oLUG?+{dr;r~%jCfurxWk*%;d99-o6ms`ba zCDhDPR&g3nzu>!Rv!MOn9(2pbXXpJoFvV} zVY^G>c0LwS6F?x>0)AK53GWt(^4{TIY8|2^fNu%-yMB1AQ%VkD#4-UDUy?rIvo$N8 zF&FWq4otES@?|dEw|!S~*Xa`s+=;6#+UxFC8|)5$Tu?8~vO@f9mby{Eu^nKbZ-I0f zGLW0lM%M=wP&iyZz}IAJLsLk#M=I5Fa#{|gZGKhvKVS?=VZ4qfR>A&CwTwD8!gOe!m_b#ca3E`SR7q2YXs`=J37Rki^iJ6 z&&VWg)G-sD?%uQ_YNAF#QWIMj@iV4!qlBXd{qhS|%yWg8W*)4vpBIvtElF9O6pj}k z0@qsVLRm?*wTALT)AK@nUwQtDif=Y)5|WyGX_V)bkpR&{u`9)GuPbOTtpA;$k1qxU zu32JhD`N$>o_^L$S{*5Co$%u;IN-(`c2!bRB%0=wq2(y1hIuiQ^ctuK5 z2-hf>)C8I+g4GvO8iFPsPp_)pSWSYNMyABiZjsUvY!7S~&h~w*)Jqm6BRIQoW&KM2 za=(Y|4!|t26O30&A)?%?uR?}qjx2O(Rp6(;!7DC+R_*R^%DCdQCfY_6t)8;sCrVOr zm$(vrotXdnwj{ub5vb3N;z!jxG1K8h*L; zNETxsor8m0Cj12o4&FM7l8q_fEmWOwS0ca|K1lo(AY4)RfC#}PX-ae5ANoek_d>y> zI?#mE0ka|T*O7Ci%8cXLaCA*%3S=6tsqS1*8XvxwQ8MMa%_{^IoWs3Zl9)GcexF-6 zPkd~bu_-o|2Md@8ogxLCtIx@Yie|^8*OO+-Vzx(EMjl}{{K3V=6KPx=K{o%`%Iv-W zg0vjQ`(4`b>?BM7BF1lz?hTV3ShWy=sH>uBK-QM%t{`W=O;)(x8Bs47Y~))r`^1Uq z%e#bqCYsGDxbAY&?KkF0$xa$B< zE}~x6f3lrq1c{92x%2W_*nf3!T@96{yK#}2`uv4mu=JT5vXAuw!g8PfS%6;pME=)h z3gA!xP*FkIBVbo(D=Gp;N=^}XHYyP*rR^rGsp-Mt z@J}`m=@*uk_;`4V{x>TsPa_rpKV@e1g0vNWq|B@Uf^9+s>Y|x*cf0L$XeziSrkKhp!(ynOP3{Q~&7l(5A-^*Ok*S@9r2}gr+ zS7=Z!;$J8S+a6TeU(SiSgl-M+0j|MhMMj=QSefhSWCBnJk8L(qQc`+&mif!iQWH@w zF0LZ8ddNe{o-FZB3)+w-kXOopK%nFQpfQDnzi6zOFc1LZ6SA|f<>6db;&<` zobM0J@cerX=KY=9D@v;8xRj)1IpV!|Ukn~`+al_&P^d!(g~gqiqF5=G)gMkF|6Z&K zG`d$5lUo_vRz<<9sq%5P-dfpgI>+#m`-EriLf4ReNokKZRb9H_hM4e)Fe}twXf!it zeTQPA7d;s_5i6!PWbk45fLsH#3G={o3MH zBeSl?YWoqnaOhR0mrj>@KTyRj_dA}y&I}gRtC!Nt$!&_^`~2@kp3fI@YG2XM_c-8j zK{u5wu2vhy{WaW|sgHzB*~0FzbUA>H|D8hT-Qa{maN`eU=jNv0b@X&@4^2LKzFObM zS?vE_4$Weud27SWWwq7Yj-`{#7-Kb4o|VfV#!h}!{&L;XugcR}CM#k%D0P@R$RJWF z@Bx@AxDn)X@MdaaC$WvZ=>t_+XP*eLb}dw-IicVK<)MgJyFt)p2 zxD5|-MBUqQe6ni63r*oCVtv18Dq45e+@X8d6GIqcyW7X3vou|ZrUguqU%g#Oi7~u;6Ytv-&b?AdojKjuy zd!p@pb2O7KtJe>>`XUPOHmB^8kU(e*!vj5>A59G4@rXL7-hOj{Y6&1dVxl2<5hsvtIE#gNWjK!l%|O; zZGTN<;qU2y`;=zqWGi0!r`MTw2k?#T`=-sxe;De{wutcB-Jb1Usyt^cE)Dgfr|nG8 z-D08{z&8gl@{ec|{)i@~;dwBt)x?9xgFp|u4+S~^zqbH>DaycIu=5fU>{GdYDiX%> zF?#V;O|~KbaO-g&FqiuP_2K}gfBES-XDzl~(~67hH=ZUuo%DaqDRP97{?Fgte)Zfo zZ3(Ef9p5dVSG+{KKz9DxU(QZlq6y&X$2PyFKXTn88k<+hV5Y8p4FkHp{B3kk+4+JAQd?0>y)D&s(7{}H6WPD*-@*wwwHDd?R2 zK{D#>^T)tg3ckFT00D%3b--u-(M=-=Ld{v&QWBwzm(|`ITr$`zq=l`*;Lg$|Ho00TDFM0u*4Bie-+*G2; z;3CbYCfPj&dN{~aHaEjh(z>+%XP|#3+nvt`t@cXV^CGN*+KH^bl+WjtX}NLm$$yLh z|LGwxmd;X}Jh?Xi(6h;Qe4zP2_8%+A(*Kva=d{?C+21!Vp~8)nH`#0HvegvZ%>VEY zU4>>eV>z2s`|To4iRt9|MUZI*$ZJcnsg!E_4`GF7A=Wh#=XI}^vDeYGv--c1Xw#R! zN?fCP+Hlby>zp2?%3Gj+7yl!z;i!L^jHaiBDX1OcU8^bVS?zxtR^VTnZl3{Y5|2B? z=%}2p>ra!)VdmBQ6@jYXCbZaTTpk*(Vwz;V>l?6=N!L?g9%-!D3%(sK4iH z>qBn7?bPG?do8v(iL0gubp{7@gb;Ihju%nxVHhJ#;-&u~hISEhcYX32Ptc>n9D1|L z1*Qo9SnF=isWiTzcs1S+2A7tXzbZE6Zr?3eXB=(Os%6yzWKT!;Jc<@#pVxSQr`aQ| zoxkxPX${h(MQg(s|7wikD8LalB05g`z!jJ$4A^LN?u=%isJ7QG>vo)KX`Gvzn_L_$ z_Z4&asW1&Em-T1JmAJO;b%5p9fnUnp+8M)1R`3;{v**|(hBYOzxonVzhsNgaN@aE2 zI^I|C!*kdOK7?f9s6vcaz~iJ5WX(PcVv3L5T!$#j%S(TO7DT9g|2h%FNg6rMzd?H4 zu8Qm-(-M%$!cofrO$HW019$hzfr^NC?*^fx76pv#()XmKOuD+dR)1!_nW%Lx*e4!C zmBBaKS%5D|-uQ{U7!b8#^H3#*gE)(}QZp5DY=yM#*+pFye)KJriODgW+!?e|+{ay< z5!1${nB=|R>MA6EkS`8wSuH^UAoWuE`#;7*ehpk<{j9VA6f{#nL2cCEp&$o9;qtBd zx;e^f>gxIf8FFYqUeNVPlXI+M^iF9T8ymFerlu*jd+(UJx2a@;Gqwq8S`SIz+}a}I z>!PwzpWF) zA-9bs!0V&4OD!KgdVTU7Ywp80{fN6j1k40c}c}qNI0v=i?H=JGQ`5ah{^L|=qu$YRvtMy ziMjlB?V}>jII&gT~yz`Xb5_{`bzl@rurlFQr^m^-#CAx$qjcMby6-Q-n zt$=C_j8K``lB9BqNe$bqe%Z=t(x2}%1fXX(@85Mt$TyJd$js}SphLLa_D{v8{nZj; z^E9PjxDuQB@K|0!0j_q`616ekS^J{v;<;-gcdRdBw8|S7St+Z=$f0Ol87R6JAIrAgx9%e9|rbSGW=q6Hm%!tfUs;*6Qu~5WtbA2><$3_TM`jg@D$= zz@vlvAt8E%DMM5|Ko*_6udZHr8Z+k29sI?2;2SQ1Fav)ivc@q!z`A)VPp_a$Z#wEu zoe&)m0L*pT_E-6$*d(=7RaN(Utf+GzKSjmF7z2WczAlx$(39l+J?z3h;&2af{xO?5 zexerT8bmh3k5{V@kcVyiBs{KR>eaDR+b9Ip0F0?aSK0O)B~kyg-nj&hZXDr5nudfd zskm^;uTksYoKkfIEbKG43Kua+%xE3;UM!)e@Zbvoo<83Dcw0c*JLB!0zaUIE|7N3t z+odDs_pb<9mgeT(kvlxtik37v==W*MnLecMNC)nIf*+EnOB_)VOWV~xgem`}be|e1 z&Il0l8dTIp#ISbJJW=R6Z>$&I(Z)I8~*qjzt6pmGux+pJxr{ zgnDfkEDN80WI;r;wZG>2TV453B;&B=2^x}h)ZFm+(! zkh;*y%$GOaU0sbgR2<30Ko(*8>Dep!yI3N;=JWt?XRz zO=V}Rng`i*w?+Wp*#=6&t4+9a6hP5DX=iuW7Z_bLfV4KaJeYGC$P!-P`=$@X0Ju=g z!M|q#h)bYD6GY(VJDQc(BZG)&V6A%XhIY?|^K4wRa&to&Xn{^jBF=4q4`yG6-I zm^IQb*GoQG&N(sugFAI23Hg+HG9=_q0}#RfpzY(&Ye-5lza(CUdHwovAulg)Wl)9F zP*wHaf-6uD^`CilislxSgC&qp+UsLW7BC{(w8gh_q|_uw0zA<`fdNtkd=E{4?=-U} z$beB|JzEzfBX#E0*+zLsocz>W4i|)$;wCQt(ah%~v>4#Id`{W<4KU}AtsUf{h2*5$ z8|vObP!mM}2-$vqekr2%(d7+u;pZQ-Bm=P}2Z+>9kz_345(|s{9)>2o5-W-tg}gJ$ zVil+hHc4f49a_Ad%7;+lQ8U3-9p$JFsQ@9>+giLCzW!C*;pYwT zbel!GG_;Ce2skk{04IrJVLRCU%^o3vpw#~fBd5_hr;e2?yavF;O!geOhO|J#THXNc z6nd~q_jLl;@)#~L7NP*QTFH-`3+Jn`>tm%%A5u6aBhO|7#RF$lz9y?ABn>k?6}Y7d z#ZMRl$#iUP#Q?l4slLs{WQhi{(>@-|WGQBkxt@N|Bk`OL%k2JSkpLuSlBCTjkvn5~RboSP6^UWzKD^95G<-7r?V8~il?1nm#T zyof9^H>$9dqwJ3&M?lmKru>_yUp22c^|+_R1_99wsN1DxP-XzSLLu-cNoXYhr-y-p zE8GNN8mqucZ@@DDvC0Q+K(_Mr{aHHdvly`Qbk5SzC zn=`%TEIdc|^{ue7O-JM)N*e?=;Q(N#&y=6a&QySF*sV7u>Vl1rdlCguKRyV~n>Cq^ zHdatzO~tc@uL4lv-@PlrewqKu=dl>gw1WpH3Pbj@08q*sc}-MVsC7Hm)+8{ng-YE) z@`;O!Ki2)C+Uif-UM;Cu4d*NW884-uD=~tcCV}cttoJdppuyJ7kCeu3It&C#p11*P z(QvWh?udBv|9*l;+c^pANcAtEmbyYyBI$^4wPFI zz5~)e|L|&A6dmyYirn}`TcI`69t>8M0x@)=#jm;?N!>rMbi(S=Vg1uR;$|5G=si$h z%9DrfFaOL^q_V(&XAZYEZzGsT77j6ukc)rqCRlutmY8@t-+o!hMfb>QW3HWbUK;-< zx1^%Ylug3rC)(JGJ-cwGK9 z6N&Qs%eS!r=;r0)D{1@brs-mQ6_oKu)M0;uQsjv8do&XiD7eT2se?WePT2-l|9TG- z4UNbtI2nxfod-?_oE6{b>Wst5@dC@SXo@74pvs3A94C{YnVp-t4<|2A`8{Y#1}`cjlX=m6O&6{cvYK@&6x# z`!EP0C-c5_Z|Z>5{;nmPAUoASBjreg^b4Q=%V17@>#P<_;p(^r<5LWV_ z!a6!0z3{5_Zt;s5jwYzl$OYZpPmepLal+mGO7~1!&I3_(MT+~x?ZwV{_Fe8cm<_2u zrBRj(47gZDl6LRpSA2sew6GtHzy!FUX=4ES4Qzj91e_n&@9qE04$;w)j*f~NoI2eT zfqL}r8RYhB@iGU~K`X;WAH?04)plnCF|({yms<8z{W%%^1WaB0x0>(}Z1#K7XY(QC zlrqj7bF$%c;}0fku30tXqKy=z@ozmu?*YV7fOv`buC3J3TFILSdU|?vLbjSVn1LpH zslzz~c-rU;HtA4zm#0qins%<*ojcD@p$t%Zh1AS7oAm}`6;3+#_G^DyJoS^@*AjNW zf?J@5i!4H^xpdRU#|?cCe`a7@EeX6ID6zP#o>Do3dueT04#`Pr)Cd7We$$Rk5jnMU zcw|idkSMr19c#C5s-#MaDN;0<+~4{9PrIh{rmGf>hr`H#%fz+(O8E%t>ly{db-$tf zy7OvpbE*K3`H5P=*@l=r0VI}jFx2FHX)**pioz6c64CH zgCE5#A!CY`E&%XorMv}S|AQw*1I3`6zCN9y;X&t1wkl&+M*1j6@_u&@2OSaTX<07g zT3V;t?T~8EM|~XUGcuaz7FA}xa$t`Q<;MDZeJO9=;W`E-2lZuPejz$`RZgoC$5L|5f3QQOq=vY}<(?h~1 zMioheCq^yt5;!ShzCsU$9?Ej6eqsCJ0NE&eXHjP6Q`#G!Zmf9Jd|v03e)J@7(`UVG z=w(dIQ}C8KGZY@G1ZNDWhL#_n?y|()v8x-Lm|%poFB(G1_?$%{1mD`9-t1eN9Ic=Y zIS2@XA)B&1>|x-_-eZaKe|WX$S?GuPW%Ww0pXNV|72&Vl3pHio49Y4Kqu1F2Zk=_) z_7Ni6rw)pz1856imn8~Vn|CGf35!!)$f+%6$SKw#uI+AQXV5h31s=O{WFugC*@c3NA>-c7^5A~}* zGx$D|HthkP=5^UJwY0SCe+2bz5U{-MsJkE#OR3zMuDu|yXSPGq;)K;5qd@DIQQO3=NU^#NX$V749v-~ zs=Xa0`|2u1?&ZC=_$FQ^&67_K1-~`O7#0|vd!2zn8=D%{aCSO2?FK7ZCMiETK7RS~ zWdO8*%r__Nv`NZyA|^}lI?nd}1NCEbbkr%BNUxk17CQ%49wVhkc9FI^Xnh9ttI0IE z-Eq8*_?Vw*Sj1Rj*mDoly8tufxXU!zK5#~uLa*f+5l!KvZF9NnEG!r)5(d_b+EyHD z8s>3%birLEiS6R?pNu0e%F8!k!vbZ7TfasG{t`qnV_f0n{Bo_JHhq5`LQ1Yj1T>KF zLA)aBwZVYIt~4MfLQ=Zr-@bjz>o_INwYNn+cy@d)?1d$IqeuoHqu5X_@;=1jWT>kF zn@xP|ik@@51y9$Ts@q zkW*kN-oo`G##)k1xV($F=P^Q40)dGvBi$sJtSdQR|wl9bCROV&j z2Pv{wiAFbX;+ETwux92NR#7t18Rfnyw4>p*)zr#NNhMXh!8Z*WN`s}s1(6y5ULCx8 z{UiEa>@nRsy6DfJ%^L$S0)KtH9SdrzC}^5V{+W+O+|Sj`&0|uZiyASCFHnJn&=^0$ z;O5@@gC7npyjiKsmvP6zu=>-A43gWM3JsDO@S7c2`D?)82nSew)R&j7}@QH{NfP^b@Te??Q z!6f;J7Z$PICD7a0(NXVDZ#P*hmj2;G5wYptlcGdS8o#Ej17pOCQ&y4G8bC{XZ?8_l z#Q1n2&|o?1X9GHog=Sy$y~S_6rp>9$rL}V%#JAn{owM_c#b^>nx&Qoe!)|b|py5=1 zHF31uBR4e_k^&a$?;fimdu)pA@pEL42fjQb!dbm~|MN7If#sv8j*hbWNgDylYz+vEQ<>Z^7!z^`-ENxOZD?vVHMn%;3O;MhsZ$gt78V7w$=w9UB_{u4m))UC;zqk9 z6CU(avaSE`B%_e0fSwH3)z!7%j)sN?Qs_XAtqXBw_Xh}FSM{z2j{cVJo8fXDJP8rU z9s_<*4yxU4phn&o7i+9)Lm8!b=MLe$x1vwm+m&MLNe$dwT;!649r{Wmp5zU7e?^>km40a|d`3TgPks!E-+Mf(vR2_MTn7hdMcYh&OgkCp%~z?ySo- zuA^g=@NBvK?n&VD=g;Z(jq9IO-L|d}Nt)UF8bR|^#{@@EnmkY*Ls5};ngbjowCTSW zvqoM_k4wK)snBmR(Yh2<%D}YI;Vn9H?5CCJV^dHbUa~QHbSStrY|;4X?iX)YeqIY) z)bxBu>@qNupH<&Q0bYMN!73_B3yh{se`ZXz=fRfQ$Bc~RrHCS|)YR0#vXY&X@7x7- zpC_75+L#*~pK6`m1*foV`@a`Ik2uB1pPi*5-y_dmeRj&3NRi3Hnebp*=b;pZ<-i%?tjJ3Ueg@>ojz^U#T+&`tj9dEZjv$`5VCUZ;ubcCQoByCV2&gBIgBnt~mdrwbm#ydYk85x--yQfc|(u%o$^frPZ1vF~XQbci)KD;;Q^dRkK zb3k%fSlAj45)X)L%CerCR;nm+bikj7VAOACVqyZRyCvju_64ksB&v8S3zZ%^IS0?- zHM|JAK!?YQ*z)r7g}@j?W+pV=+uCaUwa^(88yf_x`8jd+XXzbHu894x={SwKwJpP4 z4I^`Nt#%_uwEGtGA^S`Y`;66$>~s1B>3a#ha{kWNmua0>D~#)zhMqG^{{G(EOvX2R zwp@0Mvm+Y}HVs<1#TZt$28P3Uk|TECmQM ze;ldyusfk?*dg5-H26aI_puoN9WPeP-^V)Ic}|XA!yT{wWcdkyFqS!yn2d(3u4(U? z{~7(nQ2tk+&AJQ^9#vIUC?d|9K-c;Gy#ij)-afo7@C?^8AqM9}nLP8odj0xWXmwzh zf&C2~e-@cUP5PVYTA(AYb_?QMUmP858xiOFzA;%x^y!xz*)8D5z7?3r(5GfP(mE4; zdUxkmQyk{*=+_P$fo7`}lJfmX#)!1n=jTE2F<}S!2BP#W*z>%J(Ii2ci+^B;SAYBY z#Ky+5>DE+Nr-R#-HMndTqJxN~M?B)wp~z#W(T}}z=MMI&|H-O}uz2`3t+UKUB!pPh zL_IrOs1XlZ7n-Ox`}XF#z6_qElvK>CSAiyee{jHlZl=t2Tz(f^P*C9QyYLUyhYbrJ z;NDqvz1Bwuwi@4|-A3>G5MsWF4O5^HAQ@Og*RdH)aL(SHvX6Hfm#~1^d}&i+z>Y%k zQQm@XO4DBYXBEDM1D8CX;NakCV1yHd?5Gu4=V~zDrlf2G(Ls0O=ff7?iL=Ti<=wxI z>$Ze>O^48qxH3E}to;Qy7OnqT=uO2|ctIazbA^y+mV%;gR|XFkHyzX}!jh2>>AV|L zp736Xd$cvRgVT$#EasV{U3l_bDfp|16QM0@48Ge^&kZmbQ0_Rr*?GYr_JeD`2rnsR z%!9N7!?cz71Y`eaAIIA$a1uIkt%~xfuonR2_d?)@J~~Pg(+Rc@-s06$AgL^fH*5>} zK*mHo`iHadFy%u)tLRH?RL6kyH&lRjp1v6r4v)@G_GeaBY|90t_J%DyQU@HO!B|3} z8AoJ`g-gu4VReYPae8tAooQ13g9l2N+f+%z+PNj+&y-6C>It?49L+T|f5QhW4ua$lvx_Q+DiA> zes=~d7U8lBnLw}o*fE!9dSi%8^zjc#A9BdabsG08Jh1~LQGL0OFS7oKhSR~dKmu7w zi!PzhH*!qJ+n=#h3NRaTv63EQj}f3w?>k62j*HGOE<%bL=Cr1ld{n5lSM(YR+L_}& zJAtG3Riz%(lW?fw4(3t}avNcOX?}V?qpN}p@`IS5LUoxxF1gKw1x1YX+8{^vImGme z55Jk^sQQvt_NjhScq~YC4$GrDJB|k71QLim`o$1|*+znwi1Gi#+Z%#2I$@4?BwC(y_ zme@*f9(4PshfMsb`cr-P^mZJ09g_BxUTNoLi&sf_@J~rY2A_BSFN0h1BO600A|g`i zFvgpjVeEvt@kPFrmd#0Y$_>)E>-LQY2VtqTX3Qv3c?K9`_-mhO@ z${ofE&A$?gN=S??z8DZSuQbxve-7D?(3YqEApNmpk13M(-2Y3sF?xJZk;ICcAJ}k) zl2j5AJ$;JBQthgxb}tOYPV*FcC9EPMG>~k{yZ^X5x4bg}@}@2BnohqRyqq#HtH0?l zv-1ukFzUbbaxRe(!7t%#A<>J|&KUbArt|~yIw&PtT%~^kw&Z5oJ38dRX&l^TCxG0= z($Ue8%PTJaaWjKY+157O^aR1~ot>Sf$sFt`%J9O)&0b{5nHUxbMgX@O`^5L{NWoMI z7gG0&M)ZEDH9IsuMYdRzlr~LbcmqdynI8k@9Bu-e<>20!^ylb^Xt2U@qWJr5TQ7*? zYr{nfY66eh!|P3b&iru4;P6Pu|0{Ocb^`8!n1Cz&5M3sHWC*0jzmRqR{%-Av z-@(BF{vdEW!s55PA!y=--y}cz=UM@+e=`nIz=O_Up}#MHE^Uad?at|up!Yu`BO@=` zlxB^4nwv}Up)RfA>pOCKRQ6bnm5y`Y06t!0&fOTFn7~;rF6KvY7F46nyQ@P32=-A< zl^m%|zQnsaR3I?=-_jlRdC8`6hY44uZwUz_+I%N3HKpiatj zzt~qY+rq~wZUNyQ}Qt5^T6ne<=y6^<_76N6L6TR%r}8Q8{+tKG9q zfwkrNGBi}-D3T~brdw~QYf%UsNPijBZiQx}(e{{AB^4!R z!K}HQFGj%eGu4^=z95o+tGR9;6w!~jRSr%Tw}EYphCG)ubno811Oe-N6OQTEhDq^F z(VriHd^D1P+8q&d_zMaX(;|u~!jwFrbx?semS7$O=ISHb8hm)|xNiA1_*+YXGOeA*tMC5D%uG zsQK`-&L{AYzNhEW+R^3=^G0;wHJp{|jGW7#_fl;~KWi_ptZ?ea$H$K?vyVbuxdo&t zp)H6qc#m-l8uBHECu=Hf*$E(^4%i`;UU-J^5_&#(Z>AaE2E5x))d~xv z@xxf*{}Bw)k>UR=XpISRr4GpW4!+o-X88d}8aHtb+1O?>zKfmJzhmZDTw;S#4~4)< zW9Cu6E8-%n_P_r)d^MJ+Sn5u`tg8xKTVcM#Uk}v)DvcSl9R;SjhD0w0O!TLxNO;-% zVlU&&AN;2U2sO8D^u5Z4<){#1gEPil`Y?z_HC3_k1dlwm#)H(rZ;Z8)qu!~uW2pki zXKnoSc&FE8ZJ2L&bYOt$?i;SGlStxnh&6QVkgqcgc4QSlqM1BGZAo0y^V74Nuk>U)fedQ*wA`KHR7KO2TWy6#DLgqi@CBu#I-~Y3+f|5JKXaD=+fH2EASyZo|S|3I=@#jQvC) z)o{noR!6DM?d*6&Eh}~00b)~z{{j;?lm3v{bC69D4JMh@3)KMyQt6pDiU;?MCLr=K z5p*iFMYBK%)27LT4)SlsJ^mTI<@^XRZo`kA842&VfW_l$* z&4@B?m2}QhHqqN2VSgt_?=yE zo1^#3|AHF4&U0o!k02GIT1QjuOTkAw; zvzNs>~-0R{>J~1D!l|ZEdSni+&=Vy|t%D=TsYOCkfPl0v8N14RNlqj2lCTaJngLV`D?<-o3&4m*|(OYx_6urh7-H z004XiMHw7Dp;5Ja(XKkf=&tY4wD_aK!DhCphvLkgj`i8bIhY%zf@XO8ZJ{zZ)gQ)q zPyFk4vrFZI2BBjJsSElf>@py(K0qh*3(*BIUcK=*20G3;Z<#Y=*BS7(qyi+qkro)l zzfSA@v(tXM%413Y_)Io(^FnQ1-OSva#r#B=eNK1@QLFGn#~LhfqRb{V*v=sALIdAAtc?P_1 zDHH1j=7R4O2sCTwtgm`}VX1RtkiSXN-J;j*@k)&`~sH=VBxtAXwM zk9N}*9BYmaJv;>+ScKdf1u-L*^D55U0u*NRT&krBsldgJdQ!7SGg?wK4qRwvM zy?;~F>hmE>EEXQ&l#Z`r$Kr9fsLxLBp^yxjOiP$WuFI2%&VT+X9+?Df#u@aCSTbRf zg)~2ZVAc~Ia}^c$W;Py7$8R^*Z;t|~qWR`S#XAo-`YP@cBjGSnnWF@}UPIkem=l-y z+XZ_W-{qIyMg~wktFdOP`dRWz8cK3`I@(>ma;34%ZpglPAGAa8`hTEKPxn7NB_l+~ zTA-4!0D1}OGTfC{Elcr$qibJt+%ZFK98BbXz7@WStQ)$`0^J zSPXk*ktjQbH_?sud=BCVjB(dx1j8dEzjh~!46H&Uj`h-|g(e*25%wF*Dh7>4Eyj%A z)4(cMKH6sGHmpQFlV^E!(LKd|754?L`YuTV$1}{~a+17>iJ6U!d~U$JbdCeeVdlYr zhHX>+z#qJF^(x=b`a=MfX;47fOjHX2)%-nM>sr&0q9%>kwQJi8-FJnD6H3a$>BKqI zp}vD0%^>QGik8|-$cvsOzq8=_dVe#TT(7qhSCwc%5f zq5Oo4@y#7si=={bjYeuH_eqXNzTO3oq&D3pWlny_4(!*u|D=Svk~@=xS(*Xqq32Me zkJ-M}(9Ba-76n_zLLD)1=2L4R!d`Aqz({d{74=bEg6&&#xy2L|L;YtAFsHjim#B>U zOdbP%RT+{#lYa{6hPF1;kXr|D2}Mpz3s?hR@x~1nNl6B2Y3ZBq-nH99(oh^gl19nP z4olri=l6NhW>dd*)W>T?=;GfH{*#p=ZZ`Yr18Igtg|@k*BugGX1-6Dobu*xgq!FQNtIAgzEEaf^A; z1=V|&7ont%!9~gf>bEsU5l2nsLjW#+Wspe)hd+Moak}r>`$yan*8!EiG@rPwB%{6i z^7bvVN(a7I^ASAt-{@}r0==4MB%2w6BrK^2pUE@Y0K6agS%-mv5m-cb7-$?hJc=oJGVa`nUUAfIu>t8$HGu1zcPyPB!D=o{-e3o&3 z!Vr+1?+B}GINFfN+3@=L;}W!k71V$%;RVUy-yKch{PyO~r@$E6G6Jad6cvLHL*MVb zUp1&GFG6}Zw6s_7YqgAiWjEG*-f;Y+admk`8)pI}T4vu=7QezGvoVnPqd#zNhPf;1 z6ru^OquoEfw?K<%{tF3DV(8;%?OgxMN5!R4KYECJo{G%xw%2^X5pd}T z+ilEw)k~1VcxZ!W0XTsW9}Pi@$t^G)oSdA%y0WZg>CdGJe{^)P$dtaK7Sp+)boZ`6 zW{Jf0>nalty=lo^fdHp1(bT1&mzNicOn$7iR1ox-&CRW3V@33E$HnRpS$>5R(LdMf zYI*rZDs0D}QT%WF`It2^aOr$wy)Rk5TYtb&Nw2iR9p)jS$4qDhS7(LlImXRBjrL;GO~(c<3E4?AP6o^7@GFA zx@u^Y)vj#Ge*tD7$j_e-9v&Xn4_fE5XuT*TL^V`k0#1AjByqQ!_J&Y_?#E@!@AcXFz+gYP^@E2;^hu*H$R;hVtg?rCdU~KK`|`#fCnu-8ySw0qmQOn} zd9bZ=w1l8LQO79yCd_;%y92}uo4vUT!5nX=Mxeyi^ zc|%Q&9L{;Td*U0=GhxbTR_WI_1u`?!GWIe6%gBfYiK?Z7s~E2hxgs6ol}=Qteg)}= zo00rK_m&(}n%_(XTbRtkSsE?1V^nBzQsoNCNb~nlM{3>$WBAY)_$zK`=5+U$%uO-qBmDrAixlkEeQ4;-0A3JI-hPiPak^7J-!e? zUr_%XIo1l@#4^eUR1a1>68vco%U5%D^luSY0{<8Z`skb?0JUJM{72Ftin{?azO?cp z6?)=aVVKYiLg+|+O=c;LJ}xA@K%ItIIpH%*5aHpMHf|PZ0IoYrn=1pg21ZMguTJ)D zQ`3uJ8|Mje${i=NccpYa_!EgChu{+u%0pbZ^`_qoiZE6IGlaHI<~74a?n5ztC+dP} z;-9z5^K|fjwyA+d>mEPq=vL$x&;Y4SrvKNKudXi7aVrh*>3DT1a2L`EK7_B54fyb< zMHX$d+GTjYp9O7$3H;Bl*P;=6jPadMlrT*J&(3!F4StEQasU2%wJR6n?x=WQu~Z>m zA9S>fndnf<4pld9@MDAtBk!6jE#?431qEZ&t>1;`(~t~ph3=pYe!P9I>#f**H3O&y zBJWu|5W*e<$l40H?ILC3smh4=A8*5J^`DI^>_$oFg4%`-rEd{bk}-&0T;6kaacP25 z+Huc!vG-jx5Ybsfn^*~2>rY>y(D~&jEUSN~6lMi>JqNR^OSRnMy2U&dW6!S*dI|zq zSRuOsSIGSKbh{RJhn<5Xd&yN`J|7QR8#Q9RU98g5Op$a#8U@je5+T4}jBP1ut0@%L zWgAI=ev52tYm2v28<7X>{*?y^FV{tpJKK3W$n1~1+4Oym)Z0H;Om;%JEPlCchVa|4Gx171kI{zKcW!t(?=5*S&U*{R*|dwDzJS(^X69Q%$q z6jw0f^$6q53&Kyi>sPOK+{`EnqzhcXWNbWK<#rh^u5o;m_e1s5hv_>{z1M%PglE-d z4E|)=V{l$tTAB-GX8LUquE<*ZXEE7o;zL>*3fOqf0;CqA80dMaCUNnitduu9AK!P@ zl2W1DO^)k_pAYRf`ujEO*zVH0N}xf?GlV%P(JM5?Ff=smUj<6e0*EGI$(U#T#09g^?AS7>uxbF5m0}|Y#KT{o4LzsWdapCO5(f9A) z<31aG!z7jd1)kpv>Z+omqLr5t?Cgq59>i6Q*ueO-6C!P(5$Fm~gOIg04dJ}f5c2zS zaRBTF4hlRa_0cRriG$9gGI9z3sjPqHN*^|@oiO%+LEG*YnZmbS+!*!S8?oMoNhB;Z zk*G;O5X8FM-4DsE4OB$~@5{@SU>ia>goUXg7=pA7pNwqivC8gCgDK)i#WAn$B2Jfs z2FSaIs|7?%X^%jw{Nz{1W!RAm1C;g+$Gid?DS%62RRkhgEBX;20+K~ zuf&8^v9Dgyx{gKsVqK?0wgwa3R`giuznv4Y1d;)dV<&z)g7SB;9Zz65&1&M;c%It< z*QS8nb>P1AHXO(>_E!dSV&da7j3dA{jy7tnYR(|3^czj1)0=y2hb6EAn$dyZG<}bO zJq*_B<$#9&&!?mEfXKpIS`@*r&0u6xSkw%(SJ|gSX#YWcy9=gpCeL*lX>!ITh&ZJ} z>`&JZT;E$Cn*+(g)7aR@{uWo__tk|tS|NB6uoXB?7|Y-}=n z-i=ve`1_F@51Z^GL@O&1(%Q2cs(tK+*4~W5=w3`pio=ImsbQo4OxPEGA)Pv{MA zA0LbF={F$3Ym=2hS0{D`IkNc9n53lV0RgDIp#@hlSp1)Fx9?W_TsU}ed@?esBWQdc z@$}rkGCUB6zJPp1XdBC+;+h+JcaReL4k0A;-{1;|5~n(}#GxQ-$dAb{jG`^Um$~r} zZQNz2ym=$*PR|L>aa`o#iAG437~CqusBhoYTH4xH87|PAJBI~j6r5biNxl6QSX+@M zn+K>qu^}1d4FSvs3=;GDwPjG>fCX%wJsIxlq5l3V)9L@2J2eY5l|bnww+`L5gM+zf z2lsSw{)@w@B2G-Heuobu?BBhLW7Yky^e?6{tqU+1QecOcT_jwwmAG&U^QbLvt{b4k zwAKfJP_JJH!wR8T${T8KZjMP#Cd$&Z-BqIpjxO<*xj8H3KA_c3$D**?{Iy|W=q68v&zpEW)Z_;s<4W&9_N=o>f((g=Oa zf|Xnf=gXHaJ(N;(1#m$guDrQ?037i4pn($~(y+gu-4&Mp%T?qaJ@Hd)Dhqkg)k$SvQv49 zk^t@|d->*#RZyQ;T2ggcN?o>_L45+W5=OY9c`OAx7?B-F$^s3!ha|Gu#l`7hjB#x?|2C+0 zK})ROw$Te-T1Imo#jw~yR(~^S^RC}y$wX;R*uF;|?O+1XPf5lu8 z>lx8vSR2rbQ@nL+4&vHMQgSkV{mGtzpyT-PN4Lq^$L9bge6<@Y5P&mI$1Ny#T!)M* z#~shc%KBx+8VfeCT-{gmwvtlV;OfJN57%Y~zrJ)_XOY1&ekv@+L=l7V|HZ&2YTNh< zT%e%|g&EzkWyOJIg7PVTua%vHq^iD-5wieL$fFapt zm~g-;Ba=Qr!Caf*&nN%N%|E}D>_AXAo#X(QneW6Xa);fLqXFodJD9@0nuA-gU%uQt zHfFFzS5qlOI}Tp}8U1H^=oz!KkCW_;hnZfy2x476W5P9dCtQf~Fhv?Yk-k^dpKBiEnT2VtdMWs!b> zEfn!EPi}&5n{hAY3*&UL?DLx$lF_g?aD&jf^J;h9kpb} z&r)c=l_b!XIDAoot*)*P#KG^~ zHp+#7y=G9~<#trb*4xv_>OaIQ34zEkMvQlJ0gJ2+O=JL(axP{-OhUo}LKHp;2~|H0 zkMRqTNcR^fuM(7ZTKBXxuGznS{W{YQSk^X>RX-frLA6UJhv&NKt&~N?5?O_Gmmbu& zW?rAJclm$~vuNyoXD41wt1z8Qa5I|8;SfU_uX<6N@Xn_^{iZ*S7)V&t+#C=LVFw}) zY9R<8gEF+>k5N2;!oeT#2?!|qp+<%p6J+nEA7b?aSSCherm&cfuRIT1V@4d40BV=x z-+ih!Q}uOe(g2e|E@@zOU#dxXcCM&#f)NOcz+Z?494?eFSmYY8@pOn@7pF$TZhb+K zEn%gEXII;MgaU=YZ0|dr%-J3ofYW4rl6X< zXA`5E?+`b&Yy%uk8IBFAwgK;9 zOO=w1btYI?W-8(q!c-6&5ONRQQ@ni}4V~AGTcp<6#egvGf68CGxH^?jJkz)#7)lC?EwQ?AQ^Rc^!#Zy&F$?R5IAb^b{G5Ax z(4Ed*B%A>Bd9O)$lKTIro?SrW+B=jVe#p@YfI&HZ`ZE@1W2P|?gX z?o1Iwnq7^!^%7-ewKR_DyVh&X(<{|j3k$7hK3p)f5al?*`};SeTwPZMg{1#U9Fn>Q ze1Q58U$Sd!X&JUB4o7w|gpHS%9LfMbK0f^dxaX8rTwH%O=yDD8_E>FEh`$)o0=Fq_ zPmWvn;K74O8&yk%t_yeO9J2|_K`=46i8nSfGNM1HWbCspl(#{A_s_vr+Z9e2srpy$ zkXKwG1`rnuEWf>dI4axG!L0G5PqioPIp)S>-cj8qX#F;;-J2Sq=~zFFSDAYOMmfU5 zR)ioL0Eq$Ia^4V>;vR$7BVkKl-u|TV@$+Zf$g8*S-c_)){OH>=V+H(%5IGW=9VMYc zJ%IQ#y|~Dc*_$Lp1k!}ev2I&}a(GOJ8$$<7DZh~NOL_gbej3q>I%agBg!BMRJ^8Pdr4exNp^k@yUqqQfbB z*}{~Rlt{R0g2=dhQIrz((h_8}NIVDS{lK2cV8xVQ1Spv?+4X+`G%)v0%Oszds?b7FtBV*GA4EcPJop80C3wF(}!^5oODiPK^Siw}!k< zjgmR*PA>pJ0k|{;zP{3BE@Zk4BIX4M9?x=euAv$`i9ARvuW@p|ocw^7`ePZlp+A#i z-2WxQn5TQIaK^0=mpg1vD?ysOa8oGM;67k?2-&$_pw&L7j@1T$WlbCCtm5M0Z!otn zcLJJk#Bbhk=>^yCG~bb;YL(I>RVO-)vR#KGv+VmOBfUqf+t@MzW7AAwMF2nWs)`w(Xw zu$}nX%@94v+hIzG=yF7ghll40a2L8IRwRi0tYBiej3_dMBu8i%HvkyWS;w+Bz})-M zLYY+x-`J`5Uzz=vtF#*spiR%sB?kHO*DwmU($<$CqK0CT3>rMSyV7Mi<1*nsGaa>( zO?EU!Ml&u4yh%3hYY0ztxjGP`EFrM43JVWF5Zn3>`;tGd>|z>yM|fZDOyXl0vA~GbTw|87!OJ?ZY-ECS7`l zV^ivV-}|4HDRSFhTnK_#+R3Ed{Quz{4R(ozs-UCEp_~v#a@t3yn`Hy;{3>7BLM5o^xPa41QeLQ zMh6sr{vVYAH3yO}`7qmGVBHater^sfOaZ{bRnoXE+G6Crf__sucH`ZzUlSxB^Ls-b z{q}8k{xq2AOn=t>l~oX-AlYV>@u2>7?)fI~zv0^8gdqu>3Lzlfm%m{kGv9-&Fp1LM z*{PtZ`TF)zCgw&oo$4TAd2hIWnxQAE+k2P)AsON_95G6zOq371O_O1{gTR${pL5Qs zE;}3CRzDAi9)?2V^R3vFyq%dCN)*AspqQ8#a5W;S-YZwxFI^(YKY^P|B4Gxw{g-tf z2U?vYxg4_RzT472c|Xq^R|Uxx0M)(&o6!ZR2fFN(wHrTwhF`k-=Hlhc8TTxderM(8 zw$%GcZU0y=3p~^-ZEpNWA))jmS$3r2WdJ%lA2qH*9|&8>4tGogku@bL6IPA@d27iF z#pApvO#OvLhn{^_+1lTyd428LHDnS94Oz*gev>0v*zT?N|IS?djnvGL6*XqphuNt}~RcPZlj1;Yk~8k|vu5`U+&YAhSN} zVQcxPAP0yeBT<^1Um=fTm+50UB5`Ga069=%V7LLY9Bj|2tEmNuxh*z+{d!~50WPz6 zDj69t@Z*1G9h8>i)tV)^K79O$&HQ8w14?;bhfzVKt*1YPjf=}FCB+E0%Lo{F`P{gH z9WxKvFc5Ygn;tUXb#8&k;z9`Fjx2psL<|mFFm~rKVX=w&{m)qW1yLhY!<%Q0CYi` zX2^8Q?z6l=^lrsNdobzWb)lo22v*Sg3KaVxa05VD>ljSE(9g`w;FFTxgenm3E_j%K zj_56D`Os6@&^IywRtL@xIc88*Qvem+I$q`GGV=u|Zxu#T`0NI`5G9dQ-7Yn_OP6;D z46QeY^=07fM&#!^OSt2M^=rsjzCtEa21Hz|#yJGaKOq`1sUK9%KF?oQ7XML4jxjL+ z*)<-vK!-G2V&oAxLcVOmQOq(?u)Xdp{RB|jx4gP^*S#lAc<`UxI5fzs5!?(kV+=`L zKOKmRi$j95Eby10<_OP7^(LejacqG?sw{tZdmCwKM8OpsL@+#SGnAjA*Xz2!Vf19G zUMlqmt*`6%0V<|YvStxMO{1La)7;ktR=-33;JOFJCqF;sorR#ne||IxgNv@2>;_2e z@m)MKGF5WU+Ixn?LH>l(rcy=4a!X6l86$EZ=h+qlwB`|Jc3VK3v(+Q9X$tqxz%<;D zw+RfU{rdH53wju=FjEP+7bfkn_+a+keRYt8H74_(iTwYNr1^bPwi>`dz?B-NXQwB~ zTmip;fQ!M-RD1}~Uu-Z=%+qkp54|b#@)AuQL&F!y0rV~P60OA32?Y)nG^D%iZ|HBT zxm9WoBexIW>@QJuhun2Q6mTz4vM$*YPxzl^M%8YZ|w?i^3g5L{Ms52sg>c~RA5E1c%T`H(0!>G{l$;r&-W;8Sq z7&_y5+Q9mYU|heBEM5}&u`m-B1SL5p3hu#u4)@HM!RXZTPysXWSktSk26K9YokMf_ z+d{je=<%`yx~coI&`d!xC}685fPOA8uNX81*UUeIvB4KiQlrZ!BrfZtLTf9dRK14P z?3pIE{rHh?ZZji!$&>plM3ru?=zz+Km!`={!N{0LWuNgk$F3cv;PDbv-+Fm~Qo_CU zl6)ktPh)xr`#|EM|M}e@1|{iX(&YMx!027on~L*=NEzbG#{wt-C??sh#ujL!%>wOo z&akiC!JzA%4D-%XZ(9u8Ex7a-_sQv>r32`G>`v}OJ&d#+JlBTb=a<p!^at=&RE$6cq5_cAB4s5lehx&OLa7aai4bB3?tP1a?`}Aq`tn5{;%oomu8s)6 zVZ;YP9KZz%y4Byt7H_3|s4q;^SjQFDEAw9$Vdt+NDg$P9q3%sy8qs@zj zD^>Vw&v~cTiJUNYqEKJy*c4J7@m_T0c@+Hm<@&oWg+Q;Ybv-T3YOC|H{-%#SDwr7S z4cTh&>X5-Suqc&J{_sPCpICJ3>yZq9fSc@s*u~9^Y@N5YZ?~qXsTxnz2h;CR)E4W= z`so5ny#vMY@(Bj29)*iZd%znIiXr)+(FIjmQ}Y3lgAHU;jZYY%o?uw|n++$cz^o{C z{3o%5M+yg1`TcDK-O|eh86`Xz)+9CYG^i1JSz{*WIoxl#+geSl3sm=yACl{g%g;Ki$^lhUKk1Q z(=hcZ+%T=_b~e?lpMD<$U>~Mj13Ljeuv3OV=)J9|Nml5V9A>}D9`L}la6L1Z!9M3> zh7JO}*O1}nG4(6w!=j?7`@xc9fJ!faTm^VzY!dD{*%hH#aIHF=d7s4gP;lrFIH0E9 zxW-0VNY0ojfKez-U)?W%I!V6(qBjB|4E!f&xJAwbxmp1l(A0@zs*0K>NQ7z@^TCWx zcG)x7<1-yGOjG=TBjQP1*tPZN^}@o!L7U9!(;OYz<~fiNBHc^bYnHQAhWFgIW2M~3X1onP0+aM_T%8!xL#8B-Rt`F`!l`*q|0t1 zjUWy6oybz6oAtb}an{tKg zFoLbl!;L2?+2!&>T(8XOf?w^)wB5>&S|Z$CpT3o)!q?#4FlTci`s3%>cXS044&N~y zLrF2L4zTJtyil9DSRo`>gnmA1)(FxlfA#WZ8kO?r&!3Yn1-t?nKKPNa_yPZgdDp5N z^7d|OCr|n$-+>eos#7>8(Dq$;WROe%v$C2PUeNfwI34xkg(6(kt|u+Z#+vPf#M)g( zQ55k7%=0uvt2eR7AhGKfTZX3zTeK2C8ooHpUBK0ry`~j7x>h)%Efe}_yxx}{3SR;7DgUC!C+_3!r^JR%1RvpCK>`k(nDoe1d%r!OuY(I zLQ|030=Q$SLW?%ix1uicbue%J%{w!;%)V#pMTtmn_P>q9;d!pbJ($rmgS)&EjMdVp z?BmNENrr;(uG87)plAIJVmlYanJ;Et@Ep2vDIglvh39;$ZFOx>cmi5lNUO;;0nsjO z^yqZA)ZCu2v9XVQ)P$N+ z3I;=ru(zO;%_1$$@e-uxL_`ovm4~@@cfS!Q!wj0cv5xOv#mYM^vWi@l-9icA06`i9 zfU6Oh8f9^xAj_w)WVl8j>ACrxczXZ?!g}!{3fhJoQ}3W0K&XU4v!|vK01l3_KPCSi zV2Zk$A*lbq%!`2iXO$lFdvLi)059E0GW@q{Lz?M9PUw_4&pda{} zRwGQkF*tYwlxp1ZM5oCdmoCY1QLmnm2Zv?8M+8J~te=|FqmT%)L-q*$r0g_cyM@U-VjD*uSMT8XG&=$F3r+%KZ5C z=KfpusaB2A{Xg?N4g+5=+ikyYI9}kXh5KfY>q<4L?9Wl%Xdf+;CMaiQpQe__pHaaL zlA}tvm&pG~d!SbPqyAVd!$2NKY{$st2mUBtiA$Hh>LpIRtnwojPVTM}``lrfEx1-b zVow`+^To{%CFv4uYzo5M?hBu69lW}%1n44feox|%lA5TB$t0J@u6YSJZPomS;q`g= z`}eMXF!|HW)WCJ%E57F&Nqps=y&KQH0GGsM?^+CMpH@9FC+0gJcV28sSh_6cRQ;r` zo>~>;EwdF3C)a^qHN~wYDc^P}G@5)yv=TtS=0@pE#G*L;h|8Z0=Y~$o+zq2S8^)Cs zea48d@){biSVdKom2+JrD6aF4ROdFoF z9k&~TbR^;_QS-)zgCpLx+mh5*enaO9>lqZ zV1JLQfzWG|^4Qe?6%n`?pk~6Oh)>bDa&;K@U_Ms$yv%r+!`K_R;cnn3pPk*!N#YxY z69so0aOv%7sHt6hrS=6AOzHpOti&VL?2+KCEHK>et`3HMi~9ZB{YD`p6O-|rbdUBl zP2;2fCQk{|rrl%+ktMoZ(3I(es}K7aRzaB{D`lC#sy^6ru5F`Onh{a z!}h`uPj14sEI`dsO}3dAL2S8cZ_kyOnCLMYT+$?N6MWWMMOH2$g(6%3b*GSI@8X!L zTK)b0Z7(@|mcW$YG5N4Vbr3)d7krBovFf6gSExI?zTUMU&@~~h!qb)QA)Zp|=sbgeCr{fhPOhTcs@aqm6uF&SGtH}|k8OiovQXM2K`K92 zgxSp~zWFn;U(cx!W~TyX9%Kbtd`mW0*@DTNl)pHz1phxwy$3kg|NcIn2!*JOBBZp; zRFqvpY0xlAW<~ZadzDcUDoG_&65eKb+gnIPWaVupWQ*+eyI;;Z-~azySJ!nu=X^fr zykD=^^Z6L}eLwEUK$Cr{I|k7R-{SIisDQ5zR3-&VcGdL!i}_J&+ZcH1@nf#R5OQNV zjEV@qAmD1|HYJ(fH0=uXd@|oGBw*(d{j&PYm$(^aD_n`ZWZ>-}w0A*!S85UEOljrlr|{e@*ZHp5%)s~gZrZyK zET!o~lC89h%Fn=B*ZzeQmVocWuG!iZ97u z>)gG)#XGyx!h0WiZGKqnE}oT=VM68DIXJA*id8G`TZR)Xq~HG-givSWSmAe`Uw>4r z4sAcg8MvL1wjAJY(2Kn;1v~|M`lh=&4dzs=M~4o*I&X56^LBu8__qpt&SlbSCX0eo zh{b_}J`+1dX()IVa5M77?7!pyVv3qa+{$dN=Tx|wNAJ$l5&^%9eW)|6+S-QA;{!1P zjx~9ukiB^M@mhrK4?nLNrAjBF^avmBzIuvY>g{0b76Xa!D!||w%SvWu0ziIE$l57M zf>$wP!$?b=pp}w5@#f{rmww!Kyhlr4oWIMkHC4-e*0XL{_zdaB;aA&XaBxEeQLQPA z5`OEH3ZG9_mESW3`ntCK9e#}QEe2fOaA1wv-D(BYe$VNJk4z5@Lna?o#*RDXme5cT z*_5K|X#fs1yjP^>^D!|=)D(o)Gc=P|<-&zNI5Z$~Zp?_Y zD%z$Hikhpr)@iVNP|Eq|fS2~0USQz!d2l9M*k|H#CGUd(j!^roj{bW53J6UvJ|=4m z1N4~vW3OKMF*^K9b)9_>*8_?E*=3LM>AQ`}7|$r0D;GVEk*Rgoz580n8e&RlDVvF~ z>BF*8XPo}@)vIf!hqUDyU+A?JZrQfYyWZqCek0mL)Dy{4u}d2^wOqKm927O%oV>X} zFJ-7m)@{zlLgE07auSKj#6EGp*pokfiLvIDgxT`QUrn>YR)n;Q82`)$jxAY(81!TRCpttN|4 zfjr|t;jnv`c$FB~%y>8)3jYSy=k1Tdmxqn~J*Q7upC}+FY~8Y@$BpCE{0aqDOhS73 zt(6Je6zIpFMpAI7e&%t|GF_%^@BY-x51n%inqU8K{IjDJ*gnV(Ewze2^%RNPeu`0P zuThbKwVT&?1yWHZRtU9DT7AakJXoUuJ-ja96KmOO9{L;K`bhhik!qQVhw+6Ln z8Z>}e;p!TFaM6DY{s|HXjl09`IUZdSZbOX+H!(0sI#2Qwwy-NXsi_z5R@c?xEOog} z5zk>$$?Z6i9<}^9YI)=~^dK((Bz-0vgZswcy^Rx6&}$SAYJL}))bvR^2}YFy{U6W2 zLiW*$V))SOaq5dhu~7G=;N;q=$*IxRf6`6~1DWMF_>LS&FFgy6`4%Isw@(|BSCg4i zN(;6y4bM2CighW_Yf>oN&uKsejqQw>9uVkhs3W&HcwMHR3Enff)&WU z$c5!P2M=*MZOQKL7vm}CvB*k@+AHA%R?$k7eI1hL%|qKiL^)9ZGSNbStslH2bS+KM zw%s`W-H$>sagowaYAz!6`?9=`TniD2E{xf_ ziiI{a~u z0lzvOI&d0>WH9VToJH}2pSJDS=xn9yRpL6ee%b?L`^z=@c@BYqC{wYLpxhD?&Np)I zxoyFoIE%0)`o*{vDBr_?fSYi`geLsi^XH0r4qH<;UeZ;LzNDdIag>v-=Sirae$uEQ zdw?%0ovebFxY=Uc89&6tIC~nF?!j~ulE%w##{XOjNaSD~97qGNm5-9Yi=Rj!>+T3t zKFS%Gv44vK&EAbT6_HwMRI@N2__)2xzD|~`YnarhZ71m-FXZN*E9U>yc27ZJ5b5Rl zeE>MrWm#??v#Lo~Qu-R=y{pyXi5Ep0$Xz8EpoGMWJckU{L6Chqp{XIuT3vtJ8ZE8(3V!%BDX(S96V_(n-X0leMrUwBV+`>YRn%oul8DPD}6Wt~4 zuq(#nf4#os8|U@Sc#ojqIkB)eZ$=V#y)YZijZf6Z90{9u$u72!R0;`AHzdMQvEiUJ z)xAeZiLUkkpf)CrM%K3fU5HyEJReV@VDg5p13XROnbnV~F9X)zwp0Vhu1qmv6#0(SG0MrdK3W;+};Dp%@r#e*Xxqu(&TH=vwcKemt# z!Yk6b|J9~bqll(r`0UD$x0gVGi21LAFs(nUQjTNi@m%wLH{Cc#{-*^H^&EU7C?s@; zwj-!JFLzXT=ji$Vnpf1tSiSNYCC!_rjzW`BejoY6+ZnGWX$~BR94We<{tVec7k}CC z<44C#b5Kx_gO%U@^=e210O|isyV%)1mzTeuq0CO#G2>{ikl;#%Fz z(){L=d!@@=rqHVD>S)ZBSb2|XWOa#@I7kM0xptrE%iq&oXjgu0*eq_-rcF@9@FUwe za9KExv_3^32ml^U5P}uKyrLxzOc~}aK|p$=;Km*dYd-pfrmqMoR}0-F;lU^s37XfOgos72F6t4>N|hOzM9RD?#oe=IOU-(# zO83-d)WsV!1yO%s9K?pp;`Xgu2A{6-w{Et9mIY}B{#8nM?qm#Q>!s|+U9e1et(~L3 zF2S$l@f?W0NI3m#LMfbORt+9kvnn|B_6d%PKKMIo;Q<7jQfSLqG5siV8796R8rAqE>f z?A@(`AVZ@PQ@kKK^1YkPjDCH7gw(KL5PI+6;lt11gL}w%@)jJFi=n~#0vI2Mny}>r z{#~FQY!43s;=h9{*>{tp_~)Lzc~b-XY77&&MYlfGe0ZYIYFpLOf=K;!y_d51OzDKO zJwhb-$Bc}P53iLSM#bB?xxbM#5}Q>@H8O3*KG9dmKCmnLMD}1 zy6$(nR84*#b_dPy_n~ghE%?HZ=2HO;g5vVjiQ-XCE7!ceRfSg;udXcH4IKAjIXwO~ z@i$LrPh2x5);@mtplEB+U3_n+ipo1mn$cHjmDEvwD#uY+IzC=mUYvq+rR~a+bNMHD zwoicW{Dch_6+zt9Obr9&f&ep!Vh=^j0Ff$C#}J-xgkb1%dAWwUckPkewG)G}QHO1R zDURh&sltG$EX8x#oY+udS25ket3b03wF#rUg2I_=g*qg%c@;`E=(|e{E^?n!RYd^V z727iWGt)AhZNisrvr(=&zg9&wAu%IPI6D=@~=4oKfZV7&MV2Do>m zkQ#020y#Ab^ot?soQKfe8RV;JOENd!1~c^Lw=w;qH^=A`=jrc&(HTXHje%<`UcbP1YRh%lv$k8-M+!l#4TnU=@m(=y_nohosxi_Tp3WGy&B=X|ycpVI; zUOLSk;yZF%VEjOdgD*rwg)qJ(ZpEf*YgUGKco2@XkpqxqnokRE(?Et7N7%Y``*ylf zHM@lb7xKYPI3qK{#4$bZOKZfPPtQ9BE=i7xXGGgFhrmEBEk z8vc(ST_WGZVA!Q)ZZ?I7CwBFq5YH1}$Uf4MH4nt(a)Ht(B&lh#LMYMr{vrp|+NNX{ zWUuxw7R)SdhU*6OgWe$KG_EEU0CcmOU+n5xT~Twsy)iQZ=e!U4azcOS^y|_7Y?o=0 zy&S4+V44wlgzsc?E#Bmdjp}%4XDn|aN{6d>qnKIWhC=)nd{=E9ruKK$GGNY z33`f0k00N{rXaLGAf5+f>P|e&MVpqknwM?2x8{xM>VvmC@hOq{{$v)xW%aOe`p@B{ z-->0#XlRp}2Kl>9#zEVTKWtCTMmfI^Py4eUk_Zp1+2ql+RpFuETH`;f!D_?BXhm)1 z$n}~q{GTRE`JPh>dzo|X8dXHS+Oovgg-l3Jt@1`Ch#e9M`1aGol@O0re}1%W+H~@h&x|SUf+4^a8>^^g@;~yi0^yMjKwC8Aqy8!BPzlE zEBUwGzu4$CK;whi<$}rfbzSbW+}cSmw(L=k>s0;|*W8(ENR7~XWNBq~tA(oHl|5y7EV&ZJ%}1tPf;Y zhY%g1dxJ)eJe2)jTl%Q_eM{yLue=&yiq-n73tHtm*dErJVH)x)DS7wA^jJqYWOlDW zJKJFg&ST|0dz2r?P2T7Qj{6crtH9@WS+-^L5LhDN?E1bSkfrnDrkeE&5|&^4R+cp? zW3=;JEF{7ykzbHP8}zR?BEoFKN12~e8fZ=(VSX}Q%L<^}xZ8F!%tW>i?>xqAUfWuDb9mW#pf0KoYm`cn?~>X+ z2qRlUW|juZ+?6bGCRJCBzuOObi^+ETx`X{h*h0$hYbu;AUB#H*3jj{+B069GTXAgL zcYc?IL}tUHZnn)mBDG+&;Rj4nBi$xdUWn?C%`E1#MBduqLG_p}S={vf@#dw{4S4Gdm!xo1RR75X6{&@FC^Yn}xtW*gr5}CiBx9ya6IBzS& z&rgg}On_<-!xceOFha-Qnygi_(?%b^8=pnMB_9^1p_r@KwqwU&S?EU3ZS3q7Sfv1S zz8 zuk7bdK6{iVtHXf{TWz)iGm1$~eL^H0h;=o1nAh65;UWdshV$&CU2jUnJeR6GmB$=&J3NxdJ!omkt>W>H zQ$Qf*2IN=cNtzZvJ~EBxPi+RbvPVu%k4O>)0d zhRn)buN(3_D?9sS*Xl}GC68-jL#71uOsHicj#7hGjZooXQgHScN$Hf923dlELqTU} zkDz8;CrPxCzm@rm%CvA8`&+Bsuk5lQJ*<{O8v)*=}|CvG4E*|#c#m9vR1rkEY zy%R){;~BrJ+hZbc{ENu3DZE6eZY@?2H3P%4D-${kU`z=S)8fzR#E`PvmoLUR}tLiK^ z!^JynS_YU6?F(O(m78-^zxa{KG27+l8NoY?+=b$;0e-HSk0{p&GrQvj&EP{6s)Q0L z+moS)h9bwtNHvS}ec|NEd-m-ardQ;aCQk7tpP_*Va5$k5C%7t@VOPR@b%%t-c0)r$ zw$9rCJ(f_Benb}o02hB}1yVynwpmXdiPSu1PQKip5LRHug^}Jc(x}-PH8saP=MOag z?`uhM%^z1~&S>|KBoQ7CKP_H(Te4f&Rk_Mva4F%)D|n=;%+Q^C4-M8ltI&+Bg(r8(TRz23GFzx6UvKYZnhh zbQMOxFCTO5 zr?4w%j?%UAG5f%t`vIZ;31kWtgV+0>vQhWUln~M=DTjfHJL!y1T!@*v`48a>ch5xE zpD7-tN=`acW1PNJz^-uAWbI06u~E&UE|y(+&fp;2{YUL|MDG{lr^w9a(^v6y!o*gz zKb-~Wo2E7+NoYp=0LIXqtXmCjo)Us%IrF}fOnuXzm#>v{r0q?-O0~Q&@1PrLkRGa` zrlhDiL2QeBkg%m>A2J8b#b0A?#SSb7QOVe24Wx!k)avrMXZ}Pf0}(U8IT;>)bpTrr z8vK1zG&GZl4%5V3BB9OfOp`<3W96H^C7C*`EM(0xFn6eTrT>?ki7UnQ3e*q%s-{Y@ z`*7ZP8kQOa%S9N5q@^tkN=JUY)@v;8@)(!j9=4AS7#Ss&Q)Dw;!;+eL=uv;-b5iS` z^U_7j6tf15F0{W|$ zFPCCaxfVRZU>g~`FeWzoZlBhLwWBYb1`XDRf)>c*!bg61gC=VzI}d;>V0`v zVqC7%*I!ft4`8xAnXbJ>$K#XBLgPWr>GAQWu{KFZGIOO!wp}3(e=dgOA|FV z9-biF_?GjHL3H>kwj4GT3kjf!IAgSfM0#Z46>pq904ZGce*~GTz(P}&-H}P-i|Uuz?fwln z1g~70@t;5yK8fZbve_bq#F0$(x! zq*|!w$0B|hP#qD&A(^ekD;T6?rBJ4z+`R@o3T5vu0Rexa76zE<>P&v0n^-KGI@>IA zSF)LXwyACNz7UlyR#*-V>x0Yk3`{2wGWmpszqM4eFkO(m5d zH3Q%Jdju8i7pos}R~%syr|-b?MGgEVrZq9F#m$rYn&98P*7F_TJYSl~Y=d z;1@!WT>_aTuzXk@N0(N@nt_3U7f=VFb^d{B_O-j-u9D0N2I4pK^MA%Kc(17qfB^x! z8f`z(hY-as#Qmc=mBG9N*g%2G_XTLPH0*ka@1NNgWHw5nvfnU}cv3e>S5H+n=!TF6 zr3pZ*P(hW_H>Xe9lnAIjKu)}W3F4f@GpSIeJDmx@fJI?Wn&?27F6X(9z58s@f4;ZE ze_o~7a%x~32ghk>tuQ;?1MBVG=zXy9#vUd=0N}$!_oy2iGkv2los*gpw#(=AKlCW5s}cGt;4^9sW%#d| z(hItr+9b3^SfgbVcVr?Os$57tkB zQ=ck%qEWG9qA3L1s<&+2`YT_lgSGsh_>WNLe5wQSbIuU@R^SzU1?)#KMPRoXxur6! zq8=k|1cMw{blIrjqz-$9xuz74a^Ogk#C0uP5IELxCxl`jjN=KX3KeJ$uzyYzQT2(L zm1sOkJI^;f$3I(>2THQ7J!uEYUT72!RG=gSOz)heI6arGP2rBNk6V!3Cn(4eQuUiG zeiWF$ALQZXZ**8t$MUa5k&M*N0#mXj7vkYYdzyBQTqf5ast?W;vrn6%5A453$J1TL zEdLudlF-#uFEqwBWlYB!T}D;6S}^eD+V%P0Xonv>*zd9ECi+XOAal-YYO+6I=IsZe zG|*DCf^>juH4kr+9pYxJu+TIF%)`pc>f}r=DIJNM zc8`r8?p&{vzG{p6o(~5UV$~OHWBpLzh(S@*mc?y*ng|KLzP|pp7()rx-0d^l;kmlJ zG_1e+3uFeam;K^sR-WuQ9-SETYrpg30%4GnsFTxBEy$#!pIS284oy-(tk~aBr1jOz&phR|H&<&G7 zSltuAz#%ZaNm$@!%%s_J~0dFRsUR+QCw zR$m3ddY>gA;O@9x-7DXE$}9kN1Ib4xen425Sg+nb^}v;NAn-9)mA>8*14ypKRr1+X z;ib=LQrUVT3gk^vq+gvt!GrJ7KhYa3|13Pb8g=F9Og%3x0DtgweEbg zKho(wy01^>Eh508&jqj#2{YA2$=Bhza=>Ekkh*gKdaIZZAD-zx@_rM#5Z~-z({WS; z$nN&}tR}D$XT?9py`oi58Vv%{Y)0%3Z|!-@kto!-`FkPwGu zz>6Und~Ym;R75F594^E{ob}}gp$kdP4suAon+z{szC1J+cdzW$VS;?J2TNOc?eT;) zQ@%Du14d+|0zdR`0s2-j0*B0!^fDxHuP@7r>e{&??dsmV*qb1e{yy=w$WX-r<%+<> zF7g?ipy%d`KHo3S*PnPel#O60_UgPF%0n6KEB7azc!2LB<~XJUylXqY5>iQYMn)rD z!Zee$hPiZhCclcRs)H3j_XzMQvpof1(9w6x@g|*_i&;l%b_jj;?EO$t1Y}FO-Fq67 zRG?R48=qrQp!eKURI-V0{q+r0vt0TmAMVb`2N&7P1S&L!I`Zs6;=P${=zxs@h#!h& zte{p1GNwNIG=OEIhq9`>4(yWv&ah|q2B3YNe5d+q!D$h}&iG~#QA9AY7o^d{wBA$+ zO+!1eUgMnj$BUa%@xchC-Uy1pjGiT4*xpsnY*&**CgW%hPdiysFbM*8~ zmnR)ie6C$8Hk+(RA5>#Q0wsKP*P(pzfB5jCZ-!<9n|scM0pAGoYW9|Z2ar0d5kMBr zgJG)KpIqSwKI&ih2yFI~oSu5K)gpklm|QvI%aAPoLgC?S7$x+ea5L`v8j8Zj8}&n0 z!HA^<7g4*QQhUrP?vD^ZXF!fLDqloBl`O1+^|dj3tL{R=aOo8%H@C21WGch`wFu+~ zU+V+?FtES%Ly;qygU;wCG)3}6f3oH144L7b=a9Ingrnpk=fmg2`+x4Qu2H9>=;p$r z1$U{a0q>)H4gp{-70|&Zc zP_+jm)1%Jj&54Fzp71TfruH^Qi$^ne0`dDde)szK78-e>m4q;$R%Q^@SyCz_K&{)oC7QABt5T6FT)vm!5`c zX_L2h3!k9=og+CGXl6+V^@K^@7G7S_7i%zS2^_u;O0xIW%PTk1e||ta))TgNo_zn0U{Q?n@Ui^jooN}m zzj<%BgVwSzZkT;f&({DMKq!5{Rsc${ln?+WF(^o&o4|E3%=KRCHuzCO)QM3coRsW4 zgU^^XN&Run9$T_U>}tY^Ge(uHnK0dOWHAekX8Cb3u}ga42GeDw04(z4%u<>QO`p%U z^xeb({A>T@oADLP58Fp{60&r!pV)}wMzkkeCPdhDZxA{|uwdN(Moh==jf!+f%H|oX z{YtjZLib5!0;_j3D|}tKtB+VpsxC!XlC@tQHGM|8z!JPu^1fmegLKiAOmtoqiy^)QZDM9O8sxW6F3IL)Yrbz;J|M!9X62jtF4GjA8WK?BNbAEX91&08PH<~wkhIns8PIljyE{zuUaAz5~%YA5ZKb8DR!zt+*r z9<+K4yc1B2qnsB;IsTR@w92S*n|T*#FAk*hH#z_yB@$)!f#;#2F`MpsYk*flZ2^^n z_@g`tZG>iqwYU5lN=lCWdUxd?xu)i``|}vG&z}T>% z3lhol=dQXb6tpNsD=Z}PMy>U>jg2KVnbn&dMSG8Mj?)mobTXN>6cTCclXj=1v+ZAG z?23oRt@74kTe#a6dweQ2IP|59_p5fu^RAHcTZdKVM13Z(N*)^U)R~C3%E|FC=}JDI zC(c^NduQJYb&q|2XHmPwW_2oR=2MA5*PS#OgtT>%9!tjoQcO-C_F)n6n6K6+NFkh{ za*(DSk?C&pc0fkN=u))^dr#Ts6Ke!iMEoCjwJ z*&ATbJq(PZ!M|T(5Eu51?wj!uG$zPogf;#Cn1|qh#Vtn#mkhJCg`m6fYr!qd)Wi5&o;3OZQu%AIPSP=$9~cbIwUh1V1;p zPP0A!%a+pBz5M*C01{veeE|Ugus6vbKfDs$lL|%$QcE-VG|a=YK#-RoZ!NQgCWCY< zER%|S6EC@@h95{oMg}%ywV}5I1$P8?Noncn*T`m}Qx5$#JJ2{rWKCA$KYDf8XcN8) z8fGnX%SFu{CQC*#JCBmo9$xUJ1M4V(9!s6W2a%uub4;SRiu3f}Hxn1s3CBHj+;y~{K3tcHGXq{-1r&{Y0V|&(8zI&KhBJpw zr3Onmi7kqiSl_@l0A9Z0XYy|#DF)EDFp;t{rIQz_X zO9OYMazxPe3(w`dI^3&gCy9Vpi(5A@cSe^BZ#8T2RgHya|G2BQ zG%0J^rNEk_pAPZ`R<3ie&+jvJ<@cFjxJ*3F@$#7Rns%8hVqx{7(GJYbNjSMGi!)!H zO_g@9*FkRxU~GoC3gQ^GQBqaiOf=)Z9C~lBr5pd}-8O zE-e_DH;(q%7TIrc9d2`oqax_BdNwYYG3&hCFtg z{~z;izUn3GQd|*eBz!jaZipuT?gMAcxAJj*1Q9q11c5D~$sdUmJf;!dsZ%}7p1Z7T zcRFO5#pI^Q&on0!6Yu(>C9&<6{5xt4Jud(NA%1vbO<+*aK56N2NQH2};gvpRrL?5M zb&xx3Vu@S7UMyeHHm;kIF?_SBeX&D5Ps8vXDg1MLpCnPYbW$`E$l6Uy_f(_nS-81J zcLIQ2yVd`RvO$I+cD-T5sKK?Hcc--jk83|~zZe*9w;dG6#M?aWTWs>I4j)upH+XSucoCH)0d~vj z1hSNFle#mcsII!1kCFvaXK0(9eU9DKHyO|2q;|9u7Ht_-ivfwz2Ai`w$ox;`vP10w zo-y=e-1l0(lNe}zM=m>dU9Ss+20XN3o1Ry`zDqlL_%*-B=MP%3hPdywwVLXj(h%hk zulZ%t2FE7K*59P-A%u0wF@`M)5AD`Y2Wtyy^uHMlG#4<_sB;s0i@t2EPaUPET_?I; zOF@CPQXz=j+puhxFjKNtvWR}+o4m2y0R5H8Fj8dmiqOkrA$OMLxOsW8QsA*Q`;T?E zjEr)Un&GLtUs{?Aofaj4y7Jq^&rz!c@*@Ng$CCqT6(@rPZlc2V zSMoh0nQ)IwZMa_R}z*7TS0T93*%DU#a?5WY@R)uZgx|Cz~t1g zH>ioD-FVOu|ZZl}&yX%AQ?Qdh;YSorM%+D0@xZd(!1} zi`Q_A_fHEemM-Su@L?Xh%NU-R5GMc!s$R3d8XoqG)^B?0tem|fEnOCDloXE2fZ-%8 zLnY;0XM}j&|2<{a;`fP*pKNLi(+#>y`+`cjdnWDxgsEj%!$qu$03fLO<~qm>NI02^ z@CX^=0U@D(r9ZXt$Yjc={8t_ z7{LSrZ9#&<7|N8xkdWf+Ipc~-0xED9Dr&x;)0LUQAOHHlS_dG*;3R_+$fCvle1!yR-K{~!HhgL(f~?y6Gy zEuH_4aj5vKOio|MuY`Zg1!ylKdf{L9G;BabV4K2Rz^J-T68EWV(5-Hy`)e+$JRp(vt=wR7hG0F1FW&*t1dsFE(HvZUN|xQA~FqVFyc|LdZNYZFVEJRP)ftI4>#C0P(V9g6@nd>KwjgO z;Gs|2d9cVli2nq{C)*Ukm6%UwS_s7#KG{c{l#r4P5T{^Me zhIiulgv=o(C*G_6vKo@~Z)R7X`3~T0s)|805j+oBs9OdnpN}-<(}T8at*6E&Z+L|k zpMRUV<&|=@A=*YnpoN*y1St=cfP__$Rnf8oL}%*Nx8w5+n6h*e_Cib_W0&^^WPKh} zrhD$Y_t9CIByFxgVx67W^Mab%*ihOc878znSHH96#BT}a*=yZ%D_$=|x3cjTb;v!j;<6K-Z>7I)GNEm!`B$zd@^aG>)ytq|_rLnJg%s zY!Pam-Se~%T(#%!|GeyNJWh|Ri?bndxUIkyMhqpDY$*wA};Z_3D$jN#$AC`-&I3h#^3t7_*tRy2=m;`x( zr3MH93$r2e6CoJA3)b}p^S3+HnH(i4j3ASDZJ_A=Nz%Q7bBjg1Vket4UsD7-~Eebj+~O2d9lyA_4*q(uY$g+sbZ6nq>Ecqvy?Ydm)^Uc znx(2j6-lK>W#{E-sOIR<9bUKBi-4cN>`GUnrs)ClJl*5(L$BAF+?;#{qwz$fBXocS zRs|mml0958OQ6Cn!Gf7qtg|Rc-j4*+UZ^`C3U)}=pt`0;y`~&YjxqHK-ha)>8-cyA zaeqNx(yiC6ve81k-((Na%II7i-Vfxj7`s>_&J>>8cE}v&bbVScInpz=4}TVmxmwEx zDlhrf9dj~_kf)+cwRXv&dC72o!<}O5dnG4izHeMCx?_2d;-zT7Kf`*4xn@24x`cbO zt=H4CGm06FaSMz=ulVP{8TN`gf8P|w1Vt0bf(=ltz_9ZRXg?<~A*P-AIlr7xDx%xl zB_a|8pKcqdk6f;uPW7WmgkR7wKXfuQG8@mY@1*U&X)T+^ z<|_ECy7*eRv;noj`p$A5x!VTJQR6W}ZkrRb>MD|1kNe8z>ro5Q7~fQTR6!k`8Yb0A zn~_%-x%q_k2;Y3lC+oC%4uj39+pp4%(B1EzErj-{0i)0Z*%;}BtnNDoig!EBog+IK zS>^v#hI#c@sOX&`#ieJs;&DY(K;Q}cB`{}A3QH_rjc%d}Ab~ zOm(F12`}{#FL|oE^}*|A*U8>%KC$gB!_3#|cdddyk9^X~EMj)^FZi{*Yi83N?MHZ* z!`0@J*es@GfV2OKX4|-B=MqBcVS?T!)Z-xZyO#Qo!B6i%P?V%SZG%gEZ=$rK@_*HD=G){>hvmXO#N?R1 z>B#T~qPEzxU$=tHlx0qup1xjZ7OC&F?6CECknCd-Y#^UlaO0aHjV|0_ay_Ge(R)$R z(9@D~GlgArb)dFYpP@3JmtPCh+dBb0^w#Wf?RpJbc z!?pm~CHwZ=1ruF`#tQKf>pRZecjLI%%g~*#6fG3bZYpqfl*86#J@_yX`<&qv#acN# z-UUx2`SUk!>_+X+FCvnxTE~&tlWE@PkUC3g9=tcC;tKw?^%q3 z@*Y!iWvge~bc-}jZ=7Li7hflTspL)I!g!whzl9{uv#(!V+yUV7cmTo3#GjM*EFx^-8YcQ^}%PcXCZ zVj`w(^|N2m@jKg}y!*D^1nON(G(F$C}JQZfVU`%NvWT4ri7 zhMMMDaF6gM1bg5hC)>qm*0?M~$c+!b; z1`hpthT-e*{{}ffN>ftMX8yob>pMSHB!O?V=H3;Qb{Odf00NTxNmNwbqx;)*=6g1c zrmVIEIfQyxs8qY?dW8Jirx+RRGgbVFR2Rjg{guJz_|!sp7q!DX5+k!UM{Sh;(vjZ% zfsUQCYMu+*2(V6AdrrhoaKmOTXU!%7hNAF`wtbF5Goqm^j*hJFIWwu_vs0RbO7xPF zrhmB%oq{VQaQ9uZvJoIp4%zpgPu3L-_zP?2N(}Ql4MaG;lyi6S6%NMGJIN^=OR1=b zTn9a>#9M=cgJ?OaR(N9?!rp!Jq!;@8X{$B$r>x(M%zKv!_r1aYBly@%tKCyS8{d{?7m+sKq((XeW z?8pvEL=FIcgqP6`u@J$l`1e8>gbKSpMPHs!>(_bA94Y^cA5EV$uIsz3Ki}EF(k`r` zLm_4_oAp=!t^=$Dg8z&`>2nr58O5BvHpGWm_J8bzfpGjJOZXYc!$E4=Hv^ole-Z2T&5AldSgPNg_wnQlU+ zEAg(Di!del&%K~=y8a9fgv5Rh&19Xb*W%{K9TGX+rAhHvbpWq| za_0bl|M$?K6TSsFC_mmSF$^R@tp!4^d2n7tFaJ+IA~;>T*F>(0 z+6+$Y_4gFo_fP%6g<1)|rL)Z}#3Zz1Za`xU38fYip(@7o6z^V#4$; zyQzr?3majJhmcP86J*@KLkTHulxIGn1>x{StL3Pkk&JK8gjtJ!3p}`A<9*c0sjz66 z=h^-1;(`BxeXWJW&BL!`R;7*|LYWQNQc&VDV}A>r4c5kt4-##;!t;%(Uq>MoNh4lU zirzN}UZ4@W6~U7Nnvw|OfE_iq+``_%@?ka~RQ<7dL*lu0(C-o+nNU($2(_L$d6H^% zWkPk6qgl04<#>INESsiZ)_aWtH#t?UPu7vwzA+v3Tl~uji4{)Y#Ffy}W&e z#bdn4!#?(4=z}iqClh&m^fNdjgvJkJ1qA9Ain*7Nse$U(8$laCBBBV;C@Z~NKJ3#J zQaqnc(jDez8_KQ22P=5G6c5v5$QH7QCvV;)ny5W{^=d~3pOrJ1>n&E{-}>LW>!Q{C zWez)s|E5fbm;+^_hd9;eyWzeu2Z4Jfo*j)Q6IL=0K$}Zyx(SK7r1uEs0>0-tT3Z!N zYbxbE@r%RX13w^dnCKoKn4IFfy?wE#Dk1+*GYYJEL2abLG<9 zsEKF8yP!JJp?%w3&0CaFqB!@3YHgQx5F)H22@}-4d-v87QDpN#ZN1Rp_s>pmRNbUmwvOz9_!Huy}TQ!Em%)KCnnvn?3%Nq2sftPV{x>0T^?jXCP!bt9qrvjC_y6K z(jMFxgE}ekdR7qFbiz(C)8c1oeZuJkkJPOu=Wj}Vzc<4-THpE6=%F#aV}~2ZmX_Tk z99K3~cc`wrExRgtkd;av!Q}KF5@Xq(l&&$8VA&0h2czXq^@Vm#b9)?%9{Os1Ngg9D zgcPe1CZo=n#DI{%EoRvros5HMa*b!UpGirpJ%wxrAfodKRk*r&0^$s@9xN^GE2jXq z0mIGV{!Hnnw{6*t)7)$&ibTznLU2(mrOEd)_6R@LX^uwJ z-ysYq^tn6{{|?|dh7}%(O+`=ESJo z$hno%{p^+C>(?Kd@4vqGv0K}C=%x8?|HX>Q6)~^&S;phV7Ka96Z*I;{&bi%x|EjUa ztmHs>)F8*HG{3H)ZzAG@)vP&tn%d^I5;TPg92IWjXsiZ)DJ@ql!>Z+@+tc?LUTWSX z$lCm&Q~e6}(f+n*{^LuJ)Xi^W&Bt?qljZ%-5MUhi3zEk2xVLQ!SsgE5|Aj~XHlL5> ze{hH(mm?}%Dj5*(fJObrm{Ipe^5#Fw1oim$^y#B_r^K#6Il2AYYw?>vry3Kl;mX(D z*3(Kiz5ws*3iMWXGJhv9wmpSEM_m4y3^ga6!wLy}t$?xBOKf+-V$V>Y{cs{Dp*wP2 zXmY8;&C-dCk+FK3%MH8(0ygard%53P%o? znNVts&cpQXcxMFiz!6NWIV2?K+4XH2Z6ohFaNr?kUZ=2BRof`A`S+ly30Fs{n(p54 z6urtY4e;4n*;Z?ECb47(;>XJcNjKugGYe=7A|oSp@=eG5srh^kt<5&FNJ*&Y zV3?u;qN!^+c6-6Y_hFxla!2jYpRbUOyT`}Xz}xSwkx1XV_bjpd3mzy@l8z9qVgTv3 zSre(8(9@#a#>~yY%;-p#t_(z~fVzyZ1+y{fdKfYCj%}tmongJb`ZPRJC4FCW11|Ad zZ<2h_HS{T0H#k1V*g1cjAM-(`#@Fu+%Eg=w{RN$G*+2_7ZAuqL z6~SHghN#IILI}$$tld~Dn6dM2d0Igx^&u7W7pGNh4zbpXG!?0m$kW?Nok7?QxvU(y z;bBTj%6q)CtbI97tse58d_H&AZl^*etw0tt49*ED5h~(ro05l-wI?91{yRHc+0_*# zVcB+(q)yegA)N*G*0IRupa>4yTfwQ8nApavfOo6&(wrE`y;sZi>6$JH+_Emuv0_U( zXr~IW!tHR2Kv7g)Ri!e1HOVYd%(z7LM9jYcu{6KB3csET$FEfd>fPE4du1&}Dnit% z&bjAPe+d1tq1#dB4&R)HWA>lTv9jHwj&qgVTibg`55{hqiIh#a{;`|4NORWtp0ZTi zw(>z?jHh;=3OUp0`0?YnTszQb?m#3zhcP#F2o0nUELZ3rV(&;!3J-?Db&jYPz%qNFNnDFtEK)-@6otMQP@@=?`?DeXJdxN)dJP`4@+uadTcMm&FzVldKXiU+MA^<4(Y``M)3#O!qxe#ElE|vPIJc#i{ z7>;AJWG%WBV*W>4BebyMchohWy7%ZExlzEiZwibVfo2<>arV|A|0}+ z`E&YqdfevLpZ?BVHvZmREmAjN^70>nA|^|R_>) zx;6D4(#;wgapUttg$~l^&fm^QRN|X!kKtd~@pLWsUsV;s4COIpoz(jDhJ1sfS2ij` zrroMQzwN(K_Z8(CtTv(kZYC@+APx`hHTGTyJscqbBC72Si=T%pv!WS>xd4%(1^C*2 z^`NBWE4>02TY#MYtW_(6%J|y}xh`Ba`Vkz7(}rTew!4_hyArC$x+VO{UtL*LU;caA zZg4uw|Q|D2GQ@xsJ#21YQ95jSM8 z$)fTmt{!pu38Q}EoWObSXaI|`)`v4&AnTGwQ*jy$*gCXNbif_4xuGg<@qljbQTXQE zfS4P;q4x=2Cg@SOZf)#(V*_9E6_s9c zowyZ}qFo}a;^^G-+_tjoj<^V8@RXM&8{f6*k>+2-`rnbxkC^<8%yCNZof)~}h7SeCnSx4gnL%+&O(%ifCfUMD#3wSG% zfy&-tVOsrF7RAZOUZ_VIq_tew+ou@LQu_Koc=gTFOnyv--oVQsWQdrS60f`&znXI42yH%|f^6eOY68h`-U0PQRm z2csVoGWtR~u_xQ;obsLF3Rq?s-K=Na{O4>~HTCN4&wow-NR%IyU@Y?cS!UA`o_j8^ zC{TJubI08|-Dfnj1FVK~?2cD|(X7h(HCE2r6xe!`f_bMr%L5>rmNa7*etm6TmmPA| z17|}8%3uBgZhNk|*Vm`S2I1wK07?@`PHzVxOj>3klrD~= zcx=A*FtqBC1fP%if71(%rAjTd)%dTjWteP1QBgf}oQ{qThUaG?=EK-9N8i`Jj}Dhx z(=gkR3eU2d%-tZ6{tYz+%+1ZoY*2yC$epqFSAg>E`@XWlkAdK!V^>zVWMrduzI;|1 zqwirjCt5^|!FRgP>S8^dtz*{r+Bjcd>Wd=Fmw$Yr{FY$UiY?ox+5ci}a>=wes7N=L zf8*F*ww_u2vD9PkZs~3UEdo+@ozy!8)?X_OjG}%4?}*Hgm=ncyS@Ttc%5{h=K-hBN zAuheM)VSPgN^X0@{KU*Moq>^2-G_q3I1T1f5e1r7)V@QyAkywDt-*%5X5SJ+DYe^m z@4rM4_Ysk7AHgr2py7ZD*?v=CGc6iit z@9yCHM(v;L9Uz^Z^Z$tY?r^T#_J6ZMX;DIHClV@DR%u95WN#v}mF!(4E1{%BLfI?X zTdB;fk3B1rofT#LURU??J$`>Y_i;QO_bs3I=X#&ldA`oqxaYlEF=35GMNPhQ5E;op zxANxDctU1+%xThG3hoB%QJ1o^D{}MlHf`Jph6nqxA6W2?W;<$hzp2o^w+ueh6#-Xu z5lM7uEdP}Z$Ei0rwyU`Qkwws51(GX>e`DO0fiBS;+yv`(iiRPNw5qdotQ7i^FBq7% zpS*1_*o9C%Vy*?@OrrG8_eJu1E7}&mo-exF2lC4lIBsNLhRVGiyB&;5$1A`2#rZva zXb5K}B4kC<#!oFb-#FoJTN|5!C(qOBFE%~c)~y{YsZL*Y;AzEd5Krm`twXos=qfC? z#SPU)Gv{g3d7Cm#4kg%y^SvG)Izp*qvs)C~cJa1%!OqDOF4J;Gc2>XK-;T@e(LXD{ zA!_q3y36qs&iC|If~Y0` zcU1CBq^BUWCi`pR{sX%1Td`C;W^#`}0`eH+S-4?Dbm=^-lQ2Wr7&--ms0N)&8K~$9 za<3$dCv=k7ew#FU9+(~!02)~LLO!$)(xJB?W?^x26?FN9p_o7r|IQY-?wW}ZbqLP0 z{_*xd=A1uPT~h-IS_Ro(ryz!u&wIPcsH53J&pG@tU7y}K=N{opJru2(V&lvp&CNR< zsK(`*X?Z`-Y$-p45-|7Z=n3h& z_0>LZXZHsbo%i2V8DF~(u}9VLjZ)3Ob7%vn;mcJBPbG3XtbJvWF)mwhMP3)};3Onm z-v$OM@DfnxV&otkePDG9#cnAkn%$K?c0CT>aCphUwTQ0djlG}MeFADB!fLoR?F%^N z=;O?bTlbJM3}3=9ROa^hZ(5p~2&^YYgzqf6JKh~Et%}u&6rP&zJWcZ=pTT-_-xZqN zgYKV{x}|>8S(VJNZWt5mn#hwAZ7;m~(y!~@9(8}F_lE+GP6{#KHF8c~bK;q8QOh0h za78t~k9Y4niDH9a8_GW>V7%WTEh}$tfB1!?E#046&5cj>#Ky$jM7LI%tnB?@VV)Ox z2(uOP${lT1s;;fr`9^Y(uU70!ARn1E@Fz%(^GcCm&6R$=L`u z?s4;uX6F%R`b!99fVKEq5EyD-fHQUw&ZyTEod&#=1zTd>?%cT(i*iqtaA@gC$99im z0G$zBznC~VIU#Afg5P&KYp2r;zI^OuIN-BUH#^d5E!xu15QKTZ{*5dhaS52 zK`8RR_>uJrm)?IL{^O)|3fr>~&i82zf5`yW5FYJd-`^jyvwy$XEjuUbz+kqnh@`%U zA}k73^1o6U2R83G^sBVS{D?)Ij(^wbkhh{@bYH@f-17(QUp;C_j3tV_@otR_>Mqnv zR$&VcXowBaYdMBjtQ|2`Og($pL#2zC0NZly#656VEDUX;!sDZ%yWbd&T}wr}ul9JvqBn( z>wN!e3~e7mdvhMyewm!OC?zGeNb9({eoV_mwD+-w&%-WRcd4~~_AD>9lqxA5(w>TR z5O2LK+{ov){Z{f`xrcGyecM-#c#r#^rj`d{fiz&Ganq4=*i&>+XHjB#{vN`ir{Gyi z?%Yd{x%4WY_+EbM8vAp0B}ylqkJ8Z+CB8sB0}zY-L|I>CH0yQ&TH4X-qjkn14!8vV z??N>{8rM_pxR5xdJ_3Bm9l%lB_pf9mcBy|a#hvh#qPv3|+&OA7xm2ZW_b4|^u zt&%sDz73z`=!6xIkXc(P+BH@|lgDLpLJ;#}&T7CjB1>?L%;9l1EQW+|gEJ3k{@AB) zqN1Wh=r|BeMdX58)wRY&SG}PMsVr9idu&(1#1*8S6&4l}5D<5UJ`5Mg3y)U*&_fwn z*&Ed#pP04h1{*~>+=r3f1MsD;CAWoW?X`^h>ni?u`B(31t0e|J-0w+pM`b2cmWLv# z_K*Kq83{@u^Xngr?*Hcdk>nUz_pik~3EwGA+%lO)!xK_YV+AQp3)ub` zy?)XbDiv5$_&#%^WGq?Q$j6&?pYpx-nhChS`0{4%7%(*C#zRmNH zgQMeHr{5ODDF~r-%&&gov`zl{r3X$<&5M&Ejjv_G?F904w~cK$vb3gTdG)x?waam@ z%N8T}heg7sDYTM>$?wE>!LAW+x3jZza?Tna`1IxG=Nm2;f)@v_rh)#Kg4(M~3np3W zBZmQqk3J>^uW1$BQZU{o7j50``PrMbE`r@X?uVKw--nC4hxRbDH_)ms8MFmGH0zhP zNrI0)*m|3mmzP6z!ugZx<-)}NR@yi0;cr#Ai{JMsR6G@3@WiNqmE>(3iEVQC+u3&U zNi2Y-H2`#|Qiy{ad^P0k830+Z%{w_vz8(mp7iLx7A1t84qKm@m}3wo9m6O9q4OuoOlb0 zNd)CH^K9g5tzl%;Z{ug@xz4{AU&Q%}IrtinzMaSp4-fwutLo}{gfY=YifP)%G}Onm zwSD&OOG?XLPp-wILRn;yCtq4Y)&G-|@%cux1AP|sqmD<-F6+D6Ek+B>l>ht^BDXapX3`vJ1)e)@%o|$?UH<{gV zt$z6y!^{Eig=C$QNMfS0ZJW^~D@Gr3+qu1>KV0g_z1Fmv*z<2-zzlPhueeM) z=BW)P16LKc=t>`DYl4Sr-;cO;lWsDUT{8&-Z z-hKaF&NYQKC)^HOkA}Xey8mN95KzDK(Q?}MWlBn_}AtYmC-tV!T-fL;vVpuhBQtbpFhFsk<;IHi5x${D|H+qfl`eIB>Ok@j$ z(w`2oe);?NdG^1ezlH&-XvAWKw8*gPsl|ZsGEnNB7LLU_juVf1-B!dp_4Duil(e@$ z0oSNtdX-SS(Bu}OSkg&P*NKq-0m1aa0?cqO@(VE<1XJj}|Mp|V+7z=`q;yiBA9YqE z-+j>wzw1`>-lv_cws`b?Rh%~e_^+xS{^IkOyiEHZ2M1mqHy)4v``zEgRBAi3hn;Ys zMPb8_^)2Jt)qy1|pD8mdn=k5){Wc}54}kXo;67=-^pJn2ZXWsGJUrxVme3Kln{Vm3 z|6JRk#q-R+=OgUTu^0v4^m-+Q=Dx;z1I3`uv!yA^Jt3hSr{?k#43trebLKXCZnXX9 z&q=-IeUs$aYnd|UFG=izCg%VzU0(cfnBm5luE8HEo|1Wame;ac$0^Rnf$65Hsi|g= z{2h>eZZ**(MumrZ?(}IYKpujLDw%lRVY*rXH%SSc8G|`n$zm`DF=CN<;s92k7(I@` zl?nZd%1!k4`8IyIA||1s41!+Ct_b%Su86&G{KxTA*Yk4FPca!A#irQ@h$j(_5Px8} z2z>p6&EGKuBoMkW7))fpaK2?=U16B3z`kdrNyT5Nw>4yS)LF$OkKb;5V95eZ%dXps z-u`1rlD1dXTDgAi$Cv1&mMrC)@}9UZ{H;{H<=b>{sU*4a;@(37K1pRNCr{0A2|jO$ z@-*@pO?uBm_3(|_o1C1SXvuf=o<3I-THY)h$zhxfdGu%_4%D$vxO%fLbL7c*DC70TNwTjClplez*U z9w-qvmn=^G^E^i9aMhuPRx#cx6p!#%i-zTZ{+OCqw4Z|6;l4WPGGR%er;Nej1}=Et zNkWAoCN!9(#b)Q!DXRMASy&7D!-Rp~eo_~X9OWo1EUgmgg7EW*L>s`wc>pQ0^FyII zcYa=jCGm~)vAg&ZFt;Go`~{n!iK?EBgZ`Mw*ozYze zb=KLrutMX^{GUHx(Os*mvZCAO5MTU$QX8H2s|`70=F^`?0Um z*Pl;W?@1ljVxT0Jxh*SrE=;?{%I{r*qkrCy$QW$v|Iw%+JBBiS3Z;^`c=i4KX*?-} zNApc$WnlwW=|3>>9GG|RYLwW(M{(X)-%I!V05HI!;5yDisMRCp2a8)Bzb8+Kj}+Vf}j0M;eViAsKi zb}$sQer!1YE1lw5yAC0`?pD{e`Qr0N4YP~lt3S}lc=(i3-O&&e4b%=FiOV0R{-kqP z%QZb;U_SB>bg58RUYQ>$IB^IY5&=jU1$K8Z})9IUQD0Xt?G<2^#+m? z74{bz$C}J5dkM0`!ty%IFEEg=ZN<$$YT5N&tGmjMDWsOG8ts-`qvuVK&$f70|MgjC zCHuNgt_HICB&oZdz`z)`Nm~KsBZe7+f`o2NGVwYk;=o01#>Lm)!)u}ZLw!6{=WhB{ za&^i+=aSia@7}!yly>XF2vVHxC|v@^PK0EjOkaaGu4p7CCWeg1z(|GL8sE2c71#xW z7rGH0JV5j~I~PoP#N`LJwS4?8S!cExc*ihiQ_L@NxZ8Q?t7fnF5kQ{tGr&&p%Mn)X zUg#^Mg@yH1fYt3qPB|>fVQvpgtxJ*#W%ubJn}ALrcQF+C*Yt3~b1u#QfhmM>~# zd!$Oj!%3s_s#>edHO^RVnB305cg1r`$7A|bd^$VZ@>;Dedgr(g=g}2>>mOa|E6X`e z$1mg}Pks7W)T+McfnGPBcyFm1Hd*#BZlbS>**CwR?s~^a&hA?crKSz_H&dh6`|KVL zVAKa>!p3cKoDE29To}*jKLWR&IaybkU0!#UG0ScKm8M~Q#IGw|AdU&P+iKmZE z(DE-9Gd2OI-{!V7yA5;*5A7#oSWyuCkx&@%)N)EqrVN4Ml4Fc`%NO4bmM)-b`S+o~ zD)(~mM~Tn|pCKmIsU6i+O)@Zk=*@zInlU@m$}obf$Se{-~q#_Gf05<)VcZSy!z; zcqS)J&w#mRX?ymIyWga(ehVxvlt}zkj$t>yd6x6fBsC}hlZ3+ty9I7s&()YnJ+h83 zq?U&JyK60d@okY#6Z0s?i=g_Opd7RvUs1o!}{(H{n$a8LL z{L=^v&Qmt|scrnX(N*J9v>EWMWnlOU-^*n6tg602V;F_Up_FUl=)DXy*h~FekfPcV zyoPaVa#9yfqHn-H@H=FYVhgGWR$u4ZOMa_O^9d*!kWIRU>VdxG@I_I z58KxTrtHVk2v*^&09i=OR5TKfO&MOG3iK`5o4mt$6{gQp7dc3Z9)@VlF-?8IMypaV9e0FA}q46sdbt@|Qbs{VMyxbHX1E+iMvat9#YY zr!wb@PXb?IU?#Az@>Vo7=0j5I9ozG53aS&8{<5@^JpgF#;m%6`YX`r53e3c%mxzFx zT=J0Y9UK6sESrs&sS0hhT1jI2@yhq|gT2 zQgorhw<_}t+0!h}|2l5gCYO;AmW9|}Ul{m$p|lKV$-?sAXdX92JJ={&6VN0^~?VDT(2nZK`pP_H{gQ@Z<-?3LN zPNLWK9sUl=?%YXlVU&08l7mwhjmnP2W|OgRaupI+?f%!hFvCEhzj3g*MY&Z>Yo6DdsO@1Ro3c z>G$_FEh)ZUH#85~eydcnyW~-jIsP|~ou8q5XNZQ!meW_(--OAFnb2p!Z1sYh%f*cl zE<1+bTTM@|_BvW?X+?5rf1 zBur-X(dfdGQz^|?1n)6kY55XY7vO3)GX%AY99i7l+{ostXt@U9>mJw);qe%^L#WrQtXXgCpy>6;SiEpIyjP5*pl;HubMO4zV_&PH> zL)!Nqb*E{goR92`Yh)QXQKqG`5FxK5PHVqms5B&$TP>+E^M3F1xv|~VU(#i>_Y3I% z$E`u&pl=?aWK5{AlsQ_d&w4hAvYDMdDXhBI@CV*g&(C7yMcumjti@ULdh;W#dDcc1 z@)%Z0k~0vQuERXFm0+otp}D_xM{)VjA{@bM$lgCXT7!%FbQb(o zMgS6#U>IO{RGo=kbydB+5}n-Rc*UD?Z|P%JF-Q;0Jp^ns00T%S>==tipeee9#Q+}E z(Gj-GwULQgnF`rvYQP4FpC+~qN}9iMl>?ysh<$b)+J(1y-sRPs$2MrXJDxt+=W>Vr zYUP)oOP^uJ;qmX@xW*wgx-n zm=sg0Bymmj^z;x@N`W|v$*<|@Ox5spHfffq$wjWsUqjuBv+Z5TBXR!NV4 zM{q$uJfuk3)F=+W2Z%adx_l@_6KqrA17ivEhH^~+$H`zM4AmMW)g-yQQ=tT~P`&{k zAu~Q&=kK_fIILteHtXq=mH|I9pe6Suy4$}aZQtOtif8|~jhFBqp7yKmXrDr-Is3%iKOqWKB871P%g zwaEP%SH3G@XkF0nJ|)TBB42ZGw7b+rMI~{mcO_$RNIsjE(OuxQWz=>#`tIL_y9E_j zR#Mn3G!oQ1AHm(M$X(>nAs;kkBj(y>+;|c*6KT#52fuwgtE(HOw(}~fDpv^ym_LJc zirs`(GuP_OgqKfFjxg*(getjZU!g}JzE&qrh&r^B-V<(U7bWlJbDYXK%xWbwkez-8 zIoPmolM%236XZ(LL#MjiGF4CfxyMm&hq8il9i|Te7>66=xwM0}7Gv$1t1T@pVQr8Q z#;09)f}8?`?Zi4SblsuP7Efq#Jq6?mlVSx5`CSAIX+rQ)4)k*fUXzg0w6Sp@Cw@pWh*o#|8VwY9=zI^bcWV-?S>yIkD1?4_0mYtZu3y=Y7?w(9-a?>oXr8?v)`&<0M(%@dvS9 z-ehtw^^*m3gt=Hv4{Bm#2d4{KfDi(eCbF-A41*OSE$~!c@6UY3snAMZM!GIzuJ`6f zqap&Eh5m(xV95It;$svkuW30}yDwl9D{GiJyAOENK$eO`Erp2u7c=f_l{|H_$JlWy zHV1yhGUpSstVaM;4?>&0s&_vLQ^mym0ibGf`q66cHIz>G9+B6nhR-fuxpDw27+eIm zF}W3m7gN1Bx6Rh*=F(R`U;V>7XF3rxwHx9=$Ai*m>^4V%9?4hx=oDl7`I}-ya2QS8M&;8^Xe2!zi%wl3h{Jp`c3cqdvhgG4!=N16oz5
LCf{HXXH9b0yPwmU!x=s&iLl#fCm3;Bg z-h!%B6giB>{!?dXLH+OkY_HTWgx(j=<0S}|+ZP?7GV*-% z=#g`(CV5dl2IHXwNeP6VYF;&u0eZ&v`35E?VyEq(7F%%`x__M8LxT`#>P2sRX1Ff* z^?n~NDijEN5VmK^#|l0LY8ahy=A-$!F*~5p%X4pjCQf zRZUvd{muXpp+Q7|5nRA`0pJ7im|a|2%5zjw>5jNRzFkR~LJd5+;zhegNSi%Q2xbe2 zNbZ?mI{kYIOlPuTjaN=#!}|@lNS-5DD}MU&WdmMMP#3T-X)fSYQBlFj1jkpZdXZcE z39d@U>+jGOtjVIb=q;ATTf>_HBiD%9#bey z>G?P4-NRSjh9DXiHX+5Dm25{rV9n``iBlh|t3k4{Cw@ysBhbtzsH8>qh^QPjQ0xbz zQAc3n>(_E(P=g<+)?#*KJEbGWeRbl>J_%hC@t3%Gkt*W)KDA!E7S*)uWGQUD%YU4%T<3Tj69Fs@mt%U=RBMI5gfT zm@qMNa=tVRY(lcyhYuU!6PycVbkP25>8DTL_=O9)PG4KHsr)&j5thKSGM2y_uu)R= zpIB>eg>I^x$a`28WQD|Y)= zyq>&h(qd*yJ*uQrLIDk;M>dE!KOm2uPAy&6qpbD-YU)M5t-SMJ{rH%tF?+p%w8*zN zhzfJB=;{qSW6`4+>f|JRS4>&I@vfrj4=LO~?Kzg5*fct}y1-%-o8Ke7?9V!$FV4tj z$D3W@5;<{VBMt*FZ$N=c9Km5>4{(!DxXwMht{t-60H$5TZFFDH#Yg$vDIM*OxpewSNJ zJ;~)Ed=8LZ>k-O;qmgzZ6-+^7>0V5$_2I2fP%mIeXHg{|Tm@B34Vfq4%~3|Ci(!dQ zIGt$2lHZ+b%ACL8>+pIxJjpq88{UGi7~i1MW{{E^sD2mV{iHM528QV|Xg2safrpr8}K!=pETlfkM*q6TDi47Hd~cY*@= z=R1RvQo2!S?^;7+*=rAQJAEA-yZ~Yt`YNmwiH86`c!4@#;KVl~LFV&-{sHoQnp?P*4p;g8U#X6=adk=d$%MMEc9)KNxhY4p)ithDO_Q-3@56Thrz$lBG{wqbx|**<)%eDn8`J&S z`EtvL+$@P*GJ5_Y*l}A(vaqJUIO+vK0&TukXKaczgK<{20KDZk z1=5PJy^GK0{cS}~!sxWpC#$9|Bxad=$Hg7Qea*gJDf}&#@>?+fPg_Xd+%3du@k1}r z4~HTh@C2%+R1ljWb8CcOz-zRuP_oe1r}aF1@ZfXjsR^AUGn9_BX18>W#GUqE=fb3Bc|+!CF1N*6-7*o*T-ald{hD zB)E+i7B+v88oT%Bq<4|)4qQ&^dx zbVVsnTkX4_TH-Vo30+(1J^vAkMsZ`1v4o|Su+eZs+y>K^F}daroaKz$-@fh{)KuGn z3{kY&)?i0f^B&%Y?DcFGEdTN2rlF4K9&BoCBu=F0iZU9jroIdcKT&)cQdQC0dA#rC z;fZV1eKpT&+%6y*f|$%Z-Z{8`|Mr}W?=d6oItM8oUk^3+XBTCEm2=w>>q4%PP_U*R z+|e7N8DEzgb`0|i4C+x7syReXog&n{OtHw1@xR3y5pYr#H)*K@zI zlD=%H8^SnV;Bq*Wx`I{)-_I8GUCeYyHHyRB?-+g^C*vvTwaNkz{OxBGwlK3!*$45J zuGO782B1X1iT8}aOHf4#%K{slly`5toDh%3{O!e+b!u8WJAw^z{onE`cu57ue@|V! z=K{vh=FN{c97X)H5CuG@5z=CL91*%!LgicfV$(S! zJ_DIiu9=1W5aW7-S)lQHR5=Cz+HDqRQ)$PK_o;_w9P7It>a{k=5<96FHlUUfkm+#| zBPei~bE4x)c)|EBG49G0fT4EI^`0+Z2-Eoqe(rEqa4vY|Xn{SwlX`FIJ0P-+A0FHp z(4`gyNF%AD68hxicZprZqT;${RQZ_Zi_0yEANjWOR$(s-E{1#!_FWeRpi>s^N*&On z8U4A+si5rrxd9ud^N8qaWJ92E-y%bOB+}9h4G0+7}wSFPf_1ANdTczzoA$Hi(g5h3SBc4KzWxscLE* zw=ijD_Z{HoIY^S;06UP8xyJ23s-QaG1F(1Y;u0Q&HLIbH^(wH$MbYt+)Pemnp^7y? zKNT!>)@k6C-%$Y*jrYpxKAWZ*LeJq-HcFhrd!tuQhmU&8PIytu8CY08)iwE)6z$7f znWm=XSfyN!9^&V(2fK;7(FqelvP@*r8ol4mN}bg1X=_5w; zNpdXU#CF44X2cO{l3z13H5{atSiIL`yxbOgE{5&z{Ja%Z9YvSs)=gi?*)!(daX%?b ztbn~_86{8N(_#=QRX1UWB!JBOfFUPWTr%F zR{Z-haDb;K`_D3pPAUA~hdmPAb(yz7SL7_7Bl!l@rPkx+OHNd9 z#hR;;qR%kxPbK7}VcQ0lrX#g0+%kC8-}Rxm2>x_DhCaT(1)^*y*b}x{5!W8vxNT;o zDNM~6uaYw##R=Tf*qjALKnD0y;FZVJgy@go(5?MDsTP-cLNxzP;Ta$9{GN{W;=-=G zC1a1>*;5(GlarZkL`|B|@0>47Kt* z(BZ9)GaNMIrxFug@LvTq;;`!ykdOL6WmB z^j^jI3J-ZsbcenR(CIZGXs2koYXPBAbFUyLSVcQd;s7v6^Q3Sa4WF(x{A-bPl}klv z`3(wNNbN230GGps0$!pn0EYu2Q9iZ>1So*WL) zhM+s_C9a6J6n;$Pt5kM1j|Q^A=MA0i_W>S&<@3r$!)oY&X3u>}+%=E6klBBO_d)qH$z;5MzPJAtC9^1IE zU#YAx$6Wati#`W(VNHjQ?{|jWi+p9y3vaKxBGq!C$66OUN{nP@EMqD$rq?4!7XxiX z+}|fA=6@+beNiW7X~rQ4MaG?B#Q7WVYirj7X6O|PPwFX-X8ZAVV(i9a^Jj@sopz;B zZY|}5PuC$QxobUNz+KJ_@3FAN5WAD?bjg9l0QvTr!B%obc+Qf-sddeA&rh$^<+?>U z79_B4n+x5yz3M4n8moqQ*ZsIvXb>6MUxNgYSLou!z|xj!v;mN>uY=6&<|`L3lIas& z7|)>hy6xpyyj`AR#i;|-z1q%hV8d-VvJyPEip3^BR4k!oE7f|oA|OyV`y(N1VTqWxGQE=*~ptB4z{Qw)EZDB?`L=NK$Ru zRJG(lLqjuqs$OaJ(wt_+5zmb+WWQs3@W4{=lLg@*I`Rf=1D}yYC0Vt>;!mSm$!(Fd zOw@Mzv(g)Oo880T^}SylEM*y-4(-w+Ks{J1$im`cr^?ezK+;&ry~kj{JWY6dCexq0 zZsPA>&BRgPd2t$vaK}xWKgV-J{Ipf=23^;`qVIkG{^sr5jU&!)k7CLJg*oM2u-SKg zS|c0;dCo^*H&M>s{5_DlXx}#JB4IyCl1o@iSa;W3N)v`tgjd^x_ufw=bccUz$J|zP z6=Ipuho?%{Q91KYeI5?ohe0>XFLa+S&y&vWjkMz-iS7lG`~LKDN~*pjALf@U=ox46 z!~@s_uhpcfXZfPZ4tnw8MJ@02AefHx3k%3Ea^o6Ar6(i2G$+r!|7+aY0fLax1h}3d z`yYr#KRbQ`jJU)_|y5jaQ$zPK9HjFm3oySI0AG<*m=4;ZhqW>A$9rH#4YmWk5w zIG(0h<5lJ616Tg;5$0jpBL&>TH*yYwWZT~0eIu>!DHMu@a0}s(lisUfv&VAvzG_AD zxY*cqC=DuJ6usL=t-+W>-4&(3jzgKg>)amdob>(wX0U^OdCpxr=wKj`d;_4^cLA91 zMxdJ$>sgOMNaYO}Jpf$=*C6db#OU~lPtpJH?&U$?$|1?S;1J8#Kq6pISm=LD0|9f=h%(H$p(r)OrGM;iD%1wfQy z(RWJgKr4ZMi~V0s-$&h_n78(O(W;|%WHzNFUA^>_TREBFYrIo!*`>A}!Lc&5R|-5V z{pq^O-)No7d#3JscWfOY)?m_b4R!mY zgz6_`*;50`>`Y4wIDd%9-A(D(qe7xX5Te6!&=7+6wQJVs0^(HGeD;tx=Rm{GdhUZ$ z3VAM=ER;Z`<~aYQr$JXV3>@e2bcYfLzJhbLynCvLS$d z_nNcYtca&^ZxTSrm{chvMEY2)qmck>JLW{q4lHUd2QDZC)?$W)u&N2M*rBYrqcf4_7 zlf{0p3c%ic-Ks8(3g008%Pal@foSo{vQtG@Qd)5pn$D=!%(iPpfJXlGMMOkd!=?)l zJ?HIH4SveM*bPnT)|2eex&rf4sKNHd4@le4QcC7=o7wD?cL$^kp1)yzny8H21!^ND zYs$n6hohfgscY~aK74u8GMX(CHXP=xuOWW|Jk_DBK3t5MRqAFwufFa8kQ{oD)WkD8 zt+i5LZ^St$R60=w^ir@T2lmzKwJ21?BZL*L=!+A z2UFxiZ!44+X)5i?ITl)IB~50Rv+;}S|N0{FZDu5GvfU_3{p!HGOh{73^808vb zV)MV*l_%wrL|0Glt(YguQy(w{9J0~bZm5!~(jMQbU7UNqAvB?CN#?}s*F&oa9m0B3 zK*YZP;{sS)H!=Q=iH-(RTOgmaZLU_1l6@g2qwczy=c&=(Q`aQC@%8B)!WAVyR1vH5 z_HE69V6`0*u9^a&Rpvb2ohnNDcJ=4g1uo(%^C4eZzW}}gA79@_C#Pj_u5MBiSr91d zIP5aoQxp#2euX9mPSQgjIdbHHmZimwnU z&SpgyhO;#c40{9xDcq*l@Uod?DO<|k#)3+;S>&R)`PoYEwdrx}9p4m~o1PbRXeyZ| zZST;$jgcTPe}kSIhAhNvP_IK97|yChgz6BQ4#Z>sXQ+NH7JQn!-I0<$YQ>W2x*u#-7r2u z8C->R)Zw?v@{<5s?&GHNVPN6r8kEBJ63WWM#gX9Vie{RHCQ?jry5G*9I;uIpbocrT z^|I5|p$MH;GuArpn{oTG9V$E>9bMQ^&pACrl*}e(V?+JggncO#U$uB{Ugbk*yYzU; z3w6`$6++>2Xz+!6^6GwcQ z1juaYKL}$3ayo2pkY^YFH4HL}Cdd^SQxtz1Q#y8+-r5!O>I}HP=xH~|K0hwcVTVD6 zd`kR5ZLYd}7;(W{gtquGm;4@USW*QLQzk&v6<RV+1lx?F+73$G|=FIlAqzc%YU zon`xGvr@fyr<%ZPf&Px>G3leKNjmxIVoQH{UXDQBvYE{!qIGljg(Z>mOCnPL0}al- zilsM98r)Ow^&~WoDQ7IDcMh{-4RDL2pNJ0ydUa*ZO;?R&f}h~Zb|e?v-M}$?sf1+@ z^n_&^R96z8g{dVIxPFBV03M_mxq~*?H^iU;Zk_B4#d{Nxeim`1%gU~s{9M} zG~Bo%I-Rt%Bu1jFY`67z|9kH{L-l7S9NhD~fbxC>`ijWe%E>ZA_z6obC=T>Gtqz(F)c7?r}8w z_^?bnis~t&YTiXE7M9@N2)H6;4VT;D$d1r`JZp2kY;FSiVQJwaLHD6)K+ib-cV>8+&pVm4DSOm5xSIFl<~ya^t+NUjDP6r`mGQGYWb;G-FAB z<^`(nn^O^PMB}Bm{E58M%J`+Kn=m``Bvb1`WklHi2!dlTEXMW}fdW(_=K_$$a0vK34*_flZtpvvu6nmt^@0tV7Lg$FRHYoY|~MM-AV<>e&7* zy!X3miY!ZaLOc&w=TW6IITP*)3GdD8T~d;79X;K4KPqZhg~$%<{RjT;W}I!6l!VpH zKPwTgJI!bGsrpR4Y((YX8c0{nqk{lYG=NT@G_wW|v0qF4J?G{pLz{YIy9n+6%#+Gz z&}yj>PP~_(0Uq-~ZthDBw|Ad~tq4w+C>J%5_nv7Bovaz=; z*(g5`u=3}U+f&teMeaQp+)69~Jp`$zLD+@gwf{Y<@NbdU1Ep zuGMFbDD2vGJ8o%dQ}E!6edbLEPD=lA5Z~!i`a3+tx_Hm=T9KF23w4a`tB;H1So8&W z*EJlJSIFxgUHuYCw9K_94sj(VKkv3UC?=*Q-ki7^DGYge!!P@>XE=2DaI?`Fy-R`hG>D&$V|@etCv}l)dQw(Vkh=z*BsSk_*kj(h^`tu*;G8s+ zA17h%P@iUr;3JJap)@;Kky9Tqcca42r@51`i6R!YtN%0Owe z$Z?v{-P%xLkrNUgKGI-R5F2~0Bk1PMiO-J-xupCa8mn{k^z{~x6))??JnTqH>$jDc z--Hrn9RLXX>b2mVSt@J*=PTLo>ad2{%o0H<_8cgK4C=Ei}6fioq=hzSdT2EK-9;`rm`W&U zYWi0iG#a1puQbd|7{C6A%$%FV$v47%^WFyojtnXL_`v=-^c2rT>{3lEz#co5av`S9 zT)IoTl=tpgJgQU4{pbu4_I|s+oW4~Pozfv*-q(NvahfyW_!THS^^oJFB%%nUyq-$T z#J9{{z>^?Gi^L~0F>izTygRT1(Vv%o=Wsj^3jU*#wYLr7vIV>INafnjOh^R55je-ugXZJl@+N9{*g0*$cM5OdKaR zmQx;FByFKZZvQF@BJGmjbhiIFk+jrTik61!}JasET2x3iyhcClo?cm;T?hDBb*$S=qR zqTaoG3{FR@=K1sVMB584v0%PouA=GRDfn?ZDq3Op64Kn<9AzGRC|U|UQ+%5hy8Q8j zF#V{*)OFX91PbcNBYbs42C7Wb90{`Lomy855`D7Z`FCu3ZyN zbUAPEYpdD8g9p9e9CV?3i>%`fHYftpGBQn;XK>vrlCu`g@@+e{mrj;f_H8HVCdD86 zGj(((yG@7plJvX?=)k%nwTKo0OmcP=f+IZo+N zuiLsGK=DhHWk3PZur}oovArDk#OGoIoIMX*jZA({+$8ey%3K2K?|1q}H>du#WubIv z>fd+OIJ8vL5SpAdhfnsT6Q69x+Q(y%w=cVM45=Qgli3H3i|ChkQjcMM zW$Jp@Br!``gIc)G>%v-eX4~C$ZtCdnO~2h)sZxq<&Mw_)D-sB z&+YnBQ}bAY4=>v>^0EanpZuVM1?Jw=Z@x6ddue8*H4tep zxq~PV&%|BwA0|zm(a7r-V%>)8r&*i6ucwfUDVLkBwP+-@;Dr5Tlqm;0d$q_!;kOJA z16eYop(|{{*F{+bTqwQssOR^WZV$t7TH!5{u6h^*7)8MqByTjLMU3y&IMdvXjbPq* z{)nPA-dqNgm9g@2NlKeZR!j0!?kY;hyOc$)DhKc9QUkVh-kp7Ga*JH3f}TE=vam=s zJHGwR3#GZ@yXIr7GbCk6<9==)?8pZXV%M(@xz)Vj#W!}q42<1IsuxF1S#4*r^drUP3GaL1159n~#Z-AFd z&~HIINGPM`dWF~mc2Yj!t|)%lhxD5!+M^o!;Pjw}iVH8*A-@Oe|*i2{c~ zrAMx|8%d@9$UBK+QR-jKL7k&esu6q>cidte>dh{lFNT>8W^~~}L1mb=N1VrVb59US zG^dX9Ch;ptCt9t%HKOEPq^I ze`DG#`rM$1h}wneCs|+3JKpKxTcAE!l9@9%vO!{9cY)JR-HiI|tDN~e#77rYJxQb? zQD=YJaSGYU>%g+`^=07v!c0SKCT(rAO)S9HtBDj7;cA^$E=obXu6)W^UArZ_No!~< z&Ajrlr;1BWl63}0UvVL0Zn)Lfh;tkbkFi2@40d&nZIrS>*+=jI&CK#4>>~igWfx4xTB#1Q)TG_RVxF+8aAPI>S=-b z4g0%Rp_!H-we*82407Xp3O|1MFbUPm>hA$7wtWXCJ2b+V{_fsOd)vBwv21nNps+Bhub982boLf$CBd#+>3*kRuEy}L z;q1#QU)$_LL|PworOBle7X)(FmPo4c27BErKXvpnj# zanEHkDt}0)J^wt9rhLLsX@c0YUAp9JawPb#1w1z%5u?ICcWxNiRPKLD_7;RZ@U1HG zmqhJ}q5oPglM86M&g9pj{-C+_F|ojYkK}IHoJz}7@1(OYkQzvBid(3i>`%Y_n(X>q zAO?znLV@zL!_frqCe{?Mz#K?i0PgSL=_8qoKTx~)*OEQp0s{ks=C^F#sP2cWb-N#_ z!+G0!rTvYNxis^bdXk&(_zQN~KPC#-6czU=b?w&8Qg_MrdM2QMVZKL+714Z2QZH{i z?AU@kg6MlT#r$_i>=|jv4Y$ab7JT@jWgo5x{~aQsPUCq}S!(K7C*eiu&mT!`x@996 zr7@5lLe~}Thzn_5xgb3H%0L)bvIZJF9p5~qqD1Ma>*=uk_$gCwpsFh103W!P>+HI1 zwt+hJ8ZI(dM(SlGC23avw3g(OYj+x6*Mtchr{r@HQFXB9&o{9^SHAcw&~07SEDYO` zOcG}4k>cjj6H(`|QxP#NaRkoC!^!*j^pkd~c$Dny4>`O%0jbFnMw}Mr;hU{I?>730 z*pJ$Zpd@Jv&m3o62ddfm4&(WRTvZn%Geg5SpSt&>*pw5z^&B02Si&=&1C7}`o9=g# zx9JK`Ld2GXSL#dL+#=nU9RfeW6y@SeahE%)PhP%z(z$yBnG)o8;Fer9zX(uZzley2 z(xwhjS(Xu5wV7R`fHNR5sYQrZgWBj^3oJ}Y4MJZambw5nBiQIKAEew_tl)F?pqRYI z8G7-zg0AopQT2*p_R9lp_@KL)v8 zWA*}um^k?TJvA;+OLBp3dgq~Y^kMwIx8#}xEwSJu)-rv5e8u&*&I`tIF_3}nwFW!2 zd-ah5e^mZkty*?J-yM}O=E*tR@vk!~FJRCO>^y-hw6xV8O&(Gpl1wZ>0tC4?RryDf zbk>|^p&JMBSR*EzAikzPUxCTG7c$aRjbd|$6O*`jcob$2ro_kV0u+a2^wOs%K2|?c zR&0^rh;{3luJgrNr;QK#2b4_N59w4*opbfDlw!Frjfk-b44h?-%t?s!|ve_SBy{Fhn1)p6|hEHs0 znXWGMYl(T7D3szT%{ACIBfNMsxF*B`R9S3pL}%qWnpS(WsI4t`EM>l4p|R-y>C_ya zupftjxWk~;Rjw670`5*qv|vAsnfZVs4x*k9Kp(GEJArH(+>6)L)rWs~l%M(EN)M0J zrj~3Mh0FhVRN(v2a4HM_{?RoXRazr(5^-o__qO)6KRZ0y7bwL1DH7!rw!M_Sv8iKyMyt za>db{@qbN4dffVjqaMe1v}|IX!=hA0DwjW)3WIAp_khELhlTKDy* zvq{CqXX8HU4*Ym{%hk2GHx8QiA9%Pn0b=E2Y(0lw-~4!?L}jx!10!QbyBX$OM>3#l zE#+o;M9W!k$a3*Yp{J*BLzv~+YpXk4gk#Alu!q0`o>|vLdk4=MQnH&?pmS;{c5!N* zM+3=JurrzH(m>iqY#Jb;AHU{F>ffP5@=BP{(vAO}0eNYHL!7d7a5(v|iRf2_5Dx`& zx43xm;E&z>l#U((55vmx7*LJCPb8{`bW^{+eKNge=z?4O7jC~KN59T7TgTbq3gCY> zn$Ol4A@?NgllBgbb8{=_loU-xoJ?1$3aOoLFuEd*rw1$xI9A}V=@ZcMQ}Z+*w+ z9HvQzRGBGLmj23{$6=WzsiwBw$0zdlH!k11?Pj5uEcj3nVLx}rtD|Sx?3#iC(ex{_ zwgyp5D#+;Y{fpxNJrZ6Kx!7ksyQWO-Il_JOh>q-zx=#lX__Kg#@?gEVFjdVbwlgp= zki?4Yq!?^E&u)R_*2hd}Wthm_Q11ZW=dTS6F}b;6(A!hyIXqHZ=180$@#_HKpp;ULw8JW0~-$SmFX5`eJp;Bzz#UA>Bc8}Q^F!V9|$-YNv$8@==en;oX zxZgjOQUO@~yjA%a7Cap>f4D_NI%8ym`O1=8=5C<*CJ2+xqNIyc1)jk?c@}skwDwu` zxd;Ms0M}5-`k&`|r{#|s!ASDlIHnEgKz%PyI z)}6m=_ffmrw5K(%ZtlBs2-j50{BY2IKE4g-<(=ogVSq&J;QwRmz2m9=|Mzh-Qj&_Y zGs+4{_NEe*eJHb#aX3aown~&jnb|Ah2-$m-N_OEG$FZ{a-s^XNdVN0M-}m;r{a$~) zZ?E339MAK3-XHh-bzS%Cg5vPItu0qy;10y~LZ~`Q56yJ)7E)D(nP$eWI8i-i-!G1}*~=A&@6uDkVHQ z(Jr@p1=$Fxsxor1yL{E$g$ z*lYx`0HobFdHjZHt7q$;Ef2QXdm3NN4^k9%NZt|k-P>}47l`SD+XuuA4WfzlMZq8S zG9=xUJC3|i&ptCUN8`Kovd5=Y4)@i-kRM_`M|WQU(^X-UB+ev`mEWn5GFcT-rZ#cj zgrR}aSn?XQhnn~A-+%m@T2osa-j&bLiH%K6m=)se3)>whOwtpe6JA|!e0Wt;Q*#(S z%0Z%HSey_Z&WVFPeOg5`2n2l~Z1#f^(g;&F;dT+6mLQP}G_DjJAN2Ii?nl2E0XZqQ z^#@QWN=eGDcf*rS+GoJac_% zA@7i-HiSIzUNB*PX@gg}9cST^qXZuVn?RQ+dk&AgYJ z_?%Dj6R&lz+aA^UOFfN!g~Kv-Z<0fBTdo?tira@EuJp%NjOYUx#b_ zmY!aeFPoP??M*F^k@C{NO~=>Cfvs;n@&j~d5ZIh?^3*^GjhcD?mPMSM|N~7I%mXFzJO6929g*Tz#VI9 z?|I3|sd2Fdiinw_D8^+v$58eTaXo5oyrZGMaNPsGv!f^cFUtb3W*a?OdGGRB zPLVgiZTrAL zUbp=`6no<|gQ)qVWnFLY zNH%ym{CIfd*p4@tws7bg8Y2!_tHw+r|CGKZ14D}xC*dq{DV4NBoTO+M;ZZ-B^$3a%a z?SG@V278Jpe!xj}_1 zQXkZy@dM9|j~F8Cf#g0405K!H{iNW3iiNyMCW$XlPm4!oz9V30hs7-bht z+UZE(9u???IrPIr=?EkaZqQ>^z|5TA_xe6mYQ%LP!FWUX&psOI^5JRr6TzRq*6Vxj z+GnMnz}hiiSBFj0E(i!=&B~hbFVD=pjdL}FJv(fJL-}}=!2r^8|6wTs4Ti4mz`cme3aLRARf39rtKa@Z2=ns}nng#}pf10BsA|766lyq&$KOa<> z@C^n`qISnh7|x2p79LvvVuKvVfPsZM*UIekC99jRl><1D%9425$^_Y}gq(X^Ri_;A zu3WH9caENZrtks?@`w@E>rp#{W8Cv}`&BV!m*B?|Gc=t25JqtyO#I=mCTFJeJbU@> z@Xzz6UG9&yxL)AH;L-1Yf)PhPaThTF15P1(0*=%ftt>FCw zEc^Py=G!3ZHp_nx0DLTDnnN-bI1IO_uz7!ys(}ypRp0r{@luz__wO~+^e*DoJ6!{M zIiAqb(|g!$@y_3dO25)5O~%flM56g3ZSYS5iwb$^VP!#J9Oy}w;FDk{Ox(xmY7Ta6 z6ZFo#Dspo!#XY9Og+X9y7KvkC(pyse_VON3ERGydzY0eZ2&fT5I-iW7&9FxZun z>kap6YID3@LRJ|=9SeXd198!85eMy)A%o;1oyc!ub>I!I25%|~LEsS|Dq>@GxDAn+ zp|usvY-?e=&I@dLbIXxlCH>BMn>%Mx?p_YZa+hq}c`^TcB8R0BGN?awfW={|AA%8` zJMov;uUyCjb~df?PeO>dfbHzub2 zXAAI?91w02M}Qkcy~)9szq*)H6B=UZt=!fGT~~q4(>5~t(uuusTf)=UH-6Sy`CqQ8 z;p0@{vVm5gi#vN$(H*cB9w8yOV7Ql=_xEA@@${pg zed@mxia2SNUQZoSs|_UY{{KeS`)kzTKin3rIjwYq0(Mqid+2Wnm!#wa1Eb^YHzJNG7Rz65b;e_l<*tEq4YHieDE7sU z${TiUVUUspZk(?DoE+{S{j}z)Uhx1Z_gM6~j*bS7*%YuL_)b`St<20H5hTpy4&xX5 z-R+faU=x`00k|+AWh_5GQoaNUr6;)dW5B*w7oZ)36AHy8AR!+3-QKR>+L|QKmW^Zd zBhQ9|-kD=49=Z+qnuO2jq-`!hO19;K?EVI>u41m9Km& z9erJLjL;9-Cn}$Tdo0~s&+|pKV!+n`L=DqLsg&m@FsfB3j69S-5JOBU!m-9NBgi9; zmdn^z)@zOSZi3p)(O+2ePX^K+pmG`-6-6Yn2oegI&vX%=7C&;bMKgZ^h=Zi@q{%kI z#=HcCNaVEX(_!*_{Rjjj6;soBTl+X{J8~OJeYrz9@*dCyP@t5RT}bnA z{ObjOq(tsSuQR`bN#m$1+%_eCz0;Jx)BJrG0dR5nS3>eu%TBh3t0-@^qfyYK5H1_m*tXS_cmA7Z63jyo;i)47GYLon>cN~J3bPu=- zy;iU__mly)7{281{?h?ra53y|L{{|gAdHrMtq{fMkussj&PMSK&J+m}P^;E8;n5(r z0SNit3V3-4>{g`k1o@meTY<8*-9Ol@MdW3oU4X4Sn22yMu`l!b+z<6c9HcJX;6B? zu*D%Da8FbmOc+A3_9L&v2=>{{e7XSbN&ud;{4cNnd7NK^Unib>ekjy^*=(?8O*^YQ zHv_@#K)3eVdH2sKuvbSF3N{8BB5~$YdbXY-Fm}KW`Wz!bvIlD!^0@6Pykq}%;Tyn7 zpQfv>_o_(Ctvt(dcB6DL{Ol^R!2*q|(W6Hx4Yh^w@yq}@xI73wt@QfO(MuFX6hR~z z>nIP6El88`yXuLjgZ@umCx;aRy zs!AWZYAv~?-B?b@+FEHQnNov-w#hkxa<~`G)gUuHk*1J9_zEjNs zuU}m2Ee{VV*UFujqS?40AnKN{AazU)ISnjFy^dL(H=M2l*x3M8t?`jM8f-I>1-G8bc(=2*8F>nP`Ev5l0kFW>1^nsnSx9Mv z{2kbuE1%%w<3pwuF++>uVJbsf5Nou;u#dvUL&Y6^PQkh~%M9D=kDzVJh5auX5K?He zecD#o#`)F+eS4_cT24U-nqa(DtH*U?f0VyB5fqVRAjQzqKxqAH3#9F-?0>rc1eBUf zgPx1XY|%r2+X5Ir8c;}Oh47!?#5ZAB`j3vY@7^dIRx%5pn{+Pu{MB#G=9uT{lWqB{ zhX*u-!77-ib51fsqm<0C2QtC{STA%0QNVva+pSy2kY!P)$66P^!+Qy)Yd?`+#F@=! ziyd$o`{4GJf!D}-&f465-nK%yxra(#oQX84{Y?>vFUx5EOkXTj$>St)cK^&;Kv7Z$ zuaO!Oy|k=3t@4{i5;4F8^BXYyac)h3U_c0_i#&u{3y=SYctkQc{YY$JdGWtj@xebG7gl%s5<;>Z$f78Hl12!R!q{N7*0C+^H96pkpU??UI zkxX#>e~Au)EiJGQcEO2;nA-W5vD{??ypd5+0ia!>AViz0m-n{|%=McN4cd9J-7H)Lr!)X#Pihk&~ps$BU6kfg&B!ra=>g+Kt z+X(>$sSoEI5mOaddc7yQ37_Lnp_K-ZvzeXPr}W1n`{9fC<=x8dwh!i9a&_D4)OY|^ z3+RPc=S`A-C!h?M2xYjL~6_X@v`3_BhUjr!Q+>2i{ zyC}e&0WQZsK*-|upz#Jb`fBxTDjj)#EyJ7~99T4j>Tv;qiU`}}k`UAS>|Y=}%$`&f ztp)=*YQ7Bi|#Dx6?^w%N?*Csa&Vyy za^~OtuAykFl=t1V$1Njf#QL#Kx7g8~;NA({UuXa|e=RWxMkAyb%3hx3_QE(A(CmGw zqo{tk$~N-7eWoGx3(#tC)c|;(HBqy_VF=EOGfs1`P1##)8*S?a6%a{jZx7#b&*&Pl zZ0$N5M50?_2E7O>N#Qk*MgINYt?PtdA4nlCaQ_5`;(1Wsl%9R~zgnf^Wgw7f27@Cw zt-49f%fuwN6T9|LFK1sqd$L~30FDtbRY$VbIIx_A3aHsCU|M4& zy3m;sie5#Zmlt=`lex@i1)L1X#9^aFd$$_42r4I5J!fxU%5ezErw9C_W+0CWj zoS~T$dU+=E!sl@_PEgJe2a_33#N*f5w~%2B%ZY$WRC!TrP{rq7ri%(LuB_5eD|mnhxo+tW2&xC%isN4MxMX#^W<0yg1I~Y4FW+lT@d9p$L>Pv! zNMk3UTTq2@2ujB_=>D|<&xWd*gSLk^5zLRC1LK)x@Db+Cw$c0NN}-K!(xqIS+;te{rOmpnt!!s-ylu@7VA^ z3l%l(APqw#JhCvTbl5yrOw}1L(Z#3;y@I)@vOi^@3#C;C^>G?Rf(bpmH&BArYua#n zZ_ai{`s#qrPyryzA+Ob7Xh>kQI`<8TSrOS9HUJxOYS{_k$I`6QR1>~q;Oxph$9B6yYGeay6o`qhH7isMbvzIG zzFz3{w^ICc+QkKj(nqwOxY;@ox0H{DNK52yS2BD6Yce74owY}QF0Q+Mg^LeSfrXA% zVTnR2g5yZ3tJ$bff&E0c(x8V|Qx9=nJj-+C${HgT747l({bJ}mWLTRU8$sJ1_Wpfx zeG_tC_>lAB^M7|k(9QgUW#L7q*+m%arofl#NF@E3_>;2X83$CqmOia%I}cf|L4U%2 zL9^~?(B*qumjy#2>$2;fJ>>brqC#w;lT7-aScYtm{JuZup4`}E@hc(~-%W6L%$xuS zgfOxXw#;YGj!F~cG8yz&skLA}-AtQu?&c9vz-<{%Ni{|I;l2dj<=X;C-1Hd$>@! zSO)4BB%(&0|HNq)zEWsWZ9=h_`CEw`*T`TI+Qw8M(V1$C@&54^5>|?Z@3cOp#Dc_9 z|0rt@Deu%c2e1<^O z5=!&Kc+aaERn(LFuNTO4NOt_UTo_bHA|@|yiY>d@8wUpo7Jqooi-)>i`%hUZ7KU7^ zwnx8778pW28MH8lS z>#F>rh}X_x;Q_uR8J18@*ed5s`n}|}c0CMR6SNTo&C(bcV3=qS)u%a-a-TkZ`fVA` zaYfSer>CuQSZr)iDo=qEd>5~!kT*e#;&R>p+hc(tM;J8qO8`y%O;#kunbQt@=K6tA z{e+fYAqO?4u^}_AC)-iiJn6fW{$WF%A;hEH9zHd!uMjR}68g5sF<@vApJ+t#lw^lJ za%lY?ApZ{4>-4aYpxY|H@|%-YHo87U*Oo#T6h_`YJci?gwD_KW^g$USO_`w&NV^Az z=QtScE@fWSKX+3s?%X3VOYw(#l*d+e?%cWCzR(Z+M=7O-yp!O#imAhJc91N5{CEMD zJlnywtQ@cgRH$TsMAg#w6H+<3QAKYEbl)l?pz8+5J+Wu!&k<*wCZOkMj6yiAS%WyA z`OvAH-lq$}&b_R=#q3>j_#$o5)s)%0jFi?ViL8W}f5~Lqo42NZk&V>RJ0%Yg>aS=V zpFwHv9urW7ZO}kL%5Pi<|0+02zZ{2otcH)b*4ZW7XZIX%d5s)G*^#V0Z7N2mM?m>iVgmxj%R#B{qoU|{UI9k<+5mZXNPaLl+IlMD zj~crWpc;{=cci!a`x(h-{qXnm*n3OnA5mQ3CT#|b0mxh$a*}FC&z7P?Xo_U%fCD1RwnqkbW@19%{Do1}VWn3XiJO2Bi*f3?DeNEPZ4G;u!k;F7Oe?whtfXjm-N}q=!w3!eFm2R<<jL(E($TNLWr*xg1P=k+ve1OCTR?jP5{SjLr zcf+`6;}d1vpEwF$CQ)Mdz!sCLGWpcL<9t0B#QE`n?d$RTC+}Wb8*vlit6vO!KKb02 zB#9&tIq@4HMFExHLmUCh*wbE5MQpKh4sej5=*kO~1+rmp>1DKlr7|Jv21w6Rn)vMD zUene-1NU$T_6FHIXd$2tg2D=0pL*H2w7_b(1!!*{ebyiUFJGr))h2ccq~e?S&xq~l z6~mId8My7?2B!H6=;m|gQGDN(y}xvy`qVA)V&a>`3oGC6i+4yI_s{AE4Ed7(`nTna zBe#CVxmQDc!Owr_`89_@86Y^(_JlGgKw6}(pMaEh<15A$x}x@7nIC31L4;-jOA3h^ z9a#czq6*J%f@~V3_pG7k>FHs+1qo;;d4|#&>YaB5TWD1cjm--8EU;q)A^A~ot)lM9 z7F-L`z6lQ>d$#sh%$Xw#b-VH6AN7@L}#>n#gE#AFSe_(^*=w$&1mLLUoP+A@QkRX#orSX%{E z({dSzzG0IId_keSd_rarvKWSTKPC>z;f3y;xE`@fMBvZy8PJg`U@oM-+~p+0s2*Xn z(k)<#zO_W>%T5*|2A^^Ne7FBFAz=r1f-&UV{s!O zk>sSlido&=kvQ}?gihox)9D+1ga3i@bcl$K76D6(CT_8^&Z)9 zN5h4i0>uzyE1?Z^NFzO9wVrc&0gRDUAOZt8VH3mtv9Yma9;ycq9!PyrhrZ4mpq0}c zWG!2#%HAqfMi2>KIEj29xHCNo8=l~h3Qf~3C<%}s(PQ(9tXiNEB&aeAr z)z1Mf7FP6~_BzdXTA4$*6j)A;Y(AD)sc5TH7}lseQCC@Kb;EZHW*^9@uR+_xtc*yx z;2R=aP#UT_+3WyEjKwCqgo2v!1^{(1=ES3Yz@QQIH+{kqnUbn>L%KA?8H8W+er0&U zk^o2z)jappD*KGpkj3%xS72n@3M1+9!oE2doeo&`hfd@L?2y4fYbU@$OluMGuA`(C z`AYt$CX4Tg2n4t)8fHEBoPQ?ePcDHG1j2?$eR-D*I{9q8x`qbL+|3&~;PChqduPkr zhA8*&>=OAB>(ZGeo+atw(yq`YaGCnXS{>DsXW9<5>a5R765ZBC7O~KP)!5Kfcp{&Q z_DhhR1cbh;hqdrzk1O)>L(5DF;^AMi;H^G)GbK5>Zg%v{lM`-jwKO$K^YEP^vRWux zy>SXKE&TVsuv>hmEw&-GKkQbLCZu5H+%=pzIQ2~eoB_Paz%0|tWGXXc za0nD4hbbTrOI7RpeOcg<$kM5+EElNPD13tbheX$5}K zwS72rq(W355d0c&I)xXlRHnu76Q-3GoJa^ETU#@d?1!&S1=$9l`+j7hND< z7dO?YW50`W8tvPk+G+2lFI{>Czrd?!uQ<90{h?bsn&vGZg?WOMfTbzA2<8v8V#wP* zRY%tAXVF?kew#at6yA74hG;RV}UarR+m~cW741m3;H=yjM@D;|FaOsmx6v6HL z4=R#wtBvP}pg-Dh%C+30wRV>(9}wj(vij6g%8(F_?;W##Gs^kb;^JBF`o;gNNji@* zF+sE_FxcIrZi5bdWCr$dQNhKi9U^G+G=obWhT6FK<+Rw&eFn(UDS!ZDC`@b~vcDdr z#6?8h0CuLQmF%WPLH|6k#i%|VCg!-C3*cP^MzF_=0hjP+LB=B~;eVMzI0S{09X{5; z^bh3cvGRK(G_0W*LfHox4v`Ga?bXSbg??0BHtn$GUKfuy#JL(67(7%L+=DrXBLa?E zXxgdTBnsAJ$A-6d8D1~#N-UW^WY`HD(l>UYLsH!y)i*hOL5^#P^uqAeU%uSSIQ%19 zK$sy-wo%j`%xz*~VptnoU`JZq(4?A zLlj376CLm`pwMPh7YopzxRoaS$rfICb~Hjj_=lW%J>e(K&i)*}VI=qyUxLZ@m;*_M z%<_-3AgX?&M&3FQ|72D3mgg^rc90=q5Kp|8u(n}x$haD5jTtp z2FY3iahFJ}{Lr-0O;)8PD&QP;xk4e6vXE#psaVZVzke5F5?PI<>@$+w=Nn zH_6WiP@AVu^-wknbYRN}#Xu@U+YD3}%)4i6TgT7`*0 zA>&aoYR2V>NS3EYA5L@NTVq550a~~{4mWiCeWH1RuddABEXVX6U#4Y@gM9-CWHu?k z0>Iy*Oe1>(J}-1r-UEVbFD;q<=Ekxz61B1z>`ZK}UQ41n1&`#G zT#03mnZsBKaU2|b7EEOhY$1V|loa6>fq@`iI)TY52|dgSvWy>VV61;$IO7KN2CC#r z{?RT8a_rUAIOOG%07VOMOkWRA|(zMZ5^<4Qo4Fuq)v{^6I>GPj12?w=b=V&V!5wzuGR#$WuEg zjIwtgK@UnUJIM%7V&u?*sbb!qoZHFK2hzVT>%TwO|2vI@;MqwrB6vTtzxH4~uMgG{ zZTA2>MD<1em+Kd^YgIU3l21d!$YtT{(62;gO|DmX@fvuHI9t z$B!Y%Sq)_4#qG2xL$Esl><{<|UBeXW_a8q_VLPJaeQB*hvFcALYBlaU;L8YzC{*wG#uJ!v zSGs+9TP0X6NlX+(^(*QTS5dudaIU}YNQTe5$aITJOGiM^$9eaQ zHMQ5^AHO`xKYnRp;(zD$M}OvVaqXRo0wo6a#XQ_RS3yb1DBA<|XyncDq6?-Bc5IUp zftxIsc^eA_4f`FWJNQZw1qsNAK*g({GyxFp#@ye7XekN)iUcNx&*|wOVBG@XlOmxk zcG$LnCjm1%wA754F`KIwK%~JTB&2Z=4|mUvqgmillh<;OQLEQe7z*JP;{+ib^dHOL zPY5AlzdhySbqe;GSG;Ktxl_@Gx-1t6NM=@$T!FVjV_>! z!&H?zIy#s9tA8_C_S=;(>RTy4PM+UGY{yb#kiqw=WzAN0sh=l}=IIU`nGTo}!~l5! znp`$mct9q#^(|0`Ho)BD4yqh?*q#GsKnKTt@?rZt0HA6(SIX*>G64IWptV2aNYMEd zMDWpjs4TeG9#pMG(sb!oLr?mx649##1bd6xZdC(3OFJO>TP?GlK2o2thL`k+ZC3J^6ba#Br&ckJ(_s%O zedDZLot#_&E8EDj4Z>j4$gZ6R2tiY}2K1z`Y}5j>$#!U&kbsKKv*eja8Qj1+I&nwn(qc-WOyUe-=?P8923^xnp~*#G>}Wy4 z$fgz8as~{wB@W%{%Fz(a8C|dcix8Eg&q*mdzNSPcT+B{&uihUq!|wxxjKDeC+I*E& zwzE-r%ZqBX?F?!#*TXbyOgEsHUEGAV=bm&XkUD4v4uU_+h2UH7ZgGNUy+Y4Z`f$GA zPOJw%@9LSOWXJvT+c4JJO|KZKOWhuv;K0)pZ+r$0{2OD*#at29TL(G7u2mwq&Tt;v-%Ag2l%)U=h2>H5?{o zQY%)Hco1{Pd=xAH=k3bMlY{bg=QH+m|6(g`ez1K_*yujjRNB4E^yE@xj%rA8@TC!S zgCuuLQuElU9%4tXiNpTNO>6#H65qYWmppt_)=xfMPvLUji*3^opgp0ZtiyDv_19w` z<);SwRqu8Z7&&ZhI49DDF^@%g|6OwV^@~BEHY8>p`(yN(-@R`QcoCb{i+E8oP)xyiJz{;PwF`|gYdPZTHLxa}2)}aw>qVgJ(aeAy>jj$Fch78In|0GD_N;QJMD*BJ840fF%`N&o9ACW2 z*N2Kg;QX1G4Juh2`nO4l0)g09;j$r^jr+e8rq!CJ@aGW9Qhu%muo_VO*}M*RD)yuB z;);M-RieoW1-gmLlDw+3p@pm;$MV-o{3^j;##7KL!9@>9%$T4C*i7yi%g|sLLjld;4zTm0xtDu$%X=ru z^mp9sVBR-=T-%uKt+97()DB(;ql;BBmF?*LQ_clml`N}=^Kze;w}(afSE5gtV4PVM z9E4L3UAHG`x)<6d{kp*_`vc&Z*7l?~MfmPfFH8_`eu*IYGsxt~=2%CJ{Cs;zF}fRb z?Gh+G9h~++EbIb6)3gP9?tb3-|Qyn@!o@>iY2)Hi$0j9Xc|p+4G~h?9oe*1 z)pK3hafohU!%Ggz?By11ZiXaO`Dic{l#Pe#G`kw>FIVCAOKq3EcBM{C6B7lgl~JGj z^L`EISDBK+ZWZrzt7hqy&{#pUU^B#d#BB~a>=3&H5WAgs*v}_65EQ5Cv)eyppWm~g zrNZ(!Z(bd*ZMf?j9cpWs3-kx{xjeAa7 z>7x^xGVXL+y5an1OuuL6YLE8zp&?6t`jV$LerUx)H;hHfeLuHDir_Oz`W-{$x4=a> zMupa?ljUs`ife6Gn^qZV(8gmwxiLyOKFozU<9O#b$?Z0`8e|KnTKFAnH(%?)sG)Dm z*H`t|?C!hpx}|q-!1!$v_i9rs&ek^c?lsxQ$qJX73cFH6-MM4HvbVt>Cpvh~8U{PV z(BySlJ^mv+@8tR5=aqe5S2EYcCVp`_q_4PgJBL*zTHNE#tId?Lw72x`r#^Iay}#>o zEXOojk*Pb9wI{DNd40B{7H5(dw+b>W3&4tk+X1cW`u8i8W%*k=seufem|6ezssTHL+Wm*OW3_6I?H` z$gdXz3BicB(@6|&KS9#XvW>~x#+x_0+hC8#t$ks2e)y{)fK~s&6zQmR9 zT+{N&*ZD3)ZIsIN@e9Na?Y@(jgM^ePqpP5U7Pj)WU(7M=l@>_y85P=S*^+N>=MI%D z|GCF~UdTRwv#IM_{gbiboGoiQA|e6G(&r|_Q7h&{C(FVuKylt!d$?OW*=Lp1>YKQc zl#X@m`+lVbJTaYNM`9xBU^;0f*ujhQyvegiu7v#gQyEB{c(-e?wXO1pr}yCZK|TQF z!L@;u@vnp%06tc5jUdk@!?c$B`lq$S;t#5)vK_sY!^DwaXy|r9Nx1F(`>eGNlUqv> zFBTHc3$-on_v%O-` zW6YEkir?WUA^LN-zRYP<43@MdfqGn+E+%@~@rrl-VH{J~7(N0&;QgaC{Caa*ZDQVJ ztWoE`2-u7nhwYEHo|=tfyHev$xn$q{9^Zt@g^KLuZ6K!-K(C*ftzShRnz454=jG96 z=XD#5TJ0!baWPYvmq6oYD%8caxBd7?$o7%E2$d9Uk&BJL9|kwp6|ZZ>dGKF>__?p_Ije^s73AWzkTT0PFX@sguYou zy>>0UDb%VYc2SwwE!)u(Pu*Ft_|JPaVbKfG{Mb0n0XfkAz$zg!JGTPcDt4)X+4)^{ zNp_J~dcodi$41(E93DTU@vr-lCbvg&&Hx_plbE5s3317}uk}E@1^wEFV<)U3yRN%2 zFXsvXb`__I^>x6tw=6GC;FSEgp^Fv)V#jWKYpcEQi9yywEr) zw^{zh)O3bb2o4U=;J*P1D+H$NX|t5a%fEeI)_dqM^O_x8i+Wh~hT5&rHj~kY$$c81 ztE;6evC4+kF*2UkEA6e^u0yggu80kZqxthFh!hO>OT4HQXz!`5*oA$|nGm|y|EDtA z#@jjDlA#rf31cIi;qvkQV!frz+?k!&Siop(gDg2Q&u2Y*`x}kVdoXU40xc5SX%BGq`GWD{;_Hn< zIy=Q4GU+s7=bKekYa+&SxpukAMc+^xC!2KXL*0T+YZ36j)y}P$!Tu@-iMwr+2#?r9YDaq3&b%ZVBl{fWx1f>hEppcdzxbNvV27tuqH=ny0!37% z+@}QggU##>77hn?NKu|HQ%yufb|H>TQ>3Tv@+!#k3T!&mq{|%M_khT!?rz`NjXpWH zrogaqRUc!VcoB7N|E|Z@7mMMuys!E;T^%1&d|I3MLCd?(*qvbIS}NmEQ8Dp{u=16Fd{N-*=s}a4+gk&Bou$uwI#jtIuT3!$y7O_|>2hLU zl!y{79>;!PkW?k`og+$i_3u|;6aGK_pX<$qOT?Qq5e0j%R0rn*Y^$|cbEqH0#&0!` zy>18}3FRi8)H|$TI>ybUuC~MWp(C#+Q(f@flnzxF^drDUwmu4EiIRu6G1wW5G<5*c zjq%;0a7c0K0?cO>>|&~Z5{C8%hHw)<#hpXnPPpDJFm)#)(lmr7fQBK=gv~KjZCWli z?#i9%z{OW6nVJL(40o>V!JDy9o_C&aJZB-G$KEVAR&!qpW&6;==OA66j2}9a-qAxU zo$s1_p2q|Z9ITK@LePk#-0~ZZF{pbE@wKp@e(lNFZ?AdV9EV5E6MIuC@=ZX^4{hze zS3cDUcN=>3ANb@E5j|xY5&P3%M^(n1{`749JAGi-6AJz!)NN3 zWGycR%4<;-YRnAlakjH)QWdbtr=COW7w|RCj%x+86pRy9ZO30__6S9Rv1yV?FMMI( z=H3pQxUm{OE8!0ywq|rsaxy*~YzZcdI@M>t;phP*nUR4J?|EGWYw#T zK1P%*g*+X`u#TGc@Gt`2&c`N}kxgNs3=JxA(m0pg#KYZq1 zYbVRP>00SM=)-d5MXHFp-d*<$I8mSC(^@0yKJncGGg~?R`6^O4S3ZP}r3A7zWyq~( z0VB$xS^yh^@lL-Ow(BV5-a`=Z+7i|5ko>`@yk%d(=QvdmK1+d6;mZKIfq3aFcwz(U zaQi$ejbI}u%zJXAi<7WwWDN|`j_OnpkI^^TLu~OdQ8nJX&H`8nU=?c5c5lZtR5*O3=TS9O1cG;)1H`>G3M$J1kBnD?MnkXct*?4p32Xd+co+* z=TDITrNHAO%l7K&~cIjw59`fFt|AxaQAx^Z&%W2qR42*oA zWgG_WMk^jpMwEHtJI0Ue9`Qy@&V;9VopD;utr@5OsDb7*##wD|ey>Mi`sM?XmRH&!{Bod4!JntC)ydL26;9@GwZVpSBC+ zs<*_63yBjPmEV^0=a!{zoHyv5abNT{B_~SG-Tq6L{7RKqG%WOXvp2usJ)7o`xJpk& z!<3LxM&1HU_?#9i?wR~O!!$eIlco_CH^-y1V#ddpGx*xs!r=3ysG_%Qe6710pglE$ z#st}6Td8Lg8{juP*xL>!-h@7+?`8I^`+4K1T5xuu$PB-vX#}nPL?_F%6FUB4ZMXPj-3zl%9O#1il^6ks;cbT)(Y4VSOHke670Q#ogKi}!n_W?eB45NSEUT>ks-GP zeBWSOX6!87A4WvfMGh%PHw~%E^6q8f@j7;*9sI#+>yNiLwfE_H--dn3n%C}smLX%3 z`;Xw0<(1a5!7Bg$Q_9Aj&+0a|`j25>O0|PyI8nq(9n>7r2)xmb(JFuxkGqL7y_tW;)XWV{BNSuoYQj11?adq7Y=nMw(q$Zue6 zHr@Max&|P1&t}bLbxTa=)3YytubG4ezr~6Z`2T&{Vz#it{+yC>6 zV+(kP6C*k{F2=Q}*_gg==vWRYg8lECt^%RnSP3`t{~mQ%M9H;jK6u|Au;MPf4|z2r zjeAyI{c{43uk;m^eCkn9|9inyUvc1R=RJn24;6fNI+MiOa*WEaHL$oDf%$iU*sj(l zJ@UG-dawPZKf3yROz%50{dd-}VqEFB)<1ETip816em=GtMPhFltiY&^7qckk+SPM9 z_$*tIO87PWkBrb*g=j4>BXQY4IYvcs!PSaH3=P;ofJ?DR+1 zT`ytg1>Ins!va(>AC9b6vP+~3aG-n_}|CC<=)9k_qHr7Paoe#_o2x=jQ)QsZr}e_ z+>Y&90krMr>!Vv(cH_Rf#EAcu2L+#;4uE6-tw_NVVS2C<-RCxh-XO=y*8+NGK#&np z1+^xaOSTmai4iFboQ8+q^l4=@CQdqw0lxkbOq@mNO6IR!UW~aW=0Z)uuUQPn-Mz|S zd|Me_5V`B=6JDt~#uUFoSmMBydQ);HGi?RTLq*$aLBxx^c~4-A2L@{OX?P0=us7g5 z5hHNe0%~Hr%?0k7uQ=ycz~ERp3CE_2j%LkLc-Zazf{lSqX^i}x`50|IeV>@v2L`M{ z`cC%BVa8!|1y}kOiY+n@LO zwf1|#7KUet{3^5#eczJv_^a|__@CU^{;S7Xr-v6#-~4t9<$mCqC5K!-_u%q*6RaA= z_2B<$??~I4yq2%pqD6%+_F9YU71@`2l|@k?tt)8IQj|gzT8St^g2-mVmf8w^>VgFW zMFdh61vFrRB$QS0S`F)4*+YS9DFi{ml(GiWnG^oO{n~tCIM2LuX6DS9GiT1WakISL zGONd0o}XK}V)n}`^TQn2O8N&LqysiWvKk+zu)KsD&GDkdP`H^ER~a0Ot6}3T+Xc2i zXLVekwqJ=5c;P&Z-D^D@SaD}tT!7u0v(}#_mpeIo zmB*;Mx$-G1_23^ooAJ!Qgc2%vZ!((CfQ!%2VVCV=M(vm=Dh_mtQ+o{T2_BnBH}8Y+-;* z)5Kk4C0#z;;MV6%kF{GFB;BY=i=HrN#b#VIee>5AZgQbvws>D@jlwWE zWw)))O}{TD++eschO5OlSHZ=hs-~=2n>fvQTo&w}vsn!{M0#13DzB@Djyu=FNn0GU zxV}AbCN2$DUH##rQp-L#$2W@S{R2)YAJn&z@tUZ`qrjaNmE7f=y3)b1;|q3pLCfW* z(sgCwzfA>aFSDvVGFuwHs5^Q#L$CZ*>u1SqAD)NbbdZyJbs9TW)z^T29SVmU`_p^W{_v)6$MXrOIZHEt2N)L@`3}qXo<--86j}_I~z4qHlQe^C&;pthMdzQ~NF7paeU>Z11Nu7mB+w zq%Iq;Z_E49ifMoMuF(=-pWpwIO3mbf&|#RJH;b3Y%2wBN;rcZCGF(&T46~*>nAn|$ za8Y_@03S=wFMCyUB(h70BRD!x-16F>?zH7YayJyT)emPx144tq&(y(&+3%9w9CD4? zUKF=Z%Q}-FjNJW}3?huXJ_^yA7%w&F^_WJi_8qAKPOnb(z_Uf-YN84t7l?EE3FLyL^pTXhw^{OwHsN%XuK z5qYs|gs`~`F7F(!$MnLsQF{CPjgZEUIStbabTS94xT&F=T)?40UXK!quS+FmO;VRJ zlf;u1DemnRhH|w{mq}=B(d3(^F9*x7XSC%AC4USy1V^0++tpulxWhm8i+|b0cLiJX zx1PUcT@!p;V>jN{J=#+d7yruMX1%l1#;956DF5Cs*B8N=<72S92)7Zyg?K}_ii&9& zcpk4YC?ddjqIx-w3ddjpO)?oN7CsVZ267irqbASnD2h4d%_=KOcX*S2Y>xfdwOBG(8{sl$0a47JT(85-w<`xGrzJ;D zht52;E)!}x?5DYt1|KHXxu`B0dLFNhO3>ds4mTT+Apte094wYZCBz2k#@>-^d%3Vj zSQ#sehr!X$wX@K|MddE+*|eEe8Pa#_zuU6ympI%AFA@I)p7aKKw3sw$M2}t0HYb=a z1U7|zRpqHhH}{9a0E^sb-U)3Z5{gp( z2PylC#LQsnaqv9bT^~eB>PKYB^Ah5Rl2ZRsUVy%vZjPh-S_di8$+RYF@6V^%K+ZJs3E+)%> zqC`yub|J74fj=VfErgF~ary|nla$vYKc#00KdIPU%}E57LA*vaf2)Px0XQs03q$Zs zg~by%5pjZ+5^=R{XrhHt4LMqTjQc2$?WC@JtjlgUfvwPaDTurWWXO-0XtvoAWeg>% zI=2?c>_H_{x)3~rXF-K*2Ej$cL`?;ry$KDG9cwz4h*ooL5q`)u=qBrpP`S^vWP7R;5j`V%3&9g z+yNUsPm7a*w!P?VIP`O8o4hF#RB`w9U1`Y(3ACqz)9PDGhB={85Gf6jT(3qcK9=RqkS0>0LHP@^G0N9#POJunW; zIS;`uD4ug3G=%DN&Vzzi$aLnM2bGSZ@Co}Ai@}z#TV{6>)-uvdsiJ6@Vd1iC&WSs&ZWKHR{pHBh9GX zIK$`9qYj)|=$kd#nLjY8w?6ry#&)u~N*C5uDbabXs3>B~+73-wcEN7VaPNdhy7Voe z7KW)bhUL(BJzKWl@L}T6fDlR%MIK{p5x zUxtA0ZZI?WF`hw%2$-w{5%72JA0q$gAH@*&k theta2) - { - t = theta; - theta = theta2; - theta2 = t; - otherArc = !otherArc; - } // find min/max from zeroes of directional derivative along x and y // first get of whole ellipse // along x axis @@ -248,23 +239,47 @@ var Arc = makeClass(EllipticArc2D, { ymax = p3; } // refine bounding box by elliminating points not on the arc - txmin = vector_angle(1, 0, (xmin.x - cx)/rx, (xmin.y - cy)/ry); - txmax = vector_angle(1, 0, (xmax.x - cx)/rx, (xmax.y - cy)/ry); - tymin = vector_angle(1, 0, (ymin.x - cx)/rx, (ymin.y - cy)/ry); - tymax = vector_angle(1, 0, (ymax.x - cx)/rx, (ymax.y - cy)/ry); - if ((!otherArc && (cmod(theta) > cmod(txmin) || cmod(theta2) < cmod(txmin))) || (otherArc && !(cmod(theta) > cmod(txmin) || cmod(theta2) < cmod(txmin)))) + if (!sweep && otherArc) + { + t = theta; + theta = theta2; + theta2 = t; + } + mtheta = cmod(theta); + mtheta2 = cmod(theta2); + if (theta > theta2) + { + /*t = theta; + theta = theta2; + theta2 = t;*/ + if (mtheta > mtheta2) + { + t = mtheta; + mtheta = mtheta2; + mtheta2 = t; + } + else + { + otherArc = !otherArc; + } + } + txmin = cmod(vector_angle(1, 0, (xmin.x - cx)/rx, (xmin.y - cy)/ry)); + txmax = cmod(vector_angle(1, 0, (xmax.x - cx)/rx, (xmax.y - cy)/ry)); + tymin = cmod(vector_angle(1, 0, (ymin.x - cx)/rx, (ymin.y - cy)/ry)); + tymax = cmod(vector_angle(1, 0, (ymax.x - cx)/rx, (ymax.y - cy)/ry)); + if ((!otherArc && (mtheta > txmin || mtheta2 < txmin)) || (otherArc && !(mtheta > txmin || mtheta2 < txmin))) { xmin = o1.x < o2.x ? o1 : o2; } - if ((!otherArc && (cmod(theta) > cmod(txmax) || cmod(theta2) < cmod(txmax))) || (otherArc && !(cmod(theta) > cmod(txmax) || cmod(theta2) < cmod(txmax)))) + if ((!otherArc && (mtheta > txmax || mtheta2 < txmax)) || (otherArc && !(mtheta > txmax || mtheta2 < txmax))) { xmax = o1.x > o2.x ? o1 : o2; } - if ((!otherArc && (cmod(theta) > cmod(tymin) || cmod(theta2) < cmod(tymin))) || (otherArc && !(cmod(theta) > cmod(tymin) || cmod(theta2) < cmod(tymin)))) + if ((!otherArc && (mtheta > tymin || mtheta2 < tymin)) || (otherArc && !(mtheta > tymin || mtheta2 < tymin))) { ymin = o1.y < o2.y ? o1 : o2; } - if ((!otherArc && (cmod(theta) > cmod(tymax) || cmod(theta2) < cmod(tymax))) || (otherArc && !(cmod(theta) > cmod(tymax) || cmod(theta2) < cmod(tymax)))) + if ((!otherArc && (mtheta > tymax || mtheta2 < tymax)) || (otherArc && !(mtheta > tymax || mtheta2 < tymax))) { ymax = o1.y > o2.y ? o1 : o2; } diff --git a/src/CBezier.js b/src/CBezier.js index 5005e84..b98832c 100644 --- a/src/CBezier.js +++ b/src/CBezier.js @@ -4,6 +4,8 @@ * Represents a cubic bezier curve defined by its control points * ```javascript * const cbezier = CBezier([p1, p2, p3, p4]); + * cbezier.points[0].x += 10; // change it + * cbezier.points[2].x = 20; // change it * ``` [/DOC_MD]**/ var CBezier = makeClass(Bezier2D, { diff --git a/src/Circle.js b/src/Circle.js index a4502e2..7c6fe6d 100644 --- a/src/Circle.js +++ b/src/Circle.js @@ -4,6 +4,8 @@ * Represents a circle of given center (point) and radius * ```javascript * const circle = Circle(center, radius); + * circle.center.x += 10; // change it + * circle.radius = 12; // change it * ``` [/DOC_MD]**/ var Circle = makeClass(EllipticArc2D, { diff --git a/src/Curve2D.js b/src/Curve2D.js index 83e7064..d51727a 100644 --- a/src/Curve2D.js +++ b/src/Curve2D.js @@ -188,7 +188,7 @@ var Curve2D = makeClass(Topos2D, { * [/DOC_MD]**/ /**[DOC_MD] - * * `isConnected(): Bool` True if curve is a connected curve (eg a line) + * * `isConnected(): Bool` true if curve is a connected curve (eg a line) [/DOC_MD]**/ isConnected: function() { return true; @@ -200,7 +200,7 @@ var Curve2D = makeClass(Topos2D, { return false; }, /**[DOC_MD] - * * `isConvex(): Bool` true if curve is convex (eg a concex polygon) + * * `isConvex(): Bool` true if curve is convex (eg a convex polygon) [/DOC_MD]**/ isConvex: function() { return false; @@ -222,7 +222,7 @@ var Curve2D = makeClass(Topos2D, { return this.clone(); }, /**[DOC_MD] - * * `getPointAt(t): Point2D` get point on curve at position specified by paramater `t` (0 <= t <= 1) + * * `getPointAt(t: Number): Point2D` get point on curve at position specified by parameter `t (0 <= t <= 1)` [/DOC_MD]**/ getPointAt: function(t) { // 0 <= t <= 1 @@ -232,7 +232,7 @@ var Curve2D = makeClass(Topos2D, { return null == p ? null : Point2D(p); }, /**[DOC_MD] - * * `curveUpTo(t): Curve2D` get curve up to point specified by paramater `t` (0 <= t <= 1) + * * `curveUpTo(t: Number): Curve2D` get curve up to point specified by parameter `t (0 <= t <= 1)` [/DOC_MD]**/ curveUpTo: function(t) { var self = this; @@ -262,13 +262,13 @@ var Curve2D = makeClass(Topos2D, { return d; }, /**[DOC_MD] - * * `polylinePoints(): Object{x,y}[]` get polyline points that approximates the curve + * * `polylinePoints(): Object{x,y}[]` get points of polyline that approximates the curve [/DOC_MD]**/ polylinePoints: function() { return this._lines.slice(); }, /**[DOC_MD] - * * `bezierPoints(t): Object{x,y}[]` get cubic bezier points that approximates the curve (optionally up to point specified by parameter t) + * * `bezierPoints(t: Number = 1): Object{x,y}[]` get points of cubic bezier curves that approximate the curve (optionally up to point specified by parameter `t`) [/DOC_MD]**/ bezierPoints: function(t) { return [ diff --git a/src/Ellipse.js b/src/Ellipse.js index 13da188..257d22a 100644 --- a/src/Ellipse.js +++ b/src/Ellipse.js @@ -4,6 +4,8 @@ * Represents an ellipse of given center (point), radiusX, radiusY and rotation angle * ```javascript * const ellipse = Ellipse(center, radiusX, radiusY, angle); + * ellipse.center.x += 10; // change it + * ellipse.radiusX = 12; // change it * ``` [/DOC_MD]**/ var Ellipse = makeClass(EllipticArc2D, { diff --git a/src/Line.js b/src/Line.js index 0515a34..a3831c7 100644 --- a/src/Line.js +++ b/src/Line.js @@ -3,7 +3,9 @@ * * Represents a line segment between 2 points * ```javascript - * const line = Line(p1, p2); + * const line = Line(start, end); + * line.start.x += 10; // change it + * line.end.y = 20; // change it * ``` [/DOC_MD]**/ var Line = makeClass(Bezier2D, { diff --git a/src/Object2D.js b/src/Object2D.js index 28f3505..e26dcf7 100644 --- a/src/Object2D.js +++ b/src/Object2D.js @@ -86,14 +86,14 @@ var Object2D = makeClass(null, merge(null, { return this; }, /**[DOC_MD] - * * `transform(matrix): Object2D` get a transformed copy of this object by matrix + * * `transform(matrix2d): Object2D` get a transformed copy of this object by matrix2d [/DOC_MD]**/ transform: function() { return this; }, setStyle: null, /**[DOC_MD] - * * `getBoundingBox(): Object` get bounding box {xmin,ymin,xmax,ymax} of object + * * `getBoundingBox(): Object{xmin,ymin,xmax,ymax}` get bounding box of object [/DOC_MD]**/ getBoundingBox: function() { return { @@ -110,7 +110,7 @@ var Object2D = makeClass(null, merge(null, { return []; }, /**[DOC_MD] - * * `getCenter(): Object` get center {x,y} of object + * * `getCenter(): Object{x,y}` get center of object [/DOC_MD]**/ getCenter: function() { var bb = this.getBoundingBox(); @@ -119,15 +119,27 @@ var Object2D = makeClass(null, merge(null, { y: (bb.ymin + bb.ymax)/2 }; }, +/**[DOC_MD] + * * `hasPoint(point): Bool` check if given point is part of the boundary this object +[/DOC_MD]**/ hasPoint: function(point) { return false; }, +/**[DOC_MD] + * * `hasInsidePoint(point, strict): Bool` check if given point is part of the interior of this object (where applicable) +[/DOC_MD]**/ hasInsidePoint: function(point, strict) { return false; }, +/**[DOC_MD] + * * `intersects(other): Point2D[]|Bool` return array of intersection points with other 2d object or false +[/DOC_MD]**/ intersects: function(other) { return false; }, +/**[DOC_MD] + * * `intersects(other): Point2D[]|Bool` return array of intersection points of object with itself or false +[/DOC_MD]**/ intersectsSelf: function() { return false; }, diff --git a/src/Object3D.js b/src/Object3D.js index 233c1d6..8a20132 100644 --- a/src/Object3D.js +++ b/src/Object3D.js @@ -80,20 +80,20 @@ var Object3D = makeClass(null, merge(null, { * [/DOC_MD]**/ /**[DOC_MD] - * * `clone(): Object2D` get a copy of this object + * * `clone(): Object3D` get a copy of this object [/DOC_MD]**/ clone: function() { return this; }, /**[DOC_MD] - * * `transform(matrix): Object2D` get a transformed copy of this object by matrix + * * `transform(matrix3d): Object3D` get a transformed copy of this object by matrix3d [/DOC_MD]**/ transform: function() { return this; }, setStyle: null, /**[DOC_MD] - * * `getBoundingBox(): Object` get bounding box {xmin,ymin,xmax,ymax,zmin,zmax} of object + * * `getBoundingBox(): Object{xmin,ymin,zmin,xmax,ymax,zmax}` get bounding box of object [/DOC_MD]**/ getBoundingBox: function() { return { @@ -106,7 +106,7 @@ var Object3D = makeClass(null, merge(null, { }; }, /**[DOC_MD] - * * `getCenter(): Object` get center {x,y} of object + * * `getCenter(): Object{x,y,z}` get center of object [/DOC_MD]**/ getCenter: function() { var bb = this.getBoundingBox(); diff --git a/src/Point2D.js b/src/Point2D.js index f686c60..973204e 100644 --- a/src/Point2D.js +++ b/src/Point2D.js @@ -5,7 +5,8 @@ * * ```javascript * const p = Point2D(x, y); - * p.x = x+10; // change it + * p.x += 10; // change it + * p.y = 5; // change it * ``` [/DOC_MD]**/ var Point2D = makeClass(Object2D, { diff --git a/src/Point3D.js b/src/Point3D.js index 55cbbbd..59da380 100644 --- a/src/Point3D.js +++ b/src/Point3D.js @@ -5,7 +5,9 @@ * * ```javascript * const p = Point3D(x, y, z); - * p.x = x+10; // change it + * p.x += 10; // change it + * p.y += 5; // change it + * p.z = 20; // change it * ``` [/DOC_MD]**/ var Point3D = makeClass(Object3D, { diff --git a/src/Polygon.js b/src/Polygon.js index f691362..c00b821 100644 --- a/src/Polygon.js +++ b/src/Polygon.js @@ -4,6 +4,8 @@ * Represents a polygon (a closed polyline) defined by its vertices * ```javascript * const polygon = Polygon([p1, p2, .., pn]); + * polygon.vertices[0].x += 10; // change it + * polygon.vertices[2].x = 20; // change it * ``` [/DOC_MD]**/ var Polygon = makeClass(Curve2D, { diff --git a/src/Polyline.js b/src/Polyline.js index fc3b93d..c7f2cbe 100644 --- a/src/Polyline.js +++ b/src/Polyline.js @@ -4,6 +4,8 @@ * Represents an assembly of consecutive line segments between given points * ```javascript * const polyline = Polyline([p1, p2, .., pn]); + * polyline.points[0].x += 10; // change it + * polyline.points[2].x = 20; // change it * ``` [/DOC_MD]**/ var Polyline = makeClass(Curve2D, { diff --git a/src/QBezier.js b/src/QBezier.js index 557626c..79c9c8a 100644 --- a/src/QBezier.js +++ b/src/QBezier.js @@ -4,6 +4,8 @@ * Represents a quadratic bezier curve defined by its control points * ```javascript * const qbezier = QBezier([p1, p2, p3]); + * qbezier.points[0].x += 10; // change it + * qbezier.points[1].x = 20; // change it * ``` [/DOC_MD]**/ var QBezier = makeClass(Bezier2D, { diff --git a/src/Scene2D.js b/src/Scene2D.js index 36db2d6..9cdf604 100644 --- a/src/Scene2D.js +++ b/src/Scene2D.js @@ -5,7 +5,13 @@ * * ```javascript * const scene = Scene2D(containerEl, viewBoxMinX, viewBoxMinY, viewBoxMaxX, viewBoxMaxY); - * scene.add(Line([p1, p2])); + * const line = Line([p1, p2]); + * scene.add(line); // add object + * scene.remove(line); // remove object + * scene.x0 = 20; // change viewport + * scene.x1 = 100; // change viewport + * scene.y0 = 10; // change viewport + * scene.y1 = 200; // change viewport * ``` [/DOC_MD]**/ var Scene2D = makeClass(null, { diff --git a/src/Topos2D.js b/src/Topos2D.js index d72cb0e..a46fc54 100644 --- a/src/Topos2D.js +++ b/src/Topos2D.js @@ -113,19 +113,12 @@ var Topos2D = makeClass(Object2D, { } return self.$super('isChanged', arguments); }, -/**[DOC_MD] - * **Methods:** - * -[/DOC_MD]**/ clone: function() { return new Topos2D(this.points.map(function(p) {return p.clone();})); }, transform: function(matrix) { return new Topos2D(this.points.map(function(p) {return matrix.transform(p);})); }, -/**[DOC_MD] - * * `hasPoint(point): Bool` check if given point belongs to this topos -[/DOC_MD]**/ hasPoint: function(point) { var p = this.points, n = p.length, j; for (j=0; j xmax) x -= xm; - return x; -} -function mod(x, m) +function mod(x, m, xmin, xmax) { x -= m*stdMath.floor(x/m); - if (0 > x) x += m; - if (m < x) x -= m; + if (xmin > x) x += m; + if (xmax < x) x -= m; return x; } function cmod(x) { - return mod(x, TWO_PI); + return mod(x, TWO_PI, 0, TWO_PI); } function deg(rad) { diff --git a/test/intersect.html b/test/intersect.html index cee893e..f6ccc72 100644 --- a/test/intersect.html +++ b/test/intersect.html @@ -54,6 +54,11 @@

Geometrize v. Intersections, Bounding Boxes, Convex Hu const ellipse = Ellipse([40,40], 30, 10, -45); const circle = Circle([30,30], 20); const arc = Arc([100,100], [170,90], 30, 10, 30, 0, 1); +/*const e = Ellipse([100,40], 30, 10, 30); +const arc2 = Arc(e.getPointAt(0.1), e.getPointAt(0.4), 30, 10, 30, 0, 0); +const arc3 = Arc(e.getPointAt(0.1), e.getPointAt(0.4), 30, 10, 30, 0, 1).transform(Matrix2D.translate(-100, 0)); +const arc4 = Arc(e.getPointAt(0.1), e.getPointAt(0.4), 30, 10, 30, 1, 0).transform(Matrix2D.translate(100, 0)); +const arc5 = Arc(e.getPointAt(0.1), e.getPointAt(0.4), 30, 10, 30, 1, 1).transform(Matrix2D.translate(0, 60));*/ const qbezier = QBezier([[80,110], [120,40], [160,120]]); const cbezier = CBezier([[40,80], [120,40], [140,200], [160,90]]); const curve = CompositeCurve([ @@ -82,6 +87,10 @@

Geometrize v. Intersections, Bounding Boxes, Convex Hu scene.add(ellipse); scene.add(circle); scene.add(arc); +/*scene.add(arc2); +scene.add(arc3); +scene.add(arc4); +scene.add(arc5);*/ scene.add(qbezier); scene.add(cbezier); scene.add(curve); @@ -111,6 +120,10 @@

Geometrize v. Intersections, Bounding Boxes, Convex Hu drawBoundingBox(qbezier, 'cyan'); drawBoundingBox(cbezier, 'magenta'); drawBoundingBox(curve, 'yellow'); + /*drawBoundingBox(arc2, 'yellow'); + drawBoundingBox(arc3, 'orange'); + drawBoundingBox(arc4, 'red'); + drawBoundingBox(arc5, 'cyan');*/ }, false); document.getElementById('hulls').addEventListener('click', () => { @@ -121,6 +134,10 @@

Geometrize v. Intersections, Bounding Boxes, Convex Hu drawConvexHull(qbezier, 'cyan'); drawConvexHull(cbezier, 'magenta'); drawConvexHull(curve, 'yellow'); + /*drawConvexHull(arc2, 'yellow'); + drawConvexHull(arc3, 'orange'); + drawConvexHull(arc4, 'red'); + drawConvexHull(arc5, 'cyan');*/ }, false); document.getElementById('image').addEventListener('click', () => {