From e63f0b6776d0651961c895c3d2fe1d491ec745de Mon Sep 17 00:00:00 2001 From: Tynan Date: Thu, 26 Jul 2018 20:37:42 -0400 Subject: [PATCH] custom file runs, not curving --- Diagrams/cubic.png | Bin 0 -> 49350 bytes Diagrams/linear.png | Bin 0 -> 32648 bytes Diagrams/quadratic.png | Bin 0 -> 42868 bytes bezier.py | 51 ++++++++++++--- decasteljau.py | 48 ++++++++++++++ examples/ascii.py | 141 +++++++++++++++++++++++++++++++++++++++++ examples/bezier.py | 46 ++++++++++++++ examples/notrandom.py | 40 ++++++++++++ examples/smart.py | 63 ++++++++++++++++++ main.docx | Bin 190236 -> 189866 bytes 10 files changed, 380 insertions(+), 9 deletions(-) create mode 100644 Diagrams/cubic.png create mode 100644 Diagrams/linear.png create mode 100644 Diagrams/quadratic.png create mode 100644 decasteljau.py create mode 100644 examples/ascii.py create mode 100644 examples/bezier.py create mode 100644 examples/notrandom.py create mode 100644 examples/smart.py diff --git a/Diagrams/cubic.png b/Diagrams/cubic.png new file mode 100644 index 0000000000000000000000000000000000000000..08f00ad97e814accf65bcd2825355c0089765455 GIT binary patch literal 49350 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 I&MBb@0Kn0BHtEYrLP1O6qF4GpM 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 literal 0 HcmV?d00001 diff --git a/Diagrams/quadratic.png b/Diagrams/quadratic.png new file mode 100644 index 0000000000000000000000000000000000000000..36124da342fa3b1bd82b6c7108690123d4bc20f3 GIT binary patch literal 42868 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

