qtvideo-node-0.2.1+16.04.20151104/0000755000015300001610000000000012616340301016433 5ustar pbuserpbgroup00000000000000qtvideo-node-0.2.1+16.04.20151104/src/0000755000015300001610000000000012616340301017222 5ustar pbuserpbgroup00000000000000qtvideo-node-0.2.1+16.04.20151104/src/qsgvideonode_p.h0000644000015300001610000000643412616337746022433 0ustar pbuserpbgroup00000000000000/**************************************************************************** ** ** Copyright (C) 2015 The Qt Company Ltd. ** Contact: http://www.qt.io/licensing/ ** ** This file is part of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL21$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see http://www.qt.io/terms-conditions. For further ** information use the contact form at http://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 or version 3 as published by the Free ** Software Foundation and appearing in the file LICENSE.LGPLv21 and ** LICENSE.LGPLv3 included in the packaging of this file. Please review the ** following information to ensure the GNU Lesser General Public License ** requirements will be met: https://www.gnu.org/licenses/lgpl.html and ** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** As a special exception, The Qt Company gives you certain additional ** rights. These rights are described in The Qt Company LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef QSGVIDEONODE_P_H #define QSGVIDEONODE_P_H #include #include #include #include #include QT_BEGIN_NAMESPACE class Q_MULTIMEDIAQUICK_EXPORT QSGVideoNode : public QSGGeometryNode { public: enum FrameFlag { FrameFiltered = 0x01 }; Q_DECLARE_FLAGS(FrameFlags, FrameFlag) QSGVideoNode(); virtual void setCurrentFrame(const QVideoFrame &frame, FrameFlags flags) = 0; virtual QVideoFrame::PixelFormat pixelFormat() const = 0; virtual QAbstractVideoBuffer::HandleType handleType() const = 0; void setTexturedRectGeometry(const QRectF &boundingRect, const QRectF &textureRect, int orientation); private: QRectF m_rect; QRectF m_textureRect; int m_orientation; }; Q_DECLARE_OPERATORS_FOR_FLAGS(QSGVideoNode::FrameFlags) class Q_MULTIMEDIAQUICK_EXPORT QSGVideoNodeFactoryInterface { public: virtual QList supportedPixelFormats(QAbstractVideoBuffer::HandleType handleType) const = 0; virtual QSGVideoNode *createNode(const QVideoSurfaceFormat &format) = 0; }; #define QSGVideoNodeFactoryInterface_iid "org.qt-project.qt.sgvideonodefactory/5.2" Q_DECLARE_INTERFACE(QSGVideoNodeFactoryInterface, QSGVideoNodeFactoryInterface_iid) class Q_MULTIMEDIAQUICK_EXPORT QSGVideoNodeFactoryPlugin : public QObject, public QSGVideoNodeFactoryInterface { Q_OBJECT Q_INTERFACES(QSGVideoNodeFactoryInterface) public: virtual QList supportedPixelFormats(QAbstractVideoBuffer::HandleType handleType) const = 0; virtual QSGVideoNode *createNode(const QVideoSurfaceFormat &format) = 0; }; QT_END_NAMESPACE #endif // QSGVIDEONODE_H qtvideo-node-0.2.1+16.04.20151104/src/shadervideomaterial.cpp0000644000015300001610000002362612616337741023771 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #include #include #include #include #include "shadervideomaterial.h" #include "shadervideoshader.h" #include #include #include #include ShaderVideoShader *ShaderVideoMaterial::m_videoShader = 0; ShaderVideoMaterial::ShaderVideoMaterial(const QVideoSurfaceFormat &format) : m_format(format), m_camControl(0), m_textureId(0), m_surfaceTextureClient(0), m_readyToRender(false), m_orientation(SharedSignal::Orientation::rotate0) { /* FIXME: workaround incorrect z-ordering when VideoOutput is rotated. * In the following case VideoOutput is rendered on top of all other * Items in the scene but one. The issue is most likely related with * how QtQuick scenegraph's batch renderer draws the nodes. * When angle is 0, the ShaderVideoNode is marked as merged and there is * no issue. When set to a different value it is marked forever as unmerged * and the z-ordering becomes incorrect. Setting the CustomCompileStep flag * makes it marked as unmerged from the beginning and the z-ordering issue * never occurs. * * VideoOutput { * transform: [ * Rotation { * axis.x: 0; axis.y: 1; axis.z: 0 * angle: -20 * } * ] * } * * Ref.: https://bugs.launchpad.net/camera-app/+bug/1373607 */ setFlag(CustomCompileStep, true); connect(SharedSignal::instance(), &SharedSignal::setOrientation, this, &ShaderVideoMaterial::onSetOrientation); connect(SharedSignal::instance(), &SharedSignal::sinkReset, this, &ShaderVideoMaterial::onSinkReset); } QSGMaterialShader *ShaderVideoMaterial::createShader() const { if (!m_videoShader) { m_videoShader = new ShaderVideoShader(m_format.pixelFormat()); } return m_videoShader; } QSGMaterialType *ShaderVideoMaterial::type() const { static QSGMaterialType theType; return &theType; } void ShaderVideoMaterial::setCamControl(CameraControl *cc) { if (m_camControl != cc) { m_camControl = cc; } } CameraControl *ShaderVideoMaterial::cameraControl() const { return m_camControl; } void ShaderVideoMaterial::setTextureId(GLuint textureId) { m_textureId = textureId; } void ShaderVideoMaterial::setSurfaceTextureClient(SurfaceTextureClientHybris surface_texture_client) { m_surfaceTextureClient = surface_texture_client; } void ShaderVideoMaterial::setGLVideoSink(const std::shared_ptr& sink) { m_videoSink = sink; } const std::shared_ptr& ShaderVideoMaterial::glVideoSink() const { return m_videoSink; } void ShaderVideoMaterial::updateTexture() { if (!m_camControl && !m_textureId && !m_videoSink) { return; } if (m_camControl != NULL) { android_camera_update_preview_texture(m_camControl); android_camera_get_preview_texture_transformation(m_camControl, m_textureMatrix); } else if (m_videoSink && !m_readyToRender) { m_readyToRender = true; return; } else if (m_videoSink && m_readyToRender) { if (m_videoSink->swap_buffers()) { m_videoSink->transformation_matrix(static_cast(m_textureMatrix)); } } // See if the video needs rotation if (m_orientation == SharedSignal::Orientation::rotate90 || m_orientation == SharedSignal::Orientation::rotate180 || m_orientation == SharedSignal::Orientation::rotate270) { memcpy(m_textureMatrix, rotateAndFlip(m_textureMatrix, m_orientation).data(), sizeof(m_textureMatrix)); } else { undoAndroidYFlip(m_textureMatrix); } } void ShaderVideoMaterial::onSetOrientation(const SharedSignal::Orientation& orientation, const QSize &size) { m_orientation = orientation; m_frameSize = size; } // Makes sure that when a playing a video, if a new video is requested for playback during // playback of the first video using the same player session, that we don't try and call // m_videoSink->swap_buffers() until a new valid m_videoSink pointer is set. void ShaderVideoMaterial::onSinkReset() { qDebug() << Q_FUNC_INFO; // Make sure we free any locked graphics buffer if (m_videoSink && m_readyToRender) m_videoSink->swap_buffers(); m_videoSink.reset(); m_readyToRender = false; } // Takes a GLfloat texture matrix and desired orientation, and outputs a rotated and // horizontally flipped matrix QMatrix4x4 ShaderVideoMaterial::rotateAndFlip(GLfloat *m, const SharedSignal::Orientation &orientation) { QMatrix4x4 ret; if (m == NULL) return ret; /* TODO: Because of the column-to-row major format change, horizontal flips * are really vertical flips, and vice versa. An improvement that needs to happen * to more generically handle any container transformation matrix is to not convert * to row-major format. */ QMatrix4x4 qRowMajorTextureMatrix(m[0], m[4], m[8], m[12], m[1], m[5], m[9], m[13], m[2], m[6], m[10], m[14], m[3], m[7], m[11], m[15]); const QMatrix4x4 qFlipH (-1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); const QMatrix4x4 qFlipV ( 1, 0, 0, 0, 0, -1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1); switch (orientation) { case SharedSignal::Orientation::rotate90: { // FIXME: This matrix comes from the file container, but could not // get this actual matrix up from GStreamer to here, so hardcoded // for now. const QMatrix4x4 qRotate90 (0, 1, 0, 0, -1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); ret = qRowMajorTextureMatrix * qRotate90; // This must be done manually since OpenGLES 2.0 does not support doing the transpose // when uploading the matrix to the GPU. OpenGLES 3.0 supports this. ret = ret.transposed(); // Undo the Android mirroring. Since we already flipped height/width and rotated, // do this about the vertical axis. ret = ret * qFlipH; } break; case SharedSignal::Orientation::rotate180: { ret = qRowMajorTextureMatrix * qFlipH; } break; case SharedSignal::Orientation::rotate270: { // FIXME: This matrix comes from the file container, but could not // get this actual matrix up from GStreamer to here, so hardcoded // for now. const QMatrix4x4 qRotate270( 0, 1, 0, 0, -1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); ret = qRowMajorTextureMatrix * qRotate270; // This must be done manually since OpenGLES 2.0 does not support doing the transpose // when uploading the matrix to the GPU. OpenGLES 3.0 supports this. ret = ret.transposed(); // Undo the Android mirroring. Since we already flipped height/width and rotated, // do this about the horizontal axis. ret = ret * qFlipV; } break; case SharedSignal::Orientation::rotate0: // No-op, no rotation needed default: qDebug() << "Not rotating"; break; } return ret; } void ShaderVideoMaterial::undoAndroidYFlip(GLfloat matrix[]) { // The android matrix flips the y coordinate // The android matrix has it's texture coordinates not from 0..1 but in between there // The higher value is stored in m[13], the lower one is the higher one minus the height GLfloat height = -matrix[5]; // invert because of the flipping GLfloat offset = matrix[13] - height; matrix[5] = height; matrix[13] = offset; } /*! * \brief ShaderVideoMaterial::printGLMaxtrix * Prints an EGL matrix (GLfloat m[16]) to stdout. * This function stays here for convenience in case some more debugging is necessary for the android * transformation matrix. * \param matrix Matrix to be printed to std out */ void ShaderVideoMaterial::printGLMaxtrix(GLfloat matrix[]) { qDebug() << matrix[0] << matrix[4] << matrix[8] << matrix[12]; qDebug() << matrix[1] << matrix[5] << matrix[9] << matrix[13]; qDebug() << matrix[2] << matrix[6] << matrix[10] << matrix[14]; qDebug() << matrix[3] << matrix[7] << matrix[11] << matrix[15]; } /*! * \brief Prints a row-major matrix to stdout. * \param matrix Matrix to be printed to std out */ void ShaderVideoMaterial::printMaxtrix(float matrix[]) { qDebug() << matrix[0] << matrix[1] << matrix[2] << matrix[3]; qDebug() << matrix[4] << matrix[5] << matrix[6] << matrix[7]; qDebug() << matrix[8] << matrix[9] << matrix[10] << matrix[11]; qDebug() << matrix[12] << matrix[13] << matrix[14] << matrix[15]; } qtvideo-node-0.2.1+16.04.20151104/src/shadervideonode.h0000644000015300001610000000350512616337746022564 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #ifndef SHADERVIDEONODE_H #define SHADERVIDEONODE_H #include #include #include #include namespace core { namespace ubuntu { namespace media { namespace video { class Sink; } } } } class CameraControl; class ShaderVideoMaterial; class SnapshotGenerator; class ShaderVideoNode : public QObject, public QSGVideoNode { Q_OBJECT public: typedef void* GLConsumerWrapperHybris; ShaderVideoNode(const QVideoSurfaceFormat &format); ~ShaderVideoNode(); void preprocess(); QVideoFrame::PixelFormat pixelFormat() const; void setCurrentFrame(const QVideoFrame &frame, FrameFlags flags); QAbstractVideoBuffer::HandleType handleType() const; private Q_SLOTS: void onSetSnapshotSize(const QSize &size); void onTakeSnapshot(const CameraControl *control); private: void getGLTextureID(); void deleteTextureID(); QVideoSurfaceFormat m_format; ShaderVideoMaterial *m_material; GLuint m_textureId; std::shared_ptr m_videoSink; SnapshotGenerator *m_snapshotGenerator; }; Q_DECLARE_METATYPE(std::shared_ptr); #endif // SHADERVIDEONODE_H qtvideo-node-0.2.1+16.04.20151104/src/snapshotgenerator.cpp0000644000015300001610000001237712616337741023524 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #include "snapshotgenerator.h" #include #include #include #include #include SnapshotGenerator::SnapshotGenerator() : m_width(0), m_height(0), position_loc(0), v_matrix_loc(0), tex_coord_loc(0), sampler_loc(0), tex_matrix_loc(0) { } /** * @brief SnapshotGenerator::snapshot * @param textureId Texture to be stored as QImage * @return Image containing the content of the last texture */ QImage SnapshotGenerator::snapshot(GLuint textureId, const CameraControl *control) { Q_ASSERT(textureId > 0); Q_ASSERT(control != NULL); QGLFramebufferObject fbo(m_width, m_height); QPainter paint(&fbo); fbo.bind(); #ifdef __arm__ QOpenGLShaderProgram program; program.addShaderFromSourceCode(QOpenGLShader::Vertex, vertexShader()); program.addShaderFromSourceCode(QOpenGLShader::Fragment, fragmentShader()); program.link(); program.bind(); glViewport(0, 0, m_width, m_height); position_loc = program.attributeLocation("a_position"); v_matrix_loc = program.uniformLocation("v_matrix"); sampler_loc = program.uniformLocation("s_texture"); tex_coord_loc = program.attributeLocation("a_texCoord"); tex_matrix_loc = program.uniformLocation("m_texMatrix"); glTexParameteri(GL_TEXTURE_EXTERNAL_OES, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_EXTERNAL_OES, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_EXTERNAL_OES, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); glTexParameteri(GL_TEXTURE_EXTERNAL_OES, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); GLfloat vVertices[] = { 0.0f, 00.0f, 0.0f, // Position 0 0.0f, 1.0f, 0.0f, // Position 1 1.0f, 1.0f, 0.0f, // Position 2 1.0f, 00.0f, 0.0f, // Position 3 }; vVertices[4] = m_height; vVertices[6] = m_width; vVertices[7] = m_height; vVertices[9] = m_width; GLfloat tVertices[] = { 0.0f, 1.0f, // TexCoord 1 0.0f, 0.0f, // TexCoord 0 1.0f, 0.0f, // TexCoord 3 1.0f, 1.0f // TexCoord 2 }; GLushort indices[] = { 0, 1, 2, 0, 2, 3 }; program.enableAttributeArray(position_loc); program.setAttributeArray(position_loc, vVertices, 3); QMatrix4x4 pmvMatrix; pmvMatrix.ortho(QRect(0,0,m_width,m_height)); program.setUniformValue(v_matrix_loc, pmvMatrix); program.enableAttributeArray(tex_coord_loc); program.setAttributeArray(tex_coord_loc, tVertices, 2); program.enableAttributeArray(sampler_loc); program.setUniformValue(sampler_loc, 0); program.enableAttributeArray(tex_matrix_loc); GLfloat textureMatrix[16]; android_camera_get_preview_texture_transformation(const_cast(control), textureMatrix); QMatrix4x4 texMat(textureMatrix); texMat = texMat.transposed(); program.setUniformValue(tex_matrix_loc, texMat); glBindTexture(GL_TEXTURE_2D, textureId); glActiveTexture(GL_TEXTURE0); glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_SHORT, indices); #endif return fbo.toImage(); } void SnapshotGenerator::setSize(int width, int height) { m_width = width; m_height = height; } const char *SnapshotGenerator::vertexShader() const { return "#extension GL_OES_EGL_image_external : require \n" "attribute vec4 a_position; \n" "uniform highp mat4 v_matrix; \n" "attribute vec2 a_texCoord; \n" "uniform mat4 m_texMatrix; \n" "varying vec2 v_texCoord; \n" "void main() \n" "{ \n" " gl_Position = v_matrix * a_position; \n" " v_texCoord = (m_texMatrix * vec4(a_texCoord, 0.0, 1.0)).xy;\n" "} \n"; } const char *SnapshotGenerator::fragmentShader() const { return "#extension GL_OES_EGL_image_external : require \n" "precision mediump float; \n" "varying vec2 v_texCoord; \n" "uniform samplerExternalOES s_texture; \n" "void main() \n" "{ \n" " gl_FragColor = texture2D( s_texture, v_texCoord );\n" "} \n"; } qtvideo-node-0.2.1+16.04.20151104/src/private/0000755000015300001610000000000012616340301020674 5ustar pbuserpbgroup00000000000000qtvideo-node-0.2.1+16.04.20151104/src/private/qtmultimediaquickdefs_p.h0000644000015300001610000000420412616337746026005 0ustar pbuserpbgroup00000000000000/**************************************************************************** ** ** Copyright (C) 2015 The Qt Company Ltd. ** Contact: http://www.qt.io/licensing/ ** ** This file is part of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL21$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see http://www.qt.io/terms-conditions. For further ** information use the contact form at http://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 or version 3 as published by the Free ** Software Foundation and appearing in the file LICENSE.LGPLv21 and ** LICENSE.LGPLv3 included in the packaging of this file. Please review the ** following information to ensure the GNU Lesser General Public License ** requirements will be met: https://www.gnu.org/licenses/lgpl.html and ** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** As a special exception, The Qt Company gives you certain additional ** rights. These rights are described in The Qt Company LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ // // W A R N I N G // ------------- // // This file is not part of the Qt API. It exists purely as an // implementation detail. This header file may change from version to // version without notice, or even be removed. // // We mean it. // #ifndef QMULTIMEDIAQUICKDEFS_P_H #define QMULTIMEDIAQUICKDEFS_P_H #include #ifndef QT_STATIC # if defined(QT_BUILD_QTMM_QUICK_LIB) # define Q_MULTIMEDIAQUICK_EXPORT Q_DECL_EXPORT # else # define Q_MULTIMEDIAQUICK_EXPORT Q_DECL_IMPORT # endif #else # define Q_MULTIMEDIAQUICK_EXPORT #endif #endif // QMULTIMEDIAQUICKDEFS_P_H qtvideo-node-0.2.1+16.04.20151104/src/shadervideonodeplugin.h0000644000015300001610000000233112616337746023777 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #ifndef SHADERVIDEONODEPLUGIN_H #define SHADERVIDEONODEPLUGIN_H #include #include class ShaderVideoNodePlugin : public QObject, public QSGVideoNodeFactoryInterface { Q_OBJECT Q_INTERFACES(QSGVideoNodeFactoryInterface) Q_PLUGIN_METADATA(IID "org.qt-project.qt.sgvideonodefactory/5.2" FILE "shadervideonode.json") public: QList supportedPixelFormats(QAbstractVideoBuffer::HandleType handleType) const; QSGVideoNode *createNode(const QVideoSurfaceFormat &format); }; #endif // SHADERVIDEONODEPLUGIN_H qtvideo-node-0.2.1+16.04.20151104/src/shadervideoshader.cpp0000644000015300001610000000755112616337741023440 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #include "shadervideoshader.h" #include "shadervideomaterial.h" #include ShaderVideoShader::ShaderVideoShader(QVideoFrame::PixelFormat pixelFormat) : QSGMaterialShader(), m_pixelFormat(pixelFormat) { } void ShaderVideoShader::updateState(const RenderState &state, QSGMaterial *newMaterial, QSGMaterial *oldMaterial) { Q_UNUSED(oldMaterial); ShaderVideoMaterial *mat = dynamic_cast(newMaterial); QOpenGLFunctions *functions = QOpenGLContext::currentContext()->functions(); #if !defined(QT_OPENGL_ES_2) const GLenum textureTarget = GL_TEXTURE_2D; #else const GLenum textureTarget = GL_TEXTURE_EXTERNAL_OES; #endif functions->glBindTexture(textureTarget, mat->textureId()); functions->glTexParameteri(textureTarget, GL_TEXTURE_MAG_FILTER, GL_LINEAR); functions->glTexParameteri(textureTarget, GL_TEXTURE_MIN_FILTER, GL_LINEAR); functions->glTexParameteri(textureTarget, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); functions->glTexParameteri(textureTarget, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); program()->setUniformValue(m_id_texture, 0); functions->glUniformMatrix4fv(m_tex_matrix, 1, GL_FALSE, mat->m_textureMatrix); if (state.isOpacityDirty()) program()->setUniformValue(m_id_opacity, state.opacity()); if (state.isMatrixDirty()) program()->setUniformValue(m_id_matrix, state.combinedMatrix()); } char const *const *ShaderVideoShader::attributeNames() const { static const char *names[] = { "qt_VertexPosition", "qt_VertexTexCoord", 0 }; return names; } const char *ShaderVideoShader::vertexShader() const { const char *shader = "uniform highp mat4 qt_Matrix; \n" "attribute highp vec4 qt_VertexPosition; \n" "attribute highp vec2 qt_VertexTexCoord; \n" "varying highp vec2 qt_TexCoord; \n" "uniform mat4 s_tex_Matrix; \n" "void main() { \n" " qt_TexCoord = (s_tex_Matrix * vec4(qt_VertexTexCoord, 0.0, 1.0)).xy;\n" " gl_Position = qt_Matrix * qt_VertexPosition; \n" "}"; return shader; } const char *ShaderVideoShader::fragmentShader() const { static const char *shader = "#extension GL_OES_EGL_image_external : require \n" "uniform samplerExternalOES sTexture; \n" "uniform lowp float opacity; \n" "varying highp vec2 qt_TexCoord; \n" "void main() \n" "{ \n" " gl_FragColor = texture2D( sTexture, qt_TexCoord ) * vec4(opacity);\n" "} \n"; return shader; } void ShaderVideoShader::initialize() { m_id_matrix = program()->uniformLocation("qt_Matrix"); m_id_texture = program()->uniformLocation("sTexture"); m_id_opacity = program()->uniformLocation("opacity"); m_tex_matrix = program()->uniformLocation("s_tex_Matrix"); } qtvideo-node-0.2.1+16.04.20151104/src/src.pro0000644000015300001610000000153012616337741020550 0ustar pbuserpbgroup00000000000000TARGET = shadervideonode TEMPLATE = lib CONFIG += plugin c++11 QT += multimedia opengl quick-private quick include(../coverage.pri) PLUGIN_TYPE = video/videonode PLUGIN_EXTENDS = quick PLUGIN_CLASS_NAME = ShaderVideoNodePlugin target.path += $$[QT_INSTALL_PLUGINS]/$${PLUGIN_TYPE} INSTALLS = target INCLUDEPATH += /usr/include/hybris/camera /usr/include/hybris/media /usr/include/libqtubuntu-media-signals LIBS += -lhybris_ics -lcamera -lmedia -lqtubuntu-media-signals -lmedia-hub-client OTHER_FILES += shadervideonode.json HEADERS += \ shadervideonodeplugin.h \ shadervideomaterial.h \ shadervideoshader.h \ shadervideonode.h \ snapshotgenerator.h SOURCES += \ shadervideonodeplugin.cpp \ shadervideomaterial.cpp \ shadervideoshader.cpp \ shadervideonode.cpp \ snapshotgenerator.cpp \ qsgvideonode_p.cpp qtvideo-node-0.2.1+16.04.20151104/src/qsgvideonode_p.cpp0000644000015300001610000000766412616337746022774 0ustar pbuserpbgroup00000000000000/**************************************************************************** ** ** Copyright (C) 2015 The Qt Company Ltd. ** Contact: http://www.qt.io/licensing/ ** ** This file is part of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL21$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see http://www.qt.io/terms-conditions. For further ** information use the contact form at http://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 or version 3 as published by the Free ** Software Foundation and appearing in the file LICENSE.LGPLv21 and ** LICENSE.LGPLv3 included in the packaging of this file. Please review the ** following information to ensure the GNU Lesser General Public License ** requirements will be met: https://www.gnu.org/licenses/lgpl.html and ** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** As a special exception, The Qt Company gives you certain additional ** rights. These rights are described in The Qt Company LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "qsgvideonode_p.h" QT_BEGIN_NAMESPACE QSGVideoNode::QSGVideoNode() : m_orientation(-1) { setFlag(QSGNode::OwnsGeometry); } /* Helpers */ static inline void qSetGeom(QSGGeometry::TexturedPoint2D *v, const QPointF &p) { v->x = p.x(); v->y = p.y(); } static inline void qSetTex(QSGGeometry::TexturedPoint2D *v, const QPointF &p) { v->tx = p.x(); v->ty = p.y(); } /* Update the vertices and texture coordinates. Orientation must be in {0,90,180,270} */ void QSGVideoNode::setTexturedRectGeometry(const QRectF &rect, const QRectF &textureRect, int orientation) { if (rect == m_rect && textureRect == m_textureRect && orientation == m_orientation) return; m_rect = rect; m_textureRect = textureRect; m_orientation = orientation; QSGGeometry *g = geometry(); if (g == 0) g = new QSGGeometry(QSGGeometry::defaultAttributes_TexturedPoint2D(), 4); QSGGeometry::TexturedPoint2D *v = g->vertexDataAsTexturedPoint2D(); // Set geometry first qSetGeom(v + 0, rect.topLeft()); qSetGeom(v + 1, rect.bottomLeft()); qSetGeom(v + 2, rect.topRight()); qSetGeom(v + 3, rect.bottomRight()); // and then texture coordinates switch (orientation) { default: // tl, bl, tr, br qSetTex(v + 0, textureRect.topLeft()); qSetTex(v + 1, textureRect.bottomLeft()); qSetTex(v + 2, textureRect.topRight()); qSetTex(v + 3, textureRect.bottomRight()); break; case 90: // tr, tl, br, bl qSetTex(v + 0, textureRect.topRight()); qSetTex(v + 1, textureRect.topLeft()); qSetTex(v + 2, textureRect.bottomRight()); qSetTex(v + 3, textureRect.bottomLeft()); break; case 180: // br, tr, bl, tl qSetTex(v + 0, textureRect.bottomRight()); qSetTex(v + 1, textureRect.topRight()); qSetTex(v + 2, textureRect.bottomLeft()); qSetTex(v + 3, textureRect.topLeft()); break; case 270: // bl, br, tl, tr qSetTex(v + 0, textureRect.bottomLeft()); qSetTex(v + 1, textureRect.bottomRight()); qSetTex(v + 2, textureRect.topLeft()); qSetTex(v + 3, textureRect.topRight()); break; } if (!geometry()) setGeometry(g); markDirty(DirtyGeometry); } QT_END_NAMESPACE qtvideo-node-0.2.1+16.04.20151104/src/shadervideonode.cpp0000644000015300001610000001226412616337746023121 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #include "shadervideonode.h" #include "shadervideomaterial.h" #include "snapshotgenerator.h" #include #include #include /*! * \brief ShaderVideoNode::ShaderVideoNode * \param format */ ShaderVideoNode::ShaderVideoNode(const QVideoSurfaceFormat &format) : m_format(format), m_textureId(0) { QSGNode::setFlag(UsePreprocess, true); m_material = new ShaderVideoMaterial(format); setMaterial(m_material); m_snapshotGenerator = new SnapshotGenerator; connect(SharedSignal::instance(), SIGNAL(setSnapshotSize(const QSize&)), this, SLOT(onSetSnapshotSize(const QSize&))); connect(SharedSignal::instance(), SIGNAL(takeSnapshot(const CameraControl*)), this, SLOT(onTakeSnapshot(const CameraControl*))); } /*! * \brief ShaderVideoNode::~ShaderVideoNode */ ShaderVideoNode::~ShaderVideoNode() { deleteTextureID(); delete m_snapshotGenerator; } void ShaderVideoNode::preprocess() { m_material->updateTexture(); } /*! * \brief ShaderVideoNode::pixelFormat \reimp * \return */ QVideoFrame::PixelFormat ShaderVideoNode::pixelFormat() const { return m_format.pixelFormat(); } /*! * \brief ShaderVideoNode::setCurrentFrame draws the new frame. If the frame's * texture ID (stored in the hanlde) is empty, a new texture is created and send * back. * \param frame */ void ShaderVideoNode::setCurrentFrame(const QVideoFrame &frame, FrameFlags flags) { void *ci = 0; if (frame.availableMetaData().contains("CamControl")) { ci = frame.metaData("CamControl").value(); if (ci == 0) { qWarning() << "No valid camera control pointer in video frame"; return; } m_material->setCamControl((CameraControl*)ci); } else if (frame.availableMetaData().contains("GLVideoSink")) { auto sink = frame.metaData("GLVideoSink").value>(); qDebug() << "** Setting GLConsumer instance: " << sink.get(); m_material->setGLVideoSink(sink); if (not sink) { qWarning() << "No valid GL video sink instance in video frame"; return; } // Signal AalMediaPlayerService that glConsumer has been set Q_EMIT SharedSignal::instance()->glConsumerSet(); } if (frame.handle().toUInt() == 0) { // Client requests a new texture id if (m_textureId != 0) deleteTextureID(); getGLTextureID(); // Prevent drawing m_material->setCamControl(0); } else { // Draw the frame markDirty(QSGNode::DirtyMaterial); } } /*! * \brief ShaderVideoNode::HandleType \reimp * \return */ QAbstractVideoBuffer::HandleType ShaderVideoNode::handleType() const { return QAbstractVideoBuffer::GLTextureHandle; } /*! * \brief ShaderVideoNode::onSetSnapshotSize sets the target size for the snapshot * \param size */ void ShaderVideoNode::onSetSnapshotSize(const QSize &size) { Q_ASSERT(m_snapshotGenerator != NULL); m_snapshotGenerator->setSize(size.width(), size.height()); } /*! * \brief ShaderVideoNode::onTakeSnapshot creates an image of the current frame * and sends it back to the client (camera/mediaplayer) * \param control */ void ShaderVideoNode::onTakeSnapshot(const CameraControl *control) { Q_ASSERT(m_textureId > 0); Q_ASSERT(control != NULL); Q_ASSERT(m_snapshotGenerator != NULL); QImage snapshot = m_snapshotGenerator->snapshot(m_textureId, control); // Signal the QVideoRendererControl instance that a snapshot has been taken Q_EMIT SharedSignal::instance()->snapshotTaken(snapshot); } /*! * \brief ShaderVideoNode::getGLTextureID creates a new texture, and sends it * back to the client (camera/mediaplayer) */ void ShaderVideoNode::getGLTextureID() { // This is to avoid a segfault in shadervideonode.cpp when it tries to call // glGenTextures(), since the platform currently does not support real OpenGL // when running unit tests. #ifndef TST_NO_OPENGL glGenTextures(1, &m_textureId); #else m_textureId = 700001; #endif if (m_textureId == 0) { qWarning() << "Unable to get texture ID"; return; } m_material->setTextureId(m_textureId); Q_EMIT SharedSignal::instance()->textureCreated(static_cast(m_textureId)); } /*! * \brief ShaderVideoNode::deleteTextureID */ void ShaderVideoNode::deleteTextureID() { #ifndef TST_NO_OPENGL if (m_textureId) glDeleteTextures(1, &m_textureId); #endif m_textureId = 0; m_material->setTextureId(0); } qtvideo-node-0.2.1+16.04.20151104/src/shadervideonode.json0000644000015300001610000000004112616337741023271 0ustar pbuserpbgroup00000000000000{ "Keys": ["sgvideonodes"] } qtvideo-node-0.2.1+16.04.20151104/src/shadervideonodeplugin.cpp0000644000015300001610000000320012616337741024321 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #include "shadervideonodeplugin.h" #include "shadervideonode.h" #include QList ShaderVideoNodePlugin::supportedPixelFormats( QAbstractVideoBuffer::HandleType handleType) const { QList pixelFormats; if (handleType == QAbstractVideoBuffer::GLTextureHandle) { pixelFormats.append(QVideoFrame::Format_RGB32); pixelFormats.append(QVideoFrame::Format_ARGB32); pixelFormats.append(QVideoFrame::Format_BGR32); pixelFormats.append(QVideoFrame::Format_BGRA32); pixelFormats.append(QVideoFrame::Format_User); // handling a GL texture of the aal library for the camera } return pixelFormats; } QSGVideoNode *ShaderVideoNodePlugin::createNode(const QVideoSurfaceFormat &format) { qDebug() << Q_FUNC_INFO; if (supportedPixelFormats(format.handleType()).contains(format.pixelFormat())) return new ShaderVideoNode(format); return 0; } qtvideo-node-0.2.1+16.04.20151104/src/snapshotgenerator.h0000644000015300001610000000256212616337741023164 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #ifndef SNAPSHOTGENERATOR_H #define SNAPSHOTGENERATOR_H #include #include class CameraControl; class SnapshotGenerator { public: SnapshotGenerator(); QImage snapshot(GLuint textureId, const CameraControl *control); void setSize(int width, int height); private: const char *vertexShader() const; const char *fragmentShader() const; GLuint loadShader(GLenum shaderType, const char* pSource); GLuint createProgram(const char* pVertexSource, const char* pFragmentSource); int m_width; int m_height; GLint position_loc; GLint v_matrix_loc; GLint tex_coord_loc; GLint sampler_loc; GLint tex_matrix_loc; QImage m_snapshotImage; }; #endif // SNAPSHOTGENERATOR_H qtvideo-node-0.2.1+16.04.20151104/src/shadervideoshader.h0000644000015300001610000000262612616337741023103 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #ifndef SHADERVIDEOSHADER_H #define SHADERVIDEOSHADER_H #include #if (QT_VERSION < QT_VERSION_CHECK(5, 2, 0)) #include #else #include #endif #include class ShaderVideoShader : public QSGMaterialShader { public: ShaderVideoShader(QVideoFrame::PixelFormat pixelFormat); void updateState(const RenderState &state, QSGMaterial *newMaterial, QSGMaterial *oldMaterial); char const *const *attributeNames() const; int m_tex_matrix; protected: const char *vertexShader() const; const char *fragmentShader() const; void initialize(); int m_id_matrix; int m_id_texture; int m_id_opacity; QVideoFrame::PixelFormat m_pixelFormat; }; #endif // SHADERVIDEOSHADER_H qtvideo-node-0.2.1+16.04.20151104/src/shadervideomaterial.h0000644000015300001610000000534112616337741023430 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013-2014 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #ifndef SHADERVIDEOMATERIAL_H #define SHADERVIDEOMATERIAL_H #include #if (QT_VERSION < QT_VERSION_CHECK(5, 2, 0)) #include #else #include #endif #include #include #include #include #include #include namespace core { namespace ubuntu { namespace media { namespace video { class Sink; } } } } struct CameraControl; struct MediaPlayerWrapper; class ShaderVideoShader; class ShaderVideoMaterial : public QObject, public QSGMaterial { Q_OBJECT public: typedef void* SurfaceTextureClientHybris; typedef void* GLConsumerWrapperHybris; ShaderVideoMaterial(const QVideoSurfaceFormat &format); QSGMaterialShader *createShader() const; virtual QSGMaterialType *type() const; void setCamControl(CameraControl *cc); CameraControl *cameraControl() const; void setTextureId(GLuint textureId); GLuint textureId() const { return m_textureId; } void setSurfaceTextureClient(SurfaceTextureClientHybris surface_texture_client); void setGLVideoSink(const std::shared_ptr& sink); const std::shared_ptr& glVideoSink() const; void updateTexture(); GLfloat m_textureMatrix[16] {}; private Q_SLOTS: void onSetOrientation(const SharedSignal::Orientation& orientation, const QSize &size); void onSinkReset(); private: QMatrix4x4 rotateAndFlip(GLfloat *m, const SharedSignal::Orientation &orientation); void undoAndroidYFlip(GLfloat matrix[]); void printGLMaxtrix(GLfloat matrix[]); void printMaxtrix(float matrix[]); QVideoSurfaceFormat m_format; CameraControl *m_camControl; GLuint m_textureId; SurfaceTextureClientHybris m_surfaceTextureClient; std::shared_ptr m_videoSink; bool m_readyToRender; static ShaderVideoShader *m_videoShader; // the shader is cached in the Qt scene graph SharedSignal::Orientation m_orientation; QSize m_frameSize; }; #endif // SHADERVIDEOMATERIAL_H qtvideo-node-0.2.1+16.04.20151104/coverage.pri0000644000015300001610000000355512616337741020770 0ustar pbuserpbgroup00000000000000# Coverage CONFIG(coverage) { OBJECTS_DIR = MOC_DIR = TOP_SRC_DIR = $$PWD LIBS += -lgcov QMAKE_CXXFLAGS += --coverage QMAKE_LDFLAGS += --coverage QMAKE_EXTRA_TARGETS += coverage cov QMAKE_EXTRA_TARGETS += clean-gcno clean-gcda coverage-html \ generate-coverage-html clean-coverage-html coverage-gcovr \ generate-gcovr generate-coverage-gcovr clean-coverage-gcovr clean-gcno.commands = \ "@echo Removing old coverage instrumentation"; \ "find -name '*.gcno' -print | xargs -r rm" clean-gcda.commands = \ "@echo Removing old coverage results"; \ "find -name '*.gcda' -print | xargs -r rm" coverage-html.depends = clean-gcda check generate-coverage-html generate-coverage-html.commands = \ "@echo Collecting coverage data"; \ "lcov --directory $${TOP_SRC_DIR} --capture --output-file coverage.info --no-checksum --compat-libtool"; \ "lcov --extract coverage.info \"*/src/*.cpp\" -o coverage.info"; \ "lcov --remove coverage.info \"moc_*.cpp\" -o coverage.info"; \ "LANG=C genhtml --prefix $${TOP_SRC_DIR} --output-directory coverage-html --title \"Code Coverage\" --legend --show-details coverage.info" clean-coverage-html.depends = clean-gcda clean-coverage-html.commands = \ "lcov --directory $${TOP_SRC_DIR} -z"; \ "rm -rf coverage.info coverage-html" coverage-gcovr.depends = clean-gcda check generate-coverage-gcovr generate-coverage-gcovr.commands = \ "@echo Generating coverage GCOVR report"; \ "gcovr -x -r $${TOP_SRC_DIR} -o $${TOP_SRC_DIR}/coverage.xml -e \".*/moc_.*\" -e \"tests/.*\" -e \".*\\.h\"" clean-coverage-gcovr.depends = clean-gcda clean-coverage-gcovr.commands = \ "rm -rf $${TOP_SRC_DIR}/coverage.xml" QMAKE_CLEAN += *.gcda *.gcno coverage.info coverage.xml } qtvideo-node-0.2.1+16.04.20151104/videonode.pro0000644000015300001610000000012012616337741021140 0ustar pbuserpbgroup00000000000000TEMPLATE = subdirs include(coverage.pri) SUBDIRS += \ src \ unittests qtvideo-node-0.2.1+16.04.20151104/COPYING0000644000015300001610000001674312616337741017517 0ustar pbuserpbgroup00000000000000 GNU LESSER GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. This version of the GNU Lesser General Public License incorporates the terms and conditions of version 3 of the GNU General Public License, supplemented by the additional permissions listed below. 0. Additional Definitions. As used herein, "this License" refers to version 3 of the GNU Lesser General Public License, and the "GNU GPL" refers to version 3 of the GNU General Public License. "The Library" refers to a covered work governed by this License, other than an Application or a Combined Work as defined below. An "Application" is any work that makes use of an interface provided by the Library, but which is not otherwise based on the Library. Defining a subclass of a class defined by the Library is deemed a mode of using an interface provided by the Library. A "Combined Work" is a work produced by combining or linking an Application with the Library. The particular version of the Library with which the Combined Work was made is also called the "Linked Version". The "Minimal Corresponding Source" for a Combined Work means the Corresponding Source for the Combined Work, excluding any source code for portions of the Combined Work that, considered in isolation, are based on the Application, and not on the Linked Version. The "Corresponding Application Code" for a Combined Work means the object code and/or source code for the Application, including any data and utility programs needed for reproducing the Combined Work from the Application, but excluding the System Libraries of the Combined Work. 1. Exception to Section 3 of the GNU GPL. You may convey a covered work under sections 3 and 4 of this License without being bound by section 3 of the GNU GPL. 2. Conveying Modified Versions. If you modify a copy of the Library, and, in your modifications, a facility refers to a function or data to be supplied by an Application that uses the facility (other than as an argument passed when the facility is invoked), then you may convey a copy of the modified version: a) under this License, provided that you make a good faith effort to ensure that, in the event an Application does not supply the function or data, the facility still operates, and performs whatever part of its purpose remains meaningful, or b) under the GNU GPL, with none of the additional permissions of this License applicable to that copy. 3. Object Code Incorporating Material from Library Header Files. The object code form of an Application may incorporate material from a header file that is part of the Library. You may convey such object code under terms of your choice, provided that, if the incorporated material is not limited to numerical parameters, data structure layouts and accessors, or small macros, inline functions and templates (ten or fewer lines in length), you do both of the following: a) Give prominent notice with each copy of the object code that the Library is used in it and that the Library and its use are covered by this License. b) Accompany the object code with a copy of the GNU GPL and this license document. 4. Combined Works. You may convey a Combined Work under terms of your choice that, taken together, effectively do not restrict modification of the portions of the Library contained in the Combined Work and reverse engineering for debugging such modifications, if you also do each of the following: a) Give prominent notice with each copy of the Combined Work that the Library is used in it and that the Library and its use are covered by this License. b) Accompany the Combined Work with a copy of the GNU GPL and this license document. c) For a Combined Work that displays copyright notices during execution, include the copyright notice for the Library among these notices, as well as a reference directing the user to the copies of the GNU GPL and this license document. d) Do one of the following: 0) Convey the Minimal Corresponding Source under the terms of this License, and the Corresponding Application Code in a form suitable for, and under terms that permit, the user to recombine or relink the Application with a modified version of the Linked Version to produce a modified Combined Work, in the manner specified by section 6 of the GNU GPL for conveying Corresponding Source. 1) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (a) uses at run time a copy of the Library already present on the user's computer system, and (b) will operate properly with a modified version of the Library that is interface-compatible with the Linked Version. e) Provide Installation Information, but only if you would otherwise be required to provide such information under section 6 of the GNU GPL, and only to the extent that such information is necessary to install and execute a modified version of the Combined Work produced by recombining or relinking the Application with a modified version of the Linked Version. (If you use option 4d0, the Installation Information must accompany the Minimal Corresponding Source and Corresponding Application Code. If you use option 4d1, you must provide the Installation Information in the manner specified by section 6 of the GNU GPL for conveying Corresponding Source.) 5. Combined Libraries. You may place library facilities that are a work based on the Library side by side in a single library together with other library facilities that are not Applications and are not covered by this License, and convey such a combined library under terms of your choice, if you do both of the following: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities, conveyed under the terms of this License. b) Give prominent notice with the combined library that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 6. Revised Versions of the GNU Lesser General Public License. The Free Software Foundation may publish revised and/or new versions of the GNU Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library as you received it specifies that a certain numbered version of the GNU Lesser General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that published version or of any later version published by the Free Software Foundation. If the Library as you received it does not specify a version number of the GNU Lesser General Public License, you may choose any version of the GNU Lesser General Public License ever published by the Free Software Foundation. If the Library as you received it specifies that a proxy can decide whether future versions of the GNU Lesser General Public License shall apply, that proxy's public statement of acceptance of any version is permanent authorization for you to choose that version for the Library. qtvideo-node-0.2.1+16.04.20151104/unittests/0000755000015300001610000000000012616340301020475 5ustar pbuserpbgroup00000000000000qtvideo-node-0.2.1+16.04.20151104/unittests/unittests.pro0000644000015300001610000000014712616337741023301 0ustar pbuserpbgroup00000000000000TEMPLATE = subdirs SUBDIRS += shadervideonode \ # tst_videooutput # disabled as it fails on jenkins qtvideo-node-0.2.1+16.04.20151104/unittests/tst_videooutput/0000755000015300001610000000000012616340301023756 5ustar pbuserpbgroup00000000000000qtvideo-node-0.2.1+16.04.20151104/unittests/tst_videooutput/tst_videooutput.qml0000644000015300001610000000342412616337741027773 0ustar pbuserpbgroup00000000000000/* * Copyright 2015 Canonical Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ import QtQuick 2.2 import QtMultimedia 5.0 import QtTest 1.1 TestCase { id: root name: "VideoOutput" when: windowShown visible: true width: 400 height: 400 function test_z_ordering_after_rotation() { player.play(); player.seek(1000); rotation.angle = -2; waitForRendering(videoOutput); var image = grabImage(root); var actualColor = String(image.pixel(20, 20)); var expectedColor = String(middleRectangle.color); compare(actualColor, expectedColor); } VideoOutput { id: videoOutput anchors.fill: parent transform: [ Rotation { id: rotation axis.x: 0; axis.y: 1; axis.z: 0 angle: 0 } ] fillMode: VideoOutput.Stretch source: MediaPlayer { id: player source: "small.mp4" } } Rectangle { id: middleRectangle anchors.fill: parent color: "green" } Rectangle { id: topRectangle anchors.fill: parent anchors.leftMargin: 50 color: "red" } } qtvideo-node-0.2.1+16.04.20151104/unittests/tst_videooutput/small.mp40000644000015300001610000135521712616337741025544 0ustar pbuserpbgroup00000000000000ftypmp42mp42isomavc1freemdat EH, #x264 - core 79 - H.264/MPEG-4 AVC codec - Copyleft 2003-2009 - http://www.videolan.org/x264.html - options: cabac=0 ref=2 deblock=1:0:0 analyse=0x1:0x111 me=umh subme=6 psy=1 psy_rd=1.0:0.0 mixed_ref=1 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 chroma_qp_offset=-2 threads=6 nr=0 decimate=1 mbaff=0 constrained_intra=0 bframes=0 wpredp=0 keyint=300 keyint_min=30 scenecut=40 rc_lookahead=40 rc=crf mbtree=1 crf=20.0 qcomp=0.60 qpmin=10 qpmax=51 qpstep=4 ip_ratio=1.40 aq=1:1.00Te "!@F8E?y~Q) 2Yx Xx*z*rWo_QK=ѥGŠX||PwRt1i'D2>)Iz5||FHկocT D~?v@ ##a޿Cȿ e5pN8NTxtV2(l: UOx(kރnYr; 1Y牕?ä(82܄7eDQ"aGk2 1p Y|,-xG1.3jh?Z{"v@a@pBKp׃'p(4AtP`B@]^SvYLHB$pQ Xe;F`ɅaK*Zӿ'M;`\ONI6"{D`BgNχ] P7P[Sk|?o>'#N~uJޟ9"S/'$\kj~{$5In)c. 3Aë`Qf*dL7d5mQ?T@9 hllI?C` d -⃎ylZ$%~zƅOGMC "pTz}C (XIdTE Ɩ ҠਈiKm$F:P1I?ְo ka`EF}Vʙʕo}24\,jAZY `ee0N`pC+چQ=MV\:YN`P/-%A:0VbϤW tA ^ʙX #'-ڻ!'XᶶAD˻7u|wvfy)CK0mB,~Rx0(AwpE*3g-Mm}bY-j]WwɆ՛SU~VͶ!<4|hq*MQ/әJtϱ߃zʙAUcomTzFq83."RC VB  slP` CQ\x$W:{(^P-?ϧѤ׉ّ0:1FF̵vE?#NωVN%XQ[:kpu4~1Y,'0N`*/l o@V9 gE5Ţ$%#r/uqj(Eə~8:,12Oi\i2, 3 2[d=JTPo]SWQrVr285TS 620OiRjW?lRf0  |LHpu% Fp¦'q˟"9vT2[xaCt",WI94LN]?TiUQ^BIV$/@$`|!fɞM֟u<ѺO8N/SmⲤJ؋w?i^UrرRq=E*O!=fuw`P D˳l=bu5*vT$T FZ * X~zd]' HPLRF E64+g<ᬿK˸%EQ8(.rZt5^?qΈt)=KuUNN5Ϋœ*^U/:$JK'<i>ޚr&!' dT^E: {*TV7կUOoe(xWu *0 QO֪u Ϊ*)N/4vqObu-D8E8^^?D` 5 f5=2*ܕc/EK Ž7wkQquqQĵag'30,8I }GXls]&#0[~}/$"H)@yXR:eXzݐ˦F!aY{x28ڃ{'ÜqE"|7ve$C*+b7rBwȬOݗ"rދĬ:☕_JӓHJjl]?/㟳\<=H ,&?ܖB.{ 8 ^9s4FW74 *"4hf1߁A c8w7ԅѠ? QDK\ n),ͩ!XѢmطbqv11p'v4C6Q5`I gqm-xc0NR1}Gw5P`ttJXE# p3+Mw|.; EB9hcd1(H߱>A񱾰 -s*|(Aj pv=r ZBD%߫\3Uc﹂!gCG#w\#MFA5` 6KX ٤^[3F}}Q6ǩ]t2BNX=ia!PgvU :8(+ P@G@Izl Nt+ip% K?3u~L@=v灃@xni@9  IQ# |\C耕8X`p*nd K{H<mxGDž2{ >tDq8|䤊\Ē\NF׉wDstt$Uyqq*x|_\Oyϓ?3t;Nf p2HK!𿧴rcWIcA%R~lr*@ WveLpc`00$ ܩ|wYFDDZˁ槿ުI'ª|fQ`m)syWg$Su -`2C5_ׂ>H`E3  [+)&݂oU(n s/}H>(iFJ&LhAyT7[EMeW {,+C|LnZ]>7c o~*UDi^*L讀343RgvRёst>  azz*`php=;jɠ`!]( ԝ* DkX@B|O`I?߫=A#33UKy~_B`vBBFpRy$o^Z-ETgJ~tmg!a/6[93>Zwq(7o XO?[f>5 *YN ԯo@ NjV Cjy*VsH>-,W*i" AS(h:@ k`T](}qewe8^g6+sI=?2Ew0A5 c =I|B 0@`4 Y8trYQo9x*. T#ob qe] [Wo6^a$[™~k@q Pװ|< B{!Q2˗B,[@vF+6nj]ihY*EdNق|/)vmdP.Cn(j0)MOR,|m Y \^4{Qg_WQi'FGr+TQCwO\C`::AJH ?]i"jğ,*}S_ I8xQREJM@ ?=Mnp{8 `$z@IY s[< rXj"(?qKKQu'³ fV%; Ap҂HF ̼eƩD&? Ga"o"5~pV}>j eyS{YnP/E$ˎn!h̒,$& 8@D< 2BzM@,TbJ״xaQRӦ4^vZ,9+mNX0 ,ACa7#%H!ϼ.|7cUy)56{Cw"xv_"Z@g@s5_ B_A 2JYg}(U_"Y $l<́|7hxtiîǕ5ݧ3FA,xҿ!ނa9du~Z 0%R+z2?yL$:~p_ΐp| ?NZ6 ~P$,t4/j#BHǖUVP-dbǯROsq!%n <o˥#(< Ó<|?2?'OU_iRì_@]|V5U1# ~9q\ ^ llP@`= p K,Z,cp`a WlP QUu6rHFAe`Hw){kNM&G~ YeP 3Q}y圯T+_q7V5@ q !}ţ#W| +5Sk04K;Ɓfw'L"m^1Ǐ{B J:{J#k 6yT&ƨGdlFBTP`\7 ,]l8LT$ fk&<ܒަ$_r gafhpXT;3l0Rs 8u oW}]&70Lh- %<@ #0 Ac%rWd%_Q+*D'%W<QF*Ɖ>32MuܸHyH[lvul5DKeFbGF2$vj0HcM5&?A [pS)FF늈ꪩk ̯qn@{y!Md,oW!VQ4EՠB!EZ ڀ*Fch@1@O<:+3p~x2zv6~MR,(jw(L3 1NC_)Pd&R˅EvR n]4 m!p> ? &B &ѳ#B9Sp:6dca(}?;*@ʶtd@^8;BfXc|޺a&PdBhŞ1W1+J"X TVREbqZ@RS6 %8\UGwyoGqss֫U"ΟoaSg-_AaNn0ED5FGltV}&A|"'yjizcJ"_{(A -ܯEKў#6xowpz5"(Pzf,gIƙ *`*- i8ly:h%h$k7\%8'2fk<ă^5<de`dK#ZY3Q, = s7 t _w="Q]ũRp2> ; /j|]ni#bh*rY](MH3w#.b_6ɾkau_r(&Ok`N榍:gp- Xa,B SH{S`L 9U>KS0/yOV/k;7ᤊ 7 s1/MȀCIWdD$da/2giWD8NF~_=Do)H;ߧS5N] W::E-9XH}דlyI#\} sk𿶋(ȑ8޸3E.D̘g;R %)%CtOO ־KX rk`_ ("Dv2 ߑּ; 3fcw8yi4A(tJ _Vv\؟.7Ot&ChA쵴!bna^~hزZcT [pzQ؃ 80 a=WuӬ')p?8=8(]b 2A ~0ޏn|xH~+ gwڹRy`En81jJv5ۙhG"C >;ǯ(a+hY͐3*f߱EOlS6C!~]<Լ> ֩^_}@kL \ӂS\Sb>NϾ0C#3 5^᤿\B}Z|Ts& ((xH P5!al4xc 4ǒ'i 4k_nM@ NUihtJE>t8`E^ ~wld477"0 b)XΫc(]( X-ѢiwdLX8?8a`$ Cm;[6S$. ^ĆK|P7D~vbS#!-ȴ B]x `CNpT2 !BqChN4l]&\* ["@s! M3%6^:TK銔"@ " `#M>vvcMsa&) ?HWT~b#ޑF9(u-'}B6 ]zA>5̓"_6Ub9]&޼̂c?j -rFtl4c=9 h/0u2? @H@H3( Ea3)ED0c#%~R0 6b.a_wB1(μ`뇊b  c%#V*ynO$Θ,{^)*+WI & 9ͫ7" `Qlj/n uAx;E]]gCqn1fDy۩|DQj/;RliNeaM4ڙAV2VLfTW#Zl*h8Ӈ 'l<~MU6'$)g} `@6|u?0{, W D":ut5䶅hѣ1o/PZ^ޯlIoR10rܨ;Wnx*k +A;ۋn[/3 ml  H SǀWL# `$zob3Vޖ!oU@ykbҪ!'pY ˃j&G_U<ѡ o✲ӉiYCt4=1`1K۬c1soqpQJ=v3K3Dn?fàA؍j@bM%PĸF, v@ 9*H `/F, (G_|:t>\x {d cF ;ޡ- y9JE]pPv0A*G88x5`JSVz|${TF!zD <!Y3`84]3H 0>&tg'|G$[Q; L nYcI\P̄oP_pkpL}aF ~ d H;N)ap 9X`S )y &"lCBWW}ߵGbI?*J)DKM@愅AxN#d7NiGM+2ĽZe,E P Œ@ |r)Z2_o NbΝ jwmv_Лo(v6+kFC4H]ۤ3аgh~A ,)І!)DZtn"ԬK>_g>Uxcoؚ%X#h"xN  4]0[}&Wh&+Y:a-[W/Y3QU[5g?%g5KjŽP9=ٰ򅀻ߊ Bc|ШCNW 'lcW7N舯Icb4Gɹ\nU MF~1SО* (#Y JS)1;A8ޙ+~TB|s=k5wt|8⶝þ:Oi߼R )?5;W+~fjh 2B;f;S%TR"JaA݄:s\g5|,z?ޗ QD;R/5Rʦ:%b\W8Ir`sOv'j.˾<`$܁B!]EU+!$/p1lx ֿ$)O\*4`c0KN$(8 *Qb& Dgxt% &g͆cz"0^VGH,:n7_;zX4[@j M fCǻ$YxPpHC 2!I)j7A~ 2Hx.(N|yT6=@~ FaqZUSbYQ9 E]<6p)CwD-$ggi uB6 +}Q/=w4y̍% 4ȉݰ덁9:FA%}('{E%-iW{8j@Q6H (Ǧ# ӟ2$0>D3P 2 ѿH,۷~&10\ aucRخ/||EU)8Gh74{̂CDPkHcVv-! +e #_T X=B0C`XbO& k8nBЇ*f9 < *)) &/뜬4<^M}:`S('r H(M* LGXEA@%!t|nQD@9)Pi4DoV@Q%q2/<&ϰ7 G%l &?!ɟlB)nN7'L H\`Cd%f\Yi';. o=gLw) B 0Il/ ׺I"B*uɎe11n:ZN.,}. a v 2xp|4(YbʚaV51vF6v]MuΏj@{5D%)_4nhZBIqM& \١b́ou( @@0.n߫ᡕ\a0֨Pcp^%oHɥ"َ8]-Q&߻],6ׇGH AgDl`拌I@+H*XRA/P6,p3 m2u2z!o0Rd?0[Go@r1`Xecjև3VgsaTKTk;@J1[r|r᯴iގ c_%I 7&` A3:E60]FU ?Iv@I0ZLb "i&t51YO0 :2H* />A!`Hu;AEt:rH0 PVZ&:kϿr5G_m +p,|$yIv!ʯ#ٍ öT>&`7'g3GBH-I=ߴ2\.ا"vl.5s Trͩ{.%R,@az"Ssōs?7i<0Veb`ZD-cQhWfab ~<k87[_pݹnD(@B7ID,~X A .U(? jLA!&06'V MP~pD%8oܰe r".h5/0x1`+UנDϡ>[Qa wo V̒M$1xt݄X~ˬD`G)\1-]aC ./5>!EZx6;w;21z9R#Q!9K\N弿EUꫬҺbwnPc=?J*_\@0 9x((3pt3=9GV ɑA{/r0S`L_ P]cad ¢Up5y1}Rh C1֤u몮,fqxY/Jb?#.UXW f^>$HT_ptmV6\BY)J䨩F :/3Y@oHaI )H([- ) S?#@tA ` @N'G8ײ 0X}~9B?Ѭ>1(g ʰ}g!];o2տH+O>a:tG0LlԩV5** c0``X;ʐ昽`4~6\F`7 q^+~썕E0dt'\dn8{!m0~DΟu@07{a H[d{U& EG8 ZdفU>L-Դcx|B? ;VTz'+>,)j (>Hk];;_Ҁx4 *4=%!ذ>V1)_N>a(d 0߀C&QyȳѦd2 ŒorQvr5I*mHrmΖU󂗐A2;Hr{`h?sC&=O'(,n'Aː&+o*( `$pAI+/;r508.@q1fiSIPO]s&Pa^(8}Mu&K}8R x *&-ރ,= /x9X`0Wd'oYzy8 Ŋ/\U>Pl4 !4o 6YZ=#1YDKMLCW+Q8Sk 81u>^_Eupar2b[m,7ݷ8wt.@ӈ_`\p90[g@7e1O?GLhN"pĢ"Av.8#+ZWúaw1/b Ef VDuQjkPaq ã{4%@ix҃ni~Y/ͪ־(jЪ߷ۦhEAIKS+}~?ZꪹJ3^ToԴ1a8y^[j`Gu ѿ ̽Q=Mdd`|Z@4DŽS? }%m#p`]F'wj>ƚw!_R. ejT,4HqA8Eʵ^e YCa+]ORw04|a少N=P l2IDt dWģS *\WiڳePRώ^p}>@!);O 1)O& )q[V*DAQCBT8.~V10 > ]t}uQ! gŪP0c3/6cc&0 ֽ1z$l(cl΁&`ůگN]:5Y4/5&d-6 /iT(VNCU0 S07낸ԪA sbn͜uAPew\,Hj [yL:Cx2A2D7C0`$d O&`9"]1N|h3vvŠ6Ul1Q @%Zr @ .}nlEUsF0xC1)Goy`JЈUz%5wxD&0`FAok֏g@b.f+Ч_]nr(abՅl灇HJ7oRR9]9)^MSw* r_jpaA@·Jt2c倱 6^=TC  8oE7F\yڄ云CXz*,@3iP+ SۃUr/ Ö`hD[±#b5cG̙xN*)wmH8zQP}J݂%7L2X0'^S'b.P>;G'r}qf=[<܍B7q4cdYQ(7-XAaGG ;O dU'U$5+){8aЊ_re^¯=9L.CK)|k*rl;bdLq$DH !zFɀ'(#=JnIX}$À56q"~ǘ` 1@1} X65P,x3`h.q8 <;PBV+tX19 (a) EB̜U6E,$S,(~ʉO J5޷>8F2 bn`O9a=AB_b]! %?eD 4wu؆s@V+0ϥnA7y b?:% +wH\GSw;|UK?}Ʋ]`X4 C_|{y9/ 3h,a=9,YgRֵj\u&C8.(@2Hh:gnC|WI. >2 :DVY§17bHj ks /Y, <꾥x[8?NWƨ\eƽuњ#MA`?^q1ؔՕRx|Z E*]YH-=MdFw{r>v? Yw^%':STH,"@R@G}pWєǑAV Pw-`аBpt{byF7OQe(i!@N5%L>@Q3d (ispa\J嗍G`tjH[z3Q(vit>șbAi.+] (t 8r0wYg'` K|1 =Ϳ>ot |CV~]Pf 3:rDŽ'GJ+UdwvH*:_yO R (q@aLZq1M=ak Δ.[r 9m8 eMt$dkQE y @^K_t 0@ti)T4˼q,0vr0,I _<<8KѣQ,a KBAmm3l@#J0 #x( %N@) z!埖 +7,^F@]2@(N85Sa0 oNbP7 E}N"܄NOk${\,ʰ[P~tK[fe|ʶSm0&!@,AS4z$8Ʊs%^ьZ>7wi5=b \(Rw?(}HZwEY(Ȓ텟u[owà=  ~K~Ђl(2|h AE~paC(+8ڂy(2ЎQtтvb7hyvs Kn~ {]&؅s 8z:\W&yh{f>r{$`wP14<^|4uK>20(pGK~ 8Y$+rWa }q8GqK/u0}.-!Bw-?r>#~ 9yd( U금qòQɃ#E'S4`pH]s}6@z< !bM [RYqZIm@1 t.bU=gvS\-X;|"&`g<g+HDA'vKӦxl Cc cWuѠ֢FL( j1t{J^B~Aq hv1Ira`0BA$o緃"Q+b]Z.]J'fGVWU))V :iHT7Oߌ@Uxa:FA}?©ƕ@A|e?-q4ʖ+]А!9@4J>?Մ? P6>3XTE' a5؏+ʰy훨qЖf<cQ` zo3qo ?T5+e[.Iyj_"8;+ ƿ99t <[w:BD!q2XOy-YW%U57]D)cD/OrOP֌q_0:KaU)zmd"#)M3p58j+V[XeNr_2`&GD 0؇S06-@r7,f֋&$A ,?hT& Ixa+eJv'6lA6( =%ua0jt8! `BmL U8Z H('~/'m10W]w)X"@  bgڮ,;$\&+c7s?bŦhyrFdh2SdA{=Og⼛m7hJ%@U8Kp'DY:qpXyzOCH?n5P*Ò=GYC%שε$+`U(v }{`;$0PNvuX(O_j%Qi"S&x ~KEaE`TyMT:]7d1D_l`dQaQWɝ ! N hAt \pydL+ e UxWUa;ڥAWYlq \$; D T^BdD 0pĸ` `jMcjU+.5}C`$L(Wmea\(񁂯}FD䘀Q1`u0 3:4w$+ĸ^ɥXU+DL&PXhK1<*+âsc˛[5^@ƪ1P߆*{WZWaE5_,fN~)|;7+aSwk >fsAԯdt޼lWE;urz]^gW>B"?YWeȨ|#˷}5Hf&zfzl Guc\"^iq+.+WuXolWk{n͎ E/B~ѫW9W#dWaE)9cOawz_Ji:)f<_Z;ybV~&QDL^ͩ]kcTw>1cۇ(DiN\ ;Y]v#_t—SY`Rr MGy/(AP(u0ȶl [/vrK/SeQGdSG'T4.Hftl5F2TvXk̯|J;Qإ{^-+Zߋ6ri`ߋ5tj5|u Di/0,.AE\ iǴ"n=U*W$/ YQmd ^gyM[Gk؎K8CpQN'+͗V<τ`̫E~ ~b*?V^k0.#|TG4׏׫'^/}zs7 ~欞WEy~wu)!Y+XF.h'# '&e4J6<Я:nlja7+)%AfgaZcf I_>läo{ 223>#S&憒E,? >?_Z^%tֵ} *'zw+ 4,-_uOĵY4CR/MDZ>M3ȼ`-bOJXZ]k/w0qXp9DD;(ׇ46 !w?ÊԵ>ʅ[!fu뱜@bdRK`ݺ}%vi- mj\;ٌ?+IX"} 0?'Uo"݂r|trt [hƀӪA s:zMicvsf/{䡭6jzm:z †7:\t\hҥ}}jq*S˻yFc#WŗP%\N>俋bt @n+  /Qϖϳ=吏ZZ[UAGg!r w16S'#>Rq.TVɢ+= \^/nU ޑgqv > ǻ/.|iENt]|#G Iuj)zWDq|濗w!z4&-D@c*A}|b_W1r|"ԡeܐdۗ ʿ>:c\'zꞠ/yoR^NZoH?f]=-z*[ҵEVU|!c< \/Ĝ2]u75܌i٤W6AiY\Iw} |Tīe/~6mW/]*?uw[DwRO)Tu8X Ƙ'ج;׶կZ׋ .H GRc~ɗEJQDc&5ժAJw+:?rZW}WYc1^_l_ ?wZ/]P{> 9̔_u^/}uczaYsw'kԡagY=nga`,~&k荛 ZJ&_)29T-eâ(zw%Jrzj\O딤-z wPӋwRDn_ڥDO.;|v^""wT󾥯VU~%bbDWu՘K՗LbzXKsk~כUWV #ߡ3@xzu tվn+to;.I XW*U}"]բ?hN]!nW^D\TaoO]Je71k,hgA/< MُLf֩ :ivk-O]2UӍ^p b'Tf1OG+gEkN)\lq)az_XWx|rTzV>]}xqe5jv;|xcRze^*f0~O@pڽؔnc/kkVWZ-}-]W~^ocXxֻ[Ԋ [lG$ЩQG7@۱l-H4c#HŠDJS۸|wnZR$3QY3GKt1iVըBm`!.QhؗA }B8t:wgΘpjUNToK~`v\dxjiIV %[KJk -z?IҭSV՟UKb`[3y{Miڷ{)TȤOUHUVkVlt▭rUX؏n_hڳ[}['}7׺Gq34{OFt3Hn7xw1ۿj;/݌Jzj]X߫`uvr-s;ʽZ8 B`Wþ0es;2ٍluN FҺ\!էenlQma>) y{ttT>qFC8~<ŏ !WS))CJ*ֱ_ʬM~ʬsjjaj>a鍠i96Emv2feE2cw`i"|p}lch.˹_~qU}WիW* RA>~]t;b)ˏq&q&|̒{Z߅{qooJ2ԃ )WVR q)/A/*1)I]{#ջja~!1Pi}bD5r9'ꄱ5Z"ݫ_WDRҮ0;;]w"_$KJ0]yvw(!w}I8@1u_֒mjֻY}OXDIVoWr'I 7H)?>?⽛(/AY'vճŶK'֌4:yiNl`px. 鰻Þ\WY7fwQ0_rB}._#5 Eocy6c&ykTA1#&6617>4B*| qthVV߼~RF\K6&[,|2YAA]*m!At+oEFiX+oZH 3*d^Qs.v*o/x$̕ _9[{x9v-;~l⨭TR]{.׹_y}.xݙwzXF!)6纱KVZ:n]plibfaac 1.28<) (7 C0P$#0.2sy5J-Wܖr>߃>bٛe;߳~>=);$g:?GZ_{C3G ߲tM!mԐBK|\m&=Tu*S- |),U)49R:`3W}ඟ`mw?UC~0IF8m1W$,4@,;¡ TS\䬼RD˩Yr:izkjؽzο>.pFX\?  0尔)N!)rG Lk݋%--{u8:~U פC6>{{r9^ {)f|>e!=uqg;ؖ J9ԭbߞuf&HF l*pDJ2UE$Pd?{F~<'\Uz2buIoWʿ? y0I~Lu@'8WZ(z$~ݞac})[~sTpW G7p Ljrݻ^=cC4EN^Qu!EJSG-uD-iA=Ԯ߈鎠$$ XH`( Dn e]*U$Dƥn=ߙx6]>MŽI/Tt?yg^<[~8O~Ml@nfP ]{*o M[욠|EuF`: YwyyS s¥UK+UΑ:xkkW}GejӣqU?5rVu5k]:(~J0s_G=,<&/>/mlGt&W~XL-pQ,Mn=5P1?-\_)@Ȗ/"O2#NAl1_У핕abVfJ:^^X)}VX&( Ba@, ,4 a(P*!)*Ud޶ *]RU.*7|Qҩse _ඌwxm;}|s0ip.dfva{)ρ>ĝraA&aC^ GJ|aCJ ꘒ֔ gQގpB?A)ﷇ` ״(^Rú>$(#`X6 PP,% #0-rzd^uu'@u>_:^;U|sM8KzM0 Mskz#귕oj[7jH־( Tl__0 ^)X :`YacBWg so' BA\9sMp~YZ]U_+]՟@pAt_И2︚*zntVOϿսbk.ZDhA'?D 1+kZt_[|$4#7%_v?}߂R JU7_:{<\|ζ;=}_E'=ڸV-&_V:Z[^VӴkq^^-[ר]}_uxTRz1 JvN.ʲj[R*TWݬWkz^< ^?*ײ}mAFoWJt_=;{)Yz.~J׿VV!dx)Tz|Y,6ڏFoױJП!%Wv6 q.)d5b*l|Z$~>u뗵zzzἰ`mJdwpLQ/8rAkj1>~\ך?͝=V%XPw~՝լ-3 ՠK\A$"=M,m(nDֿE%'!VO.Hԧ w7tZ + lې0O4w;Gc53LK 'zC0kkB'|fcXLƷݟ~>C-/aDdo7̦l5>_^7AY?!˚׭vW^wڿk/*O}wBhkఅ i"~\y! >MVcT;n8nia%ӹ;o/G>cckq;~J*%V+b(ku#A|^:0.o P@g; 6yS[J +~mW }ZuD__fjg%*)B7 QHX2 o fj,>?FA bqdQ*/B.:!4<KX}7زͷHe]kn^O9uZeW-@}y{ mʷC޽^J$^#kr"d^4ɞMЛN$1gKN_nЖz ~v R [RVWe3AsՌ+Տפ\ջ^;^_c]-~$N]ܜ}+*!~W/Zq^+Wp^RMZ1W;;ik\DA Y Ai>jiFDgi*4E#䃝o:%݊Wj=^#䴙Ua}k?*]V\ [Q43 W^I fL_,wD^wWVU7Iʋ+Zv\J?~x_:+V[ W`Z-ֺx^W u^ezW%*|Q4(kըwoW=cژf/#~_]6]/Dt'՛fuOMJ NCOV I]%$v16kUԩ7}u_r^ 5~ND-|`& ԙ2 `ZQ_篍S  bq>]ڿ>CPݛb_2|_5 ܖ <ՎOׯ*bZkՖ^Gw9d*a\A\bMN_5V4-43F66%U.Uy\O6O?#J )#haK&@k_EzV}_vO=N8H|g%?+Cw6F}'^+\RD`N~F%4kBX|/0s/:;G~d7Q7`x!)GDiGK z~•Iim~.j\JVV5Ƒ>/K_&ѱ/2u $ikو 7% w}LU^ԿUȽˡ}a׫$՚Anp\%9DWE֕g]z{iΫڱ$]zUׂ,oSGj{kYjX^KXb3z" 7TA1\/+WdWWXT{j_;Ec[Z B4TWy|Z#w&׫Uի*W]~^%'wgYמ:ʒ èIR4'H)W_oxZ݆+\ ./-k=S6SVw^O׻/aՊ]Y6[{ORr\~VwgUW!^u/Kָ/[TcCF5 ^W_]}ZW[Q#X?^7RsܣO?ֻy`ufH8^%uZ'^b7O+F`vK8`=^kyjm$@.hujY[k'}U`^R&t27?e'$,rK<**Z.U߫IrYW.>ܢ}֤n** ףA~~T9O )0sWX/"%Z!`Xܷsi׮__j2y|uLk[Oajz/I={55Է1}:c]4'W?ZW k&j]vNflv߂"j˱{` 鎜<| e)oC[T^yT$'%uz+/Ѻz_@I&q~[P jg'^z:n_V?7 kٳ:~嚄ŗ:W}̙?ѲEIiﺳfVۭzʦJwTWޫU\bY߫YzV`jݓ6FEӪoa82_V IMۓkk_s#9;B*wUm;NO}Z.~7UZeژt.TK.\hUo!qWU10A}\DZW?\־6KV%_sפw z{^ArŪXcj_K08U/v]7]~_Mӹ~ &*uK( 2 RׯտV.1X&W|GRk-zV;T_'7vvCZzת[]w~K[f굍\Wwjzz/_D-I{,]knU՗ZLy{V_L&NqW'U]߬U*Ҍ4;z_1>?7U2g=ϟW~W/1rZZ?T\[ҿ׷$ƈ[&{)G y/Un3z+x'!N E!3 jl [&Q"71l>TGFJLe~DYv߄2^Oo]WF~D!i)-Tt;;dt =_'Ɓor篔ĹvWWg6"% U汯{ұd{}zr\}jQK%ENtHO}@Q5$_!n/. =]߫_Knu"X$6\W?Z7D>U՞7~i1!*dgC/~߂IҊK~'6XD4_1-wV|*=y_+  IB z,ݔzi_uY??ЎEOtUjfV?-Rտ)/kUL/nZȈCr~rcy~k{բ9迉X( wj_hֿ_ի;0;K]ߢ}%zxR$T(6 b`,$A0P,5 !Mc3qE]KUrB~sk"ߞKOk6~+¬R~%iMonYkt?q)_:j8V'Tqh,hW/x mQ:'T"f m}5@2\2NY\^k9kחV?'Mw "2`l+dd+gZ k5qa &Hr*u%beĘ3o\ '9h<SDȐ9}o5>Zb:?%8{a'KQ"X?\ۋwP_L5]"Ӻ|AWZKHJRԳgn#B-_QLnncOejɍU䋉hg^- NxoprKuE Ի1+ (Zcw"Ԑ B H% D! L" YO\sWYrT8.kj|*μ3fwGgys?Y2Z7@Gx6z>DM7B5[-,nW_5tu b.rw(I'b6͕e.;mWU^ (& PPJBPD$ Ds{u*Uu4WP|ԽOLݢ=Ě{_)/}3Y3B?ɛGc =nJV\zZ3ELhw:I w(_Rtug"_w?tЬ̀3[_eG)'݅)bCیlaV타AA 1~~^UbKO^?]OV%㗜Z+^J*OX}L)'=Ĕiٳ?Տ*OW&9oU/Wj`[We_׫#->[1*;9 _/2n]kBv ɂEvW~,òx=^r1(/ʫTJv/G/P2d8$}?o 'Lah9)"-th _WV>'$ejcb1 ]a#⃷oRc̥PWŒ6t,*%JZULka8 3>6|kOE\0} .FN}(tx?,3ei޽-w{_(pA/BP5/eTb;SZZܺTZ뵕br.Uj+xWH{)qcw_آ\\ctz.\xJ肛o @EbOBx(QPgA_1IHj-ʾX82Ӡ W}Z+{VVkaW52{{$7&7L\_r<:?m@14yƍkkmxoWx"!-B ^mP#~׋F2F6 g5y+A3Pp .|z^WzJ(+P̔!4|# 5O.yq*q/ösT SBC=?jPVef/c[i~ ~v9a4y8hМFaNTqnyzXc6 O䆚-J[Z"]*Oz}k p32,H^cA~oher.7)T6sXP⍥0MR{L=xOK}W[7'ͳ׿WԄ6])}!7N>;hy~_ɼk mffl.Zya4|~;[>U>eԯu8/XҭtTīz o{'zIX׺s֯6 oʭ[X$sZ6t갿GYWXYj'ןS/Dͼ}"KJ_oA*w}B7x~?V%\ת_Y=z]WW+ʺ,GWIֿZaj9e6iHs/I/b[_{K]Z~ե~;굩LcVMڹ?v+|]]׫zjɭ{ջZ[jo\\Z\{srj~Gz-ˌ_Y%W_|w7!/W5_fmꉔgU!o&Wz+sUx$Z6|V{WWڵwj~oj=ֿ=iH8iO h@%c%ɍF ?J`$۶%Z}z%z̐fw_ߜ}JKSkO=zOV=~yXY\wOעjמuy;16O׻ W-ZsQ?=y|_z2veo5lyYzࢷ]Xb})EOmIJZ޽WY?n%?w%W\cW]u*O@99UyyhuI]z&[ׯtI&VYYZXДz*eeܮ%ZKO es-m( Y뒋 w׫#'cKu~/z.蚯%!}LW~-N^~עk߬__~rZ|_4^~+/ŕ_YI~Z嵿!iOjA|3Xz?~Kz*ݪp^B~"v3AJz fGW+Εmz[׾+~knV>_~Zwb=0Vtm0#s;+t;{_K/t}Ud[WE^5F:miWpq\dK^YڼR.k['ީ>Di0% ?Y%W-_^wJ_j+U3W/?uu,U݌\]N&cjȾ=׻Xry2ޯ%S:p 9D,%N4Gd] *W -r:Zժ_׻X|lmqKv+ZFX4XQw_64p3^]|WV_wWTJ٣lN :C\V 8aZTw`@_\HJs\o\S`+,ݞDW8gNg׻뮕&_EՒzTl,8b.|y~( s/H`|'%)%]=h}!g5rG~"4=..vլw_TTa+ɘQNzWa A LhrBA^9뜟`"[KO|h> YiDm.]7jڿv-Fb ͚Bኼ 8 D 5sv7cPdEz~^zzﹸ. M$>:6Kh3cLVHC&l9}NcM^^E@ӴvC7Wz=eq%g>j>zM÷++G =?~ZrUZPWws|N)ּQT1%}OE+Ɠ6ֻ1԰ z;*5D_@^Jڳ/?!?=/纾wqGi.`׻]}}]Z"IbU׿VF~F/c;izY l5={24]$1.WڶOJ^UM͞&E}ewoCF[L mZz}akn?H[IZ Kd"~G ɏ1 6rAM:D Kzw kuW=H+er'.J]]@"Aj/76#x\~9Wr^XO\wk\Ojv巓ϻS+ӯ}D$Uj>~}P_^[_k)u^Y1/-~WUׯ~=W+ uՋ{*Kbk[X֯Xժ湭TnKʿ)=r_V]wIjO+znjzy=_oֿFFFNz>R/RbI[t^I~zܖWZW_Uy??~]kK-Vw^%¼nV+Qp.߫nfO74?{U~/<._|e2DIݫv-e$+gY'z3D_~bM#]/˒ &^Znn{ ɇVwݫ&X/N:cl'n_\M^Q=a:oaO/,?p( ~KEz?fJtFvq蟗hWwwo⫈kt}8u_2=䞭or(^?7 {5~ nxHl) r![)ػz;fZYw^(@{O۠~OkѲ^jBH.ߣ"O\Ow?Id݉vjKS?%w^'()XWEs&* @P, A0T(U  Hb&5JT ݲVEEu/GI6wKHW~ŧp_|Cj2tWw7{PHV9v?OJ Z9N?S(qeT ~1۝|}R]G'zn,i8j}i]YTD9L& ĀP,$3B`P$# s./4 Iix| ݶg_pU"6ֽ-Y\L0S~wSmUpv*꬇,1>aPI8X.#Ui0_DwMSFYep4 YS~ 3_'4&Dҟ2s>ObxP8$ BX PT(& !0\ֳW2&$*KkjOyx7GNm~ז@}WL8 6&-fЍO(Q1WDs7f 6I96قYS@-fQzA|%_e<.N: lDn`vT^| j&Sp0:J:2|CۖGU"(a Y `J BA3o\s/ ˒JH^e^ =Go_8PcBki̲ ɤSqEߍAY揝}u%ktzڔ-&20xD]r p6WYDVjq%>AkB+$y+ogV_8JV+}/am8 X &35BD0Pd1z{Mn^qXRC7O诉iv e$_$峥f{4爦𕷗Y __S}N=?}W8X+;yq)v8lD9lSZ@=@KD玩C+³>hҿIu֥iZQ7k{Bʥ KVVV J!@X S$s(5nRRJDtmM?}TWĻ8xD֟ۋKEo~,*ڡ#^Fg/"烐$ Tu-Tv+3釜]saǢW=Ɉ>"E{n/VNfO5wJ99beO(s bXh 0!P.^Nx)YsV^KU;p~Hk|k/Tk Ⴓ낱JS.K_tL┞?Fگ"qXzk:W˹ʞ͈mg{uN9pG{Ʉ?ey%T~aҏGN_.n QUgSF,TBAuL_P,Y=zy/륊nVYez{Ue/Ij)۵}H/\ߘW~SإZz/)ў_8}+ҷ]Z+ut^Uի]*/ -XKW +ջ浊OW=kGHICu˻_]Kj*ֿWr<* Է}Vw#ۮ"o wDcD'WH}{Cs_W^w%w%^ȶWh.[_2YFЄ!1A^_!rjg y{c='?=[1޽zu?]ɓ^>_׻1.V^B_|ފ3EzpslozXzk0=/_]f}KWw=ԗT`]_~Kb'ݐߩ^Fs2GAW;ey2ƿ*o9Wz?X/<]__rq3yi~j4f~iASFKg!=r{.T!Lk_{Eeֵ%|~~*IxI#~w;퉫hO`wJ'asqWbh_׫^:K={D[tMz]fHWw被((OHFwA1__㿫[_/:_Z/z/ W݂8r޽Xﵬv_)=^^X~n4Iw'+?V?0*^xFcJ>OR((߫D]zɽ| z>)_ׯUuį]~oȊBXr^K^ikrrZ_\[xj"m}3*K^Hz}zs~5~xh Q_{jQ]IWRyK{^ߩ7^WRC4ֶ]RW,{ާN`+oKa~Q%w3hLRr!#IyeYVzrZ/IdOGrS_BޞY2ɽ$Ex KVG.t _V+đ9VzI /կץR\任m]`a39%SVr1[սNXz%ZgG~^>> O>(Gjz]X&#rӿէc2:%hioói=S5iCT[T)=]~>dhO~U}m-1>z.Zն˾!׻&).>S5_/ ֻu3+_~FA}m_V%>Wq/ZdR"qv vcjձ޽k_X=rb{sjO庯U}|ʖ'ׯ-\ԶRIt1K_^WWS_j~%\躼VX6]WWZ\'. {y})z-_-2h-sWcV-vo$)f~_UTO}MrWMW2ZxLˇ#/v|jD~vN̥o:lvAv {r'Hk12OB(-3`S{ZKg ߫a~KrYak7Kή빯"E⮼'/M~ﲸԟ=Qhݢy{ZCON\)#dq s'8!-^۫KZb K5,[DzR~sa \U}jY}`Y~X^\FI\ܷ^zȷ(WZZxE\ob+l|nd7貖KXa ]MRWY4ehފ[X;UL-syrG5dU5700ժG?l׿U*z# %ߓwLU-sg{[+h58^}#UµzZ`Wwws]Z("5~N|9gAwK&ﵛh=Y'q B; _ovݎn־5^_P;U*Rt)j9U7EZQVFfa:LWE6_cWBGwrZ'En.w*z/ڱq]W]jzo/?WR߮_jukW{;_gu0,GB` ܖ~EW։[RZO,<8?ڱW[Mj_KXժy-/ϛ;ֹUM\ߢz!٩t]wڷ`41%'ܷ7jGhOU/ o–z#I}w+~]w~%S4#Q]hO"qɺM0EsW+[\ % Bb+]zɏ9{&{{wWrx"r|~.ܗKevWm4U$5tֱBV2Ͻ4U .{T+;WQҡ~bY^b!C{zovD'jkuҞ.0C2M2[V5|da~~ 3^ZcJ.^y>K+n{i6Ga-ՐɺNkY;VKF~][k/DnQm$~Q2v?ZlZWߗӽ#z-~|JDyu]}!=V\W|'^~ڿͷWkz#~Iu,l+ aXh A(*mk[kUJM¬Z_LM|K}tFR|G{8?.tf4ۂUkP+{;oz4:3Bgyxw3ӺvTż*d 'm#}֧KRzz24g % ä*.Pv T屹'Bg", a p b!(% B@Jǽkv"o7oQ7__xDGwz)W QF|7wҦ96|P{jDx2W:TsNΘ#=Ϳ@dQaA٬9_t9;z_Up.] j* ( ;yaƬZ IUnwAmJ8${hm~cTl#@,$ `T(& PL.fMzq%5U WF.K|ˢs]]Gr-g`j0Z{|j*kM~ԧ>'CiKNoң|h7wF8JNLը2P[EujfQYy} __,czߊFjjbR2bMA-B.–m5Yj, AP$ @/]{z*E]TxIϠZ/!l5l~Y/ ˀ~Ɠu) yׇ{١Q8^z\õ?cIKs! L/ZOrv|{@-$H_ M+.߯uNnkZ/6mm=XOVXvN,i JIfLɨ(l @L aH.!ιwRRTɔFϯjtQ |+xuՐv2ܥQOmmR״@`- m cuqw`oӪzN|0+ %,fOQj .ͬʠ9+icfBKmdE*c" ,ψS:5E&: qn(*C@,BP\$ ¾ҕꦷ!*RNoߍZ_9.a~_F_= =)_ e[q/ky®%8 S}A# & Q7NoH&7 Zy^NK$* `X( D0P,BA[L[)/$Ib]ߐot_ܾ}}=:^5Α"]|y6MR D僣-腳YOB)G~5 ڃA>WϜkP N`>ΐˋ}CN}aAXT@W.|hfVƕ{*d e$o=o A }oW{'"տVՇ\V?K֮:Ѱk_[X}z#9We j-W__\{w%j^.~DU_vwڤZ&.rڽrhv;H+oՒڵY/Ѕkվz^z{3Kܾ.Ld^V^Os|sMfppwB]$iz^J֯*C߫Q>nUwZZzMzfve77߇:4A& eQ'uKkK߯t'I6+w=[Kea#ߒ׿{u gЎz'׻Ew+ѹx$*&Urz']꼢Iz,T_j_Ev*R/~w|yoTvRn\/VwW^NuhW7rZ}ReZf>1s}WQ<7BMmM9b" `zpKj`Ywv =iWڽW"? Ch?]YMzw&%eAzԘ؟hVPWպ'</.e_ Surz&U}HA*rЖZջ\}_uu\uuzvܞ=EcA$]-^ Rɯ|Iy1 dCfЮ$:[\@ĝ.n_ZDՀ)XV+W>_j =z/}MO~^O4;y>)Y\L'|bjK뺿֥_x'(brk'G)5[%k5]yrѯk`};'٥LzuK篌$V<=b ڴt_Ca'͆D./֫ԅ7^a+ڧ8FGᨌ+ukX @l_UKpjHGֿZjkY~b!͵.4yטF,> +3zVvcXdfW+`Y]U4JL[wY< Od\dLC.>1@؛Շի/{w^ ە|s1=޻w)4//Cɗ5q>I:[pwVx$1FSo{x(*:Ty75(݆^"=nJz'8!(_~4Oww]4/tVD_Ld]/a|4U`(]|}"zԸGwv̢*Ez<HZ_BYW^ծ\vA Jsބ?K_!jz֫׬wbeUWW\y=k/DW'"xH.4=h}?`+}e%֨Yc|#ꉻꓗȿ^keEsz^vIk1/-]a('Uz_sU+uuEk篠Cn\/J'WVܞ/uK{}jlw/V~߫wV`uU}W-ܵޯ1ҲG仿K H#]++ X{y|U:V+΢[XF`}o|֫ʮ"O.{'%~x-Wc]NB4=jF~nzC開䵂_FN,w-?%X{&_kg4DRP(Z(ľwKYWM[p+CT='g URE#o~J?X$G~rb6n]2.|v% !@)}` 6cܘW_8vSЮk/j͈9yݗ$3ث ONϰDPn={Kw^H[wWOU;^XN4cDO~jO.oAkٱ8ɞqߖ4WʹUGlՊl3SZٴfw} {9 k#>X|P~}]ɬA5Soe!iDsҮ%|py<ހN~vjK]W'/~أ"I}=*q־WR3RעԖ/k/"(V P( $xC$]LV[5_~#Vm81SWi\d-#)yKoɂ~qAw? U; v{gi+=&#_ wTխ{i,DȺ4ߙv0j01X RAm>hJκcD#p"J BaA1,$1 @H"~_=fU]JLҦRHt_Kx ߛRKH]eZj-5G? ;;9Omչj^^EmD+a5^!][=&csKΠvÓklz!0bBXAKap G^*Ԏ- x%/^3=>Hrr[v34i kzvǎkE7!tުntEi I;Ω!}q8FHo%]wv~mYA PЦ:oAuy#)UOqRalHpawgѥI[py*qYw`ZdzإR΋nL˾}u7f|eIbܦL `)lY+'!亹dK)w4J%3ûL6G|th/+}4X\$L4fٴq0^.4ѻVmH16T@1_.d+ ZvMF7t#a&%;)$\$(e  " YW+9S3UttFDl8}}p\rPM [2$N( T ޅn?~Wwԍ^Ha/oPBD$v(d3YՔSK0΀5cZjfzyxl$Ca^miAE 'E)(#Gȅ1dKdpp*A }ס, Ҽ^5W_+]/Mk}]ڵz+kU.:_K/!F윘KVjO^YtOW꺻_Kj_^zuqW/I}WOڢ9f;_hkcW-TMk|55+ nj#{ jzr7:D޽rQ#rUuDyy\?5RDz.Χei]2YXy]=Ցկh5r^LW'IS]U׫߂N:tMl'WްMt)XPZzZZ=e__,| N.ᓕEU P_g?^)*֮U .Mg?_heoS8c> h.-?އmww/ߟ_ _*_#_%3~^c-\+ՊvU"cڗωBjbkޯ׿W\y A wu[?I]_Z\W?Suz՟~'Uݫ׬W|C=GQ3W]~}-Z^WU>_DU_FM䰉O U[~ע9gz&^WVWU2TM~wwˆ~zUݎ~W~ QDx՟K~O}pVi=rG~bV\r߽z{-ҫ֪N?A}ܾ)}bVz/rGj]~l85Y}bkW8;LPb*e lV$y=j4NG,/tlޜB_&/}Hɳ6OoY=ҧc;& `OI+|DqO&Y2/'B_*U{1 h6j}Z;VՄ]zZ[9 LtzoD5Z/E(%h*3իU-e~[v'#JJܷg{YRt3zZOz\߫nͽ\]'OGwVUu`E]z3"A r/%V;W;j˦K܂^eoo\镗Z)nVWҭXjb5=|dKՒZ]:_ 䧯]I~]$Bvҽb^"ֿWZ+:m<}r?7Kr˹}]'~~Msz}߯~b6nDW2'//Rʹ=ea-!{^!K keo^o.֪W=/UZ+v~蒞eoG¼0_"mzZXC]/B>zQuwWXw^ʽ+ey Ɓ|E פԞ~߫^w멽e?Mt`v'KsYF;/KWw7's/HGz{><݁}ޣHj%אׂ)DVMR9)zި{W]_vqJ⿫ن\GcSw|)+WP${A HL_~<)4wWu~^IwwK~(f;vXXwkW\yսj޵~ڽz[m~WuE^/y=ev׆U/K]ʩGk]U۬Pzw$jW׮ (jJ,hUW闱ݏֺzW Z^e!8I}{b^_~"jK宋=\Nf߮Vb)-ry߭Kv?9Ȝ`_n\ }yrmwm=1o!IVZ#_(@&uqK\rzWG/'Ov1Uo*ɋKuG]߯W\W~[ķu-\ یח Zy)K_B\VwuR /h /^ז?V8FN3^b|4_ \h ]?ư1姧wW%WR׬]Cgt'B%4_RO/\&'qծT(2 X ]K*McYyjWYSCSn[oυzUE_ gOfOjaVI";ܮgݺhܺH򏦣kD,OR[掺f {b/aRٗJ+j.+MyEGWYWD, }} }܌'{?7qL/Z\ppphK%o,!f :x?D<'KԲ`EYTYp7f6G~}8r~Icunୄ됁\f,k*jp$jgLZR,ɎsuWhacKhv*s * Krem+  ™ԐJUpA^=V&g| =.xu{MMَ1:3S8,M,)eUTwl|{g;%ۜ2r#Вb۞_kvINU!fxMF0v\LNϢ>qW>bTR4"SkOֳB& !10?u4ln!96؎IWp*#v^}@mcB (Ԉj P`,$ PD* Fb*n~2ْ$=9-/wqS__&~DRÄx?kgQ[uȣ5H4M R0ʓQhNm0ft'Zű[0{#+gTnrN #&$ A0H,$ !(B" BAPDz{z+&7R].R~ܞ[EoH'fڬzֆ0:w:0d5.X1KusǠqZwn. 7P\ȧ{*a|wT%Nňu*ha/ȼsu%V5u u J?ϺD!-$gGq4:T\]KitMCޓMl[5ippA  }mڵ~W'w^R/EГjKw^[io˅kPן'HK~*Z >1cbh9V/{\oiOķY?Ge׵r_F,]yMdHKտVV}j7׫Ozz^߬]_Ԣ?j= PWKUaKurzՓg) A *uKJ<딷%kڵz-wb|5zԞW[kr{V,sܖiF+Uy;h#߯P߫cW]DRzn?uZKI}z".Nzwi{z{{~ˢ.׬rkYzZڴEz]KZUbR%9!Wk}j/䞼֤`bM'&hFOZz_X߬Qw^W_5YdYe_՗̿zqTR /jzGg__ڴm߯_K/-v_F]_whX/Krz/_"dcA1/M%jf~d*ƞZK^W^avRz%w7MCW7!k^de^]]]uh~>'W5EnU{qӫwk_A J,~{;פ^蒯X%{urڳkbY'vʛ~JXD{פפrZ2ߵת䞭z{URԗ%]Тߴsb֬R\Vzjބ-ENW~`ws[_~_v rtV)X}T_1i|׭w٤oqR_wz&Rz.RZ-~?ړ(޵Tqv. W ?|^oWWM~{*Eѻ#W:>Rz#MUg%nzk[jGK,^߫W9%֊RK^\_WwrX#W7>[E !8{zkWK|"7V_K^eW5D]ݗjZ;_ߵUծA j}ס9~_2xk-Xg*~ynoT\UWzcr|LWTR}+j|OwD׬.-z o֪Y߫׭D5RH֫֫%r_w~']+E^~wIYN;YvZZ!J/ݶ_4j;Yjrʪw^h ^JJx_ʽZb:w~~{{{n{{&4u:~zRe~MWk\޲UuZZ$~ }-k%n/͔3_B.ʇ"->om^kbޙ Y} ./׫FzZXB}UUDy,~%*8v 9su}^Ha׹u׫\.V=N6Zo4D?}ZVI5Rϝd*L&H2$N":Gxo>iXxd(F'OӪ^0>?7:UT*AF'fyf>_ئ$ASx^Ul`ø5qNE)[S/lNygW\#-H)_7'H!Ku,D BဨPL( BT"2 0sߏ׺euZ笌/%eTwCSOKulE RAuz;m=?t&[Hc6j8)iZ]m8Ï8!i`O[PT|,"eDtQ9)teBk4((" (PH*aL*9eUEZTr7O^';ʎOOFh9qs]Sc.c(T)'W|z-4bM/i^8/;0 iF˯&( BP*  @P$$ aP&1*~u"꫍亩Jn.>F~5q&qhO\ks6_o(xఋT*hs|k)BAuhMw\USb?K=^VՅ:Z&Պ_WDz꿊WV/(_ZՇ =\߹[[`#j$^޽]]ܻ4؍Qj"ץe^=N+?WzN Nj߫IܞMj5/K @zYW.\pWפ$KOUb:ԩ{Uj7wWUugkwY9okz_=}_KjRHE:XSEߢT3OkjS޵^zRz෍C5mW O5K?hEX#mm}bѠ׿!4L'W[%BmV\עz֭ZVM;R,ՏYvܷ^WVZ$QV+О.5H_zע4V>~7[eHAtO/О^kbo_wƫv^E}]⿚>iwUX[k]'/%z&_٨t+SKu\Bznp^*Rt?Тgի߯W|SzwկV}-}++wk;UzKkݮ׻Jne{ɫ\ծ^潮ֿV.zo^׫ՑމrʽֻZ=_^rWOVZ#/{EnO ٪zs/FE/q[NRz+.տEJ*Ќ+~~=-rXL7=#W5]zDinq7^KK5֦HXzOVi-I篇Aߓ'GլWsK+Obe]$Y>妇/^}TEq[V+S/|ZZk{վ'{ۯ^勵Z5I upn#kcbVkU&k~%KuR|_wkjrj]k^7~WJݫiR-`KZWy<ԟޯ-浔~]"uĦ_sy.BZfcu*wu |rNF]yIwKu2z2S\{QzM_>A'ލE6vw$vW^ ._)frKܷ-bꤿ&\ވ}pMC+w~-k';E{*T$עt#R9ڞzoD^a_LHߩ_/~^*JRni=Aw}yPoU_}-oWW^woZ'IUy>ZZK^i}G?`U+READ:7jjGAJ?MWie$}X}WipZUb{ֿ]VzOuRwŮ]ȩ. W*n[Z=iG?ɺH?^{[WP[XX^OU$Z-},ͬ1\\5 ]:W~WH~~\WkzNlWs]\DvtFW?W"_|WܗEin8t ~ЇEy}rb^|˲Gz6/zMw茋q]z^RzOrQwxε*D]_'?踢p~~A mw%~Dv_:~}U|2ʬv^o׻rZNU֯_>^^9ww=Pfwx)Ww%urԊD)^bczD`et_Jzz[WKS4OoX/S'ww֥Ջ׫vՊ&skNI2bu~d[j]k pzoWww5uRO&_|boDrw]n.U>k>U=lܔ_q\޲Y9 Wz˺תuOWWDxBe#+~3YU<ռO~~aՉ+֥y.[%WY)yW=(oќ]~^#b&צV;nܳޅ7wpkH&_˿FhOɢzԞE~^ezc AJrrx^|%UjN\OX^y=ZK/Ve篒=rz/;rrׯ d,WK_'һܩޭ~b7%֋/U]~\߯W/wڷz'~/W*z`v+_]ެWU_֯oԵ_zz˦IUY\|A깩YMOZ zrWVסՑ7kߢEWw/E~7^E-'zڱ'm{m\VsU$$~5_rzOE3תLlB2*_зt^\ލR'_la%7BNoե=Nz_Kk+}uM篫ir;gb=AjwKNdЏE/jڷ}})_ʋ)Ḫeq]ǒ[r^Y%˪ Z\^5^_\կ׿^V WSE\ܖg w&oozҁ{Y~M^/-/WzV+ oYI:䯺[ֿXV^^YgU߭U"WuU&oDjw\Ey.3ߎO&Ғe,>j^_գzע=ej֢.Du~|ԑ-*Q/7E5pIu\e5Z;wW?3p[b%^j3* uIt`j_1ݢzEע5z?KWڼ(( A`X$ a ("BdQ ²~|핪*UI2*T;'>݋äKBpK۬ J֟7!IQ j?+ah ͒2ֲюz/+7P'wz݁wW7&v~#uؚBnڡ`gAV)ŠiP8 'S4j$* @Pl4 PX*aQ T"v7U*8*^U8C8;n[ybZ3a2`$T_9듚R܄M| YU)Y=|yFYe/ZЗobɎn\dUڬ` %xX" a\( D`*q;Ty//|BU;}ma'9wuOoeN:令i)pY_/LNܙ\4>:%INo q潜iˌ[ {c]49g7i2&6+GYy;vLW~E(* @,8 BTN 1(*'nn~Nr_i&ҢV]CwaΜTUs`q9|z@x5*p*笜!}X=)EK^ A@{+i]\\.7pB"9T(*+ @X2 BP&! PfJ|޷Lxׇ|hvuxf9"?Q&_@^1wve@Am߭f?E~wᯅ++ؔ68ͫ8Oe6B^)C!(^b k8(D a(PJ CAP$ HaD*C7w3s5zG|Ѵ?t&|6O<޾X~o[+/{\Yi:TNvI@M>`!{-&o\7kDIr\-V@I:ԃ_z?5iPho&Xb}_qץ>v~urzM2MWT^?Ju˵z^^X\/8 Uup4_#mXoi-zn.Kж;E_hw-~< -!+'דs.0D;SW~zAW~W!WzOEjF9dA/]ֿZMRzjj굩}k딞/6CWӷZok__K_W'VVֱ֫N^V^/kj_CCX]zZ]OUD՗']OM b.z.'K5wW-{jՕޮ~~X?VIzw%׫z޵߮jz]^B=e.]nVuUjߢa-5zkinc./׼-͋딞Gn?I+^*ѫZ2׿YW>Wz#]ˉވ˹.9+OR_uUܗ+c1=֤^*ZA}؏ rN'Տ/ZkW螖OD7Ve\߮_5k`z"/{ۢ;ץ_WXrZ{"kќ-y+]z_Wפ!ս'_h|Wr\^pǸW+U|uz/.H/zK^ՂԗZ,Jz"n'"]}\O=G]q{HZVwY+sܛRKZ#k+VVT_פg:3Ww~]}UݢZzO}TYfkG?uz_ڷ!^MV])._FQkh K^-^ջKbG*EZ7vpAv_'G7u}/{]wڳ׻Z/׿^Z=5de_75~Uܙ+QU]z~uw^_~Z~@zQKKs˝zk^vKwW/=~{ۖb_嫖֫ehj#XJjRb]S-WjޭW!'BmY z4xz~.o垜7_~^/W'Tg/kW}w7$/%r \|VZtZ}S}SHڹ^z~z%m+Z~wW]z#(4]> hw *$ѝoE/{\ס -A:W*պ*u~'_r^sGWR@"( P,D CAPH.@D*!K㏟R˹yy񦒡s㿟';y/OI[/>%/W]<W󫬠C㜵8:7eί{9>; \zsqqdԜpẼ@:t"d `X* DAP$ BaPTBqܬ{s+'f}{9r8#Ίo%Cr74 hkz;<j:k^UQK\brBxл҂XlO "wLT ~7j˃ oսs-pbj_!|-|/U=qVRDׂ? I wmp((% b*" . ϝ>>>Ty+\*GA˺9=YyqsIvZvmGk>w_.ĽG 8%|쑎|\(1En_Qd>ǺPbݨi/׵rL/qWKʼn].fU8;{C(sDpPrF(ADd$!9L$*" A0P,% BPTH D1P*k?/;޹g5uz2m; OE΋ݫf˾ ^=p J ?/Ut20Ε$儐8r= , @, BPT(& DApLBgί\ĺhDţCuZ.zO7I LBU__ F}3? Q {*[/[dO!lt kkM߯'/b^9rk#U~)n3_{W/UÕz_r{ZOv^/z%׭~B*%v/I'_")3[z/*W1ο$ojXO߄LL˞1ljjXX>bߖ^kkko]׵\L|frK=~RͿl,׸bG;p_Mf֟bHbRn`E } ʵV+Q,Q~h,/5X vzgշ%u_ltΡH"E"jy߿'!" Z VٟB_hv i6ꪪ5$nj!%T{Bv5/((;/4^)S[.t׶ gmؔ4ٔpApNKbR-X>%/ի׿^{ץDR%-{-}̜u7\N5)么 q^s/׿^{"6و G%Rߎ_~ [:d%09 ѻZ]΁"a93Qˡ.2Lk8JgOi57wQ3// J_'":^t}M~ `D/rW9dC dXVNrz!EoԮzL\EEo/Ly}]v$sA uYDJЯ \wdgY~DW,?/Ӻ͛ x~L_BV_ )a__lQד5W f/ΊQP7cwڤk .茲ڊ4l?!c`A+'uV,d|^gf-j;'0\6sbXN_758l'Mr-wuv_S5?͏'邒9ks-'Ӿm/ G1s TTz#; [LK/hޝBFQ `h1GnOkAֺߠ赊VjoCG^W$5#r}}!{`gƲcD'.B7I&O7/#&!vO5CIֻd^Il8m+BFWZ!@^_ݪOEwMW/PL–Dف(UG{_L/mAJ}3qRڷɈM4*]ׯeU9c>S9W;W;_*_Vbk}}oK1,%Xͤ[?W^MRU}/NaMq&Jw6 >n>#O\ZZ`{%'=UK;ꥫkRݡYV?d>W\Gb^et߮^r{uw_9ѠG;彄kjDj·?.go5uU]y4*BxYd-qh {r3iסuw{"$޵^5҉)B6.qdž3gvj|#Z9/.S5B٪A]h~~\t}_X8`\s5P~O5U=w$)eČTgtXCd/OO|8\{5e״,奮Q k.FbDlz7=uvd7C˼Tf^?_3ϯqaHo nuF *;$tKު j?`lT^\(>|Lp&o}T8`gӰ07#/k+|&a}!<:ZhwYk19`y0´&LOm-tC*A20EZƪKp|WT_FPen$*:[ g 8'՗'>^_DwB'嵙=)Q_)Y~<7$w ?,DIZI#*pV{^Ċo[c` vQsz+\)g$w^Vrg"\W_Ld/rM(D \6rC9? /, d)jzGތ'6\9uw[ױ"~_O]%n92t^Bh?YU{s׆ѓ1yxn9UV8c[׬Zbj٨Կޠ 2o!ϟ-uƏe/~_TҤ&ξB!|VKb{29/|GTPvQ2zʲ^iۀvAj}ZkKҹn׿^ջユ{Γ]ڷkЊ/wԪDK_㉷}7fYǢ1$ОZO^^^e^_v}b/2#gTd+O_Uj{Ъj#Vu bx7'U~Ve'vY-Z=c=u넺ZWz/UwՌBou}׻YWW^_ܶ~!&oSa>boR'DILmf& ەȽJX w-ݫ,٨iy>g 3a:S n6kw)b+ 6SPTh0䩘}^z_Uj/ E={YRr{9~&hL23Y3Z ?}Jr d| ZVW='*j ,Bqy]WȢ%lrem]rod,>At)y%OC`/OTOX o'1 N$-߸mqz@yn^_ִZRkXuc22 ,w8ȈՀN L Ak4u&Q58 Õ՗a]d!7=u!2jquՃ#ګ eԌSpE11Ά/wu*C0$?l'ct%+E x:cޮ:$yqa#L˷tAp  Gb'ó15*_Y?2dW_%]'\U}LT-,ɋ$m-E]^U^7;!|(6(/AU t=bǮ203=,"jaTa TD Bb|{o5ǭaJ7p]p5#~^J*uw|{?qlz{_1p#ɪ0SU(~?:Ԛ d#Ivwgq}<0XRbξ:$x{ZY#8YxiB8DTɊ6Pp( BA1h,% @P& Bb-]un\2SU$ M#j}ܩt.9wV︭V;#ye[ƌ7Gn wfwknNby6Z ڟ)k4+mP<:vWNIη> ow4ҵBiOB-l]*'Ð&*( aa(X(& APL*7SVJdyTQ#|uDut'|On9o„y< ؽ-O&K5 {'~n 4fl!ښxÇ-3ط,lc ]p(L~-ђZǔU. xҿ6 9𖀡9֒&U ;`$*$ `X4$ BPTh N*Ou[]Qư*T'[U>-oo)k?? sk_nF!B>^*h͹0F7,S8%Xz)tU[';yHܶFmSKu-S-<4&_ų;_&6[O V,;i&>* ,Z pL* LA=jOӪM[5^VtHiukmQ?WO~Y]o Gf$ޝ -2vŸ=FbQe0=cq(RR8c #X5~:i۹F_THGWdJuG${2ܲdwڗ1ug;"#y҉8GHxLb@XP B`(5 ¡ 'u%-+.@NO-󯔟F2կ~[t&d 曆$Ԥ{PШ+M[2# 3IAk—~zc:ojthT_ =}Vő>YN90(kh6K*eXyBOҼ/Y^LMG$,`XppP,% p( BaS'dk~L&5[ D^Χ{俻y~OTOVfe4?W!Xp13{ci#?OsC{`\+7)Zw""a < C=kfv|.r1xzO ݦWAC\/k BAfqKF,9d'D)()Zr~[ Auh[UFtKҮﻩceR"z^::֯ׯձܷukO''u OĭvmV'^^_^uƉ's/$)|RT O|W}zKF>vQϫB[RVnN[z^]!N;Cſ |6bdq%ek_}W+ՏRB K^ ~ j5]ZWudrV/h`Br@$֘*y2V_CSv+rOW "{&:Q+4PIYhm<l.:y.O\V{s0PטDb*g|7~x7?|Alڏ+'zR;KԐ!s-IA ?9$Z~Mq gm7߱x,u;m d|1W ^ O3OZ #"۷x[ȈkʽQ1&< ROzR}WܘJ 8Vr!BWV?(Z я.F(<+堑BŊ9ቘ<:tBF:%+L' "Cٜ AR]NRF#lmjy[۴AMDϙzH>NpFR³N/LjKmOh{Ss'y2_u ?}]Ql]65G |a6 V[^:y ` wŐX;QEBFU\P@xl/F MR0*zEIZ]7x}JՊ(ʔ|tJ[?v=-\h_Gd4 O}Qx!v-Ŀ 57u'-FZgJIq TD2WZJ Dd_/X ?_HYef!Iln _-썟Vq.oWVrJnߵ{#ܞ|$:Խk|-F:{e9:_|5~qUll,x Ю!6%vPZ[Js/{ {h½y+Ƕ"Q^Ͱ5eY.7T|3a 6b L [T^^i¾\p`jĝM <8!%a~p_y3w%H"p<FZ2('2W>@Ȱk3^4s<7R{ KO= U)!֕|.-!%HO `XJ$m'K~^"т>B쇯Ew.m?>lgUU}%OO7)e%s C_|%r_L9?@g|Hr0'ܞhH%jY"'o@rAii9؜:oHzWq*o]udFW ^&JÕx:/>nrƗ*u{Ȫ"욖0AFMu24K1*[H 4eO"S.i1 o_([Qc4f7/mVC{,ُ@U1B7WV76MXzC[E6;'nV Mi-wB:Cg+"%ߥ2]}Q]cc x@sUv_# wIu:+WkR.tNBk.6d ?ѱ, 갰3ސfB>sdsm+6sC|ى>|<ר΂y#yiFF, OieB <#F{ё.LmI i" qM*Rj_wd,oO_~6߷Kg̎^9{k u9 {F%a|1{jXLiAe֚ 3U:2u8o,_Aob~߂bv auu4t(l_|rm:˗Ļ=!W1W,ǿ wCޗxh=8A4)}Y/t5zO[S4 eWKEI%.sf20Mq^:Z}o-tRf̾!Vd%t06C◷/7^/Wv~'ezuɓ[kT/(G:Vk (Ao|Dk>BfOsDKmh /('"3hAfQC|2H(1y 7@&lW5z=]w]j# jrdi *{9i0bݘHJُƌ8 9p>G)o돷) #3gY{Z#e ߖ^3+\FY)OAC?>{ @l#E6n{'k*^K?.@(:bbr -zaXq>e _W;'Uc}vz܋?_wiR0(!29!]޿(@דۭڐ@CÇ2WLOŤ2M SsCZ3S;դnCa>F=Ӽ%A ~]zz(_Ad> 5*5CK!.VLDVqSCl7os Byʱ~{/ px֓nlT~hWBy;ТafaF_l#0 = h&:zi7ѺL9w\Auʽ ^_p I)JO|2ii~̪#.h.Pa E5f95v([gIrG9B^nݻ]fDI_H%ƫxHs y7͊;w}rt𠊙79=i1_3QF!ݧgu~)T]g^2p]Orп3KVILv-hбis3 ~OZ+[չcd߬U%ݕߋ}X*`bcg;&MO*pPEozRRcRCගHݯ1`'Kẉ,?r;H eW!)} γuȪKgWɿC$/)R{kL̂:o:nAׅt`Hlh7y/jm'ѺoS^D' /UMs/,)%{}(Zp7p+$ܸo~[zrS1`^OIØOjoDH"ϊF?.~ 0թۼqDPc5^b{]պTwmF[HdZfKEf;1iVi#U.a_>N6V g${?&ZI2bM$k/(DMXlVx#ZỻC>% ;eȗQ5ǹ>S2Өכ}:[>8zHZď9c%Xi3yȑ}+nx|Tdy(P$-^UlRhw%Ww&$T[soIFk9;ի~.J}><D0@b=P |7תԭSZ+ʼG5es^췀 xArȯW_OW~ڿwzZ޵tПʥ7!yc;X2(`!\8 PUtv)!Fndxl׫W;V[-߃*w/ ,3* 44٣$_aq q%p_48 %$0KD,PSX9 ;4\ ocm2Qt*ڛE~:|1cdZsov~*n_-l`^+G P . (Y0`d-ڃbP=s>IJ+W):Vr_B ^'m!wi`?RoMYB gUIB.j)4lS'T@Pb{fQ ocrhGK֮bs|%VqS-Ip |$^Uv+\W8šR |'= Qz\4wePgPw=.@4q4KI )e&b a_F%Ba,wI{x8׀Km`@l ;b ?h4n!TVwV%|]U+v $,.:wgTPV Y0N|CP C+}~Mu[cPW",/+"$e hbKG꯺"] ӊ P,xymJWAQ:"dx׿/'nX4c/ab%8P *t1o [Ȼq"B6nK=b[$ :,*"w/e6%1eb Щl3>ܯwk.ПUq}wV>>t`G3bG|]xbSA: J -9`Ԕկ`iu˽[B/%rXne|dԡovQeP'Xb9V&b/SF}?b<\o5(Ϛ> heUzm+[k-t*ǚZ_ձqgepцb>={ˬGt*Z%$fAc&-~c.JҤ_b<R{n\o_C ݹ:zٹx`!O5~v6:ETTB,YMDkl&`<z|j}f6X`%fǮMuLAnyթ"/gіHS-mĔhĸ:(1+%6'POOsvr~N1 Ɓ&@UxBwۿf$_P@R[~k -ގ` (Gƶ=p0@Z-h}EZF?s;{O6(<>MՋFRXyFz>{9탿f7 'uM0XD z >1 :G  :lduET~ʮUotɻJL bl3jc*G q[쑪N{jcT4:DZANv[<_V_V/dKápcx$8G1_:AM-~$Bpj0[p~\KQcbcmN2Eth*?A,Lb;5c/4jƨ\[:#ى0Jd6?Aϵ+?4=~(1d 7QO>Xzv$Kew'G>qdʶ֙םt-Uu-s%ɿ]zܷVd/)ϠBEaT!I0D~> iESWRo..te VMM8|+ ZQqvrɟ]F1W&wCx:R5rթn7W`eg"Lg&[.8A2GEk~2][T4K/_dNlBWcI̹Zn+Bhmt_O=L߭KWko+`8G{,)PpyCfÜ@ {'ձ 7JVԾjS^9P7zU;+KyO,5>)fr~5O9hZ`2{i#DT3XB4tMkB>ϟ. O$ q] \{V]z/RVIFDI '9wh9hê#ߓ1D?>iz wH_pQ qdCh`@%[İ@lyY/:N\qeFI5c _nMPJ. ι=׭~VWMV_8\-I#@q PEG]$Q`U]"VRF7ӑ/+65z%`%_ nZ(ɽڨzj)>ֻ wI 7 f!%a]!r$OקKǿ  NnxO@H}zA1ģ3>[뚅t6l> Ah+k|2*( K_s`E}x-GX$^ġapQ b}t,B`(1FuW~qrMgpW%+d}sFkmM} B`mS+p)7`/Я_{Fm2+_'keoe^\{؏on|vѣ!_i 'эsc>O'V^hc*>9+E OQh¶lx,dlg/__1߼JShC 8!ttYqQ&tp5lܿMPp! PR yXe3Leu0}p]aq Qgk ښ6VfiVgc{>kW)zFRq+~Oy}c+j(BJR1,j0U[LgޟֶR S 0: +xRdC5+yiwcfdkoI4J\<:*?"2/Nwғ',2~BfOp3'qXu zBr 2 WkNwE{?6x{կ+fN/6I *j6TD \MBkOUz'hPJbuf.2xbBSAJ<9Ir%X~=/20ӳ[ xHx4zq@~Cߍmv_N ْf-~gaq#ϮXzk!c~3Mc=CO=0wp^G/_]Bq\wqڻoF_M39`c0{֒bvÄ "~nb?w0čDЯ.Eu|X aC%g*u a eٰo$v ߓM e$!tVSʣH#יOL8Lno5yYvD2r}7oJ ΪqLAij7ʿ1~&-;>*=i&Y6uE!4mS!vV Ng5B[5@' %/* T_-oj$g5-?f̛d.2/V'fJdvo^SO,i> "WCXeG4ml$X,Û<=6Hi1~>gO1ot̟pF,ZJ <pfuc~@u5;otLJϡcKa *Kve}\ϝݜnSH̊,6 ֛o֋2Uϕ};z2ˈO_7 &V_% ζѭ"oGn:^K~O8`8*zi/KiM6|㩢N>z]3UѤ\O*NmM|)8T[}Ofg ȍ_A!t0{ڼN!.7o!`q20qd{f:AqF쿵LjF}y`FlV. GTFQ0_ =)^_T#hKLԾ9VGuކ,%VݪA:m~{ToM-K"ӫnj|޷n\r9q V)=ڂ#@Zow锾< y F[b @ɒL4Ⱦ()hxD!xeU[&f؜wq^p~z/׾N'y=~/[ Zÿcha<v!? ߾~v9L a˻kkJZ[4" KH%ABZ,tQ'Te8nIA|nt;;~҂};-vzXUgǗIUbɉilI:W-X({ &B`,$*a@X0 #0lɗu J)5 W{?Y>cns fZ0wU>Q+4sOYоX4//vbA_7Ŵw=NkɈݳY3 Bp-ZD wx4a{`իC [:*sbN}F}SUHLS_Sh˾+y, @P, )@PL " D}frr~rO&\j)OI+&Nz|,l8Yk5j-}Qfn.3:f,؋uaqs>JV W &E9H(;f5b1a}6 E-I& 6 ܁PS&;o?q}G(*Wz(ӿZSu 8,$ @,( a X #Nr{Uku)tZc*s:o_֥vͪ7Ϗ$MGH5_?䍛couz$Y-"q# €3T4irR[_=4l%wUZ)VԲ0c7ʊ1Pt);e]W|:>χ7_*kV0a0^6LގvJ4d8[\j , a@bX(&+.j/yr]]%⪕Z/=𿂿F#]}&]5>+Ё`b6 &~/JG P lքe9MS'AM^YOÛWy "ވekרRR ,:.M3l 5k@*jǰ/jQ =d$3v؎( 4H0pJc@, @$Bawos8IUˊS'C+>{> <_?DioǠ4h[O k,[_ X6+>#`QN-zJs(='9^y3G)@ ݈S8=<-m3J)zj=Wϗϛ!sM0seO??*}?r_C$,aL 0P*" ~99w*UeCr/#/Ҽ(N2,M$oqakܾ}]ӷ(SlkWK깸.Io[ҿ}ysLzUzQ\Ldm|YWQgƷ|jz˺k]z|xpuɒe%kHa4|}S`OFBٗ75uIʒ#LY(iEgqYUr#ܣo$pZw Skd[^ (_Oj;}u/U}9^s?"5 RH45UZ`(cg1?n}jOT`ҢNj//v ҙE $Ez AQ`zF*GJH,Vfv@S;3FbFVAw|SQ7~՟KmUJإW &_7 `¶ķ*FUoԡ繆@n⁁4 M hPWh4ByTѸ-%CqxgZjZ[VOG%[ dƱs(]ĩDrO# r'OUZc޽*[+\yG|#B _f SnhQ>n<1q{SI/v0cF669DFiR V$^$ND'ץZ_Wv~}>_]w]dwmr15֙1¦E;m?'&uk#BI%ÿHke.)pl<ŻZ@ ۊ( 2ULTW^"v VGTB+w]^e_?xhGj̫HxDaRVB G+ 3Z2d@k|?+E"hXŐjMR <oE|=NE)Rɪ/MBZַᰞ, _Z bL@)%՛ͻ|~'jk](( G`B/M.ʱ /,]4n$W҆L|oNdQOU^e%8{%cAAL(؀\FԼa$wD]FPlW ."!%B\qF{].7;\qF+/5?Fom7Wpǂk@@}%6D##?q. aor*VarJ 7hO\ac#9_u7 R\,LcquZh![a_B7ߢzԮZF~FCVlIv`3+5]ȷ^ jjQ%d+e<@-TK>zlZd,j M [ e=n cg3uf ORO?%?doZZ +%<>=~% ˏ POPuؼ +hk˒=/GĊ~_VM0|\ =gL3*{zGdI]/8 @) nLރr8E>MPUP͕8Cwm6/8@b˸mec|@_}w䴗>~OH&KݯMt[.>a^Ri~ȿ"cFU#֦2t7IP% c_5ɓ_^Ukne^pXxyh\w/xFk=S۸ںYq$;j]U0~3lm&+ɏ8ijhzovs9} ,,nS%sX0zCRv{܄ڞq :a' AB V {w+m0(wl̲msy35*^$r,cToYY>^&#ylqֿ5>*FGdv!-_˵N!/'p NA*HO~^ٻ+:~W֥y~){={Ok߯b{!ŏEn+P<Ń݉MZv =iV~@09A%_\  x /{ Gΐ"E߻7Yvq ^\=B*0K߭XV*kW *U/2u*@-0,Xk> Oyf)bczùhf⿮I} 8Ӏqɀ) y`LGLu2%셊3u2ˋ). UkZo'&W$>;wԵwڽ]U#(0Lꎔ2jcr^9ed ` Qc?T66uMS5"*Lg/$!ѪרV+W7KD[D^ #e|oĊ(`jD5PIF}A>׻^^}ڕ^Jz}.9}~z0]1;ePE=%1+x4α!7\, W(%tJ&Xuʽt>n 7TO׿^횗͹ּ/JCӿCJ7KAO .l0uv;i.z^ V\VI%JA\xݳ0K P-4]D! joX n/,*|olf=+(tia6ޙ62V{פ @ ".Ϙ2 Hq^+wbBqAN..|4/$p8j`+0%0ttБ]z^DxO{~ [*}KvNN"L0 v)YAğ} moW@ɕVM|+Z]/FW5_t,Bu^ W9{b4)7 ]lbewub{匼xL廽{>4\tnR\8׶*[﵂x~^BG~. aXN{e4E=|`H=G!a˨2/=^?7U?0G{泦իX^_*>O?#GjߡU&2]r¢7f:UNP5ܾ_28 1>!#ʍ J7@ i/>_&Z?m׼9>Ci="w^ p`_!xG5 >2|6;(s 'e5XM`Wݕf"#`tM)_^.YQDzqUPL)l0ZFY>vUhznfXa>uM엓Iz+(*s =s>F?u8*(i>׺Y}\oKYS5/ }[5"+_ff9,a :IZ2s-EWeʈIxOa73#Cj>KH#8@7%*qk/2ցfӧ>h[(\8WmEtw]}> iUw^xH;Y ~~-!ԾnS~$\ԛ 2/%)ɟ!hq~bQR뇮O(ͭG(L)/AK_)Jr-?{*-|2=A>QpW|٬zt8)%~\Q.8_N_Q|{˼>X;;_y[Ct ZՇɭ4-&{^/>+%A[΄r>򠑇˅V|ěN0mSm߽f?h|y=j+ yxnBy1V_s7ܳ"kFd&,\FYc{ ,8G!T |̹㜵+P窕1_rڵzV[ۉxCo D? AJ}o_sZ֧IV䪽jZZֺZ!\i rۈif#(hzy!6XOzM^ L0@f- :=@:P%Ft+JrW{Xn{c쟴`;(K64^.MG8PA~rpK`1XL^yΦۉ(.҄cX{4$L/Q~((?2O(;"gҸXhOҪFd $.8uzus=RNw8LKTvL4-W5upaHֺYQ4#_OS'"?XckCWleS{B{Rr׬=JS}XאP15oWK;/MUr}LB9UlS Fk2tX0EuRRLr<52̏2^xj`$̿WTmGU{Qd$1bia$8k`Ay}~wkv{^GCbtqb}?+'O%3QtC8,We +_TR eäԹ -E(euA_=y=9:BuV!ݡh"riܟO\7=FehKIU+UZq]y_p?&(`$D+x#F` Uн3̣{g#!}|=_e Il6ކpvS⼞"rj闍,24ݏ Aۑܞ?NdAU&/,MXĢWNqIht|-`!7PN2ꪪBɱk$D%$pU/0F #͋@^pkc}e(QTڥ.5_)Cw^m^LJ: xpfW -dQԼV/~}S|b/55+TSӯ VPC{' 9.j }zpH5:C\AzO^DXiFDt~65BׅNQU6-zWpL0P3*gDUT_!W_}ʣ^yR5=9| bYFsAwՠH! /op+Op?ptasD)A5_ GR6ǚA K*)DxV5 l }_1_y$49^O5$tțM"dgf퓿g4A4>0ʐ>=4<:w TS Iw-!wAFQEP\I0xfw6:"Z.XN27B0<:">_xȓR$C\H!Dq}W#4pJ$[k("mb1\ {"Q 8q2{]dYJb ƒV>]2Aُp>R" x1 -[N6;"MHju-hCMVvn3+ V{B W/\[vD|JY >tp*qJwqہ;O4ۊrw,ŋ}ijO(Az|jp@%YƠ+ __|/ȭ,ۏࠥH;L od_^s+O\۟GéEȤqV0ZLcCbODV#ua֙_0W~ўSY ^ʢ exb<[-TQYpT(Y_ѧQ~rT%q @ 9Ɩac^S'FѰ\^k-)Cř%B Ks^z5l R[0~orM߻pVYQDmz1׾@C<ݖ$v{I䋅bD^KG Ơy`^Ii%暔> ]U 1;?4_Qu?"J'0m(l~H/ږMs~Ym4}C U>g&,P@n BXXw A`hgJoay꼋ĒmW{W5NR%"n!0Й17 Ajm|w_E־֤uZ+_^~%wiT\L3/>[aYW0٠qc~3&@jt,cC$L` Xn ol&ڧ_[@9&zT[jU~KuLrz}$CyU@_/}^ -ay`1^ۏVn#6ԳWj-Ѩ(-Gkf g !~<!-dqNX|j3AM>M6<aMޜE3xaˈU4'Pv 4|%Fh0&ܛ4_uukWUbf<ЈȁH容VV6&kjoZ\ @vjH:2z8=2J8'-o-~0[3ӳiSa,b/G.ݴO'QkgcP8; 8#,MdPT<e1Nl3֜lTHfʤ;&b#֤֯Ww1Ap1nMgg_^x,`x89+ZRTةoŪDqBeTu"žp{?%$\rT erߏWJH9eQM(y{AŨrY[s.ۏ& &x>6V]"1z@q$` -Gu-o@l E3 ivX jx!*qu T6]0XH 3N-i! Nb*N:2 9dc 3{^} ' dw҉u":W:$/ ?NT+18Hލ7)Du%-K,սs_'3cE.%xT"Q|$), D:ձۿP__- H%/Xf)0ӟ<8./8 gvJC#P &HN5;EC Qz3߸y%8%ǟoq07 p=F<>. a#yVѢz fS)OSւwm<~ k2tjC@8 Xv'_?sN?]HeH9u:M-py:pS.C& O.´3}:R\y2ѳXVj 7"F%xpEwhۉ⽙VQ k `֥5 pᰢX(Y:ER(x& /3V0DqThiB `0TChsv'E ["c/_1!ܺ{ wq] 1#; r{O^җ!?a.+  , 5FpJ% 0'm/Xأ! ٝǽȆ28]qT$; oqƟjfή^LiD ʔ,eR/PΘNei k_Out1 jIrbR1g7nz/0D5t;w|-K0yh~֪%>0iWרXl<¹sv)0e j8~ӨONO/`I?L+h% iz8|N2uԓOdA Rքo8`sᦒ4_ǓYۄń<|ܒ#V$g=gCM{ ":(ÑX|PYٮɮukwuDwՓ]~ulEIUBdKz/~XBfm*aF{7w%+ř7D[rI<ē.bBY>-W}e%=vvo{\Yg%z/I8{iZ =K'ϗ*_45. Y)_W ><. G.TI:D|/I)B[Ͼ֠p2 ngTQ>3J5ѸonIMAxyv:qI5ܵ&|+6ea-v1nk~O+Y|pjM'zQ$88^|W6 8Q^?_w|\bk~菓_yEWݢ޲"˭3 e^Y![7qYͅϒ/eO/ N`ֽȷ{N;wܷں?޽ `9iw uL ÀhLh 0(% "0Nu2zTiZ*G Z'{Du;y(t;ug'U^om `#òPE!~.KdRl#RZ9vy;HcInEF,o:vGzߦ*iCOؕo4аJ^7m3ê |5"L`РLH B(& HNneꢦ. ɗ+؜uޱjۻGzf $|\&UjZ]}Ov-8S*tj4bPE+)xi[~{ [O?TpGS7]y5O_%qߦe{/K\ܯJRд֋+Gr t)~VM)f€`2 PX*B'w̛߶wNj\RXh8'+^TjKy_ch8|Yf|YL{7 ea(I {~1!۾J=Ew +F&!  .;G|ח]NǷcnz~% gW=XȴnkIw FV3]Te8*#, @"2eVu.pޠ}m;8̜_wWGzį5tN,}"XF7qPGWneגhXcQg~OMt7].Q>>\4U㪰$\Oc}Q|/%)ԪTu@&A04Q , &m1kw=\īdYRN m7и4?|.ѿ`+p=}Ή>]-z-yvR9df=6=E}V*)E@B~no+/';rB֤=Aυqqg@-Gj-eE*ga3pf>4/)?K U,$* b@(& `HBc2RQ |>[w+0t6Z <^+;zCdFȗ^|f\ZULum\NV5f:M=Wo&jJ )CZcEMcrF(3Rs}([$CK0rm&ce ӯw!u)pAs?##F\'k^_]\!uOs eOZ8$ d# & F]H)3X0n*b> _ ҭ /hj^o^_ݫu5}%'VfK_WԚ]Mj/p[X(P,Q.Y0OC[~jg@Dtp=8l( Z0jrGBRdX# `>E7Q`#.iZHAADZf JP6}ja/%CY/XG<)G\FS{D)hthi[~Y﵊oּYfTS#-)+ xAWW-" D[0x$#H⻞?m!,ŁteUSRzGT/$3**MwalG'WR߮blwk?  Q_>Gɛ2)jdu|20!]+*2r&Zy|A2p7r]"i۾wxJ\13u"RkY}+]u}z1 @Y, t:>K(( Q7^"`pI-c_R.քkRZjoBD j?gbeYn+T,Z x.\KWv1,J*tSFak.]A22%^aꪦh($9  }y/X" K݌%na2D w֋gM5,`̾Ħ%S 1W:\Dִ85^3țx \h1eJ8Dvu=iNaL>%v{S q.YI 5!o'KxVM[\Ywf;o`Q0*:$HN~Fm6mu??GoʔSsH]b]>62(X 8ceSg39O/G r|,+!AVGQR;ID=%W/+txG ZbU )dN{Oj6!_`3mg}(8tHJ4ݶ}Ldjr/K25uN#C"1~>}:p世6X%b FVW|?^ZZ X h%фOl| R B*g~Sd|N>ʿ]f\-y+^ J@c 8P[ȓXcZ659}utAQ(ϗ_@F[AlطsÇ(XcNJwěᢼIZcW6fۃ0#T7bW2鞔|;Gagҥ'ox xG(H :uC:X ];ꃿ4KߖH<'?^ I>'E i0Jps3~^e$sQzI>H?~EXL2 įnuv]ǽb.VaϿM~,GCNOhF;`{U7,p0ۄ~8 Ardvr}R|0Ϥ̟^ת^BE{b~ [Pѹzy .~,f ab+ս@ @ĀAW|7LYDሴ2W$)N~w>z{C*#L|0PҙXG]>njʳA_ F Ttzn8!b ;&\eTc S,p1]-7 Y"kY?. 2"pw.06V9x%Ns! MweDsVH{q;ƤE "X/QNvj{[=࿫r}sw6S$Ev u2{Dȃ%+Sx8tEOaH %+;w3_=~O9ܴ H6jFp%"T_'47ݜL'(9_8זh& qi$(̚^VPtLPJ+X=tEhLc0L|2!z/4wmmE/#uxIo`kqa$Jލƚą6f=L +;b'6?y)\59K~'fZ/^RM}^1iPA@, Ӿ<`dr&K'2 +"8}P/0UOe(5@Ξ$o FA=a:g>>L$xhe=~t$_|.-֩Ir)?<+džPv 5nػxZ|#I ]˓èLB8,@h#tRC{)!FmVRTh #L'Ņb #6 ;KW kud7:d'] pv䧰(nl"T+CcZh"qMAE|שyKкۋծOPa0$-6Htw/qL7,HFߋz<.YsjKxc_ w- rio0U7|&M0(2 :2+bn^qp6Gf FZܑb=?AND!#rŏX*|q:ᨹqb@&]Wj}wU/~" L ˴H"7Qj^"0c~n+ D8W|إ8#yQnǗ9p <WRM|<Όs&{}R e*ox始 cU^tTBկ~UUP'ӎVo| 4LE u DSpPa0K_"&aV:ђ<Pr{l|: u~?5nF/|% |a q +Awp7v\TPO3SU/$Gqamj1g9mknO@<]]hb &YUT8}pBۏ>=f x@.BwEbxErq?uW2cmbj8TD/8BF BBM'.MֿXÚFڋg͗A%%X %SD)ٻkAv9 ҍÒyvM*zKF>h0:HB ү_`Y9)(#5ى*N-%[Bs`GȬn}+5z H7MwFO%qFUHw:C]z1B `ח1Ix=nArjP Ҳ[;Cxa,phӌ䭴a7D' 0 w!o"R%nHޣ}&׈(T?3QxLPM3OE֖_JOTP9TA}m>{y޲djvdb5?jn AMO=LiJGs;~м-V[1"ZU8txAEƈ YBA`@ s(Π3S6|Z({T~fsNė^{tJ_7X{ O 1vY~qVRjwqxeG7fdn8 G Cl3$l}wͽ:b `e_)k&[i8%տo_#o!ZUy`KOI4kxJ`* NƔRFz5[ٝ-W;nuguH7`8FP|_^$ )BGһoO kTetp %^l!E'W=OY.//z ]QL*H}ԁbF /ǢW]8/PBh~pI\S߯r/r8i).^oogT}r^n/79I{ SvJYHtR2L)]Cr~]AJ=]*dv1!dlY'Hh;_,v[ ءm:z9|6V4( x%nyʌ@@v?yPPk3(#-]( (1 3_?sIƋgcAE#$1|eD+d``e$Au}q!14 ZOզ̻qܔo ICo$qam#7JzgG ۀukLpkƗYƴBN7?kq[ 6En:TnE602zmquP˸ìH>_t.3)i[HB+ D[WE[؋@Lr p49 S4ތ'7#Un܂d *AAP—r-.7ی1[ c[ GwU@ p1q-6 Xs"Y#W~{ C G}K cgjܗ=gǐ#]XJr?Ƞ4=p|iLw{pѰ?`! R0ģ|? Z"~b\F}H/R6r?_o ƌkײ$ٸDߘ`Ʒ %}\2];6fb_tgʖ|XnBxJ41Iw=F'6Q1/6\O)4&UaW>T1T@ky滅\GyBWqcKϐySx␡,ib0^&H#WZ%ZEůq̮|>jK >U􍙕Ws򟡏m?TXB@1rOm>X|c|QzJ#TK,ǷEuGT\gY!"arF]''%UAn|@f@QQFd& *[!.10uS*k5hU`!s*[!gtˈuL&er0fP;Q9\ @M 1`@)a{cN_оk>>n%˟15'rDq?[%P-KQ?'TN'I"d`MHki/- iLG$Eu҂SbxEcDA7'Cxh#UnUi+Ipo/NwzW/Ivƾyy#x)ޢ(@-o2}uUwK<|AuuKЍk}R_Ec&Z$nTW{V ע7UkTZĄ2} a OV.3]\\.`jQX| Cu)tzp"f{о'WBfœ,)ž2B—Z E 3Â6 Rmsa$@Kc|2)ࡖ 1 o,0g̝bWow@x@X9cz~; NI.BEYLd}6)9|JT11 ۻ| [_৻>8'WrA]!q~'JW} a`X&b"x- wP wР>Ĕ@2_a q:P^*hJ #n7E0f$fL͍{a:[?.YK~qI}{UۦWqK/zS5hpJVJ |!_+D^]Rߡ/wW/W^A@ (xL6FfB D 072VF ?@&P|>lޭTو#Ѓߒ4I2i+1H?G A_M)LhwS͹œܳW 6wɯ C8o N_ TK_.BzB~˺\5johArd1* &7X6raPBU"5%8EΕB=zy;}<(J Ϫ@<||`k0}R _se)q J`l]L{wB8^Och@I %N9-CfsTx.F3p_l{C~_U`^5 GFvKݯ|Mzk.$a >|Wlbb|4fG}~_:<?_҈ 8TM!nGoO" .Noh/ /^rEU7a+j <3iK"Q[=6'-K:Ơ~|Vv6gΧvrhZ ,FhHh`xjŬ'?ne'ڙH#$ Uv܋ d<ന=ˋff ^}(f+ kCli*􂙋ֳ?}|#TݭIp!dwB9W{͗#f2L&)2Pl;-&~,&ݽZ,J_UF$pWiNR9GxtTIijz3(B9+ !aMd7{7qCfCΔ!/cEhf6^L7Y|Δ,:h"sj0b$cmJ |Ar/w)цߍ(,2r;*쿮_m=\iƍPh3Y46})33Ҏ}(R  4(F[aGۿ"{rܞvDz6tэQZ. ^Яw#:"5ֻ7׭&OR ahT m*x5 2P TNüz1gI~ְt(_(?1qe'7+a i0|e4TUmY~q}~2ѪbKSW>xTʄqw(]OvkCL!½I00{= 3Z'#~SzCW;WR]k _/$ QthgP;&TbۨX/mP@̿ ֍½0vT^L3eLD n1Seٽ2f̢Q=c&IorzT,'-ڷ*ͼ`D qd" ʾ 漬oޭbAS N|`c=5h%ͤfvAF;aƕXw&~S5z< W'B ˋ*.{٩wa? 6< 9ew%5z|n^.r]@/SU\20h a-Qy`4^wQe%h$шwÅG .W*a$i(! zuљ$08Dñ8j:?z&}2Ҽg bre#XDL\KV*ae0'G-^_ðy߃aї]d2С2ӞlւV"2ZL`h:EUKܝV\:b}7ثp2|>vɫ<`Bi6^`H8,}OL_U1Q\tTYԠAL TgzLa2m{]Z@= fF~CYecZeƃɤ+|#?ہԿ:_9 }:a ?O(Jj4OKFĆvkuo_/:u joM[d;><:_~;-%=A&c૯uVA) !k./ H/O7Æꁠ<__\S2 N,ce& F(iڷ>:'CPn/oy^f~i?LC)ܽ J~o~}*m̗a°V]F{F[٫w2c&mڰ%&Dzyhtjog@(cs9epqopvχv+KjOaӣoL [4a)ݹM-Qʻ0B$\NyIEɇrO _Q}SJ)S^"KtV5e]RVϙITryģn1&$ 0~n0UCmtmp .C?u5/jbWf^ϊN}zMrs8 +tU㇥篎zjwUYE~)<)fEZ}=[F9 84'XRgKo {J TE'i ;(b:^Z~[Ti9>؊JtAT᫓-쀖9No 5}g1R悞'xsg6Rfdǚq<6R\_l6"6K1Oqٗtqmrl˖*_oǭ,uRXYp#9uA7U?XZ k$w3I5U{q}㬖}y])}Ɯ}I,oX=Q"DoiF7PܺPqfA} 齤kU+,;/{dH͓otYR! W#z5CFKL$m=lґ O$#E>Q eX6G'ξBC 5.M i$  "U(dۍMxTh%LU# k\_ ]ǀ#+t|R,\i&koUl3{}DW^'+@" %釽eE_.]Ar_~_wwrZ_}%gV3/{W"dX`V3WZ5˭h!굓4 ,S8~8 @UC‰"̂A 0F 8[K5ni={\\s 3./\]E̅>QAL6 kF6y ͊^.8fHry!`@Tҍ5iF[/|OEao~Yԧ*J(`ީG ]rZڛk)N$rgq̐i:Vzw.-0R#RH_2 ܪu 9F.mUM5^OvrQRկU j/xdT^ HTd @Aj<>so ,Lҹg |>(P. ӱ:M[p@.T:&UΥ*kߤl#4 xwv (@O\%c-Zp}Bɸgt`vkWPujOO[sy~|PW"Vs\BYDhw$תտ^z[ pjX4=x| B, B4cʛt<63gdr$3Ӵ~_w\(5IeDNLujVCMAzn(v׮s~wִiLӫ5/H+Ӽ3]23W_,4O\ ޵jT ƙ==\ pTd& a01\glRccBڃwzњgFZök`4PwxEt_{`F6@2E Il&&Ji`0an`]!FAA;9xO#~C _=|$ۈĠI`6\O&P+m |`)t`h&el_r8_z=s`':x6,,8,@Ow`^S£}0 o<ᚰ7f_"/CʜDŽ5`=jַl)n_I9 Όu3LEc9&4 T.iT\'] e ~z5K [/!luvq ٺ>L: ?p. V?d@5$L!G s1Mo }21sQ:_4wu 5EbuX~J??y!b<*1BA!V.\Cb Fֽ񍳹xRcb2ucbZ84`1wM,pjI7WXT7^b.+h]K!=vwCmʁ8͈5Ph̨|FH.PqBB5_J<+Huq$u:>e9ξ^~ZN'f_cB>J(&*9|iBjo(.U/{Tt/Ì!;0YRo7) JGȗ [ )S dD+ҡ|Te+ΑOloƾ8__e 5WVLLY~J&}y=v? Ih`&&ŕ'$N fD&Hyz54rTK\V t@F5Uɕ]Ҿ}(n84x!+>É>Ϛ9~o@s4ppgp).̕f1')1 ",]Ը- BHIh⬞E :y1u;A G߄ 2$|%ۿ5ŜuQ2")Il$  w/݂.'C2(_;#N^:­|Oo}ɖev`yI){$F8ީ5v2"YcgPm.=Cw}B>R) H&-5Giְ_eV[ڃirC3hZ_1V<5=swpB$_:ϭDgi];c{R1)Raou%/ sgԨ[G?FQ\ F =̷J‚ez0cLˢ9G` Azb nY.}y( 2زa1!.0D0* ,8 -@$ Ĥֹʈʺ{߮ˈtO/\,+DuQ>GWGzrTOίUP%*o?3fᦽcƙ|8"SemηA ,""]&0aIW@*x5x'>fxJ>  l?wВ|F U _gE=UϲհyOm7S6 IMNzeU63If7u_JҔvvˀP~qO *xևt Az swH<NJ_5dk{1 v=#Ԏ O֑)gM)F}E" A0L B HB &=,]UH˪/Ye?ߥџaɭ=ggp{Of{tٱrd=E.m9H}+sСF*ij34~S_lRON1!Xb g^rn)t5LRYqrC=gd N+)c_&6I*'9JaA, B@, a@XH`HB]Us*V^jk(Q7y|bU|T~ڿˡc}H:uں7ȷX獝Erזk[[4g&]#&r[jW'E_%/LjsGn1:U4aDe{^ZE5zcot~D.>rg,[۝W|*60tR9}!7-fA\Fu&\-Ƈkf.SZyh{8(_6~SmAtg@%,Ez֪(@?%]8ϝ1dZ6QMc{ԘcQ=W $( ƀ`,H )Ȧ5MeIZڢbG?|G˟~Fr\0|K4WFKGzix8a._NM Sf)}Doe7X$09lT=TRkL`S8N3 ͈߂;cnQq *Pz )@9o6˶` re)fYz\u",3 a@0`XH( A0DF!I!V]j]'ݺ:TSUU$T~NKD B7QYݪr\s.7B^Z12l,4أ=y~SYQJ~6j)i@bU85sTq|^uMm@}o K&@"x(L×]TO4]V\$1yJZ.kP&JPl}~8 _A w}b7WthMbֵ֯"W|grZt ey .q?mKRA'ˀ pJ1\fq @#:Ak4A?_Z9!l[ is}H:|en:kiCbsekz=a0'=-!僾NM'sVeX}2r(Fx1XO,Ĥ}LH Q ,e&;_yz[40x{ZW27ATTw b vr \V$\~_Rj//;fUGB` 79ьy< $FE7 ina:5L-eW(Q=q/ daOxZկXVV-zXeP-{}A08N!ak_/`W $5(6 & /{/xx4tv,`o6HQ\ &YRgO0Gӛ>lhIy` qc9mʂ|jjBtuVef&^9qc4uKj̯WX,ĎIRAF R64L5L'~b`{_Zv}R7q* q߱Pc$ ܏ Oyfuyc?.cJLpOOf?@u ef5[{}]cc c]نr.1_BKM+1;I` NhŅc0_Uߡ2^O {5V%^jZ_jIɴ4] /u aRO1+=}@U?߂ d8/:RBx@J4^UGSY>|r{?EA.>|9&B;z o&*d؝s~h/݃`v_AkTrz^ z&A?|ߖM_W ^Lp*qTiða),c)qǁ_z6cXʝ#j='4qwo feUwwA=d z1},xJ_Ϻd/ ˨qts06_ߐGoݱcIra&mu&1dUqăOUɗ2$N; H0R~^pW|Qm]P8];6zIMAY~,B6 -1OQ$чDȻeY點g|`{hkd~ l nkr/תxVE~׫P\7ft# AV(r']B] )~gC&Va3|vOG|x 7j7ox|f1Opyze+}7O)T4j Ci&uqgom7 D0<`YW]wPkg!Oj@{Uu0g3br|K]BPx/t>&37H'>nς:U^=qo }K] z{W1>T)L p tpaDJ s 9}7P$(@TF^7%<2ݹ5*HH(#}]G^23>*^uhmS\e@] ^Qzr氕*PQC~.銬>Vb'5lN.w^/VOC)1jN+ːۈb_gK^y?Ò[*+ke!"9s "qKl_eorTEHÁ-8G]l]/-0ǜ%kf 2(Tƅy;MK tX n=z;c!Ofy!7Bځ-'+;+m6۽}zDV\ /,7LBʬ[տ]]z { (5죓fK Op7,,3{="~T]uvi,RbOS} 4Bu"E ?%uм(4vo W;mFFp hw1(v=Dgp+nnj{3Kp$!18UwQ$(e -֕58f~п')D~ Yn-jE2,J<{QK꼎<8isVɴ/lw՚VKvVHR5`>BWT(}J{ eηK{xZoWM{ĔHE嶺UZ>,iXw-cZ2$ 䦼 ;^ hx>j|F _7TAvh =@t7rpaiR~_(wUѤ#Ҫ+,ERr|$Hhf@h97D؋fԼMCwI~OO_]ڱwDOX1Х`-CZ֡!Z} %#eK$k'ܲ~w^^4': gEu4Si`b*H61UCZh:``4l@pi+NM㒎ch#a\0M7zuw"}Bq'ݫ^뗇۽{ѡuuH=IM)A_eT3&XKtMN {_*ZjM_0Êg@6G^̏$i/F ӁVw˾N+M";3ְw&:|7^НI~[wŭz׫Ij_k_Hicy'<} cgE޸f )V+V@Igcӄ/broX' Dg}~W^p8 rۏ!va#n⸭(v,.^|~IK_Է/bׯ`P:fowĸ%9|t1 ZK%ᒼ-$gٻL?9*l'{ WV\bHl.xΎפߩү^*RX}Y*~_.UZ\8C>10oU8$7 ϖxX1._]AP w.Z:X ^&=Xݯ.pӻ'Anc's* mzaf[Q[DcYBJeZ9 Uq@64(Z" ۢu7`gJi޹_'wLۓ;"ǯ\h goVlRo_/{{O Ir uI;@pΛO|S]!؊8&_p0źQgC0{.]rp?Ǒ=̼U|!|K=?ƟE ezSxp}կq$TcE ǘZD ;JlQFDh55޼Ql/D DdNױY318V8XqKKV%.!ٟ9'KIV,OwsOG]Ws'qn7''svwIU7r؞QTrSƘU@fDsAb|xŵF2;x뛛`=x'Hz{KODDc^&Ku43ˎQx^"LbR֢ '>"Hu.ryIz.>5$+s~#t h|2] AZ׫Z|)EcȃD%wDZVx oeYlu_@v;0b >AJrz3wb)^b^bczԖ]Sׂ$`tq$+y8tK/E3-'d 1pN=x2;lz IXӏ֨W]WzXU9td9Z V-W B@$;ܺX<p C{`5VSCBGEs]]D]ZܑC+XʯOwNkAQbwrڿp&Byllr-abQkE|(eQFQ9pr$X30-ʥK*e< {A KIX]rU+|䖺CXS/w|u UP_hO{B_O^#ߥZﯗ/ C!7 Nc*B5'=J}s_c$ F1v/_F{&[-zHO?9#p;o0 L=jg.ou6}l_t&-UԾڕ{pNe|vc]JgHQC/hߦqkr _‹gNoA,P2}Nj= Rz~W!]Z 'F(v75|y&I}B܋ets&֩Q ZHhOD̝6Dj4|)'z=w%~6^.fR>nnUUWloO1q' $^@q*"JOo\0T'G.H x52}7ѱj !)I,_kP@*Rh} =X@aoܽx@KcC!~l/Tzݯe}u?nH`!...YrJ8, zg;yq.!Va0zĀ>g0 p{#6{˔XA\x FGG8_e,&Æ әo' )4KmRC %?iľ$dwÐYCK}ypIݐI`,}^+B ecS< hrKIrU>O]@0{05*312}KK5zx,# =' B؉_>cWn=*kYuxVAQʿԵjl'|jvkoO9׵2RdD9{Vx_|SIV'zHtۮOr7p6-$$o˟7 I{z]xI6 ڶ ZaɝO¡YZʔ1^jSwݫ?=m,gR@M3h!}JbWÒxJ6S57+N_/}PX'`+0O !L[2T >Pʰ$B zK~*#nƥ0O=DF 6TJK3 ̀7`Y+|$Nw% E'Zxqu.$(%$,Kyn> ߄ߺ=b׏1[O\8#WxzGeۍ.P,>UZq|&J3C&1yς"\r aFD7t=R''4eGbfO䤪p?|@~s@g cx\aρ$eӾ_;dAKƉTr"0J){W:>ĉ  -] 9͙|RU/~~^B+W6F5~|LnrW'}jJ?+nHJaW[ _+@;`jFJ?|33un߁ԩF>Z<cik+!B^ʪg<*',tqWbu Dh5i$ _vquUe\ (oqQ, mqep ZCKYi(fj Pf&n pGnz~:Ep/顧//sg? R<% 3\ވgWOkI}W5lo/ډ 9,g@ ->en!=헐Ƿ˯,Q}Rg'2o%~=U֪$~ܣ:kDz@?$D%".j-nA6bQ@m~ϛ/떽ɔ3So&g;lw5_ J,Լ8Ҿ޽E/_|&8D<FÖc~ ) ]]+x&|vrWʆmE?/J Narx bD؝=S2 Aj/w^wEnZM\wZ.3pߒumpİoj aa|C:MI-kb˕l Fq]ߺ݊ivcZ0z溪!(ÆԝO\?P/1{٩gcjHK(81l!㧍E\gӀ >88 {jo^Ӣ.) !uwx3hӃJLېE)S> <]u\NQKqu[J.^ rM;;I.KBJL ! Gu2X%vڱ A PL(ZF.4I vj*aOaxdj[ZTJUU9[|?}-ݬ]Ԟ.ԉ,oG@Awh{*|+YKuxk֫)}eXA@Z3#P0!\@&X#قȖ?0p%j[zz 6dHusrּPOuvU._J窹"| ~BpL8 ED7h<&`odĘ|] ;B~'A9W,֬K} }qM+htf{Y`rV-{0!8)LAxKC*LUgఁEKAo] m{7֥V)8 TWTMm!/VKUݢj~<-@"QϽuF2F9K'R$@ %GϟB,#Ss//,֌[xIܾN'n-fCl^ba(l̻Q1h.݄P,uϖ1:ˤZd [$t_U\Z$_TZίܭ=[??X aBf...../Qqq!UFGK=h+ n>}`Ac3UEҠuئW丗:jsMZjI~a2Kq}>_Vi:1 zJZ5n^e|:q&G$^qV3oA[%6e ˄kGcRu)zU{7UhT>!'ؽb|0pHs+ ,W?a!3j KUz@j@<  4^hb --m2cXz(L4W?z)86}aŅ{}Bo'7@g Q8"aHGi|GS„ P=+s' b~&l$u!IY3ߢ } $JN7jqZkoT#jH~/=K oeC%Sq|Ojy]!U$tB.?'q[Gh=|΀Dl-_ Pk>_}ˌ,=b݇ol0ǀzsÇێ51@Tq=o$O|}C/͎긚`V80ޤt9Ḥ‚؀p>VvɖȐ*I\=?qօ;Dz33E<$y/x!hϬ6^]9S|4a1Tww߸'8~4 j8ˑ*]n뉑i+~ZpJUsey~0^Tϳ).#KO{t՘_pYc:tNxd]0`x^!cC ^1%ƭ zVe7:JcL f߰*+Di;]RS&R[_Ƣ}@_wAc>C9 L{W ȷu#=FϢ:HE| s$tc|%oc 6b}p~_jkVSM~K1!Lhu9hqm|%-vu~GI{4wuDz*:鿔Qa2^q漾 IG![b@GTB\dY&kVG=Hmj{2x,P&J|P2X=I&3>~5=ww;7gBIf V sћ:ğO4̭BC&+ࢎL]ZjDBoV{ |V^sH 2 .X+~pBgl.|^}t WD&wtw;d4mu]&/,&1YW;+` ihVGƔ:NqْiG 9|wOh+`S @'F͘w,c) L\]q'AfldXb|$alq;*E!?ꛝ'ܑVyKEy-jU݄Cߨ-{_Û|'~H b_ޓU!!췼o/{ln؋_rWܤZm23D6٘|E~ijrѢ_w4U~UD쟞OK >.K'C>#_ <, cz>31Ec,oa/]q_҂"e OXd  T/W G/@ (KK;x]Qcy-`S|W"N b@"`X. B!s;Ȋ&nk<&IoÆZ)Y=Da~Z,wګuY'qʕ>9?Iuø賝P޳Q~/O#kS&>4^̫㫦.|H%PA@ʟ=)g LP< n# jǀm\H_ ;%%̤"^%גt!$-o"USM 4ĨcNL˦<5-Y [{.mݢ80 U).NFd! cN=KTU`͕K#5u5X]?ӑ㜌OӪ`R斪BvB Xs)em\%Ұ{@b \q`A"Ԑ& BcX "pT""\x/5Q*2-ԫ_|yuE^)O[^v:_f{vyIo̦۟9OF >h]LRH0PC<;4Y\$hg ~Ps~'hs:vM (]~h  m*n'1ӗfwiyhps_W_ Lg[JODRX-ºXI>Eۀ8"Tl a@Xc8H dzșR,#r_ Rt?~ۇkNRco[wEe{#)A׭NU,3P.-%:Jdĥpgr3 R?XSY`y OSBJ7m(bA}%<+%uZ:}@ĎVl ZuTQ=Dv/=p#c*q+yDXU![_9^}b/\_qPmo -7щaU#Sa[%6FaEg( El7$Wu ~*LTx\D[zCГ& DsY >:Zz UaU5X[+A'TN\"9KwOUeq*?&;+Am#Xlw7OC]^i-nk -Jj`Ҷ8X3.2H  pb.ArzqW'խ|ԹrvOeGt-zԘB7ߟ9C7|dQwSn%{HPp&S穣?$,@ 2+h ^ lO.z/$"㾳JҸp1w8 JF4p0b n^+;V+/I?szZr^t7RlẸ^W]T7AOحVUx_GA,>>AP) A#X`vjXbD?>stF1Ijj:irdSSUKyFbQSX܏M|` #FH< nKme~m8X<2Q{r'Fذ%mYثE{Q_.ۗ`_x {Oդ_W*BT5Ïgo|SE 4(շ8;'{=-07]QY"b&8\#k?ׂW~u_RDr~0@ mxT+rܘ8[ٰ{Aj֪z\I(/@UnU0)b8jܬɅ(9)"j0n֗\߯#O]z)ӈ'UeέNUw/Z_1$y?(,8XHԙǛP,j54GlTAsP)b77гBBɀ9ĵV5Q!Z mA?]M_e(=‡bJF$?'"2W"*X^*L9~RΧNYT7m(."G _Yrw%0~ JUl/,f$ Db ‚#@d4B 9 'ר){â__\:[ZPڨ9^CX 1!xgмTϨ8Hɿ$*]fm[~UQ+?/u}>*a%ViF&[OP@HQYc6F8uBg IiPY+VjC]w [Fƍr| ۅFaFX3IɃjl01:STW8wV>6PԔ\*#'HH!YEPẌ́KGPCE\Y -g-ww0fo7ФuP0 ~j|1yj !!7fPc#FZZMh P](d6xEd1'rܷ. 2{z l\r--d_Mi[73tSu|LX)l@m+y&Z3&HnVA t]_Clѣ7pڄ 13 cq;-8|A9Aw2j5p/ͯZ>i>wQ j F|)H#Ŭaq  O!η:QH1D{j<_FۘGP>.`-;ܷ1<6оx`_WǓdZ[W~w8\Yq_~4'}Tk^m\^%Ֆdl*ۓ AB0iV6vK=Pqͪ~,c['2a~o8͹~^ ca3й;g[Bn7'9˝ec)y=?Q5Tu!LťlS(yKaU6'˛&i鬞v*龰/u0Kty'tqwI^"_Z^\ix9=  qQh`w7vZHdå9eь˱1km-ëY6˭^lԏՇnc,K=Oo.fv]9my0'YY.RFcwae16 tP(x'Me/{VK?VʛRkO5EC㞏5Z|Gyh.J]#^$yuy~$vsg[mvW:_Ac+9>bsAq9rZPAp*f $@5C!,ݔmOE] lfgS/˞öx@M}|`hr^#=eZt_g?_}4( u_8"Y`|='Y{Y&˔#F%nt 싆0:vUFx?M~q`E1,H/;4Dk93>s)F3}Jh̋T3!s_{SXz){dz^goLQ2r -2`-6SȷQ 0mU_({il@1 j*F5B- %~ c=jM͟S]!իÒ7 ]lvTtLyZq ݌YF$` Ec =*ȹ̾[zJXОQ~Ħ@{^ebLZAQLvI!3B^XgB+1K}b2+㍐[d.ԐnB =üO 7SyhW86 u=49lFdOV9ے{Ͻƛ.?H~! ,]ZWjاIZ|.tlx%f|F86*)"0d4ȦZ]X,Vv(Q|JTsv_x@%4?Cg}r].倝# c;EIha,}oizZ<0^RQ}1۩Sw xïH*-R˜s'DRVNg1 ſ][]",rx-Jٖ&W#B!̸%r9@_֑X-[/ڞ~2w7c{$g̹f^>FPdΑ g.gdn)= +0*@v5Ix z4aAThZ10}/W~E|ɸoݏ='4|9 Lk,"</9jm]椗U3 4{׹Z (v,qVI`k#i1)s&{ t]9&](fmX jRס=S7- ^E=XѡR^&B-*YIKc r^C_,H q4q@㍊TnӟW)b1 ƥ/71+q#;X/yw}T !,rͰSxŭ=РRd"J)W?*d|MVwx.j6Mxj_v(!Lp$24(.]-^յFpф" ;X4.,Yp#ib}ׯu{ѤdQێncLD)*H֡ˏA=w@L1 N]hgBA[W&%.jA:kבu={x3)(b -3[P,U2Xqb?/ AAF p qsLT8bj8zQ4_A>^zoܜOvF\zl ':X TÀx9w ){MuDo ȴ pҕ7~$G)p; 3LGKYjX,4ecmX2TtsZW; abU z+du4](GuԽ+ rsvv ;xx (l#em*D,*Y%ݚ V`dX1uG2VQ#{`{?,y6ڍmRuږ'gI@ҔB܊RT-kQ]V qA~Үc0 4 ~gW;&dyR)A,|])CC {&*ugRUQH|O"+I*Оnp0mMӂ &/XCr7oA/.y0sC+Pz<8w5)eŪTB*O_'N߸Zz$hX@.>tI* GwY۲Gl a2a-NG-![Tݫ.VO~1C&3 s^s殿.ׯ~o.KWt]<>*:"g{x\r-=8/e{|Ni$=']~ c_jYkR+ZAp~_۠;C^plB1){|`tHvO*_q B::NzQe6_ gwqxh[䛎5ؿZ_wޯ׮_|~l zr X@';F?$rȰW T4?Ew_/$6M3 `c4dQٶQئ/0F7h ]1ܕ$=rd5!_n\o{VvƊJ*l/- .o^_S'Q}U5_FrYY߫%}ZDhȅz!4Im8I:kJӅpBc ߝ_': =Ğq ?.pSIV'BB- *H}DxYTQ;K>F/S]8Yr}S~M߇ R_(SV_ZlȥvYXLհ0wqr-VR*_Z-KKR1 RIuF{G/Kq[.PPja!5-I}Y EGU#P}L{b{N_Gi u Gz" 縁A?þqIqnA}2o/zE7*%[>0vitq<_;ed6~_ҽ_hpV J2ygy ,{zW R|42㦉NO/-,znč"D3M@x?ܗv'w~U}9'Njb9[ ^XUbo(Ph G A}ա/'x?e￿p,wעjO_޽^ p<C,pE5k3 Ǜ(wcA] -fRyL1Nf cR!x*8zi\R/r_hmj./ֶ\@uTdoo2Z8 P0Yq ڡ^ar?,1C1C,1C1Cv c6)>/v]I<,2pa(I?I0bBS'&:5ZfU8*OgզQ&C<}ڥl],Hj7Q.uйWۄMRgk9m#gG CkTܒ*G%fkAD "k+~5^q W%UZ֫|X)`xA`~1eU/ˠ˗%.fZBsBrA0;q~aL ۂNìlK8VyMUW!jlȠP5 {45K`Lb#nbbhp »38Lp*L\*?DjI\{=kԵ.L&WjͼLPDFq!OH 9o}?/ɿE=$ Pxh0a_3X;]Q>~UݫI_yw}y?RĢx%bNaʌwɵGwcd}S*5.Pg8byt/nՊ7y>]M40MCF+f jKq|ܼ/ŷ-|/ ((_QLe/hR7UՏ֯:8${J1P H% j ۉ8]chu zJK<[\oL¤ 2v?5?jT7@l t@8bKkVPML֣I%lOmg[7Zxg jF>bf~_PYl$ht-=OOn[GֿV}EH e &Sd>pv4&CT 6ChCJh7:0j%w毋pt * |j/ !}*eɸP ں;!&_ ~j&Hj$Wd7Y)+S JZMYBpg%4 btDxQUoluCrעuwk%K 𯮸'U] 0=CbwfaոF3ܾ?"Y}X7bqK4q! 8/[ٍx/B{%޼,5LԘkL,giL[>1.69`VTd(b=xGzkW%iQp?&S.jBbbVAe;&f1)YHr4x&->!4 RaU]jLӗ,iuxLJA& .%Miv cbz@j띟GȧT2H 3+"`,g&#z?<Lٯ2TZjUnnXÔ>ZUS2Ҽ2C{\bkYDjUA&y/T. yoN@QԺPR++L!XTt_TH&Vk-CůO6CnUr0ނsϓy 4qY~2mO=UVeS1踄CeDax=#\\ أ }D _}VIJдWۑZ!goS3yUv]w y\f1]OwZJ)UHŚ,"fT{== ɏ%K8"gBoK?._ /]^<í]E&Nf +w8D$0E}Awvc>S0 ~^c={w-Eκ[GУ%JB_›QF:0w(c[(xnAF"d쯲N_LU>_Nڜ~_ׯ~Eꬆ9ټxOLy/q8`8g@R-cG+!Wr`ǻ9]8|'ܢHY(vix屹? &PETTa*u\-RsJ0C8T`34o.70g6Ԉ$b+( p!xP!Z*اO [uJTpkI6@ٓF I&ӗYHix=5!]U^_1f2q6`'<]K[wߩmQu).=+D/i%ԬOwqW㔐L>jw}~ONiL?b<:|ZT g8})iVBFiޮ|x AUo wMK|~+ت-`b*D\G@_~oʃk}߿D$/==V |(.m2ql"Q35|C3y}=" y=uhlSzzZziѝ8A׈ޓwsn"H2IѤlCr_^ D =Vפ KG:k(GxǑRf쀇@t1/˷ A}ס-ܞڹ-իkU]kS/t tRCSl؄ЄԞI ʦ]zp PI.;Qr |h끐 Pc3<@͸iv$.&;sݫZ5__A0;]ZG|z.^i||%,ѱ>Ӆ~UY y@i-2.M4pz€^26 AٽMA`'L<׃yEC әTU_ZP1;h/U-|JFh\޾\@sJinم]T&Ԃz<:smM[J-*LZI*vGk l8wL?k5׸EHRflLH*xt`x* P~y)r:WJCw\WթuݭH\@V3qMI.ehl 3AqYK$,N 6" ;xH*Gx4ŽKmUKh+ $"[rob5 .75Z2=q?9Y]rBH7(DχtV+ @q u2pu',S>4|nqnm\{%xꨏE[ޤ݉/\D*a>^@ ¦JqFelz_A>tKW5ߡ8|JKVEZH h`'r9#+nW}i9e"YrLҸȻdC'#~O!wW ,{FS*r]䈽>b.]~"y՝2׈5*%Z Ls p01l$  OB!#plWo.xC%%,q*UU?rOw֖J2[*WGMHUR%7ˊC.{*e`Å&4z]eHKAZ*TL>ndkGn R}[u/ #&{Wem%7[)_>.E_B۴B&OuA6K _ʔxNXD;)?_>T ђ5GE1GB%Fm\cQT${ˑ{$PwWZFX` 8h=g/`B2;.t.aGt&Y9:7ޠ[@VΌk rwKn6D&Mɴ^솗{$+QN\O6T٩m_֟ŋ4 b_5>Nv8:=*q%\5VLCBPXmd ꅼV~*E#b'z4cV~HNJ|A^$w%$GQ707>St}4ص{rFB{TߟzBZevF-Mv2;{%;vx(Ԑ& aA2`,DƁHL$! BTk֌$߶c.)GKOa[M_s%ۨ V?v&͚U;߅t~-:tG~дk.28`y3ykr@{8_ m)Iq >S5=wҍgb~jtGnUF>S6"@^]uftE!(8-oLCfL_ޥ-#Ct. D @Z"T(aA00`X* @Dv:窩ujWC|#?)Vw[ _82: hx}3}P},$ūTi]L- 19EFqpo uw@qX;BNu-9~n_\zRDy%'N]iB-]O 6 'j˰ܓVisWΐ0 f 4T} S,|՗{4y^e]He,;=Vc5e)񺗌m4C_oNe -d62.7>ÕAl[JJ-k殻p{>(}ukz>W!8x/p:\|s$-eЛpP@Sz ԐF+d X( PJ DamNJUfz%G1|ft9E~V]߃[k| |6^G&*hܶe|k^yܥe[=U=BEDSu!ϒg!Z*rJuȞ<L}?*gްŮ,5/Ro$ L>+oMq(]Wml)Etf{\(N1oJqU@. a`, !H"%we]V.5Y+I :x+Gxy~MBN5%ӆIƏFzquU{`Z)\H3r HW_/&^QŷSo=]K T9T_ue9*OC'/uFHR-}e/Ts%A9:YPaH"*!Ac XJ*`DDs[ʩ+*J޶8n_֧d+uEՠFV7~~pՄ\/cIwnfcI˕|jR}2z|{ kdp]^fXXz*Ij@PANBB89J$b*V"AWh":]'Jޝst'yjL_N L^Qǐ|u$b0FZ(O8 T(V`X0:bT&YWWSUp'A?ۥE~뺿a݄l1./Yi  #Փ[I5%3cl򿀓Xr\Etb/7}x]49 ( -ٮhL̡4p S9zkzQlؔ@y,_\ a9pfڏԴd EI#pw A  ,]}bZ'_Rl։|!D_~#]4.oj-) :v@}0P=Ф6*) uﺓ~ Jb/LVR)~_~ν\=h*/FF\D Pu.!ꕩ?A(D*@~_G?,S<|(K41J){BF'1P9Cy04[d:n,hIG=R\ wIlT_;5Vmz9l( B@  c]FKRx]q,*ݢFnO'O/-31e .uz}\zڢ~픚H 2oq]9P1e3h `'VHC<sN6AQ`ᱻWh|LUuo_6/uOW@\VV)[N縯v>_'O /Cumz<'d%8x@qܞU45~7;TH"[xq>7})p=c9xO줿mDK^~'{aⵯ Q LJUuҼ038P#<qFzmHҝgP' Sqtׄj>SͿc@$<6@+/*`:'? Dhg#o,6VQ_Ĕ 2/V^ I4|M ._kk7׉&q'wA,=ѹrSM)T`$oPP#Y ;_~Z;VKhV_ [D 2Bz/~S'?{%ԁdii)mydѧtnV0ܤ&Zl,3{pӁ<!T * w'fd%DO}daJO2S%c-Wu5Z)%(g Hg&ʋ'}UT$|>?]9U5^HrDE#a/mSr/Rʲ_"z0Wzdl:.!81Hz*aJnEgIscOˤ܋ڍvzF餯қk'e)vU8@I|>TVD< jhā+#*J6<RpV^kS;lJ>z0wƒ Z.V6[dXޯ3% &dž>{較>W{_ivXd4_z\㞓J<A0VTbjT6AQe^fqSiT\\\إ\^ضmdĔl/jO>|wۍu.\~!q뷽ajS|EwKW׮׺XYWKkɗt1oWZ/]!=0X=OWտW IeGsW;_0$m*x+f[?\pF f=U\kW'5z~ 1QڣaZM%ѥ$s܏1=Q =b=\|\f-9slf!>S@̭ϖrktQlU?ѹ=P!"a7[Wo>CP07-w@cWK%[t5VB Ea>l}.9^ (cV1*?5BzՉ=XW+XJ55J 6k(=%<_ӍJ\XxԢ,Θ_HF˿PЃRz\m(ܴzO,xoV5[~D:R}Li3n޺/RogQ8amoO{pe1ԺcTO{R Xc*q %89J{i5fMG__qWZ[GbV>Em޴vOO Uk¢UjD*%Y|@^s:ǧF8IyӅgNf,IbP":EmXr'U*Ƒ3ksSD%oؿJI+8g`>ezP%Q35EnT&teۼBeclo>‹ib-|rCY3 &jR{iwy8KN4T*V$O(_%3''dqد6g&&F#it~Hw_硇K˟Aao{t?$H[DڜЕ&)}VK_unj]i\Qn{Cf{"+m e7WMۯՅ! \ТU9EcRr߾En v%d$*)Ʈ55þrLjd϶5(eA~߯_vyL2FFaZ/Iׯ,S/A b~[zݱyLZl)mfMsHfZi+cQ2܄HkMTwA/.Ky/A`U \Fa`ZW`?U!}|V!퓪W ջ% 7ugd!rR^K?eIc#}U6~Tyld,Lt)uV r _ X}B^yDJDZ߁N` *ti_)eUϲNwR3I/b)'S[GA٬#ߧD!E* þI~@䂲AkZ¬0P3a< i w^u褞e Lv6|ɱM"[bުU=p`^^;#{D[s."A+ U:,nUfDu2md/ңUj/X+ZjisE=keoSף'x{^^kY>ʟ46u%/U!=Rzԗ$\ C -'(a'ԇơ^2W|a2z>HSD2k.n"o3^P$U ę5=~ ʽR#O_jSAL_7L:I-rz+֤/]Q9L׿?$45z3‚Dm4_I3anAw0;sf̓lE;V"Vhy$eOɖZĹ1~՟Dzn0)^I᜙F!5@ =Q φ%kR j|Nvxzդ9'ު6Eq ]~L3|kdeA/ 0gu^'C[;k'Vr u1+8&T )ѵ$vSkY/pH2b,QEH8H~B{v~ԲC?h }~ hO4슂e_d1 2șmo'/ެ#xLYOwH'ꮍF]n+l}ϝM'9~^1/)YY>Z/!$i~)M\aiP̳-'/\Ts7q7u OĈ~~&75{󈨻UcTKڗcy*R ɵ8Է~' !dys`=|y7-rj֤^8Wlގ;2^24~|y-im^Uv$w&Vc?)DNZ/įP{{Enb+0{1?++= \f}PPل@~)?KE/u ׀`H<1G@AkRjJ6ܩ_mƹL[ɪ{(*4z+uK3rXqr*i%тzNC &J+G]%ӫywkjx“wެn' ֕8r15NٻE1^E)(͞.\~E oC[y-Jz]5v?YwǢ7e ZK^޿"!]B^6Z%e7E#yyՃ.p=\~54g^hc`.^k,^n | c:aR;lA ߂jqbUy.XXS~%p=  2%e&ʦ!? iKw'[04/U^96Q8(A3}8u0QzG`QAKk-5Vӯ_딷%߆LW4%5uJ|Z $s.\_ ?.:o5 eJveUUu\;6|UU$ Km젿J::FW˿XdW,$t|$x׻Pn&WH_}+k@BUJ6+i҅8;PQلM$*W% %WĠ@ԵhOmK^:/xYC~ڄ/3}Qaz ;CxLm*3zNsVV)uuv}$͘2ţDzb:#oi5B!ඳVmLAm&FNx@ᒝǜS{@B p2M9_jr"4mR5i?$#4#Z5߹pQya\s"RUXcMᆟ=f?bDPlo@q AG2lXPH^_(UUV#Dm.GIXJ bQ9x+B,/w@L!po hz^_Zh8HdX?(0vȝ>P`z}nꇟ+,I/}9XcMێkS=A58SUM7&bq? ^^Zl ڭ_XZ2D7JPz2$5!D/J ͬ@vϨ9W 6?Wy>N_l$z[G<(_PBG}:a[^PCt Mh]<39 5LLLX nzax60-/(}&5Iq?P~aůqcn9}fOJrח˗.-%].So{rŒbmz(-+^|-{9%fKokx|+ׯ^wa}aqPRPՍxޣY邬:GʭaZ'=+^$<lhpgjWj0$wwnjDla1fRj[Ge?uY>Ig5LL?p8 x1  Zai6/׸zD]o'j8T0TC+PHP .ͤ2>r]0#-QUXCBO^ۗިP7ZŊ.D3o)RjFo{l'Nt47#8g[;-ҶpQei8`Km ï7Dx G ڟC}߸HUiΚ_R =}~ =*G ʼnh + Җ:dK%?s*V.D׽w=La3VOJYX|n 3;M2?bİ*Fv0*\"F~tJa?`+6NjZX47=oA  AӿM]7쨃t9|CMKNh ({V+ eRVeh~ǁN:]oa8iIWI+E?^1A~u?-hc; CŎnLj|:PF'%Zצ}_V~WqfV?:јc;w'ޞHK!%蕜:ܔ`q-a¤}vovw(1o$_'d睓8x\e8eLX :G'1Fefۘf_ozڍd~ew]̺g麎:Ebx)9r\uI{A%[ ć.yCפ֮EUhGdPq|/¥ 5_y JxdN͔{#GaWg{vB}Ly|/'X`֏u`^e1"-!jﰉ ZYG}όX4?⫕/j!aZF#nKf$J[g&*>v˰a=>JXܹn+&rnV_;i+}?Ht }맿ַ.e\wA?/{>8K?".[!@])J{^`]|eR9?:sնOA+wznݞY5bUuSg_u.m!zre$^LY],Z uEyW Yތ *3qo־Yhk~~bam2M^lϓ{ۭ F%|{/Ɯ3-vkEncèw*M|~x%Qo/q-` "PV ۼJ.%k_Ք;+\ZWG ^Fc`̊ @H`oqSrwdzNrce=m[QFcao\P^t%AI%+We|`ۓڟQܑo7ߑH0ȁdmUl||Rߺ#zHW/ZWXMxw$"c'G@p#nSKf5w#""L>l0v }^0LMzoY#7W1 ˣR)ww=ԋejǡ]&=~~4wݛy&t_}댻 Ɩ8Ybξ df`7_E Ɠeq{=]wV5E _Wz[-sA!ݳȌӞJo:r$}=a=I~w_)ihY5cMB f|+_c/eT:Rc<~weU  IOd2^ӄx)*('*A*JI,Sj{W7D;(^'Xads#ROVӳn)6~۵!#@ބY i·f+Ga eREǿN'W|ШƓ%]_CǥA}@Ԕi(?7&kg뿌hf#c0B'ˠZ5.^yg- (̿GԾ7~S=UTgFՏXR,~KRП:~ S,>\w7ƥd\W\y:y>;WBeFgx00YEMlK#@9>V7WEFBJ,=Uix",1[઒T;Ǻo66ɯ)_Cd\b\|ှڶg!cJ@JV/0@ K!&?Fioz/W[VX]fe =< fjJ#l#-4chi>$h)п?WѺ<56LCcֵyKiw%k|W}s VB%լ\Q JSO04zS wA[}s_9ʩ?OwL_%@?hOSVAj=G?LE܁-'} <2BbB,q^bW@HJI?N^K*׫))E8U=-iZm4Or/^?e߮7{:I.25}+~Ms=pB6 ߛnA"rZd\H x_:U~WXkWrzJf 57"8Q0 KUZ*8e$l@&~`G^ZժZ=XmR2h\8F]βˋ6s*%,3drEeR#cʂ6':/+?*6?gH صzCC|JO^KV)ј|_ϭuz%tx%*zW4e^bfGg~]ߊoZNy{Bj襮ՊwSXz8i_'W~UPIMzʽoQ5xC7u_IW5]+S ZoaAfxQ = _'k\떞EHŸzz[4E4w=vն!) ˂ZzuEO=>lHD޹'2½Cpz9.>5SGBzb[Zn^|&SCX- nL WpD [H&7oljA%˙2y]3~MrcXp238Q}yGCɄ(6}_A{SKXգa??īT^U(Fz"sJ53˧I:={ A4|zX1$y-EGw|}ARY5)hM&/^wKthzY[E+h_ nǤ3rh2GW}-anÒ&v>-mth&Ț&bLMXD?!f+Ec>78kwA4W6a]xeqDR(tѢ:'Sxu֦~dsK/C^|Z~Q}S~%2;n:~Dn0b~#@c .cLR 8$kmy>kUZ #;׫?F V%bV?BRYWoK:ɭ^<ֽhU轠E,G1ė<g">?H6tHJ{jyWIϿDD7*^42.?s[/>"(i .û)AՂ %H/_EMDDи&~"xOO4^V?ש}')˔I )))R1/X4#{bӚIWѳ\P"T]޽j_ÐңǗ9݄ B(@uAhw d̴(z 2JS࢕{_1S6 -; aFFl9}O~#ӵGUm>!OW_xָx"VKZkA/wL^K1Smf1B~F41?v?N}{>e䤗U}#%'XpVL_쾿nQ_W}-{_Ccz-0A#-^V~F)/Uj߫Wj߯ҬO뿕zk4t%`xk^ bAi\:oјZW4|Mmy> :|ݫoۓ)F=߲Ԟ}{ؚ&1cvDzXjsZZJ\/r ׻B\E}7yB[/*u_|IuTSsy}Es0^&#Xբ=EWe.oruҽI`28JcD5G3DZԷ'E^"V{!񓈚~ 0\'ca0Ϥ@843a3:kI]|ḓxR$qJ9 (P|Wfc 7F\rܷrUKCm`hb\4&v%O'/ !4~ 6AVM;݅'d16QS5.}|S6y~Lt <:$A0)>/S"J"RzlF8O|v zi{bDtdfC(``?Hj@ɏk]zrCm\X.4q Z^a/~KRR$'2>pMԾ!טɕFcfrTbecߗ-W#A~^n^Ė_+R/)=pެK!2c%L3x)hάx+;M`@8۶rX_E4bxK6?c?ZξB p:*TGNN]!=k\ /iӗͿʿy:qi?'AINYj\'rD,}[C^T^`SG}2}sDܓh{~lߊ'6B)k具~|S`qn Y=/1~X#ZX/J7'gWzIlmgu#ȳ }=FsTa?e|ׂMcb_}]]{f it י!^|i &}+bWkӧ{Y A#}hK؍v:O__ֿZYڹ<ᅲ~UFt RsO ^OWUuqN]Wh@\v>Y濈з\ZLkF} i^W'?BYeu'/=}"olֻס~+kI?ҷjB^{j[*V_}%Х/mWV&cd_G]o^_6[,Ri=J݉{ '~#;W֯ե/+i 6P<թsXkj%!Fɻj\6cI5~O sDULO;cS֡\THvG-N_0BF` ax,ǩ6? ]0 z3~j>>Qϻ %xiL'%"PФH#?p鄽g0Gc;x )8},˿RZ qJȰx\oZJ˓ ԆDuۚ/cUOtB2'_qD_ǚ$i4l>^]i[9ƴڷarvGu(iKD9SoܗhejH`N$q3c䞾;_'0Jh*N++q:}[Wj,*{G] -E"~)*,x6 "/,?-MqWghnjPH-a=R3QO}׭ -ssA7^O. {/n%z50n0(IwDKe|^>ֺ׈]oc`VI!lMc=_4 MRHxBW _O@k9r#4w'SbcbyS}6m4g8f^ZGh"|a IP#TPšk8uR`R:h1O` e}L;/gI"/p"#<za · s$8D >o,H㠗pV_WIheza ٨2e*KF#-ĒB]H|uNr\g7z 㧏 :9_-Iߍ [Ҁ0&٪2BSɃ 4#|a1y{kjmVuP!HC/y*Uk,q]'d+j{ix,&u R\6qyx0AtI}pE0#8U?&E370Viwvjec'Zm6PMo\yM|'~V~{'jshqnټB$%1̞Kk{[a|}_q+m,ϟ I?^09{˳jlk ikR_whIx'V7vY?rzr߭,]{Fxzo/A{3Tד?(ߋ\_' g*%pp} =e>ҩ:׺=$pkc!R_$IRnlA2 #^~l9p ( a@X"PT,E!PDNW\YtuuJN)>?:m{OGU0GܽWu{1'| fi% 0HwZZqL7Ӱp=;=lc7MŪzL1yʿ'p82S`y &ʓ A<10'7Kt|s~wf9ԭ3J>S j^h#3:Bc)Ľف$ @P,4 pF uZseԢ^[Chߤq\Jvb¤k˻?%_9KΥV٠~]z\\nepO}W_}fKUPT]P]0?nPkw ƃyK>@7J^Y@hL}.~z+w~}j`YY/ D_6pL ‚P6`XJ! Jx*2 d˫>~S<>OiO>c KbmXlQn~^/n]c\O߅VTiݜA.' k P=( re+ׄYTv, ܭJkҴ OHA\O(Y컻M%_TKnsBЈB9򢗓l`&* @PL$ J$ sL K*8ү5Nk(շǻ~;\\MWzfɰ,j)%f»Bp竊b(oBt+EvwഥGFjw=}sBsxeT>5gEʦv`%A1I\L9/jJ;ޓ.PM{sCϛ]$+'1v!ܧL qRYhXO^ؓ 6R h7ޮ/\Za#M Y gO(<HoQq{ =# 5Y!E  CtQ}@Lw}~>>6Qd ؾ: >2VE"&>ݒ8ec*`H7z+DÇ&CAأ &lg$//͑$`s7g%q\$wv'A!h/(v1@Y"x:g90(503.Y0R⪱!f0~W'D3Bk:2dWy>C;B< mMz_,D5a %he}O*} Z=4ꢟZQ/|diZ78$Hz$GI;'dH2~:T(O^Wڽ ׌ 1w 28S6L]Ћʿ@/E!pQ{12ІH[/%Q]Fg`"f?wܓ',~|=* FOЧ-z+kDao//#Ѐba^ﻨ_'J߈˓ zP{ɭ~x9*չ/NHJW .΃#PvR2g3vj != ۮJvQzrk>&.~zwfJ|0wႲw=?۩xt?!_І~ZcsEqV׷[ġƙ6Чo_@iC={d`t0G/vqne`GE7 |wn`p'6P͗K:)9UU{~>$ {#X%]IB2jzxN~2-ט>ogB 8"w c 662(qÏ3>{'^}!27g* 6.uz(W^-O~>E_B(Eo"YO&auœ55zH^57-=!K~BC/ky?*{hV$;XLϽ1]uM۩z'?ע/{_)f3j_ꭔo764Kc;Xx}swQ Y|W Kߗ^|ؼA!h^'Be 0/ nVtoNY 8}|G K>'+^YMwхަj"WSVZ?_41>]gs5HU 5li-Idm%\zDe׻2IE$mh{,5j-E'ww] ! .cl|QOoD[ʻ{q}tGjwK1m{$BO~E$Y.?I)=?~J)Aİ{w!޾w!*c=.k=dψ D&c'v9iݫ~vwwhE|f\r|NO! A$*,WįbyZ[E*{^J+uOD _~qv)zU>hߤGv\?V9|/׺un断\Z'ӊ $ŭK̐C? <k}աצyAz^{_)>ɻІ glmChtăwT޽޹T-^OͭWٮ/c\OkW~Mz_j_DN\Y1|7atQ8k{ ^|X;HM`:v6Kw^ \)L^&8Ws.nNsD b'43b!A~cVzisfrђa 0>}5㜂6o`9ߴcQ׸!ELA2/Q% zmύ]q'E[kY-2@!=epljDh)T]Pz٫#)6io䞋]UV8ڵW|%S6imۤ$1p<FvZWeqX^+K} l=IJuw FD@_?i?2+"rodD,c%d Pޣ/DT"[@ ""|/FV mOߙ{ n1AhoL&׎U^PɅ>JIN)Kd;jLUv4C9Z{|ImU(|R|?A[ >E=Xj?apG̩)\6ĝSBBqRbK v^aT36u9m:,X4|c/Q(@vtϽݬ7RlKLh4M)ci:ӯٟ>|iy+zi vJdW1c O[$RSj-w`nupM Ȏok2D\a [(Lf}ꍠn_D:'X {ABAs?e힍x=6c:$*i,hq*Ph5&_!gzyRabkPTLwyyk|d9 ciw~~<ր[ǎAowmjOZ}J ˂jL\A'Wv^g}5-ZٯЌ4b_5}rs,sPRoHw׭NNZnY$]No#z^&߱R_p€.*:;n7ľA% J}K|GdXe/G}-ѕUV־U ._EX14_UlӪ\1-dw#9ACrjbA߻\D'H(ֹkS{_B8i;:VLg&VfYXLiw ?e҂tO/_.Z~832e1%=^$>vD_I"v2[ˆ+lk0`P^s81pBM|, 7oK/n¡늓.~ߔğ?}G1GrnI5Po=}̞(BmcL},U{B 5tIEqˢ-͵2Bw𑾳 蟤@@EL-EScMJޖ3;E{|~;ﷵk>8sWي\fa{u!0B6y@GHeknkeIͯ_;3\Ou2eG,ar #=Q$7+?Y(춭{lWIiqZªjmFm ȏGVQ*/h\\gIZ*"DaGLCf[4T["~Eыz]}Wu\~wܞqJ20w*FY!yo1%ьTr'྅{C/WdThe,ղك=取YN\v}婭ˁ˽!jI6r$B$Cqz ĿZ׸C層Qu,G<'-{O2$YP ߬RQc2 MhZר >?zQ[|U~)oj93)yd#\&ww>_/ɗ [/ôrѻ)ay!hZޠxTwBY^ED "{'+3ߕf9'B8cf|Eď>ejv2z.]n[V W*\Hl8**}L]TA rYҶտ⩒"@d W#[ 316c7~$lA2篤qdw;XoXUF+\N/W=VUp]{o"  QZA Bւ@&>SPc.*Qc?x>b1Q<.`^^j^1 ht#n_s 2>OQh&'pF qTgJTo^n׻@B~DcqM Eo[_}{{evLKXn`o{^#Q$S hǮ`ai3J!, 5C۝ >2%KD{?@.|#DGԟnoeiͤ_ MU{\ּWMʋ;/~/BcTT,OxQSW},)rŋ^@*-7vﻴH޻&|8A4 -eСdf-z?n!I}5?qFE@bP|zMSˉ!7ry0&._9~f ŏ1G@!ﶰۙ4UETX \P"V+x /GlJpa7Lg1F \i2b8O{(YΑ7G %Z ߦdNa:!9+/zݏWcE;o}] 8^J03KKv k {N-}/":Sڏ^q"w@ieY"e>V>NSm%t 3qr F ;Ӧ?wWk}w~z/-03(eY4_q2 c7!P2SW pǏq gd%v{obeN!˅cA| Wǘec 9F67l{ =[.ƋJkQquyY+,FnPV?lo,3mq*ǧ()FUb?UCAqcD,>Gqߖ]/~)ywh[pz3 1g _ߛkGP:(z- @BȬڔM؀/^}ׂ뽹3^g[לiZ 'IfPy3}9qKр?v U ehsswu UhV1y~Ɖ(aF;c+ j s%н;UV'ڝ~aFRQ>ejTf٩΅zӑe'1h{ &\ 8ܟ~. qF>0w}&@#N!/빪MB9}+62ǻQU Vӿo+^s+Z(@ʵK"TVbRժʭYw.k|~{Dq럻!V^O0wpga?LDNfQe\My7b7_j(r\^KC_UϒVI徻DkZ_z}ߒ ہ4 8 `Z2(%7wYTw+jO GktK_>tlSOJ $p |@3thr,-N$ eAbK|Viܵn}q> r\!;W~1ux=___lYuYɍ[5"kJrRB֬սZN$&#)À, BPH"nu)X֮x?GwSvNAw^>D?ww%Ϝ4JGZ/Tۯ0L"ny2k^ }/ 3J1THק"aB;8JN(ɦNfP>BGv72#8޺u} kDbRPh"[3]( bXhF D`FWdV.%5.*N_|t~o_%zSYaW<΍.ngWM%̄?}NCa=>tcFԬ}ϧClWN8>{kk|ֵ1%LxE0^.Pë)~oP[VH](ׯ_p!iۚwooL PXBa(X* Jt5̋6UujNy|eW3>g>m? iǞAؑЦ{x'7[7m5l/L#\W9ĹW* lOʠ$ h Wzgn;p >|h@܅!ϱ񄮦OtJDho;ZW%>顦IIPp ,$ @L$C 9n[gUI*ɬ$]V]^i͛Ǭo\k[O ޮ*7O>0;_[ lȀVilu蓉26"^,Z kfy/^gC x ?DmLG}[f. Ѵl[eaZJ)M[\}x&F D` `,7 a`$ bU\nnʄ|yOW1ّRkMSooSV ~&~Oh<ߢ(}BY8 NČQRC+`Pyf6 ϑ붱 fRUyIo؀^@JkC_7hDQА[-bneyvObF\P/س` (" P @PjB&z)7v&Uy#U{&^rp<}oS-鶧r{zq5cgӪV;GkI˚偛S֋sbTY۪2*TεmQ!f.}[ jNkwG.q 27t&khFcv b慬Oê:Ci^"I`8Q3&3z`fm_Y_[zBƋb2f;"6::@ɁW|q"ʗڷ K7eZ|`ņZXlγǬac<"{wV:X-\G֫)҂q};PH4Q)7^^^X}\^_AB5EI >0ݖ@x4hZj(l/`Gߋ?oJRlלC zzkoݫI]׭UzhA J2eϲ0ug6k=ZZu w0w$(\$g_qj ܤB??+WZs͘:{$]PXD+ PTv"dU]ޯ^ ɻE~:Е}9=|[Q9*!vM5qGqnfO˻Ms63!>K͍ }Ў&Td&[ ;uf. _.sޱP  \t?oKsd#,_a)&_V0,dG:}țk' W 28 pKy8jޣ-݂BSu\ʻ~)%zf%WĂtgfX>v>(4{2CHR9;BC[?Rw fA{#[8;W#JT8a7rmF{G{/qFuT *@lb0coۤ1T Z4UgR;D JFep/+JnW0ڑɔXg~O[f^%f&Y(`b> 9@?/tҼ xY{&oEPB]Wx#ha'+E6H[kw_ܥ7]'k_ͣsH :h% i8?~Qo]a؄DSY>~ybԆwVK!_YPԤtSZc+ }d-Gwh/̻k@ Ō-+䇞VKȍW|_ߐK>=E2L $u{0/ DBs@dg31GF% ! Kl'etBt/j].?7/8ne]}ɏ_f6GY\Φ ,07t4:=~K/32{/#ϖѱZjG;HY40@[L;h*kRZdG%szou{ͅޖ઻Lp|@TEEV Jr+4ґ0D=S]9JģG? m^w\dUךx?(.)r3cEMMug}JW~u/PQs`U-5?3 -,e ̊m #+s/ v4/-{+ I5A>Jc&e:IT2Iֶ C=by3*m'KG {[db.j^[A X!_m^ 8o0/_w#'Ap\I`.":s/'79q$L.Kqkyq"8:8Yˑסx%}XI0z0\h݅s,]5ajl_HVx 4̑_~R (WT%5p)~#QgF{ʽ] Jc)~R$~Qs{R}9=~$b< ,]?/ Fc,9cGN1f#|LUVSX'ǗĔ,i՚g (b8}eAey`D,mKh$HR^_3OOj GsPV@eUz影N_9<\5_t`,ӗ &E6(ݬN[:rsLTG{]B8=D0Cup{Ç3=@nv]pU#Q"2!bp pA&w^UV#k:~7`ֽN_k Gne+ׯ4㴓h.C@Ѡ`^nE/{L=Ӑ 壮]K|{ e3yN(RL:ey*w'v^Y%}װPUv!bp6+bأ]DCCXYrQR#HW.MbF7)R3.SKY3Kc*eϖ*P: hKUx%=t :1)tJG'4uvpYBMq@X;p~BD!0lGWrpa5wT,ڵ@v]y7z_WIRԫ7HAYi [] 8 h/̚qm2jP`){u=XYJFk@1/Y(J(`3V{ 9)J2[t<A!XC0T٨MnL+K-f1\dصIy=aOAUDkR?_=2DLX遦tQ VS'lQ $1Э @ E|e\-J/Ro {0,`.܄8<>jwUy TIมY|'0u$!\"c9`'DF;.b5Kq>4yBc.2zxО ޽ԙṇ: Z|bf7!M(0v"&`poRFZ% όTɵ'^;iHjױWnEo9J;KTtw1*]uhՖZ)OMRhBX#ecrc9 K֪=xt ݣ- xoA 7 / qpQ'F } :?SǠQ >x1XUw}%㌢^w^Sae&Nba;Ǿ8#d4׺AXܲ#]} RA-.*~ ׈'o +/)$Od::\=ā&7\&' n:/bR!\_n{F-of<7 nAgO_IQxA`[ Xr>,P;*)el>r@l}L^E< uN,@+/vSSc&5sC)iCj 4wz'bܡy1[0rR45@_Lˣ3_ <xο"(<,1˞+k˟> 5jԔ4qV@8߄m]}\C+9?wi~ʫzR HbԾŜ39`3Jj"'鬒% d; j52Hov#jL}gفЍ(N+ˏAћbܘfXrC8D[)/yĄ(= ; Odg:ۿJ Qر x#>8̄6XP7/" 5gy9Zj|WyќeTKoW07<mqz;DE_כZ}  !^ɈxԽU~UaBDvkw"*of vh *ZjN[~+͚kiWUq`+jnak_{8RWrRX&t#Y36$"/\J/0#;-{ʽZr}OYj{?1aI;sO~6{wTg{T:|]Oz_,4pBDOkz&$8#3?ܟۗۨ}G*zp1G'H8%ƀo N<@eOsu1ߝWswAT$qbGc/ikءOacV_PV;o&Mz'#7;xNyX̤"j]אDY{>=O|g' ךzs<)Mrhs\9oą Y4&_vlș~kƓ.x5]a n@GxZN_=k7hKSlӜ9|ek (ѥ,.U} gLz{O% _ud "ܒR-slgbb"\y~N/_ w>o `@oH:\GjXES*E aG٠]Pi`ݸv#]aA $A' wuLXϗW-n?K\v/Z2q+(78hX WalC^X(`mJ7 en r#tu¡8FdWeoK3\ ,| axw/(ilXJ=YwchX}X@xa Lp)w-xjӤҬD|ܪ^93/[=4#}2g@d Կ P\aKQEQ}`}YDć1%"lR1pGbo&0 n7?փmM&A7wq//v4^.q; Z' *D9Ssayf..@8zEt! [بxoHlOK XXG0@Gb/YTBZz]ST8 ^_GA-63;ktB U ̬ 5 b~@@mP0Z6c l~sJ?/wh&_O8xx>† Оc/Q L?^J _[QtfOmC'2 Ag#߼]P+=uj}\%#&ׂ8鏿e1bp~i9xq3>r,r.R~{/ܶϗlXϏr ^TH85c3Qf$11FhLl_y6QK.6ȩ { ar8*]!TV7(\|a C~߼aBS.E+X4TlÂeOMQo":IX㞗u-腛}iG) ؙr~>ᵎ|ՄlJ,ZYM3SK& b^ ?LAfȶ* fnoh Pd9s0~GAԳ;IM,0mb%GZrDr} <2OX)5<,{NGeKBW/!7᲼_#}z\DIŻվ*' `&kgIaۖ <-p:X +l,JH=q>=MMI}ddg~R/M?1pW;ՊG#og|+Wv12BѼv8 6S_Ϭ't| g$M|HӮ?0>N0 ?E](Wsqy}DeGMo5c ]4=^]|N`$3 ᚕ⏧?F;/HdK@ԉڹ2>B-+p@H,7؞{7M܅ᜅo_A&Ԃt #pW5Bnm Q}' tf0!v~ƣax !ZX:Kº{ ?IW[jqx#949 {ԗH/' 9qBgF}2X d5RX<weI/_qq|ԙVx(/qu~FӨ[K P2v[Wb̃lGl<Ğ[X3cL7jl e9Q|E2m:CZ]C0^Hk]b5uCϵ/sz>xԤ[f ޔvRao͕ Ja%= HR.'6qy!漴kbFs͉-&aNMlaELn8l/CQuMƌa:HPJeP06X ]"?EySaQl7߿Vݯv_+ޒp-J/%%DLS:i?O%cm^.ZPGw?IU"H+Ww渨Z֖&Ɋs |Nie-:}` |?6ơQYh]zo^O}pw˗z6 ٺz,h][0=D'R9 g6|Ĺ89}iJkR:>(bNѬtVe\#- .Usby.`Xga G/Qİ8)=W^K߃v^%B4o0PB,HBx5| A'lJ7wv]WzX\ޭ_Fo, `Pww |wخ?~ EMGiW$n:,i/H{c WP)_Z^O'z}kڵ}T#Wku6  2Vsdr,‚'lk/v')aTz?b)_LkXE(~j L35_R{Qso+yCRR|[N0()+s QpRAH .p:N|@Sh'CįvXnǺ0ӱסWU;~y`4 ǣ=ŠO?F TvfQw YC@z ջ< "@_6N: ρ%\a#s`| s12Կ/%E<:a ,T9!?,4(4!# s5|@?nT =J"FFX,H2)3fuY ;H;kӗFƨimzd8Ņ5PqK[y Z=̐*%3ac1:vq1}"1%"Ec%#,~r~Ö# 7I3}fS#d?E%vI]{+\Cc a8IKbQ$z\9+-n0LښYz01tl=Fѐ3nbg!lh;nV" =?+Q-t"i.翂VӜX<xh$pxBz*v Nԙ4oԎA߽}"3sEy?X n3爵'(! <@bPT0>5K0MTp@8#A߄z|6/:>\&^"QҖErg&$iE#AnUQRݟLy6l8X~?Z6 Hc0Ko0A/wrzd˨3Nm yac=z*'^]~җl5hX[Od!$Bb?&EB"wIbDVpFN\,ߴLUo{0w~(i篞_O\8w|:Ϊ㋁W9_s|YK*Ԝs[4bwn~6T |y6>ۣe]H _wUavY Z%3W RM`h,/< Gxr'S^JwfS'?tܢ@H5sYY<{Sҟc!y$fRx(,#@P,$ `P& ¢@TBg}%s0z^VWqRp8nCҷ]~_I~woˆ.+ƽWX j&"5~ݭa- yj;c9O R p*زw#s~6u|EWdRXz jMBPQNeYE%R׉O*j$+ €`.$@*A3Ϛ;5⛇Ft:>?k?3?}o'͞ܖ\$$rW5PW>&L=0P8RԡۛJFԋʏ{ WƇǣuP- `_gk#'/}{Nt<!uYj1JVd?Y\((TD @PJc B9+|oMUUudݸ"춟jkG=\cHz=%q~<%)ϢjN)u][o~Bw|{=a.h:<.̵ւ5RWG^/!QA KR =:q}>ی;v,']E]IUt$2(T2>;p@䌈)%} 2$]˱>Wijk:H!zhLF (@N{d tfnZ 6Z \\:mgsg;|7R(K,fB\wlM)z#qT)SWk=bH<',pAU܌zN^r[|}=r!DQH* $/f c@%Dt:P ,S1$/۔nE=~wo& 4>&OǸb,P4̱TZ4'*'HqBG`HXd[aF:>OprЅ%vi2 ZUkW~O)7Zynk>W| 8 Բ)(Tlu7@TLD AhD5&ExHf:?Cuh>%0 o:zU@rs(G 2n0:(x};G,?(e`I#8˽j0ž`Wg/0|!w`jxY7c'nZHȕ/VMI}I߿O-" l$%78)}7,=vd fPؿBMasrAhԳi{+HkcK"4DȄ3J( %@i>RyNd4Huy=r/ k0#a- >l^(,8b+jH~ W(;.N^ Y9B<&w2Rd oZ̙C4JH8j -_wh}deGF(\qhcM/}G'*ʰ/¦+@>Ü}'E>(F.80H]:`9;1XV\Qp,y.9B@$ "Gjtw Wz/bVɭj)Sj śSvh;M1ÊԻִʛt9'Ҽg$l/_\뺵ܹż}|(1~`.(rd@%`B8XK/RIq[iTO |iĬk`'̸FGIߊr+U mٌ߹R:Of I*.o>X0y8C߿$(WL:\6Ype\68ϕ'mw>ߔl<<+͹xjYN*+9*ދU`' y>pNJ}GבzްF8a -۸T |Y{CE>Hj x~".kƴI'qc1gˍj\ ϸNn _]Y.oNZ'VD(]ƚ ώE6݉zv;͐V:rد:o1e}*4-z0M1V) h PN bZm[B6 )6=2 ";'7߹x:tsm%唺a;Rwyd[%|!'ֽkK8'8Dn|澲zn?_E? /-X%J1Oދ∆PڢnB!*AlAR:.0'O1{$4>8euQBPbҒp4{U*Ae, z=d}!tߦ ԌK/(d$Upkc"-)7.2Cl."md׍1Nl6u+>V_爔_wSz<뻳 3tgt#wEry\#wtC$V 1O%|OϨ!EԺqe=.d'Pc-lKL,۟A'r^Fjk h_Y(aj*#vWc'm(dQuO(fjf͂H\xr!Z jhQ§P cD*j-CZY MԝDCS~>2(ZqPxߖ%#ujͽ:Kf~IѸEZIICMQjb4u:HH o^=>V^U_IűTFBav>+b(W^K*/{^8b} y\xHh/Uqu\Zo>8;?՚I} hZt')i;7#Ǔ4p |  zgn8I!-Z8BZ/,r> sT0hV}@@c~- wuŭO_M~sp#ep}~T+/ !&*au~{m~~\"BPpJy1C?|ԭhBG?I=k'H*Zڀ{{?{jǥzuzׇ7뫋\,1,NтqQ `ʛ?,I\DuWB5}d}'W?PX0겲82S#"# >JגޜCDm"7q  wx[}9{E^_űoND͎qYSAfPȔf+˛eT*ᇺ7 z+_׀OV28"2T ɻ،:,28 `dQ*#Zcݍ#i9xpop &2~cc8pg?-9<;\>`SjGa5Pĩ+?ﻏ% >c alMٍ*5) Ew@Ҙw)Zehv5XV  GSfL+zk(p[ V&G~!T`d¡-+⷗L%?X6fC)\ ?(( z@Y{JƓy@`/{$/Y9Q\ʫ3G>Ў!ӨQ->)+u\/A5=n:S"E` .tW%QQ{o- ":֐1ҿp`2ׇ1"_Zܾ<7#|2?W-K^AV}޽QgA@zcJf2%cp+DJA7ƁA$Yoc^P5vI-~(,y |~6= 8x.ٸ/T$pXj{v]c >K|A*kŗ/-ј+G&}psIv(_  zzU lZ8uO[yWkވW`=!f\Wa0.`yF2X*-mpYVmOi0̭7/4@ Hp\}O񦪚ϒBJ|Buf{ IF|´6kW|VeR#aXA>hK'/)Y _r1-x#9Z: @Qr(pUf1_.O/ ~ ʝS>2>H:&,XU%M!^Vj}VLyd\4[`k*.V ?\c'yXEe!cyxudPQVW~NU5E/媘ׂ"{Pѻb)T;c<`z|K4by 1OƇn |7y?k١p*ZՂBLn_ఄcK7"n:\I{lU4jh)YKyB>dnÂK-hV0}ӿ{ niB =7B|(oڭմ"rw@FNbw^{&ړA'OBe..nC"W !Q$']d᳓#y(C=EոE{G~u~1n5! <ҡO,OkpuIaR>Xxيp]azMCiA)LLg.YVuMY}|]_cSfaUQ*(кڸ bnb'(1BTlj!ߧ#,aOʙ+(Hzz͍ Ym$OhFfQ#j%x\5_u%0Tx&]ADjIqаH+$-. a?0Sf!Xһ߾ hꂈnם/_m(߻nebuq*ssD4+_:}\GVWx"&KM06a[]0 ~?L7;vH!)kȤm1 ;/$ڒӗBQ sr': TY?6_9T?|Nm\=Dfyu`;dZj#'A<͑t "_ZA JTސ .(&=j .'h,Ȼ*GIϣW?]QZL뼑ff9H#jMRe H?Z-g^zAऌyc,mg4q3LF,Һ6\zoޢDWIw0Aiq%MM3VԿ&?~1[% 9׍Dufn=V^xb\hG]؁.sGw&}^_W+p'`QYpcE@ :ڤDuQ>Ϳ`S[?rX3u WdD#w#" cx,"ņ_I.?H?O+AȎ|["^Dbaz{>f[uS۴qӥU"j{Fܣ=J$V]&}@6.\2}D< <$ֽo}|``퓙g%oR+7_߫׫~ֶ?:!AEjEA]h&ϴNhS^$wwZBspm˿0.s @%7鵓dh$!=a "kqBU'D#|"Ϸ%w/OM=4sCx:>Kx!) v/p:>AxSXo*_*˟פYD^+Eo~h&#YY2;P Zu3A$ԸYl_ ׎?t&]UoHNqN:5apX6XǢV%9!0)TT17LJ͢R'}lIΦ>~Ȟ$x_$uusI<X0y>\} E!)-*o,Xn#lKW_4bXU QH8Sc/.ۯ5F'UR#7w&DNUv E41A//ƑǾ:Jfj8ݒ1 6/-,OZA\y;hݒ Wܿ+uMu!5/DYTb#]55ܨWg*5jgE2ڏ|Gs#q+ 3[܂:Dc u/oGroܖ D lKGJGnb?BSȧrx b9pf˅ʿXAK\:XDAU%Rqh*Q\"qmL񜱽:v!+}3F znhJ RWtp"CA!|K/-'1ewv8:|5pCs_~wŕS ÏVXc`6ҙ~7JGor8Kw޽][7( }:B{nv!`!e-7>YI.ZHN a[/ L#ܲzL }02@L&Tx ZU(?WҮH})G'#lwQS%&OM֫7.H~ۂm۞_He~;~ړ,oYN4+-nF/X/{I}=c$I`P-Hrbg: @jŏmױ⠪yDؕQ*,*SҔH@W7_ p4Kl_5 MG򢝒O!uʺWA2w{_fVDGDr]w>Z''Vb噡5I~*>4 !u=28 NicOi(&ܥ턌:L.eQU BͷcO VCf+tϗÂML 9Ma!Dd+^F˥:ٕx.73Z9vU7&gu*%*wLŊHBlh'/}lV[/?en{忓ïid]wºܡ >_~׺xuf4s/S\48yr:)9<@~\)3@^n >8`"NDiX@ e }`QQ;%$(PU[ZQ/#?vb :_, Qh&tkY$jTqF C%?@Y j>|LW?YAҧjO۰ %ʦAk{޵w}b ;$"MfwY{-ۈ qry %N#tj1TNk'A2W2"gaDo45%L54`3Ͳ&3z1b?S_v-g4rKaA+Ly  IW%Ry m 3[Eܵ050P!A ~w ./K͸9,Uɚ#: AŹ_u  , c,c.LwH֍eps }v>YR2 &.-C\V  Moe/wF;(?i[[ M"6a,t-t!JoHW~x^Оv'U~W]=9_!;Xọ?@~@a$ĺ$w,͎vqJb\] {g7>n;1y-G@dCq|Y cJLpsĉ jR|gPQ}6'҈1cBo`TNZr˼hhTgkL\vT{wZ=_=d<#2Pzݍ)mƊQhPֵa(ZjE@(U>iyc0kYF`?p'w-SF!vKx ?_W_ =IPHۻV _ q:_Mް.,,fȐ8$9ŕ"n %59#kf>l>:b#?g{/psJZ ߡ_?]üB4rUnl^2Kub#2w. snw&:zn&y_'A> HC@ʹGLԛ8ΰRr 8 ɋۉcHN=eH{ImUH_ ~[q /Hq=E2Uy a wMelu*}'W$ߡ1w\Ϝw~`|%NSp pBDIe`(1upwQO P%01Ȁw$ȕϥ2?/α+a#t ujl M2|Ȩ;-UӨ|*XU8bMGѲN%N!m8/)b VUadEk8PDr|W]U%S4&~8M;GtH fʁz|s[1\8ocKDh+R.B_YXc>sXR%79M)~&zk''Wx*@8'V+ͬH 4!^ H# _Bg=k4y'ayG,8!-x&]7RY/Zk{=`w 7MiJ gO KoE{viZci\:w{sy*ʙ.me{d}w +P xZ ȯ`U QCUR˟sx$7婄~>| [q8m}K x+3EwՆ>'CML JĨTܶ%fkyg!3tv,Ƨ͒I AVc` W:!.[[k)1-:D*Guh=9`.։x78, Hj/&v $P3{ Z%T0Tu nnȵ|yx/ {fſC&e!CBc|2& !NUeNrKǯ]1۱ n}Ґ<V tFMXw^l֯TG`ezTY#Hm H8oG }~OռҍYר |#r52 z1{e)|C,iVG9imv֍SsAg +t γ 4rZw@x>O2V(m=-H~$ 7zsQAmB3T盿еWrA|^^q?M( 9rA6SK젠^b=ulξ]]<ֵe]8*2B" ? R G5䄾J:L&|M[u =_/WcMm]a2j]PUI]/s1lV4slj_% 2\\ҫǮEw^_!??Ie)6|>YhKm/ϛn;`aE_ .c[Jnv>ע;9]abu?h{Dk2^э'$J |n\_ "lCaL] Ht64@m6P^  p4L,6cm'}Nd7 <4u THv3bvbxhdpInw-ã Ug4 3"S :l3Ӎ4C|Cmhܝ}.6wV հKr|n)۳֟Vm*F|162y&reX}}d 6Rσƃ'/-AX Fdw6K>'Q|Jy5,'.XǸ쥄p 9ix) ƔV +$Ԕ$ AA\(& @`(B$0Dog3^xU;x>4NOܸ7a~Kо_WЛWCbCr} /en t{p2.@<$ĢZiP(Q PxqB{@R(kh ڹ) ,H"PP, pBE9z{̄?~YR^o?wv㈍악k۟TƎo ʲт}0{Ԧd[§y9*btސ/=P;(M1:Vɖ]!Ua["hcT,T$ BBA(P* @XH AX*B&sjwZW~M =>.ޞ/y+]H^r"_ [:>K `~MEyocȠڳDX耜Gb\ Z/xA/> W񊓄Ud%gYQ 9"J`;yΆ!-9%Uq\7DoTUt/m¾pF_]a;B]~z)nL6'.Ԕs UroiUDu&8n%XUE9xbM^aQJ+Q0#;kF::_WL,몎L^eN=-.HZ'İ#28 NXbKzbZ^o`2q䴿/tTT`­] C8|]&z<1g7y'>$®36(-wD/H߉\8 [GYDӢC_ەuoY )n$MNJ S08A#IĘDf h9j~ ^s+bb]\'s7^c jYU8 ޵GO_% (ƇL۴;F4tCJ<. Ć(r^hU"d4_iw|o)iȍ`M!?1 |;畠Þ?*d&q}ʲ\չ${3eX'(ܻ{m_SځP;~25G!qHCAq(Ԉ2£0$ €T.ƸnkzΛM˗ǰU^<yc׹nUiK6V.P89Lu/ҴiFUP#`*>ntI!R [j4\ Z/ݫzpF [tiZp+̛+Jޓd"+l( pe8~A* }h_EU07jĞUU'ݯxCۣ}(`rㅒ~X$RO ;A^G6'`1\ #oQ,sbQfkgxFBu0wm{ZW8y&B`̨!|q ^9n>RB;.]A8Â<K7{5덳7&ہAHh%//; v`c{ Ny9'ۨa.+( x 2#?G575/Ŷi$0 {ÃEΖ:Ω~j'2gdwOʀK3_ԵrNx:h%;EG^pJQ ̋D~Sp ͊k_ aāw$i30X8 /NcwK ܅^y< _2ȭ_?$A!B^F/!67 Eu'[QkfbnSÄ8p{Y0W7 @% yݎ8AQbB Av/B݆P[ X?R+{j/տZ{zoW$cj}I01Q3 \^\ʮzO0"]>"uj׫z)={꿵*dq (06HI ~f8 bI.KoJILc6w-kO1+{=ޖ^z{-},zx$/TrݽeGt'{+ypQr$/$SU&\/@RB, x,r= 8.#h`;47dĆ"r?JQ4aeg(*|bS3Uq6-L3H4bdӘ-iҘ|cm+nZq'yHK2&>߻QQX55q -! M̅6 7t8)ֿZJЙ}^V.9՛$Y}# px--`n%Q &EHHX,t;}\nץTe OeZ/{iWaG<)k{Gz*bh؛\m_ 9߾\qm֖ hj"|Z4]_gۉ Y5>\ !nA1W|In}D>{_~;36`=@7,K}8՜9"=.:/5"785q/ liS,snCOp'Nww[1K/1&C0蕧$ |}n)|qَѓeB+y}o[W*8 m^PR d|a=lN77AX=_k'ӰH#=L#$nWq:voٿFCce0=̽/˲v7 8)re\y.aH+9rXJ,h߳k`W5Ĝ4+Lxp`n<5/lD+$2,^{&@ӌ=~(ɣMB'r,~v邒`-O{{`,ge1@n<Ԋ{ࠉne~ 0&|D9?%NMZTOZ)B\>zCw^K-%cT(-=ĭ|Jgo_7yF'w͵ Ȝ 'JZ=}O)p? 2 P fha{vIJ Qe>U=sZ8p G'`M b IaNHѻpJ Dq_{p0 F{ ?@Љ~?}p$L |ߩ}w!(?o%-=O_¶O_N;/ N<,Ԫl9⬊m3>kx hn|rA,Lrk&<gwyl<%hL |(oD,k6e/YI/|w>,NZq6Z w+_BADXfc:``KnԿ9}Z_1V j{7I赓d'Vh#1MӟK&%Ef)<.h |*G-f x*f5$#(qu8c? x,+b_hӐ+ }a>\Dm-@hxBSlm~3 ZO?E1 Ǝ2] %_bt_߱ȧk1Kr/k)nB XRyܰ]Z?'܎s;ZcôsK|´ڛ/q'xϢ!- cހNv3TO21 $᧌a&9v6$ I˜/FlY"Za@vNG27ae8HeZ2<|#o3hiϐL| 0J MM5+*7=8'Mzs% 'D &&:JΕX`ƯeVzLkҫ,qu@ٌqw>O0n5\s>* 6tkO^D͢ H%ſ' ^{Z~{Jo3bUw\JkD+6_Y 9a7[V| *P`kꯋyEj֬ Ys~oI{>El'Z?h TMMM 9!ڣؐPVnz?0ua|:xn6% _á._!P]hW<&Q  < o=:EK'%>y3.Rf/´X$!z^ iL۴]\KTHy^nj,X]:vdʌ`c%sf_eɰB7we^Eres4pAM߅Y{q@> õ譧{W< uA*s rQ}v4Z_KrOW>'~zR4eu7CO[S{_?P^^Za׽:4CD^!bL<0>KrJ8.bg"gi橩Q,a2`}=g Z Xܰ3ˬk 1(':=|ޅPcTZ}k߯]߯v%?לL %^!HAh,~_\hg8X/ zݯVBzu\E![lx&Ō_W; G#~}_ν='T]ZX"}<.N ~$1}prxS/B~ KTGb_֌kyHˑ04 ;M%AK_31Hˋ%;1)$_Jf}~u{N׫H[X{ dޘ І HO3ׂrٜ0B&= k&/@C+||| m2O/ p)-u,cBA|?R%~1{A'.qaQ',ScK|:`rT#-$⻱ ~!V3 ޛ;Wq [8\֏9~ȉt[I?jLf};LI)&Wi u|rߨV@tۉ0־`82Ū̄~ 8XwޢG߫~х_=S'(;~!{(]r'{HC\۾ ޚi~h-,h31ei @6TGa)̧=N[c^[lK crڧ}Z/dy/spx`WcSIOۯ4ɟW+I vjZjKOrO%f)LIy~ >9'cZ|(uޥl5[4ЙN&rI(a_\hL㧅} =%G]GG%>>;ZPF1Ӿ^^?c$$C>. 0kDG- F֪P5E$j߫OV~*LqE%:I_wێLZW2*{R.Z_Dh\~1׿.C6-4} 70c?b%=|q(?ƞ߻~̂GKib/HGV)%_"5٣2+4lإ} 8 oXQR 2(}{F6+:MU jϿ) [-0ay\1޿Sߑ=VҫLdA}I6k0!9V6i)#OM^O\Kw.Z|g-n> (Ҫs4"JpA:X4ᯧiRd'rA;l^A C4A e7i+^%:co<-,M,_4<)~J0~F*hOf/Y., V*0^: Xwb37w%^~qRS"ܟ}j1ٶ=Xɏ_[XRD9_yPh5RH{;N_+HK@ФU%F<<RAqtxs^+UN~ k5\;N_Y=?}]oѩW|~jg]bhS|Y!|9cn=ܗ.)#_I6kä탾%0:/6۹i~ W_ `|eK['ܜ#!_ZnD;V%'aXlZ A+ 5߫ׯIuT.ԉ,U \Uzkrq7r^O_0!\=0 {\ǿ^\p|EQY =;_._,o ũY?ev1g&!7L*7ѷx!KCx_w^W]SOW]z?<0 1L]I~Q/sҜ#%l aG7,  2ec6 *!<-@EUECoVt9 02,$<3u)_#VLbDycQz[֢bpqMA4w#2 &7hv%p-y'12{i|l)|4pDp3c9WX҄ %v|ޑpH XL? Y0'VjW^Xm_\׫kyo_.1n+qG>iwo C~|Xm s?a N0㣃v-ϯ'!%B0 ":_|"/TKU9p &g-b>p˖+-M^*\\'z_^ Z Pn I- 䫪9zkD^Қ_ת\+uou_DŽjoQSvGZm`bAťߕis*0׹1Zb?^O]-qô$ιTGM")${?PMW]ܙuZJ  \ %a&쳸'(4!>raw}Ho :pz#Bo/ǝr!99OUKq ,c: reEW4heZ1R7@ZG׫{^{b,wܹy ~L!;/pZruzgҮ!"\{ O;PJa렍 BN"q%ƙ}-jO>v3>jYQ BL%A1~3thOp4&:rEV H}hAWL`e!w"0oc[=}-9A6y !,V\Z&|H@͗/%I/q4Y>!Em@gFGWB\y' '?6pY7/ie| @5MH # S }ˡoDكMO;޳Ow|!JqlVÕ6OE{ZKEw}yRׁ4 s)3_hEA A%ΆBmspu"uCx58]W?)(NmA>(m=7pj!b0$qz riȯ./sc TO H uR܋Jn!0y}u> _+ٹ4\o6vߩOb|1saw8r"`u>OH>`Gא%  x`m_ x|Q!A@H>K^~hbYs=#dn>w*!h'yX}+`0c{(쟚< b4Uf>\jOKiX8?}j+X){s#$5JCfNQԭAQ/^^8+^.^${˒yਬ_'rf) 4 ?~a.8|] K?,7LIw0~_§sųz_/OBkHIL姮10j SîZ_BBĒ{; ' ’ Pm߲{Ԝ\mBc0C2p\ nA4Ivx"C擊,3OGj' Lv6)Eԩz:>D|}FOuD0T]Ba<\B]p%lnA bgbB000 Z}LybB mLӳp)AO4X= N EqN1α#5Ljz4>~5Y-H+#\+/Q z:z[j*\$?mA=OGr5,f}ܒ1@?qRwVR}ר+p5k+;J͜p p38Q(Fow*ui֊v2K믓?e];AB"ʗ՝^r_Ta/Jvg, Gu@@3?q^d/lfU򆃇6{߀tLN81QZ l#|;(H`bLj~ 5|Ʒq9!~zLѥ>Ou}f~`{*D" ubL3ގ;0sm(_yႆj їeotyw}m;iKJP +%qCWu׾S0L 3u E^ܱ_3'V;w&-bk"I]#Sx"+ c$A x fƙG8)+՘}G (_EF{<RI c]O7̥\V|%-}߬k=L)tNE%̄Ǭ#1p6l̿<u /*la|Si8ԡBk6)AGS ;~~{[Pd&$ǾO{0[/5 Mzi_(a(uAO{K\$&usQ~q<_B,;59I_"-Tc?z_/ĂN$@Cy!Sb'OW'~w0}h̆XF"1 A+uZtpﵪ=\}k\k^_ΤoWNnZZj]՝yxBwCACm͛#}4Tkc,h R  FwXNi+ M9ĩ:L9QR6UokԔG`ڈ"m7m6* W<[њ1<~v: [o UT~aq}婭jUmt2!E"ZdbeK/F@W$H&n1 s4a%W):Sp6sQG@J%3gZ]J6{-}@3T/ߚ}xcZJNkӴ i=beWz(cn.bc'0VUeUWHC駦,`gR?Wb -p<,b|yR[83̾ qK(:pzmqVfp!\Ԛ`~s*:)C/erd[QU`S~_BN )0`s#jIGXe^tEd W]{W_W&?!([r wa L _.e'{|w#w]%w^ݗ.CcI>Xrk1hꐵ 0#+aM>MN0:2| [_ -Х{߭b {Vۖs֥j[\Gz+'xH,  64+H}]'=Wu ,V I8\_T6K%A/KGI@U04 ݿ*3xѧ^'>p@BCq* > D,qذҥ iմїo͜kEU=mzz:)5Z=xv$ &z)%lWf[:yAF].i@a/us+yg*!Ld0hƢf6iVYr:>;ݸ%^R3>d1ZnkxZKdR6]k<&6\uD#иwDp$K]^+XpFjx2 #`s5˾\pxvq%p*xu:d}~L/& ڶ]ы F\7{'&Ӵ7;WNT} -Z׵R/G|6a9>ō3Uٺ[, ,{W[s~]4 %bQ2sk\DE&MTo"Ch0@UX R`nGHh}d9{'`0:KD(4O*pPvA?Vh NI '<"^u7K AZ^&u:?p5O$_^ ʓc:op菿ψR_WwUwԙEVkn?1NX{X1U0u*vWgф?ӷ-.%b ;k =_I,V;Xh#~`C> 4l],heh/;4 =`S/̜ε.F2zɵpCw{ʡBaW̘(B8HY(tt'BGL,4ѓY 9Nq =Q*^}}dTK't ǎNʩ/x :O1s {-pOoiRj)q ewV'؃$/RJyD^OE.ާ"3?>5b̫œ;+paF̭W ȣk>rwQsTdJkAB<1r'/z J͞Ds*+sgz|"_{}vR;ېM_A+JI=zYU~WRc앯)떻EjtXG*qy= \d qtx_&_X -kݔ׭,64luJU (Ê6?uLsL_vkF zv/^nS%߷!oxdD%V$$ BC@HH T& BpXn#yYs^kq^2uSNfףj^mmxAݳCy;JJwкY}!.\KH ￁ J}^g!t R%te2oYwnܞ~'F:kvJ-"",TD4 ! H(" aPL$! BaA8Xj Hd^5qmVR]pu];7Wֺ{>AE`͠?}!!'@?ou1xˣY:;m]?U:<557J)kfɨ?'dn?`~28s9 NXreU&')"osE t߼N:ZƇ*zѠRA&dݜ̭Ae1pe7j#_־'$;D%1F uCTPۇr>[Ļ:h(NX %ub*HQWyf`:Lk%XaBÀ$JXbKw5^25) "=YcN*;@ /u}Zn^vm]nsX}U}}yvxMPJ.lO6y킲z|_ dI;R.$%`Th Ăaj N~yo*OL}J:2lt8!-4}="^;|ON#Ll%3 u[Xxח kch啯O>qsKJ UI^ EXc8H V.*$@$ Q0T("BP"uk5_[u3SR/dj3K A, 1w;|߯w,k}^I}[ < \qP]#ZWUV  dnQT~Uw}˄gW,3(=rz $`YWNjBӺBC9y; iFhT,)2șia f$ɜRoċt߀I N)dj, ꝡՠJE5!:U0~x Dq$V;ԘJMr\o[ n\EB"!hMq)y4?6c frY[)B+5AǥSJ 1ϧJjܢh{܋fe U'{uY1oS7>{>XB` P\$|-Z?V*W\nY_"S{,wwA(4 UgGU-u>ymZL!60@_sY=d/zXx  rha2Pnn` sdGI@h=Q $Hk4"B.F |DLJP(a^~9.7כ]_~%w/F?F+(t)tGȎ@u/L};S$z ke[I̽7*bdp= q>%px.ߠ@aqwVa b*cx]-|}0]nLCmZ;i}N2t 播6|arQF6/~׸0"'rU daP8\ɀU} 2>?U)NH=ZfPj$ rNe2OhBuUF5aDSa|^H!P;CxW5_~t_[=yb`Hߖ+l_s=L\S7 Wn0 M T'݌axGqJ|e`X#\83l}ZoFp#h|փѯ^_c< :J0\$?ow/L_mҺ"ig[XnaנZ`e`~)ow X,r* Kt&}]Z,V+%ߺ*Y] RTԒ5UquJUk )y^1xyap/x U/0e'wj=Sk< -=& I.Y_!;_Z-ywwIk>v_z_ >%t/"v%nwA~zL)T>e3]Wb{E^fp4*r0.GK$RyYq#L6u}7 R0Bc_ ]_D?ҦMa9D3InymFxџvY#gטH~#Ss|~M33b? 2 Np3/X=_ؕH  O" Fy}(T?ȾXd?=||n|ȵ43|[ro.zq?&=y./gzg(lgq [i~OÂ]SO4Hy 3B\ }g\W,~B'KhTs˯&;H́%#_H|sށ&;tgwX΃Q[W3ÿK}Uc]OuhMЏ%-@\ A,*4M^^DŽ\/VUWMu^_i!-0-9M ^X.=5A .W.h*[7JQ`mJito@T*)%,,I`!&r%ULF8p0IϰP+B'UPoꮥw'k/Չ1Cf?z@Zl>Җ߁0 .w z\VNh|rw̎#]ugvw/ku$T2#wfC rT\ 3 X$1KKil4:E'QNr >`m]9; R3DP6*!sC׷,tWD5v2^L-nCga' u0D.u7BT}кkЕgҎ%[\t'x50"$޼)KPt@f0$;`|rʣa<#2Z-@OunB$_s1npa8gXNğP2ovZ h/rBMAx8j @fo@3U QBNRR\Aӕ\Xs8%|o.W5s=u^sVڳ'@_@e2I+U%5s|b%ׯK}ɉPÐ(8{@9mBVGh=1R`T & Ȝ$ R.ɍrpUTؗTh+}q`}h"#,UׯMOK7^:ܗܷ;ƈ/+^!@jYxdU6.N ; E}^'$;2PV86@ܞ'UvE4N@vHԓ0_Eg7TDNjL' $/-C`mQK9Q@oLbgR$DJ tpj[cjyza؂aD@==]d?-Z]]q|!Չԫ2Yuumr ;ǁem ;\1_tOWe@B~(kIv3ORRuAQA.LX/*vz`;aã^<,Ƶ-L__;Ϩ}_dNX\#a/z ךee-ȁYgnVT We6Y-GnR&%&"[.5 Ÿ&/0wj3,2cSbb(P<  On H;Uć(H@f 66T9Y.S8Q kʡV5=aPۀ>7w5CL(?86Vq3Kc*7rXKXd>pGaL(u1щ9*Vs57M7 J8>2ఐY,\E  Zf]h;qbm*ܾIz[8fE$B@=-%~ < Ɔ55Pt-Cs0Z•1D`@oFRM@P Ȁ%)^!q__o8NL=T3]M(VJ jĿ7nEq"aڻX(k}v ȇ&d"3ߏtirrWT~OK`+6+6li &q0!9KP -m#!v K85Q5L:8q:4ۄJ8xZ}O/,Y%^MK'e۫v9 >jͻ l)[4wECz ql6_#o @ OG@ ~wyYL t}QFfڢ$͠F<} [i e`}N(DŽ#WA߻POjp8hL֣C l&.4Z/_ih%&mNu3}zܶ5Vʛ:8Ay1IH0%(_G~8蠼 %DZH.yxz7r\J^}7B8(fWC>`5RD& LĨܑ|G͓*웾з6AO UY}<ҙ@jMHn1MXi/[C5ʄp^6%QٖO8T$Pň7)"pКUpa3$?O|l3<)J5z$1(QlD5'0m=16cZ @s{-WV):j=PY`^[ۯb4V!/嗐ʷ_U.@3f^,/AF|k*k̫֫ ػCY;GpOޙy~`Ucw=nyk#sg s̨~WR/xb X^֤MBx0!N ˛.چA27W_MSn$ߑݹ;~&C6qrґGvW"K* )uLG4F~UoU=% UQ $W9>ܨ#AHW8? hf?V+S( NQၭE.VSN\U(_ou_[ fRt 6c7F )ugxϗͭGrѮo3lxALv+!L|+,7s]E'N$/ΣB~#˕$PJ$iy;p|?/iA(@ø 8(I۷II f[WqS)Zo5doIP1]o[0/ CqZPB,'Dêא]Z3Əۑ,1Ď1p { זj{Sw"35FB6%̰bC* f&rgz;1p=N%hL. ˪/%_Ak˚1\ ~ kSxz<%3:}0$*DAkdaN9DRS?'Xt3TqyRaT fуnbfKak@+LkVBw9~QE"O!78q9ePF[.*{./Db~'&L^`|.~CK/TH,6?YZLZ^c5C?ayl#H$$+rF&\$2_ᗴ"nxmIk?H`Փuz'RZGyxV'Q K0U⡋, R՘dN¯T9+mH5‰S;g]d ct)eRXv'uehz uti±eQ^8CL@ӈW ha2+BvXƧP5礳A&Jjl|u4Etf2B' -SlǾ>}4蓿yӇ| ہ_( (?'Y,P8,.T %O *V+eZrYk* b-q.r{5lbb'&T| f=L,O_gkW](W `ɌYؔ, p(%bPQT75 Jܻ~h/aq5oRg]Xtb+_Y\իH+v;ƍ/F"™{pO? Q9u1ՉHdX(}‥ae{6ɟ_ P/!nj'K_K/Uzr`VLbtI=v_@K Wx-h3&TDAý  wsե"ouU0蕩=dq{ܻ/zu1Z82 7Pc@5;Z"@M\"#$?%| A!O}KT%jУ~׵ax5޹NA+Z0Čϭ9ÌF'j& ;(3{Cdx^6a(* K_X?ڞ74{EKN^Va ְ͆Jz XXbWC׉l3%iGQ> r0EukѰRЂ)ǚFΠ\ HӲ_-0Su}]SyX'}>kӍ>0R,#))Y =t$pb?[ԓ]$.4aC~K:9Z{]ZU6p-<3[Ǟ<o$xJ(H^VjIgl9$5ȩJ1 qwr -m#{i_w;J]zn%40P#/c}-m' QceŔ߬@aA*!鸙%%~GXJFLK,QưtZ$G6T"w{? |Ka/,yY#I|}j> Ә~.łnF 4K({v*Ihej<  LppOe Z F#إ~$e<0R ANQ[G` Ca͗%W$_n9SF7RX[}X~ClBfd8sDO9|)r6s̗r{\7dyx>,{a5LaA*=J9ޔ>;Cqx{( *Lhhrwbvδީ2l[{(¨~ö+fwYp|L>Ddޣ2OyB 1$Ei*Ratia~4#_*>[eVA GTc/\5w@ӲJ4RN݃/%CR]rX[)zUP^8N{KaiYt eXDh1==m$ *K EOh*ZnU5exҩ_śX8 k DLW쇿uKj]blvl>.QH镳?G;mpT0QPO@6NbݤEa/^| `GKZZ{pr2A@YLω<UK*5 v9}Kob+^ bs.DFgyL\zs{x*k^nQWT ]-u'EFbX6 qO;-O\ ҴsbU!zt2\/;dkIH,x Y l=ΛS\CRxJp8&d^'`tKRX72 w cWj¥^ ^ufFDhdzҰZmD rW^(k ؋_؉ݙejK(`#Bs؆K{喰? JHi07߸$X(wdP˨T B{G')1-`tJuvnzo80>1miͯ]8 ?=.`2WXi؝H6ЪY3r?[mE`*$/̓ |W{Q9oZ8'~c´e ImaF|_X7[j9p#PgaB.ZZ߃K??Luj>N)ҬVqV &p @TK-ԡc?üj60|m/8|5q}^DrCqnL;:BE 7:FτVˁ[RQp P e a+rgb4Evm/lq_v 'z3udMK?i3SۡF}ٖs BsjQ\j^;usYJbcG4n)?dC1e"C 1m_`QK|z$W=Q_> D [n 6Fu =sU%~a? hq!o2Uuޮ]'*F,U$-`#n4ch`±-}VmR}Y z)cܰ"bʏX;h !x>jV7)ȽW \T1_TcF̄+svV@u#ZRm{uD\mƠ}ӌ@GU@KMS"%_@F/.%꺷9 <N*q%|&gᓪ*l&uan(iԀ 6bG ci?d~V2C^\*MWU\CĥQ?;,@\ƸTy]Rע*rEfVbC$=u :pA&MX/gʄzlݷ+ /A3:Ay^H6 ˅ƇDÜ;\+fl76!j:}fORl01qjBWH|_+ J3XkCVm 0$XڛwFזk=;aa~Uw%iy!A]!Ҡ̈A[AD/X( ,-JlsNo@wPOOK Վo*~ = izYf@ZXTF(]X/, /U ͡b/6bZ=TSz &kŒ;KZ?Vmql%ncSkz% tg@]|.6e}ȏKj>> Fv7Ј:rkcER֡DzV| =YKSY H`Iqa,}B,k]",Ü>.xLɤ2g9|Acd:1s%ꪲ_g*>k$srARbK2/'Q<ơWb֯zӮO~kiQs_nQb6~Gm\:Ը"!,~ _(D#G| RƦO <;})Bu^ؔB= L'F"pu =f\Z\}W֮zaӫָ}XtwhxW覵O dxs6oS wA-jrU\B_\s׫jիұ},s}q+UP$X bpnb Ȼ. i' 01AmRQVGT=xC84Ouũ^ERvucՄ2_^Dj\;LUUD&!k Rss;Sƒ-!?=2*,Yw e,(X/Y[bjZ&ZZNsS(UׂpFzO}!Z)Wդok_}`(p hD̀ eg_`K2"0Eo:'lɹ0Y8r^o/0P A |4a[P)wJԂM~𒼃K(r3WSb0oQ,}uq=\^VH A@P 0_a(A/ ͡\0Iu}Ww72ת_'Ȥ21  `0MAc)@]<6 ~ * |D)i*kt>Î<Ԩ޿.q`Gy2s5pP2오g^R[S-hH/q}Da|/gє2aw' ''0v-/4C=tG:ZO5;hi13@DSn|,spn )p+C`zJ41#v;yJ< _  ⚱˳_ A̸iN_#SZs0+l;7h|fPP1a^~mRyO'Kg\ֽ's1Zn+neKH2y$Hh[[B'X)nPVQj`I[ /*30{<6S f_W5Ul(.cH e[f,eHB[9Jo3j\s8PGUPXDgyv­7%`DCiQzгNZ,^Yk%M"][U_@ 33X.h'͂'B#/Akk%U}O_k]u#K꽒9!_hm.ǂN,@^Zߟ1r.jEcKu06h^t]9"8B/"d)2G 9WfBN.&zi3vQ,?Y3e ʏe01žjI q)SXXP8.cJf$v3ߤ e2P;v9k>gb0-QV@{9}iYwvڲEMLףe!)m]r#^J\Dr\1 Lͩ۲{Ѡ{\kz@y,ߝ# {^Kţ ЉR5Xve^pW8lDSo\\BAFH5L}ӽ9ʚn1 ҵ4/nuW^•rSgpLר!X oJ'0g]e11 ZӇqUG#Z?LC,mL\ՉG/^ R~Du_Z gKޡ'P$H @,$ P* HaQ '[Oyt^q5I8?h"{d.aV?Wյuo]B>tߒڞJJ]+pvz:EϡaǠŽf#^)jWmE;;V%#Q4(TJ Ba &@*11'sz޻U֕\^p<>ǧuzn`#'-} O݈u()3 v:8܊7#/CSHu{&@8yG_(q`,N C|O>!N< oi|4|eIPǜN%\*(\bH9ws?2>'4zn[;ʋ.>Ivqdw;ޫh0=Ğ~6P@*3&VhK%YSoYԡ8pgcWGs#3()b"('e*Ԑ$D A`\( Q \(BbD&!3ǧ:Reju%> q_N鵮پHۗ=aَ! RMNzFy. ooDE};@퇾z0~Ƣ}H_V,QEM!>?]{м=EAV5q"v7&,\BH=I.Ti8wo c|5Ή: hJ&l¸DH-5u6ȠCMޝuSs(cj1f33lc̮stx#h8p?=W@g\@{j&Rt"BT[2ՠp/⃷j{ׂ;tpA. 1X׮־-{^Ju*VO?^\9^Zzi8A{;^W}+p :pP؆< w{Ĵ^R GH;@BC{vAy*%)I-AS|  G^n}׿^F G^^>#վ;KZ{dD\Ʋ~CB@r7$Ḫ̙j&;0_h:Rbu^1rհYQRH|EgۻBi} ZV0Mi7|zi7b_'˟`)C'$X Κ XwK@1W>w&C_uMtLz~%O{h_(:McњSYp?G)MAYSkxQaM,x8g_$=5%$5 ׫>׮׮߾®jd''ѫ$ f'H䗃\<,X Jw,&*|k*G-e{ozWνuVjֿZysc_0@+p9P=pHT]AR- ͤ,c_,Acy@S¨MS,% s[k͜> m AIUeWxMmYI< 0[;fg!6)Nf$peL|y5x#Ʀ0%qR%cno:r-~{Pg*^o|GmZ0Qv Xn4CI!*ܫt BxFCOp1DHef +{xVO5܌8M$pq/ 쥐Vc3p1n/~6xeUK(W*7ѩ?LYGEKf*#:kOJ^xo@ehNKledgh+@s_1д "-g +ᴬI+5GHt j~_orG(jS:֪Q7B1 u !ܱ@mȣn~i$q s+!aQFA">߂a8r$|V!t_~z0?2ZJXw 5!^Kpͨ# BL4ɒ 4/jp_ Dw>ߠ' as+D[j3>(~aGC?}4SҷPб77mm4"=}]%#6}?UXdFۡ:E _~RyHGXzQ)]b eBGNt]l#f{K|W{/C>pQc^ TabG`xqKI+L{b񻸀n, 5Ox@LF9QVE] ^L ,t/9*5\(Ыa.99?~A0F, *QW?M*G޻:L,&0J p4RFƸn>aqӍUp pވYO8nM>?Hc4)n2G}D@pbtم^N7ǔ=shD7Nz}a@N~Dz @׋5ԨEz~;rER Q>#VTTDkCE"~ ;x>XmɂpH0}^6/pZ`%qȳڟxLwy lG4h#ͧ`oYA <{oցVW"RF%C]^ 1id>Ns4\KBAe˛miPktSU~Lu;-}Ku B (X Vէ+=UCq$6(xdrTl(8 `[] YFe[⸻(჏ z ;;xS_?D`chእyr*!uC%e}a_b?E'Hޮ@CcY.ft s/ rpV_4|؈.0L 0shN~47<@P)@KA DٮU1{Ct[3sp>ȬeN02}>{[gC ͨYi:¢^x) q YGߢh7hj0@5!5!'}XANc6+|GvuhLiN5Vqf.fA)dwow{Ffy)?9w|} z|$'vfvI*yʿ^O^E%PHXr}nsJSp9+D _/k|n ^~謮| ~W| yMPe~a b1R]$F5SGk>Cz21FцI2e`4_bB ɀbGr:{D_!mߵ$0(؟Mm̤.y\g>?[`YIjcY&:(S%WlGSA*V5Ѡ&*&~ew1ZI^&J__{d6z!iMc_,_V֡"%_zg(zd12$Ӕl|q:8'?dW;WB[p͊ >MS,Ƥ n ³EA|0GLN;Z}8 5浩=~D!r0oa]4O`okT?.!CRÉ^_/j"9d?\q"7TÎXbF ӷuڋ W:뉡JIrԨS{s!lW;IpUDf+0φQ]{D!}~>sv>)R%Y`q1o- C"g {_ ッ jC&ΗSW [iǁΟxq8O4jw;t&R ]"{[Ls)եȑ{b$.O̴.V_'"fZ+DiУH7<|CLm[eZ17.s><(ڐ}+[64fOU5.x#*_A5=GJK By}L\0ap6K6 Psk_H ]K,"ab7M (~!a#wE skd]ȧS%"BKO튬U%Q/zJO-+ɗqjlm_WI>8Sn{Ebq?qSTbtz;M|2_7U~}j4Wwo_w'lKN4J.tNT:auOs(y)Hibc"6pA.q-ݡ}\jՏՋV+VVz.K?| "!,nvdB^g}g_)3\)0qp5$Hh|%ʟJuz|$Kr"Ki=Ou0\)Jg`:Ca|)m\PH7tgpt%x?ǣ_*])d*5ch1q!$>߇v}_h V* BykaW:C"F-|{~8]0?؛@:q̛>7ì`F,xkן*[X__&.糾~\,UDd ?ְFD \]R,x{ +W+ݯ*A}z7(pQiW`cDZR6zc1ag3/"p֘5G'86x @XBlQ5X3Gh4UX^ ?:*q‘Y-CX,b+~pRY'.Z>+b_$3ҨJ4wVHV)91_BXWewtžr] xX(/Oy_OaC+/Yv5tWbqV~I4ulĈ4Y(+RK( v~G K}%@dn'fwr !U鿬);nfFW&gKǵ)5ZK^(c`+~gt MS8ʗsA*u D'm ToPQA<Ӹ^GbSKnj {mK (烈u՟wwΙnQKCxwo|N3ޫ0e{M  at=k#DHhO7H6@UFuLx8y"S]zrGejo q'<82rEo`<qa`zfk3YYp-,?rLwkewv\͂wf7k3.+^  cJLԹ8CQ 'P v>EA@b0p3z_plQ!@agO1 CFp{] n+UR_r 8eZWwDסmZ %$4$cRՀswy[/ gb{Ӆa7k8W T8 1r44LO$D@F B']P$Uþq ,y}_S?Ćrl8j\_5w2$SSn-/ǐ5x8Z-,\!QqCmvZxz}HG_AZI0cDR7d0(ll|wwSKX"_B"֙F"0>nIH+<@"$ "- ,*㬢s"KO*Jn'v ,￁v O`783Y Ӡh ֨}|9!ě!"HҴ/-P14CPTz@H(\ ZQOS_=˅T?\Q`fIE>QAbIwdآIV2> OqZ7=q#M|WbC5+dn+^ނȚ#V,}lWka[MC͇2Ɋ~́VǒgEJ;2SzCW[(ʜ0'"I" 6ICVʔb_'@.7hP=QkuzM6Wwـ8NԶE;qy~Jգm`pQ9t|m 23q8#+}_Ö|^Nh)FCRx58_ٲp>5KG4hg{tK";Kf^+dkXyʁnwSjJ޲pPTF̄iQLHtVvI &2>Ǽgp0ݜ]h07<̙L)^\>y4w7/v ̃Goj#2eNh!^)qh>NaOD^iN*˗>ET/ۻ^a`,o$VKfDJw ޟAmT! Ƈn?G{^`` $?ӐĒf})~`ۖECXwå3όt68/{v()0Fe~ *Xv^ݹڻyصniB>8%>HPiX$]k!8,omqLIR1PWhҢDc%o}XK缕v5hI/ICf26z øJ#-e!Qjo&^,S; ⬈Ll*g_-*N X`1&]jwmd5ۉUvVpqp?[CT~3(bw 6 N'Chc296lZ C5/{ߖ?6`N'xT@j/H3|>Dc^DU'HՖO{C\Wfָ v ? Xy½ %1eA5b* *j'::`EGSX&NOȽ_z:NQ7fE:wjӳ}BH2R:1>YGwդx^bdOh9H"^djýݨgZ ۵ى[_2WwwaTөS3H{hH#c Tb3ݳbz$| W/XK/Wu (FD,+U^yh,c("J=salYG6"mҳ GnF  Mh.yxfAդq .YJl=1"mW˾BrUZ->պ'>ժՉ}\}Ãx+2@QGN9xQ8X!<ޠ20,x^A>Q ܢ؞ fKO ZBT)mUW0a%㑦l54uxavYpnnHXHݟu7Z ED؟'c#Kl$Cj]cb_~I;d@q)06_0꺁GJቌT˜@/kN !w}-KnFX@ W ǖ o ^W|OY9C°5{=r%+tf\ks`gMJSm2!|qdjQq2+! ,<MB)o,v(2X`/eQGAtC^vkN|P e/ .84ghG!.Rf!?-]CF$0CSI[P&ܲ|Kfo_\gᖚEbJ5WՋwk,PpvylH!r(Z U ς>|"RZD/rիuTV :4gL\񥜚(Ю 1߷N_LhK.XeU{s>]<=j`=4T 9no}LI"lި':~ )cMVO+Z2~v{recj0Eg4IhʐKNc0ʐXvMƇ|>.>X04v}C>D c'*162IWY"2B5%!-;1d z /k^/m/~J~,&k""@ϸ Naůѻx{.?#c,ϛ7wO[CGKui Vޯ(HVajÖ~y(,~'#fS_hENL ޣ;3\+̆>_ D=Z;^rG>ӵRh]9B,%k]"Y򡮥ݿ's~UWPD*_GŁӒ5U~!],ge u{BT<&Y6A\q(@C94`5Qu/R Z G:pwQcݒ rOrKW˭}~{UwO\HТ;$#-pp@pƭ Qf H_ 2lAyEaKPeg7/c&ehn[Bh[8'tnApxuy%xx@ J<3(+Iݦn/bP@NAv8 y BiƬxvZ@5 [- n^7s׿w~^&I梲e;~ Y.'!x8}f/O/\}DH)*/f^i'[~Nir "jFx$`[YN|aKjUw e3!u9Xv&1VVF j.zNU_߬^/|-]I` {ciTK- 68{^YJ=GIDz~767@K|+:4uL:@XA^NZFʌ Su)eT2| Jbuc/g+a#Ϥ ӿ?Y=?BO6F]yb.hnXC< wL'l G^e ێo,3Eabbu;)-P!ܕ.-yT"H0J 8m>0Π,?h=:\o!v>e",֮񅒌^Y~ңN'j F%UՁ7(_TD<᛽W$rF(r}ɅL_ǜAwBgޜmezCjJELh©uARXLx?a\,[Yq3iar,}"wTc AXHO/bwsV&zwBnMQp06\ps5 ߖgί#Yk*ϡꟺ_^.A&iu^N7A#!zJIqmi IZa 'b~K [}'dH h7R Z_^xCqy2O>gn<_Rķr#C$L2<-=8:.8U4xu2Xca\9Z`U`67 ə Q ]a`F3@e|![587բŒ5Fy4Yj`x!r2<6p/Qvԫ*5rY|6i9뉨jvd75fCsQ^/u#X!G5 }nL;lԏSAxqzUeh[iܤeCQ$wl1HbO3 G@2wqSs! ežIc{wGRg_Q PW L$7ec౿h#hycp>q>o7uCe [JELeء-snPA8i'OOD򱝠v ,~Z`4c930H%PZW+7/4h?'FBa^r81߯l:ЇF` [GSN\Q' d 46c[F5 =wD1ڬdF҇TX[ԉ$#T[MncYHOd" 'wGp}ЈD6\z֪Kj=DMa\;xK~'; /f߯WB}U?;j!ױS7*\%9j{z&2|)AU+=&';W#=wWK{l݄Y+?Zvv x"3Ņn:$.4,is6]:[ Aq[U+XuE -^\mK~dz UUW^2LpaHeƪr$WR$Yܣ*v="-P|_'{OzގHaM;YDڐnWZhj>>I#i7;Lsy WSov,g%r˜N[@_)AdPdOw>廙0G6i=| 1" 6-UiA:{(]x+U'{6MEl_aK6c@]rï;YnXHɭ?k EcxI.jUVCBI'73%B^[K]iQK\Cǰ,HL>_UA/w_R_jRtIw]vڑ:־7zW_~LW~ڽ&h8„ 'N<,B] Hw+L/>µmv~cvW%kM~~k[pH9E5`p\כc'ǒh(P.` M[[+f(qiFz ^"h3(._P@ïBfoaRTtP-ZK74#pnNYOgÈBcsMʼn(V_Eu`U9%Y*GॣHm wapt`Ō@TzkEU~־?wk\9W{BڑMv+>oLrI/QL]M'<+V+hXv1rF.K(p(ĸxc,e|[Kx`y8/(bb'  0Ӈ{=zgLL]8l8NM3\2\,`#?[Ȕ*w^Н _׫.U?xA3eg/蜐W]!vkŨ+֐}0׀kDco)/i.oZWEz%џ0d j Pa8YqFt]\|MFt3Tz/ yrdߠ\MJ^z{ZWU"9ŏcIąW]S~~ࠜBƴӆ֩_O,3H0רZ@7n>=nV连pFo2[;/YC2ym7, G۟ښSpp .D4}wR|v ez"03lJYӗnAv8nJBv1>E_. P6Zma*]6J{löjۜA!~|.7^pY.Sp*q}|5^Q2@9[m`Qi .p`bQ|i˅J!yA:?t7 _'-~퍡ҳpb>=yyL+V*?%Q=+Le7XnrIScyTu_"CR Pd?~\ <'` UA, oX@< tJH<$t~L Po*0*Rcg,h[*>_uwDA 5}l@"qoA_t Yf~ ,|54I-kGYw~ .Y_U@.q|EjM4H?Q1.yFe+VD낹4ƠU%&g|xlL?k Pk~&_'wL갛P)7RYF9DE,b+gLg@=jNFжtyzCgh#L֋2])l7i. $iAnK߽J"W^=9XSe#+j8?G&2y{LW2|kItܞWQ7Pkѫ/DdƿS&,}#.θ &<`eX6RxEcH1MLF:'(0 ?{їAD#„i-^:ltq%& Tk?|҆RjrןPfۊ40l?ߋw I/K3 ´Y]R{36Jm}0H!?|{,ˌ[tʮ&8oCʕwE4&>> \? VSCH`/h} 6@\ؔ%1'٤xUaF Ս!X-+Jx$ەZ BZ"i|TvJ9\z7e4e#Fa'?t_ڈ83nU5y~lʇěk*)̢Dԁ# 3w} ż=ɽXxSguxD&"gQՠh@jxD 8dH_=X g԰c9-3d u7+XA]D3kY_! <ьJiåV=s7vmaOC_۬ˇ/xCtpW5-d"8Őww b$ݰ~Kٱ`!/IN3`k8;Qq6 3\Ao8qj;ĶQJe{qd` RQwN%izkctIo+4 'm}l VExGuyȄOE~uQPBjȓ*fqZSBnV=^穑@7)͙!ᘖ껈#ʊy?=\<@]E< SƖ!cS 1vB (V3oE! /w?HA ĶZï ,w<)m8:)b>j˅Ze޻,UC?+8 I+ᢠ^-N04LNnwX׬ߨ|mWc&uc']看]AWzqQ&k_!<^bE(+"h8|-KԝI ?wY "jXr${7~tUAKZwl9cϝ g*#Hk>qrH S-D^Q1H h $FHEb FnHwR[pΫf%urw|ܚHx8B*AL&|TP3%0qAhwsHغBSX1X8h #J' ,Tr)]^Prrf-uuk-w`|]{MQ~6 fܲRMRF"d `+q9P+'#oG?2L+ ;&t)>JI"۳pF BX;#H3>(BdU,)Qa~ ?zGxivNݴ[++Ӯ9LQ4 8,܉2I3u:]mS#I)ڷcS|菱_B͐vKWꚏKy>|?i.1]u4Nb@؋h:Fp_duuQr)aii~} 'MNd]7vzFk:dBo 89p{ {shGڑR! SR>H(Ԑ$$`Pl B0(F 'RyɹWixISwq|<6/km|o'5ǫ^oOd5޿EO(Epxd6t.`.:'7W@iBZq`9Ud} PH24> MRR4J4ZdN#.[$*A,AB0P*&s>gJsS]N#p埆#$U{tPzm%SQ.As{FEa+:0@ vtRa/)}SMkԔc+]]S_wnVˋlO+h$ŭi1+ɸ#qH`[&(B  !aX( BAPT( L<{TLn^U cϻ=xC >Q7~x4q_m -x Y}eh^'B;Gƻ6D)ekQt{bbmcy'"%ӈk[HSYmK$!E*Ei3T4"]So.*a_Wş+dp3PߘzZfGep2Kj#RbЊZR)О8A0 wy??B!q}_}k]ZT螦r]Qr_]Uw79p% V5*WHӰj7Y cF2h*NhHߢ{iz ʵp@:aPTg|ak"i.B{zT_J5+)gU)d*^Uvűna_~9aVHak *r\`뜱1VEU0ӌ>B-N*ӱQj 0ʐG2PU{|~[1 Jդ} $GݛS&cǖzXoyK<]\'W GϗC }| |l|l<㩁OA.T\#@^1gq UT, 3,[^FNK{=ziqKW[\ꬿDA.1 !G=^tMm_R@&KP-}߰˯ЯѪA7F]Vwڴ]֦J+&҄rS4ֽMrfGBFkuwxޯ_Kc'%!#ƲtZK`G ږt$a\?"H0D?BϽ~;jۏ2+,8Lg->up[pjoyd@;NYl^40&'mϒu%[կտBId3a-=hA@]iCꆺ6!F1TF`>D,l) @io>OO-Y24Tx+7.rFxt#>&>åD4Bm^5.Ӗj|Àǔ(^2Q(g{w~8UFUI( \̕2nO)Gw㔻WP-5aAWI7pi6)PX`M4>BnoKwg訣B hM90J՛w Wⳗb-wV`πl}OúJnwlq cL2:+'OdI}篎޵/ce{' Y~1_`74Yn3zq0K_hO" ]Js4ëvcc 3⼈!f.Pjb/®nm^hח\j(`< &j~T\&G} =F-" @?"X dRM5#=xn1o_8 *EO]"FȿjO%)h jWGi/Co*f+ݯ?-v+9sa0L#HLnٮ?G^^^/xOeX}WXaHDξwc~$(#ێJI;7ۗ&s ;{QK_ GfjC >e*x`[*r,ZkgRoi~Z&ѹ-r"ߊW^S+h0 =;o65 70D`v6_/ץ׹R:*$VWl,thx!>@\M~r/'MJ.!QÛ`'8>-YmíAi> Œ|_I7s.?~vּ tM4;{ԒJ,ϴ^& ˾7NRw>Y!g^<g%$OO40%c3)Rh6ƒt㳊<0: NN!xI?d}A6 ёJ(~{ 1 +'1YHFQٰWi-Nd6pCa?!%3/lI_wח)qjw$_w8_=]H?H_ԷܡD#mqg}z k/m\:*ޢ}1/{h}d\ }PEmօ U%{ 9zۉxn;-qRK34;Ѭ{$gm!&ad:iH=R' w: [_v2ɸ &U8} /3F4,o9XֈxnGX;htb8GtrݱeCtK)Qd Us tXK*rª= d<~T4HO d1\ӷTSʬg= MbWiͥ5n) esp~XrCT$5N tM4@-{򰗳O\a;.}S,ScrܿD+ϣ O{>__WI A7Y8DΜt)>? f{ܪ-E Z`|qr|iͼ&R@yLTU+Ny^:kiFj-"9Q ľiS[,>(7<ܻ^,_*'k8&%BRjDZkWv_-w>sY(rl̞9iPwҙAM˶.] 8[p]ZlLhs*;.'%ԷaJ[_h_V|D@{5 BY/?N,ZJ W|hlC}A0*uLWM_VoVkvY.^ˏo؊AH NE8 ~/n<(gX/ۏ(|H'%+?.{a7!,2ApAٻD 0L EC%z2ROK -I2l|ܨF$m]<\NKvL o#Ɖ ƁfR.` AjYQ"ş)/Xl [ul 32 Jľ @6 -,)|ܵEO ڻch[ ;8rƃ!үeg ώLG:A=ԨZʬKĈ"a!4uO5ڙc~^ T -Dm$6Ą;WR`thjRxֿ^u-η·mKKBAaBdCF{!`= J1ӝ۶66%WVZs2OnC,yp s0pwBs?*S lt}>Ƚ/1F#l\)g3r$õU)ܛG/tM 7򓍙' `abkf\(HxNץ w[(ߢ?M}ծ]䩆^nA4iςjm׉9ֽ_ :_vU:zV]-ϗрQ8йꈀl} `?raͅqj6!UQa#|=Q85ktP h5fm^oltտU{Q"@LQX~-KԅM_; pK0ucHm<4 Ân.ibawÅ/:ϱm}"|G>LKJm\[P9ꨫu|DWO麤Ks(s-@kqlC޹|d}%{AL*=^' BWӝg05' vN5=[{1llFVoť2j@wյ|'f<:H= *ek!{jeo >Gm%T襣I$CWOcvSf  v>*=܏LXp=n&kǛO} bfz^(tGQCՆ=Fߓ;#ʡ"%n"2c?XֿRޅvXw6`R,VI~;o_ P0A (BuGjn8=g(+m@+6 >>>l4/4prx$UI}%}.Ef3uUσ\Q) ߍniB_j-qRu15}=a>*{aj~ZydowڹSrp9\U,0c xHr(B/'P0^׳5c `QD5>Uj4.k ` ]%7"NV;RCּak" H2}Q} }Ɣ:#B/rHo1aOWO C2mO^Khq-*iMu8ԗ}$08#0$&B! |B\ . 8$b l}2H0᥌-8bbn.휭n06_FqzS.f6yz?£ð5zLCkogEOAMln+x9 c08efʰՉrrsİ]w~uC*L P#49O5>`m~6?#WcZP}kܬ|Bn [F#M380)%jOƖW@DxcEe썈+҆aXO_-5+Z's"?9x U[dጦ\'>XL&yG$"pry5Vnn:F|C;/kq˱D_~PIٻn0,WhBH`L'qỏoED=Klп8ӁQbPl1jp[|uM'Bq YW=,W^ߚwXa}hU1K5pz)7hznΊ]G6KxLMt,~Ĥ#~%Fľ;KZ #(4 l*]:@=C /(۶'0xn\} 9q1++*LVK|B'h1D_f.@Ɛ#Ǘgq vWm7 dPWj+eAMuQ|; $nͧ>.})2Yxb{Pp]ncWu-Tf]j <1?7b jŌ;mfC6\)O-DZ]RꘊDBl?kV.L!%? ^&ufDI-/|Z^:O0Զ:7W~a׉aGwLBk*SN侀 팾KoA0L_t:u,ϖ^!QI\y"oB> i TnUo]8/s_ rtͣ` .NN&G6;Q3>k G5Z1_4{q΁G[#IQ&O%OLrr#ڋFVw}=6$YloA|*4sh| $_2í {6G2B k/'rpq[fռ^0}T&hnYi4{XԬTe"l8#W+~y~^ ;^Q\˖E pl=#?7kOչ쮻5FJRr}qCb0;ia/'_/!nclo2|MffxvQ0_]j]0it,AMi 516?MZE`oDyjHWе'![ of{S3'߇DN]&v A1 J9vץ^b{|;_k^Mne1Slc| TJ8}pkԶ -#ndc-F_vhE0YfMf=/ Z9s]'#%֤_jwf5fpoƂ׬puɦ #a|In5N'`f ұX\ M:Z$<ǣ~QC<0SRPw]~y /^Ƌ1n.>'^_9G΃1+XZrS$ؒB1擊+ׇ_opR1P[btΌg ca3!o_ZwJlO@#€ WŒr '?)Wgԡhui1Qho}rc?OQ$r99AnZC U8Mf$Z_~k_iiN x:D+.='^#tM!5iuPC4Z$D  a߼~qՒGB~r1\x Fb8WR08it!li__XXzO^%v'/w~-PSyI߿4jeÅD? ibpE6g'y/e uGj}x$>Z{ʼ$-ҋ/K_̢8P1au>64nh.^ ?5w*)=Z>[j3]ո~w;yr|ߒJ7r 7~+]+l+ j2ߠe?{pI-atKj?+ w[%N=Wc\_)#È%F0F 5/j(X8@V#y__N ߨ01Nj&R_nly%M˻U:ESH6-Ehp6? ȝ[tMy{cY~ޫ&+_@痒X ̨2 _JI躻P 2#IXE5Vx7kWM]"I;WΖrCQ;ވbY+^G#׬_=& _{/-*^kIbX Lǚ\ ړ?۵^_̿pNe'WU_p4X>n r[_)mիֻZEʉ💭^{n^ TQ'f_,A1juv&^bb_}ڕ>7['KݯH_{z\0YcH?q|"?5υ-"2r^[¥^ׯ.~~?W?^rA{ax@agd/~V+=u[MX~ZԑusZj]Oڷ녭scc!]c@Ъ >Gleee]k騅Yn*'b%9OB?1q:~j;]/;-zο!U~XdV_Ŧ{? C8ATӵq OdЁT ,ap-٨~z~uy4f/9@QQW3$u^ B,<_ Hܿ}kVEzb18$x),>gPӆYؑҭd҆Bt#V.8W,ޣ(_%E[8zO$y}mE׫*_ qUkʹv|V&@a7!~yw Ou'pLk]R`g"SGϪ-~_=>"G+etߐmN=ՃTgﺭ{\<]u7O%e+"8I~ z_UkA(fE_AX\9փF3<\%CѿX:5oM|7_Ry{Kn/@9/ߵzdzhwUx+@x gQo//ҴRԖ_RW?׉>gC#_W\:&gԟ~,؞Z[/:S~ 8p~mTᡁwnwK|[_FDZ$+kԺ^Wk':E^ߐBHb BenbZLAƏJw ]vٻ8~%UuwC;)7-Wm~~_/\/r P)#߬ j\R~Ly46~/5Rz{pnW^&*G{j[58Q֚$WzUS*HV !0T. BAq(&% BbOo~-QiqEHm;w'/F"Ko ˍA]B+K!HR66u~1DϬ8xOOW?BO[_VxƆ~'{%;'xYNA+J"V5 1,** B`PJ" BpLB+Nzw毭fUZz]_&~m.|/:^{Կu Dsv-,^&-*_8S_(Y[#PA[#EfV7L*JPd( APT#Mz>~t]g2YNN7{mUq>[_>-`_bz/ {w*?|!0 ,  *RaZC$@PB.j AP* ¡@( "1"?7.mw\e%d_.{sꖽ Zȗ U3DOћ OG%ԖwDBz_\P|"n34phM `ő 8&HBC0X4 B1 T(#-s_ۭrkS&]^}CwgICp=@z]>SLQ;Ogi_YwM[ibʹŎF6XۀVb5E; (4U!8 D.(AT. `P&BA1L"% Jak&{{q"sSz⻙Gpz9ήuTWs;iBs 7?^>Zu'=FI|2/ '=?~-Enކ_BǍQT5#a84Z…-(((2 PH. A(P. Ba DF19o9<^]8z}ϣ4xE/._mЊ,9maB{҅rC49G5*HشpSE[M` ez]~ 65t¬%U]62q)`<84?J[9v ޽X"#;Ϭ#,**ߚv$,|p;6\ytE0w΢E6:*䱤ؤƓѵKws?<{bUOb)P!O]<X1򿡔@@zwz)>w5Gf~{)pzkrA}VS^/1)&1V@ãf?7+H?V~?O^8۵ƒ{THa. 9ׯתׯ.>/w^nBG}+C=-D# ~R b{6&d~ ԔF4܁X?ig_.t7P2WXy=g^+}'w7Wכ <*f1_IJce=q[H]M()sEYst^+C Nߔۚ=PqR^ʵߓkIݫ=?P=a'QLfwyKSmfoֱ^HW1o[+y7}T^#^ԯV+؂YgvHr^W'Nhj]1^92:zM:^h_Os82C{7+zyD&xy,}Z?]߫XTBA2}ЎB|wj?|_/y(jquW=xfAG~̱f}}A4h|.e=}X}^]ɪ-w&Rzxo^B'}'Ro6sȗ=?WMZ^v:"[Uu=<[n=Mg ~B4~ClK'!תˋz"\"ʬջVWc1A-rW4x]׿XZѿ]sJ׫u׫!K0mNo?dBoz~՝"WU}7kRήKA׻^תocz&~kz~/ ZHC%9jGSc9;7@yf>:@oֶO^_'^b́)M֓/[ѫ_oj*(`*D=_1C)sÕx$Rtzp~;#+%mCcd 79 -,W"˒^ׯֿ^)0OX H1+Rh.]*X?D\LiD]iZW-0S0'1E ym[W|}#ᾺT⯼ިv_tNZ6Z˩ecfEyȿnE#4>BM[Gݸ~c\vOunUI)ӺL6> )*% #,uz#oN&l @`0 8cRX٥_,.F_]Wy ͗^ԭ}%ڔsK^c!bݚlnbzWy`RXI򴴓|>Ԁ|߅ʽį^?G\fb*IEvEH߆wQ Ѿ9)Vc =UK_=W_}wkWϐa6VP#O }GI-[~IH%4'`GNZޯקZ~BJc)n%@wz/;Y؛vK9CKdE0hvWľ<֞$1(M豑&&~(|'|D/]~,djSm9R]1=x"+46¿'V7Lr[M~rbÖ.})v:߉1h?sAgO׳?"[XiX}Yj#]]]z._g-\ԉ{)`ֽzJ_E4-zwGb{E]zʯ>),W@A3 }Zbcziouc^nK}%촟[MUp*ڹywwv\JcjnZH^ y/э'wCK((?TvO"Z*W!_^[dcwTtIZWu/vCKk̭\JhU}.ULM׿X?^X=\/*E#׼^_V.׫_W_F'XUׯWUwvK{O$L%aI>P >{ƒ[חekt:fSV>)-{K^i{W'E1\E0:{`@M4B: SWsR<1/Z }_|0*e~,ClٜRðKۻt[ V>_s<:B7OA%׭oYt{o/&G ?~';P]kO{^O&^^˚s[7sBmn_-c[)ġf'@X%C{+޹w~WDFZ>wVL ,aNc۷>~R{Ɛe' {KgjƽD׻ GC) VK11\{z7W^jOvzdJͭEVGmIr;y/zgwu$9~6Yi;/ݮZXЊj^YQؒR]kWskh A3uhJGcuS㿋:e^)]R b cWIq\Q_lq wcZڵz~Z%W}ZX$rӦ;IVUUεC<}kzZrj/RֻkXj_>_5S/Ԅr,.KZ־eEYD(]RV/cW+Վ*jw,X&䯚ֻY^]ՎrS ^Tⴕ_a9g?K@;V/6>Ҧ׾gswf^]Ԫͺ/7*/~ZQD %3a\zrx\a?PQIyjֺפ}jĞ.݄sj??:C A1 Alp[W C>Lh"э0V!oJN~wVz O׻p[YIߩ\S(· "m|րGKC jm4ߞJ8=~Qز2(EL=wu_%א;Wvx4-1/+6 zOfweڰt*~_!>*)7_/տXU՜+X[]~k]$ɧ2e|uoeog8|J^'iZ^{>L* AAS:eDJ0b |v7gvóQ!iM_*\O|K6kbᦩF]׉Dxlt1,ؤ'g-vci%Cw^?HK;j^H_ h]cc*a$FL2q|\z#/b_gZ*VUWߢkZ`A}(}N^4a茿=|_S^.bZ\\MU)*Ku7GjLԿЊ($U F X. PT( BbQ ~~/?:ƼVj]V7nNgWu]#7چ?EE?kP;JxR+oe ۷VIu~sfdI7pYYwMƩCZ>ZW5` !*ĭ '9  ``,' aP\*3 BaPT"w~k3>9+Ro5m*3n4,p@ W *-7|.q;i-SĻxa1_ݜ/!zXe˟bL0_3\ʁQf;$Ja"i0($ DA`4 BA(P*C BbQ '7~=2q2VY៩Oʮђ]Y.1./o,-8hͿ};`;stEmkE5$w߁cǩݢxxq1 3*N !p%( N4@\2 QH* BaQ Nu:ɓ\N99+)0fz#*^qZʽjyrn#X OX-;_BY|R}J]w%wkUj'TMz]z?LZVzM+"㩏-:u7C_֪׻zjOu徿˽䞈y>Σ篹^atp 1ԋ߅Jl1R*Ra^͗זzuWM/]JպLBtr &ex^eʣm_Q;0F]e @P=Sezx)wwgn>8WrzHWu}߈Hfu@3Yz9UrV!=KSGjkR#XN~( nJl&fѯbcst^z1pI  v~.1y W4 0J_oՎU8 \8A;OO z~#WVտ5$8lDymDEįem{^߬H9XY}+rE^;Mu"c ɢf*0wZX<2vRg?+1 ]Ю]Kk.j^/GkZZE ^R*tHgA4*}ס)~?Zuk/.ֽUXZR"gWu-W+FդGng.&O$jbN%K]B_Iǎ);GyXY_Tn,݂o~|Oj]ί~D\Mws?$%Y~r?wpRWѲ_URnr߭Pjzaj:-ׯM<i\a;c2å׻Srq [cDO_fZ'-{xY6O~߫WO豯}XjNTUS ^O&Pp@U|9_Zo}^wW}.=j;?5/a|va<3SkpV~~罳?I`?~=COKP̉W'_J7*)uU IQ[uc,xJS.00aO[JY?^~baؘ|߬Uᬃ7o}oeڽz{y}jje4Zu߂RhTFӚЗv$]#_֪֮gJjO6KGzLOKL8zr)W1_p~}xf}z˰B\_ n~Xew~~'\C@2l^Q]KSZ/DxhE_&=Z_ֵc:Kջ7F}4iڭǁ/z{7Qn[w/}Jߐ@:p}~g^*DV5lwLX?K=ss蟋\+S/$Q]5dƽ#Y\inzo){9T(jy?7L_)%t-7>}B|^%V g" ܗr{uw^-s)K˹= Uv9%{v~PqW$~GRkTRKW7-zԞI]{鶽Ye}g46`i,%[ E=`?^[ww'kzWU˲}~ ;~38_\ԗ{h3񦌙Vl5n`7K=~b0@}POpz{j^.O_~_JYFAZ<'/Rvҟ%jrhzIg/'7֋ѻx? m`FR#7A'Y%%򕓰}U]n{X ^ʽҥed[#hulv,-CTυ _f$/kZNd/]wj/C kx>E߲}?+b=oR欟F7"L.ԩw^W>H5y-#t/4?}˜E<5ndKq^-կvK^Bow5BΒz*]t% A6 rz߯My>ץ'X5^/\mY( ɾk_~ڿŊ[k*W]Z_:(P._O׻|Wj9ֿV]wzw;q52ZOC:Uj{uV1S?~Fz&KqOaa3X\[M`W*ߩ~UzԖ).~XKKRzrz_䭛[tGbu\zGjwdR%IdgU6/6Rz-UO%> y`ֿ\a2듚1Vb=)u#KkQgD`}*kq GF*IwҢ{\Ļ13CG!e0~zʮZ||Ukd测jʽey^ɁRY򐡆\fGJ=Fl6G=tz]~ͺ_.Zk_¥a]Q?N&t(=ǗVu^zDq&.}_r]ch~e1eO?Z$T _E8(4hcʽ4ҷ!ceIiZ^l#y!$.^}D8޽8nG}z`^bd\-+=~'&O_^kNA6yWJb=_V?]UDR_Sz7i/aσ\\N1U}_2=\\m' _v-D;|7=7kU6ė^jd磦q2߾yhsVW+֪#榮;_\?Z{=5_׮U߮Xd 8݉mj1'Uz#h݉I_ս?UўW^# k}3,IR?Rx6U"'i/Ttubu{/_Wu5 V;^޲WU|7zl>zc3MGsKڽz[GrrOݫ/,5kyrHWc8'Sch)mz6e݄0:$Nm2Gë[U7ZVVT?דԛ-='gm$ϜR_<߯Mb)n-;MoWwAbz~5, /ks͘(h;~";8.h荏^Do!!U[4''a[r_WIyAkx#c~ cʉwKG_@dc]KWJ;=Mw׋$ɟMa&gQ_nْWll/>XfU'# d:3~MԄi?^wXF^;ԞztNb/1~?}/wMef{LNKo_F_-zߢkZ׃ |l߭o U#k`bR!z$A7 }BXgRZuk$Zr˿Ղub{g߯~l8sJz\'gk_~k:(qߏ94U{%/~~HP_3IړzJ/֮^^*9}t,n߼}UTJ]r׫I߬^b'|԰i*jsIݯZe^gnw7jPh Y7]W\īWko(_kk0ZT }̯F J"刅p,/j7_ sC߆2q?֦X8q`~URDXP<'\k>s1GM_R ?#}χ9L_#7 7wHW~ڮ_1w{Utֵ^^4^~IAvtR!#/W#IF{7D+J׉dh7y=?u('w^ V}tWiȰI~`0Nd+J@W,T0&2 B`T,TFݻ[w)үwUKu&.gxE:zdȻ UK U5s#G~+Ò'_ ͙~CvZlo1*q+OxN;S%϶G `M W%t~;)-^UNT-sgl!MdR{iiuw;0 ?LeeNV( ,бKrnyk05_ѓ}^IPe0ᯯBʚQ|]:kUZ,?nꨥh~}'uUjރ>^D+]PpE%`P@7(nT٩!*6R q*14mxD1?rL* u/PR)"@& @0$AAX( LԿY[5a|iu48;Fv_Cޟ`Z#'~MZuV`%a] A,6!Xۤv+kOlgtW{j楯$+vfẀ̞xEQmH3P`sWqFګ\/vp$T$`X(2 ¡@j3Iu,JHjm{j8&_g}EjL{o,}_pbM_4?`bCW96rnQLtqef.+W&/(}ުKʪ:yj<^o`.3M4_BwQyọ?&XƬ82yoYIs8(0hrI-K8jmCtM=]ls3mȕ 6tϦަ3S,ޤK,|@8%F'KLMٚpXn[1ڗ5Tɔ5:|W‹pNɥhvx/-d4H+Q00 Ir)p gjSjU%rZk B#jx- 67`}eA8 v7-WJ5wkG%c z'J ÈUwXH~zUz5^V*#JMp{5D_qRL~BD"kה^QDQʭ[SՎ_1[踟Y<|ܟLގUwȽ̽w4'`WrZ*,R_JĖ'aS^{׿XֻOIȉKV 4lyE7ߺq=zÉ>KR끸7\֥嫫 'q>hcQ|_mRm/jbo._\+HdGQXg'ޭ+ֻWU%\L\h*A < Ba+0];N~1gt#;U c6(Ő|o4Olqg;+KEt&2a},$pez)?1Or6 kGfb6׫~Rn$nK$y6?]:2򊏈N꺮bYrWu+I=?8$tJf,r--5gw>L|ٸ Do >r YK07"3r$='lwI7Dlc)7oϲe~:lwK._GH~ 1]M,MBE:.IMcW?Ҳ|o5W$C2 0f">Au!G;'#mbTSh4闱GšHccf+WR}\_;%H & 6E~0l$&B~Kכ56ڹH!$PBFdnt׉.lmR7# ʧ1rxZ_M;Yଡ3aCsO`Z+!2 w/)')~RE۰~+tsV#*~^_|3Yottf_XA2߆kk`9 3뵍dEs[-kWyL>lU]~׫<[N\^tg*ֿZjzk2O.B9iR߫z_c@93}/7s~_vzBjz2Or D=]Ofx^zrݪ}ڽzée_E!WDチb? jbARQ"> ~P%p('ϮM)Ab^_jάTOrZ\W_Z +%䕄;ԜB÷->wZͩ9ɽjb+mqށ)x澁 9օaBWNA\?掦6u;jsp/U(96crܾUےz%~ 6)`4<=X0Cq4#ýKAJ ,7L~~TvwwuʽD-׫;ew H~\tz6׿W^}L-"F;z;C ~ 6w\茑7&W.PŸ4%1!:4w#?6Dk1 M!|/VM#_  ?29͏N=_/uydxZ蘋zkj}JIYEHB/&[VI=Z/_Uwz_""r]h嵨b)wR˪W['|ܿ^ ܽsGc4xp<)^j֢O^ȀkYe%}g66&a7J]UիʲzZ~.'hrgWCAX- :yzv Ž. zF7Ote,mzmꦛ4]zPM(KxPM=2f @Ω[8A_TF<;F4M]Ea ̿0vܣp޼ >|KǑ?栢#;ܪ6^SSG>̯a".3O, ~7]j 6y_-p!w -ImgeM` /n/'G>||VCx=j{\(ĵw3Ry/Æ/_?RׯIsz/WoR : &dj|(eV-9d@D)ZtzňLW A$Ê]<)߳sC'!LJD=W^ t˨ߚZgls4\s$d[zIsK73Z{x.zyhd&_) y*bLra:!I~(Wߡ k$f3"ܩo;22p``Ĺ\,5bp8O9v=uoF/L(j7ӽiدs1Ӄ\d~ @|wtdJ#8 ؃RyL^P 8uӃq']k>OHyYL8EBO ;*N@u%?Zu' 4R'KWȹk_'ƣޑ#GYVs(ێማ=FF@!0XD`pͿm{@LgjLT>DK7L$?dq W&j0oH(p5b əY,eT~nK3O{GEJ Iw~AO1A9jw.|wRR{_rA ~UVWO]3/=]ryW,Sq55b_'>~Vb3._uc$!sL;竫֪'藫t[aԪGbks_^'/W{͊WvuuOY|JOݮ"oXW\W$zݯ$xY]xg//IWįT\*~_=TV2q5siG`ٺI=-zЊEtzƙF5nt-$mjE 3'A%wW|xM$~;8(aJm(lszf,eNНW<^^jub/rNe-ϋLx1C]*לOd/g2K//d&WK?~9ЪLTE( jW>t7R޿,zI;~h~T8Ku):ZԮCP E\ߐN% nNcTx%"Cpku~K'r˧y<_C_pOVWڧ.c%ݷk"[Hni5yz׿WR_jݯ~'O灕@wDžw蒋B[UUիs+RrOo=|DyMk/k^W*wNS&+WP/OI0:0)Be*X vxAviGvk j'_WԢސ336N.N]ֲgw_jfD�k'8H͐v:psN(6l[A*iw,p) LR eɤԊW 0Pf@(FJ;xR5>$i9%GTBzO]]R9ٕ6补mtv_iwwqqg{? S8q/!qjmNt->BIA RxS$ +UCnsv6_iY⚗UW 0VY5wf\z7/S^p+ȍx΢8؎J0H`0 Q L(Hw^y&$r&&Mt4k|w$}ngI_?"U8z]s4h{$!_XpP+YeΉ{㽔8e;uV3++uɑ!4ܰ{%8G R8ׁI`ki]RgM8˯ ~8( @X06`$ϝJ3S*,/Vz^OV^-r߻jl4mK]z ~nnh- ʇi߂_䅀sNl|Nߍ:==4UߎEt"/I4wH6;nQÉT2f&B& aSAr`8\"( !`X(€(5 DA(HBG5GRnRWDUS.=o~Fd=vrZA|wibۿ`,Qi`i]Lmk(cj{3עID2P/ܥ뛑B1,5xq?_z>Qgx@f c\fcxp&LB@, `P `DdcQ\nIR)r"t>g6~/?7| S6v&r"poqc5mH~.uA/y^IN_ Pl} /wNh? ^ZҜeq%[L}yYG& w_xڀ"q$fȦxvkwMa?cNz*hB@`,g %`b# T|OjU$LW˥5*G{DQzEiĞ`9Zmn>D2V--Əm;gM_M;y^ RqDvIys_H:ۘ`seFnNsҀߊ/!Mi#0MWZEOA:qv\^O^VuIc%S!{X{z_r?r^/׃lv^gkuO}ܗ W^~TUEG;]-zkտ^]^B,TKi}rzZ~_פO^Պz_W~֤]D"֥VjzX$-bc_M x~!_,MKſSo שҽW&:u?į| #/~&L OV?WZTqV=\L;qW\޽6z\%ܗőXڼB"Ep;zjƄ翏 b<4<yͼ8 ؝~A[Zխzg//{/v!džfܻIBnxGG뼶m`c'μ?4-?gZV^>_HI$mNmeA࢑AdI @ퟗ~`M\ma<}h-ɍS O ()o]<$V]=ED!I2~pWޤf%:V^C  ߻P߂9XQzz]KB3ųW{PMտYYW~ gGgrzԖCCWYis]X5^R_آB L)Zq}|F<#^Njm3jhLRrWUS,FB{{NoGU貫r|ThG{A:yW+kjn_WQ}^?]wq"q*y뉛Z&O/:v+t߫WKWr%ѬpKS~ gXDi!}PVSjY=Z\&2D_}L-RQzKw+?~w5HByk//%sڝ7v/`V'{ d?V闯oפou~jb ?^^I+^\.o/೒s9uաp 0'0i1s_^'}V\q+߯e sFxZ<ء=-k-Wt40tH>O\+{%~zMW\]zO_$E0 F}p[t&JH@$?zs+z~$ D^Xy8O׮F.  _ 7462}잟}x*Ofbv9x$}y 1RƲ2qy_27z&^tE:z7܎Z#߿};iZ'z%{y+fkE@ȱT?B؈G*Q~zÊs# Ic&?U/wׂ2 ^a?(Mxd*\CMK_5W/4e*8xcc.N*MhחՅZKbTBGrzHAjxJd+f3ü0?^szI.P2zSJ"'26~eRwV~/0~rE*7[L+З﻾׻k^^ﵞKZ 㲊\dܖBFZs柮Y,5ۑMW]Z{[ؙnW7۲9A;mOW}wZ]U_믿X}ky=k2W܄xG]GXE]RvEz*ԾVk|dTߖ_V*׿^{w߫I{t_[嗥y'Z17wƓ+!RVV ;w~R|4?U= z%ZZ0؏˹{ 7MT\L^Ir%/֢=Sd"\/@Z;vYu}yuׯ~'h.G~xW2/BApG3޼fMArH^j׹q~Dx:dǴXDŢ|# 8/PUi?7ig?""#}ި` wsbmA+dP-c 駮$uZ Ez~-rWtWWB#esR o4YB `{<.~Kщ==tnɽ;mzƼ5LQSE_S2$$B@Z.Rr׫MMR)SK0ʿBf*ɍ>?N"^M9x{|Pie#T= `_wzZkINt˝z{WNle{GU>[/ ^(`rc>^Pt/WN{Zp e&瓉]e!{Ռ79}ם'{п/֞ [?Ɔ\i1oa3gł;5Gz]bƓm?dLDCNI[D'Ooǂ' yFs?#W\-z=V_o%Wv ;`b b5DC^"ḵ >b!_t݁ǒBqnir&<(T?J-ׂHi5Kc+F[ՠ /TՒYXؓa0.v<7kXB5ux"k)K^u[ KRmD8w=4UIh&0WG8GSLrĬ}z^F[.*X;YK-uhuءR~58i:fT43"_eo+[}޿떟ύBc \ZV!6Mޕ >,VVY&ξ4>T۷5*b' ʌUʵ[I.:눺LuʗA;}}.]~rڝ;\׻R߯2}ή8)JvIT9Ezk ׫JתZCV^J.\3?GV ['+r]Du=_W{פ-j[H7;;俥 -&p俵&"^uw&E`^*;PF[߹kFzZKwڽ7o/~}Z[WZԾ%XG:QyVURZ~Y/®OZ/b LLN-aeϨ .:QKq9FSh;߫.צ+׫U'rW,x3F6Fb+k5y?4zw?q-h %hGo}w_b' ~ YZ[jxo4upX"޺x,E ݩ?op&7C[HgO#`syG=}pBw=waw[p[:']iw߰Laާ` Ÿ8 Yy<^BV%WDo(@; KkT X%P V"HHqżn{-qcrL}_S,}{wdzw&Vz컮"6FV]gBH/ PZC`ENƟ!<5),O?͎@l h1|~.7+t&/zU{>S}k.+WW,wD|O𙮡?նa6<1$Br߿bi==;kǧ?cO-f/|s<,;ItuRJ%]ۺ/vI5zW.J?ywh"߲K]Qz'R}p5EQ2Zrm 'U7Mw{ڽx@`.~=:#`|=a{J-Q\^w׆"}~0`^j.WC<2d)ݬJn׿ѥ?]I4:LA+Qhnxv|vj-/տWDvI%3Ӥ9v>iI_&$t_&^=M's]W)wUʲ9". c Xn#APD īܑs.dħ p>wk/A?Ve6zX/N~θc,LmFxHr eb ݣF ~x~ VRb,8iOaM{pŜ_E(Fߧf+J+o&FSnx8׌ofc.H `XP a!X& H"F{sZfv;BzrL3ˮRK|A(H.jZ$\C@JLHns5{ig8ocz<ǃW[)0U3Ѭ4vnj`E$Qbnjlb"H(@M= ]&0Yc%IzuSŮ}]vCqEʮ[We_ ܁%hrÄ2hVG=)0ogAZ/&އ8f6y|3wk,0wc Pdh____LUV8U&&4?ׯY_ s+$ǐ@?^jLOfq;WGg\~ t;d[%h'#ܾ'nRׅm i\]Np/p ) X]Xq&_`ҮUw5+{=?IHM ^5tY}yXRc:M'z2Sk U֫ɻԻ|@黻k"oleɾZ, :!b~-$19?}l|j=>9e.\zߡ`3H?Wks'߯zZ1c_@oNP&W$ouzٮ~uq=~v뵕jW/wOw~ժ9Uۗv︻[_jt =kbkFU2 euu='/~~OyM/sKh'4_=f_j$YH_v$rQU}'9^,zߒ~1 uv@:g_( 1꙽s_rs׫j#EO :.vEH7 e7{ ^Ľ_*%*0i 3#>b-i6\ LlD=6o6nyB*[.^cjZ Dj"upLO$%S'ЌVzE_I';.H5;X~TƏZJkB\g'ބjפ~I%qE}d wm}hEaCMVOOfT'.y=GջoA=Jqvwuչ]pK']/XjXX^/Us~鶾_ 'RrEWeY~jL?=c$Q}yL_dDޒe_k֫T~^FOWU](^,u+WvFp3]q=*/w ?~qX_?#}'^zKX &Xy׻Xԩ|/W}߫VxcM7TQېgTDd+[zOWZڲjՃ֯Sׇ=sm9~^pr>ėx!gk#wYW}UTOj߯~%;>oX? P0Bs5^n5S1&UR(ى+0#i|5 '++}J2cGLh48_ּGԍ/txұ|Gz64/0OSO:XɅO$wE׭I赿R~\_._._j"@"]}+ Fe9>$䖻1IpZv/-:;5BDF`'ڮNnP ^5hO4䫻/Mv 9ƺ/-yKJ3 ! O%K2\]+= uk_GտrjտYU_UwW(jZ/שSj{^kJ^R'fZﵩZB|׫}]K~b#\/Zj8g}߫-MWUWU=q&\´Hٽ^kEDD^0aCm==r|ok\MהE3q'wkxC@#eI3IXy}YQw^߭H+[OBG)|6uuK._56Oے]tQ}߆lO; VJhi/V 74C!pi/=~eWz_~ͽ\;EM[-Q||&l[Зw%ڿҭ~v~̣ж96ø%{.j|+Wȕ׋J= XIBbo׮U.)HJ}UU[\"1e(ԐL``4% ဨX(6 A&*^82C~}]@MHZħ^ƒZ\|.ga.€^>:|5;o'G 3mQD+\nA{kdHA]l}sd1/t+Q3q2MѠE;N&˙$L|qvM\ŕ{*|-p& 1,G -D%0kSrfoYW%I?Q&Ix}^v߿z4[z .c;^IA۲w4c~ct#?/d<S[K<۱+3KےK-g`WJ׼/(aDC` ;<{Tok ؛, *J € 4 C!A0P*DFF?Z񊁥KkuT_CcZ>$m|4xzr] 8)E@-|a΂z[=_b_ySݱ]w&E;oK_*mbqxwTrTLD}e9R>Q^(( `X06 `X(6 DB2qǞ=/u{ԺAZ4?3y^}J,0_î{v _+DZX4އNd>!ziZiOٟYJmU)*/#=i~S8+_{%Ak+la%ꌁ촡{LxTB(E @, @PL aA("!0Y~xk~ETTʦI+?J;Eϝw+0d__m@T9!x'_ j#ߪ/WGuou9&6ϹىxZ; }_Ƨjf;O+r_SphU0rpRi|*ߑӧ{A>}؏ס=%u:~-~EODneK[^Rv_-R]_s]ZYvw-<~+bWD_7ҼN(>LhMrBd_Kt\]zԖUw4ZN#%c֢jrjj]^^YW*˵%)O^W EZ[X}bu]Vv%tMzou@<2OrrX?W׫֭~ʽ\}Z纴xW^} IO_9~Ik\o~U&oժ~I׊ѣs/z"צ\I~*wj;f~O-ݝ+8tLE#ջ:M+ ]^bۖ?8 W, wM0uߣ{Dz{d곉K%WKKsm Pϐkaru񻻔ez^kթkz:`hs@|{l"v̗D_S]C=y/5"ޭe^z Ox!&zLܞ|EbSS^_MuwVH_Տkc__>IA>rqV=zխwWVۿ}::|sc߯Ebb,7ڳkN|#U.Rzza]x/۷ݝnJƐc`jֿW.Kdƾyu~5VOn2QFpK)kzr[Z ՓW=u~Q}\ЕÒֿZK\^X*KE~+֫-ik(z$)K-W"WtHn֍?2^lyz1X_Rzv/_vd|z^BMWW|,GczVz|v\:]Rd2ꬬ~r︯EЇ;y}ޯ몺==x$y̷_flBnݎ_F_јtV1ĔWzOX"=OwɤVK%ߢ9wG<4O=~דЗ"._f{k֨Ow^W~#E__z_w^_Q7r@yA?uġn}}Mzw%KZʭk^K}.UhV*sp?E+_x5-vr,_=]tP[tBZ%}N|R $;˓ֽ.[W2a~'5+]D+U?E[њȋ63x5Dx(+E-LĻE箧j&c, ^ExK/~\דsy|^wzʧ03 ho^ !%K.l'p[W~.~DW}=W/Ynꄽ/];j]u]Wb2@A?urw%u?RZ/E_zj~fwI닯Z^_+{<Ȼޡt-(ѯ=o| LzI ^XۣHo/͟&i.^mE &ʰmd达Ԫ+ȟ})Wj fd$t+ +Gf>z0j5N-~\KˎU5/2KJzFd)ZG~y{}etIkһ{7w-UЯRzz r!Lي݂9}=~a1? ۷U}Khzn f ^I_3?#|vfP ݗKD~r pu2&cBb ͩoFUv~EּPg?׉L3OVkEz{?8 HIW S>M˚J¬#^Vjw_ͳ0x2(>$]-Oq K_)׬1޼.%К擓˖g +", D@6 @T(5 B0D&#7}bdX21t>GA}bڵ65{ZK>Re\UvT*>'x/|Z_gk='rHlfG> G{q<Ǿx[wǡP iWNw^z?vg6U@ya7r:h-*5th&(X "aaXN@T$ H Z*ĨSBUu||4}g[3? ?#L945͉h6|P,h8zFӦiw:`P/'KALJ`|}*@ *>mG-}pWbd_><^+i%P@Ͽjɖ)1Z׭qc +F[7/3v:" ǀl,@d #wߎxaV.EKs tyY[J[ }KK5aE7R컗eRa߂Uǟ*è[kE6";0fksi$HQH'^i5)6v7[꒷G( ;dI,FpI7ː8*F ေ L* `X(% `̟>jbo\DdN z/}q%E;E~mj{./vc߾Muh! '@.//)'ybi%߼Qv`U)5|g\<'!bLxwtk)1Ks'ZZz`&&$h6"AP, &x79g7YytbnIX?Ώ듯Dmϭ=Oos6*-G] OǺovDrq}Mx r.P=çgojHev/oGx0Mmµ7 `}mZZAn(nGA&0à["UXf*wst3y]-F$Rh/]g׫(ukMIlV-ܾ_XZ7dReV~,S\z/Wok׻#^E ʺW{7֯է(P{AAJrzW+.b'ʬvk}e5oRw +<ވO ll ^ѳvƫ>^q0A&4c; wP,Ɏ:DߪtGT3V,e^{n׫~_O.֤$^oUԦZr0Oo ~JN ]w>Uܞ =k5nIE:+,rƯV+ursn" ٙeqtaW]LZJznkܥbn!̈́:knjZ2jSHR{?)0t bds/3,$2&`>ωs g=C%2TG-IO''G,u~>ryq1umLĕAܖ8zh~?itx uG5Ez\4”$̍ZuCm/?G+Buʑ'z̩Rf i1X>{N 0Ǵj;{Ɠ9ߪOOaU~劓$dg{A3&XffX}T|g5ۮ! GgW1fJZL\{^W8ő(rELz ̙R_gd?J[s$ S݄x$tJyUۛn#:y}lƓ&|ź~Ьʼ9c2a{ín_pE ɻNE棩|Tn7/؏jT})}]WreV>Ǚe:@U\/_&,-Wႎ˹*S!?:$[I?]qf o=(S㓭w0{3,@x}hD=^eޟ[9<0(?~R2cru#ECq/-p?%⫓>j5lmcEcd<.ϓ$ȓ/\DN1*HE>^n𘎭ud'rOO=eIݘ߼!:hB2%ďuW7hn/_OvYLV R_E G˫);,Ptߌ{Y DR_X{|$f/ ] ՞(׾"EmqwU^?H$n W zO?ĩ!sPQӦ"9r^ d߰B Og}ueMt%hB\7p7CE,Ll!U;cJZ~]O#60=C)|S<䛟ucTĺ#[0~j xdOv[<|.0>O~!k_;>Y['# i>?d@'X%-ldE}R)Ex[!|&ҲϪ;Ad u}Y<-2P44W~{B3sO/w/z`J} ru˖֝adA7?/?Ȏa[0;e|woEÜwK^{kˌ\iJmbײz&H?*ߓ\K.Z|K/wkE鬗k bK}%gQ{==_ipIlZTߡ-M_~_/JN Zy|'3AAjrSc"zn^Z}t__RI^\GN-{y4Rl!2IE洵"^bg bKӧUbI`A׫U"IڙVRz^S*=_4kܜݸV:l[)&/yq/sV^ ~|FZW/vy<ի׿V.P_#9}3 K|lmbrY_|EzO닖׮_*rtՇSUIIGD떽*{z}j{ĵZ xA{.w)nW>r kk{٨!=W]K=WWdJy8u'@ ߟ\$ɠB$zko=xJ(^ } e7pCσ|RòB?/Iyz Z]01??dfF":.^[O剱dxY1ـD]OiOۮW /^,ksՔxߺK!#d;ƙ; c J:їd o/KW%~{B$'.CwQDnazS۩$ ?OĨC#s׳oOLqUz'+K.Qgֻ;{'.RM}E52$~|OTɟAm*~v]vpJG%cy7=:K)iѓ `+~n/̀KWr_G{KGe]Zl#Dc7uy=ߧ_vy V84fU\r5ѸG±2;I駸`Ő#k&bۈܟ>辫nC(y%4H3 |n}š'/aOOlړl?Gt\| j{C2L{:``Crۘ\7 c>iF,ڊ_U|Bl%YdLr~ځGlny?kB'QgnLed*y7&3pV'3<_k- (aw4>\Zɍr$wez)ȵ_`^suOTXaf4zq z$!rZ;}/BgyKW'Zeȭ};Ղ'y2QZvO, {L`='+/{+K_DԒ<oW{]^Uw,W'#} {u-kߖ|/}M?5^D=,H Ɛ`, @P0 "s~UJQS)M%C}?ݹ|p#4n>gH97(iFDj=L/_/|W ;kp $T gtf IА `6 EFLAX_M-9-(HTF?zٸ=u|/*ܢʑ*H]Bݾ։ȡ| Pm,H `Xp@L$‘8D$# q$ T`[QӖ}#Z n]}*_.t0ly6[3,gvzV~/Qdw+[@n? pob-Ƥ&9 Y7e0SEk6$}/!n:2O(ۈ gfo~ӻO'q1Wau$D5>? Oཀ.1&,$ XP!`X("N"cםMl*V]P\4>9Sԛΐa5O㰟Zq][an.x֒A.g}4o䌈j.z^oH%B~y3x}>i my`Ҿ7sʟ|! a)E+@5=̵0h:F NjVHA<-ؒ-+x_80W,<((,#pPN @T(ġ!L-MϟmLfzk$gX/W_7Sٕ=jg`_A+;sy]z_)آDJUWpE_ PYw/j(}@ h@-_EnZM5ETz>FM 8Fk o:?;S:\$ >Iq4FlE,U9gK w`ǿsUB"|gJ"q&{&(F p4 !b(XN pD|:|rqEfe*tg.]zg꼵}rV5,1uZs+& hu_OχNx~ۨ NB wV\^럏y0ZǐsrTFƳUvh#胀ABqIHw|OLWu]{ֿsN_oUWjs$GYLn:pE]ZbW]K߯UծUu*#dմ e,z Y[( ϗԥjw|O}wwvO_a^IGnWPh,jh!V**/XWռeN|Ւs~uk]͗r$l5rSݢ]QV;|Gusڱؾ]92IyCa'ئ\'=xcT_V;/uRV,B5Gb*5&i)K܀X|_™TP-6 \(xBBιsw™./nz_"ޭf&{ }[O_tY K8-˿|fgn̄'z4_Vev]뫫G}d&=g\a}Ճ8Db?Cՠ$O"Y?T - 5mu&1bD~}eZ?srAѯzKkwœ/vOF$pd3t:7}z<q{e1>lvb&"RZ%P黒Ǒb!| >ёa6IӪwh[86Rxh}_O;Оl ueպًr{dḖa(v׬Wz &B~xxr$Sj4Q#v$U};u: IL1=27xLtoM.?)ʿHw^Wz3"$49*pk}XuI&TڲĄbc+6r2+E/.9OKs[^>~wj8ۆ8dK /XVnŁFEaCW?ZnZYQ~q&zG>򱣣T]ʦxɝ12WV!65Թ)9J# <"<<@ngrOKЮzqcdH迾D% TPY X^ٟ*)hܳ>̡Aq^.ng!۹&SߔzҮ6Yd 0U6&cIU˞{ !ϔ_V Uf(o?8ʿE{p~8?h_&_0 UJ}#T^VTv߳al'zg"ƐYr]>~ݛUjrFi۷ʽ|s_﵋ElcٽZB߼؄^7%Wr/W-wWh`; |AB}o^C9kzO_Kίk/&k^6L[)sQ)n{{n%bV;MIz{$`jȵX ɈʟY)^J[^ӡ_j[ZsuoUk{W/(ynBho!!-rz-UЮRwur]Z^?1T>RNT/.*տ_]Rzz$%9cy躗ˏ.2coyfFoE.OXfŐ`g'&lr/.*|c4oրˇ/'ܴ--z&Y=W|%+!u NBf+_l ΆZD9 z)v9"{i0S3V8L-kd6CC6}}zȝNm\Ej솲2tW>x;'{{ѦL]-,7ٌfQ_0pϲ+[E[ץgz1}a|Ɨ)XEoh?'Ue.傾GЦ=^$8qЅ[\nפ."]5}a1Z"lW zz6he}*7 PBh*Coמ=]w'l]:-9=M'4QnSVOh;ږ VшIQG'6"|<Φe9>O*Kh.ۻDܿ1I SyO,6[^w}PBS~M>-o,~][F6AףNZX+ܾj Afki/$2$>oQ6Oy~Jui?{Jݫ:QMU~_[kRJ;m^G^z?$zϫTIDVW~OwU._wAC}vwVMZe}ݫk\EZZﺿՉ|cC_W^DzGn|4ٴe6^̡BG S^+֦|Y:JtMZt^Z݉8jXz"|Lc)-D_k)K3%kӺUeeOsc)\G_Qb0R5jz?R{1F~iWؚ 5Wת^YJPЮɍ%gѰEz^Y=ZRz/*|@M6`dQ-}[\tge"yJLvꖽb{&v_5}ק'I~:׻C=BXа+}pWI>-Wt_F9+/ %o1tl} c(_Vn='עDr$;_L@мz'Ez>˴3Z~zR~#\8ι>$VjXg+o$K"'ysr]zUz~ ˫xfs{S_k{ֹ4;͟/Oddh[k.=d6[աljRkGܿuW7_iACu5_OWֻZnTueJ>eq1x}HĔ-VԯRԗtUZ̵|W'5`YZ|Kwh6z4S_WIڽ]z"ބ5_eOJ︋VVUZZ֪WZrf{rIy1]mb^2$eS^j7%L_wԈ)d.zo1Y~ ZfudTGҾTOH}`C`/Jtzo?-i%į72]S$RfZDIjSQ]f;tzM >߫-2E V\=mit6RZ#߽Z_U# _OZ)o.+b-TOF$ׯl|NYJl~)dc}y!g=܏O^^s.u+ۀ#%zm O_/3cQA_  AyrΌb86Ȓ[u5*,w3GΟٛ_G$4ߪzgi56$2q:u,B`( @X*'BQ `, Baxm{9ĒqڴbM\N;}6wG }>D r 1$ cXrsۣnRDר=o, Wy]|;s^񘳪^^\s-9=ϝfsRfY&0ɮ0q sND4&0W+, &ðT(5B@PF$*BwW۝uw洺e5Vw$ݷ?q@Ds_}31E'(p$cnCSoc^X{qXzl1}ߨ{0yFU:xԽzoMq>w`_3!Թ*Ey(l `\0 pT(E Dg93|xw{s$8p8xs]h@ m_z5PQ~MKZ^eb׹$(@X0 q0\,pD*{N{o**f3SVqK}/6hKCP|J?֟.,ov,笎wgSn4A0NLM5zBzt*MO {.u&;M= 8|[#qŗ^>ڋ$zk{.nJP@- Ѿ45;( hE-i֙ו+q^AD rоZz课^{Xcqջ{.Wu}WKK.׾un6l\X_lQ&ND^'*L)*V;Vuw뾾[K"@|5og>rّFdk3cXfՉE-+w_zޮ2VCOY=pvo;thY]#Хk׾kYw'_)={u WէXYqģ/|b_֫OLKV7+& w [bsx%OEtNcلKr|~_ RFhIvD|_)1WyΑ7Ç&fjE }T9h2Ɓ}xfr{C6;ώ|?}r. ;k:J}(dVE|rԺy7G2=oqSuK5ԑ(ܞ_[.k}6_)pɪ&A\bTub7g[w]@h mxik,! sZEߧ9I_tIsKsNK:L5Ч^}K}U_;tqKO sM vk"{z SDNh{I%2c,HT폱X'1@i7wxV=)_@6i(KY2g5xPC1]1_.KNowRɣ~;_ZNJ^JQ`nDbW{=ow W[׽v^W;XG.E잂 ?\AD*w +딓=Kk{\fpgԕ~T#TC~;?rn,(ohlڱ-Ԅwb'w ]y?? 64)װ*pAAw=GyASq{B9~ 7b=FOkmfSGG EI)_~.~ED;'g'F%οC\+EʽR}'U_^׾%[׼W*x[9u^)fKxLԮ< FgG}]ItJk̯ҿ.=~hU5 Ụ=#aMeXC60hZTU{hۀ &s[ w5Q=ouV^֤~ֻ[gE#sL.J+^w[VL%hqiśྒShX7?O-[(2PXPgj|rn~KHdl /FpߟP%J+竈n%vlBc}zY>l"f4cjѯ*G |<C(Am`QGLY&i_9"!ɹi&й#:ׯxK7~Dcg?KC⶿ɶ5o'͉AAC)n 3٥E|ž9D뵊W<` *`r=̾;f &*z,>3_5>{\ ԕ~鵯7^rQz^Md_f <7O:&3Vr>1eQA%%iMI}2{- E^R/*3a1bM;O?^c,oT~v[ bkǩeV1S!\zsDo oX/_(&Ԭ^z-cO[OTw2DeGW05}s5{CJĬ}'~hdr_M=xwXCi ?&d>Դ0ʢ0L@)=A.TIWkyErB&o_卖H|}t\C΢g6z$Fy~j La/G49QLp֏%M9ˌQ,߫;}ѿȖ٭kBZopoD?=qeq_!_b_jzO?]+kք궘Kkͦa₟z{JK54Bzx׽k]tOwW%~3EwDs֪TtDDB1<ZVWtAEJu*׫W/7^׽W/פb{:zKv~N^6,ai(q2%%NUإאc` ߢBGJYjoa`Y_$bZr55uz˧Uiod/.sU6cE+:-~|Z_-գe妢fMCIM gn]a D{Բ-+sעwTR,)c?_)}>yuȫ_YEZ~fEOGVڿ)=Jktwuw;6mפ擛ծKfJ[ t1u/ KB[vGeU%u^"Z<>!G4_2ONI0D؃)hyXeͭ5~jOZWj[0w{G QZ4q0?l?2$tÆY K/rO|Nq Mb]΢Li_n~Ü}pP25b @7!{.^&}׈ٍulExR7 CC,wV_ kQۿ)ȼtLq月4VY?"\">Nr-|9k'"aS#CDau#S?y<}ò:}1I:?E*O]wk%ՐPBzXQCE.: n*'LF <_8./ӱ4v\;GaFg}D8&ػ$bv%ÀZ&5corobM=]&e&o=[6'w}^i?Oќ==wO%_jAONOG`K hROh;M_*'ߜK[DvܺdVLC!dz~>oW#^!r½S44zt$3r*y~C}lI~e{{}Y()??}ZsPV*_[5C&%vd[mAEjrq]u!=~UMVWU]N. z+⻻S$&oG*Q`<վ-{8+2vT'A.+/ZWW){_a>f*<e/H/0hG[U:_-[ۄ,u8pftT_} HgQ*>W7Wtg|v^Ub/f>].o.cVwD;uz~Q?DZ\ eRww'^wsrJkޚ9Ө1'w,^W\_\k.l88kkWVtd$N<8I0eNqmPOZ6kylɏl wBzϡ1U-QO?'w@5ayPZ9 wBd8jExTZW5&/hXCڃ6z R#tV*h\'Mh7y#^:Z]/n<=g1ezt3:^%^OZ$4gC= %e8JO퉋ir~UPWCKLHTR^}9UcJCmGGs*w< p<͸wwvӾ`#-qM~D^sHW}~N\`H+6]<2D>?t>XFVJc ??u7!<> Ou4lob1>)`ږsGs.?J_ׂ`ƈ}Z26~_*jTo-$>OJ_)nR d`_9|Hr49W. TU\= ^}S'ꥢQ(ӥ|?z}2\_8> `֠СAdCNKa j|+ӕhig3]/@@1^/=pGОՉ{(j ~:@ο cgUý_b%#',\6Ç]ȒZw=F;xX01 \3_]x'zۇ94R@@α_d̢!]RZAS7\i ,guO@u ?DHOJKY/MwT u4<>M=˞OVpg*VHdB Ƣ=>8N:i%r(`@0풂ط޸7ޭ+6jffsǸ GTO߾._P?#Z' OF1)x%l^ƥ|%\'T tֿH{ h#rI׳R&L"/}U̴?LioڰyI|arTu,w Y{Y|of=Uٿ}yrO5 :`e0$-"Dp c³z1!lcʿ@jOW+ ZEXa/ Ȼ}m%\KT.]2nY*B" ʓs=jY1|0[#LEUr[!ϗ0>hRݡzbֻ!Jom7o7O'Eҗg묕OtS'L HSI}@>޽՘&O5ԉ{Sykc/篢 [=ǃL+?n{دNf# uޭ{D餫C {ӷѺEZ(F`XRa@T,B`X.oI={y%6| OqyV=]S{&4t|{ljkWLJ% iML1N2YۧBxOjs(;FqbҴX˝A& @h0" P, Q8D5o*RS%mnŨcM1蓋8A-_hsxpWLV_HyxMԿjYPh}ùNgaѽOL^.X00t,.A>i?qPַK]VΤʚDxݥ.+)d#+p&,$ h( b8P, Bb("G0k/-LqWFmݾ>Hܴ7컑GU޲+]zܕ٘~ٓ;x5cgk)xmL"lk:@4|IFygGyܷjDRI 8Hkmryʺ!&>gerQªP?/~f7R?stah1I3{-o &l!``,p. A0bGr5[ϯ*_=8-\ߠ}ȋtSڨ"h,e?gxJ/2~","€X6 A8X( aC(L*+uw/]UrMTqw;wēB*ȞgD2DPʸHkx^3K׿Gtw+F}vVm\x2dY}ON~l@jĮz (p/q=+y1< S*KlX@)8\`&Z`T,@P&%Jk{jzL]EX;cv'wG"Ύ+<–`*N}8m} E\uJ,~^}8Ϗ~AƽkC?nk\3 Sv˺O\=/{# ߳A6l*WWֿR]߭Kj?jC]}^ ~ C~'/e^[~l|o:~Z\Nn7)-q"=P_<[k.sÓh4DYV0\!뭲^ ܞ)W<ϔ!n?a|g&CL֦j ǿU"6j I-vgve- FlQz&bC>x o@;q8iMO3j,c^ljS#$zI@ì&@glf=[4aEjT|{ gGz= P-_rU Zbu v>u?Z/'srVV_W;%􄅨K<3a0a}p g6sr<&|'iJ'w*F`kkǧ*M_֟~;+Я.8(#^3ҏ?+H h{U/t~#Q֌goq8`2e[ L0ځ‰W(]qun*59N H-0G/D;ީ1qEk b/B' #\IyH&h|0"?DпU:'AqW~_-¦% xv^oGZB֐{`7p@nDDz}MS~0$`DOZF}1ote8מX{ 4ٽOQ/H7^ ش ;a@%'Z\BO.N>vqvm uA6wijGwAtOj5crT nWa0e|d$|w{"[^Q%a|-#c> >Ի'~OR^"bd"]ji<6OO{Э^,~y>-A~ qːNZ o θlbuл ӳ~UL#}}_MR]Y |ݻp%ˮ Bq ݴtf&w2YVi^I'׷'Y~y|Y 'u$g Qy7_%7wgis="ۙ_gPlTVb{"ƩrU]9ViA zqwDy|R FRB3>xMb?YnrՙMKAFw{z:ж*(~kֿZjXkb^LIyָ-bG_ܔNWjBd- KpIJwީhMG>I!]pr ?%>O?ȁg^$<;-<7k+vrNl゘7iz`ힼVn)zR%mMUm~^)r#kQ}Bc]m~=až{Q[m$pW8YVJMWKs+?ߣU)d2.J+ɽ-LUO'^?XĶ&,  5ꇊ_Jr|Jb[~$2Iv W8K*+""bM&J[#>WWﰭb=%4-6׺'wZ*EʴV:$+NPfP C]AF6{'(0eH=J`n}K\Pr }i#+} Q*1EoȹNU#iV3zWf7nVS7eO/M_hqo.G{wtKmi OW~܂/ }nu=[t'эˆPftD6UZgɘ(%y4cXo9>m8 x0{^=zOR'aAF>H[gJ3NwY%NȣpO#6?-LZ`Hvf|+#:%<~ *%ٷ)2,䞱wޑ5h=$I]bDԪ:UO_~σC5GMA5̑g-` [t߫WWW7Sb]H7蛒PǮ’^ыd%0؜_óR*GW,\9>UilbiNGN~h-&EN|ЃigY~?2bQڗ'8k6ht0Na!*봿#- #qi=b:,~ @s B|V='~MdE6|zT#|_ՒE z9i=O|T|j$rAi$I 3MRFwfΜ=9Jն ZQPϜ@/$ͪX;EPatڙIU}HU?}} {}v.O}|0Rl_s=W:OG g!{Wu_ g};)2дN dC$M0O2xV,K!?jfδtHv}B)VZ/N?0a<}k T5a޾bq,O_ i gӆ+/_L;!ll0%H|*")\:od˃m"3d_5-zdwEod}|J=TNrr߬׮ÖjIX_{աwGW/﮵?Ynv;*AGuh_~^ww5^ߩ/:O'n꺾.ZN1KO>|ͣr{*yǒ T+ʹVZڱԾ^r*|s_'O،=ߙ1ָgF |ȗ47WfMQH7=Snsoc|[A;o}[VUr8>6_ח"bn-Lx! s}jo\Q,UoHTuEL}'v]/c饻˓׹W~ paJP]&j{^V*ׯ=&ѸZӄJ|\L :C^/Xy-Y%,DN+'[&O7Y5A]:+6AWi4+u&2̪(JD=URZb~um -uñA#fEEK 5~ԹٓK`4۳ji4 FM.؟3xJi >a,$Oء'3W ִ8gḊk鄿̟m 2ibZ.'i{T=sr,/.&D{baɃ!cTzR%d1/]7Mt+&uIP{͘8WC.^Ec=̆}Mωdtd ɸ`zKF0w%+QkZee ށ=MJKR |g]& gFz_!f`0nhJ[ٓη$ޕ5\= (/DEisᛵRZ(߄l ٮ8ݍqf&cY_NhqZ^M7m+eO]謆V $ `¸]Mr[\ 1_l%gWvma86C]%\#[hv'_ 5FmhK/rEƪc9N2j.:uk/rJ"w;9qK)3| Z|PFwwy-j핆EjM8p09 `0rҝ.9rjDlQ=Gy>*Yb{r@1֫Z _D icC'qN~ J.<<j(@c.i4^`Ww\חygkGn2>CP'GVr̮x%1n<@Vf)*9]H-YlA: rc_59uAL:"-/f:]/])`VJ En:I "C{pWx}}#_t ^H*:_ߵ_³ҷ,3ܵ#78ow<=FI1*> nM|xKqxWa0)*Y L* /a^0VIXs0`V.D|!mW/K,=%TGȺ,+wχbFC@Q"la z@J EY!j-Ț9>D侜@`g$j 4F>RSv!j,̚c簿'Ui=M.Uًp߾[`wRhʅDMgs>RA3RS7$~I͝kܫߢ=}'il827sdϩί #c'Im넎?/T4?/4zJƴDσ~aMk}QSz{m.OG#+ CI t2{\Wemϝ`Njx/  ?CpԖAD^ 13pljbocIvݎOQo{ސ#Rs2B4c{ǚ2tfc!#4<^>OS{zW/BS}XwXI?{}Nf unZa>4%{ M&{'AyAOg.L.H㠠WǚWaU|S+"+&CO"+2Wo }Q_&3'^CHB!nbER qC6y(h46S>8w^Un cg \ga"@;弿1wW-z}i(e{w\ F"xt؞}G{'oh_URqWu}U}}}N:D} |C0Lv۾:>xgX;n6/y>"?ﰑ)eĸĭaQbhS>eٸJB\uI~Tq ?ƄIhY۾5g1qp0;}ԵKz;խUוvw:Q~Q"XNџ58g> `3cIfܯ K<=n};]D- ,>΂xnz̩s:o>3yM*<^}s>Ա٩af=~qx+ HNQޔqǶ;q!8 Ю|FKyXvsVn-)hN#5Z}Oޯ60Rz)I!w{ vk;ߜ#L(u1'^(DStk&~?f㞚0M)o|^jU|`l=ON-7-3[hKcc/׸[ӓ jz,UOѯfwg)Z2G=WQ~Uz+a"kkwjJ%vRʼR\hl|u ܔ)z!y#f^lߧi /eR|Iee U]}ݚ GRTY??/昞4Imw-u1qf-^5Vu_п7A-Mvw^U_(H];vy/Z'KE} Ǯ jsפiN,bF?hOِA-h=$~zoXNi.F6 YַR@Q]H |E퍹.7h=aRbFA^։%=(BՂuH+uwLY&űZ}˜t1eX$?P$r'ݙduĕ;FJ^_5i9S!/ASl-84LE=ujPH3~*w|/gfdYP(۷.k4w<5ڒr/dPF dj6LYnfV a~EcNhb?b,t4[9Nws? hj紹?L5m(Tڸܗ~[Y:iQrkTXz?ܔ%TߝSI딮'ӂ፛@Ggk82mlTČ<|+5nыowD/:Ŷ'{L*9}x:VEW('^^VKGumT:Dn}a[x+fPx(_^ !1eu/j ׇmܙUC( ƌBW}KiIҕ.DV4SRaR0e$Wuo anXG e aXŊv~>*1B>5tR=_Ϻ6U.&'wĞ7Y0`$V>$;TP}ćڜ&s,Cv'-f]N©ǠՌ dg6`Ԓh<'W ^';ud]6O ן^^Hf|o+eŏ|^EU~F~Uٕ񻵎].W|oU5IĞ0> PrHeYׂ>2n:3f:8`BwQ@JA|dL~#m%k5^XOv_3x>#Y ƼI=!iHVdd_}r+u}շֿOkܖyW3Ra#@gOӥv;ֆH)8ݟ7k{Doس_;'  \_}ndθmJ9biJ5zK|h" Gdɟ  O` tێn e&[X0d6Ƴ|&L~6|haah׿VIZvc#V;!T!7 Op56Du\4?^tUWW7M-d׸"+إЖ^Vv7RIr/zSVmZ?Wurt$-V7UkrZSqb21mk/!BA+~:V/OZ}zQO ˕*} @Asl+|w2|DݐڹK2Sc'sHZH% Ĭ%~}I}֫=zcBuX>=tI)O!*>:Ss|ˎ4}y;.;>ls:_[4ukqlxl@Pq_eOPd5 E饧DK{ϓŭ`4%6:{~NzOWTOrW)y>29Ue Y'ਜfpO&+l?iHOMQ}nNqrn{ @g!/&#錖R}~"04U4EcrJ\я6 X⦅y |j?LAa5%`N8B_;  iye`E g33nf q(|y0Y\ݨWPa*HT䞣~[a{ɒ+ OJ|hcLmQBX8rpjuƴ3ٻ 'j5ȷ#OM &jip%^π07V؅$&c%$Kyth5.=|s((G9V^FbftZÈ' -LR_Hn (u z ~ze/Kr:YrQ^b vAOixJ/u`PMە~[o_'ӓO1|*#{Փ9=txζʖ~OE NeQRp>XcH_ñ4o6+ՊۓtW b7xU' 󕟙a2Kb<Dhp%3}-S(\$B8~J_bry<7',ϓ|/fK 8!"cwLx0O'Ȼ9G;`Lo_КYeʾ/=%ܥof1qg=//uI2R{= 37s`,:^mste6d'~"Qg}1%}=v;66'E-cUtL|8_&es񗖄S.=h^pC{~ au_9W"Lj\޾oBu',/8mLI(A0cˋ?%9?{۔ןf-!L~}m?!d`dbѾOK|~[ģ/oSY.أ)=w4  s#6P#{ؖ$*=߶ [A>Y-8.ߌB}VZxJ]mEw_gaPC]ۜ2 EWwݯ{K߫I;B'ٿ&tw/&3TWU5X,KUnM2\ UAIJu}UUUu1M]J}W_O.ֿW锩/W}__"H{13_#hyU!1;`p%L') 'w|ߢjׯ]\U觹ёʑ5fU+K\[}:?$>K>r?ä|"=㬖R3X.d9fXhA 8.у~b>c-_nEi`OB=œ~u+Ww5K׻^.Δż3Қ})Ubľ-VaPnJ$:C=7#-YЂUk([/D_Dg}gNգt'4I̯/W75Cڰf%JEXZO%/G*\ߓ-z?蠠F&%.dEM{'Gf2I5L oG$W߬U_U{2خH lAI0`~ij~n}sSBއ%,!DGpnݟќe$ CW]pggnfnV.Y)h/v`Lsk ),bEd!rMhTMz^H7:# .L46TZ &lw? {tD=KoF:Ut;5tHi:a8z/Б=Z&Ys-0{0`yJJ$L q OsF;@UqP|9'1@B""Z]87\}wڹxV_%ж i\:|˼@dvuw=u}(Zj%n*ȿ)[pPD a^~U帺[t i}CIi0fr>\%} {']i&kBB_ht.3m'_}fn1MQ+]8wMc%T4JJ AmOam`[fc}eQ)1c)6>e>_IP#+W7(i@6?޼/aØ }8T7y~-|Yg悸mBehp:ԥcú*k(&<\fv?=<![^Ɵ0AX[|_GFAI,\Tj4aagZ0ޭ/}Ћ?z.RRBPݼUDÈX/[Y+ |N)xm:5uv %[Kuq_ͣ%mVok/nW~>>z\dOHO?1Vb ĄxbL-a!}x hhpV5wߗ" .aΔ#?$Dɞ&RK"lŝ3 G[p%eij=`iC&|er{J#e"BʛKp_؀Gh{c9#(%a]ӂ9*O7f1SZ+U#?Uգ?s-&xx7ʍ :&thexme,IhXee2Ň]?ఛ@e'7/ny(JwQP5Tf˕X/ TF}W/_T&ƫn00DТdWoK,vJVM`F̀pug,@Ícxo`Wاg* At#4R? [?hsG .̿ӣY[Ga u.OsĞ> Thevf$d*Re=}%Ӱ?td1=KLwL5z|o?80K6'02ʗG5R德±ݩ۬A8oӾ''o^ȇh#fxi ҭ$̕N>E#$+'`n\_0|p&wDnQqn,6 8e+OíuWؑ2S?ȁy-!fP/'޸w&^sH Hx0f.' +E0b<&0=ۆpWAɆDWo/SC:as¤=͞iMW˦N:11sG?_R-kZsNG0>Og%$ 4_~`Oֿ݂-e˱OH&|jޫחWU쯲 -(-y J|i%'d;^S^fV2ޓUdyȿ $_wAٔOO#XZo=_c;{CYo/*j^%ujOzN" tia)iFޯ=V סuʚ"=T^w5'}z׵Mh=9;.|O:4]k}_ 2AIjwtOMWu+|ʿի=Z뮥i9=5z'}]߮2ʹ*wSJ_=UaaUg$$^6 a\mgst8r[i[#ZW-xeU._j}?N]\Ēի}twaUw&lvNyh#kzꖈõiS Bg=jkZ*_}}omY 8Iմ{}ʿZ[ծU5j$&>͖,p8]}rw? 蝒\TG_umς|㕍Y'ѥdssII~x<%Ҹ.^4vm'0^:ی# L u!VZh6K>cvanخr^HY) 7/sN>67D)*>zZ1N.C nϯ¤N0E cN[ SL$%2CyJ/&}ey:5noXa٭#WsEt~hg_5V~}+p6Ǖa}5I:ZAW83P}"lhX |a"8h+Z|o`x fD؀]M 'RP`of dPPOGeݎAFw~,ܞ &诺 >0|ENO? zmHV_Fz`xv4XW#*)L.+Qh?PR$AZ_rhu!3Y*6bAV*Ki/}>+ yYBv`} `x  ' $Q*@')^z`iG`& ?7}@>? "zowP&R#zܨ$ORA ;:_}q\:9-w܍ԓZ呟%5JYR-YS_6ׯ-s.ޑ+ bv{6xme%D'-Q7~|W( `ѾL#_r EB7_B-.^+\h;_'ּ?wj&XĆ ^Lik9q CQ'>V.\|Z\^W^^TH.;,X3 2P腹TrSyf䡼zнphdOrz#򷰩BuU[,rQj=Reѧ G2A">6(}Y dRӰOB[) Q _C Q5|pG{ ?wz4 n_xW\1$YwL4FiNs7.n+85l@50@o知FAT/pfaX'ue_ }/9$}U0Yz__'cmV(8s+fQװTDu3]Mvv &S_ۘ>Ob+6 !KN 4ߡ/Ogܸ3 Ljv&5<5Z exmc#dn{{0%Ӻ2 ٩ {to|IVmE+u~[kyg?!c'-mUBhC<=~}Z廿ВR_Ȋ?D2fqH[Y=qc5٩Ȥ** `L `*@|~j3v]- Y%Uj/2B>Ooja^Wny$Z뎬;쾪/+ }|ڛgā,Lj4t8A{7ip8B] ֿWw^~u&*8a:shm=.3?),Tꪸr'^m0l=1lẝCѤ<3jP|?4jh{VPZn5~qJNyl֋5W2ZD,, BX( , Bp\"Wۯkup.T''Cqw+U|._9d=k{J] t6l9T~?<Y rzPB9 f}$u}١kP` *-,OCMeU<ި@Yˆ}ٍ7y' f~Oۚ䇆|noυ|y=SjkӞIu 5䉚k*<, AP* p"UW\6nSQՎCǁ׹(?@Ğۻ󾻀{ifB*%5y@? rMþj9i߀SWK.U˽Z޴u O/V UYB{u<yJd3} {pʼK;\"q_z}Xd+OֿZkZZzZ}{<=ovD KksUϓ(U e__Uz'/L=I}ֿ2nUR=w/MV)jBe_ʽ8gp^Q~Q{⤵.V;֪֮E)_M"#rq=7utU=z0pHw/FtR^:ζ1\gr½Xע iw.yw.EjIWJgKYʔtl{(2 &w3~9עq@bQbouqR~*`HS>OZaH Aܛ-#MaSAK-u|S~N􃖐29.QP45 Vz\~U JA7> FNJ:^C602SHקaXު *O {XqO+gځxц|g&7wc=?:aWշ%JݫeטC߯jcbh\]=_N?'mИ| w4'.h=QߟNcOZNUÌ? z"3oln{ ;3^ :t(f%; xx8G''vOW;֮W†[r}*f3רp|ג΢=?ئ_={Vjܦ+㤾A F ږE{^*ׯפڰO>{[O8alK?3QܐdpH\(_:ԏ#ꑄy$aah\ aFet:&1 /pk⹂/C@ >+u^mԺu{lVZPÃ֮48g@6C?^}w|ͯ}ioL/Qg~00W}G^ BOf +-p.h`:%q5OTQr>?K/Ϥ(W0ε/d=}q'?:2_=]Ȼ +Z;I.b#cՍMFg w Nr0ܭJ\5|nȄf+\!z^N[%^W /K'v ˗$@}((w?:<+;D m܂^_}I"Xf\8Lۖ,]nD V(u|_`}ݲ޺N}IWU o3h}3|{jO=wWRݷ'įr~EPeI@Y~f$rGޕߕ|zE_=+w/.IkV=vڶxb/Vז.UjBY(зTw9o4~ T_!=Ue$AJoֻ^ZUU߯j^+Й.oW=Ѭ.ڎ ѧVkk\vXիtGd'ܝj>W\7x#}7I\U{۵s noV^c{dO1z%ʭ[u˵'ڿZ/w) n^Z'?erH#֪{߆j1z{.ln]XG{Φ)E88: _~5hkjrzoW/ˣvDQ}O]?qr\Kv0Fjk̑6<2x I+@W(u2aaɢA$c+;B7%cP2eSZv][_>.``y?ǹ!ʛI'?Z6$ZfZ_j WPK+1bn6=6fow=KsX#3-&9po N8;l:N˟؝ b_{Aw{80c/,IBF^N뗜] KACzzOq]>^[`w,6 c$(Kh8iH*bTy=jLO`| .(n5E㝅@ڑ7N})4,>7.vNLjNq!vǘ! b\%׼M凮۠(cKExɼR(` H5UEFItxn1^vC/zd,鷰y_sj~TY}}PׯCWףkrVW>b1؋-2Bxh~[. Gz;A$mB/&'?7'Z1'_˘ WˑbqT IނwEώ 3|:}B]$xoYFJBOMH/^vAfCYԖM͞Ѣ'w$M6i.@wJV7p.!QEa{0?%O'ʨ4Aە8!u2ﰌpD803G~B"Mg$ !a2cQBn̘F<=Re>L~ZKFFe-{`ys0ڞo$8?|b]q}=AS푀]gpOIh/v535y_}-Ϛ7R7^O`{Sv;6dkU\Ծrk)G/v`3ѿy{a]O#k|ס-YkK]=8*Jc"ѿa1˘/}Ko{3L~ē S6(ϫ=~;wtK1} V*=RE}%Z>Osu^_nɜ.\OwuAlmj`*AK}ס-~^~^_g,w/ׯzV//՗Q5|9=!h몵ʽe-2_~WCKҤ«rB3Hw{,l{}:[W}=7R}eε^s]U]z^!FZ=_Jj75k_j"ǗZu+Wbת_vK= Ar dRduy=bb^ez^?䘙6d=g4 O$BF[1 ֠'5,LW"-]Rz߫VThs͸2|ot4SV 4ZxF=ж7=8efHlժ6Em$uar2/kzY) =FxhDX/'>?cqPaPq(3b3z3386wEoMl2V ԟkṕ}68$s,|Hk4&Μh+,S:$?aNlCR;>ƅ#/P.U掗Rh 1‹pm(1%CNj/>\Aϗˤ(hr]K!{uZ)Eh&0-ܞUjфLOj$`>̰G }ɨrs_iR_|f'=[C-IGr<}"~~9B3s]c,w-MDd2!Ҫ{[쎺vffO/Iu{{} P``dЁҧi =07^zU~Zo_ڏ*|Cn=w? 9)inmtd9qzSwnw,zfلCJٷzո? tP/i-WRKwvZOg]ua\%!}"q| i1W`jr{R_vTs"<ԩQW! ޻AKu]ww-~%krȵ x6_~_R$IYK-|ק(6UHvo~ţ}qε'4ޭwZd&SK\&s?&UsU(!7U:h Lo(^'7j nyƪN^Q_J:YQ=jOWO6O]jhힾ 9lܛQ5D鐂7ϕO)/4yoʡN{)<'ghB\z7WYN7m1>!g|> =-fF-?~0y(4ľ%<_Yy259r#R[pUu;i1x{@{CvdqKeeyi/k(Gk^ڲ­ +:Pd``E jYK[B;{1r&}V'6\WaWw(`1"5ϙ_D]sͯOU^Ԧ1n^Ǟn`)a3YH+?13'vt+{vLqP87Mu/vd wfZJ\::W ^:a q^J&ܛC @- 9s-( #cb"ehaE!xmO~inKo~3eCnO}~W-f8OQθy,BH :> t4V twկE "r8 's TKy}=?~jࢻz%LV K82~]lt8`[Pyv(EߴS=.^^dd|JHHIPhG1ya"h'wQ/Ҫ  PJjǹ9x?$b= ྺ}{K𨧻Ƅή0D<].ON^4%I PId *Nwr44y+ϔ# z6^J[>HDWyG bx/r6B68蚎l.$u1\\i=..zw@s-1 Tx=?DȣL|ٺWٹ+NOs-%6;ǐ0;{b[a8ֳ&c'̴NATKv>˻"$ۅ:֠pĿt}d^M*'kݡYxKa>Nyʾch/. rן-Z}<E]]Ի^;҇kEz'}EL#hsܑ+OIMmyi&%''kYuy\N%ݯfh +*%~Fe`q -csˡH[J=I-b`rYgl} %ol880NꙬ]T\mjp f1cC-.0W`8*, aX(&`P, `\*TeDb.J֖8֛G~$f\9̺kВuT*n5/M:򛌿_}.ؼ<#:5[uO UQ_X$4ف(ϷI%PyF}KzP: SRMK4-#gVXONIy  O[΢kgv1y|{<^|+ W&ivl4T= $TH B0PL $zox.R^䨥R5uzvziC4r=hC)LoIQgl~I8ryL/&Xl8@ gWt*>:9\C *%홎( 5N {ȼAx w0wO}.iT@- P!GQl%!~p{ .AL yw-_]տ\VՏՋHիvZW+=W(62]pOr_h~W/lʩ ['-#^?^7^gEe}ڻpߺЙ2 .kbʥ_hW<^E7iwܷ}/u_]EH\g'tc-+xJy~'۫u3sIg"V4' {yV+W{Ekٍ0/OWn4\;7.OyIwhUuD~W~PUB޳P]#b 0Xd+$W9<~G$KײhVUd=߳e %"}3{wQ+dSw_ L` ϔo}-~/^lM#%wegU >|l4_[߾Ї5/_N'Գ^]UV!f}][3Y=)}}"@[֮W1sчy=] |EcV^izG_tjwƯM IvR0J.|5z[D\Q+VA?>7} "QvQ G&0QG>΅w7~t%~B'xjuOO]k]_bK#:g}Op;cQ}vc¬_Uzm:$c뾀nuM 8N|eԗ>pkww~IQ0^#ث&|4xfyUʖ:>(i[Q9r}r;O ]>97!9qXb& Vs\Jq~Q&7$1Yz,]whlbuTKY+;׷{; e>Vl|R}qva;NQ/߭woSɬ!7_ tId l%c'eo}@0M&Fdӗ_?>&|N>nWW^Dr2&ww*'w^ R帲w.ؽW׺=q^ʮK>L%N~O'AL*}*߯~W=]W/WR#O䔗c~O\T"W֦'%g@R\#'8g9˚;^v>۫>U1ZC]1e%CaZo^z⿜s{'3=| g]ZIVO+Zko*-jUy7zrt\= \ܫZ\zbXՊbL iI.Ӊ%j''mSFt|;R3l;׾4E穉oZzU᱗O{!Oi鮪ӀnQ{norZr8l3˹9P_U5̗WF n%=On_GDB m>=Nhn_@d}z=뇺Yhx@C3$nil@{ab^uQ(~~:Wr>Y3w-=~tz=s_g2#AaD і]V9W /:}wgόs(e)alw ՠ(Fesbc^Qc.{Uerֽώƻ=csw#+~d3n_CDfj잻][f.+ .*BR ۰CbtCνpa Av|λ|cc 1:PI1 4/͵&|MF &~%O/ׯՒY&%1 8a[~Ǻfx 0VRTxQ}a?n~8+D?K}^Ҙ6"[H^Yklʿz_hmP2CYY>fyx:ʽ tou !꽯VzvWpԟMC>B#)Jc|C1 \ ^·@] :M%IW1K-^[ޭRvlìXaT u=a?!d%eo܄6/G^OyZ]kW+v3Wq5]A'K1,,ˢmDs'G+ u;rX$ɗ)|v7[׮eE] B.UW:.mr={Fr-AMjuKxGZ_wss^HtwZj!{rl^0QvuUœ )Ox@aI?TХsj_<ɗѥ^sףN.o[xjw~ܺ]KwwcVX0Եwk71ҩK.{wh|Rm|]]]dޫW'=_+O婯Xk-t/[o^rhW_tJW{ߣ?:]*%z+te!^9BM{ο7߿w&PkW*/#8dP̻fWwd}7^;n'rZֻ'~aH [8e XN?Oe^,u[u<)«[׿tN^Lkv ΟVhICDLIWwf%:O ½r>|&u˜3 #t<+#Zwį_(% ;W  Q~,D^-dp#RwХk!/t(xp{NqlN^EokFz LfJ39xԽ}j63N-pKb>bv_WGRN"%Bzzb{^M}62Wݏ16OW-z2y'&UhnR_`c7`1w`2)Cm'}Uコ~Gy= %WX:s;㤳6[s@7:<׳4&Qtٿv?B/U:w|b83iYy.\}]Q_X &Zr -?ukO ^H$L)2Ilɯ!s /R Nr*0X[55JL*]|cKHygR{t;` phVpNUҦqQ-Lث.NMT~"`^C=K {yyRX $\qO-=YJE2 : )jM4TYtRx<) NCz0r9E.9ҪLe#"v_#-f&3b'' "#g&UW%e5WUdLy.bINJfQg11%|ivٛ =4*j'0Q:AYUwF_.<(*,]jmЕ56WU *Ξ_x}hm0Jcb]NSr]{+;ҭvԿmANf jTCgf(𵒌W"s~SGf"NmnېX-bٶ5Fc6k`P.^YcW?™17r: p*}FYj,(2 @,4 @X( $M\v=Mʵ5F̑=G<{ei뛌kZGȽR*NDzs~׎n=?|㦯ȳou>0|rYb\-nk_S>&;v4K}#X+M 6Sہ^ 8k Nc˓1GAHMhd,(E pXP B@P PT"Fq9+%j%Tʝoʼ+ڶnwLO7Be|ʿkg֞^%PT=&92;gx-TqfXkAȭN5S;LcB/^.QQ"8*uǝClU~?[=w( 7~ \vM޴_ANuh]~Ik]KM]W{Zkk-qjR}gky=X5j]֪ oҬ+עڱε]w5 ,]Wd gOܿ-K@ҰܦJC wƽ>,:V\=z_YsUڹ%]!ciz}M|)xTwvY}\y.]K~Aq5uk(j[dՆ7uk;s^1 7ut'B<%&Wu\ZY`O%|9$t֙'ʢK;Kd_ A؏G/?\߯vM*6eaơ 3/ wwӪ^;,e#V "k}}w-$M=>sVMoR ' b2Ѳ>E!F8!^loJy)~1y=FY~)A'۩-=Xmp7iXb%I?$m|׻'wr\=_bxy$@Κ_KE{>>+8Z!핔e9b @8ؒӖ%{if-Jvկv/SRP(˸ 7oÒCw垳a jV0D\+ߦپw 7n)/\}+OV .,^"L (JOm:WHwswv~K7i+Cߋ#0lK.ϕ41\^If%lr[ -Q.'(jm&=9/rHtNwQHy;rG8x'/{ j?ıO"~Ebvzla˛}k-+8*b(bOˏ׫5i{wdߒ6uVJ#ANwyF_B矉'zYڱAL$,_O@FM"ݔH9ݯIj1I9j֮Zq8of|7r/*PXKTWwC^>oK/_~E./W螈0݊'WuWW'L]Xq\PF/wtFHmB{^׫%fDpm:]19-}~܂Sn@UJqAbO}x{,Г&+FO4L .ry_p@pZKT1>?`EzxdH ~/E=F Cw L6t> bJ{W mfւF :{ۈ@qB@MyHsBoPbsʧhK~T ub5/RK2XhCDL% ^hU^ 6{iƒ9L8|, /kҖ&{jb1xx!;H}Seש)Zz\up fIy{tGօhb4?2$\` }os 6J:31, >ekäX9WzrO*%y=X <70D6mMF`k=Mڂ _؀Tr7Z"-R81.w-*ѻ' О'&vF:Y}TuZcB; O|U߽zY﹯VkU,*=]b23#;cw)UT}@ (^}oWmV9ڇ^л'dvs [O_FgX HqoG>zI>Bcy{ϨBDЎ.z>?="$HRz+Oaխ'()Omn̄BuX Ix]h~}k%9#"j7ȑbrn3WUxuF,WJƿ5sA3O[˅'qC;m{mwp>_^bz~(E2sDKڹyT]j4j߿b~AOut?~,_kz~XX׿W\[s^e^s~ݯK@o^;.T6Z#qOH3SKC_S}~r]VI8gFh -<ĎAl]mq%"+%~Z_^NEτ 9W`R?ܨ^={ByɧTFC>ܷD4D*-b& |PLq{:;w+ΫM?q-Cv[CVL[깹"Z F^O|x@VI')Be,T)hRȮ].1d-pڴNU\K,jq=M\ͲvũvԗN66B^XjԵp.a+]k }Ncaa.Pvи/Z-8[%" ^f?Bz~Wi/[c"clqkf͈⳨ؓLG>z]_ Zּ| :%QJ)7,= %gg a[jՎ4@> -U'>6{=yHw+K#/M.m&Qzҝ %g _˃&PfVRA %ğqQBR]Hލ1'ֳSZ@U;cb|jIy|禮'Q=0b廠o .s¥.}imAZ$ ~R?'s}բ{[B3$}r}.\7 (eJzȡYqaBZl?&QFqx3'oNH=y&vJv,$h`\K`My ؝x1ھq)G._~OSֺU5&9#x z)k3|K}=iav_U~Wx]-A cLuhN_ț׽ժD^^"x~M7KK;^Kjxerx^W:8^"+:KbpН~ܐ_'d]+{Z-v sg6Eʥ#/Ew姓 .&8/P7 kyq_Wn_Ƽ:\p&^'zt ˝ԅ_}NePG=,DƆơ[Id_scE3E'4Lϰlטq%ޅ|d=G)cՊkkD,q?Σ4|8I}CV_^\z73F޽W_uu.=;YF]y?JY~؇}Ί)W3TAUdg;_SRϟE`K 3"}k ]/DÎ{};QS:Ji7)7oc&3R2!5קX^ZJ5Φ_fr>O`S7_n$.!|}ߓ6L:pSzc$ n F3Y|Ǜֿ7 CfXƟzA 'qsޜآ.UL셕Tvr 'AL~wT봜XƇP}|u0ϫ/㷺t9 0)B]3s1S5<Og6 Dq7yX rjp_{wIG֧(OE_S}?{T1Fȭj^{Wޢ`n[HzM/0l-\%(( A(Xp BX(&#0z=w܉Z3T&_u?oZCor3sszq ꒱s2A?<;DO/oOhZ҇@z]_)<͌Dg}' F@]ڂWޗ$OB|t""·òe vl V_ވ1B.H= j `X( b X(& 0DU{Z)|KX˾p|>x;,-'/}y8uW|FZv eIx08ޮxzu }ܜd}T ĂniqХ$چdY.l HDY>tB)u`zA" V.w|JH}V$eN ** a X(& APf3D%˺1sQ'Cp;|_[ jggجt vM5]W喇-IMdj5}sU_(,b,V" 2hB2-KJ H1sTq=y%9%-(.RX*(R `X02AQ T(LgUM T 9J-c}F??|n\˯ tkYN;OxvNBtK6Cx^o Sh$)n""q=;,ݫ[=KwmAEv J%*  x|_1meJWԸĨ8((2 p`( BAP J'oY[O~kznu9s4Rt6񎃸'ge\k#_ܴoŒDZ*~G 7;o +tb5x3ވC˻˟utwt}$S˛tҬu|&9v;pb" !-?AP w}Z\b?U]Vk~j؞#zN}8q> Ė7uM,%_Ѣn>rܧK!e{bV?^[;.M}X\V+]KTtfzOW'Ц?K|  mzbVb5z^.߬gWBVzWR]zX"cJjѺ&bV5}ܢg~|!z;_0׊f#Mͽh^d^]5ں^@ {aK,#iQ2B D_{Ӭ6 ?FK'z_Jٰy7M~.r{4^N_ !=-˙wX/_rzRX!#_BגT篽Sw&_,@YY^ /~ľrӷ|smbkUQ>-cMWeqMwMM{.+xJPI{޼~+/yXazFS Jq]zzkK]MAP*r'=/XbwݫuꦛֺɫV]gʳzU劽v/U딗$.Aޭ)a5a'~"6HoZW`y7caZ'c}jKCzjЖWbj7ЮbaPWjo^zخ{ֿV;*cEvZI}jZY{[~^^#UժA 9/D~9eWbD$L}1KZܷw7U޽]_hTY= 2 &!~w7-#iՉl+fh^jj#^x,& R =zxNF\LzszLNk1]D~hDB,D-_Cc>ᄋ1uf%vS#c ^# 47$:ao* t_f˅iU4FO[ܣ4;{ׇ^B@}y/%ӧ'`{MlS2}os-FkAO. "I}׮MgE~cqd{"Ʌc"]wUu.:]o[ =AwV~1s[],U0_{ÊejRf_3ƙ;JF2mQ1{c(]/*Z/޾+WMBwFo a c[i[yW{֏GքƲ+OyF/wz+xtYVO{k#yuˤW$U Njy,3{z)Z>]u[WY^1$kWW]kNɁ4JyO!jϤߓ'x/M}~XDJSݫ[);|"K/@AQJ}HK}2ъ|#\_]7O>_ڦZW 7'ۛŗU!IT}~jb߉d>hX\竲x~Iy{ظhL]SHzDV<;]'ߪ RD*XXM=ӂ>Oi(>$7AD܉( - K*uw/`[掾 KJ}W`굦?H#ֽNhN( Ĝ'%+;;@<^|n޾ouߢvu6h}L겱Lx\_i= ibC>>F)͟B 4DU]!SKև|O>a._ŢO_WC\Y`R?ztK~E}ݡEb\?'%ֺ*A%G4X7y}?l \'b-lҗKs9O|UҨ_~BI_^O\-I:.#el܊/=HDZM-YL-]=8io[߻UW'L{T?]]oLzu2^F_1q bɡ^_ߐ'z:߫"ܟN{8`7ݮ_3urrgm{qfEK^,5UXO;tk᯿7ʹw}Wwη6)E=Z8g~WX_VM^z5r"$BQ0`* A)*QT"w2s~3n7ֲnfw}_Y۵{n, =OtoT?_^e26.'+&z\N%ϩс"xwK\7PZ(/0dm!z _Nz ~5`a4.OQF0p*`X0)Q(3=:RZ%C/I:_>ߨNEUaOD!7}MWdFۇd65?dq~}4MHuV:ԧSiߓ~SJo9p^^-?zp%y*2R3@!0 ϲ(TdÀ`(& Q!T"wysxHMNTMD{=UKs5/kqyFWwW+¤qa m#iL $ Pg7q.l]pQGn.='7,yUA@ aRDkqq-H(,Ԋvh;Nc uutM)=R2LiXL:V߰+ZhvvՊU֏ {.%nX3r <)2DK.rTatS*%ƘDS75uz\p ݼy Vu٘s 1G} 3 3mhR[VOj%*~}<</>pN&Ԕ( B`( `X( PT"b\{VdT'HN7ßs֎QxLthC_<; 8nȐz9o]P0]il~1LMpSHF?mn?/Twj!@_Nu5hl=wm(Zn$U"7#" }>!f$߫5]iq(l?d#.UtH gARHNW]~vVՓzr?W&WڽK7.׺Ux\(,r8?X7VO_ϕ\}\ߐ`!>81sr-w|tlUwLX,5SqIy=Y6kXs~\*zNy6BKso"v{h`_:K\E씂o'kߖD^N. 9"Kބ18O &[]]Ur\Yy~}_v?'kfrOd^n~e|.'Jw=@7|]+5ߦptW~=W]=,o'ܕKO8'1g*2ZS2+5+I5z e%hzOKw^㧟&!cm_˺B"^M=ջI$ש/Gu;"Q IIY]e5.wyX׸.k'w$E⺻F}̹|E~h,NPBI*Լ–an7J20w]d‰:3UEt1oSjI-2 >?Ib&&"u|o7x:-]c}tR%K &+Lb2 ެoW%cA`&pէ?O^IfGzߞ$B쬌 do1=HQB`[FT*}1H^t 5} }A/njW74Xtw moovlmvhd_@iodsO trak\tkhdP@0@mdia mdhd_PU!hdlrvide]minfvmhd$dinfdref url stblstsdavc10@HHJVT/AVC Coding3avcCBgB!SM@@@Pbh colrnclcstts stszV' 7Es&{JkLz.&z , | R  tHa c 1 B 2 {   kt 6   t ( ` m > y $ e {IY  k@0li5=hM} xqs= Y 6.f1Cku(stsc*stco*sdȥ__AQ~̦iLc~Cהl;-Y{+gstsssdtpDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD~trak\tkhd@mdia mdhd!hdlrsounminfsmhd$dinfdref url stblgstsdWmp4a3esds"@eDkstts(stsz  m(stsc&stco&m!§ҎߎTJ~(š5\jbmXM!9g]xjg~l S\tGudtanameStereooudtagmeta!hdlrmdir:ilst2too*dataHandBrake 0.9.4 2009112300freeqtvideo-node-0.2.1+16.04.20151104/unittests/tst_videooutput/tst_videooutput.cpp0000644000015300001610000000131512616337741027761 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2015 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #include QUICK_TEST_MAIN(videooutput) qtvideo-node-0.2.1+16.04.20151104/unittests/tst_videooutput/tst_videooutput.pro0000644000015300001610000000042412616337741027777 0ustar pbuserpbgroup00000000000000TEMPLATE = app TARGET = tst_videooutput CONFIG += no_keywords warn_on qmltestcase SOURCES += tst_videooutput.cpp OTHER_FILES += $$system(ls *.qml) check.commands = "xvfb-run -s '-screen 0 1024x768x24' -a ./$${TARGET}" check.depends = $${TARGET} QMAKE_EXTRA_TARGETS += check qtvideo-node-0.2.1+16.04.20151104/unittests/shadervideonode/0000755000015300001610000000000012616340301023640 5ustar pbuserpbgroup00000000000000qtvideo-node-0.2.1+16.04.20151104/unittests/shadervideonode/camera_compatibility_layer.h0000644000015300001610000000153112616337741031404 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #include struct CameraControl { int dummy; }; void android_camera_update_preview_texture(CameraControl *); void android_camera_get_preview_texture_transformation(CameraControl *, GLfloat *); qtvideo-node-0.2.1+16.04.20151104/unittests/shadervideonode/player.cpp0000644000015300001610000000234412616337741025661 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #include "surface_texture_client_hybris.h" #include typedef void* GLConsumerWrapperHybris; void surface_texture_client_get_transformation_matrix(SurfaceTextureClientHybris stc, float *matrix) { Q_UNUSED(stc); Q_UNUSED(matrix); } void surface_texture_client_update_texture(SurfaceTextureClientHybris stc) { Q_UNUSED(stc); } void gl_consumer_update_texture(GLConsumerWrapperHybris gl_consumer) { Q_UNUSED(gl_consumer); } void gl_consumer_get_transformation_matrix(GLConsumerWrapperHybris gl_consumer, float *matrix) { Q_UNUSED(gl_consumer); Q_UNUSED(matrix); } qtvideo-node-0.2.1+16.04.20151104/unittests/shadervideonode/tst_shadervideonode.cpp0000644000015300001610000000740012616337746030425 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013-2014 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #include #include #include #include #include #include #include #include "camera_compatibility_layer.h" #include "surface_texture_client_hybris.h" #define private public #include "shadervideonode.h" namespace { class tst_ShaderVideoNode : public QObject { Q_OBJECT private slots: void initTestCase(); void cleanupTestCase(); void testCameraSetCurrentFrame(); void testGLConsumerSetCurrentFrame(); void onGLConsumerSet(); private: bool m_glConsumerSet; }; class GLTextureBuffer : public QAbstractVideoBuffer { public: GLTextureBuffer(unsigned int textureId) : QAbstractVideoBuffer(QAbstractVideoBuffer::GLTextureHandle), m_textureId(textureId) { } MapMode mapMode() const { return NotMapped; } uchar *map(MapMode mode, int *numBytes, int *bytesPerLine) { Q_UNUSED(mode); Q_UNUSED(numBytes); Q_UNUSED(bytesPerLine); return (uchar*)0; } void unmap() {} QVariant handle() const { return QVariant::fromValue(m_textureId); } private: unsigned int m_textureId; }; struct NullSink : public core::ubuntu::media::video::Sink { const core::Signal& frame_available() const { static core::Signal sig; return sig; } bool transformation_matrix(float*) const { return true; } bool swap_buffers() const { return true; } }; } void tst_ShaderVideoNode::initTestCase() { m_glConsumerSet = false; } void tst_ShaderVideoNode::cleanupTestCase() { } void tst_ShaderVideoNode::testCameraSetCurrentFrame() { QVideoSurfaceFormat format; ShaderVideoNode node(format); CameraControl *cc = new CameraControl; QVideoFrame frame(new GLTextureBuffer(1), QSize(320, 240), QVideoFrame::Format_RGB32); node.setCurrentFrame(frame, 0); QCOMPARE(QVariant(QMetaType::VoidStar, node.m_material->cameraControl()), QVariant(QMetaType::VoidStar, 0)); frame.setMetaData("CamControl", QVariant::fromValue(static_cast(cc))); node.setCurrentFrame(frame, 0); QCOMPARE(QVariant(QMetaType::VoidStar, node.m_material->cameraControl()), QVariant(QMetaType::VoidStar, cc)); } void tst_ShaderVideoNode::testGLConsumerSetCurrentFrame() { QVideoSurfaceFormat format; ShaderVideoNode node(format); connect(SharedSignal::instance(), SIGNAL(glConsumerSet()), this, SLOT(onGLConsumerSet())); QVideoFrame frame(new GLTextureBuffer(1), QSize(1920, 80), QVideoFrame::Format_RGB32); node.setCurrentFrame(frame, 0); std::shared_ptr sink{new NullSink()}; frame.setMetaData("GLVideoSink", QVariant::fromValue(sink)); node.setCurrentFrame(frame, 0); QCOMPARE(node.m_material->glVideoSink(), sink); QVERIFY(m_glConsumerSet == true); } void tst_ShaderVideoNode::onGLConsumerSet() { qDebug() << Q_FUNC_INFO; m_glConsumerSet = true; } QTEST_GUILESS_MAIN(tst_ShaderVideoNode) #include "tst_shadervideonode.moc" qtvideo-node-0.2.1+16.04.20151104/unittests/shadervideonode/camera.cpp0000644000015300001610000000151512616337741025614 0ustar pbuserpbgroup00000000000000/* * Copyright (C) 2013 Canonical, Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ #include "camera_compatibility_layer.h" void android_camera_update_preview_texture(CameraControl *) { } void android_camera_get_preview_texture_transformation(CameraControl *, GLfloat *) { } qtvideo-node-0.2.1+16.04.20151104/unittests/shadervideonode/shadervideonode.pro0000644000015300001610000000226112616337741027544 0ustar pbuserpbgroup00000000000000CONFIG += testcase CONFIG += no_private_qt_headers_warning c++11 TARGET = tst_shadervideonode # We don't want to install unit tests anywhere as it doesn't make sense target.CONFIG += no_default_install include(../../coverage.pri) QT += testlib multimedia opengl quick # This is to avoid a segfault in shadervideonode.cpp when it tries to call # glGenTextures(), since the platform currently does not support real OpenGL # when running unit tests. DEFINES += TST_NO_OPENGL SOURCES += tst_shadervideonode.cpp \ ../../src/shadervideomaterial.cpp \ ../../src/shadervideonode.cpp \ ../../src/shadervideoshader.cpp \ ../../src/snapshotgenerator.cpp \ ../../src/qsgvideonode_p.cpp \ camera.cpp \ player.cpp HEADERS += . ../../src/shadervideomaterial.h \ ../../src/shadervideonode.h \ ../../src/shadervideoshader.h \ ../../src/snapshotgenerator.h \ ../../src/private/qtmultimediaquickdefs_p.h \ ../../src/private/qsgvideonode_p.h \ camera_compatibility_layer.h \ surface_texture_client_hybris.h INCLUDEPATH += ../../src /usr/include/hybris/camera /usr/include/hybris/media /usr/include/libqtubuntu-media-signals LIBS += -lqtubuntu-media-signals