pax_global_header00006660000000000000000000000064134333503410014511gustar00rootroot0000000000000052 comment=0403632d5b905943a1c2a5b2763aaecd568467ec gg-1.3.0/000077500000000000000000000000001343335034100121075ustar00rootroot00000000000000gg-1.3.0/.gitignore000066400000000000000000000000071343335034100140740ustar00rootroot00000000000000*.png gg-1.3.0/LICENSE.md000066400000000000000000000020441343335034100135130ustar00rootroot00000000000000Copyright (C) 2016 Michael Fogleman Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. gg-1.3.0/README.md000066400000000000000000000116721343335034100133750ustar00rootroot00000000000000# Go Graphics `gg` is a library for rendering 2D graphics in pure Go. ![Stars](http://i.imgur.com/CylQIJt.png) ## Installation go get -u github.com/fogleman/gg Alternatively, you may use gopkg.in to grab a specific major-version: go get -u gopkg.in/fogleman/gg.v1 ## Documentation https://godoc.org/github.com/fogleman/gg ## Hello, Circle! Look how easy! ```go package main import "github.com/fogleman/gg" func main() { dc := gg.NewContext(1000, 1000) dc.DrawCircle(500, 500, 400) dc.SetRGB(0, 0, 0) dc.Fill() dc.SavePNG("out.png") } ``` ## Examples There are [lots of examples](https://github.com/fogleman/gg/tree/master/examples) included. They're mostly for testing the code, but they're good for learning, too. ![Examples](http://i.imgur.com/tMFoyzu.png) ## Creating Contexts There are a few ways of creating a context. ```go NewContext(width, height int) *Context NewContextForImage(im image.Image) *Context NewContextForRGBA(im *image.RGBA) *Context ``` ## Drawing Functions Ever used a graphics library that didn't have functions for drawing rectangles or circles? What a pain! ```go DrawPoint(x, y, r float64) DrawLine(x1, y1, x2, y2 float64) DrawRectangle(x, y, w, h float64) DrawRoundedRectangle(x, y, w, h, r float64) DrawCircle(x, y, r float64) DrawArc(x, y, r, angle1, angle2 float64) DrawEllipse(x, y, rx, ry float64) DrawEllipticalArc(x, y, rx, ry, angle1, angle2 float64) DrawRegularPolygon(n int, x, y, r, rotation float64) DrawImage(im image.Image, x, y int) DrawImageAnchored(im image.Image, x, y int, ax, ay float64) SetPixel(x, y int) MoveTo(x, y float64) LineTo(x, y float64) QuadraticTo(x1, y1, x2, y2 float64) CubicTo(x1, y1, x2, y2, x3, y3 float64) ClosePath() ClearPath() NewSubPath() Clear() Stroke() Fill() StrokePreserve() FillPreserve() ``` It is often desired to center an image at a point. Use `DrawImageAnchored` with `ax` and `ay` set to 0.5 to do this. Use 0 to left or top align. Use 1 to right or bottom align. `DrawStringAnchored` does the same for text, so you don't need to call `MeasureString` yourself. ## Text Functions It will even do word wrap for you! ```go DrawString(s string, x, y float64) DrawStringAnchored(s string, x, y, ax, ay float64) DrawStringWrapped(s string, x, y, ax, ay, width, lineSpacing float64, align Align) MeasureString(s string) (w, h float64) MeasureMultilineString(s string, lineSpacing float64) (w, h float64) WordWrap(s string, w float64) []string SetFontFace(fontFace font.Face) LoadFontFace(path string, points float64) error ``` ## Color Functions Colors can be set in several different ways for your convenience. ```go SetRGB(r, g, b float64) SetRGBA(r, g, b, a float64) SetRGB255(r, g, b int) SetRGBA255(r, g, b, a int) SetColor(c color.Color) SetHexColor(x string) ``` ## Stroke & Fill Options ```go SetLineWidth(lineWidth float64) SetLineCap(lineCap LineCap) SetLineJoin(lineJoin LineJoin) SetDash(dashes ...float64) SetDashOffset(offset float64) SetFillRule(fillRule FillRule) ``` ## Gradients & Patterns `gg` supports linear and radial gradients and surface patterns. You can also implement your own patterns. ```go SetFillStyle(pattern Pattern) SetStrokeStyle(pattern Pattern) NewSolidPattern(color color.Color) NewLinearGradient(x0, y0, x1, y1 float64) NewRadialGradient(x0, y0, r0, x1, y1, r1 float64) NewSurfacePattern(im image.Image, op RepeatOp) ``` ## Transformation Functions ```go Identity() Translate(x, y float64) Scale(x, y float64) Rotate(angle float64) Shear(x, y float64) ScaleAbout(sx, sy, x, y float64) RotateAbout(angle, x, y float64) ShearAbout(sx, sy, x, y float64) TransformPoint(x, y float64) (tx, ty float64) InvertY() ``` It is often desired to rotate or scale about a point that is not the origin. The functions `RotateAbout`, `ScaleAbout`, `ShearAbout` are provided as a convenience. `InvertY` is provided in case Y should increase from bottom to top vs. the default top to bottom. ## Stack Functions Save and restore the state of the context. These can be nested. ```go Push() Pop() ``` ## Clipping Functions Use clipping regions to restrict drawing operations to an area that you defined using paths. ```go Clip() ClipPreserve() ResetClip() AsMask() *image.Alpha SetMask(mask *image.Alpha) InvertMask() ``` ## Helper Functions Sometimes you just don't want to write these yourself. ```go Radians(degrees float64) float64 Degrees(radians float64) float64 LoadImage(path string) (image.Image, error) LoadPNG(path string) (image.Image, error) SavePNG(path string, im image.Image) error ``` ![Separator](http://i.imgur.com/fsUvnPB.png) ## Another Example See the output of this example below. ```go package main import "github.com/fogleman/gg" func main() { const S = 1024 dc := gg.NewContext(S, S) dc.SetRGBA(0, 0, 0, 0.1) for i := 0; i < 360; i += 15 { dc.Push() dc.RotateAbout(gg.Radians(float64(i)), S/2, S/2) dc.DrawEllipse(S/2, S/2, S*7/16, S/8) dc.Fill() dc.Pop() } dc.SavePNG("out.png") } ``` ![Ellipses](http://i.imgur.com/J9CBZef.png) gg-1.3.0/bezier.go000066400000000000000000000022411343335034100137150ustar00rootroot00000000000000package gg import "math" func quadratic(x0, y0, x1, y1, x2, y2, t float64) (x, y float64) { u := 1 - t a := u * u b := 2 * u * t c := t * t x = a*x0 + b*x1 + c*x2 y = a*y0 + b*y1 + c*y2 return } func QuadraticBezier(x0, y0, x1, y1, x2, y2 float64) []Point { l := (math.Hypot(x1-x0, y1-y0) + math.Hypot(x2-x1, y2-y1)) n := int(l + 0.5) if n < 4 { n = 4 } d := float64(n) - 1 result := make([]Point, n) for i := 0; i < n; i++ { t := float64(i) / d x, y := quadratic(x0, y0, x1, y1, x2, y2, t) result[i] = Point{x, y} } return result } func cubic(x0, y0, x1, y1, x2, y2, x3, y3, t float64) (x, y float64) { u := 1 - t a := u * u * u b := 3 * u * u * t c := 3 * u * t * t d := t * t * t x = a*x0 + b*x1 + c*x2 + d*x3 y = a*y0 + b*y1 + c*y2 + d*y3 return } func CubicBezier(x0, y0, x1, y1, x2, y2, x3, y3 float64) []Point { l := (math.Hypot(x1-x0, y1-y0) + math.Hypot(x2-x1, y2-y1) + math.Hypot(x3-x2, y3-y2)) n := int(l + 0.5) if n < 4 { n = 4 } d := float64(n) - 1 result := make([]Point, n) for i := 0; i < n; i++ { t := float64(i) / d x, y := cubic(x0, y0, x1, y1, x2, y2, x3, y3, t) result[i] = Point{x, y} } return result } gg-1.3.0/context.go000066400000000000000000000576001343335034100141320ustar00rootroot00000000000000// Package gg provides a simple API for rendering 2D graphics in pure Go. package gg import ( "errors" "image" "image/color" "image/png" "io" "math" "strings" "github.com/golang/freetype/raster" "golang.org/x/image/draw" "golang.org/x/image/font" "golang.org/x/image/font/basicfont" "golang.org/x/image/math/f64" ) type LineCap int const ( LineCapRound LineCap = iota LineCapButt LineCapSquare ) type LineJoin int const ( LineJoinRound LineJoin = iota LineJoinBevel ) type FillRule int const ( FillRuleWinding FillRule = iota FillRuleEvenOdd ) type Align int const ( AlignLeft Align = iota AlignCenter AlignRight ) var ( defaultFillStyle = NewSolidPattern(color.White) defaultStrokeStyle = NewSolidPattern(color.Black) ) type Context struct { width int height int rasterizer *raster.Rasterizer im *image.RGBA mask *image.Alpha color color.Color fillPattern Pattern strokePattern Pattern strokePath raster.Path fillPath raster.Path start Point current Point hasCurrent bool dashes []float64 dashOffset float64 lineWidth float64 lineCap LineCap lineJoin LineJoin fillRule FillRule fontFace font.Face fontHeight float64 matrix Matrix stack []*Context } // NewContext creates a new image.RGBA with the specified width and height // and prepares a context for rendering onto that image. func NewContext(width, height int) *Context { return NewContextForRGBA(image.NewRGBA(image.Rect(0, 0, width, height))) } // NewContextForImage copies the specified image into a new image.RGBA // and prepares a context for rendering onto that image. func NewContextForImage(im image.Image) *Context { return NewContextForRGBA(imageToRGBA(im)) } // NewContextForRGBA prepares a context for rendering onto the specified image. // No copy is made. func NewContextForRGBA(im *image.RGBA) *Context { w := im.Bounds().Size().X h := im.Bounds().Size().Y return &Context{ width: w, height: h, rasterizer: raster.NewRasterizer(w, h), im: im, color: color.Transparent, fillPattern: defaultFillStyle, strokePattern: defaultStrokeStyle, lineWidth: 1, fillRule: FillRuleWinding, fontFace: basicfont.Face7x13, fontHeight: 13, matrix: Identity(), } } // GetCurrentPoint will return the current point and if there is a current point. // The point will have been transformed by the context's transformation matrix. func (dc *Context) GetCurrentPoint() (Point, bool) { if dc.hasCurrent { return dc.current, true } return Point{}, false } // Image returns the image that has been drawn by this context. func (dc *Context) Image() image.Image { return dc.im } // Width returns the width of the image in pixels. func (dc *Context) Width() int { return dc.width } // Height returns the height of the image in pixels. func (dc *Context) Height() int { return dc.height } // SavePNG encodes the image as a PNG and writes it to disk. func (dc *Context) SavePNG(path string) error { return SavePNG(path, dc.im) } // EncodePNG encodes the image as a PNG and writes it to the provided io.Writer. func (dc *Context) EncodePNG(w io.Writer) error { return png.Encode(w, dc.im) } // SetDash sets the current dash pattern to use. Call with zero arguments to // disable dashes. The values specify the lengths of each dash, with // alternating on and off lengths. func (dc *Context) SetDash(dashes ...float64) { dc.dashes = dashes } // SetDashOffset sets the initial offset into the dash pattern to use when // stroking dashed paths. func (dc *Context) SetDashOffset(offset float64) { dc.dashOffset = offset } func (dc *Context) SetLineWidth(lineWidth float64) { dc.lineWidth = lineWidth } func (dc *Context) SetLineCap(lineCap LineCap) { dc.lineCap = lineCap } func (dc *Context) SetLineCapRound() { dc.lineCap = LineCapRound } func (dc *Context) SetLineCapButt() { dc.lineCap = LineCapButt } func (dc *Context) SetLineCapSquare() { dc.lineCap = LineCapSquare } func (dc *Context) SetLineJoin(lineJoin LineJoin) { dc.lineJoin = lineJoin } func (dc *Context) SetLineJoinRound() { dc.lineJoin = LineJoinRound } func (dc *Context) SetLineJoinBevel() { dc.lineJoin = LineJoinBevel } func (dc *Context) SetFillRule(fillRule FillRule) { dc.fillRule = fillRule } func (dc *Context) SetFillRuleWinding() { dc.fillRule = FillRuleWinding } func (dc *Context) SetFillRuleEvenOdd() { dc.fillRule = FillRuleEvenOdd } // Color Setters func (dc *Context) setFillAndStrokeColor(c color.Color) { dc.color = c dc.fillPattern = NewSolidPattern(c) dc.strokePattern = NewSolidPattern(c) } // SetFillStyle sets current fill style func (dc *Context) SetFillStyle(pattern Pattern) { // if pattern is SolidPattern, also change dc.color(for dc.Clear, dc.drawString) if fillStyle, ok := pattern.(*solidPattern); ok { dc.color = fillStyle.color } dc.fillPattern = pattern } // SetStrokeStyle sets current stroke style func (dc *Context) SetStrokeStyle(pattern Pattern) { dc.strokePattern = pattern } // SetColor sets the current color(for both fill and stroke). func (dc *Context) SetColor(c color.Color) { dc.setFillAndStrokeColor(c) } // SetHexColor sets the current color using a hex string. The leading pound // sign (#) is optional. Both 3- and 6-digit variations are supported. 8 digits // may be provided to set the alpha value as well. func (dc *Context) SetHexColor(x string) { r, g, b, a := parseHexColor(x) dc.SetRGBA255(r, g, b, a) } // SetRGBA255 sets the current color. r, g, b, a values should be between 0 and // 255, inclusive. func (dc *Context) SetRGBA255(r, g, b, a int) { dc.color = color.NRGBA{uint8(r), uint8(g), uint8(b), uint8(a)} dc.setFillAndStrokeColor(dc.color) } // SetRGB255 sets the current color. r, g, b values should be between 0 and 255, // inclusive. Alpha will be set to 255 (fully opaque). func (dc *Context) SetRGB255(r, g, b int) { dc.SetRGBA255(r, g, b, 255) } // SetRGBA sets the current color. r, g, b, a values should be between 0 and 1, // inclusive. func (dc *Context) SetRGBA(r, g, b, a float64) { dc.color = color.NRGBA{ uint8(r * 255), uint8(g * 255), uint8(b * 255), uint8(a * 255), } dc.setFillAndStrokeColor(dc.color) } // SetRGB sets the current color. r, g, b values should be between 0 and 1, // inclusive. Alpha will be set to 1 (fully opaque). func (dc *Context) SetRGB(r, g, b float64) { dc.SetRGBA(r, g, b, 1) } // Path Manipulation // MoveTo starts a new subpath within the current path starting at the // specified point. func (dc *Context) MoveTo(x, y float64) { if dc.hasCurrent { dc.fillPath.Add1(dc.start.Fixed()) } x, y = dc.TransformPoint(x, y) p := Point{x, y} dc.strokePath.Start(p.Fixed()) dc.fillPath.Start(p.Fixed()) dc.start = p dc.current = p dc.hasCurrent = true } // LineTo adds a line segment to the current path starting at the current // point. If there is no current point, it is equivalent to MoveTo(x, y) func (dc *Context) LineTo(x, y float64) { if !dc.hasCurrent { dc.MoveTo(x, y) } else { x, y = dc.TransformPoint(x, y) p := Point{x, y} dc.strokePath.Add1(p.Fixed()) dc.fillPath.Add1(p.Fixed()) dc.current = p } } // QuadraticTo adds a quadratic bezier curve to the current path starting at // the current point. If there is no current point, it first performs // MoveTo(x1, y1) func (dc *Context) QuadraticTo(x1, y1, x2, y2 float64) { if !dc.hasCurrent { dc.MoveTo(x1, y1) } x1, y1 = dc.TransformPoint(x1, y1) x2, y2 = dc.TransformPoint(x2, y2) p1 := Point{x1, y1} p2 := Point{x2, y2} dc.strokePath.Add2(p1.Fixed(), p2.Fixed()) dc.fillPath.Add2(p1.Fixed(), p2.Fixed()) dc.current = p2 } // CubicTo adds a cubic bezier curve to the current path starting at the // current point. If there is no current point, it first performs // MoveTo(x1, y1). Because freetype/raster does not support cubic beziers, // this is emulated with many small line segments. func (dc *Context) CubicTo(x1, y1, x2, y2, x3, y3 float64) { if !dc.hasCurrent { dc.MoveTo(x1, y1) } x0, y0 := dc.current.X, dc.current.Y x1, y1 = dc.TransformPoint(x1, y1) x2, y2 = dc.TransformPoint(x2, y2) x3, y3 = dc.TransformPoint(x3, y3) points := CubicBezier(x0, y0, x1, y1, x2, y2, x3, y3) previous := dc.current.Fixed() for _, p := range points[1:] { f := p.Fixed() if f == previous { // TODO: this fixes some rendering issues but not all continue } previous = f dc.strokePath.Add1(f) dc.fillPath.Add1(f) dc.current = p } } // ClosePath adds a line segment from the current point to the beginning // of the current subpath. If there is no current point, this is a no-op. func (dc *Context) ClosePath() { if dc.hasCurrent { dc.strokePath.Add1(dc.start.Fixed()) dc.fillPath.Add1(dc.start.Fixed()) dc.current = dc.start } } // ClearPath clears the current path. There is no current point after this // operation. func (dc *Context) ClearPath() { dc.strokePath.Clear() dc.fillPath.Clear() dc.hasCurrent = false } // NewSubPath starts a new subpath within the current path. There is no current // point after this operation. func (dc *Context) NewSubPath() { if dc.hasCurrent { dc.fillPath.Add1(dc.start.Fixed()) } dc.hasCurrent = false } // Path Drawing func (dc *Context) capper() raster.Capper { switch dc.lineCap { case LineCapButt: return raster.ButtCapper case LineCapRound: return raster.RoundCapper case LineCapSquare: return raster.SquareCapper } return nil } func (dc *Context) joiner() raster.Joiner { switch dc.lineJoin { case LineJoinBevel: return raster.BevelJoiner case LineJoinRound: return raster.RoundJoiner } return nil } func (dc *Context) stroke(painter raster.Painter) { path := dc.strokePath if len(dc.dashes) > 0 { path = dashed(path, dc.dashes, dc.dashOffset) } else { // TODO: this is a temporary workaround to remove tiny segments // that result in rendering issues path = rasterPath(flattenPath(path)) } r := dc.rasterizer r.UseNonZeroWinding = true r.Clear() r.AddStroke(path, fix(dc.lineWidth), dc.capper(), dc.joiner()) r.Rasterize(painter) } func (dc *Context) fill(painter raster.Painter) { path := dc.fillPath if dc.hasCurrent { path = make(raster.Path, len(dc.fillPath)) copy(path, dc.fillPath) path.Add1(dc.start.Fixed()) } r := dc.rasterizer r.UseNonZeroWinding = dc.fillRule == FillRuleWinding r.Clear() r.AddPath(path) r.Rasterize(painter) } // StrokePreserve strokes the current path with the current color, line width, // line cap, line join and dash settings. The path is preserved after this // operation. func (dc *Context) StrokePreserve() { var painter raster.Painter if dc.mask == nil { if pattern, ok := dc.strokePattern.(*solidPattern); ok { // with a nil mask and a solid color pattern, we can be more efficient // TODO: refactor so we don't have to do this type assertion stuff? p := raster.NewRGBAPainter(dc.im) p.SetColor(pattern.color) painter = p } } if painter == nil { painter = newPatternPainter(dc.im, dc.mask, dc.strokePattern) } dc.stroke(painter) } // Stroke strokes the current path with the current color, line width, // line cap, line join and dash settings. The path is cleared after this // operation. func (dc *Context) Stroke() { dc.StrokePreserve() dc.ClearPath() } // FillPreserve fills the current path with the current color. Open subpaths // are implicity closed. The path is preserved after this operation. func (dc *Context) FillPreserve() { var painter raster.Painter if dc.mask == nil { if pattern, ok := dc.fillPattern.(*solidPattern); ok { // with a nil mask and a solid color pattern, we can be more efficient // TODO: refactor so we don't have to do this type assertion stuff? p := raster.NewRGBAPainter(dc.im) p.SetColor(pattern.color) painter = p } } if painter == nil { painter = newPatternPainter(dc.im, dc.mask, dc.fillPattern) } dc.fill(painter) } // Fill fills the current path with the current color. Open subpaths // are implicity closed. The path is cleared after this operation. func (dc *Context) Fill() { dc.FillPreserve() dc.ClearPath() } // ClipPreserve updates the clipping region by intersecting the current // clipping region with the current path as it would be filled by dc.Fill(). // The path is preserved after this operation. func (dc *Context) ClipPreserve() { clip := image.NewAlpha(image.Rect(0, 0, dc.width, dc.height)) painter := raster.NewAlphaOverPainter(clip) dc.fill(painter) if dc.mask == nil { dc.mask = clip } else { mask := image.NewAlpha(image.Rect(0, 0, dc.width, dc.height)) draw.DrawMask(mask, mask.Bounds(), clip, image.ZP, dc.mask, image.ZP, draw.Over) dc.mask = mask } } // SetMask allows you to directly set the *image.Alpha to be used as a clipping // mask. It must be the same size as the context, else an error is returned // and the mask is unchanged. func (dc *Context) SetMask(mask *image.Alpha) error { if mask.Bounds().Size() != dc.im.Bounds().Size() { return errors.New("mask size must match context size") } dc.mask = mask return nil } // AsMask returns an *image.Alpha representing the alpha channel of this // context. This can be useful for advanced clipping operations where you first // render the mask geometry and then use it as a mask. func (dc *Context) AsMask() *image.Alpha { mask := image.NewAlpha(dc.im.Bounds()) draw.Draw(mask, dc.im.Bounds(), dc.im, image.ZP, draw.Src) return mask } // InvertMask inverts the alpha values in the current clipping mask such that // a fully transparent region becomes fully opaque and vice versa. func (dc *Context) InvertMask() { if dc.mask == nil { dc.mask = image.NewAlpha(dc.im.Bounds()) } else { for i, a := range dc.mask.Pix { dc.mask.Pix[i] = 255 - a } } } // Clip updates the clipping region by intersecting the current // clipping region with the current path as it would be filled by dc.Fill(). // The path is cleared after this operation. func (dc *Context) Clip() { dc.ClipPreserve() dc.ClearPath() } // ResetClip clears the clipping region. func (dc *Context) ResetClip() { dc.mask = nil } // Convenient Drawing Functions // Clear fills the entire image with the current color. func (dc *Context) Clear() { src := image.NewUniform(dc.color) draw.Draw(dc.im, dc.im.Bounds(), src, image.ZP, draw.Src) } // SetPixel sets the color of the specified pixel using the current color. func (dc *Context) SetPixel(x, y int) { dc.im.Set(x, y, dc.color) } // DrawPoint is like DrawCircle but ensures that a circle of the specified // size is drawn regardless of the current transformation matrix. The position // is still transformed, but not the shape of the point. func (dc *Context) DrawPoint(x, y, r float64) { dc.Push() tx, ty := dc.TransformPoint(x, y) dc.Identity() dc.DrawCircle(tx, ty, r) dc.Pop() } func (dc *Context) DrawLine(x1, y1, x2, y2 float64) { dc.MoveTo(x1, y1) dc.LineTo(x2, y2) } func (dc *Context) DrawRectangle(x, y, w, h float64) { dc.NewSubPath() dc.MoveTo(x, y) dc.LineTo(x+w, y) dc.LineTo(x+w, y+h) dc.LineTo(x, y+h) dc.ClosePath() } func (dc *Context) DrawRoundedRectangle(x, y, w, h, r float64) { x0, x1, x2, x3 := x, x+r, x+w-r, x+w y0, y1, y2, y3 := y, y+r, y+h-r, y+h dc.NewSubPath() dc.MoveTo(x1, y0) dc.LineTo(x2, y0) dc.DrawArc(x2, y1, r, Radians(270), Radians(360)) dc.LineTo(x3, y2) dc.DrawArc(x2, y2, r, Radians(0), Radians(90)) dc.LineTo(x1, y3) dc.DrawArc(x1, y2, r, Radians(90), Radians(180)) dc.LineTo(x0, y1) dc.DrawArc(x1, y1, r, Radians(180), Radians(270)) dc.ClosePath() } func (dc *Context) DrawEllipticalArc(x, y, rx, ry, angle1, angle2 float64) { const n = 16 for i := 0; i < n; i++ { p1 := float64(i+0) / n p2 := float64(i+1) / n a1 := angle1 + (angle2-angle1)*p1 a2 := angle1 + (angle2-angle1)*p2 x0 := x + rx*math.Cos(a1) y0 := y + ry*math.Sin(a1) x1 := x + rx*math.Cos((a1+a2)/2) y1 := y + ry*math.Sin((a1+a2)/2) x2 := x + rx*math.Cos(a2) y2 := y + ry*math.Sin(a2) cx := 2*x1 - x0/2 - x2/2 cy := 2*y1 - y0/2 - y2/2 if i == 0 { if dc.hasCurrent { dc.LineTo(x0, y0) } else { dc.MoveTo(x0, y0) } } dc.QuadraticTo(cx, cy, x2, y2) } } func (dc *Context) DrawEllipse(x, y, rx, ry float64) { dc.NewSubPath() dc.DrawEllipticalArc(x, y, rx, ry, 0, 2*math.Pi) dc.ClosePath() } func (dc *Context) DrawArc(x, y, r, angle1, angle2 float64) { dc.DrawEllipticalArc(x, y, r, r, angle1, angle2) } func (dc *Context) DrawCircle(x, y, r float64) { dc.NewSubPath() dc.DrawEllipticalArc(x, y, r, r, 0, 2*math.Pi) dc.ClosePath() } func (dc *Context) DrawRegularPolygon(n int, x, y, r, rotation float64) { angle := 2 * math.Pi / float64(n) rotation -= math.Pi / 2 if n%2 == 0 { rotation += angle / 2 } dc.NewSubPath() for i := 0; i < n; i++ { a := rotation + angle*float64(i) dc.LineTo(x+r*math.Cos(a), y+r*math.Sin(a)) } dc.ClosePath() } // DrawImage draws the specified image at the specified point. func (dc *Context) DrawImage(im image.Image, x, y int) { dc.DrawImageAnchored(im, x, y, 0, 0) } // DrawImageAnchored draws the specified image at the specified anchor point. // The anchor point is x - w * ax, y - h * ay, where w, h is the size of the // image. Use ax=0.5, ay=0.5 to center the image at the specified point. func (dc *Context) DrawImageAnchored(im image.Image, x, y int, ax, ay float64) { s := im.Bounds().Size() x -= int(ax * float64(s.X)) y -= int(ay * float64(s.Y)) transformer := draw.BiLinear fx, fy := float64(x), float64(y) m := dc.matrix.Translate(fx, fy) s2d := f64.Aff3{m.XX, m.XY, m.X0, m.YX, m.YY, m.Y0} if dc.mask == nil { transformer.Transform(dc.im, s2d, im, im.Bounds(), draw.Over, nil) } else { transformer.Transform(dc.im, s2d, im, im.Bounds(), draw.Over, &draw.Options{ DstMask: dc.mask, DstMaskP: image.ZP, }) } } // Text Functions func (dc *Context) SetFontFace(fontFace font.Face) { dc.fontFace = fontFace dc.fontHeight = float64(fontFace.Metrics().Height) / 64 } func (dc *Context) LoadFontFace(path string, points float64) error { face, err := LoadFontFace(path, points) if err == nil { dc.fontFace = face dc.fontHeight = points * 72 / 96 } return err } func (dc *Context) FontHeight() float64 { return dc.fontHeight } func (dc *Context) drawString(im *image.RGBA, s string, x, y float64) { d := &font.Drawer{ Dst: im, Src: image.NewUniform(dc.color), Face: dc.fontFace, Dot: fixp(x, y), } // based on Drawer.DrawString() in golang.org/x/image/font/font.go prevC := rune(-1) for _, c := range s { if prevC >= 0 { d.Dot.X += d.Face.Kern(prevC, c) } dr, mask, maskp, advance, ok := d.Face.Glyph(d.Dot, c) if !ok { // TODO: is falling back on the U+FFFD glyph the responsibility of // the Drawer or the Face? // TODO: set prevC = '\ufffd'? continue } sr := dr.Sub(dr.Min) transformer := draw.BiLinear fx, fy := float64(dr.Min.X), float64(dr.Min.Y) m := dc.matrix.Translate(fx, fy) s2d := f64.Aff3{m.XX, m.XY, m.X0, m.YX, m.YY, m.Y0} transformer.Transform(d.Dst, s2d, d.Src, sr, draw.Over, &draw.Options{ SrcMask: mask, SrcMaskP: maskp, }) d.Dot.X += advance prevC = c } } // DrawString draws the specified text at the specified point. func (dc *Context) DrawString(s string, x, y float64) { dc.DrawStringAnchored(s, x, y, 0, 0) } // DrawStringAnchored draws the specified text at the specified anchor point. // The anchor point is x - w * ax, y - h * ay, where w, h is the size of the // text. Use ax=0.5, ay=0.5 to center the text at the specified point. func (dc *Context) DrawStringAnchored(s string, x, y, ax, ay float64) { w, h := dc.MeasureString(s) x -= ax * w y += ay * h if dc.mask == nil { dc.drawString(dc.im, s, x, y) } else { im := image.NewRGBA(image.Rect(0, 0, dc.width, dc.height)) dc.drawString(im, s, x, y) draw.DrawMask(dc.im, dc.im.Bounds(), im, image.ZP, dc.mask, image.ZP, draw.Over) } } // DrawStringWrapped word-wraps the specified string to the given max width // and then draws it at the specified anchor point using the given line // spacing and text alignment. func (dc *Context) DrawStringWrapped(s string, x, y, ax, ay, width, lineSpacing float64, align Align) { lines := dc.WordWrap(s, width) // sync h formula with MeasureMultilineString h := float64(len(lines)) * dc.fontHeight * lineSpacing h -= (lineSpacing - 1) * dc.fontHeight x -= ax * width y -= ay * h switch align { case AlignLeft: ax = 0 case AlignCenter: ax = 0.5 x += width / 2 case AlignRight: ax = 1 x += width } ay = 1 for _, line := range lines { dc.DrawStringAnchored(line, x, y, ax, ay) y += dc.fontHeight * lineSpacing } } func (dc *Context) MeasureMultilineString(s string, lineSpacing float64) (width, height float64) { lines := strings.Split(s, "\n") // sync h formula with DrawStringWrapped height = float64(len(lines)) * dc.fontHeight * lineSpacing height -= (lineSpacing - 1) * dc.fontHeight d := &font.Drawer{ Face: dc.fontFace, } // max width from lines for _, line := range lines { adv := d.MeasureString(line) currentWidth := float64(adv >> 6) // from gg.Context.MeasureString if currentWidth > width { width = currentWidth } } return width, height } // MeasureString returns the rendered width and height of the specified text // given the current font face. func (dc *Context) MeasureString(s string) (w, h float64) { d := &font.Drawer{ Face: dc.fontFace, } a := d.MeasureString(s) return float64(a >> 6), dc.fontHeight } // WordWrap wraps the specified string to the given max width and current // font face. func (dc *Context) WordWrap(s string, w float64) []string { return wordWrap(dc, s, w) } // Transformation Matrix Operations // Identity resets the current transformation matrix to the identity matrix. // This results in no translating, scaling, rotating, or shearing. func (dc *Context) Identity() { dc.matrix = Identity() } // Translate updates the current matrix with a translation. func (dc *Context) Translate(x, y float64) { dc.matrix = dc.matrix.Translate(x, y) } // Scale updates the current matrix with a scaling factor. // Scaling occurs about the origin. func (dc *Context) Scale(x, y float64) { dc.matrix = dc.matrix.Scale(x, y) } // ScaleAbout updates the current matrix with a scaling factor. // Scaling occurs about the specified point. func (dc *Context) ScaleAbout(sx, sy, x, y float64) { dc.Translate(x, y) dc.Scale(sx, sy) dc.Translate(-x, -y) } // Rotate updates the current matrix with a clockwise rotation. // Rotation occurs about the origin. Angle is specified in radians. func (dc *Context) Rotate(angle float64) { dc.matrix = dc.matrix.Rotate(angle) } // RotateAbout updates the current matrix with a clockwise rotation. // Rotation occurs about the specified point. Angle is specified in radians. func (dc *Context) RotateAbout(angle, x, y float64) { dc.Translate(x, y) dc.Rotate(angle) dc.Translate(-x, -y) } // Shear updates the current matrix with a shearing angle. // Shearing occurs about the origin. func (dc *Context) Shear(x, y float64) { dc.matrix = dc.matrix.Shear(x, y) } // ShearAbout updates the current matrix with a shearing angle. // Shearing occurs about the specified point. func (dc *Context) ShearAbout(sx, sy, x, y float64) { dc.Translate(x, y) dc.Shear(sx, sy) dc.Translate(-x, -y) } // TransformPoint multiplies the specified point by the current matrix, // returning a transformed position. func (dc *Context) TransformPoint(x, y float64) (tx, ty float64) { return dc.matrix.TransformPoint(x, y) } // InvertY flips the Y axis so that Y grows from bottom to top and Y=0 is at // the bottom of the image. func (dc *Context) InvertY() { dc.Translate(0, float64(dc.height)) dc.Scale(1, -1) } // Stack // Push saves the current state of the context for later retrieval. These // can be nested. func (dc *Context) Push() { x := *dc dc.stack = append(dc.stack, &x) } // Pop restores the last saved context state from the stack. func (dc *Context) Pop() { before := *dc s := dc.stack x, s := s[len(s)-1], s[:len(s)-1] *dc = *x dc.mask = before.mask dc.strokePath = before.strokePath dc.fillPath = before.fillPath dc.start = before.start dc.current = before.current dc.hasCurrent = before.hasCurrent } gg-1.3.0/context_test.go000066400000000000000000000171011343335034100151610ustar00rootroot00000000000000package gg import ( "crypto/md5" "flag" "fmt" "image/color" "math/rand" "testing" ) var save bool func init() { flag.BoolVar(&save, "save", false, "save PNG output for each test case") flag.Parse() } func hash(dc *Context) string { return fmt.Sprintf("%x", md5.Sum(dc.im.Pix)) } func checkHash(t *testing.T, dc *Context, expected string) { actual := hash(dc) if actual != expected { t.Fatalf("expected hash: %s != actual hash: %s", expected, actual) } } func saveImage(dc *Context, name string) error { if save { return SavePNG(name+".png", dc.Image()) } return nil } func TestBlank(t *testing.T) { dc := NewContext(100, 100) saveImage(dc, "TestBlank") checkHash(t, dc, "4e0a293a5b638f0aba2c4fe2c3418d0e") } func TestGrid(t *testing.T) { dc := NewContext(100, 100) dc.SetRGB(1, 1, 1) dc.Clear() for i := 10; i < 100; i += 10 { x := float64(i) + 0.5 dc.DrawLine(x, 0, x, 100) dc.DrawLine(0, x, 100, x) } dc.SetRGB(0, 0, 0) dc.Stroke() saveImage(dc, "TestGrid") checkHash(t, dc, "78606adda71d8abfbd8bb271087e4d69") } func TestLines(t *testing.T) { dc := NewContext(100, 100) dc.SetRGB(0.5, 0.5, 0.5) dc.Clear() rnd := rand.New(rand.NewSource(99)) for i := 0; i < 100; i++ { x1 := rnd.Float64() * 100 y1 := rnd.Float64() * 100 x2 := rnd.Float64() * 100 y2 := rnd.Float64() * 100 dc.DrawLine(x1, y1, x2, y2) dc.SetLineWidth(rnd.Float64() * 3) dc.SetRGB(rnd.Float64(), rnd.Float64(), rnd.Float64()) dc.Stroke() } saveImage(dc, "TestLines") checkHash(t, dc, "036bd220e2529955cc48425dd72bb686") } func TestCircles(t *testing.T) { dc := NewContext(100, 100) dc.SetRGB(1, 1, 1) dc.Clear() rnd := rand.New(rand.NewSource(99)) for i := 0; i < 10; i++ { x := rnd.Float64() * 100 y := rnd.Float64() * 100 r := rnd.Float64()*10 + 5 dc.DrawCircle(x, y, r) dc.SetRGB(rnd.Float64(), rnd.Float64(), rnd.Float64()) dc.FillPreserve() dc.SetRGB(rnd.Float64(), rnd.Float64(), rnd.Float64()) dc.SetLineWidth(rnd.Float64() * 3) dc.Stroke() } saveImage(dc, "TestCircles") checkHash(t, dc, "c52698000df96fabafe7863701afe922") } func TestQuadratic(t *testing.T) { dc := NewContext(100, 100) dc.SetRGB(0.25, 0.25, 0.25) dc.Clear() rnd := rand.New(rand.NewSource(99)) for i := 0; i < 100; i++ { x1 := rnd.Float64() * 100 y1 := rnd.Float64() * 100 x2 := rnd.Float64() * 100 y2 := rnd.Float64() * 100 x3 := rnd.Float64() * 100 y3 := rnd.Float64() * 100 dc.MoveTo(x1, y1) dc.QuadraticTo(x2, y2, x3, y3) dc.SetLineWidth(rnd.Float64() * 3) dc.SetRGB(rnd.Float64(), rnd.Float64(), rnd.Float64()) dc.Stroke() } saveImage(dc, "TestQuadratic") checkHash(t, dc, "56b842d814aee94b52495addae764a77") } func TestCubic(t *testing.T) { dc := NewContext(100, 100) dc.SetRGB(0.75, 0.75, 0.75) dc.Clear() rnd := rand.New(rand.NewSource(99)) for i := 0; i < 100; i++ { x1 := rnd.Float64() * 100 y1 := rnd.Float64() * 100 x2 := rnd.Float64() * 100 y2 := rnd.Float64() * 100 x3 := rnd.Float64() * 100 y3 := rnd.Float64() * 100 x4 := rnd.Float64() * 100 y4 := rnd.Float64() * 100 dc.MoveTo(x1, y1) dc.CubicTo(x2, y2, x3, y3, x4, y4) dc.SetLineWidth(rnd.Float64() * 3) dc.SetRGB(rnd.Float64(), rnd.Float64(), rnd.Float64()) dc.Stroke() } saveImage(dc, "TestCubic") checkHash(t, dc, "4a7960fc4eaaa33ce74131c5ce0afca8") } func TestFill(t *testing.T) { dc := NewContext(100, 100) dc.SetRGB(1, 1, 1) dc.Clear() rnd := rand.New(rand.NewSource(99)) for i := 0; i < 10; i++ { dc.NewSubPath() for j := 0; j < 10; j++ { x := rnd.Float64() * 100 y := rnd.Float64() * 100 dc.LineTo(x, y) } dc.ClosePath() dc.SetRGBA(rnd.Float64(), rnd.Float64(), rnd.Float64(), rnd.Float64()) dc.Fill() } saveImage(dc, "TestFill") checkHash(t, dc, "7ccb3a2443906a825e57ab94db785467") } func TestClip(t *testing.T) { dc := NewContext(100, 100) dc.SetRGB(1, 1, 1) dc.Clear() dc.DrawCircle(50, 50, 40) dc.Clip() rnd := rand.New(rand.NewSource(99)) for i := 0; i < 1000; i++ { x := rnd.Float64() * 100 y := rnd.Float64() * 100 r := rnd.Float64()*10 + 5 dc.DrawCircle(x, y, r) dc.SetRGBA(rnd.Float64(), rnd.Float64(), rnd.Float64(), rnd.Float64()) dc.Fill() } saveImage(dc, "TestClip") checkHash(t, dc, "762c32374d529fd45ffa038b05be7865") } func TestPushPop(t *testing.T) { const S = 100 dc := NewContext(S, S) dc.SetRGBA(0, 0, 0, 0.1) for i := 0; i < 360; i += 15 { dc.Push() dc.RotateAbout(Radians(float64(i)), S/2, S/2) dc.DrawEllipse(S/2, S/2, S*7/16, S/8) dc.Fill() dc.Pop() } saveImage(dc, "TestPushPop") checkHash(t, dc, "e0d6724eb72033577811a55f7a642f6a") } func TestDrawStringWrapped(t *testing.T) { dc := NewContext(100, 100) dc.SetRGB(1, 1, 1) dc.Clear() dc.SetRGB(0, 0, 0) dc.DrawStringWrapped("Hello, world! How are you?", 50, 50, 0.5, 0.5, 90, 1.5, AlignCenter) saveImage(dc, "TestDrawStringWrapped") checkHash(t, dc, "8d92f6aae9e8b38563f171abd00893f8") } func TestDrawImage(t *testing.T) { src := NewContext(100, 100) src.SetRGB(1, 1, 1) src.Clear() for i := 10; i < 100; i += 10 { x := float64(i) + 0.5 src.DrawLine(x, 0, x, 100) src.DrawLine(0, x, 100, x) } src.SetRGB(0, 0, 0) src.Stroke() dc := NewContext(200, 200) dc.SetRGB(0, 0, 0) dc.Clear() dc.DrawImage(src.Image(), 50, 50) saveImage(dc, "TestDrawImage") checkHash(t, dc, "282afbc134676722960b6bec21305b15") } func TestSetPixel(t *testing.T) { dc := NewContext(100, 100) dc.SetRGB(0, 0, 0) dc.Clear() dc.SetRGB(0, 1, 0) i := 0 for y := 0; y < 100; y++ { for x := 0; x < 100; x++ { if i%31 == 0 { dc.SetPixel(x, y) } i++ } } saveImage(dc, "TestSetPixel") checkHash(t, dc, "27dda6b4b1d94f061018825b11982793") } func TestDrawPoint(t *testing.T) { dc := NewContext(100, 100) dc.SetRGB(0, 0, 0) dc.Clear() dc.SetRGB(0, 1, 0) dc.Scale(10, 10) for y := 0; y <= 10; y++ { for x := 0; x <= 10; x++ { dc.DrawPoint(float64(x), float64(y), 3) dc.Fill() } } saveImage(dc, "TestDrawPoint") checkHash(t, dc, "55af8874531947ea6eeb62222fb33e0e") } func TestLinearGradient(t *testing.T) { dc := NewContext(100, 100) g := NewLinearGradient(0, 0, 100, 100) g.AddColorStop(0, color.RGBA{0, 255, 0, 255}) g.AddColorStop(1, color.RGBA{0, 0, 255, 255}) g.AddColorStop(0.5, color.RGBA{255, 0, 0, 255}) dc.SetFillStyle(g) dc.DrawRectangle(0, 0, 100, 100) dc.Fill() saveImage(dc, "TestLinearGradient") checkHash(t, dc, "75eb9385c1219b1d5bb6f4c961802c7a") } func TestRadialGradient(t *testing.T) { dc := NewContext(100, 100) g := NewRadialGradient(30, 50, 0, 70, 50, 50) g.AddColorStop(0, color.RGBA{0, 255, 0, 255}) g.AddColorStop(1, color.RGBA{0, 0, 255, 255}) g.AddColorStop(0.5, color.RGBA{255, 0, 0, 255}) dc.SetFillStyle(g) dc.DrawRectangle(0, 0, 100, 100) dc.Fill() saveImage(dc, "TestRadialGradient") checkHash(t, dc, "f170f39c3f35c29de11e00428532489d") } func TestDashes(t *testing.T) { dc := NewContext(100, 100) dc.SetRGB(1, 1, 1) dc.Clear() rnd := rand.New(rand.NewSource(99)) for i := 0; i < 100; i++ { x1 := rnd.Float64() * 100 y1 := rnd.Float64() * 100 x2 := rnd.Float64() * 100 y2 := rnd.Float64() * 100 dc.SetDash(rnd.Float64()*3+1, rnd.Float64()*3+3) dc.DrawLine(x1, y1, x2, y2) dc.SetLineWidth(rnd.Float64() * 3) dc.SetRGB(rnd.Float64(), rnd.Float64(), rnd.Float64()) dc.Stroke() } saveImage(dc, "TestDashes") checkHash(t, dc, "d188069c69dcc3970edfac80f552b53c") } func BenchmarkCircles(b *testing.B) { dc := NewContext(1000, 1000) dc.SetRGB(1, 1, 1) dc.Clear() rnd := rand.New(rand.NewSource(99)) for i := 0; i < b.N; i++ { x := rnd.Float64() * 1000 y := rnd.Float64() * 1000 dc.DrawCircle(x, y, 10) if i%2 == 0 { dc.SetRGB(0, 0, 0) } else { dc.SetRGB(1, 1, 1) } dc.Fill() } } gg-1.3.0/examples/000077500000000000000000000000001343335034100137255ustar00rootroot00000000000000gg-1.3.0/examples/baboon.png000066400000000000000000023344101343335034100157020ustar00rootroot00000000000000PNG  IHDR{CtIME $ݲ pHYs/ IDATxW+D:$:7m}ڑC3Ύ*H $&bf9~ila])QO -L\MƗ#|.'i9{fe1 q;+ ɋ=zEРA$y֕ Ȥ'314M\/XvW^ul}G^o[sg+j߿-Ѯ㎥Py&<A.thnp9'^{>A-y =?;G_5}~=](^txonnX՗"%Lo؟z=^; gwgݣeGI7SsPԔ,c6/<.wdc#x喎sNz6 SYK;C3A)Vl;w/~O6nGrG$73o5A}mtvK9%c69=? t_aK6yPkDU3G{Rhu{/Ɨ12]ج86οq0Qq4g#ЙO+qWV~z@UwJ~YVM 5p.mܩqLl"yPo^7Dj)ԠV-vK+^:$a;r&j+nD c\ݗ=~v jϥ*`d.>=1gq˫Lwm/ѥ{Ґo׫)X1)eŽ Vߺ#+4 gLmHo/  4-1L%ybڍöM6Vy [1]AAס[w!I6:GXf~Lh1@(ɩsubē-'hVE4͟&^rbpTiI^*+$ 38J/RтDEv: TUΫ4.|r8r{IzVň2ݴ8h;z]-g_C qMˊ2@kTO~S+E>Y ޯwc3ؓKp7]|Q7n Wq G{[1Jͽ<[U!NRj] Ǖ>PY840wt.39A\"7-򘕒4YP{W ed\ 7wlT?>tKCFy4"FCw@fJs!^0둖az4/H1qn*J=aڏ''/x~xw+u@V€BS(% HgQ/ fmx@hExuZ}N65i7a\)<FK?ʶǭ,̶ <}0NR=JLJk=ԕ6McH,v,zz3 jG'3rYNu=Jm&}g)ʝUfz<Ӫ&"ieNӅV>Uo>d:G:zuXڭJ1:rR;2eNcd/kЯ~e$ξ[ ;ËϤUn#Rw&v?9P""St DY%dM/~ *K.-t&˨?6ܤtSz\2c*'bܝEVX& >es|}yr@ɀÕ8ңaK/ݘRG<ʣL_DZTlωYjbV֐sl<]!*cNMTSHzf/9̃ip6z^+@r Шn_70jY]3e7aQ˕L:s]3ZxHQ.-v1V\X`:*_J\:NHhHib_8ˍ4XJp.{>OQ55-s[i["7[%ZF=y̎0t+;=n{'^_x #J=4db4~`vp5\ 9{QlRv)MMb7Q\>0rY*v rO_:qA@%bV^baHӫrҒeE߼oJʷӣs9IGbf;6Tt1&+9_kXIfoWGr=@D%s}zn5;F+RwoA6_E7y@wIM_@KAʀyvY9;Or JHns&+{l10Ĥ3: NJ= pf|MoP}{hf0k UoY]x>2*!MwxJM'&OK7Z=<|{o0{T!؂ޞto:x.=c)[$m5ÄI8fc.[;.nuuh65 ևW/w`ŦA5]ʖ9ll;nPXư%bG&,Vq-jnjS)p=FKHJ_ƬpccM>&W"Gm~2\ Ό-Nh$M`:0C|<[,8ޙRZ!.e}\9-;|W0jف@vַ?Ym iP~z (wpX/5[yfAFCr)Ov擝͂aO6US^Ze*Jx\‘IƬB/=j`~Vpa0'k;5yPؒKV -&oK\`(SxvW-5YOHԒ;4Vb$]Y+6 ñ pi-JHr`^3ȱ^'z[Ur?Q]VFR;`36sG ,i*"{F @JE#69{HlT 3/vsζ@Q70 96n<= {Bw>nM(jǝN8`G'˘h%F"ݽ憈JNNGLxrB#ٯ !݈Vd!QIcF}L?n˷tSoeҵ=fWt_~eX5쪵0Q#ׯ޻vb_6SI'#-r0GGBr f( '9QTQ0XPIOVT#CqY^bm3C\4jQdtG4 7-_2ۀXk\~В  *BT@Zy?kdPS`+ؚm4C,&{H(XF HltsOtt %[Yk0Tۂ.Sy5r)[^xrÍҠ)dJҜoʩLpBSzvND%4ptvڝ'0crAt\֎~=׺~bҪt"2՘i&Sjd:tN )ʇ /Hj>3AhG j2 GQ)zS x i>}X͗'z-NZbyhe~?\^c G在L$(׹\?7̨YJΖ;=n@͝R?tG>=aN1rcDqnߩSo&# 8]n70RfE~{e2KT۷_s}36mJ®`o"Ui8@R$4OF9} Q=Hk(ԬxhE1[h?pj<8DW|y֦I^HKG&9ʶѢ/G:IZ8aNK(4*C#F"`Wh~͇s9vXa94^>7., tMfpeZ)!HhD6<7D!8t.7Y4JF#Epvf`!HTAa URY#n<*○ ݌:Ig}RR?{T.E$r)Pۭ/qW5E @sdoobe`H_`z2x/aFaaI5>1TWܒ :$ 'R ,9Ն0pyR chTKeζ=^]DnRGo0LfVHQ~^4 d㶬vX>&W.*~478H}׿lg_ֽL"@ 5PؘD޽W*12qQP~ ԆH?EUocR٬T$n,'Lz(B62(F/Jb7޷ݙ,~W* aI*G50 I-Xc2Q\⨃J6݆()j@ 3@)u 895l7;Sm9Gkz ՗&6N0YDD.}QcWRjV-&+ 2vfu+7F*"_~:!e3'dM9A4·&/td{zHp̸_=0MXM8p.&M8+ P$!6X##}"(dBƯy%n5TBY$Sf/~5L(d&jI4v+aE_?z؂QBwyXJo}{(ʬ=,u;e1UbFxk鑰ڃ^|C&^Y3F7AvS:Vcz"pcN%,W}ffv5Y'P-Z-N|}kMV|'_ ޮQNNP nݠ(8ذϵi hNA S'/_)_9sTWgP;%4b$ M'ʖ µ헅DhZ$B|V9|D|UەSU9:UvʭquiL&K9|cwBLKs&X6NK/v HFE6{m9jG밢pO/uNJaItOOSl"DC)tvȃde󸬜:.Z} H|%D5U$]Zы562^A$&"Qcih+Xe(]xPXI{V0/{*U,bc+{V\ Sn߸q>q07#%x}; /AI2/~Um޼*S'p{xtvIO`NըH'֙9LlvqbD–PP L=xpbr8oޞɦ?xbQ*$ Gҝ9c}bﴑ0B?oq"[OONDרLuyB#/hg=N-uY|߆z^V)4DžǟTW|<}hm'I6|o~oA>R\H)9x?(Fqͺ;|blWϾlhR329nr7S,K n5h_xN-{/ W_mBJp̀PJ,.~OQF[F8EZZ\d7*UDr‹y2b6ViF^?)u)``QuS\rQ+,ɖTqVO msinxy<VcP1İzv-_f h`98jJ&CJ> /pz|KnP@*r;J$dL)l Qz"ӑ&>q ިJ4'w,Gf.& +QTf~gvFP Cˆ/#;E'ZL{Z0>[*ѓ H \ -v{Hp+ݴ3>䬩Eb`쿺<\xܯpz#~{1i8}`?F0 ;*k1x5Z+v1<<:)ݬiRPek򝫱=S4!:.-a7hqSvM|n]}*]=Щ8E TRsm|损u BEx kq=Wt~Vh  $7"T+zFSY}..$N6E܎u'H6_YɨMJC7l|  1k٬b=wi'NE;)ء^?R)e/*gT2bm~cw#`\ _BcstsȽf Ov(I( '8ZYa+$IZH8pld2G+ΩO ^ՠfPIոI׳Rvn6hp6h%g:{v|",jKY8+x=r-DjqWxtoy0I[|@C59^v+Ve06hZ$[FUڧD;̀(p֒.Y¥P ^UTqOEB)A}[+:lr[ڎ58 F S)# īɃw^YsCɩ纬0)t{učF6 {5e 2l C]C "Z2~ٲo|v :[] haMۚfɶL3RPjy}%BIӳW}]!4o}fJKI"Wٕw&gƯ4`^Ln??35\_9[X¼n "Yl5joR^[wMAJ&'yN>زI\z=xu@ N' 8#Pδ^k=\EPռay:n5ڛ:~8Pq㎠݁ )$wj3kd_+g#`۾yIH9mXAעUTXzmBU]e^(Ž\:wΩ8r"W< (%No=(HNKX*g9ҠkQOن*aZ"1djR*oozՂDIJma2R[Sw+7tFPfv]5;VU_|,tK bIe䋳|8 LG8te2цk4V/?{ 2Qiy٘4m݈V`N"(0$c$Z-|P=TF䳐StB<N1q-q$!rRT>yCk:ͅY44qqwʮC8«65*#qB"6dP(em^d%~gHe2v%CYw=Jv)yy;A8E7-dV3E~`d-&^`*Jky`Gi ^љ5u7yu0f)Wj"= !WÚagiEMηm$x'w!R9_$* ]l[J{Z(P 1x2FJ` XRB]V`│gR2^L x6V KJu`$`k%>_| %SB nS+gD7Fwl,T'q,#s{ RzB,V%-:~dC"[O5&tBJGj]\55T= 㻬&V['IP9 Jyv7 4OԐr$ؕDB%}BPp>QN>ڻhM'|ׯ 8aĝGRNL \MHl!;gV't00LyP#sF=:hmE U|m;7#t vt ^)J JV ,%`ںZ/B2H;v<}[wt?]x #5,O')_`G60J}׿"]_t,cdk~QǍ44]I1O4'!Kak( :B` gg]U8i1 Wh@;0.]AjpdN 7 :ۅ=մm)(\ME<ܩve]4Nzw`k`(#lv*S\hiD‘ 9sBCǢ'YMa141;X5b!hHÆV5XA* zEh9PDmrgF-6ؕ=uű9Y aw{h xUBEJ0%shMk;Ү@SG)@Rq7B/}+u;dֵ{koެO|'M?H' ].5p`ch 0CfG\# :V~x$< cWG2hf˶ ͼ~ߞSݴ!S9Í1d:#4C/ڝo^?j&uC[po<4\SW~bJ,a)weJD\4AvO Ь ̢׻} r'QӍw[~gb?/öronWT`Rw.@ 0~۪.L`ʝ_^00 ^k4E= i@E ~hL@6FV)?3 ?ǦZ0WwA)_.Ê+$\Z1. A-AeVTp-Scrhlf_9M;*7je#RÔt=- Z3VOED0G莅\װVjiz QÈS7؝X<uN@spVH KrWo߉jn gj7-f3=?oD"Gm) sf@I5Jkc=Tg[z*90G>KVMq\LE;+8laKΰ8;qSPLHܽiyI \$}f<0~H¯X!j`1rBNw{{/9]ǢI{#Ǻc~+&W'?}R.ZG 昹n3ޟS?<{&v\)W7 x!9SSQ34r:c n";܎?[ZHvϹ_N˸V:j=NӉ3Ճ7C.2GoۯFõYL<_4̳Nen'8o^;# ꠭:ŸsU_vwhsU&S 8|hQсbgn2]ZR%-}C#zyY%?v!kx)wЉ^r8֌y "cr A>jEnCYMܚGO[_Ƭ$*D+oigI2GTlh*c*ǀӾx0TF؈9IB׮Ff5KI{=fW i1ZN5Yp˩ZEeюֱ9kѨZQw˰Ԯ0Q/f<@'֭2(hA*HWц18NgØȇ$s\ mfMzDžn=!ij1-m6y5[=`8zQPڎҠƐaArk:햅D(vgS>2kIuD廕^Y$ʳ(yA 2PNPi˜$hOe[orjme 7b>#N*Ni@AB [Ux}n #a'̣=+商 b9:2`wS\Tי;]`lؐh{*Taś0wTK uά70p;ك.n2۷e|R af_[/SBS=>T> x?WJE?>.eߤ ;ߪF3+ag&9`~ee[{~f;r7x'B ¢??l>kki߭7V kXrUb)]˯שٟ휉~9צ>AZ_l~="ēQ~ pkSAϷ:1#`9Re kh)tLlfz N.[@ԝH|{6"jA 25 ݄cS6ʴ̓p[0 v?2e4dnJ-sK@9խ >i~F[8#Û3??Ę|Q,S]y\žyEˍ*qm MvkzDN۪vXM/^g{V.-ɮ`|ֻiy[ݏfgMܩ<94kvb~,K{UN(}j4i$ \͸nyo$v–>Y@5˹2d\uPN/9Xw\:VmK;{Y^Ijrm E. nԬOQ^|*N8޿,>Q)[|ږ~OzrvF^  F'ۙJQma}>xrL' {ېixaٗow-KM'TٛO˽۴GRco7nNPnj'Ӗ.Ԭn 6Kfmaat BKa.&MawDj99Kjy,TFH">AL N,L@!KuBm.RGv|锩v*":e*#Jډ }/$ &> U iEo`p9-Xq䱅gѬySR%T}s:qTq4<MgDDT hu 26+NXWǗ}QahW?qfX'H aQ3?|*Mx|.ႏ@kv5jݹ(0nۣ•d2*!Zݯb$8yk!5-f C15E>|"BME"x?z (duڤk:mEՁ n @)aA:?M26TFt_3][DBWrxT!Ǐ @4ON`Xtl s{Ga@Qzenm@Wz'ChYAW J5 L ZKY4 WXfmN# %K!_dh9cgI)z PFC@p,`nj!/HI"9§o{ u-#A)I4ݟ~l֖N]+~_#"1Du OvtPG$Ctk:#ġ f.-I!=_Qc=@l!,^<6Щ``7P@TkD:-qGGYY]1a70c*r\\/FhKN/vKv7q;絝'eR'?_u銄*H;(2TO x8Ï&#,0nw,bmt(T|8nP>{5*FW~aP) ]e5JN%3+"OGq2UJ:XDYhyoVTY،zNEqoC( ˺lGw{)JI=X.u]-D\Of-5[{(7=p?GG<خ8MY4 ǭ7?\I `yCBo%:HQͷ[?X[:J69RtAwȃj:m~*ܭX̝FUʽ08\^&+MNze>~7ݯn;]QrƇR; ƥ0滜ndhrT$s n-B ,W&}><1'_8b|*v`|`XGaxh{Wcӧ4l;{!r0#m70 IxbL[lACq~|<-O^i, 6x&i z婄[QLTJ~LrYaqy6 iK0.j_uRFa|$p}]R!T}dۦK >{TaanZ 1E_PtЭ5SDĭ:Bw6ˆI3&;%&Zaބ*d1 >_#W XQ`Wk2֤Pĉ67_B^)iqbzZ?hZ'F~C: V,Q=vK ^ ;7}SnT !$i-b˜>QƧB>XE4bZj*:+Y([qK5qÀѰ.]!)"~qB%$/*0;26<ܑ2ӫFvvߩLyt.<~Cdw鏳BCDx:r;HuaΦf#T(uFdf)2,@?zx)|=u9mq:S"&;}H;5 u<̥'j.Ny{ Z끄2{Bg/0 z2v3LbJ:K:=Yѡ`? =|_7Ď!Ҥ4x?wty*Z+n2BY_kOT2G?eiw{~m58f2ؖF:r1zul" a>:Nt󿾰6qU?" Łe}̍Y]=yN_@7'J ܥ+&ګoz;@oZ,9F$ J'sG y.敁C`xN4ul|MV VF ;nM.2ZQ ]Z?}(џK`3<1~gFoB[9Nib^޵[HB۶l-aj0LGʹ&Ʒ M{HҐ+\v"VpZ a8d>R9} LnfuH14!:az[ Iy5$a^]εD8`d he0arI("h9U\uie+[ljnx]IJbw7_]qWC]l 4EE>zIHn*AFD(yp),6.n ᅬa &f&#gjծbwLSshޕC"2tU-nG9/G(@`(2ZTi2zF9EV1ka_5E=M8NE=5Ÿ5a=V{9pM nAhО-5r^teڟt;'ou1ofgGLJ;'b镻v\FnzPV- m1(_{6Ԅ3De<33 7w&I62v6)-A0H=^6먈{I<ҳiǃo` FxWnZPS*}KIc-_7Gη'w I-1mqЙ%zUnq}׎]'q78Ϋ/_mdkj#_}Q}=fgoyh9C4NR4'>f7k#Ů,Nz e}'hV6cWg׮{ ?X; oPZT} ْ+dz-GH/eS!vkpr0.ȕ\ vd[w"'XjvaBXC(ϫet-(L?ˍ*`B#ԡ8RVsթ~ YRѱlD4L@hdV׺-exPvgDŽv*~W0& ۽ *LNIq0D`̤a's䵁,ӨZ4/yf3-S,6\EoKLGP(n[E#( S-F*LH`wiu1UX(2zNgqನB k;jh8BBU֜pbDtksF:2!vՕG2Fc`D*mLnȌN$?l& Y٩b+?e1w{^8*>lrYMm#2fGw h^/uapNC<~=xtE{}DQRQf$}O9c'qhusbj[@Dr-}t=.~98FyѝO}XdFCB$ȃ ^[K;rˌqH g~z r߸a&̀!/$#`Q`Ў#wgxdpW2?1Om)qʮAhj=F̈́Ɏja55yV*!;y{Z}Rc'YV"βRCSy Dfa1~sv M,٫WoX\]JQ"h^:t1$@$(ԪP|2{CO}qjTƎ4z0 8|֍}};C(#Ԓ/t `~({8’VOĝhx ,x.މ4ˀSz ТD׵#~t/Z24 hQ_4 #64z LS lXT\ߍbwpwI'M<fJdTqIt3!쩙=0 a&[爇Ӎjʁ,vbxxF4e^1IfoM!Ds]R֚6p[H@c6zNDŽ4 v+'nyny G1*AB)nw^اs3nϮD+L!xÛWyTX'֫tZl7@~y:Hv˽/dbqL{rYvx~pD 2PNg5yxжu'tQr& V Y트sj,wd]S("Xիp>7h RaHx0 H+;ʚZ=~sֳl4Bu{ f-\9n)M=!3pl?8nWk6r4i 6Oo"4F%eKp3vӬg+&yLAg)a*κK&?OI#N޳6l'%_ˮݷ_7z>dwV?8H3Օh(]ˢh5!n BeEf·\|*NCΉ(xR"cAP# #{{G_ yΟ~yb"vTMEgz6h`Ru9ϪYn]s7l#pQ3I֍?m4DHVꀭ׋: .tz#t'ߋ61Nx7J@;`nAF Eq_&A9C_1<,y$lIBUFf\Ym' UD0NkhpgՑis?fFMoL2{wZxx_h9w9wNwJ[G@ Jd{8Z_{0B2cF vo;L`g:1t\k0jNقf[,|BHxrHx_;<*{"DY6NJdѐ/ƝZ'?YX^pokTN)7vVΦLaNӮk,2-~m͵;Qβ?2>YqmYDWoh,FMOE@ҕۗ/|Opc2ėqbg_sǮ]rfuԲ"jxbnٞ_P}! ]@ڟ0=uL!6vBzTMX+qt&>|Zp~v=!`,%!~op15|ZvL64#Olf7|QF?Qw PAr]lA˪FmzZ nZAG AR"v9TS{8;Ƶ%7V tzUW{P]4"itҙ88X޿楒g'us/䳓l(mFzɁɦ^Bh:rqXⱈųWh;l NQ9TfBm $-25饫^<|di`{V r~2s?KAyzIExd&2a!/H)v멛Mw;`tK [cT!xt }aPuqY`)B#88Ҹ\o\;oGK)Qladr1sqv_v8";@Dp iYmIJf(6ZD2p8\WVZwcq"-3.+Vj`hB%Al:_^xҎ>Mں.)½߉\H?V9wE󊩯fwAl)ꓤp3j MQp /]}UfN -`D";CK">Z;K,A8l! 1$B8%cYzwŅ>H+|WwUWwLwʬ>)B )Rhv.ǵ/3{xo.^hE>s{9Ϸ[#ѡ]ma{W@6L{q\I_tR|Pڰ+)Goo1lc^?џgle]qJFW:*טuiD*JuB,e$5:o!l)ݓWX=G ?Q2t8zE}zc[<]fYD^pGE[g}XqӝDл̵h4"v=4@5"raj#^Szʕ~gK4V(/LwsWo˂7lCa% "tnW>w>]Õ-/Iz*x uh(Mp@l5D!;kDTJ >ݐK߾ ܟOIno?x4/$eϮn2Sb#VEX}x42{8M)hHYMbLӁ# %nF}sqP1>iNϘ~0?G~^XGW:>$V'g?}HXn}$J}5ZJO{,)4KrT{wK2*fO(CFb@T2/`7l  H ͇J4݀5w,(\/վ\`g!z%m-URG,; k'=nšQd:8:ʅ˧9X]J_[_wc}nv n<-:"n\1|"oi& 5vflQxN#T}U`6fYIypӾv_qy^UuatELnM.ogn\ 7Iy9%gu[Ԝ϶hql YaJ) xW7؊G t#051*L x36a?mTQx0#ݖ$F.YF!5#I:HĩLo"f$N.s}*=+.̯\l痳Z.F*1lk0tW# yc,s2i942dUnOfϞO'Q;^_Z Q-6w`^0ϿjlމoN)]zZ=\ĤsR+d]|\t9JGl' oW\{OƒJݚ\d|=f#<ȏc@3WĮ/oNF󰕯W@:L}`³w /{Pp*6@H!FC5/`e ՟l 48xYkTf9,gx(ҀئZ,y G[h9ZqA?˜QxDG?b& {qT=rK Scw trLsc6pۤ`? #"a:dζ_RD5rGA7=lƒi)ozn!ui9Elje7X``Xb.,JS)~e%<ɹaZ :4w;G޹@u/ 2 3F&P@D3528+i~j5J }mÁpo(cC pj ĵMł=Yv8Hy3>t⸍e.rG3~ӓǁ?{,]q al󩥩 !Wdo?gNt<~ a/N4( AXA&7xܤ}@Pno_jALZ, @ǞJÑJq(HfSkXڒß%a4N@ݵksIuk~[y?ʓsEfssMY|-ЙzQJ 2߄?Ͽ~#ʦ2"&B=q>zjpTפ >x64ajp(}e \KfkVm~7 l~3ݚ9_:TFh\_/ xwsᄶ ݜ`o>[blhx:]ś$Vww>f/.XVݩE w#u^nJNt5 ^Ʈ~6_IɚVTJ^(jbw̙d5|O܉BV{EۋFy_3o 5 FLn!Wi_욮AwTiuk;fBybpv!!pLBc᢮)}q~8)6VFR4#)eB+>*%~课*=i7)L19|;og֩oAz&j76n7l/sL&E(w.;\gJf~6|?D "e ٚIPhggeO8 WZuh:9ˣW'A鿨SIÏ4kL]Q2lJkSM8DZ4S37H1Sp?a]fȺ&<[XXn\c[,7P <3Te ܿ= O,F0uTzwCmNEtkjv=m!'6`V}% Z A_L#qo?eUoڻ8jyR- v|Fe ɘ/v9&GP*ASH)ܿ|&T0 J)&U{kޣTMj+==_ > )jY<W;I%6f*.ƕ|gh c fhS$LUa<͐ {evEWBgGJc{8xM->[~I'Pߧ|vT1@:|5 SՉM4qZ/.ǣ^$X-=Wl*QKf,~_C-+۟i*IT,A pc%n*b7 a J$R@z{5JU-~tGg70noۂ=eYyY]&TGpe&"^^ =+>Ԩٟnݫ=ET6u<~AH| ZNr 'bd*b穑>*~|rN7KDjz6`jQbʡ fId}L w4޼OziY MD̯243(gm==gP`<&ѹ?-zhN`:jZ-bdk i~Wr=4.a5H^.Sa X'b tFaF$M$$:BU{h&\f"@;'.r}zQ_^4&3ikڑ^o=? v3=L.Z dh.[ZY|apۢW-y"-&@<|تg)f\c^hfE4:)`ԐFf-)uQmw\chkC1\PI68B3gMϋpX]6Nx}yUo= `X,(\;t6NpR N&jG@Drώw>s,@T /WNtt[0"޺+S/U»b M#οʂq+w$昹j]$@f(w =(I A{|@,B陙.,(5hO-fS㑺x<'ˑeVEi҄֕!_K!10aHW W;`HoN"|EEW5q Z>@U\^|UqԺ2d.Zw\/W;|^Hq gf^gGe eh E?GC^9ȸ2bHuכ'G}zFjz)%O<>lFڽjܰ[ pMI499 Iͣ?⧢49I!!|%֨oZ-+H1GA1zuf|vʠT-??4n@0:ߞ>@2:w}>[:Wou-Vm'96\CPCgKXi:9Gm؁kTdz,㇃81] :@S/~&kq!JuVj}:#bjct47A@LbۧWKb-p_~}G\ez+qб+w@ /AWӛAJ[m#m2X G0R@$sXnFeōt֗*!1j6`*Lv $j()yB0 O㿈CW8+V{sE|L_=Oq#kn1(wĒkTV,/1_=y18^OpCAp8uME!_ۯ^] ^K hx9>3 |-n8ޯ"J"NB! Qt[FzG;Ui`VOqGKI1pg{i~ 1s-Zۓȫ^W<= 8 9^շ =rӫns!Z588*4rces4Yz80!"j؁#ݣDWͭ_Sʃ/FK0.P9TWM2ۑNI%M\:‹ڽÓv u@Xrv:2*pmi<}n=~)QwpYpKLT.-8f_u#r _]R|Kl/_j:s<ĕ{WnۧO`ESaxZtzIF9$A7y%J~ uU $.+.]trv,"[!mjZD5 ͎(qxFA7te&ϳ>0bI9X%cK\b~\ղSG-833 Tb%xӫm[(b}ǽ,饵'W[s3y):]ElesnbԬg3?6#mjEUKJL'<Ńޝs"hBqoJ"ZmN/l h>V =a7 җU >ֱčLɠrR?ln bwtzFD-NfbxWE6x m2TA݂ Z3٩`[_>uH16ny̼0ncWDHL Dw0XnI^1+CQ޿cw/۟?n:ٵ3b*|AgF~2f̮!x䍵dt=Q,Y<<*=XB+;.²vbI{Mœy D & !fz.xEzZ7ʄ{ea^xM&gNɵ=Lcb|sl]Fљ!- TaSuX ., pt{-4Ht|c&m\5up 4+Bd}N^7"Ͳ8IGXO.N<721VH`/i $0p28tI7S E3ox7&,E{&vp.UO$8|un2%{\z68:Gddғ՛/}.f3|liPC!\x"7`ϟ6:I3*DBېpsћ;GI]$Jݵ27,ѯ@ n2 1Ɏ\2d^݄#?`mFNOH"m\NL ܑW{\wηGnJ+#^Xr CߚzͷZr{$U\Ö4T5JK j~ mlg چ>^ƕ)i*ʽZK hap־:jMىQ S{+k'Q}ruۚG* @[d&1$4u|\4.('Q) t!,CC4H읉a)uІxn҈ϩwCvUhP]D3N^oXiUInd (FaӪɆ E/&+ÌhIB $j Q 6pC8p$W݇)@L6"(jik(!ͅB OB"[!1N@[jóUlEVJRFn^ :$*Nn蠗V,FpOhl~9ev)>i}R>~.(-f,sw'g^(lgKdjfyn j{Yob0#{I`Ҷ^'Gv tfvKZ..z=c;g}n,]{V 6 SBd$$_x b(m~E{@z9ih ݱ1 o:1v9 OZB CixfGPWxC~  U6!uzlO U ˔àڰ38}ac2-b\b6h0&2XHt$/gO_늣-DkI=Y"P&]ŃF* AQk Shd\HK|ot@y?Pt#B3DE µv^B%".qEvemKouWu& ` :Az<, Ɵ_teDTrC;0TUZi[eEeMnYM֕(Ȥ:Gq1TY1 xEE'(O@Ϊ@_Z]3J{HA7$N)b5 RFA $"^T UlrzT lCj7*^lYiwan mmwH"0um:jn4vrq66rF;r6uTBEN __hвiԔ}цLgFP&b9X2[ ;n N&i?E%Vw&rr[(X<5qKAt#XȺSW磘˿ip[3Ӳ "F%v .r>`_9FMAE0=5%o,LSlߺϤb[wgOO͙Xl`9yb<.rHKٖ-VKѝW'̨i .sݟ$Nϒ.̜Fl8.Ϙ]uE)(f7$l9#>#ͩv;" ۽:\3sC/LGMK!fⓏQX,MTDކmo{7ʫIQ.gq N❝g|tRGo}d6ɏo 0"mc@{1VQk9qsB&8GEӑE)1DWBd{p^3%H&}p[\ 1^^} 2tt9)`w7CI7}( fyb? Sf4PJf]8`bZ.mX4۶b8 tm\mջ_s8]J^\` _AV/cQk1msN E/σ.Ɏ|aq6P7wox4%5׵J;T?YU$vGe9Wn*"u[!Jg6cOGIi0MּSc;&ˣn̨,(! '3 `QieI]RW|;GulfP%jR,U _w+_Wޜ)Frg=^*ZWf"#4pν B0:X,4jhnf(CAA #!q"êpq*bkw0#cFzp_B.o^ZDekH躮:`􇂨[t''ۏtXԼ_#|ʔ,=$\r{nR nñ0neC.7Zy^cT+Nz33ωwʻTe!}swE}ӱfŅ~ )8pU+?ÊXmU}d}TŢտSGG-:tz${]*ZBYmRPQT|BTKtF]`ѿXXլ>u8׷J85CqVVg(*r8ʗLR=yuƣx*F]P7~؝! 7tK4X CmM-xL%%}SŔ.Q7Eǿ"\ ψCKkvD8Gg4%v^+}n ꥋ?4܋ s!Ia=b0D#ud܁xfyv)Qvj!khI!+ s`~F6HSX_Z1eL>S)1vuղkN/dgͩvsI-(Nt8l_(cb2O(:r~y=65ZiO3._^zoؒ_Hàq+'hYŴwB?}1h촶-G* _=j`ǙPrd c4ɜ fƕo~״_}Ӆ0X* $3kRG _3^VKAm_)cָL1tZLpwfD8je#˸ñe*@t`)D:đ|]XYFs?dC-HQ]EC[]dJ53[q<сRsF37Kե0."nD\O 3[?M\4 QC@3%<_ }FAFTw(W.5~疇X8HCAC@rj3+jgnFa0\,M%D09k/(nXk0] yp]NfNg嫧Ua*5*.nf~<\,]3w _"g3j:>:#ĆlIӆU$28ɨە1"w;7{ۧyoe#[K=Jp병٦[7*:,u1dEKqׯZ؜NaJC. nl~tO)-!FvQ@iPiL(CkaRYƩpix3NAw݉~aVEo0x6c{׏Gѝyju2G&4zs#^. ? ]O)?HjU6a0MC1W'j#]G{]~E\|ݘX_~q4n<9y~zܷQV80NԘO1f1Nj~*ym/#ZV0 Qީw=cv Y?B< j)1͚tinW?L_cm{ >y1]%o]⻌>x6[+Thī#CuoxZfYTM,vk '>~Qi\ DX6-bfV#dDDJ1كF^|yd{v;A+Te45hh3Vp=[ݯv-%sڌN03,)!DžQÆ 6d<͡$4X'6b:~.V8ƐH`PqSFӤ..S1HHa%CY !((DCI3q,B6 Lal+Km 4ttKK ,2E"a>8-%aY0u0Iqm4&#\?_O P0 2 A( x @lĨ t56H7 `##m7Q-rQmfTNa>D,G:  dMqbPZ$ȢP:^ǖn[?fgJZ̦]Iiyޙ3юp< x0bg]yQvxhZsY,;DH/n]ݨ1c4T;GyϏ0usa2v[b=q aXH!;/Fl%w39lb{: 3k{|uSyܱtM3XǪ 57n|pbM\Fsl3߬m=pz^ݼqdr~w_ZgS SWKKMAȱo>/alÝJ,FmI%<8Z%S}]{Bsa-um*揳/7K\ai!Q4onNq(wJJ8+Z{wح8zC0"+xu}棻T (w/poJ$j .KC>O5B>>QTȚ,8C4\ZJp|)ep)aA%BRCs@CdPcۥY0KzU~6r 2]ܦ)bؔƊT@qX1CdPNhW)%! i*y:a(!9Mے6t{ 4$R:>T,L <=gGF9G<KcpY4J] HN2w݆/9ɒfD~}k;!b#5,KhG6E"kAd3ŭٙrrb`j|5(7*]9 {2X^h *BQUCQp0y ?!K2bȤ^HoheˁbM`$}l9A"§G%Ӛ`@uhQp:Øpv6*q滐awD A <+2KSN"C!Oi&u>Vqx$<`P ORk[F!arih`]K m׀(h% eb&$z,4uD &r faO8ׅ]KtCzO6fl wάv3uˇ^v56{OjGy#nT]${O wt{o=5,+kYI_ͥ0ӎ_Lt y# ߿=ʂDE!8_7V+Ou7ZRۿzu.WYɕO5٢e3inh?A~͹9R|ܧJ\?k|2,lt k:Shbw"dh\λY"j| 翽'4}[wWq5^00;o (D^cI,mǝLӁ0VhM =ft!dĩ6+WY)Bq)L]QJZV﷔t$<)ޱRL s\Gߟ;ZY]h0zO9E=Nڃ(Аd*Mv nN,d4 5<$8nN}AC (dVg62uAr,~h JDRE)#^>i95p*ሓgL, !"c,~ B,ު\hb.R0&L)]H;96g0l)y;a$\m՘/` ꜰt)%o?z2}2+b:z?| J3Sܕ2UR-,ި1l(gui4! EXI7Q 2<J{Y79\fb%&P*tpʓ}W(%\vqPQk\exY?& ZJd9c%35@p!㬔JLN"\֩qkrOdR(ЫD/co-=~*4"vꐞ>4ˉjȖ E&`fjFf̡3Ycb.KA>fx#0UAطi7q& (5|_Ĝ*b4h ( sM6P` gr ]w6 6Zu^#;^th'(p;-xT<9}LV@#͛\ Ne[)3XS{OO iv, k7 yA˓^͟__zOzQ.i'YtU\(;Ҝ6l_ JWpn2#:Iݭ50Zg ;9pPdž]@?=/YJ5lN:. m:C ?{.6y=<|y҆`kYs?9ow ʻ앭`ijA֟QﴋbOlٙvIdk1L`k%n/>] E:E RM545sGSwOvm^فYZԢ UtdλBR'O]kzAƸ4$Dq$3/' 7 ÅޅvJEK'Sb1|t¤@x ⛚㨨ʓldf-p(ڤ382#gP+Dp-aD|jGqy(đ S5c# dN}MbEo?uEqnAT@(lܸjKdNۗ^re 抝 ZXw<|aZfpأ/Α| U->:t),i? Mpre'M>6:}!FpҲdžL|,юv;j7kxCAP?D *N u3'Ed 44b캨ʈ$MG 'p,7[,Йز(~bA&f bO(9" 1m6A crFGH>д TLxCB0 .$jTpj$>$$# DFpLA|`|5V;)ٖ~y7*q'GRD˟gЛ\ʤ뛾5L#cC?`U]DTZn{>zXu 1w#kj+/6f6g7e 8?~}9[y0U5Nv攌Ce^b0qdAطcjooޚSD!BNQBY~K)͡5j ク%P=00B(rP.k+p( be b*fo8ڤ~%`00Pm'%`pOũCB>d1! I24e0<*E))ܑ$IԽ%ؠCx7P2(H|0 Ag)NBJPLH?)@$>`I4bIX8|ՁgIuKc6b,MFja1b x'Y# NuJ81 Ϡp_#PIj;Pi9@2T;$]%|:4r ӫ6_~q+?_~grwoNvW~xe[vڳ hFaG;+b1 FҢ^o< _|K[jqeIQڋ'˳mSlWuҽtt>lոI$VoRYaIqy_ZeM߼Kp^tqm9r:jƟ߹gCF';X x,mɊgǙeO5{n@wl3ir~60u!K oslB:ꎺK $D%FUȀѳ.ڗ*//sҪa[GjK`#~vt i(VPBʻ|uPXkluv©ѝ_^5~7/`46=[5Y;_hлYp=y̽C#U]vE`wnqvG`tQSS# 7jSf S%zXCcv֩~>OH5Ǐ#UcQij 98tD #]F$(Ѳxq`K,f'ӬF2Y1I z>D(#ʥ@a,H0@ 6C,GM1k`p15!%E|;qaExQsJ)ʋ]F llwl.QB`)#+߿Ag2eGrGQAJ",'no@\2e:m9-+AH8}" S}#KSm'BƖ?cA=JF`HDgBkb f6 dB,9w}@pMR`4o1NDȒ|(!y)LH(#Gw|XN!$R ]zF'!y)!CqF2p-|vm mĉQ0-DEq tLWE%]BKJ YM 7>ǽL!  #Y`%yNiۗ.f⡽S0ID峹;,,`@lm}31E,hdHyXdk[̗"#0ڷ˷OHbY]V)"knXm9,^MlV9zWog<[e /8NQҌ%M'{~ZTW*L`M@ZSx2:޹챬 NKlAU>||NHtyy'ߑ2j IdgrبBN>M/@29Wn~aYX'G'~Ύ'aL+`F̚?+nWLJG곳'_s&XfgKy?ty)d1hPD~e!!.FdؐJ ;ᬈ jSi&f 4! pJelPIT g1з#y=/ <(,؃'zZ"\)g2`*aa /hlΧMIVM$e`_G jOx-ǶMOM^Z!,TGϻ/KZo/`|*p Cz88>{N ɤ 6Wg_)2+͖a|}^džym,]3o.<߹#xҭm=ٞ!\loPm4`WSc EoWzs3(a;>Nͽ>C V h6W̒N6fB⴫_8Jzj cׅf.VW?Wy$ yvbuurw6uoQh(}Pu!JJq??vXp iQ`iO vmRV].S,&]Ƨ.tp{Ѵec ̘QLkƉQI%as/4x6j-' )ao23A'9Kx?p DRh޲1<@cE $0؏y4FC$x{{Bc$Ya FG%1qwKḯ(eUX$!F:I11 `zvX"`= (q`.E n4(}xĴӟ^|>~rqv/O_rtG3$1]*_]o{{1/ef˼B֫?~z%:F=Pl$'zj:\v-#͝wՋÓVovZUp} y"E ߿>1; 3RQ|U~X̗Fۃ8">4sPN+^Zi$\ DNh86&R@ZgJD.2ӄV$ 0<$]#]\$)}OII&LEN8f`@WsSBO-Fmle`qQ:QT |!(Hp o--=/59 y!)mEOguMHRa(l8<E"e0/AG  @&.6 ,W%ܨێ8b S-gQˏ/nM̨NϓuyʓioiׅYHnd8l"J$t*F xLFdEOOC-(Y'Q x (׮G-D)A ʳrg:©\D&W"V;AVݹL3]Gyk e4LJ!jE94/n=V[OkqpJ 'P>gv5zuyod}~`'` Ox>ly& 0#[k?ז riD%ۏEk6A-ȏw^~'M66KKl^$#tgOhLn0j Tk3nM-&wS$/} Rg鰘YTW*WP0C7^xy%j O_DVkl SlD'س.L|ZsWJ4Cp[(.Ύ'd?{1SDr^) p?0\-U ,D(ƊNķ$W!*tX aM\O1eØ](tSLTlt+ )LQY" 0m%#u,VJg rCVbi?=lHtnGgH%T|Bە(b)^_?v~}hD[Kӹ\+~jk>?y_Vr3oPhf Όf^蝈cn99wa L-|h>׍_M/]јKVq/HZma|ej /o#''ja>V:8*Z\[j;A[az@V^z6wW] {g׍J/sKUAp8~a?}(JAj7l$db;OxsIQ<-Ž$lʪjE4sq)YRtcp 2@ʪ2q3r8Y $A@>G%AQ)?KމO0>A78PGE4ق{R[P<HO0kQMR :6)NSdetIqN`GC;a)̱; hX]rӥ):I\)]' ‰&&TG ,BSETsj/L.wF|rqehR.6,\00s(wj\X`*ri,UӵJ\X)++x֫PH&:7?~x_&o`s(e9L5?7ftyqVX_|w6I4w~A^rEP(;79YRn»oNJ[ٯ_m~^vw~^YsfuU}VSa~pssYv82] rC`.z>]ׄ+˳dq{Aۍd|-!3K @Sun:s ?7,5B:LmK1C/(yI0ż|ˀ9:[Q#e Ņ> HP4܎F "̦Xe)43 i #$ByjZdGň )LǪ0k(!NQ J`*sB!J$f ؁j0DP;Yr3+^$xB},m^x{>\6($^k't8].gmYUmt(O]]3$X_B2l';ǻ~2ÓPs0S*.ϑsSB1wtɮcExБ.M):"!~>Kց\&}8}rsN;&WV}YۨO_@-?pN?59}u}YʼnK3WEEF}Σu2ɲ O;_VV ۻ3DE;O?RJ9\TP~i~$Po\/LszbB|\he;k8c@8Z @/3Nk/&e[P [BLI7BTRpm5Ka5;8/ӭwG1at{^<(*ePc}L|Dؔ"6`"6829 Lu;tҰmWEtb)IRi&xaxaf>G-q1It8'8]40ǽ8q\6O=$ Pz<%p ks 5s`: ㏇B1+v# cT2d<4\{Jg%kۮZ߼ָ ZNnN ٤=ڍJr>q/~;.b~jy*ʹ(b`"^$ۮ ;L&\pr{7ζ*|VmqQmco>"f.~Xk?aic>P"3@r?bGmi) x8Uw2\]H =ǩpeʏbJTAgc! $qhr1 tԬ;|=hޡd] #frS`s4,SY4UfI'Lo{̲~c|4k#)xyxѯ~l}q7?>n0~s*90n̅r\I40st_=|phgHI,\IYfB A{l[odf2f. Z)d/-7)D,fb]Zksyhr-YIF.j D9;ZwƭJMW {X rG+?߽eD?v</*O[%5vzD^SH@A\?:w֛Jt9v n8_t|Il)֛leiDT^[ %GR }L,H744"߾NVzF.βSYptKh7VTmZϕ0iBw'|qaoO׳gC=ߝ|8NE'24m ٣I&K7/TkX\jNq a<ӣ%Hώ\:<̄t}޶ǭ{C9Mb`{ᓞH]778#]уBB]#1GaRL,TpE iX)x+eDgp`k]a ^X.z}[ {B8F\ j6$h$@aDJƃ@yTe8pIZ+  Y D\b4I>WWٗVHXgzA8"/(F|(Ә)( mL}"=kFL.]qP(Y)͊+OK1) >GK O?NНR'$zbJ`y&(V [o,sf?:Ub_:{_-2'8귕rώl<#9J+2Snݨ5$rxtrfG͜ ӿmV& oR*cu`yLR^;hӮ `75,og7/^^s C#.iD>:9o痪aNO97QT"TA^"z'gilVиc S{Y(cyHffJ~~yMϾZ]2Mt#+[3|g0/_Pcx蘓u `S.[xȩX)F~Gㆨʔ((I9[?Žkwɞ)6ީVT9?e:I/ ]ZTk3 G+2z3(_h0 i׋ݽ[#<#?Os M9;35~գ?xč_{!?:#lR^ټrrE(758R50A<k>"Wn#ƺL;/o_cBn*g(czA$Ş0Ei!F<5) cD)y3@}MFcɺOiSa!9.i$RԳ@P4PC#O_."":kSotQONo&413Ya!5 B2&Tc2HxhyIRHRBJJGP @ BѸ^qTΡ(l0v ?ƉWo07kAμvuF'Ol>k_<χqƤtD; c$cZqB 粘(!;0mj :/M=ã˯͘M@_BD'5Ax>fϽɋ 1"/Ď(͝k{IPg_!'ƮehLG GC8}ny޷Hr%(YUCIJ.Ve)I񜩳dI>73=y r{OG0NFb7(qѠD!'mzѕY!P=+=O *8\^yi2 B(1 L nI$6 BG K|=_L/ OѪ93EV }G!.+ s4-m|ǃs \Չk\I'B M7zY=;v;ulH G P NKp 8yzMgm<>k}%kߚ::|fgYeMݛ.v9ze'ֶ/e,թo.O&},m" ?}[ozu|C+޹w∈V39fwSerrf9#M$V5/~w/Ӝ*>F=U=p-LGA5)z2[8Ds VW] ^J}fv\4F4jiAE{,_ creyc*u @ZoH1{ a?ȍ&8oFdD YaN]p&PC`9;X+1Yط$N6 L eA}, { ^[)vTV@,r 7fʫkW.R˫_ QH@i^ t&*.h8pU$2ɔxᗏo~,ӽ$$@J/<<֨#huB}xahu]0C b0raq{~.g\^l<8k̿Y=]OA]ŭ+J6{ř-Q mQє9Zfʤ(q 9)p nP?6 B0oPs4K IܧOE8'}3ZoϚ_:o?؆r5iL.)6"(I9[וγk?w9erN^^|uSWbи@%=xW};^d6:|›֭ׯ^Ylr|5O1[ӽm騽mG[!sEQ{]4i讕˛;YCe?4?~w}wߘ~ݫ;_n^3]-R^q{ka%zby"a̓jI})4wOQ1o,-,)y}VokG<[Cd__rE4mFXܲw? }g׾y[CmjJRiEN/WV"/ g/p|8ϼxx2^{}i\v"||~3}+LNR'U$DW&חg&06{nzjFyT47dtKfkígnT+6݇=:EMtod kӣbl3sD=L.W L1AU$G+"/mY'dn}aŸ mo'x?@!y΁#v-KWeVD&F@h5|%̾gN@>D(gP$бf>o~r ~ó_ɳw~".,ZhHc)!oD |R$:2I w?}g'|`CNК$KCGat:ApP038:u?iDҀ0Q|/[ߕlutlz̎f˨oQI' r4]MM޻mp7A%*NStnP~s؛&!-V[z2p=Qvv~a/ê@kV8߬l>v7,҆h6594)IrWGll~qrsg8pҪH&g[~WC15!Tܩɑ/~zzM#GD%|֮Շjw紽o8o϶7v$&V~8=v>7u|,1\==%6ڂ_L蠌X~ufMR}O??%ZhМ$[hE\/ܚ|*Y;h a6Wfpbtwx,tJ.Q5Zud:+0cM;f%ǎ֬lOQ)8Nモyp+7V b".Lj-Gv1#Gԇg\ņq1kUo Pb!I~ '0Q^"<|>(": ]dpaSEj;.v&\eiAO,g$hCIJDu6wV5lp׮3T/CxܪbWtX78 9R/;*h R=^J8VF>B>1 (X( ڠG8~h;; V>@x aHA3`@؄*S&cJ8 F7zkn_MWE}\48X;3xU' 51P.@ˢ  .%|FagpL.` f'>V-u)'-&AB(0`P&4S@cpo5]n<̂*9ÚfJ} I8yM:^T2OTɥܭT67 r5=Vdc"=}P=;!qHUueq& A躋i#Ո${:aD"h%MSu@;( u ؄`L X()y5s֗9٦Cvg뺁sqFBM\TFhxFI O7RSŕKan>mxHBx+,-i$ L|L:zNνSPٸ9ׂ:GG5TFѩoVNBJK`r ?{pٲ;ze w3ɋ3W/O&сp~8<:UOa"M\R,i0;7s_9[e)ÿxH6D0 P8gRy!; c'XD  )^|]핊r_Gk]l1NvA</}l??T!&76#em'* Ew58, 1گY [st$k$& Bo4ǣ5`AӥS)ÅI?@;aB[t.-' cŐv&xn CtZzuv/OD|)t8ƴT;]ʅg{'1lYӚh+f'ZKGj CHy8m;`O9]nWw4)j?wポڑ wa'| :';O=]:w;#uRhN:ͮ|!q2(RS'8bKi$i(fuKpWvUE5QGw%}(۾F"'6Uׄ..0}MCTv6 pY'TL(CTb@~p4o6BTڐH`,'q;b@Eb ^7ұB9ERD@WoQ4F wF-UϷW^Ox|| Zå6,7,4iw 8BƁ;3 Sx[fbmY䬒#77o{'pk_2 ߞX,أϷO{ <$o^uwRuK;W d.C.m؈9 ѧsC`3){5[~Vw WJC(J'vY 87baΣ8vX0J?X8/TIRLIDɂ&2 RV"J7+{Z?j>?{ũTr(poa?mD$<8hqF3dڧM)L 8v0䡌 [ϠXq3fEVVԲY+FW|`JyW#AKĖ:\b. XYІA4pCML]%lh]͓IӾG8h/q߹7<:yw R<!6D|'q^U.b'W[ UG@,v}B ̱{wU0WE=퀎f RIqs!61:Bȫ^K`%O sD{alZyЅz:ϻ.*х刎=7G0Ȣa.ÖZC `+3$4$Wtyw?iah&^axDYS)2C.֪0)|2}{[ۙp Wk`:^q>Ȧ4LT ,/Lnl>z'^6kk߷o_8 *>]Yq7_ū߽;kX"]vt#P(L?>vzZ= UVT.̈́SEM :P~'?˗o^V{3 83I4ˇ;LL$ć\tX;Lx)3 !G}C=0[?]&?`v*$%9oi\ʕT&FndU"~=ޥΠ<\^=oWL&wB%#rt %*d1ԻR]K޾N }',@xmRzbP 'DzWJ\X }PC;T3#A/Ch O&Q/ȢtP1-A!<`H߈f*l} jtYT| lols;[ &͚DN{vT* -$(G 6J)Hf36[]|u1"';;?Dgr gI>C:!§F,aUP`jŁsv97Vl8G x@7T^A2D8 %Ǘ"VvjM^*{ދ;w?'8s[{=14$5^=~q|<`@h< 5?}'*-lV]1۷A`â -4P@4꾕H*@%X(ǀP>P@@ \ LLfLLEeX"= &}/ U (ct8`[ @K)-UޡȐ̒v2Y NC@o^?}8^C(\ U4vwF`o_{F#C|-&u3ԴDO:hV8;DX?ӺgV}Tm fuu$G ldQ>aN"֟6*<л<'h.+vkh ;œnggPj\|8G>G8ae+3o<_rM&qVWMT(IB)WVؕ%K0剅(y1 IG||ج>]Vk?AÎOP |&_Ÿ""fΠV]Pbj<U;\MV@LJ->7` ʟS' {@z o˃SB# /T$4_NIs"ޅg'PC3FCai`i:!"8)O p& ,EȼτMz$ {;7./8g%?1F1 4N1=L1ⰺO 0!@ y::EcIiK#gO=Xm|,`Ht~E i{< [A4[U(3:>}TovX_G]ͺ4 [ 0eP!X D0ƓEB '/9U*7"B}{]_ȞovQn~@"jVU-$LWrQs &҉i>!)5Ik\≅?92Ỹ\u1ZuD7/6E%kjp>C[ x @h2,& URsq?HFx2a_ۡW'M' S|$S,L\@"!6aD8.Lt E&IfIn6,; ISg-: ErL|GO>aLMրAEۖG n=Z߭k`Avr8L S SlnAR='}p+/߿p{nr sKB.1-) g"v%%ylV56uir4<>쟪( y̍Sc]2)tr<&3dЮD$<7^LfGBtpc^Yxߟ_40]$$xb~= dҬCfϐRq4<6;Hh_Pt|uߟԡLi\:pGPԈ{KK(W;kF]sw|ږ$ha3?4V?wWtd$ »khK 2";β:SN30>Fbg뾹{G+uAUa,0AIB:iWG౉h`xceժçͯ}c'hwzȠXΘLlr"Qo~SR^p-rl3h ?ɖՔ!(!j6 ;?~΃<<S>ĵu1 La T$eKuE]LGj0Ɠ :AV,1R1t1 >aPDS?0:?WeW$M f f޻G+Tg4Xz!~=tk!@41Geyf冿{?ߞ!S17椛=M*bB`멘cV>¯?=Z츚(מ`1Rj$=$Fiɍ/ڵvƀW x`eYZ 6䁞X H[@}@6P~R0Ap@$ 1+N4,C d0ﱝkxA=˓:"ci@4d~Z8ZPEk1\'o_bq(/o^ˇ.~{#0H goِO~oYvXd,<ʆzՐ"_Z\ZB^)vbsƱt )$ q$̀$>ۮ%gv` ţ;o$/ *jL(MAuh9; kX`т{0NOlOS:-q v@r2]Og9>dt~t|:RWQnL Mxm罷{2GY깵Ǒ=={t8&ǧ]9$xZoV+._P`hp6$yOiUS淟=~U4_1;zוEM:'׿"XOT=}s9&ZrSS˺H(5;ZO,# 1~ D N_Ȇrk%bT'|ϋ 0džם_$dR0-*6iDS~R;ҕtqw (_m HIzGa F8*k(hdf- pY ')4D , yGtq5z1~AHd@"`2@(Qvc_\;==gh}Me#쎔ړK7|g{* zjJAG0V2P;8jҀ;B̮bCɃ;8yuk{ C5ڌJ,2l/ ]NiC CxzYuÞ'"w2`Uf\`2M2݆9ǥp$[}/$UGo1W[͢ѡlja4u 6F$聺8\ s{>?YmIf! gL0Ak?h-#XX|ăFP">dJ.BV}dQPw@Cm;~? Dվ X.lO8Fr { fAwhXt9Pz>7lWwf ![t"szNj5*jYp'SK,O*k.aYXUur\;“ \\3B)%͹GꗏyG߯mW;+,חJxr}56 VI|TjUPdҌ)QԉG/$=gJl&n3C3>sqnA~xd۸ҧ҆|שJ/NU ӝf+S,RaBH,cu.y)U]ktG`@~'|Qsu0Ѷ'`ChphQJc BC כ=csu2)tAX62z`ǃn߇S۵f"0 h8  N& р>HS\Xus}*k;"D=ǧP!1a)5ڐBdRyQXPyP=mRUC(!`d hMI5e&7뫯jA먁7r 3f:ݫ,(5F'f(Y*S;{a [MEeHRn 4ODK̋] QU`ѳJ; EŲ89ɋىd*ͤrNN&FJ;CUiISI Gɗ_m{wORF1̑;nIgϟnH|0Hܺj/V67^击_%g+?8k(,v~/c.J@w&/FG`ͮ8F6kUW.KKcæ<:+p&t3|YߵN8B Vʳˈi}\Nyyi2`6껊 t `caD~N$ܛcN2 $"vBqΦqu>ɮM6HxP0UMe`U->9IX R- `6UaMfF{gb 1֧u//lzCb %Fvd=p"<$ȋ f;54O"Mv4Z3T$?S`~[iT X7]-E ̥I 5l]U cvWS da}ˡ6v;tbfJ|7F̃;( bnL=pf͕$!Zmi>hCZ`0+f8  ?pg!> } F@\>@{k#G28E/ im1!7VE{Me?ok*!I*F,!@k\wۭo WcDj!e؍[Wwy@y:g;[=-ݽ#H_xf; 烹\s`pf|<\춚_ك~st\?{ll#Q:n Ib.͍Wg! !7χO@>{hg,EӗJwVP%KHzŲ빗v~!6;?,'ڇSy5Wy{ݹfB+͚/ܥί.ɧё"i}|d\(&a7#vIcG'ˀ Od#6+V8DC'i6DyR)">DjNhŮ?XҦs:;KhzCc}_}+#Ǧ8k<B=i}ug%(R0îs'm bêffh4Jy x>\Z l=W&GԴ G4Zձّ{[h'3jX* Eg 1Ũ2YՇϾޯ_:*wSl8:UܸŃW'{ΕzsU31 U('@5[`"'ڷՍM1mV6zY>AvwW'iQA:'HZHĪ~* {H]Z~Ti0vTv0(K`>6wܣ;}ZBrS7GP{ c.vOblfM/>1YllZãXH`B>m>獭.F{#o^U{uEㅞܾ/%wLX6Ԯ:}>džVwv?b Z#獗w]O޼&]6@IƧ7*feƭ񽁎fi/%]RXZĽ6I:H1SKjzYP\D<Ƿ޿`^|[aCM"{j}M*;Y<Iy 2B ּCÛNq b4aȶj0Zz>-a%q 1TV؈(08!~Ga*;eGK~ B*!G(x[: nv[())ʪCHhm $l<?cCEcKXq {Hg k1-WfSݱ/zhRjDw| &5I!7 A -2Xx xx8.(`n<яܦFvʇM77Bqy6=Ǥ] ڨJ#O4GA0PM 9MFգ@2|P $tUW3=~vvgf v COH'D]܅B_pb(.Hy< ,53;{zgѷ74*tʔ>or-_Uñ dʇ=W[ɩzX<}>FϞqFgGHnHGɡ2:]yci/8L;LC>3I7gogr`6D6KV:\`xY军5xz2 L)^Cbz MI`VBnP@ LaWޝOc$;tl>svV 7gàߐF=]X$B+tΏaTJ 8L롉 7g.eg"Lt^7# 6bZNY[ori:_l Ofbֽ嫩1p+kT"0.#Vz1XW̤xp|tѠ޳H%W lKʼnt:l0y{uu$+|pSQσMw4uuf?hV"qy|?:^HMeSdKmЏwۍvU ϊ(VQl>d $I^ !DC7/O~-N{6g_}o~{u__K7?.M͋(D?V|t#=V}xPl# C,7-;\*Fy?c=Bj 6 khW"ܜ冇]IJZr*L_=vJݾgcFi݋a«'v,Vhg B![`V!K9v&WUH.@- b ekU7PtHmPuFI Zi2L5Ql͑J`u0H]-rBt;_IfC.Z"Ǚ,Y,V 4֠,n_p(].lUU PvId6bHC`7zknbΟ)-22JC@uمϴl-9݈hB,YlH6p"HQEnk& 6:Ժ6I8fG6HyLqj۾1R.$Eqf@7p[$qi!iDܠL#aIK4 .e/pT^BBK Uarms@8l,2 mAma$)3>e`ڒlRIdb벉nl ^/s3Ŀ/r/_<Pu@AZnTdr2YMِg[j#fF啬I7b*{2IGݩ`Tm]lTq}ؘ&T?V`Ԅrv6;~y8_Rq.<"&o]x?(t|ޔMra[r'_O7=cb z|i(Y,CiZbbsX؈{oQ՛wމ|7sqڥjIn<(vt,V.'sSIo&zlCWAcGN~Fig QQjµ0)]ڤ]]~g͟mՃN(C[!<3//_;症Ax-tfϊU2S']7~7:65 I)b4?qɢl1,֬fcECeձy,q§]Zd 6&&U24sr|ן D>6:c GnQ 3Z86# PQъeVR% HCaYi:Bbn0L,ֵܾl7c|xl⤁~w밮73$ҋ϶ǧ›A{?W)}Eb⼗LhatP d?꬞xYL $0cAeB GdUq&f{Fۦ'S+㫕+~A| vQ})n0u9X[@`>Z%\2׆l p21hQ4W2 USPX+`Vl=WT Ei3}mi.B|OeݠC1 T &Z&e,:$10 ߻E<5}uSpPQ0__ow q0D`-h#]hCn8cE٤ Sh#ahtЗ[XLV ҄1J DJdPjNQ΂8JZLpnɌB! hQ+{ɱǚ}Kf ɄSK@=<_l;G{?|Wh K];yEQP  ^Q#'i[)>33UpYUIs/ HFXꝾ^v2LîAݾX D~/ 8eo<_osmEY̊ q O}P1D_YN=@4FT_YL">;""a_ZJfeB^׽s_p磃;-䠟 :7kq _~y+H0jjٵUWↈҤ{-Y,7`*|W&֩K l"!ɳbUۚԻmp8fІ ?MgsS#«MC<)qrv!>>22/EzQv 0WM-T ./Hq8ՇIyb1aO>?5_Բ:T=9 PrGV-Lci-32ۡ@0qW$ΆC8gx[ q~g^[4ZfrDڪ]jT1Uz= ,Q[fTӲP=nˋ?|yf/١rls1;8pw׊S§%QE-w =?s9QB\hl2h_X >RNβS>'|Iֶ^{u?n ߃X Y)'*!з85%\Ply= $hrSa>[j* AϞ=y|5'a?2T} %=7taTVc 5s@0gVQŁt|cS7]\YͅL2c{i:k6P=u$(^Pd,MP$S&؝xڏ0%;)&na ;d2^*6}1ýwV uЭ 1+J0^ͮШӓhVR)/y^c&{^eQ)|~,>7YXN][xk"9( 6Js7d& poO޼ d} rc3i?7N.NfgWA"e]Q"yz\ lq$I6dfqnLe!LTj+1Op6ngaß]f'~x_&bK 5ѕߪLS%6)0LVo7γur@FXO+ YV; aJ: c0j,[0N"2N;dlǏ!f x- h6nܳTAp Ð- !8a;o9`_7N#۩yG7~Ge/?N6X*WVu0$ˁOBhHa:L{KG ЯgE^JSoaލ_9b[W7hrCHUϬa`7]ֱ@FB ˏí׋( (# - veR.JSf(d|!\B]eힵRLG"Xl@3׫rfFFbD5 "^ Fvv`ᄏl ^ޝ٬{encPwT~`V#d7 yx>3`1[$ʈ1*j nбICz(]@ Vi?^b4;A,%"WG2谂`U^o^5Ddu{"^4|-=X &Kw߿4w'1{&,hɗpEmJ t% c˰Sl ol+oN;v2K.tv)إFzկGzZ{+({w1BpM`rx(_쉕>?`x֗A냓zwq'X4}`+x[-ܽY{7޸ɕJ!.Ćmfk .39$: V84N? ^?W~=*QUQ3j0 lI__q8XEhPDp ԔDFE/CY| H/ˠ n^BlXc BLugH1\.H-y/×'0/%vF QKQF,Ȉ7H\mp t~JG{ g'f/Bz6L.wՆJC%W 4b缥FAP1q ya5SRodVق`%@m Kkil6ʭn0ɀl]tQؘ "*M[lBy^S,}4z WroQVO['\3X|+<Xֹk^3n_3:7nV.j6ܠ 6aid(aeZNb hU-+VyABqu›,ےLb[#T>zC/AP>d4BqN,x{;hO] [Ǫ$PufQ?\g? #DoGQڣX$yWԄ 5JՇ.L/Ez{} xoX#B;31S5r隸;~N@[~#s8=|ڨ_&"lvwkw^W68N7.Ǽ, /9;91'fff._Y=9M^ cST<:n҃-B8Ԣ.Թvajv9rwqiMWX [F|بU~meUIa&[f˹!ເY9]7^e,݈..-AgF&ɀc6M ]iOzu)_ cDl3D]AOzWM8j$$lyHzbU,s1=Ca<͓V)1~鳙[X=y ys]} x݇Q(OI Z]7f6Ib.vkGkĆhlu/Oմv%7 W`bv8uѳ`( xZa>I:!Q2'i5Ŧj5ST0&׎w榉H?9:Ѵ\yYE Dž%C/yۂDR7v cI⛌L&8-<9_5˭.& K`UbnY>is˃rUh{5Ű]:_ߓ&/ Ϟ$r0J%ʱ>h]Z% 2jco|]JzO)Ҕ=D_"E @4CqY`>`M10S ?p%nE?b2lħC  m n`b> _w,:l6*a"CnLWE?&j,L) ML #@X٫(7#*)F5\?pų^MG`;&"-f; d,vp!br MNt&1Pd]e`˘RZ,_P WR=V}d`$4>7pFyyEۆ( DC%53[afz|Ovo}μ?^_j-n:ѫo p' ŮͨۺYJ&#Iy%r5k6\8ߑ,Y* 0ٸ }lF[}JxT_w @ JBs)KA>BF2I$6R7V+ZS4XHƫG-l6;?-;}vI}xɼ~'7_бv²}~bެ!oCc*i.0i$kxw{K(v~d9{,m/O=(ӍI.2wU_G%j? у=qN0*yF M*"0,K\,/>6P?a+:`#RA $ʤ>@OOZ j7qoRh0C%Y]@jCU3_]4ڊ!(~L8%kGRдqn[e m F" X.5OmRMLd^yv8wMn<|ytQa8)H$谛r uGڭ^A'~ITYcڤÆ)&BG6 D@[xZ-L#=^GQ;_sI lZ`gߛ#Tjvsg"Q,׷'4ZJVx^kKLì`X |hy֮^~Yi:.m(01"1bx8PkiF\;_K3޶10l8JE/n9t@}4v߾qP QUId٬Wug 8~zvyoW v 0@P k'/9dʵ0'4ő(~'^w%MZ:v==|كGLl:9QQxɚԓWPěYY^e㩐Ҭ;_tRY+oG{] ΄Ƣ޹y( or=%et1T$q]W2/O}fЄ/ (g ^(.l/On%&.߿㾞[%*u擟[8-,Dҕ^y-z߶ GN޼9YLM%+iLj#xvL%3oHL%HeC?JcU[-љ\" TnRR{}o~\VN^o49\1aPaH(t}3'8 --]Ay36u̟x_]z+ cGFn'<^FE8m8i." #NPCUhHX ژ P2qv[>*ر !t 6Ƀ 1^!#Im61tuFy:`k2}9x #eӜs:]N)](h"pKB¦.V`duUsyeD饽Ggn]sd1NC fۗ6p84==gmІ$͌:Bnذ./HxEn :7Nx(.I e1 !^ ͋f&fWZIP6!m6_Q@4 5txYmWyBBq)_#&Z?ᾪ߹ 33M1 yBEg>ْCηlGxrн7P|uqK>wO( .;5j>REm)DmHKP=xz]ijGLLe8wνb'7>5o޺ihv6OX흎\ _j4GPWs걗\NOޞB;Rݡ'8(JgssS!e 7;q/74^d/EYYlEffҳc!![֬:yg9 ѯM}BՕՕl͍GsрQxY*nBՙŔ:ŗ1_a0$ zڐ{apϽA,ȆZMyG?+qܯ˗m 88j'% ] W3c3񑲟9Zg,Wl*"A4Y L6л_1̑3U5,R/AOrMGl@ ı"ȷ2ҙPSu% 8O2vθNe ᄁJaۖ6ES hіbɄB!m);~:" \u8rȁ<ڠf)o܌Τ갥[L(qi2d=]W{̤aF⤚ a—d0+CP mSS:eUm?҂{=Q-& LHw@I2&_`_*䏏O#Rc8\^N*mܒQP&N._뗔¨qܩ߹IQ#Oi"! hD ,1 I$f&jm݄x(f@e4dA3 k0le?EI^O!zzgPi98 Ț. # #oj,f~˳xqqYͷ\3E|qݻRW_}(-'"IA wo7.. KNvծli%-x NU^f_>JJ$ $ۡ|W?>P Ǟ \昖f{ʇyTN!]8$gٱ4NA7}o1Niۿ0?{s>X?|iA~Fȥ]{Ed3J+=҈Qsw!15{tON3cTyDx(/&Vz(0iPEKKt:7Eоɟ_~r!.{pq6V/ 0>H_F:](9x#%V$&C-nU 7(urĕ_UJc"7R~4D⪬T7^(mÒ|0{~st ?P.ukTqkp񢟌zT7jZѫ;~`2v}37oE|ky5lffJxO[%t<!Ըt@ǘ1 el낖8YW޿>JȸJAr FGn kA!!`҈c1S;IhUzߎ$kpVJU %~TDeGP <}+^в Dlp5I@DTqL}fP vXXwqW37n95EA<߹<~+uajVF }4Ws<הk3%C ;O^G݁XK_hŜ~$G]n U]tʲ P4LDiFQf 18կF Q)Pa}F8N9 ( j d@/kɊ, HowuVU[鄠 rLg" -mWM7$g8~fbb=^NEE mH{'ޭ1!9!gd}wuwy*md"L|!ߗ~#xce*F ɇsE90cuRRm/]"H7C/0㛯4~ -ꏐ'c@L{ҶFE-ݡ'3AP@1l9_$4,,^<+sȸ(Sel,;}k7uĖ5Suc"Q73^e'Kui& 2*pIJGQd5 lV%hWAZ29J~z<@{㭒*Ju`]ۭ\f,O}ď̕͢Oz{µItia Ɂ A9/vQT9JbgP5g%E|҃ǎ6=K3Sfb2 uGcK ( qM~upKHy(ʐ N C1ްsCۜz| h  ?8dw7v[ CzԐ}x\sj2!◿l@5/Z0shImvd6FS8 yݲ#91>ljIl=v:g'7D_9}JcsTF./EZg8ڟ>ݙ?ӋΕkR/_%'2߸^Ii: -M[$6%rНN#}E꭫vOإrh5UՉ@A<LҖbs e!*W{"Ly_v1!jѥ11Ppjl3`TjRFcd<0IMM]EDeҰ}J&C8(`ځFG14L 5HF d Spٕ"uqZߛazC׾鍍Uo,A9U NT|3(Bafa)Q5bڤj@ojۨ-4%E@ hf+7vj93BiL$ڡHS=xDBsC*яz48pOݿ;TS) f5εoDn~7ؕs6Kiu:2{/ĕٱqʢlhu#= xb $¼6RWp\4\U MͽO>PDpw8*6M 8S\8w,0oES9Q[<|.fL+=uN\͋qG/ꇏv ϶ **n$x)@dX" z;a?9<^' g'ʻݳR079~SK' Ow<[F:bv'#Z#$wHO t=o k;Ixƣc3ˤk.Ȅ'S .#)Gçg\ޥapV =ڀhJ^\ґCw eaC,n!qmr_SV}f/?PrDD1oWEqyۖ8}T58pSJ@Ɲ Mn uNѸ ֝9ȀUS @l!yh]fǒ3:=ciٰO M=A@NJ]{Ui ϝ U"?U1j 5wmrf냛OuyNOK^|x?\dS;H߮PR/f/;եcm\jѫ`~뭛`^LQwӟbߺNյatI *meO&cWV-VqH~Gu^hй`:fPOL;t%6Krq紻qX:%E>ϸ9]+l#͚VeG@ot,sy1jjjx֛4- [?v^O:N笾t;?[߸p{W_\<[b 'xztc$W޻=:6Ev~x#oչ$Feg4Q9C aVn),G7ŹO#SgS셧M }j[i8ܾ%#t73FٙTwͪzv/<eCbAkqب%Ahː`&u2j/(wf`d;ONl>G@}kl g Ͼڭ)lqJ&xFq_KVpisAi|gǂa~>7!<{aIeؿ: ð/j eqRuV,+toA,wB&Q!gނǞD#aCZbAl;H5ϐ{[ǵXERO7t-%2~͎:ɠbu8@5 02 1rGtH*_mMv,=k:h`FgY+B5`BDA@ѯv! ʪ^_/\a੟>_~WytNo^684%5rmmB1w\?5've@ݭw1f8/[pCmvZ<htoHVh)> Qa `CF 9u4CC )gar;Y,qHJ#>wRO>)}d r5e臿qأh+Nr6Zͣc$֐6[y7r2}_+17!r+&E 0!]VSAq@A @N(ƷVH !I+CL KpbO?fcJU69<7+HԮ 47?>)KյW?ZNpE;;ݕx 9aj;q^}vZ[b7_x3iG;mO^>o^9w61d(TnEihqG?,=m 6)T +l!$6 cdH}!ړDxc5`h|vxm@"qDSMO$"HjaH^V- շj͹ci#P&fw'g9&pZz2Vvʶ^մq5QăH}3qwC59M rFš(Gq^zu?H|(G/_VvP+Ḩ0_3.u}^IdΌ ] \ څ 3m}tfΛ7ߐNiǜCفP(!YJZ%r8csIjid13j3L8AB6&M2i3Pm1^񨃆c\EnouN+wkam+}cԱQ7#duuyBkwDgM9}Ѡ@PDM{,IY21ptL4:m#`D,~DU_ hmexɺ=›e@F:e?F-ZNfƫ'h\dtoA cx'CzACie̋<A_~#%LøLl4o_Km͍a{?-x.w@m*BwZz~I Ykq|.ژ`2!S0DlaxL Ц(RaTaPW uD+KXP\j@ J" & :.RlJ0nP] hf练{r?OGW N,'3Di\d}uO吨Xz|FmsSR_Pߥ?~p"fu88se8bnVT B"d! G"Cq@J,& V,EILR9O 8̞wëPvY^{y.+uФ{ nsS= @QEyE8nI4:F:<tᏦbdP~oz{P|l*ZDǛ6~+ko;rk[fu;y P)@ f`tBeAfpÆG0CI"_yŝ|~ KS7ΏǹI}n &n(0m D6G>T+dL}Y4>[{~6LRz:hgū~~:z(.aBExЪu!5aώ<N=6Ƣr>|_GX:-bmū rNnplZu@W>zf9s,wPi69̟Bi5G^d(Q( 6+ o u8aMl, -!f Xwgj{kg,0CD݉lJFDj!t~ʯnJQkPgRx z98,/-&Iܖ=b*)z ~n!t=͎Mᓜ2Z_ ,mEnrOfv<];eq033:~ eu3Lm {b2:u1@M!mQnkQح6*/zcƞZKGg'61^[HC&:U;Ct(~xYrRe5[ӊ3t·3J95?=qqKH8`s4>؛HOD'wjKAS4Hb~om#JBl6a>y"P'oJ7}@|KGx( r{X0 9G v+\}18CFJOLPfd,hp{'ܓ1^a;Ƞ{*>h `:= LS54uACE a$(4njW{"`)5?ӫ'kjtA8ג É\bDž`3HR}pBML&W&`` &^B6On$(?zT26NoH."^qcC.!ɲu<XȞ QovzȴbK3/f睢a&a"m<>[=΍lp^fˢ9ӳ\X@I*Ed!9(]93W-_Y {C U: 嫭9St8OG$ǬU!ZM9}GŪYضى]ACV}v=2V1/ڝ`dhWPrbOvp\jl<"P0~؍{ ǽճ2Ujg'yA E|'=Yed<3LI/P~ 槊Gq Yf @ 4xoL?x.'&i복}y) (pAN }$9tasN*b;>Q>d2 |"'BS.y iPepЙK^zpXuf gp ~@?Ҝ/9qR3X6]ÝMsZp+NWDwH3x4Mi8rf3OsIy٩q;lB_~a):h<ΑoyhC\P/&.̩eOi'z`␩ 5AaU! Pjt$@4 byܡWFlkäC=:|EͰ%@GOdbC~:?!liU3ll ae0FCeN:>jk;^PbМҰ] yPy{|v\'N _ȼNxCJ 99ޫ{9ޙJ"7B֎=UE39)(B: 0z`܍OSܾȔm̵Z?-hsx5,#Ƀf 5\-3V@V BS7bE|,گ@uOvvƨ8ԛL΍EӲBq[Ñ#R39uϸ/m+KOvA[Cw֞IOۺr_mR9~*DH6$g0is8=AElkr>N,5U@nRIb_tR0@-ݗ/;]A6 aZf{q E%(@O)S젿^_ ^.FfYS$GtOJ֠~yZ&.\wɯ_/X{a`~V^r)k,08ro设57 2W;?/6OnҽSYnS㉌;[8z[sXmD׿x@W>!IoW@:DMCWq  * @&4"( W<]4q ʣv @0tE8AL%Eb}eoώצ߽<B{V*hNo}s-=2ލgV.Vge+KB8v6 ƤjTl4dD)qⵯ#ɉKEHL4<`) 8}*Ꝉ BJЪ~k^>J'g&r;aW bnix/:u&_Jj3mmEDp'd} ЯS%'pf!67uiܸ=;k.>[KA!|'G/4_?yg/>=[g:QC! BOY<~L42~I0O_c[nn_^wוǵ&'g@tcŇ}g@ԏ.l~})q"㔦K#Qs ֻM|9\ -2}k{g/|5A=;ߥ'۳~pjy>?Gmk)iP-#TեHЎC0hʄ&[gQIr;LG\(4 ",DBs袵= /d#^ls;;r*M=jz4u݇ҐWDKG\ƀK%UdcP Do/w>,Y  9^pyfYO\|0}Pږ׎kZWڋv_W}En'O>YqHUc $\ ~HX sӓ6 SaQ>XwdEhRǙxth L$$Oz~bCyR-HdseOSK&R@+?3nv11}fx#}6f Dr;l&^MfD4k(p_H/޾ᚙ)6T"'47_u{Nj#+콠pE@;mvE{-ip6ox`&,VT"g-\A!lqJ_h :D?+`7'&ܱ|lhG4]@$6ȐP([Ndb2꿙Bnݭ^{UЉxl4, v~Fz&9f6F6鉷_m21ܜ>`2ǡ?f8YquZTLS禟5XrLiˌRۿd\D zZᵿ^:esxAw>Wp&^(t^Gt vVM<+`c<\e&pyc0A#,Nv{o ȉGI2/* hl ޾8>2lb|80/ktR6'U^;wr1JIz#/=}׉> ,]<]} h^/?)wou[{V&``5q :6f`+vZeE9N</ IUpМ@/ N ,uX^lI$Ho"6`ENFu0@q  6hubd:ezi;x>A6r9}NFF(YQ[nq[n{L-JF%$/R="ݘ:9Fl"˳¶T'9>E 宓(#)q؛:Rh zRV"Vrbf*o̢ zL<ZPA6~ke_LOy(O)ul 'G}5(Ϟ=thCkrІ5}T~q::*y3rm c??6}0Qev_PGS;IZA|VOR4s\%V(C#Y߹B-LT؞7pAݸbˍZ4Ձ.݋7r"ouL'3 bhp\Wij}3.oygr{z@kk/fƜiB&  &!m)] hX=B=߬]:{qM@iգT&.S4 `jS>:<˕b^R7ƒ+k-:k;8<= @ex[Ӌ3mŘagCR<<i7gG?M5aⰴ wѽ1֔FʺpjԻWM ∈fOVIea493M+jce m ӰeQ#BčzKepeOoJ/| o&q9 3?ǴLDw~Q8 <ХTSj )w"g#:bKC$Ə]~m/{CqkN0\d$;yQFe?5׮\ VY%;Xw $Ri:߼=Fe]׏h79RO;T{m~nՍG;S>Jgl&>.Ԏ8oFg" 1y.WUmn1@aQU氢=;/qXgX&!!]3;>6"Gbm4 #(kOjv{p(P_8ryq׷Ӄ/ܙI$\,HMƗcCm~J={z$H 0 ;=eqichGlKͫj# cYKK}*X{;,4n?c1xa*uRekUҗBa}E2hJdMLX?;nNܦZH(jۻNTjr͂NY)B֢ؗwwJi޾Kᾞ-Mcז- 1 Hx@zB;ج=x_YDa_=,  cddLJtBV7n_,ǁKf9r{ln.GϛwBWr%M7}i\j~%+6.={&# +[ZZ;ڙ^̎MХbgrm>FCSs{jV,xy5dꟾj.nOQfR#7kWeJ/stR:C 4_4OLJ_gT ;8 (&b 9M^I(fDEIgqK*V8T>ڳCVl 8p~y6>yAN۽m*ׇۤÐ _aҺ,shVZ `ؤ"5G䈈<0Ddۄ͵y: }xSjHaZmuJ!]Np"8Mƃt4[tˊB^W}1{,f:++4(&fc\ra=8uCBcGT$ }\t7qzh5۬e4A.zN[RԐEܿhsMwFm)O&*ܼttOt~ j V pv I"F !Z@ *ܩtgIY9vGm._񌓲U@AףꖈJCB\Cvn4ܢ]Q%D @$KNϓo9(l,j]{;T {[~VOf'48\ӅԸ:kHEQ??AؔH@3E/__oB,m~|f;waqfr5i|<+x02[GP8X2^_t_v:+S_W:ؠI%H-fFty,vG@4NYW!lI4tiVaM}^536P_U>kœդsCU4^dGrqڇpul%gy#le2Jjהa'$dF eɋ:җ:RҌ[ [fc01:|U@iPZR; -*rr27E?o!T|p,ڬCArvZcsZ) <2"nmZz=-0(6X+`R/g؈󗤎K 0gV=gjFԝv1亭_M ?@& :DnKr}(FPxU( EL4F,. \x B&5,e4iER3PfvOQ*Ki7+h$Fgr:9ofZ{/o^ y>jc䂟&;oAUZţڤ:7N͊H 98)6(>!s_nWaV'nr{gO}c`fk"2{R9'n'Wǭ;>;O,\BiJ8Z!5kD7 ^5ǃF?'gt¬ uI3VnSK̳y.䔎H ^l|o_MZ>"P'(&a 83/1<\㣝LMx@" gXȈ}<R7V(&$;pvFkC Dd2+ ōý"6kscJ_q2=?늃B߫Ki5Yw%uU<64*r{2ʙPQ'^4 ^ -*X";`n'4Fhm3A jer[7Wc1ù$)]Jjh/[mҥZOc;N&zm{)pWmr]jqgl^+1lǎ]eN2g74$.9M|^D e7a黤 NXyR8uHJgҵ9\'帰jFjn)dqp}v2:#ue}IQ2N5 Vjtjە `;#[L iRATU熓$dT^6;pbpJeAIpDl+j7LI"mi#D%60BeFR[|_ [?>;#|iXyٷJk:`zTLKD6ok2&4F)0m֚x_{&p=iABD.co/7}WcΉ '% Pkuؚ0#n{DA啐mJRm3BX=r,jM_7##l8+wqZ@fI_%HݣS׮ong+R:# ~ɣΜc"^Ù`6Vn55dF`ڴzI{NSՔb # p\X jJ_U1$:X(qf u#9h0 .hpB fFn!Krϙk\GX hi] 3ݚ{X]*jcPO4隮ZFku̻Pή,7*´\qvՏO(p^>u FQfW#Iۍkh`f_ʶf!n6r(Ǖh{uJpF:~{5Nǧ#a柊\M>=Jxx4QY{˻_~8Z껻t2u2smĉPx\ m~aLo4Wg^i]{g(/ wF ^645S> YRWuG1YSv I^v[`L`D1R&8:'jit{Bn*tǏN=O}Rvm؟`ӫuYEa\9zvcjJuJZ};P p8Xh2g1O5m|$_>fv1cTCDZ{nYte N{nNXXDRAP1>4Cn:o* Lǽ:Z7o-w\t)^@-NcRD5}{RST$H51ySh{(/\'_[\`>bY>jp[HDla m: >'aVr7UTQO1lf=;fڥ=[V+O, e:4ލ&pdl_YBŨoۓ.߫LY <1. #|`3 S+,bIl6v,3'7;4ez.k"W;:?sj*'ROG6uZM;ՍOo(Nk_4[sv 7- ic-Ox>;Cf__b?@TmTwxA O?W~W Pր$V0X<;# 1 "i62`%&4!CԣH#ͬ1/w83!S)t7@i8Y> !C *wCa ۳9f6 ,Ë8n XXa<o@wx#z{RH2Г#fS!-+T+иh7gNJBXX\yggn=}}Y :'NjE&jr=8EKK=M@74 'R/:Pj,)@2;n/'?J.?:L֑Z4wz}$Ig7O>2ZT/_h.˾{,a!1ΞM[/mk Ҫ7ejcĵ^|<=E]~B~QScXFU[P/Jo/KP?dHOY3/_Fˌ Z Îâ8Dn,WSDKNS1FWV >Rm Hc*mHv fwv{0[Db.~3nm?;x#2Fj4I 'ȥ 6X$wlsͣ.kP(z>׮N])T$b~yg ፍ+@ҝ eu|sx$13ZF@$j{3Bռ)Q'qsO+?鏾+%|ۀѬA>35 >=ٸ>}mRkP*{rl4 Ӹh70TOflbKT|^v.& Sl-Q9?f]VO`T']WRXN͸6q4ͳ# i#Pv=`hXD=}lܯC%Z|#J@{o[`u:`&NN,qC9KgOf^+ ^<*xN ߢx3pܲC<plҜP1*=}QY`FIx}qVֿ8لhSwG/>Е)nX#G"MR; 1w"n\Y6/ljy63:um6J;,0pܰFOr sѡԲ\ FhŔkb S024p cEqL%#sw)L]N #FZ鲘!m8flsuu([x-_[_l;2*R`޲_9rnf @ -N IFuEG!Ql&B1[HÒAkg#,*^pر$SmB+bݗ #Ĉ O&0fzCT7nPP=ҩثGmC-x ^]E#&d.7x\rdM,Eyqwr=:w 㘠 #z }Zo\' l Cƀ)=Bna-:ApTDQݫSs+,AV eU[!'anh"O/m\^HD)N谮R]j֕wG_|N9q?2w羻p)kevm^y_:{ymfڅ }}}$g?_} 8{+P=y>$e( .ܹ!:ͲE4v7_k#@@ёfp;̭, _DSG:35 'I3k 8毾;3o29|o;v_Jx :܎+DLW_E'^.0b  elWrR$qDYq6={r>݋c6+ Դ]H3ʫ?;bO7湞D*"t` iD,zgWםÝv)sU;|vl+KF?1Iޘy'0DyDݎ:}d2m]29Hޙ9wVBNo:ۧg:0㜔DѠXov>q՟s~QRSh_Vt YsPEXr6]ںEIįJZ\l%Q'kC"2|>rc{PŠBβ%A Ek@B6#Gi s/ǸafLf| s`sU݁BdJˋ382"Ƿ\1겉gG;Ǟn?snܛK<Y*e* ֪nwhy49ܚz|O\1`8Fu g/az;DZ kO^Lx*cqGlŒYiW1b2"TmgY:Z8n ky16 ugEΏ&;fY qx]2kD:' M 7 $Phc8ᛘX]`&H}gdc[N뜜;8MN0`*#d,v.ƹ]MwPwxS1B"Iǿ*r* N9v݂f1/_OD$^l }% o4Zh*=+!oy!5~53.OT?EG9P*Y~? Qh@Üvߚ=ϼn~?W[g ֍LLm< ϼmY^>?-a:_ Ü pwo\9|8䵸)`g&ל@i1!^JTl50IS|l*R쎖\jV~` 6dxtR0އ(/BA$!'lAM0}BW`M#UQg!(˝Tζ7蝽/QCΜH,R?C |Ts~t?l_o-\*>݆Ao3>jyhq: +W4Z듊l<T`rߺwS}JkY@FZޝ+:&z"'ḉkciZ|~ 1 t 7#hkC*wư>798km/^6) z>icJƮ>jv4=U*;3ۼnze(nӱ"da R 0:NJ r4T4VC5d=T"Z-J72.ߴ@ //2F=is\Cr,$ &g3ֶ" ` ߥ~yifsXf{:kKmB (kwd dd$xuuڅupItɱ1kDuۂ8`)&`A8!_|^(h=Γ?({,!7b">!FH2v'֨Z<$Uq`'0VzULgAi.Zds$Hw bZ \҇vҾޟˣG/Oy_o펛Ȝa\l&hnԱXKe}Ȝ'>W .[d\=m~RB_/Սz쟿ؼk,]pԷD-f1BT0a^KzoQMRHQIu.,!p~vymm h0RzmvY*ˆ׻WX~Ҷ`ʂAe:aL< c>4iLHQfo*;Z7O+W{rjr&E8J_H'fV_)?I#IO=|%?cZrXsGt(~cn*WcNY= Gu1(&JBZ]и421bgW#݌6`Ty'V+l1*+͖6`>`amUݭ^)nP_ !#Dg6BE6zFyJrg;)֐s@f?@uTD_H0#ˍ<Z28Ug3䇵Օmw 6AT8/xv˂Ũ l`ZTӵT+T}Хņ̡0yy)9=oi%|m)מ=Y+V03Vӆ60KVN4طHPKwk`c&1Ye,ey|}l'dWq[H'#l7k'RNQ{r`ݿ~ŗDlzN98̼8Ѐq%{,I4#с/>񺗣n0Ak%kNz1gGۭrnG4 B40VO3YmQi '4fnS(4WVQPu+P(cm`W$Ԫ/,U)]FJ U@ζ&ׂ_tqy _\]JSPP2Byw/lXc+}}6R&1PpJټM-5(2+b0ά6" `w „YID9ʗ(xǏg5% l]7ˁՐӵ)فnA>g: aD^ YSHg/ZuNj5tZ~+/d1VYbiX \X0DE^& :TZwj+ôǺz#Ux1t2ⴅR]v;m: Ab pSLR7( A]UÜA_(ikV#TUq3I՛@15+Vdk$;!6m&$QݐD)Kt T+ ]u=h[^֮Pwt$n4١sY]^;I5_jN{O1 #VIWJ"<"`kHȜ}Ǵj0 c $!w? ~ cmv{1] YtînP)`̓bS+ J_: _rdk:KCg)1kYl|tEQ =E Froܶ( @-&RHj-_=8:|}.ȿ9߮^o|/Ov3G%D#yb&lku&<]?9W5{gޘ>QJL eBPg]JHV;ą+ ͧS_>XμR>ƺCh2@g+郇L2:6{MAf#p&b ˵ڃ/H `Ex8(f`ppLe!H4~%OQ\6I&zh BG&Av64 'Ў׷4[GO룂T4))tJo|~V[xՒ$t"ݮc -\SãFr.&rzHB0=0 i乄nsRN4"Nj|U?( p9GB(O@vm':q耇05eY;MPEfSqOַ \9D965sr8s0{/<аLyD'9BĹcYo?.?w.NܘCZPϽO7 k؍YӓЫ5 \ 62, VG43s19 K.v#mu„\f] 5mn2"F>ڙlG,pBa ľoh Ajx>hT=629Es*Ƚ=5`Lj:ä!ݠ=LeΟtUV FԛRn}j0 {0d-2H@=ײ_Ynb-ZsTt:-]=sWnZ=j6?9VBX6Iot}C݋_U)LfLƙ_XK#1|'3{֫!v C' _\`xS~SxǼ!jR8[x.>Rta7{OůĊ\"@צJt[|)h鵼*z@؈DBzC>D <"ASE%́3'/dg:J'r/5p iYv{gD1Ptb'~[Ӈ%2#3l\CVE:67[d4N+?lD'h" PMxyv*r.Tv2MhA|m54Ylڵxc\u_-^/0teIu\?Shf|k*;{5 ؔhF(4{6R]R?(ßr:cǂAC{䧳3^\qdv{1kVDf1 =f>k,hba+[n3;΀j|O ߢa߹GARg%.,Siҵ@b%VaؕUG, v;rfwS@}.:u~fʷqu!{b"9i))2r)}=3׍|\N:xT g=i(IkW/^n,PwYF)H[S*ڻHÎҖA6]I9}`WCgB,D8>묮^xniɨJ,mfF_A8J^TZ|Y~[ɓч|j#j6s}Ja"E܁2 ',"p$=H! K8KS8.@ȃ``O,̀UW9WՆ,ns# ϹfGSplt "J"ƘSA]C)@Ga|DpPEywONͩE~4@.@f0Ic cUjqs\MIܙO]kvQ]؁ٰzʻ ldxtKDt;Ec\~|2N-Cz%"R[I<ƿ ]z{tx*I\ DZ&^g'X?| 2:-0J3p ѷWWVW#P&ODBVېu RP3BbHZxEZ5FkEbouぐ8ѯ_1 tkY 'cb`:5ACB`p-O2it>D"MNKglpdh 䯐6V0RMxEKMF]^vky 'Ye\I@W_ X@h @Y1 h; Jjȣ*dCF1ŭN@)*{m^ {8}~yA\V"f1E97M$ !h"18|\V6V'2L6f<橕W6ړKIF=Zw~\z)\YΏur 芻7C\]N_~~_P{BKhdZ>{G)C Eb/*[{f~86oҥJMHX9r#%\CWw&8jGFWw޾9ILn"Z;-? ؍z'|LsRJQFyL%Wٻ 31<|XoLaZ0|,_?wqh [ƹ,J>@}( 4hߺrcdZ@ǸD3tvhRiwT]4?7P1Hm8{% f6#3S?z𳹴4vpD> ޅ;C^;v`L՝;A˧qSw(OGb.xV9x'MGKvsVed Bue|n ߹ ۟)ׂDŽiqɆ1ۆP\ b@iO% 5\E<0 6#AUFBliG_:M I8 5-GjF I/f?*\|8>MN3SX åŻ=G[fVo4erȳ?>v~ A Vmstփhd\_@&@Fr_@@n$ק Xi>:Hݧe?d6“y?'x5'`8y0~(FAvyЌc 8؁9\knd uJaB:))\FF}\9M)[]VqEHt 10/BI_* ( 5-c ˆUpso\G٤ɒ=\퓁9,!XtzrӄKԖb R2am溹tceQ1ٲ0\$ (3ֵ3mk|i*1o}܋f-2WP7%qbΞ zh 'p4k$4+?8xNKH1;6Gؘve-SlN#~,-ɳ\$r@*adt/݃irz%!paV¶UUka.2WeŴgA䀘sDE` X?7ONb)_g.$Ag]!\gY2b(˗M][70h"Q8 {G?zm`6y5_6b+Bq<_{7DgY5wۆv mR ʏZ.$"bU+|2(OmvkZ'K],%&q -Ά.(:gD2BBC~Hr"D>ə(VWF#8LfӮgdRM9 CA}d^ԥUp`U<hX-L7z(\f+d9r]W?'T Rf25g7uf_LG۟<{eqL: {\$fP<9tڪ tM]ʼn7 Rvk<ڴˌIS W#Y4tuD L h&r^86 Z`I|d` Fhx\Ä]tI+Jj9lț6Owؿ|]e*sm{jy.VesԫCeAGsV[X?%t\mta!4O=y;.ޛ.^[ 9֨skݍ/N0 h_kiG6o;uǟI k{gBEx ~D)wnx?v^Εc) >anQ/LJ 6UVM{ǀ*8pR.=?Co*)sUs4B c_KQ72:rWJh 1"ʠno tsXD hO%&ԞX>튚m0$1f Dʪq4I#<;,IX 2̫".n {- 4=;|wWo=WBhJ2{Dwn^jШx|hQ]+vE(\^;W?9GϟL}`:ճJ29ka\L.4 $wGG%dҷxF _=vcOz' ?QbWM4ASkPēvr6J f!RT@ǕF`^Ǟ:"Eam?!LJ{6yzAf;>vCdc?Ǝ07-t|.wg?B1R,(k% d &@adb;_^Zjv!IG27,m M;ԓB+]̮M/\vjb0|G}q;EBة~@$|GBlΣ`ph@j@\Y 鐠$ZgjG 6<wq + #m40dֻ kTAKndf<ҮO :Ey~drP0KBqHuYańjGl (4pxbz> l=^8uO~0 갫 gUx4e;li,`yŒ05UI Liͨ*܋<=|5c+ JgvC諏ۖ3F7MVը\ʡO X >1 :M;@l$LD|8bb~tq~GD8Ta5 zۻZΝF~4tc@[-q1L m$MHw]pE  mH|,PCaXDrs!hv<Q L4aكWJǽz׳ zYz8"A`&CA*.:#E3ZbG8!q_@ t;Ϥ%ke[bAH yp'>*C8b޽|m5C= fQGχV0 ` r$ ?$hAT0J>xWe ZMQ:kGA"@fY`^ΑVi29O3hKC94Ddxd QHzѨYsc| 9¦( 4do'o|a Q^@$I5ɤSKt"C@Ȉju%ӑEa*t:/ LvD]Z"`遏 :j/ uK%Ͳ٨GkQD`` vIɔ}a ѳgvӽ:ahS+;G8y?Xoo G!?ylܽ]Q㏕t/_EB|{vs.`/O*=1le|tV6v^nl"bqGvN|( #aOsEC"VRwIRί1؀.9y,|qeKZyh[ac4cU'䝋mKP;aW{})Vw:m7A]m*0~%Bp"jm H˷n' j/巋~d˽O̍7#xE.Ͼ;QH }W5+7/?zyҕdO_~oe(oh1S67y㗁kA?]IXK(IXċ^zFax;{_f vMnrn//nˆr+}Vߏ ʡ|ǠPHCl mPR:] QD^ZNhh aB0?*11\vRm3`DyvP5]?4S!Sp)ߪB@)k~{׿knz$Z'(DllA `\6py͏e՝/H:z]Iq~Mp*+o/[\|Q# SK'Σٙ`w4Kj NOz/_*4k|S7>yo 8'-5[3)Qu'g<jrb[b&o\ 7nNƷ9)E -@<0=B˓+J9&:ƚxo}mhH Ψ/LfLQ8lVky p1MHccXdG H΄9ز}gg*NeH{r i[3w8Xm[PW0Dʵ|EWNd4<6E| 0s g!4;@itۖRTpRH\w/6%Hq_w$j ˣE۾\0[^O{ۥꓵOփ&ehćD$UD#˜ʔ\PRISZ=leuQ4霰SG϶tH:hbOJV9dC!ZCTđT׻ZB,1I]͵ ,,B"#,. -)qӘpM nMH8nyg m0:T,άt3R35 ?s%LTO0qf,`+\\Hǵ)ҀV"Ay?/[.c<܁&c+kav ZȝM 'N|08'yzQ4J@ߩpR^~kxl㛙KC#|w A2`,pƉPQ6RA]pn!10[>kAmX3YPE*Y+ )yC}umfM1!ԁ EApX:L?vYe̞G btX1B=}/3yȄf0?Οftks? (GZYęjս>kwp{>y |.\dB{wXphdlWn#3sZ˰䱓MH9$7xwKJ*O>ѲF'27p./{ǥpkR%85I2?\GÂl,R@""5TB(r!lDQLM,qm+}!c(@4n0A<~0{Ĺ ΐ=G#A$g]p{m*VWF'(/ 7۬X8fv'T ;$"д$S$htE*iqve:.u۲Y; ZdZqvbQEms0upIrc2G6A"/PlM9dF4 y >DwvGܪ1I:pa@`ym! 6fI@9AE7<<:j\:6!Z2eWW_R)@0"ܒY3y "ML.St,T;+ḾpIXO2koff#x$GMtpԎ !y.X8ꙟ?mOgҋFx%0cN& cHZ1Ʊ(}UZJ\ώa]Wٛljsn஫|[aW=MA1+[~0 4EӘ `p0Pa'@_πMF/?zU-C#h`0wkecǏt Z^`3@oa }7rM9g'tW^ wkaTSi% !^s%S49U>O}܈&_[_lR1%!DZv$ra,!2 4AuNy[At]&NOYEd0V Nu??)[ՓA48dXdž*4ЈD0nQI+P1i2V>hV"BƗQG4LC. bԍʤ=&k$=$[Z' Mepe :.Vۃ=U8(d cE/ޞ&%PPZ7A[9ٓMɑo&V˸2JO%pv:ۨCFAk6K~ L~ +n* VCͥP@EٞѤk>ٖjS:B$#\M,0MD !~!i?GLuGTM9w@!`]7p.BâFo>Efy{(ʺ r0 A88Կ1Fb 届J.C j.!v<A6Hu^s4m%hUŒnXѠ KOlb1*+OەT4T,~g=uV,ӌe7&, 23@dqu1/f40)}*)#b8TAYnv7w8e&ӳAWW%10.vӜe:[϶}(ac&yְ~1NpmmjgZk[vLqGRUo | 3%_~Ƨd.xޫvZ<6Q9jn'w/~~3Lr(>iTSnv{* |!_}>fIU4 /Z;/O [rxũJ'G%jWWطHNP ڜP.&( ,閇.>%5[3mӵxuʸ< oY3AjQ#ABhL1SRdkDgV%1e Avs!T%%2IA 0$!d.C$HyM04t`-v׬W (NHB`0nǗMoU E1 N3flcbhX=x  Jn2#!"г@(B!d a{9!p\:#>$Vq}fsA  9X-=jj\o3k@k6F}W7Ak8b`ځv[&}Ӏ1P ;Sui ߱)mԲ!Yn,Vw]KQ"lTDj07dDXZ%:CN=Y6N쐘}d!w^]rӓ\x9b urf?#|ysCq !n2ABمL4D7"#k Є. BݒǏvziğmKeeLh,L X.gbsInBD+©U'Bn *wNVq9>+lW+; OO _^O-pƒtIq:q' rc+}T.Ja GG(h` ð)Y{rRj_?:P˻v˟k#pL!j&v%a,̀V'4DY,r\ۆ+ ˛G^5{UYx˚"K2+m|`?H.bUq5ϭiF̼{ҧN85{qwo^ 6|@@:?@ ҅Њz]ELn9О'5ba.Q ab*mEhT\]O0mv T%)g7{_K'IV5(^3=NOt4?;=L0sBMKzftqڨ?:+A`;sĀ yrY6==yg⦪Ǚ>6Ξ>kT`}aDW/h!aE1':ށn^ì.:m9;}^[ q4 Neav*չVlLSƖ~K$j| jӿW`w^t+Iw\&*pi2Q1azSlZ1}I$+27'Ҥm 6aYV'{M8d s)_+5NawTpvc%ڔsZ ~iqS}uyL߽4@s#tmf'_n7Fєّ\CeMvZ>e~ t 8oD#'޺/_f_/o?{¿,_^X_-߮|<(hJbT/Z?QzӇ%7` QֶͮEaK*u#B/_+<2{LAl}8_,597S7p4j[eq܀ YxB(P c3,a=e˺[Ϥ"HU]m"F#i #=R=XPlC::8?r_Bn=dس)GVd,'VGnONvzD|_zXLzN{ dSOkSM-LEɥk(_ߧ( Շ_[v^=kLqG^ܼ_KvΠ7F v3jTO>C:ݨ+(SIMtvF 8F'~"4š&s a\< V|dl"}Xw{Fj9Z/P5'ImdiSMnjr ՕPl.J񸺿(<]1GsVNT(}4t*j1!r?DSmox +hwOZ!/?'ovZ磋wզѧJV2}([3Taգ/3~Es|aMQg wyEj}RbW{hҞJ;$y֭YC? Jίa(J; (&]8(c^\ 5Ơd+"}Yl myat_>-.~ABƎ 3^|]Y ,ܞK$r1UݔOKu? t[{Iug.w"~}0tGrf?;l{qNEԋp]7_f8\oJ_]YM>q1o!>r?S\H+ M^˗o싗?47[kXarWQ?~jYe_k;t܇/&FNӎL5kr%XIF* o >bCv $|Ѡyx,'0XyM3/4C!;\5wŅ p8& `ƏbL63|N˔Vé0fWҩ矜bW`C~vfޭgso|p%|vۈ9| ٝmfK1$j揝f-;WuA$_}-6QkKAM/Бki߽LT"~PK;K'Sͪx!@2b݄Cb,s-h\9mYF(ɮ b,( ]t$Qܢp2$^`&GoRr`N#q Y35 w=.8KC`bW>UoӔЧP~ޏ6@KTaf2W_Jk1SWH@E>ёqq]*x:9* 3'sR g~[Tf%fFPmK_g&Fhck{Ҳgj7қ݃GI vF^pJ)JtN:ěV;."⋱9 3O4} E3q#`J Ԇþ !:C(yN* X>մ0 @V_ё>b`3E ˴L1~LH! hcBR4qLLb1mPQ6x2M<1t EC)HݽRHw8^t_ fBi;J*& zˉ|n̟-]t}sFۛOPA|*c 7|) ޏޱ!t yV0D$hYPry~fj<3nyΏ 8D湜N<{0yܭDz6R$yc:@]|(9mP$Kp>o:|:rle0ptz!ZXh[.?Dƍi*Xo0,vSov7ˆJO?.ώ*!=*r.MI C[';e?zV%" %0SʖDi7HxsxFW3+w6HQ:y4z; wD_"/g;Mɮve4XDftWL*..#`䒑w*kw?9;"3u͵+7w/+Ja޺P|xk~g[U:) h"Npz3Ily,wteby5~!K%j)ޛBjҴo_=_o}uۙst#Q6сftnWhVu*WN>/KcGZףq:.&sew'#8S/%cnugS">kZҾ'߻@o>kqjPP hQD4 % FmR sX&əp1 :4Bi㥴IP!uB& ؞f fZ>hC‡F)|rfhjfQPü8M>嶎]yD@@SZ3FctWdF&)qIKRwT:֣H-7"|AB```> ^`~x ;)%qxl= v]r=k&Eþ_K-hZg{:G.ÌN0{0dBy!%Su aưn׬=bY5k+n@m=Ǐ@>=zrz{|Q<*9H-[-Ѝ=yTyQBO_>{Yn4;uw&"o3l+suFҽȢR5Q`y ˢ]?{\g.EoFɩə|zF!H 1Jzs+:hfb u|=Q;E` '`S7X&/@$>w`P>(qݞyN[;;/zujUed,yB4d,ڥrQ|1R"Hhi[3D*Fo2ft\x_}xJ)J你n7SA [o&~[7b1Εbdf2RwOҁH\#-[8Yag'ruC4Xz HN!_6Od0L4&g7Wg33'utGlGU?Φ{\ //KxbxD 1(:<:0e8pt h["*O!E(ǵuh`%Vh==b FIۯX;OvVmMG2<2xFz!H>x9|p_=Z'A%np8s;\OXyo^9 39;F`6-gftEw[r;oe t?]J{4[ O H0*:Ԡ WiA.j&&!|Vbf4au@_gwbķ F ?OӹKHk/?{#:t҅8U/>9C؃F0퐪!]`W%_^63xN./]}ťvگzDLPiaGQƦh w䘰dtd, Aviy=F,m:VehC9; kf7"-a(!&h&< 4b8|~oض8 ydAoY1qUGn޵DHf73<(Ơ{YnW/Nj(q~Z^l(p=d[-5uy b\hNأSbgzdz/7&'3k++kwW]&^~9D(_J/H|iiqVvpSQ2NJ38Vi#.&qB6J##D$g.`BWeYF&StśS./\YE#(C1 ݾqpRErc.sH> q IRh{< ZN=aK/7LJ>^̥hHP}Ȕ#\cÔy}ʫ1D~0Jbq0+Î}Dm|nbxqyiN%Yr2aylLZX$k2`%R- akϯ-N2y}yzr2[!e&Ef#tv\NBH'fGR"1Zͧ:A~i# 7nI/f|oR0SΓuxP!x6FًW3ocm?9Pcg76#YlKί_ʹ>E@鋏잖ό [컟0wo^w2Bƭu3pN9x&{AKLڧW/}DA:&)i "(`cc4EC %EPAh" 2(D5]ALa1?V9߿0^m!@$| ei2`RA cX $$ =FP3QCmSQ1}[pFS[j[GorӣxT}lcvAs)7gr%$)1yaUmx9$exdƃLɶU$('.S7֏e`PQIJ~'Yu%jzj9:LOۃٛudxkC(HǨCÛiOZ7PO#v8̅b>d?OMdLi(DJ4]g)bH Jh 䨰pih6ť`ЏiT٧* Lxonnx bdifï}=DWcDWJBg\|m&y~ZAc^|F#XA}wKs[5;4ѯ8_|;ki3ݞֻ Zd?;?Σ_hyZkΗ"R:-x͖ȣƋm^<6^?8;m|wYvlkT\C|$#%ݧBbERvN3r߬5v&LE sq!U4Um+*otqtz1 ΓB45kf `< bUa1N0xeKS+B܅,KS"1kZƒ{ 9s4=93^RSZh4 [>;xƐ5$Xj;+(IȵnҨ<ޘ&. - [x:OA ?=Y Ah;Kޱ7,0s;3D}\/^;o$u0j:Gc渃t!BT@gu;+D>UG W/w;?1W'O.GH_E&o?&OH1cN3ϴ6 |v]b&7Ol ,be1c01͢>c-v9?MbLB4pztlγ}-XCx>I B)\IA#1Lv!K4tݰR(< $E;}ٲ, t ')=]Qrp|A3|dD"R`5GfVP`:L,}_p˯[ka悞 "\A;Cba2c5jiEpa<_$:'I4aJxhٞ$ҶeL2T @cfedUw"q[:C<>`\පxȧ/j]9 >Gء3ˏbf$ŃW 1 Mh\tqڨ-$Wx2&^\)Jb%Tr~׮$5$JԬ((.C4_},]~#Tna>xɊ_FA=L8ɹՅT*/4f9De8:ɳɴ_(cp.T-?1V(&&Wc-0N*qfhR6;96#baIHk}Q x$l`vKqYgkHHJ URb,R`z,w@}\<K9%)͋Ggm) gRZۯ|Ӎ឵z@HT;$F4U#)ÅyB =x|"Yl<(oP$+ʫmW$3ssk K3046>߾[[tqaq"ڥt_=z۷]HڛG?y]5'ק 0wfo,wZ|tt!n]隰aBĀ,R-N„fALn>vt@KKɌՓkGg cʅ#ٱiLRBL bz.d/w;g0(!#hzNrcp'ӳӟF7u}g493q~B<62҅3Vә7_Á8Q$yi65gHv-=hQ*,ELhM^]65Ӭm_d819N=h[!Fuf] GZinռ6-dצn^INdQs aՓ-ƯtUt 0-eb3E(Üw_>:n,2mNO- VN{ZVsj׊&'JQF[O_`-``O^46[}Цɹ7.M!ACD&rUŹ?53BcJ4~fN܉8qA7} ֋+w(\Ė[C%Q(eWt#=mzjʨijho~'W:IMk HSULq=VS&A,1Bi)aSqZ:$Qu{BQr]?"Q|ޛ :!zB0]E$4@s=v00D~G ϤqC9p7J@^nیPMX@ w[g6?6AQ<=V Niaj:li`&%׈z MDjj".ܽl,{ w!:9 <耄,NN$f%E)t2jU,!- p:V1tQXF a|P Ph,t\~m fوi-8Q#<~!8& ;xCb@@ jCx2J #Ј@G: ưchiDbpUf8&+jZWHٖ)Wo4},D|/nO̖"Dh/^3Ok._:rMLS; 2Mʝ-\1ƦG-wү{Jo ]]ri,Xg\8FPNd-͐a <2QPg W/M߶ݾrTv4%N"j)KxH*~ΊQݦPC+521޿}q*Ā0i[nQ6m/A}MeWI,2 1Z+t>[q$={G_xw姟멢2:.l00ʄP[ٵ&frjLrCT4\ RʣEvKigӿ^ROԇFOe\uC:C1Vu{~rrRWBwDc{7_ҟ=c>i`'f+t RoXYQhs؉̷F3?O)CA'vIНu/|_sIulF6R%0&*DROvGݯ/KقExkxzXٳ嶊R>> $/Ov"+k(eƟ~rKY;ɒe(6 Wb|KU9CPo˭^D'~? 428V-)h`AԵ1X=MNg sK^q B#5+.ɻt>:Z.Nw!tkXX}0hAPBÄ!@cl=?XGQA A (LP P AL7)%{z( [ͪw6ER1h)F3j}&wWoL E684ZgG#n&z fp41BmX>qmwt %sQCe&`P/"]wm2E ۷]G(i 鸮 j[*aA0G>Uw4={oX!5',^$?:EECL%P'FNKm5dzl}! `p<]ZpDŽ\S  0Z |`BBG<ar"`'' ( i` iy- \D}HxQl@04, C"hmXTe;E4ő]Z.N\}o'C928>DGES+VPZ '`zz*tv-/+ˆxRӈt<7š4E U㋥ ׵ ty;7LRWH4- YL ʯOn;i$'ǕãGjI._xtX9A[Cgyk'P[gۏ@ϴ=?r(TBc,މJwf^5/OQɆTSd9w|}%eZL!=g#'H=d[m) H1*yvQ!}45S҂|Cm*/μյ[>j=u"99'Ngn K$^",ͦaw(A6&bl VoQϱ] D/k@\+]KPX^.bd, L x3?5iKtbr!BpjЏD8͘xXA`#h=ӝGÅ2Z젩L/|_)!sQv~Hfk,)՛W3V=DW!Fm<ˌq=)_^#JEi!YA AJ c^xq !@ [F@ =t®a>y(xø.fsrz$=ʌ:KWuzg.w@3_h'> F;{+0zgZ2+ʝQ˧JtpoyiC<(0O\1z08+Qx[]fΤV} K뉄3j/z"8aRK1Sly˳L6pz2)8v‰IKne yfj PYHd smA8dTJ9gCF/nK<&8V!_Ib(N*۫,Y Q4(QCEA4ۣ-7֛ 2F`#E|,ۘbC9! 0!d@!XbS2"sX** WG9e"&}SBn`1%bOčOc)vH?2m G]r F #nRIoZ;ݪu턗 $S-X淏QHᣗ[+ /j3f3 n/g{8њF͋pݚZR?x|8LQ0^۳`ݹ|͍w~XGVkʵTJz͗"+u 듽άkB2_%f .[l0Z69I5ӲsdF (ObmIfƝL:ٽG3n=9YNgJF: M^\@FԵ7yo~gb~7u΍lٸ=c2g{-VRb߀RfGWkEGI~>?\L SI%i}]7.zuWS㗯ڭ*ⓗg9\ ƒ?¨>%}7wJ5>]N\~:7y;6' '*/^(jJ=[0ŔN]}gl㸶Hƈ#3(cݑty1l_^3 sS,eU3Jl?H,-y+h䜚٩_&pB( F E![Z2U~0zgi^|m}wgQ/ԊJpJrvּ>2տWƫW]RI {w7Tѫi/fr{3Qʚ>w6E&IW}y&l+7wԺOˎ[,r1n2kI5,LϿw︜t[UQ~j͆R)Vmq`泊P fox~|rlQ]ˑX%+i9Q&/\|6N^_9 X ˧vPŠR*)J>sbeyv[Z6ܩV⧔y,9׻{(- Kz/_|uzkL,6yь&eP> <{?ȽٓOlg޵ ߤ V3[?tt1Y6? 1 oQMi:E8iӬiPvMBh S7l=*8Hvii w7FfjZB, Z,p䅘#9B}j҄&W1iiTa#1x׻ډE&8ʽ~G'OM*nا?{xR@wݻ[%bݬt7B>1p)`q0'>K (4w%]ct"W@,G:r30"$9!cKKHkR=H;+:>YX^rq.a}j?ٴJsK cS1Ţ dO0(yjF9!L0ЏĬD<,/b7 v9H.b92bR`(DdXuLp60m! jf7PK!IÂnAϊ<࿿q{H'>dE㊥x}GΞ|mhe+Mow~ ׃pM0u}ԙAՙCs(/N>xo}NU"]ZY,͏syO{0.N_˓Qbw韞=|δ6Ɩdqf2k<Ʊ~nL[vkvfcbyqR.d|ZZt'?YB/˛ N=ĉNYA4,X_zٷhg+ͷdGGFwn, 6q(e!M^LQHԬ _Qׯ6 EE.f[̟;eh{/fd4s;˶@%T\Yq^5͉8W6elBD Sc0\Y [}5c+ZDpqܥ8?E VC/bH*$@'̲hbRifIIb ioڍ pVn:.槭L6fyi! ߢ0iv6W3=Vub"'O?C#d͐:/L@C3eͺz{DJ!6E'az@`Ŵϴ%ZzOv91 ;qRq3yٹl_dG,J1S2>]Me(;,a$,:cFagmߊt#frbQX.q(1ER 0EG`HNWs@(@ MaD@RF( A&OrB9-Cb׌)$V)GWeDR`ȻMLm><3fkLz)5WLN=u/<<:cB'՘͝,Rٴ6HBi憳m:zpܷ,A<=9 5; է|-)f1pcSR^_>\(Ѓ xe!\/80r.WOڴ do޾x= gsCN$tLϞf81{vnx*_os.LZhuFc>.2GO4_IT U)+q9_T}O/ Z r}c>C@lW4:|0}xR{(.XE}ӒD‚0_8[*Tk(jc}!Ќ#ers)od})/ӄʢ?Ulm#^o>.و>Xy^BBB=ȜE/U8<73kEy'V \!͓-6&eӏ6|WdJ$5k ;UF=fˮ>l BDyyJINn$szq́TjGì$P1>uL=\./Ko< M%iڝxJLrwJ3txz~vzao~ [}W(87Vn^骝>vu$ӓɉFw7q;y 5钸zYSA_j8ݲA[k:_;؁WށRYD1G"D.Y.WDQQ {uZbr3?ZG&),(0 /rrӐQpjK2Roy{e^\ϟ~e7V?lzt~uTR(hĭ|brQv䫏Mj:d#Υ@fA [+skM>2}FۣqVڑㄖ`Ś&0/ CJTr}v8YW@fzs$%ԈR#P^5\VWk 9$i@GvO p<GȠyN,CTA8B GNuZQCZ(D6  Vpu 0"Dqt p&dF$ͺÔ5'}5kQmvpd PIf2T.~kʱ;EBJuFlMhëm)JQ3αBGD%_`ٷǓd/TL_|P`W?g}Nh•Wғ:dL?1z{fƥ7;E&vO:% LVn u$ )|£E-yqgQvatrV-oRr=\h[otlV?YPn kA0MR#c4N\ [MLxUgBjw3wPnJVثR#`!~kIM"a4u? &&?rsr㷿_>?tǯ-q:Ue-Kxog-.G`CTi/t9X!(957o^st_z/IinJ)@{ҧ91w޷ob{~(Guy9'/'Zq'IhDR4o&O+wܳ4yS:B;ٽcmny2)T'lr5GO;~7k{-*!e&O{rNs>geѳ YǬ0iP_/f%K4Cs)asQ&ӆ=PhdY:9C@,^WC͖>7ġO0V *(M7ǜ3, $AAtzl6  IqPÙ'OsQ+A|4 ;wAh /fx;!G%سK/_>I9*,0D^EPq(Mތ;8Lb kw]EX> t~f,y'T}'ӕ5 5}0{Nʋ>אTLJ='iFWI7>(d&8phY"" ,q{RqNf 1.HiHFhSN]_!C$D^D(64xИRIcڮ1 , f,^ )fC^񴫆W OQ9ěfiL A61=g't{Qг>_9>\MuehzIar{:R'/_yׂX7Sw&?z|:f028oZ1/.+^=^Mlor!I`Rצ~vQvXL%R8P9EnUSrqiM*˾> ' `hѢw0+Qd˾7lʭ▶:.{ l2(+L^ƦW/.v\NWE:)VcNܲ,UtNag[NNclJ*lqR%aqua\V+lW_=歀 Z݋e V9z QVNIO8C4|/۴2?sj"c, H Q*]ժpُ>:yβ:C&/g#dX;aKӌk% Ā$C$1r׍g0`)qv=S%jevsFpylzpH\Wj`.N鯆XTLd$c[[䃛eJ7 OV1ub]yʝӴ< iȯ*0d>X\\uEVagZh?T6LbrÔlBtB~rp)폨@0$jw'e͢o,e[]=\YXHlf0IqXJؔ%\NLjuחE&ndrcE,ThQ`bJ- Xs,0<7͉b*ťV k*La#n P,Q<"<$ A?GY\U\ @ՉS !mҔ#eę?* G^.ijJ[kf1l4#WU{'ERgfhKmU )fNQ?L&}w3BEx^~ăc"y.2h.@c]B69gd0"qCgښ'WUjUG]|f\b~^Yw: ݣAʑ[u;E!bfmhF\LEQdyV ,? !mFbT#@FрpdQ!9D\º0 t)"'IDqTI"s0Y1Bm4z@:^{Ģ!O}^ƎE%W`aWEj2& é(˙N^! Ab:ײL>_9r.zv=x1y8uGWXӼ4|wgZxt~;N;RuʟtťIw_Aѵ*DјXQWS#,\f$*FӒq0M3QZ(puUOc5)6r<5GjhI8w6 S2o}ښ$ς0gڝfÃWf핥ڜ?5ڻ3ubM"(7oHy:'?3ʼBiXLߠ~v7.եBu][b7:n7uoi_`2;/1^^roB쉥Pm U8?a*y<G:*8 BXM BS05"b; A5ǰ\r%HkD$ـf0$;FHN(F')RT]</G!\ !-MaFlljV]f58"z֟*+qj|VɽU^cӋezũ 0ODJciTFL" )nCV%"餶_kH fURљC Csq%o |l&ʌȍʤ&AkL.4~֔k if"OFP#??G52&^LDބt|,'AˈQ ^ I4%0$I+Hf 0@Pe&XE`Fnff|DfU+FDF*rCv(DIXdeu9`Nɩ[6cR6HaA8{AB=,)ej3aC)EXsYS˃I[JeN$?+ ΉcN]wh}#mvR8wr3fum[MƝ2ip<><ЙR+3(3bZC7 lPORJ`fImm&x X'2_8ꌲ9RXb%Cp G3H>k6n2wg]5Ч'I"iUv^F}`ֽXUg85'LϞO~rc}ͷ(h/O "g?ĚXͼ?ƃ$d*Lyubqv)f;m,\߿2MTt=naRJb0ka^oxXh /W7> >!ʼ"@/Wrm2<>nsFkZK7gױť9L'8l"= ˦ X`wAa\5U"mWlݖfqެ2y葂KB')$/;r8UPp\vG!ĔF)E'!rEIiWxܣi7ӳ`p@ͿSsI I8CpA@Q $w C/u\qyK qtX|iR2φ31rIkb,Ζ8<)Q<KPZ iծ$nW7ұe;p(6xW2׶Hr#$)ŰԲAHJLԛaH? Z afTgI2vu<@,aW cD t?&gvb\bƃ 3? -uPV~:88RRE") /fj378(XZA\婘KnG NZ[uG/VWR=Õ`z 87'[Ew}跟v?:<-x H.DZg̅ɼGGpb9Pky5[_lԡt64meׯo~5Of;G?d^R l_y0N$0%*$7aݥ[k*Ϙh]Sw_}t(ds;Gh '/,^d6L`<ލăںG \P,ί|KĜW0ɅD?d^/>*dB-f!Sye|@RM^.J-ËQ%{oD}厵 2Ƞl9[sTo- ك d8Õ|Zڂ~dLQTfHq p0̙Xq Q{' ƻ bQZ+٬։Lxs#Y1$s4 IIc- 4g9†nL *rcQ,M AC1zNrRPׅuC?9]bBe8'e9>f&aB-?ƙQe Ѐ".5 =,(ty*ary{lA ȭbz71&iRV?_B-(V8^/$L4<0UFռJF11 0?[3š2ʣ +CyϫB#Lc/(̆0%(OGWO$M !t04*}$ j!E8 024Y.ODSkBb WKWsK3uv Y|3" h&3B|-hZK1t>DTI^< EEr'XRsd^'O̩XŋˠX½Nx\,Y+g/1fvʔytcE*@MYbEXbo^tUJ-t\nr-NFji\WZI-շwaur?\^Q"SUSK/Ol M}6=;8Zr2Ps᫇___XMgdj誢Ҝ!=9L>CΚfԪ8̙xr mt俙V?M>W-Ιq2% ͻۦnFOD] F㉤U [yw'~֩p:4u5i`t:i]LއQinT+볓qAYL-2[xmGW~?l2E@M쿡FI!rË'N[燽{Ө\5ċٙRdAxϤTQGtHof_ZSr>r VzςX@e9 InIJ3<:UwR)$¢1 )5.DtW Al>hҘ YYd# GBKdSqwju\^4{vR3+%ǯq?7LǸB!cw ??*nE6JIU(E) FVD\R! B Nf@#Hh\ʮ Xas =l88((E f3D!cpj.3@*xhNlpˆ 0 )ID5Tp0ݶ /#O'iZ gqp^}ĺNFb c;"'Oq5& 龜)DcLqI @QAi&nȐF(z%D  @h%ůYcILcwjP Z~%K;8ާy[NrwR]I$P7= ŠΐcMwy{]x"B!Bf ~DލӀ~#YeV q1ʒbElRx} 0 ΏKywԠ?C$ ͱH9rG1Z 6GYUy.Xj6b!nGN!es;ZFUFG4IDpĊ~n,)7={oˎgyi0b z3(Bu ZvOWsdJKRCkVEYDܮN:VHf2D$zf|psfD^iePZ]X8ك^2]VV+|iZnXVvNmVUMK[t.rb9y3 #R썳7J'rCh/S M?_ ɺBSs74VI۫T7>kW;ـG^0w mpiOQIPo('ltƅg v| c3xIWo<;J+FBQ̓*o@RkYbvzA 0|sFP+2RZKŅb}à {uik5핅Q4DAğ1`ѥAZj0ZgY S%H:peQDd"xiB%$⤅<ɥRzN 3s0gdu][]U˟=!q_8oZmǿ??K^)]wno.ѓoބ \X/b7=Ӯ*rE{8/Obyt[GBci9nG/Ժ^W Q5-%mGXa$S<;J^}LZB}\e2 30x\ْH$qNDk{K&"Qd5I)I3a< 2Ɵv Q| nPq1kA7ik^.PI~7DbCS ^@Mlo˹|kBZc_}9 ,I3'J$zkZǹ\[_Yl7~nKApRɌ c >* bK-%cU/R_(_yHjuG /@7`mḢvmجW v!XN>s Je&"2eGA4xn%Yep1e-XfZKxX g!Q!ȀX) =w;M;weJFUl Q*K(Nza>ixA0&2KOɀ'sՙ/#ԅS<-Iyc/BS N +5n&͈$Mb=,~U 5ケ ˆUi=exm+mF=:LѸ,ђ zwfqAЦ s3#P#T.?|&ڂbU$iV+rȐxi;A?HPj"#Zuz=)0@Qh$n(\VƣQ^@&vHE. 4H;69`)Q^::qp<|gPƚ3\l]Z$ʑ,+ aLj-8[jV463tPq-o޿|s]p^noպ~ l j[-Ҁ-5[l/\AMy}`pz&uyJ{e\M)lG(_(g39gL1-DzN"w7Ex%ѝӿoloUtnr>{ޠe"7gfώ\^lj\+n jVղ^Zž]-rtztpfpuz=+mT3ڤ\9Y1nx)ffW0@]ȏ: 3!ظWqгߺ3}?{KˊKK \LH~32gd|/*2ɛ}CY#ŜOIj+2cX 4cXhp,! *X4r\HJd(V #cLJ''$6\]) %EIxȄAK8ry 0d%&f,((\΅ss}A$B>h-p+,x6)\Y6ӝS+ר&rt帎ohI؜'KZ^\3KPYqS^XK5FhO^\a&3DŽ 8DP!ZЂ(oJIt:%w'u pEj:&?5E`05 ]VbIm:@uYFi, ΃y7aB6Ajk<3WKh}*8+;oFm*zI(rd!qq|)/D390yaŁQTр ABb7ڱi4vؙRlNbTRjJf3Bbbb^ d;^|FzGKhoU pDKVZlk8GZ*‚^Y..J'1xqqm/.Q.wHQL ΤsomӮ*E̪R fofI4v3$@ bc7fb 22*Lʻ{fQmvvDmw>Wv*v56؟$7Ji=7C)(89+ b`#3CRaPd]Qgc8t"ӌ6‰7RܨN^ [{v:;9:LX!FdkjGb HWjS)ZGbS 0 Y7-$Q<^v*3^]+-N5r&j10u(ltI E')b@F8B-q=$r^GT4¦qL$L2BaF)Y$ ,a5φK1mΌN]<vwVS,:x~~(PrPbY\$)k }ahDrOi Ÿj.Я-慌@M$ޟ8My7̩[2Qmac0I*3r&Uϙ( n2| +1'1W];9r39#*d+Q?_kR7$* `0@Tr I<EHhg)06F9nx U8ve.#A6L!I\A2F:/e^r<\"/KJp!#\I<V2OJO@U 8 0(UcS!^ J3og\{-<뫵7UD2aUD&0%>UkQ$gM6 ÷ UĭTנ_!;@nmoY_62  ^>>9P Ƌ9P7 ^T-zŋM*^ӠWlqfɓ_+21$ *۳Ap5Ymy\ii ۝~tA3bJ%}sT4Gre& & srMdAM.i0i]haDz̊%#|$0b`P̨Fg 4~^<$΀Dwj"0,̟,Z3@#~L*v²t~C3Lz'}dt4Mb! ^y<흞|gE*:ӝ#nc5wi}ᮇ+no(W>><^Fb PJK >nTr_^_XV޾Ba½5:VxWO`\c.3DY8:J7YIfKU^XhU 9-DI1Aqh -|z>2L7'R/ b!Sg脥IM! ),ID!aPy?T4_cQ 7&&"E >D6$*cL@^b8Ʃ6 wW=ń$8G6P Lt1N:cOFGI>7=~Q:t ,l\TBSq1~<jɒ*XĜ2!4YK"7bC3B[L,]i0\) 7n? xxW+e'3! $A/ $˫CLe%:!+qhYDE8`g, q2n(Ps< `10>MZ,0@Y &0(# C׮WJFy넉9Lڬηh$Il~GHB@XD>G0xyKxMf7\X[\xyudfA/?YnXZ+{ܶ]pVj9F&o^D_9=dMWr}enڐl %nI+YWg#.*eWs8꿶{~;HY<^} _Jet>)_\~l*(m3aY؜gO~ NYPKyq );{IGȲ{фb%r:lkV~xq})X^rK-C <$ILs,@)vY\XedHM0*Bp44llCf bH`@+&:F2)!FRl9Id"`+4B0AAgV,SDf6 Y Էڳ0 Da!jsI K{O߂#<ދEA7 ף%NYϒ*c7c4̔gD5 u_.h 3v㱑ڼa!"1"!d%)0 /!4#bBh2(t0hR7 :C2t5 Icځ̙`b}P I·*7{>?לxvB5ji!/׊VR O󲣡Y-GÖ,8?t>ADt0)cgGNj{cm2w,Ak ʆyP}؝– Z=1uV)!ʱx؏:2imք7fn߿#4uq5ߓ~ _:9Hjpœ+ȺeH++mcև[u~q7Q82vVۓ@x~U#6^Kqո[,An.ʠs5/j01xx"gD*ihH7@EA;zAMwf ^Փ_Y;0G]住S߷Qrp?ƽ?5R O–g10/-=u}`x^ȗ ;ucA_rWNٍ_kdXsԇ~B᝖Lh'٤7WBbK$e,՛r(rJJ!D jRi*];=?X923I4u82YBc v1 $oCerY!qnEĎ\c%C3F‹QyF3Ȍ|&ۼ@(priПl^4c˸Ln-T͂|⊐k)fx$FR;~8QS(;ĚBbSY(VrzgrՔ0N t9SA&8>Be.)4IaP3rȢ?&bMJ$]!o :~3ܐ,TTrק?Ġ/ץ6? DA)?l\x22MXxvuA+_<%Ϝ7qNj'=[q+*dwN / J )bS4aV9:J (8 z9'Vg?KkC E4dyjӃlIئ п 6`U,qDp6 nS3cMh84e4T3QL 2ͨmȞ%M`c dq’¶4Yv|: }OR@ަbP*.vzzGI( 󜅋YR}9m'hypw*Д$ӗ8pfbg,0E叓M,Ne|B˙ϻI&c^*yG\ @.9 f'H/KM.>,w^>7qĹĴ^\*QP*n, mqxyj>ӽpVyի;2~y|}y+y#׭epel)R 5 c %X4iE=8Q}u}e%iK˩L)ݙy8Zя8k3e21EJe*5޸hYqL]VIV Y v0LERU8 ,/K#D4D?<Ւφ%q@(1r7?G>deBPi`a=33K Mצ.,zkqS1vlZ X EW @bC0 P̂t]{qocUFb m^1R>l4_鴱/.aVttC7Q$ Xpqz" fCG H4(J\@XbÄB(rXdp XJ2$5H! y$ K"^U1 UECiQ,)%sGeQѱA̝Z9My+in_SuTAܤ&D+Ltؖ Z^LJk݃oTwopw7z;>U>/.!oGIš]1s(O-M/bCNϽyBaY6_ 9L#4Fdso ;ȓj\z,ǡNQ=JYTs)[4[yUph|ry6M%Y/+c(_ɅBRdY)RKJˉ"Nol4;}r 2=o4&zߪܿbU,%)ܺyo3;KQVUj9əxߞ)WJK7/^lK!h3cd؉W67T >/7٫k~lo%ݨ~վnu##;[ZPxyQZ̕*/p>wiIΟ*[_ sn؇N`V-7Of,GlA)~m77OǏ2zaE7`r '|c^)[w^]Sxc0jdooFm:ů_}=E!C~l/飏>|tq?r8|ݫ/ݽ멋;euMκ;ԼXyu/0'OzD#:ߪONTȗjS"R4!$R?Ȫ&|2YsN^Cx8ØktcrIm1)jjdO-!7D,;gDǬ`EMLARp'i8 8[(zHm(/V, T➗b hƧj1M] HPR z>&jEüi^BK$·}OA0 bKh*G pNTidjihXiƨ%O`xrK]#%e:l,ΡKsTa0㑞aqd-ٜ# Hk~= @F^ ["4p6hWUTRcg2BLrU{+mBi0Y&$\ËM f= DA&4a\qj0~(@ QMb(>=DuCR12&{HDhG)2O:̑ EMR"_)%~| [L$f^UJ/nM<()~p0i:n?HݢL国i$hW[*t. [_ Se)dkGN֪zr f|d0 \N"rrTP o n,Y*BoZםB1/?tsx۶EA9j\ܞ&SiuM˫ g~leYvdW M[^M,Qn9u"Z;H :ς`|~S 5իEP}>F3Eʲ,zQjz\ oZ3E髬L992⬲%L*w2O߶r^~9 T>tc>y &G~ iPs?wNJf_1/_x#`M[YH>rmɷ/,l$el9^gO%`/ЊT3t9om7O~ΔB=zk} 8t\P质gEIs峋uB BEwrz[͎`XaMdSo{/Y*4osK}ug ξsܕ+4|I`1h u].Һkt.Ԫ4|~ߞώu5Ϝѻ}1>QLF_R^wbur%u;5|&w ~2踳iJsIuEq1E狲8.eepW4$h&iR1?< q=*PBQ@ZȄA% A$Kd r 3H| 2MQ$lՃB]Pc@O|l8 8dAznQ= 9em&-F*c <ACA? T"pY1xgBCuMe1a-?^z 4th_VhxiQ\⩋ ћSyi]%)%08u%7tIY7>E|pr^_7+yprZ_旰/~qPwo G{ARbw o,v+5KI`QwD>&+4V{V~].fZCk,0 "(__ݹ]H #Lj 8F E7e6rzhrr22q DNM}t;n5lKءRX?cWݕ Efrk۹t2O;Aw8*ϯW hd{qŴ;#RM@q\):O@ɬEM ̀9H:hxp 5TWҽʭ5[ed [fj|N˳K ru#.B7tE$u5lgNsIiEPO$Bh)/+ݪo\>%m A}8#PcЬ8[ } 'UDvh|bޏ:'*N' `%ETV&8Ȅ1w(+/(!<[e-%]DO xQ,iMmbƄx jl>\^T}dA cV\s3M+&Wtl&qz6+ E)R@Y{8Y)m]eRu(Ȋ"ci* Y]n3Y>`'9td3P"a,W@@n({w7Lp`K^Z 6FiStU</w{g;V.Y+<$ElC$5߁/n{듏M*{v~nǮy8c9?SZςi{=$^uN:ayCIo8ܜNt4jKHQ~6Rv8#OnkVpG{J8C{=fOϻ7GOFmCAj7]#5j M \pUm]f60t;9:{#Uv|<:=~ 0.ۭaoWf3>zfxKZ%;%y Rx(\le -\tIh;ۋF~^9?;fm7ԭ ow>N7;ƍ򴑃@ޞywP,|toͻO&=l9y՛TeI5IA=s{iwۻT߹j"kmTYj0E٩wdgtU+ʭwZMYf9dqD%(2+A'TDpbŐUY3Y$CrJȲhHq8"j@E*a"72DWp `S$`N/Ӭ$gB/'|,}^8.* ݲ0$#I3IRAK&F!Eɢ$BK /~5!gRU5@W9Hb5)a_ l;X%{6͊0#JH3D1h1X dW S=f;T8OkBp#q ᜓLPD»b1JQ"vR;lMۺ)(@E.QG,i >N|Ѭ9y5r(>D= 0I ),DPAIDSp`qa &e4~'Ŝ $C(˘!*pК[l QdH2;M'Q@d&0M[:4 ESE4 b { }&gn"<:OhUzv|9*߹TVi׶]q =z{:y)glb%B<_,Y\|z]p :itP(H8X!*+k[VuZVp^Vw˃;ZfYmNtzvv? lGݭk?(r`)lI?;v.3|uv6jt*r}u܃uJp@VfwXmY\OIؔrQW{c#'Ղ*Pzmʫ_vDT-r8u秬`+? @',wаe+ͧ4v|O}ʕamx~|myz3:~v!0͵4 B[;Q\Bsyf 2dk9.һߩ| :5mj/'> 0tsvy=?,7/\~&-o[$$94`ʒ& 3P@ЈPuze 4 b 1$9Ap,pL,V"! nq0P@dB@iRe*њ!|8z'.@EfDP|yRWoWOvܘzr)fه߮UYZְ$>C,m򋽄N\0GN P}]LI:MmdiZʃM#l2JSc 4.e-]OL L<1u3z33*",Kcߒ6mZg"2.7${7ӯ.GNvK~jK}DˆZաN(. H+؋~C1*򢠿Dbդ_l$/GܕLRʲ0p@yPlQ# O΂@r LUs(iТ^k wg$;WY*^&@ʥ@qDveRnzf Yaϥݷ$jBzcW}QJWJ?si/ljbݺ~%1"m4Y_R8"׮+r><~E 76 Feӓ<؛-vsô~|zV׎ߪMv0rx<͂Z,Ւq[%XoNF棽勇uTlF3W>=|J$b8p*  :HҚ)ɪn+>WA2^$_?fcXȶ^tC{f4E;E7\_:=JI[s_ !ˌZ\ 'F%?!vG$+eũ'Arɍo^)l }~`a-ς=V(q) Y_2`ŴEmz;sg9|37; `oު}M/T{'DQFn%WUS'"ZY-.)s(MhaoF0M3Hd;Wn{gaZq[ZyfѺT_NY.^8Jy:"Uь=o>9O~u3(wb3\tzfx֖QBp6jO> 3wє %z{'b_\ MzC517͏$GWdRgQ1@dMѠ+%np[;%EN =2uz=o/l+"-b k:; tY>%[ł *?U[dL!ƭb5\$Tq-v'DWQP_߱L"WdmFظ?*h|xTJNc^3_m߃U  NO^]̕K,ʗu2qJڔ˳P:s'6rBxV76cqp/Knֺcl(eIݣɃI5Fk<=h֜ų7`ח>_YzGW7;(D+N8AuŗbJ"TIY"/<cy xt2Q8`+UH/023EFmx@GoΓozݫo!n<Wvtky#E?~[ԝ?;9 ~3Yv3?n"RI2dL$f!D͏GZ Ӭ*d=ufVHKnpC!-"ŌBӬ'2\,$ԌlSU/HSXJ̴ eL+0a_:ŞDG$U Ŭ؉(!8oV@!YN#  "d,d)Y-P(c8=¶Sc!Ek' 2=Eό Ftq@EIX" v\Z krÉ@Q$%qLFȠxqLܸz{vsg"ƛ~pr9u_]/׷1P]әS޹/y4ju5ub%&gNQҤlbjI˺#/moq)WV}ۥjJA2RgnNb؄5&w?__<9@-i eegszePTNܪwjΔ5C\_]d9eZӍ[VC&ƕƲa+< B׿J9:GNg@Z^Voll;t Oo*֪u)M`SYRHO;?+' ]OLj9m*> q"KE],}Ժ3*_~Ql n^]w9:{ճD׫dEͲi=)g;`e{%MW/>X<>,|jV tM4ްe- ^=6ޑv37[nX0UVJ튞ǽy9v0g*aX#V^'~fTW@N;^u8}i~C#$>6rU-f=>}oHW d>'m?hh_zY-(\ ~Ii(so&@բHԝ:?={2:Fdꄣ,/"; E`X%=n|LF6K*DziJ,Y+dxE穐ld0O[9q7'^b0By6,JÑ ҈Byd"@Kb4yO%4Qde@2Ib(*RST*BNxB|>c/NG/#VE=HaH4(H #53/R{̜ȟ 什qd'F׺^ADIJuD]f+ Ԃ E k"ē2sapϞ۾ gY.^FWN s1?b`QЊC  +rQBvSRAT >ӫ +swQv=u~ I# e|I奵i&|jS4\o4_q%̲f\JյJI.ߑJWEN>mXe!0yo~fys(`~4-K*9kM ''^K+2T4ӉL77*Y%ZUjWn;ŹKw'NezJ-G$8@N z{͑%5B}6 s2g-m4cy5#rXO4/C:4y {]dQN@zͩp2<5ō3t@Ym['".A I‘"@k`0A̧.f6q8QM=$ ~@B3r0VP%SfjL)0E͹:Q0R<ΖP*҄]%Ir)Ѧf]\vG).69iPoh8 -Bf@j*a YOSi2hsEp*ca̋3 '[\h.Jo(t8si+",C#ē,,A>0MyjP;s(pܿt fD!e1S$`1Vz*jLX,$;z,>j?3c0X $Wܠ!) *bW+=Mߡ}bB$ILLYY\oI2cs~#|,B`L9B<\4XP8"&{ t JT勔eO"lv'2͝Yֹ9 E#T%B\&{<KE8=HY2RK8%dNr@vda ̟e5wYX1 7?izx "s}f :v'a#R[i&HWY}Xۥb_^AU&Tv%ϕ_$xae\F%bZShׅ6*|Vu3^l 'G]d5㍭w49X ThQJ\_<::iu-\靽]jk:E͡\Nb| X{cV[ӉdӋ,,o( %JZz\V_+\d~}wo't~NjuqۅRvrqSQى^yq:]ƦRXӃWЃӏs j"wq~`$N$‰[ R5ܙ dN+b\=\L|>`V\yz80ZMX$ß^lh* YUco6> R^=q03Z%]Ck3x~uڬU{IV4{deP.i*,xIo2s@׸ۙzn;Mu`R4ʉ 9%hFŦ?xmtɚi-g^6wv Ʊ{s̻Wyz݋$6qq~{cqыP{RJ9rIyM}hYmJ$;-"(i JqQ Y+B,{b4YQXos#ga@'x¸I)XD,)SAPTD M>EDl=dq"DQ8ɮF4JEC4cHW,L%89dVX Nb a# X Ua e5:w_ 5x"Ө2]6sj]m|ӅрB#M3Q5i-ՠΒ<:OX4bcQUCm‚b3a{REh3rAw-_4[zn+eVY*NqT:}<|^tςkC *,(.hri1PCiIB)"0IZ9^VKqV b,3R-1 N$1HltB*1ω$9BENfnz~"]i\r!"6 EtEW1 kDKf2(Dqx@GYS?&-zoM~OwO._F/y~hӫbݱm mE c˺7ރ;ϵ UjwgIhO9igag4?=Jf_0P{I2Q*uTBA%{Gp>_Ӏ!hs^:0Jc#W0I,2E4Ѓ|{+\^!G1nM-i.5DG(X/=su8>п`9"xk7Wom6U둙Ga|.~rχYET]꽵*28|O Hy50m٭[kDŢ_NS_h-.Ypk~To|Q[ΆVߠԥQ=Jubsrjָ9+v}Oio|zq̕Mx9CXıe)zr){~jYT:MÎ˃Ӌz㽷WÃ/R= ͍nAogS㬔m4n_-ŋu'55W2̞}>ɗj>*Sb0~/;+,alhRوf8e- =&0 ?ɔly&'8Xг~P)Wm.grPI$) )EE&a5c=3ޑIW $dP*& tt\*?@ t^|ݔ|!~upH2X\;hJROO%exɶi}ki%НmKZ\ kK4 Rk[/q)e:"IPdR=y: P-_e ;H:5Jw}iVL01$ LXo>{]x5:/^u[F~MY- =.fQ4Ex@=4J>EUa_ț֨Lz3\>ىTM`Y{UϿ0O<6:|Wo62uG),>6d~Ƣ0zYZhaDL6ŸSll:|4tW'Y{mU(UNڇW0Np]C=$+]b#bL1@T*g "ݘPTø/,NR$taY M}e3IH=(TMSB?nVR*qp$eE rgױtlPAf2p/ ʱa)F8^\S1gIdŏ_GaX%P8߾uXެglЃ. m^:zmSv$,*T5NrIj'kκl OBa1 gZ;&;ٚlx=> & qRV+d}Ml767;;tQr˵jS"FsRy4#yBtzrFtv몟QM4UΗ*~CVYDU9FCF'otwk}%, )npJm39}@Rty2><ӯB ?݆_bXͳKfY&y4 IқSX3͂v{b[w6kZRpXЕS*̵ڕ3amM,D!RISTsXj!Rfh)W:vQAbı;ƑD.CA9E"⥼,I%k/U$ y$UJtEq"HGsl+.Z0xbsz*:V\d+4V+oVDl u͍j"l^[_Iҕ0ћ0HàQ7ڶ)z,lߏ:V8jzRF=9zq$]hW0Vg#9_Wbx܋I7Gמ8L_Lf~l d"^8:ݾ1LdPv !ztq}~h4]Yr[Is4M0(,"&DRbRy-`2>I3% C棑PJ0?zV<_7~?=;ճȠW$ݘZ|89 ku\R&j4+wOJ:{xSojY[_*c)i*ӫRNK;?nqo}i֒n*A(qӯ/ۭf0 Ds}۴@0xSrm܊w+fcw[JX"LJx79_Oz%~Ãg㳬iUp7l e~+[r. T22'Փ|+?y:Zٓ0A~A0Cn!b T/7t -;_f Ͳ2E |e>uKXP4HOe[BRj#tKh<`(ZdˣE_tm"aW-vgJ]d(O@)CM]B!.p%N3N5dDsnJm#M$uYC1&D2G -e$+G]F"PS4WL펺8eR_q&Y!^ʚPRx٫*ju<,RI5Qk( 8 jh5p>i *NE(,fQB1BbPt"|\U

~u4]kUY7EVo5JMZ_ olml+J7\~^YNӃ#)v7o;Gy8XJgXYocBҮ "C&yg%qJDnJPZƬU$H>O͂y2~hZO= 7o@BrsjjAovmrOP^/? Z+vTV| bu(V`S5Tˀ Dihd{6pѩ6+޹t<?,?EJ9UMZwu+ĵ{ߝ6g+@mـXH.InkvE7sao~{*N<+ɥs;7s6]F톪$HL ϟ>AZSwwݗSڞ_l,Ͼ~~s=EJAOl |xެ_=UJRb>vD0_-΢!yMM];|:4)矿 ๪SaVW_>+O9K/_65#l( VY-Or,c͘@+kdWb2oаpt L=|OZ)P$ZFK8С)hϋljhbp,ø0MD"&qʭj -3`d"~.Lg놔?IEb4F$$x20Dux\q5R$R~ӎ-<[>ZݟU@gP[1?MK|jEO~6~ U˽' .~.O)IhIP"msͲ+XcRSE4t l*(ӄ%lb]S"_1s^ E@a(a*ʜyyCh ҩl4}z#Uf/y//pdҚE!YjF1-Dϱ`6FY t$tܬD pLt cQ2/HX~,+TSgR|p D2^Rꉼ(}y] q UbJ:<'4:= iY(,,p,O?69AtrZu#Lٗ^{®W{.hO~a`^yhs洺EνF0K9L;xjb6 :eI]`U8;m=B2׶F:jJX,jb)%PJ.6^x u+%zx0ǃcsmg}e_uʧGW$=7(JϨ9cQ\[qLeU4cd_il#[;b9d_|S/pʫUrE7yM_#3b¼.>HgK6 4, c1L S(!aBC$10C$JqO"CH82{Fp/ ͘QzrQ.6`f<4yGu=,2=pF*+m$&'1L %7V.: BSCj"5ekk14FlyAX$PJ/cx 33x% _e۪.qnC(Sd.WR?,2; D8XXX):^PrJ Iq^S0BFLUrITD; OiTEpڜd\: )Ѕ;e4nwCl4=?a>W얮"?c)Wfְ6v\yu2B"Bz%s6?#Q(yPYP2$UVbik$<ǧEZP-2cXFf`k 5 j4 i8zgg*JFlm$*Z~/<3[ :J@yoH?/" mU ⦿Ɨѳi\3sHydCھ6h9i$e"?;<a9?z[qjYݟ[l}o9]й]m8=JTg1kIK]9GR#7smӈD g4]zpˎKNA"h|5Y--; K^R]я\%wRQBV!Է/[jr^,WuRUT@bu!l6'W4Huo=U$N396:Hl I׻mn|XώFӕJո:>YΕ Ŗ. ,h1<ľ#^G0SS~mVgi՝rIVSSQ~ͪ|?"ɲ>rdk3^^X\FP0B,܌ZQSlpU5͒iA S8lPdY&sE z!JuMs_bjmX"cL棊(k . Re8Aڵ*:yC߃@2Yzhhg@72t$fPKPGiA<҄uÇZxi\ef DJ{Ï" `eTr$Q[J#x*)%D Y.Qu{\A7MeMOnu1"eYA5MqS !(/ٝ 9IShɟF)"cb΁4['S m g13 f a>Ew˘ yJLz!l(EZ#(" THk,d&h9V&E˪sIDbS|20f mi ]KOňk;͕<=ܜLs(N5_Y"oq~8}D-.@|jw7\=^_\fiI-Js\G6n[kw|”J2vFMO%.Xz 7EJns$2dzgFe@!{zr« _~rܯ^l?0~͋8JǪ e ÖlrY+xLz+/} C#{|V]m^>yE6oj5[ȮLl{/+% {V^Mi+Wr^=9:xr1о_E LeC /|Cx^O'&dKOvA8y}7oVt>`HR CFwr>νV5kY*3W6ٮ![$N/ʁZ}kk+z2 ֊H"ʝbUoOzwKOo+R6WYha_b>>L~/SкY&1}곧d[0QyIJ nk[6~vrq8FlnnXνR:I7{|7w7k7ou7?Xx,8NꛕJn5I}rxf|pv ZuwwAKHH hn,F9)Z;cV.mʖ1tXMThs>< 1@P0%Q""\9/8MK>bܶB[-BMQ.,X 2D* B"P=GB  JWtR2隑I/(?ڒd@@F;GDd^ +FPM`|4OA d@|a_WkB*L°9 Ddڏ A h.6Mz4ⶂ"@qL)XlX,͒1Wo[-oI֖yP !)c 33hl 61\~qL] 5]ˇlmÖeߤ _p-˽"6, JsK[F ͺ\qKp?JRզGVjX*VĀDA\pj#И-ZdW26(ʫ0s#48ZZ%PW=1K}[N8ZwNMld}ަìsO +7V~Pd"X~Oeۭ%.{.(t[?/08:v ߿]+3W@Q_fnQ4ƍh?}$xn qggu޸U)hnRw,5o z+fiMU^~1z:;[tM˺( 偮gx t+V?[p6F蛑!ȂVZ|sQUU:I3$i0u?qb2bD3~*na1Ͱ4QP2 9#TTRS e6rZF)c, %:OǑl8<VNfA@ˈ pYB0€'0D(LfDBTBRQY1fH8#ef2,*2ksx2ы~ִhYʛ0 35L I~HC 2?*]+#VX" kB%94HJ*@yPcUXS7Kҫe(i{"1Q7q AJ#hr'LkUK]>牎VOcz uET4)XJRK-ws3@H^)Tޏ%UU]!,"JnXZ(Ϝs˧(X44HN&&!1X̃657UKK$Y upCGΪ,Uۻƀ f>,ؾf +g{** ju~#~|5TpPg0xe DSIjn~ TR !N*!Uc8!APO8ȇ-uFF4A\T"w `FI9ER%m9V]24e{h}IA읕Cp+u}((*,"s ljaq$⠫ "?eHppOhTBDHk%XɖA }"RyyB7Ĥo 1Xg8TuyEWTMZKNme9Q/&F)hP,DZWli &(FхO~=-7XPQBjz~ldX6t] xH^ܒ-Y5 ZUq4;4@) 4wj=?-0UݲX,Y|@,׿=l,!h/t=:QEOW+ oC/mڵN[UB}[66fT"d>c?lfհ0Oy]~#]*փy|}][O˟>ݏ>ֽ[ R)Fz6{k?h[ɣ(PCՀvfY1nWaKݾy*_vX`_+N|&^i<lN 6ϲWHv@~>n7vl #NqR}ru\lHv%fiۜL ;R"b).& Y=۹?$KbA7! (0*D-LW4[V|W*BB o86շSr6ث"z󘩿쿏H $E! W岀` ]4"eHDWaYoUQ vUgay_`*LNJK@ 0ˑZ&bIR9[jIZg>SMepyү*$`a yC}.X#Y:9hcS X :i;FįߠBp >_|$hnMRvJ^"EUEaeWIWbdkaqf̔%Nv[jڏΟXx^Em4ma_3tҟz- *TEuj74uʇD[kOZZUy1\͑Ч9?Be #QJg%$MWh=t3i3FUv:]P0v_R=(yl*UAnnUeU<.olH*Qݭz}5/ _x7O~CJP0Y)*~a'Z UGHתE}8A ( ϿU*|}x2biΟӱ+)qAJ=Ǝ E"__<KA:|uQ<'qvIm.ܮpEs zTSZ4)@rsA5)d5#C? ;Z]W](Eq9V<@Sexɘvըh]h#Q ƾt^5ܚ|wJ&-V'ۚSm6vSI>Z!7G_~ DkwwnSx=prZoNfzbjd)fÊ2f(?WeGywj%W'V?- Ek&-]N!Qul]\ϖFʾ@{yEIH6nFb!@/OGsco|^GC3CqENVaցtR[stC7t\Xzn_SM .L0 ,`2yK } E_X(f2,Өc"(rSy1$ry*䷨J Yy4Ee \e"zㆊ2P!fEQKkNjDҹ.dki'&&R(yGYL8$25d Mt2XM))GJ0 ^3":Y%I )Mʃe$'dJ$Yǚ)B~(Ƭ,"PTyKCJplw;.||\M ojM.ˁ{.lV ]uBTXf(R:1(JhĒA$1[1 H",&r[I"YzT2clKk2T&rpy%ձYQbYj)WV3B\$#K/CM.9}"U5#Ș' MTr**CqY[T[n`Nh\_htD8?wR3TIE[%œ=?N2`QPmCriT4p5}7y~>|zg$Xmw;7>DZ'٫4P"VI 4 M8և[ ͫWxtJ]ԪUyxͷJ,kY/ەVGXKˠH^8U[b$7AҼx8cUU*_W͙ntV4Ҿ_SE~߻+5عwV{GjmtxV^OGOm.ߝ*8 *AC rPNiT8ώF?5Wzs^q7k{/xo^GI8N[hאh`Fm+8d$p=zp [$لON9Deo%&9HDu)(x̅fmRX($#3IԃB*zY`9OjSe G)S+*, bI GUHnfLs)9c$aN P rȎ'D+Swje3Dfp[D'8(_z6NHU&L[&$.sEF(&E @ BbrC0d$Ez7xR W q +B-xL)$dssHGZVX:| uf48uޫbØy4$! [LYߠDD(⒛* .2ADynP%$Cea@Hm^΄)L>jҲ*OPEQ4CUR'&, uYbA6fP) J* 3"bS4 oY^h ʛ-Ńb6@3(q$ Ϋ EV\}{X;mk6[j|jVwY;ie\\}~Y |϶Hjz 7í} sh<{v`΍{ ؐ3۶6zYovܺߥvA+)0ڃ\}˓oxy`Cło;fooq>{ 729]{tY,rwDLʂZ EV`ieb4jsuX8]((bc雊>íV%=hܭ2]խ~.]vj>ʢ48)ш8-ej5/n|s)q`.rbM NXR F JʼI\ɧv^ˇ}~ýmņ>f_}3gɴc iFEd)ڭ[wMo|쐃~Z3'΁ig|u}(Y.͝6b\vwfe5 (y8zK5xW72)9"U[oVU6]r s篇_d9'}nۇR++F[' 4KdB=^euasWr߼ueŊ j޸wCifMNh=/`JlךyXZnx9'&jaWWĩT 58i?ٽ.r*}wr]dkبl^F5+PXfksvBiنTH9Pvۑ:Dt5b+vHWw6Nm6 fF m5Mc1^%XSlب4^ WiH>:VyT ToՕ,a>=&puU1%=gS_;X1 =Lq1jJL^U _|wM; GYdڻ-泇uw曼gxJ<0>ɝg*/¦i}C-/=6e|mz0ANHM^1dg޸Qg5T!j5NߜO(b2ƩЂsC[ƉrwUwggߌ?>Wv|$9.žXvaElfjz[¤~ $O[8E MqΚj|AڏӢѲڦByzcmcDӦӳ}>02!V]5kʊtX,_4_Ҥ XH Wnt ,x(tuǙR%GjsőÓKZn394aga@\d%IC^Mت(3N"8<MaD"6UZ0bCzRzAS2 ,;J(;8يc&Tl(N D0Ese GY&*EU*Pe'4QSTodpB~HQJ΃%ᕡzBk P d?*/T(\"@T}mjah'GaL{w7 lxGro*J&be\Ōk+?U6b̎Soj[La;=yR]yz^̴_, 9vehIR(x9=fÍjbEiui*R=nng4So[ޕ/F3%<, Ue`<)ėܟƏnaf2n]0tK/ZNIl!e,~H斆6pT-rr'Wn36J} :忝soˣM5>Z9dWs[0 s×+)e.hY`ٟ"!w* `snlAwj6:'O߸w0Z ^[s?خ6\^L*[w;]WDr <}.ٻO7v}x6oWHkB.!%|v^+||MzE[#_|חqiYElV>x]ϧ>j=rCmD8Yfif_Q*Cd\^dnb Bʾ\2DB05 @JqS%2Z@L2tM&)Ay"m ( ۪8)7˼hH1LqyRb*A$ {d&9 9I$ 0'1m]EdXtB>eGh mKuj3bXQ((޳T.L2 UZP~S!GReN:(gv3d8!EndA\V)Sp25an4@`ziMN,m L" JuURSvM`J:Z"# 8;@_aT0/cu]+$W-2%XhRC7 J\^ ¢ <-1&DT@((iLO((H4^+I>2K$}K,44TV%ebrmi%JbRnB*:ᠼfAY:׷: dTcGDKI$b`9`6ϓ,4M0j(Wgjm9;;<"cw S'Ϗ|qOB{4UtH/.&BNg֕ʜmkzٯih={;~?*Xҷ^<m۩V4^CU봚ݮ[R$޺I0V~%Bss9|}y\\}-h9yMVij5v y6;HQJ zDwRZk7{ݸeˋqvlIe_WVkնGw[;?ѫɯtY:qsOYpVoɛ4q#6{;ҴyT?ۭW5`<,t]cg#Hs}-fN_e7֔Ӭ֔8\'f/_<:?Szzk y1޽<5(9|.JVKh7߽M'-1> uf"ͥ$-U.2ޞbD=+lC8oaZP]%hezvxN  FxqʑCsvDG$ô `Q0H/\e < ` GE, J7H/i*o(3i{[?_'& dCbɌUH絊p6c3`StMqsIYII3PSk+1MQC %^iJ=|@1FB , iE8zxO;O21=skȔV?s ]&KCvLm*?a!^ VGG;]E' ro@>^G9L<:L8ˁ#0ÊQR*lTZ=ĈbZE,(mpB%aMu ")_T 6L5(@ b-%ĒD>@:5X&f-׸I/IV0g<@j"`4+8VK?Q^Ύ>WlЉduLKR*L޿yPC}{ҔxSԿM#sCs ㇧*p%Uuv_Wz\ճXv7zvרu0SJRUW7=Lg36Sn QZENBGT,aѭ-[L;a>[/Հ)J(A~1䢨TŋMYT,-#%Lm؍(#AeQ<K,9*_h6wnٻVg.h,a'aX}qq-JOyVt"sg,[X`];ֹ(D]|AI)t2jiwqZb۩ŶX_|$U>O\wwzBϟO?SC"+l[z,O^=] ƽ۽0/w yH7Êj=v|o5jZ UvUSB[~f~>E ԛsDلWȨTƶR]><ɻ>]8+F,կsw?>pYF7|5[mtsq 5Φe,`.%|YP0)x};[ׯ0QJESAH4IkKTQPf2`BV SE^de)HO*Rќ HR-@y> hSZ1 +d2￁QGӬ,LkP. DYsXקƻTB{Xu( C2U"GYiEƼ,J,D i&0BΘ:&NWϥdqHYSx'$Р.Vʵ=oKτR 2גd]IB]=q?L: ُ|EN-y:xzNj?_~7+T($CR4I%1r]/udBlhA!GI X"*%*e9<S" m*K&9gb.G dBX_$d)͉YJ ,Ҫ"䴚(bt #KYAw^8;yEqv'foޮ }sh}t9[uZݮnp44^=g_݃^8wE.Fr[JfuCxvU-6nW $gvvWc{ 1)c㐩2z=Z/khKɵTJbfPo{v϶ ڈ0HgÇ͵h-yM_Siu]cxfou2lVi1}qږs9YTkQx1~}.[~[FKCFkH=XTk[=Lvx\w+ͦi#1yU4l^;?o~v\UյX5jRhf:/^DSQ7 't;}h7nMh7>_u"üq7&~Փ)uK)nf\9Su=!n^_D?'\3 a6= }qíE|f7lNH\ĺs}WMq381/vw>`{~L{?Vmal[Xx:@tv0΄]gмY,`TxGeҷg< 0h EMC@@\QAփA*anWB!c(=SYXVrD4BR$jj}x"OJv+(&D$A[QW&`Bea11j=(xX;PEgTY).֬, NBX\YL4 MAe0QDž&$SyƬ@j Pqs'0|WrN9lə9 58pk\}KK/.F6go7Ow:M"PyVzbICA%}*.B/*Ds q!I#H* ubfWD+tK[:\C"HG "rIѼPGUlPjpi J C%KayYMT5ΕL#BUAu$u0X! ˳H*Liud@馽 ,1 VAyR ,WlrV_/bx&V5t~"!kiĶ|8Nw?tj_,Tm_nÏdgk;ݖݐH5𣣣.T[;5Vi+QdK+zhv?ZRy9ϕf;ftfW2!]ʿwg6,lxeͻςh~m2MО#|,W%u]N,^vǠ^|׼+}5x}QM ܔ>Ey(S%lE=ԖB$^Huھw.Z4TNm2M@ֵi O##n;&W3[7||ѻ;4|Y^4M/}y./[xª*fVʛ8SZmM??'"͖*oEvQq % 0,)$`taWaحhyFK_Bu$Zi 8zxVܹ"jmmKu'2ho̞=Midy`%qֆ{rܿt?|ě$H|6P_? [φ19[O~Ea~j{*MC,kiV3p~nh5 Q&uZfR8b*qAa.MDCb ZH҆/(S9S01ac.Ub3 õd,(qXsEU6ue0*5m,r6K.dLm$X oEeb1)GW$Ǩ2F'9m21^`HTY;ٰW3461. ? 3$"=ꩿҍRH$rb+zJU-aF^1*v%H)jC ~yh]fW҄+."yФshKCOY%s-oh۷Tax%cip_톥W!5Jb\YDgKD3MTQJL:`QCTʽ)ZA0E!F(fB& /b ,Mˁ+bXaV . TSEJDH P)I@:A@2K~@IuV@(H-i(5׸v&t& B/5:Kpxl"\3qz,( 9hE]oD+'rn}y<c*yNAyo܎ܻտֿ6j|mb%vn] ъANj´mWc}=7!}O<1Sb K]wښY#f\-,~M1馇Ɉt1CfM{7zڝ,Z-.Wi:QLoUbԛVme$ܸ{kd2^SB)OvjrG6хqNiժ,fp:bZujT[-I'yD OD:nU+$e| ./xI/t\Z:mRb4?۶$Z@X=@8rqpVer4wJ=S>Q.?a%[n96Ԯk?&ɛB1n W{F :7 &_=^sXalTfUTxn:z YAhBۇEq`wo|Ÿ߮H/~~1̋* OnuUP׷L_$ k&qw`@aw7-@\6;ϒ` _{75K^+JQ/c*' HN$X!A)BbיRmkڅ 9YصrQ.([\+P_1Q7%"*?.Cs]#-, {_7 Sh n n o+s'+h͘XZg!ei&'P RHs%ђr'#"IIEuSC׶kq^O]qߛVe6F fC.W RD=G/)ؐjc3 4 4ڕ7 \dWe<3|?WA WxՇKM+`n8 S[t;hIM)69WĄ+4qͳҟSUltNTV5[)Pi1ohJ.`;cEf?zTԔH C@j 6/8.vԺyOI1T?Ί,JP*#b6y) R4@], | HMIN`vNzjݫvbyE\}ewY8L/ZEKH,&,rVEٽo|;0| /:l~ ukn Pl_Mϫi r;eEQpE3H͐޸_ uxKPc.F?P WH7_: 5p^1@LVPcRMǗDexO)^p%+ٛuuoj92WG~90kiU*šOQWvnyWA_V/fUN#Eli7*밧[Lr% L"Ϙ˃j:oq^;fA4׌̳'3-՞Vu XnIje ;(o% ҭY8z:V qix:XA.'ƾIC\Mb6ÝlG^R9*Aŗ1+MKoGHj/RD[tjQ#ĿqSAr9 R^_M=6uj'vS**dD [~cߦU.{r3k-~//4ӽx1p_ * ˻([eG0_{ms6ԫkW'cqh;=t XnJ[PyvZݶL4DIBh21,_'7wb$җE<_=mUy̑AE ]QӪ%3kqqZE kfD,DT!r BH oҎIK4#%DiVD(2B Enb_H<(]~t<;@!2X-9ƮW=*Jq)H6m<) SF99$-yCIRC͓8ɥo(s5j2y=USiT͖"I)$L@r4)P/PzQ4v{qT ϙnoQ1@Yg$.r)RQQ-gCd LAq 0plIO,W+ -"H/ uEObds9_ KҾɑ%,xZGA)#1U8&c8+eQ}s%Yģ4!2@Z53̓3/Sl$PFKW+_uogǫ.wWa6,m}\eY&Ct9QNnL/E!Ҿ/voZh(ͤ+pfČu#\.$Z9^}yLwof׸7UL"KwhLZUOW ?r4n?\*`c篟.e~v^>)}⍶)r)h6> qě~5_dw8YRTގśyx}Qj#VQ6Mhtu9-uYcX+ߎZVbHmK6͙N?i?Th ӥž"pJASU^$Ed ¯}iq]J:7b,u8y1͢S VdA 3TK E(ZR2f  'H]U+JW0^rA,:BqK}BBl@, JUϤwA@55^g#hR@C JtFb,+f5u`r0U8EDUn5@cha)"+QN7uzy 3$銛/")UvHVhbYℚzNc_q7Õ??\ݑ eHi\lZj& ϓ"$TCP( HnJXJZi qV&<Z9l)9|Nug+fLU6m#Yޖ&BWsaseθ4P%9p8@:cR&QU(p:2 Y&A0]<<s)$ts*)ȫ,qB-7w EKJsȧ탛*_xwv %U:'k86jލeY ΰ}=0xQg(X KsQo=\%~?!('%l6dP%;iRWiq"v2_nZqsΝ-]+IrLTj^/vWUg}Ю*y8/#IqsTN+MUz%6Eq-=;~uݸoPvV.:-n,@GF%Hz2fe|~1Ed4z3Ҙd1=#''GM9UBHLid鯮!~@5-Uߖ(c]jpj.34ZǍVG~luO^gҐ&~xIƸM}*ҏ4]{ #׿:yy?ݷo:hnsbV֗{kgdr^6 N{F]in77v7+r57-fclfRPke+@6[5,陼!ebkj]ou,Cփ9Y~4C%LT*eeY@kN e_pndUק_4);wh8.?yI^߮+Z4ϯy?\%`k epdXEkaE<k×1w~hxt9Ri]Y>=\{̯DŽV ;h-K:&aK6ui~/$Golc5&- T,{j5G U@A? .*Di Wӿj@Dt.*S(`cGRʘO4\!đSPBRG)iKU"dcrK)"AhLQQð,J@SUe,vN t $jo.תjArwOVU%h׀[t5"7[<;`CLT. V(a\I,| C],TiT@y[/`P.TS. 눕a>DH~C!ZG$sJLKU#Rs*t8sV:^t\3i=|46!RW1k(dRVHy/rM#!eЧ1$BJG1/#2)h*"^D W!dG@I؆6հ8@(%1Cd =J3Cդ)0Ts)%ȡrʌ`YVCe5ڑ%ItTl΋DeG>55*],_mm+lЗNV)޶1z÷>kmj57ǧۼl3rMZo߲z'o>[+oĐzyz9@^:45]K^#ݴ GY֥8*rmPH-XB'\y>AJR[e5]߻SfӊTV7LK0z=r`UzhM—)!O__,nFVS({KdeEoR.c禳))}yVKIGS&ZesO\B*P) 7`taWA!VG+Nko3Gy /ZRm |٢%@Ej>Dטtyfocvn7Oz /;yr?leVڣM<>/G|έ~I|4;h˗`f=;T4R_GqV7˸vڝegS;u˳ςt`m"^'xz`4Oyhm*eIҟFtoӳG.6slūO~sz'?ۍU#n}"c`].ْY l&!0۱8Y2ф ^ TJkuEIp$s?A`o<*k6 \&I Y r@(&FX 2,R8aR'ʗ +K 4t:EBX1eʆa,)y>+ j,OR*Hb|<3074nq%+IsqzU#/ytvd:4"v92><ُnZͿz=7߽o7|ҒSkj5o܂v5\\_yëbkPR+1@RlTZA(So;gnToܻ~/br:4--[/>9.uu1Nχ5n5Ҿ8FˉUkݪ^^/<٫d&]V4/|j+hz+(m4>իK+*kM1O'6zSMQXu,0͓hU2^T1Pׄ2ڽS-o/?|ntGj(J,|Ť1O5b%f6WB/o=Hk}eʼn}+O,gZs0|~)E W(1QWL>h;`h*mbnk/|jfXoͥv?yu֍ b4nL|Q㝶Gq"*y,gM>?J%եOQ-z <˨lZ@(a3*^OnG?;[iW`;0/n:%T{u:ۭ]iqpmZ $Ӎ]E9,0wOYwp۱0*&S$"SI<ۊCn(@qe1֥E>D,FKAH"{uU*,LiiQNW(KD-\KWZedUGP̈́ZfRKVh{)5Tt% 1,6gqx&PzQ՗H݅-HON E®KG+%C0e %JBCB)*81b,jj Tׁj"jz¨|Xlt&}uv`$io",nUNeIako8&@=[k qn՗o^7"=EVQdҞIeBx.3UkTS)d.i,83m)SDuRIbSI@X'4N& ?͒ddIJkED@0/)*B<$Q Pq.BD>; 8јSL9m1Y,INi(R3RD$IYAG_0?^W/mix̵WJvUG6Պ͓׏{0g_^U.77i-sV"\$ co:wf_OohojVoi@.<],ed?Rp(j{jf?0}E=AK`J XݯśIӆ __[wIW{?/?Sa^~4wot&̴[kZi6h@w{t_<[ `5Eie,ь6O@ļbR-4BM|ۃ`eF@:E!X|Iə@fHT#@W^T<(%z`n5MkiI>jL9`) @^B*u$py$q_ iŠ"&'%{B] W Υ7H? A6<NRaxXsWEcid:B剪$1lk q>tm$\ˏ2U,]Ur̠dc\fI"JG w)&5X M$l*vE:&GR@-s@eJm)ED񊱆 *Z3a?:`Ӭt*gR9Hyu@Jt0v eQ@ % ~&eg:VLQa]QS_Z)F&|J)wڛ0Ȯ<<;e7g{b1֙ dG[GԲ''(|HW;7{=3#8xGfij*Id3+-#,[ђZ}sݾe5c">h5vk^ovc0 # ϔ\j-#ӳԮoV_><ϯh{ۛHgGDɦI4t3+jeg&Fzkoݳn܎(YQo @I\yW#<;qipғU8bWձ`bf^1իQmZ`G%&6w1@1c0T89DJOδ"S;̰U9}{;7zu4SS/^`uwTe[,cu|m-n(j9=RZkxyoRj7;VB Q?zS6׷ظNpm[W2oA#MP9=}9}=Z+&!|깭jЋϴ\_3zTEW[یn8B頲T0À $cE[13YVYpmiXkZ!Wi*sJ!WX)d.2X8''ĉ{K6"Ode97WiTi l.e)֥HJȌ3(bQ;fHn)EZD%"%j_]ߪ9`LaX7Rn(D! DHHV8_ԥrS(1 @Y H&)bHmƓ%iBz EP1Q& $LmùDWBf,"q\lnCj(-\/ H*70y9@{[E'Z}MFY$?;륊c8wYӸ&0rNcZ,E$8rJS+l@>\ RR P ]s3u%xM-֊g=RQ 'iW n#X4Y΂TC^-VK. 3;yV-E5i;|i9Iڙ,egbE|w^dR^8'%g9o+\Lp6kOx=%=ː&r$o HڨVj{+vE6.pNGϫd-U}jE /-;/J7:Mδ2WMdZy9=p;gd`"xXa4̇,o zY'Vt_]>]^[eCڂUﶍ~Hq\oR?Z ˊ.\}Wjj+&'Aiڨ.,OK曀oRB’iApX"y_ 2.z%rK__*i̓FR7}52^Rå1jY;7(nUaX3L%yNV~/jVh>{=\(ţŀ&j>?7wpo۵{vuJ(-zye9H5/?Mj6Kqo__䯮M|4,_ʻ]N,p4N}e3rNa8N97ϿcoRٿ~NaވƷݮR7h{2K@9rs~S/mQKU,*z[~PQgԠ><*%P*%Kr~& !Xd"/NՕ\{H]T(rҔ ( +W$AJ  1Q|)+iG^0tQ޵Ԫ"wDEY"^>G p@:̋3C8UI7XprśB*mHM`mIM$-! \ RHsAiHTX Ps#!ݼn$4J\(̡HU;$5Jq#2UrljAPRaKSJ_Uf.gB!A}2ӠPƓ}[nhY`a'<(}X%[ZVLLQbk;X8M1ly9H&֋fΑ+VԣEm&7+Tҋ9K-KӑB6()xb\Ò !*) сd~ٵbh7󼤂zĉ `( njHUd*܀k#I/ g)d<P75_|/ 4j_^;\>q훇;7:AOEg:zցSVaiߋ/,V#2iY<|C\wÑz]-AJGg}ٵw2[|)\eu Kgg ($z^2ݺh[7ֶom |b)/z 'z׭/mD:y҃~v}ற.av?ٵn4f[ku.'|9-1Rzwy9C)#;WeQU4U5gp1ȲmtiDj6B/N ',*ny7uT<^6]Iм7_0x<@ո_cǕZ>pjέI_X\3TN56nM] w3*:SlU%mAu4Vɀe~M ")N V~eʩ $cy#3H0nÀRs M BJ RA5ɡŤzX?$[$ܪ(Iwzк*< tNU\\g93Rj\rBFPr`kEqW򴔔 !9|TN3(+Jhk x$ 4/R)F@w$CBKR1aBRA, J!̜lb/5߈yŗpqSD1eX 97048$f&H1gBJ'3RS.\P$@c eJ tTH@ƴPl24`%!O 6!׊6(4Η 51πũsCygC C._/ *dhttBaϐDRN;iREb{ʥPri7lj;-E0r},3ńʑ%i*[G@ihtAPޝV+CpZq9v߻tHuhJU'e6ȯ~٧3wΗˊBNP^X_o2hu2OՐ'[?{Ym .3RSPվ5_t-6+VMp:bmpptWݯo l(]A2|>SQȦR%(it=vwޮLG!(b1dfSw:XQͭJCgC_~y^nz%zOGAL\c_zQzjT㕩&DIJ ?l%X^Fdat}7R7iA]-Vup|%W!bf}K@SupuwX1:3`?pk(ߨjoL-hRʉtBVVBti1"wX5h{~-^PN]J??V4ln4d 7Bkeijә7?;[T 4j :|Ӫ}~\ T_}z>v|v+[9toh ʳ7/\kέ^)&d?yv/mf鎖?jтw:wގhr D oL# )Ebe3 r3 uv%^t[.>46D0j0qqI@h,'E:bB}V_*͹"r[/[ `@Z&Ie"1z 0(!-BԛN"CS~(4הb?c񅟋W7/Ŕ:cc {[A"r%/$re&8.HJ2*+*K;%})2X+KG!mZKd.+Q^oȟ $\WcΤF*Ƕl$"*@ _,Wރ0=v*ARym^菜ƕ EŐV9IFE^aiʙ@ n(Ft5H<0*&K 3X.|ϥ6c&%",m'ϙRôЦ)4 L]1LQZ#D:"y]q]E("kʡ% XNTIbPGu Gqs .Hg:^L@4%hڻ[=nV$D+KӻaTR'G("4M Tͳ8{l.yjce)s*4K س51J)0+&gpwnUJ\^'lYrwR[1,ǃqEUhg-Jz3ix0@Tڤ3ʳ\c몚J[~u^5/>) x4iMHZOgeڭZX &wfs? DlTR Lů1ƶwYmAs7Zʗ˫,_/ﯯWC%Vz亵 śهKVpCEloph A$Wv-MrB/ܩoW݋4Xm$_>?߸щ9|kYvlE.iO#n5KǗ^'O{3HpͯS =$zK]"Aؕә2A5EbAQ\ziƙud^'FT,MUL30XSq! iQq(#,0`P ^Ă Q6IQ89Q+* L2 `)>C('qQ(,n'&*8EhQUTFtGmNA @X|{e/h~&D T#C紨u92UKn3JuAV5K[@JxPHbvoeY] e@gTL׊\idRSEzhz !';?XScVB'ZM/K("װQ$bMȉMe,a8/2 5$JIjM-i^TrsjJvEYndG[eDq+# PqWe# ho%RCUQXIAx3ie1d.Uzx EL\\z*I.-Rl; 8gURJW tl)~{pKBY^H/vl5k('t܃[+Zc}ZF(WqyirGGS>ՇO~7z})*q{~=dXIzI| #{vgZʪԙkws3yn$RD}~oվw̝^~~|ߞ'o~?<-+Nԫr9elm7c\*OhD[:A[Fivhնqkxj.u#ڮ J#%H#M^$S0:ڕi>itfUǪ@#s嗿-VVz3:ùFHl0溣dCJZT@~x 1TV2v `jz?S]||g.3mV<\ZcsQ6mzo%'mƞu/0z9ӿ}7}w`JvGoYq*=:!\7;?}Z︍ipegݾ~vΦFFvSQKѽ{m굻A?rϋℊeܬA0gǧyswWhO_@}}F_ ~vg?߳ps v8J仆b3U ^*vS%np vLHT&/% B.H/:spHDѨKȻ+=p.%?ORt&+ryL ۢDMI բPBD9JD9"'N3qBDP3Cz8@Vβ$")(@b)L@"BHf$*Gˢ!Q=jbyybERYmHW#l`(Yw9.F^k(C1‚8joL(Mp0-J#TT5Ѫ4%նrގ21s2~r$R-+:H5KUOzr[1Cr~:Bp ^h6o薃/lmlF*g3F{cfjHD`|r1v7:fwKW v[ JIQ8nI 傸1U*ɳwǓNRrsZܟ:q'"z[jS2x7ZoxO*ݶs^un4\ϯHx9u,-꯾,S ݐ,̭uU~ ʊ5Y+L-)SlQMc]'ƣC]^dFFs}s&)jҫj%,b7GȢ͜R,/WjgxϳJ_X u<}8MX %A\2ӷio6ɻy`-n>%^w}%h7Ȏ[k[ӯF~ޣ~ kugxy@n{t[V`'jrL 7[Άk%7rE,14wwJj˅XR0rʕ*Ws =. 5}:(*x&gɔ\D[":cEdFK,1R<m,Jxiij^28-R !S%JDh,>Ec$m?򋌹"2zˆVdH91rLo҂ {4G90^|EfG2zX9 4*Q!(%q*S%^ R ;$FR:Ŕ5?BD&n[|!Ӫh]r"V9JLB9m:kyqm޾ŵ\ao|St%GH@(%8fif\ME&a)uEH=A!%4Q4hLwrI LTI{@`s,^Gt"rSwHo@ !^Q é7DJx7\IVˏvўǘ,8|5y2,>,EB5YTp-v6 [YE'rP GBL6(\yFE^@nI lO'*4Tci{8UۯW+ HrwY${M2A;J^]|N(-*4JmIƌ7?h4$}{}dy5Wzg&OWoyMĻ\TܹV4o/?]ܸWCRiZ,lzN>d=_Df%7ʓvzu_迻w[x5R~ptdt?Ņ鰏垾8>{^j;keiӥdR̤|Ae)V I8 n9-zQ'Jq RHl.(P"zg%UiiP9)ExsQ#МmT.!Y9J~|5UFbҒHg p)1䪌bՑ7/tX2Mq>FHjYq';%ΫI?U h?~r c\7RSJ,<[64QHA6ӗ"$yf%dFV1 DXwssҊHqL96sSWy.ec&Cshdl] h@LOX#* Cs-{cӮh2UtKSa&3OxoUD]N$t?2j´(ES3 $@^^ܕhGbۤ:w%sN8?zRJfqѳ VҨM9ˠN xe ?}q? >׺"A̓y+o*踒^Cث,g:*KU)fOzM)wٙlՉ*laDչNq G z2j:|IBhPߕ$r9Q~"烔,i`E"Y,GE(LLJTX+P ,UM29v5p*& sZICΤRSHG;Ȁq>T%Hb>9ʅF: \r%{\YvE&(5,V'Z$ւ3Gה"fyIN]fInqVW篾/"~Fi%]"FX*߰y]ʦͬfZ{.rE&gw2!llRܶN{mqkow͇[;U݅kɹ ^_ihu/JUkk5OE:*M p>RY'RJƍت.‘Y^q9&\_K/?lEeU<3Hiׄ8Q ̓Dѹj%a\>x!D~tQ~2e|17_lznHҠݼVJ:p2(kGNivzry,ch`_C:c+1YJt|.|1hT7VYVjk7u}nM&ӣko#wn4Ut9>VN'hyh4e0x5[{e+y2y MVC~\W0*9+f g/[nf:}qcʳϫKI?{𣽍Ϳz-A|~S?==;VꮆǑ"&_n(A=ǵXEvC()׌p~[ nqlaRsb9|rkx`|iyx/>pU*6d劧#6t(Ÿ⌦EwgLHBWgeLX:tz*`20b ~N#FUx WeH~" *DT(H"RN.(\T`Uĩƫ3.HBf"ZYM5l_@+ߎ?Zƫ'_(M`,=楢Hu;T`QEQA᧷jF5#ZzX2|չ_14*nE \vWJ~qavu2C8_Coormʘ|l'O ªYZ?sln7N9J^f$`gGF[OwweٛːyqZ(zO޸͔׿4mp?gC=͍ś"ʦb:'0^{7Y0Tou+| ?A9Ӈٳ6^ͦmu5C[kw,~r|ڣ?P&~:J4 cn۷_iU*,SdEھq7ʻ;ղZ_3\"nh )/rREL$zҙE}pk4aE=3\Jr5 ZGHOO%*,L!gRӫ̎C)R0,;~P9E*H"_!@S4䅪Y K%p1ZD@%hB0lX.a$`WccyLЭ[p Sph}p\g;Vުw݌PfE3 %i㑾xWJkˎN{=Vjf&Y:_pE W D".LQq9^V =d,%+RW0Lʈt)Z޽for'~:[OSq{Hjb):#50g$WdžT*D2}+&--?UϩW 2ye̕S1$y\J>xDqQϳ0QeLCRMfP?Tl'M3vRyl.~ 7峪WKFUp+y@cT(C+A jB+Q(j,4Wq_-9'}AdSAr(0A<ƙ_ >ԛw^h%i s}ޒKgKɉngj4c9;RJU&?``GΧ ɒpMjz59)[4\Q8̓ p7f#?>hIa6qm6a] |GtGV(Tӓdu3q8WB^5+ț>ʪfs)tݳї X,`~۽Ή^*9R[\C5TS{ͨ+Z-KjEƫ*T@dn\N.ޜat#x[GMQ9-A}qVzyyv~|dO`qg668Q6v~hG!] EJ\ZNCz=f]՝?&i3΃]o4W++8jl6+lupŗ)_$e| d~awj^9TlD8߸}zMgXuZw/L>hK_W{чh֍?xVt>xwml^onťb-_3} 3v=U;ݎn=`\UX~NG٨l Qjٚb{52IK}tz}56Q r^l!nlA#UTs0$b#QƋjɏ@ =Q..Hr@8 ݊>LaU5K%'91I" #fa̔"re q>Tj^t{|]$|I~@.MmK8IxBqMB^&G8|E^DRi+‡;8}wh uAT#YI hI3ZB\$`D4JI+ŹcLڙ 5NEEody&׿7篿|RyU<1PRDekByPpg 6qE-XŢ(rQ^$1W8٫h*)-r&`&f\i*Ʌ.'OXE(_S ~ M$UX~@Cy P |9f=hjViD\$$(ɍFIyu4R՗`.Q}=+kü4}|S+?}9X)}Uli|qc3~?yk]mfu77߻jb ~t_~u:XScv IT:u:~}]ךkmwdkC7Jt3Su'?=J-]ίV~!`E[q_N4nCլ^*LěCD4߽4-5$(ד#_=%Z>1NffjŰ/1(soߺoix㏺jnno5]\!q ,I;fU6 vt"EՊ&r}+v$A aB]gQ~KY&>ǎ-1WTA '*wlYӯޜzE5ЋD ^ \/w 3 05ԴQ"@ Tw |*JVLy$,`D JH ꯿VċlB xE^*.BJi=mKgX $KF=$ sפZFVAּoEe@2Y*%bVw'7`8,ޱel(EP5]@ܓB`Tܢ+4qLapψ@bC0,-u<5K.q*%Wh"Gɥ[: Ԉ& PSN59"Hk J9aE5g\8Լ$ `@(AƤZDI0(p R-:2%e\4yH*kRs@%T*@JPpr a.'R4vTUHJFj+8d2CSTN"Y@M%&-.tK[׾jsgLqEWh#qu2JL#MRG`ɋ"h6v?j: `9Zc0)uwr;öҼ{>ؾUus4*UXSe»ecݹ_QkiC"ʶޖ֣u{R:g$QvnWkeJ՗X˄KiV൲֬u5]tDm!L~d˓af)Wr _IO20'*u2◯c.l{u~kAgAZ?U-+G]ݫĕ|w~k~߇739lu`vҵ؛,tk[?lb|f* ۩ģs^WC>4z]cAh[%Y:4/|FCi?.!rVJ.t=,V'gćzir4]X뫾o$rfhl?{q[pcbMk;X]vQ&9HlGRSXޱ i̊r] Q&f8 KHb`ܼcCSBʈPBJJQ=cCu sb@Y@Q<T/kE@'$k ,.q!ÍD^ҵ\N",MfHd(,: *2/"T(]xгI:>/*b9jW'8m)R :wx4^\|_^*fR2S"ɲ~Bg3䪓nbmUU[m] XFrRWu7լZս7g'g+.&S&Vj썇BUr}aEHJguo&Q[Tif|Vȣ`ї.LNTƻvD`0WI4[7k;R4LyukQk+oJGIF7Vd2|GWrqE_O0S\tjd:gOv";sM@mQY0BFH.g}W'4,Uԍ =E/"vEHYWSeɱb38ؑXCy'BA8 0^4c\K9T^6iRC/Zb)UL)%Vy ^m *+KHl**N5)"inJ1K*H!P+J*1- [o⢕`-1B Ĥ8.N" PRXEtbmj/Nt<<4_ێ&⏥o+ dEzB%C0ӥ?PLjn颴%? 3f#hXD=:o.gI)2+0 j6 tLqR(B% nȈ+r\:ڇ;{m*E/jEnOe)/SR%ushPh Ί5OW> XioT4V4eY.$2lDx1F S=Qъ@)@P䁂{ RvH7@iJgE Wy.c&XA9 $oAEjTQ>U:}$-bq&"e<1!f+%O_% ^\]3/߰R; ^ď lkon6:$T(lLjVlkdQ98S6)mku޾kyrzeԺ..}镔`9vqbL/ (`yղtiYW B]Vպf'!{r:4Rjk/Օ4En͇w?yG Qx2OA/`aEGg=-2R7E>5|kstf.&I6$ mF ##exq]}8`P4󎪫׋O\ 8kĭut*֟ ߞswgy_?=keZ[r5`e: $NWsVY8UOW`f}%.Z_cc2Ⳬǯwֿa;-E' =06I>7^*k~ԮhתNώ>Ai ?9;N^y9/@]oW<)8 *LRV s"WkCSgNؐ:Ѯ@Q,%i@!Dpͽ۷mXjU?{áb||j5"\E3tl'#GW}-lu{5jaJ:7%贬d.UikmLURu뭞~u=j흛ͻ{[͝ZIE2RUK?0_HgtמaκT3:5U=__|wt()e0O/]͗o,v^`sOϘ!t\>:cmjmbMIolmWGi~uȸL5J' n):$Nl;u劑uijs1X.ƕf h( ALFYQ6d QŹa1)؟O zؔ(\-|!V f90&dE,X0+ W%Ezbic-Ǚ\< ,Ȋ"lEV;# P#Qa0xWԩ58}`_@%pl#SzE$,/z.YYEhi%=̩m@Cb4Nw JB\A*\E:][Tךe-iE`b*2.'$ʟP3981`?/6|ZRW{^4 _ IPU0b,4"!2BQYqg%Mp!ARlG( &I3YpoaE%(H/=G(O$$pS @z6[MUTu U5(V$'19!%UD):aA|uOeZe&y+5'2j%Fm>V̴$KXYzn6k}Rilmo+WTwOw#)Z#> zѳ O@@$B"K8Y&}fdxs;F6̨{93|//<`Cu4{h]i%ra l yX(&Y*3M `WT)1/ e5R#BpHUtAⲶ )aCmG*HʩFkHa M2C(JrnЦAr Kē'h3V]>HwdCE@6Ĺ\Z cFPsB;!՞.:%=(5@=rچbD2>^ 7+j-Y"gJ+<csk5F\ -cݲŏEjPhVYzeM\2,DZ۰(h5WݙQyj^rk./#=RP\3 r͠KbڝgBVR(A[+Ox` TU~M(!<I!R7PȚ(?UV RW3 Z`QRĨ eZ'9Q OuM|] c B_0r~Fdq׿ueo9ivMv0(wHXpNgc7_>=j(YW5l uLZfjk=`}0)XצLSnA NZͳtJ0IpV۹qdpYQyRijxNY_ }Ӭ4 Yz= Fe>9O.v,O\VMe|iz]ٲAt`OI eyEKE8^OıPL  An} 0kLW5}m-2`@9#5, ]fSs1aH\UvL2 "Ź ˓KSLQTDRPN2G5\ [̩r]ꮱ2Y=<}n%m 2 B5q9G h/O+k΄m`.I Fl4Y$<[XNY7eSa0-L4KYf *;Tj[Jh3EUQLy܅Hq*Fi-xͯSnTYrAQDv^j2dU *f l, 7޻yAàsб-yU<.\YZM\*@[M@b,;_y4bT1q@HCuCԆcLܼ0O?  Z+aP~cws29>Tԛ&N-@kj&j /勁bMi$UyFz ;?_с%Dn?y(N~}>]#Y7)~`,Ur-¤YD淿U" M"C )kF-!xh:WKڃ} 噢O\QӐرgΘ$xT+[w͝fTkߚfOXR><03aUWbi:ڍwG?U7}uFqB-5{2ȍo5W~wSԻeEo׋c7Vׯ/oΒ_mH Zo|o{v%Vz=Q}<@ݻ:8;X<:8F}{1X!rf]o|,Wahm:1ͮщQ>pXv(TH֭j1_`%`^jAJZ+t+kI>bR2Z&;-\\Ae1AJYV$FgՏ9\R]B&Y*j9B}l)@aId #S)7lm"By5}E#Y.,g9nX28,w3a`6+5NMr"orcFt_bM:1=7#. YYx#!sK3Q_”ʊȎh2^ߕ')L*Zxp5t0D:K-סLD8GU֑bdrXZZ(s:FMKE>,0`taQT-^8k<-<,'ذ#  ir7A^ ɹ/&Tu̼L~H'Ԑb>&^`k0Ug_:0Z叐@H1L)/20eeJ2:D-@Ul$ ՟Z}ı`K305emqΔ Le'(I r4EǫP]O/G* Kruybf_u%ZT+YzR[\^Zoϧ\<뤠r%s<ﲼx_ma=/}zw/Oefj v?җ178*dhllʜ;Y R䷽wkT{2?wzO]`BE>M+ϓS2)4hY/aP+gL^-̧>/PooLt~4&{Km{Uoߪ_kKEhD^D>1k69Qoҷo@2W#1OM-V7n bxN293qu 6g(Ԉ`K9G>=KcSwML~($:O۵-srcsϮ}!jLh<~ep-+yszVP+nZ+wv~r1jFeVNxo}ɛŗoVQ"Ccϓ߹ݩ.D+r 5"jֳhl~ձQ銴m4{VYocB Iڮn{T@t(ښ,>zlR}R>0 H%IE,Ņv9᫳fwwmU:K:j:03&)wɂ9mRYf*Xꦕ~MRnTC.<DA&yC}cAAZ_>A"b*t@X z Q2e{#M%9,ʝS_Y6tEJrS#-3d",<ƃ(Uf@$ \c%؂e,a]^&2TQ6"-? &v@R2GNZ,U2u5H;}G F;zJehxI竤nrdUXٚFpy5rGٱ'w[h5AE`X(j^8{V4X.^^\w fQ;h=9y6r[uDFɵe-6n)yA0 A '-z$s޺΃K[^<'i]Ot7V4g]]H9KS5F/.9^jza?6~(f3)J\kEQRd})|^W6'p7;˷vfmsi7~qj݅M,^Ύ3fwq"g3'dž1/4TZe?"F'1j8N]2x-3p",=׫cכ4 {ss/W/OO«e4~@лUi͞=_~ OQZ Ě=L Կ?[YZ ]L'g\wnRZf kJ1 ո .)wMqVquE-q,o?|+uEJFSe1erԈ*oŠ^3ochsyE]M*|8UNNU ;f )3#!L8)8.*w(/H9hj#1vS"22 IJЕ`]9I%ÛUaԕEDk!ӛA%ƣbtZf̖#]{bS ]$oQBV̧Xk#x ,ՙ3>h,tEpEN\P,&7oGwmC_rYtUJNPh6)_A$/BY2Ji FUG\H(wDrЙ}aREWu hpg&,huaGę: X#U^0+bH%"jD S۵$4FeꚾNQee[яi(Q9) F/ gro?9]$U.t6;vK74m*ӕc_OEtuU`+Z: Z \ 8?XK3<}3{Fg32;WctVUܾؽ'6MUކ;ǧZ[|ѻnJ4 mN3MfW˫|ZMT ;UMϭ<|A{5_bzMۨjn~ű7zO7\h IKέb(6E㎵`mt߼s_b\=^-laz 9B-Nȑl+^ s,4lUa5DZOK9(x\, cm{[;ڽwč[նMy*"<:Z5lJ"X)˥Җ[U٨/;$aE)bE۫k8bx^GO'luNpE?aïhĬgƭjnZNkNx^=z:=T,x(:s2[>\O>d{G{7n(Doy nGl5% ލś3H:NK/&pN <wnT K4!)PͲ`(D@y^DϮL_C(MKesd*zoa+a4%ʩ]|eˆuءLD}F |T]eFʰ7B%-dE5,^"UWYSGXeI*R(*̈|5B8gˆPq݄ L*u[1fN>y/PP [kS"$J< 9T РSLrf91h-hY~Xse>zqsHY+9#R`?{}ZqW"A.zp0oVMpK栫;eaE0Z3`ۚ(+1W@KJvH ,n髠J]RTC!Ǟ 9lko(rR| & e<\N#M,H0Ts(W;ZȘ\nΠИ0 (LHC2PRs!U C([bWlnkS2z<[D(akvAz39&rRGEa浃fZb:"IfOBsd~wmlkiu駞/8;uL],qM sy0;=h$T0NN.=5m/kUK Ϛ 1M'+˲dTI?8M`f{[}kn>;T8=-Q!C#Ya\\{ݫzwMWYx28ǵEY=tWTk:j֬[u,׹Oe}{Zg7w߾hHqw]v=[췧'&ۮI >qB0]œaVos4 ކ (l])jY2*t,WY9EFuiWj0(gg#kvЫ=OW: ɪ_7ݭV+su,rg.4ZH39wV(Kw5GtQo;EG?>usl򷯎mn|u.pDs?{z~x9ުzXpYy)pir*[;>m˙Zୖ^3Wyyih(}`Ր. A ȕBIT%p/crPeE5+OR04H;"(D-"]"3=fjP5+Jyz\anP R+} <ZHQK3xආb epȱA1\#MJZ^_:!"{W>cS]gwU+]\8N^tQ`K +!i[:1b  ) 3x|3ְȭ9yU'~|q޸un&ިt6-l]tZD,^"[+;{`3oֺ&;;3*J4u(ZE{F1_ CtjVI}J#.ri~ֱ9=rT7C4m˫dvlP4y8C~V90 Xj䴡崌:7^gыOx[#݀OA˾!b*E/ AhVJL(cߴ%j⚼chHLUnZyxMҤҿG"<*Tu2'/`Sbox2ue4bgbmG5}M,:1 ,\^ɵ2 ᅯ^of7xXEAžΞueucC”zpMuR%6tpo}ڽUk)i59}3c`ّpo\T zt7:5+)s,}ZtΏ-Ï5P8r|t᭽C=oOU+~c^߭@|$x؝ӥy;tΔL:y?Oxq1R؆d,kX"7ۍow4:LjS7u5׵HK.Yx-a2E[[_.uXf*~V:د Ty:AbRrៀ+V,K!P.YĤz~ 1^ϳꭡ=哨PcamP4><`_/$@\IHw4 diiUefODT1; q.9OIrt%&-%1,,A+P@L `ܹǀ$#Sʬ.ck#]z+{)BM'TW>ɐ,;HP$F(u4& ilr[O)_NjUf/EO9s F+O^D$m+-e gLP| ) H&RtXsQ )8LLS( qv%ŗQ(R?G傅1˩"3b~D `9TK9-9Pc0[-ѫDž{EA|ܨUbb\Y8pUL)9T*d9,K1wrub!E'|}ί▆Gf|ti{4/~y/mIuRhMV}s'N@g>i {Vb lx:V GI5ju]@Amu(=#4&ӸuCC״ +Άkot5n ݪS.DcAS՚*>Olxh>pY%^qEY4Ʊwit4n ~NaV `QB3tsm6;v3:X mFٖ=CeXh_R[Z+/.ޘI* ƪAq e1.ud MNhomT&J/W^%[I0Z] SE7mJf_Wpzl6 Xl4~罖EYFiv;<9(Kr$#YX N)\0/O&??zL':,4wz{Y,8Wown4{`oO~?m4AmsjwF'iƛ?IaĠAKٿY9:}XNLˉz^ͼ|mAUd #9zGo1\5EjBDu;ykM| £I1':NVXV{+??WXjM`3Ko fӉ7#퇜ͻݽ;ppzQ(VvՐut7^. I,8EE 噲@$R\25u4xHE[Uu "jTcĕT_L *E> IEMS^n.C)P2TS@,VYQב,sQ^SB_@+V$\8Uhd(˼( 3/5ZƸRV+sK%\Znp \kF@]z MirW#nUGzɨeV!" Qgc7G ʣZ POpa19P$y 3 w@ |(ʹ4s ӒMۖ%1#yƤoRmw՗;[XʲNC6:,Jy"-Q7]Ȳ5 (x,*E{pai@WA_—qe32TȲŒjGXj<%KI;:`D4X(S7*jc&ԴrɩdQCJMQK* 00U(B;(P4x ^r5kDH@2:ZIn1<c)WKSی,̴Bh Hs?þTh9Y^WOhUTr:)ޤfrihf8fWۻ+^]LgAaqЧdd _ Lg?4l- 6dC셊x*Y ė|H׷;F'X N/E7{;(k16&"[l󩽞̵\{Ei_u3KpwΊw6wz騟oX*Ѿѓ4yEj^賫O^_b|åxz{v_E=I^Ee>?ydFk=峱Sc|Jt[mq69k4ß,qH+kgq/7G3d| (AC)il. Q#P~'sI+Pgq* 1Fyfj4hK%CIk&1q ҦR<_J&a  D hP2bbCPaa+S,42D lY(.#!wi%QN&ar*CЄL9KtzuY]G#EhX.·Ewd7UW#Fؚ,"1)]"T P̦P̚ dTIݼ0@-ą[M\h"-մL2`dLV4<4lQ&,(39`d2G5\=', #iVF (@b5 \ڴ!Tե^h8-35 +X2ִS?WZiB!̺șR @ aIgm+ءJRȆTtJY" ,WeYQ0c̐ H!:ݲtwl{;7aްx,t:pX17 MPTIx5,*\irwQAU񤭧@Xdl9Yj5EN(k%yq^oFN@zJ^ Gک0`T2nJP9D.b"eۼ֨e[Zpke a&"!cVr{~&LHevVO_ ׹qpYp(l(c[|]5q(Ǫ@cNa`s%ϙz93!vZ[椌34YGh֩6-Sj Z&Ԕ_#9-Bh00bBe}M`@iDd] 5<ı2֮c{so["8V" & 5ͯWun>NíZ1郤(VlU| <_aÍO^~'|FO!;k️^Nz[۝2DTjZZ`. \윎oV/M\'ycͳ㖞+xaY2t]Î|#ǚ w| kzhҹoUD=1mhV{nA-ñaT8:IUW55ڧQ43Nzӫ3oyz[WJ3Җ|ux{8)jv*|gJ;ǬEi(5^Vktc?[[ٚo% Ֆξp,xݫh1"F!c;@~c|k~4.~a5:S߳4%$Y dS\^VΧVܡeyz oփYJUѯf{q|mU;M]Gvն9tg׏_6xTb*ɐ?_no}M YL~Y`Vw7~ _ykv{,f: ۛ-+AH 2FגqЮv(JnP %q&8Du"< fȁ"ӵ<j\_A?F/^) a!U7 ’)1\(Vb`Up2/P 5˚RH5B&C M2D@Vch hQGbd+I%wtZV 8,S5ެ˲:Ý9gֈB $R E-Z~K-?v/MuKA@Ps7㙇Z˵j@e<Ɖo`J2;q58!v/%MB*0%h].C3-Ғ[R+8IܜxkGl ::w/[>){Ek;520tRש,d$9)RM !bNF|o Z,je0Xb)A`%BEQ0|-KVjWhhnȁ!"_-bg \ו캲vof'KNmZo}n2XsKu X?Yv2>)ʹXd5-xHוw<֭͞kn%xsK9(yC˅#}rڮiL1;ر7]765Z0 =Gj:$[XXbN<#_4 4f ό}_l7VvϷ^,$ tfzL\ 1)oP-^Ivt5 p{}Ng͖ydoO{Ͷ}_8eZwOwÏuF_.}{u4˟=x|>6[m?+V{dKgc쵝?ݨMG}:{Lؠ;asbd@HoV 29It v5wQ %3RyM1 > :ya~a dnU\X٨V1HJ5R )k|&5W"]V6 pߞ2T$F*TuFW[PTZ9-p@$dq^MDa}{D|JU7v6L֗ $ACa.qq[R;n[/S"ÑQGQ{{R7V-km.H{^y|V˄sZpiQ}pW Ekɂ Y"Irғ1]LjYLeN Q!%Zڻ"/h5<{еh7Dr>2Q*'KF*⪧*\RLK@BSW44M2'`L,xhFA*9*0MDL; @!Bj%B`z71P9aeG%1u:3Ek%@%y ʨY$H B4V(򶘀)|9j[llǜS$f[w?A٫O1;3Ir2}Mne{<:~,Jg!yzm4\QS4}ٿ쟶,;L7mgY]' -?xzϘK?:`0_ǣՋ/V xVssd2NHox4KDݭV~8 H K6-J}RqlϪ;MLT=ޚw [wn9uxo4ZV'*c%-3# jA3^< *'BvJPvZŊ?:xpY?{tx8{Lon7E\4xF~^-kw*ӻD:y6?n>J &:;J$,@f":&Dp!f,A`%G +WI9^R*FLDÿe7@0Z9VTeYhma 9Q1glyހ&>)tYr7v 'Tn1 %@uҪZ g6K xJ@TMٕt b4@i9tE`լ4 bmN*U^PSsc^꘿o Aq!:Uv'L\JbƄHESSp3 P@&="@5 m긗%T1$ Pe ~@tl86z S5ev-\ :1y&{3%# ozQ//\=/˯,Kr ښ[~2g W nm~Z→Z+iƧ-ׯ߽ZoAڕv߹{.8pXkS,< gSw^_|wn^sXi 0>\Zv<2C< `$5Kno>z|^x\Q}'oUcj9ZdaR,`5N5SpRNN$4kPV<Ϧq j0^ 97CZNEb<8MFMNA' Z#tm^͆zQwvDZޯtAmi‘Yi{tN[wn>n?=8ĩZ(Ks4^EswOff4>g$*t߭,EnTbǏC xYr5қXmmݍQM'YTyx˗o ݸi"{8[_='g;wwnvl]~ף:F~qdn(8G<93t`ٳt_􇴕?ed3jViu;;=tnnFLMP2Ln%(a2k ﻓRQ(KDYY*d&'W"u29 [fCU@D/Uu @˸0t ҖNr zW U-[ r%.ԖF,*[JDTD9N`BDؘ:{t_'2LN0`hh.1t1ud0[,60"B:,4–F!i!عBo;q*ֱ^SD jHV3djV*/@qD$S` PQ /sdKW lvru06EQ,F󍟊FU3R$TE84i)6!d~Àt,ACŋ(T2+, _gZA \wh^aX8#AZàI2VհZ7",㤿\Nq/US-q6J:.P*i&ʹ:9VfEȲtҞHfa4-oxeU컙6vZؙaVP]o%8N'O9]qlWA; ;<3yq9qfWJupC=rpVjc0Qbwuϯ/dz\h9i:>iHb.Sy/wP޲Ȥ).GA;]IEpg{}T@4ƻߵ d(.,'oF3XZ{* E!*/":HI+UנHu3m àֺ^<ǜlF;n+ݺV-w~ARd@8j-iw{U~y%Gk=t?>tU\pO9)ºgK)8jQG{i$/Ói5VѨ/b"hu0"jrk߻UUoϓG_;77ן_Wh6X/or}jpڼ&I[N翝CԗSIznT /.vNծS*UZHT K.wk]/s&Fd,/E $ՔжAm*EՉ dzICV% ֆh#MC*1 W-~Zr@S ZR"MjDer;&i^ 0|y祤mcB' #@ ^fZHjfY eƋ0Ҹp ejF}vՂIeqǯe&_HWgZ6)a 1Vea TJ(q[* 5gKuࢍksqxGߨT82Ls&QɴxZf^`;T kV9bGTfy!n\3f0$%؃Ue& <ZٚUWlk` ng6]^*M$c X4P*ܳtUA=%L瞍-2­J ue.K.kuUNf({Ay^`V1S./$,]996e,S =a*&,sjւUժ M!6l)ļȐ,TFA&涓ᜭ_^~ekϾ ^I6wc!ot|yYá K&OrfըFヽ22q#椁|e|j~ʍvnu͢_ 0#~cOG՛ΓYA˧׳~N\&yQ<*c~徟5'ٲ~XIΎ/~oHAegmGWϿ|lh?.|^h}EHޖcS8Jp~uuvU-Uש:E,DNittMɯ֭[xQ*]>|vHK{5M8m@+yAUfUFq̫}:6hhQ IpA5aMAɤ=Fa7D TcB.U-a"lcryG5;YEoQ .=Θknb>雧ivwq=;YNO1i~ ni8_ɓsӪBlr|q4'r:?v {.i=,IPsym,7Z+ΧliDc s/M_&3eJlXӄTںh9AH!Q5po7Ashd6:%^/v-N1EqFeX1h6+G, bt=Xn^D,]z6ii}=9m_?l2~"h-\ ad!:vf9n? ", bjbK3X롾 :WG:*aWFlcc \@U4HcN L튮 omhѪZnEæFg҉XO&u?=(0c&X&31]4a9g$ض 'ÐX Y Bv3 \4[ϣ0{jmE|&шtku/jN3* Aۯtfq-nߟϮo~֦c˙6YW2"1cm%VΫ޿uh ~zUϿv|.u?䓿鋫Vghn?l7>WK?7M,ëѝZZ^jzq]TAμ6GIݐݮ[m&5@b0RWdw`m]t5PxFT|z}j@³l j# h,%ݪUmt,4 f`%@}RR2mAK\7K tq!G:HVr](皶x;L)?R<'t_[y|%#Zl㠸) ]TN*aԭei`i$o.i)Y۵\r:.^k2#D+ҝwgK!Me4EzARe;x/U`"ջÃ^2m ҋT6C6VFTߵ\4L٦% >;Ms PTad)$Z!RHi ԾmM'.8溮X t蜗2)1k0-ZcHɣBL.AGժ )  m1QM!m~T4U:w,x@jfz NFẊx^Oir&6~^8jZzQ"bN-ܨ=<~k/~|+-0{r;./u>@OYx˸c]X o7YW-enf.5"o^7Q: *wvY2qGoA]˧^0;jӕҬV f-Gsn]1^]3d΢g[ Y2\Mfk͢S9WK3.#Aۇ8r v бR]|`ʄ(e,(r}[71R[*d rAҐj%4n-M![ӕwK^9=$קu&/g2Q%w_cV:= YQ *BK66 ealI /r bU(^|#yvE[ 3BZ25FCTBW4D3 j B q/SOjJm ID.ik5HVeJp0Te! !yRIIp* χLfYH04{JYűdsOb uoq[ܝNϾb-4,OU\ӔUJ}Eͼ3k>}#ԮXuzx2Fy*.rbc']V'ˀK@i霍Vl?[<JW/ˏytk$׿ܸ:*Y2ooX˫m R4ds=c1G[Gۭ͏tm[Vn \ ^LƳYW>Ͼ=Z4قigKUPM |\ɱ8? O_-5~#UnmmU+_=;Sk?>$:=>~=x24Z< {c#\R~/HW44rw>a~xJU(6+g4~}Qi,R8"tňQQA:[SaoUБ7eQDI!͓FVmuՊʝ0J 2b!FX/J:ȩT40 S[p*)mOG%gP;ګ0U \dN 쁑^^/4]PV8x9ȭ=)\Aj]3i%˰-5R*F$HrsƀL.pr Qh32%@狾2~~rUh`fxhM>zlٵi|έfݫQZ:JJs+ @)PV7M#^̪wk6;kBl&kT.00pjZj|Q捰Et{1i9AnQ&W=O[EF-t ž㾞vNOږ"kzu4:N#eZ`*4h:imYkkT"9!Rz6S ;pqE=qZn]QzY3c\eQMs,0@)ѹP2m|O!Q"&5 4lD8aչ u^ȑT)i(|Cw:7hHG?Pjxc+. h@odrك3’AI,k?Ԗ_q*y2o#lu f,Juk}0ќ7 uWRmxpJ2+K> ZX7%<6S,6  {Ni@N-cO 8MDeznZ*!娤:0\0q#J`_ięC:WB5@B5]+ui0UԂ p̩mp"Q z]mI*KUWg\u*h%00YTSfQm%QOqæ91O%NX#b2 4P+5eŊed{D\-Ǝv9 tZh{ش2kR.ӯN[݃{~:8\>^hN'[.KyTܹӼq+p&|1kQblW7;5Oj,oo eTՓx~:fH竵Ϝvg-Ţ gNf#(=a?!l6^,,;:%QBk~-*d= 7xn"x?]-dOc%o mA]@ Ǵ1ZX~MS'AQ) sk-A]Y12?8z';4?[L{{ba͍y&7S/Ͽ_+w}Voy7%eKGX>_^WKaܼLD@1gv'4A2^kzu; =v]3-ӨTNG]H{YR11.ZwksUVD't1+ԋls:K[Dʥ 3R)ou@'qdq]+}0- U! PRtv0Z4nE`ڗ<Ƣ4&rLuj @G? U5YkĢ\G+bufM#"&f(xaگ;.p\^n9Xe r{+YDXjbt e@0@]ң 9 251׃c5/wԒų! f:4Vj\`Y5q@\םˆhYJ?Dڈ K"ufysM&Au$%IuW  Vif9LWu8+;vߣ*` '#{6Tr^ c6rT'i|^5O O_.KZY;a>>$L\+/VKx,V[w_߼XtU8cL䓷Rݎ_/޿*7a/hUA]sVUFb\Pngm<1ٞ 6|t9lh6o^V'W^lVM߻uV1ЙͻȜJ#^v[bd`o 筭:ǁ/(5אse-e@ i9q?bEDɓXЧJizX4 8?mQi^] \#Us:N}b!8tKT˝^'g۹7o'A5z0YϷ; vMބ oZ~uex%: h0ǽ~p*zd3kyz?3lYW|MDN>bÃ~:K8v;KAhdgԫ'vܹ7D0JI,Fg7y|~ &zt/q6o }2bAN +~9}|Jod{ǧ}nsFdz[*OW^1m/~@fݟOCg8,yYu}}Z?*A9 "AIPsUV(ť#s+-m}_PU2M)$NΙU3:脶-\PU=֕=XCQ EaYQ -3Pu֚ǎkf IS3riL PxUakDfGl"W}e3ZSFt;`h@e:\Q.ԝ:'Y%ie% _͆F"-xui59D o%q\.mrBiaVVb6fzaOo*7lmTvwĶQ'0+Ax-֍BojpT4|BNm!"FZV%1Xb--Vk5><=[u sD]lto04hbr(CP"u%CJ` k*C.)2l}"~r0>н~UMzkI& >]r .dD}91l&D{[AVa8n˱P"83tHHR5# DűȈi!ri5^]_^pqNVk s/?/qL\tejI=Ē7:\,^09vvMV5 EΜZշuU=n6pѕ߽~T(4ҨHgt?+#i2Z<鷜*Q4׷Eoz)R"kUm|hۚ22o 6ioK :b=>'ێr-?az#nrWۨ%׫U|u8\@?~PmtE|V *sTQ>78I>LGsVOtx4tM6aWU1?p7`vOGc=N0wkǿϓoϋƐU ۑ~rG۩x7M`Gq۰?yhߟ}yW(J꺽u`;~q'-= GF@dv}é it4coPGN*bm֯P1u':$C:S`#TD*zU #몪87fe0 Ӂ)} %M`](nrjR2 $'-alkbb lc,+J8 l1y>Aa] g!;a~4S"fX}IAԖtavt|ձ&/zwz 9,^ˢSĝ-:phX5+aBVyL[Ǻ [[@XyU{ݗYM׷W)N.a*$t\3ƨDZPqd"a8Կm`E fx١"tzC|h#H ?lSn1a Py%/m֬. ϸlT v3sҵS+Huj7` Ӎ7 g\@ֺY#)irJ@e'㋏z_g5-8wptʪ"O/Oh?~ݛW{}ճ|^LZ\RPA+> ͫ9J1&uuDaHmǼ߯{齏 ׷,QExΦ ZJGϟј~w:DPOi liA+65S*k$uEi}<#\$Z~]DtKƧfaӲy{['j!2j1l++SXXS$(^<סGJ7$Z6 s8KT0.JV`&Xb%.;xS/p`j&%.jaJE !24ӐCjeq\``*ZI.Б.=u80Cv @$2|=.8p t6RD ]5IEѸpy^Z뫣m80NAg܎ tRL2Bއ&cR4IQA $5˺rdE>^wM6@.z]Ķdjk`6rpq"F=JeiVeA$[v?ܾ?/ueb˓&NeGmQ ̋o?`peTW-ۛN7ax{A60V&U͋wl=VlVOMӯNu,cNk7 En&f|tJKNz5ҳ}UU:u#Ieu+1(Om8P4Xd*?NG.Adn~wK4ּ>Yiea͌\}_^.rGaV{}NK}퍖nD0eQ7Z\\uq;^,Jůo_UF'?|2qǭ;fkO>ѣ:^.hՆ}l>tJVEq''ǃ=w_f7~ddjneb6}?^~۬ɷ{߼ůoDywyܳ8,M*Jڢzk]Uc;OsH)kI-.8]-;-FnOvrçUV|U}h΅c)bu%xX˴|3w R0B⼂}DW0Kr-Ao\96b0&m%JǢ0"0u@YErYRi*X5AL$\:wa54zE{N)RXy#͏Ur|A&XY!UT6/1eTpbdT [y=oZ@*p5me'p%3{>no$̌&-BeDu,WȔUCCVaFW!FTZNj)Qoz·;.yZI$,:g؊R7$t Osd;B ~cdCz>5W51\@6caE (@\"R*+^xYfyN00'ĬewҀ,:(ZX66Fkt*+t0_ aԑH[@kN|:IfJ9VznCQy7d xjrPZTXM<u=v7p*fi~!YS88d<̬X6N(ðmNǷa_^ձf=|5 |4.2ZspOӎ#{yUvG8!^^s{]J2^cP(`]z)<8j6y*sks ZxGbKVJH/FᵈNјԋkOn6)Uc:{Y"{ȽA<;wx*R)iUqt+hew9l#"ĸ͝0jm *^9p,޻}/"z_r2 u"29xfG'_fir?֗Oڝ:~? ]bIشDIC>+^A0a b <,jkiep vxTНvK.0<~]b@u;2F4w4\}!:-d զ]JZuHj#)t1OAUdgqQ_OCoLf1 uDU u#RjEdmfo7h(eS=[e8uI{X! DY,|²>\NzeϾl-s$1X+tPYp8~Bq(IHNZ1q%*0y/k֝R2MI\#Fe]+et(bDwVDa  6%-0r # []D$Zz=??=` eQUV- %tRmac+ʧlZ2nMv w,WDˀr BDHYmB$Z ‹ZfyeNGvVD PF&lZ)\rIb$i (@(:*Jpd 0G~e(fז[Ξ~ҷ8-3fHSPZ}yhuzFg]v+u_vˋzL=/r{`]|Tq\[cM[ɷɫg)=:u˨U&k ڭa[VxȳO٭SΓ2'-696-i;fD`u)'eT;VPMSbz$mbVh?ΝSwֽabb4qngnǵ;AJZk)Im]a\/փڼfN@.NNLs;uxS(]K1:6 wrNtG3YXwջ[&B@N*D6#82a%_U\7N*_/r_.|;-lUܿyueco#~:}ӪG׿wgӨï.?oOCT~V@n|y?ӓvoF#>ڭ}'?+2-7-_Ͽ˺hɛ񋋊~xVZ1RCE9/: ׃m ]2X*BױepCKlM2! TlR]! :."UbkEn2E˅\jxzK$à-?S`LJP \):ʈh4`kQMX,V}SkFE70 39^}TF(!D9oߣ˿ߢ($Vf-7}ٰ _;15<7WŬM=:=<#6nU,8ܭvyh̦g1<<=/v.MϋPBwEa*Esf;Jpx,泫؜V8([m޿ ~9lol=_uc¼\޴aƠl2^s=y~fo=[;%ϫߝpض]2oc I̴&`_5,7WpVVeMۂ6 PKsc:_`pub#LXNuTVٱ)a590-,ATJ@c5CZEeoL.,.ut/(txՀJ$Pƴ   E8pJ (yj@5{@#*nshQU+aSaQQUxx kg|KU$YTYe |IbVk5+\I>mI+`H^knKO #V$# AU 5j[\޷L]'Ĥ-SAzHljF)-]SK V\n 5=zʼ ùX>ܗo50 @2xRCˑ`r0(|IeR{kląOsMvjup׺ѧ,N WU9ola,UxpX!9ҺWjܷJ pkġYwUVk%uVEY3yV,DYFG?xnY.<Ջ˕m`TiMq{~oX < `A603YMo&wF˚d3,gyrśgrQ9-}"Qx2dѪ7xp}4| eO9v;YnYDnݜ}=:ʨ`1zpAwou >zm'ޮ 1:il^N 3=^Bo^a1mb2}ffaw8+*1סnP`iŰWe8+l7KU"v ^b/.y*4?ko𘳎0<4gnfMhmʫWcgll3S_ZU:0*:Y/@ŭG~0hD~ uJk~g'gó/߽,{?z̗{u|g-Hy=U_v7DQ-\q1E1nY}زj+)$ȤE)ucM-ixۦ5JD~ɫưj v"]`/#pW\ou>:V(ڒM^ˆ/Vm%"CABntVJ8Sr_7q99fSMőzZ(W UشҢ MX=؎K~ eD+>UCOM6-M LbB{,2]FˀHq0Ԣ-K[V\Bmm;40r˂'|iY`\-G LwSV>!{fjsKJZXMAP]3ԁU4…N2Ǻ.\sa%Wֺhd ެFw}jN9eE$ΐ.5P fU&lMlj_a9{|ضS|<~ͅ/Uq,... %]ou7#dtz|?kwoV^JT V^ӻǬ}QR]o/|uw^ oZ\<8H>X泮$Ÿ([sOq$Brxgox7{>G|dl=vwn/Kå3hۥ?jO77_ΖaWQ4dEijY}Y41W IE&a26߿]!y7IS[Q FNYDީln6}?ASFmCC^nbX/_n[ui ~?}}t}j%(A5ϞFފ\$gt'>Vh ۳E\lmo?i~S:?=1j 'o/#CoG|bs>ۜ]pq.v`[77|gV|C(Y2s:O^Ovi,^™ޢ7߼f%nD(v+G˲ 9уѮ%eZͻ,D+UXgZvf^w+J8$758jkh pb!wzS>]7@%iWLy;"pAy\r t+IGӵUola$PF3k2ZeI &$Q3b{_)T5Z)-Į9/?h?26Lp+W tyX3őG+|l,9ow廫͸`03H$@.)q] /BZrW$AƷ2{I7]|܄u&!f MwL)I#{QLy\bD?55\] }`Κy@*juҳ`ַekU`^X]l컛aYr:!Fjro2 <;qO͞nl;bӤ[8cMMl?ˢVp$vINSY`g2W]n @:j;Ά+`IG7/~"r^.}Ȼ_޶1wu~LM/Nf[8oF'sO<''4.5[3Ȭ6zG8cm1;9U >xf/>@Vu\ko_O^>/S*q tU7VqGG~{^S!szڗgs4-Xz}Nsv:{0+۱~\şQݭc0.O/?r_|{:^r!]xJ3h["h ,pB¨}>m%SmP%eGMݽjԮʿFLIo}{tEZڄ錓] 9/ -бZ#4eJ<Vt@4 ,i T뚸1@0V!4&#˘DfKA0*9 @ΔPݧVN CN{E#$nZIjt hGnFca Fi-GG瀣dG*zv*Bj%9DF]a,rJ` N߭(>@O۲}*LNX4UgVqkzw<6k0UgdL]7%RZ @$ej_}pa3`hɌ־ J:6_Qw5mT]"j7eȄUBM6D}stܖ::ͱg1-BtUdֻu` AnN}#ӦIޯQ ll)'f_#WEn檼٠R22_v{n) Lwo~,wFhpV ΀+4}o˚=p:O?}|35qo4ްz9wqTaV1W.Ʈ_޽Zº[C;>z7lzU:M:Ŀ޼ U(/IRnَɇܭhGQh8#A+77? 鑎;'^XdNפTwveqۀ-j|,?XLIϴp4`nN>>:~球VN&)kmZbʲmm o%".:d|4(7_o%Z:q>9>= >|b?ߵGū2mG~-~m5LP=(|5 \V= gpχ#qyXti")dLNf^,~nOLzjA/O?:ə(Y_K&EAXB;o r봡l2+VfQ .̗]EӮg+6j6u !;6f2 dI/ 2YZgˈE+CsRgl$-FJ 3iL a\BQڬ𫨐c:%b- PLDfrĺM"@vF%&EDɎ-$GSL7~RV31 $Kp.׶ؘo.aTp#'BK nn-Dxiњ&TP}?owbxP/4SzCeC;9U8vie50K5f a TWdnz5nxYx_nhq&0nepsu}Bq'ĴfnY0&;0zWD77ulpu_"廠B8``j6ѷ) [bޱA`Q(m)J@km-Gmz?+YL`Y4^,mAy[ШPԩt!s>dmg5~nWwgG2(>=OS4';LBw8=ZVwVK$k -/"N.|t\_{|_xH35k,Dݓ'43'D>:?ysMh,KޔjG>~@TgY.u^.wJ;!ԥgMMuLJ)}%__n;g"x,#c<ٰ{={āg;e&yO"IEC aol V}< {z:Yګz{޾hynWg{p@mɪ,.r%8.'OjbREدrΚvwoyWܷO0w^xQs_"6mnh)/NN=y{3zwFn~\r}DjWr^u|[D|WF"޺W5#N֑ ᚲ]%SǿabV%M6Uϵ:VE}UL\׊`~6 j̥1IvMFia$Vx)"X8pCe[b̳Z4'RamzF1a$iKmLjNl"Z |gQJ`bR&_rKk݅waPf_]u/T\[vʭ,10,YG„0!6Ԏ 0Qi?3G$J|m.hno ={$c;k752}К:Wwյ8p1I[7/bwEapT|]-/|ݪ٬}sVحwoiޞX,<>a>}1þ_vmQc$7~zЭ_a__mG~t{'G6h Ӎ2Nn,sݚC$rT6Q5' *g­ION>߼ޢ,gDZIWNrI2*{&|;~3ֶ]cИl=v9GjxNu9?aӠAy2 `~d]jP~+۪҄P=k2 ejFvAk}6 fB{ 5jw[- 쨊=~xEF ooixHp+߉=ypdr<`[g??xo46"WÓi]݃vyb~uMܲNMm/oz#bݺbdԹcpfq~)WvioR%GTt<"i,P~ꘙj:f]ZJw?)-J{6:xsğw[س?j5 u'QxReȊqsxH?!mt36+,7F͚cԍ)%jJUeÕP̑{0+|71 ҍ4:~/îOYRw;~1<$kLF@TJIBU6J4|]%>jҴۙVmcve} `m[ n@/ߵrGjEy?u Uy?85!rT:#^Љ$u'? ~8͆y@'M腫 8jQDl!p|='znS@O'ܮ7F;؝R}}umM9;7B={bT\6J`썅;*H 6W=9;ږɱ Í{ѨryZ{5v/i\k$ILtS(fxm`"eh8Ұq uOtU18wjtJSp)S0|OR~Ww;=via@M~m.վN:Ehsq'w)eEՒ<9*D4Ln6{e*՛T77K7ߧes#|~?A,DWWeNrWϓ36z^$?MtTs_!^q>;9vU7zY |POwyYa3Z(6! /hO?ZowL@݈(Ɯ> g'#`D2bo1QVz+dSIݦAjq!LuZIVHp#\+nCO,lSKP9]F R)V2DE3180GӚ++PLI9mD´U \&vs|:J0TH{˺2 pDb}iVvTxe8@& p`&)VT9wAZQpp"T}r -*߬W/o_YWk{ɞSn`rB| ZB`' XT)`4V0iy3gyXStJQS)jS hXIȏT՘ ԥ'p]F-oMcgVY⾋=d _ m5hN3_0 <縅wc[CcH!MQTCB%|dKK#!}wb}WUq넹bnNfk*j9hh~DYcG+2:ߏò^u[. ~2eO'ODs{LUpPT*j<>{e._hm~s7Ћ ]zɨ?;8nKI;M.2ϊ+jr}y8!G E[6?qx |^n8EwMVmrShmNS'O'󝔼+f7;F$S :/MxtkB;誄> TDv֠RȚ] >|#ݫڥ)No\.tbx%Zkk8/qf˕}?Y]b/n}rGgyd k* RڊMn%o9Mty79,ߤn_eߩ Vt:|ϗ)[$7<;oo.oz;.Lu}L XsGG#fonM ?eQ1MUOšF]EIo_y8U͵ENk2hٰDQrf24y+Pw-;t2-]k m}׵NKXp@|g;:x&GuG_>,_'q/`n7E~wQ۔V2Ϗz9Y]G( .pfNm#kNGX,a﹩TB${ *nb5piܓ0N`*ȯDK>uG3 jsfAoYV79?= tSaZȵrQ*Jz#t{WNb {~Ta!~;;+{ O>n*CG׉zH[ϝ{U }4:?[_mѸoum#&R1UWM*hNWm@Xa<~;O~xtu~]=o^z'OO>b^v=쏧1-67.֩w> :7)E7oR^io˖:33Xc4u m/d={8|"&dM_ Sb7&U=/?IUIHU[cW$]\Ukfewװ-˵8>,nF|ZBu<Who}3 BZP戸1쀗݊RT&LnQR.2lZ:V7\4EzӬ ۧn-@ȴQLV>ޘU.x0mFЀyxdIy` :u RXq65nϲ%X"N52T #Fɵو&B;Lf}J,ed ef4"l(JYU %}+m+4Mzh'ez}~vtmn]6EGhڽgH&w[ymbҿ;Q_WalAGMJ`}=A®beEE9,Zb"Jn *wlbԏ|vjפ|mfАn))ჟL~t87/w9ۋX,+N%^-i{<_.nG˒vHG]P_ ;y20ñ;8D_.oWU5%7 Q FR{7^$/.}wIJ7sX_qsTW\z~xvJ~?R<ɖvyo5bE,RlaS_O.Qhb$@\>.gL7bhD֒4-7E:2j$S/ew[Mw_6vÖʫӯ_}oWpvK!buwU*7 G-\~6{F-K=nb:d=/U Y@Kqfؕ~7ap|6B~lR%φGa[ooȶyQLNǖsʍ:O֡5IGt8@Y=tǼ$Tlۼ~H:ɶsiJ/@\ޣAU ; L^J޸eZ >bZ2U8 ~~_&} {L\np_8wBFRya\ҭܖ@Zd5(Ff^--0??̅YxHDZ˥[633Vuݤ{9 jEv*?)|LZRPBb;2-Bs֤9:Xtm&Y\j"`al67^f]l[K +KΐRxHMY@rt򯵯-^bE~sF0ht75|ekbuf ŠnSci YD~+}4çzOmvB(l-z>> Vci`ެ&a5-SMLzh њl C j O_X ۤiUlDxB\9M)Mr `Ŧ/{,#d SӅL8׎b ,8#hpRY0܋"F])ΰ p>BZmVRHD%Ȃ@R9(` 1TU=H. a2D֬aDu?b/d}Yw~rsCqG?=0ۉ>x4:>Z|η3ab/>퇟l;(O>:G;?`;VoՕlX{(kϬat6'Bmĉo]j/E_u|k8jevxGG_9ml[yz 4jn y9=O#Nmߦ}ܙZRd4e*;;G&Sɜ!ҋ-<aݘG =`wDV&W8x K(x^ J@-!Ԁ# aV0a;>2kl mm xim-sQP(iВ.[ T8 z.ME9ʅI(" C۵"ޓFJ\aM$x co<(WŻ渇ma/0n 86vha7I* 17B .*˽ݵT`w񆉽i-ڜYO4BG%m2+d+,M<cusD&/0MgV԰OpO0a@nE984ĢCt4Y qI.axjT:(ϯ/b8w헷/xvwfꢺީ:@(F'm8}(0Q&fW(hV##AģI{_6qWEmÑ#m,˻NOixv>zju9qMzeuxJ=+pܡ)m{zwd}¶jy\RzQrE ̊r{WG}X 額z҂_}\J@&t0^?!r V5Hs QOc.A5HUU@X=N kb/9uFJQך=<=ç8rVpF0+Vz)vw4ʠOlcɪ|_' /Gs?=as;j޼YίQ-}E;wQi$5ϖIgbќ"託jƚ?Ox2Q)w 2>i$mu:%%2m)E%h: (t$nL4*υB68ŸY 2b tb+ڮ[Dseb>_IR`dxSb!Գ@̣=dR5`,H4 P4IƮ xebJ~lDZQj)M-)yYY07&Ɔ'都B@ *DJs 3Kg\{1:t#%kremV^NdbV%cx*!4܋_^.)äsթ u|ai_[|_㜼ӱL;škyi%=FNȯUZ_XŠ7q*r%W oSh`sjj7-LK>9Hr1VwDkCDu d`z|pp|܎{4'g3kϛMl;"\_K^9]ܓv;lk|˫zk#jIȾ;PM=GǓJYLOڋ:uzbov2q,rzH:dje?8E;|Wu2 #6}><睹ۤj;uI|U]^fۄnuEu&iUgRqo8ߴ޹tذBɝ .jG6ѕuWmp6r=dR暁%hM-2TJl2L2^ Ϋ7G#uը4"F6mjT%B`0{ PT´J&3UJ(Sb i  x(+ϲ67-q@uL B1'rDR)ȶR`Qڀ􂓨QM(0y|l,yخy%pFF]C';|d7@=v@`)iSxKk01 J޴"ђTF?n'Fb֐JZC[9v⛍V#8^&l <& ؂6%ek鸂$Mev?+0.fnK,o6& t0%/!1G6%=b E6iK[pN "xiZ.8w aJH洭WϷ\ēB6wm'[]uDcώ_T*V_^cypJ/e{sK,wcV{^W?O~^o~|i]g='>>.?}V] ~cpOb~~iAaʹGhMa%af߯l yٔ1ksr@;z)'N</y(aflwn|9ǂ]XX%&coFkDJvvt\J4vZKjwf!gMD Dvp\j>+?Qe!h?\Uљrk\w[Um6yJ~?[oݼ!;p&Q׳/\ M=21]:}D+&q%KE}yϛ[CH(tM6Zww luƟtxgo,fOPq_o&٬:OtyN;^jUr~'^[+. Z:Vbդ={8O~Ry+Psq,-n{D7`nOf8t:bÙ_}U_=(\Zhr.b iK׷c+dRvCuf>b?Hα뀮㦦V9S_J[K99Ď<mukZɒ.jj6]-{D+81r(xA6ykfo[pi͑Gw0< 0BWdqƇ3$T#q#Ec*Zp5q;޵Vj,~X>x * @Z6*5Z*;B`tJ+A |jru@i.}l޳Dz$M w>̲n_qW;\Q(J$ P?R !;ոvUYzs 7j29'Nc<Ǫ~[d}?m%f_f9ߔAJ[_ k{2::+v0jK׬`,gISRs[TmgT(/n!њCLlҟFO=}LlY|Wn(%Y֥m*AI` &}I;\zS3wT7atV㟞=zC{ bm[ow h砧Ϝ'.jRP =^WrVixKi !eXU:@\ mb\ JiR]E7,q_|7mtQNA?@*)گ3*ءɋ{jf$%'q&i7w}xSj_x%ʰ#bmWZ6Y}89=Jw7/c}72׵nsu8ԧ2uGȫf{4y&^ml?yN͆y]R8}2'鳽edT6ؙˍ0czOڪTzCAGi?YyKi0q ןSIs =$7z˂NwS_ȠAUm[/=۬-Ȋ: _<}^7Ԙo<]bswdnS(H.%uΥ"Ʀ} T$(mx_&=ӱQhUwIUs'?xDny6m;|}IT4`zE OufxC0\[K>ql2ۯ7F۔{n;v4m >*CU]&e&s3OlLg&$u侮e U]VJ]6Z KӲNpU L &@Id2 Z,t-cru7@6(Oh $T.XBgu͇_,bdkUJlZ4H魣:Sgjhz15mm> ;{7ٵQ2ө:(7u(}$ HW~=w?_6@i۪lJqo+ ؄b%v?Y0,O[fc WnK9-\o-;\Uf .o(+PmhV@;JRuNI'dl %0%<50PϘ9a}V%L) 0A$dK9]^>GAgGq7Y`Q+QwWƣ"^}Or{ys%h3-}nCכdgk<^goߴW$ y8"K3{ jYdɒu_^ ^);mjqj?^j;z7/TܷWY#>69!9&NW*Y㝹  \? 9#hn\61{~.deۊS޶bq&i9MO7U y`j Zry~/r4!NfB!io6I_#k{Y#`f( ؞Zo/'ծ,&'GNlFS6 ͛ګǣ8cշ^4 YKvat8F?h/Q @rMThW{=jٝo./~NdOYQs~_m2-}ʴIP:ϧr?\?Ugֺ''OC2ZU#B6lk|)&|<9s7|;ݢ*2Fᙁ=-/Q/: iu|7󵢲D]?yzj23A\rI#0%'6vʵDzJAad# (dHj{XRt5AI+`7#gLײ=8jԎn|GVȘgБ2n% (?Lf-uf A)-Z4ԕnMG|PSH'7p‫*;Z#QʥMp, ,M+ XASbn@+z\/lvk*Zu9M.G$6U|1tK 2faۅঽFBYEĸVt.b1F0ʊ+ HG;Dh_B/ko}`Z[HȌ*9<4)xlDVإPp>xS83p @Sa(Dop5-ylœeŢRF%8f%]]kҘ'3E(Ba&i@c`V(Z"Ra)Е`.Z*Bje}#7YjMG$"_-К2? 彼min}jmGLϞ=e=Rdh8A<]۴a`Y [;]>,v|l2mG}f:Tt%dAs=lYr=L[{+ʇ6˰^G pӮӶ燻ZA[˽=<&Wj&TVZj~sv_+18xEnMM1lƶ#bl7Otؒyx쀃,w=w Y:bfҦ1:~~pp1n@6R?=8KG^Y0ucnS۵b5]ջ|wo2 0vG1qwP[};>Us݈bq6z(2F=.fɆ/q˿֜Vdw'f]wjſӻ2o*&EfiO ~0S_ƣ*Sy\m7KlU cs|nlvTONzfvOGS[VoηmsՊ7yp#,ݮ?vH#mxR7 v_&L4 $ԱoM`VJ*Z0Q"oyѤBEmlȡc.Nu')֣!-z*t7)j#'xU-"G: uQx,= 5 ak-Hw&HƕԪzZ=onj*zf C•tF^PJ a%{:6"DY $Ɯg-M&?:LJ@r+_4{(jVk qRyؓ'qzXB'W. 'Pd3]R!ˋ.&&i"g4ر9zۮ0{u!@P}C- ovc$Wm<"мD+΀k6B.:&|\7`(ȇ{$~Q5:R-zXp=8/|`^DszT63(su6!I,9JadED]uXfvƮ&:nd2х=EvX;0# ڭrkA/pmv=~Q "WC [tQ;|ʋ&Qϭ,lnit mIGa&CԪ6Ep6ON?:06gU>\bx:or|rfF:lil+}3+帮 PM{ggA|,AL[_9˺AJq(,,;EsYU c{0,  ۱204}ûlW&6QeVGSvTu:j Z-Jh4:B <>+F)δ4*P KUqz86mr6o TpgKzAorrx<4VjUű5%aNt*[.qamgnNO{o*pݼ[ϋ/'G/bl\y JT/w9KˬUsE@D֏Q udGOɠwogO&~;/~GS揷Kꥳ?F;ܖQ]-l 8m$ň|{;$.)ض]Uo8+ˏv+KS .v]`%!-M/WV'gIM]ut*@‚JLH⪕ |#h[i5h*降Bèi3SXV$2Ɩ4t*juf]76\WX_D(ʒ6b_ʦvgeW.i]op/0V][?~mxu(Ŗ5}5w1M,w~لŨG0p[\;.16\ͷ5{ϷE]]MGņJvfUQzXl.l;,y7;7Mkpsɉ:V[rT7?w[v8!_/֮ IlW=56 FdhrvlQ$wɷްH0-8bA;^|Ku'8z5Sų{|3۵ySg${;K] ?z0@o?àaCQǑE.߽o}sٱҝ7 Zw1iպ,S*:"´W=pva)<@+t쒩-GxfFf|Tx8\ Bt-)*:WH'&tMfM Qu}٭o904\W5L%>vh[zU:BJܧܴ^|{iL>o]pd*ק㻇V`-*j\̔ٲtM\:cT-9K!"'J&C3ZwMXbʜI?~Wn2dNڪ˕hnMeKzƘY, P>µXQbiIdqp5*!# ne?/th@WFlTs\[]pS& =-ݴE@u&S8; o@;f].؅I%jT /Je[e=fғ5 劸TKzTu$cd0g[hFZ͎qHtru*p&m~<8;؍ab)Z wNIiuf_.O?1ms-@Z.՘Jl+z`|~V"X@YF1>I!úy!s0fǂ KKЕiHt:>8aItC;a ?L\\dҎK&JtJM7xUT,> (iC偳0 (R~K=Pl>FGveaWz֌w5FK!+}p#xKkA6;8 _ók|-=[Ø{BZ9:*E:WRյ?y9N]ZS'U0Ln69188/* nZ-VX`C@юХ^tARy t^v G'K4t7d͆O*3!GiܤEuE;{ŧ?=W5PҖmYA_m_V*ڂvDZRy6ohH -b-P-Dd>/DA3׫7DCE֗5E}ӷȕIZ|gH싊Y?&]?NfVuk m%QvM})nllp)nV۽(`!>+My;;Mwnguߺavpn^޳4M⁁{褱#7sߡ}ߧ'w(;OרC6W/0{= af{a1"ӵh=7E+/;~̲kpWM?-ejV Zo{jONo.)C$Z7J", v±^ Gs σBlNٕtz5WFBu/ ]#ttb`?V t[tG;vsi[< jЇYq oL2ǭ"k+Lq #=rvm+ڳ'֧oLym+K wzgҼ^"r5/ PŴؓuIcx;\ae K/Xx)lgu(aDXH5C%m;u3lUmA:q h'VvJPu @J@sVk"r>\XM`Q4-CR[ h WL> We%knz|fwWzFKc^ԝdpe(:y ]f[p9[Gb]T5#wZN,declz}8=V-b%nmTMY?a,QbrIhBM]ңp4.*Ew86La0~Xq5Mp/YM>)brE(@zW6Ņ6djݬ{4H>8ꤐƙ+=z AFݿ=1b<=jť#­JMX(z9Ga.";EΝFvf.r^ݿ_~y=?!x}ug_Q[>5exXgkq_mmj.&YiifxbOa4=9mzjk]ՀDq8c7RoXo~byY]PS4@"0ӢQ4cAo8Af|*kq 8_<ɾ{.g.ꪢ J>g1N&GZ&Ev?8k6e[ۑwKNlwKm*'y;i\dg{vM'kpIuK|巭ի?>0?t!qOMq؊ {9=N>huOM&_4xO v*ڳ{I{32+$qg(IHW4t?=$6Qp}"XۈͶ[8YncuΦma(v(&mIM*YszqOBwc WǁH\傤|+6Y˗|Ӫ (+R2vA|?/ʢ|xw}lq~=}͛I*{1:zz08˿_gžjqJmZ4/ݏ&x|ʜ~h%|{߯[TH-cn*ܺn&:x/]TLe=U&bE+p?/&Ca(rs\z^^T_OF{fMRZ/⠤j` Llmd[b+Qm{hxVHQ FAuVծQCbNlryHuo]љLG6N(7` ۖ\qRo}7x#yKj.k:ePzwjg+r=iGThL宁7)[mW;-dۄ1(3mRᮄ+Lf4YHioxjhgEҐW$-;?ƞ \3LQ9u9oϏ">p3ж N-+},"jeX5>H- )Oڊ.+n٘DİU[HR#TA~910hb/gnhQZǔc#}8 *bx>#WJܤ2iH0ředtR+WNјQ ·mM,` L hz U8禭7V+>,*+Hj@'kFߒ@=^bY4|Z^.fo8 gV͛{-5`M. :A>׹O99Wuy.QKU,C AO1 )]]5]m8Mvk Qamz暒srLHm -+ofk pڃv՘IuzxΡvpѪǥcn +o2-J Ax=5S:tS9N˝{ nȹsϏ_|v6Qׇ=Aɓ-\(tה r(rjَ><<4dhs777[58X?@/m^j:X|njlQVݞf&cqxxf|!we6n$9vcˍ|:Ni8=&Y,K;iO :ȖǵtliOq۠- ,rlΘ!ϵZxf "Y!Kqzt ɗ XIwR*l***,h2-OY0V?  uhϐDTN V}[v Aێ(Sp6YcDz3(.,d%lZ,2PRu=M~p福~Ramonc\X&)\ Zrm%zI4ﰪCG iHW"9]v/>0 T`N]ɍ?`T="oD)!" i[\"8mx̞Ak[8Kz1`['T-~x&n;ov>6 F)`g#qX `B/ l'p[Qt1s 15'*+&[l ^xUmU*{4]_xvgf?{\( OMӕ#7ipeu)]oW(TZN}ip;Rta%<#:d]mpܧOwߴ4.F0#Tn'N_~wGY+YV{rygy_C꺟'TVo]"[pv)z?w.M=:rIW6e 0p3cAK6:|Uum:[~C*(mfzVhYOlhnHP0lz]7 z9qvc?'P^7O0.uZϾ}~S?&aȺq5n҆R0LYIi=_~msy[˪ i-;; t}D] њ/nçՉGǪ:I!}`xǣ1my! VȮh+lI.ԭ&-ELh\W9 uQ*|wJPY@[TMƃxvx__n04vMJj^dxO, ]/-%h/mMuKjQ+ZkK tl2mT{^cU4mxC# q0Ro~]^viM,QiKtB ) jha"-R e#| 3, f\0GR MT:t,P Tuzr eea>+vS\GTrKڽS˝x *-p\a^(jj[DL 6f'ئkU[[ސඤ2M޼Ck;B B*p Ea3W~e\? ϲeM11k``YK*D^ ͈8*_d] I_ `X mKD!y#c3pD@eR`[ E,]D"6 AK)z-BoW +]-U(B{],Wց#jWҳLLB >@o-]# Z4/9tR2DG&JcC4w揇h83hkUlgUZͷ]xCvklMYH=._`q֤nzǑ盔Bn#3vw;70&.8Kh]a^7.qM2ݗo(>8->=z=f3o}s / D+9f'v%G** _}E^} A/)j2$Cal?Nȫ/ v~]5%_UK5.ēǘщnëvߖh^6:Jhgݰb8G{9-zezYmˋb4R֫*]Sm(&>> $Ȏm6\Ћɸ`V`$f@$@sa \D&mUgA AHg,T;/swo_>`$U&2oźUós㨊aAӱ^kT /|cBDz#'fYtzc_L3xz[Ƿubf‹{{ `6.:  zo=8oSϬ7EY$Ƿ%Ǚ'6}>_Pf3n9bFGkBQI-]ޅ%`pM̈ɝ@\SGN{_''|8 \,1'H!Ĥ/UX+m&Rw  75mD=#3ƞ wP97aR(GkG xʴCBC2B  !̡2 +e@_mqYLnu;շHu_HXJR\T,$Y&] y[^Gsl-@>]ߢjD4R|Tm4Gc٧gd< v %±%0WXk ,l0V (HaC#`֫&ǃc-{:ɼ-V7 J .#ާB ,ͪ3wx*(' \ Z6fv*M` jm:lZE }[Jpr<\I'ZҲͭ Y[)Ӡg{nN'BZu]jAQ+$ȏqDo^mtw ||aN=A7h6 >5mx?|Dߣ75-H8lTs">`sUכ+ Ka2eFa/?70l 5"cϻش5u {0Hb}6EFZd7n ֊SGw9maP}.A0 _n62kP @:]6+^9;>#U~wUv[ѮkM8몿Ʊbaw:]ޥMHj&1G/>yR:.&vh:|SGٸus͛m_nM;ͫ|<[CݻAL`dmx}zʚ `#ߦiVJ4͓q#wuutP"*Xo7Ϻo qS&r"(WѳKDcA6~qZin^%zU}[Vi^TlvMS"ҸSPsO|Jɢljwͫ[I\:wSoPق͸p2S't nv<4N8~>zb<#xhٙ"8pWNxlSԍ"a0 IBkR9x6A!A6cb1}DL)Af)(m5gF$ǎwt\P##A9Fy=Hx.k`$@<7PֱAc':580X+ɀٝT@k;]Ocr=dZY=ɌCpuՍSQV.t8R.eCO(ߣ]]rRo pe1ȷ\s6Ϟ{Yoť,g ;n`, > [$ jle2C@[5<ſ6gdzF+ 0 ݟAkZ)0]C@l3jQk0ZR/̲q6<ɐ^@Fs*,e"\7CM\cc`5`ZQMp[:)hh(8ag`CAhx_.Q[Qua.@fͷaznj5͝3u&ڻ :& 9Ͷi`$M :c uHQuaB*^y}W~Zg4X^A4pus}s^f{ I9}/ 0Kѵ[UHmtq:Ե[,põ滯_]x "<,u<zon<R`"zS.IS~giKa!n8ߙ},ӝLvDQN'{2 FQupn4hޞ258(wd@&U{4asZg 1o/"7U|ܙ Onrw6n,r}W$FӀV:pV8 jQ}Y9gۻk'vJdo"a# 3G"FaV 4mm3M\YldbО7Dž6c9B'E;vvaDˮ7XmO =5FuDv( r+Ra@}HĢ#:hẴ >!=kI" ͎SVp#W%3FgOO榢28^'(}=g?g Z0Y oh7tҘ!('"H <_Ah/XIguxmіYYQ1qrCl\<ǾtYFC}cJ'mѬ ҄T-!} 5񙶋;r5GmD>oE}VYF 0Ale\| U@!6! ER#/"/*jr5(< 裃d}Ew<|C!K°yq>ZݯoWuY\hNDeaaZS~oTȏ\Dι9|`F~Ǒ#|`)sS±!6Sp'wjkԊy)')ȻdTT!g; Rpo ȡ֮ݘ;o]tW-0~e&p*:GM}8ltYK}h*4$ll}LM[,V)88][#~.֭&ܙA(jMUw~\+]\wx%U9>rYL,,#u_m/vѲ%m5=Yp5ѠJֳ5ܝv6nc%l;! #LPN@x#ߐJDg4 g]*߽NCwh DvIY5vY[\cA_X->vg :uY߼T_Yާgyb;uLWne4AM,u/H^NOwolޯj*Zɲn{⒊ךqB>[̇/\]AOl@{6lչU7tس븕y`SHݚ~<n|F|/iz߆wH0Dz%l}fi;)RdѼ#{ 3)WDZ};aFLJkxڅD =y,qhgLK{p~߿v/Aua O]WU{O%sX똒piۓyc+>c4N{%aʏ߾xD?>tD^mO|QO鱛UW縻_{s\, nVTn{Dh5@ }?@#_h Lh086^N{Dʷ4L >bfCնܥ W!#Y7%(9AeM46^% iPCQysv/~spQ/GON'"^< ǻqONFop'~ڷS L>24|*n a YrZ~ϞIț(e4n'kqtlGYE]iէ/{#m"?=^tP7W7q0D$Z<{Ǝ꾒U9; kҗM1-xoUsKoxƠӘoG-o~׻~vTˤ& AX~HD|3zDmv䗺wep'aP0aF0Fj3VI>bwvӬs8etfP'>J#Z7qG];Y_qEc*Fպ7izo*U6ˮ[3磸^ d<l(eoz!?Qnfr?_l2]/~]?y)EΝ')"lxнitjkD7L'=8"n6̇PWQӗ܋fnObG12whx}$6}fӝjm'lABXdc'{{C\$ Ab  FD$)/76p2h$;f|Dvl&;4fêim&qkhb[թ M;U"沘Khάan&TkDDӣTN,΄H|އbփuv34:\/Oq0E`|x2gO,NPˀhf:bb; 4:TVpS*lms#m;{*Y}?y:TkPR3ѶM{Se{ocynI>/{`JQc#jkᅝ@ <ȉ#%^U%moVUQFx:D("gxsv]w:ێje{PkQwbk?Btl˙+tAf28a֦ 2ZܐFxqxM֍۾YT2%}uq[mltT&pvkYxBi gF\U~>!48$'{Umq$t \wn-K)~ }['5)^#G]x19: w"7_^6 +*,VU6=O"L܉ЧHq9 [6`3PB:AK3nHl[3]W.YߗF]W Z:1(.k3./ Arx"BN@ >c S[$m7$4fH5xNzoHP=?Tzctxqn_>;o8)˯)o=81k]8#QL"Z5dzwX6U)*?x79 9 ixI6 !5pEp*u4ʬBZ#0;I̅v {d }!8jE\Vlك(cÁTw]ߟ4Us>;'S\Ƭ/0hy)7;*`PhJF-xxppG\6a֒~[w.{o~[mWB]tww^uGw?~W~Wr|,wy p{UUnֈiۥw?;L|`e4MC?j;=U1JPVrTݺN%'S <:,>_5SE]7Hoġ;]Xwv[l?=67wEd}gVObYi3# t@p0sUmja&upX7P>UÃm 9M$ȚD eVmwڪ{|ܳ0`8Ŗ£@Җ˼χjKk:i]cnwK ?ޭ ҺwO,FHY7*$<7\.69u]mnXGn `˷Ra' N1ξq2 ?yx0|o.cbv鴽ELӛ6~9ʿ OWM2>[״սoPo.۲ .^óh2lrk *@8lZ|ٮ )NcFܼ'͝5{0&wzEX1^|_nO}1rG4iAvu涔GmY:S& ȾУ΋Uu:p7/D+olWgyy2H?*Oմ?)2ݐD˭:M9p1ݾ:)#  }q %ܢa+]9;~tv $u; G'JYn&{Y]8pĞSxC$~jx>F}bĉܜSmJ3|[z+ 4a>VfUrU&2oҬ Hyms6%vE!Md4M\=ҝK[V#O%Y4q+r!/sB_]5N<9D|ոSvft|:]I{_#3[px]Kr@k෡kO.Aڗ#!g^vĺ%j0]U$zmb% q.=J~('jZDyb g+m0~l -ftkeN\KEo>]5) B2w |>6Ypp"vʮcUY|O,ZN^Gh:oMWS?/KWUy9pޮ?W7ݻjӾow%9 2ܐn`0/-XՍr/O>yx0F`$"ǻ y}$K1޴nͼEekY1 _μ|1.0Ֆ+ۑ=>Gg,~o*ݍA1xq_;G1("Ⱥb[uY{ͺH׹)H ˌqNOYRibJ+d_\Kȭl̋&L7y8ÈOؑMG< (Ho߫شovDɜ'Qv9_߃ dJf$Z$b2cG_QVPtt~dH&2Mi~] mj.Z+I<{ FE7z!~f OĮF ][5My/;`ݴ6UER1 M09ctdjZ}wX9?~yWN0-wz'PZkMޫ- 'wߕ]BLkV/Q #ռQk [qA>a|{_.65>dl˜:xMD1A.LT*%yEX]*HUSoҗvC&N‘Nn(a8 rJj݇0ڮWE4A=N(dޭ|4 9-4tz@8tȮ8-4Jm @x]_K¥GCqط}RejdWB\8LO%89Ҟ'1c9,~ uNdZv>B1lW7< ՕgA=frױ2`Ŕje,9-%M؜pMXo2.$a՞ԍь=Qq kpR46Iљ#0\qUʭ(K8im #*Q9]08O FF4t6GGwH' m2Yz8tmZj?Mɩ8lSlk'`RMkm9k@(1(9!3jc: 8ҲZ9>U$s|gmWb#'ّ?&t͋?E?^ hW7Ery]ٯ~1v7]y|moLyo4 aP6)]}ތz[NaWn*w}", eW$"O^쫶? gN0HlRG<6Woq0mQO~@ШLym?>8y^NR9@۲&quO_>x31Lq#Q&A0vADpg񄃝[vz$j.v]n0ј"'dmEs߅aN}:˞ȮԮv1— w2ӨG Hf/r/OpׇG}P>gl'ǒU7q)f2:m GF/ك'szZ)kktJBDFx#+\2E5c} 8Ud{}l2G~_o\1s>xq<~9t2^F3 0E"Ի$cŸl蠘Á841ǎ=~I;]"+!Ӟ6ksk&EGTD '1:Wͪ~kH}UQP|9PKWׄ F}EmPu1G^Q4R`f8hxMo SCq9@S#t|u3?~}=} _' ~X\u5=nN y~m/So=8,6]f8"@\Dn34P2զ '~$H!!;A8uԠ&ʠ=i@6*+FlIhN!iOȧ7[`R8So@RS  8 >w⡑JZB| H@i˛^/'`g' ^믿*Wݗw㗯]{Ci5(iInjtzB?\ MoR]o7zW!'m;ݣY]ݦTm媎Ou?h"^=Uط+xէ}}x6_~_|DѾW .?"peC{zh4;lnuK9/??i2lmËݲ$Q)~m*}`rPaL@out;h]۫u϶>tt"ѾAD\yu_TߓX:itw$rr pk]fXG~PQnWTW:u ~ubU&+j5Fl;@uPRT؝zRJN2[fڨ2}oROA|9s*~Y! {A2tהj`Mx0\ Ko-ۃ)cz®&-1⮫Neg/X.R¹G׋Gg^RɒpS?.λfQDq8Ǩ5n1j2 ,ٝ.[, ?w-aamPީlb_ nuӶ6A\贞fw A0fڅtGٶ6\aŽFtGj٬Hq#߱qq 4F  }D30ઢ/\p5yґn9v6W*m*;HT mГ#L𴒮,Sǵq͟"}Qc 12( 8{rV_߷2ЬF.K!]/] vqxGw$n n'fLڣzDN>3G޿HIw KC+LwhC*Sv6v}\I?-`*|*|gA.H^uM s=2t w<;K\bmE4q85L uS9ցmDžz↉N)2%:}kaS9)C>Q\ ZNR8U fT #pS@gx X͗j1rh} C3tϓ7{'9Waqs{uU>E&~'^=|P`Ƨ3ٰ/89szLJh-~J^N&4N|4 'ƓE;:ލBF #Jìzwb +T:wQy`=;(,p C9 uANW)o#5~=M-=9I$I3KW˙;+ v8 ;fh4FN@,v;;gT>4O~}Xb6c"Ռ8D8p+/Iܯ >+Xq>o+V0 ګF86p꘨AKpC~k<:gM=掼Etx5JrmO(tcuAQ=8޹j|㦭^g_mj1nRYѸŔ|xHmZt7rɇAT;C~2﫣0Ϋ݊Is140Y;ZíݷE $v1OZaeƷdۃ9Kz҆x~9yū{:c|X'zNӎ+r`࠺NX}zSkY28z-J2;YF/˺*zMs`-cv#V]gvnHU GlF;\W#.BSΦt>U2;MIQ>eб kLtc,pGX-nP)zJ˥t5ks[L(5 3DM‘P(I<\xfOc4>>A%A ; Gt,|A|[4Դ-1..i˦#5C;-Ȯ]h1>c9g#D@*23}QJGٲnHMxB v C&X+m8nn$h뒢3qaL\c!{ܖKuCe/u0\_r68w܁pM!J?M%7Iw--b+F&ln>søoW m8 Su^!+U%}-gӬ[7e33: >y'WMsWbqdT{q?}"?W,y\燲8iLwRoۮ5;Eu}|˺'\t|&FʼJ%hDG|t2sOJ@K A&Ņ;5i'tPwl@6K*]K~i'9DO`ڇ72g˪RU?ܯ$:yNIwnDׯIݖ̍C?:0{">Ϧxe`y h=d H}=M·CwN#>u3.\׃`YևcwMrw8f1Ql"ܫ}sm:i9wwݽm* cnǓzu&䋳b}Mwq_geG˺ĕuf `lOgp g.v/va1Sx$ ~OOϿ[1NjߟMJ#%6WL N!2Xp!<˾jqNG5|=D5^, $߁d4T8#ATyxhpnV姓s>Qjf I BVF'r=<1:×<63yƦhh[TY68HZwOmNLU@ж* L(:5uQ͒Ʃ;nv\ Tx!@2mvw^n+K2HLT;9_ͯ?jM~ㆼG*s8̓)d4Y5]8pᾥAzg`..GwDO@r5U7p O DQ#22pvouf*W+baA=)̺+{fBڕaaqVQTp{0ude0Dnsn`R BCϙQo}8f ZmnB~<9çxf&GɌ ?K4|݌E4FL#p<  ߗɘtxq{0?4M0/@ l{ߵ|:I~Wx.iw{ J98i57mWc)3R7xc.uoU9 Ӡ1bu:xІ!X/5pH~CLcB¶kPPN2 #Qvl*iڬQS-^J*$:@vu:>Znq5b^ j^'iM3i|?]Γ``'h-hQA7'lx|* o^7@.rP$P^~:[Lɋٕ]~6~6(2_dZ32m8ؖ\ xwZF,7u/mWuӺrz-;?JKIа=?O~2RXM/˫y`zitFM #0!Vpkhݤ4 eۦ @cx p>%ZÀH-tڭ"vqݾ!Xrqr!Ϟ@l=J5 #)@`Ld{}˞ꊻ>h6>wW,ݔd:t'DyFc^ę)])"$dD;lEhM 8v 'foۯ:q+׿O~{. (rPׁ?erM%4$-'ոA$Mg] R,kRh3rj(v3kĿ_MPޠl;APg>8iZa7c&֔hٷUDeiڶZ'WMOE`~>m[)KLF|X7վTގ7wv݅"fs݉/sC!?5:FCGASeu&{?8]XlVC\o4Wnwnb8)Aˮ nQelm9.OŘ մfnべ>/p v[;~&~SfPz ;LǂVZκh4|._I"veVO7XXpa a8=WP1e]bK|K [ݮ^ ЄcK~(@@ d4"k,0&50Hz9 h]+&ì9>Uvgώ4nL:1N22ހMg^MjQ8ē9PcWs+܉:;`;$ƺ?;ޑhq$m N10 eصx6U|aШagD,8h%~_?ҙ&1Wgmbj\c (1=t(PcKt,W8nJIs]UYD&~j Q:Mi?Pt 3gmJ-=jP`+pc do mCzA/f5HlcB<ZV^@ޕE_' [%zM+wn|{Ibŏ{',A:7e87e Eѓ?Zh^HqsLko^={yv9OQ}FL>;t~j?TA)Ex阎NZw7ǻ) .HQn4 kggvw6 ''Uac>7Sovr| e<!@):̧@h7U3ܢ1j?@}f{-0lq=*ls^Dp)R*a}] aX~H6GWz?HHepWAI^F2HXs|;ONr.+ֽQqHJp/7 J\4|2lOG}5Y5ǺzA߼ݮj|> *VIWMs<~wxlVrUjRmM*-'wU͒C:3SLj GCWr堃#y%%tI'K.6z`o8QUY`!Ħl4k,o4)-'yi?e-3i+DL5TԈs[7=i+z !w #H3ڵŒ)Tff(G)lPvQ6 ix(ua;, qLﴉ$ NZ(kȖI΀w(ٚwJ4n? *4 ȠӡAh@ c,[2{29/YH>y6];ipݧ`atFf d&ћSAl1|&W#|"?&q[@N+6eJ"?0x4h {vߛW%^Ӣ3 ۶g[fZ[zcK3J`V]]>"f@mŽ*o5]DWxzo“0o}1FiA~ fbqB&.>u+ϝD]̇?at˚8'5:v[ecs9Cў5ҋEADӰ i|qmmq[bOAI_LE+rF _ҙS&lv>p,apȦ~K+o\a?9mD0p ߉0Bc=q,;>)7- ԃxxqyyI],SÇUx;e,ۛѓ}UzW[0nO=KyS<o5#tu_,s4pt([V5Ekvk_gHFۍlUvI-m},Up jsL%.*2T5]%>Y+o)JC;{ͶeIUȰ yc|6=ȃ0fA4%8шǚ:U0DӦ~<l腲2Yg$/CX·w;L"K/C=rh0]9rl0Sy-7{tyL b-!94U}Gb{ ^ZrRc`4qg*YЀ));c#BӁAS{l"iIgF rTyFӍz( Q{ڕFi1LN%uNӳd]ygݧ]zs]d;JD$Kl0 &Ǣ3蝒*XW[lm@h?L5uOg 2Gla4 ^;e .PE8x(욽Q3_7z;%(pV8A~fUpiUNmgi/UݍZ6VMՁ~NȡD 9wu3sFOXY06DNs$`qR>iUIJqt d! ,m,l$cFʖ>1é7ƍ7I'*&ԁq ֓xzFi~'Ҷ[Tup\ P8N Vn')%#gjs5>2_>ҳ+d~E> Ť+#X5j7dO?=xݪ56hO~o-2:-'֓c\- U9h}MHw+J=۪Ge\ U$:nYꡩƠLc޹ӳ>TO,7{V_E9El? WTkMVXyn-ӝvhl4zXA/!]JD0bj"8;qSLaT6A]# yf9ѨŪH$C `¢ [@ \˂PFؐ%ᑠ;d7cݹ k./$ 9>t6qt)&gln[ bm55 #o`BSj`2)AxNkb)]K-pnߴU싃y`rWlEc.(97~jTENߝLuxQjO;s@UQ500CB{TM1bmiכDb6Y}YžGQR)MC '٬DӜ؈}7'cD\к=9zut>nME ZLB[k?Ο wr|7U!"B'Tŧ *O&6I"TQKU^4.rnzS&KTvg{;̇FFԼQA!IHyW6d&+[؋vi*g|՝W eC=j4D^e*uI'=ESTiq@zclRgM&x~/?Sb`wac%N Y.OQN8-i(B{7rmBqڞ&x璔j)BC]v58EoR3{(^.av=k|%KP!8%̦kkiw=ie<{'{zrs!6=tHwR -v&DsUuڲ|_'d#>Ϟ q@4< m)Z9bmV/uS2ܗe ^?,#[ݞ'v= zK A:@= +$i%xS^0uG Z~ЦGB†.e l?;᥮=O_ 6`a]hDU?>gm8kp?<[)8YgCnn/85{\~~|:LwK$IJq뭛cDō ;{uOyخ40;_DvzvQ:.>/HzXU[5Y6_>?SmEVLΑϠS5]LAIqߦ4;j~"|v:*}[q{8جyR`=۸}Qƍ2I$mU!Qxׯf0κv5Ez(}ҶQ/3ġGY7To~j:qٵ0(V uxheby,p?qNA N I4Iv'd3z#c3ͯm~|u,.IV} ~`Rz6l l0'2?GÈ~A.OMϣ9^\>d7*KC?.kU5qNmHC}utApk66S%rW6=Y<%i׎gOz24kJٙSz8y3vUwK HLg0ZT]z㶒ΞH8fHO,1bpPJM$`,0uDBm;Āضը^2 !Yv>}RvQAt=oz%g `\3^.Ԡ 1!1b" DhfrqIp7eq$eZ*;~GZ=oao-sߗk/Ql<0L΃3?xhv >KewryC1|^+x@hRA{hE,=8zgt揻QoRGGpiS6>Fu~GIq] vypTG.4Vav;tnEV+|Gp2ܗ4ǧ4 O٤YnJ֟ ] T?? N~1G<~XẌthab1بڱjȖB TFpZC2fc'o(9.7$;{A۴Y J`pTwYu֕DigxA@W#$З<fF6nAr9-DQE$[L:͌JSAua/vC4WGG^r/OLc[yQo_RT"R4+J{?08n Pm %@@4R 6R ~0>K#ZiV3xz :5=Xh_?xԌlMaTewۼIT(|;VԏN)ٶZde\uiBNLw_i:<f~ ˦Hk17q{\×ϼ N>..t?~.١@ׇzS۾ gvofS$lf w2x|^з|BV(vשZP4TT;G_I mIܖqY 1mVx=X!2ݼd'+TZDgS7yP(nI0eN?hw%C*͒[e0£G=+!6TML5w-nMG^7T=.#PDm9xs 9/Z1،}Ba8 t+fTM":>] YROw[e7ׯP|r[?ZWQiFC`rqwIj*> D88}^5jsȆ}woȒolS>Lͦ?fLaÚhp̙T*.]ײ'] '7^3hJ!ZD/??juQZ3PY_aڽg÷.+B`r,~g~^ӌuWcMnǺ}^ex *wrI)"øMfvݰsl-@Hpr\6̍%*z;=';XGE^v`︡Ā }rDͤЙ9VeOn3J*dlsoys|Lq߆Y:D&eBK} jJqMەܼ`18_%}6o *n.i{ŠtTQmڴkbS+ԟ76@;P㻴O?7rQhGnXRc2vܡ:'3!RkuP7tC+{)zCAOͥ~2 6e'>xLn$>iRѭiz:^Q][ZA_<Ŀ۟ ;&n\L? ^폇fK@{p@ӧ?èZ~Kf퐙/f/b!*C!KԽ>i6lnKuOcu\˺3? A6U7iŕtxpA 68 HzNv@C׿=}FnEckcZ3Q{\_s,`܍gFNadMSux@]NzпY.ov-/fϮg5I6;{Tpزq.%3EC{}[8#t"Hu8cY_L_W͘q;3Yj!G DP[ KQCL2Ͽ\ z"n37=guWJϹΥ 0X\03BGoUzf3#}>> ]4vշQgpmG+bQRԘCyND؋~qla7_}ÐA#Ieؽƹnu$ 0Dsi&|!݀:F~F+F1YJ$@p<\w4 ;(CZɍLʴ(lf@;.>≝Н65%V!ƁbH1@{Q+!L;lW,:chZxYWe[ο~(w+RB^b/A 7.F(QZျ!åx:Aɚ8ɐAkBC%Q,mXSݸxD2mq)E`FlmCgE[_òbjt4U-ƀ DZ翿϶|γv]ʯ}t<AJxX2J{ Q uVnwkdpWZbDcA^%D,4!v澓9qx7}]3׾K˜>7TXV!Vp)Uoڟ{j) )ݷH4z Kz, ;vo2tH3(2!,7e0`Y Av.v G>ܲv:Q`Wvo) Q:r&51;2~2O5- 1!&!M@ ő"/lJb}$˟!h%klNynlgʚkAȱ8lpp<= ?`>}~)w5"t[=<rD_MpXL {ny 6SûV4Sn_0^#PJd_.J7}f3>7E )>mϞ^t _^>}F652 lT䃙3͵G}]ve,"ΞowN`\ 0ɥ[tuBU3wu3J~cģ#.2N ?KA8F] }^-viO1w UF'5nTqd\1YQlPXtRG'Z> Q&qL=M*H d^Xnݜ)HdhrL9&A$usk@<]kj<}7PBA3aeE-!*]70?{|=>bN i{r%w!ACבa9.c7Ww_M/\?nw4"͛o~mn̒ph,=#VA為,D 7O;1>cmjPq|kNP>uC:HCiq%J2 QtEwPZӕ 4֦knx:\<:C~)8k&Sȝ; C?MiUZ"-1Q_]p}!iUtr3rG? `[+L]fs,+`.##$h8Nb@C! 0bClEKĠ_A`Z" F(4`r7M-60qXU~``:Gq_>q[dvYl-$K`&Wв_;Q+?hOn@m@˚e7^}‘) *ɤ ۾SX 'iQ5YegiMM)J75 -3yٰGTFB(2`r+ LߝVI\~N׏}sf1$C!5fm-x7 .0@ PCfbVoGOiut8ǽR+rYNfP>;ăDONb,6ۚv?YmYTxx=.tl^:mz=/.fU~#7vݫyΧ.l@Wbzlq ҫQPq_j渴Y=[~Rv;Le5 I<=jIC)[6Lz8od+nGiFT7URjE4Sg8udivh,"NSwfn|FnW呍 t _]OO8!!p#+kwd1O<S]p,Al.f{E\l\2 -)0D?`Ny(V &{R9Flvз`]+\Y5z:Zd(!:,qӎx@ i.l#NԺ9D{Ʋ I-V%.S֕Ih)Xbwo"?Xxz7Vm:g@tax>;5"DŴnO$sD/htlpdݰ~ \#u.yd_ڏ} IJݷw{o6EQ5@{z@mAuFv:@}i% XEG龫+'^JzAsνa7*DsΥ)v7KK޵Ek,n=6]WZm։8^[?y-)-8',SӪ:8E^ٍ/SgEsNk\$ҿ 1>l6Q 6_'$܂e|TDFGSU:s1.;hTsւhrMl0tlk޵'O<0mV& lBx:NOO-eݱ| ,~wq|7^U(lҿϯry[ԗe1/U== /W?:IQƳc2L'x8@^G9pW 'úY?uːA(IutPgjd[3!ځ5CkcҎNƠj!~ּ[ԛ.}] $w MPyb1GA/r,cѷre8zP=n+ 1\ {G +1Y޽9O;G2}I0S.GtZdȦ RU lrP[CMFV E4g3%T})S' ֺ8r27Uw˳gAͼ=mm@RL[z?pݷ}:{W3\U˪r|z ;CVVxo8[ԣ={,Nhx"ujeetH[Q٦\m{uAnyXx$͎c&gkrxu&ls-T#P+=l',LÙhVtjSi+J>zu$&7ނ8xIZtzD!ަd"4)CgOԘm'+poq2hqPg=; sPfm\ǗaTߗ/Ao7܏I[\mL KB/͜AQ@h%hqbd:n\W)kpw_.ャ޵6$bF>)///洃_sLOݘ-K%=N״Ta%͔\&S|H_2,9X,.~ v4$~ ZIQQbصV >Ej$,N@yU Kp` #\w ) I1g4zp6y ;0rKxE%6 =(fgC`"T˼)HP; ݵۥ)y#SUòrRW05#m\TKGqpD2)V7-xrT;'wFjL?se ]s"<܁1%e4Cސ0b̀ǝKFTtciIǧҧD'XhCS)~uǺLw޵h/i8g;N߫t}D^iNk=0VFjt_=7&ǣ%0|xpe U7 Oi 8{b2p^Na_lխ]i1Jp{,IMw_=يゔԽx4xҀLi./Ga 8̟սuϏ=(jz9b ?FӴ8 }qrS)׬oD{+O48uJ@ta~g u x(EhE DtqAA8JU0n^IB 4aÏmCB8)0_TVuYje+ tJ1?&,`\摏^!( 1i賱dMRwzeM]W2SD܈wwW? ~ƞÏ_Com 9 ZsSqlΌ! G>_}JU_ 1Vɨ*:NK=޴]l7Bb >|{\7}_<}gQ8 N]; ,E9]~sQgݯ6p{ˇ88&'̼GĮN=^}VցX^Kܣb};Zg=X%V*s?)#6 CTv;ڑ9׷FUd8%o2!wlqڝSWULݣx^3&``;gb{w? Cv,ibZ-ͭ%Hm:ã5# ]Tz,ztSzhN gd1q':N #z Z SjMC'hJy}~?as6̛yEڷmfh< G$ }=T`:_)@4-<؎Yl@mh:䛯o G Gӆj*]2k.ﮌ⣈V~yflW3>ūŰ|u/mvᡧ=nn;)/eno6EAm+3Hp8Llo z (ᾩC$Uu_60p4O]m:[Ogar]7GHj׎n|y~qf{ltY> 6RRE^F|@y "kkfTs. !1L}U'מdM]4w_>Т?GluyԮ-AhxdE ΣF:)X"E#:}+u$ž-eK/`8(mI#d(V1Lj'OmհY).Z!GC~hCJPz~}Fx$"AF&^5ēIئ'S$㓋}](I9FϺV}Q|WsV@xwܦlCAw0 q _LqVޛ{u֌e}{vkIO9pvνEtXW`ÃnҸ{=2UW~UI楐4'K>U}=oJ|Mu>a~Oo{ \ĹxnF*Uxs6tr^d'f'~|矜os._٣rFfona7t  JY?Qǘty:4Z<#([7vhӝ0B)XڲInx?M@[ 4R[_O omVϠTFFCOjy(~ۮki}Շ$8;9 '::ˇ21wjG_r:P]Y41<:q_BvS2m*ؽ\ &3~!:5hīAWVw:Cmvy6J` >l.Y ̙'Ep+M1!l^OΞByb^肈uќ~ԻA b?7uؾM@;PGݬ;U XFYTigtwFln4RxX v^>a+ U{BrVuߛxR+Is‹?ghg `=]VQط/qW6ѨNyϲCBDW]jLe' Vu+8̷N]yiqf.&iڣPټnAѱ 2j;}}q:<[(?lV7_'O>c~CͲ+o;(E},p.C{h~zE0F$(64 ^Rt|?$WftR&q+n ݎ5vS9}h+n=ܔnn5i;٤dd>޴\+ tdݼ/p5.P>qvvWٶGC;J٣Wmu~;.#{@Th>;>??v4<?H|zLUɼcx/Fǧi\v4@zs)u逊m%k6+NKYsG9-]U;|}o8^ok{oBRet=*sN:g Y)iJ.UՅmj4) FS>gE2ϋeJ_)q@Hc0¾[rMKOji,{k6]?ʂ?piҷxj7F#]|tqtnb1}/Z,4]˧MgMh%Y^X{]}Ύ>~޼bf?aגpJ&4)D.ʮw=v.l Exu!gӛ_ YirWzBCYCItXztg?L~_{} m5T?l9Ȫ_eO)˺~`X>̣M$僳4vF'Cg!ܴ1@Z֦"z`Krٴ)iu٬{llf8!cGŧ-h±'8^uRfvpdVy0.mԝ|s>aT;<*eUb;?J/ A.K\މvsA=Bl$'QC ֐{%(0~?ǖXWl)k$׋d mꐗ H?).*kɞ$Iz:tDR]]-gzj,vqFa<GF ؃Z9;Z.:3pwzlیYtUVy~[_Rb0#mˈ B(*LÅLgᲪC߽6(Ɉfa 몡70LtANzdW-Í1z]Nޕ˴}'O{[Ϛ~J}=#@LXu:*{kagR3{p/OuV4A/BE%?qA}30꦳'ow~/rlg'}ݯ?|Qb%L^Uj;fn>|5ڿfwD^uR.qXGMC:WU%҂mOk" ͒6i \uh#7%-FH*Y u>[%z(J(-vʢ\:Sl"$8oE ڽXWR ~qW)PehXYRW%̠=eAU K޶hO#E!rW~fSl8\dJ(K}Y5̲IWz{(&4O;;qw݀k `=\ɧi[u rRyplWKN,D7ͽk}vpΫ7'wzARтچ2{}k]3nvlg1M':.ǑI۷ngT0\˳#bd6rωm$ɬάsS_l$ֲ zP$?Me(/q@b Yrw=Tf:OLǶQu^I=畕β3fN1=F-tJz{r!MWNvlrY2HImdPk/Ag&!bmc5v}L͊"&9>Jl,نEQt-Rt!NMƖ ӰR&I ` 7X_N4kځ*;Mqx={/*" 9=jG(8nJu`~Y^-YOo{q|o7fu}g@a=~!)G 32#A֨sg|'^\k e<@Uf' 6Fi͜lTS(^>O7wη^_yy%&\,ӟeMW[fwxx{쌤Wx|]lg-gq>viY?X$2d 6%I~9 1<ӮCتD)p@"6t[EK LRIdu(w=8XK8RrC´ԓ,_%= 4uRW )Du3+N]RĠo>G^{?u~WHڵ{єY^vsP}'ᖒM?RdMZCp$"bsCe]80_VP8+gbKK~9\Zd㴦/g3ˬ͔6ZQc_=-Ʒuw\%:QϿ:"jvY(rVa]ObFn2>z|Y}QNcKZ(kkWpg<9V1IMc>/WF )ΠeuΕF%nXޖU bا ic{4Mf3ÆݪT\2%3cvHy%LWPK:4 FWQFbXi ri-梴<^wf玛&ֹ6>3>Hj<6ƄU/ܬ^kM`T(LpM4j<7v믂sz7ٿ{+2/?Ļa+:ɒ8L _+ԝc־dV wwzUXg]j~e},::jʸf'..fz(DiK4[zY~6JwcsQm0h„rRf'Ŵh}QOSGQzj7Zݻ3%c];/W@YV|:CXg v@\@U!V5 jEeCE!J&@ۡh׋γEaij5 G$wpT̀yS߬&}lT)ٶ2F[3m[kѸ.i!CE%;G0eP4 Ŝ\Bm`#=mPk*#01[rHo7mӕoG+s] Q+ L5kGB(8j⁄}99GU[,lW5z}x7EvXfPWU XdXbΫ7HP?m КW%20AT -8!R_QGfT)Zxw3cG7`[Lٞ4pWZI!R yʫWz2]KM y3n#Ys 'mM0ʬ zjjh1w2v ˯f|yؚ?5#?ӟ}ѧ/8c|{PneG)fz0܍᳧/>zO?/_^m7;o}?7`5vj:Z*4W,^wRsj O$L{swcg4xrw]ş\ֲ,qEVp4o}6RLc{)g]I^ռV;EUuƞƲ7.or86+;\lؼy%n|jAՕqfݮ"wYyTjF.+= inTMǠu:vE#FMC] E:IҟmXTjZ Hk>O:vIǦ#OlW>׵N', \j 3 yŏ\ qL0Jj@7m4ԢK1 ,Xaɋ k0Gok/>l C"abǩh6+;i4$~=g|a@ 0, P*CVeP\yfQW%*" uFyݵ>+>=voj;򥗚b;M>^.?$q,ifsqױٔFUm2M鞂AiSu10} KKrLB>3|X%8&R(|FD%X@xH]!Pk%4j$Zm]Bv5@ʄZKVx&j;+Y)3@X{!x>:ڨ68 (wop:qN~ ϿhxLvKRj^I$kmGf簸2$bCX!Zt}eIv͕Ј@LT2nՋ'wuǛ]lZb@mMfc*6J/8$QWJyL{fۈ>tAqu{PZKNmA2VO/'6m; F{Y J$^ @`".]$d~ǥ zAs_,Vs}z~жV;i^di&kۃ ; ۆkR:TXۋ^-pj*F'(M?^-O?>Ǭ.uoy/20z\<G^qwx޺4D]ت4XO`$ y ^]%ȨK"\vߺFɥ7krVE2\SG)i]oq=XtXJc"hiwJ(ґ6z/oٲ ssDZ|XQYPQi(.1"Nokx5lҞc9 t>RS{:Ý PlqŌpZs=BcMoQH`1DL'UZZeax]l4d3% m$rSi4<]lA$O/a6y%dL`@@CX)^U@m7 5lL 8"^GRTJjobm mmMVaPRŚ%GG P%3* (4Z;(+G|Ko| ^V8lQ$y2zE54*vDT ,]4]Cmj$-uށd|^k_(,s-$7&C︖>'qH zvNM ya3^ݎ;).B.n_=@֟Jf՚eWjbz(]v5Qc(zވoL]73kHz~Y]E-4O&~d_E] Kͅ&ռFGSk7x+4Eb~FQ'_: NQZѓ5D&W,n}y!ePD<טF+9qyYt{om(#&qyxL3_=zg7s y85M331^-Shoawv['qE紎?|[ӑ,]ۙ^[tv1֦lJ_ɍ.+4Z:bȷ _:'|1r\TX05(YqE{,2^&k7]ǟ^7"+6l6 :> Pq^J,Ig9RZz`E ٻi,M.5}>z,귿?vg*hZ(*i.XbrxuWĹfȑ5;'boʕtS$]e£_~߾{.˧;&MWD4вVW_Nӿ_\XIeF vUFŸw>r$LN_oczw,kWp@E7"I^ Nu Z[>h ٠a%kY%t[n6dеF8Zʢ]Ro0<[$ҿ2H5 DZ,>\yfMX,Zt=0exZ%H I/0svzφjZhHXZ5*{Shw7I <0sǯ_cE^#K#&$0Y6ɕhjb4πdP t]MIɱpLA}'Wĸ(tuMZPqͶEEJr<< vFC ZZ2RD9N42\^sD(3Uo [m/ UduNe)6eEՄL4C7hNO̷d7ӡclUsXgfZ/f?obٱ ZSi'?w`&4U9yw#]}>1EgM-eo|u?ښ#px@7gqFNB5 oR{}6lw'^Iݿk7QSG`SѬJ_)\?+w1Y?xz^Ϋ(2M;n ͫN'WyյJ1M{7W*ql^jgWOy@J̅/h^Jez̪2V5θ)mPvA\>WXQo b^چbر؄T#$^Sm\>cqVGu)w]Vm_H.Lͦ<,͓A5S=̙\=4]Hudu-Ӏhhezڼ\Ab\bEy˶woxj%2 vJ:y4t*afK[#$'}&v3|6Wk g<.n:-闫OR3N7:{(D&m"L&ѳ TChh8@rls"^KPsINmtٖQ"y\ :ۖ nWUX\0=UG:iw:߀vO\K"sbCD .m (lh+ހe]0[ăE$V !if;gr8w/S>{`qC?/3W~1?gxlLW)yu@= T:\_< 8-+3ض4l]W[ \hL@* ˇY|ڈ:mKUݻm3va5q >9`#⋏g{ߺGs0ѡ5i}pDA?=ohuyL'*U桝 * &%oz{Nu)~[i-JWKI[[]+Ġd6 {@֪^FǴ**td\f%l]r\YN܉(<`m/Ǧ3;Ұ ʮ"F:7#(200ZӦEjڄ7PPPm2=- u le4PXI2*d"z E `X@ֱ1v> $L6LlGɨ )>/n~tw?||K^丧?`wGt15F#8'quDkVVvbŠ@Obͼn : Jc7L :@yN3Z!H)6yoxӈE}9:owa至9ok3^|+y^Eث{;u$B ]:SAl J\&ܦ?Kmaii%b Wi:nP"m5yY(0-vJ"ә+DKc'2Q :!Z6ao6oJ:=:`9=6a`62f#E*JhpY/ek\qtpU>d *XY9Q>qFe1$m)lD;qwCG>,txi}~T:`%j\7nW9 oC:EQ Lsc6V'_js8t|;`lFmU("z NoLHͣJ6q7 n< czH ÷siPQӮ]ӈt0h5X UQjڸv>OzllHNS-1r+U̦i:d軬!l'uibd8v_/'Ϫ&΍2Y˵-Ԙ0;cC%ɾsK:"[$&;}\^=9vޝ{19_kpAiZ_\,MTvZ9Cֱ5U ,IP_=~կ~c۹;`lE=$Ϲ~7,gRr0]q22Ų4oߧn m JѮni xZlXu$j(z%dlt誌iņ Ҫ vI:zS +b *TܩmYg6vgv n"H\'F0)6L#]#ؑ{$. D3u\Du|XJ]\oapQLπo'*S @<]in4"OT!>52'C;vӳqR-)[=&ݻN:\LE-RI/a>P? eK}RnM:4yK:b?+p?{Jko?<' !.E"I*1x6utw{o@Dg_|=߸զx 6W6Oz7rSjw&_^z|rF+t*9hU]a_:}aV]4K\RV#cA!˯`VAN2)Jfu*钠K,LB̳ul:j :L;6(ɾ($tM[ S֠V[U:?DϦQPJR6 T5'zimyKY}YR]hZB0#p0r䗂!i&Tul GU!Mn,ϭ%+hLN" ́LB&XO$%h'Sa[h.e_*U0"ƿ2Bm PUiUmrA.s7nfvɿB1W:|9mV:+êEŶ˼XfkSӮh8'2nՈ1m_7LdvlA``փVf%Q ]jP,lI0 jۍ1uz5;p"jjjrnZhDw;^|> OoxH\]:7L(^p1Q]嵭BKϾ|kck=l-,ϫ%&Weͪ2ɓ mɓR299!̜D+YwbuJ6k+fQJbEՇ^B|oҿU5w޹M&=yw_]h/Upxh fi4h# aW45fȶDHzcKɢ xsȩo[TX;۟TU6Eʪj:!~@=Snc@eR8%=a;㠺rrek0 VE)p^#CrJNֹ]皔d52K}'-PP/DV[2cVY&%MQz>골)gdci70]]e iWq== 2{_f`Dzk.t5IE#:p!˰ucЅe`׸IN|]̗bW_UnoSR&Q:]ԁ ?_bvWoo8/_p[ 0O?gNR\KUP%2?B ͺ*-OEƯܮif}5O?VwRwjq=;U'ۻhp|w&tGHui- 1Pďs]ՉPMUڰvm 5ʠm `4.mnl볾 ڪ"^e}@F =avȋ2-#Mv]cf c'>`E )B*RYiU l!T(ߖG5ittձ Yuh FŹHmMsniu*whRܮ,QRVA`E4mR6Դ&Ka"4S۾-ClP"f[ (;˨\sHѵCQ.k 9ZEmӬ M!Uk=֡jQkSTiMu:{ovJ^#@UtI/6Wx l4Cr|?&=F)@Zֆhu_s:kȰm;p )O攇ލQnɯQh~,L\ yMxe6:9S@pvmJAcK'(ʛѰ]7 OWkr)XzKgj370#\$}}@dy#1qw{,X`|f׭ɰȗ_^<>m'Q\^mfj2b!u 1B4;f儾ɰ1p=\E}[f"02Ma/vņg7Y23l`{ :_}U68i:& u(R24;7+Y"ljKdv2pu:Nu|dkO) G-8Mڦߋ6W 0"N*Av!EUnץ,ʖxqYljTjNW?ȒlTʒ"ꉫXZjF 8nCiq-Vi5FdMSlCbr:bY |3O7+W+o~!x( v7}|(^/ #Il>b²]mM#P^e^){ͬx~,@l:S Δw f:upǫܲQG.cxŢ·Gw=DnHjsT*X\F2=Ak\r޶H/;Y$K@_ jW2Y(s[$ dʢրfLE<_>N [E`ҧC6 5 5~iR0 yɖeQ-IRjN ^_MRNT0lu82:E{/fް4WV*RT4ҌYbU^# 1l(URQ8 blEݶJcWM~3VD2ҳlQcɈԵKe/VyD]/v kh[mڷ NyAo "{߻77aſ?~\_?_ꋫWJ93hn{?%3Nbyӽ]VE\UI&;ڗ{Jfég?`{uWВ@:8͠`ƶ1cg׾bQ2-Sl舻ta ~^@[=y#:a0ut谄ˆf@VuK;H׀ } yJ|8bտܢxpUN k_o)Lװrjא%I-_&)Ca0i10@P} H; ؗĚJ?Iq5`w3X ¾Ax:65О;~Puxs2/ﶻb4D^^"'_~7ߤv_\^[| 4?]ۏ?߮6Mg{>s-e"$-p΀\8w^ P>H;̀;:ƨ2P樘' E#v k3gMet}UN 3+EjoNe_shkløFvfZ5a[prz4LP=WIuUx|daB~Jl k^QE:+l+l]Aa * YT#jmV_1IΫ+PS8]a' cDY1f42}`!Q 5>fsY꺖eSv7:Oh̉i#M>sVb^"7 }ñxٞt lnr0c~W^ަ}Z.YEk: G?Ï1'#~KZGo轏~DO.rnJJ% `t|!-mH}'eJJqpز%;oȤqqjhH_Z 3kϚf&ϵuYo; Df,O,W_cǏ=qwjuk@H3pfPcXg4WAf{e~?zw@imY,Ou*a{~|z라h2{4Tui*Jyck|[(pXXߖ^2!"o3Y\UGfm[Xso삈 V*9h*ZqUg/2?-:gc˒L;9^[qpV m{Tlђ-/^_҉/9Q@;ͮzy뾶ͽw>2ڤ3%5-n|S|^@9eNo,n~`^0m;k[J\j30'l?R48EI?d%5fm?ǙiyEY/ɦ.E7Y_سo A;4h[vP&O-`Y]2f(oٕL bsr5z!e!pDQ$7MU[zuI +0<aEwko2)c,Dc9Qv`*HGJznjjj61b^zݦ!P=f\[ThewKI.Da:s:crr-'Î;lfp1IF-qtlλ(>xO~)g ;}wώ_}64&>[C#'E|^VEZ@2vf8Rp;Q;a с+bYp޼җ^0VdCjb ^l_~++-?,;5+-]_uT}kNFfҲy‰i>ն lBO9;p 6eoup3v !j^DU滖}FmFuim)_ˮ$*w 6T6x6pM JT;E] m߼wߠ*$eb1*j+on)`l@wgd%J.yGI*=#8%Y G 'g`/v[ رg= lxSUG{Gƛ|7<{8[T+W*~~}vv;hCscLs A: 3-_e:_,_vM6:ȄNސY0Yׯ_Q~gOݞw_/^rur m o sMm:QzZ[B,IV]؎#bd8$H rMw{w-y7%LNw_rxw^ lj{]{u.0x,]|sem$qN9 )iT^)em 7@`Bf.m͹(OEo翯qU5ԫoe:Wf2bE0/.әf"]mkF'XsԹc]4!i ã6{U"4 !~LW @ˢϣc ԡmEEFfc٥o.=+5.gT@i;! GF]1)q:wUAۋ@bUc  ?[ԛpT#Ze xmX[:@TU\I4dKsK~W]ؔhjM/:)iε\zP> t<ּ4 iTJ@c XE`MIH eYuJn2[|~tk.[pRޝoyԚgZ8uEDhS%ͳW?"qv ||Ď?xO O?Gci'M/5 )azljk/^o]ʥϾ9x|yu]r]b~mF:0+l튢)w96%F7Քȑt`k;ɾҮBԴ<iQFH["du0.fzu}5_F# OQлW9kAmZ5j"Gus1 @_;A* ї24=S,Ct>zCx StM_{(WV)Y;qh*-КH23:s7Tƨ_hU{3"|Ǧfúd7nRix `:!WblJsA}gl )Rr6x)F :U6b?] k]W){7!:-v孃Q[mx2lmQ{ہR}hMZEQ 84Hnݝgȅ=yJΊt{C{h8o%N̆!jw Djpx,[3nˎ"[eઅo v]NDyDy6ɕ"[̓ԞUq‘ag?<|)>=?\o_z?:ZG{?*̘Yh"orDi!Mlfvx/Y田dƎ[wqK0E5nî8js'NԱ6nbo4rh DsKqA*}w͖0\PPm [bh`-;F $](SYSotjάBiŀrg#C ^CM4,;i@s^YP3 QKgffuY(ˋ|#9Pѩm695NGFJ Nf]dgQj=idוAw4]R۳&m-v*QN=ux[ڂwYbCZdik{!N* hnZr7_o//۪zmBQa%}?傃 f'l L;/EeGk#-ޘتnTV\l>1±Ii" z?ۀA+hk )/}=bPmVd4kb];UbY(^MOpO0r4yAy׶5ˬj4z,6lܴ%PCKO.`:fqǥm4G`ZՍ*܋5̺5Xy٫JC9RqC[*a67AP E -GIK; ? V5^ (Ӳ%j @S`G@mbGX#weױ!ڃ7[K[B @•7Tg#J z?YRW2p%.>(4(2-C_:pI|ZRb..M%10i']Us{phꎕ)6UD}ߋdS\MF c0teY( oibۭ77w?l?#n~..>xE|OoZ.nd-^B>ݻw,!/콱;鍊V눾E'Nގ|67TKX-Z:x?&;%Eۂfް j^:Om s}וEU[}ItW|QSzIۧ_A{tp6z byq{CR tw/y˨=51:e5rP8DV~[voӢn}zЀ^鯞M/?k]iqR3oQ CܙҮ;}W]jg]cgBOK1jVuMXƤ6XK& }O&A4 J l4YD(`ċh6Fo`bh(2 t<Re[ 9Ve[EJJ%-s4VӾ|-SG܏h?`v2Z?*E1=j eTmX  ?<<VfoD@Eb,)[ԯEk ޽]/VrUٍY M*mZ?=U`>촯V/iK`AFc5%syGM=Uv7%r7E+w]ǿ;Q3ȓŅC`C ; Lx$sjt,7斷71g,>o+¡W&Z6iisCO`eE$šg{x(CP.?͚M%riR ƙ? W@ڃw^g-o0IՍ;#.`%{N_sPQp`O 0317!լATA !1t1Wی(Zyֲ+0E7\[\4$)QyzH{1J%x(mP]H(>Ԑf6q ܳݹ1 /YZVv &u*ǎS:BmWzMax $h6<7j:٨= UZtrb\3m%MEANC~DpexNSqȲ}$/Vۨ:6%1qr咈df!R n㸩j|LM1ESS?DS3{owy˚J~:<}R:ѻ?0-ndPLʸfdQ//" G&@:vxd<,9>J+7&Ou{S *[i_N61G-Nj7)}{2-(B3:j%D gJ-s@2$<(biJm) (]\бO])+@:d EAQ(Ai(vj9ΚP 'dg''p #H\6ԝ]LPZ)5(#6s챙,׉*WS8hFǡ8:B]9ht mO%`0MJqs-27DW1Wg  ׯ\12w\. í,x xJo{*eձB>e*zxV׋o:9=z:B0jKr?xR:^l| (E-S{ WO+B̢X^/ݱإp<2ɳbLE(%60ZH헢=Ab:]g FFCWawpΒ0 sk g(+cDzs ,r<'!V}1E[mI00MИ(Ѿ&pU^И7iV]&C`@Iaz1쒀U i;I rJfQW[Eqi#0 ?*\fM䲑x!m;`n&Oȼ+Yv2N*95i}U]jKH{tfUT(Vf%=vGTm*uorI>kmu#&fK:wHK]K9/KVxf?|a2^>[YrH镍٭fx4óMS}A'fUo6u*۫V\3>t#();eZ7k;GFm2ron%kw DSgi>0]4}WzH q9:aJk#A K¦jw6Th{\ERٚ@)@ ]WslhB2@!J**aH_&b/ 'LS' QxEd̈k>S"WUa-`FpS1pY?3M. щYdwvqF$@S:T?@2+^}^m7C}P g6J]p=Z'%6`֛4|ëF3Ξѧoޏ,2|8CG t8! -FUe{ Qb#alWIt)7?xɟ?FHp})5MpBk+f3CA8;x( `V@$P@Ou78#]m`ߛ-ZQ2{k?ogUwa6֫Vۼqٲ03H3rx>l_}+^0h2GP_\ڮ]? 1۫ m#y"8kyܳj8 [t^57#MMVuw;$ICkZQ kÉuKf؝n4Ѯ.؁s jo;!Qc¬.66'FCW6NA CQl[Y޲߈@97F_Ĩ!CšPbEr:qbC.=tyNrT萡1-4ZjSF:zŋ%aľEN%z 'VW*d$I kiqD&l|w>辮djNk!tNͪ2*HoJs=)_m5Y);n&*&_vk?0ݷe@hM|PpwnGwq]um^ rO`S GGY,ϡeܾ`ѷM4ʿћt03Gީ Q`ݰ :MiN6AWR!R_qJUB]fb)lB6;286 8딽/f@T go=#:5HB>IYiy,X 0B9MEΉ7紪 1U`RPjxm'&AQ%٦檟L`g|=7KQ1n 5j%@RGl!`S>& @c +ʁIwAiiCT)U; v!$Y!=0\ Q.Ƅ Hڵh1dVw NJR~2୧GD'rQ(-;k9Wkf4>߈ңy4+x64eIWɫvSݼ,?'o~;ySE欒jrpRJlQޝ/An`d`#ioV_/Rl&#XdUu/?ٝ7 OsDWb5w%a记2N&o;NJqg_,"px#oCv`!wUt`Ǐ|KxZCd 50MaШB#⬒`Trˑȯ81)ü4kAXKmra"ۯo3ͻnm֨FdNnh 8jfc:t&C"0r9V@aX<؆ oimwMzI\̦- +w3jfS?gV#;FX6(lSn#hAČ$so77gMmwv&$",Qwܞzx>FtHf-̪G/ؕ/e*PP\d)2Aݱma`";dTz8^>Mg(T0 97\t*r6xotD*ݢh;`[QO<9m9lre-I cG[mSN{Nh5f46]L\,E>2W׻QuGqOv&|C |t#sU>p[vIꛄ|i5x{BE5t@-<F$uq^{%0 v` '^u{S6,{hʩۄyVe)n~hbQlfiݔׯ5KG-jwV L8vVѠB )@4@ Z=IVTߐɥi/:Ⓘ10Q"mKF! MlLsCF v(mәceZX*P)8>R=%9M 5n@xUkDG?ԕmnF(TB[UԴ2X%*n^:bnɣg{sh Dא7M\ d;msqN57:.t@p'?eN]KuZ:6s=M-A^,}Q`vz0L<)חqb޵8i'tdhNw~}}u Ԫvmm[8#9C=woxuhE'}[m |vo_7?1~U]bPtEMo!4@>=?R~ϟ֋;["bŇ[\)Sfc.>OtXmyl}n X؞pk^4Ț9ZvYrgWqEEnwNr>C/̑9F!,Emx^H_!LPHe`rp1+) cAwۺ J{Wb'/.q< HunQ-XI)]X9"LaS CSb[*&cc`Vm'ԨHZYYǶŬ@J+"nˈ̪nVk`>vbYRcNPx"e{A<(ZVy\vCG.fs?reiqdfғjzzfvvfHZ]hv%Z@ H >HA iw̎i7U]E2I oD*+<DL 9p{UR6BeQ`79xyxNt>^o"8fRerS6d6R}%4/0.ɬY]oLНƐڭ5m;\}] tʉ1;r30HJ,<,4V3+O檽oIYw~wO"|X2x[AE&C`Yu^_';D>Tdjt槧SI32sU=:DX3sԑ?չx hC`# |7e8ꬨTӵ\_,ur>]GT;(!FekF;Z*b 6SӅWn%ohLYK ˇIiaPM#CTIܒr &@S4jepk,5~cN,m d&($I5[.-UaAl5jH6@d$IT"TVҲv { ů4T>j>ѸkQg(F[*0NkPp94׬̗ UDTGz\΃{Fhie~ $|vs1m*SiйXO46[._2)弻0*:)TW|#pUV`֨-K*wzUOq8#Y(/t3_ao/bp~-FN`&UNtsrЭņjr]v?ciaVH8v={ۿ30`oHTG$׳ضH+& FGmJQ,11a]JWiQF4DA̬TAE[Y6ƈonRRéW Ie`'u$+àPk:hlWrNhJxgV]N2d[jU?[:9\.b'c4ylN\у/T-m9&ET[#\s!i, sj7Ie^'M-wm+Z lA M] W2 ]I8Qբ.t&J:@z_6,UbE-mAb%r\aU~' (,ϿgPWQB2nNltYШk&,R-CxR}&ԺJ4;W ,إ˓h/=?`0МI/P .VT7BNV /M _O-<rz֊T{N5`{an)N~ }[=RfDk{h^n(cp4÷x(dac&7$:Fŕoѓg_5 [jqZ7B뷏hEDovLbX.FfCb钤|exU_dZiw?XG մnGjq9\qm@1)&""._;Gj&$@ngӻ]}ep\0\tSk3Gw, A0 l(\dgZ!By&m)VTP,CBb0{#ӈo*'PP=vKd@2Z8݇$`b޷U%m,I9vd^hovLVE }#yDrΘt EaCCejs2B|i "׊OnB~磻;]``EwTdFֱҤ@ay~`UZ~y㚺Z AmR XѶ 8Igak^ O򂎫pt@VWeU&: @mRiNן,x Zubǖ{".P9|9,W1OhLJZL.%zο&^~u}E/`vtwo{=x::| _\ __ex65nWUZߥ;7%T խ}~;E igF]F@FF/VIG٩*_uD/~SXB nPDEif~nL3S39}UG4#bCpnZۉ"eiTD%|[x-fٚ2T* mCgu1=,N<;~I1Qvw{!-D@`w5dgsg=U31Q>˥H^}dM$U {QyޔRhZ0岢^8'WM=( Ul; ,a;j{]m`s3r{ }9N&+S38_!<Vmm30 =4ʀg=5UmkoB6ko#6fiY$bF f.+MAZ {NBӊ*y 2(.Utt-η]=,%Z,B|xFd^RԼ:O <[Ӱִވ)vzg ٶI敃|\\?<% n<ή^hw\)SFb@Ϗ4W75?]nDHpwi¢ɧLj)-{__mD7nY6"g_}= r2 vLU{w@1|o?AE#EU\ SUTYooW4?}Yr UrǼV iskSqƥ#Q-Qi :RQiT5pr4JsUJ,Sֵ񤱽bHKIvhn-I}7 5lUĶ=d1hv--F4[*q#fQ@6tY>7j-5Bjꢂ3k;à (}9ryRts V"iaɵ@NG)vr/}&JQD.㾋*І$FӲI+r}Yn;+¨[u&ٲ'DX@CU֝^n#x]1DS 5b´+. qx~z#vG ɋr,te:kۇnWd/h V# }j efx4ͮSm7U   (z}Q2ǐP7ǟM>Wx={qtyv&Ǜf*՘7Gu6[SBy~Gd2yl-rzRBHv4;}3a&~)~􁘜U9e2L(z.6/?7{{q +\Q=hEFĬ/}5V(^3hJ>1щJVkbӄ5Po?v]Q=_q\?Iebm{B!h+HQphUl5JKzy&\u4I`h9H 8D`n%dFZcG0FcAIʳE)AL=f MMxHxQ\lno>0u4(S 2`9R ETB%BTJaͱh:9r=Qgܲw#,%+5!T~1xfRJO Ml;K/*uXg~M!^j}]^<:A׿$\Jv`&yIǟh7(5 Z*Hi0Ruf9qٽ sP[J7hxkom0ȋ"G ޷w{.n-hgM)\|W2r>mlf~Piԯd __\ꫛO?8^~jY\c=6W_5Lݺo]{c޻YՂ{!qkwZ]HQ9Y` X2g inTpȼ'\~ʰ5Ts5öȣ˔\||pgI{* ogrF\(ynZm[$$ Zl,(PY1c".AX}ITwμD$lsoa WJg9VDf3+iYZMEG>FBT[Tۋ4'UՈ" )OIy,&دufqYD, Zb? }nu 9XcWXe6pkCŭ٪ l0SAYtyahʑj`&ʈ1=iњÎ/3. r[\4b/ ;AKݭd-}d7lex i%o,רs!nKgjN CěԩF%{wv@R$mol`@8SњixSY<2wg_80b՟1V'\0m<ܿf? ?y"@QFt*=ࠫ24X/bꐸt(ip}䗉\e9ѵ!\h%A !Nb\bZ 'iS= öZ\o@{*ܹ!פJWeJ\[Ưp1sM2n J~䌬^o;m;.6u WMC E3 !VMPYE:RTC. Б|HM_UnNDƼ`>U D…tEpaԑ9 UQ&E08MD0D5ߎ #5O̕CEhyv c&YN j~WTP,tUvh&IHK~5NaSXwƞڬ1@:8Y G-g@>k.n6"E UmWJ6F ̩vk@>Viz/܈#py've-fT(Fɮfhr*:-u.Jzw'Y.FeցQ_KzxXDt./|n#wi?%5+]R@4U86yRL`;mVOwc"E8T!t&~ U:Hd[Վ[]u_O6>_߂^U3w!Չvqx.Hu8&^ﮈ.Sӫͺ˲ijVW nqڑԻ!j,.m ]_2.2yU7p;.*p/ibl:a7N +O=nM Ww U0Ra%>-;)& Va*v QbDٮniԈao0Cᩆ4-bqyjȱq xݸWU+(tfp)|<$YoDVF1l72ĸ[nQ5,]5ʂ˺UQQWD"5WHٿ%YgoX.RnƋ߃?K }FIޗ{FN t1y*5tY)\KcOT %V1Xws#S9]W?}$#kֹ\kt vz"=yÏ*|gg_bN{_x|䡗O>5WvIpFg@S5r e|3g/% wwC<^Wh-‚=BO~'[Ob [1dm Y9(!JzDE?s%Nɝ#shاY6x-W9lXI@q!,ꫢ GRy' ,ϫX-4ߒ*ԋJv@hݝ]1adH$0m^_Vբ}IX`hOf]W9{hm;~?tS&6{F v,lwL{AO,OO'ʹjub^Y!@;Pl=^g^ p;3P@W9Ӷ^gH@۠6h7ʲi9_/ո=;ܬMit -aīO@e}xzPe]x{[a֪EUp6g8gBIU.݄W OV+iΔYM.ZbB]Osxl*L;WDa&}wwvApug1 oD=M 5jM)d@a7ܺkB*7VFzMqy&0@I~ʳ@g@o,@3!K0H$TM8)n V#^U$\פJ"^'籦B$I,j^'u3,P7yGZTdI<ɹAfnV>6{G^f7ɸ`zYfiL&.&vBN0uhO7͚@#jUJ;?~۾͟Ͼ|~Ʌ~zszА"-Y|^ݔӍllٳ՗?٫2E֓{xwǮ n.O@:QPVڱ*Je>`sg䵺޾nyRϮ~Wn;;f֊¦2^{@"/W<<(jl/bwzh8(DJMn> VYQ!j'RmHNFW$Xq< ^ԼMbCG#R=T!M~PKR:"/ L)D2,mq EeA3i+Pn)F%,ג=HcB@\P#0E`' PmLBPו%W}pӒ tc&=G=T4'W.gM3P \~Vxo=q8npu]g/Yδ\حVEQ] rǖ5CWDIkApg|ۉ% A疧nNAwf]*]*^\%Fip_fʌ/ܳ@rt-U1b=0 -wsw;j''LO֎f*~o|;xt(F*׻-Vl46e3']n4ׅk v]-RDıvKl!8%:m3Oyή2]9o鍩'kTmy}]өn/| #%D*\뚨o gs)9p*.غy8W]"&%aUki-b՗u cj> n7˵Ęgٸ>N 3xN'3uITjH;90Ǟ1O:w1e]~Y3^ *Mu\PH,OcQx s _{x;_uJ'6kb^_3+2D͑o/ϯqaW_%+*p=lr\S8-7dϿ[?x՛d]܆r_kԥJiWЍac\U,$Cק/<^/r ojXV!-uݰ8k=F2w*hy5VJ5ZIh231 #X׺zy6> \~Rl*L2"sdXxZ1̕ Fa( !?3_Oe&$y4yt->x."(eD!RR+F LR]/zm\-װ3"G]R]nߍ߆5 Ԑ{9p%] & Tma HQNJm"I/ց" '*FX CDhmQ 3@O@QMkT)Tz^&)4v9/ mٔ2Gbu.aHFFd\B:PvAjICwl5RvIp~HmffUU`YOwHӫێ œ*.\ _DBɔzٹ썆;ܵ}jW;?]!>T'á[$&cq{" W q"nO2e{$MUEd-}iq?u!]90*jq/7nEm U8ie~:T`MQieFvh>@rFU9Ɔ& `+%&$ ބN$> D:mӻ:Ucç`8]/-P(E'R7検t81w]b2Sa;E%v򊚙xa 流Ytx?;W?7v/n,VyܼzOuUtruv^4kCvx\!^WR9˗3s¾Dwo;%[S ͫ>]~Z/{]r?:C3`t__/3eU߫ܝi[t71&nݽPw{yGox{u~硖/\"OrSe~JV"2:xC{=ɫM ]̱BD3wJF _.O֯/.({ 2y㓋s` ;ѢӔieSwۈ%Naଢ଼r<a T-DpaqN[Q6QXjCX\) Z@LH+fn; v]\T,oqc:Ee,!C$t yF(-Zwq#h-,Ս.CLٶ}ض/*H|-9*\Ǡ ",0[,751$IK$ ~~f&*5(BI\ DLZ422I<@P닗4zohOj\2EU(,j**;\sZx<\];\oi"nN>^'ot4y֝'OȱTҀ0Mt}FCalvo ]Lf~;O~_*`z!|qiufrp[uu 7c[Ql{XTm-W]g9Trij容\~5jk? nnO"cXyYfP& ,XMPKqm815@ƨd@Z˅X̷ #"L.bUqTq{]²2VOl3$.^=.#`5XXYkV&6$YGř:V0>Qã1<Z}OG2=gVi"QRUli}fU\hqჷNYj? 1("PI 湡րx}iI#zx~cٱN+Ґ=D!?>)?,ׯY6^&ыQݻO~KsÝ#]oK nqrlYdFǙ=$zkAšwQ 2!u ބ^ D@0 m!1_Id[PK;v6$nb +v J͐c]Vyq -l tpU2E!juQ_H8]P*Q,jsF IW3H( U%EfKV1ƭ!"DkK-eHW KEȲ fn׌o} {AaVBZbsB \V6s } veWv?A|~5[(iSPJ v=ܼ0nytEPb@Q:_?r{c)4=}G5v  hd~6n>}h%[Z澛yNpfV6Ѱ^5O>O* ppQ^~ķE= L,4h+ #Y &+U\8&L?l7ЗΤ_rwm\O~F X&)yU$K+$!6DJ0cI@df v-.Ve[ ^"8+HCt{ ն6i:eZdPNXs0FVm|v%ԥXe=cʛZ jsisf|#EVnYqr;G6+l-jCSPOKk ~Ԗgx1#GC~)';'<YFPlU@.g2h=X^n?zk@Mr#峧OQNW_+b¬w=o+rHzf\ޝ}D7JЪQYyuۍʋNu}bm'ANٲ}F~?au"tn_ 6kba;]/Ʋ1UiڦYIV.lƚᥥ 0jKd3 r`DZZ46+1ks3R"8Јƀ5R+@Vh9.Zim!΀ 4"6%'LaSnZJf( *`àN#Q6ٚݳZ[KMDb ,<ܞ RjqZq 60t :ǚJ {wJSxAxш0 %7 Yzې|EXJm`u^Ox"ޡKţU!e-Yڃu&qx>ۦwS#*IE:v#fةm)75r-qn80P GgZEr ^V4vZצMj# ^;tM<^˳ B Nduea o ywE.5D.YXBI LVkEŠہrReX`Z g3 ˬ]|o;?D|n?|>Uǟ_?}|Lbj/q{>\DSwcwpvY|m<ۿӿ?_\n#JETY}7]X5h{@FۦV>fzq``}m=hsPl~[F{RM5s>5aAX}hsX]yeUp1Ɯ>k$-Y\#2߁ƒCeX,LUVT]oI^;}7j Jdܠ ="h4u8(uF@NήQ]A@vֆ'kC>69[M(f>*K B u߬ʭEQVdT{>ִ8Kh4h6AJªcA@Kź.żՐwn~ >FM>W/'>=1z>._B_6=}A]f#X{0fxzYӃ3 0aol5fY|V^?bƁax0for]۽[Fy#ٷ!U-4%Jț_jd+0|_oڎq nofFܬ:>]\lx<oN/s1NQc˘Lʖ>{<GYonpK; 7ptAf;Dx WU.J`i|vxJQK};Fh#>]EVeq^Yi8Ϻgن7ЍVVgXjnOm1շXʱs 'P`v3Yf4xq^}nz,37fIA/{Jb\kc=G Ÿ !qLT*,6CXB>iHn9JxvHK:pO*a6Mj pe"vښi  `q],)ƗVҁ njl*q2%(\.a$EGh u8u KQjmmӊܑWPD-CO A* x)t']srW/5%iMN=+vJi檉9:d<?aON`Roޔkqph_EbuF#p~Ƈ[d3m=G??\PI'/:X&Ϫ7t3Xl]=EQO:KtcjڷI0 L*ż|Aّ}iGg ]I-fcHE~;q&Nt*6Muh6\J*ӡ*_:i=,+mlf)h3`4O.+r4tAU+I'8v#b yu<ڊFC5 ^ ɶɊ:4=wN#h8͒I!,oXEfq̑)Eq54{T9UmeY+qB0v $]L Hs0+۴%DR U&N2BkB_!1u _ik-PRrʫV<>QsRF.{cOI^sg}=[wBɷQZbϖ捄&8{o/7Q~D@z~m̅<wZ>/6tTC~eU{oiQڑ櫆 w'nU7O^U˹fy=obEF \ٮkyk=8;vVyL,tni%, ?a6~qXf9kvdVϸh"Yh"@gUY"@ȦO|f$^0?v7/=Bl410aA&Y WFy8jwT9nGGR=LKL쵋Zի"݆u0t$p]^Kjyo3 z'4+}TؤT Ұ-)MIA(h"M-ї6y_}Z^^1jvwƸXYŌmnxShyR6zu兤x46>5M RxE6BRMը䶅-rmZYOۜT7MH |g mD_'Fȅ&f֭{w:ŋ7ojh,qxg96ϧWdnzlwo&5ixET&W>O^ٶcGP 4wx]'z|hPo˾}[{~ɭ~tdVw`o8;MTy%[?}4;A!HW 7{1LgBG'}:7Y awjie#|OS%m?AʩJCTNQh0V \@k '=(Lq\R f׍6R0./iQ ea-$[4a[suo_%SB>+E[]J@ YI]j7J2JCỈx@J뎍w-Ƒ,.qVٵSD7:ARյОV0|[Dvu kOpj¹P7jN\vT瞗iuuC%f}xϹ&vm+cBea3/拯ꋏVqj}E< u-i/N 6ʖǽ/jmRnqsݞro= M-?E<ۄ|(6';ݣ[寓{E FZŋ;/]l8YT2|&3H|!ȧj]vq@l)?ݗ`/7e:'5#ĨVׁiF KKj)% 6q&+ޞ8P+);\~50LRUV 6+4{(Vu@p`b"# eW-<> {vb͹M Ƃ"zmKl(R¢pP:PYOB<1S_˲=fc蘻kټ#jf흸_p&LWkc|4+u:ξ}тV.pZdX mQC,3lXT6DI"DvCz7puDl ,@^ҷ[0G:=q5߼ >|ruP_ûTobhF=ڷe Qvr2N7Z'Ǜju:jm2ߺwLf̻ή89KֻN_,l׭S|iLGӛJnh΀mLyMeJnb$tuDp{h&WQ7@uFϫyNSNuLKtuio{86l jj0ŖL!ExaL:o Q_]nES0YU )5·FTͶ%YZb1ˊf&=runMKI;JԎuiT銌OO0Lxzi}0p:,ΊNubM \x+3F H^%9lpJ}[}h\ӅL/˦6]Sr8e`2)ua9OMA7RU=w!B tJ)uŌYsA#pT10Pt# @aJE [P@8 :לW&k\BcL VgB))upӹO`>M¨B(Md=Nj5ox}ЋgE}HohKFt#"c]E|WﺻF&w}hWo@Ԩdhm*=mxӯ?}eRfU7&Nzy^!$:: `xڹ}28`rڬ: _OSlokVNLI6eF>(Tǵ( (\[SgaT!i3iޏ:p¦>矆ʣ폾4;Q7  ?;C77z}YNwNm&**/iuz%T^h^L."ldkfYF|򋏋7+6o6&tZDѺy9XnJUVx.83`́Q$̞9t붏EbAF olSlmt`̩,I}ŧQWo`8=펥k\gI"YY='J{A0Ÿ$vlI iʰPPv54B˱T׊(s*5ք̠Wt2HmKCr8Ph4{ m pQ/f|]I|CTY)A<0Nڻ(Se*qL6{9X6&6pP drG>sH훒7|T8pX"y,ӣ?}'4gm ][MY:^g"q޽uov#>175C3ݼڅ1(=QE>_^W_oMOElA_]~~|e UEiv4@Z%)YnWR{Jr/e-Ӭ awXVKFͮ:)dfKֆ]b<AɤaW>#Ki/"umJ-Dej9j|7EZhE@AEp!tHXN)ACmNV[+4+jD:x 7\f:k<8M}8@ujvt]-Q2C:c50 " ]e@a.3pc zTwh@1'KP ({HT RWdX"M]!"j< {J]@(00NB+NfM/&i~ٶٚ  *Bu5(!6;piƔ1 VY.˲-rڭܶw؆}7N󏿾<}s'-sc3실3oMb7m-٣U+?j:T5?G3mK& -z4]Gf'v9SX5wܹݫmUgWl/1b iv "jPgfyF򴈔v wMā !US8u[MQyv~k)S]׳S:G^z̳8|翣.n|,yJ%DeeK3ÇiV"(4N*OCeXfQծ!=HotH(ϫm&`fbAU 9:"PC6zC[i 1œ鑿xe^$K~9ѻbf][oolҟ̠"g#χe^bi"=Jv!<:q*ff,4(.9`im.p]kMF {wZX|ūbPU%f^;VMds5*v׊ܶ£B_?oC:ۅLcm֛كͫzֳQs}&|'$(ve~\Lq)ŭ z"6__{%LK69, TqI*,Xr.ȦYVmwu'whJñi/kk->7̚RąbFWǵz9#0ST9 {uЛ t1ڊKK8n\ۚ& Rqo#FXH &c1UcakDiC&vh77UAd3f*chU{w^jۆrÌ}ܾ.LjeRY}v6>[t؞?Bh繝2sLw'=o:_=yYvtR%<Ʌ͢n/o9>'ںz=U";?E>U!u>,z%=|A M>n.Fg|}RR̚;Xny#r,ZyNO-Yq%Oytfh,nV7&X`pVUq׺ɐ+Z{}zo5hb@=2]rr>Q#1t1wZc5K,V$lJ),HZ)P.R`FEcZU $ 7X,E5fgA%絜mr~02A3+}ۼuC-VNZ=/_XnY)k{Koowskzaeb!=SȦ;5=6aM,ۀRZ)-^Ͼǜ^}3$~ϸr{/G_|97W-ar1'w['EfG|x.,Ӵictu۶Vm Lo+lS$\4eټڬh3{3W7̄/SF˘hɡ .s0TH>O`Ga92x?q:[Nc]NqOޏVGÖK}ƛgwgW]Pu5vCiR1ȆzQ1l/}u>>mK/>'V!nPjߎeGlvؓç6ى+I-ݎ/^0V\&Z̀H)Z_淢X+٭Od|uG.5Pmz,%*EZfhz x%8Sde=?@zfk$W_Ɠ  Lo@Dk/|ZtzSp׽dGgr=.*mU -*CKT ߣ?|pm(E&@F9-261tT^4K\LOpz- mD+Cz=_Q]U3|BGZ=v ݿ8ٍXfgi~S).. T}Vo¼nQ`lz&O?_UIZtZj48}Rnd+ڗY+eCaB1Z Al YfHF .P1fSfB 𻄱zF\, h HDQ#sGpd"l)p)O\4ϐ58 YzUԖYQ]|HVqhY>Ӗ^2;Ejqeؒ[ S]QjJ8g $DѰxyΚ:Momrfؠ%j{@E"iIՔ`L %QKREM%i"vڀb.a6M.R1-ГԸۓ:+"{F43h}tIx"k ҪEHNCg?W3 ݞ{ݱd|ovw?Hb:]̾FNMy)[oŤH'yD<tX7֗Nű_My苨xCvBE+c!m<=yaYmI¡pvv{i7_wϏ>shYfū˗u'ddk fqtmm%먎ּ`t~ςf71>l v۝A{7glq{IU=ok v5;W Cۙckn9 vUF̎M/\=Su:p2*nduxm?n/cb]emGH4q dm)fd,7Y۵ճj=Fh.M]8]d]O|uܒ+9 P7 YlhTVv4]bk\̰.*m2ozSGs~cSV+$*t0W,DRzsbwTatGo*?AN&WC?^MRt'Jּg{"nѮ~/lm5ڻ)UEX:Mܬ,+lXQ̂n6%mg*bU2IUAرj|>㛊n`[#aq~ _:ޕk=sp/kҖƿM׵7>=ۙ8[a'G;W!C@i4r#* .h{P@䲵.UWp.{;)_w8Jh DnaMH-А> n$18Pc Mt$aRfA!*C.-}. @4Yę0BbYH/ JR=() Bjl;$`Y,zJЪYljʛ_U F0u`*ΑcR,GFPp.B S4fo| GpM˜Lq aQ ~EJlN|q*Z(kOڑGm# D(V7x<4\+;vy<'f{\* l[ݻt@Da\RF+И}TE`YfN˻˯˻+Csx^[Nܜٰ{fȢe|rlWOw aޞ˕'ExQ0L?L_VƝvݽzβu϶ˊeŊ%y1jee-p'p]kH!,n.^fo]\{wSn~_$şqWi冁7]J\x{_Bx؅b[#b~#0R Z\q;\9zJ t)lҷp)"篾>@uvߍYqh+s pNw2TWKYЂyźV(*~ Uwj5+2&8S:i֭'mOȢ9eLV0Q K^ֺϥi[<&#.kiJ]ӈ!jJԑ|RS.J HUanKXT4WR4g70_<K}IRm|ct4ehvnǓg<[Ew _ﶥj푤T]Ht=AL_÷@:v{`ᔙMe x`-f!]<g!]/B3-k9z򞫣~%*y\_.VobЂ_ ~?oԷyh GE+T[~N 󋷛ÿ3+:y3#NJLv'ģ}*bt:}nn~~vaL,XYô`mqo=k5h7J:/3I :cO1@a~1;^]r;;|F:@h./xsHG9\z%,RYī$"5eEi( ª"TQU\TRγ:Jݽqb?~g/nnce?R\fVF7Ƀwv&qWQBbs؅c<^t4*[rȥtneO}n%NGE'nWf+1XΩ3]s܋h*Y< r_gxy NlQg~ތY(SeSuuZVZ]B%{(.jDaE9kаlCtچs[d` pN([*y&HԨI>%щ][6M4ŗZIEɪƜ:fq0]Γhvx;@s;Nͦf`in+MovxC4ӸɃ:CIqZel}loʯ>=X?ÛoJnruda;슾ψbJ$izWFmNtU1W髯'>8}!xM|B}IlM/Ɠ rqX@zSx-'6_>Z\N;TSS?|~qQ⭿_hL,j/?X? .^f;??_,jL']IGIs m|mlFo{02=XjLZ]$7߬NFkۣAToZYٽZ['ߜ}mkܶ6#C(_O1LvGG",^P̐q^-2P3m+sAgGϋ߉rhza^N>(*v,L}L?MW-Mp.ewJ1zU[MkRgWw iM.$OryH<ˉ^^1ősM9kE!,"CCsЬKzU-TҢ' Z^DJ -%4SeEY$uԙc%O%嘨ȧlLK*ʒHXz ~in!/Ԉ⮗.syk:}ŗ.`|/()cSwknEb]7zZ24G{Xo)Ha6F؜fHLU>$Qm$1% >u#1BlpȢoWtkRɂ4lj)HFU"aTǵC陯bAsC)#PO˝#}OU}Q=CRLo9Sʠu;`kr#H2e vX$ퟤfUSB4R,9r]T8@SPI]0=KlHm⦚i% " fNB*.Jˢ`H fZ_N$ꃟ<º? 9@š]G~8ul$lm5]|V[OMT8Ubl!Rfbnݶ/A$& >﮷y6.;rVt&Rvxn pϟZoj`r8v;=+fUkZEyj,oU(Tݾc]2L!怼ȉ  07(Q՜͖Tw| ΄(KI@4K`w[Dn*Gp&N +Mי!eEvX`ydO!t (zsaV6ֳ̬E٣xiT/BjZOpK]K=ES VjZ!ӫG'nѨRH%&\i0 /5}ZTS L}dx2FVZy1$f|lDTV;X =DBi7HkWH$ Jٕz [>)ތlv#SC(m;p W4a)jlSnv_I¹iE!-RR-QK{ ˬ SA*͊vSȀ _QQ"7PSYe9 ]ɪQDj=b͐Me$)왔Ԯ0$4JDEKQ ++TR9LxVk :" kdtnZGL>xKo޳NC-&dMryׁJ.i|uβBҋo7ضR*ֲHeekM+XʛYH_O4ɱ`GMog?9vo6ǵS4(yLvw \$.ZѮۍ"Sl立rW__}ᄐ{f: xÏvye.fgf,mm7瓵޻I!o=b$2oRoT-Dt*KwE27+VW{fy4o˝ɲ?j]K&M K#ݮk%]VYRxw`e-eסs2$|eΉ"t C+-$ Jܬj]WUco?Qvt& [aM2jEQ,笥q. v[DB %úAMEITizӕ 1:;q9+bfj0\VQp0H d>I#Z4sϵ}{Wn)3vۼϯ/S#.WZ{d??^ؐ~{՛zW>|;o?mlS/Mue*k'7&2X_^N{'«lZo^ݽzS?rꝜ/>WmMg `X vy~aiN+JOtOW Nj-Ӗ`yp`K<9 ^˥v~Ik[VnF_qZoXL3 â"~hr0)!JUUI/WT@Ah(biJH]&fޔG44L"sm9G ̃+F13tXۦWpG-7m"&dĒ"L,@֦22mj YcdAY?MI"$}<(~sFur:8+#\@:ToJJBl}eԁ ƕmTL4 W`$uU\7ukb]@N .䈈DX0 5I`Wi0saL%HKl rQJzi|NSWnf6*v@ $15w'm`ظTIdxfm=RPX&*>bi}'l.%L Zٱ_Yֶ.כe\P[v+Ի,u\ˢvM-llf?\N+IWmiw/MkDVkfGY#V s{G=}&Qⷋ1x~~ᄌ[ǽ<=} +Y/Iyd1ReexY[cvf*Ć]@>E41ImKbt^Q^BX큢2ژŋ^7f40f$n/i 0b]{RL!j=ɒ^MEZaLTi_:,cm[ڽmUH-H c4*!e$:P*ijZՐS00h 5MKH3Ey.[X` ]UJq݆@1M~ع͈v],hQV'pSBbTT\Юײtv7rn;Nu9_^,pJ_] F^wWlQ 1I$ʡ>*_m0KLo_xyn|G;Qsj~ۡZ_޼d3?F'?G{}uuI.ugSmU$z-t+?c7l<ɣGN׋tyRF?gO !||KZ]5_wtz Y{f}f]Kd}=}JtjNyaw6FC*LP =C*ʩ]f^ܮdKsdON .A떽]btYR4RP;ӣFWZk:`7w NeHn(({Kz}f jSf6%$M0ńmHwH]H_]q$ŚUղ4emlXFeRW0GnWҤfⶭ1%YtQ ƕT1AAaJ-P)ݎԺM߂k:e)$sTғW 0v}i5 VsjSǺU[Q&pE*"0No¡kK0%^V-..u[Refu sکk1x۰^laZ݇x]Z16zH}{{XVH$IEF(ϸ:czůiR(<2˴7قhIэ_y~KB$*{[]΁j6;hX:<8U8mK)mBlZdYrS2w~nX\/>Wnn="wÁ?SN| &lDj UʫRML&cnY2ih*!9k6᭍g E#ZE6;-֊ЭJYl{s v Nn X/f&"{-0&p<"3PanPC jh!LhIm])B& FZdXp5W:xwB98fFR̳x")@v!Njp7+Q6{5EuIqqnݡZC,E.E6= ^P\0qf@7B.IDNd2[M7r`woK_wR~sf?~f. }9A8H}\L_#a=`_Ӽ96[q*QO1Jn6j$JwHMf{Y.rS,et$1+H͂A X7XAH9kcf4- h`5!xS˙#EzdtT.$hɕ R!BzwT:ni -ňK'Roꏄ6D&8[oj-o 9ZR;[Ybt8^)-`!0 LPg!~ V3}[%mxʼn#[i5 ⶍ2Gں0]i67f?4 AzT @8 #m>v3;l6+DBOntfQֲV`t}ӣBTYT߮1۰Xxn'u ۜvl. z2lG=8>>|GO?`kgӣnorF{'LK 4өϿx|gofrg.HoꎊfK pE"$ ;R$ +KM_l]WKYwf`̲ꩬZ+Fm:6QM#3A WxKLuk&͞y>+% Gg.Je.%2u-y $+~ÞI:y˳kg->ǿA3M^4V9dk@) t^P?8F$e3JBl9ߔo:{[wjn:)4h"H} 6ڲ);T~L~v_ۣ"tbcG [Av=Dx[x0ۭ^/^Xg??jMIۄY?/0*\Zn{鴵[jC5߽?Vx?KvZov&6$2SD5a䵪.7nƭ|0͢FMVfϸrc|AWMm.XreY0 y$uh{+M! /A@pYY/\r7=^7eȰ.#D@ʐ0)ei+Z[+jޣ%=tbw BZ=r5h E0 Nj!hbe)NӦ$imaX5_ rvO])IK/ [LZ]aDfGŒqw BM#u tG !l٬ӏ8k: Hu%U6wO-!A[2L%45X (da,WCaggDt FNi5K@*GV KBhB759CزfSWu/dNv&y_u6TfrCM::Q'* 5?ٻ=m#?GkYvމs:*&)*hK_2`ؒ@1d7;VusO9Pu=_ˣ򨛣tDMպ*Wk`//z0ިȸC1T5=QW|zX̕Vq4Dp:/pzu<͋Ǔ/~u~z~42doyFJZU ׂbW/N?}yu7ܽ9>NAP榳u42mcl2  z9Y 7NQ=w\hs[gbmG.j< YݔހROpZKLk86/S]g`s:-DBњFzU Me뭆V(P0j#%yI%VI 1HkMhrR2%Ur! j)f@uJhlo2QF:`:SI NYk1%{ ;WF$mXЇ;&Y8v02yXDyի}ǍώNϮ?YOgMe+| m[QRD}'ذ[u[㭃a`d3^_hc3*_O>Qvu|yyޛoVOGZRρrI*ɰ_:ΛZ|KcIuww1<:G&*\ ]̇5kpc *2L7[WC3km 4Q#k qL*el`pӫkk +8KiigJ6Ih_JwmU>Ql} `KCSB-*Y04lgKPCCNtZ)9@cdb-WX\ 3WE̕ޘ+S B:#TQ Rѐ>P\L2 #Jɮ ȫuF~!%ԅ0 k&%jX-25,F2J%P,ϡ+5 b*hGBjcVEvodWz+ jlU\~QǺ݊Lw5QeWE1z‡E7vp!B,كq? nS49$"c2!ܔh%á#:Ͳr1<>"usaGi狤x9i,^g˫+87MB];[RS̼inwzEfҸ&#HNǸu0ѐllM^^?}dqՋhroy͇ncnVXEn7|!2SX"yuWwh5E ~ p}iX"p F.rF]65waMȷL:k'i+ qznPRGA8 5r`Y,%#T+2Rijn% +TKeƒ)*ѳ$9I=H]\ƅzbJ*^%M @rVB-5ʟbn*O dj()L'EXm*K-\^KiI7n8h@*Mg戈e(9 w3`Ei@s- ^(Z'/u|d4 4tQϗUעvYUИ?/Y!kvUWnX\g_{iw=3_.~o]^uvJBJe*f,Ͼxroow<34ws~4G 3&, @K ؂%/0(ۗcb\H`5!E߳Xڼ2Qhپ J$J_[Nw>G3hbj@JR'lV sǰ㌐7,֣Z˙fSԞOf)DS^i!])r"'OskM3\6dy;ݑIdg\l9ۍZ:߾6&Yml=(AO?kWBy3+D9BeңsoGږ>}Nv)w6Gl4鳲ra4IizAĥL+ DF u+(^7 DE% (Mhk's*\ʄ2Y惶N2hڕ1hB#]I^QD;⋘9K CPr @~6Cʢ >PNb넩")Wy\ʪJDVIżuj}j`T-O|3L t/)p H> U`I+2n:xVޭpZ~ãKjmvFNo<_J\Ә_x[m|^$'Mtn|{GO~؝D{̮TXhYqz6 ) 8-lt!JBO̓lĔjp1%*pM8d<r Jm[ L-.Ϟ-_1Y@m6iV*1N|: tfvd֘df"Tg9~V@TM6_pd}=3lE&$+`:9:`X:]ߨ4\^>==4_fVt#lxZ(Nʹ-]_,%mxx%%],ZtM mݪn!Ymi!RH\K) "BK%233L%Apƥ* Ryim=KR3Mԍ6l;(K]"cHhUApCΦJ%FSwm:+(z3Dm2>ĄX:juYhg_1z ]QkMMIԒka(V)"F"ppD0Uԝ}jв p`D0F1)P`CMrsh1NPlDyaω-Hx20j܇bF%6%Z`$^̯x~k-YzX>YҵeFw( NnD?&Q<):HBCQ7A }?ۣ%n7q8 Vq24rE'L  Ě @QLn,MȯtpH0P^[no^i{wJgNۧ\C u 菁6^Fu_|C ,y`W*Z@%Yg条 sO3ѩbZ>߉|;]N䋊uV<؝j $͙U "T']  E-57X\PfV01wIQ;dĊ>@f6!iG|RkXLʪ*M瞂dE, VYN%rk,#+FI+ Xj`- 7@Iƕ,jp.BbRx\Wkbgpқ%\<%yuUXk<^at}W?g^BC" H/np 0i8÷{8^uR $}Sg߿|uo%EUd:_؆Mp5kʪRO^ƝXGVVD>>~\p+ˤwMwFONoi5 ַР̳˓;AX]0mFow6m mx"KUxad"sI;֒ʰ)&fJ7k:7;Е:mj0FLV+QZR^IfieUP(ʕ-}ݎO)m| L=RnK$ vhkDJbe4Sq+A BҹEX X֝DJV2#`V mmm'@Nk{.DR`t"jnX.a4`ovg. hŵN`;S7t=,&QKc۽}ܔ 5BJRDf] OiX:FCS:pǠC\ [ PN5@ؿٽz~4w+0,:K1\ώoi,/r]7"'[NãMFFlWь=:_ao?{cryCgro}:^]") zYyecmZg'(5Lj xYۧХGQ%2XF~ۼGÑ$ˋvx fQ@jzzu&3B 4[Z I2HVXt"Cp KL޽w6=z5{񋿛}Gڷx:WݝNeXW?BzJm{u94z4u MSV#\0s{JϏt=/(kf"eu33%Aӆ| k\79W检Ҵ_d8mK|믏h057W/FG:~O͓W v\CWO, ܢAF:V)E+R6>n-4;MP`,XkAP) !Vy&qʌ182=}s2XWTI j2*Bd]l[@iT o9JABE*,,ұ> X讙d )T)py]gOxu00\ս3ʥXLfv^Vo}Cvʈ}n3Э賓T,Tʞ_\~.hgz"<:zh/fOy"xxGw;*⯞]~iВK?_#C9f๧브BP\͏Jhqƭ0 -Fo7:(\&`A34[zF&paUriƑkǛ%*TYSCߪ;uԷ+6tU^2%Cg̾_evJX`r=3vZV"r.b/Srm.|\?)GItv]xNĬpk&(7э)@Iʮ3Qn JkvucykInc%PQ: tze59l\k%niF]JY=1QqͶd24DҴ^'5h>.dJY^PFV`iRPu,ʌdVǬ)̱xr-v81;WueVKq)?]54o(3_tJ, :ѹkCP5lEy{m_˿ڵ,uEK }כ8 Y:^@-^*mAh̯?V;]M<]]_>֝LΣ46^=We4u|O2ˣS^GxMctcm\ttiπZ؀wi\Ġ! DUйTPk+uWc1auH|W(Mf3b\J"QIQe6 Phbpc)uRD a TQz-LO,*q^+e!UӎHqrҸY9!'ɉRr7%>Ea4(4nuY$3x]un>M'PnɫjNp1O'Fdʝ)nuCdŤ;J-AǠMn x2cU P![XE>OwϏBRcWJb#)̺ڍT:] NL˼X&`p /u; B dUAf<]T_{Be=iD:J5m(Csva4|V]Y13RKLT5&%- KQWLgh\Te:;2WǕD%Hqc)Λ .uӁ LTYH)RS,MUl>TAM-䲦rePۦ\XѮ!p `9VZ\V29Rc|".?v?O+$Ӥ!eH-g)Ǖ14ηg yfgw> &_~ُxb ț|Z7~-=ce͟U%+uПNT_ aGG_ڷ< :8xkOW_<]n{Tf4Wgӳ%r] ݡ~gro,qn t?N|xWٱGr(Vi!94-iF} &ΘڱQ}F#j[ue8AP%"U+,yfYSVVDV#+eks.~C^׍.  (NpS6*XDWxߛs+_ {nO"Ķ>x}/Vg_\G1_R_o6~|x08ID9E2J ^~pY, 5hS.W=SbHbхS|P9`g؂bf1`LqfZ(Q^5 ͚ݚ-enbZΐ*w[[74~o.>S "0{9ɛiwI+-4 {Bst( Fv &LSS )le9Ӣ-=SӯxCޠqrҶQYؾsА K,5[#˰0{]m}YnUHB9eT5m (UnH]s J*"1oܑuTPn0l(&*"6Ү֓:^b@H%g|0Ujv}]63g-\pJ6v#1u~z;]qI7+Oz]u(pNգe7ͽ=btO4a姗4ANKenYLPPڔ:Rm&l_hG*%W&`juB䛕^Fӵ0ҫk=Zg8T 9 X@G"M*ĥt+RJBR ĥtYvoB*H eC&5)y e!]T4J>@f$Q4t\AAqb AX1v@kBOLtЛby@}ttٝ8PNTTopV6rmB0)Le[.IYޚ<>KힷEk8&_G=ݲW,i8`Kysdb⯞/~r9y=WȯS$/Ž7aNFǐ]O5et j/];}4 *6eʕM,WF~vTlE~LLCvx <̠θIRQ紻jzEjG֠b]cSnTo{wOէnfO坪+ns~f烠;p(bqYɤ1jw֞fCpD2Pך^Ĕt=e[UItR^+[=}$,MQAu)k*uR;oGffߘQ4cϋZp~#wY)!*JS P2 b#!juRe%l[QrKN攖sxɁ*WMez!_,3@X}ξX`.U{ ^vC%\57ooSxY߱'pP_|togw[.ųצ+ ]2'g'IV9u^k`~&ɗ]~}~*Xu6߼g_>~rt[{5a_}̟u[w~١]kUfg-Oif-Ζ8I 6bU|m0̦P!6zd U `tIe1qTmJ`b@4'ȽXNX9jʳJeVA N, 1R Ы?ۑ릥y^ ޴DvJ qVSiu8JyJ:GFZ(,1=G.ŵUۄJh <c:~ѲIomo-uWDQF\ eJpuLvo)@H px+97kZQ!*yQ5WXKF Zd~~(n@3 l4cw}?gnrlw$//bIeIo}q̐iTq8,+t? G{Pv2 ӗI;FlK~J,rívn,+&0XewtgZ0VyZ9NR;^"S'b.Q~ɱ֩Epai K:?een" ț.tרnb8r.F)hh*dt_qT^iMѐ6K+3MhPW2 A=n⺒7Ru.tL0lݹR& BP̑TRI@zUCMT"d-J(䈢Wp-Ym8vR*րɼ^aG8Uا7lwsE1.5u:K; ,{w}:n,Y;ޒ}p;75Gtio v9hjڝzsw4jZ{wۣttVvv_~LV X/r+ݽA/kQydo.Xp%X\ |R^~5'tw7G *MKl+p6=R%ʘeLk:2PFaIbbJ<AkxIB&uO66QP aVӎR;f2kJ*ijіpS^Dˡ% is]}P*TQPAc ZkMD $ZbU4$SP,-WRV4VvK@Qp&lͨKkooeUT k%3*aiWlRWpF E"PFmSH$4aIz|Uxa\3xTj_Ԑ8nL {M@xeyBEDZl9&R"b'\Z \&kbpI"547/Ni m ݻO=;z$:0hR(87ƃ{o* q[ ?KB7ھf>V?ꚮY~qd$R V?޼O7sQ|JW'44ć.MX` WbFRLۭnsmomTYa%ʢrw2m\}uܽN8 gA6dNZ*ox#hsu9}Z=_=Ľu[7Gz?/OX8_]:>9N_i{/)i^!eLmP[?i:&WtbM(JcVaFպڹ eMU[BE F6oV=;J.+8g"(VkTCJLjD!܁<6mD+Qmdvr^YӅ:N7 ]52;kn3S *rL ۤ鸷E&R(6UѻΖOzf͐[K=[{tD2?ϲPMpgoݏ~Y/ӳ//_x񳏖w?o߼o&Agty{;[pmhWϟ'ׯ&x?Io$Iv-}}n4zAhChHld$FF_A#$rHb! z*r#<|wCP??۰hn C_% bԲ@Lt^0Qo!}2]>e( yeS%EPY@ [qB-!98*XlA=FXv `*S"hŖńY4dj*V?rnZkAO4ӫ V tմLgRy|9w;:כs8YLJs</=)g|}54kUm6Q?g/7nƵo_q}4Zgh$U |Z92-⢉$6M)6qުZ[;Ի~aMtnNow:7l^YOϘF6D(\%u%2NNWv\L]fFD'Y?1>(u2liF^cDrrt"_PO,Fkuu5߸H ϮdT}nKvC|x&O,ng1擏ӏPe9 ?n&(E>WۼΥ7Sl] (6`as#г(Gx`7[ Xn5.UmJ b -3q"Αj%&Z`IfDAU?^z悅]9j0Mc>8]ٺ0<%٘A'"vÛL1Hi8$:\Yi,Tf04z%nъe>s~3y\5#/as! ~PI]/ ='*ydM$DS".ȓv*,P@7귈!VY_*nP iZ@A*G 8=IKEABivZIf˙!OhL !l&f"Zk!>l͒V5Xce{ptPn]=}kCU7o5oE|lD ~6Ҫܺaeolmgvj[m<)\wwaf˔"rJW+\j'e/ d?=oToho?\g~uc7b|~2Y;2[ x6.vx]oi8O~ ޼RUv^v6Kˮ q m-,LfJ%IVzW>JNգ7$5o^ yӮvRNeOX<˪cLS!Dt_UY3mlӯ%ҸRan+/,Bڰizә>>V.cVٓBCk'dylR)t;u;O2 iisP׉|C i2'+Jy"rP:"E,rɓW10W(F_rxSK=g뫕.7ZUDnr2č } J4R ?JS&ʽaf+@58W/![xQ)8vG:M#=ghȍ<gKFku3V~:d>zYq'L![zq|[wyZ ٝނ,D$yh_k0EϞhlVS7{7oÇNl@i_߼JEsv\2̀e\ӤjNRY~pt~Ջ $)j^.#cQU~j0!oEG/&2 PUԱ-O*Ag#qK J\݇ד%"UXHUxDs` },k֍ExK;ƍwhّ58< neAQHol4dk3{j$BK LYUT:M+Lj~Yb!A*_*<1z>1b ,&qiBǸI;0-O4FY)kjEׇ5 D$2ۊdGu1򲔨+P RM nf-9ֹ/PE<@kxU Ox4Y {B8 8<]a(߱=vZoe7OÑkm޺WKs2gC^Wy:A'bTN4\&T YBX$ulH¢E, @tsLdP1nV(),fbI7Cy|AYώL~cfWpj⊛}o?T@۴Oay+wn6W ^l6x<ɏ`0A -To ݒ3GʷI QXq7p*a!۶4.>4ʅ !7s{%ǻHL'峈*LȿUYCE vap[# Qar UYXRJS %m{y+&)HPD+˶6T^C$Bh1XSx8[Ft*me ja( `JWwTLR,ʨ陔.\EU)Bg=xnPAZ",6%c5̞\e$Uf$ÞX}h)Z.nf%uWDŁ s6|-d څyNrWU's\d([+H,hI3{i j̠' ܊Sζ$>]VUx(˶M%'*]P[#<)7ů:<_+Ĭ"]rͯ_&'%9fy.*z6C6NBu]+jU?=4, ae1勰J[2,_F!7/T OJпYnTYxx,,"F8WLrQ$1NYtN`Ԛ,anGӴx"?!j%% gOf uy=n߰`4~og6_/]7E8-M}MR ȧ,Hm,!ր 87pLzȬkgiUT1&1J3P]Pr2b VDl'-sD |^>c/tM7_wdmERB릲Vm82GRpnY(cHVV @ rD`: co;edgm۠+"8W*Bfz.)L}ШEGQ|Ohږ'_nr0j~E">0l1h8(h.x WbO-|͟uۗn_z{ng7'T|Ӈ/{dAӗO_?W/?> Ϟ.tU)`mc{ _U!*gӼniMB9n(45dbdCY U}MOgd)s1$\ _抑VSq+D"l@#{(*i_A*zp! `Y=qTEZB(CbE=QKE7<%cՇ˹rTߟ!hQUJOtm2XrIMz5FeH %Ǩ.Jri@^ I Ƥ?"dVp&GnY[^[gon^hZÚԸ$T/H 6!YyMSIYR-(* ,G K, <n$I $AM$e1ͬ; Qa'̈poV&/, 9a}[Â\J紞#q|>><+\YݓyRqr~egZBPWqW-qZ4SfOY^1S[koZϗ1Z 9X$;LoZ(-X]NsfXj\RW)6LVѦYfCGͼ0\9-'qŤ-5bA\LnQ~prJUɊmj1pE3aZDkM fQ9ᨏ4KyZ̲|z֐7nS\4JMXíqppA fX%DHzr*)Wlh֛MBP*0Ԋs(`eqR1 O1"u,QJ@h,GROim㨎zȉjL>…Vko}ͬf哑f2tЈGL2t-qֻ93|5F!jqqTqGYu1>; !ޓ^7nCt]ѳ^ۺ dSP1oߟfni @(cy>}q6ӫ7oV6NN- iatZgF~]ab inO Z]D eTQӌg^Y9*OF\0Jj=hu[=JԻM\N2UKrixXT:f 3PD;>0 9^'+.[zw^gk7QmI=5G8/(듬m}Qv'cVl fc*2|6g+X*v')s|0cޜ=x L[Kgue1ӳyɘ>/tit &8٘KP.~?}{?ylV_Zs:Kn[X_P?'0c@ @FKba(vE*죖M ,Զ[]Li,sߙJT%!a+_j=۵05 —2X1KgZC, )"CɕOHU*v42qFqE@6ZUXѤCc ( ʉ2f ͦdtȍ抩 (>/wʣ`ݴ`zc5Ύ8zJل1`z/Pe@" 'E. QF_O 4Vv>pW5FauuXRB@QCj8 !A3M1˄ ^0 K( i W9luUQ2^Vyʴ -&r"ںt蓇}F Z{'}~ŎW֛lR G lJr{˳{gz}w.+iiqʻ =ya[k,)+]O1{" Wi٘CKhDʈ޲ojd~\Z +T Ya|BIVsg(aJCX97tIԽe@!(֔QV@t * 58L1*TdL 4A)%pFV͐@\N94^KJQQPZO7-,2XPfX__3|Nbq9-G9/Iyq0y"}_D=_"OW_>=?>[ztj᫗4賽⾼sEYvqzl+g0?~9-'QŃ"sYVX1*=)joUMf?W0HeA2_wO~}uEeA iE/Sj8853˘ua9Q.V@@ (bi8R/BG6oiTw(!KR".@K(h axzkF]hqbz8EnXZU %¹˖ @ 4p.-d15[ B4\SR]2gI DwT+Y(y I?YƌԽۤفkJ",Gp*S(:PY*cPg4|6,* E)Zm;K@guqJ`0p{x2V%ܖZ9H6ÙT%ǚ* Qk%,0G ^o ؀F4`ZPjz)VraHNeK-ݾݼ^쇧yYz;]^n\_/_>}hAke}J&|L~r{emng^@a7ZpOx|pyM˭ sL̕8,zU$'O=f( n:d[wa^~|3Gw ^n ,x40=~u6xýLYG͖銋A;d,+aZYVragIaFנ*#Z\ 'Z%Gizb9/5w{e8k>έޗ<ùgmOQ\]`N]A&<(wH(Ml8ne(5`SY=Bks8DnS'1$ 2NYU_P?+"8)JVR r4re^/zʂcQALciIL$#59tʻBs$h݉;W , +P6y6Q!0.W@UY\,fʫǒ;sbU-I6&LȐ/;7ݱ~{ޏ,ah6 {:ox3e߿ӻ]`8?xu%C~u0jZ[> Fg{#-W_gkm{xkx'<^8w aD[+i>h"oX҈Vn1'=FӶat$sH@z(Q}Ih+-',zD 2 =2VCreRftń$*l yMx5VvMhHT16)*""2ePi}}OU+X@9ԯ-a}1A6*nH<ϐ=fȆ%#iT9KlPfNn 8m ̊y} WGyNS ?Sc4+xW[~s۵[Ng8qiEa&z=PQRҬYV| zz9XqxCGUՒ-3=\#E\CT%7m@sݒs:8N.24"@I:hZT %x'/|pa&{g\W[4Ξzjվ}we9/1K\XN䓁5zi {Zd/g_~xGGS+x~~ w,+O6wQO|OңkA~;7޼";]||:9qQUncV.غp, zk{Z3Gô˒1%O_΅bgze\TJg 8x9wpy0csu2M*,*=9dTzE}c,c.}ťbҁ[t [W.R+*jb=hUG& .̔ش$R3Pre5SraFיK# 2 ZVH["0߮(pGY`dPc2+>؈+1#TTbCBT ˭0–!mb-# X%O"\΍2P}*+Hs-:39ѥC0rKxG#iǥtTǎkt~zS~gٽGG#R&Si6fmۻ+8Og0 c>=~{?Ӗ'<o5 g[w߽/\t9gًS;[&/?yvly~gl"hVm-HE{F(WolV[WmMDIyE{[#3Q"5Aq< !TԻ'+K 3΃&d9IBhj5Glg&۪V,L"~Rgh&NcrgR^ LDɷ&5GEhjTCCty.aKKѰD.4(s^ρH3DwBۢJ ӥrf QpKɆ?4Һ. gj%,׽KfPef(uhPmgU}yɽ@,I 9ah1Pm32Ѝzx)=ρsK۩ ]?%3KHф,lsLK m2/otzk?:~[IUnEp:LkKfԵͻW/<ؠH4ܤ&寎>»[h?dpƅ+ M}5::uN 5!j<v&gWwozW_cën*&ϟVbǼcTZi5ww/Gl̰,WLƖ"2/C@4;Z^FΓ\*%Bqf+1|Ri#>},c<K]LDITRXZpA`Znae4:8ȭxiAJ7+SQ04խ[z{24M}UЌ!Z5=͆OYMŒ\ipmմ+U\ e$lgJOU۶?22j2E4Ub4]-T|ah*u+?؃c RW,%0T WV5P%QarЈчvl6PH0H ԓ i4:m"6iג,ϧ,{0|{z\}eJlrl|L;^.Y݆fArvcÏ~?٧gWޘx0u睯]t6f|zVsܐQ%MwjPzHɳ/~޽c}57U$.&0yAy,6J.Bq#Ro TT+EN$k{0\@l0#s (nurJ^;(*c 1zzzpiMIi[+S)0h,]?`]u 8FR3+CBR+ iy%T.&aMՒrL<<@_º9J#TBYDuL.&"ALYu#2lz*,7]6hKMG'+aiXy[EVPZwHg0"$eC|S$8R-~l<3 g``bӹ>S/B S OMUmACke5r8S A q.yLLx*n5\]K_2ɽVVl:Z6.+W'qc<\=vuεkOqVLVv5{y8yn7^A؝F ZZ 7rEl٭nqaz+闏N5mS|8x}ݍIv>m\"Xi*ʜf#Fu*Unul;d-A9R|dU* ܬ4Oh\ .lmll{f)]]:YL_mp%SGk[d"^BXQ`>]O_hr.و(&DDi{.dpXic1ԧ{Z9乆e 8%Z8 *(rmoRW B c+,&AaH&9D HKVȗ*I>8GuRSVҨV߂ S ,NU@@J5uU'/r\s&qᘁi# =2/)03Fh@1B nHKɐ (2R&P`S'gPBh9C%@-6 qv" ,ʳĪ9TVWV^CW7U%i5Ϊ[ x2 &ɗfvV{|Bo[q^%QBd᱿X{z{Vj_CyuUK^`z~-y;O'?>;>^ zEQvֻ..k< O&yf^=?1ͥ}g X栣Pa֪UK=*iyN#QZL'w4)YGSp%^v /1&*-O,Q(oz_=> O^T^7޶/zl +9KżqC W!s|i3#mzmdn7 xK|Z_Wl`/I<.9 {轛H3ץϼޔ*ngǐr4ZrVKr7D*VwP0B )B$CCr8~ghtU׻5:U(ܺf9=7w+`Zc\^(uoE(45}My^ s=eU8qIͼ2Hnh5al4"`pL#FF%H:&j-7ƁJ f:G[NH!{i[׾F|>}νǏ\@e=SĜ?;?8"ܾy[0=޼4w$MrV# =1 ~/?UGMm Q?{k{A>_Y/*/adgJ?o/³/>x@\ ,hX:8 8i LQȠ*ʏ)Ò"kP85j*Y@SS^򈴋!.E ߠMGl`a(77vSOC( 8R05KxiA㰦W Q#7̤D\ qyrR4nIOfP<5$Q(28LK8DÜEZQ WiJ/Xqj šbZ_E;k+ږ5twIb/U򔢒 r)4Hȯ4:C R!9nEP* .\`AmS#5 %N[;31QR 뚤&6f.a`m8 VEN*7|]^\F'٢rVnc,_YFAx^s66b^[j \Ë,9yhZV5ko:YV#86=+++EItO޷mW6r?DőjVkV3o|(C&WW_0$]zղ7a%~i!a{-iAOu#PǾtWV .A)ə_@b\#\~>>?y6Eݰ._?{p$wUzm\eՅKpßq8XAöo\Z{͑S}W߹:_ <|[cYDꀤ̿ bB<ʤT#IPc^ ,XX&DZ4H1hr|VIN*DDD]]b}?'y& Sϋ9T>u*YLruly̒ )үڛ"#;E%W g=|VTP{&6e0b4SxW@Ar.X2@1R T|4Ln"` ,E2n/w46)jSR.ė/X>`5CF $Xbf@@OBΞ ϰԩp'h'9lἃy#4k. {CԊ6J$(cC}V֮Wuqn~ƕyzg K-a<}G!p(RaIO>xu޿I2[XZX_p9-8-Rsw( mWbT2R˟e;ե(R~2u.'hi}8LZbhZ$ n6ڵRZf*.Z8, iVyb<=?|xRPm,04-Ē% wБ1#JZy|97Uӏ :y4вd8Q%se:F(#4 DNNKr\bK -4. ^b PA>*3=W` q/KiҸE?سR"E0qU4ǠƤ( ĶbDP b Tc(+Ӳ9@c5 HwtDR5$ H׌jA\vyoT׃O'/gQР #fӺS.o.Vj ʟ姟^-m}o$i:Sa蟾oyݺ7/0⹊/e6uta9z{'Q"ꜹYyAi ;M8ګkos[y0LqmܺYO=9'St[w\[ f?{oo촭?٥"jqՈYZ^z5z`pE !,RILjbJ)8h 2,"PNj7#bI sdQ[R+-wdOY~&2LO%qPE-m:tv* 9z \2qgX2c7EM sA\\)Ju0[.g *Ag4m5U4MP`Pp yeN$]*$%Qf8+/8,/[]`|;[tTkM@AB95ʕgTp.C1PS u 9h)T,BŒ9Ngg`PqD6 j(!$U9'Eu$pŸSpZ򐧙AVid',[-^eMi^έ:clnm.N4ZnIkGg|Z? J|0:Y`س)Of o4_pkwv%ǟ֑vqTZnړY/ꍺ!!.pZmL"#EvR:+RUseiU=K'zY[\e $P.yw?9<]:lo]۫nʙPz C: bT;c5+Z3ZdHsK&˻,c&R 'H aðu{hdҦ^d( CiaĀ7ڼM4QYSHuf Ҧ*Q4gp-MrKdb]<%XR@@)x9(+](%$u&ST2Z+SqWƓ–G+&efK Q7/2vkFy܍SA݇T$N29"YL4myñn#ڭY[~󯿾Mj]^_LmQ:q䢠*DqGiy6m]L͵RIMNJ{'Gk\XRO/T_wbzڽ\Jۮ}^w賧cuoV<=wtٽV?ݟ}Q_~猏>凝i&0kljgneJkLDPY.Ӭ *bRieDNQBPZCfkylX!c*&$mډ8a6an)ړ)шeٕNK)I8mBBP-Q! ^gýU`kWીǕ)=A<`a0s00 G\ܜhr9`,J#i,OPI"ŀLĥѨ"%KwmHP^O$2E ˧j+H hH#0\KB!Pg~p5 YMUB|E,h&(|TLA%8MPIn*V0O&_qhl~s wvX vbޮ6J%MZt>Wn?%5v}o++{v@lv]\]X[9{rzJ,ucw&k%FSJBjDsusZ+d=zzCO77˭QnzE58k$_JPשWY^77M") Z3H 2NYEb>(,>.ϥmDr?5I(qk~D1I(i@9-EbۖSF˜D"ZPfX8aJ6`||[[kTܶ~ӽxniᏹ?;3O~nܾ|#0\\yţOw6kI]QR[.5/<Hbٙ(;g+jK[(!g(O;?O<?}НWeRJC-d׊Ƣn؁XńrfrcIͱ ˡ?\n{v35ZҐCNep2Nӓg_?㱪7+ b,[ͤ[/ H*x;.-Ct^0jJ68gUSN&*سrAX DZ"gMRR#7DBT_ 665H]̱ȅJW)UBjhUP|@F"Lb{_I 2HN0QM2"q1 P:[. LsL ۝PV5MYᘃ X>:+b| [QTyr<=)UE/j )DZnUl ZZj-'oc_xώgscB<,[̷ogO:/uڲYjOi˵A^Uw֯o7ރggԛ?2`P:iR Nz邻\Xmo - ƣ{Zwu{G|=<}还 ϸo]?G??N什G'0K4\j`[Efd0l( Qǒ^)Eb*#IHP)^XV'~R:&*[JHtW4$Ғ:] ,K2 A3bczI tt!bIxw0kDq/Gga6h2u^M€O.s(IlծתB@JuO7n4aQ۶ sYz240r'X$84Ja$ AQu}\L9@sM4Oq~/w?W1i+_ix{o,ݹ~4i4o׿}yŗy֨J)Gp9D!$x( $":JP[Vj+ؐ]) BǾ̅j Ԫ +Ic[o@Q(DR_ۄHJh8<)sq$dCиoa $ aJEq@,29AqaMȱ,˥aPahJԜP~Ƕ9@ >7 z QC"GO!1jV *]->'s3)F,I@< UGcXNJ\Y\2 0X+_S(9̤i E@(!NixJuUeO"uͨ4t2ׅ3$^I$Ph \{FDk 7OsGv5=Ӛͭl}={p޳G۾ZƭׯPƗjLjVnةk@ :}f;ۏ/CwVg*mv="BZ-dFO;^ˣP5_۬ҌNEK@=B>5' Q[I-Rd4<^ ^Fd42Hj6q68K>=xkݼہjЙ"ˊUV׍qcۧղ͆si"s!o!v,r=K'Int*Q W2r[2eH[3+bPG$,Rb;I(Pɴ2g2^bH#wryrbK<+>MBHT&Y2a} ˔.HFci,:cD27v #́h!}rKeH&|&]Ip>14ǾF|{ՈFq/V5"'xo?6e Ne0O/e`l_#{ 6kk zwY1vآ%7nS=U-&-t}=`r4?W\%3}ֶg4QbeqiaEG/O?NÝ+Oŭͦo4~糪p:~cO_͛jtyn|ח[tp_ova@Fg:j׵YTqr胖Dk'XfsPiWZђ> rL -XNNY>4s/1g_-R[2~6Ϟ!4A"s/))IΊAT1pI ,[ϾZ03D΁]yV1W^cr;$ͤߺ5x:ӴL #ӌâ#l 2J$4j$ j'2i@Y.W<6m4Ua44 i(,GPt Y)T:#A2du f^Ү=su0ܫiDhժꕫ闳tTq}7/~ㅍ;?pYr7}tƭewcsuuM)>œ_|~|.&3_{%-wR,RN:~ƵaK>vxĉqeofZd̆8Gv2`FsXе HL)( M׮w'ϓޱOQaRXKI/"}NalCQ-ij9hNEm0H9R:s#W" ٰǟ~xUZ]byk-5LE$xj` uC N]0^NgՈnyJ&A4b@lI4xܰ2dB2DȀ]䶧+5^dPS4aTPz]wKHj)~sZ.f$oO3sS7#J) eRP( Q@Y -V(aEO;f"%֬Ҽػ3@I@MKO)::h'v1Bu6[\mA<]Փ{[=H^^Ĺ%m6kVJ*$B~~p+GٽMOvvksϿrR/>0htPf*sd;v{ /{O=Kvsq/~zϭoxywnz{k{Fѭ ~__7v6-^}}gO>9ysZ\[߷06)[K1TThE^UŠ$ymMVU|AR`͑ȋ$9)&u8@>iGy`2Teڭvn?Kbƹ$@*~[jHuQPT7,z0)v*Jhi(UXE)ZhO ORn-չJA}`p Xr1A)2 6~ȴ%eP O!ߒCi7jB7,fHI1,XLD*\9N4"M 1Aa(ljOD%pa3^"E~3Ǭv]k_[s5o'DɃәL-4aZҖǻDsW5(`J-a'cՅ%R]v1F·ȭU7-7Zp?<8,vԬ23m8$)='XiFtf:ҕLWu31r9@-**?$zcykݹŀT}o,,&Ȋrˢx1R)=1N!mii^)Aiwd*ZY'sQso[ Ǭb3"h MyIFz )Ϩiba|-:dbZ9b4;yqvDVɘO`CRPHtJr*2מ @F+nM&`|:\ZY`VJKPȖK2@hڜ< af #T @㾪( /84:da'(2l*(ɝ q^Q&]BBԖA)㉖3T eP-`\ lJa[¨`RZ ʶWɚDA$5cu < h *R aCMb&bj}-(9I'"(8DR"M7+HH#Q}%PYq?*u)Ä{<汜h2f< F@ AujNFݹ\C1Iыrsk:fG#R'(9ğ&HPS}K3L#:LX!EuT'@X4ǩY\:@65K<*?žT{^;}0ݙ]i3CR)v{ ( OrC &ώ7YP/ ga?|OC})5ni>1fkGox@Hm3_]o?u^aZi If"ʤ𥛻;4 5Ōyʵv~q^ٹ׮\+5Bp;O7/ʊ~~( cʷoãge N]oKVիo};ۧ'}KoZ}=IFu}m%gwgkW7SF2SiJـ'1s!-ݭFs29lI__Xf ǒ֕&V6TTIiultNw66669~bV fmx8#1+5ݕ;IVƫxyqwRor?Ύ}>W<<KW@:7gO.}8}KvNP4?yNި-Uw˘Nc9Xi'KŲJٸ;YigiiUցR!K/ uY2t)NR ljf9zeׅ@p=pJ: }f` P_5Րr+ DV*p+"eK՛&{Z9qkc _+[(ZbN^/s ]aSXV"#vi\s򁲫* Jk}ZzV}cxqB:(&riae.h1 Gd䃳믾 .ZCKtL_=zDwbP*\c$H!?Ϗ/}n͉}xT)<3o{Zّ\+:/!Ik`֟bNjCjO^+&s"U 'p3eb Ź9;A@ͦ8+*gUTz@ "م/N\<(,k!iGCh T[`5I{UF:(CE{J"3(Cw+覰0s*'I9̑5j@ tKvV#;>=yb.tm4?2y͍vPKq"('4]"Zr]ySs]OQ$enMYNuvͭ+_yCR3ۭt$};G{4'ޛ_{ɣϟM믬. |֛CjGsw6Z-pbZ` t)tK}v€Ϊ.*,bTkKP,"fSU &ñ i(;TX)PX(jWrه9m Q ژ-AW!F}ycz|_bۮ{YBBb`qԐ-0*G@j0s \qQ6HA!J ?丐ӬM $](*5 D5h#+)|Y 'LR:98RН0P3Yk3VdUg2t ֕d.KPT(kj}GA(*|pnԧ XuqBLY13*/yrQD&hV\\_mwum 擻z7zSo4+|QdglgsR00'VڭeO0{WL??#ʶ;I}*v˭>Ylz[~u"=o񃻏Fqi\ꭗb:ׯ>Meuk^D^ԺbM@>bekӠ`dQvn=Ky8 Kl:%JAR[p՜[5dàʬ֬[5f6I53e.1ML>J"  2 2ž7l, ڂk).e}7'?םݕ@EdjD҃"-eu$r^ussͧj |fx^(arrb8į;2%54e:sU\:STFsV Ьi4 *j.bU/hFQ- b6pji:Z[ yjꄢb2B#U6X5@0Ġ6OIg(g|i$ΜFAIVu'Rb\*k_7;y:yjЧt (h5m{4 _~vrq~tqW;Z)_h=$8 68NDLETO磧]=yN^'? k8_\r7Z+5Klj?;ׯGj1΢Wo~mLgr&R°mKhOYǞ׺N90 YPdgNj7FQ+\i2L aJ]"'}[8\d_r3*)]P(EI@TeH;:s.$ gO8 xM%6cn `OK:S ULL rNeQeͲ«AJbeQ /qBXH LhS7ʡ* #sz60KŘin"pow]LG&у;띭+ f$.EFͺM*j넩|AD0,LȯulZ*T6j檢irgu4ND5.UT5Oˤt$1j#X5B-$^ ́[h.8S2Oy@A$Vv C)ӑ`E:N^8i[Yu(QcL r j7dci*^ =ǂraVr5!k1}<M6ϩi Ӂʪ\- n#w dz ; ]4{R7!ɅRvTfmFr3!@*caVU>%A"_lnxP"vsbPD:@Uv+/E/3A !* U+V)D:Pe9yhh paCpE İY<FbVQt6_ }0fA0+hfjY6F9+ڶg!yݕZfSp|aնb<(B~~p8juuǩ-ϝ?S^hF]}xw\Z5Ftghnl\ڕkBdiJwi9۵Zm{BH6{R} {z[rmr=Gk4\h%75d2s Md!p fle/\wet]DH(nU_>E4sVj];.(ǃ,Y j;qz/*;jan:bvYzkuK`5/t:T]_Rƪ^|p%7pbq_v4w=Ć1x'Rk?z&9;Q-k~{xo\{Lt#U򩖜RR G9!@R,S\ise☄B`ŤRSdD .Y4P`r teWr\Z-Yb^ERw]4^-%\ZN !.o6Nd1Qbp@ӳ !ʃR$4S RMERҙtkY+KhB؂EBJJoE@A$tt\ uc^d׸̪Pu,n#+0Bha@ڇeY׳3sHdYYS`y*g McT:$@Vz+ϗ4g<^̦'{O'To̒dn~mARӗVhFS6E>-gLF'ڛ}WkY|:8™޸B}|Gj߬%76ΞދROrcf}um[_ÃovQ/X{OO%[xVTՈW7 FG,Y[ \'Ϗ~1ѝ~;; ˭NbD3ݨle@%N{ff7-%U YK~ e`:‚SY(q,#P̄NJTKT*S1 uEmg j 6ż܋mT3 3^ht1*[M*Ra9>yh46&ܐ2DfG -@V^mπ(޲`@-+1D_ RoV F.,]BaaiIVL eutШ`edMWZE(f(.UEǢiz@[4t1@Xq-BߌgIW\YQFlRdr=)UNg靇c8JljgvL,_~[;-m=&jJ4V[ca!ȕ!nli[eM˕:4ʈZdory6T5t3:imn:,gs{o;|l|^ǃ?+食wHkrD.o[+]k͍//>#wB! t e ƅ 45"Gٌ# B(rDU%d?mx0l:ugvce]Ƽ騀VsQoZ@M;nG ZK&ul+6 ljnp9 Fjv=D@B[lu"ΚZ$RE xp ft% 2sCoRэ!$ (U!1J'N)Ϩ Q.I:>ysmZ*Ela^.Me!/ BdVaW-5TH@iZ:W#yɘ!U$*ouFcGk'(v8%5BuH}d贬,'T ݒW*9lf䓇K~ᄑt~~7}3e8O3U6u@t/_ֽ1~wշ޷M]r׾śWh0'ѿ0RYQ K%LcQɡ]u& e B!DLB'f- ݢ9`E9HهՖ(,5%NwV ju)JXvs09~B.J2=|ڔf#KE*q8US8(&W@)!:M9(t#Ym dSċi\^ . ҅g3o &\LD5+Nsf>b!#=RFsU;]^E!,Aׄ%v'!T#8a{VB;LFAR$@U҉m&"fEƑ*(!c^Ά'lsݾˬ`t)Â4[V_E 4vW2)G8w۷6vc:ZLf%H xnl~0{?_][yՅ>Qr8x F_|.c9NQ[7XI1lH`tIsm{Ϗ^{\ <0^i+k\8]r5O+huì9lnfQ0 S)<od4S`6'a<æO|<̡*X! dlgg{gOx"q[WkK%eCrq(v\BHoDe/)IXrj\\>"65XeO/lQZO/WN7#s%M!ҜbƼ"eM#=;Z^̩Lz?b )q/s3fՄi-z`8R_P4ȳ(t@PJ 4*Se2FTXd[4PC7 Yq.Ft) jx@-f~)CeFHwUYwr^)ςœӋYUX;>۟0 L"ӲM&Dg[ފt :-1?>g7^|c-|ǿk.GG?#.}Á-a\},.˭M/PL2.aq#Å0J7iM]8Hiʪ'sa. T$Ud-uu$JPtܢ[&bC̰Kd(Q㼻tBZj䳀A5IHC0ղf' 'Tѷ(gHPhqMPWňyZKҾR,d=1iCYLuPxR_B@q^*$3eoKUgt) hDz&H=ΪJM$/A `n(qfUQ @HkPjL,$!æ}qeJӹkh9n <:-R\lv&ѧt쮹ۯ O~z7vGGa5_dįւ`ᏞNk~u*ûcm}􃟜<{jS9:7?˯_m^j29}8u|Sˊ`_'r l1_Yk<<f D!ֻpJeI}76j6$,>(?stftizyr:9vm K~5g$ϟ>_=ӥ|{;{:h'gϽ={E}w:fw~i^_o28|ޏhZ$2Nsu*Ox(ղ*.peA# S$mN©ƋIRmĴŭBIݪmB D([aƔ4ϓ"+-UGr.Q|JB@QWh;ю!SPa!|OR 0& O6j^>"Tˠ\ˢyhlH5(}u8v}{qY0>LȳL}*>WjKg!堵;'K;^s;~i0.>i4pW׶Mtp\,3MƧ?3h4$&tƓ+ [LFs\ώ~Ge4B춚]`\7W_lnMzF&'OڦW?\o5SE̍Qǟ=xtɺ+ZJl׬%t˩Sg!"YmR7R#d-<ˣcWKrN\n62g!b[5-6VGCj}hR xĔ Zf7;h1BLb5` kE(4fc?{~,5kB Dx#D}Nx kET\A:P_;odPɏ1ļxYuP$E\wMsSVHf 8 $L8*`솥g0 ӷBiiq\dD/T;@_HS4I 4KYo} \CXxxx>AmwנL9ot X[^&ouwz4o{靻`QEl7vs wk5y:5J4"uhd>{O?֗> پ},GOX_v=3it_^Ot4{(կ+F}{}LA^;/6.^ԯ,+4ce\lX5K=:R!Ⓦ3ըdq1D SBT4>Tqeg` l$ ̐^jb0ҩ B:!٨oR#G)R`)ˁYGn,LS>@(O@5o@ j?8ʼn (RBp \4ݣ qg(cG _ȥi6ya!4XQ_H(tPu&Q eNpZTE5>z,Ǘ0NU)MP[4o)Gƿgv@A<"8&0(rK@@@Sbl\挻z I5hFH8dʄܼ-/{zxKxr>v^l\+MuQAIE%M7DZV\{eמ]j(ٯ/ox%ٓy.74)7PY2G_k t|d“Xf/SLhnl.Qڝ}Ƿ'n8y/<^x~1)U-HլF+ﯧ /~Aף}20)fO?Ғ /YZ}߹Ww6:[XLS^ U$,k˽8%bpz!R뜚e0A}\ʤCZD\ 'Iksj,u}35S C6@L7̐-,7˜X~;-!HNuxs$JY>7:f\4}`FHX2k_KFOGCflnűT.Y9@ rQ6-hI9ANbkmI33@"\h, D9(5HGpW,LKPSǚBXZݤЪHPyj(DѪg2cyѮ:!ŃEr:B1,:. X >Xf΂R'XqZR~aBO4q9PBM#3䬵S$U=9hDxk X I^}e9!FuMF[uLrbxţQzq5O|gPMdnm'D^Jkd"΃kF>,O,xh2/7:R< G{ϼZYǥSo'0 U?ɿ={k7|s^?sT|Gw/SϿ_{OߋSğ;w/ܣ3X[ݛVs "RYueEJ !8Gb {MT*Ȩ#RMW6݁-프#Na<XEL3Ȓ {=s"M Y%tsfaq `uDFH9*rՔPB%9Ħ3Ƅ &0tZM;ɟrA3 ɘ42U"qU0vAF9T+2- s![p6*q. Nő 8V3q@Q@B1brGH*cA+A'Pr{>,g8_JR"B[$J)l%fX$$2* z}ÅmPhŏ~^߽jyQ<9eYԲsk7WkzPг'imi\_k_fmիo]J_,x\)1'-7llX;u| Ǣ0D0/$޸W:+`̆`q^iuu^o]8ܾⓠDc~`|\Li-]]oi&ٙ85ݝwa4N'\j qnQ4hԲq[yq97,|i'(<̥6V+]+7 Y:J\DNsbJFpR$ 3xIjRz蘏%C9\)ʋ AmcsK/åʶb 6ĂʄI~Ṛ<%QTeH IKdUC|3dÙ=YVpC4WRd0scư cQڄ2MFBUjS մjԛX7銞46Kp{u4 G&PEq $(CJ,iտVm| dɹʎ9ɥ\Ή*L Yvɔ]}Sz@"!\Դ4jx8 {1?FT-aYǗ};]]k>̓VYʂw6Rk8/Ron \zT ~~+u}S*? aN^__cv?|dzLJusWnE>^w_T كOwwgB4{_Yo`0b$nq'φ* S0L#ye5G\"bְHeGXy8i++8V"U"jlj<jjIqmt"Nyu"H㒰ʌ,%oP")0%FTV[ Ƭ0ӤJШI\Wae8Ѳ KL9 rTU,t;!$EBmᡠSTJ AS- ܦcj*G$1U_# 2ɰ-U Oq T[[H!dhq lzwm\]_߼|tw.liVoM##Ábѡ|\\2P?ӭ/U?9LoXZ:@ċ|6 7 &F0[Tgޣt6Ur˩K[,y0 $"HQ4Gf0_HHFUT4;X5Vԩ2HYi;,*E0"i0/R\UkW?񑎐tbZPE-+Pʙ2cT EEܭ|@|2hK+ .qHH3ܴ8Y*3@2 M$ eA Sњ@&'-EJEpT\d)XfQQ+E<ͱÌeҲYMPff?X 3'3DYv~~5c`r^+JvDf,%!>:nG7-$da7LVk;5̄"h Mڎ ѣM>ono:@zg~Ximݪf{^h9L?B3nmYGa$|<;[(7[j65mn\69ҭʐ6r~߼?><AԣP`>0M*};_^὏OώYVNt@z"`5+E˴eM˂&+bO$YF$v΀cJZyBo@:37"'wI흗|go^ 8ހ-yvéaԲW^/Yښb_}k.qE=܏^ߊ?-}gG0S˖aVlw)"v< XzjհLJz'QdZw:n`xiSѰQ,=dm5Ӓy`/<I{(FSB؊M9 s~rVLfodfȅjMJPk@Bia vXM a:>5ᱟ2יB4"RcMpR%K@ dt%IԤ 0Y&@ x)@y&JSgsfi&QE3Qp aR)7`L@zP,*]yfI?}lk&YREk7\.>jrC<_L / 1Sr8f+/)HM^rch_\#G(eP?.F"h˵+.|Ɏߦ0ŠszAz_~o^Mr7*ްgqvk=+׵$UHu{dhlQk߸ƃlTW g}yum2w/(wN-̛+eAeg+h:QDpQ,)l^`~(޻ Ɉ1#T!Ph b@HT2! 2SJBEY.)#`¨#%ɹL G0P()ACmP(ʶ֤J_Ǡ4Fʎ!,MP+K) TR;H:kp#j 0בn * i\!uPKDnKƑk\`AUUȓmRp t]Rʧ")pEE: )BHCPڋ&hda9-B'Y!xH\%Y2̓3l.gGNRi6'E W =[Dqp"hϳy&t҅_OЫ_|dlƕ6LJ~&FU;?^ݾ6F΅^.]{krlq lZ-ˡb ?stzg`czY(%Z4gG燳fYk,JRǟvmPiGW1mI.#= DY/USspU ]>=?_*u$ 32[2;rg,tŠ=X<M#p jΝPŔ!DjbC, B4B ڌXX RijZeTW !GȏȆ l :?c1C& "YTK]/w$p HWr# aCB',ʓ0$0M++pQ>/b,gڍ4$ xAqڟ~S/òY(hj멁[VXb@y 3!z EɁ1f8:V-l-q<VQ:Q%5Noey4: 4B$QhsZWweѨH'nՉl-xxt,n޻ ޕ/hLbk"Ҩwē' [̗ƥU_:v)SmOΣBT/g^Ů.p&ycgml>$7l5_.M Y\}IZkU32rʁ&f \9T3ӐuқߒxRl\g\ $TBP ջ8[9-C*!RU%eLb$I9+L83  RU8$0N[0\WfZ56| `Exv]`:92"+\R-LL螖:~1e1WUT Չ\ʙDjyIòO)GJꧤlh-T%:Os>Ý?ht1i;<9 / %oިIKvkitt;r;}#D{[o_xx h/L`O5ُQ뛗.e Tmk*}f{9?Юuo^vZ-7߉_xo!Xݏ)~hFK.3$St@K&6ۿP7KW7/]Pzsٔ0ɗĩaBèl `Jk6-DU!oC|LR>":+wͰxTT@D6P%L /"D+(o0KDªqM'qʢT)MCoc5$[bV Eg rhPV`E. Y!= 43xŠs)e.2Eع)e#\A7#Ai52{H,t([Yɍ_MK\8ΥD"<t׋/'l4Q4͵M5 &Α"{lv{-ڊg;7Ӡ]f;ۇb)v֊Z,y8_;wT.n*+#wWmmCA\ Gt}ZGnx_]ܹW7vF=K`h+U,޽6WV 9Lźz ;&k,2SqtDHd{IѮ0Dprfz XXmT Ήhk+5CO>cvv_ TM1j;F# qbǥnuu˲NHTD^PAq2I<5\jj8EȞdNE̓9ǦP l|ahq`BQ*F:SRk+f9w_5 "NNQ% qxB1bHА1!bYdUB"Q2!Z4 'A4Q^"b9-=`󹌖InE3@K$Uhu9yNkp~hvYw;WT~L8ɭgZU+=EQr|5Pp 1˷v^zF@X{w>W:^bժf͂YjnJNzċ<ٹXD-#Ƨ(M:dՕA4-Kt5o]lW~Ozzf5ΆQ$Zo}g1_Y\KE}s}c|MUi֚mR#VZfSnVv J{u,kL嶦n]kW-?LQܮtzy֯͂k ar'@*bW 7@=KZ8 p П!'羆K)*s9P حktPK\qBӪ(O9(V*61U\8vv8Usb4(3)~[b7-I}lfqx'n7Up}dLC.] ~d3e0" j`FA#jQ!n! 4]i _S|( A0TpYI"gXM]p(bZ60bHD x04s, aDM"0Vʄ񩖱LScG@E8]R1)úzQS9*Gz,--”Eٻ¹5[2$Xh[]hKjIҨv'2%X!-\$TlS|4P8+4vevZ%^!rN:x>=.'gP>jܞGP6VfD'kkͦ#|:#Nale9:nm?򎮝??>=z\a0V:! +Օk+7o֬(P+&xq\7;S@ e EZnmU%n}y#877 C#zzp`{omxtxnc=GF.׬`/؄@w 2F-`5( etPPq<_x'`I5YrV`hZF+Yi5.׍f.G$yL7dXTΐsefCᐹW7L›HVK:qhi\O+f|z1YY,F S3c')5'pq6Yʲ'#,~/OԪc> @+H%ʭ=.]W18N#[$TCת2=4P e2;=gRAҜyW@#c @PfbE\H-܄:V5\6 "ND79\@evG""Iy lug'jJf.OeeG B9g^/@Tϣ|:Jʋ2Y'TVm&TsA&7aMvV|Kh2f-[^\׿x? .ܸ{;~(?4ɴP*e|rP"IVf\,|>M>~^s~/.w~b`j+ rsdѥ7^w>Ohg}cX1`7EPWT&<5&YWN^./p9](J(F9$l[  ב)+|I@eVɥ!"(FjP- L獾qcN"!$XyZm$ 8wS."`Lx,Wg*dY(+)g$qtDFh+uөGTXE@j@hu&Fͼ/z}i0'"\eG3_ܙV%h%G U92:O!ӝhO`Nz6v^ B(v+׿]bʽ;w5waʸ`xpt̤.ll|N@-<|<3oWJ l4G? Hi;6!v :BAyXQ,/z}슢`)jGtM,c _*3[:? jRU\Sj\eD`K8ESjTkX2n >ލ$/W̟酠5C&8dbR-s >EM->i W"Y\ /hCnLӋi~rp'vYV_֥-[oW9?A~-o_vRO[;\SL:/]iѽ.b-mmO }1ǹZ}kzR بZtzok/_{K>4{.6Ft$[_ͯެ(zGU]_mJ0Wc~qd8^]m5`P9goΏ_}wli+vBV7o|ӟ|ofzg[Z[v#яWo;Z?|9+op0 T>F&"#YʭL'B#IDiK%dT,0PRAEEaEc̲3-KuBhSkT\So" @= 1al"!LRL̲r8钂apqSjMG f+ q"iG,!%!] 1WCs \P5w@ERࠔ'a(3IsRb(&£gE<D9opo=6V{W|;=?*;+?|ٽw6"JJ횗/eC|:Y쎌GH ګM!bm4ϦOO9W6XIq-uai䫌s9͍Rd`pC(>/gR8?FxU۽vϪ_R9U˺UIB BDvB 59F]W5UX6A18cA>"բ6XBO2jTx!ҜJNx sgI2$ۚfe:xdxیܧ;&z^m[7e 7Bes-%8V#/e4G-S K"R@<X,Xn)Ƃ82Ȩ&(cH PKmv+5_ELj5 uLK0q6%FڂhgeL J+i)'q2ӯ[tiHm*⩇0kMQQ_Գ87*nsѓg$ytos[[/gwG=&mZO>|׮t|`us{{riC[Ezxׯ;wn'cjWZNՎ7;``dw?39on7,<8|< Fe9i(K_[H}'^f*/|Ͼfǟ0)W^}Ng鏶Yb/~?5Ҹ4V2i|HLxN,|+, BMXtlBe`݃_' GfHS %) >6KOR ^IS\ `kQk:*&g 0J5aRJJHdGJ˅ rƕ )TYIKnéGD(TOiB&0\A5!H#(*.?RbEXA$j^֨.@r8_.&⊙_it08Qah3񓃋Ϯ]@͛Oۻ^srhzyIϸK/|5?8X\";^|³g޹gkFU77j+6;yrx*ng-zpr08pklϗ,f(uQ2=_hm^po{Dd7$i/ݾ^POj4e6dLِVt(DEx^Fj݉vK7='IrdیA>|Yq%b ?Ѭ(NķՀ{lD[giB2bG3YaI㴘Up\($]eW]:Tpw2u5AXK4'$+WLS g)"LhckR]Bə)m-4< "c5MC^.8v;"uGQtP3HMAy$3Qd+%NRP`QfYP $j'EdDy4I: 婐QRH((5<"HGeC?7z9=G1}ZXۨ ?'d7|<% %YUDg5z( S\棣">Ryn߿Y?=jZkUɃ4Xm_f(=͕ }o<}O&t_ywe\Ucu;Lۛ ??ZfGFg_<̔;{U^o&fQE^6Pn}gWъ=~P87Fx|kٓOvu>^_o_?sٹi /jP_8G3%WqBAvM- 5m3eC0Bwq8ڕnrbixL Vz# X~C Z \wPS) Yie P2K3!YBLJΑ S-8+ڠ; U8 KVAEL2$Rb%" LT5RT6&YkcV$At^١ D ;pf@4Yd  B8Ao#ci`HyIVHJ|y5yI;xo$Z`$Fq 2/sf1[Ͷ~'g)>zv˯*.j^gƥ%ETvыlV6o] `_f+_7^bW]wvX7$[<|2ΥY4N*˗ -jn8V*n惥\Xps͆BHĀ9[5&nnŴ8(z^5?yyg{Nj(qj{KaF$($EA<ݵ$gaV꾨hTNF#-Xba4Mqo-(v26,t91IQ28-LSŊЙ0RxkaPXs[@M,aEYOQsZEᓬ*$pt*x)\BM ܠxAj^$Y§!P$)$<XUO~<],4ʋi O5G777 8bйR6>$f;׿5riӃÁs~Jygcȳ'(}MG9qŷ.r땫[:z,{?vo[]!``2;}r6vD3r%ypT~guѮUt TL;~g~j{xq^[777+C q&kNB̫k-bekuFYs}öX8I=ͭP>3V~<'NЇ"E8ϑY18hN~>9{f=?/-џ6jݶjkiwV+hpjTʮ S u\tjW_}mgQT4.a BclMwt/nV|>CR&LJlYPlh^YJۊT+ S74z]\Ck2ƨ0ˡ7εk$RĶ4p D1L"U> Xص*L'.Ȝ)I`7ZY4o+FI,jVm/IHTL}4%j ʛJHrmYqDK%fj9F5GXrˎ-3&d"LP+L,KV”#P8$>ۘi3#ra2&UMVQpA Dm"QIRɭbʞv,4/5ʦ* C<=YCKȏj:JͨoRl|Fe4x(޽wON;Qnl2%YlX%"dfq̏HWZ9>{+2݃ޭ۸ޭىDzd[k}N5yz<^yk/\8Jr|e7&aۗvǒ'?^tstߍgկ}?yxۿqSe;tiO?ȏ~Sv1SM]&a(N"'7P>Rs%@S50! &U DmɡS#e7CU2I5`#^$P %y j p'!/Pxܕx٠M^e4GRDKE/JJrf+-F(Kng]u7qp AltNHYT*ɒeW#v[%EKW$lf74889WN3x.~A{5xg969d"h))tn8Eڃ,ʹTΪfIB | S$*@Z/PC3` J`Xz(!5 |HP8L$BpAAOD5m \b,<,&/~}$B ims 4R3ޝ1, ORӀ?ծ==/vi٨/UXu ͸wc;ɋhLyןNqV[lcvضJO4w:;n7ɘ-`x|LI^7^ [XznEfHjdd'BՆkAS4\}Kr5ˆw<῜?xݎl=}}z_oe0Kez:M=Y10*}g\<6柺+꣏za s22L j0OiaF8VBT6omx,J.5( 0SajQ!>Kļ ԍb>'7sZQzM#\4UDV%%zӸL64+ѱV,tHAŒ1xEDUVf3r32^$Ts@ɒY."˾D z ~H "Dd!W&AfDQ710ȱqcVHLXZl yYhZU#쇒޹;W_ki@{5z'Gwv>R{7wHuuV65vͫWMOb9wT&ZxLn&`*OXNu'Nn]tg7'{#9E2isýݽVHj9p&O\H ܾu?ݾ)p-Ad:an6ai>^Ptt2Y(@</PTh6d@8KSpxς03*yDrjj 8Oݖ%8PWmM&dY5)hi@Aw"gI.tQ{вynl.)6Ch2VvZV\D8Z(8w> mo-w߹#K5rCSJSq]._p(<յ<ֆ4lOQwKUtG?]ewitˆ.Y;'ct))fz㽟߼׹p~~<ޞj.?~|ؙ3ҩPUD۵[dxw*{76kвQgwOWW_Olap{J$ZVq0岏0+X-\ƳN~_}"Z,TDbql6aS儥@*Nd2W*EUT Q+@˸%ET (ʠot%+U<º*(;Sa!lH)R`]"vwp8Gr{aTf1!0 Ԭ8 edqP\–@Cx/)9S

؂uRPvp)-(l qT\ʩZ*iTB4-:DI! DI.235⇣dN$thoS;V,]UwYHn7R?ϙ8|rvr5g^4{Ǖ'ac_oԗd|y_6WjMOZ[[^'o|XUaEr0KW6FݚYo[Ƀg9æc![j_-,uҎDx0O]<כ*jUX&4[* q<fjG/v ]~'i>H&3\M&g#"ƐLh t+̄'I29FU;||qN)4QJN}\ⅼ -`6GvL`p0յ)M,X @#YEEЁS^uHIE䖬@ L\s~&J*`(`LDT3!3`3q-3dY!`"U I *:D8$i 2U\+oE9ŠDI;RZ'4E PD/U.f2[Jċ}[GG!)4r5aq.b8FK,(`(ƪYUKrmi65;KY|?[lYL̻2_ZG;).}Vo͸Gj:z7 (RG;o[ k螪j-L) }׻Os]iIft< FBirreIβ< px6fv|g{nw^ysW/ a?ѿ=o}A[;.oM?zT@syQa&̫ao1~)m pj*,9ʗl;`UI濌>-r9m 8CU*J&ka D廤1b.)NiEKI b2tר?mUA 06<N͈D>em(68-%dPŜ&,Ay,ZBA1/r"A;a`(9+ 8,..,Kx -3"Y9%' ^o_. Jc$~<{E(I M #PV0ZLiJu.X #)jX:#i4z7=yDK"{sngoߍsTϲ{۵չMoh㳠XWզMʪ}/StwXsP [=-j7?|/pPHtxY蝛/o]zp FW*%qpj8/:pm1CE^ C ~7uTUNv<ǻG)o4>Jí Fi}gIHR^Th6&_eZ: IY](FgAj[jƼJfqQ$S] 0Ex(nIO'.4l%m:Uafjj",BVh3j% Ej43(Vıݲ{H-*{F& J?ETT:p1zVVL$ROŅ0Yٗ穦 KL%2B .8/NDH4&+ޘBEL;#c\|))u%K)Pg*+#) Ǿ^˖E`Pi/~Q$QۅZJ*;7ꮝFnVEeәL4H-ϯ4vVR\uڵFEyVŎ )9wdb?gHW6U7zdK_jh:Tj|xm4: w9KϽ|nslDFM3(ys Ȃo_X_g>Zݥt*hQiFG\1tPΒ<=|_k_xnN?z?9}`ֆ( GXREaV-tU | ε&dE7>CZ՜v';&$ lK=g3/[+Pzφ^jXAAX6/P4m˥@GktlU얜ۃCu6IVwΠ[3:̩ċˍ"-7A]6(;xxxkx'l7z޴lw)l^hVё7t%m68<}\?՛Oob(=vWӥͺBd>``;Cr'OKWW=S'3~ptYT-l2a횭$6{ J;ޣ|>yك}fԷ`NNn1J|'>= Y>ܽԓ?߲ɡj,9a96E2dУܲ? >nc(\)_G#RrQU2J Hf@h!n,e@nP\/-sEE* ^*R8?V'W{Yh i٤Ze}JlXp >éL"ⷔ!Wˎ@2B +/Br/4*4=B$ȕ-,Pժ&< I/eWg3Ĉ핟bhN}qxYP RdԂX-$h]e?SL '~BEi8.g"+jin4:L uye ^w{uu;7-?.[p |dw;T*w>ߜl+ Gfd+'r{rv7{W4KE~rk'}iNFvX.,ObaY-%9${NOv?ZM֬FwB"Ī֪B1dR`'Z`vBa$%pFs`/)k}i^tԯP&|no(o p.^|7.#Z8Thldr~bI}l+5k-ٷ;}#ugww>_˚?;Z~o-'_oRT;~ PiUҵo HBSPpQMcNU03AQLM<)g7D$<(_ȗ|4~b8 Ꙉ0zp+ !#%D/y"L  h9Xr & *eNtq\aE݇@<&<(K<+@ ‹ .3(CZ[uSir,M }˄*ę0PVKe8_4FIKur6U$A",e/"v* gלv׶3`J} ٙQgc~/͍ 4k A٬oinݴO~Vuת0%tlV/q)]{jӘ_ Fkf|xTlZ׋{aeɬu~f^8bZ72ٝcq bKh-+ࣛPZ{fi84,L&,O*iOڝj|ٻgC%[.Hb0Im4 !@7FӤOlԯvҞCw] H+;yN9(ז1qh\e=ш"|fێΪCUSjrebMEfIdJ EDS&"+SPJP@n s3*rwdTUUet93)(۲@?K4Wʄᶁ wr9$LED<-̓DeJ)ь dGU4h$t iXEb˹Wlg*ɹRt4Sh&aQ".hX/^hǷߘI3pZdz`xdUb5lmR]ggUZU{Mю O!I{t4ZD7).[ZeNN` yBtby $ZR$)"O6uS6XDm;pVZٽ?5 eX"F\ƍsϰ,RRԕ"@-@mpsxf" E2Ixȕq@MSaĐM*똌rSSF̐0[+Xn&Y (E 0K &P&I8%a^(1bE!I.lHSLK1 (Q@EJዤ2`9rz%yԮP9S3Ufȉ_n\` E6优#?hVe)d*aꌂPrJ[BD\dFgݬ R{pz,fWIʽ hᡟ57?yrZqoXxY6*R۱Qr:k vfj`wW;jāOMwY\#T[BeV*ּ:}QNrzo.;_s [u2|G'K^s`wHmK>}xpK7zAEkfz4Ls\=ôt"gnέ5(#iި6?0ѝ߼صO_{u//] >ygx[zF?~7fT ^N2gΊ8 նsk;d[w"Kl fJO yrgGO) *Y`l90Se {Q?N啈)~.o7{+wZ]WweBg܌o`Ҙ.^XnH~v҅ft8p]iomv;B۩U_iG?R{څt<1 lk~?au7F>ܪ|hkɽ[؝oIDыOn͢/7~÷ފ{fsɄh8h-l:OQedDuY,G~:XNsz<0Rېzih3H3|wCI֪IRrA3תd^֕J3G!R2E `d/Cӄ3sTT#0UJ]oy3H=㢪H(dD FEyBp9V&r55bQv,UBtJB%#ScBĄn.\ ura"rB5rˠP%7¶fJ`B5tHfIA"SHa]PPX Rjc 8sak3KҠE6QŤaQ+\( ֖a\3&++&pVJEA40j+$n!OԑJ,SQ{Aa')V sg6b.t!g{Ӭ+Ї;4N kXIR捶$,,XP&!_Zem|C_4pI ?J]ae<́{(G oťMܿcxn廻ݻb(&?9UE5jF|p5kv<6;Qxg;zY'?骝{w?jp{7ywn6y2![:^t)wK/AyMʚ.^[4}@^f`mEgwߕQ /WɎ@W[X6 e6cA{mGɃ's'd VkPkD);TtinA KEm&7^+Z申aPU̦B _SH5ʭWN粕gp‚  3氇\(BGeÉZWE?GunP0"YZf;~r;BnO'>>fE{;@I0*<ϩ[U={L'浫k+v+sjnݜ[ޒq-\Ȧ\鵫ŞʱdyNc [ 4MݪEaty9p֭ǹm薝nՆph;oFΥyx~%X n}^{?l-^Xza++ZS[:w ;aLy"#IR +ǎDF,_!s W= rCP4QE%<+!^9Yc"Uڮť2zN` L OzBV KDaaA(.5lA<+UK%i+2G3~UK2LZO%MW~~/tF}o?a.yKOqe]dD9ٝ^tR Dqf4%P-B ?M5#ʝ!ژϻ_8̧,ͥ98g(,[ߐ' !% R\VEUIy .?~, ]O1mV(5 897rveSX/qՠ1JB2E@k\u1Q@ꐓ̨U.UL@.aܪQ K:VGT<"9V "%&"CepiYNiESkSc~M d Ѭσ,/vgݼc/V:=u\f*57jЮT `Ne}C JKR50ePd=Vל;M=Z[=oqFՔs닋.Hҙ4ɓԺ}]=YwGID=OpetTzlO%ؼbt*2i|ǘ%[)6rtovFbKS T\&4ЄDAqݪ7,'K!TTa1KI4K= "\ۭ:,k;iԩk ճ+cHP(URYBNmR$Ey~ +ퟘ* yI7(6fq$(zUSq\,"iаL(+i9:Z/*%j(UA4CW8P#ҡ2Aji(ď]ªy!0a(0IQ22q﵉ gr05aRА-]˄*;=ެua"Ǻ)z+PrVC`ى& B/OX(!-OupjI0 PJNgPz2U7gB㉨[reYG8_oѽ?9i|OM{+ˎ|; )`&`ɑѝֿL׿{Ը֕j}/~a?t^܈~ٽ/nwf]stX]H39cZdv*}Ch:BRx u[>>YvN|ҽ#e2ۻj6'?{79&xO vOt~nYK!ybơ @6>9Zzx~m՗[fDu{ C˝Z嶻$2m٪gޤO1\0QT%a1m8NwwBem^zI?:Y[_k$UPa:5>yM`{X]xng'3 r}kc`tP4?KK2_Ӎf0C!΃޲ /jHgiWVɢ /Thn25-E">PZNHQQ71^Uk8cљw`t4 OtJL4 L@.GUGrR<S5YBm,RIPXR6 :^a43u$ ja,*$"+>|Qp  ͕)0yQa!AT΃!< WP6EI#F(0ㆋҬ.\lmIFPZEkIO5Ib2(M˃9Ȁτ` 5JӉWoi@6$qfgR>zUb)M#RU5<PaHi%Re%8MfX,9>gKKnߏmZ|`~9q9mrzx0osls.׎9+.svNҩ"l2<Տ%`km=Z564 )\ƮT򳯼jgSϟDm5 cTsEkp4 5f' 饫OeYBep} G~:^om- )vmv/}& y -a8pg~$'Hx6eq ovfl0TCrn@*ddHJU?RTQ,#)>ikRsYJw&yj GZ<^"ʒ:4c}> ۷٧_[YMmY{lawGbYtE;~)W7ѶeMj(|~ˋcy 'TtjqږJrgz=J,˾'udva{1vԩNg'R*}'65kk;B8WU3u6 e1;Zvq%Y? 0|.WBK<,^2,D9#yY"ʀ'{յ떭&Sxq@K5`#k3N-CEHaA1 ĪCT,Y*ieعLybdi<⪩73$P"w$:'00eDa"yD uO:,JH^ӐT,Ԅ—1ǎYNVhB %sнcMDa?.e SUyqz9)8% WAU,V 9pUtm=O@2g a)bRŒ"e"<? QZDǹ"TQ!T@d lc`eRy,a a:b ӈ4ZJ%U0A9sG N 8dCV4kmDz00[`Ӕ^G!pT-ʘoWwֵO|ocֆ-jBxq\okc ^~1NT<ƫm9Η<+}\K7%ULXfN^\lzk5/F\GC/}罻im |{+ E͆NM]^ת*2e'~Zٸ1/߮gXjQw6;jm+:'gݭ~ϞW+J_$X?.oLB9f<ӰMV^)7zTDKTSmxb?|`i_ L9&~_4JW\CjKoqx ؠ/2`'/8<ǜ"`0N *b*T*-rvT2b`y0stpxV6G8q;-ru=wNzj=|ltJEjg>]`YO ƣJs:xtTmUZZ"?Q@Yݗjeq A!o8CR^2FiuU*KyE\"_8{KKo,Iwo\~cnMo*\_Zְ3懖GK;ۄ$Q.TZ6mgFgsA$P v*q0$C!>vGθβƝ8W`N"qvHiqP_7htL\Ͷ$*I^dKs(Ohp 8J~ r{YY2" LICT+YXhkV)yj TFΣ 'ʬ=I4HPt^qb@+Ӥr.,I^\," 6Y 7@h(E K@b6cBV2A;!SF8\NSQ>TCն?ߚ{$ G"̷rBSCH̱0 @bI9]>yDbK,@1 |(a?o.FV,jKD,H9h\ !!`NI& LX& 1"j+'"DKrCI@U/*K*e̬7'NQeuQD7 ƘՊ?)\%mRrF؊ gْ]ވÃӋ,gpzzv0H++筝lKbz>շV6*d88x\+;7cԥlҏr>gp}C*A/twq{ӟGMA8j{~n5"| / TgS'e+YrRe)JB!VK?G}jH axt;D57Ք.,~VN>Wp?̮dY%׮s/(,'$?).HGl^s.e\2ΟtբriP$@~ORГ.ϝSk1G! qI / PptLɽ"4B'8·Pr6.?#1J`Nh&R 3afy:,\aŭKAq1 ï&t@xh&5KXD$T($HޙrأQҺy'=wb©T{Zifiٵ{_{.i|xc"}~c|*gnހEI0 $Ki,aCmi+!h c; 3s&i@?{xC (K_?}?>͔uON핦3NseZ[ k-s`6>:8\ɽĊ` "(Ĭʚ0"+r.'W*|`\djBL\(Op0VЇ#j6,Y5@yJLDc6t-SsrI9MQ[ީ3^mYTqI=~CmqmGz@_oH=Z#)+Ʃ[*[҆>=<*i6֭Te*ƳKozgj(KtkRꇹ]Vcgiu>+־7o][]^l$_ 1FŶ'Pk*qrJ/mr|'77{4_k֚KZB)-h,_ C{#޻7v*dⷴF]6_yQ/SvwER _/'>ASc%n8298/]l\!qrk,8 u({h; Pk ),b[d8:66kEx BofYl~ ~U,2(2ӊ'tx10|$"#E^iT3sT*aTA1HMutg9OQ-I$fEɰ.bbQ T؞[%Uힸl|\HRc]ߐ<FG_rŸ_}@:O~y/"^Y5T}ZB7Q;lW;Zzx|}s7w^?Cvm'ǤYmQK5Y4zҿbz]Ӷ_3%8cЙU@fuFY\VSi|G/>qNS 4YK~GfI?}{p䁠dEK^; dֵOϾ?5= Og&ȿQPLsOkWwh=$L}%S0dʣq%S&s1 ODqq5jwhaM(GRjN|bA.Gp) M{1P7>~ʝr(Xpr`e"DJ'oo_L ~Z%Z@$T_ QyέĴ#-\(CS*,wndŋ'xIEXKm;g?l3cF2ZiWj(I/j՛`s) (.t!N4)nʠ`J wp ]kHӏLzyœsg& =y6\aTҕ}hw{#.th+S8 Z wְnwZV_r>zv][WǟaZ]Kwu8PbSwЬq89a).p{z{MӪB&0#iO Az'^N̤2,JsjI fɘk~0I"TqalS!3DU (+ ˊԒO@J dd -X.kEF 4 `C~fjUN E*pX>pg! d,UiT@,f(v&p21@!C8#Š+]3V6f@4}בl",Lj]_EAfPD$P$dFU!O22'|a Ucy 'g2Wp6 b2Kw*KL)8B, 8 MLŀ=r5'΁ 罗^`LA89?+xNgoKCNjY˥JC5۵MAE fOYDls6Zo%j\{2.s+V׷^9?,?S gTv/joqjhpZm &ӻV ;=oH h7[do|v1T}wt9?'3Z]&G/owpljz{+ĕvsyXLRYwsY Qv(Y D]=-QQ2f~z[ec3/8W۷{{ykK=|5۰{LX C_Npݏލq5'?C3]U>(/U*qJZ/y8!6$RCAJBPSI"B c5M|"iqt"[3ULg|` r*ښDE.AG*2$ /I^`ϰ/mIL9(qBF14" 8I:'"Ƀm]U$| }"(v H8R^kUT`2 %PtRQBL9sŒON&WsL⵲=e#'O4k>6KL;^‰V yCP<QDH?y(d@2,; 5a#ȝ 0 *rg ?]){xyr}-{ȄFRZs\woY0ѝmrς'jR,CJc{/$} Y"VK|ЍVF:_ /*j0;}ɽ[KJC_>[,čQΛ^26#p8qTnb+7Lbr0fR^&Aܹ%'g9ڽ&W߶Po.-`Ӫכɋo.v,UxH!䘳mtr?|0[+CEv{;.aN)/ocz] Vv.SB˃ƙ5Clo6y4: ُf4ٰ7$ |pqba[<O$/J;0Ly`Ie`ws&fR&cj42?{ƻ|w*_ۂa{^ 3j̹9.eVV\u񫷖m{ ꭬+UWm>a민(WW1m+ g3usfkuc^>{?oƛ5UꏢΈ=;䲩+9<w^ۓch(W/?,|{u %}PƇX"3G,gިFE(IZe:Ѵ2=\g}8|Fj 0r3C~lOݕ{?ߟy/+=xtll4 hU۟Gr4R+k_=7bmlGǖi 3ӏ/R YXfgXI)'=wKZ7Kq:2c6; 8-q0ګY} IZ61 ! Т}]9q;/b0ҢM^;Zm#)JE*H*/f6!S0XT %Cjl]yl uȳYiTP$Eyr('xGx bSRq E"7+dr"oUӞi(9RUBraWqa^D BS[X "ӓxՑAiŖI 9Ͳ+-,?FV͚Y%Ue*,E=vLr3xCYRSK/8/Dnb_-[3t^ee8;k6 fLgݾ~zS>?xl+ٯtvzE?t*ayjt뚖dx|`Q5$jnM+%f>Xhe{}U]ã^Zߩ(I(ZNWipM.wQF!+A81C\jhFՠĖ`ǑnT‡Q. FГ8'/.ye{BKLg5wV޸G'HgRҀ`EzM9t]u'^4sm/REpy!6e2ȁ\o7`^Oãd_QźQIHZ1 FǮҮN.*,SzZC%Ο%So5tcM`Ŋnd|xRkQJ}>U qqII`Q7+I$/9PK~ucZI7I8.gbxsZl8Gxf &_p98sEo&^6J-Nj,Rv~ҕJ4[K`|03_Z,r)0bvY7!? ppŧ_\fZf9> {{2KbǮmN=ɣp}2)6>wvٸԒ,T{eW4Un=סDQAq U˲(s "L,BQCl\ r1TVk$ V.PU嵖EG/6(O_djK]'`]/?ro/wZ7ޣg>%wdg;4'śD<h(7TX hv[~0F\IJK~mR]nQQUஎN_pˤWj+ⲾQw<7+z.I,uS&RpL5 v(=td 4(xGU-Uױ<')Jg!M#]_YXX?0zӛ$Y >R!MR0UH8'c5 )h燳’c1A> H񧚖x5VxJG8Xq!Y# BPJaϦHA"$(hQQyn>U52r%)Ȩl8k-2ϒHfD<+lԴ`~Ԁ₥<1TVHafvf a,ӄ|2QD/",TT lTDنZزTffe3G4,H s)#D8 d֢hOxT E*PiLF\q}zuhR nKwk Urwݡم.6wnJҭw ffϒ/4KH&WS˯Ƣ CAR*կ~zyh|=WDΐ«,!Fv]۹Gϙ*i{#?iJEdRq8 N+_8Mːd\,~ Y.zMm,rRKԩxMF'C+r;׀…Y 4R8*/ :-ڱm3` W㢲 珹p:%HXk_Po+|(!FAGHZ&ƪ`Y:w?gQou:nSE\ܽ-1yAdW.\ a/˗Oީ.Μpq1-YP[ÑowvJzo0I2#U3j4YkUj47%\?:fF*[:,yB80rC22Q2#<<]"9T0wA (~fCb#*FbzJѾZ?sF**TH1oL¢k8U<+(4=a5H)Oĕ%{*X%C3Gs0"P &1[X ]Y%7 !KPH W$x.IKv~ O`jƉ,3-0qSUAl'"OUfq$yȫiꡌ8 1 U/$2.g-2Ө0bU`A)<8yO\%^DG:eC ʁA"D1N}ͰM3@IPY%ͽ+}V-+atg)ʭ!I3@ TH4e撐EQG Db0z!8AYE'TakQ@JLrA1Zg9z'I33iIj1U$y%-UA-I^P#e iFr)fb؈a->v`&%aPN^XMYRbiA A1-|l(jג Uij"2UX>3wVˑӫ\V ^!& ,A!e,AA kKZ`]E8OQ""bH02%س [V~7fI|iV[k<̽-ŕ?ϞnF;?}En8.NqZ8,g쾣FоG=.#g1{}[?]LB?m"(о[7ᒯɽ$#. I–rQqU'ЭY3-வQdp! BPƭV";vp)fIJMgY藊Mu0;/eN w~7 <ٝGS|`sc{)5>][KRE//~#mݖOzECҪ[=wtR|ًp*;|]6߇&qEs[T:ٹS-MY =~vgp]S 'C>Yd+)rsF,)En68s 0(w??:J8ӄpz\ybI'\Rƥ, bn3<˄Ve8t ~jzG,_r ʤNX(2|j@m.bKVH\R4K4CVQ)eJJ"豢z Zs:K[5jfPgت8YVyZzQ,C:/X̱e,˕zP$ITPLV̦1&/|Vgq$KVՔ4^2?t'H' QKRcQ(/uiFSʧ^4pR݄xFP|gK4M"AIRbj[k2|8s%-XHI"tT*r3Ÿ]P!♇ޫyaH۪Zn%KGţ{J A[)z}2]P4<烼s=2 ݏ˴tE"qb^.^oY.O>O^Z||?x+u֯q?;5b}o]~vSÊ fnh vtT.]$?OWvE)33\^R!DaB:\"q@C_.K@`qeC&24ytv(Y+w88E+_-3X\Mg}]^ B#ʃƵ{M0^V:{9}s\{Kcewx{@ѕf^8Ѫ*6yTW ubauC_国+΍^L64!$}fgӬo$_wEâiauگ-᚞/ h <Pn¡aU4?) F=I,u]i&$5V)b*WC4kUzBV2 454DNɓbtê2'hdw9V Y,PX5<њމp::9ZUhtE]2[Ok_j-ſݫ[Ʃ}qVpppXUž*ӽX<{B{%8{x|kõIq>8kIԷ9/o5Y.Un6Zi Z}]xEALPZNi0g}tWMlQ< 0d͘eD)94IN$s2b\x3&)cf_adKwh?e~)6XC?*\XDc$1FJS[ EbI0"4ŜgV*zrKFHAR8:Q0m-PG牚yYVY%%, p^ t bTe1HХ穑JAuVjbc# !IC3*.\JYURZRfAQ>aEa˹HߋP Ql$Ϊc$XTKDf}:LbeZIi*3iVF?;>N|(*JejTO}&#>%C.SFZK"G 5l) N@($6O?<)RE*\j*8!-FZԩ*L]]n`뚱%dRo:WЈgj-o_u<&q=ꅗg 9,`+슥 ä֕hTku!c׶BIm۱ iRY)jwUQpSoj6Բ8&30,m_)^ƆِIsں  Rh햚L.qdc+[%HH)El2(tz;``Η(T:)Faq +{Uٝ_XWƮϖIETְsR=zsF,oe ?i_8cfӓ r)WuCg/<V:X.'[#)qYX_gJė3ˏ8Ĉ^l_i\rzzgxq6;~ϟNy쳊N$ e]PWۊlUeͺ}vmGT%˃)/mٗ!w*woޒ=;;~y}\hpfuv1Yg|.+EtԥF@bAǚ\M =%Rb 3ȱt^{4~_9g% pa4Y,x<N"G7GNt.V[_m![[3ஂ27LϲdxZDRn 0ŘKL )y1vfJsk7$ |! %/UD( qb9APZr&E]9u &rrԲ6Iį K Q@Zu !p"J1+UYaipZg]FHpͿ ɖSyq`r 4 ~untP%a4%R7 e20 W'AqruZ MLr,p<-9◜)TCךڪ IKY2.)!z;Ŕb9"Zxq4Zu) @]Z=jFEz1t~7[e갶nIZΥV &y~ں93"Ɔ. +ml9] { HвryM7tk{7wyLЋ:׻]Kǟ&.^lvl}~zqO" ٩0pV >$z6[t-a΂Mi Qkpҗ@XZEC{ g>̖y0f'IBZl;\۬*/X [bcZ4:w7^lpziZHG]=}/M#&wX!X,B]-PNAܳ\pu.l^"#|Xm : oKKetΪ0BA3e0#H؀UD C&Xn*AbyA5N: do 1Ss,S"$3fbDh`|ˤQ ,OW\gP8e.Yf x:3&KJYȎ؉ҫ֡am Q)NNتTh|HVTC,7Cd4xK+XPVA7rC }dzcYũR*'PLj5PU /X+sia*†)%Yl|҇߼ٻ?zStΘfz.ǓeH:[w>}W Е>ޭgL1~>}SjZ2_͗g'3kWg#^;W/mY'& 1`0Y qX-أ?Okuh\ݹ]N>}r9r^\wًG㓈S-Ȩx>^ $e (TfIluhV.S3P8+H^gxe8_WpٴN(y>aNEB:Bt~=ۺ?ԴMl~1ˀZZLp*? 2/hibKTC d)6ZIq> x[@ ʜMwqhk6;i?AJ M$ 6TɳqkD* knN})*TTY:/ eyUۺa,lV ˆ6'8GYH̷j%Tܑ+BqzYl_6/1+Zެ[ec!S8!ݗ\[ucc:a00=<}sc-8MGFlXؽV5ntY'fux bcgpWf4ubo9ϊiwgA)U>77z̛_?:;͝Y %n떜ZF`˪!Gyo8OwIdbv`n$*dwGc!;Yx>^%WnnUE^l\Qcɍ4NV$EPMKPzbu[Iuj kPV- Y*͈P xs(Fsidh 7/^==~r_ϧoq":=],W.23L,jI2JZFȫ~HB Cx5F%xeBAI$lŜY!3:7bu0ŖHRVÒɠ 424sKܜ %ZQzTT6K/qYÁdl.&Y]u9E5@ 29ð@A0d. _*gAPi5u+NL5GjH*Noɚ՚m˶.a6\LT .!pP J(\3,K&-cRJiM3FFKiTBGWce *I IBN\| nXoZm0rTATnRI?|[j&hI'F{wo]w]_Ev:|gQy\HY_\F]/uZ6 .rF ^ x7cAmy$, B-RmE^E  -0S @ET$Pb:*1E!Pu"lY%3bT>W Jq!vOdeӛ ׊)ԨV<5'mJӗ~e^Ͽ|ӎ͌a;ç0;+P} _k\+CwZ?wrul2vcAvH$[04 ?=xK"AIfׯvb+r4`S%Z"ov(Ep.IFh0 ٢gxN^9njj"ȟ~Nrd^vwH~r4,~Jmr[fz̝_)Wi-8`|͟ mjՂWzˆуҬPrѽAddf׿wP:fo]eE!vMTxV$:GP͗Sٮ@hei8'׼ARYSZ2;N.':GbM]Dղ$g.f\IFM']{ſS^|:{kWXY0%8?ҩi}0хd5=NRÐ1+5"v H@EF6 8EzIQb3:w*Vj:GvW7+Ȝ0Nߝݺz%sɝ'_߽޳wo|~/ޏwoFZƕ okii!9?^6zveO/9Tޭ#0Hl%Z5IlJ0J, cs6w^۶XLѳ"C9u̺"adzjH+bKJl:j1&fEJ.C$X*`H?_( hlpgpDte0 (C`L'1QZn~#ELrT[h GXX6Qdp9-^`D`>eƪyd:Q,EZ x_̀2g8_塏T&C֖Լ8.F^&Fɐ"$AݺY&U,w13i)1y}$fmCPiHw?EnCM= 勉'ĩroV^>O&!K%ܿxY[WQE.`6$N^d\YB/gj`x*1u %[Sb%Y`2Art2.St/_^`#[q#_0ќx-oVB :t?-PXrIBf3$\yp}E)KD8>d}$/4&$\E`y)d"w$RWv#(:%\deB! TY%ȥ^rә&FVJPvv' bR˹p_pFǸֺ3>~tx'|s{W}zr=~WO?|Dyxq>?^Df"8?m4Ne X>鬹h[ Z XF9mQ`j;\Z̆귾ngǟD{?$h) o5}qQymL"_a kWyq7W yV+Q,!P 9;|JE*3yTpӬJ[hvǶhX>MR5_6ݍ+9HgbdDJnPDt%ʊ(аE"w "UP7X$ӘmSdBQ(`:[zm+ NW@͝[(<'$_MU d j(sHsJͼl&CclsΟA2M@JP{"sz VE.$A^$IlݏCS/ΖNʻVٽeFWOЁl՚b7 ;9RVݺjTiy&9?^>?kh)ݷ0JpqZ|'o_il8<e>Mҝ}?y7Wzhh@Hq^lhL:<[K6o Ea;UZwxJ"ĬNh7:8t67nYEI&]X;l bI0gl' #Rjaf$yPP2VC!ԭ6NDU7 eЫ:8$aEhB9Ѻh5KN!R)q 53P8BKō} x8yz!#^*"b0.™H|Yv^d,&J< $N+HeFàKNbQW8.U[xlD,pԌ5̘x:ŮjR 尲A @Jf@4IDi% 9A`@$d)כaq4q+l"Y5Q,)iit" T7*~\J a[Uaq52z$ jYa"Nůσb4%km%yf3*CM/y wm#NFr;vrdݛE|5rs%-gwF7.༙./]805EJ}d ?lkH[_vY*)Kz9fï\0BLǟE]&;Vu3]5+wV,aϛ짥ET޺9Ze;q"6eb R y^φޮ8@ cA2\&p-z#HeD_RXb xⓜ P 2CЫ+ iYAqku-4s ^CŔBtN)X󘩘j 4sUļB j1P\Lݴ.BE$.ת]mƴ;EMB&uq5 A(1dG.e<աL)0 d23_xDX9+ `l\`ydx$wD|kcۿ"aV]@ n7G$ @,/ Ϛ71WLi}[{>y@VAӋc~]$Jo(^1O<׶t$~U7^ɭWlp@Mjn{IaelT;[V~},H3vU)޿=?Kx KhCq[0RCǡ7啱ssm(50 6"CF=^OҜd@0KpseMP`RVѪghR ]'E )o7WqI$OH 1F/"ebK|7W"7բ5\g%lZkVZYK2Xe*G XW'瞯PkquTvX 7GJj-e6wr3͛;T.߽3}2]_@c>tY:}oDSktk b~Vv,w>hŦY{F}?zLԍ XۏiX_!$d ϟnF70Ʈu(> Zb2Nfٚ]sQFEzrJ]b[@=[ydB8) mIβ %5[9ޥ_Z5N۴5df0&\ x&ESj,6ʲ(5!U/-u:¬Tj4r0jK\\K8d/xVj' #%妮TIրsGm\VW#d{_DIchiR|+LcQ4WN N_V,Ÿ./e1T6L̩d.M6 dJ(m`G5E:=?8Z-/V%c*%Jnfoe6z/3qq)ơhvڛɲPvG4hZgxj[0ma^Es}2[2?F7?9| %O k:sѮ 3XguVϦ~_ ~??n[^'6Z]eYHMi:>ܹqӦ\@^x!vG/~O;^ 3#,Ӆrxg/,@p'ނэ֍;o~4 j>(je]ͯOJ$ רՈu];e$*a<e*XM7DN%C 4YP UIQPP9GRk#.+*%(Tq0r"9 T 0H|,S-Аj߭]V1O23t^>9 <eF#AjVKIe ?ú)Z)7Ң4U2-lJ*Pg#YV @S%Pt*XQUg0fmA dbG(.,(GBRyWȫE,]Zc;.S)'Ɛ[8,!i@i Q2X!P o}2y9r.vpJQӈpH8NS)-Z<j(~9m・ۻy5~=|~q~4D%>7wjf?[|'ػ,3Q+?^q`G?NϽYJ&TʆIWu4=VToG?ٷ`=|X'Bu~:iyZ.VUᧈVtz̟30FɈe'ݍ~.ѓRfZL"L+VE7al^ֺm>Q "6lbZeӬlVW 0ڷ8Vl+2s{8{((@fh9noRfal|<?e^weu P*ƫq^k*-_up8Gဃ31 @[.7ĠmG7:QlX3[VK9B_< 7j}O:[8s00]jͧb[6T8-ƨ_EBE{_7:Țo6jhNM4U::*3<;;8haӪ5۪`ȁ)UH,{_WJkx.#lÆւ; ۷o|fO?X|,jՃtJ-SU,"U&jX@{Rf4<5]iT0+IEUFb[1dŠSsŪWQ"/d[^LRT owxT+jQ2t,E!R+t]ɒy=&T բnYI (RvDzuS#LWQe",anIܦ4VHfPڕH:|x,H)4Vк^kiI.iUbgXCHTqB'xqH,9y."gnj%6Lb=MW0'u lVY%&IW3 8Ywu(HEyOdۨN=/ÇW_ΉGq>Ͼp4;DZ(JyC^7F̓ ʺ?߽BDuSe!|!ظ{Om@xqWB犉 xUKBOϾa^j ͑ze*"8tJ2*Q{B+9V2m AOHD*˜HplmC|t蝟gR@I;wH/e~sx#9]+OG?yϳɩbEbl=`sh9帯gnzqt| 4˱%2IqD,J}떎cX71L.Gǟj]ZN'Gg#'oȂx9W^4;K#䇢X8bh:ivRAUg&ѫ: aZ9 cZ8)vJq6 )Yd%@c } C aklS=[>U"a\A BkHCq1azZRse~aN-Yhg.Htyq2T-HjmYzɍYB8-C4U63& a@Z5*GCK>4mXx?)goE\xpq8ZoKYJm~{|_g2"_o-;i6! ]d2"Fh:j*HakP`U5eI-{vy|6=e#}㦉tD]ILhh Z#% .;T|2/^lܷugjꛛڎ[O, cxucL_P{"N硾٫^Jۼs^Wmԍ*~${pq@ie߻u'˖g۰UkQXFV5}2׹nIrThQ,D^$lw!y*֜V{qqM^&dM@ɣ\puAcVI1_Ԅvje:b"GS㓂li 'ei*EX͊ !eR<4n@L0䩶dݼFu}Tʵ6G0V9J%]LY TE$Ee PpaBoTUdZuβ=8N\T%(xZ Ff*Y1gg/UYps黍& Gdr3MM$L@+RkAtT 17lm+h< P<޶9ZȘtZ\zoDg@",rnbS$*zK'88ؽӇUǧE tyd-Br*-_]WaxMbaoS %ƍˋAy?:;z\H^6YAhj;X{dN}sOH7HJdMPU^Gn;aSW;{֭$uvGG/qkl)ujǧ뉑jļ:8n6}KIcmmD2+6 B63` FFIP%Ɂ4ȩ=BݒM'hWXU^:^_ժ&tY^XNMfez1S\¨yvu^at T c﫰GAVSHrKͰ(K*JAY/* h7 WqFFfj8d>0)j9`Qj^q P\aȟ)XLe)pmUG`*8%:BT8FU($sˎTrݔ#G̗2=WM8zCEuKDr^6bQVQ;ajzKlP!.! @8AͶ,$Cr-NBsr|Zug,BS% {S< WXz4MDdRH?I{ y.JC+V!|u$3NIDUrN/s5lfdMI3J`bQ&dL"[^QLzΎYb5gge~^ 9EVnӽW>>ثS8WJW}w7ׯ_^=|~+3k](I DgېdSY,lщRozfë߽֝՗y54d ÒIO鋽wDp|`SD4UdVBU+,dQ8]: p'I^EHєӠuVJA+gzr$ ")j$Xyz iAde9\].d=٨m!5U #q @_af.b-+%B]])Ġ\$gPu]Oq%`u)]f|ؗ榢 PI(󸀤cᖨJT(*t/HPqɪtlE(Qnltu 0֫2 al>~=`5˨!*&oni\̼+)v@SR4*k8Y^׹r[~?|lAX[~W~>UiqŠ3ݱ4 j`("@si!!`p/_x* 7FWdeՀ߭oni54v!fXHF\AJʠE k}8:ӿ@Ӽ4 Sapc"EEZo@-ʎk;tǯfN dfT5^Mʠ 5W,K\xP@'%eK]ﮃqNV>%Q?>Ѭ^yey[Q>}VR'&J0c9i+}9z5@@vUdAaZsO܊} Ȍc6j%(5? Pw3aonM."Cc/iwVZNM{gݸ<4L|yήm7Ujmv6+U5Zol)gIw޿*/.^۷ѷg`ȁymnY<eiɔUrJ1. ̴,: 3Nl4VR)U*y!kuEvLc MFVF!SCuF}E6\bvcXM.OϹyL\q)u2gY$HxqOӴ  \r!uƅZNq'#Kk a`La9f֤٬bJfX5!G(11*%!.ƹXe)H R ?JdP5bbeoi %T3l-ZMMR*UM$4s:d4dpQPE ͒J<$WEXUe˅$(5OgT+EP[P$Xj,ID")#ZYE"(KZ28p&^nIS)<ܺdhVVP@z Kɣ$@(WK/qT CB@eЫe"DT&bYM!Ub9ZwΪHȥTfA5 2,Bƙ J`k`tFo&e8曓hV נ7䖫~MtxW{Z]ÒB.s "]s~,Na߾w͠)+Mbo'3w#״:7t$DkonOgq2eo; z-SMfBF=sInoX Qexo|xq7=;tl~j9JVa0^&_&kzTj8Mq&)WۣkD훼a94!N J2Y9kBת\=u^WF4[hJ\-9+Zl?+;;d7TM4\($ADTza,.$Xtv( wچt 4ʵXhɵr}E4Y0aW)L&;Ԯ.X(QFGy u+n/~)][E*~kuY|f{O3:xLh{- SkCG`K囓ԻJ6l};{y88aھOgANƃfolƃtoς f/OlO*mSm'||6gjmԏ]LZs]9SV5z"89oPƳJrq l1 &{TJqQ|;;;>"lZ}WAUF+'UU%y,t<ɦ&*c$=MqTeeQWje ,*]-Byec:OsM-.r̍%TRӤYe S &Zl[ CDmRd,+]Da:EV 9T]J/hN r* )>~q&_D%+$@!' YDH:S!bn_29 *A%fyA+VB0,Gd:Y-pf1)r*b(ӷJJA',ɪy<tګUVc&: (2;:Ryg2 ajU1H򙫵-/LO]qerKyфސH+e5Zȃ$3 {ٴLUiTu'1Z`ekgc)&&YfIr'MBl0 +ԒoqF, t㱛?˧,yu,m>{vv>qG֝]5:Ŝц%O)fg 9zWIl$TݴuhY6; `p̩^NT5|ʝGYɯof_Un1;NeuMtg>{㣑qホo*LXV>'=p,O&l["ܼ9i3JJS8'_e8))'/pu[cattQ?|*P:j"ӹVa/h[==D4|lGbW7e WbyrF/TY87e&P;=F˯F4ȣ cQ.rvYLU6x%RrD#m6DeWn$\Ro5E2jL35gRT*w=IeU)c [g^x/ooqA+eh9ӹNfu ŸX;fQ,cqv[ݭFOͷf?{f(< r:;UWv˧^^[dyJqan![Mbnm$?yvCIzk}׿c y @3ߔE-Ҁ0{OϥTR89lX*~d%gYo^ty^m+ɣE3Ͼ#ǥB2d)RUdžHe(:Խ=£uDxQ !\!Du61\}OBrTMNCc| ϟ$n +3fULy>s5D,6vK8* [,Rh5[/pgW@GєǓakn@3oIdȨ;XBѼzl`  :h5Kg\6o[֚no^ }䯂`xぴώ.v3g[]շogߤ<ܻ>$|q/G{wwfSCKpq8uqkfw^Tkg36ַxXB5|~Y3\,jcfThHV--c3;M)KIJίR̞Һ Qa[:EFk^K452]Shp+ ]ZSŴDKfe{(-O#e(+7 ڐBSͦY[SBqXV% % %SEw4.Wae%'XQX eUK۬WkN|AZ/U!!FhF,TyT .+.(~E5jP,\=^egi dzTptUKrhp!YɢQQLVT^Kn[HUo$YƉ) *pЩsTI14 fTFY ekRL$Im]uE+Ic K1$ŰU^p.>Āoc4 @_bА-Z&{k7Og?ݟ.JuӂNy?jUSxI׍Fxn޿|Çvz~32R҃5'}_VnOa f 6B$F8ZN۷{2Kϯg;>p9yCcRyK+UNÅ c'l7/_"n,Kz>|X,%@@!1B_>bH * 0 fgvUDOGGwU͓<'J%'_z6Y2fjQö=\B~*TiуoeN`opɛ WY);-Er׆]^WL@\?[m1lK*Lbz)ؠ>{EجgUTql=IVk5OBj2 k j! ϴͧC,4)2jO^e`1WoT8TbJE&kF ZeN*+js"(2.Ut>O^#"N\4`4.+_?֢ˤ|pئӧ_=;jmzY)\}>+W_5JdiyO^/HUT(}Lt1`֖Jϋ7_ן/Wl<[pZ/F$̝y%EXrqa E\^^NEfa-s%rq"+!7YEӒqeg<^ t8֌ee|7P'p DQ{URer`6a !]j.]W[" F԰APهM2SY=H\-AaTV(mt-(l+'mroTAy0 -)ѡ4v; z-l`5IQB It4 f41u ́y-ibys۪ bEӴb&*Vu`(p^Co?4i6p r1$ Β"oݱz>BӟIΗg8?ϥT6ڻν0tqqrn7]r2WY޼|n"X~u/sA;*,mMFO @jp:-jl/s}oQ{ ]P_jppԡ|G^^.T7@<Ǘ~ۿv[~S|h9[,FLy@6@XfDuNizt XḾqOnNt|uW"%U>sZbN!^M͋@YhY"JXxϙ}kj٨4PFj;OiNE0wnc2!8S:MU3A7,V0%`)|~rvG\> Á7έw˪.do>t>Ww*";G:3-iaN_RB{L((Bo#nҤ0zw3fDVgA̪$S&^7 ]tme.&nȜ ٢J,^I7@3zu(K]m- *z 5dBvbC i(*l&|SAɚUW"7Тvmn*\p&EG3rQt^s܄F 'Q ݐjŕBilΨ ,-i2sAL+cզe#_fRQ;Jƾfz8n:.2rZ*YγjP5U 8͉ B `Ħ،J AZ3Rb]XZbO8&TBƠGv̪b$=IV&SE#(O8%jNZ}b@Tei^j"]j-hakN:) r0o8P!Ҵ"4eç]^qVWu I?4l!%֩^Q݄8EaCb7eWFZfn*Y^z `[i&M>zi=i?]b:E9Avm1AO̱Io?)[ަ0|.N>BBqcHF$'w7^~6+;m5yrvlv, ߰ۿ9͇·7?NYvn;f.u9P9@תOyf*0mx\IcJ4Oץ Ѽ7eՇ,ҋ]aU6 ~XF-WcZk㌱FJ=fN iX$“6MHL+ۄkXIYsUa$FmG|np 2faHٵMm )Ա]2%mI6FTts'JS$A8y]KYu&<Pl.*j#[ 4hi ua<+BV;)˔@m*}:R]ը4*KXAfO? Q>/%{977dz =S75$V(D8!*(hEi{o{,*DbXS|Af0_7MICy^2pdl¸V,Y]#,Czy\ms|TUE},'\rj5W$zYYLl(H-R.kAƒhW'H3ݪeu 8P\/Y W,7S$z hWGW_GQWI%ڕmA+~qy"]P&<(coK{<^Z}o9iΖ8:(ƟvT`œ+ V48g*2cjJZ^TuDDE\NX.Iv)'>k5|fBÀ*uOvetoZtnYlfL1C" F&JoTKwX_y =ة-ry^_\khdckvXWڸh\L(HX M0dq4 .܀l1JSLmE(X3q̋ҰԊbU " 5m3=2&Pp + h@`FzXnI*K`^HJ,Ft@R)<ñneeuQE.(!eI.17# 4WXR2/js(z5 ֒\`\DyMQ[6Qfz-e'Bj:u4ͥaQAבqLzlb҇)jJ0 <9VR\'Yp8zǷ [v [UZΒI v?l>%R-5HmFJjlKgߌ#v4n st|i ͉s6j$mv<-۾:ރ۫T5^C QDYʸz4/ݽa[f2Aͯ4kɷdQ}έۭǏ{mO-N.j0W/`~Ŷ?:lɧ́hda*hbX5ƷcFQٔn5nK E9j zOy*̓Py\x^N6墨#4:i% | 'h|I)R Ttv0g_J]420+\-ˠ0Bu^` wK`1 jkNl{f8y8p%zS K kx p^'ZW׷,\ H"eR r>c)%Q;l:tRz{pQ-gB,ֽ'~SCl2Y$agnmYȌRbnvw|bT{&S:$eI\ZCe=;uU맯~>Cjfc_Gp(2bP%Q 2})sd]4v$" }m>[f{|+^-[؄E 4zuP $'j^Z@/6՛{YV&iR-4)L,*mٮwtydmG0OP[3c- M.tfRj]iͪ,(p) VӈV!raCcR  eV6?0Ѭ* kN:7U&jSrz(HUU҄ǕJW,cZUvXǴR0wn˗JBjfvf",1WD&[:g F(5q%xAJpESQQ"lir {U-אb'sVeR5P$aA vCɓu:(2a澊<#sMbAcA`0x41 Tҗ džufhX S"p #sS\)3@!Ui"t?Lt$ypIk(@\ԣx@1[;{IlnJ)\IXe]ί+𻿯^DoO"aVekѠi.k2w^N~ΓE62͋_~&ho=W+_\ǚۿW?lM}3G= ]Q.y/J4 0%%nq\Ps`j\j7\< 1uy]2.8_)h'}Y+:Rd>&,QY/OCV ?hӯ庵(޾EweQ'c{b;^ПSBeY3o0JTjϬbV>ԀfI@ɚˮ_Elu, ַf cf鵪Q)y`ǀ:U`٠O,kYcx،C<VcK֙",/ wFDO_ v:ӫSE#@Rau}q(b;e(ڶDfܾ_[qacb5(/aO޾B#tlFKmpء`o49/w :I<6J2 ~>j/*PR[60M^|$//.}5טJw^oW7/}0Efiv]ncSHuu$V/*{P Ɍ~#K '劬F$hU&4i CQQ j2E].봪Z*ffZla %2ivvv[/ij5Ʊ 4nbj ;@O5cS)73uä_'"e3eE|ѓ\WT,Gep#u2"Qpffhc(5Vd!I뉱B@7ьְ]Mzp xZ罙8iX$_cӒ5[1Rĉ鰌C+Ѐ,Oj^"ej˨պ%_NIqn pݲ,XR1=:"K:cMW%f~RKj% 4݂뎡J `KHŪSif%T]QD K:ekuAWԉ\0E!mѣE :U%:(/TX&N%kf{mYr}T*&qēT@, H`.w^3br[ 5)#1hQf?/( 0l3ʹ1n+ي|x@?V?/j?lU5?c[;篾nvu 3kscdoWw+I'hsu F{0BXL4J6f6qaU)Nm _Ui ]UBz{灣>QUA gp {p(f1f ‚hb}'/>R7`|3P⋫j.(]Bӧ;xT_#@z"Jds+䠡hrn>{ 6Tb_T̮<3m'R׭z`sӄRqkٜR?$L۩X-u-hj u4[n}:7 qoK(S9{Ɣbedݫg6,o(UΊeIO=TNߞ׊-O&1>Olt};Ei#xRly 5LuL/SUIEBdub泸 Yt V2\:d.uc!POe~&tZK&]u9;]g[4J3.Sx&!hdJ˥P2Vf=͜mf VS(+eP %g"j(i 1.cʵidIR,]r4a.4M8O S]`^GTDQevZ"?biEgv,SMɿ &eX l`oF UФJU'YJ6m=Enc&rMZ(0ªQ|G̨ k@%Yf!f)"-WM)Q@D{"c2&p]NDBHYKכK"&}xbʰ|I8B*U$_͵@0ڡ][[Fwd,pfqf}ց))y2X+1֎W:Z7NWmY4S.C۷y2^wn7vb_>yto WN >j4LeGf_ Αcbkh4Vwk@3j n{nSms͠7υt5m[4(6suph2"2ɘa\'.n#\gܢ[z{.|7%4hY}aǂ_ 5[ܼ #hcFl UI ]WW˗.7_Ƌ3=CjlJ9ױӲzjAOVV\vSlO i56j"?xU{I+փ&fS?yA EI@}o_b^5 .\0sÖw3kWKV2id-֖wFL_eXY2{}16lʢĄYB8sz*vq77[=-:q{[-ZvU3~47ѣ/M~>8j"ԋD`Pѓ3j4i:vdK?F=R!q sEixZ2r^^ N\5qDy6K7Eh^|R,! i Tz۵ 8F7t%Io&2Kcɹ[ljVz}S.G)H+%40 !D)ezJ  O8CW1FF.jSDuBpbaĠ+٪v+_]t"1$&q6ǡ13@j{Ir&˲ bYGD_1r%=#T2_4WA9PF d^klؔ@{E*IasJhOHџUWZUiIn*"Mzs դ'jՔqk2%ź)SQX5le'HCef[ɋgRQJAΉB#bE)JPü6 x]͹LˉBB)4}\aے"4?`Si ]QzR94ڌ -5*TTb +XSIZ@VjmstFu4[״yn2\yamvm=@|7bp _[uMo8xwAEvx\`yUozFyC:ΣIX\ĎRiasڝv>yR4p(*H7dl Qo" J1ZFh>2>j')); SѰ拟˳ڸ{?ZsJX97X8xqNh=C/4)ҴY?tz*gv yŌO\LsA vҶM~ PIʐDPfZfv5.I%!m iZraja=y t˺wD]cwΧD߶GjV "h>.Pmwh6;1]_$˫JbT:փoeQMaY帊n-EIyrIYY-ZFFQx Xq߿׉Ցtq|iD_Ytvv.2E@~i"ʉZT3C_J wZ/nhs[O1hGwM|;hI *"^eVw VHiNi-עywuYꭾ7\ UZrё[xMe`03jZfk4΋J_"T5l7/?7CtV ;nj|3{_\-BF~g1ÿO8i~}ƅ'*rZ^I RYa#gYi Tա,< V@5KQ[HrG_|H]SthRqUU_śd㥒\FM*y2eGꭢ62`?w;>/H%gY1Gzvmw{EQ|j{2P!zt(̃uv6uujJo |p2Z$ց\#`[p/Mn7I/LKU5N3$T;͙$t8azn=99mqzRk<;E%Xg10q]V&6Mq4E^,#WL!=3x))+QN#a}FV( j㦤OW)zqb^e`u{j4H x%`J2o(HYOͽ()[8fW GU͹X)Y ML-񠍤h֨ֈF%nP@&8)R4&-vZ?G,Y=ޕu]{73cvvg` C+ ?= A C `v;|Ҝd^:֭:}>uN:̶A)aX9t]ܰ"Ecɾg{(٤CYk"6%i KGKhZ/B4Z YVm bcЉGpT˞F954}e7|R  |&VA"~z1\m07 Bn|~qeklKOvmR֚~bwW4uueƞM5έjY|w[&K໲Xw l:ȤCG=JBCi'""gMݻ>I7ΝsLNnD LWO.;" 㵺軇Uy?o~*~Z/~ Jb:tYʢnhӯH;&^`'t/zmfđr߲&Ow  H)H~Y65obVZr =M5dɦqgU\!/3W#`~`a?w,^}A#M=>8nZ9x`o^Ͽr [!xxy!;' 4HPt]EfݙpsO4ru{Ɂ_ܺ'O_I [=Glq>7AUl9[pF0gF}g}ͺ>*[o8~a]FzwdUU8Mˢ7Kg#?Cv7Ն0lO]@꥙U- $լKٗgOVkko]٘~n* (YKպ}i]I!y<>InH<2-u=e;Btϙa #~] oTAemDmڅ[Ph-NԬ\P։zJS`hLI>cQ}*ݳsМƀ ˷<=}m~w׫ WmFX M6MԶɹuӫOHt@D߻gC55 qzǖCE~jFSh=uw`Y䪎q,$hjӶ X(6DlYS{w{l~~7xG)x9Ď>(5kIכ`JT{yftO&>V sXֆֶD6*$dNo6U;^/f;?8U ق[;3 }+9+!i6̢fDc q)E"AU7޻gtFMԨ?Nͺti-[f6o6o_Dz^~'S"YVG7Ɔzv%yC7mMn#ko_RoQ'hjSbv]*Ezt{M]X>Y0u1tͧ xpeqx~$͹1 aty2 drU+6fl%MeHY4jsyq^Qov_n:mk i\SljgZM술ey9+pG{]4µjU#EFly %z[!uT8ԷiUc2p t7D<,w #+XLnmQ^Lc=AV3M^bJ# H2O{'TK^dܵp:RycT/ሶUUڝD/ n[lJhxNY D䨴JzdhMG0"oQGYkn(jIk]kd)]C3!vfPts3d-ZbQY\wmix :Z[ai93^Ӗi4Dv_PX܀khVpP(V][u- z!z&uem"Ij"Ud:,?4#Q)+8k;S"K`o.yP뫭.8$ Ee\+eqOlo__oX.ۻth/y5>軽ms\-id/q;!N=yu2P-Y{^߰U톻7nޠ^ϔx:?L쭌{dx]s4f5!8^%[Kò)ׯq~GM՛n ,ov!fjDeryG?|d3w?#d[7+czluO?zxouV6 p-us幺}-o??=i;/v$e $j,7>rn^M~%m`'xS:g_FD#Km}64rC¾ DYBtkx؞VuRl&QXZ[L'8ٛl׳R =T]{l毟u$?tHn6+m2J0zG{Q4.xIt+?=ŋ-sn]nݲLʼݞӺ'^.5v;S8^5 n߼̞/nmiὃVWم2b[^_5[B$[h* G~o]Ģȗ첶 ϗoL$5{үr rvhd˅c ]#:.ooYy!ysxs6Mn=%@;ӄ)E:ZY\I-nu]0qWem5zۦh x " Yk*9 |GydnBeol2 @yxwv>`Cf ʈ^j7;b ~lTjeF^TPZm ;}(zzHQUX\G^me*/9gU¾`VnO C5&V`J ]̺TtjG|sU-iŻg -暰CB÷ݡ4kaEm&vj- pR65]4aTAohluL,DE栺V[U[mb!g! t9] YN$j q~^Y- ^5\bv"y# Is1bĕLe;/5W@Z4|y8٦0(i+LH -omBvC€zn=z'mo<շV´yy?|A0ҫ7s=Xp k<,oG=;dvGuKnٿ0/Ͽ+&[?Pzqoߍ6OxE倛-<(Rh^n'PeEǮA{(yp[mEJ:+jq#:!>Q9E0֧4B0w7>D]uhج.^JwtfcRsۋ7ukN2"hxVHEEpx7޹QYÇco||5v*l6ddm/%/Kwnʓ0.Db'w?$N'of,pϽq4f1C-@n+ܰak;X"hάyir0MGג9|( Ґq |v~od'h)3c1P nQ/ߪR{Ӑum٪Y৸Z+hk[.@*ԟEZ5q{+n|&0D6yV1,BC3B0nZ;fGcר&٨9pk=^vws{qAT5)/߱p5hgP+JQ:DC5V*0u&+…xP][}u]gۀ7m2_W+@ մ(qMEML/$O) +Rrèm_촠8s6U[vHd*]MkbcUtkodL%Z(1y VkΨp`dUDG!sw=ۀ3! *U1R$* @vG*v8*5R~h_Zti&LrE0I"$ZG\F=e5@U4/٭c.) 0iζ$ؚwñRY?Df9=||.^|y. ;ґB[{߬WC1Lуxs z^F[7j7lߜme. ]buv'nRwBe~ϵ/ϵȴ2}YIsiQ ,HJHaM{˦εINDix1ƾc(NZu\㩟7 `'ҙauQ\?*>Y( TtUw/'E=Vdv흽~ܔOq0J+=O 'gԏ;DރO^`4#]vyj t8V _Y:jGhϟT,,B)taƵGT~a?!{Oj174*HĶf1њ?*ަMTl/f{;Ūj,2r[?o̴FaK+OD#JIY6-8?o_V~[7y`z6fuUCcװZ:]:*Ox||pm\(틫\?؃kP/ -hD27vsndbj:&I< "cmU>g:p2@JEoť4yӰZҧMk^ˀ&~s޶e2An$l#JcUF (o`p^@Tq1"<U0C3K&„:u Qw9Rab(0*o[ SHsdK1TDٖ#œ@h-.-ZmVh,tmeBN`[f#2[.3(ߵKJ*!jqm:b8H@یmt!Pa:(Mۮi:JteHC! 踁>:뒷3,ʡ|Zi.<_1E;廽<ಠF(y([dNCצtݫpInQbeh"W`?Ws~XbWFgMbmPnId/^PUHkuz8`jXgqHÛQ/Leեs# <:j;5 Vq"{n2hZ|*j322z[}[ 30Ŗi u.nO͌kbA!}l9qY'㛏5gu<jT4? vIѵCJ,V)CϲtYس 4ؚoM 3`Hs0Sؘ}Y9"{ F;zF+PνBes ?۫;$){{ce.k1 "XIjo.s@|W4\pMS#|ٌFPƴloE&&!5 ?ؿ fMÜ\)$`Ê Ki磰׌PϿjp&dpV^ZGXp=ш,M;ʴRdܮy\;΀4&Ğt FUTrn3K]aaDwݐ^&/N}a7 Z.<_=DWk٭&TI'1=B Z5'a:Kz˝McB0f@XtIMeWl_듖0]6-baEdTRfћzW hۨD UJHPKt׹kUP̼x(Uײ,Gf6%04@d ӕplmST[*W/b$j`mU v8%5P7خZQV2p^V (2:Ӷ7͚&o;iZ4BQ |^uX:fR:ooDh񡳷u矿xhSP8Đ*%y+"Gr*IBcz njy3yܢϱMU ڽ AȈ'90^Iς, 97P[/*뚯A ywQWV٢f!o1eo  ETG`eS\+yxٚ+4[ݞUmzae8Tx~.;K4aZ:17 u{&[WI~jw~Udo?*i?*kv`X<< _^-{j~޸EomVamMݣ?/1#ޣ,78%"G;Bj9!ȝB_۽kUyL==ht ]HS=S}e J-]xAyt <M5oW\n$wр-vCKc-[|k..v( ˰ý;i;$pltV4=56l9k? pHV7:3y , BO lӂ$2EӰx,=CI] Bc@Hѩ8Rl]'[o2f3޳HуkPSk-k2V-a2#i{6iƝhQWoQC0P{nՇiCV2Jؑ[@ZUFxZ SnKMedyj}`pQ1Z=J{m䱆Ao2YjgEF )Q5qhz]RSÖX-ˑM%:U,|DT,REM^Z}=ɟ|,h<]u;~YSГxUjhT3AGbѻ[|SN:؛ꏜJId8Auqg4\x:Ѿo4'GVIv~@'|W)z^nz'~4m$W}Q>0&ANj"n`+,MI~·ZbfyUתYCdd (?{߹FB;2&Secl2<#vOzOo`Y \o{G?]7_$?"b},okNj iy,N7%%t;VS`n)wJÝD՛g<.J<7h:$yz co El߲p@SXajrARH?Dli\3Q%x2q õd6̀3loۈS>8M'#dBg:;{)K;v[lHdsٶDqQd`/]\vb}T&l?jcfmK,Xd,+e0n' IҋK[PDVVm-hE:=+;A0,iOl{`rcb7 'ګu&AACnTrZ7h8ln yD5s3I,J]Y4yͥزۖd& ,ԴSThdMVur:]Jĕ(A- DÙh`9X)fڽ͆S:k^5'_W5"YeNxzWL1*p?50z&Q&p4ykX664H>%rV7)LF][_@<:+@hXp@¢r*+(;\A3Ҽ۱63Zj=(wǻWQ֮+kge llG@ed!zX8c<( F&%0@xMwg(sF&9DCe(6[6$I1v XA)[U~tNo(l:4,V+/0005Wb}[(׿狡'e aOd`M m'?:_OwJWW1ܻᚖT 9-3s]]L4A 9CM/3?@@y^v-Kt)X }ZٲպotI]T4DfEҥFD#B Lo5|[ctVnSF4miEs#[̊/g︤-#p&G_ mǟ`;ttdE.o|Zͦu-lw+E-Nͨoݷ";X7F/p|xLj&#Nؼ,iQz,,PKrh^;ŗk7t G~(>%쮨:WNƩkϠ>fd GÑ]n-$k=;')6AM WVZŎ34M'@tISG7hHJ 1W0#6V`ڻɛjUFZsQcUyOWgenuRZYS:$+ݻu/ n9쪔e z>R#PKξ9 `hsgbp(/eY!*g&nm8II;Z]uYmT¤{wP˫PIMw Dʤ?[.wu= PA߱o4] t(jEׂA{7ӮjDTeԳ˖AQT\::O⪃}}.(?9mVw.QAS4'3Wo~7+cY vVCR ׶?p2NYJp2N{ڎdi~პ{}VrS=վA'/ }WWUfe^wѓXB>{o>2AG&#ߑj#U#yi^llDa I;1jOy E8 1(0wBhnQ+7W"}g=dQ䠔S,7W]}M-Q:}5J A^mPM!C|~Ȧ4GBbHcpr8L'Df 4 \D<9 f*᪟W'.#8gWg]xغT.`h$)7t?}hz}qbxˆjޕ*^oqwwW_}IcWDͫo*h bN1?\2giwcV-ˌ9ဦnCOKާw.*ASe\y1-YK!#wzOJ?j؎98Zv8k i\.q7~P_DJ鱋:Bs.ْad dnˢicw ־qHnB;dƤO`ռCG!a[ܷ:mpf[g^"e 8!zS6ָFS<tLF+R֐1j$qJӓ(I0+ 1 B{S?,8 ?EH@(2 j6A ^Y$25-ƬQV64 TUH=oiSg% 3q94giԡ[f ,HMtCNg{rt,d/e[BEqվMW뿠G}:ZLS~?Ѿ|u|'EjPUĖ]l/q=pkVK: O/m wWz8 ?&Hf=N Q-$ pep(_LbP(gQݡ/ɼ.B 4GIܜ黩\^v, ]Z~n*vP*GO= =H5e&B*;y48Z~+v 1$ytMYU{e$B+7aK ݍ@eVFJdҊyryR<$0 < 8 "rzl,/J'V2YQK>6t~=Չj ?ų<@,v g갿xx.,˲QeDd yf3сZ0rU"v7/E0Fp%"* eJG &4)`=0 I^QA- ՛׽b?nu v{@%ʊß;ޟzeAg"*uNPM#aX<;\4ణ@&>ШI(o#dV5c3' q>AMK6} vTd8؅_GܗĹT Rô4[.t1ߧ4$9teX9<s)qD)dyC.1q{Z3)RO n7YڅIDdg,!&Ʀ!=#:ϜVX3DT ~}b dz\;&X/ƺP`|y ! >UǙvh=o˂r/\~}8 ۻ뜺[-{[ۣa$_~-̨c2ʛ5=׿yZNCUAǪ=}W/8>1xv}?߱g~7gxd.u'g/9i5u4$lT\0@P8JOj}*~Pt.](@//<8KyicA/ %tl -de:4P) ĦbMF *xƞ=f\8%\([B, nZrap*Y9&xn1~ev$EVy{yyѝ\ycl/-u?j/&[5 y#59V&~J w}/"O\bL*;D[]Ib N?<ғ@ћ!7iiD}?"t;# GiȠ٭)kyyo.P{v^'1 c95VIƾmXz<}гCkW۔hHKb;EݿD^.b@J 3dK^kSN'!r Nf78 !yJ`OFƌ* m@rĺ5LλW9Km= f49(-@erO({qp+tG|H8 'zH$i_C%7@o' LlvcL!Lv_ޗ?tNR@\|YEȨ2 }S );4 5$xw|?vƦr2Uɏ?_=<zO԰7~q}7iݲ,r'_PoHVHh~E)>ZgwEBP,jToޙĮLP`1 (4RftB{k"{%| XED{",vFœ"f}u+_wėoUET t}O)JꎜQgKPC%eDƻx}(ȫ,/hk etp, NoÇR[-E$KO@v0e9qGp=˷hB\o!FYtҐ-މJ ~{8Y mdws0 ˋ|0 5Η(pGTzߑyUs3b@n?L.Y$iNj8H9 [U&'dUɼ~>ܽo\7e`V"hLx%\AwOcU%r^IQv/~p} EjY%=YH)qH,#, ǺGM׊Bƾ6-y^wCMqq(|}Fl{hh2y{3[Mm>__ [: yAq`uMu }涩; t?au 3MvN%uz|d1 YSHb% qC]dͱ%ths\8e!Uwl9>'n&7ڠ8W5S%ZE Ēp"0tgtMO8HD>%az|Hؚ5]nkǷ$b~4= &iFe{jN ļ:>F:(1 &h,*gVA*> zz(, MH6`)re3 uT7aJXzP"Ivv D 6ePXu\Dsa=MM*nc3DRýw#وlH?3/z9-I,LJytSF#\v.{z܆*:½A@NО>toUu+ldM_/2!}o6{o_X^.Ko{e8E*ĭh vxS}$W:|wk%hơ('mfOsHu&`:ͻkSX~KgI/Oa{I)XmUMϻEYDq#fs 0j'\i{"Fs,c]bDXN:xZE 7ܵztT=4|0x$7ђLo+\;$cZ,b1>N/eU5߇YDj|GՋ(-w~.wVY;̓u<1OϗnʽmLqky健+Bd{4N ?1?Azoj)[5@ɄwΝc\MQŢ:%`9帴rB7y~鐥qvfm' %0:\x2HBF,6dNkYԾo$\ A RIn'^_@NiOd=Ŗ$!Tf7Óʧ]RT&>;fY>Ɵ6o&gpD6]ٵ`)IڎDyU닶j U9M 瑘ġ AdAuAʮqY5j":iPS81AVfi*Ȥ  CE";\؋GAYb'nm(VIZzJn*69u˥G.E)(=n#Oh>oy4{R+SN޾S_~bݵg @ wz{s\'kΦU>UIc+)cʯV_m}?TowRByT:ǣ/^~i0i09>յ&Fwo>?5c2̑͡Tƺq DPbjȾ<9FhR&q\=w j ݼG8SCڞpD#{$mw>ZIwP8OXu,ݓ|<}i4&T~ݤFdgRn}.!&ǿӱNʦDِ&8w%L2[+`:h緹 \ `Яjf(StrX,=Fl:_G&[K$1 @s߬KPhH{{-E!A䗼$gi|$c˗gYCʆQ.ϙ%;Vlp Q0ЀX9v.yoL<)uB9S`I]&FQHGҎm\֨}j̀(V"{DcOWWׅG7?̪@z 'z~#_[T!Y0qO'C3QꉂK7*"\}ϔdy%b%M2] }܁E18(oLQt.%̾h/bdMK|'so&/c'ꑥi %x)ݔY~_D\n}clc˨ l uw|#LyWO-Yzޢ`Bim;cyBZojsw]^v3O%cz 5zX068OhOEγ,_[ k;~.e)2d8nIX/_fxN7< Oڤv<Uy!5MHP(*x!s7p" B` \]@*1n-dL_xxOKѐTո^/0N1%'U*YhRRp'.G)"m̒;ܲN'ϋo3Ac`$_ASe/,^|̣ǚL,r'ӷXHW$|@::(ZF.P2]bZ^0\yj86k0QJ\uJw; H}* tHߣ E(MC` ]\c !bg= JS8K:瘈#u=š!25eck<*!)`^\Qg6M35V&.b0zз'FѮvC=eIn2&q}}Q/~ ܹ>^&OLr$*^Qc fYDO"7@ޢkǚswnq|B0XZAb5kє!|Ļ_3DAwu$жdV:H/F*dx9hd5g =47]s5h>| L>u'$t:rq^, UH ==C8GǤfѹ` aOd[t((9m``\8] 4JHnB@1:ݸyyA~( [dˑNSyQ_3bA&=&Ȗ ӄ`ljOgG)>~2IAmeEH Q RbpPJ%Y`Q0=C0s,m wscl_>cI7ӛGh8EL5 (X2 ^rђJh*D4# `H&Tx+Zcp8 P{I%x|Y,׏= QY@z=x * B,qj= wc8EC]5h@v/*V,`ΒlVJ$ K }=Km`Y,y ]H'c ԡI¼*i]cV&I} P x<͚%S'3 d,/6{eNzH- +? p>SEi6n2AաX\ d\x_|3K$`7WI18a?͝O4ZLL 0F'=/Ja 1t, 3( / y!TL$d9X5c9/,8A3"9Syd̦a2&%b԰%O rhlE֓eBI9G\5SKC<[dSuMzjD|vLZ!s(8NcpoۻX*]FzqE9?ÒIDsWJH%:"dUIk$Mg͹lI Tفl??$x^sXC&pK"Odd;0}։]@xlb"vQ?6K\0:²W/s)9)DܠnE%li^NѱhnlI}wΝ mc[r6'p~p~Xp w uhN̢etpZvQ/r?T黟7sJ-)Tx\"`P9Vݣ|y]!uADXqqRIJ@?)bZlvaIL 3P: T0Fey =SfZ$:~ ) ӝ H b/(ETOG9>[_KVN9CBJGİǂڑ2#ЬCL"Cq0U, id2+B`Uos<-s2*Cd"ߝn "+ U$8Q=YȨ(b;5.̸Mlݩt;w:U(Adh>jڃBw.cR]M $rk*8*T8m1\/K 'jTx :4⌱2ZIYoo1IFInh 4~yFǻ}mnb~XNɈO*.2bʩ!m=5T$1Et |\>3>4w>5vdθq#d.r?N5W9:4ХLV7N݃ab/wh'x슅2c*BwgDh4, ޟiS?w T|3F2+ F2 %M3خ8AJ`%|m8/qgc(^,x9]J?+cG(g% ,gG{gnBd*,>mTua"<1~j }.6A LN4]P܇,;]ؖWpup6aeyyݤI&lY^ΪeKvqo!< d g< SKi4~rpלw,^5*Ez.ūK&ջŏm3/Zst6%s;7OZfVγ&9Rr#@7.߮}^=|2 (P56=gĞh#iW,qjl˹q bfBXdOxޢnM7g9$;(&04⌶Xʠqo, <=ͷmd@PoucL_ C'y)@UxTjFETvj~@MCM4;~л݇ /Z+9 W-gB.V'ü!^n/QT~0JPX ;_I?ȸN6!W.I[$겧Ƛjۧ.NF&>=t[EjHg*@c3~6WXg7H*|ouQ6ʲŘE4Y c̞nh--GfBEө8){kkd& po<: Ym 1-9[/i7D3+vٻd^hDTǔ>Z_>gxbajl`E0DC}ѳ;珡}SyV3t\׏ ،h~$ƫ yM_U]Mx.IuXˈiKؠ\u!Js 42T+ץf&gfQCWǬ 2Hdmn:1ҬEH[{|Sdh ߗW6LU*hBd!0HbBM{-E,Ίd:SH=x9v7Ge&Y+aok$4m-c:@F  ;)Zg1(4 SШ?upW᛾+]<_~q_~Cyϩ:|gX'2(EE(L;<|k:R$DCp`d0#ɻ,|0dO Bx= OM}:B 7Ue> 59Ɍ,>zɖ!6BF` &H0F!%82JPf>{Do=Z1 ]Di!gmNCL .KXTdgd,fx;+5x`ôߋn|GuuGz;m8bҮYjo|]o>bF@wcK?Ld]EU[A^t[ƣ_>ȧt:YensM;0_*S2uWł$3ݜNP[D˄.OpgT`bp&ӼaBBk]ыHz39c"*:} ȳ4k b031 ww ;^"$D-0NPgM!wgQnp_%<"o<=oZ{ϪI>9\dkp$Օ=D(-)nV:HE$ץ63B)L?by)O?$|!!İ5P<ޒ餣\B.y'!|f 󅛸<|&@;O"De H#hF F P]YkG,]S=ߙu9vyA7 #t6Z,Yt$>ƒk 'e y?8hvy$x lIn\!aE/O[M18Qyw2)+]n}'W-4=yh]s҂<2Tɦû4u':SD4Y}i]$Ϧ]Sm۵1/Yi.r@.:gz0>WC|;#Nu}I$GvnfGddfdUVM6hAA3苤A?U@ʹb-껻, U۳go>s[j#Lk=&z-=mdDէTx@h I>"!3j9]0YPy!Tx}v!,tۅa`AМԤ.mg_Hn4n@M  f?|%S$O(MV֘4itZFG(o0SmשI=M;"$npsTw| .sϮU~W' .c*q7rt|f@XrHkd+!]^Xh WT??׿hWMݮr+LAkş\vdmS*-pk qފ5  ao()'μtdnF@[8t|W!đ%(~VgS\fxѝzƜf1Pl,e >3J&,4 Ar24Ԃ$H̃FC,SkdRa  ho2xsh웱h\=~t'H3I:.g]"4Jj5~ކD z% CJRi@6 ,. %!ä5IBo QbL{1DbEb$3hgtTK'3UJ* FsSX$$; WjK[dJp\﹚@'wFdkXT $!l!3a i|qJh& 1\uxQq߭ Uk M0ܟOszaXb~pB2qg&gY P2܀pLNɰ:Ύn\^(^NGR.e}$Rb>'oE]>jۏDh2 Ia7iSۛN_h#[~߶Iv>qI\>` fyad"n)'2+$xߢC#Egՠ" Jݧ^8>yFnZ`ŀNω<Q i+%7 amW ެ7|`1Ec>mdvD-#^<-kdOXRˌ,vqF$KiR-o{2;Թ~qyn,qv{GqI9 PRLSmI=uL0|&5OA@$KgQ/o V a LR }$\eg*IFN' 9A2293`^3>(>Z@ izh'$'ɨv[{#o<ˋ>5Y_!7'w J@2B8*fd;KTOS4Pqm ii8=+ |kz/ ںKq~'/~6_7ωnӤ7,-_wo|돡O$ɨ&ܷ}.1xTl>$ ƻnvEtWhIq)>(#8o6؟ @bLMh D'W pIBLL/O˫74@5aJ$K N9ܭGl!M Z"؁;u5qߤﳋ7hr Z@ĂK2HĠ$&܃FJ Gg$ee MSSi( <%d 7֥qAzqa@_CMOCSVqyt)t;3q|ΞɇfEqԎ.Ƒd˴Խ~VMt-g 2=pə5̺}hS߳Cv.e΀9l J=&s<>[Țp,p\Hɏn>B뷉.VF-Ȍ//ҶzK\a0SwjVB^N$MC[,; %3D1!יP$IZz?%_}F݈PAsdAa{G4$f5j%}Y@(6q﹅H]\Zݱ,II8Pd͏Xӑ@ RHZ?1%yg1@-$Qx(.Jū׺IH4inOJ M~:O6uMKS"hbr[|x=IdIV&aHDRqlI#b܏jHܲ}nSmWmv5vW a:) ?#zZ4EN񜉡1ݴq stޮf(\𸙾Z]&; UO߅[d14~bCt~e"MSc:{m7}&MZczyjk֒}PG[D|Wmx_FZYC~o#Ĥ`>7'޲.';\7I)PI+eDmח!1Ie# 2.Y/'iV{H+`u`\?`##4  Q D7>E2R\10ux<\Crx(u$~!Հw88x %ɻ8X^[cce(>f D,; |<0C8x~)b6J0& bR&8>$> VI [¿ Z/I\dۏ:&!%EQc8 $?|!@(\SE7.zJg=K}up?5|l [4Dᠳ[zr!}T!:H8|)΍'$Mq@MR%AgQEoenB{p0U-E)?CX{>o8S7^3^I8T&V\ hQSi;TMDq_kv^&Aos _T_Ա=EhDrl d2hflQQ?G 8T~1v+ʍs G׵8ƁL Qccg//P4G|8E<~qE>F/΂@89OX gzt`bqS|t?NË3l iţȹ2(A8R:;ᢳN`QssG?^G 9\$7>7Yx@IENDB`gg-1.3.0/examples/beziers.go000066400000000000000000000024601343335034100157210ustar00rootroot00000000000000package main import ( "math/rand" "github.com/fogleman/gg" ) func random() float64 { return rand.Float64()*2 - 1 } func point() (x, y float64) { return random(), random() } func drawCurve(dc *gg.Context) { dc.SetRGBA(0, 0, 0, 0.1) dc.FillPreserve() dc.SetRGB(0, 0, 0) dc.SetLineWidth(12) dc.Stroke() } func drawPoints(dc *gg.Context) { dc.SetRGBA(1, 0, 0, 0.5) dc.SetLineWidth(2) dc.Stroke() } func randomQuadratic(dc *gg.Context) { x0, y0 := point() x1, y1 := point() x2, y2 := point() dc.MoveTo(x0, y0) dc.QuadraticTo(x1, y1, x2, y2) drawCurve(dc) dc.MoveTo(x0, y0) dc.LineTo(x1, y1) dc.LineTo(x2, y2) drawPoints(dc) } func randomCubic(dc *gg.Context) { x0, y0 := point() x1, y1 := point() x2, y2 := point() x3, y3 := point() dc.MoveTo(x0, y0) dc.CubicTo(x1, y1, x2, y2, x3, y3) drawCurve(dc) dc.MoveTo(x0, y0) dc.LineTo(x1, y1) dc.LineTo(x2, y2) dc.LineTo(x3, y3) drawPoints(dc) } func main() { const ( S = 256 W = 8 H = 8 ) dc := gg.NewContext(S*W, S*H) dc.SetRGB(1, 1, 1) dc.Clear() for j := 0; j < H; j++ { for i := 0; i < W; i++ { x := float64(i)*S + S/2 y := float64(j)*S + S/2 dc.Push() dc.Translate(x, y) dc.Scale(S/2, S/2) if j%2 == 0 { randomCubic(dc) } else { randomQuadratic(dc) } dc.Pop() } } dc.SavePNG("out.png") } gg-1.3.0/examples/circle.go000066400000000000000000000002641343335034100155170ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { dc := gg.NewContext(1000, 1000) dc.DrawCircle(500, 500, 400) dc.SetRGB(0, 0, 0) dc.Fill() dc.SavePNG("out.png") } gg-1.3.0/examples/clip.go000066400000000000000000000004141343335034100152020ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { dc := gg.NewContext(1000, 1000) dc.DrawCircle(350, 500, 300) dc.Clip() dc.DrawCircle(650, 500, 300) dc.Clip() dc.DrawRectangle(0, 0, 1000, 1000) dc.SetRGB(0, 0, 0) dc.Fill() dc.SavePNG("out.png") } gg-1.3.0/examples/concat.go000066400000000000000000000007441343335034100155300ustar00rootroot00000000000000package main import ( "math" "github.com/fogleman/gg" ) func main() { im1, err := gg.LoadPNG("examples/baboon.png") if err != nil { panic(err) } im2, err := gg.LoadPNG("examples/gopher.png") if err != nil { panic(err) } s1 := im1.Bounds().Size() s2 := im2.Bounds().Size() width := int(math.Max(float64(s1.X), float64(s2.X))) height := s1.Y + s2.Y dc := gg.NewContext(width, height) dc.DrawImage(im1, 0, 0) dc.DrawImage(im2, 0, s1.Y) dc.SavePNG("out.png") } gg-1.3.0/examples/crisp.go000066400000000000000000000013501343335034100153730ustar00rootroot00000000000000package main import ( "github.com/fogleman/gg" ) func main() { const W = 1000 const H = 1000 const Minor = 10 const Major = 100 dc := gg.NewContext(W, H) dc.SetRGB(1, 1, 1) dc.Clear() // minor grid for x := Minor; x < W; x += Minor { fx := float64(x) + 0.5 dc.DrawLine(fx, 0, fx, H) } for y := Minor; y < H; y += Minor { fy := float64(y) + 0.5 dc.DrawLine(0, fy, W, fy) } dc.SetLineWidth(1) dc.SetRGBA(0, 0, 0, 0.25) dc.Stroke() // major grid for x := Major; x < W; x += Major { fx := float64(x) + 0.5 dc.DrawLine(fx, 0, fx, H) } for y := Major; y < H; y += Major { fy := float64(y) + 0.5 dc.DrawLine(0, fy, W, fy) } dc.SetLineWidth(1) dc.SetRGBA(0, 0, 0, 0.5) dc.Stroke() dc.SavePNG("out.png") } gg-1.3.0/examples/cubic.go000066400000000000000000000012101343335034100153330ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { const S = 1000 dc := gg.NewContext(S, S) dc.SetRGB(1, 1, 1) dc.Clear() dc.Translate(S/2, S/2) dc.Scale(40, 40) var x0, y0, x1, y1, x2, y2, x3, y3 float64 x0, y0 = -10, 0 x1, y1 = -8, -8 x2, y2 = 8, 8 x3, y3 = 10, 0 dc.MoveTo(x0, y0) dc.CubicTo(x1, y1, x2, y2, x3, y3) dc.SetRGBA(0, 0, 0, 0.2) dc.SetLineWidth(8) dc.FillPreserve() dc.SetRGB(0, 0, 0) dc.SetDash(16, 24) dc.Stroke() dc.MoveTo(x0, y0) dc.LineTo(x1, y1) dc.LineTo(x2, y2) dc.LineTo(x3, y3) dc.SetRGBA(1, 0, 0, 0.4) dc.SetLineWidth(2) dc.SetDash(4, 8, 1, 8) dc.Stroke() dc.SavePNG("out.png") } gg-1.3.0/examples/ellipse.go000066400000000000000000000006571343335034100157210ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { const S = 1024 dc := gg.NewContext(S, S) dc.SetRGBA(0, 0, 0, 0.1) for i := 0; i < 360; i += 15 { dc.Push() dc.RotateAbout(gg.Radians(float64(i)), S/2, S/2) dc.DrawEllipse(S/2, S/2, S*7/16, S/8) dc.Fill() dc.Pop() } if im, err := gg.LoadImage("examples/gopher.png"); err == nil { dc.DrawImageAnchored(im, S/2, S/2, 0.5, 0.5) } dc.SavePNG("out.png") } gg-1.3.0/examples/gofont.go000066400000000000000000000007551343335034100155570ustar00rootroot00000000000000package main import ( "log" "github.com/fogleman/gg" "github.com/golang/freetype/truetype" "golang.org/x/image/font/gofont/goregular" ) func main() { font, err := truetype.Parse(goregular.TTF) if err != nil { log.Fatal(err) } face := truetype.NewFace(font, &truetype.Options{Size: 48}) dc := gg.NewContext(1024, 1024) dc.SetFontFace(face) dc.SetRGB(1, 1, 1) dc.Clear() dc.SetRGB(0, 0, 0) dc.DrawStringAnchored("Hello, world!", 512, 512, 0.5, 0.5) dc.SavePNG("out.png") } gg-1.3.0/examples/gopher.png000066400000000000000000001025161343335034100157240ustar00rootroot00000000000000PNG  IHDRw/sRGB pHYs.#.#x?v2iTXtXML:com.adobe.xmp Acorn version 4.5.5 5 300 300 746@IDATx]`TU>3=!$zo"bCAW]X{ﮊo]{ﺖUDzeNz>;@&A{-~s=\DN.U43E{FmQ#N ;qTp2q(QPlXmw[sr-Zv0g7.C <:686J)u41Qr *\=[ZtVNjx59`6t-*el6%*dON6ڒ$*>Il g5 ܀>->K[]>ܮrSi[kVn{\z=)x6Р7,1 ?V W6 aSǛ_A ]YING8rVd[lg%$J\,h!TIK;͞c4.F`Xh L/  _O &\;.$ Iy$u,b4lO1x9!E5^\9sY5&l3L Af3f0uUR*; ś7֬utf)ߞ_鮨X,i5*jキr0* ~GCVD. ԶoBΕ{q%&wNjgMnAR:vN]ĜZl5:x1~/ r``B=?AD(؛"c4Dˍ,+p =L4YَܨR0IG MUj~x/Ēv{HZޫFg[bbv@=J(CтT`6X &&]3Y,kv V.77˰sٳxQ P_,= E?$QY>Aϼ"ȁc3ڥWx ~_tjZǬLY}KfbONLl|.p Gs q> ln4lZshEh*| 予 ZllY^cZjEV)ߙOZJ7o܄$~}q8ۯp곑q5otD5"EVk7s)>-*1}IZ۞:JhAa8FtȍA^@?V@`l!a<(hW+Yް~DJlSjP:3ygƥl?l0:+WΊMoƎgwGeAlq)&7CP hDk^fQ&75hǷCsVa//>WCky|a\N|1̡Y ~iYˍ&`j57<7M5L.4Ҧ^3S+0i:!-;v\x/m7,S/un2xUF'i^釫gAN<l8%^ 9#Nt?GoN}j75u1WGzc 9(ELhd٢&'.+f ASE75E<K\s:ԴWxZ=z|lٲ*\q@I u…q9iԋ%&22Mָxd(*.wNGqV_kp t06%ftazd]ǎVcuB=}Va[c5)fح\!Vk3?&Ap=]u&QQN]BBM@@ o9Ay]z\rt ?& `1 |=#†~ċ|kJ[rqp[c6`2 :P7rmbC3դb.ٽ|l_Hv,^ ۷681hV cTf.h0S덊kZd-m$u( z\k0KmoۯCyP]X0𜫪|s]ZGIڝv?C Ԩ{4Dex ^F h&◿d:Ú&~=ߌW=ބސKT~C%ZQT4P\7:ݮ0JJHR:`3h@GI^|WՖr~u]͠Zq2d;n`3x/@8ژ@7\2X*&(SN8yZN\ᄓv3je3m$-&NquGY1KȞk!s];L벗`@$1𸖭$C'A2XR l +./'JqU4h AgMEKM"q2d40x0Y4PkDضm̛=KfL*?8EJ3Β])ʮh-SҴ6]?򅷤y˷oW3rX?0+o/,,M+sWՖ-_Xo w5!g\9-Z%j[l bAQLVmM?~g6c]U5v3 ;v=}G ={*gC.Rlx**dŲ闟eǢyRi#xdH p4ȱ#hUh0ݶ{쭨=NR:wVKS$c'ti~qB>V=|[rRf2Wd7_HVY2 dһwуBh+5jnڐWX!Kd#n]_p)xD F]GAML401]EeY㟔n,@; XZc>|GL0~ƃ`QD:{6ZkŷlhbՕY+8D2[β6sacJlCG{Z+4 T<RGR)/B1n}JS/;'G33%bA|Cuw-6ee2gb%K$Q\hQ5o! 2OHRz2/ک1`| YMek/>/ߒ}(9H.Uz33% ptmT9:Fȗ풒~E=UABu8h\|PjNG ~5LrnuЖ~LnҴ\,iݥaFUT|-)M!w> pWc yW&srqbeԤ{nS5]' 6/k畴 cQUPS~IH˒sHb20)SS[7\Y@&|[%g:a8_@+0֫΀H8+fqouڜjLu6*BCڭ#sEX=1OF&RROKѥ)3H0ʗ=#V{ĞO L~fI++'gb0' Xi .+N<C+8-=]N6\ &;1K(x<4;LA3TׄNݥo.+Ն te8͑{_7N8rt# Hϼ<7`d3hd@%)iu@2G$JJ\YQB4(LAChncxA* i VTG<&giX %c")Eiw %53f 2GeiȫGP*997 66N]fΖS8Cl/?/eX;xkd೜|{u^2_>390 z:mnnAdJ7 y߫&-]˪Kv- DV|<{)ٰTʘ1ʐl\g.\"9*1q2J @Ϗj(X=)bީ&O/^|NshTN5"!ҍ zMLZ#9ъ3"W#nҫLޡS'JxuIm'=wjIn^`(>~W*{0V Z5hs$4.s7Nvt}" }hǛqMj׮f< ڔX1AJ$ [P+QKrC.(^V~Z:7$|PI">Y18ߔyFn!%EٳOm3x̪iJdY—\yՕ>Fe3ӗ.ݻ_g쟦HG&w򾆲qr0{O xk9 ^<_2zD,z!1ڮlPƽƗ ]AQGZl^^h|!'up} |jj'H~W 6tCQ }(% \~F)۶EFB*K` =(&rߒ/?#rm=8H`8n@DcB:uQ\QOuU%}߭2k7{6Ǚ$cel)hsN1)@`_k;luk˧N<#@S]xff[zQ ݁+WN,y5Y=c8[ى"?_T3=L5Wv. jh:o_/D6=x=:wB' Ӧܟ~ a|$L Ѧ=6xCZjUӓ,yL6^fp;v&M0u5ș9)IU \ UcQ\;P E~Զ=ܚ8ꍓpax? Yky"NmnV4oލ;f?vˁ_'8Q)ݼY=t,MI%޲pJϲslC[ջbuB}d|DqWǘx+9^꫒OG|u(fʄz=tͪ ߐ'^{Y2䶛n_Pڜg} ۠EAEKi3xeW١xr(@Jt_UJJX_1@ s@9ĬU"|dB S-KzΟYÆwޡ^,&]kV C){0=='d?n fPg*€evL,AMft5hYP]FrB֯dcJSya Cd 4,Jn+-eٗCFL 6i lgz晿Fpy^n]dOȫP67(Qw`˘HFJG79 ן{mTU>D9I9w:b5\f^JM5 AFX:P(T+TgFeHnl+~&WA|z2xZ;r֙gi*9'Yt0Ct5H ?J9h@r56O,g:S:vZV)`c㡋xw ̇#9jgNo 35* ZIFcǥW+~9gicIeoA@ةaAr*cLG-BMئ N/])+|A)%VZQ+߲4X놾]1֣׈)-?_| -5ݽ o^{8ϪHS.2?|+{wQGY*mX,vOyW=H;gΜ)W Qsԭ[79}]MD|g#Ds3}BeA Zhs;O죷o?Mm}BP.O0B ԝc%L?65Z5IddAH4h9APdz(%Y*]iV+|X| q-}ֆ'FA׭:L!bu_U9'r0Tgv-z48YRMD.> S0ԥzpr>Jyd3ԤXgle("z!뮻 C >?A4G#ڵ8vXH&7S{bGbziW!Y>|N:e{|tRyw| "# >8@ yd+kj6b|,'*q튳-ig}CH14+ [1(tPsUK.VXQV*JɧpUxjΈ2 9i}0Y{L>]U4V6g;.M= =~Π@΅/,ܫ@O]Q֤\٢Ed֬Y=潮@<|JnzR0MG9B3Ө|<CQLvB4P__3W٭㵥r}pyP.Wz2˷mFj a;GcR+h?4  rTr-1#dᅬ5?pPGP.SΝ7ooh_%~Ф `PZ$S Eyt6 cAܹsVnh{ǎgKҎ1"c ן0G.§k4YרC r룝JLi̇Y܌e&؉f"|Ye,s-fUZF]WWArӈ'Aw/y Ͱ:y RE]xD4$xPbMII|B 3(((Pr ArB XbPUIH3@@ä跆AN,]bl߉Bci߾cao߮ xQweY(FGc #e 0 лA;{9(YNb.*_rO{<"v)'gNZgeQ>ZGQFU"9x]U'h!p۽P=FKg)i,'&Ж@}((+dxޫ2I@]5]cM! y+kT'']mPDc~.."O6Оo= aVw~K["1>k{H5/ ڠKE1ĉo O֯ &BAE6!??\sJvGίjjWd:tu}P= BCE!|7=B9ԏE)7l3::EܨVR=lެ^HP'a C},'y8 u  ^4hXᶁ牢+՞XbZ4נabǬ'1.|eqz 'o#=b8bu^q%XH)4R;P.Ȫ4 ]a}0%㪥{5 ?sSN`p L9KJ?7wD\O UYjR j/[L}=srrT덚 ndڵJmˁ:U4QIeHo"FT[C+ 7&(56i ĉI3\xO<`GtObZ8d\'`}MVeN):eZ !떩?pqd-gkߺ+~?6nrf닽`K XZVuz559O9찜;eq2j:Grba#a%YV\<4ߔ?#e믗totfMs__|ډ4 9hhҺDe@Uflf--ä45s7w1 i @ 7 3"A iii/%執Aܱ`puOѧ{.Oj{c;Z+FB ɑXOƠ`5+O>\5N?t'7$9kVa)gn܍Ddw_ʪU+U#expn9@I{4@cLXpycX { dNA`QCcdS-ZoYQ{ӏL ^D$$6F5MK/YΖܡ/ m:;3ɪ )\iECl!"4U.XVJ 3GIRrpaU^癕+gQIPܹ馛xwBńFS 0~2Gzh}^>cNJCؼV-eǃlXV^}<\dTYqfge-` NW'8"@dQDr5_[EG+~d0lz"z=#S'1Oۻwk]&1-ϐU\sj7'Y.]]) =uݹiE N̙3Grgàn:|駥]v8@ g|Ͻ䍽XZg3Q_F[`ͺy|)ѣk)_瘄}`F2,9x6EGh2}#~XZyt:=DWg(چ_7φdq gJ 惨#^ɰoLBppXZzbYs'PiO5K:cbcQpv5dҷ%]lqAN7ÇW ct,+ ,ဪ"*FNsc7V O٭= D8%Y-ɏ +O88p! ;uR*2it~ߦlvc >@'U؃i|ͷJ#A@ ﺴO%9 O>YF[roNmǠniI% ʻ@p2zNMAk/v *>2,|t9 [OSOS9I:]} a{t=:ά`7GM^~v>p1l6uYϤu F&.=7r׎oLÏ.:ԃVxH8θ|]NAR|T(A@}4&Lq(rW{e @ > hƁ.\}x 2sry㕗`4kl5C/ ̀ &cRkPd xx.ֹQ m:u>ۅi ALBvKم톩St`OJ6/ \n#'7b{;oƍr7 0Fx?Pk*xVi` S;tZLzڽtYw22~Ur]wsiO>Xz3('5@Xg@ffel.27EӴLoR$+}p#NL0V#oD9~  NeON.^däa:f\Jx-]0-;^p<(x U7ᆋS5[ *hj 1-.wi(l!\3` M"AA?f61 L`kߒ1%Y :uG덠٨@DL;o|,޻U%蹍Y `Rs12Â/7'sWzCk k9|iYQ_'=.\A;D<>-Q-/ErSřhjԚT]lpXaor:TvO#q+(91jA97Oi{E+A%HY慮m6`2*|A#Rll7&د;B6Z瞗O;Uep]oLz 0,~1q aM) zio48`ZbN;F68} >_/U(Dz}ڢѩ=+l .f]S1I+E#IbFȸ/AC夿=PIn+ċMOĢd҅w'st>BɆWޓCRzÍ}`לxIO:ߟɓ=*'^.眏kUОqР@@,[0u`>=W6~y˴i`Ё9@ MK9VwIo&.#NxpHr=]9XwG{M^'|9 72<.tuzf }Y6 U qY=D=~ƒ_yA.XeJ54`~n|_:<3 ?"g=Gg&Ϝz;MgPk$=^ sqwi?\ؗ8 *IdhTQ&,9nt ] |?wI֑`XyE>ŗ?Q:l6Fam[H RQ_'M$+<F8CMVZ597fSIGٞ~IYm.&uNpw< ?lt^bY˶n:̕- ښK Z7@&V|sxPqn`@Z+`0a";uJ%_(A}8ij%ՁC@pB,nN&`k2 +Č윂k@+w}V  e{ej!φ#S#ʗwJli9;{`¥XH_AXCg`2{, CւɈvm*dըx*F<#-P۽ha; V #L y%I!\t~(O2@3^/[?n6Jbirf\w?yPߧƉ*S=î{|ϼ+?swpm7d[qʼaSl9M&^{0M=z|zVB1~3iѻZAtJmu?|'x7I<ԆMVu)uKBu ؘ]k)\0+7kPwZ #J4u)-p >*AIL4[1WU:+(0SǷz j$p$[SRӣWe 3Е2ޜ@m~5*.;{~MYd/ʴ1c,NÛn2lY kC9 CB={|e&\i)i #UWtJ{  zcqW+w!*?wi%]sRnl?E/UbfVfm?~hl8|,P&w'a۲W_n3?z5.` a~"iFi<+=]+\=D-6.eYj:,nßQ\@A^v6JσH4`ONӢ='@G8~ؠ6, #T 0tVXK?9R˨srn)XFvY!72onS"[M5=KzfC'xV дГj8j5, 䙓JXZ@̜ޒꕋ%E1{D  Plt\uRD>|zZ>\`[ 81?7(-`-\>f<|Eb3.gDٹ8qrh~VuhR j@#"N]JiI&CztʑA}:HNmwJ5֞2M*@IDAT xx@R7)z |yYab"la?`JLN8v`rp` v1fHˌ$i{3

tؽ 蕇q7?Z\(j劃B*p]n77 tIPa(˓o=_JfN} u%t VDHqCXx2$Q7Qp@H bpŵ ʣ.KݻIq0Fnlb8n`c޷I57ĨsN?NN+Jܰ䞾jRh%&0Lj)J7U8j&j[eLp7#.=dqHf *7 mr :a#q;=DzwVc;7n;?kBFH|Iܾ)A/n5Z)׆Y,AahPFleay(CZMBq MXlE9jqlw~߂clRzK >z dz>ٻ&/֛8OqUj'`sj>v(DT߫.k|>a#ImB\̙$ iz Hh=(U15S. :9ˁQN̆BRcC`ZYPAAl,;XU J3CVC! ׊7&IZO_aM( tbMM="sqh>U4aJIC/,CIٮ" ##*8Фފ[:l-m7eR +rZqc⩝dsqZO%_篑SHyI, f&MF!(G8v TKC8z@gJ?ZFq{?ᅮgnuM/&hE{?~[[VZ!Vm xRo&G*+rJvsM&"|PZ$e dgYX;&œ(ab`~nyđV _A{fŌ8B HI6 z)èYQщMôCdˢ_sJJBJWǦn{h,9 e K޲z<%Vc ;;uVǟr>D~'LtN!-*7@Thx[|@R]5'tTTC,߆VU6*I8Wq͈'e(tޔ{ß /RVLZ<[6#X\ݧO/8j k8 H9 0ңHyx]U/Kln_مb_숞,WޤDl4 N= \EIlvZF5w*3宣YaX=/m0 ZkJ!W_y}* Mw2tx͍饀wo/5 S6O9#==#8E1&.~M.)W## |XR=8% 22vV3=,Pâo?s.:Ѱ"c`gfMI)t`M/aryM*I8r]Po8X 4҆=W5\.KQ-NL@\/R# ȅ bLM4tCG} z0 *`\^6M=|kョ#}L2p()k+ |+s?,um).ߍ_k+@czY1$P&͢o nzfSgaj½HeE%$PEo8%'鎏j I h YMݻLգ ʑ+ڽKm(~S+ܰآTpM6ɠs&1p@Hb}9jE倕ԼRPZ.۷PUӫ$OP#'g]μRkIR;B&oY7^SN/ZsVQXT3A5DsgY|v(+%5Edk:f ȴ8h>TO6 *1x%G*c|19U&Û0uS\86&NB%QśPЇMp@3l^T} s|HC7ofQse̙Jbob 9=9k&sm5fu'ce'uQҒRhhq7lv44+Ej[}h XAb c_ ӂaP Z I*_zEOuut»/>|Jgw~Ow򛀭o>ImRԘ)Z܄bow#NCUr8+/b:jۣ`Q[MN {Dݍkrss}W>ci?> |\7nlذQ.rI2 N?޷ܣ6V^!(#7lЙ|da,Ы|azh>BFTϏ?=4v}.a*ecBldzo_]u- ?ϼ*s߽%mlښ/˗/gRSu̅J{C npLд:wz̏Vfc/5 9.t0Cg ƦĿp6 1+z2WAwߪuzpI Bʷ&I\VK9Wdg򯿐3fK <'{iis xZ瞪>ny1jp]i#ӈ7H}l pT 41af•Ktmzұ,iAR|N>70ße?SL Ԇ9iA fv +Q}!*v&p@SbLCw`EEa-^k7_cCA p>ύԪC®$&5Vn4uq"M]Q|-<5:Kv9,zx%Vx*I'Ez`7AU-mvIg4b} 1r}4*гu )W.0z{(~ΕJA`0`z^bѥ:!@SM#D(p0 `So^E%f%0AEУI"c]ĩԑR@1 @jUx"p5]9[*{]&?\Ы==@u :KOpArnZ@{--DPWk$ QIj*D^(qnS3h y@c)`0jMmt@} dvo olFޯAqq *&a%:Kܘ>JWސМPWN@CK `v9  Q).gy*KڕCƏ7Ԛ䫆^[MHlV*Fq# 4H 45=*CǺ SLb]`lE9))ls43aij!Lry+Uֳ^&}9i{CF5-N-RG~6&)9"X52۾ `T_c`"W 4Qq`5pzUqGuTבu H?Wg"!B0IFD08Ksc/e.7B?YK Bz0cQL7*# [M]x!xጔ@3R2}ӒnQDpp8׎ c1 ] M@$&S #5 >nQ9`/G,o:tv2ҭ.Hh%&;H.7"p{̶(n W3/8ʾ޼wp@O4>^:]vPTO< |3rH?rǽOd4Zf{j561qvL+4uF 3( 6=%A6eͦ%ծ=!үvmʕۋ ˔LjBmгkP`);e͚O4\<8%1.5+#)S,sҲEF$>9^f^!~=GY FЪI%r@AL&6̙=wr&[ZTnXaG&O;O ̙k]X1^qAgϞ= 1>6z`̤'4 Uek) >"W~e3> d0FPrƒ-&^)+,3J $b-e^r%nOHH=QVڈhk8>AOY?11 8zOܡrֈ>dя^qy<&_W =oڍ#~4@Dk]_ czXx0I?Y581zNؔVdzzlll2SOS冋N'bQJZWR[ȑ(i @!FG`j'suz >]NnCj1~=o kҽ 﫯r*++k:ZCw^O*!/ntJD5)ej@g6y"!BfwiƊTد7H ,7o"1if+OңWdNHHHB4㰮i3Oy񡫼FoD&8١]_A x!R~k-&V7\xm1&ЈQ0?GG.++45#6E^~vȁƪF65{Zgle@z5y|a,r3BP@Qт͹9+[QГ+Ձ6>B(rسݽb1}>~wYяv ;Fdͳچ""h4I\ѱvl<~e޴iFtՒc&'#'z&e/|!ScI#ěJj[mh|5&J6*+{]>rD'ŋ)%pSF\Fyk7Ĥ%ʿ'͕sV"Qq1Xȹ?Ab⊖rhwЩlF  4/5 % RD? A-$. +oUw$/O\n/Qf/&Ϲ"9)^ۘW3 ]۷Dx7J@%T"%'g(9 cc]Vo5v}-v$cJT'5X,b\p&YjOp]XiAHAy?vZ-j*)l?cު[hW?BCN4=]J:<[1@oޥG_`d/&3a.^h~њY)ƎӧȪ9 ?\f650dۣdةV/~<1+'Fw4&|kTCա  _RQDk [pܓGF6[٪O#!B&PR'!l/]y窿<ԩsVfrř2dp7_lݠav'.Z Nxo VԶ kSݽL~c2{'Mb`KY+v/,1$㏿.-u<㼴@[}Fe4vDgIa68>Pȧ<(b%9ʳe=g˞|?c} Wlq9H'$mVghsf,鏦j/m۶~3웕gΝ8~ >gj_JjWl09 ݥKkc lID7"|4fj8֘Ql /ۙ}s2Svm+-2R&M[h47nڴn#_ )wozy,{ dź|Yfk]wIJJ$']ǎ50n418}` Z'FBAb6dD~M3 ;ynؽ{U[NqR QJ 詓4EP+,)/k`U؈cnE<~H|{-{v+9=f4TKlCBEBPlLhT 0 _gSCA 惘uśh5ޙQEBD6 lqpd#617ڠ_<5/L#%6hp7"N8f5n6}xCN1?g3:ClT| 5LVT"Ab&G JWY,#!B@PF}?'+4k F18; +/"\gR I8)Sn"aǘѶ]kI돘HP `O_1EněQVNF"y,sQ@7~lՌ&%;v$tt-p`.H،DޏP> PHNӒ>SV>T~I+c fő@SQMf0WN =~ϞvZGc3hp8U EBNJ aspAτիb)ژJf`xrHHhN A/l!S:(`~V 1HP>  a8pAWlvb9;B 6ra7ʦSF$UKßD[t\`!%l1%Y\uZBX3@U/v'jd-},vh 5 `"!)%̰0zpzZ(p R 4p 5Qexc 6@zz-hH(%&9DQSSݍJ$ hHhßp7}{Qquef-K1 UoievlzaO8wUbk5 $q/s[V607GC};M˿\443B@jvM_who|Gr~ߕ=(Nl%h_jHH& @,U>q78k$o([S${|SKlFDW(wOҗqtw(⣺KZZ@/E#`J 6cz=-d-:B'fl֫h4 A50sz4^$oLd$-dMP G`R~ezT#Kq7h\$ \a۷snq7]=|}&B_(k(tAt8T01Ja{1ݗkiOQ knhJvNɭX{Q u%inB^7E1n.xNg'Z8o&f6 W}|ioi3H39ZA ÷b qku2<<WۡQN'B>(q7cL{ b*޷CKQ/)&ܹw̛GM\6N ═.V~ \Kji@oykfGkﲲdcՍ>` 1:h@NlN 𮻑enhz q[:*Hz$4WR ^6p oR&nc'F?  R۠GnȔ`G;BVf2~RA/&-hHD63s3veNh up7Rq7A @T!߸2iY,eOS5~Vgx@ϑmv88H !A+Qg `3AKtpQ1ě=M8i`aAmb#POB)% kࢴ]U]u&Օ_<6^ЫlXq\wk/I:H";k*ǃ4G&3u y6'q@7 áВj&#:_!Jr;:{Jۗ=/C0УYYy }-1(@R\~⮫N%؋pKڸB6X:PjqzR[:xě:B{( |l)+pV8*U\Bi4մZ[Y <#4 x"}d6;_d/W}6 |@[+U< *Qs:E 3Wu/uD.#[jUdի_b04ᯒXĺj+EWM5csZ2+&kSEIok;䪫y,5'Fo|hC6/ :K2#h67)RU]H"@-Qu!LYΒoȆ|u?<"P=ρ?󁖽E8tmVjRJ-h Hkus_м{TVeIbp͈@/6~1ORG HÅi4 iVrB*5l[D%_{MT2h"N>dU7[oC#]qKꛄ6iAOyp;N?}'>5lH'\ hv8D-ӁK4&:WKb6*.&˭[7G++Dl-h. ]RaGr G"[5]% _"@OHN~|7mH.AIQF EFqF]WZȪ0|ǿxtLb% -h5%(R,c۴W]/qz c8=Dڷg'vwm q!r%Y,JہrOȵ̚['OhHR| fe}y?\"DBa,@N;2#Q,sa"x讯7X,t1ǂ15 yւF-Ғ\\ZY^>r&\he$t &9gܖOrUdNKӅ}^NY )5y\whϮU999hiiQ7&ѓ>uNΤsz.pT!~2©GXKy?t?\Ĥ( /+Y+yppJŜɧX)Ezczo"lBxi7oHܾ"QnkYyp.y"yŁZJSt5;[iޱ]^:_ˡƌ/T6IDd.^'҇NDMn0Z8)@ cM|MMWߣkٻΆj4ppsc4٠W=56mަSA# t3!TSjϓVoLiY_YMD=ލh;Pgk׮eL)uYŻlNPO9!{h5Iv4 8cay9_Љ#>:Ei3DN= 1Q}$p%iAҠI'+P ' Wbꕭ~ZktXzr/[wI zj?&{-Ƒ۷*Ξ$p$<-Z86lYW>,d;7$(@#J\X>(CM9uHB]~6-?ECa{ 5W&j VӤp5y;ԕ2F Q.:L@Eׯw]ݥKJ zu*SR-mgS㎛.>3&ᆟ](8RٮW#Y֘D{>7hڝB:X9=hZ߳"ULfAIQ!!?7]xx^\Vs\nR:;p [@\RAAIq kHb/aMlMb E$WZ^)ew,VΘl6l sYߧOaw#+ͼ\M`%3 nᲵn\p46P" zʟ8cmi2py^{P{p ptTMaTV]ž~u{M,u삻cpmzhI13'N?i,(X^֙3QǏ>^0 T=2OMFQw{H>AJҵ:o>;;u}9ae֝f}2(;M{#YœЂVj~R{Y,upRF0PT.U{&DLHS&ٸ}9Vpzr!{߲k.v,Ǿ,%*h7թjnmF"dOOL*O&Ha?ڐ~W7 b.>ND0`'aO-Y"̑5+?pL$StӈCƔ}s+ʎ u¬fG99$31LJ,e礋g]xPSkGڴiٟWWɻYR;|u8vz /ȹhSKWO?Ob@{6+7/C䂉lF}l{YͶ|dET,$`%A͒N CvVEo!nixcsSw=$_ Q& @aKH] @BԡC 6q+m%*(hqd~ĈtG_ӿ^zd݅C䃜х"K-lYݶ-iC),4HKfc#P _^.wV`Eo8W,_tpGZA`RX9D1l20p!3ɻ+'~ă (?ggXw>l56HӤ ց\1rg@Lz6lG);v(ML E{ ٖu8"J#jqHA X ;fJyNq__P P"t##F tW._TZ6CffXS<Ѣ(=]K1+ACG0C>[_hDM zD-[F%yWf*_PGh`PMoѽ 4+P-FX왭&E.[*C5V< flml@(>"%zS" ͂v0":Y1AVיLީTLdY\XƔ)CpniJ*TO>k40GHO}GEZR`>;gh6|X^L΄,yݶ36kf^`Z:T]|1nI4J*P?*/q3ޤ>$W}bf'ٿ\0B?B =d[b4H7k;+ay} >``U4bOMO%=CT :~hbE]R^>Is\KE:jgDlZq]E6 G*!GiڱUW6,N˗ߎkݮט6`Ҥ0 44O"ZHO1TԶL.;PwOe\$%񴋖D_bXp `vK>vd^8 JeeeWQѶ(t=&QZZ5b <3 B6(v3ǧ[[Kְ?߰5`{ p&av%ծ>$?G+7:EHSZ3_446nmj qz5#my'Mw!9k(*S zM"H/|&vrr+@pT@zv)d ]k*@{RbӮnFZzAh'a6_3%3gJ[O|oݏQ:< 6u_λRæyLok]d~ `{?`sB|]aCQ2!;]X+2▢ݬq^Q 1C܏>Z{EG.$kSn v̟d4V w>ϊײyfR`fY o t}|'@!0EkzLg2:ulѫwAYD]4P`n&OepOxu 5ec:,6>ư!53 ZfC%AB5J@qQx-h8P5'߷yz'e Z^65 V\|M+v3_u]A_'it&!_=̹Iu9bp}~욛u쓷ay,+pR2JUM/hbBދl$uCYwssG4Ռx^8qb5=3 +Nvs,Y̖p(&v;?[N"Q4bD"paA0@E% r0=^`);qۜ>Cg|ꁶ6ʼnk+{`0XD#h=a>N;^^^|x|]i6$Pk[B5ʋOFZb~٧ _`v ;!@OP)esa%M\z{~l7!nJ \>11PC+ZSI+D8;P-u4ì@ IĤŒ>f4Z7! A ⰼaqɹq$~~@]Xst-4SClf VPQYI]@%Qy"޽ ́ms:}ϥn=3;yqp]̎8loq|svU%^AwM% T@$(ӦMT{e37 =Ӈ13$"XaG"mdOD,lm3B$=+9*(z\ihHqyIDATL@Y:"m!6D3ӈ$FC(zR{hc 11+vI FIΚfBymR6!Mg|f[MnK]B5" k.Z{~ lw1'*TJ{2%oZ@" m3yᾐmVYz+ e.2lvx]" 5WI Tu:1RZjG8f=FS*mxXp. mK`>9yR)\AjFI7(sNgÇ/Ì6, Ñ w:ӽW;s]f~#m+F%z,wo)GQCi~tXv6h)1B:tt)&:L-e'"?## `]1_Dj1U.5&i@='t8 L%{ W+??z(O@o+0]Um&Rөyy8F%-<\zY6<K1,=NVv 3g!vF#3sssiÄRО'4hO -i?z'IENDB`gg-1.3.0/examples/gradient-linear.go000066400000000000000000000013031343335034100173160ustar00rootroot00000000000000package main import ( "image/color" "github.com/fogleman/gg" ) func main() { dc := gg.NewContext(500, 400) grad := gg.NewLinearGradient(20, 320, 400, 20) grad.AddColorStop(0, color.RGBA{0, 255, 0, 255}) grad.AddColorStop(1, color.RGBA{0, 0, 255, 255}) grad.AddColorStop(0.5, color.RGBA{255, 0, 0, 255}) dc.SetColor(color.White) dc.DrawRectangle(20, 20, 400-20, 300) dc.Stroke() dc.SetStrokeStyle(grad) dc.SetLineWidth(4) dc.MoveTo(10, 10) dc.LineTo(410, 10) dc.LineTo(410, 100) dc.LineTo(10, 100) dc.ClosePath() dc.Stroke() dc.SetFillStyle(grad) dc.MoveTo(10, 120) dc.LineTo(410, 120) dc.LineTo(410, 300) dc.LineTo(10, 300) dc.ClosePath() dc.Fill() dc.SavePNG("out.png") } gg-1.3.0/examples/gradient-radial.go000066400000000000000000000007361343335034100173110ustar00rootroot00000000000000package main import ( "image/color" "github.com/fogleman/gg" ) func main() { dc := gg.NewContext(400, 200) grad := gg.NewRadialGradient(100, 100, 10, 100, 120, 80) grad.AddColorStop(0, color.RGBA{0, 255, 0, 255}) grad.AddColorStop(1, color.RGBA{0, 0, 255, 255}) dc.SetFillStyle(grad) dc.DrawRectangle(0, 0, 200, 200) dc.Fill() dc.SetColor(color.White) dc.DrawCircle(100, 100, 10) dc.Stroke() dc.DrawCircle(100, 120, 80) dc.Stroke() dc.SavePNG("out.png") } gg-1.3.0/examples/gradient-text.go000066400000000000000000000013111343335034100170270ustar00rootroot00000000000000package main import ( "image/color" "github.com/fogleman/gg" ) const ( W = 1024 H = 512 ) func main() { dc := gg.NewContext(W, H) // draw text dc.SetRGB(0, 0, 0) dc.LoadFontFace("/Library/Fonts/Impact.ttf", 128) dc.DrawStringAnchored("Gradient Text", W/2, H/2, 0.5, 0.5) // get the context as an alpha mask mask := dc.AsMask() // clear the context dc.SetRGB(1, 1, 1) dc.Clear() // set a gradient g := gg.NewLinearGradient(0, 0, W, H) g.AddColorStop(0, color.RGBA{255, 0, 0, 255}) g.AddColorStop(1, color.RGBA{0, 0, 255, 255}) dc.SetFillStyle(g) // using the mask, fill the context with the gradient dc.SetMask(mask) dc.DrawRectangle(0, 0, W, H) dc.Fill() dc.SavePNG("out.png") } gg-1.3.0/examples/invert-mask.go000066400000000000000000000003641343335034100165170ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { dc := gg.NewContext(1024, 1024) dc.DrawCircle(512, 512, 384) dc.Clip() dc.InvertMask() dc.DrawRectangle(0, 0, 1024, 1024) dc.SetRGB(0, 0, 0) dc.Fill() dc.SavePNG("out.png") } gg-1.3.0/examples/lines.go000066400000000000000000000010501343335034100153620ustar00rootroot00000000000000package main import ( "math/rand" "github.com/fogleman/gg" ) func main() { const W = 1024 const H = 1024 dc := gg.NewContext(W, H) dc.SetRGB(0, 0, 0) dc.Clear() for i := 0; i < 1000; i++ { x1 := rand.Float64() * W y1 := rand.Float64() * H x2 := rand.Float64() * W y2 := rand.Float64() * H r := rand.Float64() g := rand.Float64() b := rand.Float64() a := rand.Float64()*0.5 + 0.5 w := rand.Float64()*4 + 1 dc.SetRGBA(r, g, b, a) dc.SetLineWidth(w) dc.DrawLine(x1, y1, x2, y2) dc.Stroke() } dc.SavePNG("out.png") } gg-1.3.0/examples/linewidth.go000066400000000000000000000004761343335034100162520ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { dc := gg.NewContext(1000, 1000) dc.SetRGB(1, 1, 1) dc.Clear() dc.SetRGB(0, 0, 0) w := 0.1 for i := 100; i <= 900; i += 20 { x := float64(i) dc.DrawLine(x+50, 0, x-50, 1000) dc.SetLineWidth(w) dc.Stroke() w += 0.1 } dc.SavePNG("out.png") } gg-1.3.0/examples/lorem.go000066400000000000000000000015601343335034100153740ustar00rootroot00000000000000package main import "github.com/fogleman/gg" var lines = []string{ "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod", "tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,", "quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo", "consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse", "cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat", "non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.", } func main() { const W = 800 const H = 400 dc := gg.NewContext(W, H) dc.SetRGB(1, 1, 1) dc.Clear() dc.SetRGB(0, 0, 0) // dc.LoadFontFace("/Library/Fonts/Arial.ttf", 18) const h = 24 for i, line := range lines { y := H/2 - h*len(lines)/2 + i*h dc.DrawStringAnchored(line, 400, float64(y), 0.5, 0.5) } dc.SavePNG("out.png") } gg-1.3.0/examples/mask.go000066400000000000000000000004501343335034100152060ustar00rootroot00000000000000package main import ( "log" "github.com/fogleman/gg" ) func main() { im, err := gg.LoadImage("examples/baboon.png") if err != nil { log.Fatal(err) } dc := gg.NewContext(512, 512) dc.DrawRoundedRectangle(0, 0, 512, 512, 64) dc.Clip() dc.DrawImage(im, 0, 0) dc.SavePNG("out.png") } gg-1.3.0/examples/meme.go000066400000000000000000000011701343335034100151760ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { const S = 1024 dc := gg.NewContext(S, S) dc.SetRGB(1, 1, 1) dc.Clear() if err := dc.LoadFontFace("/Library/Fonts/Impact.ttf", 96); err != nil { panic(err) } dc.SetRGB(0, 0, 0) s := "ONE DOES NOT SIMPLY" n := 6 // "stroke" size for dy := -n; dy <= n; dy++ { for dx := -n; dx <= n; dx++ { if dx*dx+dy*dy >= n*n { // give it rounded corners continue } x := S/2 + float64(dx) y := S/2 + float64(dy) dc.DrawStringAnchored(s, x, y, 0.5, 0.5) } } dc.SetRGB(1, 1, 1) dc.DrawStringAnchored(s, S/2, S/2, 0.5, 0.5) dc.SavePNG("out.png") } gg-1.3.0/examples/openfill.go000066400000000000000000000010651343335034100160660ustar00rootroot00000000000000package main import ( "math" "math/rand" "github.com/fogleman/gg" ) func main() { dc := gg.NewContext(1000, 1000) for j := 0; j < 10; j++ { for i := 0; i < 10; i++ { x := float64(i)*100 + 50 y := float64(j)*100 + 50 a1 := rand.Float64() * 2 * math.Pi a2 := a1 + rand.Float64()*math.Pi + math.Pi/2 dc.DrawArc(x, y, 40, a1, a2) // dc.ClosePath() } } dc.SetRGB(0, 0, 0) dc.FillPreserve() dc.SetRGB(1, 1, 1) dc.SetLineWidth(8) dc.StrokePreserve() dc.SetRGB(1, 0, 0) dc.SetLineWidth(4) dc.StrokePreserve() dc.SavePNG("out.png") } gg-1.3.0/examples/pattern-fill.go000066400000000000000000000005751343335034100166640ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { im, err := gg.LoadPNG("examples/baboon.png") if err != nil { panic(err) } pattern := gg.NewSurfacePattern(im, gg.RepeatBoth) dc := gg.NewContext(600, 600) dc.MoveTo(20, 20) dc.LineTo(590, 20) dc.LineTo(590, 590) dc.LineTo(20, 590) dc.ClosePath() dc.SetFillStyle(pattern) dc.Fill() dc.SavePNG("out.png") } gg-1.3.0/examples/quadratic.go000066400000000000000000000020331343335034100162270ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { const S = 1000 dc := gg.NewContext(S, S) dc.SetRGB(1, 1, 1) dc.Clear() dc.Translate(S/2, S/2) dc.Scale(40, 40) var x0, y0, x1, y1, x2, y2, x3, y3, x4, y4 float64 x0, y0 = -10, 0 x1, y1 = -5, -10 x2, y2 = 0, 0 x3, y3 = 5, 10 x4, y4 = 10, 0 dc.MoveTo(x0, y0) dc.LineTo(x1, y1) dc.LineTo(x2, y2) dc.LineTo(x3, y3) dc.LineTo(x4, y4) dc.SetHexColor("FF2D00") dc.SetLineWidth(8) dc.Stroke() dc.MoveTo(x0, y0) dc.QuadraticTo(x1, y1, x2, y2) dc.QuadraticTo(x3, y3, x4, y4) dc.SetHexColor("3E606F") dc.SetLineWidth(16) dc.FillPreserve() dc.SetRGB(0, 0, 0) dc.Stroke() dc.DrawCircle(x0, y0, 0.5) dc.DrawCircle(x1, y1, 0.5) dc.DrawCircle(x2, y2, 0.5) dc.DrawCircle(x3, y3, 0.5) dc.DrawCircle(x4, y4, 0.5) dc.SetRGB(1, 1, 1) dc.FillPreserve() dc.SetRGB(0, 0, 0) dc.SetLineWidth(4) dc.Stroke() dc.LoadFontFace("/Library/Fonts/Arial.ttf", 200) dc.DrawStringAnchored("g", -5, 5, 0.5, 0.5) dc.DrawStringAnchored("G", 5, -5, 0.5, 0.5) dc.SavePNG("out.png") } gg-1.3.0/examples/rotated-image.go000066400000000000000000000014471343335034100170040ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { const W = 400 const H = 500 im, err := gg.LoadPNG("examples/gopher.png") if err != nil { panic(err) } iw, ih := im.Bounds().Dx(), im.Bounds().Dy() dc := gg.NewContext(W, H) // draw outline dc.SetHexColor("#ff0000") dc.SetLineWidth(1) dc.DrawRectangle(0, 0, float64(W), float64(H)) dc.Stroke() // draw full image dc.SetHexColor("#0000ff") dc.SetLineWidth(2) dc.DrawRectangle(100, 210, float64(iw), float64(ih)) dc.Stroke() dc.DrawImage(im, 100, 210) // draw image with current matrix applied dc.SetHexColor("#0000ff") dc.SetLineWidth(2) dc.Rotate(gg.Radians(10)) dc.DrawRectangle(100, 0, float64(iw), float64(ih)/2+20.0) dc.StrokePreserve() dc.Clip() dc.DrawImageAnchored(im, 100, 0, 0.0, 0.0) dc.SavePNG("out.png") } gg-1.3.0/examples/rotated-text.go000066400000000000000000000011451343335034100167010ustar00rootroot00000000000000package main import ( "github.com/fogleman/gg" "github.com/golang/freetype/truetype" "golang.org/x/image/font/gofont/goregular" ) func main() { const S = 400 dc := gg.NewContext(S, S) dc.SetRGB(1, 1, 1) dc.Clear() dc.SetRGB(0, 0, 0) font, err := truetype.Parse(goregular.TTF) if err != nil { panic("") } face := truetype.NewFace(font, &truetype.Options{ Size: 40, }) dc.SetFontFace(face) text := "Hello, world!" w, h := dc.MeasureString(text) dc.Rotate(gg.Radians(10)) dc.DrawRectangle(100, 180, w, h) dc.Stroke() dc.DrawStringAnchored(text, 100, 180, 0.0, 0.0) dc.SavePNG("out.png") } gg-1.3.0/examples/scatter.go000066400000000000000000000024331343335034100157230ustar00rootroot00000000000000package main import ( "math/rand" "github.com/fogleman/gg" ) func CreatePoints(n int) []gg.Point { points := make([]gg.Point, n) for i := 0; i < n; i++ { x := 0.5 + rand.NormFloat64()*0.1 y := x + rand.NormFloat64()*0.1 points[i] = gg.Point{x, y} } return points } func main() { const S = 1024 const P = 64 dc := gg.NewContext(S, S) dc.InvertY() dc.SetRGB(1, 1, 1) dc.Clear() points := CreatePoints(1000) dc.Translate(P, P) dc.Scale(S-P*2, S-P*2) // draw minor grid for i := 1; i <= 10; i++ { x := float64(i) / 10 dc.MoveTo(x, 0) dc.LineTo(x, 1) dc.MoveTo(0, x) dc.LineTo(1, x) } dc.SetRGBA(0, 0, 0, 0.25) dc.SetLineWidth(1) dc.Stroke() // draw axes dc.MoveTo(0, 0) dc.LineTo(1, 0) dc.MoveTo(0, 0) dc.LineTo(0, 1) dc.SetRGB(0, 0, 0) dc.SetLineWidth(4) dc.Stroke() // draw points dc.SetRGBA(0, 0, 1, 0.5) for _, p := range points { dc.DrawCircle(p.X, p.Y, 3.0/S) dc.Fill() } // draw text dc.Identity() dc.SetRGB(0, 0, 0) if err := dc.LoadFontFace("/Library/Fonts/Arial Bold.ttf", 24); err != nil { panic(err) } dc.DrawStringAnchored("Chart Title", S/2, P/2, 0.5, 0.5) if err := dc.LoadFontFace("/Library/Fonts/Arial.ttf", 18); err != nil { panic(err) } dc.DrawStringAnchored("X Axis Title", S/2, S-P/2, 0.5, 0.5) dc.SavePNG("out.png") } gg-1.3.0/examples/sine.go000066400000000000000000000007651343335034100152220ustar00rootroot00000000000000package main import ( "math" "github.com/fogleman/gg" ) func main() { const W = 1200 const H = 60 dc := gg.NewContext(W, H) // dc.SetHexColor("#FFFFFF") // dc.Clear() dc.ScaleAbout(0.95, 0.75, W/2, H/2) for i := 0; i < W; i++ { a := float64(i) * 2 * math.Pi / W * 8 x := float64(i) y := (math.Sin(a) + 1) / 2 * H dc.LineTo(x, y) } dc.ClosePath() dc.SetHexColor("#3E606F") dc.FillPreserve() dc.SetHexColor("#19344180") dc.SetLineWidth(8) dc.Stroke() dc.SavePNG("out.png") } gg-1.3.0/examples/spiral.go000066400000000000000000000006361343335034100155530ustar00rootroot00000000000000package main import ( "math" "github.com/fogleman/gg" ) func main() { const S = 1024 const N = 2048 dc := gg.NewContext(S, S) dc.SetRGB(1, 1, 1) dc.Clear() dc.SetRGB(0, 0, 0) for i := 0; i <= N; i++ { t := float64(i) / N d := t*S*0.4 + 10 a := t * math.Pi * 2 * 20 x := S/2 + math.Cos(a)*d y := S/2 + math.Sin(a)*d r := t * 8 dc.DrawCircle(x, y, r) } dc.Fill() dc.SavePNG("out.png") } gg-1.3.0/examples/star.go000066400000000000000000000013171343335034100152270ustar00rootroot00000000000000package main import ( "math" "github.com/fogleman/gg" ) type Point struct { X, Y float64 } func Polygon(n int, x, y, r float64) []Point { result := make([]Point, n) for i := 0; i < n; i++ { a := float64(i)*2*math.Pi/float64(n) - math.Pi/2 result[i] = Point{x + r*math.Cos(a), y + r*math.Sin(a)} } return result } func main() { n := 5 points := Polygon(n, 512, 512, 400) dc := gg.NewContext(1024, 1024) dc.SetHexColor("fff") dc.Clear() for i := 0; i < n+1; i++ { index := (i * 2) % n p := points[index] dc.LineTo(p.X, p.Y) } dc.SetRGBA(0, 0.5, 0, 1) dc.SetFillRule(gg.FillRuleEvenOdd) dc.FillPreserve() dc.SetRGBA(0, 1, 0, 0.5) dc.SetLineWidth(16) dc.Stroke() dc.SavePNG("out.png") } gg-1.3.0/examples/stars.go000066400000000000000000000015721343335034100154150ustar00rootroot00000000000000package main import ( "math" "math/rand" "github.com/fogleman/gg" ) type Point struct { X, Y float64 } func Polygon(n int) []Point { result := make([]Point, n) for i := 0; i < n; i++ { a := float64(i)*2*math.Pi/float64(n) - math.Pi/2 result[i] = Point{math.Cos(a), math.Sin(a)} } return result } func main() { const W = 1200 const H = 120 const S = 100 dc := gg.NewContext(W, H) dc.SetHexColor("#FFFFFF") dc.Clear() n := 5 points := Polygon(n) for x := S / 2; x < W; x += S { dc.Push() s := rand.Float64()*S/4 + S/4 dc.Translate(float64(x), H/2) dc.Rotate(rand.Float64() * 2 * math.Pi) dc.Scale(s, s) for i := 0; i < n+1; i++ { index := (i * 2) % n p := points[index] dc.LineTo(p.X, p.Y) } dc.SetLineWidth(10) dc.SetHexColor("#FFCC00") dc.StrokePreserve() dc.SetHexColor("#FFE43A") dc.Fill() dc.Pop() } dc.SavePNG("out.png") } gg-1.3.0/examples/text.go000066400000000000000000000005121343335034100152360ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { const S = 1024 dc := gg.NewContext(S, S) dc.SetRGB(1, 1, 1) dc.Clear() dc.SetRGB(0, 0, 0) if err := dc.LoadFontFace("/Library/Fonts/Arial.ttf", 96); err != nil { panic(err) } dc.DrawStringAnchored("Hello, world!", S/2, S/2, 0.5, 0.5) dc.SavePNG("out.png") } gg-1.3.0/examples/tiling.go000066400000000000000000000005641343335034100155470ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { const NX = 4 const NY = 3 im, err := gg.LoadPNG("examples/gopher.png") if err != nil { panic(err) } w := im.Bounds().Size().X h := im.Bounds().Size().Y dc := gg.NewContext(w*NX, h*NY) for y := 0; y < NY; y++ { for x := 0; x < NX; x++ { dc.DrawImage(im, x*w, y*h) } } dc.SavePNG("out.png") } gg-1.3.0/examples/unicode.go000066400000000000000000000007571343335034100157130ustar00rootroot00000000000000package main import "github.com/fogleman/gg" func main() { const S = 4096 * 2 const T = 16 * 2 const F = 28 dc := gg.NewContext(S, S) dc.SetRGB(1, 1, 1) dc.Clear() dc.SetRGB(0, 0, 0) if err := dc.LoadFontFace("Xolonium-Regular.ttf", F); err != nil { panic(err) } for r := 0; r < 256; r++ { for c := 0; c < 256; c++ { i := r*256 + c x := float64(c*T) + T/2 y := float64(r*T) + T/2 dc.DrawStringAnchored(string(rune(i)), x, y, 0.5, 0.5) } } dc.SavePNG("out.png") } gg-1.3.0/examples/wrap.go000066400000000000000000000050201343335034100152220ustar00rootroot00000000000000package main import "github.com/fogleman/gg" const TEXT = "Call me Ishmael. Some years ago—never mind how long precisely—having little or no money in my purse, and nothing particular to interest me on shore, I thought I would sail about a little and see the watery part of the world. It is a way I have of driving off the spleen and regulating the circulation. Whenever I find myself growing grim about the mouth; whenever it is a damp, drizzly November in my soul; whenever I find myself involuntarily pausing before coffin warehouses, and bringing up the rear of every funeral I meet; and especially whenever my hypos get such an upper hand of me, that it requires a strong moral principle to prevent me from deliberately stepping into the street, and methodically knocking people's hats off—then, I account it high time to get to sea as soon as I can. This is my substitute for pistol and ball. With a philosophical flourish Cato throws himself upon his sword; I quietly take to the ship. There is nothing surprising in this. If they but knew it, almost all men in their degree, some time or other, cherish very nearly the same feelings towards the ocean with me." func main() { const W = 1024 const H = 1024 const P = 16 dc := gg.NewContext(W, H) dc.SetRGB(1, 1, 1) dc.Clear() dc.DrawLine(W/2, 0, W/2, H) dc.DrawLine(0, H/2, W, H/2) dc.DrawRectangle(P, P, W-P-P, H-P-P) dc.SetRGBA(0, 0, 1, 0.25) dc.SetLineWidth(3) dc.Stroke() dc.SetRGB(0, 0, 0) if err := dc.LoadFontFace("/Library/Fonts/Arial Bold.ttf", 18); err != nil { panic(err) } dc.DrawStringWrapped("UPPER LEFT", P, P, 0, 0, 0, 1.5, gg.AlignLeft) dc.DrawStringWrapped("UPPER RIGHT", W-P, P, 1, 0, 0, 1.5, gg.AlignRight) dc.DrawStringWrapped("BOTTOM LEFT", P, H-P, 0, 1, 0, 1.5, gg.AlignLeft) dc.DrawStringWrapped("BOTTOM RIGHT", W-P, H-P, 1, 1, 0, 1.5, gg.AlignRight) dc.DrawStringWrapped("UPPER MIDDLE", W/2, P, 0.5, 0, 0, 1.5, gg.AlignCenter) dc.DrawStringWrapped("LOWER MIDDLE", W/2, H-P, 0.5, 1, 0, 1.5, gg.AlignCenter) dc.DrawStringWrapped("LEFT MIDDLE", P, H/2, 0, 0.5, 0, 1.5, gg.AlignLeft) dc.DrawStringWrapped("RIGHT MIDDLE", W-P, H/2, 1, 0.5, 0, 1.5, gg.AlignRight) if err := dc.LoadFontFace("/Library/Fonts/Arial.ttf", 12); err != nil { panic(err) } dc.DrawStringWrapped(TEXT, W/2-P, H/2-P, 1, 1, W/3, 1.75, gg.AlignLeft) dc.DrawStringWrapped(TEXT, W/2+P, H/2-P, 0, 1, W/3, 2, gg.AlignLeft) dc.DrawStringWrapped(TEXT, W/2-P, H/2+P, 1, 0, W/3, 2.25, gg.AlignLeft) dc.DrawStringWrapped(TEXT, W/2+P, H/2+P, 0, 0, W/3, 2.5, gg.AlignLeft) dc.SavePNG("out.png") } gg-1.3.0/gradient.go000066400000000000000000000075061343335034100142430ustar00rootroot00000000000000package gg import ( "image/color" "math" "sort" ) type stop struct { pos float64 color color.Color } type stops []stop // Len satisfies the Sort interface. func (s stops) Len() int { return len(s) } // Less satisfies the Sort interface. func (s stops) Less(i, j int) bool { return s[i].pos < s[j].pos } // Swap satisfies the Sort interface. func (s stops) Swap(i, j int) { s[i], s[j] = s[j], s[i] } type Gradient interface { Pattern AddColorStop(offset float64, color color.Color) } // Linear Gradient type linearGradient struct { x0, y0, x1, y1 float64 stops stops } func (g *linearGradient) ColorAt(x, y int) color.Color { if len(g.stops) == 0 { return color.Transparent } fx, fy := float64(x), float64(y) x0, y0, x1, y1 := g.x0, g.y0, g.x1, g.y1 dx, dy := x1-x0, y1-y0 // Horizontal if dy == 0 && dx != 0 { return getColor((fx-x0)/dx, g.stops) } // Vertical if dx == 0 && dy != 0 { return getColor((fy-y0)/dy, g.stops) } // Dot product s0 := dx*(fx-x0) + dy*(fy-y0) if s0 < 0 { return g.stops[0].color } // Calculate distance to (x0,y0) alone (x0,y0)->(x1,y1) mag := math.Hypot(dx, dy) u := ((fx-x0)*-dy + (fy-y0)*dx) / (mag * mag) x2, y2 := x0+u*-dy, y0+u*dx d := math.Hypot(fx-x2, fy-y2) / mag return getColor(d, g.stops) } func (g *linearGradient) AddColorStop(offset float64, color color.Color) { g.stops = append(g.stops, stop{pos: offset, color: color}) sort.Sort(g.stops) } func NewLinearGradient(x0, y0, x1, y1 float64) Gradient { g := &linearGradient{ x0: x0, y0: y0, x1: x1, y1: y1, } return g } // Radial Gradient type circle struct { x, y, r float64 } type radialGradient struct { c0, c1, cd circle a, inva float64 mindr float64 stops stops } func dot3(x0, y0, z0, x1, y1, z1 float64) float64 { return x0*x1 + y0*y1 + z0*z1 } func (g *radialGradient) ColorAt(x, y int) color.Color { if len(g.stops) == 0 { return color.Transparent } // copy from pixman's pixman-radial-gradient.c dx, dy := float64(x)+0.5-g.c0.x, float64(y)+0.5-g.c0.y b := dot3(dx, dy, g.c0.r, g.cd.x, g.cd.y, g.cd.r) c := dot3(dx, dy, -g.c0.r, dx, dy, g.c0.r) if g.a == 0 { if b == 0 { return color.Transparent } t := 0.5 * c / b if t*g.cd.r >= g.mindr { return getColor(t, g.stops) } return color.Transparent } discr := dot3(b, g.a, 0, b, -c, 0) if discr >= 0 { sqrtdiscr := math.Sqrt(discr) t0 := (b + sqrtdiscr) * g.inva t1 := (b - sqrtdiscr) * g.inva if t0*g.cd.r >= g.mindr { return getColor(t0, g.stops) } else if t1*g.cd.r >= g.mindr { return getColor(t1, g.stops) } } return color.Transparent } func (g *radialGradient) AddColorStop(offset float64, color color.Color) { g.stops = append(g.stops, stop{pos: offset, color: color}) sort.Sort(g.stops) } func NewRadialGradient(x0, y0, r0, x1, y1, r1 float64) Gradient { c0 := circle{x0, y0, r0} c1 := circle{x1, y1, r1} cd := circle{x1 - x0, y1 - y0, r1 - r0} a := dot3(cd.x, cd.y, -cd.r, cd.x, cd.y, cd.r) var inva float64 if a != 0 { inva = 1.0 / a } mindr := -c0.r g := &radialGradient{ c0: c0, c1: c1, cd: cd, a: a, inva: inva, mindr: mindr, } return g } func getColor(pos float64, stops stops) color.Color { if pos <= 0.0 || len(stops) == 1 { return stops[0].color } last := stops[len(stops)-1] if pos >= last.pos { return last.color } for i, stop := range stops[1:] { if pos < stop.pos { pos = (pos - stops[i].pos) / (stop.pos - stops[i].pos) return colorLerp(stops[i].color, stop.color, pos) } } return last.color } func colorLerp(c0, c1 color.Color, t float64) color.Color { r0, g0, b0, a0 := c0.RGBA() r1, g1, b1, a1 := c1.RGBA() return color.RGBA{ lerp(r0, r1, t), lerp(g0, g1, t), lerp(b0, b1, t), lerp(a0, a1, t), } } func lerp(a, b uint32, t float64) uint8 { return uint8(int32(float64(a)*(1.0-t)+float64(b)*t) >> 8) } gg-1.3.0/matrix.go000066400000000000000000000024731343335034100137500ustar00rootroot00000000000000package gg import "math" type Matrix struct { XX, YX, XY, YY, X0, Y0 float64 } func Identity() Matrix { return Matrix{ 1, 0, 0, 1, 0, 0, } } func Translate(x, y float64) Matrix { return Matrix{ 1, 0, 0, 1, x, y, } } func Scale(x, y float64) Matrix { return Matrix{ x, 0, 0, y, 0, 0, } } func Rotate(angle float64) Matrix { c := math.Cos(angle) s := math.Sin(angle) return Matrix{ c, s, -s, c, 0, 0, } } func Shear(x, y float64) Matrix { return Matrix{ 1, y, x, 1, 0, 0, } } func (a Matrix) Multiply(b Matrix) Matrix { return Matrix{ a.XX*b.XX + a.YX*b.XY, a.XX*b.YX + a.YX*b.YY, a.XY*b.XX + a.YY*b.XY, a.XY*b.YX + a.YY*b.YY, a.X0*b.XX + a.Y0*b.XY + b.X0, a.X0*b.YX + a.Y0*b.YY + b.Y0, } } func (a Matrix) TransformVector(x, y float64) (tx, ty float64) { tx = a.XX*x + a.XY*y ty = a.YX*x + a.YY*y return } func (a Matrix) TransformPoint(x, y float64) (tx, ty float64) { tx = a.XX*x + a.XY*y + a.X0 ty = a.YX*x + a.YY*y + a.Y0 return } func (a Matrix) Translate(x, y float64) Matrix { return Translate(x, y).Multiply(a) } func (a Matrix) Scale(x, y float64) Matrix { return Scale(x, y).Multiply(a) } func (a Matrix) Rotate(angle float64) Matrix { return Rotate(angle).Multiply(a) } func (a Matrix) Shear(x, y float64) Matrix { return Shear(x, y).Multiply(a) } gg-1.3.0/path.go000066400000000000000000000065071343335034100134020ustar00rootroot00000000000000package gg import ( "math" "github.com/golang/freetype/raster" "golang.org/x/image/math/fixed" ) func flattenPath(p raster.Path) [][]Point { var result [][]Point var path []Point var cx, cy float64 for i := 0; i < len(p); { switch p[i] { case 0: if len(path) > 0 { result = append(result, path) path = nil } x := unfix(p[i+1]) y := unfix(p[i+2]) path = append(path, Point{x, y}) cx, cy = x, y i += 4 case 1: x := unfix(p[i+1]) y := unfix(p[i+2]) path = append(path, Point{x, y}) cx, cy = x, y i += 4 case 2: x1 := unfix(p[i+1]) y1 := unfix(p[i+2]) x2 := unfix(p[i+3]) y2 := unfix(p[i+4]) points := QuadraticBezier(cx, cy, x1, y1, x2, y2) path = append(path, points...) cx, cy = x2, y2 i += 6 case 3: x1 := unfix(p[i+1]) y1 := unfix(p[i+2]) x2 := unfix(p[i+3]) y2 := unfix(p[i+4]) x3 := unfix(p[i+5]) y3 := unfix(p[i+6]) points := CubicBezier(cx, cy, x1, y1, x2, y2, x3, y3) path = append(path, points...) cx, cy = x3, y3 i += 8 default: panic("bad path") } } if len(path) > 0 { result = append(result, path) } return result } func dashPath(paths [][]Point, dashes []float64, offset float64) [][]Point { var result [][]Point if len(dashes) == 0 { return paths } if len(dashes) == 1 { dashes = append(dashes, dashes[0]) } for _, path := range paths { if len(path) < 2 { continue } previous := path[0] pathIndex := 1 dashIndex := 0 segmentLength := 0.0 // offset if offset != 0 { var totalLength float64 for _, dashLength := range dashes { totalLength += dashLength } offset = math.Mod(offset, totalLength) if offset < 0 { offset += totalLength } for i, dashLength := range dashes { offset -= dashLength if offset < 0 { dashIndex = i segmentLength = dashLength + offset break } } } var segment []Point segment = append(segment, previous) for pathIndex < len(path) { dashLength := dashes[dashIndex] point := path[pathIndex] d := previous.Distance(point) maxd := dashLength - segmentLength if d > maxd { t := maxd / d p := previous.Interpolate(point, t) segment = append(segment, p) if dashIndex%2 == 0 && len(segment) > 1 { result = append(result, segment) } segment = nil segment = append(segment, p) segmentLength = 0 previous = p dashIndex = (dashIndex + 1) % len(dashes) } else { segment = append(segment, point) previous = point segmentLength += d pathIndex++ } } if dashIndex%2 == 0 && len(segment) > 1 { result = append(result, segment) } } return result } func rasterPath(paths [][]Point) raster.Path { var result raster.Path for _, path := range paths { var previous fixed.Point26_6 for i, point := range path { f := point.Fixed() if i == 0 { result.Start(f) } else { dx := f.X - previous.X dy := f.Y - previous.Y if dx < 0 { dx = -dx } if dy < 0 { dy = -dy } if dx+dy > 8 { // TODO: this is a hack for cases where two points are // too close - causes rendering issues with joins / caps result.Add1(f) } } previous = f } } return result } func dashed(path raster.Path, dashes []float64, offset float64) raster.Path { return rasterPath(dashPath(flattenPath(path), dashes, offset)) } gg-1.3.0/pattern.go000066400000000000000000000046241343335034100141210ustar00rootroot00000000000000package gg import ( "image" "image/color" "github.com/golang/freetype/raster" ) type RepeatOp int const ( RepeatBoth RepeatOp = iota RepeatX RepeatY RepeatNone ) type Pattern interface { ColorAt(x, y int) color.Color } // Solid Pattern type solidPattern struct { color color.Color } func (p *solidPattern) ColorAt(x, y int) color.Color { return p.color } func NewSolidPattern(color color.Color) Pattern { return &solidPattern{color: color} } // Surface Pattern type surfacePattern struct { im image.Image op RepeatOp } func (p *surfacePattern) ColorAt(x, y int) color.Color { b := p.im.Bounds() switch p.op { case RepeatX: if y >= b.Dy() { return color.Transparent } case RepeatY: if x >= b.Dx() { return color.Transparent } case RepeatNone: if x >= b.Dx() || y >= b.Dy() { return color.Transparent } } x = x%b.Dx() + b.Min.X y = y%b.Dy() + b.Min.Y return p.im.At(x, y) } func NewSurfacePattern(im image.Image, op RepeatOp) Pattern { return &surfacePattern{im: im, op: op} } type patternPainter struct { im *image.RGBA mask *image.Alpha p Pattern } // Paint satisfies the Painter interface. func (r *patternPainter) Paint(ss []raster.Span, done bool) { b := r.im.Bounds() for _, s := range ss { if s.Y < b.Min.Y { continue } if s.Y >= b.Max.Y { return } if s.X0 < b.Min.X { s.X0 = b.Min.X } if s.X1 > b.Max.X { s.X1 = b.Max.X } if s.X0 >= s.X1 { continue } const m = 1<<16 - 1 y := s.Y - r.im.Rect.Min.Y x0 := s.X0 - r.im.Rect.Min.X // RGBAPainter.Paint() in $GOPATH/src/github.com/golang/freetype/raster/paint.go i0 := (s.Y-r.im.Rect.Min.Y)*r.im.Stride + (s.X0-r.im.Rect.Min.X)*4 i1 := i0 + (s.X1-s.X0)*4 for i, x := i0, x0; i < i1; i, x = i+4, x+1 { ma := s.Alpha if r.mask != nil { ma = ma * uint32(r.mask.AlphaAt(x, y).A) / 255 if ma == 0 { continue } } c := r.p.ColorAt(x, y) cr, cg, cb, ca := c.RGBA() dr := uint32(r.im.Pix[i+0]) dg := uint32(r.im.Pix[i+1]) db := uint32(r.im.Pix[i+2]) da := uint32(r.im.Pix[i+3]) a := (m - (ca * ma / m)) * 0x101 r.im.Pix[i+0] = uint8((dr*a + cr*ma) / m >> 8) r.im.Pix[i+1] = uint8((dg*a + cg*ma) / m >> 8) r.im.Pix[i+2] = uint8((db*a + cb*ma) / m >> 8) r.im.Pix[i+3] = uint8((da*a + ca*ma) / m >> 8) } } } func newPatternPainter(im *image.RGBA, mask *image.Alpha, p Pattern) *patternPainter { return &patternPainter{im, mask, p} } gg-1.3.0/point.go000066400000000000000000000005721343335034100135730ustar00rootroot00000000000000package gg import ( "math" "golang.org/x/image/math/fixed" ) type Point struct { X, Y float64 } func (a Point) Fixed() fixed.Point26_6 { return fixp(a.X, a.Y) } func (a Point) Distance(b Point) float64 { return math.Hypot(a.X-b.X, a.Y-b.Y) } func (a Point) Interpolate(b Point, t float64) Point { x := a.X + (b.X-a.X)*t y := a.Y + (b.Y-a.Y)*t return Point{x, y} } gg-1.3.0/util.go000066400000000000000000000055361343335034100134240ustar00rootroot00000000000000package gg import ( "fmt" "image" "image/draw" "image/jpeg" _ "image/jpeg" "image/png" "io/ioutil" "math" "os" "strings" "github.com/golang/freetype/truetype" "golang.org/x/image/font" "golang.org/x/image/math/fixed" ) func Radians(degrees float64) float64 { return degrees * math.Pi / 180 } func Degrees(radians float64) float64 { return radians * 180 / math.Pi } func LoadImage(path string) (image.Image, error) { file, err := os.Open(path) if err != nil { return nil, err } defer file.Close() im, _, err := image.Decode(file) return im, err } func LoadPNG(path string) (image.Image, error) { file, err := os.Open(path) if err != nil { return nil, err } defer file.Close() return png.Decode(file) } func SavePNG(path string, im image.Image) error { file, err := os.Create(path) if err != nil { return err } defer file.Close() return png.Encode(file, im) } func LoadJPG(path string) (image.Image, error) { file, err := os.Open(path) if err != nil { return nil, err } defer file.Close() return jpeg.Decode(file) } func SaveJPG(path string, im image.Image, quality int) error { file, err := os.Create(path) if err != nil { return err } defer file.Close() var opt jpeg.Options opt.Quality = quality return jpeg.Encode(file, im, &opt) } func imageToRGBA(src image.Image) *image.RGBA { bounds := src.Bounds() dst := image.NewRGBA(bounds) draw.Draw(dst, bounds, src, bounds.Min, draw.Src) return dst } func parseHexColor(x string) (r, g, b, a int) { x = strings.TrimPrefix(x, "#") a = 255 if len(x) == 3 { format := "%1x%1x%1x" fmt.Sscanf(x, format, &r, &g, &b) r |= r << 4 g |= g << 4 b |= b << 4 } if len(x) == 6 { format := "%02x%02x%02x" fmt.Sscanf(x, format, &r, &g, &b) } if len(x) == 8 { format := "%02x%02x%02x%02x" fmt.Sscanf(x, format, &r, &g, &b, &a) } return } func fixp(x, y float64) fixed.Point26_6 { return fixed.Point26_6{fix(x), fix(y)} } func fix(x float64) fixed.Int26_6 { return fixed.Int26_6(x * 64) } func unfix(x fixed.Int26_6) float64 { const shift, mask = 6, 1<<6 - 1 if x >= 0 { return float64(x>>shift) + float64(x&mask)/64 } x = -x if x >= 0 { return -(float64(x>>shift) + float64(x&mask)/64) } return 0 } // LoadFontFace is a helper function to load the specified font file with // the specified point size. Note that the returned `font.Face` objects // are not thread safe and cannot be used in parallel across goroutines. // You can usually just use the Context.LoadFontFace function instead of // this package-level function. func LoadFontFace(path string, points float64) (font.Face, error) { fontBytes, err := ioutil.ReadFile(path) if err != nil { return nil, err } f, err := truetype.Parse(fontBytes) if err != nil { return nil, err } face := truetype.NewFace(f, &truetype.Options{ Size: points, // Hinting: font.HintingFull, }) return face, nil } gg-1.3.0/wrap.go000066400000000000000000000020411343335034100134040ustar00rootroot00000000000000package gg import ( "strings" "unicode" ) type measureStringer interface { MeasureString(s string) (w, h float64) } func splitOnSpace(x string) []string { var result []string pi := 0 ps := false for i, c := range x { s := unicode.IsSpace(c) if s != ps && i > 0 { result = append(result, x[pi:i]) pi = i } ps = s } result = append(result, x[pi:]) return result } func wordWrap(m measureStringer, s string, width float64) []string { var result []string for _, line := range strings.Split(s, "\n") { fields := splitOnSpace(line) if len(fields)%2 == 1 { fields = append(fields, "") } x := "" for i := 0; i < len(fields); i += 2 { w, _ := m.MeasureString(x + fields[i]) if w > width { if x == "" { result = append(result, fields[i]) x = "" continue } else { result = append(result, x) x = "" } } x += fields[i] + fields[i+1] } if x != "" { result = append(result, x) } } for i, line := range result { result[i] = strings.TrimSpace(line) } return result }