#DDJ9{1bNdwF^J@}*0c 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 literal 0 HcmV?d00001 diff --git a/bezier.py b/bezier.py index a1de1d9..230641d 100644 --- a/bezier.py +++ b/bezier.py @@ -1,13 +1,46 @@ -import numpy as np import matplotlib.pyplot as plt +import matplotlib.patches as patches +from matplotlib.path import Path -def graph(formula, x_range): - x = np.array(x_range) - y = formula(x) - plt.plot(x, y) - plt.show() -def function(x): - return #insert function here +# define the geometry of a path: +verts = [(0.0, 0.0), # P0 + (0.2, 1.0), # P1 + (1.0, 0.8), # P2 + (0.8, 0.0), # P3 + ] -graph(function, range(0, 1)) \ No newline at end of file +codes = [Path.MOVETO, # put the "pen" at P0 + Path.CURVE4, # and draw bezier curves + Path.CURVE4, # from P0 to P1, to P2 + Path.CURVE4, # to P3. + ] + +path = Path(verts, codes) # build path from vertices & command codes + + +# build stylizeable "patch" to visualize geometric "path": +patch = patches.PathPatch(path, facecolor='none', + edgecolor='blue', lw=4) + + +ax = plt.axes() # gca = get current plot's "axes" + +ax.add_patch(patch) + +# draw control points: +xs, ys = zip(*verts) +ax.plot(xs, ys, 'o--', lw=2, color='black', ms=10) + + +# label the control points: +ax.text( 0.05, -0.05, 'P0') +ax.text( 0.15, 1.05, 'P1') +ax.text( 1.05, 0.85, 'P2') +ax.text( 0.85, -0.05, 'P3') + +# resize the plot: +ax.set_xlim(-0.1, 1.15) +ax.set_ylim(-0.1, 1.15) +ax.set_aspect("equal") +plt.show() \ No newline at end of file diff --git a/decasteljau.py b/decasteljau.py new file mode 100644 index 0000000..91b5be1 --- /dev/null +++ b/decasteljau.py @@ -0,0 +1,48 @@ +import matplotlib.pyplot as plt +import numpy as np + +#t = np.linspace(0, 1, 100) + +cpx = [0.0, 100, 0.0, 50] +cpy = [0.0, 0.0, 100, 50] +x = [] +y = [] + +# 1st order Bernstein polynomial +#P1 = p1 * (1-t) + p2 * t +#x1 = cpx[0] * (1-t) + cpx[1] * t +#y1 = cpy[0] * (1-t) + cpy[1] * t + +# 2nd order Bernstein polynomial +#P2 = p1 * (1-t)**2 + 2 * p2 * t * (1-t) + p3 * t**2 +#x2 = cpx[0] * (1-t)**2 + 2 * cpx[1] * t * (1-t) + cpx[2] * t**2 +#y2 = cpy[0] * (1-t)**2 + 2 * cpy[1] * t * (1-t) + cpy[2] * t**2 + +# 3rd order Bernstein polynomial +#P3 = p1 * (1-t)**3 + 3 * p2 * t * (1-t)**2 + 3 * p3 * (1-t) * t**2 + p4 * t**3 +def x3(t): + x = cpx[0] * (1-t)**3 + 3 * cpx[1] * t * (1-t)**2 + 3 * cpx[2] * (1-t) * t**2 + cpx[3] * t**3 + return x + +def y3(t): + y = cpy[0] * (1-t)**3 + 3 * cpy[1] * t * (1-t)**2 + 3 * cpy[2] * (1-t) * t**2 + cpy[3] * t**3 + return y + +for t in range(0, 100): + xarray = x3(t) + x.append(xarray) + yarray = y3(t) + y.append(yarray) + +fig = plt.figure() +ax = fig.add_subplot(111) +ax.plot(x, y) + +plt.title('Bezier Curve') +#plt.legend() +plt.show() + +''' what you would do was have 4 variables for each coefficient in the cubic polynomial + and then you would set them based on the formal shown + and then you would interate through all of your t range get the x and y for your curve + store those in an array and then display those arrays in matplot ''' \ No newline at end of file diff --git a/examples/ascii.py b/examples/ascii.py new file mode 100644 index 0000000..59a02dc --- /dev/null +++ b/examples/ascii.py @@ -0,0 +1,141 @@ +""" +bezier.py - Calculates a bezier curve from control points. + +2007 Victor Blomqvist +Released to the Public Domain +""" +import pygame +from pygame.locals import * + +class vec2d(object): + def __init__(self, x, y): + self.x = x + self.y = y + + +gray = (100,100,100) +lightgray = (200,200,200) +red = (255,0,0) +green = (0,255,0) +blue = (0,0,255) +X,Y,Z = 0,1,2 + +def compute_bezier_points(vertices, numPoints=None): + if numPoints is None: + numPoints = 30 + if numPoints < 2 or len(vertices) != 4: + return None + + result = [] + + b0x = vertices[0][0] + b0y = vertices[0][1] + b1x = vertices[1][0] + b1y = vertices[1][1] + b2x = vertices[2][0] + b2y = vertices[2][1] + b3x = vertices[3][0] + b3y = vertices[3][1] + + + + # Compute polynomial coefficients from Bezier points + ax = -b0x + 3 * b1x + -3 * b2x + b3x + ay = -b0y + 3 * b1y + -3 * b2y + b3y + + bx = 3 * b0x + -6 * b1x + 3 * b2x + by = 3 * b0y + -6 * b1y + 3 * b2y + + cx = -3 * b0x + 3 * b1x + cy = -3 * b0y + 3 * b1y + + dx = b0x + dy = b0y + + # Set up the number of steps and step size + numSteps = numPoints - 1 # arbitrary choice + h = 1.0 / numSteps # compute our step size + + # Compute forward differences from Bezier points and "h" + pointX = dx + pointY = dy + + firstFDX = ax * (h * h * h) + bx * (h * h) + cx * h + firstFDY = ay * (h * h * h) + by * (h * h) + cy * h + + + secondFDX = 6 * ax * (h * h * h) + 2 * bx * (h * h) + secondFDY = 6 * ay * (h * h * h) + 2 * by * (h * h) + + thirdFDX = 6 * ax * (h * h * h) + thirdFDY = 6 * ay * (h * h * h) + + # Compute points at each step + result.append((int(pointX), int(pointY))) + + for i in range(numSteps): + pointX += firstFDX + pointY += firstFDY + + firstFDX += secondFDX + firstFDY += secondFDY + + secondFDX += thirdFDX + secondFDY += thirdFDY + + result.append((int(pointX), int(pointY))) + + return result + +def main(): + pygame.init() + screen = pygame.display.set_mode((1024, 768)) + + ### Control points that are later used to calculate the curve + control_points = [vec2d(100,100), vec2d(150,500), vec2d(450,500), vec2d(500,150)] + + ### The currently selected point + selected = None + + clock = pygame.time.Clock() + + running = True + while running: + for event in pygame.event.get(): + if event.type in (QUIT, KEYDOWN): + running = False + elif event.type == MOUSEBUTTONDOWN and event.button == 1: + for p in control_points: + if abs(p.x - event.pos[X]) < 10 and abs(p.y - event.pos[Y]) < 10 : + selected = p + # elif event.type == MOUSEBUTTONDOWN and event.button == 3: + # x,y = pygame.mouse.get_pos() + # control_points.append(vec2d(x,y)) + elif event.type == MOUSEBUTTONUP and event.button == 1: + selected = None + + ### Draw stuff + screen.fill(gray) + + if selected is not None: + selected.x, selected.y = pygame.mouse.get_pos() + pygame.draw.circle(screen, green, (selected.x, selected.y), 10) + + ### Draw control points + for p in control_points: + pygame.draw.circle(screen, blue, (int(p.x), int(p.y)), 4) + + ### Draw control "lines" + pygame.draw.lines(screen, lightgray, False, [(x.x, x.y) for x in control_points]) + + ### Draw bezier curve + b_points = compute_bezier_points([(x.x, x.y) for x in control_points]) + pygame.draw.lines(screen, pygame.Color("red"), False, b_points, 2) + + ### Flip screen + pygame.display.flip() + clock.tick(100) + #print clock.get_fps() + +if __name__ == '__main__': + main() \ No newline at end of file diff --git a/examples/bezier.py b/examples/bezier.py new file mode 100644 index 0000000..230641d --- /dev/null +++ b/examples/bezier.py @@ -0,0 +1,46 @@ +import matplotlib.pyplot as plt +import matplotlib.patches as patches +from matplotlib.path import Path + + +# define the geometry of a path: +verts = [(0.0, 0.0), # P0 + (0.2, 1.0), # P1 + (1.0, 0.8), # P2 + (0.8, 0.0), # P3 + ] + +codes = [Path.MOVETO, # put the "pen" at P0 + Path.CURVE4, # and draw bezier curves + Path.CURVE4, # from P0 to P1, to P2 + Path.CURVE4, # to P3. + ] + +path = Path(verts, codes) # build path from vertices & command codes + + +# build stylizeable "patch" to visualize geometric "path": +patch = patches.PathPatch(path, facecolor='none', + edgecolor='blue', lw=4) + + +ax = plt.axes() # gca = get current plot's "axes" + +ax.add_patch(patch) + +# draw control points: +xs, ys = zip(*verts) +ax.plot(xs, ys, 'o--', lw=2, color='black', ms=10) + + +# label the control points: +ax.text( 0.05, -0.05, 'P0') +ax.text( 0.15, 1.05, 'P1') +ax.text( 1.05, 0.85, 'P2') +ax.text( 0.85, -0.05, 'P3') + +# resize the plot: +ax.set_xlim(-0.1, 1.15) +ax.set_ylim(-0.1, 1.15) +ax.set_aspect("equal") +plt.show() \ No newline at end of file diff --git a/examples/notrandom.py b/examples/notrandom.py new file mode 100644 index 0000000..5140d86 --- /dev/null +++ b/examples/notrandom.py @@ -0,0 +1,40 @@ +# Random Bezier Curve using De Casteljau's algorithm +# http://en.wikipedia.org/wiki/Bezier_curve +# http://en.wikipedia.org/wiki/De_Casteljau%27s_algorithm +# FB - 201111244 +from PIL import Image, ImageDraw + +def plot_curve(image, px, py, steps=1000, color=(0, 255, 0)): + def B(coord, i, j, t): + if j == 0: + return coord[i] + return (B(coord, i, j - 1, t) * (1 - t) + + B(coord, i + 1, j - 1, t) * t) + + img = image.load() + for k in range(steps): + t = float(k) / (steps - 1) + x = int(B(px, 0, n - 1, t)) + y = int(B(py, 0, n - 1, t)) + try: + img[x, y] = color + except IndexError: + pass + +def plot_control_points(image, px, py, radi=3, color=(255, 0, 0)): + draw = ImageDraw.Draw(image) + for x, y in zip(px, py): + draw.ellipse((x - radi, y - radi, x + radi, y + radi), color) + + +# Your fixed, manually specified, points. +n = 4 +coord_x = [25, 220, 430, 410] +coord_y = [250, 10, 450, 40] + +image = Image.new("RGB", (500, 500)) + +plot_curve(image, coord_x, coord_y) +plot_control_points(image, coord_x, coord_y) + +image.save("BezierCurve.png") \ No newline at end of file diff --git a/examples/smart.py b/examples/smart.py new file mode 100644 index 0000000..35d070c --- /dev/null +++ b/examples/smart.py @@ -0,0 +1,63 @@ +import tkinter + +class InvalidInputError(Exception): + pass + +class Casteljau(tkinter.Canvas): + ''' + Implementation of de Casteljau's algorithm for drawing Bézier curves. + Implemented along the submittal of http://pomax.github.io/bezierinfo/#control. + Author: Nikolai Tschacher + Date: 07.10.2013 + ''' + # Because Canvas doesn't support simple pixel plotting, + # we need to help us out with a line with length 1 in + # positive x direction. + def plot_pixel(self, x0, y0): + self.create_line(x0, y0, x0+1, y0) + + def draw_curve(self, points, t): + # Check that input parameters are valid. We don't check wheter + # the elements in the tuples are of type int or float. + for p in points: + if (not isinstance(p, tuple) or not len(p) == 2): + raise InvalidInputError('points is not a list of points(tuples)') + if (len(points) == 1): + self.plot_pixel(points[0][0], points[0][1]) + else: + newpoints = [] + for i in range(0, len(points)-1): + x = (1-t) * points[i][0] + t * points[i+1][0] + y = (1-t) * points[i][1] + t * points[i+1][1] + newpoints.append((x, y)) + self.draw_curve(newpoints, t) + + # Use De Casteljau's algorithm with recursion eliminated, but the same + # geometrical approach. Idea: Eliminate the expensive stack frame generation + # that recursion comes with. Only quadratical Bézier curves. + def draw_point2(self, points, t): + # Vector addition of P0+P1 + q0_x, q0_y = ((1-t) * points[0][0] + t * points[1][0], + (1-t) * points[0][1] + t * points[1][1]) + q1_x, q1_y = ((1-t) * points[1][0] + t * points[2][0], + (1-t) * points[1][1] + t * points[2][1]) + + b_x, b_y = ((1-t)*q0_x + t*q1_x, (1-t)*q0_y + t*q1_y) + self.plot_pixel(b_x, b_y) + + # Usage function for the algorithm. + def draw(self, points): + t = 0 + while (t <= 1): + self.draw_curve(points, t) + t += 0.001 + +if __name__ == '__main__': + master = tkinter.Tk() + w = Casteljau(master, width=1000, height=1000) + w.pack() + + # Finally draw some Bézier curves :) + w.draw([(70, 250), (462, 159), (0, 0)]) + #w.draw([(133, 267), (121, 28), (198, 270), (210, 29)]) + tkinter.mainloop() \ No newline at end of file diff --git a/main.docx b/main.docx index f1731eed9f63f01a5d2f7146bf867f07a2be928c..c9efc125932956b0cbb5043fba09a86b1e31f183 100644 GIT binary patch delta 19589 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 Mb+)bdnHU%t06M(v1ONa4 delta 19967 zcmZ2=ntRSU?hU&*xwMTp2_4?fz)<~q^AXPen)=^DDn}=#9$bAQE9cGE-;tpijJiM9 zX7hB`dVW(m`EsLSBMV0hOVo{hwVQVylSw>hXg+gtPjw4}Bh$>SDPLb_Wu0Wv6yf^* z!S;^wH~#ZF$G@H{P4M}izwB+f#Dapy#}n?xFWz$OKKrp<^NqDdICd=;o~WU^S!ww) z`w6RGR6PjQtpCLv{@(V!kwebrHLE;h!tTYdQtsZU#9tqH=~B03@rrh{O%FUjSG^IE zWDRxuEY>G}OJITAoog}j3_FFq_RQxgGq(xh`jWKd=pGq|Cx>hA%10cKu{?cQ@~o*( z%|nZ~KisdMnCxQwzRE}QhqyF5%le7e*nV&tJW0A;#4u@#hy3^Y?Yq+tGWV>@uxPrm zb*`JMs%-CPon8No8XVZ;jp8ySeHc0Jw9j8`c$um8)vX(8`AG@~^gFd@CZ+lbAC)e= z+wt0_@a5kZzj^0KTbLL8`}SagS0zL7uX&mIGItYSElkh3w;G z&x{Sv*hTO1zgjT+#L=ZMStX{*+JscGa&- zU-Gf_jo!OIzuW)4TP*fK#o76~^o*A#KWz%qi)~j}to_Nb``*!tTd&u>JG)qe|D4#0 zgBq{CDBW7A_$ zoD^fD;id0(zx=OE`ERcSQ`y$+*QnWZ`^BTe{q+*R?y#TXOnm$J#dPKkfg9|jRvs&5 zNqRV^JM;LomCW;=_Fvjqv1Dfd6ZP23ZI(*8-#VGTEOVE>_2s%0W9{i(c4yiX8LKBa z&WpdVUT8n(iG;>+&0KfKYsK8}ALS`N-7nKvS!j6Ato@+v@AoCPvX4J}uXuVteV6&B zIsO;#zKDKsuKpo+?7r!`>H91A<+sn*Ic{+M`)}3G?fTCqufFko`OcS#N8Zc5=#N?Y zS6=V)6Rn=4de3K1oY(ItV=B(O6sZ0A!5LkyL#JOKd9~+*&wXB|axvR&haadb=w@>> z`EP&!GU(XS+w;rT6!ymy-r-t0!_?yTv)zGC^XhNrUpf4-_i+msSN#WVPEjfQTTyFS z^u(@hTCW~5CF-o3`>Bvn(aj%?|NDgriIy2f@OIw~a-Smga-#0HQ#svN?>NQH-FE%y zsp7i1S{MXRCg;Pu#&F-Q9KLNa?v1;n)1Xx}5gb zWj=bYVCmFZn(MNz2JJM^zftTTQh&;MvBAwX(Z=Vqc&l&k_B;LZT6K_>jGaj7Vx6$f zOJ7BKo;T(+FMhE#ZM*GtY5R|5df7KOJND*F@gH>YUTbWbx~}!DuYYK8t@j)AN&k-N zaw;#qonUT!cU6x2%1sMxZ$3ShV)^0}ms*a?-fdP}k6u1?bD7b-6PhebzwLTv-gdL7 zexq(`+RQNb%h$D6?kq_0oHp-oyMCthw^Jg2tao*Bp#4YN=SvIU2;AE@)nD6_suG<(B@HWtX$^Hr`sc`tb+7 z&2O&GKD>O-zNqNQ+e*z7KcB8Vc>c?p$k6wj_VU_)ssE9+X60A2j1(5Li|fy~TwV43 zz&gvyEB?zaxiRORtq-2uGC%mI+3ai&-)ounDe|qIFSMLDZ~Pj=cY0Bo$pzoylXu>% zQ+z!~@BYfu28k*?S@ZS31}zMI-~YKY^MML`ca3^t)uEaVD!-NH9sRp7dO^O#^_})C;es0GToz{@M^EbyXoNCfjnWuN2`&!hR>)Y;adM)1Cd;8Sa zr;Tg#=B3ZheDU=4x5+i?*Eb$ge^q+sYIbj7_xYW>_DA$(zY6}8H^ZalZ;*E@TX>t4IFVP{i+YhJJ3 zl6}q1n2oyB_$@*`2s4`{()EmBHHnUT+(3zBpBW&g{*axmnS9zh@r|($JsP zyER>OiO@S$$*)|Gl61E%J+~)4^WNkQxm{xRwSHNTE@y1XD0H28RowsOt)y>vqV#O4 zSG=r0w(OGZb+*#^^88PiA6IzlJ$dW$-_du(v|gEpdgY&<6D?|OnfL3+d9|?PD=K~0 zU4PL(tye4C=hDkvFVo&^+MK0dTlZr|Ztt}{N-a$$lf9P~xtVp}EyfkL0bh*95-r$em*3<$9atvflZx*NYZP>10oRwc(QN$(rEp&o4iJWstb?^X@qr zR;qhLSMt3nyI;X|C35S;yK3TZ^U}LptpnFrecPG&>0LnH*P3f@*K85nq1s&kZnAdI ztn$v~hjM}|-<)myy;)ZMWvOU#^tr8f+b=mMz7)ITuDDmuXIE>f+DW|)yQtzbW$zm=i!pO&(xGf7qM zyVT_`ySLtEp2yBddk&se3*DD+)$DEFUBPK@YohBzv}#V}_wTJtx6bb>D|O|Ydc#vZ z^<3N2qgEduT)R~lo5SByRdIcqO8?Y7kDLsj|84!a=2eqY*wL%OZLw1~z4m#yE-h>J zMS~MLfBkmO^RnM@FxW@vRr%4UldsQPKk4h{H_MwSsH8X#QUNqhs z^ptPE%HligZ{*DV{dp>9!d5G5KaD3Uk80OPrBCN7`;`9kn$Cu*lQ&Z4Kat=)aN&4F zMRRMTdi^11t%#V*bL8{WCuYf1$x5h{t}R*^@j~)!XZWNun|APT@!5Q(EO~9|A}8BP zd1A3kBd@z_rhh!Y`^)C@E9*7>^PIhDx5M*6@63X^kB?Sw*CTzQj-6|N{Qt7y z(s~iC{cC^R?|3cdy|1yD`8nIU+@t@OW#-)}0t-qU|Y8aEbkPuyMl z(|k(4>(paEy7qhi4D)(;^hv+Y{YRmO$GI&_^d3KrR$9)fIZ;*QC->BR&K*bUd-MNg zK8@lyPSJwDu3S5o zESYm=nd-yC;lCXXr@IHRn5hds6`1+|ddv*vyS=+xGEN5Hm38)yiR_;8yKjo=-fx!} zKk_o^{^{!JdGYkuo%&42KMw-e1ble?dv>l){rhF-S$<`dPmSBqbN9RdoH>(JRA)|6 zt>V7y9de=e!2Szq?`Aq@$6kG2{DW^-W0%D7^!oqqDw59@rUy?n@|a=Pz~~m*^!tqJ zKf#mA$De=eUGJe%;JRGlo^oXhn-!mmVS(*uVUH=6&z{csXD@N&+N@{wstcZ1=LFop z|Ns4+{|&3_b#!yv^>5tbU*KtIkbd;cd-;FPS6F<*On(OVO>gx-8DjO@bJ~+H>ZWVG z_8iizF*^G8@LsC`ZHo*A!Xi&h3$33%?Ytm)f${9csn zp=m0CqM=SV?5Ec;%`p;4|HTk|`GADMUR90{O}mr&e9m3|xT;>0muHTB;+}Xm#hwfM zt#;HKrWhq~#z^PuWPM(57?(6lDS9?rvgH|`J&NZUHJCm~@UZ1b7?}CXPO>PxygtOk ztwsK?)w9{k4sq$#QILIEB6D(geR6Sw|7WL3lMD0q-<7G5e77f!?}zaRwk@CMd|h{>e1qse zlUMxv1nwVYXgl|7-@bzfn98{3U3(BQEok1}GZ(fiHAhc8nC;5;VE*48t>(#G&CWNT zs(9O1We;%W zM&AyZ!13|N_7&mI3wHjB4F7)GJ34g!k==>4mi4c%KUrsy|Ka?s^yl-p+x|Z|X_@g+ zqb|i~ulzqfzM~kvzhmdG#}(`9cF5}AZk=;OcH>i*`lx-zUfmnbqGrv0wc&}zt`ok( zPlc{)KApcjtapCu`?lzX%2DNapXa6Ns@=9y4_)1R#7Zx=>(8P~KKELuW-h;;C7AQn#0LM$c)#^h9&7hpP6pD2X3)k62vfpD(w>;eOlY zQ$}sq1N?p_dCtAJRPJ+E?1kLrPs_Z5^6q+b3tQif{wcXFVsG}8Wo!3+*^zR*x$>%n zx$Dktaled{W7en4Gkz_zduu`X{}ti(r_V0qoITgK$<6jSXX*aP?e)jH-|YyQBxf{p zxqGp&*^M@9uWsI@TQ-QFTBM#bTX>(o@87Am9%p`KEsM@JPnWe}&s2~9yfW;x*qyxd zx;tKb&C}OTE#K?ad!%gR%xs&rduL75E8ARl^|W=X?s`sN-~27tjjx9bUCTLGcsoF@ z|Li4;Bf`JSZr)$H)b6YB`O{NX>+kv=Su_1(YOdwirM}krEHd%o?nxTo#1}u>tg>rw ziM~{I*d^}vDb@XU>2seXg>vvrJFgo3(^EBFuBvoZwzjQo zea_nU%4okd9{bnV!oyC-hp+l}Su4@>Y_56i1?~Q)4+7_=ru*f8TJj@^^NC^jB(8&( z5~UAqx;^uWam75ZE7{8q`ky*`ujpGsf8?~)Iu&KVuE;jsj1mf&yxNCl`L*>+Tg;w+ z+s0X`eeR9V(TP`!H$AwJtuiq?b(%i6%JiG=oi&B^=dYF-e!TE)_3E6Bdvij~W-c(6 z)bWZbzY=95Q}wpvW?)*D=G-;Qu1t%(_o`R8uJh@1$#wCCm(Ex1Ui;a3xlZZz%ES6* zA$1A%hi4mC9t{4J>1jOmX_&#DIJItd4VS%oQ`EOl`a0?L#U=WB;@!s|DgU3tak|(s z;)%Ea-gRbLyw>&IyHnB*U!VOh*-uQpxcGJ7o0^sJn2H}SDSq4&~fGqi{d`d_FHWGMJ{^fzPnyi%#(uvR7yX*bqC&4jq3qSti+4DfTfV0BaZADzO>DmV4 zHjhg0l^$0t*!~r+^f-7WknP=>#VdU8mo7KHJ9`^bh?s`QNv#{N<~`H@cYd3-$44D~ z%`Tyv^PU(+e{WU`TAnUddZ6{y%wJQwX6V1np7ohUW!4Q@>8cM)`S11Earjx??5!70 zxmq_xP$B(ArX~b;o(_ zZ{KcwlKinv`YS_i*v|71qz(m&r5LGOVcJ z=**vWMuNvL`}-qfrk5o_J9uWFPMdP3{9-Lna(?2;?zS`g3J$P1`Td@D&#h86)i-T% zwnamuze;6^`&ORrBFB33=O*qymbwdytJI`)$xP*%kj?&3XnTT7$I8T$@basVZB(BtI4_mYOZRY`=fI(fvqx zkI`?|(+r{IcRv5LT9^O!-Pz*5d-bb&{a(GS**5d6q5I`_mg3HkefbXWd+QGrU-|X7 z_W&W{U96RZ9(=yMlV+&pSPG-glT815-v~l`j8|CH640oP<3AOw? z>w$9Fch!U6nU}^~o?iZ{06^sI2|Ej>&tU+J=3P-r9@sr@LOf z?t4!B;cm6>?wm74RKmS}tz1WY6zerBj0^MZVRT z@t;@8?eG5o>Dd!+-QC>v{y67m?wWOTW0QYc{rjofGW*kNE_0i^pU#Wtd0L*_xT#>0 zh(g91t&C3xW&h_r6m#{dn^RydJ-wotW1`{IKhJMyK3}=V+o`@SH754n-_{n1X$doy zR6O4QxBl!?$%T7o+f@5k9xJ-JWJaKWSTc+6$s(qktGq z+ae)w$G2l|c7(S_VJ2(;%1&-WzI98BR1zOQEBvR^FT8T@f6GT-y)R$MUG}jU%{9fwjsk9$Gv#brL1$l-|JSwyBSNw$tr||FT^##U)t>$uRtQcY?!l{S${%GT*Cz_^{ZrA^gq`34^-FkG?-i3cMDfI@vb%L|W*~ z^Q-J9bmxoNOMcD%)VieNFU!wGJI@{9D^z|syCX5!T=4TeCAE`YNnXCIjw`u6TCzn! z+up#aO4u;v%KA6~9QzG8?`2Lm&g7u+_%KyAMBsF!@MLjJv zxgLnN`gY!YeB$ZtZl* z`r{J!w(jdV^ZN9!MK5evKi$~+YtbXkr}G#)x9yqpZM*cfg>y3O-%XczDpKEhJ?N(J zbjgAv%OZo$e-i6)Q$1JMQ&(>($oM(v>4cLavQZPbJ{Z58c(SKd=lMbpL*BL!0ZF+9 zx1w*_W5-Fa^ zH8u60RX8%uv|T0_{Ck?2+$sG}vG<6Y?8e;a59b4LH=9o;hWi`~O! z@GsUcJ*_s?>UzR6QNzVCtv5^G@a{`}W_2;6X2af`dZ(7v8@=15&PmFC*S%}7L`hQn z={JoTyFUw*3#kamJ6v-7=<3XxW*9b4ltI&|_C?Zz$XelD*CiEVPxDSRI9bT;6Y{k8 zvErWNGv+<7y1snsbPG%E80L-HtjP`hGjz{6d?^u0OW19vaIYY?Pijis-GJL6-X3{#fHrwUAmjESMn=*p>qO6Lx%+Etxs z{y+0%+YUnppTh?Zon>tJ*PyA{`fEwbTb}id`j123weH<6t^QRusXj$S(tU?{y3}^p zyNTT)^OU}xE6>Wv_hEaySs`XZ;f~*~9A`{Eoe@>u^na>klbV7TqvPSf<+g`z7HSy& zKU>&*Uj4nL?t7b%K(9Fpo?R0{UMz8rPkHv@z+>0`>1GuZgFOQm-B#IqQ+DTvKiPfl zVL8ihAHBsKY-HP){BMI~pJ+?H`BjmdD~GZ##0+*-OJD=_qN>fBekn}ScS+duQ2@LnffTM1sS zlKjV3F3aC-?`F*5^^K2Tv`6A~E%#EMsl^|zIBrecE?1xF;X%w(yrQurc_U@iFg%}1+fz8+ET3);3`YZ9+wTvFs&xsAQh1h4mHa?TJNageOU;f_@hPk%PzqRB@ zRYRqVhF@MH%V~DSwseWWX6N)U2Zl2_k0W zBQg~W67N0~h*)g;A?9|QT}Q~mZ!g^0n#+oXSIBOb3OqMKy#C=FvD?4XSLk-EnlU3u zO>TGU!<6$r3%s2eC2k*{*(c0bq<3|?*r{bzfA%uS7;Jj3r>VU-vPs%y!uQ%G&7CaC}lf^7sNn zXr6~Hv(UO$wspMBuHS|03!MIJ5u9k1e4f`m*{aLq$ij{VzKjJImMX}#sm+zp;#fX$ z<9VKgAC5e`z+|f^!5Vc%!ISs${KM=5+8U<>tDXOJ{4iMa^WLAvbuYRX{p++}ahdnl zcMhfZmnS~1Nh-BSd91TYew`aWySuRj`G zvP+d?k8Z?HgWCsBsc7YR8B|y`y=VMvJh|9e{etcl_5=Fwd#-Mj^wml#;xKD}Yo&Zy zd0Ruby0E|{hRZWo7=+A{FjJ5zN;p5m;6P^M@&M;|C&f8=Sa@Gf+|zE;H-{%eE#!{- zcmD5-)VDj%u=pqNXP2Bq>M8aIxCl#Kw=Tdbch( zO{zC>GOADDX0W(kq0sug@YXd19^;0)Vsrs}18o#K{NoIYPt&;8|R%^Nm7n>{R>FYcAv`$uaN z=)6K%8EC&I@x4BZU~+cpJCcw6~3gfAv%F~ZJ>v4twDW(zRsbG$|W-z z&NLp7Kf~~^UExE0=S0RbsS|vwjNKIYzO8W(5x6DI&izW`iJ!=YtT&7Px2<*9)f3C} z{f*A-6|?7Ry6H8vIlgaXJJ!8hP1k{Uo-ofn+n|Zh_e-drFk#PG%&?z^mBxIYSF{3!g;PwtLNjDf=O+t5@V!WRd(B(t zmQ?dSX4&RK_u%B89*H4B^(x}(;&d+uuDQvxow-$wq>1OyvfW4;v%=_OXl`>PnBkR>h330`0ip``@=;H z%x})e2IL=E+_m7o;Kn{R`(sQo2h5{hclegbPf%d~C9^N##lFpJZt`*-u-;SGQ2$K* z>yn1gC&Mb+GS4Z?)_y2_cI|<(tW{z7FS)do87XB4BsO%W^SMpm?X*lqr2C`Hn|B9{ zp72&XPyE#2x`JaFuYbZaoBk?c`M!+ST?=>l&UM-JtYK02nsqXQJ`bdRwHci@_1UMh zWcM=exRo=02WBEEUP^qFS;ywII8S0;e++b z<^RrPDsTsG{(EiHiQ5;mM2yNyT5j*tytT*qj<`_B9RHZYP3+^o1&()sE z2mMXnab>|QD?Qme){8!~Gi-ELzror5K&rr$)8m3jL*$a_4*xF%G)Xhf(X%>mtW@QH z$IH6(ABJun=OnitDLC2pB5#2Tld+p$rjJnP*~)UZpM}O=^@r!H6dp|c_2A%_*t^Dy zHf#}ZWm|dn^L2%QB)h~Q9=0uoXK&j$*WUN$+9+UnRB&nM!HDCc7Ej(UeafoHx#2;O zuITI)s)iNMBOgdy{Hhxwyt^Xqercy;xs1S1&KBE}@<#t%Ob*|Q*woY|HS0|uZn-Zc zEt3>;)ivBa>PY14BMWT**N=l|-+b@Px0Y^w@#VZbgX+0i zE7r{MDrWMWR-=3W)22=-XTKC}r4L_DaEZ7#EE2hSf@i;pv(1Gte&*@7=Fd33d6)d8 z$um7~Yv_IBnk6W6>rw9Jno8b>+QuP~ii?YGWg5(!JV{A^N&o4Ne&=KBCF;NGPyDe~ za#f0ezH!Lnm`ULqK5o5JV5r?9@Y_>eUpTz{cgK8Zll9AjrB2T7Qnu3GXd`|)Xs_R_ zNopygZ=(hF%HK?NnLK4(vdd-O?R*{k=A<`9{djvjDR$1Z>(3u-P`(-6=X z_vXB-tGgF8GsWt+QtRyVYOK1eg$zIB*2k@1#dXuf*L`1~xxhXXJVdu_>#( zb1__HRor`0+T`>R19qznkqqBS_T_~iPMlltnq|igzH63xTOWBBNvx{LEIqQ2Wpm)e za?T?fKhpH(-Q^K`&cSjo-1nvXGQPv@8{aVe>vgYy@&Rx#bp zi)F5FTz*RVOWTLGxr_gJeGAZ1{kSvRXZ@@cAC=oiZMELZZ>r`WyLe-Xr|Op{>Lzy_ z!xU2&Y>#JuP`1*NW#+FhyEZ(!v_~n{H@SxK`_m(P{AJE_Yr6UsUevURpFc~S`RnYU z&q?R^Tbk-GuimluMEH_tpr&T<=cHH{uOBrRujN~wski!dLL|m!LY7y?(wwvFo;}%X zx5xb1lUSug+!DP@TQ9HaKOyqXS1S7cMsdsUN0`Hdw<|Xqa@WSpNN~EctFB?;va1!s z#$1N7$G%?RSia|_ocg+i1noU_8=~DN@3`{y$bS#E8~Upr>lrwhshByOw(2mKT`T(V%!9QVQ$4;Lp5EA-W)&%RS+f4wu7eU%Y)>+n_INlw*v+x) z@gn|g_nkfqf;_^GovY)&Q(&-6J7^cLNW;rwJ2!1#=@VyS8!w-Jv8?{Nl(d1h!}{8L zFDsVJw_G=emuZ&1Wy^fVXG}L=eE)sq^8Hjp-nSQw_)67wxlYdtKX7LG&tK1D}rPac&eKHEAnDYbbfrfyVuft27im>eg-YSbZ*Ii!nXI{eV#M#_vY-*^NM`& zC6~9atvt6Ww?)q0_}*U2*N;0-J9H$p@YfhbcRbl#FJqG*>Aq?8563T^NiXdyEYCIt zgxP0mhW(zBvh>aJEt96$dFF(9ZStIX+2XDJ$4rGZfg=v8yXMY}-mUp~l70cR)9K>c za)}zY$5sy))ft!HV7yb1JJoHPu;Fo(%E|ei^>41+w>Mau)7%;L z|6{(-u9;!oQqH=~78Zrw4`-dNoU>zU$KKCd6^$*g%&VTes(JbgOO-!wCjHueKCpT2 zUiNa2M>Zx5x39=wX8AR-(^54>SLmzV(|0S{`vcFZe92q)GD%IX@y(~=ULF4RDlT@f$hK<7&lQ?ae2Z>MMlsi) z?|XB=CV_MPhqC+gTGk2sT7~bg*3`T4yz8lGr+s|corgDy-SXOxtUldmEK#j|`_-J+ zVV^C#S9@&ty_z!hm-f~BlK-yi3Jc!%Jd`N6+_`Ah#?$9y`&UO9J({8R@%Zy>&u-QJ zMJ6=qPTSQ)3;(@-XV>QqeTlz(?6e@-(kYubEa^C9Ew zQf}%0ZphB#U7PVD>fH&xw;#^mkUkMJ{e;jgKdyT#&XmO`PW~9t6?A5GoX)0V!}*_Q zn7&{z+m^cGlaJ`~!a}bF&w@KE)`_=nnl?2hbkC8~mTSJtRV@9zM!sI7z^vlI_DvUf ze%nl!tZR~Zve{_%)R`g83w#PvD$iBq_!MN^Tz9+UYKeYIWUTQ-!95Huj%=+OwQQNC zmzQ-4x^pkkdsu&Uk?X~8<+<{=UO)KSdeAHOv4p;O1M?q6{RPcUUR`{t1|Qr0p4epl zDvve$;O=?Cy~h^+V|W*LVv_oc`bBFpOlI)7y^a<(TVC2VFXj2k*w@o$34}Aq^Iz3U zz2K&)v&8kN>$|Il&oW-Yfbt;$*|QxvMqf7swyFwj%s;#XL2B8|^DQY}kF{ z%1$_cVNZ(sf7@Q@|2_UZr$s6g-#%q=wExupYu`LO@$#UKonj~NtX?-~t>*dY;(e<1 zMl+Y0`g=H@7W(3F#CURxQ0hER!Oim>e%pT9k&?3R*2hU6A3l3Ae(7QUQxk?Ypwm{P6!bt`jzeJc~+(k?ddsc($_ zt%a?!Z08i_Jj&a8@S<$P-Q>gJTRzB^XRMXhj@nZ1Xy0^a`JOeZ7BWY4V@o-IZB1dd z>pQNxZhFzmu%ArxIM+Rrc(9UzQSoZg!gRN%T@8yhJ7<_rI6R|x#tIeVK;5ebm1hcr z_lQddKMqw|xSG3y@7@mYt|`xW>^^$>q~5%pdS7gQRL}Z#P7@E;E<1W~-;xv^b*I(N zTv^XvO?)wPp+bGjw9wdvT_P+7n^pt|DA%%`eBkWF&KGp9a^8YVnwm3?)Y`@});e5I zD`Zg!SevX^d_*mNua4xaIRC$A4umdQ<9^}z1}+U|p4ALTWg^*p7>{)>@>}WBuz`J7 z6hq?C3H~`tT~7V~t^dD}hg-jd`NE!Ki=?!6$oNlNi${iIJJHs3e1^cJ|L z=`352vG&PVB?+CnjY>S*d6y>NaA~;1Q>gwxT_avcQHm)(GV8C_4lfhQt$q@$Zw$p( z$$JMMi7|>&>S?+l`Q>6qn)Mos1pjv$Gx(YxZnNc8pC(*!Ipg%ap3XNL)tg_5-w57u zux(j`U)XW)pi4WIG$x$?!CpU2XWK)AFIVagH#m1UFk83(Dod>jjUMF_Ek+qm}_v)fb0Rh1)#yn03Ganp3*1g5*TSq_J4v$7@4u)6tw!$4( zc(#d(?DnX1H3&JZ+Bs#hvYUd`{-(XVZf!7io>$aYkX{RG1$4YIKzZ@4AY>$29J z4LGlmaVX7!U83>v_Jmzvx*1!}~_-MDBdHJ$-QT<|lo65e&2H4)t(Y zozJT8oF=qEWSZ+n-W_HtwlxhhA4>La(F?Q|-SXh)WTCM4dN+8b&jwAk&9wGav~IcL zyXgC+16Nkqvc$MDXGlpUCU0k3aAU@_6v-ADm+taIRTtjD*z428y$|O36u;qD3;n6OyjotbwqD`WJ@vw$zqSQM{9LZaR(j`| zUx(6`_l=YNel{h&3e}pvR_>Wnx>}OyCubdwPOWu!VrVK{Ayeq?-Io6O@02e+sW0wm(2i`DU7-6n=Ccwr_lr2Z$pj1`S65yuc=BuCZJUf$mGjbf?_&;HsTptnN<;_A0AU^f?HTX;3~xmq*t*(Z~=T7#t9Z}k#hbnc^#VUMy^bMibj6&5b>y!j%nddhb(iCory_cL4rk1gx^A$rx-sCuU; z=e4}oUK$2|D^2B!1mdHzmppI{)HC&*m4DabdU@T$q9^&g^RvIVo=MvL@!fib2VzOR ze=^f|2fTLwRw9)vp4Fdt^G?oG(QWnf-%Jy|x9Z+M`#|2Nf7+r8qi4KbZ}GjH+iQ9F z9QhJfg@+<%43rZNn5JD^<+n#f-zxh4lGX_ilAHXd&CpLewafamozkvr6|Y$TnF-E4 zP`GU3<@-vH$_}nNYZ-jY;+$olXk5Ya2TSc5#4~F?dCvNkc(O>RcZJp(y%~qp6gQeV z%&u<|OS{l2;@SK4OW02VDTd&1-?c`I{a013WS?Q&Cd!(#F#Fhs=?A_=t<0L(6db&xkR zRdW_s)f^+O;8-5Bsdpt$-<%U3;jit|X*a|{5FI_$S zb)|>+jYz?`nMyx+Zk*cS*4tYtx4d+d-uGF*rcRJC%A1w+<*;~V|DT3g2UdysI{K{H z7HAWixyoQt=4=B~o7mTDIUdA)lvsUVQ%cZ{gJF@~lE`ZYGBZ6n1U-1dwaz^<_GL=_ zwxB?jCu(w(#I*XQrB9bF6g(Rqp{^Y=cc13XVveg06`^@1Pt&jRF73)(DEC0KP4HL6 z#SKeuF-QI7JJPKh)_q`4ONPVookd4(g_!nccTC^oa%}Opk28);SylDKOplp+TXU&l@Hy?X$DbKG`2#BQAFKacZ(caY41r&ko;% zJ_<)KSmXyTaCcHRKlz&HkG>z{r%)k}zrH^V|6Jo(?=RreRdYG@#oCjJ*EXebb()Au z*yf$dTsBANUC~Uvu1)84jtQGAaO_cMeDx!t)`Lx{md7{0GgP%9m+wlb`tk~f`e~~< zuYP1S-L`I`*sm2E16SS(_L^F|{`IxHY4d71vfc|m7Gztq+}rCzLY4i+zf(VFez~)N zg>8|)$TfbcCX?kt+20pOJ&ZaSpLBA!-h_=@LRTslALzL#<6m$ii~qU;=TQ;QLdK1| z9{VskF#Z-kzS!f&9)*}JiPdH)28qLt@$L|5Ir?z8Q&Qks)ZYKWa}$OYNMx_49xvoB|U=)bPC;N#>z z*4f)8aw(U1%WjbSG(9}+V3q#?(}vpzbGMWqinEol3|5y~VDgrs_R9O{#V4QD$UNs! z*5;a1TV4Ov;Ens^g6#EX+oK9Emg)SHRe8*?uF5f6So$sVscgot8cF9j&Y74RsnuJr zJ?qftb=N1p7n^i>qjc+8#)=Q||2qTTZL=5K{p#@EdaDH=d&TyqEnQ!l(BJkg<M}gXB{pv3yZ-Clfmm?!44!x^daQdJ{8QtNQ4RFYA8J@f7gO;f|l0 zdGh%!<`a)}md@K+lXlAXQ?9+G!u`0u8A-Pc`&N|hf7Vg=_xy|ZujVx}{#Q^rk~Tk~ zxF$Hc`LNV$|Gx@cF+Qxf1mBfB@mKrX+xcg!faSrgkSBknCjJvs()wO2-2PBd#?7vx z^W`~ibFmLMU-M6Gw`OdwpZMDH;lVYhI$kxm*D*e4vlF|sw&g;{IzO}Q8)s6^ZpbKH z<9+{g+qo+xFDJd{o|ZiQ-O9@{1p+(5?>Kt=WY`@RIQPM%yPeN}T})69Ep`89((&f) zmzVXOF|U^Hy#6H1Osn^Syy7N-Pq|gSeHT{SZ}_{<>wL5a&oW_;r;ESVedfMUpS}N; z+6>-RElKHutkdk3I(=4ru@u>tvsmC(lY;+%E%6pL!87MW6X*Db>?)~0lq7SX`_O{@$@~5$itxHI>$J$l^ypRY z>puA`EW0&7_v7oYz6zJ!*pj{d*9D^}v$VUGI1 z3uTP^m}mEVzP|hz=f?J+6WQr29_Wja4Ar`cNS$GvCM*sjY**S%hP!tC$1S=ql{M(h4k449F-FXq8b;TKWjvp$}# zool9^%hfSi>rDG;|INHwtTq|vgw1xmNw)mAEJ^-ssLiAgo9aCr&wFm*O3W9$xj&^M zf>B`B=iVho^2gj4{yBB#&BF?tE$r)ZnSyP8wR`TL|M$wTvR?hYjwjN8vD8c}TC-5Z z``j1D`pch!&(*J+85dB!;`6m91&lTZ9&crsOxMea_1X`Aien zc>MUV_T+tO!>_k_#0_wmxfF3Yt4SyuOqEInucx8h&Z<9MI<1+e_vd2dDGip|$# zcGX93WaSOS zoi*cqt>=oPv$m!A)!p|$UH*r4#{;z=1)u+Z-CO_t?tZx%*S9Cub6^ z<)fzQurg~UGVYg6YpoglU=QL|HNo4!fa4Hp{bt`^;@X9M&zAj#2>-mbad)KRp8oD=)txmB2xf^(9*O85DCVM1U zKXzpJpF26>L3{G{{P#{MG8(qqb1F(&ve_%c>Jz_f)oV>hPQTo1A$or^ci& z#xIevXF;0m*LUxa3a#5a@n58Y*^W?-&_xZue`F_45v%{W>8F*jXbR)(_qU8@=l@Vr zo1E=^)o9&*y{wwdBv~Et?tYunwyXwsRW+5_C#3vcOCN2~EN+O|<8||{Q>-&zfo`Zq zXXO>y^+^%l^%n|Uv|VG*DRhL3Us!r<@t)QH8K*C-U=rCZbD)8l_5K=8h1SUn56jix zF1lqP(DvT?a`}fBaw*9MM}$wbOe!gw?s)yhBV zpa1UFcaL5-&$s!^=QBH`OO@-G-KQA~j69F#b=LjgC9gXnT}P1fRn=)erVdf3%X5*VbrtvW`OmL^d|tEZPjS+N?-qjX7Mj0id?-ABOo%V?MxKp^N&WjK=`T47ya|^WT}OYH~qsdAaadWX+Q^;mw|c7=QE@2G8mt{8>u>i(5_yKwE_Lw~vB53Jh!u2yx% zddbgw)VZRVmVZ3#=iwV?w1K1OM6=0tlD!T>C!IlB@T|u8Wm_i-UgTc+Q)4;``y%7xw43o8@?a zI#ZS|clSb#+}g#ZTOTeiGhfWXdOkt$W)xfQx$-8R(v9nuyQtNi_n0wBw{J(p^xn18q8*Zgsb-SDKbb>ucZ#-? z|7>QK+yCdMA2Vj&UM|1qLz&O)m@ZbXbu~{69aCp@pJn=673=@(gz>bFDI!4|SZ^6O zzngY{|J^W8wWXq$j2<&O&sY*v(zxx~DwbsD?LET9M~hc2oj7yvqDjd!Q!P_>)K9WH zx={YdSNo-^smBhq@w>d~aAcSHE8*sCy3*lIL$J?wm*{U74V$_Zum4~>|9e3J3x^F) zvz^v13DM;AP<|6xR;JZeOI{Z)F+O+nu}9*36KVIZUrT;k1nJMMus^soiAl|PrRByC zE6isI|BYM4*&w>{XLQ_?GJYTXJVO=n_saD;Ojjo!So|gF5Kr;UO-f$TT`>!Sx}PkV zFZ1=>mn9eF^VT}?f80NDjf$?N@V0L<*j|aHrzY%6J9B!PMh52`wSH+u(@O0FN+%TgFCAFze<1c@h)sA&M&+lq4?;WdYDeVF zP?{C7QjlloB#SP+!s$a zNB(02jqEcs1b8#Eh)iEo!Nl2|e`b6B8OG#RPHt!IN^4dI29fEv1DPZl!>4}@WHPL0 z4a(ZL(}F$y&$GMEx6i!e6rWN$z4$fL+4Lo=BYbziefsBf?oN*9#)^gEkK0P06xFFD z{d@QJ{rOHaN|=lyq%Nby6pe-4M9xGTzZA~ z&1St%SQs8N{caGG0(+O2Xh*ci-03XAOwNq5(>;Qj92kYBcLp=5*T*Xuq+}(|HTF$O z&G{KKt>kNWe|puql~HGBKKS9ovwW{YYGH4Gj{fo8nklAsjtdqY)@}LwCUR$@sie~O z=U={lHRM?FBI2Hi%VI?~f3@YNJ7q8JopiiyiohMwzfP0Z{o5cusmbl@jz2Bz_lp}! znxFOuEZBa0-V~P8wo5*WO9oG^4>H@bf8iYCx~o?McJDtUaW{v9omr&nA=|0hMP&hn zb^ZmslV6G7Y~}jRKI36+LEggLcR^~Z+4tpt%O3gl+-PO??~ro_`PmEk=PxLhiwu-n zU{dJr&;F%l!3F<4cREt)1a7&hxTj8ett0&HSp7@QWf}JuUQhUpULM+nwg|sz$jMnvTIwX;Oy={AK71KP$zS+yu zB;{SVU1ZiT(oH!tXZlXfS@&M2dpvB}cd;-3u>E4${a<8HOT1S25NvO%v~v2?w3%l# z7oBNoS(lzZQSf7oy}>UJv)EN%uF2`o8ZIhmn zJl91-lUw-H+dQA(FTH1$t_)T=_IpWWg6KldlR+9f$u66jL{}Q-?PL~BKNBOz${;29 z;ehe2lin>{$vj-@1;NSYVhiX0KK6Uc#OM^R$UcERWw|zQP8?2=_dk4M&ep{)ZMRLA zSCkp&T&zFcn0)qq(5=iG-vn-D|A|-Y)*d{X#NyIDds)lzXl5scGVOl4YqHAQC#Jckv2U(x>s~#0?+44R z@~_9M*F7rXIjx^0=(TsqWsEOii)Pzh~GSX!Fg| zdT5^G|60u6p>M+4sI*6U^;f(qk69-$7uT;_cudG&`^YDsh^aq}I(fI< z+B@QlAM=WCsQa>EuJ=QHCdCFC)>L-)yw9sE+GelN?et%`jujhYm|7T#BzNmsp zc)M>nQz8qin^N($2h%r4Gx^nf9Ran)n%)aMo97#}>2_J>u8z{g^@|>u&R&+gz|(6| zm(sr7n)9wLUjA@);)z@QR1brL<7=7z7nsyDIe5_4eowcF;_ z&by!fyjyq8dCyVZTT*B0b;FD2_R2TMEb~{$b^f=)Y+t48Z%7rt{cQ}>R8dyLr9~f@ zwzn5C88X)U87XrxxgMR6bRsdD`AF{hRW8F{wk2cE-L&qTHpvN7FCV*h`^~~XMVrq>xMXh4nbVqE);8mASHJuZMGJmLUKcmr zoI7diF8fb@Ug3A)l*QsLOMRX?X-_;9@O<5>o+j(%aZwv)=+{609Ll$zBdmGf$K=B~ zFLu2Au-A8MuxEUY&iQ%2IOCjNOLr>lTW&vlX4#ETH7S)Z1I(6YI*N2#sveslpTZlc zGtEX`puWgac;l}vkA61%e5cYJ;t?$JI>~jZa8v!aeTH62yb(3VT0357rF`F;HBIV6 zP1K>6YVHC02OmUEn38#-e!tZ0BWqrEFizT|@LJ)oX4fJQspAvmr{*NMCksr?QTp&l z|KN9p%U%4JR61qztO8yzbw3l=t(>_rT~d)Ze|D*nM5dwiskQ~jd;29^GB+%|mwe}N z=1q~=PCCDsn69_hUdUFcS-Z|&@m_d|`Jet9M?-SfCr+?BadY?lo@Li3`li-1q-8vu zP{TA!@^sX4#fVc1%H77i7q5Ifo2s|zpWvqAwbQ3S1+c)#ckBJc%Qd$ZpDj)n_^7g_K;TQ4I&HJwG@l{c`(TEIO{_kqu2IK~RK+r|F-%`y!NkUS-aXvtAR_~V*Y@M3OiGOP{`pr71dhJ2IJ`akh)j@kWvlT*x9SFr0%RC~X7{_)3}>-u*o zvVU-l+`ROr)>4+94M8)jy!VHfpA=P9EK;sa=FQ3EZ;YFse_!O#(?eAiAFeg_b1^wi z;@nvfy{rG?(;n81>}L;i$=0(Sb$@NzAMtCJrQW;>-kiD1ru#TQndE+sE#Xm`lC9#> z857riJ%7x}E*t1<$aIO7=mL2Siw#@#;<~c?2me&WisU8I<>Rp@y zwrbv(BWJPj?_YKoo&0{mo+Ed1Irf}C*?0Wml@%@$!s+)X2+CD#*(cMw^MHGG)4t7d zY$0Nzw>}g+oZ7vED>&~X^Icy4!uH)CS2)zYJH5*M&V=@Br|0e2{c-K2Cvm2}2lDr- zTL@*({{GnTKMVV`_GYPR>+baQ?bPwpw=nIsnSS)-^UKzAr^<`R=dH4iT6g)4mZ!Pr zww0UuE5B*_UygUa-~ER>V7}B3{ztzyow9qv5i4-MA+zN4TmAWvE+*Hxcegf}Gchn! zN=)Bh!K79Hvov6#&?+n6S<5ot${kQ)TXWQMV(zR<%kO(O96F_U>T1nH=|?ipYb>7? zKVr#y9~UBQ!=0jon+{CvtuN_Pf5Us~(5x zr7FMG>*73lnAxqqg=zKFHAieiqE(};pSeewc(h#0NlEY9@=tk-T*=+c6)lDqa#!C} zcAfsl>wKAe!lbEe%-Yrm56Wms1@4Mys!zQ_Nm zUfKP73x{woh70cKwlsv5w3ZvOljKlDjx3v@G`7r}bUyPG5blykE`Kinr>1&GN-A^|D(M zuDmXAWLGYnvq9-|c)PUKB#X0~EKcs_6EB%!(jDp8b?J41lY66Hk=x%}58L>rrJJ1n zbM;{xpVy@sQ!)dO-D?-N%ZN!+-6tUU{xGk6>cnF|zCDy*cjtqkdW%4mN}Xl-VRmJn z{4mSUuiK^Vyt>Zssyt)_Qu(53g3VVu)qk`5|Caq}6}Qr!S|iH8KwPRy`Adb_J(COn zfBZ|GU;nNB;2(a5$qAQ5wrf-~C8lyA4jr35`2mwZ)4YSzpFChvk^zreFflO9;bLGA zWIzUTN2e=2WU^(tbbNZ^Lnb8|a7U7ffngCB1A`E1f2Ll6xA_KfH zAb{?O(BSF%kC|+l_D4+5d(33VBo#e<-D4&LS#SlOC|;eNfrhM0Tj)ji>L2l t9i&}8{m&C7Wf??%WMB|MF+;g(y7f~g2d18y>9tRp)Y;S@GBGeP005s>Uhe<^ -- 2.51.2